grml-autoconfig.git
2 months agoRelease new version 0.22.0 master v0.22.0
Michael Prokop [Fri, 2 Feb 2024 15:49:46 +0000 (16:49 +0100)]
Release new version 0.22.0

2 months agoDrop support for dmraid
Michael Prokop [Fri, 2 Feb 2024 15:32:40 +0000 (16:32 +0100)]
Drop support for dmraid

dmraid is obsolete and isn't available with Debian trixie (current
testing) and newer anymore. See https://bugs.debian.org/1056944,
https://bugs.debian.org/864423 and https://bugs.debian.org/1034188 for
details.

6 months agoRelease new version 0.21.2 v0.21.2
Michael Prokop [Wed, 4 Oct 2023 17:00:08 +0000 (19:00 +0200)]
Release new version 0.21.2

6 months agoMerge remote-tracking branch 'origin/github/pr/15'
Michael Prokop [Wed, 4 Oct 2023 16:58:05 +0000 (18:58 +0200)]
Merge remote-tracking branch 'origin/github/pr/15'

Quoting from the PR at https://github.com/grml/grml-autoconfig/pull/15:

| If I put the ISO to hard disk (e.g sda1) and also label that GRMLCFG I get an error:
|
| [  OK  ] Searching for device(s) labeled with GRMLCFG. (Disable this via boot option: noautoconfig)
| [  OK  ] debs, config, scripts are read from /dev/sda1.
| [ WARN ] /dev/sda1 already mounted on /run/live/findiso
| /usr/lib/live/mount/findiso
| [  OK  ] Debs, config, scripts (if present) will be read from /run/live/findiso
| /usr/lib/live/mount/findiso.
| config_config:cd:4: no such file or directory: /run/live/findiso\n/usr/lib/live/mount/findiso
| [  OK  ] Trying to execute /run/live/findiso
| /usr/lib/live/mount/findiso/scripts/
| sh: 1: /run/live/findiso: Permission denied
| sh: 2: /usr/lib/live/mount/findiso/scripts/: not found
| [ WARN ] No soundcard present, skipping mixer settings therefore.
| [  OK  ] Starting gpm in background.
|
| The findiso mechanism mounts sda1 twice and when trying to find that mountpoint the script fails.
| I suggest to pick the first mountpoint.

6 months agoif multiple mountpoints avail, pick the first one
Csillag Tamas [Wed, 4 Oct 2023 12:55:22 +0000 (14:55 +0200)]
if multiple mountpoints avail, pick the first one

7 months agoRelease new version 0.21.1 v0.21.1
Michael Prokop [Sat, 16 Sep 2023 12:44:09 +0000 (14:44 +0200)]
Release new version 0.21.1

7 months agoImprove easter egg for 20 years of grml.org mika/easteregg
Michael Prokop [Sat, 16 Sep 2023 10:19:23 +0000 (12:19 +0200)]
Improve easter egg for 20 years of grml.org

Relevant changes:

1) Don't convert dates via date(1), but provide epoch seconds right away
2) Also use zsh's ${EPOCHSECONDS} instead of forking to date(1)
3) Display easter egg message with einfo iff we are within the birthday range
4) Don't display easter egg only on 2023-09-16 and one month later,
   but instead have the easter egg appear randomly, with diminishing probability as
   you get farther from the actual birthday
5) Don't display anything at all when booting with noeasteregg boot option

Thanks: Christopher Bock and András Korn

7 months agoRelease new version 0.21.0 v0.21.0
Michael Prokop [Thu, 14 Sep 2023 16:25:44 +0000 (18:25 +0200)]
Release new version 0.21.0

7 months agoMerge remote-tracking branch 'origin/github/pr/13'
Michael Prokop [Thu, 14 Sep 2023 16:24:10 +0000 (18:24 +0200)]
Merge remote-tracking branch 'origin/github/pr/13'

7 months agoImplement easter egg for 20 years of grml.org
Michael Prokop [Thu, 14 Sep 2023 15:00:44 +0000 (17:00 +0200)]
Implement easter egg for 20 years of grml.org

% whois grml.org | grep 'Creation Date'
Creation Date: 2003-09-16T13:09:06Z

Thanks: Christopher Bock for suggesting usage of lolcat

7 months agoRelease new version 0.20.7 v0.20.7
Michael Prokop [Fri, 8 Sep 2023 06:55:59 +0000 (08:55 +0200)]
Release new version 0.20.7

7 months agoconfig_cpu: use lscpu for identifying CPU information
Michael Prokop [Fri, 8 Sep 2023 06:32:21 +0000 (08:32 +0200)]
config_cpu: use lscpu for identifying CPU information

On arm64 we don't have the CPU information in /proc/cpuinfo as expected
by our config_cpu, so its output is broken:

| # awk -F: '/^processor/{printf "        Processor"$2" is"};/^model name/{printf $2};/^vendor_id/{printf vendor};/^cpu MHz/{printf " %dMHz",int($2)};/^cache size/{printf ","$2" Cache"};/^$/{print ""}' /proc/cpuinfo
|         Processor 0 is
|         Processor 1 is
| [...]
|         Processor 13 is
|         Processor 14 is
|         Processor 15 is

FTR:

