Skip to content

Nightly Debian Bootstrap $(date +%Y-%m-%d)

Choose a tag to compare

@github-actions github-actions released this 16 May 03:47
· 1 commit to main since this release
69cdab7

Debian Bootstrap Tarballs for FreeBSD Linuxulator

Available Tarballs

-rw-r--r-- 1 runner runner 36M May 16 03:47 artifacts/debian-stable-amd64-20260516.tar.xz
-rw-r--r-- 1 runner runner 28M May 16 03:47 artifacts/debian-stable-arm64-20260516.tar.xz
-rw-r--r-- 1 runner runner 27M May 16 03:47 artifacts/debian-stable-armhf-20260516.tar.xz
-rw-r--r-- 1 runner runner 30M May 16 03:47 artifacts/debian-stable-i386-20260516.tar.xz
-rw-r--r-- 1 runner runner 36M May 16 03:47 artifacts/debian-testing-amd64-20260516.tar.xz
-rw-r--r-- 1 runner runner 28M May 16 03:47 artifacts/debian-testing-arm64-20260516.tar.xz
-rw-r--r-- 1 runner runner 27M May 16 03:47 artifacts/debian-testing-armhf-20260516.tar.xz
-rw-r--r-- 1 runner runner 30M May 16 03:47 artifacts/debian-testing-i386-20260516.tar.xz
-rw-r--r-- 1 runner runner 36M May 16 03:47 artifacts/debian-unstable-amd64-20260516.tar.xz
-rw-r--r-- 1 runner runner 28M May 16 03:47 artifacts/debian-unstable-arm64-20260516.tar.xz
-rw-r--r-- 1 runner runner 27M May 16 03:47 artifacts/debian-unstable-armhf-20260516.tar.xz
-rw-r--r-- 1 runner runner 30M May 16 03:47 artifacts/debian-unstable-i386-20260516.tar.xz

Complete Setup on FreeBSD

1. Download tarball

fetch <tarball-url>

2. Prepare the system

# Create compat directory
mkdir -p /compat/debian

# Extract tarball (preserving permissions)
tar xJf debian-stable-amd64-*.tar.xz -C /compat/debian

3. Configure FreeBSD for Linuxulator

# Load Linux kernel module (add to /boot/loader.conf for persistence)
kldload linux64

# Enable Linux at boot (add to /etc/rc.conf)
echo 'linux_enable="YES"' >> /etc/rc.conf

4. Mount required filesystems

# Mount Linux-compatible filesystems
mount -t linprocfs none /compat/debian/proc
mount -t linsysfs none /compat/debian/sys
mount -t devfs none /compat/debian/dev
mount -t tmpfs none /compat/debian/tmp

# Fix /tmp permissions (should be 1777 but mount may reset it)
chmod 1777 /compat/debian/tmp

# Copy DNS configuration for network access inside chroot
cp /etc/resolv.conf /compat/debian/etc/resolv.conf

5. Enter Debian chroot

chroot /compat/debian /bin/bash

6. First steps inside Debian

# Update package lists (APT cache limits are pre-configured)
apt update

# Upgrade packages if needed
apt upgrade

# Install additional packages
apt install vim curl wget

Optional: Auto-mount at boot

Add to /etc/fstab:

linprocfs   /compat/debian/proc  linprocfs   rw      0 0
linsysfs    /compat/debian/sys   linsysfs    rw      0 0
devfs       /compat/debian/dev   devfs       rw      0 0
tmpfs       /compat/debian/tmp   tmpfs       rw      0 0

Notes

  • Systemd is excluded (not compatible with Linuxulator)
  • APT cache limit is pre-configured to 251MB to avoid "Dynamic MMap" errors
  • /tmp is pre-configured with sticky bit (1777)
  • Binaries and libraries have correct execute permissions
  • Tarballs are generated daily at 00:00 UTC
  • Only the last 7 daily releases are kept

Verified Working

  • ✅ chroot works out-of-the-box
  • ✅ APT update works without permission errors
  • ✅ Package installation works
  • ✅ Network configured via host resolv.conf