Demi Marie Obenour writes: > On 11/8/25 14:49, Alyssa Ross wrote: >> Demi Marie Obenour writes: >> >>> @@ -113,14 +76,15 @@ let >>> >>> kernel = linux_latest; >>> >>> - appvm = callSpectrumPackage ../../img/app { inherit (foot) terminfo; }; >>> - netvm = callSpectrumPackage ../../vm/sys/net { inherit (foot) terminfo; }; >>> + appvm = callSpectrumPackage ../../img/app { inherit (no_pgo_foot) terminfo; }; >>> + netvm = callSpectrumPackage ../../vm/sys/net { inherit (no_pgo_foot) terminfo; }; >>> >>> # Packages that should be fully linked into /usr, >>> # (not just their bin/* files). >>> usrPackages = [ >>> - appvm kernel.modules firmware netvm >>> - ] ++ (with pkgsGui; [ mesa dejavu_fonts westonLite ]); >>> + appvm kernel.modules firmware kmod kmod.lib >>> + netvm mesa dejavu_fonts westonLite >>> + ]; >>> >>> appvms = { >>> appvm-firefox = callSpectrumPackage ../../vm/app/firefox.nix {}; >> >> So based on what we'd discussed previously, I was ready to just apply >> this and pare down the Nix changes myself since I don't have to worry >> about rebuilds, etc., but in doing so I came across this. Do you know >> why kmod.lib is required? Is something impurely dlopening it? Seems >> very strange, but I did verify that it's required for Weston to start. > > systemd uses dlopen heavily. This allows dependencies to be optional > at runtime. I remember strace showing that systemd-udevd dlopen's > kmod.lib. In short, your diagnosis is correct. Okay, that's a packaging bug in Nixpkgs then. (See e.g. [1].) I'll see what can be done. [1]: https://github.com/NixOS/nixpkgs/commit/2328731ad041735a2260698574ce6599591f33ad