# modules/browser/qutebrowser.nix --- https://github.com/qutebrowser/qutebrowser # # Qutebrowser is cute because it's not enough of a browser to be handsome. # Still, we can all tell he'll grow up to be one hell of a lady-killer. { options, config, lib, pkgs, ... }: with lib; with lib.my; let cfg = config.modules.desktop.browsers.qutebrowser; in { options.modules.desktop.browsers.qutebrowser = { enable = mkBoolOpt false; userStyles = mkOpt types.lines ""; }; config = mkIf cfg.enable { user.packages = with pkgs; [ qutebrowser (makeDesktopItem { name = "qutebrowser-private"; desktopName = "Qutebrowser (Private)"; genericName = "Open a private Qutebrowser window"; icon = "qutebrowser"; exec = "${qutebrowser}/bin/qutebrowser ':open -p'"; categories = "Network"; }) ]; home = { configFile."qutebrowser" = { source = "${configDir}/qutebrowser"; recursive = true; }; dataFile."qutebrowser/userstyles.css".text = userStyles; }; }; }