nixfmt pass
This commit is contained in:
parent
c6d629ad45
commit
857e038fa9
91
default.nix
91
default.nix
@ -1,4 +1,5 @@
|
|||||||
{ pkgs, google-chrome, symlinkJoin, stdenv, elmPackages, libjpeg, optipng, pngquant, libwebp, ... }:
|
{ pkgs, google-chrome, symlinkJoin, stdenv, elmPackages, libjpeg, optipng
|
||||||
|
, pngquant, libwebp, ... }:
|
||||||
|
|
||||||
let
|
let
|
||||||
pnpm2nix = pkgs.callPackage (builtins.fetchGit {
|
pnpm2nix = pkgs.callPackage (builtins.fetchGit {
|
||||||
@ -6,13 +7,23 @@ let
|
|||||||
rev = "909accd35d23664254b43109ee58cd0c3d83a6d9";
|
rev = "909accd35d23664254b43109ee58cd0c3d83a6d9";
|
||||||
}) { };
|
}) { };
|
||||||
|
|
||||||
nodeCleanSourceFilter = name: type: pkgs.lib.cleanSourceFilter name type &&
|
nodeCleanSourceFilter = name: type:
|
||||||
((baseNameOf name) != "node_modules");
|
pkgs.lib.cleanSourceFilter name type
|
||||||
nodeCleanSource = src: pkgs.lib.cleanSourceWith { filter = nodeCleanSourceFilter; inherit src; };
|
&& ((baseNameOf name) != "node_modules");
|
||||||
|
nodeCleanSource = src:
|
||||||
|
pkgs.lib.cleanSourceWith {
|
||||||
|
filter = nodeCleanSourceFilter;
|
||||||
|
inherit src;
|
||||||
|
};
|
||||||
|
|
||||||
elmCleanSourceFilter = name: type: nodeCleanSourceFilter name type &&
|
elmCleanSourceFilter = name: type:
|
||||||
((baseNameOf name) != "elm-stuff" && (baseNameOf name) != "dist");
|
nodeCleanSourceFilter name type
|
||||||
elmCleanSource = src: pkgs.lib.cleanSourceWith { filter = elmCleanSourceFilter; inherit src; };
|
&& ((baseNameOf name) != "elm-stuff" && (baseNameOf name) != "dist");
|
||||||
|
elmCleanSource = src:
|
||||||
|
pkgs.lib.cleanSourceWith {
|
||||||
|
filter = elmCleanSourceFilter;
|
||||||
|
inherit src;
|
||||||
|
};
|
||||||
|
|
||||||
builderPkg = pnpm2nix.mkPnpmPackage {
|
builderPkg = pnpm2nix.mkPnpmPackage {
|
||||||
name = "builder-node-packages";
|
name = "builder-node-packages";
|
||||||
@ -20,7 +31,8 @@ let
|
|||||||
pnpmLock = ./pnpm-lock.yaml;
|
pnpmLock = ./pnpm-lock.yaml;
|
||||||
src = nodeCleanSource ./.;
|
src = nodeCleanSource ./.;
|
||||||
overrides = pnpm2nix.defaultPnpmOverrides // {
|
overrides = pnpm2nix.defaultPnpmOverrides // {
|
||||||
puppeteer = (drv: drv.overrideAttrs(oldAttrs: {
|
puppeteer = (drv:
|
||||||
|
drv.overrideAttrs (oldAttrs: {
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
# Define the local chromium directory
|
# Define the local chromium directory
|
||||||
local_chromium=$HOME/node_modules/puppeteer/.local-chromium/linux-686378
|
local_chromium=$HOME/node_modules/puppeteer/.local-chromium/linux-686378
|
||||||
@ -32,42 +44,44 @@ let
|
|||||||
chmod +x $local_chromium/chrome-linux/chrome
|
chmod +x $local_chromium/chrome-linux/chrome
|
||||||
'';
|
'';
|
||||||
}));
|
}));
|
||||||
imagemin-pngquant = (drv: drv.overrideAttrs(oldAttrs: {
|
imagemin-pngquant = (drv:
|
||||||
buildInputs = oldAttrs.buildInputs ++ [ pkgs.libpng ];
|
drv.overrideAttrs
|
||||||
}));
|
(oldAttrs: { buildInputs = oldAttrs.buildInputs ++ [ pkgs.libpng ]; }));
|
||||||
pngquant-bin = (drv: drv.overrideAttrs(oldAttrs: {
|
pngquant-bin = (drv:
|
||||||
|
drv.overrideAttrs (oldAttrs: {
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
mkdir -p $HOME/node_modules/pngquant-bin/vendor
|
mkdir -p $HOME/node_modules/pngquant-bin/vendor
|
||||||
ln -s ${pngquant}/bin/pngquant $HOME/node_modules/pngquant-bin/vendor/pngquant
|
ln -s ${pngquant}/bin/pngquant $HOME/node_modules/pngquant-bin/vendor/pngquant
|
||||||
'';
|
'';
|
||||||
}));
|
}));
|
||||||
|
|
||||||
gifsicle = (drv: drv.overrideAttrs(oldAttrs: {
|
gifsicle = (drv:
|
||||||
|
drv.overrideAttrs (oldAttrs: {
|
||||||
buildInputs = oldAttrs.buildInputs ++ [ pkgs.autoconf pkgs.automake ];
|
buildInputs = oldAttrs.buildInputs ++ [ pkgs.autoconf pkgs.automake ];
|
||||||
}));
|
}));
|
||||||
|
|
||||||
optipng = (drv: drv.overrideAttrs(oldAttrs: {
|
optipng =
|
||||||
buildInputs = [ optipng ];
|
(drv: drv.overrideAttrs (oldAttrs: { buildInputs = [ optipng ]; }));
|
||||||
}));
|
optipng-bin = (drv:
|
||||||
optipng-bin = (drv: drv.overrideAttrs(oldAttrs: {
|
drv.overrideAttrs (oldAttrs: {
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
mkdir -p $HOME/node_modules/optipng-bin/vendor
|
mkdir -p $HOME/node_modules/optipng-bin/vendor
|
||||||
ln -s ${optipng}/bin/optipng $HOME/node_modules/optipng-bin/vendor/optipng
|
ln -s ${optipng}/bin/optipng $HOME/node_modules/optipng-bin/vendor/optipng
|
||||||
'';
|
'';
|
||||||
}));
|
}));
|
||||||
|
|
||||||
jpegtran = (drv: drv.overrideAttrs(oldAttrs: {
|
jpegtran =
|
||||||
buildInputs = [ libjpeg ];
|
(drv: drv.overrideAttrs (oldAttrs: { buildInputs = [ libjpeg ]; }));
|
||||||
}));
|
jpegtran-bin = (drv:
|
||||||
jpegtran-bin = (drv: drv.overrideAttrs(oldAttrs: {
|
drv.overrideAttrs (oldAttrs: {
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
mkdir -p $HOME/node_modules/jpegtran-bin/vendor
|
mkdir -p $HOME/node_modules/jpegtran-bin/vendor
|
||||||
ln -s ${libjpeg}/bin/jpegtran $HOME/node_modules/jpegtran-bin/vendor/jpegtran
|
ln -s ${libjpeg}/bin/jpegtran $HOME/node_modules/jpegtran-bin/vendor/jpegtran
|
||||||
'';
|
'';
|
||||||
}));
|
}));
|
||||||
|
|
||||||
|
cwebp-bin = (drv:
|
||||||
cwebp-bin = (drv: drv.overrideAttrs(oldAttrs: {
|
drv.overrideAttrs (oldAttrs: {
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
mkdir -p $HOME/node_modules/cwebp-bin/vendor/
|
mkdir -p $HOME/node_modules/cwebp-bin/vendor/
|
||||||
ln -s ${libwebp}/bin/cwebp $HOME/node_modules/cwebp-bin/vendor/cwebp
|
ln -s ${libwebp}/bin/cwebp $HOME/node_modules/cwebp-bin/vendor/cwebp
|
||||||
@ -76,22 +90,13 @@ let
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
mkWandardFront = {
|
mkWandardFront = { name, prettyName ? name, description ? ""
|
||||||
name,
|
, themeColor ? "#000000", backgroundColor ? "#000000", src
|
||||||
prettyName ? name,
|
, nodePackages ? [ ], routes ? [ "/" ], }:
|
||||||
description ? "",
|
|
||||||
themeColor ? "#000000",
|
|
||||||
backgroundColor ? "#000000",
|
|
||||||
src,
|
|
||||||
nodePackages ? [],
|
|
||||||
routes ? [ "/" ],
|
|
||||||
}:
|
|
||||||
let
|
let
|
||||||
nodeSource = symlinkJoin {
|
nodeSource = symlinkJoin {
|
||||||
name = "${name}-node-sources";
|
name = "${name}-node-sources";
|
||||||
paths = [
|
paths = [ builderPkg.lib ] ++ nodePackages;
|
||||||
builderPkg.lib
|
|
||||||
] ++ nodePackages;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
baseWebpackConfig = builtins.readFile ./webpack.config.js;
|
baseWebpackConfig = builtins.readFile ./webpack.config.js;
|
||||||
@ -158,17 +163,12 @@ let
|
|||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
'';
|
'';
|
||||||
in
|
in stdenv.mkDerivation {
|
||||||
stdenv.mkDerivation {
|
|
||||||
inherit name;
|
inherit name;
|
||||||
|
|
||||||
src = elmCleanSource src;
|
src = elmCleanSource src;
|
||||||
|
|
||||||
buildInputs = with elmPackages; [
|
buildInputs = with elmPackages; [ elm elm-format nodeSource ];
|
||||||
elm
|
|
||||||
elm-format
|
|
||||||
nodeSource
|
|
||||||
];
|
|
||||||
|
|
||||||
patchPhase = ''
|
patchPhase = ''
|
||||||
ln -sf ${nodeSource}/node_modules .
|
ln -sf ${nodeSource}/node_modules .
|
||||||
@ -200,7 +200,4 @@ let
|
|||||||
mv dist/* $out
|
mv dist/* $out
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
in
|
in { inherit mkWandardFront; }
|
||||||
{
|
|
||||||
inherit mkWandardFront;
|
|
||||||
}
|
|
||||||
|
Loading…
Reference in New Issue
Block a user