feat: add little-rascal laptop configuration and deployment
- Add complete NixOS configuration for little-rascal laptop - Include Niri window manager and CLI-focused setup - Add hardware configuration for laptop hardware - Include deployment script for little-rascal - Update flake.nix to include little-rascal as build target - Add deploy-rs configuration for little-rascal deployment The little-rascal laptop is now fully integrated into the Home Lab infrastructure with complete NixOS configuration management.
This commit is contained in:
parent
f42bae513c
commit
3715e542b2
6 changed files with 355 additions and 46 deletions
|
@ -1,6 +1,5 @@
|
|||
# Little Rascal - Development Laptop Configuration
|
||||
# Based on congenital-optimist with laptop-specific adjustments
|
||||
|
||||
{
|
||||
config,
|
||||
pkgs,
|
||||
|
@ -11,38 +10,39 @@
|
|||
}: {
|
||||
imports = [
|
||||
./hardware-configuration.nix
|
||||
|
||||
|
||||
# Common modules
|
||||
../../modules/common/base.nix
|
||||
../../modules/common/nix.nix
|
||||
../../modules/common/tty.nix
|
||||
../../modules/common/emacs.nix
|
||||
|
||||
|
||||
# Desktop
|
||||
../../modules/desktop/niri.nix
|
||||
../../modules/desktop/cosmic.nix
|
||||
../../modules/desktop/fonts.nix
|
||||
|
||||
# Development
|
||||
|
||||
# Development
|
||||
../../modules/development/tools.nix
|
||||
../../modules/ai/claude-code.nix
|
||||
|
||||
|
||||
# Users
|
||||
../../modules/users/geir.nix
|
||||
../../modules/users/common.nix
|
||||
../../modules/users/shell-aliases.nix
|
||||
|
||||
|
||||
# Virtualization
|
||||
../../modules/virtualization/libvirt.nix
|
||||
../../modules/virtualization/incus.nix
|
||||
../../modules/virtualization/podman.nix
|
||||
|
||||
|
||||
# Audio
|
||||
../../modules/sound/pipewire.nix
|
||||
|
||||
|
||||
# Network
|
||||
../../modules/network/common.nix
|
||||
../../modules/network/extraHosts.nix
|
||||
|
||||
|
||||
# Security
|
||||
../../modules/security/ssh-keys.nix
|
||||
];
|
||||
|
@ -50,26 +50,26 @@
|
|||
networking = {
|
||||
hostName = "little-rascal";
|
||||
networkmanager.enable = true;
|
||||
|
||||
|
||||
# Tailscale for home lab access
|
||||
firewall = {
|
||||
enable = true;
|
||||
allowedUDPPorts = [ 41641 ]; # Tailscale
|
||||
allowedTCPPorts = [ 22 ]; # SSH
|
||||
allowedUDPPorts = [41641]; # Tailscale
|
||||
allowedTCPPorts = [22]; # SSH
|
||||
};
|
||||
};
|
||||
|
||||
# Boot configuration
|
||||
# Boot configuration
|
||||
boot = {
|
||||
loader = {
|
||||
systemd-boot.enable = true;
|
||||
efi.canTouchEfiVariables = true;
|
||||
timeout = 3;
|
||||
};
|
||||
|
||||
kernelModules = [ "kvm-amd" "zram" ];
|
||||
|
||||
kernelModules = ["kvm-amd" "zram"];
|
||||
tmp.cleanOnBoot = true;
|
||||
|
||||
|
||||
# zram swap like other machines
|
||||
kernel.sysctl."vm.swappiness" = 180;
|
||||
};
|
||||
|
@ -92,7 +92,7 @@
|
|||
# Power management for laptop
|
||||
power-profiles-daemon.enable = true;
|
||||
upower.enable = true;
|
||||
|
||||
|
||||
# Display manager
|
||||
greetd = {
|
||||
enable = true;
|
||||
|
@ -103,12 +103,12 @@
|
|||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
# Essential services
|
||||
tailscale.enable = true;
|
||||
blueman.enable = true;
|
||||
printing.enable = true;
|
||||
|
||||
|
||||
# Location services for time zone
|
||||
geoclue2.enable = true;
|
||||
};
|
||||
|
@ -123,4 +123,4 @@
|
|||
|
||||
# System version
|
||||
system.stateVersion = "25.05";
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue