It has been a hell of a ride with my old laptop, the HP Spectre x360. I had a refurbished Lenovo Yoga for 18 months but that also came to an end. I could easily spend money on grocery without even thinking, but electronics. Hell no!
It took me more than a month to decide for a new laptop. For a long time I was seriously considering Tuxedo models. The thing is that I got so accustomed to a convertible laptop that it has become a sort of requirement now. The InfinityFlex 14 was super intriguing, but I ultimately decided to invest in slightly better hardware. If one is looking for a good laptop, with decent support for Linux, the Tuxedo InfinityBook is definitely a good choice. I think one can build a good machine for a reasonable price.
That said, I was looking for a laptop with
- At least 32GB or even better 64GB of RAM
- 14'' touchscreen
- Convertible
- Decent CPU
- Good battery life
It was difficult to choose between a Tuxedo and another brand. Ultimately, I thught I would get better value with HP, due to the better processor and screen. Time will tell if I made a good choice. One thing that I really want to outline is this. If having a convertible laptop wouldn't have meant so much to me, I would have bought a Tuxedo InfinityBook on the spot, without thinking.
So, I bought a HP OmniBook Ultra Flip, an elegant, computationally ok machine. Two videos helped me make a decision:
Raise of the machine
The laptop does not provides USB-A ports, only USB-C. This is not a problem at all. I had an old Apache USB hub that can connect both via USB-C and USB-A.
One had to discover how to tweak UEFI to boot the USB. Disabling the Safe boot
was not enough. You need to disable something called the Boot Sure Start
.
Once I could boot from my Gentoo USB stick, I could see install the system. Here is the list of hardware and the output of lspci
Device | Hardware | Status | Module | |
---|---|---|---|---|
Video | Intel Arc 130/140 | Working | intel i915 | |
Wireless | Wi-Fi 6E AX231 160MHz | Working | iwlwifi | |
Bluetooth | Intel | Working | btintel_pcie | |
Audio | Lunar Lake-M HD Audio Controller | Working | snd_hda_intel | |
Touchpad | SYNA3580:00 06CB:Touchpad | Working | ? | |
TouchScreen | ELAN | Working | ? | |
Webcam | Quanta 9M | Working | ? | |
Fingerprint reader | Synaptics | Working | No module, but libfprint-1.94.9 | |
USB | - | Working | xhci_pci | |
Function/Multimedia Keys | - | Working | ? |
Full probe is available on Linux-Hardware. You can also find a page on Gentoo Wiki.
Wireless
Worked out of the box. I ditched wpa_supplicant for iwd. So far so good. For the wifi to work, you do need to install the firmware.
emerge --ask sys-kernel/linux-firmware
Bluetooth
Sadly, it did not work out of the box. But the solution was simple. journalctl showed me why it was not working.
$ journalctl -b | grep Bluetooth
May 06 22:32:47 elea systemd[1]: Reached target Bluetooth Support.
May 06 22:32:47 elea kernel: Bluetooth: hci0: Device moved to D0 in 4367 usecs
May 06 22:32:47 elea kernel: Bluetooth: hci0: dsbr: enable: 0x01 value: 0x0b
May 06 22:32:47 elea kernel: Bluetooth: hci0: Failed to load Intel firmware file intel/ibt-0190-0291-pci.sfi (-2)
May 06 22:32:47 elea kernel: Bluetooth: hci0: Failed to read MSFT supported features (-56)
May 06 22:39:13 elea systemd[1]: Stopped target Bluetooth Support.
The issue was with the version of the firmware. The one needed wasn't there anymore. So, updating it brought back the firmware I needed.
echo "<=sys-kernel/linux-firmware-20250410 ~amd64 >> /etc/portage/package.accept_keywords/system
emerge --ask sys-kernel/linux-firmware
Audio
Sadly, there was no nice sound waiting for me at the start up of the system. You need to make sure that sof firmware is installed.
echo "media-video/pipewire v4l" >> /etc/portage/package.use/system
emerge --ask media-video/pipewire
In my case, that was not enough, pipewire seems to refuse to start if there V4L is missing. I figured that out by looking at the logs.
wireplumber[2626]: wp-internal-comp-loader: Loading profile 'main'
wireplumber[2626]: spa.bluez5: BlueZ system service is not available
wireplumber[2626]: wp-device: SPA handle 'api.v4l2.enum.udev' could not be loaded; is it installed?
wireplumber[2626]: s-monitors-v4l2: PipeWire's V4L2 SPA plugin is missing or broken. Some camera types may not be supported.
wireplumber[2626]: wp-device: SPA handle 'api.libcamera.enum.manager' could not be loaded; is it installed?
wireplumber[2626]: s-monitors-libcamera: PipeWire's libcamera SPA plugin is missing or broken. Some camera types may not be supported.
systemd[1008]: Reload requested from client PID 2668 ('systemctl') (unit app-org.kde.konsole@88d14af7c1dd415e826b030cde16c7cc.service)...
systemd[1008]: Reloading...
systemd[1008]: Reloading finished in 203 ms.
So, I tried to add V4L to USE flags. There are records on reddit of this Re-emerging pipewire with v4l use flag enabled fixed the issue and sound is working now.
Fingerprint reader
I have never had a working fingerprint reader. At this round, I got lucky. The device I have (Synaptics 06cb:0174) is supported by libfprint. The support was introduced in 1.94.9. See release notes. So, I made an ebuild for it and tried. It works smoothly. One needs to configure PAM to rely on libfprint. On desktop managers like KDE or Gnone, this seems to be already the case. Otherwise you need to configure PAM.
If you use GDM, the fingerprint-option is already available in the login menu (if not add yourself to the input user group). You can skip this section! If you use SDDM, see SDDM#Using a fingerprint reader.
auth sufficient pam_fprintd.so
For more information on configuring PAM with libfprint, one is better with the Fprint documentation provided by Arc.
To check
Next steps are to check the gyroscope and the pen.