I have wrote a Home Manager config for ungoogled-chromium, but I’m only able to use programs.chromium.extensions option.
{ options, pkgs, home-manager, username, lib, ... }:
{
home-manager.users.${username} = { pkgs, ...}: {
programs.chromium = {
enable = true;
package = pkgs.ungoogled-chromium;
homepageLocation = "https://nixos.org";
extensions =
let
#To fetch from source
createSourceExtensionFor = browserVersion: { id, sha256, url, version }:
{
inherit id;
crxPath = builtins.fetchurl {
inherit url;
name = "${id}.crx";
inherit sha256;
};
inherit version;
};
#To fetch form WebStore
createChromiumExtensionFor = browserVersion: { id, sha256, version }:
{
inherit id;
crxPath = builtins.fetchurl {
url = "https://clients2.google.com/service/update2/crx?response=redirect&prodversion=${browserVersion}&acceptformat=crx3&x=id%3D${id}%26installsource%3Dondemand%26uc";
name = "${id}.crx";
inherit sha256;
};
inherit version;
};
createSourceExtension = createSourceExtensionFor (lib.version.major pkgs.ungoogled-chromium.version);
createChromiumExtension = createChromiumExtensionFor (lib.versions.major pkgs.ungoogled-chromium.version);
in
[
(createSourceExtension {
# Web Store
url = "https://github.com/NeverDecaf/chromium-web-store/releases/download/v1.5.4/Chromium.Web.Store.crx";
id = "ocaahdebbfolfmndjeplogmgcagdmblk";
sha256 = "sha256:0xyzvkqmbzyp7h7kv56drhs2z46ihalz6l5zdck0sid3b2q94f7g";
version = "1.5.4";
})
(createChromiumExtension {
# uBlock Origin
id = "cjpalhdlnbpafiamejdnhcphjbkeiagm";
sha256 = "sha256:0w9zc8in4gqlhg5hngffdi763h4d2mizq86z91z6rkjsj7w403fl";
version = "1.55.0";
})
(createChromiumExtension {
# Cookie-Editor
id = "hlkenndednhfkekhgcdicdfddnkalmdm";
sha256 = "sha256:1yv7872x0qp97jp3v3b6v012cf45kig0qlp2dnn51i1bi0h0iy98";
version = "1.12.2";
})
(createChromiumExtension {
# ClearURLs
id = "lckanjgmijmafbedllaakclkaicjfmnk";
sha256 = "sha256:06m3b3npis7cpv0yif0rs3dkfdgd69r0rkyxlwwry26h58dp7hdc";
version = "1.26.0";
})
(createChromiumExtension {
# FoxyProxy
id = "gcknhkkoolaabfmlnjonogaaifnjlfnp";
sha256 = "sha256:1mcjlhx8nd15qcnla4bbg0l2ydgsg9a1ymiksfs7mxjcf39a5rfm";
version = "8.2";
})
(createChromiumExtension {
# HackTools
id = "cmbndhnoonmghfofefkcccljbkdpamhi";
sha256 = "sha256:02jnhrjw0zwvyhcakzx5z1s2hvd6xbflvcqx7qc15sskqw5crb30";
version = "0.50.0";
})
(createChromiumExtension {
# HackKontext
id = "emkdmncnikokjokffjhnoheobomcmifo";
sha256 = "sha256:1dcpv92h8vayakdhz977bpyjz7wcpnqvnk6zmb3v3z74bhg5kail";
version = "1.3";
})
(createSourceExtension {
# LibRedirect
url = "https://github.com/libredirect/browser_extension/releases/download/v2.8.1/libredirect-2.8.1.crx";
id = "oladmjdebphlnjjcnomfhhbfdldiimaf";
sha256 = "sha256:096inpffvhblzc1j4b7zl2fc8gs8cflgb68ik5br4kl6xf17kafz";
version = "2.8.1";
})
(createChromiumExtension {
# LocalCDN
id = "njdfdhgcmkocbgbhcioffdbicglldapd";
sha256 = "sha256:0dy02713hl719ryx5g0f2x1zdk2904bcm6zmw81lcji1ddc60is5";
version = "2.6.61";
})
(createChromiumExtension {
# OWASP Penetration Testing Kit
id = "ojkchikaholjmcnefhjlbohackpeeknd";
sha256 = "sha256:041ap7v5dy0iczm21aia394q1as3qpvhvh3j99b8lx7idxyn4z3m";
version = "2.6.61";
})
(createChromiumExtension {
# Canvas Blocker
id = "nomnklagbgmgghhjidfhnoelnjfndfpd";
sha256 = "sha256:0dbv2f3w5c7id9rqcawx4x8lqxk2kpd7i14l96jyp1bm2z0aydlv";
version = "0.2.0";
})
(createChromiumExtension {
# TOS; Didn't read
id = "hjdoplcnndgiblooccencgcggcoihigg";
sha256 = "sha256:0n62g7c3023gf48rs3g7qffc6s36v475cs8rn74xsplvcgf98y3d";
version = "4.1.2";
})
(createChromiumExtension {
# UA Switcher and Manager
id = "bhchdcejhohfmigjafbampogmaanbfkg";
sha256 = "sha256:10j4hq8npdrvmlry8j8k1libxf7r6r2195mf6bsd2kfxdhxfx8q8";
version = "0.5.0";
})
(createChromiumExtension {
# Violentmonkey
id = "jinjaccalgkegednnccohejagnlnfdag";
sha256 = "sha256:1mb608lkxilbvs9wdk914raqv3hcfn3h3zfl3jgmh0m7x1i2c5cd";
version = "2.18.0";
})
(createChromiumExtension {
# Wappalyzer
id = "gppongmhjkpfnbhagpmjfkannfbllamg";
sha256 = "sha256:0f529cra8d7akphvpwf3lnlrd3l1i7wp40ribcy3ha42qrm3fbb7";
version = "6.10.67";
})
(createChromiumExtension {
# Wayback Machine
id = "fpnmgdkabkmnadcjpehmlllkndpkmiak";
sha256 = "sha256:0r4npqbdqy7hkgg85krz35714lyvk5iiyr3jcj755m22v088rbxx";
version = "3.3";
})
];
};
};
}
error:
… while calling the 'head' builtin
at /nix/store/7x2xs7ipaayhl73wq4gvy1535ifpqkq8-nixos-23.11.20240127.56911ef/nixos/lib/attrsets.nix:922:11:
921| || pred here (elemAt values 1) (head values) then
922| head values
| ^
923| else
… while evaluating the attribute 'value'
at /nix/store/7x2xs7ipaayhl73wq4gvy1535ifpqkq8-nixos-23.11.20240127.56911ef/nixos/lib/modules.nix:807:9:
806| in warnDeprecation opt //
807| { value = builtins.addErrorContext "while evaluating the option `${showOption loc}':" value;
| ^
808| inherit (res.defsFinal') highestPrio;
(stack trace truncated; use '--show-trace' to show the full trace)
error: The option `home-manager.users.octodi.programs.chromium.homepageLocation' does not exist. Definition values:
- In `/etc/nixos/home-manager/browsers/ungoogled-chromium': "https://nixos.org"