aboutsummaryrefslogtreecommitdiff
path: root/modules/chromium.nix
diff options
context:
space:
mode:
authorschererleander <leander@schererleander.de>2025-05-02 13:54:51 +0200
committerschererleander <leander@schererleander.de>2025-05-02 13:54:51 +0200
commitf7d29802eef9401a8c167fca30c2b30ddffbb7ec (patch)
treea402feddde1aa68f8a38366855751b24da255ecd /modules/chromium.nix
parent971c48da072b26bda8bb9b5f6ccda6148b169cd6 (diff)
add chromium
Diffstat (limited to 'modules/chromium.nix')
-rw-r--r--modules/chromium.nix36
1 files changed, 36 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";
+ })
+ ];
+ };
+ };
+}
+