My Linux Journey
Intro My Linux journey started with curiosity. I wanted to understand how computers really work, not just use them. From Ubuntu and Kali to Arch, I learned Linux by experimenting, breaking things, researching, and fixing them. Along the way, I discovered the power of the terminal, open source, Docke

Intro My Linux journey started with curiosity. I wanted to understand how computers really work, not just use them. From Ubuntu and Kali to Arch, I learned Linux by experimenting, breaking things, researching, and fixing them. Along the way, I discovered the power of the terminal, open source, Docker, kernels, networking, and endless customization. This is the story of how Linux went from just another operating system to something I genuinely enjoy using. 🐧 At the end of summer, we went back home, so I decided to format my laptop and dual-boot Windows and Kali Linux. That decision made me hate Microsoft a lot. 😂 When I tried to split my storage and free up some space for Kali, Windows had something enabled called BitLocker, and it made partitioning the disk much harder. I tried several tools to work around it and finally found one that worked — or so I thought. I tried it again, and Windows only gave me 16 MB of free space. I was like, “Are you kidding me? What am I supposed to do with 16 MB?” 😂 I tried Microsoft’s tools, then a third-party tool, and somehow managed to make Windows act weird. The next summer, I joined Network 42 pool in Rabat, Morocco. We used Ubuntu Linux, and I started loving Linux a lot. At the end of the program, I decided to try using Kali Linux as my main OS. At that time, I was also trying to improve my cybersecurity skills. I wanted to install Docker on Windows, but fixing the installation problems was surprisingly difficult. After a few days of troubleshooting, I decided to format Windows. I watched one last tutorial, and they told me to reboot Windows and enter Safe Mode. Then I ran into another problem: my PIN stopped working. Windows showed “Click to fix”, but clicking it did absolutely nothing. 😭 So I formatted the computer again. This time, I decided to install Arch Linux. A friend had recommended Arch to me after the Network 42 program. Kali comes with many penetration-testing tools preinstalled, but I wanted to learn Linux itself instead of having everything configured for me. And yes… I use Arch, btw. 😂 I installed Arch using a simple GUI installer because I wanted to try the easy way first. I installed it directly on my main computer — not inside a virtual machine. Then came the partitioning problems. Because I was dual-booting, I had to work with the command line and learn things like swap, filesystems, partitions, and bootloaders. Eventually, everything seemed to work. Then I rebooted. GRUB didn’t recognize Arch. I spent about two days trying to fix it. I reinstalled GRUB several times. Eventually, GRUB detected Arch… but Arch still wouldn’t boot. So I went into the GRUB command line and manually checked whether Arch was actually installed and where its files were. After about half a day, I finally fixed it. So now we’re finished, right? No. 😂 I had another problem: networking. I spent around four hours trying to fix it. Instead of using a small terminal, I ended up using a huge GUI with a wall of text. Eventually, I discovered that I needed NetworkManager. I installed it from the USB installation environment and got networking working. The next day, I discovered another problem. The network was broken again. I checked NetworkManager, but it wasn’t working. Even Bluetooth wasn’t working anymore. I ran: At this point, I thought: “Arch is open source, so I can basically clone the source code onto Windows, and Linux can access Windows. That’s a brilliant idea, right?” 😂 I asked AI about it, and it said yes but that this was more of an advanced-user approach. Instead, I used my USB boot environment to update the kernel. And honestly, this was awesome. You can boot Linux from a USB, access the files on your installed system, and fix problems from the command line. You can even mount and unmount filesystems manually using commands like mount and umount. Then I decided to update Arch to the LTS (Long-Term Support) kernel. And, of course… That caused another problem. 😭 My normal kernel was 6.17.1, while the LTS kernel was 6.12.5. I installed both kernels. When I booted Arch, it started using the LTS kernel. I checked with: uname -r and it showed: 6.12.5 But my package manager showed the newer kernel, 6.17.2. So I thought: “Fine. I’ll just remove the LTS kernel.” I removed it, rebooted my laptop… And Arch booted into the LTS kernel again. I checked again, and the system told me that the LTS kernel wasn’t even installed anymore. But somehow… I was still booting into it. 💀 I rebooted again and manually selected the newer kernel, 6.17.1, from the GRUB menu. Finally, everything worked. So after all of that, I learned an important lesson: If you’re using Arch, don’t update things just because you can. 😂 After a while, I got an idea: why not switch my desktop environment (DE)? At that time, I was using GNOME, so I decided to try KDE Plasma. I installed it, but I ran into a problem. I was using an LLM to help me, and it gave me two commands. The first one installed KDE normally, without all the KDE applications. The second one installed KDE with all the KDE applications. And of course… I chose number 2. 😂 Why? Because I wanted to test the KDE applications. Oh, and I forgot one important thing: I had only given Linux 180 GB out of my 500 GB disk. The rest was reserved for Windows. After installing KDE with all the applications, suddenly I had two calculators, two file managers, and duplicates of almost everything. And my disk was getting full all the time. At first, I ignored it. I thought, “I’ll just delete some small files.” But KDE has a lot of applications, and I didn’t know which packages were safe to remove. So I asked AI for a simple command. Eventually, I removed all the unnecessary KDE applications. And because I’m a developer, I had another idea: node_modules 😂 I deleted node_modules from projects I wasn't working on anymore. I managed to free up some space. I had around 40 GB free, then somehow I was down to about 15 GB. But then something crazy happened. One day I had 40 GB free. The next day: 0 GB. I thought: “Did I install a game? Did I get a virus? What the hell happened?” 😂 So I started investigating. Then I found something taking up around 40 GB: Docker volumes. At that time, I had just started learning Docker, so I was confused. “What is a volume?” I knew about Dockerfiles and YAML files, but I didn’t really understand Docker volumes yet. So I researched it and learned that, basically, a Docker volume is persistent storage that containers can use — for example, for databases. And at that time, I was running three projects with Docker, all at the same time. So yeah… Docker ate my disk. 😂 After I had been using KDE for about two days, I also started experimenting with ricing. For anyone who doesn’t know, ricing is basically heavily customizing your Linux desktop: the appearance, terminal, bars, colors, fonts, keybindings, wallpaper, and pretty much everything else. I spent some time customizing KDE, and it was fun. But I quickly realized something: I’m spending more time customizing Linux than actually using Linux. 😂 So I stopped ricing KDE. After that, I thought: “Okay, let’s try another DE.” And that’s when I discovered Hyprland. What is Hyprland? It’s a Wayland compositor with a highly customizable tiling-window experience. And I thought: “The most customizable desktop? Why not?” 😂 Unlike GNOME or KDE, Hyprland doesn’t give you a complete desktop environment with everything already configured. You basically build your desktop yourself. You need to choose things like: A bar An application launcher A notification system A lock screen Wallpapers Clipboard tools Screenshot tools And many other components At first, it was really weird. After using GNOME and KDE, Hyprland felt completely different. But after I started understanding how it worked… I loved it. The windows don’t behave like traditional floating windows. They are arranged automatically, and you can customize almost everything. The keyboard shortcuts were another thing I really liked. You can create your own shortcuts for applications and even system actions. you can configure something like: to lock your computer. Of course, you need a lock-screen program such as hyprlock to actually provide the locking functionality. And that’s what I liked about Hyprland: You don’t just use the desktop. You build your desktop. My journey went from GNOME → KDE Plasma → KDE ricing → Docker → Hyprland. And the funny thing is, every time I changed something, I learned something new about Linux. Sometimes I broke something. Sometimes I fixed it. Sometimes I made the problem even worse. 😂 But that’s exactly what made the journey interesting. I use Arch, btw. 🐧 If you enjoyed this journey, stay tuned for my next one: My Linux Server Journey. 🐧
Key Takeaways
- •Intro My Linux journey started with curiosity
- •This story was reported by Dev.to, covering developments in the dev space.
- •AI advancements continue to reshape industries — read the full article on Dev.to for complete coverage.
📖 Continue reading the full article:
Read Full Article on Dev.to →


