# Edit this configuration file to define what should be installed on # your system. Help is available in the configuration.nix(5) man page # and in the NixOS manual (accessible by running ‘nixos-help’). { config, lib, pkgs, ... }: { options.sysconfig.homebox.enable = lib.options.mkOption { type = lib.types.bool; default = false; }; config = lib.mkIf config.sysconfig.homebox.enable { nixpkgs.config.allowUnfree = true; assertions = [ { assertion = !config.sysconfig.laptop.enable; message = "sysconfig homebox conflicts with laptop"; } ]; sysconfig.generic.enable = lib.mkForce false; boot = { loader = { systemd-boot.enable = true; efi.canTouchEfiVariables = true; }; kernelParams = [ "initcall_blacklist=simpledrm_platform_driver_init" ]; }; hardware = { opengl = { enable = true; driSupport = true; extraPackages = with pkgs; [ nvidia-vaapi-driver ]; }; nvidia = { modesetting.enable = true; open = true; nvidiaSettings = true; package = config.boot.kernelPackages.nvidiaPackages.beta; }; bluetooth.enable = true; pulseaudio.enable = false; }; environment.shells = with pkgs; [ zsh ]; programs.zsh.enable = true; users.defaultUserShell = pkgs.zsh; sysconfig.opts = { openssh.enable = true; pipewire.enable = true; hyprland.enable = true; git.enable = true; ags.enable = true; nh.enable = true; steam.enable = false; }; services = { xserver = { enable = true; videoDrivers = [ "nvidia" ]; }; displayManager.enable = true; }; environment = { sessionVariables = { WLR_BACKENDS = "headless"; WLR_LIBINPUT_NO_DEVICES = "1"; }; }; system.stateVersion = "24.05"; }; }