This commit is contained in:
parent
f2d2dc0a2b
commit
4271993f2f
10 changed files with 132 additions and 157 deletions
|
@ -15,11 +15,6 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
desktop = {
|
desktop = {
|
||||||
browsers = {
|
|
||||||
firefox.enable = true;
|
|
||||||
firefox.homepageUrl = "https://nixedo.oliverdavies.uk";
|
|
||||||
};
|
|
||||||
|
|
||||||
gtk.enable = true;
|
gtk.enable = true;
|
||||||
|
|
||||||
media = {
|
media = {
|
||||||
|
|
|
@ -1,151 +0,0 @@
|
||||||
{
|
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
pkgs,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
|
|
||||||
with lib;
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.features.desktop.browsers.firefox;
|
|
||||||
in
|
|
||||||
{
|
|
||||||
options.features.desktop.browsers.firefox = {
|
|
||||||
enable = mkEnableOption "Enable firefox";
|
|
||||||
|
|
||||||
homepageUrl = mkOption {
|
|
||||||
description = "The homepage URL.";
|
|
||||||
type = types.nullOr types.str;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
|
||||||
programs.firefox.enable = false;
|
|
||||||
|
|
||||||
programs.librewolf = {
|
|
||||||
enable = true;
|
|
||||||
|
|
||||||
languagePacks = [ "en-GB" ];
|
|
||||||
|
|
||||||
policies = {
|
|
||||||
CaptivePortal = false;
|
|
||||||
DisableFirefoxAccounts = true;
|
|
||||||
DisableFirefoxStudies = true;
|
|
||||||
DisablePocket = true;
|
|
||||||
DisableTelemetry = true;
|
|
||||||
|
|
||||||
EnableTrackingProtection = {
|
|
||||||
Cryptomining = true;
|
|
||||||
Fingerprinting = true;
|
|
||||||
Value = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
ExtensionSettings = {
|
|
||||||
"jid1-ZAdIEUB7XOzOJw@jetpack" = {
|
|
||||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/duckduckgo-for-firefox/latest.xpi";
|
|
||||||
installation_mode = "force_installed";
|
|
||||||
};
|
|
||||||
|
|
||||||
"uBlock0@raymondhill.net" = {
|
|
||||||
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
|
||||||
installation_mode = "force_installed";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
FirefoxHome = {
|
|
||||||
Highlights = false;
|
|
||||||
Pocket = false;
|
|
||||||
Search = true;
|
|
||||||
Snippets = false;
|
|
||||||
SponsoredPocket = false;
|
|
||||||
SponsoredTopSites = false;
|
|
||||||
TopSites = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
FirefoxSuggest = {
|
|
||||||
ImproveSuggest = false;
|
|
||||||
SponsoredSuggestions = false;
|
|
||||||
WebSuggestions = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
NoDefaultBookmarks = true;
|
|
||||||
OfferToSaveLogins = false;
|
|
||||||
OfferToSaveLoginsDefault = false;
|
|
||||||
PasswordManagerEnabled = false;
|
|
||||||
|
|
||||||
Preferences = {
|
|
||||||
"browser.newtabpage.enabled" = false;
|
|
||||||
"browser.startup.homepage" = cfg.homepageUrl;
|
|
||||||
"cookiebanners.service.mode" = 2; # Block cookie banners
|
|
||||||
"cookiebanners.service.mode.privateBrowsing" = 2; # Block cookie banners in private browsing
|
|
||||||
"privacy.donottrackheader.enabled" = true;
|
|
||||||
"privacy.fingerprintingProtection" = true;
|
|
||||||
"privacy.resistFingerprinting" = true;
|
|
||||||
"privacy.trackingprotection.emailtracking.enabled" = true;
|
|
||||||
"privacy.trackingprotection.enabled" = true;
|
|
||||||
"privacy.trackingprotection.fingerprinting.enabled" = true;
|
|
||||||
"privacy.trackingprotection.socialtracking.enabled" = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
HardwareAcceleration = true;
|
|
||||||
TranslateEnabled = true;
|
|
||||||
|
|
||||||
UserMessaging = {
|
|
||||||
ExtensionRecommendations = false;
|
|
||||||
UrlbarInterventions = false;
|
|
||||||
SkipOnboarding = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
profiles = {
|
|
||||||
default = {
|
|
||||||
extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
||||||
awesome-rss
|
|
||||||
bitwarden
|
|
||||||
darkreader
|
|
||||||
onetab
|
|
||||||
tree-style-tab
|
|
||||||
ublock-origin
|
|
||||||
videospeed
|
|
||||||
vimium
|
|
||||||
web-developer
|
|
||||||
];
|
|
||||||
|
|
||||||
search = {
|
|
||||||
default = "ddg";
|
|
||||||
force = true;
|
|
||||||
privateDefault = "ddg";
|
|
||||||
};
|
|
||||||
|
|
||||||
search.engines = {
|
|
||||||
# TODO: Drupal.org users.
|
|
||||||
# TODO: Mastodon.
|
|
||||||
# TODO: GitHub.
|
|
||||||
# TODO: Forgejo.
|
|
||||||
drupal_projects = {
|
|
||||||
name = "Drupal.org projects";
|
|
||||||
urls = [ { template = "https://www.drupal.org/project/{searchTerms}"; } ];
|
|
||||||
definedAliases = [ "@dp" ];
|
|
||||||
};
|
|
||||||
|
|
||||||
nixvim = {
|
|
||||||
name = "Nixvim options search";
|
|
||||||
urls = [ { template = "https://nix-community.github.io/nixvim/search/?query={searchTerms}"; } ];
|
|
||||||
definedAliases = [ "@nxv" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
settings = {
|
|
||||||
"browser.search.isUS" = false;
|
|
||||||
"browser.search.region" = "GB";
|
|
||||||
"distribution.searchplugins.defaultLocale" = "en-GB";
|
|
||||||
"general.useragent.locale" = "en-GB";
|
|
||||||
"intl.accept_languages" = "en-GB, en";
|
|
||||||
"intl.regional_prefs.use_os_locales" = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,7 +1,6 @@
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./bookmarkthis.nix
|
./bookmarkthis.nix
|
||||||
./browsers/firefox.nix
|
|
||||||
./dev-commit.nix
|
./dev-commit.nix
|
||||||
./gtk.nix
|
./gtk.nix
|
||||||
./media/handbrake.nix
|
./media/handbrake.nix
|
||||||
|
|
3
modules2/browsers/librewolf/enable.nix
Normal file
3
modules2/browsers/librewolf/enable.nix
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.gui.programs.librewolf.enable = true;
|
||||||
|
}
|
18
modules2/browsers/librewolf/extensions.nix
Normal file
18
modules2/browsers/librewolf/extensions.nix
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.gui =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
programs.librewolf.profiles.default.extensions.packages =
|
||||||
|
with pkgs.nur.repos.rycee.firefox-addons; [
|
||||||
|
awesome-rss
|
||||||
|
bitwarden
|
||||||
|
darkreader
|
||||||
|
onetab
|
||||||
|
tree-style-tab
|
||||||
|
ublock-origin
|
||||||
|
videospeed
|
||||||
|
vimium
|
||||||
|
web-developer
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
5
modules2/browsers/librewolf/languages.nix
Normal file
5
modules2/browsers/librewolf/languages.nix
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.gui.programs.librewolf.languagePacks = [
|
||||||
|
"en-GB"
|
||||||
|
];
|
||||||
|
}
|
70
modules2/browsers/librewolf/policies.nix
Normal file
70
modules2/browsers/librewolf/policies.nix
Normal file
|
@ -0,0 +1,70 @@
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.gui.programs.librewolf.policies = {
|
||||||
|
CaptivePortal = false;
|
||||||
|
DisableFirefoxAccounts = true;
|
||||||
|
DisableFirefoxStudies = true;
|
||||||
|
DisablePocket = true;
|
||||||
|
DisableTelemetry = true;
|
||||||
|
|
||||||
|
EnableTrackingProtection = {
|
||||||
|
Cryptomining = true;
|
||||||
|
Fingerprinting = true;
|
||||||
|
Value = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
ExtensionSettings = {
|
||||||
|
"jid1-ZAdIEUB7XOzOJw@jetpack" = {
|
||||||
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/duckduckgo-for-firefox/latest.xpi";
|
||||||
|
installation_mode = "force_installed";
|
||||||
|
};
|
||||||
|
|
||||||
|
"uBlock0@raymondhill.net" = {
|
||||||
|
install_url = "https://addons.mozilla.org/firefox/downloads/latest/ublock-origin/latest.xpi";
|
||||||
|
installation_mode = "force_installed";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
FirefoxHome = {
|
||||||
|
Highlights = false;
|
||||||
|
Pocket = false;
|
||||||
|
Search = true;
|
||||||
|
Snippets = false;
|
||||||
|
SponsoredPocket = false;
|
||||||
|
SponsoredTopSites = false;
|
||||||
|
TopSites = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
FirefoxSuggest = {
|
||||||
|
ImproveSuggest = false;
|
||||||
|
SponsoredSuggestions = false;
|
||||||
|
WebSuggestions = false;
|
||||||
|
};
|
||||||
|
|
||||||
|
NoDefaultBookmarks = true;
|
||||||
|
OfferToSaveLogins = false;
|
||||||
|
OfferToSaveLoginsDefault = false;
|
||||||
|
PasswordManagerEnabled = false;
|
||||||
|
|
||||||
|
Preferences = {
|
||||||
|
"browser.newtabpage.enabled" = false;
|
||||||
|
"cookiebanners.service.mode" = 2; # Block cookie banners
|
||||||
|
"cookiebanners.service.mode.privateBrowsing" = 2; # Block cookie banners in private browsing
|
||||||
|
"privacy.donottrackheader.enabled" = true;
|
||||||
|
"privacy.fingerprintingProtection" = true;
|
||||||
|
"privacy.resistFingerprinting" = true;
|
||||||
|
"privacy.trackingprotection.emailtracking.enabled" = true;
|
||||||
|
"privacy.trackingprotection.enabled" = true;
|
||||||
|
"privacy.trackingprotection.fingerprinting.enabled" = true;
|
||||||
|
"privacy.trackingprotection.socialtracking.enabled" = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
HardwareAcceleration = true;
|
||||||
|
TranslateEnabled = true;
|
||||||
|
|
||||||
|
UserMessaging = {
|
||||||
|
ExtensionRecommendations = false;
|
||||||
|
UrlbarInterventions = false;
|
||||||
|
SkipOnboarding = true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
19
modules2/browsers/librewolf/search-engines.nix
Normal file
19
modules2/browsers/librewolf/search-engines.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.gui.programs.librewolf.profiles.default.search.engines = {
|
||||||
|
# TODO: Drupal.org users.
|
||||||
|
# TODO: Mastodon.
|
||||||
|
# TODO: GitHub.
|
||||||
|
# TODO: Forgejo.
|
||||||
|
drupal_projects = {
|
||||||
|
name = "Drupal.org projects";
|
||||||
|
urls = [ { template = "https://www.drupal.org/project/{searchTerms}"; } ];
|
||||||
|
definedAliases = [ "@dp" ];
|
||||||
|
};
|
||||||
|
|
||||||
|
nixvim = {
|
||||||
|
name = "Nixvim options search";
|
||||||
|
urls = [ { template = "https://nix-community.github.io/nixvim/search/?query={searchTerms}"; } ];
|
||||||
|
definedAliases = [ "@nxv" ];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
7
modules2/browsers/librewolf/search.nix
Normal file
7
modules2/browsers/librewolf/search.nix
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.gui.programs.librewolf.profiles.default.search = {
|
||||||
|
default = "ddg";
|
||||||
|
force = true;
|
||||||
|
privateDefault = "ddg";
|
||||||
|
};
|
||||||
|
}
|
10
modules2/browsers/librewolf/settings.nix
Normal file
10
modules2/browsers/librewolf/settings.nix
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
{
|
||||||
|
flake.modules.homeManager.gui.programs.librewolf.profiles.default.settings = {
|
||||||
|
"browser.search.isUS" = false;
|
||||||
|
"browser.search.region" = "GB";
|
||||||
|
"distribution.searchplugins.defaultLocale" = "en-GB";
|
||||||
|
"general.useragent.locale" = "en-GB";
|
||||||
|
"intl.accept_languages" = "en-GB, en";
|
||||||
|
"intl.regional_prefs.use_os_locales" = true;
|
||||||
|
};
|
||||||
|
}
|
Loading…
Add table
Add a link
Reference in a new issue