A New Laptop
Jul 05, 2025
I recently purchased a new laptop. To be more specific, I recently purchased some "new to me" parts for my existing laptop.
I own a Lenovo Thinkpad X280, a lovely little machine released in 2017, which I use as my primary device. Equipped with an i5-8350U, 8GB of RAM, and a 12.5" 1366x728 screen, it's more than enough for hacking on some code or browsing the Internet. It even has USB-C charging and Thunderbolt 3 support.
Dare I say it's perfect...
(A note to the reader: this is foreshadowing.)
When I purchased my laptop from the local recycling center, I made the
mistake of not checking whether I could upgrade the RAM. While 8GB is more
than enough for most workloads, sometimes one is required to sacrifice
another 8GB of RAM to the browser $DEITY
. Surely you can imagine
the disappointment I felt when I opened the back of the laptop and discovered
the RAM is soldered directly to the board. If I wanted to upgrade this
laptop's RAM, I would have to replace the entire motherboard.
Thankfully, that's not too hard. The first result when searching for "x280 motherboard replacement" in DDG yields this, a guide from iFixit to replace the motherboard in a Thinkpad X280. Perfect, now we just need the motherboard.
One ebay purchase and a few business days later, and I had a second laptop in my hands. Granted, it didn't have a screen or come with more storage, but since I only wanted the replacement motherboard, I went with the cheaper route and bought the laptop for parts. As a bonus, I now have spare parts: ribbon cables, a cooling fan, a battery, and a (well-worn) backlit keyboard, should those ever need replacing. +1 for no e-waste!
After backing up my files, performing laptop surgery, and applying a fresh coat of thermal paste, the laptop was ready to go. Now equipped with an i7-8650U and 16GB of RAM, I powered on the laptop and it POSTed. Success! I adjusted some BIOS settings (I'm looking at you "Secure Boot") and slapped in a USB stick flashed with the latest release of FreeBSD.
One install later, and make -j $(nproc) buildworld
without an
existing /usr/obj
clocks in at just under 90 minutes. Not bad
for a "new" laptop from 2017.