All my system configs and packages in one repo
at main 69 lines 2.1 kB view raw
1{ 2 lib, 3 pkgs, 4 ... 5}: 6let 7 json = pkgs.formats.json { }; 8 wrappedFirefox = pkgs.firefox.override { 9 extraPoliciesFiles = [ (json.generate "firefox-policies.json" policies) ]; 10 }; 11 12 addons = [ 13 # Styling 14 "addon@darkreader.org" # Dark Reader 15 "{85860b32-02a8-431a-b2b1-40fbd64c9c69}" # File Icons for Git{Hub,Lab} 16 "FirefoxColor@mozilla.com" # Firefox Color 17 "{7a7a4a92-a2a0-41d1-9fd7-1e92480d612d}" # Stylus 18 "{a4c4eda4-fb84-4a84-b4a1-f7c1cbf2a1ad}" # Refined GitHub 19 "{72742915-c83b-4485-9023-b55dc5a1e730}" # Wide GitHub 20 21 # Privacy 22 "gdpr@cavi.au.dk" # Consent-O-Matic 23 "addon@fastforward.team" # FastForward 24 "{6d96bb5e-1175-4ebf-8ab5-5f56f1c79f65}" # Google Analytics Opt-out 25 "{6d85dea2-0fb4-4de3-9f8c-264bce9a2296}" # Link Cleaner 26 "uBlock0@raymondhill.net" # uBlock Origin 27 28 # "Stop Websites from Doing Stupid Things I Don't Want" 29 "{278b0ae0-da9d-4cc6-be81-5aa7f3202672}" # Allow Right Click 30 "DontFuckWithPaste@raim.ist" # Don't Fuck With Paste 31 32 # YouTube 33 "{9a41dee2-b924-4161-a971-7fb35c053a4a}" # enhanced-h264ify 34 "sponsorBlocker@ajay.app" # SponsorBlock for YouTube 35 "{0d7cafdd-501c-49ca-8ebb-e3341caaa55e}" # YouTube NonStop 36 37 # Utilities 38 "{d634138d-c276-4fc8-924b-40a0ea21d284}" # 1Password 39 "{c2c003ee-bd69-42a2-b0e9-6f34222cb046}" # Auto Tab Discard 40 "{cb31ec5d-c49a-4e5a-b240-16c767444f62}" # Indie Wiki Buddy 41 "octolinker@stefanbuck.com" # OctoLinker 42 "firefox-addon@pronoundb.org" # PronounDB 43 "wayback_machine@mozilla.org" # Wayback Machine 44 ]; 45 46 policies = { 47 ExtensionSettings = lib.listToAttrs ( 48 map ( 49 id: 50 lib.nameValuePair id { 51 installation_mode = "normal_installed"; 52 install_url = "https://addons.mozilla.org/firefox/downloads/latest/${id}/latest.xpi"; 53 } 54 ) addons 55 ); 56 }; 57 58 # TODO: Specifying custom search engines is *very* cursed. 59 # I've seen how HM does it, and I don't think it's worth it at all... 60in 61{ 62 hjem.users.leah.packages = [ 63 wrappedFirefox 64 (pkgs.makeAutostartItem { 65 name = "firefox"; 66 package = wrappedFirefox; 67 }) 68 ]; 69}