Apr. 21 update to 5.17.4 produced the same errors, so I'm still using kernel 5.17.1-artix1-1.
Thanks for the suggestions. mkinitcpio files do not differ from the backup. I haven't installed anything from AUR for a couple of months. pacman.conf is as recommended in the wiki: system, world, galaxy, extra, community and multilib in that order.
Without entirely understanding, I have tried some suggestions given in another forum post. artiong appears to have had the same problem.
Pluto:[root]:/boot# pacman -S linux linux-headers util-linux mkinitcpio
...
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> ERROR: invalid kernel specified: `/boot/vmlinuz-linux'
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> ERROR: invalid kernel specified: `/boot/vmlinuz-linux'
error: command failed to execute correctly
After this, /boot/vmlinuz-linux is identical to /usr/lib/modules/5.17.4-artix1-1/vmlinuz but no initrd is produced.
Same error messages
Pluto:[root]:/boot# mkinitcpio -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> ERROR: invalid kernel specified: `/boot/vmlinuz-linux'.
I don't understand those well; I don't see any path to the kernel in any of them. In any case, I haven't changed them.
Pluto:[root]:/boot# /usr/bin/bash --norc
Pluto:[root]:/boot# source /usr/lib/initcpio/functions
bash: /usr/lib/initcpio/functions: line 682: syntax error near unexpected token `('
bash: /usr/lib/initcpio/functions: line 682: ` RUN@({program}|+)|IMPORT{program}|ENV{REMOVE_CMD})'
Pluto:[root]:/boot# set -x
Pluto:[root]:/boot# kver /boot/vmlinuz-linux
+ kver /boot/vmlinuz-linux
+ local kver 're=^[[:digit:]]+(\.[[:digit:]]+)+'
++ uname -m
+ local arch=x86_64
+ [[ x86_64 == @(i?86|x86_64) ]]
++ kver_x86 /boot/vmlinuz-linux
+++ hexdump -s 526 -n 2 -e '"%0d"' /boot/vmlinuz-linux
++ local kver offset=14304
++ [[ 14304 = +([0-9]) ]]
++ read kver _
+++ dd if=/boot/vmlinuz-linux bs=1 count=127 skip=14816
++ printf %s 5.17.4-artix1-1
+ kver=5.17.4-artix1-1
+ [[ 5.17.4-artix1-1 =~ ^[[:digit:]]+(\.[[:digit:]]+)+ ]]
+ printf %s 5.17.4-artix1-1
So I think that's good, butPluto:[root]:/boot# read kver _ < <(dd if=/boot/vmlinuz-linux bs=1 count=127 skip=$(( 14464 + 0x200 )) 2>/dev/null)
Pluto:[root]:/boot# echo $kver
44�VGAVESABIOS�:�.r,�:�/�1�:
Thanks in advance for any ideas.