From 6f0d716cba5de4b903551491dc839efcf167501f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20Schr=C3=B6ter?= Date: Mon, 30 Mar 2026 00:34:49 +0200 Subject: [PATCH] yazi install yazi plugins --- flake.nix | 1 + home/programs/default.nix | 2 +- home/programs/eww/src/scripts/audio.sh | 0 home/programs/eww/src/scripts/battery.sh | 0 home/programs/eww/src/scripts/cpu.sh | 0 home/programs/eww/src/scripts/memory.sh | 0 home/programs/eww/src/scripts/network.sh | 0 home/programs/eww/src/scripts/powermenu.sh | 0 home/programs/eww/src/scripts/ristate.sh | 0 home/programs/eww/src/scripts/ristate_read.sh | 0 home/programs/filebrowser.nix | 64 ----- home/programs/filebrowser/default.nix | 252 ++++++++++++++++++ home/programs/filebrowser/init.lua | 25 ++ home/programs/kitty.nix | 2 +- home/programs/river/src/lock.sh | 0 home/programs/river/src/logout.sh | 0 home/programs/river/src/startEww.sh | 0 home/programs/taskwarrior/hooks/on-add.sh | 0 18 files changed, 280 insertions(+), 66 deletions(-) mode change 100755 => 100644 home/programs/eww/src/scripts/audio.sh mode change 100755 => 100644 home/programs/eww/src/scripts/battery.sh mode change 100755 => 100644 home/programs/eww/src/scripts/cpu.sh mode change 100755 => 100644 home/programs/eww/src/scripts/memory.sh mode change 100755 => 100644 home/programs/eww/src/scripts/network.sh mode change 100755 => 100644 home/programs/eww/src/scripts/powermenu.sh mode change 100755 => 100644 home/programs/eww/src/scripts/ristate.sh mode change 100755 => 100644 home/programs/eww/src/scripts/ristate_read.sh delete mode 100644 home/programs/filebrowser.nix create mode 100644 home/programs/filebrowser/default.nix create mode 100644 home/programs/filebrowser/init.lua mode change 100755 => 100644 home/programs/river/src/lock.sh mode change 100755 => 100644 home/programs/river/src/logout.sh mode change 100755 => 100644 home/programs/river/src/startEww.sh mode change 100755 => 100644 home/programs/taskwarrior/hooks/on-add.sh diff --git a/flake.nix b/flake.nix index f564f41..1445ac6 100644 --- a/flake.nix +++ b/flake.nix @@ -33,6 +33,7 @@ url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; + yazi.url = "github:sxyazi/yazi"; }; diff --git a/home/programs/default.nix b/home/programs/default.nix index 4df6b40..f6f392c 100644 --- a/home/programs/default.nix +++ b/home/programs/default.nix @@ -5,7 +5,7 @@ ./calibre.nix ./digikam.nix ./eww - ./filebrowser.nix + ./filebrowser ./git.nix ./hyprlock.nix ./imv.nix diff --git a/home/programs/eww/src/scripts/audio.sh b/home/programs/eww/src/scripts/audio.sh old mode 100755 new mode 100644 diff --git a/home/programs/eww/src/scripts/battery.sh b/home/programs/eww/src/scripts/battery.sh old mode 100755 new mode 100644 diff --git a/home/programs/eww/src/scripts/cpu.sh b/home/programs/eww/src/scripts/cpu.sh old mode 100755 new mode 100644 diff --git a/home/programs/eww/src/scripts/memory.sh b/home/programs/eww/src/scripts/memory.sh old mode 100755 new mode 100644 diff --git a/home/programs/eww/src/scripts/network.sh b/home/programs/eww/src/scripts/network.sh old mode 100755 new mode 100644 diff --git a/home/programs/eww/src/scripts/powermenu.sh b/home/programs/eww/src/scripts/powermenu.sh old mode 100755 new mode 100644 diff --git a/home/programs/eww/src/scripts/ristate.sh b/home/programs/eww/src/scripts/ristate.sh old mode 100755 new mode 100644 diff --git a/home/programs/eww/src/scripts/ristate_read.sh b/home/programs/eww/src/scripts/ristate_read.sh old mode 100755 new mode 100644 diff --git a/home/programs/filebrowser.nix b/home/programs/filebrowser.nix deleted file mode 100644 index 18ad377..0000000 --- a/home/programs/filebrowser.nix +++ /dev/null @@ -1,64 +0,0 @@ -{ inputs, pkgs, ... }: - -{ - home.packages = with pkgs; [ - kdePackages.dolphin - kdePackages.dolphin-plugins - kdePackages.baloo-widgets - kdePackages.baloo - nautilus - udisks - ]; - xdg.configFile."menus/applications.menu".source = - "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu"; - - # ── Yazi ────────────────────────────────────────────────────────────── - programs.yazi = { - enable = true; - package = inputs.yazi.packages.${pkgs.stdenv.hostPlatform.system}.default; - enableZshIntegration = true; - settings = { - yazi = { - ratio = [ - 1 - 4 - 3 - ]; - sort_by = "natural"; - sort_sensitive = true; - sort_reverse = false; - sort_dir_first = true; - linemode = "none"; - show_hidden = true; - show_symlink = true; - }; - - preview = { - image_filter = "lanczos3"; - image_quality = 90; - tab_size = 1; - max_width = 600; - max_height = 900; - cache_dir = ""; - ueberzug_scale = 1; - ueberzug_offset = [ - 0 - 0 - 0 - 0 - ]; - }; - - tasks = { - micro_workers = 5; - macro_workers = 10; - bizarre_retry = 5; - }; - }; - }; - - programs.zoxide = { - enable = true; - enableZshIntegration = true; - }; -} diff --git a/home/programs/filebrowser/default.nix b/home/programs/filebrowser/default.nix new file mode 100644 index 0000000..3b00b41 --- /dev/null +++ b/home/programs/filebrowser/default.nix @@ -0,0 +1,252 @@ +{ inputs, pkgs, ... }: + +let + exifaudio = pkgs.fetchFromGitHub { + owner = "Sonico98"; + repo = "exifaudio.yazi"; + rev = "4506f9d"; + sha256 = "sha256-RWCqWBpbmU3sh/A+LBJPXL/AY292blKb/zZXGvIA5/o="; + }; + bunny = pkgs.fetchFromGitHub { + owner = "stelcodes"; + repo = "bunny.yazi"; + rev = "71b14a3"; + sha256 = "sha256-uQO0C00yOFPWq8KEO/kEZM6tFZRc9SiXfgN7kzlwDeA="; + }; +in +{ + home.packages = with pkgs; [ + # kdePackages.dolphin + # kdePackages.dolphin-plugins + # kdePackages.baloo-widgets + # kdePackages.baloo + exiftool + nautilus + ouch + udisks + ]; + xdg.configFile."menus/applications.menu".source = + "${pkgs.kdePackages.plasma-workspace}/etc/xdg/menus/plasma-applications.menu"; + + # ── Yazi ────────────────────────────────────────────────────────────── + programs.yazi = { + enable = true; + package = inputs.yazi.packages.${pkgs.stdenv.hostPlatform.system}.default; + enableZshIntegration = true; + initLua = ./init.lua; + + settings = { + yazi = { + ratio = [ + 1 + 4 + 3 + ]; + sort_by = "natural"; + sort_sensitive = true; + sort_reverse = false; + sort_dir_first = true; + linemode = "none"; + show_hidden = true; + show_symlink = true; + }; + + preview = { + image_filter = "lanczos3"; + image_quality = 90; + tab_size = 1; + max_width = 600; + max_height = 900; + cache_dir = ""; + ueberzug_scale = 1; + ueberzug_offset = [ + 0 + 0 + 0 + 0 + ]; + }; + + tasks = { + micro_workers = 5; + macro_workers = 10; + bizarre_retry = 5; + }; + + plugin = { + prepend_previewers = [ + { + run = "exifaudio"; + mime = "audio/*"; + } + ]; + prepend_fetchers = [ + { + id = "git"; + url = "*"; + run = "git"; + } + { + id = "git"; + url = "*/"; + run = "git"; + } + ]; + }; + + opener = { + extract = [ + { + run = "ouch d -y %*"; + desc = "Extract here with ouch"; + for = "windows"; + } + { + run = "ouch d -y $@"; + desc = "Extract here with ouch"; + for = "unix"; + } + ]; + }; + }; + + keymap = { + mgr.prepend_keymap = [ + { + run = "plugin mount"; + on = [ "M" ]; + } + { + run = "plugin ouch"; + on = [ "C" ]; + } + { + run = "plugin bunny"; + on = [ + ";" + ]; + desc = "Start bunny"; + } + { + run = "plugin bunny fuzzy"; + on = [ + "'" + ]; + desc = "Start bunny fuzzy search"; + } + { + run = "plugin chmod"; + on = [ + "c" + "m" + ]; + desc = "Chmod on selected files"; + } + { + run = "plugin sudo -- paste"; + on = [ + "R" + "p" + "p" + ]; + desc = "sudo paste"; + } + { + run = "plugin sudo -- paste --force"; + on = [ + "R" + "P" + ]; + desc = "sudo paste"; + } + { + run = "plugin sudo -- rename"; + on = [ + "R" + "r" + ]; + desc = "sudo rename"; + } + { + run = "plugin sudo -- link"; + on = [ + "R" + "p" + "l" + ]; + desc = "sudo link"; + } + { + run = "plugin sudo -- link --relative"; + on = [ + "R" + "p" + "r" + ]; + desc = "sudo link relative path"; + } + { + run = "plugin sudo -- hardlink"; + on = [ + "R" + "p" + "L" + ]; + desc = "sudo hardlink"; + } + { + run = "plugin sudo -- create"; + on = [ + "R" + "a" + ]; + desc = "sudo create"; + } + { + run = "plugin sudo -- remove"; + on = [ + "R" + "d" + ]; + desc = "sudo trash"; + } + { + run = "plugin sudo -- remove --permanently"; + on = [ + "R" + "D" + ]; + desc = "sudo delete"; + } + { + run = "plugin sudo -- chmod"; + on = [ + "R" + "m" + ]; + desc = "sudo chmod"; + } + { + run = [ "plugin wl-clipboard" ]; + on = [ "