Initial package expression

Builds succesfully against NixOS 25.11.
This commit is contained in:
Rei Meliesie 2026-06-01 17:13:09 +02:00
commit 4f7b295518
Signed by: zedfrigg
GPG key ID: 3AFCC06481308BC6

74
package.nix Normal file
View file

@ -0,0 +1,74 @@
{
# Build tools.
buildGoModule,
buildNpmPackage,
fetchFromGitLab,
fetchPnpmDeps,
nodejs,
pnpm_10,
pnpmConfigHook,
stdenv,
# Options.
version ? "0.15.0",
}:
let
pname = "fmd-server";
src = fetchFromGitLab {
owner = "fmd-foss";
repo = "fmd-server";
tag = "v${version}";
hash = "sha256-EzhXrB15lRtDnFicdH7fjpcm1BYoAb1SBeylGSub69s=";
};
frontend = let
pname = "fmd-server-frontend";
in stdenv.mkDerivation {
inherit pname version src;
pnpmRoot = "web";
pnpmDeps = fetchPnpmDeps {
inherit pname version src;
pnpm = pnpm_10;
fetcherVersion = 3;
sourceRoot = "${src.name}/web";
hash = "sha256-vKSKPwOkb7TwDUlkl8lUvO6tLKp2NyBQ0BGxThUN2P8=";
};
nativeBuildInputs = [ nodejs pnpm_10 pnpmConfigHook ];
buildPhase = ''
runHook preBuild
cd web
pnpm build
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir $out
cp -R dist $out/
runHook postInstall
'';
};
in
buildGoModule {
inherit pname version src;
vendorHash = "sha256-cFIg9mOSQbrYHW4kg4aTeTaF+gy1jNpAlg8qepb81Jc=";
preBuild = ''
cp -R ${frontend}/dist web/
'';
}