top level config

This commit is contained in:
2025-08-23 11:14:17 -05:00
parent 21d4f0800a
commit f94627e858
6 changed files with 562 additions and 551 deletions

View File

@@ -1,26 +1,28 @@
{ config, lib, pkgs, ... }: { { config, lib, pkgs, ... }: {
home-manager = { config = {
backupFileExtension = ".backup"; home-manager = {
config = { config, lib, pkgs, inputs }: { backupFileExtension = ".backup";
imports = [ config = { config, lib, pkgs, inputs }: {
inputs.nix-on-droid-home-manager imports = [
]; inputs.nix-on-droid-home-manager
config.homeconfig = { ];
wal.enable = true; config.homeconfig = {
calcurse.enable = true; wal.enable = true;
calcurse.enable = true;
};
}; };
}; };
};
terminal.font = "${pkgs.fira-code}/share/fonts/truetype/FiraCode-VF.ttf"; terminal.font = "${pkgs.fira-code}/share/fonts/truetype/FiraCode-VF.ttf";
user.shell = "${pkgs.zsh}/bin/zsh"; user.shell = "${pkgs.zsh}/bin/zsh";
system.stateVersion = "24.05"; system.stateVersion = "24.05";
environment = { environment = {
etcBackupExtension = ".backup"; etcBackupExtension = ".backup";
motd = ""; motd = "";
};
}; };
} }

View File

