Experience with running Fedora Linux on a Thinkpad P14s Gen 5


I have recently acquired a Lenovo Thinkpad P14s Gen 5. As of the time of writing – summer of ‘24 – these machines are brand new, and so is their architecture: Intel Core Ultra (Meteor Lake) with a dedicated NVIDIA GPU. Here I report my experience with running Linux with the KDE Plasma desktop on this machine.

My previous daily driver was a T480s (see my old blog post over at xltoolbox.net for a report). I also administer two different X1 Carbons (5th generation and 9th generation), however, I don’t use these very often myself.

Here are the specs (the 1 TB SSD has been swapped for a Samsung 990 PRO with 2 TB).

daniel@seppel9 ~> fastfetch
             .',;::::;,'.                 daniel@seppel9
         .';:cccccccccccc:;,.             --------------
      .;cccccccccccccccccccccc;.          OS: Fedora Linux 40 (KDE Plasma) x86_64
    .:cccccccccccccccccccccccccc:.        Host: 21G3S00A00 (ThinkPad P14s Gen 5)
  .;ccccccccccccc;.:dddl:.;ccccccc;.      Kernel: Linux 6.9.11-200.fc40.x86_64
 .:ccccccccccccc;OWMKOOXMWd;ccccccc:.     Uptime: 1 hour, 47 mins
.:ccccccccccccc;KMMc;cc;xMMc;ccccccc:.    Packages: 4338 (rpm)
,cccccccccccccc;MMM.;cc;;WW:;cccccccc,    Shell: fish 3.7.0
:cccccccccccccc;MMM.;cccccccccccccccc:    Display (LEN8AB1): 3072x1920 @ 120 Hz (as 2048x1280) in 14″ [Built-in]
:ccccccc;oxOOOo;MMM000k.;cccccccccccc:    DE: KDE Plasma 6.1.3
cccccc;0MMKxdd:;MMMkddc.;cccccccccccc;    WM: KWin (Wayland)
ccccc;XMO';cccc;MMM.;cccccccccccccccc'    WM Theme: Breeze
ccccc;MMo;ccccc;MMW.;ccccccccccccccc;     Theme: Breeze (Dark) [Qt], Breeze [GTK3]
ccccc;0MNc.ccc.xMMd;ccccccccccccccc;      Icons: breeze-dark [Qt], breeze-dark [GTK3/4]
cccccc;dNMWXXXWM0:;cccccccccccccc:,       Font: IBM Plex Sans (10pt) [Qt], IBM Plex Sans (10pt) [GTK3/4]
cccccccc;.:odl:.;cccccccccccccc:,.        Cursor: breeze (24px)
ccccccccccccccccccccccccccccc:'.          Terminal: konsole 24.5.2
:ccccccccccccccccccccccc:;,..             CPU: Intel(R) Core(TM) Ultra 7 155H (22) @ 4,80 GHz
 ':cccccccccccccccc::;,.                  GPU 1: Intel rc Graphics @ 2,25 GHz [Integrated]
                                          GPU 2: NVIDIA RTX 500 Ada Generation Laptop GPU
                                          Memory: 9,13 GiB / 62,29 GiB (15%)
                                          Swap: 302,50 MiB / 104,00 GiB (0%)
                                          Disk (/): 18,77 GiB / 146,59 GiB (13%) - ext4
                                          Disk (/home): 524,56 GiB / 1,55 TiB (33%) - ext4
                                          Local IP (wlp0s20f3): 192.168.3.114/24
                                          Battery: 93% [AC Connected]
                                          Locale: en_US.UTF-8

Difficulties and finally success with installing Linux

At first, I was totally unable to install KDE neon, my preferred Linux distribution, on this system. I freaked out. (I don’t care if it’s officially a ‘distribution’ or not.) The live CD just would not boot. It did work in safe graphics mode, but when I installed the system onto the laptop, I was once again unable to boot into Plasma. (I already posted in the KDE forum about this).

At some point it occurred to me that I may need to try a distribution, so I tried Fedora – and it worked!! In order to boot the live CD, I also had to choose basic graphics mode just like with KDE neon (which is Ubuntu under the hood). Once I had the live desktop up and running, I could enable the NVIDIA repositories, so that the NVIDIA drivers were included during system installation. Luckily, the Fedora Project provides a KDE spin so that I could continue to use my favorite desktop environment.

Hardware

Except for the initial difficulties getting this system with a dedicated NVIDIA GPU to run Linux, everything else just works out of the box. Nice! :-)

The trackpoint works as usual. This is really the main reason why I keep buying Thinkpads. A laptop without trackpoint is a no-go for me. In fact, I did consider buying a MacBook Pro, but the absence of a trackpoint and the uncertainty whether I could do my beloved Linux foo with MacOS made me stick with a Thinkpad.

The fingerprint scanner is integrated into the power button. While not essential, it’s a nice gimmick and KDE Plasma provides a pretty UI to set it up. Currently, logging into the system after booting is not (yet) supported, but unlocking (e.g., after resume from sleep) works very well.

The 3k screen is really good, it’s very bright and super crisp. At 100%, the user interface is quite tiny. Luckily, with Wayland, fractional scaling is now easy to accomplish and reliable. With a scale factor of 1.2 (120%), I am very happy with my P14s’ display. Interestingly though, the corners are rounded, even though the laptop frame has sharp corners. I tend to think: If you have enough time wondering about something like this, it’s probably time to take a break and do something else for a while.

Unfortunately, the keyboard is the worst that I have ever had in any Thinkpad. It feels like typing on jelly. Luckily, for most of the heavy-duty work, I connect the laptop to a Thunderbolt dock with a proper mechanical keyboard attached. I wonder why Lenovo does not equip this machine with the same keyboard as in the other models – given the price tag of this machine, the extra bucks surely cannot make such a big difference?

