old
1{
2 den.aspects.develop.yazi = {
3 homeManager = {pkgs, ...}: let
4 auto-layout = pkgs.yaziPlugins.mkYaziPlugin {
5 pname = "auto-layout.yazi";
6 version = "unstable-25-07-30";
7 src = pkgs.fetchFromGitHub {
8 owner = "luccahuguet";
9 repo = "auto-layout.yazi";
10 rev = "e24bee9f6dd15ff80eae1b3dc1a6b06ee7e66121";
11 hash = "sha256-4vRIGU/ArXhW9ervhyNhpfDN7UF4pqVYnxi6FExlgGk=";
12 };
13 meta = {
14 description = "Automatically change the column layout in yazi based on available window width";
15 homepage = "https://github.com/luccahuguet/auto-layout.yazi";
16 license = pkgs.lib.licenses.mit;
17 };
18 };
19 in {
20 programs.yazi = {
21 enable = true;
22 enableBashIntegration = true;
23 shellWrapperName = "yy";
24 plugins = {
25 git = pkgs.yaziPlugins.git;
26 auto-layout = auto-layout;
27 };
28 initLua = ''
29 require("git"):setup()
30 require("auto-layout").setup()
31 '';
32 settings = {
33 mgr = {
34 show_hidden = true;
35 sort_dir_first = true;
36 };
37 plugin.prepend_fetchers = [
38 {
39 url = "*";
40 run = "git";
41 group = "git";
42 }
43 {
44 url = "*/";
45 run = "git";
46 group = "git";
47 }
48 ];
49 };
50 };
51 };
52 };
53
54 den.aspects.develop.yazi.themes = {
55 catppuccin = {
56 homeManager = {pkgs, ...}: let
57 catppuccin-yazi = pkgs.fetchurl {
58 url = "https://github.com/catppuccin/yazi/raw/baaf5d1c9427b836fbefd126aa855f9eab7a9d0d/themes/mocha/catppuccin-mocha-mauve.toml";
59 hash = "sha256-MaVO1ZSjxqULH00NoY9J6hEOw9QQA2vV6saN17WF9yE=";
60 };
61 catppuccin-syntax = pkgs.fetchurl {
62 name = "Catppuccin-Mocha.tmTheme";
63 url = "https://github.com/catppuccin/bat/raw/6810349b28055dce54076712fc05fc68da4b8ec0/themes/Catppuccin%20Mocha.tmTheme";
64 hash = "sha256-OVVm8IzrMBuTa5HAd2kO+U9662UbEhVT8gHJnCvUqnc=";
65 };
66 in {
67 xdg.configFile = {
68 "yazi/theme.toml".source = catppuccin-yazi;
69 "yazi/Catppuccin-mocha.tmTheme".source = catppuccin-syntax;
70 };
71 };
72 };
73 };
74}