A Debian 9 live ISO that auto-executes eReuse.org Workbench when booting communicating with an eReuse.org Workbench Server.
We use debian-live to build the ISO. So
install it.
In Debian 9 is just apt install live-build
.
Execute (from here):
git clone https://github.com/eReuse/workbench-live.git
cd workbench-live
# Obtain last eReuse.org Workbench
git submodule update --init
# Build
# Note you can pass parameters to lb config to alter the ISO
sudo lb build
For you to understand the project files, I wrote a blog entry using this project as an example for a tutorial with debian-live.
From the guide:
"You can speed up downloads considerably if you use a local mirror. [...]
Set the default for your build system in /etc/live/build.conf
.
Simply create this file and in it, set the corresponding LB_MIRROR_*
variables to your preferred mirror.
All other mirrors used in the build will be defaulted from these values." For example:
LB_MIRROR_BOOTSTRAP="http://ftp.caliu.cat/debian/"
LB_MIRROR_CHROOT_SECURITY="http://security.debian.org/"
LB_MIRROR_CHROOT_BACKPORTS="http://ftp.caliu.cat/debian/"
You can execute a package like netselect-apt
to know which mirror is the fastest for you.
Read the debian-live manual as we followed it to build this. Note that at the time of this writing we had to use the unstable version of the manual, as this is the one targeting Debian 9.
The structure is as follows:
auto/config
: Generic build options like architecture.config/bootloaders/isolinux
: Bootloader params. We changedisolinux.cfg
timing andsplash.svg
.config/includes.chroot/opt/workbench
: Skeleton where Workbench files will be placed into the final ISO (at path/opt/workbench
).config/hooks/live/0100-workbench.hook.chroot
: A chroot hook that installs Workbench from the files above.config/includes.chroot/home/user
: The home dir of the user the live uses. We add.bash_history
,.erwb-help
and.profile
to auto-execute the Workbench after performing login and provide some user feedback.
Before committing, ensure you execute sudo lb clean
just a cautious measure.
- If you cancel the
lb build
you won't be able to delete somechroot
stuff because they are mounted. Just reboot and try withsudo
. - If you perform changes, try to use
lb clean --purge
to ensure a deep cleaning.