provocationofmind.com

Switching to Ubuntu from Windows: A Personal Journey

Written on

I spent a significant portion of my life using Windows, but after acquiring a new computer, I made the decision to switch to Ubuntu as my primary operating system.

How has the transition been so far? Let’s explore.

Why Choose Linux?

The first question that comes to mind is, "Why Linux?" For me, several factors influenced this choice.

  • To begin with, the purchasing experience of Windows is quite frustrating. Even if you're eager to buy Windows 10 or 11, it's not straightforward. I struggled to locate a section on Microsoft's website to purchase the operating system and license at a reasonable price. Instead of finding what I needed, I encountered a page stating, “Windows 11 is rolling out now. Check to see if your current PC meets the requirements to run Windows 11,” along with links to purchase a new computer. This left me confused about how to install the OS on my new device and where to obtain the license key. It's the company's duty to simplify the buying process for potential customers like me.
  • Additionally, the cost of Windows is quite high. If you buy a prebuilt laptop or desktop, it often comes with Windows preinstalled. However, if you're assembling your own computer, you're left empty-handed. For instance, in my local Mediamarkt, Windows 10 Home Edition is priced at 145€, while a laptop with it preinstalled costs around 235€. It feels unjust that I would have to pay such a steep price when others get the same version essentially for free.
  • Lastly, I primarily use my computer for Python development. Although most of my code is cross-platform, compiling libraries for Windows can be cumbersome, requiring specific compilers and adjustments to header paths. On Linux, I can easily install the same libraries using a simple command like “apt” or “pip.”

To me, it seems that Microsoft is primarily targeting business customers, neglecting individual users. Honestly, I doubt that they value my financial contribution, especially when the number of DIY computer builders is minuscule compared to the vast market of mass-produced devices by brands like ASUS, Lenovo, MSI, or Compaq. If Microsoft isn't interested in my business, I have all the motivation to seek out a free alternative.

Ubuntu Installation

With countless Linux distributions available, determining the best one can be subjective. I opted for Ubuntu due to its significant market presence and the abundance of tutorials and Q&A resources, making it easier to find solutions to any challenges I might face. I had previously experimented with Ubuntu on a Raspberry Pi 4, yielding positive results.

To install Ubuntu, you need to download the ISO disk image, transfer it to a USB drive, and boot the computer from that drive. The official website offers disk images, and I selected the Ubuntu Desktop LTS version, which guarantees security and maintenance updates for several years. Once the ISO file is downloaded, it can be transferred to the USB flash drive using Rufus, a free tool available for Windows.

Once the USB drive is ready, insert it into the new computer, access the BIOS settings (consult the PC manual for details, usually by pressing “Del” or another key during boot), and set the USB drive as the primary boot device. The installation process is user-friendly, with no significant deviations from any other OS installation, requiring answers to basic questions about WiFi, keyboard layouts, and so forth.

A comprehensive tutorial is available on the Ubuntu website.

Now, let’s discuss my experience in configuring the system.

Video Drivers

In my case, while most drivers installed seamlessly, the video resolution was initially set too low. The fix was straightforward: I opened the “Software and Updates” tool and selected the “NVIDIA driver (proprietary)” option.

You can verify if the driver loaded correctly by entering the “nvidia-smi” command in the terminal.

All other peripherals, including WiFi, audio, and the webcam, functioned properly right away.

Google Chrome

With more applications transitioning online, it’s reassuring that Google Chrome is available across platforms, and the experience remains consistent among Windows, macOS, and Linux. Services like Google Docs and Google Photos operate just as they do on any other system.

About a decade ago, I attempted to use an open-source text editor like Open Office, but it was largely ineffective. While I could create documents that appeared fine, sharing them with others who used MS Word often led to formatting issues. The city of Munich even struggled for 15 years to transition to a free office solution due to compatibility challenges. Fortunately, in today’s landscape, most editing tools offer consistent performance across platforms.

Installing Google Chrome is a breeze; simply download the deb file from the official website, right-click it, and choose “Open with Software Install.”

Image Editing

Pinta

One of the applications I frequently used on Windows was Microsoft Paint, a simple editor for resizing screenshots and adding text. After switching to Ubuntu, I searched for a suitable alternative and found Pinta.

Pinta can be installed using the standard Ubuntu “Software” tool.

However, the version available there was outdated. The latest version can be installed via the Snap package manager, which is preinstalled in Ubuntu but only accessible through the command line. To install Pinta, simply open the “Terminal” and enter the commands: snap find pinta (to check the version) and sudo snap install pinta.

For testing purposes, I also tried to run the original MS Paint through a Wine emulator (which I will detail later). The old version of mspaint.exe from Windows XP worked without issues.

