refactor: reorganize, add package (opencode, osgrep, beads), add ai agent shell
This commit is contained in:
parent
7e0a207778
commit
a0f0f39399
58 changed files with 7867 additions and 42 deletions
48
hosts/desktop.nix
Normal file
48
hosts/desktop.nix
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
{ lib, pkgs, ... }:
|
||||
let
|
||||
hardwareConfigPath = builtins.toString ./.
|
||||
+ "/../modules/nixos/desktops/hardware-configuration.nix";
|
||||
hardwareModule = if builtins.pathExists hardwareConfigPath then
|
||||
import hardwareConfigPath
|
||||
else
|
||||
(_: { });
|
||||
in {
|
||||
# Unified desktop configuration for gaming and development
|
||||
# Includes both KDE Plasma and Hyprland - switch at login screen
|
||||
|
||||
# Import hardware and desktop configurations
|
||||
imports = [
|
||||
# Hardware
|
||||
hardwareModule
|
||||
|
||||
# Audio & Graphics
|
||||
../modules/nixos/audio.nix
|
||||
../modules/nixos/graphics.nix
|
||||
|
||||
# Desktop Environments
|
||||
../modules/nixos/desktops/plasma.nix # KDE Plasma (for gaming)
|
||||
../modules/nixos/desktops/hyprland # Hyprland (for development)
|
||||
|
||||
# Desktop Apps & Theme
|
||||
../modules/nixos/desktops/apps/browsers.nix
|
||||
../modules/nixos/desktops/apps/terminals.nix
|
||||
../modules/nixos/desktops/themes/catppuccin.nix # Or use themes/default.nix for Adwaita
|
||||
|
||||
# Gaming & Features
|
||||
../modules/nixos/desktops/gaming.nix
|
||||
../modules/nixos/bluetooth.nix
|
||||
];
|
||||
|
||||
# Boot configuration with CachyOS LTS kernel
|
||||
boot = {
|
||||
loader.systemd-boot.enable = true;
|
||||
loader.efi.canTouchEfiVariables = true;
|
||||
kernelPackages = pkgs.linuxPackages_cachyos-lts;
|
||||
};
|
||||
|
||||
# Hostname
|
||||
networking.hostName = "desktop";
|
||||
|
||||
# This value determines the NixOS release compatibility
|
||||
system.stateVersion = "24.05";
|
||||
}
|
||||
51
hosts/dev-vm.nix
Normal file
51
hosts/dev-vm.nix
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
{ lib, pkgs, ... }: {
|
||||
networking.hostName = "dev-vm";
|
||||
# Set the baseline NixOS release used for stateful data; bump on rebuilds.
|
||||
system.stateVersion = lib.mkDefault "24.05";
|
||||
|
||||
# Boot loader configuration for VM
|
||||
boot.loader.grub.enable = lib.mkDefault true;
|
||||
boot.loader.grub.device = lib.mkDefault "/dev/vda";
|
||||
|
||||
# Root filesystem configuration for VM
|
||||
fileSystems."/" = lib.mkDefault {
|
||||
device = "/dev/vda1";
|
||||
fsType = "ext4";
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
# Core utilities
|
||||
coreutils
|
||||
ast-grep
|
||||
ripgrep
|
||||
bat
|
||||
tree
|
||||
zip
|
||||
unzip
|
||||
jq
|
||||
psmisc # provides killall and friends
|
||||
gh
|
||||
tree-sitter
|
||||
|
||||
# System monitoring & debugging tools
|
||||
htop # Process viewer
|
||||
iotop # I/O monitoring
|
||||
lsof # List open files
|
||||
strace # System call tracing
|
||||
ltrace # Library call tracing
|
||||
gdb # GNU debugger
|
||||
tcpdump # Network packet analyzer
|
||||
ncdu # Disk usage analyzer
|
||||
];
|
||||
|
||||
services.qemuGuest.enable = true;
|
||||
|
||||
services.openssh.openFirewall = false;
|
||||
|
||||
networking.firewall = {
|
||||
allowedTCPPorts = [ ];
|
||||
interfaces."tailscale0".allowedTCPPorts = [ 22 ];
|
||||
};
|
||||
|
||||
imports = [ ../modules/nixos/virtualization.nix ];
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue