propare homebox

This commit is contained in:
2026-01-11 17:14:29 -06:00
parent 905de63f78
commit 32bf3e0bc0

View File

@@ -1,21 +1,22 @@
{ config, pkgs, lib, inputs, ... }: { config, pkgs, lib, disko, sops-nix, home-manager, ... }:
{ {
imports = imports =
[ [
./hardware-configuration.nix ./hardware-configuration.nix
inputs.disko.nixosModules.default disko.nixosModules.default
(import ./disko.nix { device1 = "/dev/nvme0n1"; device2 = "/dev/nvme1n1"; device3 = "/dev/sda"; }) (import ./disko.nix { device1 = "/dev/nvme0n1"; device2 = "/dev/nvme1n1"; device3 = "/dev/sda"; })
inputs.sops-nix.nixosModules.sops sops-nix.nixosModules.sops
inputs.home-manager.nixosModules.default home-manager.nixosModules.default
]; ];
config = { config = {
boot = { boot = {
kernelPackages = pkgs.linuxKernel.packages.linux_6_18; kernelPackages = pkgs.linuxKernel.packages.linux_6_18;
loader = { loader = {
@@ -25,45 +26,13 @@
binfmt.emulatedSystems = lib.mkIf config.sysconfig.remoteBuildHost [ "aarch64-linux" ]; binfmt.emulatedSystems = lib.mkIf config.sysconfig.remoteBuildHost [ "aarch64-linux" ];
}; };
services = {
xserver = {
enable = false;
videoDrivers = ["nvidia"];
};
displayManager = {
enable = false;
defaultSession = "hyprland";
autoLogin = {
enable = true;
user = "nathan";
};
};
pulseaudio.enable = false;
hardware.openrgb = {
enable = true;
motherboard = "amd";
};
};
systemd.settings.Manager.DefaultLimitNOFILE = 2048; systemd.settings.Manager.DefaultLimitNOFILE = 2048;
environment.sessionVariables = {
WLR_BACKENDS = "headless";
WLR_LIBINPUT_NO_DEVICES = "1";
};
programs.zsh.enable = true; programs.zsh.enable = true;
environment.shells = with pkgs; [ zsh bashInteractive ]; environment.shells = with pkgs; [ zsh bashInteractive ];
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
services.displayManager.sddm.settings.AutoLogin = {
User = "nathan";
Session = "hyprland";
Relogin = true;
};
networking = { networking = {
nameservers = lib.mkDefault [ "1.1.1.1" "1.0.0.1" ]; nameservers = lib.mkDefault [ "1.1.1.1" "1.0.0.1" ];
networkmanager = { networkmanager = {
@@ -75,77 +44,14 @@
nat = { nat = {
enable = true; enable = true;
internalInterfaces = [ "ve-+" ]; internalInterfaces = [ "ve-+" ];
externalInterface = "wlp7s0"; externalInterface = "wlp7s0"; # wifi
#externalInterface = "enp6s0"; # ethernet
}; };
}; };
system.stateVersion = "23.05"; # Did you read the comment?
sops = {
age.keyFile = "/var/lib/sops/age/keys.txt";
defaultSopsFile = ./secrets.yaml;
defaultSopsFormat = "yaml";
secrets = {
"nathan/pass" = {
neededForUsers = true;
};
};
};
services.getty = {
autologinUser = "nathan";
};
programs.zsh.shellInit = ''
if [ -z "''${WAYLAND_DISPLAY}" ] && [ "''${XDG_VTNR}" -eq 1 ]; then
dbus-run-session Hyprland
fi
'';
systemd.services.hyprland = {};
sysconfig = { sysconfig = {
remoteBuildHost = true; remoteBuildHost = true;
host = "homebox";
graphical = false; graphical = false;
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;
hyprland.enable = false;
hyprlock.enable = false;
wal.enable = true;
mpd.enable = true;
hyprpanel.enable = false;
calcurse.enable = true;
rofi.enable = false;
firefox.enable = false;
git.enable = true;
nh.enable = true;
};
services.hypridle.enable = lib.mkForce false;
home.packages = with pkgs; [
wayvnc
openrgb
];
}
];
};
};
};
services = { services = {
sddm.enable = false; sddm.enable = false;