Though it functions, this version is quite outdated and lacks features like image cropping. Newer MS Paint versions, surprisingly, fail to run without a genuine Windows environment, yielding an error regarding license verification. It appears that Windows components enforce licensing checks during startup, preventing straightforward transfers to other platforms. Regardless, this isn’t a significant concern since Pinta offers more features than MS Paint.

Krita

While Pinta is suitable for basic tasks, Krita is a more advanced option for those seeking additional capabilities.

The simplest way to install Krita is via the command sudo snap install krita in the Terminal. However, the version available through Snap was not the latest at the time of writing. To install the most recent version manually requires a bit more effort:

  1. Download the latest version from the Krita website; for instance, the file might be named krita-5.0.2-x86_64.appimage.
  2. Enable the “Allow executing file as a program” option in the file properties and move the file to the Home/Apps directory.

Now, to run the application, you can use the file manager. However, a minor inconvenience is that the manually installed version doesn’t show up in the “Applications” menu. To remedy this, copy the krita.desktop file from the version installed via Snap.

sudo snap install krita cd /snap/krita/current/meta/gui cp icon.png ~/.local/share/applications/krita.png cp krita.desktop ~/.local/share/applications sudo snap remove krita

Next, edit the krita.desktop file using the command nano ~/.local/share/applications/krita.desktop. Update the paths and icon parameters accordingly.

[Desktop Entry] Name=Krita Exec=/home/dmitrii/Apps/krita-5.0.2-x86_64.appimage GenericName=Digital Painting MimeType=application/x-krita;image/openraster;application/x-krita-paintoppreset; Comment=Digital Painting Type=Application Icon=/home/dmitrii/.local/share/applications/krita.png Categories=Qt;KDE;Graphics;2DGraphics;RasterGraphics; X-KDE-NativeMimeType=application/x-krita X-KDE-ExtraNativeMimeTypes= StartupNotify=true X-Krita-Version=28 StartupWMClass=krita InitialPreference=99

After saving this file, the Krita icon should now appear among your other installed applications.

While these installation steps may seem tedious, especially for users accustomed to applications with straightforward installers like Photoshop, it's essential to recognize that Linux thrives on free and open-source software. Developers often lack the resources for continuous updates and support. If you desire the latest version not yet available in the OS repository, you must either wait or handle the installation yourself. Considering the high monthly costs of Adobe products, investing a few minutes for a free application seems reasonable.

Some Adobe software, like Photoshop CS4, can run on Linux using Wine, but I did not possess the appropriate license to test it. The Wine emulator details will follow.

Entertainment

Thanks to Google Chrome, online services operate seamlessly. I observed no differences while using Linux compared to Windows or macOS.

Streaming services like Amazon Prime play videos smoothly, and I didn’t delve into driver settings; the CPU load remains low during playback, indicating effective hardware acceleration.

Steam is also accessible on Linux, featuring a variety of titles, although I’m not a gamer and haven’t tested them myself.

Programming

As a Python developer, I can’t cover all libraries and frameworks due to their vast number, but from my experience, everything functions well. Online meetings and tools like PyCharm, Slack, and Keybase operate smoothly without issues related to audio, video, or app functionality. The PyCharm Community Edition IDE is free and available across platforms.

For hobbyists, tools like Arduino IDE are also at your disposal.

Visual Studio Code is also available for Linux, and while it looks promising, I haven't yet utilized it in my projects.

Using External USB Drives

Occasionally, I need to use USB drives, but they don't always mount automatically on Linux for various reasons. While many tutorials suggest manually mounting drives using terminal commands, modern Linux has simplified this process with the “Disks” tool.

You simply open the “Disks” application, select the new drive, and click “Mount selected partition.” The USB drive will then be mounted and visible in the file manager for standard use.

Connection to the Android Phone

A crucial aspect for me was connecting my PC with my smartphone. I frequently use my phone's camera for illustrations in my articles, and Microsoft's “Phone Companion” tool made this process incredibly easy—accessing photos with just a couple of clicks.

In contrast, integrating with Linux is less seamless. There is a GSConnect tool that allows for this functionality. After adding the extension to the system, phone folders can be mounted.

While I could access my phone's photos on the PC, the refresh rate was sluggish, often exceeding 30 seconds, with frequent disconnections. Sometimes the shared folder would be unavailable without explanation, and the absence of image previews limited usability. This is a stark contrast to the smooth operation of the “Phone Companion” application.

Alternatively, a simple workaround is using Google Photos, which can sync all images from your smartphone to the web automatically. Accessing photos through the browser provides a reliable method, albeit slower than the “Phone Companion” app.

Another option is to upload images to Google Drive, which is readily available on Android devices. This method ensures access to original images without compression, as Google Photos has a limitation of 16MP per photo by default. Although there isn’t a Google Drive client for Ubuntu yet, files can easily be accessed through the web browser.

