Commit Graph

711 Commits

Author SHA1 Message Date
classabbyamp
8871805dc5 *.sh: refactor new version method into lib.sh
no need to create a second file just for the version when it can be set
in lib.sh

git -c safe.directory is needed to be able to run rev-parse as root

also contains some minor refactors to arg parsing etc
2023-05-21 23:21:02 -04:00
classabbyamp
3c75acb212 installer.sh: don't source version.sh 2023-05-21 23:21:02 -04:00
Michal Vasilek
6a6caa7b31 Do not build .sh scripts from .sh.in
The build process only replaces @@MKLIVE_VERSION@@ with the correct
version string. This can also be done by simply sourcing a version.sh file.
This way it's simpler, avoids one unnecessary build step and people
won't accidentally run an old version of a script.
2023-05-21 15:42:36 -04:00
Michal Vasilek
b28b64f5f6 mklive.sh: move installer.sh to build-x86-images.sh
Running mklive.sh without any arguments produces a minimal image that
doesn't have dialog installed which is required for installer.sh. Let's
move installing the installer script up a level to
build-x86-64-images.sh which already adds a dialog dependency.
2023-05-21 15:09:41 -04:00
Michal Vasilek
c6b3926f1e mklive.sh: remove installing local installer
There used to be a package that provided the installer, it was removed
in 2013 and replaced by the installer.sh script in the void-mklive repository,
so this code path doesn't make sense on modern void systems.

59a5c8461e
2023-05-21 15:09:41 -04:00
Michal Vasilek
a8b326f149 mklive.sh: allow passing multiple include dirs
mklive.sh is now bash because arrays make this easier
2023-05-21 15:08:18 -04:00
classabbyamp
f5ef8795a8 README.md: add documentation of live iso kcl vars
also change the heading levels to make more sense
2023-05-20 22:20:53 -04:00
classabbyamp
1ff636a1c5 installer.sh.in: remove espeakup from local install if not enabled 2023-05-20 22:17:23 -04:00
classabbyamp
129aa5cbc6 dracut/vmklive: enable espeakup if live.screenreader is in kcl 2023-05-20 22:17:23 -04:00
classabbyamp
98ab76eeb7 build-x86-images: include console screenreader
espeakup is a screenreader for console environments

they are a minimal increase to the size of the live images, but I think
they are an important accessibility feature to add.
2023-05-20 22:17:23 -04:00
classabbyamp
d96d597d74 installer.sh: fix indentation of messages
Co-authored-by: dateiexplorer <justus.roederer@dateiexplorer.de>
2023-05-20 21:25:21 -04:00
classabbyamp
d8049f0355 installer.sh: ensure SOURCE_DONE is accurate
from dateiexplorer:
Another bug with the SOURCE_DONE is also fixed. Previous the local image
was installed instead of the net packages if installation process was
aborted and later continued by the user.

Co-authored-by: dateiexplorer <justus.roederer@dateiexplorer.de>
2023-05-20 21:25:21 -04:00
classabbyamp
b414330bc8 installer.sh: show_partitions: Display configured fstypes if available
If a user configures the partitions the installer displays the fstypes
after the installation with the current configuration instead of the current
fstypes.

fixes #130

Co-authored-by: dateiexplorer <justus.roederer@dateiexplorer.de>
2023-05-20 21:25:21 -04:00
classabbyamp
9aec08b792 installer.sh: improve network testing
Co-authored-by: dateiexplorer <justus.roederer@dateiexplorer.de>
2023-05-20 21:25:21 -04:00
classabbyamp
b0e010c87c installer.sh: fix USER*_DONE, validate user account
also make the description of the USERNAME (comment/GECOS) more
informative

from dateiexplorer:
The issue with the various USER_DONE variables is that they are reset if
the installation process was aborted and then restarted. The configuration
were still there but the user wasn't created because of the DONE variables.
Instead of checking the DONE variables now the actual user settings are
checked for existence.

Co-authored-by: dateiexplorer <justus.roederer@dateiexplorer.de>
2023-05-20 21:25:21 -04:00
classabbyamp
018343cd10 installer: check for network on source selection
the if condition is correct because test_network returns 1 on success

fixes #171
2023-05-20 20:03:46 -04:00
classabbyamp
c820517fbc mkrootfs,mkplatformfs: preserve xattrs when compressing/extracting
things like capabilities were not being preserved

fixes #299
2023-05-20 18:58:03 -04:00
classabbyamp
b5e8502717
dracut/autoinstaller: fix kcl parsing
regression caused by fce4ed6420
2023-05-20 15:55:51 -04:00
Toyam Cox
fce4ed6420 autoinstaller: wrap dracut calls so they can error
It's nice that our stuff can be set -e but this is a regression on
dracut's side.
2023-05-19 00:05:07 -05:00
Michal Vasilek
3808462566 installer: properly unmount the whole /mnt/target
without unmounting recursively, unmounting fails because some mounts
aren't unmounted before their parents and /mnt/target doesn't get unmounted

This also removes the need to unmount anything manually