@@ -15,194 +15,197 @@
]; ];
boot = { config = {
kernelPackages = pkgs.linuxKernel.packages.linux_6_16; boot = {
loader = { kernelPackages = pkgs.linuxKernel.packages.linux_6_16;
systemd-boot.enable = true; loader = {
efi.canTouchEfiVariables = true; systemd-boot.enable = true;
}; efi.canTouchEfiVariables = true;
binfmt.emulatedSystems = lib.mkIf config.sysconfig.remoteBuildHost [ "aarch64-linux" ];
};
nix.settings.trusted-users = lib.mkIf config.sysconfig.remoteBuildHost [ "remote-builder" ];
users.users."remote-builder" = lib.mkIf config.sysconfig.remoteBuildHost {
isNormalUser = true;
createHome = false;
};
sops.templates."remote-builder" = lib.mkIf config.sysconfig.remoteBuildHost {
content = builtins.concatStringsSep ''''\n'' (builtins.map
(y: config.sops.placeholder.${y})
(builtins.partition
(x: (builtins.match "^remoteBuildClientKeys/.+" x) != null)
(builtins.attrNames config.sops.secrets)
).right
);
path = "/etc/ssh/authorized_keys.d/remote-builder";
owner = "remote-builder";
};
hardware = {
graphics.enable = true;
nvidia = {
modesetting.enable = true;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
};
bluetooth.enable = true;
};
services = {
xserver = {
#enable = true;
videoDrivers = ["nvidia"];
};
displayManager = {
enable = true;
defaultSession = "hyprland";
autoLogin = {
enable = true;
user = "nathan";
};
};
pulseaudio.enable = false;
};
systemd.extraConfig = "DefaultLimitNOFILE=2048";
environment.sessionVariables = {
WLR_BACKENDS = "headless";
WLR_LIBINPUT_NO_DEVICES = "1";
};
programs.zsh.enable = true;
environment.shells = with pkgs; [ zsh bashInteractive ];
nixpkgs.config.allowUnfree = true;
services.displayManager.sddm.settings.AutoLogin = {
User = "nathan";
Session = "hyprland";
Relogin = true;
};
networking = {
nameservers = lib.mkDefault [ "1.1.1.1" "1.0.0.1" ];
networkmanager = {
enable = true;
dns = "none";
};
nftables = {};
nat = {
enable = true;
internalInterfaces = [ "ve-+" ];
externalInterface = "enp6s0";
};
};
system.stateVersion = "23.05"; # Did you read the comment?
sops = {
age.keyFile = "/home/nathan/.config/sops/age/keys.txt";
defaultSopsFile = ./secrets.yaml;
defaultSopsFormat = "yaml";
secrets = {
"nathan/pass" = {
neededForUsers = true;
}; };
binfmt.emulatedSystems = lib.mkIf config.sysconfig.remoteBuildHost [ "aarch64-linux" ];
}; };
};
sysconfig = { nix.settings.trusted-users = lib.mkIf config.sysconfig.remoteBuildHost [ "remote-builder" ];
remoteBuildHost = true;
host = "homebox";
graphical = true;
users = {
nathan = {
extraGroups = [ "wheel" "networkmanager" ];
sshKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAsU69CxfQk58CvItPN426h5Alnpb60SH37wet97Vb57 nathan@laptop"
];
shell = pkgs.zsh;
hashedPasswordFile = config.sops.secrets."nathan/pass".path;
home-manager = {
enable = true;
extraModules = [
{
homeconfig = {
minimal = false;
wayvnc.enable = false;
hyprland.enable = true;
swaylock.enable = true;
wal.enable = true;
mpd.enable = true;
ags.enable = true;
calcurse.enable = true;
rofi.enable = true;
firefox.enable = true;
git.enable = true;
nh.enable = true;
};
home.packages = [ users.users."remote-builder" = lib.mkIf config.sysconfig.remoteBuildHost {
pkgs.wayvnc isNormalUser = true;
]; createHome = false;
} };
];
}; sops.templates."remote-builder" = lib.mkIf config.sysconfig.remoteBuildHost {
content = builtins.concatStringsSep ''''\n'' (builtins.map
(y: config.sops.placeholder.${y})
(builtins.partition
(x: (builtins.match "^remoteBuildClientKeys/.+" x) != null)
(builtins.attrNames config.sops.secrets)
).right
);
path = "/etc/ssh/authorized_keys.d/remote-builder";
owner = "remote-builder";
};
hardware = {
graphics.enable = true;
nvidia = {
modesetting.enable = true;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
}; };
bluetooth.enable = true;
}; };
services = { services = {
sddm.enable = true; xserver = {
openssh.enable = true; #enable = true;
pipewire.enable = true; videoDrivers = ["nvidia"];
netbird.enable = true;
minecraft.enable = false;
};
programs = {
hyprland.enable = true;
ags.enable = true;
steam.enable = false;
};
virtualization = {
traefik.enable = true;
jellyfin.enable = true;
"blunkall.us".enable = true;
nextcloud.enable = true;
ntfy.enable = false;
gitea.enable = true;
n8n.enable = true;
keycloak.enable = true;
netbird.enable = true;
ollama.enable = true;
homeassistant.enable = true;
wyoming = {
enable = true;
piper = true;
openwakeword = true;
faster-whisper = true;
}; };
rustdesk.enable = false; #broken displayManager = {
pihole.enable = false; #broken enable = true;
code-server.enable = false; defaultSession = "hyprland";
novnc.enable = true; autoLogin = {
minecraft.enable = true; enable = true;
user = "nathan";
sandbox.enable = false; };
};
pulseaudio.enable = false;
}; };
systemd.extraConfig = "DefaultLimitNOFILE=2048";
environment.sessionVariables = {
WLR_BACKENDS = "headless";
WLR_LIBINPUT_NO_DEVICES = "1";
};
programs.zsh.enable = true;
environment.shells = with pkgs; [ zsh bashInteractive ];
nixpkgs.config.allowUnfree = true;
services.displayManager.sddm.settings.AutoLogin = {
User = "nathan";
Session = "hyprland";
Relogin = true;
};
networking = {
nameservers = lib.mkDefault [ "1.1.1.1" "1.0.0.1" ];
networkmanager = {
enable = true;
dns = "none";
};
nftables = {};
nat = {
enable = true;
internalInterfaces = [ "ve-+" ];
externalInterface = "enp6s0";
};
};
system.stateVersion = "23.05"; # Did you read the comment?
sops = {
age.keyFile = "/home/nathan/.config/sops/age/keys.txt";
defaultSopsFile = ./secrets.yaml;
defaultSopsFormat = "yaml";
secrets = {
"nathan/pass" = {
neededForUsers = true;
};
};
};
sysconfig = {
remoteBuildHost = true;
host = "homebox";
graphical = true;
users = {
nathan = {
extraGroups = [ "wheel" "networkmanager" ];
sshKeys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIAsU69CxfQk58CvItPN426h5Alnpb60SH37wet97Vb57 nathan@laptop"
];
shell = pkgs.zsh;
hashedPasswordFile = config.sops.secrets."nathan/pass".path;
home-manager = {
enable = true;
extraModules = [
{
homeconfig = {
minimal = false;
wayvnc.enable = false;
hyprland.enable = true;
swaylock.enable = true;
wal.enable = true;
mpd.enable = true;
ags.enable = true;
calcurse.enable = true;
rofi.enable = true;
firefox.enable = true;
git.enable = true;
nh.enable = true;
};
home.packages = [
pkgs.wayvnc
];
}
];
};
};
};
services = {
sddm.enable = true;
openssh.enable = true;
pipewire.enable = true;
netbird.enable = true;
minecraft.enable = false;
};
programs = {
hyprland.enable = true;
ags.enable = true;
steam.enable = false;
};
virtualization = {
traefik.enable = true;
jellyfin.enable = true;
"blunkall.us".enable = true;
nextcloud.enable = true;
ntfy.enable = false;
gitea.enable = true;
n8n.enable = true;
keycloak.enable = true;
netbird.enable = true;
ollama.enable = true;
homeassistant.enable = true;
wyoming = {
enable = true;
piper = true;
openwakeword = true;
faster-whisper = true;
};
rustdesk.enable = false; #broken
pihole.enable = false; #broken
code-server.enable = false;
novnc.enable = true;
minecraft.enable = true;
sandbox.enable = false;
};
};
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
}; };
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
} }

