Firefox 147 Will Support The XDG Base Directory Specification
Firefox 147 Will Support The XDG Base Directory Specification
mv ~/.mozilla ~/.config/mozilla.they are not following the spec if this is the solution.
data files (like extensions, sessions, etc) need to go in XDG_DATA_HOME.
config files (user preferences) need to go in XDG_CONFIG_HOME.
cache files need to go in XDG_CACHE_HOME.
log files need to go in XDG_STATE_HOME.
also hopefully they do check the variables and not just hardcoded ~/.config, ~/.local/share, etc
I think they mostly are.
Cache is already in .cache/mozilla, so usually there is no change hence I didn’t mention it. They did move the cache to the XDG_CACHE_HOME by default. And yes they are using the XDG variables including the recommended fallback values.
The line between data and config has always been blurred, Most data in the browser is “data” until a user overrides it. Even extension files presence is linked with their configured state of being installed.
For log files I’m not sure anyone follows that. Besides firefox barely has any plain logs, I think having those in the profile is fine.
Currently it’s all in XDG_CONFIG_HOME
https://specifications.freedesktop.org/basedir/latest/
The XDG Base Directory Specification is based on the following concepts:
There is a single base directory relative to which user-specific data files should be written. This directory is defined by the environment variable $XDG_DATA_HOME.
There is a single base directory relative to which user-specific configuration files should be written. This directory is defined by the environment variable $XDG_CONFIG_HOME.
There is a single base directory relative to which user-specific state data should be written. This directory is defined by the environment variable $XDG_STATE_HOME.
There is a single base directory relative to which user-specific executable files may be written.
There is a set of preference ordered base directories relative to which data files should be searched. This set of directories is defined by the environment variable $XDG_DATA_DIRS.
There is a set of preference ordered base directories relative to which configuration files should be searched. This set of directories is defined by the environment variable $XDG_CONFIG_DIRS.
There is a single base directory relative to which user-specific non-essential (cached) data should be written. This directory is defined by the environment variable $XDG_CACHE_HOME.
There is a single base directory relative to which user-specific runtime files and other file objects should be placed. This directory is defined by the environment variable $XDG_RUNTIME_DIR.
1 Introduction # Various specifications specify files and file formats. This specification defines where these files should be looked for by defining one or more base directories relative to which files should be located. 2 Basics # The XDG Base Directory Specification is based on the following conc…
I tried it and moved the directory. Results:
./mozilla/extensions directories are recreated on startup.Yikes.