forked from mirrors/nixpkgs
googleearth-pro: Avoid dragging in stdenv
I noticed that my system closure contained duplicate of various packages, and traced it back to `googleearth-pro`. It included a `env-vars` file created by `stdenv` which pulled in lots of build tools, and it seems it was copied in `installPhase` by accident. By only copying the directories from the upstream package, the number of paths in the closure is reduced noticably: ```diff ~/build/nixpkgs $ diff -u <(nix-store --query -R result-before|wc -l) <(nix-store --query -R result|wc -l) --- /dev/fd/63 2023-04-23 14:31:22.653577750 +0200 +++ /dev/fd/62 2023-04-23 14:31:22.654577714 +0200 @@ -1 +1 @@ -396 +256 $ du -sch $(nix-store -qR result-before) | grep total 1.5G total $ du -sch $(nix-store -qR result) | grep total 894M total ```
This commit is contained in:
parent
9971ea9639
commit
dc97d2c264
|
@ -71,16 +71,17 @@ mkDerivation rec {
|
|||
|
||||
unpackPhase = ''
|
||||
# deb file contains a setuid binary, so 'dpkg -x' doesn't work here
|
||||
dpkg --fsys-tarfile ${src} | tar --extract
|
||||
mkdir deb
|
||||
dpkg --fsys-tarfile ${src} | tar --extract -C deb
|
||||
'';
|
||||
|
||||
installPhase =''
|
||||
runHook preInstall
|
||||
|
||||
mkdir $out
|
||||
mv usr/* $out/
|
||||
rmdir usr
|
||||
mv * $out/
|
||||
mv deb/usr/* $out/
|
||||
rmdir deb/usr
|
||||
mv deb/* $out/
|
||||
rm $out/bin/google-earth-pro $out/opt/google/earth/pro/googleearth
|
||||
|
||||
# patch and link googleearth binary
|
||||
|
|
Loading…
Reference in a new issue