depot/pkgs/by-name/ke/keepassxc-go/package.nix
Luke Granger-Brown 57725ef3ec Squashed 'third_party/nixpkgs/' content from commit 76612b17c0ce
git-subtree-dir: third_party/nixpkgs
git-subtree-split: 76612b17c0ce71689921ca12d9ffdc9c23ce40b2
2024-11-10 23:59:47 +00:00

44 lines
1.3 KiB
Nix

{ lib
, stdenv
, buildGoModule
, fetchFromGitHub
, installShellFiles
}:
buildGoModule rec {
pname = "keepassxc-go";
version = "1.5.1";
src = fetchFromGitHub {
owner = "MarkusFreitag";
repo = "keepassxc-go";
rev = "v${version}";
hash = "sha256-seCeHNEj5GxAI7BVMPzh+YuoxivmTwvhVCqY5LKHpQk=";
};
nativeBuildInputs = [ installShellFiles ];
vendorHash = "sha256-jscyNyVr+RDN1EaxIOc3aYCAVT+1eO/c+dxEsIorDIs=";
checkFlags = [
# Test tries to monkey-patch the stdlib, fails with permission denied error.
"-skip=TestKeystore"
];
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
local INSTALL="$out/bin/keepassxc-go"
installShellCompletion --cmd keepassxc-go \
--bash <($out/bin/keepassxc-go completion bash) \
--fish <($out/bin/keepassxc-go completion fish) \
--zsh <($out/bin/keepassxc-go completion zsh)
'';
meta = with lib; {
description = "Library and basic CLI tool to interact with KeepassXC via unix socket";
homepage = "https://github.com/MarkusFreitag/keepassxc-go";
changelog = "https://github.com/MarkusFreitag/keepassxc-go/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ xgwq ];
mainProgram = "keepassxc-go";
};
}