nixfmt pass

This commit is contained in:
notgne2 2020-02-27 19:00:13 -07:00
parent c6d629ad45
commit 857e038fa9

View File

@ -1,18 +1,29 @@
{ 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 {
url = "https://github.com/notgne2/pnpm2nix.git"; url = "https://github.com/notgne2/pnpm2nix.git";
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,78 +31,72 @@ 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:
preBuild = '' drv.overrideAttrs (oldAttrs: {
# Define the local chromium directory preBuild = ''
local_chromium=$HOME/node_modules/puppeteer/.local-chromium/linux-686378 # Define the local chromium directory
# Make sure that directory exists local_chromium=$HOME/node_modules/puppeteer/.local-chromium/linux-686378
mkdir -p $local_chromium # Make sure that directory exists
# Link pkgs' standard google chrome into place mkdir -p $local_chromium
cp -r --no-preserve=mode,ownership ${google-chrome}/share/google/chrome $local_chromium/chrome-linux # Link pkgs' standard google chrome into place
cp ${google-chrome}/bin/google-chrome-stable $local_chromium/chrome-linux/chrome cp -r --no-preserve=mode,ownership ${google-chrome}/share/google/chrome $local_chromium/chrome-linux
chmod +x $local_chromium/chrome-linux/chrome cp ${google-chrome}/bin/google-chrome-stable $local_chromium/chrome-linux/chrome
''; chmod +x $local_chromium/chrome-linux/chrome
})); '';
imagemin-pngquant = (drv: drv.overrideAttrs(oldAttrs: { }));
buildInputs = oldAttrs.buildInputs ++ [ pkgs.libpng ]; imagemin-pngquant = (drv:
})); drv.overrideAttrs
pngquant-bin = (drv: drv.overrideAttrs(oldAttrs: { (oldAttrs: { buildInputs = oldAttrs.buildInputs ++ [ pkgs.libpng ]; }));
preBuild = '' pngquant-bin = (drv:
mkdir -p $HOME/node_modules/pngquant-bin/vendor drv.overrideAttrs (oldAttrs: {
ln -s ${pngquant}/bin/pngquant $HOME/node_modules/pngquant-bin/vendor/pngquant preBuild = ''
''; mkdir -p $HOME/node_modules/pngquant-bin/vendor
})); ln -s ${pngquant}/bin/pngquant $HOME/node_modules/pngquant-bin/vendor/pngquant
'';
}));
gifsicle = (drv: drv.overrideAttrs(oldAttrs: { gifsicle = (drv:
buildInputs = oldAttrs.buildInputs ++ [ pkgs.autoconf pkgs.automake ]; drv.overrideAttrs (oldAttrs: {
})); 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
''; '';
})); }));
}; };
}; };
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;
}