diff --git a/configs/chromium.nix b/configs/chromium.nix index 47794c7..c7352a1 100644 --- a/configs/chromium.nix +++ b/configs/chromium.nix @@ -13,5 +13,5 @@ environment.systemPackages = [ pkgs.chromium ]; - niveum.applications.browser = "chromium"; + environment.variables.BROWSER = "chromium"; } diff --git a/configs/default.nix b/configs/default.nix index 9d33aae..a41fb02 100644 --- a/configs/default.nix +++ b/configs/default.nix @@ -81,6 +81,18 @@ in { services.dbus.packages = [ pkgs.gnome3.dconf ]; } + { + environment.systemPackages = [ + (pkgs.writers.writeDashBin "x-www-browser" '' + for browser in $BROWSER firefox chromium google-chrome google-chrome-stable opera vivaldi qupzilla iceweasel konqueror firefox-aurora google-chrome-beta opera-beta vivaldi-beta google-chrome-dev opera-developer vivaldi-snapshot luakit midori epiphany lynx w3m dillo elinks vimb; do + if command -v $browser > /dev/null 2>&1; then + exec $browser "$@" + fi + done + exit 1 + '') + ]; + } { nixpkgs = { config.allowUnfree = true; diff --git a/configs/dunst.nix b/configs/dunst.nix index 75fe281..d3dba55 100644 --- a/configs/dunst.nix +++ b/configs/dunst.nix @@ -31,7 +31,7 @@ with config.niveum; { sticky_history = true; history_length = 20; dmenu = "${pkgs.rofi}/bin/rofi -display-run dunst -show run"; - browser = applications.browser; + browser = "x-www-browser"; verbosity = "mesg"; corner_radius = 0; mouse_left_click = "do_action"; diff --git a/configs/i3.nix b/configs/i3.nix index 108ef0c..f6f4aa7 100644 --- a/configs/i3.nix +++ b/configs/i3.nix @@ -105,7 +105,7 @@ in with config.niveum; { "${modifier}+v" = "split v"; "${modifier}+w" = "layout tabbed"; "${modifier}+x" = "exec --no-startup-id ${new-workspace}"; - "${modifier}+y" = "exec ${applications.browser}"; + "${modifier}+y" = "exec x-www-browser"; "XF86AudioLowerVolume" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -d 5"; "XF86AudioMute" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -t"; "XF86AudioRaiseVolume" = "exec --no-startup-id ${pkgs.pamixer}/bin/pamixer -i 5"; diff --git a/modules/constants.nix b/modules/constants.nix index 213bad8..081d568 100644 --- a/modules/constants.nix +++ b/modules/constants.nix @@ -35,8 +35,6 @@ let in { options.niveum = { applications = { - terminal = mkOption { type = types.str; }; - browser = mkOption { type = types.str; }; fileManager = mkOption { type = types.str; }; };