Terminology - leamas/OpenCPN GitHub Wiki

System install path

The typically read-only path used when installing plugins using legacy packages. Examples includes /usr on linux, C:\Program Files (x86) on windows and /Applications on macos.

User install path

The r/w path used to install plugins. Examples includes ~/.local on linux, ~/Library/Applications on macos and %LOCALAPPDATA% or %HOME%\Appdata\Local on windows . See Installation paths:

User config path

The user-writable directory for configuration files for example ocpn-plugins.xml:

debian ~/.opencpn
flatpak ~/.var/app/org.opencpn.OpenCPN/config/opencpn
Windows C:\ProgramData\opencpn\
Macos *~/Library/Preferences/opencpn

The User Config Dir path is available in the plugin API using GetpPrivateApplicationDataLocation().

System config path

The readonly directory for configuration files for example ocpn-plugins.xml:

debian /usr/share/opencpn
flatpak /app/share/opencpn
Windows C:\Program Files (x86)\OpenCPN
Macos ~/Desktop/OpenCPN.app/Contents/SharedSupport

Plugin Data Directory

The read-only directory used by the installer for plugin data files. This path is <User Install Path>/plugins/<plugin_name> for example ~/.local/share/opencpn/plugins/radar_pi for the radar plugin on Linux.

This path is available in the plugin API as GetPluginDataDir(const char* plugin_name)

Plugin Configuration Directory

Plugins which creates data files must store these in the User Config Dir. By convention, <User Config Dir>/plugins/<plugin name> is used, for example ~/.opencpn/plugins/radar for the radar plugin on Linux.

Some plugins also uses just <User Config Dir>/<plugin name> like ~/.opencpn/oesenc_pi for the Linux oesenc data

⚠️ **GitHub.com Fallback** ⚠️