Location of Inkscape files (config, cache, log, templates, etc)

Bug #781288 reported by Zearin on 2011-05-11
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Inkscape
Wishlist
Unassigned

Bug Description

Using the latest version of Inkscape on the latest OS X (10.6.7 at the time of writing).

There are 2 requests I would like to make regarding Inkscape’s files:

= 1. Conform to the XDG Base Directory Specification =
(http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html)

This means put:

* configuration in ~/.config/inkscape
* logs in ~/.log/inkscape
* caches in ~/.cache/inkscape
* items like templates for new documents in ~/.local/share/Inkscape

= 2. Use OS X Locations for the equivalent =

In my home directory, I currently have:

.config/inkscape/
├── extensions/
├── icons/
├── keys/
├── palettes/
│   ├── ARTT354-project2-2.txt
│   └── ARTT354-project2.txt
├── templates/
├── extension-errors.log
└── preferences.xml

.inkscape
├── extension-errors.log
└── preferences.xml

.inkscape-etc/
├── gdk-pixbuf.loaders
├── gtk.immodules
├── gtkrc
├── pango.modules
├── pangorc
└── pangox.aliases

And inside /Applications/Inkscape.app/Contents/Resources, there are even MORE files and directories for extensions, templates, and so on.

The correct location for these items should be:

* /Library/Preferences/Inkscape (for default settings)
* /Library/Logs/Inkscape (for logs)
* /Library/Caches/Inkscape (for caches)
* /Library/Application Support/Inkscape (for items like Extensions and Templatesextensions and templates)

These are the system-level locations were application defaults should be located on OS X. Anything extended, overridden, or modified by the user should exist in the same paths as above, except prefixed with the user's home directory (i.e., prefix paths above with ~ for locations where Inkscape should store all user-level settings, data, logs, templates, etc).

su_v (suv-lp) on 2011-05-11
tags: added: packaging
removed: configuration standards
su_v (suv-lp) wrote :

Just some quick notes:
- XDG and Apple's convertions for CONFIG/CACHE/DATA do not agree. In my understanding, point 1) and 2) are conflicting and should be tracked in separate requests (XDG affects the other supported platforms as well, using Apple's file hierarchy only affects building and packaging for OS X).
- Using standard OS X system locations in '/Library' for shared resources would require to distribute the application with an installer, and no longer allow easy drag & drop installation from the DMG.
- If Inkscape's resources are installed in '/Library', what about the other resource and config files inside the application bundle, as well as the many shared dylibs? Consequently shouldn't the toolkits and dependencies (GTK+, cairo, pango, fontconfig, etc.) be provided as frameworks and installed into '/Library' as well, instead of being included with each ported GTK+ application separately?

Other related notes are in the comments of the blueprint
<https://blueprints.launchpad.net/inkscape/+spec/mac-os-native>

Earlier reports with same requests:
Bug #171877 “OSX: Use of Library/Application Support”
Bug #199720 “Implement XDG Base Directory Specification for Linux”
Bug #490299 “Palettes, templates and other user files should be in XDG_DATA_HOME”

Proposing to link as duplicate to bug 171877 to track the feature request in one location. Adhering to the current XDG specification should be discussed separately (bug #199720, bug #490299).

<off-topic>
The directory '~/.inkscape' is from Inkscape 0.46 and earlier versions and no longer used by current Inkscape. The location of user preferences was changed in Inkscape 0.47:
<http://wiki.inkscape.org/wiki/index.php/Release_notes/0.47#Preferences>
</off-topic>

Changed in inkscape:
importance: Undecided → Wishlist
Qantas94Heavy (qantas94heavy) wrote :

Closing as duplicate of bug 171877, most of the XDG compliance problems have been solved.

Closed by: https://gitlab.com/Qantas94Heavy

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers