ladybird icon indicating copy to clipboard operation
ladybird copied to clipboard

WebContent+UI: User configuration should be read from $XDG_CONFIG_DIR or similar

Open ADKaster opened this issue 1 year ago • 1 comments

Currently we drop:

  • Browser bookmarks JSON (not currently used by Ladybird, but are used by SerenityOS Browser)
  • Auto-play allowlist config
  • Content Filter denylist config

All in share/Lagom/ladybird. When installed from a distribution package, these config files will be read-only by a regular user.


  • [ ] Read per-user configuration files. We should copy these shipped default configs into the user's config directory on....

    • first launch?
    • any time or if they are not present
    • only if the user edits them through some custom UI (about:config?)
    • controlled by some flag that distros set if they want the default configs copied or not?
  • [ ] Reconcile user config files with default config files

    • merge user config directories with the default configs?
    • override default configs with user configs?
  • [ ] Import and export configuration files

    • [ ] provide a way to export user settings and preferences
    • [ ] provide a way to import user settings and preferences (from other browsers? or just ladybird's format?)

ADKaster avatar Jun 26 '24 01:06 ADKaster

IMO the Zed project handles this well. For Linux, they do not add any configs to ~/.config until the user specifically wants to override the defaults. Only a single file is used for config overrides. All other state data (extensions, project history) is in ~/.local/share.

I think it would be good to have something similar for ladybird.

OfficialKris avatar Sep 05 '25 19:09 OfficialKris