Difference between revisions of "Archives/ARCHIVEID/cfg/cfg.d/"
(Added some descriptions for config files.) |
(Added 00_flavour.pl) |
||
(27 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
# the foo option modifies the number of badgers in the boojum | # the foo option modifies the number of badgers in the boojum | ||
$c->{foo} = 23; | $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: | ||
+ | # EPRINTS_PATH/[[Lib/cfg.d/|lib/cfg.d/]] | ||
+ | # EPRINTS_PATH/[[Flavours/pub_lib/cfg.d/|flavours/pub_lib/cfg.d/]] | ||
+ | # EPRINTS_PATH/[[Lib/defaultcfg_zero/cfg.d/|lib/defaultcfg_zero/cfg.d/]] (which are copied to the repository archive's cfg.d directory on its creation, unless using a specific flavour). | ||
+ | # EPRINTS_PATH/[[Flavours/pub_lib/defaultcfg/cfg.d/|flavours/pub_lib/defaultcfg/cfg.d/]] (which are copied to the repository archive's cfg.d directory on its creation). | ||
+ | # 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/''' | ||
*'''[[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_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. |
− | ** '''[[ | + | ** '''[[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. |
− | ** '''[[ | + | ** '''[[branding.pl]] <sup>1</sup>''' - Branding for the repository archive. |
− | ** '''[[ | + | ** '''[[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. |
− | ** '''[[ | + | ** '''[[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_default.pl]] <sup>1</sup>''' - Default initial values for document fields. |
− | ** '''[[ | + | ** '''[[document_fields.pl]] <sup>1</sup>''' - Non-core field definitions for the document data object. |
− | ** '''[[ | + | ** '''[[document_upload.pl]] <sup>1</sup>''' - Configuration relating to managing document uploads. |
− | ** '''[[ | + | ** '''[[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. |
− | ** '''[[ | + | ** '''[[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. |
− | ** '''[[ | + | ** '''[[eprint_fields_automatic.pl]] <sup>2,3</sup>''' - Configuration for automatically setting eprint fields based on the values of other fields. |
− | ** '''[[ | + | ** '''[[eprint_fields_common.pl]] <sup>2</sup>''' - Common (across [[EPrints Flavours|flavours]]) non-core fields for the eprint data object. |
− | ** '''[[ | + | ** '''[[eprint_fields_default.pl]] <sup>2,3</sup>''' - Default initial values for eprint fields. |
− | ** '''[[ | + | ** '''[[eprint_fields.pl]] <sup>2,3</sup>''' - Non-core field definitions for the eprint data object. |
− | ** '''[[ | + | ** '''[[eprint_fields_pub.pl]] <sup>2</sup>''' - Publication [[EPrints Flavours|flavour]] fields for the eprint data object. |
− | ** '''[[ | + | ** '''[[eprint_locking.pl]] <sup>1</sup>''' - Configuration for locking eprint data objects so they can only be edited by one user at once. |
− | ** '''[[ | + | ** '''[[eprint_render.pl]] <sup>2,3</sup>''' - Configuration for rendering eprint abstract/summary pages. |
− | ** '''[[ | + | ** '''[[eprint_search_advanced.pl]] <sup>2,3</sup>''' - Configuration for advanced search of eprint data objects. |
− | ** '''[[ | + | ** '''[[eprint_search_simple.pl]] <sup>2,3</sup>''' - Configuration for simple search of eprint data objects. |
− | + | ** '''[[eprint_search_staff.pl]] <sup>1,2</sup>''' - Configuration for staff search of eprint data objects. | |
− | ** '''[[ | + | ** '''[[eprint_validate.pl]] <sup>2,3</sup>''' - Validation of the eprint data object as a whole. |
− | ** '''[[ | + | ** '''[[eprint_warnings.pl]] <sup>2,3</sup>''' - Warnings to advise the depositor on potential issues with the eprint (e.g. no uploaded documents). |
− | ** '''[[ | + | ** '''[[exports.pl]] <sup>2</sup>''' - Configuration relating to generic aspects of export plugins. |
− | ** '''[[ | + | ** '''[[field_property_defaults.pl]] <sup>1</sup>''' - Defaults for various attributes for a field specification. |
− | ** '''[[ | + | ** '''[[field_validate.pl]] <sup>1</sup>''' - General validation of a metadata field. |
− | ** '''[[ | + | ** '''[[flavour_info.pl]] <sup>2,3</sup>''' - Information about the [[EPrints Flavours|flavour]] of the repository archive. |
− | ** '''[[ | + | ** '''[[indexing.pl]] <sup>1</sup>''' - Configuration for indexing of metadata and document content. |
− | ** '''[[ | + | ** '''[[issues_search.pl]] <sup>2,3</sup>''' - Configuration for search of eprint issues. |
− | ** '''[[ | + | ** '''[[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. |
− | ** '''[[ | + | ** '''[[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. | ||
+ | ** '''[[make_orderkey.pl]] <sup>1</sup>''' - Configuration to better manage diacritics in ordering items. | ||
+ | ** '''[[media_info.pl]] <sup>1</sup>''' - Configuration to file in media information about documents/files. | ||
+ | ** '''[[mime_types.pl]] <sup>1</sup>''' - Configuration to load [[mime.types]] file. | ||
+ | ** '''[[misc.pl]] <sup>1</sup>''' - Miscellaneous configuration settings. | ||
+ | ** '''[[oai.pl]] <sup>2,3</sup>''' - Configuration for [[OAI]]. | ||
+ | ** '''[[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. | ||
+ | ** '''[[plugins.pl]] <sup>2,3</sup>''' - Enabling and configuration of plugins for the repository archive. | ||
+ | ** '''[[rdf.pl]] <sup>1</sup>''' - Configuration for setting XML namespaces for RDF data files. | ||
+ | ** '''[[rdf_license.pl]] <sup>1</sup>''' - Configuration for adding licences to RDF data files. | ||
+ | ** '''[[rdf_triples_bibo.pl]] <sup>1</sup>''' - Configuration for generating Bibo RDF triples for an eprint data object. | ||
+ | ** '''[[rdf_triples_eprints.pl]] <sup>1</sup>''' - Configuration for generating EPrints RDF triples for an eprint data object. | ||
+ | ** '''[[rdf_triples_formats.pl]] <sup>1</sup>''' - Configuration for generating format RDF triples for an eprint data object. | ||
+ | ** '''[[rdf_triples_general.pl]] <sup>1</sup>''' - Configuration for generating general RDF triples. | ||
+ | ** '''[[rdf_triples_repository.pl]] <sup>1</sup>''' - Configuration for generating repository RDF triples. | ||
+ | ** '''[[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. | ||
+ | ** '''[[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. | ||
+ | ** '''[[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_xapian.pl]] <sup>1</sup>''' - Xapian-specific search configuration. | ||
+ | ** '''[[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. | ||
+ | ** '''[[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_edit_phrases.pl]] <sup>1</sup>''' - Edit phrases trigger for generating dynamic template. | ||
+ | ** '''[[template_legacy.pl]] <sup>1</sup>''' - Legacy trigger for generating dynamic template, as defined in [[dynamic_template.pl]]. | ||
+ | ** '''[[template_links.pl]] <sup>1</sup>''' - Links trogger for generating dynamic template. | ||
+ | ** '''[[user_auth_limits.pl]] <sup>1</sup>''' - Configuration for limiting aspects of user authentication to prevent brute force password cracking, denial-of-service, user spamming, etc. | ||
+ | ** '''[[user_fields_automatic.pl]] <sup>1</sup>''' - Configuration for automatically setting user fields based on the values of other fields. | ||
+ | ** '''[[user_fields_default.pl]] <sup>1</sup>''' - Default initial values for user fields. | ||
+ | ** '''[[user_fields.pl]] <sup>1</sup>''' - Non-core field definitions for the user data object. | ||
+ | ** '''[[user_login.pl]] <sup>1</sup>''' - Configuration for managing user login to the repository archive. | ||
+ | ** '''[[user_render.pl]] <sup>1</sup>''' - Configuration for rendering user pages. | ||
+ | ** '''[[user_review_scope.pl]] <sup>2,3</sup>''' - Configuration defining the options for the scope of eprint items an editor user can review. | ||
+ | ** '''[[user_roles.pl]] <sup>1</sup>''' - The roles assigned to different types of user. | ||
+ | ** '''[[user_search.pl]] <sup>1</sup>''' - Configuration for search of user data objects. | ||
+ | ** '''[[user_validate.pl]] <sup>1</sup>''' - Validation of the user data object as a whole. | ||
+ | ** '''[[views.pl]] <sup>2,3</sup>''' - Configuration for generating browse views. | ||
+ | ** '''[[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:
- EPRINTS_PATH/lib/cfg.d/
- EPRINTS_PATH/flavours/pub_lib/cfg.d/
- 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).
- EPRINTS_PATH/flavours/pub_lib/defaultcfg/cfg.d/ (which are copied to the repository archive's cfg.d directory on its creation).
- 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/
- eprints3/archives/ARCHIVEID/cfg/cfg.d
- 00_flavour.pl 5 - The flavour of the repository archive.
- 00_version.pl 1 - The version information for EPrints core. as opposed to a particular flavour.
- 10_core.pl 5 - 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 1,2 - Configuration for how base URLs used by the repository archive.
- adminemail.pl 5 - The admin email address for the repository archive.
- branding.pl 1 - Branding for the repository archive.
- build_attributes.pl 1 - Manipulating attributes for create_element.
- citationcaches.pl 3,4 - Configuration for enabling and restricting citation caching.
- citation_default.pl 1 - Default citation style files for data objects to use in certain contexts.
- csrf_protection.pl 3,4 - Configuration for protection against Cross Site Request Forgery (CSRF) attacks.
- database.pl 5 - Configuration for connecting to the database.
- datasets.pl 1 - Configuration for bespoke datasets and data objects for the repository archive.
- doc_rewrite.pl 1 - Configuration to handle relation-based document redirects.
- document_fields_automatic.pl 1 - Configuration for automatically setting document fields based on the values of other fields.
- document_fields_default.pl 1 - Default initial values for document fields.
- document_fields.pl 1 - Non-core field definitions for the document data object.
- document_upload.pl 1 - Configuration relating to managing document uploads.
- document_validate.pl 1 - Validation of the eprint data object as a whole.
- dynamic_template.pl 1 - Legacy configuration for dynamic template of repository archive.
- element_classes.pl 1 - Configuration for assigning classes EPrints generated HTML elements.
- email.pl 1 - Configuration for sending email from the repository archive.
- eprint_fields_automatic.pl 2,3 - Configuration for automatically setting eprint fields based on the values of other fields.
- eprint_fields_common.pl 2 - Common (across flavours) non-core fields for the eprint data object.
- eprint_fields_default.pl 2,3 - Default initial values for eprint fields.
- eprint_fields.pl 2,3 - Non-core field definitions for the eprint data object.
- eprint_fields_pub.pl 2 - Publication flavour fields for the eprint data object.
- eprint_locking.pl 1 - Configuration for locking eprint data objects so they can only be edited by one user at once.
- eprint_render.pl 2,3 - Configuration for rendering eprint abstract/summary pages.
- eprint_search_advanced.pl 2,3 - Configuration for advanced search of eprint data objects.
- eprint_search_simple.pl 2,3 - Configuration for simple search of eprint data objects.
- eprint_search_staff.pl 1,2 - Configuration for staff search of eprint data objects.
- eprint_validate.pl 2,3 - Validation of the eprint data object as a whole.
- eprint_warnings.pl 2,3 - Warnings to advise the depositor on potential issues with the eprint (e.g. no uploaded documents).
- exports.pl 2 - Configuration relating to generic aspects of export plugins.
- field_property_defaults.pl 1 - Defaults for various attributes for a field specification.
- field_validate.pl 1 - General validation of a metadata field.
- flavour_info.pl 2,3 - Information about the flavour of the repository archive.
- indexing.pl 1 - Configuration for indexing of metadata and document content.
- issues_search.pl 2,3 - Configuration for search of eprint issues.
- languages.pl 1 - Configuration for languages used by the repository archive.
- latest_tool.pl 1 - Configuration for generating listings and feeds of latest eprints in the repository archive.
- limit_names_shown.pl 1 - Configuration to restrict number of names shown in a citation.
- log.pl 1 - Configuration for logging error/warning messages for the repository archive.
- make_orderkey.pl 1 - Configuration to better manage diacritics in ordering items.
- media_info.pl 1 - Configuration to file in media information about documents/files.
- mime_types.pl 1 - Configuration to load mime.types file.
- misc.pl 1 - Miscellaneous configuration settings.
- oai.pl 2,3 - Configuration for OAI.
- optional_filename_sanitise.pl 1 - Configuration to santise uploaded file names.
- paths.pl 1 - Configuration for filesystem paths for particular parts of the repository archive.
- plugins.pl 2,3 - Enabling and configuration of plugins for the repository archive.
- rdf.pl 1 - Configuration for setting XML namespaces for RDF data files.
- rdf_license.pl 1 - Configuration for adding licences to RDF data files.
- rdf_triples_bibo.pl 1 - Configuration for generating Bibo RDF triples for an eprint data object.
- rdf_triples_eprints.pl 1 - Configuration for generating EPrints RDF triples for an eprint data object.
- rdf_triples_formats.pl 1 - Configuration for generating format RDF triples for an eprint data object.
- rdf_triples_general.pl 1 - Configuration for generating general RDF triples.
- rdf_triples_repository.pl 1 - Configuration for generating repository RDF triples.
- rdf_triples_skos.pl 1 - Configuration for generating SKOS RDF triples for an eprint and subject data objects.
- rdf_uris.pl 1 - Configuration for generating RDF URIs.
- registration.pl 1 - Configuration for enabling/managing user registration for the repository archive.
- render_paras.pl 2 - Function for rendering paragraphs for free-text fields.
- request_copy.pl 2,3 - Configuration for "request a copy" of a restricted document.
- restrict_paths.pl 1 - Restrict access to certain paths over HTTP/HTTPS for particular IP addresses or subnets.
- rewrite_url_demo.pl 3 - Example configuration for redirecting certain requests.
- search.pl 1 - Miscelleanous search configuration not tied to a specific data object or type of search.
- search_xapian.pl 1 - Xapian-specific search configuration.
- security.pl 1 - Functions for securing appropriate access to uploaded documents.
- session.pl 1 - Functions for bespoke operations when initiating or closing a session.
- signposting.pl 1,2 - Which export plugins can be used in Signposting.
- template_core.pl 1 - Core trigger for generating dynamic template.
- template_edit_phrases.pl 1 - Edit phrases trigger for generating dynamic template.
- template_legacy.pl 1 - Legacy trigger for generating dynamic template, as defined in dynamic_template.pl.
- template_links.pl 1 - Links trogger for generating dynamic template.
- user_auth_limits.pl 1 - Configuration for limiting aspects of user authentication to prevent brute force password cracking, denial-of-service, user spamming, etc.
- user_fields_automatic.pl 1 - Configuration for automatically setting user fields based on the values of other fields.
- user_fields_default.pl 1 - Default initial values for user fields.
- user_fields.pl 1 - Non-core field definitions for the user data object.
- user_login.pl 1 - Configuration for managing user login to the repository archive.
- user_render.pl 1 - Configuration for rendering user pages.
- user_review_scope.pl 2,3 - Configuration defining the options for the scope of eprint items an editor user can review.
- user_roles.pl 1 - The roles assigned to different types of user.
- user_search.pl 1 - Configuration for search of user data objects.
- user_validate.pl 1 - Validation of the user data object as a whole.
- views.pl 2,3 - Configuration for generating browse views.
- vlit.pl 1 - Configuration for VLit.
- views_render_items_example.pl 3 - Example configuation for alternative rendering of browse view listing pages.
- views_render_menu_example.pl 3 - Example configuation for alternative rendering of browse view menu pages.
- y_export_privacy.pl 2 - Logic that can restrict export plugins that may include information with privacy concerns from being publicly accessible.
- zz_version.pl 1 - Builds the final EPrints version description for the repository archive.