32 lines
826 B
Nix
32 lines
826 B
Nix
{ config, pkgs, ... }:
|
|
|
|
let
|
|
pv = pkgs.callPackage ./pv.nix { inherit config pkgs; };
|
|
lf-wrapper = pkgs.callPackage ./lf-wrapper.nix { inherit config pkgs; };
|
|
cleaner = pkgs.callPackage ./cleaner.nix { inherit config pkgs; };
|
|
|
|
in {
|
|
home.packages = [ lf-wrapper ];
|
|
programs.lf = {
|
|
enable = true;
|
|
previewer.source = pv;
|
|
settings.icons = true;
|
|
commands = {
|
|
get-mime-type = ''%xdg-mime query filetype "$f"'';
|
|
open = ''
|
|
''${{
|
|
test -L $f && f=$(readlink -f $f)
|
|
case $(file --mime-type $f -b) in
|
|
text/*) vi $fx;;
|
|
application/json) vi $fx;;
|
|
*) for f in $fx; do xdg-open $f > /dev/null 2> /dev/null & done;;
|
|
esac
|
|
}}
|
|
'';
|
|
};
|
|
extraConfig = ''
|
|
set cleaner ${cleaner}
|
|
'';
|
|
};
|
|
}
|