Hardware status

UraniumOS 0.1.1 has been run in QEMU with KVM and OVMF, and not on a real machine. The hardware lists below come from the kernel configuration.

Platforms

PlatformStatusNotes
x86-64 with UEFI, QEMU/KVM with OVMFTestedDisk image, ISO install, manual install and encrypted manual install.
x86-64 with UEFI, real hardwareNot testedThe kernel has drivers for common storage, wired network and Intel graphics. The list is below.
x86-64 with BIOS (CSM)Not supportedThe boot menu is limine on the EFI System Partition.
Secure BootNot supportedlimine, the kernel and the initramfs are not signed.
32-bit x86, ARM, RISC-VNot supportedThe images are x86-64 only.

What the kernel builds in

The kernel has no module support (CONFIG_MODULES is not set), so a driver is either in the list below or absent. The list is read from the .config of the 0.1.0 kernel (Linux 7.3.0), which is recipes/linux-uranium.config merged over make defconfig. The kernel recipe is described in kernel.

Boot and firmware
EFI stub boot, EFI framebuffer (FB_EFI), simpledrm, 64 CPUs at most (NR_CPUS=64), CPU microcode loading is compiled in. The initramfs holds no microcode file.
Storage controllers
NVMe, SATA AHCI, PIIX IDE, virtio block and virtio SCSI. USB mass storage through xHCI, EHCI, OHCI and UHCI. Not built: USB attached SCSI (USB_UAS), MMC and SD card readers, hardware RAID controllers. USB storage uses the plain Bulk-Only driver.
Filesystems
btrfs, ext4, XFS, FAT and VFAT, exFAT, NTFS (the ntfs3 driver), ISO 9660 with Joliet, squashfs (xz and zstd), overlayfs, FUSE, tmpfs, NFS client. Not built: CIFS.
Wired network
virtio-net, Intel e1000, e1000e and igb, Realtek r8169 and 8139too, Marvell Yukon 2 (sky2). Other Ethernet chips, such as Broadcom NetXtreme, Intel i225 (igc) and Atheros, have no driver. The kernel also builds in WireGuard, TUN, bridge, veth, VLAN and macvlan.
Wireless and Bluetooth
The wireless stack (cfg80211, mac80211) is built in, and no wireless chip driver is. CONFIG_IWLWIFI and the Atheros, Realtek, Ralink, MediaTek and Broadcom drivers are not set. Bluetooth is not built. Wi-Fi does not work on this kernel, with or without firmware.
Graphics
Intel graphics (i915), virtio-gpu, Bochs, the EFI framebuffer and simpledrm. Not built: AMD (amdgpu, radeon), Nouveau, VMware. A machine with an AMD or NVIDIA GPU runs on the firmware framebuffer without acceleration.
Input and USB
Keyboard (AT and USB HID), mouse, touchscreen and tablet input classes, evdev, uinput, USB audio.
Sound
HD Audio with the generic codec and the Realtek ALC, HDMI and Intel DSP configuration drivers, and USB audio. No other codecs, such as Conexant, were selected.
Virtualisation
KVM for Intel and AMD, vhost-net.
Encryption
dm-crypt with AES, XTS, SHA-256 and SHA-512, AES-NI.
Namespaces and cgroups
User, PID, network, UTS and IPC namespaces, cgroups with the memory, pids, freezer, cpuset and BPF controllers. These are what silo and hazmat use through bubblewrap.

The hardening options are listed in kernel and security.

Firmware

CONFIG_EXTRA_FIRMWARE is empty and the firmware loader is built in. A driver asks for it's firmware files at run time, and the kernel looks in /lib/firmware, which is a link into /rod/profile/lib. The package linux-firmware installs its files there. The installer installs it when the answer FIRMWARE=yes is given, and rod +i linux-firmware does it later. It is large and needs the network. Because the drivers are built in, a driver may ask for firmware before the root filesystem is mounted and the request then fails. Whether this affects a given device was not tested. Firmware does not add a driver that the kernel lacks, see the paragraph on wireless above and firmware.