flake/groups/desktops/system.nix

81 lines
1.9 KiB
Nix
Raw Normal View History

2026-03-25 22:55:15 -07:00
{...}: {
hardware = {
graphics = {
enable = true;
enable32Bit = true;
};
bluetooth = {
enable = true;
powerOnBoot = true;
};
};
virtualisation.docker.enable = true;
services = {
# systemd-resolved provides network name resolution
# to local processes via a D-Bus interface.
resolved = {
enable = true;
dnssec = "true";
domains = ["~."];
# Use CloudFlare's WARP+ 1.1.1.1 DNS service
fallbackDns = [
"1.1.1.1#one.one.one.one"
"1.0.0.1#one.one.one.one"
];
dnsovertls = "true";
};
# Multimedia Framework
# With backwards compatability for alsa/pulseaudio/jack
pipewire = {
enable = true;
audio.enable = true;
wireplumber.enable = true;
alsa.enable = true;
alsa.support32Bit = true;
# pulse.enable = true;
# jack.enable = true;
# disable X11 bell module, which plays a sound on urgency hint
extraConfig = {
pipewire."99-silent-bell.conf" = {
"context.properties" = {
"module.x11.bell" = false;
};
};
};
};
};
# allows pipewire to use the realtime scheduler for increased performance
security.rtkit.enable = true;
# ---- ENVIRONMENT VARIABLES ----
environment = {
# always install "dev" derivation outputs
extraOutputsToInstall = ["dev"];
};
documentation = {
enable = true;
doc.enable = false; # install /share/doc packages
man = {
enable = true; # install manpages
# https://discourse.nixos.org/t/slow-build-at-building-man-cache/52365/4
generateCaches = false;
};
info.enable = false; # install GNU info
dev.enable = true; # install docs intended for developers
nixos = {
enable = true; # install NixOS documentation (ie man -k nix, & nixos-help)
options.splitBuild = true;
includeAllModules = false;
};
};
}