From 627542ea2d292dd79151edaca5aea9bf6dd06f7d Mon Sep 17 00:00:00 2001 From: Lan Tian Date: Sun, 19 May 2024 11:53:46 -0700 Subject: [PATCH] cloudpan189-go: init at 0.1.3 --- pkgs/by-name/cl/cloudpan189-go/package.nix | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 pkgs/by-name/cl/cloudpan189-go/package.nix diff --git a/pkgs/by-name/cl/cloudpan189-go/package.nix b/pkgs/by-name/cl/cloudpan189-go/package.nix new file mode 100644 index 000000000000..e3f61182d052 --- /dev/null +++ b/pkgs/by-name/cl/cloudpan189-go/package.nix @@ -0,0 +1,50 @@ +{ + buildGo122Module, + lib, + fetchFromGitHub, + versionCheckHook, +}: +buildGo122Module rec { + pname = "cloudpan189-go"; + version = "0.1.3"; + src = fetchFromGitHub { + owner = "tickstep"; + repo = "cloudpan189-go"; + rev = "v${version}"; + hash = "sha256-CJCTfzcLw5e41RZXhgbJhZVOP4FDDYM74Oo9my/liZk="; + }; + vendorHash = "sha256-6t4wJqUGJneR6Hv7Dotr4P9MTA1oQcCe/ujDojS0g8s="; + + # Dirty way to fix dependency issue + overrideModAttrs = _: { + postInstall = '' + sed -i '/go:linkname/d' $out/github.com/tickstep/library-go/expires/expires.go + ''; + }; + + nativeInstallCheckInputs = [ + versionCheckHook + ]; + versionCheckProgram = "${placeholder "out"}/bin/${meta.mainProgram}"; + + postFixup = '' + mv $out/bin/cloudpan189-go $out/bin/.cloudpan189-go-wrapped + + cat <$out/bin/cloudpan189-go + #!/bin/sh + export CLOUD189_CONFIG_DIR="\''${CLOUD189_CONFIG_DIR:-\''${HOME}/.config/cloudpan189-go}" + mkdir -p \''${CLOUD189_CONFIG_DIR} + exec $out/bin/.cloudpan189-go-wrapped "\$@" + EOF + + chmod +x $out/bin/cloudpan189-go + ''; + + meta = { + mainProgram = "cloudpan189-go"; + maintainers = with lib.maintainers; [ xddxdd ]; + description = "CLI for China Telecom 189 Cloud Drive service, implemented in Go"; + homepage = "https://github.com/tickstep/cloudpan189-go"; + license = lib.licenses.asl20; + }; +}