View File

@@ -10,131 +10,133 @@
inputs.sops-nix.nixosModules.sops inputs.sops-nix.nixosModules.sops
]; ];
config = {
nixpkgs.config = { nixpkgs.config = {
allowUnfree = true; allowUnfree = true;
}; };
# Bootloader. # Bootloader.
boot = { boot = {
loader = { loader = {
systemd-boot.enable = true; systemd-boot.enable = true;
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;
};
}; };
};
systemd.extraConfig = "DefaultLimitNOFILE=2048";
hardware = { systemd.extraConfig = "DefaultLimitNOFILE=2048";
graphics.enable = true;
hardware = {
graphics.enable = true;
#enable bluetooth #enable bluetooth
bluetooth.enable = true; bluetooth.enable = true;
}; };
services.pulseaudio.enable = false;
environment.systemPackages = with pkgs; [ services.pulseaudio.enable = false;
alsa-utils
];
sysconfig.opts = { environment.systemPackages = with pkgs; [
sddm.enable = true; alsa-utils
openssh.enable = false; ];
steam.enable = true;
pipewire.enable = true; sysconfig.opts = {
ags.enable = false; sddm.enable = true;
hyprland.enable = false; openssh.enable = false;
git.enable = false; steam.enable = true;
nh.enable = true; pipewire.enable = true;
ags.enable = false;
hyprland.enable = false;
git.enable = false;
nh.enable = true;
};
};
# Enable the X11 windowing system. # Enable the X11 windowing system.
services.xserver = { services.xserver = {
enable = true; enable = true;
desktopManager.enlightenment.enable = true; desktopManager.enlightenment.enable = true;
}; };
services.acpid.enable = true; services.acpid.enable = true;
services.displayManager.enable = true; services.displayManager.enable = true;
services.avahi = { services.avahi = {
enable = true; enable = true;
ipv4 = true; ipv4 = true;
ipv6 = true; ipv6 = true;
openFirewall = true; openFirewall = true;
nssmdns4 = true; nssmdns4 = true;
wideArea = true; wideArea = true;
}; };
# Enable CUPS to print documents. # Enable CUPS to print documents.
services.printing.enable = true; services.printing.enable = true;
system.stateVersion = "23.05"; # Did you read the comment? system.stateVersion = "23.05"; # Did you read the comment?
# Set your time zone. # Set your time zone.
time.timeZone = "America/Chicago"; time.timeZone = "America/Chicago";
# Select internationalisation properties. # Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8"; i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = { i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8"; LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8"; LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8"; LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8"; LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8"; LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8"; LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8"; LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8"; LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8"; LC_TIME = "en_US.UTF-8";
};
networking = {
hostName = "jesstop";
nameservers = [ "1.1.1.1" "1.0.0.1" ];
networkmanager.enable = true;
};
users.users."nickelback" = {
isNormalUser = true;
description = "Thomas Jefferson";
initialPassword = "89453712";
#hashedPasswordFile = config.sops.secrets."nathan/pass".path;
extraGroups = [
"wheel"
"networkmanager"
]; # Enable sudo for the user.
openssh.authorizedKeys.keys = [];
packages = with pkgs; [
(writeShellScriptBin "beets" ''
bluetoothctl connect A4:16:C0:74:1F:55
'')
spotify
gnome-network-displays
discord
krita
rpcs3
];
};
nix = {
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
settings = {
experimental-features = [ "nix-command" "flakes" ];
}; };
networking = {
hostName = "jesstop";
nameservers = [ "1.1.1.1" "1.0.0.1" ];
networkmanager.enable = true;
};
users.users."nickelback" = {
isNormalUser = true;
description = "Thomas Jefferson";
initialPassword = "89453712";
#hashedPasswordFile = config.sops.secrets."nathan/pass".path;
extraGroups = [
"wheel"
"networkmanager"
]; # Enable sudo for the user.
openssh.authorizedKeys.keys = [];
packages = with pkgs; [
(writeShellScriptBin "beets" ''
bluetoothctl connect A4:16:C0:74:1F:55
'')
spotify
gnome-network-displays
discord
krita
rpcs3
];
};
nix = {
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
settings = {
experimental-features = [ "nix-command" "flakes" ];
};
};
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
}; };
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
} }

