Fix: Dockerfile.devuan now based on Dockerfile.
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, bookworm) (push) Failing after 4m4s
Details
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, bullseye) (push) Failing after 4m10s
Details
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, sid) (push) Failing after 5m27s
Details
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, trixie) (push) Failing after 5m26s
Details
sd-card-images CI / build docker images (push) Has been skipped
Details
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, bookworm) (push) Failing after 4m4s
Details
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, bullseye) (push) Failing after 4m10s
Details
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, sid) (push) Failing after 5m27s
Details
sd-card-images CI / test ${{ matrix.os }} ${{ matrix.arch }} ${{ matrix.suite }} (i386, debian, trixie) (push) Failing after 5m26s
Details
sd-card-images CI / build docker images (push) Has been skipped
Details
README_devuan.md
This commit is contained in:
parent
e475fd11ac
commit
7376f17860
|
|
@ -0,0 +1,79 @@
|
||||||
|
FROM public.ecr.aws/ubuntu/ubuntu:24.04
|
||||||
|
ENV DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
# Need Devuan's debootstrap, which also supports Debian and Ubuntu.
|
||||||
|
ARG RELEASE_KEY="94532124541922FB" # ceres key - https://www.devuan.org/os/keyring
|
||||||
|
RUN echo "Adding Devuan ceres signing key (https://www.devuan.org/os/keyring):" ${RELEASE_KEY}
|
||||||
|
RUN echo 'deb http://deb.devuan.org/merged ceres main contrib non-free' > /etc/apt/sources.list.d/devuan.list && \
|
||||||
|
echo 'deb-src http://deb.devuan.org/merged ceres main contrib non-free' >> /etc/apt/sources.list.d/devuan.list
|
||||||
|
|
||||||
|
# Use Ubuntu's gpg to get Devuan's signing key.
|
||||||
|
RUN apt-get update && apt-get install -y -t noble gpg
|
||||||
|
|
||||||
|
# Add Devuan's signing key.
|
||||||
|
RUN gpg --keyserver keyring.devuan.org --recv-keys ${RELEASE_KEY} && \
|
||||||
|
gpg --export ${RELEASE_KEY} >/etc/apt/trusted.gpg.d/devuan_key.gpg
|
||||||
|
|
||||||
|
# Get Devuan's debootstrap.
|
||||||
|
RUN apt-get --assume-yes \
|
||||||
|
--no-install-recommends \
|
||||||
|
install -t ceres debootstrap
|
||||||
|
|
||||||
|
# Install everything else but debootstrap from Ubuntu.
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get --assume-yes \
|
||||||
|
--no-install-recommends \
|
||||||
|
install -t noble \
|
||||||
|
debian-archive-keyring \
|
||||||
|
ca-certificates \
|
||||||
|
qemu-user \
|
||||||
|
qemu-user-static \
|
||||||
|
qemu-system-arm \
|
||||||
|
qemu-system-x86 \
|
||||||
|
device-tree-compiler \
|
||||||
|
gcc \
|
||||||
|
gcc-arm-none-eabi \
|
||||||
|
make \
|
||||||
|
git \
|
||||||
|
bc \
|
||||||
|
bzip2 \
|
||||||
|
pigz \
|
||||||
|
bison \
|
||||||
|
flex \
|
||||||
|
python3-dev \
|
||||||
|
python3-pkg-resources \
|
||||||
|
python3-pyelftools \
|
||||||
|
python3-setuptools \
|
||||||
|
swig \
|
||||||
|
parted \
|
||||||
|
e2fsprogs \
|
||||||
|
dosfstools \
|
||||||
|
mtools \
|
||||||
|
pwgen \
|
||||||
|
libssl-dev \
|
||||||
|
libgnutls28-dev \
|
||||||
|
uuid-dev \
|
||||||
|
parallel \
|
||||||
|
ssh \
|
||||||
|
sshpass \
|
||||||
|
unzip && \
|
||||||
|
([ "$(uname -m)" = "aarch64" ] && \
|
||||||
|
apt-get --assume-yes \
|
||||||
|
install gcc-arm-linux-gnueabihf \
|
||||||
|
gcc-i686-linux-gnu \
|
||||||
|
gcc-x86-64-linux-gnu || :) && \
|
||||||
|
([ "$(uname -m)" = "x86_64" ] && \
|
||||||
|
apt-get --assume-yes \
|
||||||
|
install gcc-arm-linux-gnueabihf \
|
||||||
|
gcc-aarch64-linux-gnu \
|
||||||
|
gcc-i686-linux-gnu || :) && \
|
||||||
|
apt-get clean && \
|
||||||
|
rm -rf /var/lib/apt/lists/* && \
|
||||||
|
rm -f /var/log/*.log
|
||||||
|
RUN wget -q "https://awscli.amazonaws.com/awscli-exe-linux-$(uname -m).zip" -O "awscliv2.zip" && \
|
||||||
|
unzip -q awscliv2.zip && \
|
||||||
|
./aws/install && \
|
||||||
|
rm -rf aws
|
||||||
|
ENV PATH="/debimg/scripts:${PATH}"
|
||||||
|
COPY . /debimg
|
||||||
|
WORKDIR /debimg
|
||||||
107
README_devuan.md
107
README_devuan.md
|
|
@ -1,31 +1,80 @@
|
||||||
# Debian SD card images
|
# Devuan SD card images
|
||||||
|
|
||||||
This repository is a bunch of scripts to build SD card images that various [single-board computers](https://en.wikipedia.org/wiki/Single-board_computer) (SBC) can boot. Emphasis is on pureness; pure Debian and pure mainline U-boot.
|
This repository simply adds Devuan to a fork of https://github.com/johang/sd-card-images.
|
||||||
|
|
||||||
|
That project describes itself as
|
||||||
|
a bunch of scripts to build SD card images that various [single-board computers](https://en.wikipedia.org/wiki/Single-board_computer) (SBC) can boot. Emphasis is on pureness; pure Debian and pure mainline U-boot.
|
||||||
|
|
||||||
## Pre-built images
|
## Pre-built images
|
||||||
|
|
||||||
Pre-built images ready for download are availble at [sd-card-images.johang.se](https://sd-card-images.johang.se).
|
Pre-built images for Debian are availble from the original project at [sd-card-images.johang.se](https://sd-card-images.johang.se).
|
||||||
|
|
||||||
|
There are no pre-built images for Devuan.
|
||||||
|
|
||||||
|
## If you have problems here ##
|
||||||
|
|
||||||
|
This project is just a fork. If anything works at all, credit goes to johang.
|
||||||
|
|
||||||
|
If you have problems building a Devuan image here, please first try to build a Debian image using https://github.com/johang/sd-card-images.
|
||||||
|
|
||||||
|
Please do not report any Devuan-issues to johang, his interest is in pure Debian.
|
||||||
|
|
||||||
## Usage
|
## Usage
|
||||||
|
|
||||||
The generated SD card images are made up of two separate images:
|
The generated SD card images are made up of two separate images:
|
||||||
|
|
||||||
- **boot-BOARD.bin**: Boot image that contains partition table, U-Boot and chip-specific code. The boot image will only work on the board it's built for. The filename indicates which board it's built for.
|
- **boot-BOARD.bin**: Boot image that contains partition table, U-Boot and chip-specific code. The boot image will only work on the board it's built for. The filename indicates which board it's built for.
|
||||||
- **debian-ARCH-VERSION-PASSWORD.bin**: Debian ext4 root filesystem image that contains a complete Debian installation, including kernel, initrd and device tree. This Debian image is generic and will work on all chips and boards with the CPU architecture it's built for. The filename indicates Debian version, CPU architecture and default root password.
|
- **devuan-ARCH-VERSION-PASSWORD.bin**: Devuan ext4 root filesystem image that contains a complete Devuan installation, including kernel, initrd and device tree. This Devuan image is generic and will work on all chips and boards with the CPU architecture it's built for. The filename indicates Devuan version, CPU architecture and default root password.
|
||||||
|
|
||||||
These two images are the concatenated to a single image, which is then written to SD card, for example like this:
|
These two images are the concatenated to a single image, which is then written to SD card, for example like this:
|
||||||
|
|
||||||
$ zcat boot-raspberrypi_3b.bin.gz debian-buster-arm64-XXXXXX.bin.gz > sd-card.img
|
$ zcat boot-raspberrypi_3b.bin.gz devuan-daedalus-arm64-XXXXXX.bin.gz > sd-card.img
|
||||||
# dd if=sd-card.img of=/dev/sdXXX
|
# dd if=sd-card.img of=/dev/sdXXX
|
||||||
|
|
||||||
### Build your own Devuan boot image
|
### Build your own boot image
|
||||||
|
|
||||||
|
See many appropriate values of BOARD_ID and CHIP_ID at https://sd-card-images.johang.se/.
|
||||||
|
|
||||||
|
For any valid combination of:
|
||||||
|
| | |
|
||||||
|
| BOARD_ID | e.g. bananapi, pinebook |
|
||||||
|
| CHIP_ID | e.g. allwinner-a10, |
|
||||||
|
| CONFIG | e.g. Bananapi_defconfig |
|
||||||
|
| TUPLE | e.g. arm-linux-gnueabihf, aarch64-linux-gnu |
|
||||||
|
|
||||||
|
Check that you have a compiler installed for the TUPLE at:
|
||||||
|
```bash
|
||||||
|
$(which "${TUPLE}-gcc")
|
||||||
|
```
|
||||||
|
It should report something like:
|
||||||
|
```
|
||||||
|
/usr/bin/arm-linux-gnueabihf-gcc
|
||||||
|
```
|
||||||
|
|
||||||
|
To build:
|
||||||
|
```bash
|
||||||
|
docker build -t devuan/sd-images -f Dockerfile.devuan https://github.com/watchful-0wl/sd-card-images.git#add_devuan
|
||||||
|
mkdir -p /tmp/sd-images
|
||||||
|
docker run --rm \
|
||||||
|
-v /tmp/sd-images:/artifacts \
|
||||||
|
devuan/sd-images \
|
||||||
|
build-boot ${BOARD_ID} ${CHIP_ID} ${CONFIG} ${TUPLE}
|
||||||
|
```
|
||||||
|
|
||||||
|
The image will end up in /tmp/sd-images on the host as ${BOARD_ID}.bin.gz.
|
||||||
|
|
||||||
#### To build a boot image for Raspberry Pi 3 B:
|
#### To build a boot image for Raspberry Pi 3 B:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker build -t devuan/sd-images -f ./Dockerfile.devuan .
|
docker build -t devuan/sd-images -f Dockerfile.devuan https://github.com/watchful-0wl/sd-card-images.git#add_devuan
|
||||||
mkdir -p /tmp/sd-images
|
mkdir -p /tmp/sd-images
|
||||||
docker run --rm -v /tmp/sd-images:/artifacts sd-images build-boot raspberrypi_3b bcm2837 rpi_3_defconfig aarch64-linux-gnu
|
docker run --rm \
|
||||||
|
-v /tmp/sd-images:/artifacts \
|
||||||
|
devuan/sd-images \
|
||||||
|
build-boot raspberrypi_3b \
|
||||||
|
bcm2837 \
|
||||||
|
rpi_3_defconfig \
|
||||||
|
aarch64-linux-gnu
|
||||||
```
|
```
|
||||||
|
|
||||||
The image will end up in /tmp/sd-images on the host.
|
The image will end up in /tmp/sd-images on the host.
|
||||||
|
|
@ -33,12 +82,15 @@ The image will end up in /tmp/sd-images on the host.
|
||||||
#### To build a boot image for Pine64 Rockpro64:
|
#### To build a boot image for Pine64 Rockpro64:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker build -t devuan/sd-images -f ./Dockerfile.devuan .
|
docker build -t devuan/sd-images -f Dockerfile.devuan https://github.com/watchful-0wl/sd-card-images.git#add_devuan
|
||||||
mkdir -p /tmp/sd-images
|
mkdir -p /tmp/sd-images
|
||||||
docker run --rm \
|
docker run --rm \
|
||||||
-v /tmp/sd-images:/artifacts \
|
-v /tmp/sd-images:/artifacts \
|
||||||
devuan/sd-images \
|
devuan/sd-images \
|
||||||
build-boot ROCKPro64 rk3399 rockpro64-rk3399_defconfig aarch64-linux-gnu
|
build-boot ROCKPro64 \
|
||||||
|
rk3399 \
|
||||||
|
rockpro64-rk3399_defconfig \
|
||||||
|
aarch64-linux-gnu
|
||||||
```
|
```
|
||||||
|
|
||||||
The image will end up in /tmp/sd-images on the host.
|
The image will end up in /tmp/sd-images on the host.
|
||||||
|
|
@ -46,27 +98,46 @@ The image will end up in /tmp/sd-images on the host.
|
||||||
#### To build a boot image for Sinovoip Banana Pi M2 Zero
|
#### To build a boot image for Sinovoip Banana Pi M2 Zero
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker build -t devuan/sd-images -f ./Dockerfile.devuan .
|
docker build -t devuan/sd-images -f Dockerfile.devuan https://github.com/watchful-0wl/sd-card-images.git#add_devuan
|
||||||
mkdir -p /tmp/sd-images
|
mkdir -p /tmp/sd-images
|
||||||
docker run --rm \
|
docker run --rm \
|
||||||
-v /tmp/sd-images:/artifacts \
|
-v /tmp/sd-images:/artifacts \
|
||||||
devuan/sd-images \
|
devuan/sd-images \
|
||||||
build-boot banana_pi_m2_zero allwinner-h2+ bananapi_m2_zero_defconfig arm-linux-gnueabihf
|
build-boot banana_pi_m2_zero \
|
||||||
|
allwinner-h2+ \
|
||||||
|
bananapi_m2_zero_defconfig \
|
||||||
|
arm-linux-gnueabihf
|
||||||
```
|
```
|
||||||
|
|
||||||
The image will end up in /tmp/sd-images on the host.
|
The image will end up in /tmp/sd-images on the host.
|
||||||
|
|
||||||
### Build your own Debian ext4 root filesystem image
|
### Build your own Devuan ext4 root filesystem image
|
||||||
|
|
||||||
|
For any valid combination provided by the distribution:
|
||||||
|
| | |
|
||||||
|
| DISTRIBUTION | Devuan Debian Ubuntu |
|
||||||
|
| ARCH | armhf arm64 i386 amd64 |
|
||||||
|
| RELEASE | e.g. daedalus excalibur ceres bookworm trixie sid |
|
||||||
|
|
||||||
|
To build:
|
||||||
|
```bash
|
||||||
|
docker build -t devuan/sd-images -f Dockerfile.devuan https://github.com/watchful-0wl/sd-card-images.git#add_devuan
|
||||||
|
mkdir -p /tmp/sd-images
|
||||||
|
docker run --rm \
|
||||||
|
-v /tmp/sd-images:/artifacts \
|
||||||
|
devuan/sd-images \
|
||||||
|
build-debian ${DISTRIBUTION} ${ARCH} ${RELEASE}
|
||||||
|
```
|
||||||
|
|
||||||
|
The image will end up in /tmp/sd-images on the host as DISTRIBUTION-ARCH-RELEASE-PASSWORD.bin
|
||||||
|
|
||||||
#### To build a Devuan ext4 root filesystem image for arm64:
|
#### To build a Devuan ext4 root filesystem image for arm64:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker build -t devuan/sd-images -f ./Dockerfile.devuan .
|
docker build -t devuan/sd-images -f Dockerfile.devuan https://github.com/watchful-0wl/sd-card-images.git#add_devuan
|
||||||
mkdir -p /tmp/sd-images
|
mkdir -p /tmp/sd-images
|
||||||
docker run --rm \
|
docker run --rm \
|
||||||
-v /tmp/sd-images:/artifacts \
|
-v /tmp/sd-images:/artifacts \
|
||||||
-v `pwd`:/debimg \
|
|
||||||
--privileged \
|
|
||||||
devuan/sd-images \
|
devuan/sd-images \
|
||||||
build-debian devuan arm64 daedalus
|
build-debian devuan arm64 daedalus
|
||||||
```
|
```
|
||||||
|
|
@ -76,12 +147,10 @@ The image will end up in /tmp/sd-images on the host.
|
||||||
#### To build a Devuan ext4 root filesystem image for armhf:
|
#### To build a Devuan ext4 root filesystem image for armhf:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
docker build -t devuan/sd-images -f ./Dockerfile.devuan .
|
docker build -t devuan/sd-images -f Dockerfile.devuan https://github.com/watchful-0wl/sd-card-images.git#add_devuan
|
||||||
mkdir -p /tmp/sd-images
|
mkdir -p /tmp/sd-images
|
||||||
docker run --rm \
|
docker run --rm \
|
||||||
-v /tmp/sd-images:/artifacts \
|
-v /tmp/sd-images:/artifacts \
|
||||||
-v `pwd`:/debimg \
|
|
||||||
--privileged \
|
|
||||||
devuan/sd-images \
|
devuan/sd-images \
|
||||||
build-debian devuan armhf daedalus
|
build-debian devuan armhf daedalus
|
||||||
```
|
```
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue