This is a continuation of my original article on our New Dell XPS 15’s. This article will cover my “moving in” experience getting used to Gnome 3, and tuning Arch just the way I like it ;)

That cool dude over at geeketeer.net has also written about his experiences and mods!

Bootloader fun!

Most people don’t know but GRUB has a multitude of theme customization options available. We use a set made around Arch Linux located here.

Drivers…

Let’s get this outta the way early.

  1. [Windows] For some reason, the Dell support page for my specific service tag did not show the Dell 1830 Wi-Fi driver. However, the generic Support Downloads page for this model laptop does have it. Ensure you grab and install that if you need Internet to have Windows Update install other drivers for you.
  2. [Linux] Arch Linux pretty much just works without much coercing. Be sure to review the Arch wiki page on it as well as this ongoing Arch Linux Forum thread.

Control over the Dedicated GPU

I highly recommend you utilize bumblebeed to manage your GPU. This gives you full control of when the GPU is enabled or disabled, even allowing for per-application engagement.

I hit on this a bit in the Install Guide (see Part I). See also: this Arch Wiki page!

Screen Tearing

This only impacts those experiencing tearing on external monitors whilst using the standard Intel graphics!

We both have U3415W monitors connected via HDMI. When playing video and other motion content, annoying screen tearing kept occurring. To fix this, we had to dump the following in /etc/X11/xorg.conf.d/20-intel.conf:

Section "Device" 
   Identifier  "Intel Graphics" 
   Driver      "intel" 
   Option      "DRI"    "3" 
   Option      "TearFree"    "true" 
EndSection 

Be sure to reboot after applying this change (or at least restart X).

Gnome 3, I guess…

I traditionally used Linux Mint with Cinnamon as my DE. Due to a few recent bugs in 2.x (and an annoying one with VMware), I chose to take the dive into Gnome 3.

Back in the day, Gnome 2 was the greatest thing in the world. I remember trying Gnome 3 right after it came out and thinking “this is terrible.” Fast-forward to today and people have made a metric-s***load of extensions to take away some of the nuisances. And, I must say, it’s quite stable.

You can actually select a Classic Mode to launch on login.

Here is a list of the extensions I presently utilize to “flashback” to the classic days of Gnome 2:

  • Alternatetab
  • Applications menu
  • Backslide
  • Frippery move clock
  • Frippery panel favorites
  • No topleft hot corner
  • Places status indicator
  • Remove dropdown arrows
  • Suspend button
  • User themes
  • Window list
  • Workspace grid

So, Linus uses Gnome 3 too. Feel better now?

Themes

I presently use Arc which is a fantastic, flat and clear theme. It has lighter and darker options for each piece meaning your shell colors can be darker while GTK elements are lighter!

Another great theme is Paper. It’s quite colorful and vibrant. (I still use Paper Icons ;)

Finally, here is another really nice setup that hit unixporn the other day!

Here’s an album of my desktop screenshots!

NFS mounting..so I remember

I always forget to enable the stupid rpc processes for getting NFS mounting functioning on Arch.

pacman -Sy nfsutils
systemctl enable --now rpcbind rpc-statd
Automatic Mounting

Instead of using autofs, we opted to utilize the already standard systemd-automount functionality. Throwing something like this in /etc/fstab gets the job done nicely:

server.example.net:/mnt/user/volume /mnt/servershare nfs nfsvers=3,noauto,x-systemd.automount,x-systemd.device-timeout=10,timeo=14,x-systemd.idle-timeout=1min 0 0

Finally, mount -a ;)

Bring in the replacements!

When clicking on home directory shortcuts or adding the Places Gnome extension, I noticed an application called Anjuta would launch instead. Hilariously, this is the cause (and fix).

For a long time, I’ve preferred a bit of transparency to my terminal windows. Of course with my luck, this feature was pulled out of the mainline gnome-terminal package. Thankfully, someone has patched this and provided it with other Fedora patches!

Docker, I love you!

By default, docker should just start using btrfs subvolumes for its image and container layering needs. If not, you may need to add -s btrfs to the ExecStart line in its respective systemd launcher.

More info on the btrfs storage driver for docker can be found here.

You can verify by doing something like (after pulling or creating an image/container):

sudo btrfs subvolume list -p /var/lib/docker

Dongle Pickle

I mentioned the fancy HDMI/USB/etc. USB-C dongle Dell is offering in the first part of this series. We both bought them excited for less clutter! Sadly, Linux support isn’t quite there yet. Luckily, it’s still fairly functional (albeit with manual PCI bus scanning).

Dealing with packages

I wanted to make a final note about a situation I ran into. tl;dr The Megasync package on AUR was broken because the binary release depended on an old version of crypto++.

However, that older release would break the newer release (they couldn’t co-exist). Of course, this debacle happened at the exact moment I was getting everything setup.

Even through frustration, I decided to at least email the maintainer and ask his input/help/thoughts on this and see if he had already started work on fixing it. Thankfully, he got back to me within an hour. Soon, he created the necessary crypto++ package on the AUR and all was well again.

In short, the Arch community is pretty awesome…just be vocal (and helpful) about what’s going on.

Backing up your MBR data

In the future, you may want to reinstall your Windows or muck around with a certain partition without losing that essential MBR data. Personally, I’ve reinstalled Windows a couple times and didn’t want to worry about accidentally blowing away those few initial sectors.

Using the following command, you can backup the first 2047 blocks of your device, effectively backing up the entire MBR (the part just before the /boot partition)

sudo dd if=/dev/nvme0n1 of=~/mbr-backup count=2047

Want to backup your MBR and /boot partition as well?

sudo dd if=/dev/nvme0n1 of=~/boot-backup count=1026047

This works given your /boot partition is 500MB. You’ll probably want to do a sudo cfdisk /dev/nvme0n1 to get the actual values (“End” column)

Additionally, you could make yourself an emergency boot-disk by writing your MBR straight to a USB disk i.e. of=/dev/sdb and booting from that!

Final thoughts

While I’m still not fully in love with Gnome 3, I’ve found it really stable and fluid. It does what I want, when I need it, and provides a beautiful way of interacting with my system. Frankly, it might be the best DE on Linux period (at least for now).

Be sure to use Google, the Arch Wiki, and Reddit (/r/archlinux) extensively to get input and considerations for what you’re doing.

Mario Loria is a builder of diverse infrastructure with modern workloads on both bare-metal and cloud platforms. He's traversed roles in system administration, network engineering, and DevOps. You can learn more about him here.