xdg-utils: add missing dependencies

- Add coreutils to PATH, because the xdg scripts use other not yet
  provided coreutils like head.
  This makes the custom 'cut' and 'sort' functions obsolete.
  Remove double quotes around $out because $out contains no Bash field separators.
- Replace all instances of 'which' with 'type -P'.
  The previous sed command only replaced instances with a leading space.
This commit is contained in:
Erik Arvstedt 2020-08-16 23:04:18 +02:00
parent 397b14642b
commit 68559e2820
No known key found for this signature in database
GPG Key ID: 33312B944DD97846

View File

@ -36,17 +36,15 @@ stdenv.mkDerivation rec {
cp ${mimisrc}/xdg-open $out/bin/xdg-open
'' + ''
sed '2s#.#\
cut() { ${coreutils}/bin/cut "$@"; }\
sed() { ${gnused}/bin/sed "$@"; }\
grep() { ${gnugrep}/bin/grep "$@"; }\
egrep() { ${gnugrep}/bin/egrep "$@"; }\
file() { ${file}/bin/file "$@"; }\
awk() { ${gawk}/bin/awk "$@"; }\
sort() { ${coreutils}/bin/sort "$@"; }\
xset() { ${xset}/bin/xset "$@"; }\
perl() { PERL5LIB=${perlPath} ${perlPackages.perl}/bin/perl "$@"; }\
mimetype() { ${perlPackages.FileMimeInfo}/bin/mimetype "$@"; }\
PATH=$PATH:'"$out"'/bin\
PATH=$PATH:'$out'/bin:${coreutils}/bin\
&#' -i "$out"/bin/*
substituteInPlace $out/bin/xdg-open \
@ -58,7 +56,7 @@ stdenv.mkDerivation rec {
substituteInPlace $out/bin/xdg-email \
--replace "/bin/echo" "${coreutils}/bin/echo"
sed 's# which # type -P #g' -i "$out"/bin/*
sed 's|\bwhich\b|type -P|g' -i "$out"/bin/*
'';
meta = with stdenv.lib; {