diff --git a/flake.nix b/flake.nix index a11a489..48b8c2d 100644 --- a/flake.nix +++ b/flake.nix @@ -43,6 +43,7 @@ home-manager.useUserPackages = true; home-manager.users.james = import ./home.nix; } + { nixpkgs.overlays = [ nur.overlay ]; } ]; }; diff --git a/home/firefox.nix b/home/firefox.nix new file mode 100644 index 0000000..bc56792 --- /dev/null +++ b/home/firefox.nix @@ -0,0 +1,10 @@ +# Home Manager programs.firefox style +programs.firefox = { + enable = true; + package = pkgs.wrapFirefox pkgs.firefox-unwrapped { + forceWayland = true; + extraPolicies = { + ExtensionSettings = {}; + }; + }; +}; diff --git a/hosts/nil.nix b/hosts/nil.nix index 43aa9f6..7490d82 100644 --- a/hosts/nil.nix +++ b/hosts/nil.nix @@ -10,8 +10,7 @@ (modulesPath + "/installer/scan/not-detected.nix") ]; - # This is required for the zfs module as well. Must be unique. Run the following - # head -c4 /dev/urandom | od -A none -t x4 + # This is required for the zfs module as well. Must be unique. Run the following head -c4 /dev/urandom | od -A none -t x4 networking.hostId = "a7a1c3f5"; networking.hostName = "nil"; # Define your hostname. diff --git a/modules/applications/firefox.nix b/modules/applications/firefox.nix new file mode 100644 index 0000000..b5d7f14 --- /dev/null +++ b/modules/applications/firefox.nix @@ -0,0 +1,49 @@ +{ config, pkgs, ... }: { + home-manager.users.james = { + programs.firefox = { + enable = true; + + package = pkgs.firefox.override { + cfg = { + enableTridactylNative = true; + forceWayland = true; + }; + }; + + extensions = with pkgs.nur.repos.rycee.firefox-addons; [ + onepassword-password-manager + https-everywhere + ublock-origin + tridactyl + ]; + + profiles = { + default = { + name = "primary"; + id = 0; + + settings = { + "browser.download.useDownloadDir" = + false; # Ask for download location + "browser.in-content.dark-mode" = true; # Dark mode + "browser.newtabpage.activity-stream.feeds.section.topstories" = + false; # Disable top stories + "browser.newtabpage.activity-stream.feeds.sections" = false; + "browser.newtabpage.activity-stream.feeds.system.topstories" = + false; # Disable top stories + "browser.newtabpage.activity-stream.section.highlights.includePocket" = + false; # Disable pocket + "media.eme.enabled" = true; # Enable DRM + "media.gmp-widevinecdm.visible" = true; # Enable DRM + "media.gmp-widevinecdm.enabled" = true; # Enable DRM + "signon.autofillForms" = false; # Disable built-in form-filling + "signon.rememberSignons" = + false; # Disable built-in password manager + "ui.systemUsesDarkTheme" = true; # Dark mode + }; + }; + }; + + }; + }; +} diff --git a/modules/profiles/graphical.nix b/modules/profiles/graphical.nix index ba1a3ee..d73263f 100644 --- a/modules/profiles/graphical.nix +++ b/modules/profiles/graphical.nix @@ -1,5 +1,12 @@ { config, lib, pkgs, ... }: { - imports = [ ../boot.nix ../cli.nix ../fonts.nix ../sway.nix ./minimal.nix ]; + imports = [ + ../applications/firefox.nix + ../boot.nix + ../cli.nix + ../fonts.nix + ../sway.nix + ./minimal.nix + ]; # Enable sound. sound.enable = true; diff --git a/modules/profiles/minimal.nix b/modules/profiles/minimal.nix index 6d4af25..d6245a6 100644 --- a/modules/profiles/minimal.nix +++ b/modules/profiles/minimal.nix @@ -20,6 +20,8 @@ in { ''; }; + nixpkgs.config.allowUnfree = true; + # Locale time.timeZone = "America/New_York"; i18n.defaultLocale = "en_US.UTF-8";