Closes: #336 [via git-merge-pr]
2023-05-13 20:08:57 -05:00
classabbyamp
a1ef2ae762 mk*.sh: use UTC date 2023-04-30 15:24:39 -04:00
classabbyamp
6ef4381f85 .dockerignore, hooks/: remove
was forgotten in b53cb28
2023-04-30 15:24:39 -04:00
classabbyamp
a6fcabc0ed installer: hide root group in the additional groups menu
regular users should not be using this group. instead, they should be
using wheel and/or sudo/doas/su
2023-04-29 20:50:46 -04:00
classabbyamp
e50aaaccc4 installer.sh.in: sort filesystems by mountpoint
fixes #131
fixes #323
2023-04-29 20:48:07 -04:00
Michal Vasilek
061606be11 installer: generalise enabling services 2023-04-15 14:25:13 +02:00
classabbyamp
794bc7527c installer.sh.in: remove autologin for live user from agetty-tty1
fixes #211
closes #212
2023-04-15 04:33:26 -04:00
classabbyamp
624cf96433 dracut/vmklive/adduser.sh: detect live.autologin properly
if just `live.autologin` is added to the KCL, it would not be detected
and the user would still need to log into the live image.
2023-04-15 04:33:26 -04:00
classabbyamp
8a04733dbf mklive.sh.in: fix step count 2023-04-15 04:33:26 -04:00
Michal Vasilek
2dfcb11662 build-x86-images.sh: use lightdm instead of lxdm
Lxdm is an old project with, the last release is from 2015 and users
sometimes report lxdm giving them a black unresponsive screen after
an update.

LightDM is much more maintained and much more common nowadays.

Also switch the lxqt image to sddm, other distributions which ship an
lxqt variant also seem to use sddm.
2023-04-15 04:26:58 -04:00
classabbyamp
c92e14595b
dracut/vmklive/display-manager-autologin.sh: fix autologin for sddm
if a non-default username is set, this won't work.
autologin for other DMs already use $USERNAME
2023-04-15 04:13:45 -04:00
classabbyamp
7e07be4c4c installer: add xmirror to installation process
closes #317
2023-04-15 03:20:22 -04:00
classabbyamp
c35369bfb1 build-x86-images: add xmirror 2023-04-15 03:20:22 -04:00
classabbyamp
58a5cbc1f2 installer: default hostname to 'void' if unset
without this you could end up with an empty hostname
2023-04-15 02:12:56 -04:00
classabbyamp
d8844e3ee8 installer: hide USERPASSWORD in settings
fixes #240
2023-04-15 02:12:56 -04:00
classabbyamp
e8f015ce55 installer: use chroot instead of -R arg for useradd/chpasswd
this should mitigate/resolve issues where mismatches between host and TARGETDIR
cause errors when adding the primary user

fixes #18
fixes #181
fixes #306
2023-04-15 02:12:56 -04:00
Michal Vasilek
a94eb3be79 mklive.sh: check arch validity after the default is set
It's possible to run mklive.sh without the -a argument in which case,
the architecture is supposed to be set to the current one using
xbps-uhelper. This means we have to check whether the architecture is
valid after this default has been set, otherwise we get an empty string
which is not a valid architecture.
2023-04-15 01:59:15 -04:00
classabbyamp
b53cb28dce Makefile: remove masterdir docker infrastructure
this has been moved to void-linux/void-docker for some time now
2023-04-08 02:45:00 -05:00
Michael Aldridge
0c4a3222ce packer: Ensure cloud images generate new keys 2023-03-20 22:42:36 -05:00
classabbyamp
083c271f56
packer/hcl2/source-*.pkr.hcl: update iso url and checksum
see #321
2023-02-22 18:47:41 -05:00
Michal Vasilek
581249eb2f mklive.sh: fail on unsupported archs 2023-02-19 21:17:29 -06:00
mobinmob
771a5b4b39 mklive.sh: remove unused $ISOLINUX_CFG. 2023-02-19 21:16:45 -06:00
classabbyamp
b6edd4051b installer: don't show groups from pkgs/live iso, default locale to C.UTF-8
the locale default prevents an error from the second sed command
2023-02-19 21:15:05 -06:00
0x5c
30701cf3da mklive: Accept multiple instances of -p and -S
This allows passing a list of packages and services to build-x86-images.sh
without overriding its own list of packages and services passed to mklive.
2023-02-19 21:14:32 -06:00
0x5c
c0d8ff0f4d build-x86-images: Fix passing of additional arguments to mklive
Mklive is called with "$@", to be able to pass additionnal arguments to it.
However, since mklive is called from within a function, the value of "$@" is
the function's argument.

This is fixed by adding "$@" to the function call and using shift after its
first argument (the image flavour) is used.
2023-02-19 21:14:32 -06:00
Toyam Cox
c9dbeed8a4 autoinstaller: make wheel permission come first, fix permissions
visudo -c shows perms need 0440

Also w is late in the alphabet, hard to alter ordering
2022-10-11 23:07:58 -05:00
Michael Aldridge
3ec7fa11e0 Makefile: Bump Version 2022-10-01 12:27:31 -05:00
Michal Vasilek
e6c5b2f31d build-x86-images: use non-ESR firefox 2022-10-01 12:19:52 -04:00
Tim Sandquist
eb8167df6c Use --make-rslave to avoid stuck mounts
Without `rslave` mounts can get stuck due to "Device or Resource Busy" errors
2022-10-01 03:25:04 -05:00
classabbyamp
4c66390467 various: switch from rpi{,2,3,4} to rpi-$ARCH for rpi images
with the merge of rpi kernels, we no longer need to generate
board-series-specific images
2022-10-01 02:17:55 -05:00
classabbyamp
839e2825ec installer: support setting up networking with network manager 2022-09-30 23:53:13 -05:00