yaziPlugins: support finalAttrs pattern; yazi{Plugins}: add meta.changelog (#520106)

This commit is contained in:
Austin Horstman
2026-05-14 22:56:23 +00:00
committed by GitHub
6 changed files with 30 additions and 23 deletions
@@ -62,6 +62,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
meta = {
description = "Blazing fast terminal file manager written in Rust, based on async I/O";
homepage = "https://github.com/sxyazi/yazi";
changelog = "https://github.com/sxyazi/yazi/blob/${finalAttrs.passthru.srcs.code_src.rev}/CHANGELOG.md";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [
eljamm
+1
View File
@@ -102,6 +102,7 @@ runCommand yazi-unwrapped.name
license
maintainers
mainProgram
changelog
;
};
@@ -3,7 +3,7 @@
fetchFromGitHub,
mkYaziPlugin,
}:
mkYaziPlugin {
mkYaziPlugin (finalAttrs: {
pname = "compress.yazi";
version = "0.6";
@@ -17,7 +17,8 @@ mkYaziPlugin {
meta = {
description = "Yazi plugin that compresses selected files to an archive";
homepage = "https://github.com/KKV9/compress.yazi";
changelog = "https://github.com/KKV9/compress.yazi/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ eljamm ];
};
}
})
+19 -17
View File
@@ -8,21 +8,23 @@ let
root = ./.;
updateScript = ./update.py;
mkYaziPlugin =
args@{
pname,
src,
meta ? { },
installPhase ? null,
...
}:
let
# Extract the plugin name from pname (removing .yazi suffix if present)
pluginName = lib.removeSuffix ".yazi" pname;
in
stdenvNoCC.mkDerivation (
args
// {
mkYaziPlugin = lib.extendMkDerivation {
constructDrv = stdenvNoCC.mkDerivation;
extendDrvArgs =
finalAttrs:
{
pname,
src,
meta ? { },
installPhase ? null,
...
}@args:
let
# Extract the plugin name from pname (removing .yazi suffix if present)
pluginName = lib.removeSuffix ".yazi" pname;
in
{
installPhase =
if installPhase != null then
installPhase
@@ -66,8 +68,8 @@ let
supportedFeatures = [ "commit" ];
};
};
}
);
};
};
call = name: callPackage (root + "/${name}") { inherit mkYaziPlugin; };
in
@@ -3,7 +3,7 @@
fetchFromGitHub,
mkYaziPlugin,
}:
mkYaziPlugin {
mkYaziPlugin (finalAttrs: {
pname = "sshfs.yazi";
version = "2.1.0";
@@ -17,7 +17,8 @@ mkYaziPlugin {
meta = {
description = "Minimal SSHFS integration for the Yazi terminal filemanager";
homepage = "https://github.com/uhs-robert/sshfs.yazi";
changelog = "https://github.com/uhs-robert/sshfs.yazi/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ ilosariph ];
};
}
})
@@ -3,7 +3,7 @@
fetchFromGitHub,
mkYaziPlugin,
}:
mkYaziPlugin {
mkYaziPlugin (finalAttrs: {
pname = "yatline.yazi";
version = "0.5.0";
@@ -17,7 +17,8 @@ mkYaziPlugin {
meta = {
description = "Yazi plugin for customizing both header-line and status-line";
homepage = "https://github.com/imsi32/yatline.yazi";
changelog = "https://github.com/imsi32/yatline.yazi/releases/tag/${finalAttrs.src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ khaneliman ];
};
}
})