Difference between revisions of "Archives/ARCHIVEID/cfg/cfg.d/"

From EPrints Documentation
Jump to: navigation, search
(Added files in lib/cfg.d/ missing from the summary of all files here)
(Added 00_flavour.pl)
 
(13 intermediate revisions by the same user not shown)
Line 17: Line 17:
  
 
*'''[[EPrints_Directory_Structure/eprints3|eprints3]]/[[EPrints_Directory_Structure/eprints3/archives|archives]]/[[EPrints_Directory_Structure/eprints3/archives/ARCHIVEID|ARCHIVEID]]/[[EPrints_Directory_Structure/eprints3/archives/ARCHIVEID/cfg|cfg]]/cfg.d'''
 
*'''[[EPrints_Directory_Structure/eprints3|eprints3]]/[[EPrints_Directory_Structure/eprints3/archives|archives]]/[[EPrints_Directory_Structure/eprints3/archives/ARCHIVEID|ARCHIVEID]]/[[EPrints_Directory_Structure/eprints3/archives/ARCHIVEID/cfg|cfg]]/cfg.d'''
** '''[[00_version.pl]] <sup>1</sup>''' -
+
** '''[[00_flavour.pl]] <sup>5</sup>''' - The flavour of the repository archive.
 +
** '''[[00_version.pl]] <sup>1</sup>''' - The version information for EPrints core. as opposed to a particular [[flavour_info.pl|flavour]].
 
** '''[[10_core.pl]] <sup>5</sup>''' - Core configuration for repository archive, such as hostname and port (both for HTTP and HTTPS), host aliases and path it sits on.
 
** '''[[10_core.pl]] <sup>5</sup>''' - Core configuration for repository archive, such as hostname and port (both for HTTP and HTTPS), host aliases and path it sits on.
 
** '''[[20_baseurls.pl]] <sup>1,2</sup>''' - Configuration for how base URLs used by the repository archive.
 
** '''[[20_baseurls.pl]] <sup>1,2</sup>''' - Configuration for how base URLs used by the repository archive.
 
** '''[[adminemail.pl]] <sup>5</sup>''' - The admin email address for the repository archive.
 
** '''[[adminemail.pl]] <sup>5</sup>''' - The admin email address for the repository archive.
 
** '''[[branding.pl]] <sup>1</sup>''' - Branding for the repository archive.
 
** '''[[branding.pl]] <sup>1</sup>''' - Branding for the repository archive.
** '''[[database.pl]] <sup>5</sup>''' - Configuration for connecting to the database.
+
** '''[[build_attributes.pl]] <sup>1</sup>''' - Manipulating attributes for create_element.
 +
** '''[[citationcaches.pl]] <sup>3,4</sup>''' - Configuration for enabling and restricting citation caching.
 +
** '''[[citation_default.pl]] <sup>1</sup>''' - Default citation style files for data objects to use in certain contexts.
 +
