about summary refs log tree commit diff
path: root/pkgs/by-name/ho
diff options
context:
space:
mode:
authorjfvillablanca <31008330+jfvillablanca@users.noreply.github.com>2023-10-27 08:17:11 +0800
committerjfvillablanca <31008330+jfvillablanca@users.noreply.github.com>2023-11-18 19:42:54 +0800
commitf4131a43fa19fe90810b92de49dbd2569f2e83dc (patch)
tree4e2326726b4064227d66cfe26db5ac14cb32630a /pkgs/by-name/ho
parentf0f5af262cd2d45cc8d5425a5b707bc23eb3f06c (diff)
hof: init at 0.6.9-beta.1
Diffstat (limited to 'pkgs/by-name/ho')
-rw-r--r--pkgs/by-name/ho/hof/package.nix40
1 files changed, 40 insertions, 0 deletions
diff --git a/pkgs/by-name/ho/hof/package.nix b/pkgs/by-name/ho/hof/package.nix
new file mode 100644
index 0000000000000..d5ca54ea5beb2
--- /dev/null
+++ b/pkgs/by-name/ho/hof/package.nix
@@ -0,0 +1,40 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, installShellFiles
+}:
+
+buildGoModule rec {
+  pname = "hof";
+  version = "0.6.9-beta.1";
+
+  src = fetchFromGitHub {
+    owner = "hofstadter-io";
+    repo = "hof";
+    rev = "v${version}";
+    hash = "sha256-4yVP6DRHrsp52VxBhr7qppPhInYEsvPbIfxxQcRwHTw=";
+  };
+
+  nativeBuildInputs = [ installShellFiles ];
+
+  vendorHash = "sha256-cDUcYwcxPn+9TEP5lhVJXofijCZX94Is+Qt41PqUgjI=";
+
+  subPackages = [ "./cmd/hof/main.go" ];
+
+  postInstall = ''
+    mv $out/bin/main $out/bin/hof
+    local INSTALL="$out/bin/hof"
+    installShellCompletion --cmd hof \
+      --bash <($out/bin/hof completion bash) \
+      --fish <($out/bin/hof completion fish) \
+      --zsh <($out/bin/hof completion zsh)
+  '';
+
+  meta = with lib; {
+    homepage = "https://github.com/hofstadter-io/hof";
+    description = "Framework that joins data models, schemas, code generation, and a task engine. Language and technology agnostic";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ jfvillablanca ];
+    mainProgram = "hof";
+  };
+}