feat: add desktop (ooksdesk) system configuration file
This commit is contained in:
parent
b4030c16b9
commit
036fbcfcf2
1 changed files with 14 additions and 80 deletions
|
|
@ -1,88 +1,22 @@
|
||||||
|
{ config, inputs, pkgs, ... }:
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
{ inputs, pkgs, ... }:
|
|
||||||
|
|
||||||
|
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
inputs.hardware.nixosModule.common-cpu-intel
|
./hardware-configuration.nix
|
||||||
inputs.hardware.nixosModule.common-pc-ssd
|
../../profiles
|
||||||
|
|
||||||
./hardware-configuration.nix # Hardware configuration generated by nix-generate-config
|
|
||||||
|
|
||||||
../common/user/ooks # Add and configure the user "ooks"
|
|
||||||
../common/base # Default system programs
|
|
||||||
../common/features/vm.nix # Adds VM support
|
|
||||||
../common/features/greetd.nix # Adds login-manager greetd
|
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
activeProfiles = ["base"];
|
||||||
|
|
||||||
networking = {
|
systemModules.user = {
|
||||||
hostName = "ooksdesk"; # Define hostname
|
ooks.enable = true;
|
||||||
networkmanager.enable = true; # Networking tool
|
shell.fish.enable = true;
|
||||||
};
|
};
|
||||||
|
|
||||||
boot = {
|
networking = {
|
||||||
kernelPackages = pkgs.linuxKernel.packages.linux_zen; # Kernel version
|
hostName = "ooksdesk";
|
||||||
supportedFilesystems = ["ntfs"]; # Add ntfs support
|
};
|
||||||
};
|
boot = {
|
||||||
|
kernelPackages = pkgs.linuxKernel.packages.linux_zen;
|
||||||
programs = {
|
|
||||||
dconf.enable = true; # Low level configuration system
|
|
||||||
kdeconnect.enable = true; # Adds android connectivity over local network
|
|
||||||
gnupg.agent = { # Daemon to request and cache passwords for the keychain
|
|
||||||
enable = true;
|
|
||||||
enableSSHSupport = true;
|
|
||||||
};
|
};
|
||||||
};
|
|
||||||
|
|
||||||
xdg.portal = { # Allows cross-desktop communication
|
|
||||||
enable = true;
|
|
||||||
wlr.enable = true; # Adds Wayland support
|
|
||||||
};
|
|
||||||
|
|
||||||
hardware = {
|
|
||||||
opengl = { # Used for rendering 2D and 3D graphics
|
|
||||||
enable = true;
|
|
||||||
driSupport = true;
|
|
||||||
driSupport32Bit = true;
|
|
||||||
extraPackages = with pkgs; [nvidia-vaapi-driver]; # Adds nvidia VAAPI driver for hardware-accelerated video decoding
|
|
||||||
};
|
|
||||||
nvidia = {
|
|
||||||
open = true; # Use Nvidia's open source kernel module
|
|
||||||
modesetting.enable = true; # Enables kernel modesettings
|
|
||||||
nvidiaSettings = true; # Nvidia's settings GUI
|
|
||||||
};
|
|
||||||
};
|
|
||||||
services = {
|
|
||||||
dbus = { # Allows communication between applications
|
|
||||||
enable = true;
|
|
||||||
packages = [ pkgs.gcr ]; # GNOME cryptographic services, used for managing cryptographic keys
|
|
||||||
};
|
|
||||||
xserver.videoDrivers = ["nvidia"]; # Required for Nvidia to work
|
|
||||||
udisks2 = { # Used to manage mounting of temp storage
|
|
||||||
enable = true;
|
|
||||||
mountOnMedia = true; # Auto mounts device to /media
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
environment = {
|
|
||||||
variables = { # Environment variables for nvidia
|
|
||||||
GBM_BACKEND = "nvidia-drm";
|
|
||||||
LIBVA_DRIVER_NAME = "nvidia";
|
|
||||||
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
|
|
||||||
};
|
|
||||||
systemPackages = with pkgs; [ # Vulkan packages
|
|
||||||
vulkan-loader
|
|
||||||
vulkan-validation-layers
|
|
||||||
vulkan-tools
|
|
||||||
];
|
|
||||||
};
|
|
||||||
|
|
||||||
system = {
|
|
||||||
stateVersion = "22.05";
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue