main
1{den, ...}: {
2 den.users.hpcesia = {
3 system.settings = {
4 desktop = {
5 app = {
6 browser.defaults = ["floorp.desktop"];
7 term.default = "foot";
8 };
9 flatpak = {
10 packages = [
11 "com.qq.QQ"
12 "org.mozilla.thunderbird"
13 ];
14 overrides = {
15 "org.mozilla.thunderbird".Context = {
16 sockets = [
17 "gpg-agent" # Expose GPG agent
18 "pcsc" # Expose smart cards
19 ];
20 };
21 };
22 };
23 };
24 };
25 };
26
27 den.aspects.hpcesia = {
28 includes = let
29 includeWhen = cond: aspects:
30 map (aspect: (den.lib.policy.when cond aspect)) aspects;
31 in
32 (includeWhen ({host, ...}: host.hasAspect den.aspects.desktop) (with den.aspects; [
33 desktop.app.browser.chromium
34 desktop.app.browser.floorp
35 desktop.app.imv
36 desktop.app.kdeconnect
37 desktop.app.kdenlive
38 desktop.app.kelivo
39 desktop.app.libreoffice
40 desktop.app.mpv
41 desktop.app.nocturne
42 desktop.app.obs-studio
43 desktop.app.picard
44 desktop.app.term.foot
45 desktop.flatpak
46 desktop.ime.fcitx5
47 desktop.noctalia
48 desktop.yubikey
49 desktop.wm.niri
50 ]))
51 ++ (includeWhen ({host, ...}: host.hasAspect den.aspects.desktop && host.hasAspect den.aspects.desktop.game) (with den.aspects; [
52 desktop.game.heroic
53 desktop.game.hoyo
54 desktop.game.ludusavi
55 desktop.game.mangohud
56 desktop.game.minecraft
57 desktop.game.steam
58 ]));
59 };
60}