View File

@@ -10,165 +10,167 @@
inputs.sops-nix.nixosModules.sops inputs.sops-nix.nixosModules.sops
]; ];
config = {
nixpkgs.config = { nixpkgs.config = {
allowUnfree = true; allowUnfree = true;
}; };
# Bootloader. # Bootloader.
boot = { boot = {
kernelPackages = pkgs.linuxKernel.packages.linux_6_16; kernelPackages = pkgs.linuxKernel.packages.linux_6_16;
loader = { loader = {
systemd-boot.enable = true; systemd-boot.enable = true;
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;
};
kernelParams = [ "snd-intel-dspcfg.dsp_driver=1" ];
}; };
kernelParams = [ "snd-intel-dspcfg.dsp_driver=1" ];
};
systemd.extraConfig = "DefaultLimitNOFILE=2048";
hardware = { systemd.extraConfig = "DefaultLimitNOFILE=2048";
graphics.enable = true;
nvidia = { hardware = {
modesetting.enable = true; graphics.enable = true;
powerManagement.enable = true;
powerManagement.finegrained = false;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
prime = { nvidia = {
modesetting.enable = true;
powerManagement.enable = true;
powerManagement.finegrained = false;
open = false;
nvidiaSettings = true;
package = config.boot.kernelPackages.nvidiaPackages.stable;
prime = {
# Make sure to use the correct Bus ID values for your system! # Make sure to use the correct Bus ID values for your system!
intelBusId = "PCI:0:2:0"; intelBusId = "PCI:0:2:0";
nvidiaBusId = "PCI:1:0:0"; nvidiaBusId = "PCI:1:0:0";
# WARNING: sync and offload are mutually exclusive. # WARNING: sync and offload are mutually exclusive.
# You can only pick one!! # You can only pick one!!
#sync.enable = true; #sync.enable = true;
offload = { offload = {
enable = true; enable = true;
enableOffloadCmd = true; enableOffloadCmd = true;
};
}; };
}; };
};
#enable bluetooth #enable bluetooth
bluetooth.enable = true; bluetooth.enable = true;
}; };
services.pulseaudio.enable = false;
environment.systemPackages = with pkgs; [ services.pulseaudio.enable = false;
alsa-utils
];
sysconfig = { environment.systemPackages = with pkgs; [
remoteBuildClient = true; alsa-utils
host = "laptop"; ];
graphical = true;
users = { sysconfig = {
nathan = { remoteBuildClient = true;
extraGroups = [ "wheel" "networkmanager" ]; host = "laptop";
hashedPasswordFile = config.sops.secrets."nathan/pass".path; graphical = true;
shell = pkgs.zsh; users = {
home-manager = { nathan = {
enable = true; extraGroups = [ "wheel" "networkmanager" ];
standalone = false; hashedPasswordFile = config.sops.secrets."nathan/pass".path;
extraModules = [ shell = pkgs.zsh;
{ home-manager = {
homeconfig = { enable = true;
minimal = false; standalone = false;
wayvnc.enable = false; extraModules = [
hyprland.enable = true; {
swaylock.enable = true; homeconfig = {
wal.enable = true; minimal = false;
mpd.enable = true; wayvnc.enable = false;
ags.enable = true; hyprland.enable = true;
calcurse.enable = true; swaylock.enable = true;
rofi.enable = true; wal.enable = true;
firefox.enable = true; mpd.enable = true;
git.enable = true; ags.enable = true;
nh.enable = true; calcurse.enable = true;
}; rofi.enable = true;
} firefox.enable = true;
]; git.enable = true;
nh.enable = true;
};
}
];
};
};
};
services = {
sddm.enable = true;
openssh.enable = false;
pipewire.enable = true;
kdePlasma6.enable = true;
netbird.enable = true;
ollama.enable = true;
};
programs = {
steam.enable = true;
ags.enable = true;
hyprland.enable = true;
};
virtualization = {
wyoming = {
enable = false;
};
homeassistant = {
enable = false;
}; };
}; };
}; };
services = {
sddm.enable = true;
openssh.enable = false;
pipewire.enable = true;
kdePlasma6.enable = true;
netbird.enable = true;
ollama.enable = true;
};
programs = {
steam.enable = true;
ags.enable = true;
hyprland.enable = true;
};
virtualization = {
wyoming = {
enable = false;
};
homeassistant = {
enable = false;
};
};
};
# Enable the X11 windowing system. # Enable the X11 windowing system.
services.xserver = { services.xserver = {
enable = true; enable = true;
videoDrivers = ["nvidia"]; videoDrivers = ["nvidia"];
}; };
services.displayManager.enable = true; services.displayManager.enable = true;
services.avahi = { services.avahi = {
enable = true; enable = true;
ipv4 = true; ipv4 = true;
ipv6 = true; ipv6 = true;
openFirewall = true; openFirewall = true;
nssmdns4 = true; nssmdns4 = true;
wideArea = true; wideArea = true;
}; };
environment.shells = with pkgs; [ zsh bashInteractive ]; environment.shells = with pkgs; [ zsh bashInteractive ];
# Enable CUPS to print documents. # Enable CUPS to print documents.
services.printing.enable = true; services.printing.enable = true;
programs.adb.enable = true; programs.adb.enable = true;
programs.zsh.enable = true; programs.zsh.enable = true;
system.stateVersion = "23.05"; # Did you read the comment? system.stateVersion = "23.05"; # Did you read the comment?
networking = {
nameservers = [ "1.1.1.1" "1.0.0.1" ];
networkmanager.enable = true;
};
sops = {
age.keyFile = "/home/nathan/.config/sops/age/keys.txt";
defaultSopsFile = ./secrets.yaml;
defaultSopsFormat = "yaml";
secrets."nathan/pass".neededForUsers = true;
};
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
networking = {
nameservers = [ "1.1.1.1" "1.0.0.1" ];
networkmanager.enable = true;
}; };
sops = {
age.keyFile = "/home/nathan/.config/sops/age/keys.txt";
defaultSopsFile = ./secrets.yaml;
defaultSopsFormat = "yaml";
secrets."nathan/pass".neededForUsers = true;
};
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
} }

