From c85cdcf54d0a8d93272e173899f0e801410d30ad Mon Sep 17 00:00:00 2001 From: kenji Date: Sat, 27 Dec 2025 23:09:03 -0600 Subject: [PATCH] feat(firefox): youtube profile --- apps/firefox/home.nix | 2 + apps/firefox/profiles/youtube.nix | 63 +++++++++++++++++++++++++++++++ 2 files changed, 65 insertions(+) create mode 100644 apps/firefox/profiles/youtube.nix diff --git a/apps/firefox/home.nix b/apps/firefox/home.nix index d96cb59..a231de0 100644 --- a/apps/firefox/home.nix +++ b/apps/firefox/home.nix @@ -80,6 +80,8 @@ "network.trr.mode" = 2; # Use DoH with system fallback "network.trr.uri" = "https://dns.quad9.net/dns-query"; }; + + youtube = import ./profiles/youtube.nix {inherit pkgs myConfig;}; }; }; diff --git a/apps/firefox/profiles/youtube.nix b/apps/firefox/profiles/youtube.nix new file mode 100644 index 0000000..d0ad482 --- /dev/null +++ b/apps/firefox/profiles/youtube.nix @@ -0,0 +1,63 @@ +{ + pkgs, + myConfig, + ... +}: { + id = 1; + name = "YouTube"; + search.force = true; + search.default = "ddg"; + extensions.packages = with pkgs.nur.repos.rycee.firefox-addons; [ + ublock-origin + bitwarden + tridactyl + ]; + + settings = { + # --- Privacy & Hardening --- + "browser.contentblocking.category" = "strict"; + "privacy.trackingprotection.enabled" = true; + "privacy.resistFingerprinting" = true; # Note: Spoofs timezone and caps FPS to 60 + "geo.enabled" = false; + "media.peerconnection.enabled" = false; # Prevents WebRTC IP leaks + "network.dns.disablePrefetch" = true; + "network.prefetch-next" = false; + + # --- NixOS / Hyprland Integration --- + "widget.use-xdg-desktop-portal.file-picker" = 1; # Use native file picker + + # --- UI & Behavior --- + "browser.compactmode.show" = true; + "browser.tabs.closeWindowWithLastTab" = false; + "extensions.pocket.enabled" = false; + "extensions.screenshots.disabled" = true; + "browser.topsites.contile.enabled" = false; + "browser.formfill.enable" = false; + "browser.search.suggest.enabled" = false; + "browser.search.suggest.enabled.private" = false; + "browser.urlbar.suggest.searches" = false; + "browser.urlbar.showSearchSuggestionsFirst" = false; + "browser.newtabpage.activity-stream.feeds.section.topstories" = false; + "browser.newtabpage.activity-stream.feeds.snippets" = false; + "browser.newtabpage.activity-stream.section.highlights.includePocket" = false; + "browser.newtabpage.activity-stream.section.highlights.includeBookmarks" = false; + "browser.newtabpage.activity-stream.section.highlights.includeDownloads" = false; + "browser.newtabpage.activity-stream.section.highlights.includeVisited" = false; + "browser.newtabpage.activity-stream.showSponsored" = false; + "browser.newtabpage.activity-stream.system.showSponsored" = false; + "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; + "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + + # --- Homepage & Navigation --- + "browser.startup.homepage" = "https://youtube.com"; + "browser.newtabpage.pinned" = myConfig.firefox.newtabpage; + + # --- DNS over HTTPS (Quad9) --- + "network.trr.mode" = 2; # Use DoH with system fallback + "network.trr.uri" = "https://dns.quad9.net/dns-query"; + }; + + userChrome = '' + #nav-bar { visibility: collapse !important; } + ''; +}