It's like in some kind of mad house xD - dinitcheck says it's all good:
❯ sudo dinitcheck modules
Checking service: modules...
Checking service: kmod-static-nodes...
Checking service: early-prepare.target...
Checking service: root-ro...
Checking service: pseudofs...
Checking service: cgroups...
Checking service: tmpfs...
Performing secondary checks...
Secondary checks complete.
No problems found.
but running the command that is responsible for starting this service
❯ sudo cat /usr/lib/dinit.d/modules
type = scripted
command = /usr/lib/dinit/modules-load
restart = false
depends-ms = kmod-static-nodes
returns:
❯ sudo /usr/lib/dinit/modules-load
modprobe: WARNING: Module nvidia-uvm not found in directory /lib/modules/6.16.1-artix1-1
I tried to blacklist it from modprobe in GRUB config and in /etc/modprobe.d but still no luck (I have AMD GPU btw, but this nvidia package is required by mpv and steam for some reason)
I have a little experience with bash scripting but maybe somebody will be able to get some idea from the script that loads the modprobes:
❯ sudo cat /usr/lib/dinit/modules-load
#!/bin/sh
# modules-load [-n] [-v] - modules-load.d(5) compatible kernel module loader
export PATH=/bin:/sbin
{
# Parameters passed as modules-load= or rd.modules-load= in kernel command line.
sed -nr 's/,/\n/;s/(.* |^)(rd\.)?modules-load=([^ ]*).*/\3/p' /proc/cmdline
# Find files /{etc,run,usr/lib}/modules-load.d/*.conf in that order.
find -L /etc/modules-load.d /run/modules-load.d /usr/lib/modules-load.d \
-maxdepth 1 -name '*.conf' -printf '%p %P\n' 2>/dev/null |
# Load each basename only once.
sort -k2 -s | uniq -f1 | cut -d' ' -f1 |
# Read the files, output all non-empty, non-comment lines.
tr '\012' '\0' | xargs -0 -r grep -h -v -e '^[#;]' -e '^$'
} |
# Call modprobe on the list of modules
tr '\012' '\0' | xargs -0 -r modprobe -ab "$@"