diff options
Diffstat (limited to 'modules/file-management/lf/default.nix')
| -rw-r--r-- | modules/file-management/lf/default.nix | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/modules/file-management/lf/default.nix b/modules/file-management/lf/default.nix new file mode 100644 index 0000000..47a950f --- /dev/null +++ b/modules/file-management/lf/default.nix @@ -0,0 +1,56 @@ +{ + pkgs, + lib, + config, + ... +}: + +# lf - terminal file manager +{ + config = lib.mkIf config.programs.lf.enable { + xdg.mimeApps.defaultApplications = { + "inode/directory" = "lf.desktop"; + }; + + home.packages = with pkgs; [ + busybox + ]; + + programs.lf = { + package = pkgs.lf.overrideAttrs (old: { + dontWrapQtApps = true; + dontPatchShebangs = true; + }); + + settings = { + number = true; + icons = true; + drawbox = true; + hidden = true; + preview = true; + + shell = "sh"; + ifs = "\n"; + scrolloff = "4"; + period = "1"; + incsearch = true; + smartcase = true; + info = "size"; + sortby = "natural"; + dirfirst = true; + + cleaner = lib.getExe config.scripts.file-preview-clean.package; + }; + + previewer = { + source = lib.getExe config.scripts.file-preview.package; + }; + + extraConfig = '' + ${builtins.readFile ./lfrc} + ''; + }; + + home.file.".config/lf/icons".source = ./icons; + }; +} |
