Fix mender-cli

This commit is contained in:
muon 2025-10-08 13:54:34 +00:00
parent e6be2231bc
commit 3324cb9df5
2 changed files with 18 additions and 8 deletions

View file

@ -7,7 +7,6 @@
... ...
}: let }: let
cfg = osConfig.mods; cfg = osConfig.mods;
mender-cli = lib.callPackage ./packages/mender-cli.nix {};
in { in {
imports = [inputs.impermanence.homeManagerModules.impermanence]; imports = [inputs.impermanence.homeManagerModules.impermanence];
@ -32,7 +31,6 @@ in {
rustdesk-flutter rustdesk-flutter
# tools # tools
mender-cli
docker docker
fish fish
devenv devenv
@ -42,6 +40,7 @@ in {
go go
rainfrog rainfrog
tealdeer tealdeer
(callPackage ./packages/mender-cli.nix {})
] ]
# Non-free </3 # Non-free </3
++ [google-cloud-sdk google-cloud-sql-proxy]; ++ [google-cloud-sdk google-cloud-sql-proxy];

View file

@ -5,6 +5,7 @@
fetchFromGitHub, fetchFromGitHub,
makeWrapper, makeWrapper,
installShellFiles, installShellFiles,
xz,
go, go,
}: }:
buildGoModule rec { buildGoModule rec {
@ -14,17 +15,21 @@ buildGoModule rec {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mendersoftware"; owner = "mendersoftware";
repo = "mender-cli"; repo = "mender-cli";
rev = "v${version}"; rev = version;
sha256 = "0i0lijlj82irc54l2ljgj5c4z7r0l8kywcf8c9kmjw6p670kpzrx"; sha256 = "0i0lijlj82irc54l2ljgj5c4z7r0l8kywcf8c9kmjw6p670kpzrx";
}; };
vendorHash = lib.fakeHash; vendorHash = "sha256-MqyBa+wsbuXqtM4DL/QGBUWuEYlG8BRxIXq7O1LJUyM=";
nativeBuildInputs = [ nativeBuildInputs = [
makeWrapper makeWrapper
installShellFiles installShellFiles
]; ];
buildInputs = [
xz
];
allowGoReference = true; allowGoReference = true;
postFixup = '' postFixup = ''
@ -34,8 +39,15 @@ buildGoModule rec {
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) '' postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
installShellCompletion --cmd mender-cli \ installShellCompletion --cmd mender-cli \
--bash <($out/bin/mender-cli mender-cli --generate-autocomplete) \ --bash <($out/bin/mender-cli completion bash) \
--zsh <($out/bin/mender-cli mender-cli --generate-autocomplete) \ --fish <($out/bin/mender-cli completion fish) \
--zsh <($out/bin/mender-cli completion zsh) \
# Ironically, mender-cli still uses old, slightly buggy completion code
# This will correct the #compdef tag and add separate compdef line
# allowing direct sourcing to also activate the completion
substituteInPlace "$out/share/zsh/site-functions/_mender-cli" \
--replace-fail '#compdef _mender-cli mender-cli' "#compdef mender-cli''\ncompdef _mender-cli mender-cli"
''; '';
meta = { meta = {
@ -43,7 +55,6 @@ buildGoModule rec {
mainProgram = "mender-cli"; mainProgram = "mender-cli";
homepage = "https://github.com/mendersoftware/mender-cli/"; homepage = "https://github.com/mendersoftware/mender-cli/";
changelog = "https://github.com/mendersoftware/mender-cli/releases/tag/${version}"; changelog = "https://github.com/mendersoftware/mender-cli/releases/tag/${version}";
license = lib.licenses.apache; license = lib.licenses.asl20;
maintainers = [lib.maintainers.ivankovnatsky];
}; };
} }