diff --git a/modules/programs/qutebrowser.nix b/modules/programs/qutebrowser.nix index 282861d90..9521dc2a4 100644 --- a/modules/programs/qutebrowser.nix +++ b/modules/programs/qutebrowser.nix @@ -51,6 +51,14 @@ in { ''; }; + loadAutoconfig = mkOption { + type = types.bool; + default = false; + description = '' + Load settings configured via the GUI. + ''; + }; + searchEngines = mkOption { type = types.attrsOf types.str; default = { }; @@ -256,7 +264,12 @@ in { home.packages = [ cfg.package ]; xdg.configFile."qutebrowser/config.py".text = concatStringsSep "\n" ([ ] - ++ mapAttrsToList (formatLine "c.") cfg.settings + ++ [ + "${if cfg.loadAutoconfig then + "config.load_autoconfig()" + else + "config.load_autoconfig(False)"}" + ] ++ mapAttrsToList (formatLine "c.") cfg.settings ++ mapAttrsToList (formatDictLine "c.aliases") cfg.aliases ++ mapAttrsToList (formatDictLine "c.url.searchengines") cfg.searchEngines ++ mapAttrsToList (formatDictLine "c.bindings.key_mappings") diff --git a/tests/modules/programs/qutebrowser/keybindings.nix b/tests/modules/programs/qutebrowser/keybindings.nix index e89e44b46..917bf9baa 100644 --- a/tests/modules/programs/qutebrowser/keybindings.nix +++ b/tests/modules/programs/qutebrowser/keybindings.nix @@ -29,6 +29,7 @@ with lib; home-files/.config/qutebrowser/config.py \ ${ pkgs.writeText "qutebrowser-expected-config.py" '' + config.load_autoconfig(False) c.bindings.default = {} config.bind(",l", "config-cycle spellcheck.languages [\"en-GB\"] [\"en-US\"]", mode="normal") config.bind("", "spawn mpv {url}", mode="normal") diff --git a/tests/modules/programs/qutebrowser/settings.nix b/tests/modules/programs/qutebrowser/settings.nix index 1f0f5db04..0eda01710 100644 --- a/tests/modules/programs/qutebrowser/settings.nix +++ b/tests/modules/programs/qutebrowser/settings.nix @@ -35,6 +35,7 @@ with lib; home-files/.config/qutebrowser/config.py \ ${ pkgs.writeText "qutebrowser-expected-config.py" '' + config.load_autoconfig(False) c.colors.hints.bg = "#000000" c.colors.hints.fg = "#ffffff" c.colors.tabs.bar.bg = "#000000"