diff --git a/default.nix b/default.nix index 60ab422..6b8656a 100755 --- a/default.nix +++ b/default.nix @@ -13,49 +13,6 @@ in { ] ++ (mapModulesRec' (toString ./modules) import); - environment.variables = { - NIXPKGS_ALLOW_UNFREE = "1"; - }; - - nix = { - package = pkgs.nixVersions.latest; - - # flake registry and nix path pinning - # might not be needed? see: https://github.com/NixOS/nixpkgs/commit/e456032addae76701eb17e6c03fc515fd78ad74f - nixPath = [ "nixpkgs=${inputs.nixpkgs}" ]; - registry.nixpkgs.flake = inputs.nixpkgs; - - settings = { - experimental-features = [ "nix-command" "flakes" ]; - auto-optimise-store = true; - keep-outputs = true; - keep-derivations = true; - substituters = [ - "https://nix-community.cachix.org" - "https://nixpkgs-wayland.cachix.org" - "https://wezterm.cachix.org" - "https://niri.cachix.org" - "https://cache.soopy.moe" - ]; - trusted-public-keys = [ - "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" - "nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA=" - "wezterm.cachix.org-1:kAbhjYUC9qvblTE+s7S+kl5XM1zVa4skO+E/1IDWdH0=" - "niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964=" - "cache.soopy.moe-1:0RZVsQeR+GOh0VQI9rvnHz55nVXkFardDqfm4+afjPo=" - ]; - }; - - optimise.automatic = true; - gc = { - automatic = true; - dates = "weekly"; - options = "--delete-older-than 14d"; - }; - }; - - programs.nix-ld.enable = mkDefault true; - system.stateVersion = "23.11"; system.configurationRevision = with inputs; mkIf (self ? rev) self.rev; hm.home.stateVersion = config.system.stateVersion; @@ -96,13 +53,6 @@ in { environment.systemPackages = with pkgs; [ openssh mosh - unrar unzip - micro - curl wget - desktop-file-utils - shared-mime-info - xdg-user-dirs - xdg-utils git ]; } diff --git a/hosts/goopnet-interface/default.nix b/hosts/goopnet-interface/default.nix index ffadfa5..66c6636 100755 --- a/hosts/goopnet-interface/default.nix +++ b/hosts/goopnet-interface/default.nix @@ -7,7 +7,7 @@ hm.home.packages = with pkgs; [ # archives - zip xz unzip p7zip zstd + zip xz unrar unzip p7zip zstd # utils ffmpeg ripgrep ripgrep-all jq libqalculate imagemagick pandoc # dev diff --git a/modules/nix.nix b/modules/nix.nix new file mode 100644 index 0000000..89df476 --- /dev/null +++ b/modules/nix.nix @@ -0,0 +1,54 @@ +{ lib, pkgs, inputs, config, ... }: +{ + environment.variables = { + NIXPKGS_ALLOW_UNFREE = "1"; + }; + + nix = { + package = pkgs.nixVersions.latest; + + flake.setNixPath = true; + flake.setFlakeRegistry = true; + + settings = { + experimental-features = [ "nix-command" "flakes" ]; + + auto-optimise-store = true; + + keep-outputs = true; + keep-derivations = true; + + substituters = [ + "https://nix-community.cachix.org" + "https://nixpkgs-wayland.cachix.org" + "https://wezterm.cachix.org" + "https://niri.cachix.org" + "https://cache.soopy.moe" + ]; + trusted-public-keys = [ + "nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=" + "nixpkgs-wayland.cachix.org-1:3lwxaILxMRkVhehr5StQprHdEo4IrE8sRho9R9HOLYA=" + "wezterm.cachix.org-1:kAbhjYUC9qvblTE+s7S+kl5XM1zVa4skO+E/1IDWdH0=" + "niri.cachix.org-1:Wv0OmO7PsuocRKzfDoJ3mulSl7Z6oezYhGhR+3W2964=" + "cache.soopy.moe-1:0RZVsQeR+GOh0VQI9rvnHz55nVXkFardDqfm4+afjPo=" + ]; + }; + }; + + nix.optimise.automatic = true; + nix.gc = { + automatic = true; + dates = "weekly"; + options = "--delete-older-than 14d"; + }; + + programs.nix-index.enable = true; + programs.command-not-found.enable = true; + + # compat w/ non-nix programs + programs.nix-ld.enable = true; + programs.appimage = { + enable = true; + binfmt = true; + }; +} diff --git a/modules/xdg.nix b/modules/xdg.nix index cc9c8a1..dd85b81 100644 --- a/modules/xdg.nix +++ b/modules/xdg.nix @@ -1,4 +1,4 @@ -{ ... }: +{ pkgs, ... }: { config = { hm.xdg.enable = true; @@ -19,5 +19,9 @@ screenshots = "${pictures}/screenshots"; }; }; + + environment.systemPackages = with pkgs; [ + xdg-utils + ]; }; }