nur-packages

My NUR packages
git clone git://git.sikmir.ru/nur-packages
Log | Files | Refs | README | LICENSE

package.nix (1350B)


      1 {
      2   lib,
      3   stdenv,
      4   buildGoModule,
      5   fetchFromGitHub,
      6   installShellFiles,
      7   libpcap,
      8 }:
      9 
     10 buildGoModule (finalAttrs: {
     11   pname = "shifu";
     12   version = "0.100.0";
     13 
     14   __structuredAttrs = true;
     15 
     16   src = fetchFromGitHub {
     17     owner = "Edgenesis";
     18     repo = "shifu";
     19     tag = "v${finalAttrs.version}";
     20     hash = "sha256-tNkeQavVUvO4KfSj7rqIqKNQa5Jpybkr2wO2KQYUO98=";
     21   };
     22 
     23   vendorHash = "sha256-VAOmiAO1dYByrQL1PRUweyKNT/fCfF21/SO1ytlMqDo=";
     24 
     25   nativeBuildInputs = [ installShellFiles ];
     26 
     27   buildInputs = [ libpcap ];
     28 
     29   subPackages = [
     30     "cmd/deviceshifu/cmdhttp"
     31     "cmd/deviceshifu/cmdmqtt"
     32     "cmd/deviceshifu/cmdopcua"
     33     "cmd/deviceshifu/cmdsocket"
     34     "cmd/httpstub/powershellstub"
     35     "cmd/httpstub/sshstub"
     36     "cmd/shifuctl"
     37     "cmd/telemetryservice"
     38   ];
     39 
     40   postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
     41     installShellCompletion --cmd shifuctl \
     42       --bash <($out/bin/shifuctl completion bash) \
     43       --fish <($out/bin/shifuctl completion fish) \
     44       --zsh <($out/bin/shifuctl completion zsh)
     45   '';
     46 
     47   meta = {
     48     description = "Kubernetes-native IoT gateway";
     49     homepage = "https://shifu.dev/";
     50     license = lib.licenses.asl20;
     51     maintainers = [ lib.maintainers.sikmir ];
     52     mainProgram = "shifuctl";
     53     broken = true; # https://github.com/NixOS/nixpkgs/pull/519903
     54   };
     55 })