diff --git a/flake.lock b/flake.lock index c0b0260..06819c1 100644 --- a/flake.lock +++ b/flake.lock @@ -912,6 +912,27 @@ "type": "github" } }, + "home-manager_4": { + "inputs": { + "nixpkgs": [ + "zen-browser", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1752603129, + "narHash": "sha256-S+wmHhwNQ5Ru689L2Gu8n1OD6s9eU9n9mD827JNR+kw=", + "owner": "nix-community", + "repo": "home-manager", + "rev": "e8c19a3cec2814c754f031ab3ae7316b64da085b", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "home-manager", + "type": "github" + } + }, "hyprcursor": { "inputs": { "hyprlang": [ @@ -2060,7 +2081,8 @@ "nixpkgs": "nixpkgs_13", "nvf": "nvf", "stylix": "stylix", - "upfast": "upfast" + "upfast": "upfast", + "zen-browser": "zen-browser" } }, "rust-overlay": { @@ -2549,6 +2571,27 @@ "repo": "xdg-desktop-portal-hyprland", "type": "github" } + }, + "zen-browser": { + "inputs": { + "home-manager": "home-manager_4", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1760588585, + "narHash": "sha256-NufqXao2i6d7N1HFKp8hM8XAD8Q6s/zU2wNd065Ybus=", + "owner": "0xc000022070", + "repo": "zen-browser-flake", + "rev": "5a651a6a3bb5c9bd694adbd2c34f55b4abff9a2c", + "type": "github" + }, + "original": { + "owner": "0xc000022070", + "repo": "zen-browser-flake", + "type": "github" + } } }, "root": "root", diff --git a/flake.nix b/flake.nix index a260136..051a7bc 100644 --- a/flake.nix +++ b/flake.nix @@ -101,6 +101,12 @@ # Emacs, my enemy let me try to learn you again emacs-overlay.url = "github:nix-community/emacs-overlay"; + + # zen browser + zen-browser = { + url = "github:0xc000022070/zen-browser-flake"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = { diff --git a/hosts/skadi/home.nix b/hosts/skadi/home.nix index 6c58f0b..03ea8e1 100644 --- a/hosts/skadi/home.nix +++ b/hosts/skadi/home.nix @@ -8,6 +8,7 @@ inputs.nix-index-database.homeModules.nix-index inputs.nix-flatpak.homeManagerModules.nix-flatpak inputs.agenix.homeManagerModules.default + inputs.zen-browser.homeModules.beta ]; # Some info @@ -44,6 +45,7 @@ crony.restic.enable = true; crony.emulators.enable = true; crony.emacs.enable = true; + crony.zen-browser.enable = true; # DO NOT CHANGE ALSO home.stateVersion = "24.11"; # Please read the comment before changing. diff --git a/modules/linux/home-manager/default.nix b/modules/linux/home-manager/default.nix index 1c03461..a066a8a 100644 --- a/modules/linux/home-manager/default.nix +++ b/modules/linux/home-manager/default.nix @@ -20,6 +20,7 @@ ./pipewire.nix ./secrets.nix ./emacs.nix + ./zen-browser.nix ]; crony.river.enable = lib.mkDefault false; @@ -42,4 +43,5 @@ crony.pipewire.enable = lib.mkDefault true; crony.home-secrets.enable = lib.mkDefault false; crony.emacs.enable = lib.mkDefault false; + crony.zen-browser.enable = lib.mkDefault false; } diff --git a/modules/linux/home-manager/zen-browser.nix b/modules/linux/home-manager/zen-browser.nix new file mode 100644 index 0000000..b63e5c4 --- /dev/null +++ b/modules/linux/home-manager/zen-browser.nix @@ -0,0 +1,42 @@ +{ + config, + pkgs, + lib, + ... +}: { + options = { + crony.zen-browser.enable = lib.mkEnableOption "Enable and setup zen browser"; + }; + + config = lib.mkIf config.crony.zen-browser.enable { + programs.zen-browser = { + enable = true; + profiles = { + main = {}; + }; + policies = { + AutofillAddressEnabled = true; + AutofillCreditCardEnabled = false; + DisableAppUpdate = true; + DisableFeedbackCommands = true; + DisableFirefoxStudies = true; + DisablePocket = true; + DisableTelemetry = true; + DontCheckDefaultBrowser = false; + NoDefaultBookmarks = true; + OfferToSaveLogins = false; + EnableTrackingProtection = { + Value = true; + Locked = true; + Cryptomining = true; + Fingerprinting = true; + }; + }; + nativeMessagingHosts = with pkgs; [ + keepassxc + ]; + }; + + stylix.targets.zen-browser.profileNames = ["main"]; + }; +}