Another cache dir

This commit is contained in:
Daniel Markstedt 2023-10-24 13:46:21 +00:00
parent 6dbef076b1
commit afdd3c0ae2
2 changed files with 12 additions and 9 deletions

View File

@ -153,15 +153,16 @@ function installPackagesWeb() {
# cache the pip packages # cache the pip packages
function cachePipPackages(){ function cachePipPackages(){
mkdir -p $HOME/.pip_cache CACHEDIR="$HOME/.cache/piscsi"
mkdir -p "$CACHEDIR" || exit 1
# Note: these need to be installed in source form ONLY. If the binary packages are installed, the architecture # Note: these need to be installed in source form ONLY. If the binary packages are installed, the architecture
# is selected based upon the building host architecture, not the target architecture. (so, if you're building # is selected based upon the building host architecture, not the target architecture. (so, if you're building
# a PiSCSI image on x86, pip will download x86 binaries, which aren't usefull on a Raspberry Pi # a PiSCSI image on x86, pip will download x86 binaries, which aren't usefull on a Raspberry Pi
python3 -m pip download --no-binary :all: --destination-directory $HOME/.pip_cache setuptools python3 -m pip download --no-binary :all: --destination-directory "$CACHEDIR" setuptools
python3 -m pip download --no-binary :all: --destination-directory $HOME/.pip_cache wheel python3 -m pip download --no-binary :all: --destination-directory "$CACHEDIR" wheel
python3 -m pip download --no-binary :all: --destination-directory $HOME/.pip_cache flit_core python3 -m pip download --no-binary :all: --destination-directory "$CACHEDIR" flit_core
python3 -m pip download --no-binary :all: --destination-directory $HOME/.pip_cache -r $WEB_INSTALL_PATH/requirements.txt python3 -m pip download --no-binary :all: --destination-directory "$CACHEDIR" -r $WEB_INSTALL_PATH/requirements.txt
python3 -m pip download --no-binary :all: --destination-directory $HOME/.pip_cache -r $CTRLBOARD_INSTALL_PATH/requirements.txt python3 -m pip download --no-binary :all: --destination-directory "$CACHEDIR" -r $CTRLBOARD_INSTALL_PATH/requirements.txt
# TODO: The OLED requirements.txt includes a circuit python package that doesn't work with non-binary # TODO: The OLED requirements.txt includes a circuit python package that doesn't work with non-binary
# pip3 download # pip3 download
} }

View File

@ -2,6 +2,8 @@
set -e set -e
# set -x # Uncomment to Debug # set -x # Uncomment to Debug
CACHEDIR="$HOME/.cache/piscsi"
cd "$(dirname "$0")" cd "$(dirname "$0")"
# verify packages installed # verify packages installed
ERROR=0 ERROR=0
@ -59,9 +61,9 @@ if ! test -e venv; then
echo "Activating venv" echo "Activating venv"
source venv/bin/activate source venv/bin/activate
echo "Installing requirements.txt" echo "Installing requirements.txt"
pip3 install wheel --no-index --find-links=$HOME/.pip_cache pip3 install wheel --no-index --find-links="$CACHEDIR"
# Reference: https://pip.pypa.io/en/latest/user_guide/#installing-from-local-packages # Reference: https://pip.pypa.io/en/latest/user_guide/#installing-from-local-packages
pip3 install -r requirements.txt --no-index --find-links=$HOME/.pip_cache pip3 install -r requirements.txt --no-index --find-links="$CACHEDIR"
if git rev-parse --is-inside-work-tree &> /dev/null; then if git rev-parse --is-inside-work-tree &> /dev/null; then
git rev-parse HEAD > current git rev-parse HEAD > current
@ -80,7 +82,7 @@ if [[ $? -eq 0 ]]; then
git rev-parse > current git rev-parse > current
elif [ "$(cat current)" != "$(git rev-parse HEAD)" ]; then elif [ "$(cat current)" != "$(git rev-parse HEAD)" ]; then
echo "New version detected, updating libraries from requirements.txt" echo "New version detected, updating libraries from requirements.txt"
pip3 install -r requirements.txt --no-index --find-links=$HOME/.pip_cache pip3 install -r requirements.txt --no-index --find-links="$CACHEDIR"
git rev-parse HEAD > current git rev-parse HEAD > current
fi fi
else else