Code: Select all
mkdir -p /etc/portage/patches/sys-kernel/ugrd-2.0.2/
git checkout plymouth
git diff 2f8ad43e84d92b081b8a0914510302c96d0e4c48 > /etc/portage/patches/sys-kernel/ugrd-2.0.2/01-plymouth_changes.patchCode: Select all
modules = [
"ugrd.fs.resume",
"ugrd.base.plymouth",
]
kmod_ignore_video = false
plymouth_force_splash = true
plymouth_kill = false
cpio_compression = false
kmod_autodetect_lspci = true
kmod_autodetect_lsmod = true
kmod_autodetect_input = true
find_libgcc = trueCode: Select all
INFO | [60-cdrom_id.rules] Found binary requirements: cdrom_id
WARNING | [60-cdrom_id.rules] Unable to find udev rule dependency: Binary not found not found in PATH: cdrom_id
INFO | [60-fido-id.rules] Found binary requirements: fido_id
WARNING | [60-fido-id.rules] Unable to find udev rule dependency: Binary not found not found in PATH: fido_id
INFO | [60-persistent-storage-tape.rules] Found binary requirements: scsi_id
WARNING | [60-persistent-storage-tape.rules] Unable to find udev rule dependency: Binary not found not found in PATH: scsi_id
INFO | [60-persistent-v4l.rules] Found binary requirements: v4l_id
WARNING | [60-persistent-v4l.rules] Unable to find udev rule dependency: Binary not found not found in PATH: v4l_id
INFO | [70-memory.rules] Found binary requirements: dmi_memory_id
WARNING | [70-memory.rules] Unable to find udev rule dependency: Binary not found not found in PATH: dmi_memory_id
INFO | [75-probe_mtd.rules] Found binary requirements: mtd_probe
WARNING | [75-probe_mtd.rules] Unable to find udev rule dependency: Binary not found not found in PATH: mtd_probe
INFO | [10-dm.rules] Found binary requirements: /sbin/dmsetup
INFO | [80-udisks2.rules] Found binary requirements: /bin/sh
INFO | [69-dm-lvm.rules] Found binary requirements: /sbin/lvm
INFO | [11-dm-lvm.rules] Found binary requirements: /sbin/dmsetup
INFO | [56-multipath.rules] Found binary requirements: /sbin/multipath
INFO | [11-dm-mpath.rules] Found binary requirements: kpartx_id
WARNING | [11-dm-mpath.rules] Unable to find udev rule dependency: Binary not found not found in PATH: kpartx_id
INFO | [11-dm-parts.rules] Found binary requirements: kpartx_id
WARNING | [11-dm-parts.rules] Unable to find udev rule dependency: Binary not found not found in PATH: kpartx_id
INFO | [60-persistent-storage.rules] Found binary requirements: ata_id, scsi_id
WARNING | [60-persistent-storage.rules] Unable to find udev rule dependency: Binary not found not found in PATH: ata_id
INFO | [80-libinput-device-groups.rules] Found binary requirements: /usr/lib/udev/libinput-device-group
INFO | [90-libinput-fuzz-override.rules] Found binary requirements: /usr/lib/udev/libinput-fuzz-extractCode: Select all
ugrd --print-configCode: Select all
binary_search_paths:
- /bin
- /sbin
- /usr/bin
- /usr/sbin
- /lib/systemd
- /usr/libexec/plymouth
- /usr/lib/udevCode: Select all
alias sw='cd ~/; clear; MESA_LOADER_DRIVER_OVERRIDE=zink exec startplasma-wayland'OK, if you're seeing a text login, you probably want to keep the plymouth_kill option enabled if you are having any issues. I'm not entirely sure what is required for the full handover, but in my tests, if something does not "grab" the display back from plymouth, you may get a TTY but it will eat every second keypresssinatosk wrote:KDE Plasma 6.5.5 and I don't use SDDM, just text login and then start KDE with the following set inside ".bashrc"
and I just do "sw" after loginCode: Select all
alias sw='cd ~/; clear; MESA_LOADER_DRIVER_OVERRIDE=zink exec startplasma-wayland'
my system is Framework 16 Laptop using Radeon 780M iGPU with no dGPU
still testing zink to see how it is, seems good for me so far, minus VAAPI but then I just set those applications to use radeonsi until zink implements VAAPI ( work in progress at the moment )
Code: Select all
ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/vega10_gpu_info.bin
ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/vega12_gpu_info.bin
ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/raven_gpu_info.bin
ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/picasso_gpu_info.bin
ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/raven2_gpu_info.bin
ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/arcturus_gpu_info.binI want ugrd to ideally handle setups on any distro, so reading a config file to determine present firmware is a bit out of scope.sinatosk wrote:I tried simpledrm ( I have "CONFIG_DRM_SIMPLEDRM=m" set in my kernel config ) but didn't work for me so I enabled so I left "kmod_ignore_video = false" set ( this was about 25MB~ ) and amdgpu depends on other kernel modules ( amdgpu.ko itself is 22.8MB ).
then plymouth ( 2MB~ ) but then there's libdrm and other files
none of the kernel modules or firmware files are compressed ( I'm aware that they can be compressed ).
with sys-kernel/linux-firmware 99999999 I have "savedconfig" flag set so I'm already benefitting from reduced firmware files
some of these firmware files are symlinks so do checkout the "WHENCE" file in linux-firmware repository to find out which ( I don't have "deduplicate" flag set when using "savedconfig" flag otherwise that too would create symlinks ) are symlinks
AMD Zen 4AMD Radeon 780M
- amd-ucode/microcode_amd_fam19h.bin
AMD NPU ( don't know which model )
- amdgpu/vcn_4_0_2.bin
amdgpu/sdma_6_0_1.bin
amdgpu/psp_13_0_4_toc.bin
amdgpu/psp_13_0_4_ta.bin
amdgpu/dcn_3_1_4_dmcub.bin
amdgpu/gc_11_0_1_rlc.bin
amdgpu/gc_11_0_1_pfp.bin
amdgpu/gc_11_0_1_mes_2.bin
amdgpu/gc_11_0_1_mes1.bin
amdgpu/gc_11_0_1_mec.bin
amdgpu/gc_11_0_1_me.bin
amdgpu/gc_11_0_1_imu.binAMD TEE
- amdnpu/1502_00/npu.sbin
amdnpu/1502_00/npu.sbin.1.5.2.391Mediatek MT7925
- amdtee/amd_pmf_v3_1.bin
amdtee/amd_pmf_v3.bin
amdtee/773bd96f-b83f-4d52-b12dc529b13d8543.bin
amdtee/f29bb3d9-bd66-5441-afb88acc2b2b60d6.binI think what you could do is check if "saveconfig" is enabled and file "/etc/portage/savedconfig/sys-kernel/linux-firmware" exists, if so, print a warning that "savedconfig" and then change all errors about missing firmware files ( like me for example )
- mediatek/mt7925/BT_RAM_CODE_MT7925_1_1_hdr.bin
mediatek/mt7925/WIFI_MT7925_PATCH_MCU_1_1_hdr.bin
mediatek/mt7925/WIFI_RAM_CODE_MT7925_1_1.bin
truncated outputshould be printed as warnings instead or not at all. this is a gentoo specific thing though.Code: Select all
ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/vega10_gpu_info.bin ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/vega12_gpu_info.bin ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/raven_gpu_info.bin ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/picasso_gpu_info.bin ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/raven2_gpu_info.bin ERROR | [amdgpu] Firmware file does not exist: /lib/firmware/amdgpu/arcturus_gpu_info.bin
you could use the contents of "/etc/portage/savedconfig/sys-kernel/linux-firmware" to know what firmware files exists.
understandablezen_desu wrote:I want ugrd to ideally handle setups on any distro, so reading a config file to determine present firmware is a bit out of scope.
A lot of those warnings can be ignored, many modules will reference firmware files which don't exist, and that is generally fine, but in some cases it's a problem (maybe this should be warning level, not error). I think it has to be addressed by the user, because module definitions can change and many things are not strictly necessary when booting.
by default pycpio should deduplicate files, but if you have a savecdonfig with only your required firmware available, that should help keep it minimal.