Setting up a new laptop

  1. New Things
  2. Things that just worked
  3. A couple Gotchas
  4. Next time/Moving Forward

I've just gotten a new laptop (a Thinkpad T480) and thought it would be a good idea to lightly document the process of setting it up.

New Things

I took this opportunity to finally start syncing my dotfiles to a git repository. The idea would then be to symlink to the places on my system those files are actually used. The advantage being I have version control over these configuration files, and can hence easily rollback, and I have them all in one place and will never have to track them down again.

Things that just worked

I use arch, but every time I've installed it I've "cheated" and used the Antergos installer. It's basically arch linux but with a lovely gui installer and a ton of options for what to set up.

This time I saw that it could install i3, and since that's been my window manager of choice for the last couple years I thought I'd give it a shot. Sadly, the i3 that Antergos set up, while lovely and undoubtedly nice for a first time user, was a little too configured for my tastes, and so I started the process again and instead set up antergos with just the "base" install. This'll set up all the drivers and system level things neccessary to get you started. It just works and I've never had any trouble with it :).

Once that's in place I could set up X and i3, which also were super straightforward. One thing I forgot was how to set up X to start automatically on tty1, but that was a quick google away.

(Note: I used this tutorial which I've had to reference the last three times I did this as well.)

A couple Gotchas

All was not smooth sailing. I got blocked very early in the process when I couldn't boot the laptop off a USB. Turned out that I needed to go into the BIOS settings and turn off SecureBoot. Once that was done I ran into another problem with the live USB, where for some reason I had to select live "CD" to in it's boot menu. After that it was all smooth sailing until the system itself was up and running.

The only thing that really got me past that point was getting the trackpad to work like I was used to. The only thing missing was tap-to-click and my old configuration files were not working. I think this is because they were assuming I was using the synaptics drivers, when I was not. (This may be a notch against antergos as you're never quite sure what drivers you're using until you check).

Once I'd figured that out though all I had to do was set up a new simpler config file for it and it worked out of the box :)

Section "InputClass"
  Identifier "libinput touchpad catchall"
  MatchIsTouchpad "on"
  MatchDevicePath "/dev/input/event*"
  Option "Tapping" "True"
  Option "TappingDrag" "True"
  Driver "libinput"

In the process of writing this I've actually discovered one more problem. There's a slight lag when using GUI emacs that I'd never noticed before. It disappears when using emacs -nw and doesn't exist on my old system. This'll drive me crazy. My suspicion is that it's something to do with the display drivers.

(ed: 10 minutes later and I figured out it's a problem with linum-mode, which has been successfully disabled and replaced with display-line-numbers-mode.

ed2: had some graphics problems with other programs until I installed glew)

Next time/Moving Forward

Overall this went pretty smoothly. Took only a couple hours to get everything the way I like it and it already feels basically the same as my last laptop (albiet in a bigger body and with a way better keyboard).

Next time, I probably want to branch out of my comfort zone a little bit more. NixOS has been something that I've wanted to try for ages now and setting it up on a new system from scratch seems like the best way to get into it. It would also help get more of my configuration files to be reproducable.

built with nextjs, mdx, and typescript view source