Skip to content
Ondrej Kosarko edited this page Sep 6, 2021 · 9 revisions

Configuration variables

This pages introduces variables that you need to set up prior to deploying your instance. It is not a comprehensive list of all possible properties for that see dspace.cfg and the *.cfg files in [dspace-src]/dspace/config/modules. The best way is to start is with our template configuration file. It contains sensible defaults as an example and is well commented.

cp $DSPACE_WORKSPACE/config/local.conf.dist $DSPACE_WORKSPACE/sources/local.properties
vim local.properties

The list of variables might be in different order than what the template shows.

TODO PIDs

There are some details at the PIDs page

URLs and dirs

  • dspace.install.dir = /opt/lindat-dspace/installation
    • where the web app will be deployed ($DSPACE_INSTALLATION_DIRECTORY), but don't use variables

You need to set up the hostname, baseUrl and oai url.

  • dspace.hostname = ufal-point-dev.ms.mff.cuni.cz
    • should match base URL. Do not include protocol i.e. http or https and do not include port, this is only the name of server. Also do not use localhost because using this property some external links will be generated
  • dspace.baseUrl = https://ufal-point-dev.ms.mff.cuni.cz/repository
    • https:// + hostname + $DSPACE_INSTANCE_NAME (a part of the context path set in tomcat)
  • dspace.oai.url = http://ufal-point-dev.ms.mff.cuni.cz/repository/oai
    • for oai identify response, use http!
  • dspace.url = ${dspace.baseUrl}/xmlui
  • solr.server = http://localhost/repository/solr
    • make sure this is available via localhost on http

Databases

Database related configs:

  • db.maxidle = -1
  • db.schema =
  • db.maxwait = 5000
  • db.maxconnections = 30
  • db.statementpool = true
  • db.poolname = dspacepool
  • lr.database = XXX-LR-DATABASE
    • The name of the database that you will use for your dspace instance. If the database is not created yet, this name will be used to create the new database. Be careful with the trailing spaces in the name!
  • lr.database.port = 5432
  • db.url = jdbc:postgresql://localhost:${lr.database.port}/${lr.database}
  • db.driver = org.postgresql.Driver
  • db.username = dspace
    • name of the database user
  • db.password =
    • password for the above user
  • lr.utilities.database = XXX-UTILS-DATABASE
    • name of database used to store licenses, etc. (must be different from lr.database)
  • lr.utilities.db.url = jdbc:postgresql://localhost:${lr.database.port}/${lr.utilities.database}

Misc

Autocomplete

  • lr.autocomplete.on=true
  • lr.autocomplete.solr.url=${dspace.url}/JSON/solr/
    • you'll need to add a rewrite for this to work
      location /repository/xmlui/JSON/solr/ {
               rewrite /repository/xmlui/JSON/solr/(.*) /repository/solr/search/select/?q=*:*&rows=0&facet=on&wt=json&indent=true&facet.field=$1 break;
               proxy_pass http://localhost:8088;
             }
    
  • lr.autocomplete.json_static.url=${dspace.url}/static/json/

Edit metadata

  • lr.allow.edit.metadata =
    • a comma separated list of collection names or ids. If the name is listed all submitter will be allowed to edit metadata of their submissions even after the submission was made

Download all files as zip

  • lr.download.all.limit.min.file.count = 1
  • lr.download.all.limit.max.file.size = 1073741824
  • lr.download.all.alert.min.file.size = 10485760

Upload filesize limit

  • lr.upload.file.alert.max.file.size = 2147483648
    • the size of the largest file that can be uploaded, you can only make this number lower.

Shibboleth and AAI

Show language option in profile

  • lr.xmlui.user.showlanguage = false

Harvestable assetstore

  • lr.harvestable.assetstore =
    • When you are cloning you repository from one machine to another, this option will allow you to obtain the files from disk and not via http

Functionality Manager

  • lr.utilities.functionalityManager.class = cz.cuni.mff.ufal.lindat.utilities.HibernateFunctionalityManager

Repository display names

  • lr.dspace.version =
    • a version string, can be added to name
  • dspace.name =
    • Long name and/or descripition
  • lr.dspace.name.short =
    • used in email templates

Emails

Email related setting, you should enable the mail server in production. You can set different recipients for different emails.

  • mail.server = 127.0.0.1
  • mail.server.username =
    • leave blank if none needed
  • mail.server.password =
  • mail.server.port = 25
  • mail.server.disabled = true
  • lr.help.mail =
  • lr.help.phone =
  • mail.from.address =
  • mail.feedback.recipient =
  • info.recipient =
  • mail.alert.recipient = ${mail.admin}
  • mail.registration.notify = ${mail.admin}
  • mail.admin = ${mail.feedback.recipient}
  • lr.errors.email=
    • Email where errors logged from specific loggers will be sent.
    • If you will not use this feature, update dspace.cfg and set this variable to an empty string.

