63 lines
1.3 KiB
Nix
63 lines
1.3 KiB
Nix
{
|
|
dream2nix,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
{
|
|
imports = [
|
|
dream2nix.modules.dream2nix.nodejs-package-json-v3
|
|
dream2nix.modules.dream2nix.nodejs-granular-v3
|
|
dream2nix.modules.dream2nix.nodejs-devshell-v3
|
|
];
|
|
|
|
deps =
|
|
{ nixpkgs, ... }:
|
|
{
|
|
inherit (nixpkgs)
|
|
pkg-config
|
|
runCommandLocal
|
|
rsync
|
|
vips
|
|
yj
|
|
;
|
|
};
|
|
|
|
name = "tlaternet-templates";
|
|
version = "0.1.0";
|
|
|
|
mkDerivation = {
|
|
src = config.deps.runCommandLocal "source" { nativeBuildInputs = [ config.deps.yj ]; } ''
|
|
cp -r ${./.} $out/
|
|
chmod -R u+w $out
|
|
yj < $out/package.yaml > $out/package.json
|
|
'';
|
|
|
|
nativeBuildInputs = [ config.deps.yj ];
|
|
|
|
# The default phase (which is hidden in `preInstallPhases`) will
|
|
# copy the full node_modules directory to the output, and symlink
|
|
# executables and whatnot.
|
|
#
|
|
# Since this package's output is static HTML/JS, we do not want
|
|
# that.
|
|
preInstallPhases = lib.mkForce [ ];
|
|
installPhase = ''
|
|
cp -r dist $out
|
|
'';
|
|
};
|
|
|
|
nodejs-granular-v3.deps = {
|
|
sharp."0.28.3".mkDerivation.buildInputs = with config.deps; [
|
|
vips
|
|
pkg-config
|
|
];
|
|
};
|
|
|
|
nodejs-devshell-v3.nodeModules = {
|
|
nodejs-granular-v3.deps.sharp."0.28.3".mkDerivation.buildInputs = with config.deps; [
|
|
vips
|
|
pkg-config
|
|
];
|
|
};
|
|
}
|