lfrc symlink

This commit is contained in:
2025-10-13 20:05:19 -05:00
parent 1d1a13d9ce
commit afb451d3cc
7 changed files with 35 additions and 102 deletions

View File

@@ -1,87 +1,21 @@
{
pkgs,
config,
lib,
inputs,
...
}:
{
}: {
# just using the normal lfrc
programs.lf = {
enable = false;
};
settings = {
mouse = true;
ignorecase = true;
};
keybindings = {
ad = "mkdir";
af = "mkfile";
ab = "mkbak";
ae = "extract";
aa = "archive";
gt = "cd ~/.local/share/Trash/files";
};
extraConfig = ''
set previewer ctpv
set cleaner ctpvclear
&ctpv -s $id
&ctpvquit $id
[ = "half-up";
] = "half-down";
<delete> = "trash";
<s-delete> = "$trash restore";
'';
commands = {
extract = ''
extract %{{
set -f
case $f in
*.tar.bz|*.tar.bz2|*.tbz|*.tbz2) tar xjvf $f;;
*.tar.gz|*.tgz) tar xzvf $f;;
*.tar.xz|*.txz) tar xJvf $f;;
*.zip) unzip $f;;
*.rar) unrar x $f;;
*.7z) 7z x $f;;
esac
}}
'';
# move files to trash
trash = ''%IFS="$(printf '\n\t')"; trash put $fx'';
# make a directory
mkdir = ''
mkdir %{{
echo "enter directory name: " ; read dir
if [ -n "$dir" ]; then
mkdir -p "$dir" && echo "'$dir' created."
else
echo "no dir name provided"
fi
}}
'';
# make a file
mkfile = ''
cmd mkfile %{{
echo "enter file name: " ; read file
if [ -n "$file" ]; then
touch "$file" && echo "'$file' created."
else
echo "no file name provided"
fi
}}
'';
# make backup
mkbak = ''
mkbak %{{
for x in $fx; do
cp -r $x $x.bak
done
}}
'';
};
# install it to userspace
home.packages = with pkgs; [lf ctpv];
# link configs
xdg.configFile."lf/lfrc" = {
source = config.lib.file.mkOutOfStoreSymlink "/home/blake/.nix/users/blake/dots/lf/lfrc";
};
xdg.configFile."ctpv/config" = {
source = config.lib.file.mkOutOfStoreSymlink "/home/blake/.nix/users/blake/dots/lf/ctpv_config";
};
}