I am trying to develop a small app to work with OpenLP

edited 7:01PM in Development

This is for the developers:


I am trying to develop a small app to backup/restore the data files and I have a couple of questions:

1) How does it decide where the data will be stored, this is /home/user/.openlp/data on Linux (probably all Unixes) and it's buried in the directory structure on Windows, not sure about OSX.  Where in the source is the logic to determine this.

2) Does anyone care if I do this?  I am willing to donate the results back to the project as a stand-alone, as this kind of backup/restore works best outside of the application.  You could set it up to backup using at or cron on linux or the windows equivilent. 

3) any thoughts or ideas?



  • edited March 2012

    Hey wogster,

    1. In openlp/core/utils/__init__.py, look at the AppLocation class, around line 119.
    2. You are more than welcome to. We (the OpenLP team) are greatly encouraged when we see folks helping out in whatever way they can.
    3. You'll likely need to make sure OpenLP is not running when you do the actual backup or restore. Also, please feel free to shoot questions at the devs in IRC, if and when we get our timezones to cross ;-)
  • edited March 2012

    This might be a completely daft suggestion, which introduces lots of problems and makes this a much more complicated project, so please feel free to ignore it :)

    But I'm wondering whether there is scope to integrating something like this into OpenLP via a commandline switch?


    $ openlp.pyw --backup # pops up a UI to backup or restore

    $ openlp.pyw --backup ~/backup/ # Copies data files to location

    $ openlp.pyw --restore ~/backup/ # Restores data files from location

    $ openlp.pyw --backup ftp://user:password@host/folder

    $ openlp.pyw --backup mailto:fred@example.com

    On Windows we could then have a "OpenLP Backup" option on the start menu (like the Debug option) which brings up the UI.

  • edited March 2012

    3. Have you considered verison checks? Ie if a user trys to restore a newer version backup to an older version of OpenLP, the dbs might not be compatabile.

  • mmjmmj
    edited April 2012


    some is working on a option to change the data path. In case this feature is complete, you have to take a path stored in OpenLPs configuration file into account:


Sign In or Register to comment.