7 days agoRelease new version 0.42.2 master v0.42.2
Michael Prokop [Fri, 25 Nov 2022 10:57:20 +0000 (11:57 +0100)]
Release new version 0.42.2

7 days agoRevert "Run zsh when starting screen"
Michael Prokop [Fri, 25 Nov 2022 10:41:50 +0000 (11:41 +0100)]
Revert "Run zsh when starting screen"

This reverts commit 68719720b5707d8f8e6e0b4b3569074ede06e285.

See +

7 days agoRevert "Set SHELL variable in tty1"
Michael Prokop [Fri, 25 Nov 2022 10:41:37 +0000 (11:41 +0100)]
Revert "Set SHELL variable in tty1"

This reverts commit 7422d318f84aaad3452e3c5a8bdcbc6ff252c152.

See +

7 days agoMerge remote-tracking branch 'origin/github/pr/123'
Michael Prokop [Fri, 25 Nov 2022 10:36:26 +0000 (11:36 +0100)]
Merge remote-tracking branch 'origin/github/pr/123'

2 weeks agoGRMLBASE/39-modprobe: avoid usage of /lib/modprobe.d/50-nfs.conf
Michael Prokop [Mon, 14 Nov 2022 15:19:51 +0000 (16:19 +0100)]
GRMLBASE/39-modprobe: avoid usage of /lib/modprobe.d/50-nfs.conf

The /lib/modprobe.d/50-nfs.conf file as shipped with
nfs-kernel-server >=1:2.6.2-1 causes plenty of problems,

