about summary refs log tree commit diff stats
path: root/home-manager/lf
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--home-manager/lf/default.nix88
1 files changed, 45 insertions, 43 deletions
diff --git a/home-manager/lf/default.nix b/home-manager/lf/default.nix
index 364d839e..e27b040c 100644
--- a/home-manager/lf/default.nix
+++ b/home-manager/lf/default.nix
@@ -12,45 +12,39 @@
   wait = file:
     "!{{" + builtins.readFile "${file}" + "}}"; # adds a prompt after the command has run
 in {
-  xdg.configFile."lf/icons" = {
-    target = "lf/icons";
-    source = "./icons";
-  };
-  xdg.configFile."lf/colors" = {
-    target = "lf/colors";
-    source = "./colors";
-  };
+  xdg.configFile."lf/icons".source = ./icons;
+  xdg.configFile."lf/colors".source = ./colors;
 
   programs.lf = {
     enable = true;
 
     commands = {
-      help = shell "./cmds/help.sh";
-      open = shell "./cmds/open.sh";
-      mk_dir = pipe "./cmds/mk_dir.sh";
-      mk_scr = shell "./cmds/mk_scr.sh";
-      mk_file = shell "./cmds/mk_file.sh";
-      chmod = pipe "./cmds/chmod.sh";
-      mk_ln = shell "./cmds/mk_ln.sh"; # TODO could be pipe, right?
-      sudo_mk_file = shell "./cmds/sudo_mk_file.sh";
-      set_wall_paper = pipe "./cmds/set_wall_paper.sh";
-      fzf_jump = shell "./cmds/fzf_jump.sh";
-      broot_jump = shell "./cmds/broot_jump.sh";
-      open_config = shell "./cmds/open_config.sh";
-
-      dragon = pipe "./cmds/dragon.sh";
-      dragon_stay = pipe "./cmds/dragon_stay.sh";
-      dragon_individual = pipe "./cmds/dragon_individual.sh";
-      dl_file = pipe "./cmds/dl_file.sh";
-
-      unarchive = pipe "./cmds/unarchive.sh";
-      archive = pipe "./cmds/archive.sh";
-
-      trash = pipe "./cmds/trash.sh";
-      clear_trash = pipe "./cmds/clear_trash.sh";
-      restore_trash = shell "./cmds/restore_trash.sh";
-
-      stripspace = pipe "./cmds/stripspace.sh";
+      help = shell ./cmds/help.sh;
+      open = shell ./cmds/open.sh;
+      mk_dir = pipe ./cmds/mk_dir.sh;
+      mk_scr = shell ./cmds/mk_scr.sh;
+      mk_file = shell ./cmds/mk_file.sh;
+      chmod = pipe ./cmds/chmod.sh;
+      mk_ln = shell ./cmds/mk_ln.sh; # TODO could be pipe, right?
+      sudo_mk_file = shell ./cmds/sudo_mk_file.sh;
+      set_wall_paper = pipe ./cmds/set_wall_paper.sh;
+      fzf_jump = shell ./cmds/fzf_jump.sh;
+      broot_jump = shell ./cmds/broot_jump.sh;
+      open_config = shell ./cmds/open_config.sh;
+
+      dragon = pipe ./cmds/dragon.sh;
+      dragon_stay = pipe ./cmds/dragon_stay.sh;
+      dragon_individual = pipe ./cmds/dragon_individual.sh;
+      dl_file = pipe ./cmds/dl_file.sh;
+
+      unarchive = pipe ./cmds/unarchive.sh;
+      archive = pipe ./cmds/archive.sh;
+
+      trash = pipe ./cmds/trash.sh;
+      clear_trash = pipe ./cmds/clear_trash.sh;
+      restore_trash = shell ./cmds/restore_trash.sh;
+
+      stripspace = pipe ./cmds/stripspace.sh;
     };
     keybindings = {
       # Remove some defaults
@@ -172,27 +166,35 @@ in {
 
       gt = "cd /tmp";
     };
-    previewer = {
-      keybinding = "i";
-      source = "ctpv";
-    };
+# TODO add ctpv, if it gets merged
+#   previewer = {
+#      keybinding = "i";
+#      source = pkgs.ctpv;
+#    };
     settings = {
-      cleaner = "ctpvclear";
-      autoquit = true; # quit the server, if no clients are left
+      # TODO this needs to be added to nixos:
+      #autoquit = true; # quit the server, if no clients are left
+      #dirpreviews = true; # preview for directories
+
       dircounts = true; # count things in directories TODO this has performance impact
-      dirpreviews = true; # preview for directories
       drawbox = true;
       errorfmt = "\\033[1;91m==> ERROR:\\033[0m\\033[1;93m%s\\033[0m";
       hidden = true; # show hidden files
       icons = true;
       ifs =  "\n"; # internal field separator for shell commands
-      info = ["size"]; # show the size of a directory
+      info = "size"; # show the size of a directory
       shell = "sh";
-      shellopts = ["-e" "-u"]; # e: exit on error; u: error for unset variables
+      shellopts = "-e -u"; # e: exit on error; u: error for unset variables
     };
+    # TODO remove auto quit, if it has been added
+    # TODO add ctpv, if it gets merged
     extraConfig = ''
       &ctpv -s $id
       &ctpvquit $id
+      set cleaner = {pkgs.ctpv}
+
+      set autoquit = true
+      set dirpreviews = true
     '';
   };
 }