| # head /proc/cpuinfo
| processor       : 0
| BogoMIPS        : 50.00
| Features        : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp ssbs
| CPU implementer : 0x41
| CPU architecture: 8
| CPU variant     : 0x3
| CPU part        : 0xd0c
| CPU revision    : 1
|
| processor       : 1

While with lspcu we get the information we're interested in:

| # lscpu | grep 'Model name:'
| Model name:                      Neoverse-N1
| BIOS Model name:                 virt-5.2  CPU @ 2.0GHz

So instead of having some hackish /proc/cpuinfo parsing, let's rely on
util-linux's lscpu(1).

While at it, let's output only the number of present CPUs instead of
listing every single one of them, given that there exist systems with
>100 CPUs nowadays. :)

Thanks: Christopher Bock and András Korn for feedback

7 months agoRelease new version 0.20.6 v0.20.6
Michael Prokop [Wed, 6 Sep 2023 15:25:33 +0000 (17:25 +0200)]
Release new version 0.20.6

7 months agoimvirt/vmware: don't allow output of grep on stdout
Michael Prokop [Fri, 1 Sep 2023 12:04:52 +0000 (14:04 +0200)]
imvirt/vmware: don't allow output of grep on stdout

To clarify, output of virt-what executed inside a VM on a VMware cluster
is `vmware`, and `VMware ESX Server` for imvirt.

Thanks: András Korn

7 months agoReplace deprecated vmware-detect with virt-what/imvirt
Michael Prokop [Fri, 1 Sep 2023 11:57:49 +0000 (13:57 +0200)]
Replace deprecated vmware-detect with virt-what/imvirt

As of git commit 0c1cd5d0cbee in grml-scripts we no longer ship our
vmware-detect binary, so instead rely on virt-what and imvirt.

Output of virt-what executed inside a VM on a VMware cluster is `vmware`
and `VMware ESX server` for imvirt.

Thanks: Christoph Biedl and András Korn for feedback

8 months agoRelease new version 0.20.5 v0.20.5
Michael Prokop [Fri, 11 Aug 2023 17:39:50 +0000 (19:39 +0200)]
Release new version 0.20.5

8 months agoDepend on util-linux-extra or older util-linux
Michael Prokop [Fri, 4 Aug 2023 14:52:24 +0000 (16:52 +0200)]
Depend on util-linux-extra or older util-linux

As of util-linux v2.38-1, the hwclock binary was moved
to the separate util-linux-extra package. So either depend
on util-linux-extra (available with bookworm and newer),
or older util-linux (for releases before bookworm).

Fixes:

| [ FAIL ] Problem running hwclock: config_time:36: command not found: hwclock

13 months agoRelease new version 0.20.4 v0.20.4
Michael Prokop [Mon, 27 Feb 2023 16:37:17 +0000 (17:37 +0100)]
Release new version 0.20.4

14 months agoDrop support for bootlogd
Michael Prokop [Mon, 6 Feb 2023 14:55:05 +0000 (15:55 +0100)]
Drop support for bootlogd

We no longer support non-systemd init systems like file-rc, one can run
`journalctl -b` nowadays. There's no point in supporting bootlogd given
that we don't even ship it any longer.

Thanks: Roland Sommer for reporting

19 months agoRelease new version 0.20.3 v0.20.3
Michael Prokop [Fri, 2 Sep 2022 15:17:07 +0000 (17:17 +0200)]
Release new version 0.20.3

19 months agosystemd unit: use StandardInput=null to work in serial console mode
Michael Prokop [Fri, 2 Sep 2022 15:02:07 +0000 (17:02 +0200)]
systemd unit: use StandardInput=null to work in serial console mode

We shouldn't need standard input connected to a TTY, but when booting
in serial console mode (like `console=tty1 console=ttyS0,9600n8`), then
grml-autoconfig service fails with:

| systemd[1]: Starting Grml boot option support...
| systemd[1]: grml-autoconfig.service: Main process exited, code=exited, status=1/FAILURE
| systemd[1]: grml-autoconfig.service: Failed with result 'exit-code'.
| systemd[1]: Failed to start Grml boot option support.
| systemd[1]: grml-autoconfig.service: Consumed 2.475s CPU time.

Replacing `StandardInput=tty` with `StandardInput=null` fixes
this, while non-serial console mode seems to continue working fine.

Closes: https://github.com/grml/grml/issues/176

2 years agoRelease new version 0.20.2 v0.20.2
Michael Prokop [Mon, 21 Mar 2022 17:06:04 +0000 (18:06 +0100)]
Release new version 0.20.2

2 years agorunning_under_secureboot: update for efivarfs + new mokutil behavior
Michael Prokop [Mon, 21 Mar 2022 17:02:31 +0000 (18:02 +0100)]
running_under_secureboot: update for efivarfs + new mokutil behavior

CONFIG_EFI_VARS is no longer available since
https://salsa.debian.org/kernel-team/linux/-/commit/20146398c4599147244ed3ffc54f38d07fb8dea3
(tagged initially as debian/5.10.1-1_exp1 + shipped with kernel package
5.10.1-1~exp1 and newer, incl. 5.10.0-12-amd64 as present in current
Debian/bullseye). Therefore the kernel module efivars is no longer
available on more recent Debian kernel systems, but efivarfs
needs to be used instead.

