59 lines
976 B
Nix
59 lines
976 B
Nix
{
|
|
pkgs ? import <nixpkgs>,
|
|
lib,
|
|
templ ? pkgs.templ,
|
|
gitignore,
|
|
...
|
|
}: let
|
|
v = "2024-12-15";
|
|
|
|
npm = pkgs.buildNpmPackage {
|
|
name = "Keiko's Work NPM Build";
|
|
version = v;
|
|
|
|
src = gitignore.lib.gitignoreSource ./.;
|
|
|
|
npmDepsHash = "sha256-8J4oIl4B9gOQcfq4KPUMPnrlgB1vde3x0YVOUBdWCU8=";
|
|
npmPackFlags = ["--ignore-scripts"];
|
|
|
|
buildPhase = ''
|
|
runHook preBuild
|
|
|
|
npm run unocss
|
|
|
|
runHook postBuild
|
|
'';
|
|
|
|
installPhase = ''
|
|
runHook preInstall
|
|
|
|
mkdir -p $out
|
|
cp -r ./* $out
|
|
|
|
runHook postInstall
|
|
'';
|
|
};
|
|
in
|
|
pkgs.buildGoModule {
|
|
name = "Keiko's Work";
|
|
pname = "keikos.work";
|
|
|
|
version = v;
|
|
|
|
src = npm;
|
|
|
|
nativeBuildInputs = [
|
|
pkgs.nodejs_20
|
|
];
|
|
|
|
vendorHash = "sha256-Hhvyh4M64LyuWbcKWSVWR20idIDIH/ZqLSDT2gGFqj4=";
|
|
|
|
preBuild = ''
|
|
${lib.escapeShellArg (lib.getExe' templ "templ")} generate .
|
|
'';
|
|
|
|
meta = {
|
|
mainProgram = "keikos.work";
|
|
};
|
|
}
|