blob: 085e44aaf80b3840be1f45294eae382bef46a7fd (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
{ lib, config, pkgs, ... }: let
mkDesktop = lib.mkOverride 920;
nixosConfig = {
_archetypes.collections = {
desktop = {
utilities.enable = mkDesktop true;
firefox.enable = mkDesktop true;
xserver = {
enable = mkDesktop true;
utilities.enable = mkDesktop true;
};
};
development = {
utilities.enable = mkDesktop true;
};
fonts.enable = mkDesktop true;
};
security = {
_doas.enable = mkDesktop true;
};
programs = {
_ddcutil.enable = mkDesktop true;
_home-manager.enable = mkDesktop true;
};
services = {
xserver = {
windowManager._awesome.enable = mkDesktop true;
};
_geoclue2.enable = mkDesktop true;
_pipewire.enable = mkDesktop true;
_printing.enable = mkDesktop true;
_ssh.enable = mkDesktop true;
tlp.enable = mkDesktop true;
# Ensure video group can change backlight
udev.extraRules = mkDesktop ''
SUBSYSTEM=="backlight", ACTION=="add", RUN+="${pkgs.coreutils}/bin/chgrp video /sys/class/backlight/%k/brightness", RUN+="${pkgs.coreutils}/bin/chmod g+w /sys/class/backlight/%k/brightness"
'';
};
};
homeConfig = {
gtk = {
enable = mkDesktop true;
_mintTheme.enable = mkDesktop true;
font.name = mkDesktop "sans-serif";
cursorTheme.name = mkDesktop "Adwaita";
};
qt._gtkPlatformTheme.enable = mkDesktop true;
fonts.fontconfig = {
enable = mkDesktop true;
defaultFonts = {
# These fonts are added above in fonts collection
sansSerif = mkDesktop [ "Inter" ];
monospace = mkDesktop [ "CommitMono" ];
};
};
programs = {
_pcmanfm.openAsRootOption.enable = mkDesktop true;
firefox._configure = mkDesktop true;
htop._configure = mkDesktop true;
zathura = {
enable = mkDesktop true;
options = {
selection-clipboard = mkDesktop "clipboard"; # Copy highlighted text
};
};
};
services = {
_redshift.enable = true;
};
home._repos = {
enable = mkDesktop true;
desktop = mkDesktop true;
};
xdg.mimeApps._defaultCategoryApplications = {
enable = true;
categoryApplications = {
audio = [ "mpv" ];
email = [ "thunderbird" ];
image = [ "sxiv" ];
pdf = [ "org.pwmt.zathura-pdf-mupdf" ];
text = [ "nvim" ];
video = [ "mpv" ];
};
};
};
in {
imports = [ (lib._mkProfileArchetype "desktop" nixosConfig homeConfig) ];
}
|