GA Setting

  • lr.ga.analytics.key.file = ${dspace.dir}/config/ga.api.key.p12
    • Make sure to copy the real API key file to this location upon first installation
    • If you leave this empty, the link to 'statistics-google' won't be generated in the navigation menu #535
  • lr.ga.analytics.profile.id = 52779327
  • lr.ga.analytics.account.email = 144418224547@developer.gserviceaccount.com
  • xmlui.google.analytics.key =
    • this variable is used by default DSpace GA implementation
    • leave empty

Backups

See Backup page for more details

  • lr.dspace.source.dir = /opt/lindat-dspace/sources/
    • to display the backup configs in control panel
  • lr.backup.source = (/opt/lindat-dspace/installation/ /opt/lindat-dspace/database/ /opt/lindat-dspace/sources/ /etc/apache2 /etc/libapache2-mod-jk /opt/shibboleth-sp/etc/shibboleth /etc/tomcat6/ /etc/cron.d/dspace)
  • lr.backup.target = "/home/backup/"
  • backup2l.max.level = 1
  • backup2l.max.per.level = 6
  • backup2l.max.full = 4
  • backup2l.generations = 4

Eudat replication

You can safely skip these, see Eudat Replication for more details.

  • lr.replication.eudat.on=false
  • lr.replication.eudat.protocol=irods
  • lr.replication.eudat.host=
  • lr.replication.eudat.port=
  • lr.replication.eudat.username=
  • lr.replication.eudat.password=
  • lr.replication.eudat.homedirectory=
  • lr.replication.eudat.replicadirectory=
  • lr.replication.eudat.zone=
  • lr.replication.eudat.defaultstorage=
  • lr.replication.eudat.id=
  • lr.replication.eudat.notification_email=${info.recipient}
  • lr.replication.eudat.retrievetopath=
  • lr.replication.jargon.numThreads=
  • lr.replication.jargon.MAX_SZ_FOR_SINGLE_BUF=
  • lr.replication.jargon.BUFFER_SIZE=
  • lr.replication.jargon.PUT_LOG_AFTER=

Selenium

In most cases you can skip these. See Selenium page for more details.

  • selenium.test.home.url = /xmlui
  • selenium.test.browse.url = /xmlui/browse
  • selenium.test.search.url = /xmlui/discover
  • selenium.test.submission.url = /xmlui/submissions
  • selenium.test.submit.url = /xmlui/submit
  • selenium.test.local.login = /xmlui/password-login
  • selenium.test.oai.url = /oai
  • selenium.test.user.id =
  • selenium.test.user.password =
  • selenium.test.user.name =
  • selenium.test.admin.id =
  • selenium.test.admin.password =
  • selenium.test.admin.name =

OAI Descriptions

Variables used in dspace/config/crosswalks/oai/description*.xml. These description files appear in Identify response

  • lr.repository.identifier = lindat.mff.cuni.cz
  • lr.repository.sampleIdentifier = oai:lindat.mff.cuni.cz:11858/00-097C-0000-0001-487A-4
  • lr.description.archiveURL =
  • lr.description.participant.name =
  • lr.description.institution =
  • lr.description.institutionURL =
  • lr.description.shortLocation =
  • lr.description.location =
  • lr.description.synopsis =
  • lr.desription.access =
  • lr.description.archivalSubmissionPolicy =

Piwik

If you do not run your own piwik server set this to disabled. More details at Piwik page

Curation

Can be left without changes

  • lr.curation.metadata.checkrequired.ignore = metashare.*
  • lr.link.checker.user.agent = "DSpace Link Validator"
  • lr.link.checker.connect.timeout = 2000
  • lr.link.checker.read.timeout = 3000

VLO Check

"DSpace"

  • supported.locales = en, cs
    • locales supported by your instance
    • the rule of thumb is leave this to en unless you are certain the appropriate messages_??.xml file exists and the necessary javascript files are taken care of
  • default.language = en_US
  • http.proxy.host =
  • http.proxy.port =
  • handle.canonical.prefix = http://hdl.handle.net/
    • ?
  • handle.prefix = 123456789
    • in case you are managing only one prefix, it should be ok to set this to that prefix. It will get used for example when you create the first community.
    • in other cases either set it to the prefix you consider "default", or leave it at the example value
    • see #563
  • loglevel.other=INFO
  • loglevel.dspace=INFO
  • handle.dir=${dspace.dir}/handle-server
  • lr.compile.time=
Clone this wiki locally