this post was submitted on 21 Nov 2025
126 points (100.0% liked)

Linux

11002 readers
763 users here now

A community for everything relating to the GNU/Linux operating system (except the memes!)

Also, check out:

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

founded 2 years ago
MODERATORS
top 11 comments
sorted by: hot top controversial new old
[–] Marmaduke@lemmy.world 22 points 1 month ago* (last edited 1 month ago) (2 children)

It's important to note that apparently there's no automatic migration path and this will be only used for new profiles, so you have to migrate manually.

[–] Redjard@lemmy.dbzer0.com 10 points 1 month ago (1 children)

In practice that should mean running mv ~/.mozilla ~/.config/mozilla.
Of course the old directory will still be detected and used if present, probably for a long time to come.

[–] Samueru_sama@programming.dev 11 points 1 month ago* (last edited 1 month ago) (1 children)

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

[–] Redjard@lemmy.dbzer0.com 8 points 1 month ago (1 children)

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

[–] soc@programming.dev -3 points 1 month ago (1 children)

Always good to know that after sitting on it for 2 decades, shipping some half-assed shit was the best they could do.

[–] Ephera@lemmy.ml 3 points 1 month ago

The implications would be massive and I do not think most power users would benefit from it being broken up like that. Being able to backup or sync your entire Firefox profile by copying one directory is quite useful.

[–] soc@programming.dev 2 points 1 month ago

Yikes, thanks! Good to know.

[–] just_another_person@lemmy.world 14 points 1 month ago

Good gawd, finally.

[–] higgsboson@piefed.social 11 points 1 month ago

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.

[–] soc@programming.dev -1 points 1 month ago (1 children)

I tried it and moved the directory. Results:

  • Firefox opens, settings from the profile are still there.
  • Empty ./mozilla/extensions directories are recreated on startup.
  • Firefox cannot show any websites anymore.

Yikes.

[–] Ephera@lemmy.ml 5 points 1 month ago

You're using Nightly. There be dragons...