mirror of
https://github.com/ElementsProject/lightning.git
synced 2024-11-19 09:54:16 +01:00
85 lines
2.5 KiB
Bash
Executable File
85 lines
2.5 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
export BITCOIN_VERSION=24.1
|
|
export ELEMENTS_VERSION=22.0.2
|
|
export RUST_VERSION=stable
|
|
|
|
sudo useradd -ms /bin/bash tester
|
|
sudo apt-get update -qq
|
|
|
|
sudo apt-get -qq install --no-install-recommends --allow-unauthenticated -yy \
|
|
autoconf \
|
|
automake \
|
|
binfmt-support \
|
|
build-essential \
|
|
clang \
|
|
cppcheck \
|
|
docbook-xml \
|
|
eatmydata \
|
|
gcc-aarch64-linux-gnu \
|
|
gcc-arm-linux-gnueabihf \
|
|
gcc-arm-none-eabi \
|
|
gettext \
|
|
git \
|
|
libc6-dev-arm64-cross \
|
|
libc6-dev-armhf-cross \
|
|
libgmp-dev \
|
|
libpq-dev \
|
|
libprotobuf-c-dev \
|
|
libsqlite3-dev \
|
|
libtool \
|
|
libxml2-utils \
|
|
locales \
|
|
net-tools \
|
|
postgresql \
|
|
python-pkg-resources \
|
|
python3 \
|
|
python3-dev \
|
|
python3-pip \
|
|
python3-setuptools \
|
|
qemu \
|
|
qemu-system-arm \
|
|
qemu-user-static \
|
|
shellcheck \
|
|
software-properties-common \
|
|
sudo \
|
|
tcl \
|
|
unzip \
|
|
valgrind \
|
|
wget \
|
|
xsltproc \
|
|
zlib1g-dev
|
|
|
|
echo "tester ALL=(root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/tester
|
|
sudo chmod 0440 /etc/sudoers.d/tester
|
|
|
|
(
|
|
cd /tmp/ || exit 1
|
|
wget https://bitcoincore.org/bin/bitcoin-core-${BITCOIN_VERSION}/bitcoin-${BITCOIN_VERSION}-x86_64-linux-gnu.tar.gz
|
|
wget https://github.com/ElementsProject/elements/releases/download/elements-${ELEMENTS_VERSION}/elements-${ELEMENTS_VERSION}-x86_64-linux-gnu.tar.gz
|
|
tar -xf bitcoin-${BITCOIN_VERSION}-x86_64-linux-gnu.tar.gz
|
|
tar -xf elements-${ELEMENTS_VERSION}-x86_64-linux-gnu.tar.gz
|
|
sudo mv bitcoin-${BITCOIN_VERSION}/bin/* /usr/local/bin
|
|
sudo mv elements-${ELEMENTS_VERSION}/bin/* /usr/local/bin
|
|
rm -rf \
|
|
bitcoin-${BITCOIN_VERSION}-x86_64-linux-gnu.tar.gz \
|
|
bitcoin-${BITCOIN_VERSION} \
|
|
elements-${ELEMENTS_VERSION}-x86_64-linux-gnu.tar.gz \
|
|
elements-${ELEMENTS_VERSION}
|
|
)
|
|
|
|
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- \
|
|
-y --default-toolchain ${RUST_VERSION}
|
|
|
|
# We also need a relatively recent protobuf-compiler, at least 3.12.0,
|
|
# in order to support the experimental `optional` flag.
|
|
PROTOC_VERSION=3.15.8
|
|
PB_REL="https://github.com/protocolbuffers/protobuf/releases"
|
|
curl -LO $PB_REL/download/v${PROTOC_VERSION}/protoc-${PROTOC_VERSION}-linux-x86_64.zip
|
|
sudo unzip protoc-3.15.8-linux-x86_64.zip -d /usr/local/
|
|
sudo chmod a+x /usr/local/bin/protoc
|
|
export PROTOC=/usr/local/bin/protoc
|
|
export PATH=$PATH:/usr/local/bin
|
|
env
|
|
ls -lha /usr/local/bin |