** '''[[csrf_protection.pl]] <sup>3,4</sup>''' - Configuration for protection against [https://owasp.org/www-community/attacks/csrf Cross Site Request Forgery (CSRF)] attacks.
 +
** '''[[database.pl]] <sup>5</sup>''' - Configuration for connecting to the database.  
 
** '''[[datasets.pl]] <sup>1</sup>''' - Configuration for bespoke datasets and data objects for the repository archive.
 
** '''[[datasets.pl]] <sup>1</sup>''' - Configuration for bespoke datasets and data objects for the repository archive.
** '''[[doc_rewrite.pl]] <sup>1</sup>''' -  
+
** '''[[doc_rewrite.pl]] <sup>1</sup>''' - Configuration to handle relation-based document redirects.
 
** '''[[document_fields_automatic.pl]] <sup>1</sup>''' - Configuration for automatically setting document fields based on the values of other fields.
 
** '''[[document_fields_automatic.pl]] <sup>1</sup>''' - Configuration for automatically setting document fields based on the values of other fields.
 
** '''[[document_fields_default.pl]] <sup>1</sup>''' - Default initial values for document fields.
 
** '''[[document_fields_default.pl]] <sup>1</sup>''' - Default initial values for document fields.
Line 31: Line 36:
 
** '''[[document_validate.pl]] <sup>1</sup>''' - Validation of the eprint data object as a whole.
 
** '''[[document_validate.pl]] <sup>1</sup>''' - Validation of the eprint data object as a whole.
 
** '''[[dynamic_template.pl]] <sup>1</sup>''' - Legacy configuration for dynamic template of repository archive.
 
** '''[[dynamic_template.pl]] <sup>1</sup>''' - Legacy configuration for dynamic template of repository archive.
** '''[[element_classes.pl]] <sup>1</sup>''' -
+
** '''[[element_classes.pl]] <sup>1</sup>''' - Configuration for assigning classes EPrints generated HTML elements.
 
** '''[[email.pl]] <sup>1</sup>''' - Configuration for sending email from the repository archive.
 
** '''[[email.pl]] <sup>1</sup>''' - Configuration for sending email from the repository archive.
 
** '''[[eprint_fields_automatic.pl]] <sup>2,3</sup>''' - Configuration for automatically setting eprint fields based on the values of other fields.
 
** '''[[eprint_fields_automatic.pl]] <sup>2,3</sup>''' - Configuration for automatically setting eprint fields based on the values of other fields.
Line 53: Line 58:
 
** '''[[languages.pl]] <sup>1</sup>''' - Configuration for languages used by the repository archive.
 
** '''[[languages.pl]] <sup>1</sup>''' - Configuration for languages used by the repository archive.
 
** '''[[latest_tool.pl]] <sup>1</sup>''' - Configuration for generating listings and feeds of latest eprints in the repository archive.
 
** '''[[latest_tool.pl]] <sup>1</sup>''' - Configuration for generating listings and feeds of latest eprints in the repository archive.
** '''[[limit_names_shown.pl]] <sup>1</sup>''' -  
+
** '''[[limit_names_shown.pl]] <sup>1</sup>''' - Configuration to restrict number of names shown in a citation.
 
** '''[[log.pl]] <sup>1</sup>''' - Configuration for logging error/warning messages for the repository archive.
 
** '''[[log.pl]] <sup>1</sup>''' - Configuration for logging error/warning messages for the repository archive.
** '''[[make_orderkey.pl]] <sup>1</sup>''' -
+
** '''[[make_orderkey.pl]] <sup>1</sup>''' - Configuration to better manage diacritics in ordering items.
** '''[[media_info.pl]] <sup>1</sup>''' -
+
** '''[[media_info.pl]] <sup>1</sup>''' - Configuration to file in media information about documents/files.
** '''[[mime_types.pl]] <sup>1</sup>''' -
+
** '''[[mime_types.pl]] <sup>1</sup>''' - Configuration to load [[mime.types]] file.
 
** '''[[misc.pl]] <sup>1</sup>''' - Miscellaneous configuration settings.
 
** '''[[misc.pl]] <sup>1</sup>''' - Miscellaneous configuration settings.
optional_filename_sanitise
 
 
** '''[[oai.pl]] <sup>2,3</sup>''' - Configuration for [[OAI]].
 
** '''[[oai.pl]] <sup>2,3</sup>''' - Configuration for [[OAI]].
** '''[[optional_filename_sanitise.pl]] <sup>1</sup>''' -
+
** '''[[optional_filename_sanitise.pl]] <sup>1</sup>''' - Configuration to santise uploaded file names.
 
** '''[[paths.pl]] <sup>1</sup>''' - Configuration for filesystem paths for particular parts of the repository archive.
 
** '''[[paths.pl]] <sup>1</sup>''' - Configuration for filesystem paths for particular parts of the repository archive.
 
** '''[[plugins.pl]] <sup>2,3</sup>''' - Enabling and configuration of plugins for the repository archive.
 
** '''[[plugins.pl]] <sup>2,3</sup>''' - Enabling and configuration of plugins for the repository archive.
Line 73: Line 77:
 
** '''[[rdf_triples_skos.pl]] <sup>1</sup>''' - Configuration for generating SKOS RDF triples for an eprint and subject data objects.
 
** '''[[rdf_triples_skos.pl]] <sup>1</sup>''' - Configuration for generating SKOS RDF triples for an eprint and subject data objects.
 
** '''[[rdf_uris.pl]] <sup>1</sup>''' - Configuration for generating RDF URIs.
 
** '''[[rdf_uris.pl]] <sup>1</sup>''' - Configuration for generating RDF URIs.
** '''[[registration.pl]] <sup>1</sup>''' - Configuration for enabling/managing user reegistration for the repository archive.
+
** '''[[registration.pl]] <sup>1</sup>''' - Configuration for enabling/managing user registration for the repository archive.
 
** '''[[render_paras.pl]] <sup>2</sup>''' - Function for rendering paragraphs for free-text fields.
 
** '''[[render_paras.pl]] <sup>2</sup>''' - Function for rendering paragraphs for free-text fields.
 
** '''[[request_copy.pl]] <sup>2,3</sup>''' - Configuration for "request a copy" of a restricted document.
 
** '''[[request_copy.pl]] <sup>2,3</sup>''' - Configuration for "request a copy" of a restricted document.
 +
** '''[[restrict_paths.pl]] <sup>1</sup>''' - Restrict access to certain paths over HTTP/HTTPS for particular IP addresses or subnets.
 +
** '''[[rewrite_url_demo.pl]] <sup>3</sup>''' - Example configuration for redirecting certain requests.
 
** '''[[search.pl]] <sup>1</sup>''' - Miscelleanous search configuration not tied to a specific data object or type of search.
 
** '''[[search.pl]] <sup>1</sup>''' - Miscelleanous search configuration not tied to a specific data object or type of search.
** '''[[search_xapian.pl]] <sup>1</sup>''' -  
+
** '''[[search_xapian.pl]] <sup>1</sup>''' - Xapian-specific search configuration.
 
** '''[[security.pl]] <sup>1</sup>''' - Functions for securing appropriate access to uploaded documents.
 
** '''[[security.pl]] <sup>1</sup>''' - Functions for securing appropriate access to uploaded documents.
 
** '''[[session.pl]] <sup>1</sup>''' - Functions for bespoke operations when initiating or closing a session.
 
** '''[[session.pl]] <sup>1</sup>''' - Functions for bespoke operations when initiating or closing a session.
 +
** '''[[signposting.pl]] <sup>1,2</sup>''' - Which export plugins can be used in Signposting.
 
** '''[[template_core.pl]] <sup>1</sup>''' - Core trigger for generating dynamic template.
 
** '''[[template_core.pl]] <sup>1</sup>''' - Core trigger for generating dynamic template.
 
** '''[[template_edit_phrases.pl]] <sup>1</sup>''' - Edit phrases trigger for generating dynamic template.
 
** '''[[template_edit_phrases.pl]] <sup>1</sup>''' - Edit phrases trigger for generating dynamic template.
Line 96: Line 103:
 
** '''[[views.pl]] <sup>2,3</sup>''' - Configuration for generating browse views.
 
** '''[[views.pl]] <sup>2,3</sup>''' - Configuration for generating browse views.
 
** '''[[vlit.pl]] <sup>1</sup>''' - Configuration for [[VLit]].
 
** '''[[vlit.pl]] <sup>1</sup>''' - Configuration for [[VLit]].
 +
** '''[[views_render_items_example.pl]] <sup>3</sup>''' - Example configuation for alternative rendering of browse view listing pages.
 +
** '''[[views_render_menu_example.pl]] <sup>3</sup>''' - Example configuation for alternative rendering of browse view menu pages.
 +
** '''[[y_export_privacy.pl]] <sup>2</sup>''' - Logic that can restrict export plugins that may include information with privacy concerns from being publicly accessible.
 +
** '''[[zz_version.pl]] <sup>1</sup>''' - Builds the final EPrints version description for the repository archive.

Latest revision as of 16:14, 18 July 2024

EPrints 3 Reference: Directory Structure - Metadata Fields - Repository Configuration - XML Config Files - XML Export Format - EPrints data structure - Core API - Data Objects

This is the main repository configuration directory. Each of these files is a valid perl script and are loaded in alphabetic order. The configuration is stored in a hash reference named $c. For example a simple file might look like this:

# the foo option modifies the number of badgers in the boojum
$c->{foo} = 23;

Although this listing is shown as for the archive's cfg.d directory, it is actually the combined listing of all configuration files under the following cfg.d directories:

  1. EPRINTS_PATH/lib/cfg.d/
  2. EPRINTS_PATH/flavours/pub_lib/cfg.d/
  3. EPRINTS_PATH/lib/defaultcfg_zero/cfg.d/ (which are copied to the repository archive's cfg.d directory on its creation, unless using a specific flavour).
  4. EPRINTS_PATH/flavours/pub_lib/defaultcfg/cfg.d/ (which are copied to the repository archive's cfg.d directory on its creation).
  5. Generated through epadmin create

This directory is at the top of the levels of precedence for configuration files:

lib/cfg.d/ <- flavours/FLAVOURLIB/cfg.d/ <- ingredients/INGREDIENTID/cfg.d/ <- site_lib/cfg.d/ <- archives/ARCHIVEID/cfg/cfg.d/