2020-05-05-my-journey-through-desktop-environments.html (8668B) - raw


      1 <!-- title: My journey through desktop environments -->
      2 <!-- slug: my-journey-through-desktop-environments -->
      3 <!-- categories: FOSS, Miscellany -->
      4 <!-- date: 2020-05-05T19:26:00Z -->
      5 <!-- lastmod: 2020-05-06T07:52:00Z -->
      6 
      7 <p>
      8   My first experience with GNU/Linux was with KDE. It is the desktop environment used on my college
      9   computers, and it was more or less the only experience I had with the GNU/Linux operative system,
     10   so it was the desktop environment I installed at home (at that point I don't think I knew the
     11   difference between a distribution and a desktop environment). After some time, I got comfortable
     12   with the new OS and learned that distributions and desktop environments were completely different
     13   things, so I started to look around for other DEs and decided to go with GNOME. It was a weird
     14   choice, as I had only read—and heard—bad things about GNOME, but I was reading a lot about the GNU
     15   project and decided to go with the DE that was part of the project, just to try it out.</p>
     16 <!-- /p -->
     17 
     18 <p>
     19   Well, GNOME is great. I love GNOME! I am glad I wanted to try it (for a more or less stupid
     20   reason) against what people were writing/saying. It works great out of the box, it has programs
     21   for everything I needed and can easily be configured to fit your needs<sup id="fnref1"><a
     22   href="#fn1">1</a></sup>. With Debian 10, the dark theme is great, and other apps like firefox also
     23   go dark with it<sup id="fnref2"><a href="#fn2">2</a></sup>. It was a bit confusing the first
     24   couple of days, but it was easy to get used to. GNOME has worked great for me (and still does).
     25   With the lack of a bar with all the open windows (like on KDE), I have gotten more used to moving
     26   around with the keyboard. I also made a conscious effort to use the keyboard more, as I had seen
     27   many people move around faster and more naturally when they weren't using the mouse. So, after
     28   gaining confidence with the keyboard, I decided to finally give i3 a <em>real</em> shot a couple
     29   of weeks ago.</p>
     30 <!-- /p -->
     31 
     32 <p>
     33   <a href="https://i3wm.org/">i3</a> is a tiling window manager, which means that it is a window
     34   manager that arranges windows in a way that they don't overlap. A window manager is the software
     35   that manages your windows (resize, move, close, etc.). The difference with desktop environments is
     36   that the latter come with a window manager, but also many more programs (like a terminal emulator
     37   or a text editor) as well as panels, system menus, and other features. These normally all look
     38   alike and work well together.</p>
     39 <!-- /p -->
     40 
     41 <p>
     42   I say I decided to give it a <em>real</em> shot because I have tried i3 multiple times before:
     43   mainly logging in, seeing how ugly everything looks, logging out<sup id="fnref3"><a href="#fn3">3</a></sup>.
     44   This time it was different: I had time to figure everything out, so I decided to push through the
     45   first days (when everything is to be configured"), and then decide. I installed it, tweaked it a
     46   little, didn't like some things, installed <a href="https://swaywm.org/">sway</a>, it fixed some
     47   things but messed up others, I also considered other tiling window managers like
     48   <a href="https://dwm.suckless.org/">dwm</a>, and went back and forth a couple of times (all in one
     49   day). Eventually, I decided sway had one problem I couldn't cope with<sup id="fnref4"><a href="#fn4">4</a></sup>
     50   and decided to stick with i3. I made a list of everything that was missing (or "wrong") and went to bed.</p>
     51 <!-- /p -->
     52 
     53 <p>
     54   The next day, I grabbed the list and started working on the items. Some of them were very easy to
     55   fix, like make the sound buttons work. Some others were a little harder, like mounting USB
     56   automatically. I even had to reinstall i3—a fork of i3 actually—so I could have gaps between
     57   windows (yes! I needed those!). I also added more items to the "problems-to-fix" list as I kept
     58   using i3. After about a week, I had fixed everything on the list!</p>
     59 <!-- /p -->
     60 
     61 <p>
     62   This process of going through a lot of minor things made me realize how awesome GNOME is. It has
     63   so many features, without a need for the user to spend hours and hours making everything work. KDE
     64   probably also goes into this category, but I haven't used it as much so I can't say. Other DEs
     65   that I have tried have given me some problems here or there, nothing major, but it isn't the
     66   out-of-the-box experience I appreciate in GNOME.</p>
     67 <!-- /p -->
     68 
     69 <p>
     70   Some people quickly disregard these DEs because they are "bloated". In my opinion, it is true.
     71   They have an absurd number of features, but for myself, when I simply need everything to work
     72   without any tweaking, this is great. As a new GNU/Linux user, I wanted my computer to work without
     73   much configuration, while still being able to be "picky" about some stuff. Even as a
     74   moderately-confident user, I didn't have a week to spend making i3 look and act as I wanted. For
     75   all my little things to be included, there are probably many more that I don't want, and are also
     76   included (and other people want). I am fine with my desktop environment being bloated. That
     77   changes for pretty much any other software I run on my computer, I like simple things, but I also
     78   don't have unlimited time. Indeed, my initial reason to switch to i3 (or a tiling window manager)
     79   wasn't "less bloat" or simplicity<sup id="fnref5"><a href="#fn5">5</a></sup> (I find GNOME very
     80   distraction-free, and it has a good performance on my computer). I switched because I was tired of
     81   overlapping windows and I wanted to make more use of my keyboard for managing everything.</p>
     82 <!-- /p -->
     83 
     84 <p>
     85   With all the changes, I am very satisfied with i3, and haven't gone back to GNOME for a week. It
     86   did take a lot of time to figure everything out (and configure it), but it was something I had
     87   wanted to do for a long time (that's why the many attempts) and I finally had extra time to do it.
     88   It was definitely worth it!</p>
     89 <!-- /p -->
     90 
     91 <h2>Final note</h2>
     92 
     93 <p>
     94   I think one of the major issues I had on my previous attempts was the <code>$mod</code> key used
     95   for all i3 shortcuts. It is so hard to reach the <code>Super</code> key! I had already switched
     96   the mapping of <code>Caps lock</code> and <code>Escape</code> (which improved my vim experience
     97   drastically), so I knew <code>Caps lock</code> was the key I needed for my shortcuts (it is so
     98   easy to reach!). I have now mapped <code>Caps lock</code> to act as <code>Escape</code> if I tap
     99   it, and as <code>Super</code> if I hold down. With this little trick, i3 becomes a lot nicer, but
    100   without damaging vim's experience. If you are considering using a tiling manager, think about it!
    101   Also recommended if you use vim!</p>
    102 <!-- /p -->
    103 
    104 <!-- footnotes -->
    105 <hr />
    106 
    107 <ol>
    108   <li id="fn1">
    109     A very simple example is setting up "natural scroll" for the trackpad, which I had a couple of
    110     issues the first time I tried with some DEs. But there are many things. <a href="#fnref1"
    111     title="Jump back to footnote 1 in the text">&#8617;</a></li>
    112   <!-- /li -->
    113   <li id="fn2">
    114     I know this feature is not exclusive for GNOME (indeed, I configured i3 to act like this), but
    115     it works out of the box, which is the point I am making. <a href="#fnref2" title="Jump back to
    116     footnote 2 in the text">&#8617;</a></li>
    117   <!-- /li -->
    118   <li id="fn3">
    119     I have a HiDPI screen which made everything look super tiny. I had some issues with HiDPI
    120     screens with KDE (there was always a weird app that didn't work well with it). This got solved
    121     (out of the box!) with GNOME, and after all the frustration I had in the past, seeing it back
    122     was a nightmare. This was finally solved pretty easily, although the solution is a little hacky
    123     so I can also plug my computer into non-HiDPI screens. <a href="#fnref3" title="Jump back to
    124     footnote 3 in the text">&#8617;</a></li>
    125   <!-- /li -->
    126   <li id="fn4">
    127     The problem is that applications using Xwayland are blurry on HiDPI screens, and that wasn't
    128     solvable as far as I could tell. They also had no plans to solve it anytime soon (according to
    129     sway developers, it is an Xwayland problem, and it's on them to fix it, which is a fair point).
    130     <a href="#fnref4" title="Jump back to footnote 4 in the text">&#8617;</a></li>
    131   <!-- /li -->
    132   <li id="fn5">
    133     Now that I have tried it and feel comfortable, my next installation might come without GNOME and
    134     probably have much less bloat, which I will appreciate for sure. It simply hasn't been a
    135     priority so far. <a href="#fnref5" title="Jump back to footnote 5 in the text">&#8617;</a></li>
    136   <!-- /li -->
    137 </ol>