chore: fix unnecessary and not available pkgs, cleaning

This commit is contained in:
Rasyidan Akbar F. 2025-10-24 16:52:06 +07:00
commit 2585a86dc9
25 changed files with 703 additions and 462 deletions

View file

@ -1,67 +1,44 @@
{ lib, pkgs, ... }: {
{ lib, pkgs, ... }:
let
hardwareConfigPath = builtins.toString ./.
+ "/../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
# Desktop Environments
../desktops/plasma.nix # KDE Plasma (for gaming)
../desktops/hyprland # Hyprland (for development)
# Desktop Apps & Theme
../desktops/apps/browsers.nix
../desktops/apps/terminals.nix
../desktops/themes/catppuccin.nix # Or use themes/default.nix for Adwaita
# Gaming & Features
../desktops/gaming.nix
../bluetooth.nix
];
# Boot configuration with CachyOS LTS kernel
boot = {
loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true;
kernelPackages = pkgs.linuxPackages_cachyos-lts;
# Hardware-specific settings (adjust for your hardware)
# initrd.availableKernelModules = [ "nvme" "xhci_pci" "ahci" "usb_storage" "sd_mod" ];
};
# Hostname
networking.hostName = "desktop";
# Root filesystem configuration (REQUIRED - adjust for your hardware)
# To generate proper config, run: nixos-generate-config --show-hardware-config
fileSystems."/" = lib.mkDefault {
device = "/dev/disk/by-label/nixos";
fsType = "ext4";
};
fileSystems."/boot" = lib.mkDefault {
device = "/dev/disk/by-label/boot";
fsType = "vfat";
};
# Swap configuration (optional, adjust as needed)
# swapDevices = [ { device = "/dev/disk/by-label/swap"; } ];
# Desktop environments - both available at login screen
imports = [
../desktops/plasma.nix # For gaming sessions
../desktops/hyprland.nix # For development sessions
# ../desktops/niri.nix # Available for future use
../bluetooth.nix
../desktop/gaming.nix # Gaming configuration (Steam, Proton, Vulkan, etc.)
];
# GPU drivers (uncomment and adjust for your hardware)
# For NVIDIA:
# services.xserver.videoDrivers = [ "nvidia" ];
# hardware.nvidia = {
# modesetting.enable = true;
# powerManagement.enable = false;
# open = false; # Use proprietary driver
# package = config.boot.kernelPackages.nvidiaPackages.stable;
# };
#
# For AMD:
# services.xserver.videoDrivers = [ "amdgpu" ];
#
# For Intel:
# services.xserver.videoDrivers = [ "modesetting" ];
# Additional system packages
environment.systemPackages = with pkgs;
[
# Add system-wide tools here if needed
# Gaming packages are configured in ../desktop/gaming.nix
# Development tools are better sourced via `nix develop` shells
];
# This value determines the NixOS release compatibility
system.stateVersion = "24.05";
}