added yarnNix to prevent idf when called on hydraJobs
This commit is contained in:
parent
1698f39d70
commit
296fd0f30d
29
flake.nix
29
flake.nix
|
@ -9,9 +9,20 @@
|
||||||
pre-commit.url = "github:cachix/pre-commit-hooks.nix";
|
pre-commit.url = "github:cachix/pre-commit-hooks.nix";
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, flake-parts, treefmt-nix, pre-commit, ... }@inputs:
|
outputs =
|
||||||
let systems = [ "x86_64-linux" "aarch64-linux" ];
|
{ self
|
||||||
in flake-parts.lib.mkFlake { inherit inputs; } {
|
, flake-parts
|
||||||
|
, treefmt-nix
|
||||||
|
, pre-commit
|
||||||
|
, ...
|
||||||
|
}@inputs:
|
||||||
|
let
|
||||||
|
systems = [
|
||||||
|
"x86_64-linux"
|
||||||
|
"aarch64-linux"
|
||||||
|
];
|
||||||
|
in
|
||||||
|
flake-parts.lib.mkFlake { inherit inputs; } {
|
||||||
inherit systems;
|
inherit systems;
|
||||||
|
|
||||||
imports = [
|
imports = [
|
||||||
|
@ -22,7 +33,13 @@
|
||||||
./nix/package.nix
|
./nix/package.nix
|
||||||
];
|
];
|
||||||
|
|
||||||
perSystem = { config, pkgs, self', ... }: {
|
perSystem =
|
||||||
|
{ config
|
||||||
|
, pkgs
|
||||||
|
, self'
|
||||||
|
, ...
|
||||||
|
}:
|
||||||
|
{
|
||||||
apps = {
|
apps = {
|
||||||
serve.program = "${pkgs.writeShellScript "serve" ''
|
serve.program = "${pkgs.writeShellScript "serve" ''
|
||||||
${pkgs.miniserve}/bin/miniserve -p 3001 --index index.html ${self'.packages.default}
|
${pkgs.miniserve}/bin/miniserve -p 3001 --index index.html ${self'.packages.default}
|
||||||
|
@ -39,6 +56,8 @@
|
||||||
formatter = config.treefmt.build.wrapper;
|
formatter = config.treefmt.build.wrapper;
|
||||||
};
|
};
|
||||||
|
|
||||||
flake.hydraJobs = { inherit (self) packages; };
|
flake.hydraJobs = {
|
||||||
|
inherit (self) checks packages;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,7 @@
|
||||||
{
|
{
|
||||||
perSystem = { pkgs, config, ... }: {
|
perSystem =
|
||||||
|
{ pkgs, config, ... }:
|
||||||
|
{
|
||||||
devShells.default = pkgs.mkShell {
|
devShells.default = pkgs.mkShell {
|
||||||
inputsFrom = [ config.treefmt.build.devShell ];
|
inputsFrom = [ config.treefmt.build.devShell ];
|
||||||
|
|
||||||
|
|
|
@ -1,8 +1,12 @@
|
||||||
{ inputs, ... }:
|
{ lib, inputs, ... }:
|
||||||
let inherit (inputs.nix-filter.lib) filter inDirectory matchExt;
|
let
|
||||||
in {
|
inherit (inputs.nix-filter.lib) filter inDirectory matchExt;
|
||||||
perSystem = { pkgs, ... }: {
|
in
|
||||||
packages.srx-digital = pkgs.mkYarnPackage rec {
|
{
|
||||||
|
perSystem =
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
packages.srx-digital = pkgs.mkYarnPackage {
|
||||||
name = "srx-digital";
|
name = "srx-digital";
|
||||||
|
|
||||||
src = filter {
|
src = filter {
|
||||||
|
@ -17,42 +21,34 @@ in {
|
||||||
(matchExt "ts")
|
(matchExt "ts")
|
||||||
../package.json
|
../package.json
|
||||||
../yarn.lock
|
../yarn.lock
|
||||||
|
../yarn.nix
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
CI = "true";
|
|
||||||
doDist = false;
|
|
||||||
|
|
||||||
packageJSON = ../package.json;
|
packageJSON = ../package.json;
|
||||||
yarnLock = ../yarn.lock;
|
yarnLock = ../yarn.lock;
|
||||||
yarnFlags = [ "--offline" "--production=true" ];
|
yarnNix = ../yarn.nix;
|
||||||
|
yarnFlags = [
|
||||||
pkgConfig.sharp = {
|
"--offline"
|
||||||
nativeBuildInputs = with pkgs; [
|
"--production=true"
|
||||||
pkg-config
|
|
||||||
python3
|
|
||||||
nodePackages.node-gyp
|
|
||||||
];
|
];
|
||||||
|
|
||||||
buildInputs = with pkgs; [ vips.dev ];
|
CI = "true";
|
||||||
|
|
||||||
postInstall = ''
|
pkgConfig.sharp = {
|
||||||
${pkgs.nodePackages.node-gyp}/bin/node-gyp --node-dir=${pkgs.nodePackages.nodejs}/include/node rebuild
|
nativeBuildInputs = builtins.attrValues {
|
||||||
'';
|
inherit (pkgs.nodePackages) node-gyp;
|
||||||
|
inherit (pkgs) python3 pkg-config;
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs = with pkgs; [ vips.dev ];
|
||||||
|
postInstall = "node-gyp --node-dir=${pkgs.nodePackages.nodejs} rebuild";
|
||||||
};
|
};
|
||||||
|
|
||||||
postConfigure = "export HOME=$(mktemp -d)";
|
postConfigure = "export HOME=$(mktemp -d)";
|
||||||
|
buildPhase = "yarn build";
|
||||||
buildPhase = ''
|
installPhase = "mv -v deps/blog/public \${out}";
|
||||||
runHook preBuild
|
distPhase = "true";
|
||||||
(
|
|
||||||
shopt -s dotglob
|
|
||||||
yarn --offline build
|
|
||||||
)
|
|
||||||
runHook postBuild
|
|
||||||
'';
|
|
||||||
|
|
||||||
installPhase = "mv -v deps/${name}/dist \${out}";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue