aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* defaults/modules_load: Add support for Lenovo / Thinkpad devicesHEADmasterThomas Deutschmann2021-03-271-1/+1
| | | | | | | Support for IBM/Lenovo devices that are not fully compliant with HID standard. Reported-by: Patrick Lauer <patrick@gentoo.org> Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* genkernel: bump to v4.2.1v4.2.1Thomas Deutschmann2021-03-271-1/+1
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gen_compile.sh: populate_binpkg(): Throw away binpkg when glibc has changedThomas Deutschmann2021-03-271-0/+17
| | | | | | | | | | | | | | | | | It was reported that dropbear in genkernel initramfs crashed when client tried to connect. The problem is, that while we are compiling statically, we still depend on used glibc version. I.e. dropbear binpkg was created against glibc version A, but when genkernel initramfs will be created, we will copy system libraries from whatever glibc version host is currently using which doesn't necessarily need to match used glibc version when binpkg was created which could result in reported problem. This commit will make genkernel treat binpkg as stale when glibc was changed since binpkg was created to force a rebuild. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gen_initramfs.sh: append_zfs(): Copy /etc/zfs/vdev_id.confThomas Deutschmann2021-03-271-1/+2
| | | | | | Used by vdev_id UDEV helper. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gen_initramfs.sh: append_zfs(): Update UDEV dir in UDEV rulesThomas Deutschmann2021-03-261-0/+9
| | | | | | | | | | Because we are copying UDEV rules from host system, we have to ensure that used UDEV dir matches our initramfs environment to prevent errors like failed to execute '/lib/udev/vdev_id' '/lib/udev/vdev_id -e': No such file or directory Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Fix log messageThomas Deutschmann2021-03-261-1/+1
| | | | | Fixes: 60ecb8b6d ("linuxrc: Move global variables to initrd.defaults") Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: crypt_filter(): crypt_silent shouldn't hide cryptsetup promptv4.2.0Thomas Deutschmann2021-03-211-1/+1
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: do_resume(): Show warning when kernel doesn't support ↵Thomas Deutschmann2021-03-211-10/+17
| | | | | | | | hibernation ...but "resume" was specified on kernel command-line. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Adjust resume device messagesThomas Deutschmann2021-03-211-1/+3
| | | | | | Use same messages we use for root device. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Move global variables to initrd.defaultsThomas Deutschmann2021-03-214-30/+24
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: Add is_quiet() functionThomas Deutschmann2021-03-211-29/+36
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: is_true(): Optimize for most frequently used valueThomas Deutschmann2021-03-211-4/+5
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: is_debug(): Mark local variable as suchThomas Deutschmann2021-03-211-1/+1
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Use same $CRYPT_SILENT styleThomas Deutschmann2021-03-213-8/+8
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Refactor handling of console log levelThomas Deutschmann2021-03-203-25/+12
| | | | | Closes: https://github.com/gentoo/genkernel/pull/24 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Fix QUIET modeThomas Deutschmann2021-03-202-52/+53
| | | | | | | This commit will ensure that we really don't output anything when running in QUIET mode -- only errors will be shown. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: setup_keymap(): check console only when dokeymap is setThomas Deutschmann2021-03-201-7/+7
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* genkernel: bump to v4.2.0Thomas Deutschmann2021-03-191-1/+1
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* Add RISC-V supportYixun Lan2021-03-196-1/+549
| | | | | Bug: https://bugs.gentoo.org/767937 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gen_configkernel.sh: config_kernel(): Warn when kernel config did not changeThomas Deutschmann2021-03-191-0/+9
| | | | | | | | | | | | When user requests to modify kernel config, i.e. `genkernel --menuconfig` but kernel config did not change, show a warning to allow user to notice. This can happen for example when user loaded a different kernel config in dialog but forgot to save to $KERNEL_OUTPUTDIR/.config which is required in that case. Link 1: https://forums.gentoo.org/viewtopic-p-8588232.html#8588232 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* genkernel: fix used kernel.configThomas Deutschmann2021-03-151-5/+7
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* genkernel: show warning when CONFIG_CMDLINE_OVERRIDE=y is setThomas Deutschmann2021-03-151-0/+12
| | | | | Link 1: https://forums.gentoo.org/viewtopic-t-1131897.html Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gkbuilds/thin-provisioning-tools: no need to manually call gkautoreconfThomas Deutschmann2021-03-151-6/+1
| | | | | | Default src_prepare() will take care of calling gkautoreconf when needed. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gkbuild.sh: gkautoreconf(): add workaround for >autoconf-2.69Thomas Deutschmann2021-03-151-0/+4
| | | | | | | | | | | | | | | | | | | Since >autoconf-2.69, autoreconf will check for GTK_DOC_CHECK macro and will call gtkdocize automatically [Link 1] when invoked with "--install" parameter. This is a problem for genkernel because our gkautoreconf is just a rudimentary implementation of Gentoo's eautoreconf: I.e. autotools eclass in Gentoo is not calling autoreconf with "--install" parameter, instead eclass is manually checking all used macros like autoreconf but will only call used tools when available. Because we do not care about docs in gkbuild packages, we can stick to our poor man's implementation of gkautoreconf and replace calls to gtkdocize with true. Link 1: https://git.savannah.gnu.org/gitweb/?p=autoconf.git;a=commit;h=dd880a0a6de5602cdd40b770ed6b083b34aa0768 Bug: https://bugs.gentoo.org/775563 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* Change --firmware-files handlingThomas Deutschmann2021-03-154-10/+14
| | | | | | | | | | | | | | | | - Move from space-separated list to comma-separated list to add support for firmware files with spaces. - Add support for firmware files with spaces. - Check for specified firmware files in determine_real_args() which will allow us to error out early. - Clarify documentation. Fixes: c576f99b0b ("Misc improvements for FIRMWARE* handling") Bug: https://bugs.gentoo.org/775221 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Refactor switch_root error handlingThomas Deutschmann2021-03-143-23/+59
| | | | | | | | | | | | | | | | | | | | | | | Previous idea (commit 93bf318e5114233f3cacc4575ab2e58d60e785c7) never worked: Exec will replace initramfs' init (PID 1) with specified command so that any further line will never be reached. If that command will fail now, init basically ended which will trigger a kernel panic: !! A fatal error has occured since /sbin/openrc-init did not !! boot correctly. Trying to open a shell ... + exec /bin/bash /init: exec: line 1366: /bin/bash: not found [ 55.060649] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00007f00 The new error handling will keep init running in loop which will allow user to fix every detected problem until we are confident that switch_root call has a chance to succeed. In case the user cannot fix the problem (maybe because of gk.userinteraction.disabled), we will call the newly added gk.emergency action (reboot, poweroff or halt). Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: run_shell(): Exit early when /dev is goneThomas Deutschmann2021-03-141-0/+4
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: Add is_userinteraction_allowed() functionThomas Deutschmann2021-03-141-5/+18
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Rename rundebugshell() -> run_debug_shell()Thomas Deutschmann2021-03-142-18/+14
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: modules_scan(): Rename GK_ROOTFS_DETECTED_STATEFILE -> ↵Thomas Deutschmann2021-03-142-4/+4
| | | | | | | | GK_ROOT_DEV_DETECTED_STATEFILE GK_ROOT_DEV_DETECTED_STATEFILE is the more precise name. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Skip loading embedded boot font for serial consolesThomas Deutschmann2021-03-141-1/+7
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: setup_keymap(): Skip keymap loading for serial consolesThomas Deutschmann2021-03-141-0/+7
| | | | | Bug: https://bugs.gentoo.org/222699 Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Drop "console" kernel argument handlingThomas Deutschmann2021-03-142-25/+0
| | | | | | | It was never really used; Kernel's console handling already did the work. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Mark kernel command-line argument lvmraid as deprecatedThomas Deutschmann2021-03-142-6/+1
| | | | | | Not used anymore since we moved to (e)udev. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Determine active consoleThomas Deutschmann2021-03-143-1/+16
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: run_shell(): Reformat exec codeThomas Deutschmann2021-03-141-3/+3
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Reformat exec codeThomas Deutschmann2021-03-141-2/+2
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* linuxrc: Don't delete /linuxrcThomas Deutschmann2021-03-141-5/+0
| | | | | | It's not clear why this was ever added via commit c4e37560598d4dc59ef3619084f3822df71e8aef. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: bootstrapFS(): Create /dev/tty0Thomas Deutschmann2021-03-141-0/+1
| | | | | | If we create ttyS0, we should also create tty0. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* Bump strace to v5.11Thomas Deutschmann2021-03-132-5/+6
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* Bump xfsprogs to v5.11.0Thomas Deutschmann2021-03-131-0/+0
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* Bump e2fsprogs to v1.46.2Thomas Deutschmann2021-03-134-46/+1
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* Bump btrfs-progs to v5.11Thomas Deutschmann2021-03-133-2/+2
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* initrd.scripts: Add trim() functionThomas Deutschmann2021-03-082-0/+11
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* defaults/modules_load: Add netconsoleThomas Deutschmann2021-02-191-1/+1
| | | | | | This will ensure that netconsole will be available in initramfs. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gen_moddeps.sh: modules_dep_list(): match module more preciseThomas Deutschmann2021-02-181-1/+1
| | | | | | | | | | The current pattern is not precise enough. I.e. when looking for Realtek network driver module (realtek.ko), we also get a match on Realtek HD audio codec module (snd-hda-codec-realtek.ko). This commit will make the pattern more precise. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* kernel-generic-config: rebased against & and updated for linux-5.11Thomas Deutschmann2021-02-181-67/+723
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gkbuilds/libgpg-error: remove lock-obj-pub.${CHOST}.h workaroundThomas Deutschmann2021-02-181-43/+0
| | | | | | Workaround for bug 584052 shouldn't be necessary anymore. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* gkbuilds/libgpg-error: do not install gpg-error-config or gpgrt-config anymoreThomas Deutschmann2021-02-181-18/+2
| | | | | | | | The new gpgrt-config wrapper clashes with buildroot environment. Instead of patch gpgrt-config, libgcrypt has been patched to use pkg-config instead of gpg-error-config or gpgrt-config helper. Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>
* Bump libgcrypt to v1.9.2Thomas Deutschmann2021-02-183-40/+59
| | | | Signed-off-by: Thomas Deutschmann <whissi@gentoo.org>