diff --git a/hosts/rogue/nixos/home-manager/home.nix b/hosts/rogue/nixos/home-manager/home.nix new file mode 100644 index 0000000..ef4f749 --- /dev/null +++ b/hosts/rogue/nixos/home-manager/home.nix @@ -0,0 +1,73 @@ +# This is your home-manager configuration file +# Use this to configure your home environment (it replaces ~/.config/nixpkgs/home.nix) +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: { + # You can import other home-manager modules here + imports = [ + # If you want to use modules your own flake exports (from modules/home-manager): + # outputs.homeManagerModules.example + # Or modules exported from other flakes (such as nix-colors): + # inputs.nix-colors.homeManagerModules.default + + # You can also split up your configuration and import pieces of it here: + # ./nvim.nix + + # Shared config + ../../shared/shared_home.nix + ]; + + nixpkgs = { + # You can add overlays here + overlays = [ + # Add overlays your own flake exports (from overlays and pkgs dir): + outputs.overlays.additions + outputs.overlays.modifications + outputs.overlays.unstable-packages + + # You can also add overlays exported from other flakes: + # neovim-nightly-overlay.overlays.default + + # Or define it inline, for example: + # (final: prev: { + # hi = final.hello.overrideAttrs (oldAttrs: { + # patches = [ ./change-hello-to-hi.patch ]; + # }); + # }) + ]; + # Configure your nixpkgs instance + config = { + # Disable if you don't want unfree packages + allowUnfree = true; + }; + }; + + # TODO: Set your username + home = { + username = "aces"; + homeDirectory = "/home/aces"; + }; + + # Add stuff for your user as you see fit: + # programs.neovim.enable = true; + # home.packages = with pkgs; [ steam ] + + # Enable home-manager and git + programs.home-manager.enable = true; + + # Nicely reload system units when changing configs + systemd.user.startServices = "sd-switch"; + + # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion + home.stateVersion = "24.05"; + home.file = { + ".face" = { + source = ./assets/avatar.png; + } + }; +} \ No newline at end of file diff --git a/hosts/rogue/nixos/configuration.nix b/hosts/rogue/nixos/nixos/configuration.nix similarity index 98% rename from hosts/rogue/nixos/configuration.nix rename to hosts/rogue/nixos/nixos/configuration.nix index 2c6e20b..2f519e4 100644 --- a/hosts/rogue/nixos/configuration.nix +++ b/hosts/rogue/nixos/nixos/configuration.nix @@ -8,6 +8,10 @@ imports = [ # Include the results of the hardware scan. ./hardware-configuration.nix + + + # Shared config + ../../shared/shared_config.nix ]; # Bootloader. diff --git a/hosts/rogue/nixos/hardware-configuration.nix b/hosts/rogue/nixos/nixos/hardware-configuration.nix similarity index 100% rename from hosts/rogue/nixos/hardware-configuration.nix rename to hosts/rogue/nixos/nixos/hardware-configuration.nix diff --git a/hosts/shared/home-manager/shared_home.nix b/hosts/shared/home-manager/shared_home.nix index e69de29..783ecbc 100644 --- a/hosts/shared/home-manager/shared_home.nix +++ b/hosts/shared/home-manager/shared_home.nix @@ -0,0 +1,90 @@ +{ + inputs, + outputs, + lib, + config, + pkgs, + ... +}: { + programs.firefox = { + enable = true; + + # Install extensions from NUR + extensions = with pkgs.nur.repos.rycee.firefox-addons; [ + ublock-origin + darkreader + ]; + + # Privacy about:config settings + profiles.notus = { + settings = { + "browser.send_pings" = false; + "browser.urlbar.speculativeConnect.enabled" = false; + "dom.event.clipboardevents.enabled" = true; + "media.navigator.enabled" = false; + "network.cookie.cookieBehavior" = 1; + "network.http.referer.XOriginPolicy" = 2; + "network.http.referer.XOriginTrimmingPolicy" = 2; + "beacon.enabled" = false; + "browser.safebrowsing.downloads.remote.enabled" = false; + "network.IDN_show_punycode" = true; + "extensions.activeThemeID" = "firefox-compact-dark@mozilla.org"; + "app.shield.optoutstudies.enabled" = false; + "dom.security.https_only_mode_ever_enabled" = true; + "toolkit.legacyUserProfileCustomizations.stylesheets" = true; + "browser.toolbars.bookmarks.visibility" = "never"; + "geo.enabled" = false; + + # Disable telemetry + "browser.newtabpage.activity-stream.feeds.telemetry" = false; + "browser.ping-centre.telemetry" = false; + "browser.tabs.crashReporting.sendReport" = false; + "devtools.onboarding.telemetry.logged" = false; + "toolkit.telemetry.enabled" = false; + "toolkit.telemetry.unified" = false; + "toolkit.telemetry.server" = ""; + + # Disable Pocket + "browser.newtabpage.activity-stream.feeds.discoverystreamfeed" = false; + "browser.newtabpage.activity-stream.feeds.section.topstories" = false; + "browser.newtabpage.activity-stream.section.highlights.includePocket" = false; + "browser.newtabpage.activity-stream.showSponsored" = false; + "extensions.pocket.enabled" = false; + + # Disable prefetching + "network.dns.disablePrefetch" = true; + "network.prefetch-next" = false; + + # Disable JS in PDFs + "pdfjs.enableScripting" = false; + + # Harden SSL + "security.ssl.require_safe_negotiation" = true; + + # Extra + "identity.fxaccounts.enabled" = false; + "browser.search.suggest.enabled" = false; + "browser.urlbar.shortcuts.bookmarks" = false; + "browser.urlbar.shortcuts.history" = false; + "browser.urlbar.shortcuts.tabs" = false; + "browser.urlbar.suggest.bookmark" = false; + "browser.urlbar.suggest.engines" = false; + "browser.urlbar.suggest.history" = false; + "browser.urlbar.suggest.openpage" = false; + "browser.urlbar.suggest.topsites" = false; + "browser.uidensity" = 1; + "media.autoplay.enabled" = false; + "toolkit.zoomManager.zoomValues" = ".8,.90,.95,1,1.1,1.2"; + + "privacy.firstparty.isolate" = true; + "network.http.sendRefererHeader" = 0; + }; + }; + }; + + programs.git = { + enabled = true; + userName = "Seven Of Aces"; + userEmail = "sevenofaces42@gmail.com"; + }; +} \ No newline at end of file