-p: prepare mode. Only prepares a directory with all files that would go into the SRM,
but does not run mksquashfs. This allows further modifications by the user.
In prepare mode the target file parameter is ignored.
This prevents trying to create the directories twice by removing duplicate
entries from the file list. Saves about 3 seconds of runtime when testing
with the "atom" package.
Create SystemRescueModules (SRM) from pacman packages installed into the COW space
This script is meant to help creating SystemRescueModules (SRM) for SystemRescue.
More info about SRMs and this script can be found at:
https://www.system-rescue.org/Modules/
To use first install all packages you want to have in your SRM with pacman.
Default COW (Copy-On-Write) space is a ramdisk, so you usually don't have to do anything
special except provide enough RAM.
You can also enable any systemd services that are in these packages.
Then call:
cowpacman2srm [-c compalg] [-l complevel] targetfile.srm
Copy the .srm file to archisobasedir (default: "sysresccd") on your boot disk
and add the "loadsrm" boot parameter to SystemRescue.
There is no mechanism to check if a SRM is compatible with the version of SystemRescue
you are trying to run it with. So it is higly recommended to only use this script on
the exact version of SystemRescue you plan to use the SRM with.
* Passes through PAM (pam_systemd module) via login(1). This sets up
systemd --user instance, which will create and listen on dbus session socket.
* login(1) is called (via agetty(8)) with -p option, keeping the environment
pam_systemd configured for the user, most importantly
DBUS_SESSION_BUS_ADDRESS.
* Thus dbus-launch call in /etc/X11/xinit/xinitrc is unnecessary.
* autologin.conf drop-in configured in the template unit (getty@.service)
to make autologin work on all virtual consoles.
Use localectl to set kbd and x11 keymaps.
Order sysresccd-initialize.service before getty-pre.target (pasive target,
pulled in manually) to ensure console keymap is proper configured when
getty@.service runs.
Fixes#74