The behavior of mokutil also seems to have changed. On systems where
SecureBoot is available but not enabled, it outputs "SecureBoot
disabled", while no longer returning with an exit code other than 0.
On systems where Secure Boot isn't supported (e.g. in VirtualBox) it
reports "This system doesn't support Secure Boot" on stderr, with exit
code 255.

Verified with mokutil 0.3.0+1538710437.fb6250f-1

This work was funded by Grml-Forensic.

2 years agoRelease new version 0.20.1 v0.20.1
Michael Prokop [Mon, 10 May 2021 06:45:11 +0000 (08:45 +0200)]
Release new version 0.20.1

2 years agoDemote unavailability of dmraid from error to warning only
Michael Prokop [Mon, 10 May 2021 06:39:31 +0000 (08:39 +0200)]
Demote unavailability of dmraid from error to warning only

dmraid had its latest Debian upload in 2017, the last upstream release
dates back to 2010 (see http://people.redhat.com/~heinzm/sw/dmraid/src/)
and it has plenty of unresolved bugs. It's furthermore relevant for so
called fake RAIDs only, something which is rather exotic and therefore
Grml ISOs not including dmraid should just raise a warning, rather than
an error message.

Thanks to Sipwise for sponsoring my development time.
See Sipwise internal ticket TT#121951

2 years agoRelease new version 0.20.0 v0.20.0
Michael Prokop [Fri, 7 May 2021 15:30:24 +0000 (17:30 +0200)]
Release new version 0.20.0

2 years agoDrop deprecated Conflicts and Replaces on grml-etc + grml-saveconfig
Michael Prokop [Fri, 7 May 2021 15:26:37 +0000 (17:26 +0200)]
Drop deprecated Conflicts and Replaces on grml-etc + grml-saveconfig

grml-etc 0.4-7 dates back to 2006-10-18, and grml-saveconfig
to 2012-07-02 (and isn't present in any of our repositories anymore).
Time to get rid of those historic artifacts :)

2 years agoApply wrap-and-sort (-tas) on Debian packaging
Michael Prokop [Fri, 7 May 2021 15:20:47 +0000 (17:20 +0200)]
Apply wrap-and-sort (-tas) on Debian packaging

2 years agoConvert language-functions from ISO-8859 to UTF-8
Michael Prokop [Fri, 7 May 2021 15:08:58 +0000 (17:08 +0200)]
Convert language-functions from ISO-8859 to UTF-8

Via `iconv -c -t UTF-8 ./language-functions  > language-functions.new`

Fixes lintian warning:

| grml-autoconfig: national-encoding etc/grml/language-functions

2 years agoDrop /etc/init.d/grml-autoconfig.strace
Michael Prokop [Fri, 7 May 2021 15:06:36 +0000 (17:06 +0200)]
Drop /etc/init.d/grml-autoconfig.strace

This isn't used since ages, so no point in keeping it around

2 years agoDrop deprecated /etc/dhcp3 and ship as /etc/dhcp only
Michael Prokop [Fri, 7 May 2021 15:04:43 +0000 (17:04 +0200)]
Drop deprecated /etc/dhcp3 and ship as /etc/dhcp only

The /etc/dhcp3/* files are deprecated since 2012, time to pull the
plug :) Also see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=673029

Now we only ship it as /etc/dhcp/dhclient-exit-hooks.d/grml-sethostname

2 years agoRefresh packaging and use new debhelper style
Michael Prokop [Fri, 7 May 2021 14:44:32 +0000 (16:44 +0200)]
Refresh packaging and use new debhelper style

* Bump Standards-Version to 4.5.1
* Add debian/source/format, marking package as 3.0 (native)
* Refresh debian/grml-autoconfig.lintian-overrides, also
  clarify the overrides

2 years agoThe Uni3-Terminus16.psf.gz font is shipped by console-setup-linux nowadays
Michael Prokop [Fri, 7 May 2021 14:21:17 +0000 (16:21 +0200)]
The Uni3-Terminus16.psf.gz font is shipped by console-setup-linux nowadays

Package console-terminus doesn't exist as such and is only
a virtual package (at least nowadays), provided by console-setup-linux

3 years agoRelease new version 0.19.4 v0.19.4
Michael Prokop [Tue, 15 Sep 2020 19:19:16 +0000 (21:19 +0200)]
Release new version 0.19.4

3 years agoDo not run VirtualBox setup under enabled Secure Boot to avoid errors and startup...
Michael Prokop [Tue, 15 Sep 2020 19:16:49 +0000 (21:16 +0200)]
Do not run VirtualBox setup under enabled Secure Boot to avoid errors and startup delays

The VirtualBox package from upstream isn't signed for usage with Secure
Boot with the Debian kernel.

When booting with Secure Boot enabled, then upstream's vboxdrv.service with
its vboxdrv.sh executes all kind of Secure Boot related magic like:

| /usr/bin/perl -w /usr/share/debconf/frontend /usr/sbin/update-secureboot-policy --new-key

This fails and causes a noticeable delay during bootup.  Therefore skip
execution of VirtualBox setup within our config_virtualbox_setup() when
detecting enabled Secure Boot mode, at least until we've a better solution
for this.

While doing so, move detection of enabled Secure Boot mode into a helper
function to avoid DRY code.

Thanks: Ralf Moll for the bugreport

3 years agoRelease new version 0.19.3 v0.19.3
Michael Prokop [Thu, 13 Aug 2020 07:57:08 +0000 (09:57 +0200)]
Release new version 0.19.3

3 years agoImprove VirtualBox shared folders + support vboxdrv service
Michael Prokop [Thu, 13 Aug 2020 07:55:45 +0000 (09:55 +0200)]
Improve VirtualBox shared folders + support vboxdrv service

The virtualbox shared folders code couldn't be skipped during runtime,
so add support boot option "novboxsf" to skip shared folders setup.

While at it reduce code complexity in config_virtualbox_shared_folders()
(by returning when not running under virtualbox).

Also do not hard code "grml" user to be added to vboxsf group, but rely
on $fstabuser instead.

If VirtualBox (not the guest additions, but the application itself) can
be started on Grml live system, then the /usr/bin/VBox exectuable is
present. The vboxdrv driver might not be loaded yet, take care of it via
vboxdrv.service. Also add user to vboxusers group. To be able to easily
skip it (via boot option "novbox") integrate in grml-autoconfig and not
into systemd presets.

This work was funded by Grml-Forensic.

3 years agoRelease new version 0.19.2 v0.19.2
Michael Prokop [Fri, 10 Jul 2020 06:54:24 +0000 (08:54 +0200)]
Release new version 0.19.2

3 years agoVirtualBox shared folders: expect exact match for automation folder name
Michael Prokop [Fri, 3 Jul 2020 14:59:32 +0000 (16:59 +0200)]
VirtualBox shared folders: expect exact match for automation folder name

The shared folder for automation usage (`automation` by default) should
only be enabled if it matches exactly the expected name. A folder named
'automations' shouldn't trigger automation, so adjust egrep command
line.

This work was funded by Grml-Forensic.

3 years agoVirtualBox shared folders: adjust check for detecting shared folder
Michael Prokop [Fri, 3 Jul 2020 14:43:49 +0000 (16:43 +0200)]
VirtualBox shared folders: adjust check for detecting shared folder

More recent VirtualBox versions provide output like:

| 01 - automation [idRoot=0 writeable auto-mount host-icase guest-icase]

While older VirtualBox versions listed only:

| 01 - automation

Adjust the grep command line, to support old and new VBoxControl output.

This work was funded by Grml-Forensic.

3 years agoRelease new version 0.19.1 v0.19.1
Michael Prokop [Tue, 23 Jun 2020 11:05:01 +0000 (13:05 +0200)]
Release new version 0.19.1

3 years agolvm: start lvm2-lvmetad only if present + support lvm2-lvmpolld
Michael Prokop [Tue, 23 Jun 2020 10:43:08 +0000 (12:43 +0200)]
lvm: start lvm2-lvmetad only if present + support lvm2-lvmpolld

lvm2-lvmetad is gone since 2.03.01-1 (and its init script
was actually dropped later in 2.03.02-2).

Instead lvmpolld is available since 2.02.122-1.

While at it improve formatting, as startup of lvm2-lvmpolld (and
lvm2-lvmetad if present) displays a message on initial startup which
gets in between the "Searching for logical volumes and enabling them:"
and the display of present LVM devices, which isn't nice. So properly
split them.

Closes: grml/grml-autoconfig#10

5 years agoRelease new version 0.19.0 v0.19.0
Michael Prokop [Thu, 21 Mar 2019 15:32:02 +0000 (16:32 +0100)]
Release new version 0.19.0

5 years agoDisable shunit2 tests, failing in current Debian/unstable environments
Michael Prokop [Thu, 21 Mar 2019 13:54:55 +0000 (14:54 +0100)]
Disable shunit2 tests, failing in current Debian/unstable environments

It seems to be better with shunit2 from git (commit 7689785,
https://raw.githubusercontent.com/kward/shunit2/master/shunit2),
but I couldn't trace down the issue yet, so disable the tests
for the time being. :-/

5 years agoBump debian/compat to 10 and adjust Build-Depends on debhelper accordingly
Michael Prokop [Thu, 21 Mar 2019 11:32:46 +0000 (12:32 +0100)]
Bump debian/compat to 10 and adjust Build-Depends on debhelper accordingly

5 years agoBump Standards-Version to 4.3.0
Michael Prokop [Thu, 21 Mar 2019 11:32:31 +0000 (12:32 +0100)]
Bump Standards-Version to 4.3.0

5 years agoDrop deprecated doc/grml-autoconfig.200905.txt
Michael Prokop [Thu, 21 Mar 2019 09:00:46 +0000 (10:00 +0100)]
Drop deprecated doc/grml-autoconfig.200905.txt

It's 10 years since we switched the default behavior of grml-autoconfig,
time to pull the plug.

5 years agoSwitch default mount point from /lib/live/mount/medium to /run/live/medium
Michael Prokop [Thu, 21 Mar 2019 08:54:45 +0000 (09:54 +0100)]
Switch default mount point from /lib/live/mount/medium to /run/live/medium

In commit 0d878d3a679 of live-boot(-grml)
("Simplify mount point handling by using /run/live instead of /lib/live/mount")
the mountpath of /lib/live/mount/medium was moved towards /run/live/medium.

Commit c6a17c7b41b of live-boot(-grml) provides a backward compatibility
rbind mount, but occasionally there seems to be a regression somewhere
during boot (see https://github.com/grml/live-boot-grml/issues/10), and
the rbind mount will be deprecated and removed before the bullseye
(Debian 11) release.

Layout changes over time:

* /cdrom: old linuxrc approach
* /live/image for initramfs layout until December 2012
* /lib/live/mount/medium for initramfs layout since December 2012
* /run/live/medium for initramfs layout since December 2018

Drop support for everything but /run/live/medium and
/lib/live/mount/medium, while at it.

Also noticed that save-config wasn't properly handling the location of
the rootfs and overlay mount points, adjusted while at it.

Closes: grml/live-boot-grml#10

5 years agoRelease new version 0.18.1 v0.18.1
Michael Prokop [Sat, 29 Dec 2018 15:22:07 +0000 (16:22 +0100)]
Release new version 0.18.1

5 years agoconfig_language: rely on console-setup for keyboard + font handling
Michael Prokop [Sat, 29 Dec 2018 14:31:54 +0000 (15:31 +0100)]
config_language: rely on console-setup for keyboard + font handling

Our old approach with running loadkeys, setting console font and
invoking unicode_start via grml-autoconfig is incomplete for nowadays'
environments.

We tried to fix that by changing the order in which we set up the fonts,
runnning loadkeys and finally invoking unicode_start (see commit
c820a66a69). But this changed only the behavior on tty1, the other
consoles still had problems when trying to display unicode characters
(see e.g. `systemctl status` output).

Instead when running under systemd rely on console-setup, by assuming
/etc/default/console-setup is set up as needed (implemented in grml-live
>=0.33.4) and adjusting /etc/default/keyboard according to
keyboard=.../lang=... boot options. Finally we invoke the console-setup
service.  (We might want to handle this outside of grml-autoconfig in
the future, but this approach for now guarantees to execute this in the
right order and not spit on the console at the end of the boot process).

Closes: grml/grml-autoconfig#9, grml/grml#50
Thanks: Darshaka Pathirana for debugging this

5 years agoRelease new version 0.18.0 v0.18.0
Michael Prokop [Fri, 14 Dec 2018 10:27:54 +0000 (11:27 +0100)]
Release new version 0.18.0

5 years agobrltty: start brltty service instead of invoking /lib/brltty/brltty.sh
Michael Prokop [Fri, 14 Dec 2018 10:11:40 +0000 (11:11 +0100)]
brltty: start brltty service instead of invoking /lib/brltty/brltty.sh

The /lib/brltty/brltty.sh script doesn't seem to work as such any longer
to start the service.  When starting brltty via `systemctl start brltty`
it at least starts (I'm not sure it's actually working for users of
braille devices., but don't know how to verify it on my own).

Closes: https://github.com/grml/grml/issues/58

5 years agoEnsure haveged is running before ssh service is invoked
Michael Prokop [Thu, 13 Dec 2018 13:58:00 +0000 (14:58 +0100)]
Ensure haveged is running before ssh service is invoked

The random number generator might take quite some while until we reach
state `random: crng init done`. If ssh service is started *before* crng
is done then ssh service startup blocks system boot until enough entropy
is available.

By starting haveged (Linux entropy source using the HAVEGE algorithm)
before ssh service we avoid this.

Since haveged is in our GRMLBASE software selection we can assume that
it's present by default.

FTR, it might be useful to start haveged all the time, but before
going that route let's try whether having it for SSH service is enough.

5 years agoDrop deprecated loadcpufreq/cpufrequtils, no longer relevant
Michael Prokop [Thu, 13 Dec 2018 09:58:03 +0000 (10:58 +0100)]
Drop deprecated loadcpufreq/cpufrequtils, no longer relevant

The cpufreq drivers are autoloaded and the powersave/ondemand driver
is mature enough. The linux-cpupower tools provide the binaries
as replacement for what cpufrequtils provided so far.

Also see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=877016

Thanks: Michael Biebl for the pointer
Closes: https://github.com/grml/grml/issues/51

5 years agoRelease new version 0.17.4 v0.17.4
Michael Prokop [Thu, 25 Oct 2018 14:01:45 +0000 (16:01 +0200)]
Release new version 0.17.4

5 years agoFix unicode font issue under systemd by ensuring proper setup order
Michael Prokop [Thu, 25 Oct 2018 13:55:31 +0000 (15:55 +0200)]
Fix unicode font issue under systemd by ensuring proper setup order

We need to set up the fonts and only *then* run loadkeys,
and finally invoke unicode_start. Otherwise the unicode
setup is incomplete and fonts aren't displayed properly.

Found hint inside https://bugs.freedesktop.org/show_bug.cgi?id=80685 +
https://cgit.freedesktop.org/systemd/systemd/commit/?id=abee28c56d

Thanks to Sipwise for sponsoring my development time.
Closes Sipwise internal ticket TT#17028.

Closes: https://github.com/grml/grml/issues/50

5 years agoRelease new version 0.17.3 v0.17.3
Michael Prokop [Fri, 14 Sep 2018 07:06:55 +0000 (09:06 +0200)]
Release new version 0.17.3

5 years agoBump Standards-Version to 4.2.1
Michael Prokop [Fri, 14 Sep 2018 07:06:37 +0000 (09:06 +0200)]
Bump Standards-Version to 4.2.1

5 years agoDon't output failures when trying to load efivars
Michael Prokop [Fri, 14 Sep 2018 07:05:14 +0000 (09:05 +0200)]
Don't output failures when trying to load efivars

When running inside a system without efi support we get:

| modprobe: ERROR: could not insert 'efivars': No such device

5 years agoRelease new version 0.17.2 v0.17.2
Michael Prokop [Fri, 11 May 2018 07:14:05 +0000 (09:14 +0200)]
Release new version 0.17.2

5 years agoImprove VM detection when running inside recent versions of VirtualBox
Michael Prokop [Fri, 11 May 2018 07:07:48 +0000 (09:07 +0200)]
Improve VM detection when running inside recent versions of VirtualBox

When running e.g. inside VirtualBox 5.2.6 + 5.2.10 on Windows
virt-what and imvirt report different results than expected, as in:

| # virt-what
| virtualbox
| kvm
|
| # imvirt
| KVM

Explicitely check for VMware, KVM + VirtualBox and don't stop
at first hit. Check for expected VM technology within its output
instead of relying on a single string comparison.

Thanks: Martin Besser for the bugreport and providing the relevant output

6 years agoRelease new version 0.17.1 v0.17.1
Michael Prokop [Tue, 2 Jan 2018 11:28:19 +0000 (12:28 +0100)]
Release new version 0.17.1

6 years agoMake interactive scripts work
Marcos Mello [Tue, 2 Jan 2018 10:19:46 +0000 (08:19 -0200)]
Make interactive scripts work

Effectively connect stdin/stdout/stderr to /dev/console. Fixes grml/grml#71.

6 years agoRelease new version 0.17.0 v0.17.0
Michael Prokop [Fri, 6 Oct 2017 11:46:35 +0000 (13:46 +0200)]
Release new version 0.17.0

6 years agoBump Standards-Version to 4.1.1
Michael Prokop [Fri, 6 Oct 2017 11:45:58 +0000 (13:45 +0200)]
Bump Standards-Version to 4.1.1

6 years agoNever start systemd services in background
Michael Prokop [Fri, 6 Oct 2017 11:01:10 +0000 (13:01 +0200)]
Never start systemd services in background

Only invoke (specific) services in background when not running
systemd, otherwise services just might not get started. There
seems to be a race-condition in the init script of gpm which
doesn't properly run under systemd when invoked via "systemctl
start gpm" in background.  This should be solved once there's a
proper gpm systemd unit file.

Thanks: Leo Bergolth for the bugreport

Closes grml/grml#76

6 years agoAdd x11vnc to Recommends
Michael Prokop [Fri, 6 Oct 2017 10:21:03 +0000 (12:21 +0200)]
Add x11vnc to Recommends

Related to grml/grml#62

6 years agoRelease new version 0.16.1 v0.16.1
Michael Prokop [Thu, 7 Sep 2017 12:30:10 +0000 (14:30 +0200)]
Release new version 0.16.1

6 years agoFor access to efivars filesystem it needs to be of type efivarfs
Michael Prokop [Thu, 7 Sep 2017 12:29:19 +0000 (14:29 +0200)]
For access to efivars filesystem it needs to be of type efivarfs

6 years agoRelease new version 0.16.0 v0.16.0
Michael Prokop [Fri, 1 Sep 2017 15:52:19 +0000 (17:52 +0200)]
Release new version 0.16.0

6 years agoBump Standards-Version to 4.0.1
Michael Prokop [Fri, 1 Sep 2017 15:51:45 +0000 (17:51 +0200)]
Bump Standards-Version to 4.0.1

6 years agoMake sure mokutil reports actual Secure Boot status even if not running under systemd
Michael Prokop [Fri, 1 Sep 2017 15:50:45 +0000 (17:50 +0200)]
Make sure mokutil reports actual Secure Boot status even if not running under systemd

systemd mounts /sys/firmware/efi/efivars automatically, but if we
are not running under systemd (but file-rc instead in our case)
then mokutil doesn't work as needed as it relies on
/sys/firmware/efi/efivars (while /sys/firmware/efi/vars would
exist :-/).

6 years agoRelease new version 0.15.9 v0.15.9
Michael Prokop [Sun, 28 May 2017 17:55:12 +0000 (19:55 +0200)]
Release new version 0.15.9

6 years agostartx: share selected window manager via /var/run/grml-x/window-manager
Michael Prokop [Sun, 28 May 2017 17:49:48 +0000 (19:49 +0200)]
startx: share selected window manager via /var/run/grml-x/window-manager

Closes grml/grml#44

6 years agoRelease new version 0.15.8 v0.15.8
Michael Prokop [Fri, 26 May 2017 21:38:52 +0000 (23:38 +0200)]
Release new version 0.15.8

6 years agoUpdate instructions for manual LVM start + fix LVM detection for lvm boot option
Michael Prokop [Fri, 26 May 2017 21:15:14 +0000 (23:15 +0200)]
Update instructions for manual LVM start + fix LVM detection for lvm boot option

service lvm2-lvmetad doesn't do what we assumed it does.
Instead 'Start lvm2-pvscan@name' allows startup of the
given LV or VG (which is actually nice).

Also we need to explicitely execute `vgchange -a` to
start any present LVs.

Closes grml/grml#31

6 years agoUpdate instructions for manual mdadm start, drop --auto=yes --symlink=no from swraid
Michael Prokop [Fri, 26 May 2017 21:13:17 +0000 (23:13 +0200)]
Update instructions for manual mdadm start, drop --auto=yes --symlink=no from swraid

The "--auto=yes --symlink=no" options shouldn't be relevant any
longer (symlink actually doesn't seem to do what it's supposed).

The "mdmonitor" service doesn't do what we thought it does,
so instead recommend usage of "mdadm --assemble --scan" instead.

Related to grml/grml#45

6 years agoRelease new version 0.15.7 v0.15.7
Michael Prokop [Wed, 24 May 2017 07:17:57 +0000 (09:17 +0200)]
Release new version 0.15.7

6 years agoFix the amixer scontrols parser in config_mixer
Darshaka Pathirana [Sun, 21 May 2017 13:10:49 +0000 (15:10 +0200)]
Fix the amixer scontrols parser in config_mixer

The internal field seperator (IFS) got messed up in commit# 1043bc00e.
While at it, fixed all IFS variables to make it more readable and to
prevent breakage by (automatic) indentation.

This is not (yet) POSIX though, but we are in zsh anyway.

Closes grml/grml#40

6 years agoGet rid of ugly startx helper script and start X on tty7/vt7
Darshaka Pathirana [Sat, 20 May 2017 02:02:18 +0000 (04:02 +0200)]
Get rid of ugly startx helper script and start X on tty7/vt7

The startx helper script was used to get around some permission problems
which were caused by grml-runtty. As we switched to agetty, we also can
get rid of this ugly hack.

Furthermore we decided to start X on tty7/vt7 (if the bootoption startx
is given) as tty6 "is especially reserved for auto-spawned gettys":

 This is done in order to ensure that there's always a way to get a text
 login, even if due to fast user switching X took possession of more
 than 5 VTs.

See: http://0pointer.de/blog/projects/serial-console.html

Relates to grml/grml#20

6 years agoDrop config_debug, not working under systemd as intended
Michael Prokop [Fri, 19 May 2017 13:22:20 +0000 (15:22 +0200)]
Drop config_debug, not working under systemd as intended

Startup of shells during bootup under systemd doesn't work
as with file-rc and actually causes ugly error messages.
systemd has its own mechanism and we should rely on that.

With this change also drop the /proc/sys/kernel/printk related
code, this *shouldn't* be relevant anymore.

Closes grml/grml#3

6 years agoRelease new version 0.15.6 v0.15.6
Michael Prokop [Fri, 19 May 2017 13:07:57 +0000 (15:07 +0200)]
Release new version 0.15.6

6 years agoDrop config_stats
Michael Prokop [Fri, 19 May 2017 12:25:11 +0000 (14:25 +0200)]
Drop config_stats

The stats feature was integrated to collect some basic
information about usage of Grml. While we anonymise
the data we also lack the according information *why*
things are used in a way they are used (e.g. since
we cut of any arguments to bootoptions we don't
know the actual settings for e.g. vga=xxx).

What we learned from the stats is that grml32 is still
in usage way more often than expected, though a leading
majority of the systems support 64bit, so it's unclear
why those users still use the 32bit version.

While we thought it was a good idea back then we think
different nowadays and users of Grml don't expect such
a behavior as default. So don't make it even opt-in but
just drop it overall.

6 years agoDrop deprecated and unsupported CONFIG_WELCOME configuration
Michael Prokop [Fri, 19 May 2017 12:23:32 +0000 (14:23 +0200)]
Drop deprecated and unsupported CONFIG_WELCOME configuration

6 years agoDon't warn if SecureBoot is not enabled, instead only inform about current state
Michael Prokop [Tue, 16 May 2017 22:37:15 +0000 (00:37 +0200)]
Don't warn if SecureBoot is not enabled, instead only inform about current state

If SecureBoot isn't enabled this could very well be by
intention, so don't warn about it, but only make it
an informational message.

Closes grml/grml#24

6 years agoDon't complain about missing amixer binary on tty
Michael Prokop [Tue, 16 May 2017 22:33:35 +0000 (00:33 +0200)]
Don't complain about missing amixer binary on tty

On grml-small we don't ship amixer (being part of alsa-utils),
since that would add ~8.5MB of additional disk space usage.
Avoid the error message by sending a message only to syslog.

Closes grml/grml#24

6 years agoRelease new version 0.15.5 v0.15.5
Michael Prokop [Fri, 12 May 2017 18:58:22 +0000 (20:58 +0200)]
Release new version 0.15.5

6 years agoDo not run sysv specific serial console setup under systemd
Michael Prokop [Fri, 12 May 2017 18:56:44 +0000 (20:56 +0200)]
Do not run sysv specific serial console setup under systemd

See grml/grml#21

6 years agoEnsure that grml-autoconfig service is running before tty1 is enabled
Michael Prokop [Fri, 12 May 2017 18:56:03 +0000 (20:56 +0200)]
Ensure that grml-autoconfig service is running before tty1 is enabled

Thanks: Darshaka Pathirana <dpat@syn-net.org>
Closes grml/grml#19

6 years agoReplace dependency on console-terminus with console-setup + console-setup-linux
Michael Prokop [Fri, 12 May 2017 15:05:04 +0000 (17:05 +0200)]
Replace dependency on console-terminus with console-setup + console-setup-linux

console-terminus is purely virtual.

Inside console-setup-linux's udev rule there's a rule
depending on /etc/console-setup/cached_setup_font.sh which
itself is provided only via console-setup, otherwise it
fails with:

| systemd-udev: failed to execute '/etc/console-setup/cached_setup_font.sh' '/etc/console-setup/cache_setup_font.sh': No such file or directory

Closes grml/grml#8

6 years agoRelease new version 0.15.4 v0.15.4
Michael Prokop [Fri, 5 May 2017 14:58:49 +0000 (16:58 +0200)]
Release new version 0.15.4

6 years agoFix generation of startx helper script
Darshaka Pathirana [Fri, 5 May 2017 14:20:29 +0000 (16:20 +0200)]
Fix generation of startx helper script

`/etc/init.d/startx` is created dynamically on startup.  The $ of ${TTY}
was not escaped so that when generating the helper script the variable
was evaluated which lead to an empty output.

The script fixes permission problems of /dev/ttyX when grml-x is started
via sudo.

Usually /dev/ttyX is owned by root:tty and has 0620 permission but
grml-runtty changes ownership to root:root to overcome other problems.
(It is not clear if these problems are still present and if we still
have to do this but for now we provide this helper script).

${WINDOWMANAGER} is evaluated on generation and can be (and usually is)
empty. But when starting grml-x with the parameter "" this leads to an
immediate exit of grml-x. Removed the surrounding "".

Closes grml/grml#1

6 years agoRelease new version 0.15.3 v0.15.3
Michael Prokop [Fri, 5 May 2017 08:51:21 +0000 (10:51 +0200)]
Release new version 0.15.3

7 years agoMake startx boot option work with systemd
Darshaka Pathirana [Mon, 24 Apr 2017 00:07:08 +0000 (02:07 +0200)]
Make startx boot option work with systemd

The desired behavior (with systemd and the boot option "startx") is to start
the X window system automatically.

This is achieved by getty@tty6.service which starts grml-x as user "grml" on
vt6/tty6 and switches back to vt1/tty1 after exit. (This alone could be
achieved with systemd-unit option Type=oneshot and Restart=no). But when
switiching back to vt6/tty6 (again) we would like to start a zsh (for user
"grml") and restart the zsh if exited. That means that grml-x should only be
started on the very first run and the zsh on every other.

We could not figure out how to change the systemd-unit option "Type"
dynamically, so we kept it on "idle" which means that the "actual execution of
the service binary is delayed until all active jobs are dispatched". That's why
we need to switch to vt6/tty6 (via grml-autoconfig) iff the boot option
"startx" is given.

We also do not know yet how to dynamically change the behavior of the
systemd-unit in a safe way. Rewriting the unit-file (override.conf) after
grml-x exits (i.e. with ExecStopPost) doesn't seem to work reliably (especially
when calling "systemctl daemon-reload" in it). That's why we use a state-file
(/var/run/grml_startx.started) to start up grml-x on the first call and the zsh
else.

This also means that grml-x is started automatically when switching to vt6/tty6
manually (when no "startx" boot option was given) once and the zsh on the
following calls.

Closes grml/grml#1

7 years agoAdjust mdadm-raid + lvm2 messages and service handling for usage with systemd
Michael Prokop [Fri, 21 Apr 2017 12:10:10 +0000 (14:10 +0200)]
Adjust mdadm-raid + lvm2 messages and service handling for usage with systemd

The mdadm-raid unit is masked under systemd, instead it's necessary
to start mdmonitor.

Also lvm2 is masked and needs to be activated via lvm2-lvmetad instead.

7 years agoRelease new version 0.15.2 v0.15.2
Michael Prokop [Thu, 20 Apr 2017 20:24:53 +0000 (22:24 +0200)]
Release new version 0.15.2

7 years agoProvide information about whether Secure Boot is enabled or not
Michael Prokop [Thu, 20 Apr 2017 10:09:55 +0000 (12:09 +0200)]
Provide information about whether Secure Boot is enabled or not

7 years agoRe-enable GPM service startup
Michael Prokop [Thu, 20 Apr 2017 10:12:12 +0000 (12:12 +0200)]
Re-enable GPM service startup

It's still needed, both for file-rc and systemd systems.

7 years agoRelease new version 0.15.1 v0.15.1
Michael Prokop [Fri, 24 Feb 2017 12:46:31 +0000 (13:46 +0100)]
Release new version 0.15.1

7 years agosystemd/grml-autoconfig.service: switch to WantedBy=grml-boot.target
Michael Prokop [Fri, 24 Feb 2017 12:30:07 +0000 (13:30 +0100)]
systemd/grml-autoconfig.service: switch to WantedBy=grml-boot.target

We define our own systemd target, so enable grml-autoconfig
in the according target.

Closes grml/release-planning#2 @ GH