nur-packages

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

package.nix (1254B)


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