Я использую buildpack для установки ghostscript 9.21 на Heroku. Из-за требования приложения, я должен использовать именно 9.21. Heroku теперь устанавливает для нас 9.26 по умолчанию, поэтому мне нужно переопределить его.
https://github.com/brandoncc/heroku-buildpack-ghostscript/blob/master/bin/compile
- это мой скрипт компиляции:
#!/usr/bin/env bash
# bin/compile <build-dir> <cache-dir>
echo "-----> Installing Ghostscript 9.21"
BUILD_DIR=$1
PACKAGE="https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs921/ghostscript-9.21-linux-x86_64.tgz"
BINARY="ghostscript-9.21-linux-x86_64/gs-921-linux-x86_64"
LOCATION="$BUILD_DIR/vendor/gs/bin"
mkdir -p $LOCATION
curl $PACKAGE -L -s -o - | tar xzf - -C $LOCATION
mv $LOCATION/$BINARY $LOCATION/gs
echo "-----> Building runtime environment for Ghostscript"
mkdir -p $BUILD_DIR/.profile.d
echo "export PATH=\"\$HOME/vendor/gs/bin:\$PATH\"" >
$BUILD_DIR/.profile.d/ghostscript.sh
Проблема в том, что независимо от того, что я делаю, я не могу получить более высокий приоритет, чем /usr/bin
в PATH
:
/ приложение / поставщик / пакет / рубин / 2.5.0 / бен: / приложение / бен: / приложение / поставщик / VIPs / бен: /app/.apt/usr/bin: / USR / местные / бен: / USR / бен: / бен: / TMP / кодон / поставщик / бен: / приложение / поставщик / пакет / бен: /app/.heroku/node/bin: /app/.heroku/yarn/bin: / приложение / продавец / гс / бен: /app/node_modules/.bin
Что я могу сделать, чтобы использовать версию, которую пытаюсь использовать? Я мог бы упаковать двоичный файл с моим приложением, но это последний выбор, который я хотел бы использовать, так как мне нужно, чтобы приложение работало на Mac и Linux.