aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--modules/chromium.nix36
-rw-r--r--modules/default.nix1
2 files changed, 37 insertions, 0 deletions
diff --git a/modules/chromium.nix b/modules/chromium.nix
new file mode 100644
index 0000000..d47d4a7
--- /dev/null
+++ b/modules/chromium.nix
@@ -0,0 +1,36 @@
+{ config, lib, pkgs, ... }:
+
+let
+ cfg = config.chromium;
+in {
+ options.chromium.enable = lib.mkEnableOption "Enable chromium and setup with extension";
+ config = lib.mkIf cfg.enable {
+ programs.chromium = {
+ enable = true;
+ package = pkgs.ungoogled-chromium;
+ extensions =
+ let
+ createChromiumExtensionFor = browserVersion: { id, sha256, version }:
+ {
+ inherit id;
+ crxPath = builtins.fetchurl {
+ url = "https://clients2.google.com/service/update2/crx?response=redirect&acceptformat=crx2,crx3&prodversion=${browserVersion}&x=id%3D${id}%26installsource%3Dondemand%26uc";
+ name = "${id}.crx";
+ inherit sha256;
+ };
+ inherit version;
+ };
+ createChromiumExtension = createChromiumExtensionFor (lib.versions.major package.version);
+ in
+ [
+ (createChromiumExtension {
+ # ublock origin
+ id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";
+ sha256 = "sha256-u81DNkZw/LBVyjk5nmrrJEVjdc+GFCay+rQZGpDH3jA=";
+ version = "1.37.2";
+ })
+ ];
+ };
+ };
+}
+
diff --git a/modules/default.nix b/modules/default.nix
index db66982..c83a075 100644
--- a/modules/default.nix
+++ b/modules/default.nix
@@ -12,6 +12,7 @@
./spicetify.nix
./zathura.nix
./vscode.nix
+ ./chromium.nix
./wezterm.nix
];
}