nix-conf/modules/nix/default.nix

63 lines
1.6 KiB
Nix
Raw Normal View History

2023-12-29 16:43:40 +01:00
{ config, lib, pkgs, self, ... }:
2023-05-19 20:53:02 +02:00
2023-12-29 16:43:40 +01:00
let
cfg = config.jopejoe1.nix;
in
2023-05-19 20:53:02 +02:00
{
2023-12-29 16:43:40 +01:00
options.jopejoe1.nix = {
enable = lib.mkEnableOption "Enable Nix";
2023-05-19 20:53:02 +02:00
};
2023-12-29 16:43:40 +01:00
config = lib.mkIf cfg.enable {
nix = {
settings = {
substituters = [
"https://cache.nixos.org"
"https://nix-community.cachix.org"
];
trusted-public-keys = [
"cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY="
"nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs="
];
trusted-users = [ "root" ];
sandbox = true;
require-sigs = true;
max-jobs = "auto";
auto-optimise-store = true;
allowed-users = [ "*" ];
experimental-features = [ "nix-command" "flakes" ];
warn-dirty = false;
use-xdg-base-directories = true;
};
package = pkgs.nix;
registry = {
home-manager.flake = self.inputs.home-manager;
nixos-hardware.flake = self.inputs.nixos-hardware;
nur.flake = self.inputs.nur;
nixpkgs.flake = self.inputs.nixpkgs;
};
nixPath = [ "nixpkgs=${self.inputs.nixpkgs}" "nixos-config=/etc/nixos/configuration.nix" "/nix/var/nix/profiles/per-user/root/channels" ];
};
2023-12-17 15:25:49 +01:00
2023-12-29 16:43:40 +01:00
environment.systemPackages = with pkgs; [
deploy-rs
nixfmt
nixpkgs-fmt
nix-index
nix-prefetch-git
nixpkgs-review
nurl
nix-init
];
2023-12-17 15:25:49 +01:00
2023-12-29 16:43:40 +01:00
home-manager = {
useGlobalPkgs = true;
useUserPackages = true;
backupFileExtension = "backup";
};
2023-05-19 20:53:02 +02:00
2023-12-29 16:43:40 +01:00
system.stateVersion = "24.05";
};
}
2023-05-19 20:53:02 +02:00