View File

@@ -8,149 +8,151 @@
]; ];
hardware.nvidia.open = true; config = {
hardware.nvidia.open = true;
boot.isContainer = true; boot.isContainer = true;
services = { services = {
xserver = { xserver = {
#enable = true; #enable = true;
videoDrivers = ["nvidia"]; videoDrivers = ["nvidia"];
}; };
displayManager = { displayManager = {
enable = true; enable = true;
defaultSession = "plasma"; defaultSession = "plasma";
autoLogin = { autoLogin = {
enable = true; enable = true;
user = "nathan"; user = "nathan";
}; };
}; };
pulseaudio.enable = false; pulseaudio.enable = false;
};
systemd.extraConfig = "DefaultLimitNOFILE=2048";
/*
environment.sessionVariables = {
WLR_BACKENDS = "headless";
WLR_LIBINPUT_NO_DEVICES = "1";
};
*/
programs.zsh.enable = true;
environment.shells = with pkgs; [ zsh ];
users.defaultUserShell = pkgs.zsh;
nixpkgs = {
config.allowUnfree = true;
hostPlatform = "x86_64-linux";
};
# Set your time zone.
time.timeZone = "America/Chicago";
# Select internationalisation properties.
i18n.defaultLocale = "en_US.UTF-8";
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
services.displayManager.sddm.settings.AutoLogin = {
User = "nathan";
Session = "plasmawayland.desktop";
Relogin = true;
};
networking = {
nameservers = [ "1.1.1.1" "1.0.0.1" ];
networkmanager.enable = true;
firewall.allowedTCPPorts = [ 80 ];
};
system.stateVersion = "25.05"; # Did you read the comment?
users.users."nathan" = {
isNormalUser = true;
initialPassword = "7567";
#hashedPasswordFile = config.sops.secrets."nathan/pass".path;
extraGroups = [
"wheel"
]; # Enable sudo for the user.
/*openssh.authorizedKeys.keys = [
];*/
}; };
nix = { systemd.extraConfig = "DefaultLimitNOFILE=2048";
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ]; /*
settings = { environment.sessionVariables = {
experimental-features = [ "nix-command" "flakes" ]; WLR_BACKENDS = "headless";
WLR_LIBINPUT_NO_DEVICES = "1";
};
*/
programs.zsh.enable = true;
environment.shells = with pkgs; [ zsh ];
users.defaultUserShell = pkgs.zsh;
nixpkgs = {
config.allowUnfree = true;
hostPlatform = "x86_64-linux";
}; };
};
/*sops = { # Set your time zone.
age.keyFile = "/home/nathan/.config/sops/age/keys.txt"; time.timeZone = "America/Chicago";
defaultSopsFile = ./secrets.yaml;
defaultSopsFormat = "yaml";
secrets = { # Select internationalisation properties.
"nathan/pass" = { i18n.defaultLocale = "en_US.UTF-8";
neededForUsers = true;
i18n.extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
};
services.displayManager.sddm.settings.AutoLogin = {
User = "nathan";
Session = "plasmawayland.desktop";
Relogin = true;
};
networking = {
nameservers = [ "1.1.1.1" "1.0.0.1" ];
networkmanager.enable = true;
firewall.allowedTCPPorts = [ 80 ];
};
system.stateVersion = "25.05"; # Did you read the comment?
users.users."nathan" = {
isNormalUser = true;
initialPassword = "7567";
#hashedPasswordFile = config.sops.secrets."nathan/pass".path;
extraGroups = [
"wheel"
]; # Enable sudo for the user.
/*openssh.authorizedKeys.keys = [
];*/
};
nix = {
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
settings = {
experimental-features = [ "nix-command" "flakes" ];
}; };
}; };
};*/
programs.fuse.userAllowOther = true; /*sops = {
age.keyFile = "/home/nathan/.config/sops/age/keys.txt";
defaultSopsFile = ./secrets.yaml;
defaultSopsFormat = "yaml";
home-manager = { secrets = {
backupFileExtension = "backup"; "nathan/pass" = {
extraSpecialArgs = {inherit inputs;}; neededForUsers = true;
users = { };
"nathan" = lib.mkMerge [ };
inputs.nathan-home-manager };*/
{
config.homeconfig = {
minimal = false;
wayvnc.enable = true;
hyprland.enable = false;
wal.enable = false;
ags.enable = false;
swaylock.enable = true;
mpd.enable = true;
calcurse.enable = true;
rofi.enable = true;
firefox.enable = true;
};
}
];
};
};
sysconfig = { programs.fuse.userAllowOther = true;
opts = {
novnc.enable = true;
sddm.enable = true;
openssh.enable = true;
pipewire.enable = true;
ags.enable = false;
hyprland.enable = false;
kdePlasma6.enable = true;
git.enable = true;
nh.enable = true;
netbird.enable = true;
};
};
fonts.packages = with pkgs; [ nerd-fonts.fira-code ]; home-manager = {
backupFileExtension = "backup";
extraSpecialArgs = {inherit inputs;};
users = {
"nathan" = lib.mkMerge [
inputs.nathan-home-manager
{
config.homeconfig = {
minimal = false;
wayvnc.enable = true;
hyprland.enable = false;
wal.enable = false;
ags.enable = false;
swaylock.enable = true;
mpd.enable = true;
calcurse.enable = true;
rofi.enable = true;
firefox.enable = true;
};
}
];
};
};
sysconfig = {
opts = {
novnc.enable = true;
sddm.enable = true;
openssh.enable = true;
pipewire.enable = true;
ags.enable = false;
hyprland.enable = false;
kdePlasma6.enable = true;
git.enable = true;
nh.enable = true;
netbird.enable = true;
};
};
fonts.packages = with pkgs; [ nerd-fonts.fira-code ];
};
} }

View File

@@ -45,7 +45,7 @@
then (import ./configuration/${z} { then (import ./configuration/${z} {
config = {}; config = {};
inherit lib pkgs inputs modulesPath; inherit lib pkgs inputs modulesPath;
}) }).config
else null; else null;
test = if cfg == null then false test = if cfg == null then false
else if !(cfg ? sysconfig) then false else if !(cfg ? sysconfig) then false