* ("nfs-kernel-server:
  /lib/modprobe.d/50-nfs.conf causing problems with sysctl from busybox
  and with kmod")
* ("/lib/modprobe.d/50-nfs.conf causes
  initramfs-tools to stop including sunrpc module for nfs")

So instead, let's ensure we don't ship the upstream file.


2 weeks agoGRMLBASE/39-modprobe: do not expect all files in /etc/modprobe.d to be used
Michael Prokop [Tue, 15 Nov 2022 17:10:39 +0000 (18:10 +0100)]
GRMLBASE/39-modprobe: do not expect all files in /etc/modprobe.d to be used

Quotin from fcopy(8) about its -i option:

| Ignore warnings about no matching class and non-existing source directories. These warnings will not set the exit code to 1.

By adding this, we can support configurations of users
who have additional files in their /etc/modprobe.d setup,
though don't want to necessarily always install them.

3 weeks agoRelease new version 0.42.1 v0.42.1
Michael Prokop [Fri, 11 Nov 2022 16:08:58 +0000 (17:08 +0100)]
Release new version 0.42.1

3 weeks agoMerge remote-tracking branch 'origin/github/pr/122'
Michael Prokop [Fri, 11 Nov 2022 15:41:49 +0000 (16:41 +0100)]
Merge remote-tracking branch 'origin/github/pr/122'

3 weeks agoSet SHELL variable in tty1
Darshaka Pathirana [Fri, 11 Nov 2022 15:24:45 +0000 (16:24 +0100)]
Set SHELL variable in tty1

The SHELL variable is not set in our tty1 when `run-welcome` is called
(instead of agetty(8) + login(1)).

So, when invoking `screen` we end up in `/bin/sh` instead of a zsh

We also had the same problem for tty2 - tty4 and fixed it in
grml/grml-live@6871972 (to fix grml/grml#14).

We now use the same approach to fix tty1 although the SHELL variable
should (most probably) be set in `run-welcome` and `run-screen` itself.

Issue: grml/grml#135

3 weeks agoSW: add mtx to GRML_FULL
Michael Prokop [Fri, 11 Nov 2022 15:05:07 +0000 (16:05 +0100)]
SW: add mtx to GRML_FULL

This used to be a dependency of bacula, now that bacula is no longer
shipped, mtx would be missing on the live system. Since that might be
useful for usage on backup servers and it's only 353 kB of disk space,
let's re-add it.

3 weeks agoRevert "SW: drop ifenslave from GRML_SMALL and GRML_FULL"
Michael Prokop [Fri, 11 Nov 2022 15:02:14 +0000 (16:02 +0100)]
Revert "SW: drop ifenslave from GRML_SMALL and GRML_FULL"

This reverts commit 46732edb357fda04f5778a4dcb6af1224d002cf3.

ifenslave is back in Debian/testing, while it might not be really needed
anymore (given that it no longer provides /sbin/ifenslave and "the
/sbin/ip command from the iproute2 package supports creating bonding masters
and enslaving other interfaces to it"), its hook script still might be
relevant for someone, so let's ship it for the time being.

3 weeks agoSW: add espeak-ng
Michael Prokop [Fri, 11 Nov 2022 14:56:49 +0000 (15:56 +0100)]
SW: add espeak-ng

espeakup used to depend on espeak, though as of v1:0.90-5 it no longer
does so, while espeak-ng seems to be the proper replacement. So we don't
end up without espeak* on Grml, let's add espeak-ng, hopefully being
useful as-is.

3 weeks agoRevert "SW: drop xfsdump from GRML_FULL"
Michael Prokop [Fri, 11 Nov 2022 14:37:16 +0000 (15:37 +0100)]
Revert "SW: drop xfsdump from GRML_FULL"

This reverts commit e52868071ac19e2e60e4067e35ba9675e2e393d7.

With the latest upload of xfsdump v3.1.11-0.1 the package
is back in Debian/unstable + testing.

3 weeks agoSW: add tmux to GRML_SMALL
Michael Prokop [Fri, 11 Nov 2022 10:33:30 +0000 (11:33 +0100)]
SW: add tmux to GRML_SMALL

We're considering replacing GNU screen with tmux by default, and
we should definitely ship tmux with our main releases as a starting

3 weeks agoSW: add hping3 to GRML_FULL
Michael Prokop [Fri, 11 Nov 2022 10:26:58 +0000 (11:26 +0100)]
SW: add hping3 to GRML_FULL

This turned out to be very useful for testing custom packet size
and UDP when deploying yet another Proxmox VE cluster.

3 weeks agoRelease new version 0.42.0 v0.42.0
Michael Prokop [Fri, 11 Nov 2022 09:24:13 +0000 (10:24 +0100)]
Release new version 0.42.0

3 weeks agoMerge remote-tracking branch 'origin/github/pr/121'
Michael Prokop [Fri, 11 Nov 2022 09:20:06 +0000 (10:20 +0100)]
Merge remote-tracking branch 'origin/github/pr/121'

3 weeks agoMerge remote-tracking branch 'origin/github/pr/120'
Michael Prokop [Fri, 11 Nov 2022 09:20:01 +0000 (10:20 +0100)]
Merge remote-tracking branch 'origin/github/pr/120'

3 weeks agoProvide workaround for kmod/initramfs-tools issue with NFS/netboot
Michael Prokop [Thu, 10 Nov 2022 16:59:51 +0000 (17:59 +0100)]
Provide workaround for kmod/initramfs-tools issue with NFS/netboot

As of kmod v30+20220905-1 (as present in current Debian/bookworm), the
output of the "modprobe --all --set-version="..." --ignore-install
--quiet --show-depends nfs" command line, as used by initramfs-tools to
identify dependencies of the the nfs module, changed. See for further details.

Until the situation between kmod, /lib/modprobe.d/50-nfs.conf and
initramfs-tools has been resolved, let's provide a workaround, so our
initramfs includes the required modules for netboot usage with NFS.

Thanks: András Korn

3 weeks agoSupport Memtest86+ with UEFI
Michael Prokop [Wed, 9 Nov 2022 15:22:17 +0000 (16:22 +0100)]
Support Memtest86+ with UEFI

Memtest86+ up and until v5.01-3.1 didn't provide (U)EFI support.
Starting with v6.00, the file memtest86+.bin no longer exists,
but instead there are:

* /boot/memtest86+x32.bin
* /boot/memtest86+x32.efi
* /boot/memtest86+x64.bin
* /boot/memtest86+x64.efi

So let's start adding support for memtest86 with (U)EFI.
Hopefully we don't need FAT16/8.3 compatibility any longer,
so let's try using the files as-is.


3 weeks agoRelease new version 0.41.2 v0.41.2
Michael Prokop [Mon, 7 Nov 2022 20:37:54 +0000 (21:37 +0100)]
Release new version 0.41.2

3 weeks agoProvide apt sources.list file to support 'bookworm' as Debian suite
Michael Prokop [Mon, 7 Nov 2022 20:25:16 +0000 (21:25 +0100)]
Provide apt sources.list file to support 'bookworm' as Debian suite

4 weeks agoSW: drop firmware-intelwimax package from GRMLBASE
Michael Prokop [Tue, 1 Nov 2022 11:40:41 +0000 (12:40 +0100)]
SW: drop firmware-intelwimax package from GRMLBASE

This package was "silently" dropped in Debian's firmware-nonfree
versions v20220913-1 + v20221012-1 and now is no longer available in

Quoting from -firmware-intelwimax's source package firmware-nonfree's
git (

| commit 1dced95200c7a1780feaf6e3cf11f8739f17d22a
| Author: Didier 'OdyX' Raboud <>
| Date:   Mon Aug 22 15:44:30 2022 +0200
|     intelwimax: Drop Intel WiMax package
|     From upstream's 660d61bdf9691ddefbb3e2b3dd3fc2606ecf6779:
|         Drop Intel WiMax firmware
|         The WiMax wireless wan driver stack was dropped from upstream
|         in 2021 without any people with HW and most global WiMax
|         netowrks already shut down or being actively shutdown.
|         The last stable firmware to support WiMax was 5.10 so time to
|         drop the firmware.

6 weeks agoDrop SYSTEMD package config file, no longer relevant
Michael Prokop [Fri, 21 Oct 2022 07:20:31 +0000 (09:20 +0200)]
Drop SYSTEMD package config file, no longer relevant

This file only took care of installing network-manager, while
we never made the switch to network-manager, so this package
configuration doesn't make any sense, and currently even
fails to be used with unstable due to conflicts with rdnssd.

Thanks: András Korn for reporting

6 weeks ago/etc/fstab: fix note from rebuilfstab->grml-udev-rebuildfstab switch
Michael Prokop [Wed, 19 Oct 2022 14:55:55 +0000 (16:55 +0200)]
/etc/fstab: fix note from rebuilfstab->grml-udev-rebuildfstab switch

Fixup for git rev 0aa690741

While at it, drop "!", there's no reason to shout. :)

Thanks: Christoph Biedl for reporting

6 weeks agoDeploy default /etc/locale.conf, to avoid systemd-firstboot prompting during bootup
Michael Prokop [Wed, 19 Oct 2022 13:00:06 +0000 (15:00 +0200)]
Deploy default /etc/locale.conf, to avoid systemd-firstboot prompting during bootup

Otherwise we're getting the `Please configure your system` prompt by
systemd's print_welcome() (see src/firstboot/firstboot.c), which
shows up with systemd v251

7 weeks agoRelease new version 0.41.1 v0.41.1
Michael Prokop [Mon, 10 Oct 2022 16:56:54 +0000 (18:56 +0200)]
Release new version 0.41.1

8 weeks agoRevert "SW: replace fluxbox with openbox + obconf in GRML_FULL"
Michael Prokop [Fri, 7 Oct 2022 13:13:59 +0000 (15:13 +0200)]
Revert "SW: replace fluxbox with openbox + obconf in GRML_FULL"

This reverts commit 47c2f47352507002d023a7dd9e1098e3c42257da.

fluxbox is back in Debian/testing (v1.3.5-2.1) thanks to an NMU,
while openbox technically works, its desktop "integration" isn't
as smooth as the one we have for fluxbox (and our users are used to
get fluxbox), so let's revert back to fluxbox for now.


8 weeks agoRevert "SW: drop iptstate from GRML_SMALL + GRML_FULL"
Michael Prokop [Fri, 7 Oct 2022 11:09:35 +0000 (13:09 +0200)]
Revert "SW: drop iptstate from GRML_SMALL + GRML_FULL"

This reverts commit 1c4ce53a627dd17b655d860ba44eb06469cb8596.

iptstate is available in Debian/testing again,
Thanks, Chris for the NMU towards Debian!


8 weeks agoRevert "SW: drop firmware-ath9k-htc from GRMLBASE"
Michael Prokop [Fri, 7 Oct 2022 11:08:04 +0000 (13:08 +0200)]
Revert "SW: drop firmware-ath9k-htc from GRMLBASE"

This reverts commit ebb166fb4122a0741b8f0e0d9a3e97fc99f2f1df.

It's now back in Debian/testing, see

Thanks, Chris for reporting its progress to us


8 weeks agoSW: drop facter, mcollective + puppet from GRML_FULL
Michael Prokop [Fri, 7 Oct 2022 10:56:26 +0000 (12:56 +0200)]
SW: drop facter, mcollective + puppet from GRML_FULL

facter, hiera + puppet and their dependencies require ~32MB of disk
space, and mcollective plus its dependencies require 1,084 kB of disk
space. We try to reduce the ISO size and it feels like puppet doesn't
necessarily need to be present by default.

Related to

8 weeks agossh.service: fix ssh-keygen usage
Michael Prokop [Fri, 7 Oct 2022 10:44:04 +0000 (12:44 +0200)]
ssh.service: fix ssh-keygen usage

Otherwise systemd fails with:

| ssh.service: Executable /usr/bin/ssh-keygen -A missing, skipping: No such file or directory

Fixup for git rev 6d869c1

8 weeks agoSW: drop tshark + wireshark from GRML_FULL
Michael Prokop [Fri, 7 Oct 2022 09:51:14 +0000 (11:51 +0200)]
SW: drop tshark + wireshark from GRML_FULL

libwireshark15 has >100MB Installed-Size, and wireshark plus all its
dependencies currently require 164MB of disk space on grml-full. This
seems to be too much for one specific, non-essential tool, and given we
still ship tcpdump, it makes more sense to reduce ISO size.

tshark depends on wireshark-common, so we need to also drop it.

Related to

8 weeks agoSW: drop subversion from GRML_FULL
Michael Prokop [Fri, 7 Oct 2022 09:44:57 +0000 (11:44 +0200)]
SW: drop subversion from GRML_FULL

It requires 10.6MB of disk space, and we (as in Grml) don't rely on
it since a long time, so let's gain some disk space...

Related to

8 weeks agoSW: drop mercurial from GRML_FULL
Michael Prokop [Fri, 7 Oct 2022 09:43:43 +0000 (11:43 +0200)]
SW: drop mercurial from GRML_FULL

It requires 16MB of disk space, and Grml doesn't use mercurial
since a long time, so let's gain some disk space...

Related to

2 months agoSW: drop xfsdump from GRML_FULL
Michael Prokop [Thu, 29 Sep 2022 14:15:48 +0000 (16:15 +0200)]
SW: drop xfsdump from GRML_FULL

xfsdump fails to compile against Linux kernel versions >=5.17, resulting
in a FTBFS RC bug in Debian (see #1013549).

We have failing *-testing ISO builds since 2022-08-09, as xfsdump is no
longer in Debian testing due to this RC bug.

The package is in a pretty bad shape and I stumbled upon too many issues
when looking into a NMU, so let's drop this for now.

2 months agoReplace egrep usage with grep -E
Michael Prokop [Wed, 7 Sep 2022 11:52:33 +0000 (13:52 +0200)]
Replace egrep usage with grep -E

grep 3.8 deprecated support for egrep + fgrep, and now prints a warning on stderr:

| egrep: warning: egrep is obsolescent; using grep -E
| fgrep: warning: fgrep is obsolescent; using grep -F

Development time sponsored by Sipwise GmbH

3 months agossh.service: avoid indirection via /bin/sh + do not run test mode in ExecStartPre
Michael Prokop [Mon, 29 Aug 2022 15:56:38 +0000 (17:56 +0200)]
ssh.service: avoid indirection via /bin/sh + do not run test mode in ExecStartPre

There's no point in running ssh-keygen under /bin/sh, so let's drop this
unnecessary indirection.

Furthermore there shouldn't be any need to run `sshd -t` before starting
the ssh daemon on the live system, as we definitely would like to get
sshd started if it was requested to so, even if there might be a
(possibly intermittent) problem with it. The test run makes sense for
reloading an already running ssh daemon, and we keep this in place.

Thanks to András Korn for spotting this

3 months agoMerge remote-tracking branch 'origin/github/pr/117'
Michael Prokop [Mon, 29 Aug 2022 13:38:46 +0000 (15:38 +0200)]
Merge remote-tracking branch 'origin/github/pr/117'

3 months agoAdd support for building grml ISOs with zfs
András Korn [Sun, 21 Aug 2022 08:38:22 +0000 (10:38 +0200)]
Add support for building grml ISOs with zfs

The `ZFS` FAI class will, via the `instsoft.ZFS` hook, install the packages
needed to build the zfs modules, build the zfs modules, then remove the
development packages again to avoid bloating the ISO. The ZFS
`package_config` now only installs `zfsutils-linux` so that the iso contains
the userspace zfs tools.

In my tests, the ZFS class now only increases the size of the ISO by about

I wanted to rely on apt autoremove to get rid of automatically installed
packages, but for some reason as of 2.5.2 autoremove doesn't actually remove
some of the development packages (e.g. gcc-11) even though they're Priority
optional, marked as auto-installed, and not depended on by anything that
isn't auto-installed.

So, to avoid bloating the ISO with hundreds of MB of development packages,
the `instsoft.ZFS` script works out which packages it installs and removes
those explicitly, using potentially brittle parsing of `apt-get` output.
This has been tested to work and should do until a better solution is found.

3 months agoRelease new version 0.41.0 v0.41.0
Michael Prokop [Wed, 17 Aug 2022 11:31:10 +0000 (13:31 +0200)]
Release new version 0.41.0

3 months agodocs: document new ZFS class
Michael Prokop [Wed, 17 Aug 2022 11:29:55 +0000 (13:29 +0200)]
docs: document new ZFS class

3 months agoSW: switch from bsdmainutils to bsdextrautils + bsdutils in GRML_SMALL + GRML_FULL
Michael Prokop [Wed, 17 Aug 2022 10:14:29 +0000 (12:14 +0200)]
SW: switch from bsdmainutils to bsdextrautils + bsdutils in GRML_SMALL + GRML_FULL

The bsdmainutils package is a transitional package (at least) since
Debian/bullseye. It depends on bsdutils, debianutils, bsdextrautils +
ncal. We want bsdutils (e.g. for logger) and bsdextrautils (e.g. for
hexdump), so let's depend on those. The debianutils package is a
required and essential package in Debian anyway, so no need to
explicitly depend on it. We don't necessarily need ncal, so at least
until someone asks for it, let's not depend on it.

FTR, not modifying /etc/grml/fai/config/scripts/DEBORPHAN/10-whitelist
yet, to give people building ISOs with grml-live based on Debian
releases older than bullseye the option to still use it as-is.

3 months agoMerge remote-tracking branch 'origin/github/pr/116'
Michael Prokop [Mon, 8 Aug 2022 13:07:51 +0000 (15:07 +0200)]
Merge remote-tracking branch 'origin/github/pr/116'

3 months agoAdd comment about dwarves (can be needed to build kernel modules)
András Korn [Mon, 8 Aug 2022 10:12:37 +0000 (12:12 +0200)]
Add comment about dwarves (can be needed to build kernel modules)

Also, alphabetically sort list of packages in etc/grml/fai/config/package_config/ZFS

3 months agoAdd ZFS fai class
András Korn [Thu, 4 Aug 2022 11:40:22 +0000 (13:40 +0200)]
Add ZFS fai class

This will install zfs-dkms and zfsutils and result in binary zfs kernel
modules being included in the generated iso.

3 months agoAvoid build error if etc/adjtime doesn't exist in chroot
András Korn [Thu, 4 Aug 2022 11:27:13 +0000 (13:27 +0200)]
Avoid build error if etc/adjtime doesn't exist in chroot

In scripts/GRMLBASE/18-timesetup, we assume etc/adjtime will definitely
exist and error out if not.

Make it so the lack of a /etc/adjtime file no longer prevents the grml build
from completing.

3 months agoExclude /var/lib/dkms/* from squashfs
András Korn [Thu, 4 Aug 2022 11:03:39 +0000 (13:03 +0200)]
Exclude /var/lib/dkms/* from squashfs

These files and directories are created by dkms while it builds modules on
demand and are only relevant during the module build/installation process.
The .ko files are then installed in /lib/modules; shipping /var/lib/dkms/*
inside the squashfs only takes up space without providing a tangible

4 months agoRelease new version 0.40.3 v0.40.3
Michael Prokop [Thu, 28 Jul 2022 08:59:05 +0000 (10:59 +0200)]
Release new version 0.40.3

4 months agoGRMLBASE/21-usersetup: use adduser for adding user to group
Michael Prokop [Thu, 28 Jul 2022 08:54:18 +0000 (10:54 +0200)]
GRMLBASE/21-usersetup: use adduser for adding user to group

adduser >=3.122 no longer supports adding a user to a group via its
addgroup binary (see, so let's
invoke adduser instead.


4 months agoGRMLBASE/50-lvm: also clear /lib/udev/rules.d/69-lvm.rules
Michael Prokop [Mon, 4 Jul 2022 16:18:48 +0000 (18:18 +0200)]
GRMLBASE/50-lvm: also clear /lib/udev/rules.d/69-lvm.rules

We don't want automatic lvm_scan, new udev upstream release
2.03.15 includes a new file /lib/udev/rules.d/69-lvm.rules,
so let's check for presence of /lib/udev/rules.d/69-lvm.rules
and /lib/udev/rules.d/69-lvm-metad.rules and clear any possibly
existing files then.

Related to

6 months agoRelease new version 0.40.2 v0.40.2
Michael Prokop [Fri, 3 Jun 2022 12:34:20 +0000 (14:34 +0200)]
Release new version 0.40.2

6 months agoDisable man-db settings to speed up package installation
Michael Prokop [Fri, 3 Jun 2022 10:43:13 +0000 (12:43 +0200)]
Disable man-db settings to speed up package installation

The man-db process tends to be time consuming. By disabling the
auto-update + build-database settings, we can speed up the build
process and also package installation on the live system.

If someone really has needs for apropos(1) usage, manual invocation of
`mandb` should be all what's needed.

Thanks: Thorsten Glaser for the suggestion

6 months agoSW: add sqlite3 to GRML_FULL
Michael Prokop [Fri, 6 May 2022 10:05:12 +0000 (12:05 +0200)]
SW: add sqlite3 to GRML_FULL

sqlite3 - Command line interface for SQLite 3

Acked-by: Darshaka Pathirana
6 months agoSW: add mbuffer to GRML_FULL
Michael Prokop [Fri, 6 May 2022 10:02:14 +0000 (12:02 +0200)]
SW: add mbuffer to GRML_FULL

mbuffer - tool for buffering data streams

Acked-by: Darshaka Pathirana
6 months agoSW: add stenc to GRML_FULL
Michael Prokop [Fri, 6 May 2022 10:00:52 +0000 (12:00 +0200)]
SW: add stenc to GRML_FULL

stenc (SCSI Tape Encryption Manager)

Acked-by: Darshaka Pathirana
7 months agoRelease new version 0.40.1 v0.40.1
Michael Prokop [Wed, 20 Apr 2022 12:48:39 +0000 (14:48 +0200)]
Release new version 0.40.1

7 months agoSW: move from ntp/ntpdate to ntpsec/ntpsec-ntpdate in GRML_SMALL + GRML_FULL
Michael Prokop [Mon, 11 Apr 2022 16:47:19 +0000 (18:47 +0200)]
SW: move from ntp/ntpdate to ntpsec/ntpsec-ntpdate in GRML_SMALL + GRML_FULL

Starting with bookworm (current Debian/testing), ntpsec replaces ntp,
and ntpsec-ntpdate replaces ntpdate. Now both the ntp + ntpdate packages
are transitional packages. Given that ntpsec/ntpsec-ntpdate are
available even for oldstable, let's follow this transition now (also see

FTR, as of 2022-04-11:

| % rmadison ntpsec ntpsec-ntpdate
| ntpsec         | 1.1.3+dfsg1-2+deb10u1 | oldstable              | source, amd64, arm64, armel, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x
| ntpsec         | 1.1.3+dfsg1-2+deb10u1 | oldstable-debug        | source
| ntpsec         | 1.2.0+dfsg1-4~bpo10+1 | buster-backports       | source, amd64, arm64, armel, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x
| ntpsec         | 1.2.0+dfsg1-4~bpo10+1 | buster-backports-debug | source
| ntpsec         | 1.2.0+dfsg1-4         | stable                 | source, amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x
| ntpsec         | 1.2.1+dfsg1-6         | testing                | source, amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x
| ntpsec         | 1.2.1+dfsg1-6         | unstable               | source, amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x
| ntpsec         | 1.2.1+dfsg1-6         | unstable-debug         | source
| ntpsec-ntpdate | 1.1.3+dfsg1-2+deb10u1 | oldstable              | amd64, arm64, armel, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x
| ntpsec-ntpdate | 1.2.0+dfsg1-4~bpo10+1 | buster-backports       | amd64, arm64, armel, armhf, i386, mips, mips64el, mipsel, ppc64el, s390x
| ntpsec-ntpdate | 1.2.0+dfsg1-4         | stable                 | amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x
| ntpsec-ntpdate | 1.2.1+dfsg1-6         | testing                | amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x
| ntpsec-ntpdate | 1.2.1+dfsg1-6         | unstable               | amd64, arm64, armel, armhf, i386, mips64el, mipsel, ppc64el, s390x

8 months agoRelease new version 0.40.0 v0.40.0
Michael Prokop [Mon, 21 Mar 2022 15:19:28 +0000 (16:19 +0100)]
Release new version 0.40.0

8 months agoRedesign RELEASE_INFO handling + fix variable replacements within templates
Michael Prokop [Fri, 11 Mar 2022 15:53:06 +0000 (16:53 +0100)]
Redesign RELEASE_INFO handling + fix variable replacements within templates

There's no point in setting "$GRML_NAME $VERSION - $RELEASENAME" at
different places, while it's supposed to be identical to $RELEASE_INFO,
so let's unify it.

Also ensure, that $fixed_release_info is set at the appropriate place.
Otherwise it might be missing, when adjust_boot_files() is invoked from
within grub_setup(). This has been observed to fail for example with
SecureBoot enabled, and using grml-live's `-b` option:

  [*] Secure Boot is enabled [mode: debian]
  [x] Variable fixed_squashfs_name is unset, can't adjust %SQUASHFS_NAME% in templates.
  [x] Variable fixed_release_info is unset, can't adjust %RELEASE_INFO% in templates.
  [*] Generated 64-bit Secure Boot (debian) EFI image /srv/grml-live/grml64-forensic_2022.03-1/grml_chroot//boot/efi.img

Furthermore, $fixed_squashfs_name shouldn't be used in
adjust_boot_files(), as the boot templates usually include
"toram=%SQUASHFS_NAME%", while this shouldn't be stripped of (as it
would break the actual toram feature then).  Instead, the
$fixed_squashfs_name should be used only with specific isolinux/syslinux
config files, where the length matters for the appropriate line length
for its look'n'feel.

This work was funded by Grml-Forensic.

8 months agoUse grubx64.efi file from grml_chroot, instead of relying on host system
Michael Prokop [Fri, 11 Mar 2022 15:18:19 +0000 (16:18 +0100)]
Use grubx64.efi file from grml_chroot, instead of relying on host system

We don't want to depend on the host system, but instead use the
grubnetx64.efi.signed or grubnetx64.efi files from the grml_chroot as
grubx64.efi for PXE boot.

Related to commit 871fc96fc

This work was funded by Grml-Forensic.

10 months agoSW: add myrescue to GRML_FULL
Michael Prokop [Tue, 1 Feb 2022 16:35:09 +0000 (17:35 +0100)]
SW: add myrescue to GRML_FULL

This requires only ~85kB of disk space.

10 months agobuildinfo generation: avoid error message with older versions of jo
Michael Prokop [Wed, 26 Jan 2022 12:27:23 +0000 (13:27 +0100)]
buildinfo generation: avoid error message with older versions of jo

We use the jo(1) tool for generating /conf/buildinfo.json.
To avoid syntax errors when sorting the list of keys/values, we
also end the last entry (wayback_date=...) with a "\", so the next
line is considered, and reordering the list is simple.

The usage of ":" isn't supported by older versions of jo, though:

| % jo -v
| jo 1.0
| % jo -p foo=bar :
| Argument `:' is neither k=v nor k@v
| {
|    "foo": "bar"
| }

FTR, newer versions don't cause any failure messages:

| % jo -v
| jo 1.3
| % jo -p foo=bar :
| {
|    "foo": "bar"
| }

Since there's no strong need to use ":", the error message might look
like the /conf/buildinfo.json isn't generated (while it still is), and
I'd like to keep sorting the list easy and error free, let's fix this.
Usage of "--" usually ends list of command line options, let's use this
pattern instead.

10 months agoSW: drop bonnie++ from GRML_FULL
Michael Prokop [Wed, 26 Jan 2022 06:49:19 +0000 (07:49 +0100)]
SW: drop bonnie++ from GRML_FULL

bonnie++ is missing from Debian/testing since 2021-10-27, due to +

Since 2021-08-23 there's a patch available to address the build failure
(see, but
sadly there's no progress from upstream / package maintainer since then.

Given that fio exists nowadays, let's see whether there's any need
to include bonnie++ at all.

10 months agoSW: replace fluxbox with openbox + obconf in GRML_FULL
Michael Prokop [Mon, 24 Jan 2022 17:09:42 +0000 (18:09 +0100)]
SW: replace fluxbox with openbox + obconf in GRML_FULL

fluxbox is missing in Debian/testing (upcoming bookworm) due to a ftbfs
bug (see since
2021-10-27, and it looks like this isn't going to change soonish.  We've
good experience with usage of openbox for custom Grml flavours, so let's
try replacing fluxbox with openbox (and obconf for configuring openbox).


10 months agoRelease new version 0.39.2 v0.39.2
Michael Prokop [Mon, 24 Jan 2022 16:19:08 +0000 (17:19 +0100)]
Release new version 0.39.2

10 months agoSW: drop iptstate from GRML_SMALL + GRML_FULL
Michael Prokop [Mon, 24 Jan 2022 16:05:57 +0000 (17:05 +0100)]
SW: drop iptstate from GRML_SMALL + GRML_FULL

iptstate is missing in Debian/testing due to

At least for the time being, let's drop it from our software list,
to get fresh Debian/testing based daily ISO builds again.

10 months agoSW: drop firmware-ath9k-htc from GRMLBASE
Michael Prokop [Mon, 24 Jan 2022 16:04:27 +0000 (17:04 +0100)]
SW: drop firmware-ath9k-htc from GRMLBASE

firmware-ath9k-htc is missing in Debian/testing due to Its fix is
stuck in the open-ath9k-htc-firmware package in Debian's NEW queue since
5 months (see

At least for the time being, let's drop it from GRMLBASE, to get fresh
Debian/testing based daily ISO builds again.


10 months agoMerge remote-tracking branch 'origin/github/pr/106'
Michael Prokop [Mon, 24 Jan 2022 09:50:31 +0000 (10:50 +0100)]
Merge remote-tracking branch 'origin/github/pr/106'

10 months agogrml-live.txt: output dir mount options; manifold
Dr. András Korn [Mon, 24 Jan 2022 09:48:22 +0000 (10:48 +0100)]
grml-live.txt: output dir mount options; manifold

Explain that the output dir shouldn't be nodev, noexec or nosuid (some packages may fail to configure correctly with nosuid even if no problems are immediately apparent with the default builds).

Improve the section on reverting manifold.

10 months agoSW: drop bacula-* from GRML_FULL
Michael Prokop [Tue, 11 Jan 2022 06:36:40 +0000 (07:36 +0100)]
SW: drop bacula-* from GRML_FULL

Bacula was removed from Debian/testing as of 2021-11-23 due to #997139.
It's unclear, whether bacula is of any further use on a live system
as-is (also given that the bacula version in Debian is lagging behind
upstream quite a lot; and there also exists bareos nowadays, though not
present in Debian as such). If someone should be missing bacula from
Grml, I'd like to know.

Not only drop the software packages, but also drop the hostname
workaround for /etc/bacula/bacula-fd.conf in our GRMLBASE/05-hostname

10 months agoSW: replace exfat-utils with exfatprogs in GRML_FULL
Michael Prokop [Tue, 11 Jan 2022 06:31:24 +0000 (07:31 +0100)]
SW: replace exfat-utils with exfatprogs in GRML_FULL

See and

13 months agoSW: drop slurm from GRML_FULL
Michael Prokop [Wed, 13 Oct 2021 15:40:35 +0000 (17:40 +0200)]
SW: drop slurm from GRML_FULL

slurm got removed from Debian/testing on 2021-10-08 due to

Given that this prevents builds of grml-testing in our daily
ISOs, let's remove the package, at least for now.

13 months agoSW: add f2fs-tools to GRML_SMALL + GRML_FULL
Michael Prokop [Tue, 5 Oct 2021 07:48:43 +0000 (09:48 +0200)]
SW: add f2fs-tools to GRML_SMALL + GRML_FULL

Thanks: Arun for the suggestion

14 months agoSW: drop ifenslave from GRML_SMALL and GRML_FULL
Michael Prokop [Mon, 27 Sep 2021 09:41:46 +0000 (11:41 +0200)]
SW: drop ifenslave from GRML_SMALL and GRML_FULL

Quoting /usr/share/doc/ifenslave/NEWS.Debian.gz:

| ifenslave (2.10) unstable; urgency=medium
|   This version of the ifenslave package no longer provides /sbin/ifenslave. The
|   /sbin/ip command from the iproute2 package supports creating bonding masters
|   and enslaving other interfaces to it.
|  -- Guus Sliepen <>  Tue, 08 May 2018 22:47:07 +0200

ifenslave is no longer in Debian/testing since 2021-09-14 due to RC
bugs, and therefore we don't have any recent Debian/testing based daily
ISOs anymore. Given that iproute2 supports network bonding, let's drop
ifenslave from our package list.

Related to

14 months agoRelease new version 0.39.1 v0.39.1
Michael Prokop [Mon, 27 Sep 2021 08:55:11 +0000 (10:55 +0200)]
Release new version 0.39.1

14 months agoisolinux: fix toram=... variable usage within isolinux configs
Michael Prokop [Mon, 27 Sep 2021 08:35:16 +0000 (10:35 +0200)]
isolinux: fix toram=... variable usage within isolinux configs

Fixup for commit 9453222c0, where we introduced usage of
$fixed_squashfs_name.  This variable was set up only *after*
adjust_boot_files function got invoked for the isolinux configuration
files. As a result the isolinux configuration files ended up with their
template placeholder settings included ("toram=%SQUASHFS_NAME%").

Fix ordering, but also warn in adjust_boot_files() if the the
$fixed_squashfs_name + $fixed_release_info variables are unset.

Thanks: Chris Hofstaedtler for the bug report

15 months agoGRMLBASE/15-initsetup: provide workaround for failing rsyslog
Michael Prokop [Tue, 24 Aug 2021 08:14:21 +0000 (10:14 +0200)]
GRMLBASE/15-initsetup: provide workaround for failing rsyslog

Previous versions of the rsyslog package provided its rsyslog systemd
unit file as /lib/systemd/system/rsyslog.service. Starting with rsyslog
v8.2108.0-1, the file is provided as
/usr/lib/systemd/system/rsyslog.service though. This change is related
to the "dh_installsystemd: Prefer /usr/lib/systemd/ to /lib/systemd"
change from debhelper v13.4, which furthermore seems to be related to
the usrmerge situation.

Now executing `systemctl preset-all` fails though:

| # systemctl preset-all
| [...]
| Failed to preset unit, file /etc/systemd/system/syslog.service already exists and is a symlink to /lib/systemd/system/rsyslog.service.

By manually removing the /etc/systemd/system/syslog.service symlink, the
appropriate symlink (from /etc/systemd/system/syslog.service towards
/usr/lib/systemd/system/rsyslog.service) gets set up as expected again.

Reported towards Debian as #992847, but until it's fixed in the upstream
packaging, we need a workaround in our build tools.

15 months agoUpdate DEBIAN_STABLE's apt sources.list configuration for bullseye
Michael Prokop [Mon, 23 Aug 2021 09:27:32 +0000 (11:27 +0200)]
Update DEBIAN_STABLE's apt sources.list configuration for bullseye

Related fix for commit 07181b4c86f. Now that bullseye is the new Debian
stable release, also adjust the backports entry accordingly.

FTR, when using "stable-backports" instead of "bullseye-backports",
apt warns about:

| W: Conflicting distribution: stable-backports InRelease (expected stable-backports but got bullseye-backports)

We might not worry about this, but it might be confusing for users,
so until we've a better approach for this, let's keep it as-is.

Thanks: d630 for the bug report

16 months agoRelease new version 0.39.0 v0.39.0
Michael Prokop [Sun, 25 Jul 2021 15:25:24 +0000 (17:25 +0200)]
Release new version 0.39.0

16 months agoImmediately bail out on errors when generating the ISO fails
Michael Prokop [Fri, 16 Jul 2021 16:21:13 +0000 (18:21 +0200)]
Immediately bail out on errors when generating the ISO fails

For example when the file system is (close to) full and trying to
generate the ISO, the $MKISOFS command line fails with exit code 32, but
we continue to operate on the ISO filename with the isohybrid related
actions and might overwrite the ISO by resetting it.

16 months agoProvide information how ISO was generated in file conf/buildinfo.json
Michael Prokop [Wed, 14 Jul 2021 01:09:25 +0000 (03:09 +0200)]
Provide information how ISO was generated in file conf/buildinfo.json

Relevant changes:

* Depend on "jo" tool, used for generating the json output in

* Do not rewrite $SQUASHFS_NAME content, instead handle its fixed output
  format via $fixed_squashfs_name

* Same for $RELEASE_INFO content, handled via $fixed_squashfs_name now

* Always set $SQUASHFS_BINARY if unset, to be able to log
  a proper command line, even if mksquashfs stage gets skipped

FTR: the generated file is accessible on the live system under


16 months agoRelease new version 0.38.5 v0.38.5
Michael Prokop [Tue, 13 Jul 2021 14:03:27 +0000 (16:03 +0200)]
Release new version 0.38.5

16 months agonetboot creation: no longer compress the tarball + only generate sha256 checksum...
Michael Prokop [Tue, 13 Jul 2021 13:44:46 +0000 (15:44 +0200)]
netboot creation: no longer compress the tarball + only generate sha256 checksum file

Compressing the tarball takes several seconds, while there's usually
no change in file size, as pretty much all its files are already
compressed. By no longer compressing the tarball we reduce build time.

Also no longer generated sha1 and sha512 checksum files, we agreed
to only rely on sha256 checksum files nowadays.

Related to

16 months agoNo longer produce md5, sha1 + sha512 checksums, but only sha256
Michael Prokop [Tue, 13 Jul 2021 13:43:36 +0000 (15:43 +0200)]
No longer produce md5, sha1 + sha512 checksums, but only sha256

We no longer rely on those checksum files and it increases build
time. It should be enough to generate just the sha256 checksum file.

Related to

16 months agoGRMLBASE/98-clean-chroot: also nuke *.xz files
Michael Prokop [Tue, 13 Jul 2021 13:42:43 +0000 (15:42 +0200)]
GRMLBASE/98-clean-chroot: also nuke *.xz files

Files like /var/log/apt/eipp.log.xz are present nowadays

16 months agoRelease new version 0.38.4 v0.38.4
Michael Prokop [Mon, 12 Jul 2021 07:49:08 +0000 (09:49 +0200)]
Release new version 0.38.4

16 months agoSW: add speedtest-cli to GRML_FULL
Michael Prokop [Mon, 12 Jul 2021 06:38:56 +0000 (08:38 +0200)]
SW: add speedtest-cli to GRML_FULL

FTR: requires only 106 kB of additional disk space

Thanks: Darshaka Pathirana for the suggestion

16 months agoSW: add inxi to GRML_FULL
Michael Prokop [Mon, 12 Jul 2021 06:37:14 +0000 (08:37 +0200)]
SW: add inxi to GRML_FULL

Thanks: Darshaka Pathirana for the suggestion

16 months agoetc/grml/fai/config/files/etc/hosts/GRMLBASE: sync IPv6 entries with Debian
Michael Prokop [Fri, 9 Jul 2021 13:52:45 +0000 (15:52 +0200)]
etc/grml/fai/config/files/etc/hosts/GRMLBASE: sync IPv6 entries with Debian

Quoting from Debian netbase's changelog (see

| netbase (5.1) unstable; urgency=low
| [...]
| * Removed ip6-localnet and ip6-mcastprefix from the default /etc/hosts
|   created by postinst because they have no purpose. (Closes: #688090)
| [...]
| netbase (4.30) unstable; urgency=low
|   * On new installs add localhost as an alias for ::1. (Closes: #427067)
| [...]
| netbase (4.35) unstable; urgency=low
|   * Do not add ff02::3 to /etc/hosts because it is not actually assigned.
|     (Closes: #499800)

FTR: netbase 5.1 pre-dates Debian/jessie AKA oldoldstable (which shipped
netbase 5.3)

Development time sponsored by Sipwise GmbH

16 months agoSW: drop rng-tools from GRMLBASE
Michael Prokop [Fri, 9 Jul 2021 12:20:34 +0000 (14:20 +0200)]
SW: drop rng-tools from GRMLBASE

This was noticed via a dependency on mksh (rng-tools, being a
transitional dummy package nowadays, actually Pre-Depends on mksh).
This saves us ~1,671 kB and we already ship haveged. If we really want
to provide such a feature (to feature an entropy gathering daemon to
support hardware randon number generators), then we should probably look
into rng-tools5 instead.

16 months agoRelease new version 0.38.3 v0.38.3
Michael Prokop [Fri, 9 Jul 2021 07:15:25 +0000 (09:15 +0200)]
Release new version 0.38.3

16 months agoSW: add wireless-regdb to GRML_FULL
Michael Prokop [Fri, 9 Jul 2021 05:31:44 +0000 (07:31 +0200)]
SW: add wireless-regdb to GRML_FULL

Seems to be relevant for certain wireless network devices,
start with shipping it for GRML_FULL (whether it's relevant
for GRML_SMALL to be determined yet).

16 months agoSW: add jq to GRML_FULL
Michael Prokop [Thu, 8 Jul 2021 15:16:31 +0000 (17:16 +0200)]
SW: add jq to GRML_FULL

This is certainly a useful tool that we should include by default

17 months agoRelease new version 0.38.2 v0.38.2
Michael Prokop [Mon, 7 Jun 2021 08:44:34 +0000 (10:44 +0200)]
Release new version 0.38.2

17 months agoSW: drop comgt from GRML_FULL
Michael Prokop [Fri, 4 Jun 2021 10:55:47 +0000 (12:55 +0200)]
SW: drop comgt from GRML_FULL

The comgt package was orphaned in 2021 (see and its last
upload dates back to 2016. It shouldn't really matter in 2021 anymore,
but if it really does then let's find out.

17 months agoSW: drop wvdial from GRML_FULL
Michael Prokop [Fri, 4 Jun 2021 10:43:41 +0000 (12:43 +0200)]
SW: drop wvdial from GRML_FULL

The wvdial package was orphaned in 2018 (see and my
assumption is that Point-to-Point protocols aren't really relevant for
Grml users anymore nowadays. It was requested in 2012 (see commit
9c06220097) for GRML_FULL, but if someone really cares about this in
2021 as well it's time to find out (and then we should discuss whether
it's also relevant for GRML_SMALL?).

Removing wvdial package and its dependencies frees ~2.710 kB of disk space.

18 months agoSW: add firmware-ath9k-htc to GRMLBASE
Michael Prokop [Mon, 31 May 2021 05:30:10 +0000 (07:30 +0200)]
SW: add firmware-ath9k-htc to GRMLBASE

Only ~168kB of additional disk space and required for USB wireless adapters,
and licensed under GPL-2(+)

18 months agoRelease new version 0.38.1 v0.38.1
Michael Prokop [Fri, 7 May 2021 15:49:10 +0000 (17:49 +0200)]
Release new version 0.38.1

18 months agoRefresh lintian overrides to reflect current state
Michael Prokop [Fri, 7 May 2021 15:41:24 +0000 (17:41 +0200)]
Refresh lintian overrides to reflect current state