This commit is contained in:
mjallen18
2026-03-10 09:56:06 -05:00
parent 9daf43e3f3
commit 75c64f2499
9 changed files with 246 additions and 21 deletions

View File

@@ -0,0 +1,52 @@
{
config,
pkgs,
namespace,
...
}:
let
kernel = pkgs.${namespace}.linuxPackages_cachyos-lto-znver4;
in
{
# Configure bootloader with lanzaboot and secureboot
boot = {
kernelModules = [
"nct6775"
"kvm-amd"
"i2c-dev"
"ddcci_backlight"
"k10temp"
];
extraModulePackages = [ config.boot.kernelPackages.ddcci-driver ];
loader = {
efi = {
canTouchEfiVariables = true;
efiSysMountPoint = "/boot";
};
};
initrd = {
verbose = false;
systemd.enable = true;
availableKernelModules = [
"xhci_pci"
"nvme"
"ahci"
"usbhid"
"uas"
"usb_storage"
"sd_mod"
];
};
kernelPackages = kernel;
consoleLogLevel = 3;
bootspec.enable = true;
};
fileSystems = {
"/etc".neededForBoot = true;
};
}

View File

@@ -0,0 +1,101 @@
# Snowfall Lib provides a customized `lib` instance with access to your flake's library
{
config,
# as well as the libraries available from your flake's inputs.
lib,
# An instance of `pkgs` with your overlays and packages applied is also available.
pkgs,
# # You also have access to your flake's inputs.
# inputs,
# Additional metadata is provided by Snowfall Lib.
namespace, # The namespace used for your flake, defaulting to "internal" if not set.
# system, # The system architecture for this host (eg. `x86_64-linux`).
# target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
# format, # A normalized name for the system target (eg. `iso`).
# virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
# systems, # An attribute map of your defined hosts.
# All other arguments come from the system system.
...
}:
{
imports = [
./boot.nix
];
${namespace} = {
bootloader.lanzaboote.enable = true;
desktop.gnome.enable = true;
gaming.enable = true;
hardware = {
disko = {
enable = true;
enableLuks = true;
};
amd = {
enable = true;
lact.enable = true;
};
};
impermanence = {
enable = true;
extraDirectories = [
{
directory = config.jovian.decky-loader.stateDir;
user = config.jovian.decky-loader.user;
group = config.jovian.decky-loader.user;
mode = "u=rwx,g=rwx,o=rx";
}
];
};
network = {
hostName = "allyx";
};
};
programs.coolercontrol.enable = true;
systemd.services.systemd-networkd-wait-online.enable = lib.mkForce false;
environment.variables = {
GDK_SCALE = "1";
EDITOR = "${lib.getExe' pkgs.vscodium "codium"} --wait";
VISUAL = "${lib.getExe' pkgs.vscodium "codium"} --wait";
};
services = {
handheld-daemon = {
enable = true;
user = config.${namespace}.user.name;
adjustor = {
enable = true;
loadAcpiCallModule = true;
};
ui = {
enable = true;
};
};
};
jovian = {
decky-loader = {
enable = true;
user = config.${namespace}.user.name;
};
steam = {
enable = true;
autoStart = true;
desktopSession = "gnome";
user = config.${namespace}.user.name;
};
};
services.displayManager.gdm.enable = lib.mkForce false;
services.displayManager.sddm.wayland.enable = true;
}