main @ 79 LINES
[ HISTORY ] [ UP ]
┌─ NIX ──────────────────────────────────────────────────────────────────────┐
│ { │
│ pkgs, │
│ lib, │
│ inputs', │
│ config, │
│ osConfig, │
│ ook, │
│ ... │
│ }: let │
│ inherit (lib) mkIf mkMerge; │
│ inherit (osConfig.ooknet.appearance) fonts; │
│ inherit (osConfig.ooknet.workstation) default; │
│ inherit (pkgs.stdenv) isDarwin; │
│ │
│ addons = inputs'.firefox-addons.packages; │
│ cfg = osConfig.ooknet.workstation.programs.firefox; │
│ firefoxMime = { │
│ "text/html" = ["firefox.desktop"]; │
│ "x-scheme-handler/http" = ["firefox.desktop"]; │
│ "x-scheme-handler/https" = ["firefox.desktop"]; │
│ "x-scheme-handler/ftp" = ["firefox.desktop"]; │
│ "x-scheme-handler/about" = ["firefox.desktop"]; │
│ "x-scheme-handler/unknown" = ["firefox.desktop"]; │
│ "application/x-extension-htm" = ["firefox.desktop"]; │
│ "application/x-extension-html" = ["firefox.desktop"]; │
│ "application/x-extension-shtml" = ["firefox.desktop"]; │
│ "application/xhtml+xml" = ["firefox.desktop"]; │
│ "application/x-extension-xhtml" = ["firefox.desktop"]; │
│ "application/x-extension-xht" = ["firefox.desktop"]; │
│ "application/json" = ["firefox.desktop"]; │
│ }; │
│ in { │
│ imports = [./tridactyl.nix]; │
│ config = mkMerge [ │
│ (mkIf (cfg.enable || default.browser == "firefox") { │
│ programs.firefox = { │
│ enable = true; │
│ # keep legacy path; new HM default moved to $XDG_CONFIG_HOME/mozilla/firef │
│ ox │
│ configPath = ".mozilla/firefox"; │
│ package = │
│ if isDarwin │
│ then null │
│ else pkgs.firefox; │
│ nativeMessagingHosts = [pkgs.tridactyl-native]; │
│ profiles.${config.home.username} = { │
│ id = 0; │
│ isDefault = true; │
│ extensions.packages = with addons; [ │
│ ublock-origin │
│ darkreader │
│ tridactyl │
│ # onepassword-password-manager # cannot get this to work unfree issue. │
│ ]; │
│ settings = import ./settings/ooksJs.nix; │
│ userChrome = import ./theme/ooksfox.nix {inherit fonts ook;}; │
│ userContent = import ./theme/penguinFoxContent.nix; │
│ }; │
│ profiles.testing = { │
│ id = 1; │
│ extensions.packages = with addons; [ │
│ ublock-origin │
│ tridactyl │
│ darkreader │
│ ]; │
│ }; │
│ }; │
│ }) │
│ │
│ (mkIf (default.browser == "firefox") { │
│ home.sessionVariables.BROWSER = "firefox"; │
│ ooknet.binds.browser = "firefox"; │
│ xdg.mimeApps = { │
│ associations.added = firefoxMime; │
│ defaultApplications = firefoxMime; │
│ }; │
│ }) │
│ ]; │
│ } │
└────────────────────────────────────────────────────────────────────────────────────┘
┌─ NIX ────────────────────────────────┐
│ { │
│ pkgs, │
│ lib, │
│ inputs', │
│ config, │
│ osConfig, │
│ ook, │
│ ... │
│ }: let │
│ inherit (lib) mkIf mkMerge; │
│ inherit (osConfig.ooknet.appearance) fonts │
│ ; │
│ inherit (osConfig.ooknet.workstation) defa │
│ ult; │
│ inherit (pkgs.stdenv) isDarwin; │
│ │
│ addons = inputs'.firefox-addons.packages; │
│ cfg = osConfig.ooknet.workstation.programs │
│ .firefox; │
│ firefoxMime = { │
│ "text/html" = ["firefox.desktop"]; │
│ "x-scheme-handler/http" = ["firefox.desk │
│ top"]; │
│ "x-scheme-handler/https" = ["firefox.des │
│ ktop"]; │
│ "x-scheme-handler/ftp" = ["firefox.deskt │
│ op"]; │
│ "x-scheme-handler/about" = ["firefox.des │
│ ktop"]; │
│ "x-scheme-handler/unknown" = ["firefox.d │
│ esktop"]; │
│ "application/x-extension-htm" = ["firefo │
│ x.desktop"]; │
│ "application/x-extension-html" = ["firef │
│ ox.desktop"]; │
│ "application/x-extension-shtml" = ["fire │
│ fox.desktop"]; │
│ "application/xhtml+xml" = ["firefox.desk │
│ top"]; │
│ "application/x-extension-xhtml" = ["fire │
│ fox.desktop"]; │
│ "application/x-extension-xht" = ["firefo │
│ x.desktop"]; │
│ "application/json" = ["firefox.desktop"] │
│ ; │
│ }; │
│ in { │
│ imports = [./tridactyl.nix]; │
│ config = mkMerge [ │
│ (mkIf (cfg.enable || default.browser == │
│ "firefox") { │
│ programs.firefox = { │
│ enable = true; │
│ # keep legacy path; new HM default m │
│ oved to $XDG_CONFIG_HOME/mozilla/firefox │
│ configPath = ".mozilla/firefox"; │
│ package = │
│ if isDarwin │
│ then null │
│ else pkgs.firefox; │
│ nativeMessagingHosts = [pkgs.tridact │
│ yl-native]; │
│ profiles.${config.home.username} = { │
│ id = 0; │
│ isDefault = true; │
│ extensions.packages = with addons; │
│ [ │
│ ublock-origin │
│ darkreader │
│ tridactyl │
│ # onepassword-password-manager # │
│ cannot get this to work unfree issue. │
│ ]; │
│ settings = import ./settings/ooksJ │
│ s.nix; │
│ userChrome = import ./theme/ooksfo │
│ x.nix {inherit fonts ook;}; │
│ userContent = import ./theme/pengu │
│ inFoxContent.nix; │
│ }; │
│ profiles.testing = { │
│ id = 1; │
│ extensions.packages = with addons; │
│ [ │
│ ublock-origin │
│ tridactyl │
│ darkreader │
│ ]; │
│ }; │
│ }; │
│ }) │
│ │
│ (mkIf (default.browser == "firefox") { │
│ home.sessionVariables.BROWSER = "firef │
│ ox"; │
│ ooknet.binds.browser = "firefox"; │
│ xdg.mimeApps = { │
│ associations.added = firefoxMime; │
│ defaultApplications = firefoxMime; │
│ }; │
│ }) │
│ ]; │
│ } │
└──────────────────────────────────────────────┘
──────────────────────────────────────────────────────────────────────────────────────
OOKNET
────────────────────────────────────────────────
OOKNET