Camera, mike, and speakers just work. No problem running Zoom. I have not yet tried out Teams.

Form factor and weight

The P14s is somewhat bigger than the old T480s and certainly somewhat heavier. Before deciding on the purchase, I carefully thought about my use cases and decided that I can live with an extra 200-300 grams that I mostly only carry onto and off from the commute train, as well as on my bicycle’s rack. Therefore, I made a decision for the extra performance (with dedicated GPU, which the alternative models, i.e. X1 Carbons or T14s’s do not offer).)

Lenovo says the P14s starts at 1.6 kg, which compares to a MacBook Pro’s nominal weight. On our kitchen scale, my P14s weighs 1.74 kg.

In real life, the laptop’s body is somewhat bigger than the actual casing, because it has a very long “foot” underneath it. This ensures proper ventilation, because the two fans blow out the warm air underneath the laptop. While this “foot” makes the P14s rather thick, it turns out that this also provides a good grip when pulling it ouf of a bag or carrying it around.

I have yet to come to terms with the new camera casing that all new Thinkpads seem to have nowadays.

A photograph of the camera casing of a Thinkpad P14s Gen 5

The camera casing. It disrupts the smooth surface of the Thinkpad.

A photograph of the 'foot' underneath a Thinkpad P14s Gen 5

The ‘foot’ underneath the P14s makes it thicker, but also provides a good grip on the machine.

Performance

Compared to the old T480s, the performance gain of the Intel Core Ultra and the dedicated NVIDIA GPU is very noticeable. Whether I compile R packages or analyze clinical data with ~80k subjects in RStudio, develop RAW images in Darktable, or work with Office in a VirtualBox-hosted Windows machine, everything is very snappy. For instance, a typical RAW image is now processed in under 1 second, as opposed to ~10 seconds on the T480s.

The machine wakes from sleep (suspend to RAM) extremely quickly, I guess this is due to novel suspend mechanisms? On the other hand, boot times are rather slow (34-40s on AC power, T480s on battery 31 s!!).

Fan

The fans spin up quickly, but the noise is not unpleasant. Maybe I can tweak the fan control in order to have them spin up a little more lazily. But when I had both my old laptop and the new one side by side, I realized that the T480s’ fan noise drowns the P14s’ fan noise. Notably, the P14s was running on AC power, while the T480s ran on battery. In fact, even the T480s with built-in graphics had its fan running most of the time when I was working with it (academic work, researching, writing, data analysis etc.).

Energy consumption

The P14s’ battery has much more capacity than the T480s’ one, 75 Wh vs. 42 Wh. However, with my normal work load, the battery drains rather quickly. The following screenshot shows the charge level over time as I sat outside, editing a manuscript with Word running in a virtual machine (VirtualBox with Windows 11 guest) and doing some internet research in a browser. The screen brightness was set to 100%. After some 3.5 hours, it’s time for a break…

Making the switch from Ubuntu to Fedora

When I downloaded the Fedora KDE spin, I was admittedly a bit anxious. I had been working with Ubuntu and KDE neon, which is based on Ubuntu, for many years, and I wondered if Fedora would be very different.

It’s not.

The three things that are really different from my perspective:

  • To install something on the command line, use dnf rather than apt:

    sudo dnf install good-stuff
    
  • Removable disks (USB drives) are mounted on /run/media/<USER> rather than /media/<USER>.

  • More up-to-date kernel and software

Conclusion

All in all, I am quite happy with the P14s. In the past couple of weeks, it has already proven to be a reliable work horse, and this is what I need. The keyboard really should be better, but hey, life is not perfect, is it?


Update 2024-08-14

Two important things to add:

  1. After a recent system update, suspend (sleep) stopped working. First I suspected the NVIDIA driver to be responsible, it had been upgrade to version 560. However, when I downgraded the driver, the problem persisted. Finally I found a thread on the Fedora Discussion forum which suggested to disable ethernet in BIOS. Tada! That was it. Hopefully, with a future kernel or firmware upgrade, I will be able to use ethernet again, as I prefer to have cable-bound internet at home. The current linux kernel is 6.10, upgraded from 6.9 just recently.

  2. Here’s another interesting report from someone running Linux on a P14S, albeit Gen 4 (mine is Gen 5) and with AMD and integrated graphics (I have Intel with dedicated NVIDIA GPU). The author (Herman) also notes the battery drain (even with AMD and iGPU) and the build quality which is somewhat below the T series. Herman has also posted about controlling fan speed with a simple script, and I think I am going to tinker with it in the future, because the following works on my P14s Gen 5 with Intel CPU and NVIDIA GPU:

    # This is just a proof of concept, spin up the fan and spin it down again
    # Run as root
    echo level 7 > /proc/acpi/ibm/fan; sleep 5; echo level 1 > /proc/acpi/ibm/fan
    

Update 2024-08-22

Fedora installs only free software by default, which means that Kdenlive and other multimedia software will have trouble using H.264 and H.265 video codecs. A free version of ffmpeg is installed by default. This is what I did to replace ffmpeg-free with the non-free ffmpeg on F40:

  1. Enable the non-free RPM Fusion repositories as written on the RPM Fusion homepage:

    sudo dnf install https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm
    sudo dnf config-manager --enable fedora-cisco-openh264 
    
  2. Remove ffmpeg-free in favor of ffmpeg:

    sudo dnf swap ffmpeg-free ffmpeg --allowerasing
    

After doing that and restarting Kdenlive, I was able to render my project using the H.264 and H.265 codecs as I used to be able to do with Ubuntu-based systems.