122 lines
3.3 KiB
Nix
122 lines
3.3 KiB
Nix
{
|
||
config,
|
||
lib,
|
||
pkgs,
|
||
...
|
||
}:
|
||
|
||
let
|
||
# Do not change this value! This tracks when NixOS was installed on your system.
|
||
stateVersion = "24.11";
|
||
|
||
# Set the username for the initial user.
|
||
username = "axol";
|
||
in
|
||
{
|
||
imports = [ ./hardware-configuration.nix ];
|
||
|
||
system.stateVersion = stateVersion;
|
||
|
||
###*** Configure your system below this line. ***###
|
||
# Set your time zone.
|
||
# To see all available timezones, run `timedatectl list-timezones`.
|
||
time.timeZone = "Europe/Amsterdam";
|
||
|
||
# Define your user account(s). Don't forget to set a password with ‘passwd’.
|
||
users.users.${username} = {
|
||
isNormalUser = true;
|
||
extraGroups = [ "wheel" ];
|
||
|
||
# Enter any additional packages specific to this user here.
|
||
packages = with pkgs; [ ];
|
||
};
|
||
|
||
# Configure home-manager for your user.
|
||
# For configuration options, see https://nix-community.github.io/home-manager/#using-home-manager
|
||
home-manager.users.${username} = {
|
||
# The state version is required and should stay at the version you originally installed.
|
||
home.stateVersion = stateVersion;
|
||
|
||
programs = {
|
||
# Let home Manager install and manage itself.
|
||
home-manager.enable = true;
|
||
};
|
||
};
|
||
|
||
# Configure the system.
|
||
aux.system = {
|
||
# Enable to allow unfree (e.g. closed source) packages.
|
||
# Some settings may override this (e.g. enabling Nvidia GPU support).
|
||
# https://nixos.org/manual/nixpkgs/stable/#sec-allow-unfree
|
||
allowUnfree = false;
|
||
|
||
# Enable Secure Boot support.
|
||
# IMPORTANT: Read the README before enabling this option!
|
||
bootloader.secureboot.enable = false;
|
||
|
||
# Change the default text editor. Options are "emacs", "nano", or "vim".
|
||
editor = "nano";
|
||
|
||
# Additional system packages to install.
|
||
packages = [ ];
|
||
|
||
# Change how long old generations are kept for.
|
||
retentionPeriod = "30d";
|
||
|
||
# Enable GPU support.
|
||
gpu = {
|
||
# Enable AMD GPU support.
|
||
amd.enable = false;
|
||
|
||
# Enable Intel GPU support.
|
||
intel.enable = false;
|
||
|
||
nvidia = {
|
||
# Enable Nvidia GPU support.
|
||
enable = false;
|
||
|
||
hybrid = {
|
||
# Enables support for hybrid GPUs (e.g. for laptops and systems with integrated GPUs).
|
||
enable = false;
|
||
# Define the bus IDs for your GPUs.
|
||
# For more info on where to find bus IDs, see https://nixos.wiki/wiki/Nvidia#Configuring_Optimus_PRIME:_Bus_ID_Values_.28Mandatory.29
|
||
busIDs = {
|
||
nvidia = "";
|
||
intel = "";
|
||
amd = "";
|
||
};
|
||
|
||
# Enable sync mode for faster performance at the cost of higher battery usage.
|
||
# If sync is disabled, you'll need to run GPU-accelerated applications using 'nvidia-offload <command>'.
|
||
sync = false;
|
||
};
|
||
};
|
||
};
|
||
|
||
ui.desktops = {
|
||
# Enable the Budgie desktop environment.
|
||
# https://buddiesofbudgie.org/
|
||
budgie.enable = false;
|
||
|
||
# Enable the Hyperland desktop environment.
|
||
# https://hyprland.org/
|
||
hyprland.enable = false;
|
||
|
||
# Enable the Gnome desktop environment.
|
||
# https://www.gnome.org/
|
||
gnome.enable = false;
|
||
|
||
# Enable the KDE desktop environment.
|
||
# https://kde.org/
|
||
kde.enable = false;
|
||
|
||
# Enable the XFCE desktop environment.
|
||
# https://xfce.org/
|
||
xfce.enable = false;
|
||
};
|
||
};
|
||
|
||
# Enable printing via CUPS
|
||
services.printing.enable = false;
|
||
}
|