kore / nixos / roles / desktop.nix70 lines · 1365B · raw
1{ pkgs, ... }:
2
3{
4 programs.dwl.enable = true;
5
6 environment.loginShellInit = ''
7 if [ -z "$WAYLAND_DISPLAY" ] && [ "$(tty)" = /dev/tty1 ]; then
8 exec /etc/xdg/dwl-session
9 fi
10 '';
11
12 xdg = {
13 autostart.enable = true;
14 icons.enable = true;
15 mime.enable = true;
16 sounds.enable = true;
17
18 portal = {
19 enable = true;
20 extraPortals = [ pkgs.xdg-desktop-portal-wlr ];
21 configPackages = [ pkgs.xdg-desktop-portal-gtk pkgs.xdg-desktop-portal-wlr ];
22
23 wlr.enable = true;
24
25 config.common = {
26 default = [ "wlr" ];
27 };
28 };
29 };
30
31 fonts = {
32 enableDefaultPackages = false;
33
34 packages = with pkgs; [
35 noto-fonts
36 noto-fonts-cjk-sans
37 noto-fonts-cjk-serif
38 noto-fonts-color-emoji
39
40 nerd-fonts.comic-shanns-mono
41 ];
42
43 fontconfig = {
44 hinting.autohint = true;
45
46 defaultFonts = {
47 serif = [ "Noto Serif" "Noto Color Emoji" ];
48 sansSerif = [ "Noto Sans" "Noto Color Emoji" ];
49 monospace = [ "ComicShannsMono Nerd Font" "Noto Color Emoji" ];
50 emoji = [ "Noto Color Emoji" ];
51 };
52 };
53 };
54
55 services = {
56 udisks2.enable = true;
57
58 pipewire = {
59 enable = true;
60
61 alsa.enable = true;
62 alsa.support32Bit = true;
63
64 pulse.enable = true;
65 jack.enable = true;
66
67 wireplumber.enable = true;
68 };
69 };
70}