Wrap firefox

This commit is contained in:
SebastianStork 2024-05-30 21:07:48 +02:00
parent f3c934467f
commit f34f95efeb
5 changed files with 129 additions and 1 deletions

View file

@ -0,0 +1,10 @@
{ assembleWrapper, moduleArgs, ... }:
let
inherit (moduleArgs) pkgs;
in
assembleWrapper {
basePackage = pkgs.wrapFirefox pkgs.firefox-unwrapped {
extraPolicies.ExtensionSettings = import ./extensions.nix { inherit moduleArgs; };
extraPrefs = import ./preferences.nix { inherit moduleArgs; };
};
}

View file

@ -0,0 +1,26 @@
{ moduleArgs, ... }:
let
inherit (moduleArgs) lib inputs;
extension = shortId: uuid: {
name = uuid;
value = {
install_url = "file:///${
inputs.firefox-addons.packages.x86_64-linux.${shortId}
}/share/mozilla/extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}/${uuid}.xpi";
installation_mode = "force_installed";
default_area = "menupanel";
};
};
in
{
"*".installation_mode = "blocked";
}
// lib.listToAttrs [
(extension "dictionary-german" "de-DE@dictionaries.addons.mozilla.org")
(extension "ublock-origin" "uBlock0@raymondhill.net")
(extension "bitwarden" "{446900e4-71c2-419f-a6a7-df9c091e268b}")
(extension "return-youtube-dislikes" "{762f9885-5a13-4abd-9c77-433dcd38b8fd}")
(extension "sponsorblock" "sponsorBlocker@ajay.app")
(extension "clearurls" "{74145f27-f039-47ce-a470-a662b129930a}")
]

View file

@ -0,0 +1,26 @@
{ moduleArgs, ... }:
let
inherit (moduleArgs) lib inputs;
escapedUiState =
builtins.replaceStrings [ ''"'' ] [ ''\"'' ]
''{"placements":{"widget-overflow-fixed-list":[],"unified-extensions-area":["_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","sponsorblocker_ajay_app-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","ublock0_raymondhill_net-browser-action"],"nav-bar":["back-button","forward-button","stop-reload-button","customizableui-special-spring1","urlbar-container","customizableui-special-spring2","save-to-pocket-button","downloads-button","fxa-toolbar-menu-button","unified-extensions-button","sidebar-button"],"toolbar-menubar":["menubar-items"],"TabsToolbar":["firefox-view-button","tabbrowser-tabs","new-tab-button","alltabs-button"],"PersonalToolbar":["personal-bookmarks"]},"seen":["developer-button","_762f9885-5a13-4abd-9c77-433dcd38b8fd_-browser-action","_74145f27-f039-47ce-a470-a662b129930a_-browser-action","sponsorblocker_ajay_app-browser-action","_446900e4-71c2-419f-a6a7-df9c091e268b_-browser-action","ublock0_raymondhill_net-browser-action"],"dirtyAreaCache":["nav-bar","unified-extensions-area","PersonalToolbar","toolbar-menubar","TabsToolbar"],"currentVersion":20,"newElementCount":4}'';
in
lib.concatLines [
(builtins.replaceStrings [ "user_pref" ] [ "pref" ] (
builtins.readFile "${inputs.betterfox}/user.js"
))
''
pref("intl.accept_languages", "en-us,en,de-de,de");
pref("browser.uiCustomization.state", "${escapedUiState}")
pref("sidebar.position_start", false);
pref("browser.toolbars.bookmarks.visibility", "always");
pref("browser.bookmarks.restore_default_bookmarks", false);
pref("browser.bookmarks.file", "");
pref("media.videocontrols.picture-in-picture.video-toggle.enabled", false);
pref("general.autoScroll", true);
pref("middlemouse.paste", false);
pref("signon.rememberSignons", false);
pref("extensions.formautofill.creditCards.enabled", false);
''
]