cleaned up lib and modules/misc

This commit is contained in:
Gerg-L 2023-06-26 22:13:41 -04:00
parent f2974e6b13
commit da8e226c3a
7 changed files with 55 additions and 52 deletions

View file

@ -5,29 +5,31 @@ inputs @ {
}: let }: let
inherit (unstable) lib; inherit (unstable) lib;
listNixFilesRecursive = path:
builtins.filter (lib.hasSuffix "nix")
(lib.filesystem.listFilesRecursive path);
importAll = path: importAll = path:
map map
(module: (import module inputs)) (module: (import module inputs))
( (listNixFilesRecursive path);
builtins.filter (lib.hasSuffix ".nix")
(lib.filesystem.listFilesRecursive path)
);
mkModules = path: mkModules = path:
lib.listToAttrs ( lib.listToAttrs (
map ( map (
name: { name: {
name = lib.removePrefix (toString path + "/") (lib.removeSuffix ".nix" (toString name)); name = lib.pipe name [
toString
(lib.removePrefix "${path}/")
(lib.removeSuffix ".nix")
];
value = import name inputs; value = import name inputs;
} }
) )
( (listNixFilesRecursive path)
builtins.filter (lib.hasSuffix ".nix")
(lib.filesystem.listFilesRecursive path)
)
); );
in { in {
inherit importAll mkModules; inherit importAll mkModules listNixFilesRecursive;
withSystem = f: withSystem = f:
lib.fold lib.recursiveUpdate {} lib.fold lib.recursiveUpdate {}
@ -39,12 +41,13 @@ in {
lib.nixosSystem { lib.nixosSystem {
inherit system; inherit system;
modules = modules =
builtins.attrValues self.nixosModules ++ importAll (self + "/hosts/" + name); builtins.attrValues self.nixosModules
++ importAll "${self}/hosts/${name}";
} }
); );
mkDisko = names: mkDisko = names:
lib.genAttrs names ( lib.genAttrs names (
name: (import (self + "/hosts/" + name + "/disko.nix") inputs) name: (import "${self}/hosts/${name}/disko.nix" inputs)
); );
mkPkgs = pkgs: path: mkPkgs = pkgs: path:
@ -53,9 +56,6 @@ in {
name = lib.removeSuffix ".nix" (builtins.baseNameOf module); name = lib.removeSuffix ".nix" (builtins.baseNameOf module);
value = pkgs.callPackage module {}; value = pkgs.callPackage module {};
}) })
( (listNixFilesRecursive path)
builtins.filter (lib.hasSuffix ".nix")
(lib.filesystem.listFilesRecursive path)
)
); );
} }

View file

@ -16,7 +16,7 @@
enable = true; enable = true;
displayManager = { displayManager = {
sessionCommands = '' sessionCommands = ''
${lib.getExe pkgs.feh} --bg-center ${self.packages.${pkgs.system}.images + /recursion.png} ${lib.getExe pkgs.feh} --bg-center "${self.packages.${pkgs.system}.images}/recursion.png"
${lib.getExe pkgs.numlockx} ${lib.getExe pkgs.numlockx}
${lib.getExe pkgs.picom} & ${lib.getExe pkgs.picom} &
''; '';

View file

@ -11,7 +11,7 @@
displayManager = { displayManager = {
lightdm = { lightdm = {
enable = true; enable = true;
background = self.packages.${pkgs.system}.images + /recursion.png; background = "${self.packages.${pkgs.system}.images}/recursion.png";
extraConfig = "minimum-vt=1"; extraConfig = "minimum-vt=1";
greeters.mini = { greeters.mini = {
enable = true; enable = true;

View file

@ -17,7 +17,7 @@
plymouth = { plymouth = {
enable = lib.mkDefault true; enable = lib.mkDefault true;
theme = "breeze"; theme = "breeze";
logo = self.packages.${pkgs.system}.images + /logo.png; logo = "${self.packages.${pkgs.system}.images}/logo.png";
}; };
loader = { loader = {
grub.configurationLimit = 10; grub.configurationLimit = 10;

View file

@ -15,35 +15,35 @@ _: {
}; };
}; };
config = lib.mkMerge [ config = {
(lib.mkIf (config.nixpkgs.allowedUnfree != []) { nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) config.nixpkgs.allowedUnfree;
nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) config.nixpkgs.allowedUnfree;
})
{
environment.defaultPackages = lib.mkForce [
pkgs.efibootmgr #efi editor
pkgs.pciutils #lspci
pkgs.alsa-utils #volume control
pkgs.xclip #commandline clipboard access
pkgs.bottom #view tasks
pkgs.nix-tree #view packages
pkgs.nix-output-monitor #nom nom nom nom];
];
#enable ssh environment.defaultPackages = lib.mkForce (builtins.attrValues {
programs.mtr.enable = true; #ping and traceroute inherit
services.openssh = { (pkgs)
enable = true; alsa-utils #volume control
hostKeys = lib.mkForce []; bottom #view tasks
settings = { efibootmgr #efi editor
PermitRootLogin = "yes"; nix-output-monitor #nom nom nom nom;
PasswordAuthentication = false; nix-tree #view packages
KbdInteractiveAuthentication = false; pciutils #lspci
}; xclip #commandline clipboard access
;
});
#enable ssh
programs.mtr.enable = true; #ping and traceroute
services.openssh = {
enable = true;
hostKeys = lib.mkForce [];
settings = {
PermitRootLogin = "yes";
PasswordAuthentication = false;
KbdInteractiveAuthentication = false;
}; };
i18n.defaultLocale = "en_US.UTF-8"; };
#time settings i18n.defaultLocale = "en_US.UTF-8";
time.timeZone = "America/New_York"; #time settings
} time.timeZone = "America/New_York";
]; };
} }

View file

@ -3,7 +3,11 @@ inputs: {pkgs, ...}: {
nix = { nix = {
package = inputs.nix.packages.${pkgs.system}.default; package = inputs.nix.packages.${pkgs.system}.default;
settings = { settings = {
experimental-features = ["nix-command" "flakes" "repl-flake"]; experimental-features = [
"nix-command"
"flakes"
"repl-flake"
];
auto-optimise-store = true; auto-optimise-store = true;
warn-dirty = false; warn-dirty = false;
#ignore global registry #ignore global registry
@ -14,8 +18,7 @@ inputs: {pkgs, ...}: {
"root" "root"
"@wheel" "@wheel"
]; ];
allowed-users = [ allowed-users = [];
];
use-xdg-base-directories = true; use-xdg-base-directories = true;
}; };
}; };

View file

@ -14,7 +14,7 @@
pkgs.sops pkgs.sops
]; ];
sops = { sops = {
defaultSopsFile = self + "/hosts/" + config.networking.hostName + "/secrets.yaml"; defaultSopsFile = "${self}/hosts/${config.networking.hostName}/secrets.yaml";
age.sshKeyPaths = ["/etc/ssh/ssh_host_ed25519_key"]; age.sshKeyPaths = ["/etc/ssh/ssh_host_ed25519_key"];
}; };
} }