Reading the headline, you might think that I don't think that Linux or the Ubuntu distribution can make for a good laptop experience. That's not the case at all. A lot depends on the applications you use, what frameworks and stacks you build your workflows around, and what your general needs are. For me, that means the Microsoft ecosystem including Office 365 and Windows.
The Windows part is pretty easy. Ubuntu is east enough and similar enough to the Windows experience that it's easy to navigate for a Windows user. At least for a Windows user with technical expertise. As it turned out, the apps were the real problem.
I have a functional laptop that was my main travel computer. It's a solid Dell machine. Unfortunately, it's just old enough that it can't be upgraded to Windows 11 so, I bought a new laptop as my travel computer. With Windows 10 now end-of-life, it seemed to be the time to upgrade. My daily drive is a desktop by Alienware. For years, I've had a Microsoft 365 subscription, originally purchased for work. Needless to say, the majority of my computing, outside of gaming, lives in the Microsoft world.
As an experiment, I wanted to see if I could convert my old travel computer to a reasonably functional laptop that would, at least, approximate the experience of my Windows computers. That means run the same apps, access the same cloud storage, and be otherwise useful for my everyday needs. I wasn't looking to duplicate the development environment that I have on my desktop or run resource taxing games. I just wanted to be able to do relatively normal tasks that I use my other laptop for.
Getting Ubuntu installed and configured was easy enough. I did some simple modifications such as moving the launcher dock to the bottom, like it is in Windows 11, and arranging desktop icons so that it was similar to my Windows configuration. Some changes required using terminal commands, which is a bit irritating and might not work for an average user. The power policy, for example, turns off the screen after a maximum of 15 minutes according to the GUI settings. You have to set using gsettings on the command line if you want something more.
The primary launcher also just dumps most of your programs into a grid with a few in program group folders. I had to organize my applications manually. That's not much different than Windows 11 though the latest upgrade to the Windows 11 Start menu does some of that organizing for you if you want.
A major hurdle to using Linux int he past was accessing cloud drives, especially OneDrive. Gnome, the display manager used by Ubuntu, makes that easier. You can connect to your OneDrive drive and access it like a network drive directly from the file manager. It doesn't sync to a local drive, however, so without a network connection you won't have access to your files. That's certainly a consideration for a travel computer.
Adding applications is where things get really dicey. The majority of Ubuntu applications are snaps or Debian packages (DEB file) available through the Ubuntu App store. That fine for installing most Linux applications. Getting the same applications that I use on Windows was ranged from easy to impossible depending on the application. For example, some applications are available on Windows and Linux. All I had to do was install the Linux version. That wasn't always as easy as it might seem.
Software developers often have a bit of religion around package managers and will only use one of them. That's okay if it's a DEB file or a Snap. Not everyone likes those though. I ended up installing Flatpak as well to get at some applications. That resulting in two app stores that didn't support all formats.
Unfortunately, even that wasn't enough. Ubuntu finds applications store in specific repositories. Some developers insist on releasing through their own repository which has to be added at the command line or in the Software and Updates app. Even when it is added, it still has to be enabled before those applications can be installed. Microsoft Edge required the adding of a Microsoft Linux repository. Again, it's part of the Microsoft landscape and using another browser, such as Firefox, would not allow for bookmark and setting synchronization. I had no choice but to jump through all the hoops to get it installed. Once installed though, I was able to download and configure Microsoft Teams as well.
Several applications that I use a lot only came in a Windows flavor. The solution there was to install Wine. Wine creates a compatibility for Windows applications at the API level. Once installed, Windows applications supported by Wine showed up in the App store and could just be installed. Wine, however, is not magic. Even though the WineHQ project says you can install Microsoft Office 365, it proved impossible for me to get it to install, even with detailed instructions. By the way, those instructions were command line instructions that were not for an inexperienced user. I tried using some of the GUI interfaces for Wine but, no matter what, the installation choked. So, I'm stuck using a different office suite or the online versions of the Office applciations. The latter is not really the same experience and relies upon a decent Internet connection. That's a heavy lift on an airplane.
A bright spot was gaming. I was able to install Steam which, using its Proton compatibility layer, was able to run some of my Windows games. I didn't try anything too taxing since the graphics card on the laptop likely could handle those games, but some older games were quite playable. If the computer itself was more capable, I don't doubt I could play most of my Windows games on an Ubuntu laptop.
At the end of the day, I got about 90% of where I wanted to be. I can already hear the Linux apologists saying to switch to a different browser, cloud storage from someone other than Microsoft's, or use LibreOffice. That's a major switch of infrastructure, applications, and workstyle. You can't ask regular people to do that.
So, the Windows hegemony will remain as long as key Microsoft applications such as Microsoft Office 365 are unavailable as native Linux applications. Maybe that's the point of not supporting Linux in this way.
