nix/module/desktop/firefox/default.nix

73 lines
3.1 KiB
Nix
Raw Normal View History

2024-04-06 03:03:58 +03:00
{ pkgs, util, ... } @args: let
2024-05-02 18:14:13 +03:00
config = import ./Config.nix args;
2024-04-24 18:16:04 +03:00
mkExtension = url: {
installation_mode = "force_installed";
install_url = url;
};
2024-05-12 02:40:37 +03:00
mkBookmark = name: url: { inherit name url; };
2024-04-06 03:03:58 +03:00
in {
# Disable profile switching on rebuild.
2024-03-28 10:09:22 +03:00
environment.variables = {
MOZ_LEGACY_PROFILES = "1";
MOZ_ENABLE_WAYLAND = "1";
};
2024-04-24 18:16:04 +03:00
programs.firefox = {
enable = true;
package = pkgs.firefox-esr;
languagePacks = [ "en-US" "ru" ];
2024-05-02 18:14:13 +03:00
autoConfig = config.text;
policies = {
ManagedBookmarks = [
2024-04-24 18:16:04 +03:00
{ toplevel_name = "Pin"; }
(mkBookmark "Dashboard" "https://home.voronind.com")
(mkBookmark "Music" "https://music.yandex.ru")
2024-05-16 20:39:03 +03:00
(mkBookmark "Telegram" "https://web.telegram.org/a")
2024-04-24 18:16:04 +03:00
(mkBookmark "Discord" "https://discord.com")
(mkBookmark "WorkMail" "https://mail.fsight.ru")
(mkBookmark "Git" "https://git.voronind.com")
(mkBookmark "WorkGit" "https://git.fmp.fsight.world")
(mkBookmark "WorkBoard" "https://support.fsight.ru")
(mkBookmark "Hass" "https://iot.voronind.com")
(mkBookmark "Cloud" "https://cloud.voronind.com")
];
ExtensionUpdate = true;
ExtensionSettings = {
# Block extension installation outside of this config.
"*" = {
install_sources = [ "*" ];
installation_mode = "blocked";
};
2024-04-24 18:16:04 +03:00
"addon@darkreader.org" = mkExtension "https://addons.mozilla.org/firefox/downloads/latest/darkreader/latest.xpi";
"cliget@zaidabdulla.com" = mkExtension "https://addons.mozilla.org/firefox/downloads/latest/cliget/latest.xpi";
"uBlock0@raymondhill.net" = mkExtension "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
"{446900e4-71c2-419f-a6a7-df9c091e268b}" = mkExtension "https://addons.mozilla.org/firefox/downloads/latest/bitwarden-password-manager/latest.xpi";
"{d7742d87-e61d-4b78-b8a1-b469842139fa}" = mkExtension "https://addons.mozilla.org/firefox/downloads/latest/vimium-ff/latest.xpi";
"{e7625f06-e252-479d-ac7a-db68aeaff2cb}" = mkExtension "https://addons.mozilla.org/firefox/downloads/latest/togglefonts/latest.xpi";
2024-05-20 14:31:14 +03:00
"{a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7}" = mkExtension "https://addons.mozilla.org/firefox/downloads/latest/user-agent-string-switcher/latest.xpi";
# NOTE: This extension is helpful to find the required parameters for this config.
# Or find them yourself inside the `about:support`.
2024-04-24 18:16:04 +03:00
# "queryamoid@kaply.com" = mkExtension "https://github.com/mkaply/queryamoid/releases/download/v0.1/query_amo_addon_id-0.1-fx.xpi";
};
# NOTE: `firefox-esr` edition is required to change default search engine.
SearchEngines = {
Default = "Whoogle";
Add = [
{
Alias = "w";
Description = "Google search proxy.";
IconURL = "https://google.voronind.com/favicon.ico";
Method = "POST";
Name = "Whoogle";
PostData = "q={searchTerms}";
SuggestURLTemplate = "https://google.voronind.com/autocomplete?q={searchTerms}";
URLTemplate = "https://google.voronind.com/search?q=%{searchTerms}";
}
];
};
};
};
}