quintessence/modules/services.nix
2026-02-12 16:04:51 -08:00

78 lines
2.1 KiB
Nix

## Controls the bulk of system services other than bootloader and networking
{ inputs, config, pkgs, variables, ... }:
{
# Enables graphics
hardware.graphics.enable = true;
services = {
# Enable KDE Plasma and its display manager, SDDM
desktopManager.plasma6.enable = true;
displayManager.sddm.enable = true;
displayManager.sddm.wayland.enable = true; # enables specifically wayland support
# Automatically mount removable media to /media
udisks2.enable = true;
udisks2.mountOnMedia = true;
# Schedulers
cron.enable = true;
atd.enable = true;
# Power stuff
upower.enable = true;
logind.settings.Login = {
HandleLidSwitch = "suspend-then-hibernate";
HandlePowerKey = "poweroff";
};
# VFS stuff
envfs.enable = true;
gvfs.enable = true;
# Audio
pipewire = {
enable = true;
audio.enable = true;
alsa.enable = true;
alsa.support32Bit = true;
pulse.enable = true;
jack.enable = true;
wireplumber.enable = true;
};
# Location services
locate = {
enable = false;
package = pkgs.plocate;
};
# Temp management
thermald.enable = true;
# X11--I prefer wayland, but just to be safe
xserver = {
enable = true;
xkb.layout = "us";
xkb.variant = "";
};
};
# Allows sudo stuff with fuse for mounting shit
programs.fuse.userAllowOther = true;
# Power management
powerManagement.enable = true;
# if you ever need appimages this is magic code that does magic
# I don't understand it either, don't ask me how it works
boot.binfmt.registrations.appimage = {
wrapInterpreterInShell = false;
interpreter = "${pkgs.appimage-run}/bin/appimage-run";
recognitionType = "magic";
offset = 0;
mask = ''\xff\xff\xff\xff\x00\x00\x00\x00\xff\xff\xff'';
magicOrExtension = ''\x7fELF....AI\x02'';
};
# Security & encryption
security.polkit.enable = true;
security.rtkit.enable = true;
programs.gnupg.agent = {
enable = true;
enableSSHSupport = true;
};
# Themeing
# qt = {
# enable = true;
# platformTheme = "gtk2";
# style = "gtk2";
#};
}