@@ -5,12 +5,9 @@ FROM ubuntu:24.04
5
5
ENV DEBIAN_FRONTEND=noninteractive
6
6
7
7
RUN apt-get update && apt-get upgrade -qy && apt-get install -qy \
8
- apt-utils \
9
- ca-certificates\
10
- locales \
11
8
clang \
12
9
clang-tools \
13
- clang-format \
10
+ llvm \
14
11
lld \
15
12
cmake \
16
13
curl \
@@ -21,17 +18,12 @@ RUN apt-get update && apt-get upgrade -qy && apt-get install -qy \
21
18
libcmocka0 \
22
19
libcmocka-dev \
23
20
make \
24
- protobuf-compiler \
25
- python-is-python3 \
26
21
python3 \
27
22
python3-pip \
28
- python3-pyqt5 \
29
23
nodejs \
30
24
npm \
31
25
fish \
32
- gcc-arm-linux-gnueabihf \
33
- qemu-user-static \
34
- gdb-multiarch && \
26
+ qemu-user-static && \
35
27
apt-get autoclean -y && \
36
28
apt-get autoremove -y && \
37
29
apt-get clean
@@ -95,6 +87,37 @@ ENV BOLOS_SDK=$NANOS_SDK
95
87
96
88
RUN pip3 install --no-cache-dir --break-system-packages ledgerblue speculos==0.9.0
97
89
90
+ ARG RUST_STABLE_VERSION=1.75.0
91
+ ARG RUST_NIGHTLY_VERSION=nightly-2023-11-10
92
+ ENV RUST_STABLE=$RUST_STABLE_VERSION
93
+ ENV RUST_NIGHTLY=$RUST_NIGHTLY_VERSION
94
+
95
+ ENV CARGO_HOME=/opt/.cargo
96
+ ENV RUSTUP_HOME=/opt/rustup
97
+ # Adding cargo binaries to PATH
98
+ ENV PATH=${CARGO_HOME}/bin:${PATH}
99
+
100
+ # Installing rustup to manage rust toolchains and setting the default toolchain to the RUST_STABLE_VERSION stable channel.
101
+ RUN curl https://sh.rustup.rs -sSf | \
102
+ sh -s -- --default-toolchain $RUST_STABLE_VERSION -y
103
+
104
+ # Installing nightly channel version RUST_NIGHTLY_VERSION
105
+ RUN rustup install $RUST_NIGHTLY_VERSION
106
+
107
+ # Adding ARMV6M target to the installed stable toolchain
108
+ RUN rustup target add thumbv6m-none-eabi --toolchain $RUST_STABLE_VERSION
109
+ RUN rustup target add thumbv6m-none-eabi --toolchain $RUST_NIGHTLY_VERSION
110
+
111
+ # Adding rust-src component to nightly and stable channels
112
+ RUN rustup component add rust-src --toolchain $RUST_NIGHTLY_VERSION
113
+ RUN rustup component add rust-src --toolchain $RUST_STABLE_VERSION
114
+
115
+ # Add cargo ledger
116
+ RUN cargo +$RUST_STABLE_VERSION install --version 1.3.0 cargo-ledger
117
+
118
+ # Setup cargo ledger (install JSON target files and custom link script)
119
+ RUN cargo +$RUST_NIGHTLY_VERSION ledger setup
120
+
98
121
# Switch back to dialog for any ad-hoc use of apt-get
99
122
ENV DEBIAN_FRONTEND=
100
123
0 commit comments