summaryrefslogtreecommitdiff
path: root/hostnix/elmo/packages/cgithub/default.nix
diff options
context:
space:
mode:
authorJoe Mou <dev@mou.fo>2026-09-18 07:42:53 +0100
committerJoe Mou <dev@mou.fo>2026-09-18 08:11:33 +0100
commit363e8db444d9aade0fcca2bd3171653b7dab01d8 (patch)
tree64ef8ee4dc22ddb5313c6599e8e32754bb492991 /hostnix/elmo/packages/cgithub/default.nix
parent9659525bf2387af6deab9d401784b94b1f44d395 (diff)
Run cgithub locally on elmotest
Diffstat (limited to 'hostnix/elmo/packages/cgithub/default.nix')
-rw-r--r--hostnix/elmo/packages/cgithub/default.nix46
1 files changed, 46 insertions, 0 deletions
diff --git a/hostnix/elmo/packages/cgithub/default.nix b/hostnix/elmo/packages/cgithub/default.nix
new file mode 100644
index 0000000..12e6086
--- /dev/null
+++ b/hostnix/elmo/packages/cgithub/default.nix
@@ -0,0 +1,46 @@
+{
+ bash,
+ fetchPnpmDeps,
+ nodejs_22,
+ pnpm_11,
+ pnpmConfigHook,
+ stdenv,
+ src,
+}:
+
+let
+ pnpm = pnpm_11;
+in
+stdenv.mkDerivation (finalAttrs: {
+ pname = "cgithub";
+ version = "1.0.0";
+ inherit src;
+
+ nativeBuildInputs = [
+ nodejs_22
+ pnpmConfigHook
+ pnpm
+ ];
+
+ pnpmDeps = fetchPnpmDeps {
+ inherit (finalAttrs) pname version src;
+ inherit pnpm;
+ fetcherVersion = 4;
+ hash = "sha256-XxkTo+JeFyPEVgIJYm4/VaIAijaj4Sc0EzCCjZsu62Q=";
+ };
+
+ buildPhase = ''
+ node scripts/build.ts
+ '';
+
+ installPhase = ''
+ mkdir -p "$out/bin"
+ cp -a . "$out/"
+
+ cat > "$out/bin/cgithub-server" <<EOF
+ #!${bash}/bin/bash
+ exec ${nodejs_22}/bin/node "$out/src/index.ts" "\$@"
+ EOF
+ chmod +x "$out/bin/cgithub-server"
+ '';
+})