# 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/home-manager/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; packageOverrides = pkgs: { nur = import (builtins.fetchTarball { url = "https://github.com/nix-community/NUR/archive/release-24.05.tar.gz"; sha256 = "1facb9jgayc9dpnvg3696r5a5w8x0791zkp0qdbiadg56w4lax6r"; }) { inherit pkgs; }; }; }; }; # 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; }; "Documents/projects/rust/flake.nix" = { source = ../assets/toolchains/rust/flake.nix; }; "Documents/projects/rust/.envrc" = { source = ../assets/toolchains/rust/.envrc; }; }; programs.firefox = { enable = true; # Privacy about:config settings profiles.aces = { extensions = with pkgs.nur.repos.rycee.firefox-addons; [ ublock-origin darkreader ]; 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 = { userName = "Seven Of Aces"; userEmail = "sevenofaces42@gmail.com"; }; }