In my view, the lack of straightforward smartphone integration is the only downside of transitioning from Windows to Ubuntu. While I cannot attest to iPhone compatibility with Linux, the integration with Android on Windows seems more efficient.

Printing

My next task involved connecting my Brother HL-L2350DW WiFi printer to my PC. I anticipated needing to install and configure CUPS (Common UNIX Printing System), but to my surprise, Ubuntu automatically detected the printer on the network when I turned it on. I was able to print, including double-sided pages, without any additional setup.

Wine and PlayOnLinux

As a final note, let’s discuss Wine—not the type you drink, but the software compatibility layer that allows Windows applications to run on Linux. Why might this be necessary? Any operating system comprises not just the kernel and UI, but also an extensive ecosystem of applications developed by various creators. If you have already purchased a license or can't find an alternative, the ability to run Windows applications can be beneficial.

Installing Wine is straightforward; you can do so via the terminal using the apt command.

sudo apt update sudo apt install wine64

That’s all it takes! Once installed, you can run Windows applications directly from the command line. For example, I use the “Signals Analyzer” software, which is exclusively Windows-based. I downloaded and extracted it to a folder, and running it requires simply executing the wine sa.exe command. The application operates as intended, with Wine mapping system folders (like “Downloads”) from Windows to the Linux environment.

A comprehensive list of tested applications can be found on the Wine App Database, which includes over 15,000 entries. Some applications may need slight adjustments, with more information available on the official project page.

It's worth noting that the default Ubuntu repository contains an outdated version of Wine. To access the latest version, you can manually add an additional repository:

sudo apt update wget -qO- https://dl.winehq.org/wine-builds/winehq.key | sudo apt-key add - sudo apt-add-repository "deb http://dl.winehq.org/wine-builds/ubuntu/ $(lsb_release -cs) main" sudo apt install --install-recommends winehq-stable

After doing this, I upgraded to Wine 7.0 instead of 5.0, but the earlier version also performed well for the applications I tested.

Another option for running Windows applications on Linux is PlayOnLinux, which operates on top of Wine but features a more user-friendly interface.

While it functions, I find Wine to be more lightweight—PlayOnLinux creates a separate Wine instance for each application, which may offer more stability but consumes more space. For me, the manual installation process is simpler.

Conclusion

For years, Linux was viewed as a platform primarily for tech enthusiasts and system administrators, and I can see why. However, my transition to Ubuntu was surprisingly smooth—far easier than a decade ago. As a software developer, I am comfortable using the console and modifying configurations, but none of that was necessary to get the system up and running, aside from basic commands like “apt install,” which anyone can manage.

Would I recommend switching to Linux at this moment? It depends. Some applications and professional tools may not be available for Linux, which could complicate the transition. However, many applications are already accessible across all platforms (Windows, macOS, and Linux), or suitable alternatives exist. Lastly, licensing costs are a significant factor; many budget computers are sold without preinstalled operating systems for cost reasons. I can easily envision users opting for a cracked version of Windows, lacking software and security updates. In such instances, installing Ubuntu is a superior choice.

Therefore, if there are no specific requirements dictating the use of Windows, exploring Linux today is definitely worthwhile. I made the leap and have enjoyed the experience (and saved 145€, enough for a beer or perhaps an SSD or RAM upgrade for my PC!).

Share the page:

Twitter Facebook Reddit LinkIn

-----------------------

Recent Post:

# Essential Insights I Wish I'd Shared with My Younger Self

Reflecting on past experiences, this piece emphasizes the importance of writing down memories and lessons learned throughout life.

Israel's Ambitious Plan: A New Canal to Rival the Suez

Israel is set to embark on a monumental project to create a canal connecting the Mediterranean to the Red Sea, aiming to rival the Suez Canal.

Redefining Value: Embracing Minimalism for a Fulfilling Life

Explore strategies to reduce overconsumption and find joy in simplicity while saving money and living intentionally.

# Unveiling the Secrets of Doping in Sports: A Historical Overview

Explore the historical context and evolution of doping in sports, highlighting the relentless pursuit of performance enhancement by athletes.

Unlocking Opportunities: Why You Should Pursue Google Cloud Certification

Discover the benefits of obtaining a Google Cloud certification and how it can elevate your tech career in 2023.

Navigating the Realities of After-Hours Hustles: The Untold Truth

Explore the hidden challenges of after-hours hustles and the importance of realistic expectations for success.

Inspiring Reads: Ryan Holiday's Ultimate Book Recommendations

Discover Ryan Holiday's top book recommendations that encourage new ways of thinking and personal growth.

A Deeper Look: Why Skill Outweighs Talent in Success

This piece explores the significance of skill development over talent in achieving success.