Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Are there any recommendations to manage and deploy various settings in QGIS (GUI-settings like visible plugins/toolboxes etc., settings in options, print compositions ...) to hundreds of clients / users?

Automated software installation is done so far (distributing QGIS via OPSI), but this comes with a standard configuration of the gui, which has by far too many options for a normal user, who only wants to see and print spatial data.

share|improve this question
up vote 9 down vote accepted

Sure is.

QGIS stores stuff in two places:

  • {USERHOME}.qgis2
  • Registry (Windows) | .config (Linux)

.qgis2 is for all templates, plugins, python code, processing models, etc

However you can also use the --configpath and --optionpath command args to set the folder to store the .qgis2 folder and settings. The settings will be saved as a ini file.

The registry keys (or ini file) will store everything else config related.

Here are some options for how you could deploy the settings to user.

The registry and .qgis2 route

  • Install QGIS like normal
  • Tweak all the settings you need, e.g add connection strings, move toolbars, etc
  • Export the registry keys
  • Take a copy of the .qgis2 folder
  • Deploy the registry file to the users on login and the .qgis2 folder

Note You might not want to override it after you have done it first go or else you will nuke all the users settings.

If you need to rollout just a small change in the interface e.g toolbar placement, simply export that key from the registry and import that for each user.

The configpath and optionspath route

This option lets you move the settings and plugin folder. Here is an example:

qgis --configpath C:\temp\qgis --optionspath C:\temp\qgis

This will move everything QGIS has for settings and .qgis2 into C:\temp\qgis. This is super handy for creating "profiles" for users as you can change the folder the settings are loaded from

As an example I have one folder for training which is clean and wiped on each restart, one for demos which has large fonts and toolbar icons, and my normal one. I also use this option when developing QGIS to avoid messing my normal QGIS settings when testing ideas.

For going this route simply:

  • Start QGIS using those command args
  • Setup QGIS how you wish as the default setup
  • Copy folders
  • Deploy to user along with a shortcut for QGIS pointing to the settings folder

Note The last step is important else the user will still have QGIS pointed to the registry for their settings and not you folder

Some other tips

You can set extra plugin loading paths using an environmental variable:

QGIS_PLUGINPATH

point this to a network path to share common plugins between users.

In the QGIS options you can also set extra composer template, and project template paths. Set these to a network location to share common templates between users with a single location for storage.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.