45 lines
813 B
Nix
45 lines
813 B
Nix
{ lib
|
|
, stdenv
|
|
, makeWrapper
|
|
, coreutils
|
|
, diffutils
|
|
, git
|
|
, gnugrep
|
|
, gnused
|
|
, jq
|
|
, nix
|
|
, python3Packages
|
|
}:
|
|
|
|
stdenv.mkDerivation {
|
|
name = "common-updater-scripts";
|
|
|
|
nativeBuildInputs = [
|
|
makeWrapper
|
|
python3Packages.wrapPython
|
|
];
|
|
|
|
pythonPath = [
|
|
python3Packages.beautifulsoup4
|
|
python3Packages.requests
|
|
];
|
|
|
|
dontUnpack = true;
|
|
|
|
installPhase = ''
|
|
mkdir -p $out/bin
|
|
cp ${./scripts}/* $out/bin
|
|
|
|
# wrap non python scripts
|
|
for f in $out/bin/*; do
|
|
if ! (head -n1 "$f" | grep -q '#!.*/env.*\(python\|pypy\)'); then
|
|
wrapProgram $f --prefix PATH : ${lib.makeBinPath [ coreutils diffutils git gnugrep gnused jq nix ]}
|
|
fi
|
|
done
|
|
|
|
# wrap python scripts
|
|
makeWrapperArgs+=( --prefix PATH : "${lib.makeBinPath [ nix ]}" )
|
|
wrapPythonPrograms
|
|
'';
|
|
}
|