aboutsummaryrefslogtreecommitdiffstats
path: root/modules/tools/file-manager
diff options
context:
space:
mode:
authorArpit Chakladar <54011232+arpitchakladar@users.noreply.github.com>2024-09-25 19:41:02 +0530
committerArpit Chakladar <54011232+arpitchakladar@users.noreply.github.com>2024-09-25 19:41:02 +0530
commit478081af928e1557b325f4a4cbd5b67f079660d2 (patch)
treec7975b403c29acfd4de91664320e7ebbd0ac1685 /modules/tools/file-manager
parent165cde749fc899d4c86eb6de97d3b7c4373eb7b3 (diff)
downloadhome-manager-config-478081af928e1557b325f4a4cbd5b67f079660d2.tar.gz
home-manager-config-478081af928e1557b325f4a4cbd5b67f079660d2.zip
Adding nnn file manager.
Adding bspwm bindings to sxhkd only if the module is enabled.
Diffstat (limited to 'modules/tools/file-manager')
-rw-r--r--modules/tools/file-manager/default.nix10
-rw-r--r--modules/tools/file-manager/lf/default.nix10
-rw-r--r--modules/tools/file-manager/lf/scripts/previewer.sh3
-rw-r--r--modules/tools/file-manager/lsd/default.nix6
-rw-r--r--modules/tools/file-manager/nnn/default.nix15
5 files changed, 33 insertions, 11 deletions
diff --git a/modules/tools/file-manager/default.nix b/modules/tools/file-manager/default.nix
index fc5eb46..760584a 100644
--- a/modules/tools/file-manager/default.nix
+++ b/modules/tools/file-manager/default.nix
@@ -1,8 +1,16 @@
-{ ... }:
+{ lib, ... }:
{
imports = [
./lf
./lsd
+ ./nnn
];
+
+ options.tools.file-manager = {
+ default = lib.mkOption {
+ type = lib.types.str;
+ description = "Path to the default file manager program.";
+ };
+ };
}
diff --git a/modules/tools/file-manager/lf/default.nix b/modules/tools/file-manager/lf/default.nix
index 30ed421..4cfbba2 100644
--- a/modules/tools/file-manager/lf/default.nix
+++ b/modules/tools/file-manager/lf/default.nix
@@ -6,14 +6,20 @@
};
config = lib.mkIf config.tools.file-manager.lf.enable {
+ tools.file-manager.default = "${pkgs.nnn}/bin/lf";
programs.lf.enable = true;
programs.lf.settings = {
hidden = true;
};
programs.lf.previewer.source = pkgs.writeShellScript
"previewer.sh"
- (builtins.readFile ./scripts/previewer.sh);
-
+ ''
+#!/bin/sh
+unset COLORTERM
+${if config.tools.viewer.bat.enable then
+ "bat -pp --line-range=:500 --color=always '$1'"
+else "cat"}
+ '';
programs.lf.extraConfig = "set icons";
xdg.configFile."lf/icons".source = ./icons;
diff --git a/modules/tools/file-manager/lf/scripts/previewer.sh b/modules/tools/file-manager/lf/scripts/previewer.sh
deleted file mode 100644
index 407e0a0..0000000
--- a/modules/tools/file-manager/lf/scripts/previewer.sh
+++ /dev/null
@@ -1,3 +0,0 @@
-#!/bin/sh
-unset COLORTERM
-bat -pp --line-range=:500 --color=always "$1"
diff --git a/modules/tools/file-manager/lsd/default.nix b/modules/tools/file-manager/lsd/default.nix
index 5b940ab..d99413d 100644
--- a/modules/tools/file-manager/lsd/default.nix
+++ b/modules/tools/file-manager/lsd/default.nix
@@ -8,10 +8,6 @@
config = lib.mkIf config.tools.file-manager.lsd.enable {
programs.lsd.enable = true;
programs.lsd.enableAliases = true;
- shell.alias."tree" = "${pkgs.lsd}/bin/lsd -a --tree";
-
- programs.lsd.settings = {
- icons.separator = " ";
- };
+ programs.lsd.settings.icons.separator = " ";
};
}
diff --git a/modules/tools/file-manager/nnn/default.nix b/modules/tools/file-manager/nnn/default.nix
new file mode 100644
index 0000000..6244d04
--- /dev/null
+++ b/modules/tools/file-manager/nnn/default.nix
@@ -0,0 +1,15 @@
+{ config, pkgs, lib, ... }:
+
+{
+ options.tools.file-manager.nnn = {
+ enable = lib.mkEnableOption "Enables nnn.";
+ };
+
+ config = lib.mkIf config.tools.file-manager.nnn.enable {
+ tools.file-manager.default = "${pkgs.nnn}/bin/nnn -H -d";
+ programs.nnn.enable = true;
+ programs.nnn.package = pkgs.nnn.override ({ withNerdIcons = true; });
+ programs.nnn.plugins.src = "${pkgs.nnn}/share/plugins";
+ shell.alias."nnn" = "nnn -H -d";
+ };
+}