aboutsummaryrefslogtreecommitdiffstats
path: root/modules/tools/nnn/default.nix
blob: 6dcc3078a0658dc58c46463df7648ede473d6f85 (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
{
  config,
  pkgs,
  lib,
  ...
}:

# nnn - Terminal file manager (n³), a lightweight file browser
{
  options.tools.nnn = {
    enable = lib.mkEnableOption "Enables nnn.";
  };

  config = lib.mkIf config.tools.nnn.enable {
    home.sessionVariables = {
      # Start nnn in detail mode + show hidden items by default
      NNN_OPTS = "dH";
      NNN_FIFO = "/tmp/nnn.fifo";
    };

    programs.nnn = {
      enable = true;
      package = pkgs.nnn.override { withNerdIcons = true; };
      plugins = {
        src = "${config.programs.nnn.package}/share/plugins";
        mappings = {
          p = "preview-tui";
        };
      };
      extraPackages = with pkgs; [
        bat
        ffmpeg
        ffmpegthumbnailer
        ueberzugpp
      ];
    };
  };
}