nixdots/home/programs/terminal/file-managers/xplr/default.nix
2024-04-05 01:34:49 +02:00

53 lines
1.1 KiB
Nix

{
pkgs,
lib,
...
}: {
home.packages = with pkgs; [
xplr
];
xdg.configFile."xplr/init.lua".text = let
# get plugin derivations from plugins.nix so that this file remains clean
inherit (import ./plugins.nix pkgs) wl-clipboard-plugin nuke-plugin;
in ''
version = '${pkgs.xplr.version}'
package.path =
"${wl-clipboard-plugin}/init.lua;" ..
"${nuke-plugin}/init.lua;" ..
package.path
require("wl-clipboard").setup{
copy_command = "wl-copy -t text/uri-list",
paste_command = "wl-paste",
keep_selection = true,
}
require("nuke").setup{
pager = "less -R",
open = {
run_executables = true, -- default: false
custom = {
{extension = "jpg", command = "imv {}"},
{extension = "pdf", command = "zathura {}"},
{mime_regex = "^video/.*", command = "mpv {}"},
{mime_regex = ".*", command = "xdg-open {}"}
}
},
view = {
show_line_numbers = true, -- default: false
},
smart_view = {
custom = {
{extension = "so", command = "ldd -r {} | less"},
},
}
}
'';
}