aboutsummaryrefslogtreecommitdiffstats
path: root/modules/scripts/default.nix
blob: fd610d046fc4286e4a64b75ee9765a5730442ff7 (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
{
  config,
  lib,
  pkgs,
  ...
}:
{
  imports = [
    ./aria2-run
    ./deep-clean
    ./file-preview
    ./file-preview-clean
    ./fzf-launcher
    ./i3-keybindings
    ./neomutt-sync
    ./screen-recording
    ./system-monitor
    ./vpn-connect
    ./vpn-disconnect
  ];

  config = {
    home.packages =
      [ ]
      ++ lib.filter (x: x != null) (lib.mapAttrsToList (_: s: s.package) config.scripts)
      ++ lib.filter (x: x != null) (
        lib.mapAttrsToList (
          name: sc:
          if sc.enable && sc.desktop.enable then
            pkgs.makeDesktopItem {
              name = name;
              desktopName = sc.desktop.displayName;
              exec = "${lib.getExe config.terminal.kitty.package} -e ${lib.getExe sc.package}";
              icon = "kitty";
              categories = [ "Utility" ];
              terminal = false;
              type = "Application";
            }
          else
            null
        ) config.scripts
      );
  };
}