dot

vizie's NixOS desktop: Hyprland, CachyOS kernel and gaming tweaks

67 lines2091 bytesNix
1# Desktop apps and what they need from the system.
2{ pkgs, ... }:
3{
4 programs.firefox.enable = true;
5
6 environment.systemPackages = with pkgs; [
7 claude-desktop
8 signal-desktop-themed
9 discord
10 bitwarden-desktop
11 opendeck
12 kdePackages.dolphin
13 kdePackages.ark
14 kdePackages.kio-extras
15 kdePackages.ffmpegthumbs
16 cosmic-files
17 mpv
18 vlc
19 pavucontrol
20 pulsemixer
21 playerctl
22 nwg-look
23 qalculate-gtk
24 alacritty
25 ];
26
27 # --- Claude Desktop's Cowork ----------------------------------------------------
28
29 # Cowork runs its tasks in a QEMU/KVM virtual machine. The app looks for the
30 # UEFI firmware at the path Debian uses, so it is linked there; QEMU, socat
31 # and virtiofsd come with the package (pkgs/claude-desktop).
32 boot.kernelModules = [ "vhost_vsock" ];
33 systemd.tmpfiles.rules = [
34 "L+ /usr/share/OVMF/OVMF_CODE_4M.fd - - - - ${pkgs.OVMF.fd}/FV/OVMF_CODE.fd"
35 ];
36
37 # The Code tab runs a claude binary the app downloads itself (into
38 # ~/.config/Claude/claude-code), built for generic Linux: it wants the loader
39 # at /lib64/ld-linux-x86-64.so.2, which nix-ld provides.
40 programs.nix-ld.enable = true;
41
42 # --- OpenDeck -------------------------------------------------------------------
43
44 # Lets your user open the Stream Deck (40-streamdeck.rules on CachyOS).
45 services.udev.packages = [ pkgs.opendeck ];
46
47 # --- Flatpak --------------------------------------------------------------------
48
49 # Flatpak with Flathub, for apps that are only published there. Nothing is
50 # installed from it by default.
51 services.flatpak.enable = true;
52 systemd.services.flathub-remote = {
53 description = "Add the Flathub Flatpak remote";
54 wantedBy = [ "multi-user.target" ];
55 wants = [ "network-online.target" ];
56 after = [ "network-online.target" ];
57 path = [ pkgs.flatpak ];
58 serviceConfig = {
59 Type = "oneshot";
60 Restart = "on-failure";
61 RestartSec = "1min";
62 };
63 script = ''
64 flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
65 '';
66 };
67}