Debian in a box

Use a custom-tailored Debian system.

Download a suitable system image and load it onto the target computer.

Start the computer, log in and personalize, maybe include some addons, and enjoy your pure Debian system.

Choose image

Each image is tailored for a specific computer, and multiple revisions may be available. Choose the newest revision for your computer (or try an older revision if that doesn’t work - and tell us about the problems you experienced).

The images are all freely licensed software, except “nonfree” images which are licensed less freely. Please check that legal risks are acceptable to you before using those!

Download image

Download image suitable for your Lime2 or Teres-I computer (or another image).

Recommended approach is to use one of the command-line tools aria, curl, or wget.

With aria, use this command (adapt URL to match your image):

aria2c https://box.redpill.dk/images/core/core-lime2-buster-1.0rc6.img.gz

With curl, use this command (adapt URL to match your image):

curl --remote-name https://box.redpill.dk/images/core/core-lime2-buster-1.0rc6.img.gz

With wget, use this command (adapt URL to match your image):

wget https://box.redpill.dk/images/core/core-lime2-buster-1.0rc6.img.gz

Store image

Connect microSD card to pc, and locate its device path, using a different command depending on the system you use for this.

On linux, try this command:

lsblk --paths --nodeps

On macOS, try this command:

ls /dev/rdisk?

Then compare output of above command with and without card plugged in to not COMPLETELY OVERWRITE the wrong device below.

Make sure card is (connected but) not mounted. On linux, one way is to check that lsblk lists no mountpoint entry.

Decompress and copy image onto card (adjust image name and device path as needed):

gunzip core-lime2-buster-1.0rc6.img.gz
sudo cp core-lime2-buster-1.0rc6.img PATH_TO_YOUR_SDCARD

Boot system

Move microSD card to your box (while turned off), turn on, and log in.

Logging in depends on whether you connect directly or via another computer.

With screen and keyboard directly connected, log in at prompt.

Via network from linux with avahi-utils, after bootup (20-60 seconds) lookup hostname and login with ssh:

avahi-browse --terminate _ssh._tcp
ssh debian@HOSTNAME_LISTED_ABOVE.local

Via network from macOS or Windows, after bootup (20-60 seconds) locate hostname (press CTRL+c to stop) and login with ssh:

dns-sd -B _ssh._tcp
ssh debian@HOSTNAME_LISTED_ABOVE.local
Regardless of connection, username and passsword is the same:

Username: debian

Password: insecure

Network setup

System uses systemd for networking generally, and IWD for wifi.

With ethernet (builtin or a USB dongle), just connect cable.

With wifi, do something like this:

sudo iwctl station wlan0 get-networks
sudo iwctl station wlan0 connect SSID_LISTED_ABOVE

Further info on using IWD: https://wiki.archlinux.org/index.php/Iwd

With broadband modem, do something like this:

mmcli --modem=0 --simple-connect="apn=internet"

static IP

To use a fixed IP address, first do the appropriate one of above and check the link name of the device:

networkctl

…and then do something like this (adapt to replace “eth0” with link name in above listing):

cp /etc/systemd/network/90-dhcp.network /etc/systemd/network/10-eth0.network
nano /etc/systemd/network/10-eth0.network
# Replace line "Name=..." with line "Name=eth0"
# Replace line "DHCP=..." with lines "Address=" and "Gateway=..."
# Quit nano with CTRL+x (and agree to save under suggested name)
service systemd-networkd restart

tools

Some included tools to check if networking works.

Show assigned IP numbers (try both and pick the one that works best for you):

networkctl show

or

ip a

Show connectivity and latency towards a common public host:

mtr --displaymode=2 1.1.1.1

General setup

Finalize setup of the system:

sudo system-setup

Addons

System is quite minimal, but ships with several optional addons all starting with “box-add-”.

Examples are a (more complete) text-based user interface:

sudo box-add-tui

…and a graphical desktop environment:

sudo box-add-gui

Source

These binary images are built from Debian packages and build routines written by Jonas Smedegaard. The build routines, available at https://salsa.debian.org/tinker-team/box, are licensed under the GNU General Public License, version 3 or newer.

When this text is accompagnied by binary system images, the following applies to satisfy license requirements:

I hereby offer to provide the source code for the relevant Debian binary packages, included in the installer, on request. However, you will probably find it easier to acquire these packages from the official Debian resources, https://ftp.debian.org/ and/or https://snapshot.debian.org/.

Jonas Smedegaard dr@jones.dk Thu, 27 Jun 2019 12:35:09 +0200