mirror of
https://github.com/photoprism/photoprism.git
synced 2025-12-12 00:34:13 +01:00
Docker: Set explicit PATH in dist scripts #2125
This commit is contained in:
2
scripts/dist/Makefile
vendored
2
scripts/dist/Makefile
vendored
@@ -1,6 +1,8 @@
|
||||
# INSTALLS OPTIONAL PACKAGES AND DRIVERS IN DOCKER IMAGES
|
||||
# Maintainer: Michael Mayer <hello@photoprism.app>
|
||||
|
||||
export PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
intel-graphics: gpu
|
||||
install-intel-graphics: gpu
|
||||
install-davfs: davfs
|
||||
|
||||
4
scripts/dist/arch.sh
vendored
4
scripts/dist/arch.sh
vendored
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# This script returns the normalized machine architecture (amd64, arm64, or arm).
|
||||
# An error is returned if the architecture is currently not supported by PhotoPrism.
|
||||
|
||||
@@ -13,7 +15,7 @@ elif [[ $OS == "Windows_NT" ]]; then
|
||||
exit 1
|
||||
fi
|
||||
else
|
||||
SYSTEM_ARCH=$(/bin/uname -m)
|
||||
SYSTEM_ARCH=$(uname -m)
|
||||
fi
|
||||
|
||||
BUILD_ARCH=${BUILD_ARCH:-$SYSTEM_ARCH}
|
||||
|
||||
6
scripts/dist/audit.sh
vendored
6
scripts/dist/audit.sh
vendored
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
######################################## TEST STORAGE FOLDER PERMISSIONS ########################################
|
||||
|
||||
STORAGE_PATH=${PHOTOPRISM_STORAGE_PATH:-/photoprism/storage}
|
||||
@@ -9,12 +11,12 @@ DOC_URL="https://docs.photoprism.app/getting-started/troubleshooting/docker/#fil
|
||||
set -e
|
||||
|
||||
# create directory if not exists
|
||||
/bin/mkdir -p "${STORAGE_PATH}" || (echo "Failed creating storage folder \"$STORAGE_PATH\", see $DOC_URL" 1>&2; exit 1)
|
||||
mkdir -p "${STORAGE_PATH}" || (echo "Failed creating storage folder \"$STORAGE_PATH\", see $DOC_URL" 1>&2; exit 1)
|
||||
|
||||
# check directory permissions
|
||||
[[ -w "${STORAGE_PATH}" ]] || \
|
||||
(echo "Storage folder \"$STORAGE_PATH\" is not writable, see $DOC_URL" 1>&2; exit 1)
|
||||
|
||||
# create and delete test file
|
||||
(/usr/bin/touch "${STORAGE_PATH}/is-writable" 2>/dev/null && rm "${STORAGE_PATH}/is-writable") || \
|
||||
(touch "${STORAGE_PATH}/is-writable" 2>/dev/null && rm "${STORAGE_PATH}/is-writable") || \
|
||||
(echo "Failed creating test file in storage folder, see $DOC_URL" 1>&2; exit 1)
|
||||
|
||||
26
scripts/dist/cleanup.sh
vendored
26
scripts/dist/cleanup.sh
vendored
@@ -1,7 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(/usr/bin/id -u) != "0" ]]; then
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
@@ -9,21 +11,21 @@ fi
|
||||
set -o errexit
|
||||
|
||||
if [[ ! -d /tmp ]]; then
|
||||
/bin/mkdir /tmp
|
||||
mkdir /tmp
|
||||
fi
|
||||
|
||||
/bin/chmod 1777 /tmp
|
||||
chmod 1777 /tmp
|
||||
|
||||
/usr/bin/apt-get -y autoremove
|
||||
/usr/bin/apt-get -y autoclean
|
||||
/bin/rm -rf /var/lib/apt/lists/*
|
||||
/bin/rm -rf /tmp/* /var/tmp/*
|
||||
apt-get -y autoremove
|
||||
apt-get -y autoclean
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
rm -rf /tmp/* /var/tmp/*
|
||||
history -c
|
||||
/bin/cat /dev/null > /root/.bash_history
|
||||
cat /dev/null > /root/.bash_history
|
||||
unset HISTFILE
|
||||
/usr/bin/find /var/log -mtime -1 -type f -exec truncate -s 0 {} \;
|
||||
/bin/rm -rf /var/log/*.gz /var/log/*.log /var/log/*.[0-9] /var/log/*-????????
|
||||
/bin/rm -rf /var/lib/cloud/instances/*
|
||||
/bin/rm -f /root/.ssh/* /etc/ssh/*key*
|
||||
find /var/log -mtime -1 -type f -exec truncate -s 0 {} \;
|
||||
rm -rf /var/log/*.gz /var/log/*.log /var/log/*.[0-9] /var/log/*-????????
|
||||
rm -rf /var/lib/cloud/instances/*
|
||||
rm -f /root/.ssh/* /etc/ssh/*key*
|
||||
|
||||
echo "Done."
|
||||
|
||||
10
scripts/dist/dist-upgrade.sh
vendored
10
scripts/dist/dist-upgrade.sh
vendored
@@ -1,7 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(/usr/bin/id -u) != "0" ]]; then
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
@@ -13,8 +15,8 @@ set -eu
|
||||
export DEBIAN_FRONTEND="noninteractive"
|
||||
export TMPDIR="/tmp"
|
||||
|
||||
/usr/bin/apt-get -y update
|
||||
/usr/bin/apt-get -y dist-upgrade
|
||||
/usr/bin/apt-get -y autoremove
|
||||
apt-get -y update
|
||||
apt-get -y dist-upgrade
|
||||
apt-get -y autoremove
|
||||
|
||||
echo "Done."
|
||||
19
scripts/dist/entrypoint-init.sh
vendored
19
scripts/dist/entrypoint-init.sh
vendored
@@ -1,9 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
# INITIALIZES CONTAINER PACKAGES AND PERMISSIONS
|
||||
export PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(/usr/bin/id -u) != "0" ]]; then
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
@@ -42,20 +43,20 @@ if [[ ${PHOTOPRISM_UID} =~ $re ]] && [[ ${PHOTOPRISM_UID} != "0" ]]; then
|
||||
|
||||
if [[ ${PHOTOPRISM_UID} -ge 500 ]]; then
|
||||
if [[ ${PHOTOPRISM_GID} =~ $re ]] && [[ ${PHOTOPRISM_GID} != "0" ]] && [[ ${PHOTOPRISM_GID} -ge 500 ]]; then
|
||||
/usr/sbin/groupadd -g "${PHOTOPRISM_GID}" "group_${PHOTOPRISM_GID}" 2>/dev/null
|
||||
/usr/sbin/useradd -o -u "${PHOTOPRISM_UID}" -g "${PHOTOPRISM_GID}" -d "/photoprism" "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
/usr/sbin/usermod -g "${PHOTOPRISM_GID}" "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
groupadd -g "${PHOTOPRISM_GID}" "group_${PHOTOPRISM_GID}" 2>/dev/null
|
||||
useradd -o -u "${PHOTOPRISM_UID}" -g "${PHOTOPRISM_GID}" -d "/photoprism" "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
usermod -g "${PHOTOPRISM_GID}" "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
else
|
||||
/usr/sbin/useradd -o -u "${PHOTOPRISM_UID}" -g 1000 -d "/photoprism" "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
/usr/sbin/usermod -g 1000 "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
useradd -o -u "${PHOTOPRISM_UID}" -g 1000 -d "/photoprism" "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
usermod -g 1000 "user_${PHOTOPRISM_UID}" 2>/dev/null
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ ${CHOWN} ]] && [[ -z ${PHOTOPRISM_DISABLE_CHOWN} ]]; then
|
||||
echo "init: updating filesystem permissions"
|
||||
echo "note: PHOTOPRISM_DISABLE_CHOWN=\"true\" disables permission updates"
|
||||
/bin/chown --preserve-root -Rcf "${CHOWN}" "${CHOWN_DIRS[@]}"
|
||||
/bin/chmod --preserve-root -Rcf u+rwX "${CHMOD_DIRS[@]}"
|
||||
chown --preserve-root -Rcf "${CHOWN}" "${CHOWN_DIRS[@]}"
|
||||
chmod --preserve-root -Rcf u+rwX "${CHMOD_DIRS[@]}"
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -70,7 +71,7 @@ INIT_LOCK="/scripts/.init-lock"
|
||||
if [[ ! -e ${INIT_LOCK} ]]; then
|
||||
for INIT_TARGET in $PHOTOPRISM_INIT; do
|
||||
echo "init: $INIT_TARGET"
|
||||
/usr/bin/make -C "$INIT_SCRIPTS" "$INIT_TARGET"
|
||||
make -C "$INIT_SCRIPTS" "$INIT_TARGET"
|
||||
done
|
||||
|
||||
echo 1 >${INIT_LOCK}
|
||||
|
||||
1
scripts/dist/entrypoint.sh
vendored
1
scripts/dist/entrypoint.sh
vendored
@@ -7,6 +7,7 @@ re='^[0-9]+$'
|
||||
export PHOTOPRISM_ARCH=${PHOTOPRISM_ARCH:-arch}
|
||||
export DOCKER_ENV=${DOCKER_ENV:-unknown}
|
||||
export DOCKER_TAG=${DOCKER_TAG:-unknown}
|
||||
export PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# detect environment
|
||||
case $DOCKER_ENV in
|
||||
|
||||
12
scripts/dist/install-chrome.sh
vendored
12
scripts/dist/install-chrome.sh
vendored
@@ -1,12 +1,14 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SYSTEM_ARCH=$("$(/usr/bin/dirname "$0")/arch.sh")
|
||||
SYSTEM_ARCH=$("$(dirname "$0")/arch.sh")
|
||||
DESTARCH=${2:-$SYSTEM_ARCH}
|
||||
. /etc/os-release
|
||||
|
||||
@@ -19,9 +21,9 @@ echo "Installing Google Chrome (stable) on ${ID} for ${DESTARCH^^}..."
|
||||
|
||||
set -e
|
||||
|
||||
/usr/bin/wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | /usr/bin/apt-key add -
|
||||
/bin/sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq install google-chrome-stable
|
||||
wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add -
|
||||
sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
|
||||
apt-get update
|
||||
apt-get -qq install google-chrome-stable
|
||||
|
||||
echo "Done."
|
||||
28
scripts/dist/install-darktable.sh
vendored
28
scripts/dist/install-darktable.sh
vendored
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
@@ -8,7 +10,7 @@ fi
|
||||
|
||||
set -e
|
||||
|
||||
SYSTEM_ARCH=$("$(/usr/bin/dirname "$0")/arch.sh")
|
||||
SYSTEM_ARCH=$("$(dirname "$0")/arch.sh")
|
||||
DESTARCH=${2:-$SYSTEM_ARCH}
|
||||
|
||||
. /etc/os-release
|
||||
@@ -18,29 +20,29 @@ echo "Installing Darktable for ${DESTARCH^^}..."
|
||||
if [[ $DESTARCH == "amd64" ]]; then
|
||||
if [[ $VERSION_CODENAME == "bullseye" ]]; then
|
||||
echo 'deb http://download.opensuse.org/repositories/graphics:/darktable/Debian_11/ /' | /usr/bin/tee /etc/apt/sources.list.d/graphics:darktable.list
|
||||
/usr/bin/curl -fsSL https://download.opensuse.org/repositories/graphics:darktable/Debian_11/Release.key | gpg --dearmor | /usr/bin/tee /etc/apt/trusted.gpg.d/graphics_darktable.gpg > /dev/null
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq install darktable
|
||||
curl -fsSL https://download.opensuse.org/repositories/graphics:darktable/Debian_11/Release.key | gpg --dearmor | /usr/bin/tee /etc/apt/trusted.gpg.d/graphics_darktable.gpg > /dev/null
|
||||
apt-get update
|
||||
apt-get -qq install darktable
|
||||
elif [[ $VERSION_CODENAME == "buster" ]]; then
|
||||
echo 'deb http://download.opensuse.org/repositories/graphics:/darktable/Debian_10/ /' | /usr/bin/tee /etc/apt/sources.list.d/graphics:darktable.list
|
||||
/usr/bin/curl -fsSL https://download.opensuse.org/repositories/graphics:darktable/Debian_10/Release.key | gpg --dearmor | /usr/bin/tee /etc/apt/trusted.gpg.d/graphics_darktable.gpg > /dev/null
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq install darktable
|
||||
curl -fsSL https://download.opensuse.org/repositories/graphics:darktable/Debian_10/Release.key | gpg --dearmor | /usr/bin/tee /etc/apt/trusted.gpg.d/graphics_darktable.gpg > /dev/null
|
||||
apt-get update
|
||||
apt-get -qq install darktable
|
||||
else
|
||||
echo "install-darktable: installing standard amd64 (Intel 64-bit) package"
|
||||
/usr/bin/apt-get -qq install darktable
|
||||
apt-get -qq install darktable
|
||||
fi
|
||||
echo "Done."
|
||||
elif [[ $DESTARCH == "arm64" ]]; then
|
||||
if [[ $VERSION_CODENAME == "bullseye" ]]; then
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq install -t bullseye-backports darktable
|
||||
apt-get update
|
||||
apt-get -qq install -t bullseye-backports darktable
|
||||
elif [[ $VERSION_CODENAME == "buster" ]]; then
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq install -t buster-backports darktable
|
||||
apt-get update
|
||||
apt-get -qq install -t buster-backports darktable
|
||||
else
|
||||
echo "install-darktable: installing standard amd64 (ARM 64-bit) package"
|
||||
/usr/bin/apt-get -qq install darktable
|
||||
apt-get -qq install darktable
|
||||
fi
|
||||
echo "Done."
|
||||
else
|
||||
|
||||
6
scripts/dist/install-davfs.sh
vendored
6
scripts/dist/install-davfs.sh
vendored
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
@@ -8,7 +10,7 @@ fi
|
||||
|
||||
echo "Installing WebDAV filesystem driver..."
|
||||
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq install davfs2
|
||||
apt-get update
|
||||
apt-get -qq install davfs2
|
||||
|
||||
echo "Done."
|
||||
21
scripts/dist/install-go.sh
vendored
21
scripts/dist/install-go.sh
vendored
@@ -1,8 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
GOLANG_VERSION=1.18
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
DESTDIR=$(/usr/bin/realpath "${1:-/usr/local}")
|
||||
GOLANG_VERSION=1.18
|
||||
DESTDIR=$(realpath "${1:-/usr/local}")
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
@@ -14,11 +15,11 @@ echo "Installing Go in \"$DESTDIR\"..."
|
||||
|
||||
set -e
|
||||
|
||||
/bin/mkdir -p "$DESTDIR"
|
||||
|
||||
SYSTEM_ARCH=$("$(/usr/bin/dirname "$0")/arch.sh")
|
||||
SYSTEM_ARCH=$("$(dirname "$0")/arch.sh")
|
||||
DESTARCH=${2:-$SYSTEM_ARCH}
|
||||
|
||||
mkdir -p "$DESTDIR"
|
||||
|
||||
set -eux;
|
||||
|
||||
if [[ $DESTARCH == "amd64" ]]; then
|
||||
@@ -37,11 +38,11 @@ fi
|
||||
|
||||
echo "Downloading Go from \"$URL\". Please wait."
|
||||
|
||||
/usr/bin/wget -O go.tgz $URL
|
||||
echo "$CHECKSUM" | /usr/bin/sha256sum -c -
|
||||
/bin/rm -rf /usr/local/go
|
||||
/bin/tar -C /usr/local -xzf go.tgz
|
||||
/bin/rm go.tgz
|
||||
wget -O go.tgz $URL
|
||||
echo "$CHECKSUM" | sha256sum -c -
|
||||
rm -rf /usr/local/go
|
||||
tar -C /usr/local -xzf go.tgz
|
||||
rm go.tgz
|
||||
|
||||
/usr/local/go/bin/go version
|
||||
|
||||
|
||||
16
scripts/dist/install-gpu.sh
vendored
16
scripts/dist/install-gpu.sh
vendored
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Error: Run ${0##*/} as root" 1>&2
|
||||
@@ -8,7 +10,7 @@ fi
|
||||
|
||||
set -e
|
||||
|
||||
SYSTEM_ARCH=$("$(/usr/bin/dirname "$0")/arch.sh")
|
||||
SYSTEM_ARCH=$("$(dirname "$0")/arch.sh")
|
||||
DESTARCH=${DESTARCH:-$SYSTEM_ARCH}
|
||||
TMPDIR=${TMPDIR:-/tmp}
|
||||
. /etc/os-release
|
||||
@@ -18,22 +20,22 @@ if [[ $DESTARCH != "amd64" ]]; then
|
||||
exit
|
||||
fi
|
||||
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq upgrade
|
||||
/usr/bin/apt-get -qq install lshw jq
|
||||
apt-get update
|
||||
apt-get -qq upgrade
|
||||
apt-get -qq install lshw jq
|
||||
|
||||
# shellcheck disable=SC2207
|
||||
GPU_DETECTED=($(/usr/bin/lshw -c display -json 2>/dev/null | /usr/bin/jq -r '.[].configuration.driver'))
|
||||
GPU_DETECTED=($(lshw -c display -json 2>/dev/null | jq -r '.[].configuration.driver'))
|
||||
|
||||
# shellcheck disable=SC2068
|
||||
for t in ${GPU_DETECTED[@]}; do
|
||||
case $t in
|
||||
i915)
|
||||
/usr/bin/apt-get -qq install intel-opencl-icd intel-media-va-driver-non-free i965-va-driver-shaders libmfx1 libva2 vainfo libva-wayland2
|
||||
apt-get -qq install intel-opencl-icd intel-media-va-driver-non-free i965-va-driver-shaders libmfx1 libva2 vainfo libva-wayland2
|
||||
;;
|
||||
|
||||
nvidia)
|
||||
/usr/bin/apt-get -qq install nvidia-opencl-icd nvidia-vdpau-driver nvidia-driver-libs nvidia-kernel-dkms libva2 vainfo libva-wayland2
|
||||
apt-get -qq install nvidia-opencl-icd nvidia-vdpau-driver nvidia-driver-libs nvidia-kernel-dkms libva2 vainfo libva-wayland2
|
||||
;;
|
||||
|
||||
*)
|
||||
|
||||
8
scripts/dist/install-mariadb.sh
vendored
8
scripts/dist/install-mariadb.sh
vendored
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
@@ -17,12 +19,12 @@ SETUP_URL="https://downloads.mariadb.com/MariaDB/mariadb_repo_setup"
|
||||
|
||||
if [ ! -f "/etc/apt/sources.list.d/mariadb.list" ]; then
|
||||
echo "Adding MariaDB packages sources from \"$SETUP_URL\"..."
|
||||
/usr/bin/curl -Ls $SETUP_URL | /bin/bash -s -- --mariadb-server-version="mariadb-10.6"
|
||||
curl -Ls $SETUP_URL | bash -s -- --mariadb-server-version="mariadb-10.6"
|
||||
fi
|
||||
|
||||
echo "Installing \"$1\"..."
|
||||
|
||||
/usr/bin/apt-get update
|
||||
/usr/bin/apt-get -qq install $1
|
||||
apt-get update
|
||||
apt-get -qq install $1
|
||||
|
||||
echo "Done."
|
||||
6
scripts/dist/install-nodejs.sh
vendored
6
scripts/dist/install-nodejs.sh
vendored
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
# abort if not executed as root
|
||||
if [[ $(id -u) != "0" ]]; then
|
||||
echo "Usage: run ${0##*/} as root" 1>&2
|
||||
@@ -12,8 +14,8 @@ SETUP_URL="https://deb.nodesource.com/setup_16.x"
|
||||
|
||||
echo "Installing NodeJS and NPM from \"$SETUP_URL\"..."
|
||||
|
||||
/usr/bin/curl -sL $SETUP_URL | /bin/bash -
|
||||
/usr/bin/apt-get update && /usr/bin/apt-get -qq install nodejs
|
||||
curl -sL $SETUP_URL | bash -
|
||||
apt-get update && apt-get -qq install nodejs
|
||||
npm install --unsafe-perm=true --allow-root -g npm testcafe
|
||||
npm config set cache ~/.cache/npm
|
||||
|
||||
|
||||
16
scripts/dist/install-tensorflow.sh
vendored
16
scripts/dist/install-tensorflow.sh
vendored
@@ -1,17 +1,19 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
|
||||
set -e
|
||||
|
||||
TF_VERSION=${TF_VERSION:-1.15.2}
|
||||
|
||||
SYSTEM_ARCH=$("$(/usr/bin/dirname "$0")/arch.sh")
|
||||
SYSTEM_ARCH=$("$(dirname "$0")/arch.sh")
|
||||
DESTARCH=${DESTARCH:-$SYSTEM_ARCH}
|
||||
|
||||
if [[ $1 == "auto" ]]; then
|
||||
TF_DRIVER="auto";
|
||||
DESTDIR="/usr";
|
||||
else
|
||||
DESTDIR=$(/usr/bin/realpath "${1:-/usr}")
|
||||
DESTDIR=$(realpath "${1:-/usr}")
|
||||
fi
|
||||
|
||||
TMPDIR=${TMPDIR:-/tmp}
|
||||
@@ -26,7 +28,7 @@ fi
|
||||
|
||||
if [[ $TF_DRIVER == "auto" ]]; then
|
||||
echo "Detecting driver..."
|
||||
TF_DRIVER=$("$(/usr/bin/dirname "$0")/tensorflow-driver.sh")
|
||||
TF_DRIVER=$("$(dirname "$0")/tensorflow-driver.sh")
|
||||
fi
|
||||
|
||||
if [[ -z $TF_DRIVER ]]; then
|
||||
@@ -40,13 +42,13 @@ fi
|
||||
if [ ! -f "$TMPDIR/$INSTALL_FILE" ]; then
|
||||
URL="https://dl.photoprism.app/tensorflow/${INSTALL_FILE}"
|
||||
echo "Downloading ${DESTARCH} libs from \"$URL\". Please wait."
|
||||
/usr/bin/curl --create-dirs -fsSL -o "$TMPDIR/$INSTALL_FILE" "$URL"
|
||||
curl --create-dirs -fsSL -o "$TMPDIR/$INSTALL_FILE" "$URL"
|
||||
fi
|
||||
|
||||
echo "Extracting \"$TMPDIR/$INSTALL_FILE\" to \"$DESTDIR\"."
|
||||
|
||||
if [ -f "$TMPDIR/$INSTALL_FILE" ]; then
|
||||
/bin/tar --overwrite --mode=755 -C "$DESTDIR" -xzf "$TMPDIR/$INSTALL_FILE"
|
||||
tar --overwrite --mode=755 -C "$DESTDIR" -xzf "$TMPDIR/$INSTALL_FILE"
|
||||
else
|
||||
echo "Fatal: \"$TMPDIR/$INSTALL_FILE\" not found"
|
||||
exit 1
|
||||
@@ -54,10 +56,10 @@ fi
|
||||
|
||||
if [[ $DESTDIR == "/usr" || $DESTDIR == "/usr/local" ]]; then
|
||||
echo "Running \"ldconfig\"."
|
||||
/sbin/ldconfig
|
||||
ldconfig
|
||||
else
|
||||
echo "Running \"ldconfig -n $DESTDIR/lib\"."
|
||||
/sbin/ldconfig -n "$DESTDIR/lib"
|
||||
ldconfig -n "$DESTDIR/lib"
|
||||
fi
|
||||
|
||||
echo "Done."
|
||||
|
||||
5
scripts/dist/tensorflow-driver.sh
vendored
5
scripts/dist/tensorflow-driver.sh
vendored
@@ -1,9 +1,10 @@
|
||||
#!/bin/bash
|
||||
|
||||
PATH="/usr/local/sbin/:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/scripts"
|
||||
CPU_DETECTED=$(/usr/bin/lshw -c processor -json 2>/dev/null)
|
||||
|
||||
if [[ $(echo "${CPU_DETECTED}" | /usr/bin/jq -r '.[].capabilities.avx2') == "true" ]]; then
|
||||
if [[ $(echo "${CPU_DETECTED}" | jq -r '.[].capabilities.avx2') == "true" ]]; then
|
||||
echo "avx2"
|
||||
elif [[ $(echo "${CPU_DETECTED}" | /usr/bin/jq -r '.[].capabilities.avx') == "true" ]]; then
|
||||
elif [[ $(echo "${CPU_DETECTED}" | jq -r '.[].capabilities.avx') == "true" ]]; then
|
||||
echo "avx"
|
||||
fi
|
||||
Reference in New Issue
Block a user