mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-01-19 23:03:45 +01:00
Otherwise, a possible failure is silently ignored. Also, rename the file, while touching it, to clarify installing is the first step.
60 lines
1.8 KiB
Bash
Executable File
60 lines
1.8 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# Copyright (c) 2018-present The Bitcoin Core developers
|
|
# Distributed under the MIT software license, see the accompanying
|
|
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
|
|
export LC_ALL=C
|
|
|
|
set -o errexit -o pipefail -o xtrace
|
|
|
|
export CI_RETRY_EXE="/ci_retry --"
|
|
|
|
pushd "/"
|
|
|
|
${CI_RETRY_EXE} apt-get update
|
|
# Lint dependencies:
|
|
# - cargo (used to run the lint tests)
|
|
# - curl/xz-utils (to install shellcheck)
|
|
# - git (used in many lint scripts)
|
|
# - gpg (used by verify-commits)
|
|
${CI_RETRY_EXE} apt-get install -y cargo curl xz-utils git gpg
|
|
|
|
PYTHON_PATH="/python_build"
|
|
if [ ! -d "${PYTHON_PATH}/bin" ]; then
|
|
(
|
|
${CI_RETRY_EXE} git clone --depth=1 https://github.com/pyenv/pyenv.git
|
|
cd pyenv/plugins/python-build || exit 1
|
|
./install.sh
|
|
)
|
|
# For dependencies see https://github.com/pyenv/pyenv/wiki#suggested-build-environment
|
|
${CI_RETRY_EXE} apt-get install -y build-essential libssl-dev zlib1g-dev \
|
|
libbz2-dev libreadline-dev libsqlite3-dev curl llvm \
|
|
libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev \
|
|
clang
|
|
env CC=clang python-build "$(cat "/.python-version")" "${PYTHON_PATH}"
|
|
fi
|
|
export PATH="${PYTHON_PATH}/bin:${PATH}"
|
|
command -v python3
|
|
python3 --version
|
|
|
|
${CI_RETRY_EXE} pip3 install \
|
|
codespell==2.4.1 \
|
|
lief==0.16.6 \
|
|
mypy==1.4.1 \
|
|
pyzmq==25.1.0 \
|
|
ruff==0.5.5 \
|
|
vulture==2.6
|
|
|
|
SHELLCHECK_VERSION=v0.8.0
|
|
curl -sL "https://github.com/koalaman/shellcheck/releases/download/${SHELLCHECK_VERSION}/shellcheck-${SHELLCHECK_VERSION}.linux.x86_64.tar.xz" | \
|
|
tar --xz -xf - --directory /tmp/
|
|
mv "/tmp/shellcheck-${SHELLCHECK_VERSION}/shellcheck" /usr/bin/
|
|
|
|
MLC_VERSION=v0.19.0
|
|
MLC_BIN=mlc-x86_64-linux
|
|
curl -sL "https://github.com/becheran/mlc/releases/download/${MLC_VERSION}/${MLC_BIN}" -o "/usr/bin/mlc"
|
|
chmod +x /usr/bin/mlc
|
|
|
|
popd || exit
|