mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-02-07 12:19:07 +00:00
users/foo-dogsquared: refactor browser configuration
This commit is contained in:
parent
bdeccc3c08
commit
4ebaca7a13
@ -2,178 +2,184 @@
|
||||
{ config, lib, pkgs, osConfig ? { }, ... }:
|
||||
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
google-chrome-dev
|
||||
nyxt
|
||||
];
|
||||
config = lib.mkMerge [
|
||||
{
|
||||
home.packages = with pkgs; [
|
||||
google-chrome-dev
|
||||
nyxt
|
||||
];
|
||||
|
||||
# The only browser to give me money.
|
||||
programs.brave = {
|
||||
enable = true;
|
||||
commandLineArgs = [
|
||||
"--no-default-browser-check"
|
||||
"--use-system-default-printer"
|
||||
];
|
||||
extensions = [
|
||||
{ id = "dbepggeogbaibhgnhhndojpepiihcmeb"; } # Vimium
|
||||
{ id = "ekhagklcjbdpajgpjgmbionohlpdbjgc"; } # Zotero connector
|
||||
{ id = "jfnifeihccihocjbfcfhicmmgpjicaec"; } # GSConnect
|
||||
{ id = "aapbdbdomjkkjkaonfhkkikfgjllcleb"; } # Google Translate
|
||||
{ id = "egpjdkipkomnmjhjmdamaniclmdlobbo"; } # Firenvim
|
||||
{ id = "gknkbkaapnhpmkcgkmdekdffgcddoiel"; } # Open Access Button
|
||||
{ id = "fpnmgdkabkmnadcjpehmlllkndpkmiak"; } # Wayback Machine
|
||||
{ id = "gphhapmejobijbbhgpjhcjognlahblep"; } # GNOME Shell integration
|
||||
{ id = "haebnnbpedcbhciplfhjjkbafijpncjl"; } # TinEye Reverse Image Search
|
||||
{ id = "dhdgffkkebhmkfjojejmpbldmpobfkfo"; } # Tampermonkey
|
||||
{ id = "kkmlkkjojmombglmlpbpapmhcaljjkde"; } # Zhongwen
|
||||
{ id = "nngceckbapebfimnlniiiahkandclblb"; } # Bitwarden
|
||||
{ id = "oldceeleldhonbafppcapldpdifcinji"; } # LanguageTool checker
|
||||
{ id = "nglaklhklhcoonedhgnpgddginnjdadi"; } # ActivityWatch Web Watcher
|
||||
];
|
||||
};
|
||||
|
||||
# Despite the name, it isn't a browser for furries.
|
||||
programs.firefox = lib.mkIf (osConfig ? programs.firefox.enable -> !osConfig.programs.firefox.enable) {
|
||||
enable = true;
|
||||
|
||||
package = with pkgs; wrapFirefox firefox-unwrapped {
|
||||
cfg = {
|
||||
enableBrowserpass = true;
|
||||
enableBukubrow = true;
|
||||
enableTridactylNative = true;
|
||||
enableFxCastBridge = true;
|
||||
};
|
||||
|
||||
extraNativeMessagingHosts = lib.optional config.programs.mpv.enable pkgs.ff2mpv;
|
||||
|
||||
extraPolicies = {
|
||||
AppAutoUpdate = false;
|
||||
DisableAppUpdate = true;
|
||||
DisableMasterPasswordCreation = true;
|
||||
DisablePocket = true;
|
||||
DisableSetDesktopBackground = true;
|
||||
DontCheckDefaultBrowser = true;
|
||||
FirefoxHome = {
|
||||
Highlights = false;
|
||||
Pocket = false;
|
||||
Snippets = false;
|
||||
SponsporedPocket = false;
|
||||
SponsporedTopSites = false;
|
||||
};
|
||||
NoDefaultBookmarks = true;
|
||||
OfferToSaveLoginsDefault = false;
|
||||
PasswordManagerEnabled = false;
|
||||
SanitizeOnShutdown = {
|
||||
FormData = true;
|
||||
};
|
||||
UseSystemPrintDialog = true;
|
||||
};
|
||||
};
|
||||
|
||||
profiles.personal = {
|
||||
isDefault = true;
|
||||
|
||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
aw-watcher-web
|
||||
bitwarden
|
||||
browserpass
|
||||
facebook-container
|
||||
firefox-color
|
||||
firefox-translations
|
||||
firenvim
|
||||
languagetool
|
||||
multi-account-containers
|
||||
privacy-badger
|
||||
tampermonkey
|
||||
tridactyl
|
||||
ublock-origin
|
||||
vimium
|
||||
wayback-machine
|
||||
] ++ (with pkgs.firefox-addons; [
|
||||
get-rss-feed-url
|
||||
regretsreporter
|
||||
simple-translate
|
||||
tineye-reverse-image-search
|
||||
updateswh
|
||||
zhongwen
|
||||
google-container
|
||||
]);
|
||||
|
||||
settings = {
|
||||
# Disable the UI tour.
|
||||
"browser.uitour.enabled" = false;
|
||||
|
||||
# Don't tease me with the updates, man.
|
||||
"apps.update.auto" = false;
|
||||
|
||||
# Some inconveniences of life (at least for me).
|
||||
"extensions.pocket.enabled" = false;
|
||||
"signon.rememberSignons" = false;
|
||||
|
||||
# Some quality of lifes.
|
||||
"browser.search.widget.inNavBar" = true;
|
||||
"browser.search.openintab" = true;
|
||||
|
||||
# Some privacy settings...
|
||||
"privacy.donottrackheader.enabled" = true;
|
||||
"privacy.trackingprotection.enabled" = true;
|
||||
|
||||
# Burn our own fingers.
|
||||
"privacy.resistFingerprinting" = true;
|
||||
"privacy.fingerprintingProtection" = true;
|
||||
"privacy.fingerprintingProtection.pbmode" = true;
|
||||
|
||||
"privacy.query_stripping.enabled" = true;
|
||||
"privacy.query_stripping.enabled.pbmode" = true;
|
||||
|
||||
"dom.security.https_first" = true;
|
||||
"dom.security.https_first_pbm" = true;
|
||||
|
||||
"privacy.firstparty.isolate" = true;
|
||||
};
|
||||
|
||||
search = {
|
||||
default = "Brave";
|
||||
force = true;
|
||||
order = [
|
||||
"Brave"
|
||||
"Nix Packages"
|
||||
"Google"
|
||||
# The only browser to give me money.
|
||||
programs.brave = {
|
||||
enable = true;
|
||||
commandLineArgs = [
|
||||
"--no-default-browser-check"
|
||||
"--use-system-default-printer"
|
||||
];
|
||||
engines = {
|
||||
"Brave" = {
|
||||
urls = [{
|
||||
template = "https://search.brave.com/search";
|
||||
params = [
|
||||
{ name = "type"; value = "search"; }
|
||||
{ name = "q"; value = "{searchTerms}"; }
|
||||
];
|
||||
}];
|
||||
extensions = [
|
||||
{ id = "dbepggeogbaibhgnhhndojpepiihcmeb"; } # Vimium
|
||||
{ id = "ekhagklcjbdpajgpjgmbionohlpdbjgc"; } # Zotero connector
|
||||
{ id = "jfnifeihccihocjbfcfhicmmgpjicaec"; } # GSConnect
|
||||
{ id = "aapbdbdomjkkjkaonfhkkikfgjllcleb"; } # Google Translate
|
||||
{ id = "egpjdkipkomnmjhjmdamaniclmdlobbo"; } # Firenvim
|
||||
{ id = "gknkbkaapnhpmkcgkmdekdffgcddoiel"; } # Open Access Button
|
||||
{ id = "fpnmgdkabkmnadcjpehmlllkndpkmiak"; } # Wayback Machine
|
||||
{ id = "gphhapmejobijbbhgpjhcjognlahblep"; } # GNOME Shell integration
|
||||
{ id = "haebnnbpedcbhciplfhjjkbafijpncjl"; } # TinEye Reverse Image Search
|
||||
{ id = "dhdgffkkebhmkfjojejmpbldmpobfkfo"; } # Tampermonkey
|
||||
{ id = "kkmlkkjojmombglmlpbpapmhcaljjkde"; } # Zhongwen
|
||||
{ id = "nngceckbapebfimnlniiiahkandclblb"; } # Bitwarden
|
||||
{ id = "oldceeleldhonbafppcapldpdifcinji"; } # LanguageTool checker
|
||||
{ id = "nglaklhklhcoonedhgnpgddginnjdadi"; } # ActivityWatch Web Watcher
|
||||
];
|
||||
};
|
||||
}
|
||||
|
||||
icon = "${config.programs.brave.package}/share/icons/hicolor/64x64/apps/brave-browser.png";
|
||||
definedAliases = [ "@brave" "@b" ];
|
||||
(lib.mkIf (osConfig ? programs.firefox.enable -> !osConfig.programs.firefox.enable) {
|
||||
# Despite the name, it isn't a browser for furries.
|
||||
programs.firefox = {
|
||||
enable = true;
|
||||
|
||||
package = with pkgs; wrapFirefox firefox-unwrapped {
|
||||
cfg = {
|
||||
enableBrowserpass = true;
|
||||
enableBukubrow = true;
|
||||
enableTridactylNative = true;
|
||||
enableFxCastBridge = true;
|
||||
};
|
||||
|
||||
"Nix Packages" = {
|
||||
urls = [{
|
||||
template = "https://search.nixos.org/packages";
|
||||
params = [
|
||||
{ name = "type"; value = "packages"; }
|
||||
{ name = "query"; value = "{searchTerms}"; }
|
||||
];
|
||||
}];
|
||||
extraNativeMessagingHosts = lib.optional config.programs.mpv.enable pkgs.ff2mpv;
|
||||
|
||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
definedAliases = [ "@np" ];
|
||||
extraPolicies = {
|
||||
AppAutoUpdate = false;
|
||||
DisableAppUpdate = true;
|
||||
DisableMasterPasswordCreation = true;
|
||||
DisablePocket = true;
|
||||
DisableSetDesktopBackground = true;
|
||||
DontCheckDefaultBrowser = true;
|
||||
FirefoxHome = {
|
||||
Highlights = false;
|
||||
Pocket = false;
|
||||
Snippets = false;
|
||||
SponsporedPocket = false;
|
||||
SponsporedTopSites = false;
|
||||
};
|
||||
NoDefaultBookmarks = true;
|
||||
OfferToSaveLoginsDefault = false;
|
||||
PasswordManagerEnabled = false;
|
||||
SanitizeOnShutdown = {
|
||||
FormData = true;
|
||||
};
|
||||
UseSystemPrintDialog = true;
|
||||
};
|
||||
};
|
||||
|
||||
profiles.personal = {
|
||||
isDefault = true;
|
||||
|
||||
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
||||
aw-watcher-web
|
||||
bitwarden
|
||||
browserpass
|
||||
facebook-container
|
||||
firefox-color
|
||||
firefox-translations
|
||||
firenvim
|
||||
languagetool
|
||||
multi-account-containers
|
||||
privacy-badger
|
||||
tampermonkey
|
||||
tridactyl
|
||||
ublock-origin
|
||||
vimium
|
||||
wayback-machine
|
||||
] ++ (with pkgs.firefox-addons; [
|
||||
get-rss-feed-url
|
||||
regretsreporter
|
||||
simple-translate
|
||||
tineye-reverse-image-search
|
||||
updateswh
|
||||
zhongwen
|
||||
google-container
|
||||
]);
|
||||
|
||||
settings = {
|
||||
# Disable the UI tour.
|
||||
"browser.uitour.enabled" = false;
|
||||
|
||||
# Don't tease me with the updates, man.
|
||||
"apps.update.auto" = false;
|
||||
|
||||
# Some inconveniences of life (at least for me).
|
||||
"extensions.pocket.enabled" = false;
|
||||
"signon.rememberSignons" = false;
|
||||
|
||||
# Some quality of lifes.
|
||||
"browser.search.widget.inNavBar" = true;
|
||||
"browser.search.openintab" = true;
|
||||
|
||||
# Some privacy settings...
|
||||
"privacy.donottrackheader.enabled" = true;
|
||||
"privacy.trackingprotection.enabled" = true;
|
||||
|
||||
# Burn our own fingers.
|
||||
"privacy.resistFingerprinting" = true;
|
||||
"privacy.fingerprintingProtection" = true;
|
||||
"privacy.fingerprintingProtection.pbmode" = true;
|
||||
|
||||
"privacy.query_stripping.enabled" = true;
|
||||
"privacy.query_stripping.enabled.pbmode" = true;
|
||||
|
||||
"dom.security.https_first" = true;
|
||||
"dom.security.https_first_pbm" = true;
|
||||
|
||||
"privacy.firstparty.isolate" = true;
|
||||
};
|
||||
|
||||
"Bing".metaData.hidden = true;
|
||||
"Google".metaData.alias = "@g";
|
||||
search = {
|
||||
default = "Brave";
|
||||
force = true;
|
||||
order = [
|
||||
"Brave"
|
||||
"Nix Packages"
|
||||
"Google"
|
||||
];
|
||||
engines = {
|
||||
"Brave" = {
|
||||
urls = [{
|
||||
template = "https://search.brave.com/search";
|
||||
params = [
|
||||
{ name = "type"; value = "search"; }
|
||||
{ name = "q"; value = "{searchTerms}"; }
|
||||
];
|
||||
}];
|
||||
|
||||
icon = "${config.programs.brave.package}/share/icons/hicolor/64x64/apps/brave-browser.png";
|
||||
definedAliases = [ "@brave" "@b" ];
|
||||
};
|
||||
|
||||
"Nix Packages" = {
|
||||
urls = [{
|
||||
template = "https://search.nixos.org/packages";
|
||||
params = [
|
||||
{ name = "type"; value = "packages"; }
|
||||
{ name = "query"; value = "{searchTerms}"; }
|
||||
];
|
||||
}];
|
||||
|
||||
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
|
||||
definedAliases = [ "@np" ];
|
||||
};
|
||||
|
||||
"Bing".metaData.hidden = true;
|
||||
"Google".metaData.alias = "@g";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
# Configuring Tridactyl.
|
||||
xdg.configFile.tridactyl.source = ../config/tridactyl;
|
||||
# Configuring Tridactyl.
|
||||
xdg.configFile.tridactyl.source = ../config/tridactyl;
|
||||
})
|
||||
];
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user