id = "doublecmd" name = "Double Commander" homepage = "https://doublecmd.github.io/" description = "Double Commander is a free cross platform open source file manager with two panels side by side." # The application's own icon, from its repository. icon = "https://raw.githubusercontent.com/doublecmd/doublecmd/master/pixmaps/mainicon/dc_256.svg" executables = ["doublecmd"] [dotfiles] # src/uGlobsPaths.pas, LoadPaths(): unless --config-dir was given, or a # doublecmd.inf file marks the program folder as a portable install, the # configuration directory is GetAppConfigDir. The same unit then exports # COMMANDER_INI as that directory plus "doublecmd.xml" and DC_CONFIG_PATH as # the directory itself, so everything Double Commander configures — the main # doublecmd.xml, the shortcuts in doublecmd.cfg, the toolbars, the file # associations — is in that one directory. # src/platform/usysfolders.pas defines GetAppConfigDir per platform: # MSWINDOWS CSIDL_APPDATA + ApplicationName → %APPDATA%\doublecmd # DARWIN GetHomeDir + '/Library/Preferences/' + ApplicationName # otherwise the passwd entry's home directory + '/.config/' + ApplicationName # The last one joins $HOME with .config itself and never reads # $XDG_CONFIG_HOME, so it is written literally rather than as [configHome]. # macOS uses ~/Library/Preferences, which is [preferences]. paths = [ "~/.config/doublecmd/", "[preferences]/doublecmd/", "%APPDATA%/doublecmd/", ] # Same file: GetAppCacheDir is ~/.cache/doublecmd, ~/Library/Caches and # %LOCALAPPDATA%\doublecmd, and gpThumbCacheDir sits under it. All of that is # outside the configuration directory, so there is nothing to carve out. secret = [] # No machine_lines: doublecmd.xml is a settings document, and the machine-local # parts of it — the panel paths, the directory hotlist — are XML element text, # which neither prefix nor key_path matching can reach.