80 lines
1.6 KiB
Nix
80 lines
1.6 KiB
Nix
{
|
|
description = "tlater.net web server contents";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "github:nixos/nixpkgs/nixos-22.05";
|
|
nix-filter.url = "github:numtide/nix-filter";
|
|
npmlock2nix = {
|
|
url = "github:nix-community/npmlock2nix";
|
|
flake = false;
|
|
};
|
|
};
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
nix-filter,
|
|
npmlock2nix,
|
|
}: let
|
|
# At the moment, we only deploy to x86_64-linux. Update when we
|
|
# care about another platform.
|
|
system = "x86_64-linux";
|
|
overlays = [
|
|
(final: prev: {
|
|
npmlock2nix = import npmlock2nix {pkgs = prev;};
|
|
})
|
|
];
|
|
pkgs = import nixpkgs {inherit system overlays;};
|
|
in {
|
|
packages.${system} = rec {
|
|
tlaternet-templates = pkgs.npmlock2nix.build {
|
|
src = pkgs.lib.cleanSource self;
|
|
|
|
buildInputs = with pkgs; [
|
|
util-linux
|
|
];
|
|
|
|
installPhase = ''
|
|
cp -r dist $out/
|
|
'';
|
|
|
|
node_modules_attrs = {
|
|
buildInputs = with pkgs; [
|
|
pkg-config
|
|
python3
|
|
vips
|
|
glib
|
|
];
|
|
};
|
|
};
|
|
|
|
default = tlaternet-templates;
|
|
};
|
|
|
|
devShells.${system} = {
|
|
default = pkgs.npmlock2nix.shell {
|
|
src = nix-filter.lib {
|
|
root = self;
|
|
include = [
|
|
"package.json"
|
|
"package-lock.json"
|
|
];
|
|
};
|
|
|
|
buildInputs = with pkgs.nodePackages; [
|
|
npm-check-updates
|
|
];
|
|
|
|
node_modules_attrs = {
|
|
buildInputs = with pkgs; [
|
|
pkg-config
|
|
python3
|
|
vips
|
|
glib
|
|
];
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|