summaryrefslogtreecommitdiff
path: root/system/desktop.nix
diff options
context:
space:
mode:
authorFreya Murphy <freya@freyacat.org>2025-06-26 13:26:37 -0400
committerFreya Murphy <freya@freyacat.org>2025-06-26 13:26:37 -0400
commitd94d620d2f393e274676a619b8a56f97f0ed7524 (patch)
tree9a71c00f90a93749a4db4abe823e87ea72bfec2a /system/desktop.nix
parentadd packages to wsl (diff)
downloaddotfiles-nix-d94d620d2f393e274676a619b8a56f97f0ed7524.tar.gz
dotfiles-nix-d94d620d2f393e274676a619b8a56f97f0ed7524.tar.bz2
dotfiles-nix-d94d620d2f393e274676a619b8a56f97f0ed7524.zip
make system config more modular
Diffstat (limited to 'system/desktop.nix')
-rw-r--r--system/desktop.nix41
1 files changed, 41 insertions, 0 deletions
diff --git a/system/desktop.nix b/system/desktop.nix
new file mode 100644
index 0000000..bc6daba
--- /dev/null
+++ b/system/desktop.nix
@@ -0,0 +1,41 @@
+{
+ lib,
+ config,
+ ...
+}: let
+ inherit (lib) mkIf;
+in {
+ config = mkIf config.desktop.enable {
+ # nix-ld
+ programs.nix-ld.enable = true;
+
+ # appimage
+ programs.appimage = {
+ enable = true;
+ binfmt = true;
+ };
+
+ # services
+ services.dbus.implementation = "broker";
+ services.libinput.enable = true;
+
+ # audio / video
+ services.pipewire = {
+ enable = true;
+ alsa.enable = true;
+ pulse.enable = true;
+ jack.enable = true;
+ };
+ hardware.graphics.enable = true;
+ users.groups.audio.members = [config.user];
+ users.groups.video.members = [config.user];
+
+ # printing
+ services.printing.enable = true;
+ services.avahi = {
+ enable = true;
+ nssmdns4 = true;
+ openFirewall = true;
+ };
+ };
+}