190 lines
5.9 KiB
Nix
190 lines
5.9 KiB
Nix
{
|
|
inputs,
|
|
username,
|
|
domain,
|
|
lib,
|
|
config,
|
|
...
|
|
}: let
|
|
userChrome = builtins.readFile (./. + "/userChrome");
|
|
in {
|
|
options = {
|
|
firefox.enable = lib.mkEnableOption "";
|
|
};
|
|
config = lib.mkIf config.firefox.enable {
|
|
home-manager.users.${username} = {
|
|
programs.firefox = {
|
|
enable = true;
|
|
profiles.${username} = {
|
|
userChrome = userChrome;
|
|
extensions = with inputs.firefox-addons.packages."x86_64-linux"; [
|
|
ublock-origin
|
|
darkreader
|
|
libredirect
|
|
search-by-image
|
|
terms-of-service-didnt-read
|
|
istilldontcareaboutcookies
|
|
decentraleyes
|
|
mtab
|
|
];
|
|
search.engines = {
|
|
"4get" = {
|
|
urls = [
|
|
{
|
|
template = "https://4get.${domain}/web";
|
|
params = [
|
|
{
|
|
name = "s";
|
|
value = "{searchTerms}";
|
|
}
|
|
];
|
|
}
|
|
];
|
|
definedAliases = ["@4get"];
|
|
};
|
|
};
|
|
search.force = true;
|
|
search.default = "4get";
|
|
|
|
bookmarks = [
|
|
{
|
|
name = "Bookmarks";
|
|
toolbar = true;
|
|
bookmarks = [
|
|
{
|
|
name = "Packages";
|
|
url = "https://search.nixos.org/packages?channel=unstable";
|
|
}
|
|
{
|
|
name = "PR";
|
|
url = "https://nixpk.gs/pr-tracker.html";
|
|
}
|
|
{
|
|
name = "Homemanager";
|
|
url = "https://home-manager-options.extranix.com/?query=&release=master";
|
|
}
|
|
{
|
|
name = "Stylix";
|
|
url = "https://stylix.danth.me/options/nixos.html";
|
|
}
|
|
{
|
|
name = "Git";
|
|
url = "https://git.${domain}/";
|
|
}
|
|
{
|
|
name = "Syncserver";
|
|
url = "https://sync.${domain}/";
|
|
}
|
|
{
|
|
name = "Photos";
|
|
url = "https://immich.${domain}/";
|
|
}
|
|
{
|
|
name = "Translate";
|
|
url = "https://trans.${domain}/";
|
|
}
|
|
{
|
|
name = "invidious";
|
|
url = "https://yt.${domain}/";
|
|
}
|
|
{
|
|
name = "Server";
|
|
url = "https://avoro.eu/cp/clientarea.php?action=productdetails&id=27920";
|
|
}
|
|
{
|
|
name = "Domain";
|
|
url = "https://ap.www.namecheap.com/domains/list/";
|
|
}
|
|
{
|
|
name = "Github";
|
|
url = "https://www.github.com";
|
|
}
|
|
{
|
|
name = "Hyprland";
|
|
url = "https://wiki.hyprland.org/";
|
|
}
|
|
{
|
|
name = "Helix";
|
|
url = "https://helix-editor.com/";
|
|
}
|
|
{
|
|
name = "Yazi";
|
|
url = "https://yazi-rs.github.io/docs/installation";
|
|
}
|
|
{
|
|
name = "Monkeytype";
|
|
url = "https://monkeytype.com/";
|
|
}
|
|
{
|
|
name = "Zophar's Domain";
|
|
url = "https://www.zophar.net/music";
|
|
}
|
|
{
|
|
name = "Syncthing";
|
|
url = "http://localhost:8384/";
|
|
}
|
|
];
|
|
}
|
|
];
|
|
settings = {
|
|
"dom.security.https_only_mode" = true;
|
|
"browser.download.panel.shown" = true;
|
|
"identity.fxaccounts.enabled" = false;
|
|
"signon.rememberSignons" = false;
|
|
"browser.urlbar.pocket.featureGate" = false;
|
|
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
|
|
"browser.shell.checkDefaultBrowser" = false;
|
|
"browser.shell.defaultBrowserCheckCount" = 1;
|
|
"privacy.trackingprotection.enabled" = true;
|
|
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
|
|
"browser.uiCustomization.state" = ''
|
|
{
|
|
"placements": {
|
|
"widget-overflow-fixed-list": [],
|
|
"nav-bar": [
|
|
"back-button",
|
|
"forward-button",
|
|
"stop-reload-button",
|
|
"urlbar-container",
|
|
"downloads-button",
|
|
"ublock0_raymondhill_net-browser-action",
|
|
"addon_darkreader_org-browser-action",
|
|
"_testpilot-containers-browser-action"
|
|
],
|
|
"toolbar-menubar": [
|
|
"menubar-items"
|
|
],
|
|
"TabsToolbar": [
|
|
"tabbrowser-tabs",
|
|
"new-tab-button",
|
|
"alltabs-button"
|
|
],
|
|
"PersonalToolbar": [
|
|
"personal-bookmarks"
|
|
]
|
|
},
|
|
"seen": [
|
|
"save-to-pocket-button",
|
|
"developer-button",
|
|
"ublock0_raymondhill_net-browser-action",
|
|
"addon_darkreader_org-browser-action",
|
|
"_testpilot-containers-browser-action"
|
|
],
|
|
"dirtyAreaCache": [
|
|
"nav-bar",
|
|
"PersonalToolbar",
|
|
"toolbar-menubar",
|
|
"TabsToolbar",
|
|
"widget-overflow-fixed-list"
|
|
],
|
|
"currentVersion": 18,
|
|
"newElementCount": 4
|
|
}
|
|
'';
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|