Computer

An overview of all the computing devices I have and use for work and play, including technical details about the individual setups.

Computer

The hardware I use has to be powerful but portable enough to not be a millstone round my neck. While a lot of the heavy lifting that I’m doing happens in the cloud these days, there are still plenty of tasks that can’t easily be outsourced and where raw computing power makes a big difference in overall velocity. Hence I’m always looking for ways to improve my setup to allow me to be portable yet have enough processing power in order to be independent from stable internet connectivity or somebody else’s computer.

f0g6

f0g6, my Linux laptop

My main workstation is a Star Labs StarBook 14" Mk VI with 2 x 32 GB of Corsair Vengeance DDR4 RAM, an AMD Ryzen 7 5800U with integrated AMD Radeon graphics and a 2 TB hynix Gold PCIe NVMe (Gen3).

ComponentDetails
CPUAMD Ryzen 7 5800U 1.90 GHz
GPUAMD Radeon Graphics
RAM2 x 32 GB Corsair Vengeance DDR4 3200 MHz CL22
MotherboardStar Labs
Storage2TB SK hynix Gold P31 PCIe NVMe Gen3 M.2 2280
PSUStar Labs external USB-C power supply
CoolingIntegrated
Display14" LED-backlit matte IPS display, 1920x1080; 27" ASUS TUF Gaming VG27AQ, 2560x1440@144Hz
OSGentoo Linux
WMSway
KeyboardRAMA M60-A
MouseLogitech MX Master 3

Software Management

I use portage for managing most software that I have installed. If I need something that is not available through the official sources, I either check the overlays or git clone the repo, build it myself, and link its binary manually to /usr/local/bin. Often times I install Rust tools using cargo, since it’s a pretty solid package manager. Go tools are a bit complicated to go install and keep up-to-date, but I have my .zshrc functions that help me with that. When I need Python or Ruby tools, I usually installed them through Portage because everything else is a PITA. For Node.js I use NPM, although I rarely use Node.js tools.

CLI / TUI

I have a separate list with most of the command-line tools that I used.

GUI

I don’t use many GUI applications. The main reason for me to use GUI tools is for creative work (like editing videos), and for that I still use a MacBook.

Other than that I use the following programs under Linux:

For the following applications I use dedicated VMs:

Engineering & Development

The command line is my go-to environment for everything related to engineering and development. I don’t use an IDE and instead do all my writing and development in NeoVim. Whenever I work with a service or a platform I check whether there is a TUI or at least CLI for it and, if there isn’t, I sometimes build one myself.

cbrspc7

cbrspc7, my Linux workstation

After several years of the custom SFFPC dubbed cbrspc7 being my main workstation, I have recently replaced it with a more portable Linux laptop. cbrspc7 is now serving as a secondary workstation. It is a custom built Xtia Xproto-N frame running Gentoo Linux.

ComponentDetails
CPUAMD Ryzen 9 5950X 3.4 GHz
GPUAMD Radeon Pro WX 2100 XFX Speedster QUICK319 AMD Radeon RX 6700 XT Black XFX Speedster QUICK210 AMD Radeon RX 6500XT Black
RAM2 x 32 GB TEAMGROUP T-Force Xtreem ARGB 3600 MHz CL 18 PC4-28800 (TF13D464G3600HC18JDC01)
MotherboardASUS ROG Strix X570-I mITX
Storage2 x 1TB Samsung 980 Pro NVMe Gen4, RAID 1
PSUCorsair SF 600 W 80+ Platinum
CoolingLian Li Galahad 240 (dead) Noctua NH-C14S, Noctua NF-A14 (backup) Arctic Freezer II 360 RGB, 3 x Arctic P12 RGB fans, 2 x Cooler Master MF120 Halo
DisplayLG 32UN500-W 32-inch IPS UHD HDR10, 3840x2160
OSGentoo Linux
WMSway
KeyboardRAMA KARA
MouseMadCatz R.A.T. 8+

The initial build had the Lian Li Galahad 240 AIO for cooling the CPU. However, after the Galahad died roughly ~11 months later, I replaced it with a Noctua NH-C14S air cooler.

The PC runs the latest available kernel supported by ZFS, with encrypted ZFS in mirror-mode across two 1TB NVMe M.2 SSDs. I use Sway – a Wayland window manager – to mainly have multiple instances of Alacritty, ungoogled Chromium, and Firefox on a 4K display.

Software Management

I use portage for managing most software that I have installed. If I need something that is not available through the official sources, I either check the overlays or git clone the repo, build it myself, and link its binary manually to /usr/local/bin. Often times I install Rust tools using cargo, since it’s a pretty solid package manager. Go tools are a bit complicated to go install and keep up-to-date, but I have my .zshrc functions that help me with that. When I need Python or Ruby tools, I usually installed them through Portage because everything else is a PITA. For Node.js I use NPM, although I rarely use Node.js tools.

CLI / TUI

I have a separate list with most of the command-line tools that I used.

GUI

I don’t use many GUI applications. The main reason for me to use GUI tools is for creative work (like editing videos), and for that I still use a MacBook.

Other than that I use the following programs under Linux:

For the following applications I use dedicated VMs:

Engineering & Development

The command line is my go-to environment for everything related to engineering and development. I don’t use an IDE and instead do all my writing and development in NeoVim. Whenever I work with a service or a platform I check whether there is a TUI or at least CLI for it and, if there isn’t, I sometimes build one myself.

Photos with different cooling setups.


d3lt4

d4lt4, a 2018 15-inch MacBook Pro

I still own a beaten up 2018 15" MacBook Pro with 32GB DDR4 RAM, an Intel UHD 630 and an additional AMD Radeon Pro 560X 4GB on-board graphics card. It’s one of those MacBooks without a physical escape key. These days I rarely use it anymore.

ComponentDetails
CPUIntel Core i9 8950HK 2.9 GHz
GPUIntel UHD 630, AMD Radeon Pro 560X 4GB
RAM32 GB DDR4-2400
MotherboardApple
Storage1TB SSD, FileVault encrypted
PSU87W USB-C Power Adapter
CoolingForget about it
Display15.4-inch IPS LED-backlit, 2880x1800
OSmacOS
WMmacOS
KeyboardLet’s not talk about this
MouseApple multi-touch trackpad

The MacBook runs the latest macOS release. Security, privacy and the overall dissatisfaction with Apple hardware in general is what had pushed me to invest effort into switching from macOS back to Linux. These days I’m running solely Linux on a day to day basis.

Software Management

I use brew for managing most of the software that’s running on my MacBook.

CLI / TUI

On macOS I have a tmux session that’s constantly running inside a single instance/window of Alacritty. That’s due to Alacritty not really supporting multiple windows/tabs/panes on macOS.

The shell that I used even before macOS made it the default was and still is Zsh, with Oh My Zsh installed and my own carefully crafted .zshrc

I use to keep my .zshrc functional on both, Linux and macOS, so that I can easily sync my dotfiles between machines.

GUI

For the most parts I’m using the Mac when I need to do something that requires a graphical application like an image or video editing software. I’m looking forward to move these tasks to my Linux workstation as well, but so far it has been more easier to continue using them on macOS. I will continue doing so up until the point when the hardware might fail.

However, besides of the crude command line interface I use LaunchBar, because it lets me keep my hands on the keyboard while performing UI-related actions and tasks. LaunchBar brings a large set of functions and allows for easy extensibility. Other UI programs and little helpers that I use include:

Creative Work

I stay miles away from Adobe software and successfully got rid of the very last Adobe program I was using, which was Lightroom Classic. For the little creative work that I’m doing, I’m using the following programs:

I really don’t do much creative work, though. It’s more of a hobby. The reason I keep things like Pixelmator around is for the times when people send me PSDs or when I really do need to draw a few things on my own.

The backside of my MacBook

h4nk4

h4nk4, my Ultra-Portable Data Center

h4nk4 is an ultra-portable data center that offers a fully-encrypted network attached storage as well as KVM hosting. It runs on TrueNAS SCALE and has 5 GBit NICs.

ComponentDetails
CPUAMD Ryzen 7 2700 3.2 GHz
GPU-
RAM2 x 16 GB Corsair Vengeance LPX 2666 MHz CL 16 PC4-21300 (CMK32GX4M2A2666C16)
MotherboardASUS ROG Strix X470-I mITX
Storage2 x 512GB Samsung 970 Pro NVMe Gen3, RAID 1; 4 x 4TB 2.5" Seagate Barracuda, RAID 5
PSUCorsair SF 450 W 80+ Platinum
CoolingNZXT Kraken X42 AIO
Display-
OSTrueNAS SCALE
WM-
Keyboard-
Mouse-

The case is a custom designed, 3D printed enclosure that was built with portability in mind. h4nk4 has no HIDs nor a GPU – the Ryzen is not an APU – and is therefor configured to use a LUKS encryption key on a USB stick, that can simply be unplugged in order to make the device useless.

More info about what this device does, why and how I designed and built it can be found here.


r0n1n

r0n1n, Rock Pi 4A 4GB

r0n1n is a Docker host and IoT gateway. It’s part of my portable, open source home area network.

ComponentDetails
CPURockchip RK3399 64 Bit 6-Core (dual Cortex-72 1.8 GHz, quad Cortex-A53 1.4 GHz)
GPUMali T860MP4
RAM4 GB LPDDR4 3200 MHz
MotherboardRadxa SBC
Storage512 GB WD Black NVMe Gen3
PSUUSB-C PD 2.0 9V/2A, 12V/2A, 15V/2A, 20V/2A
CoolingRadxa Rock Pi 4 heatsink, Lian Li 120mm fan
Display-
OSManjaro Linux Rock Pi 4 Minimal Edition
WM-
Keyboard-
Mouse-

Previous to being a tiny server, r0n1n was an experimental Linux desktop.


a0i

a0i, Linksys WRT3200ACM

r0n1n is a computer running OpenWRT (Linux) and bridging my internal network of devices with the outside world.

ComponentDetails
CPUMarvell Armada 395 88F6925 1.8 GHz
GPU-
RAM512 MB DDR3
Motherboard-
Storage256 MB Flash
PSUPower adapter, 12V/3A
CoolingHeatsink
Display-
OSOpenWRT
WM-
Keyboard-
Mouse-

Unlike the majority of reviews online by people who struggled to properly set up and run the Linksys, I have experienced no issues with it whatsoever. That said, I’m only running the 5 GHz band for WiFi and all devices that have a NIC are using a wired connection. For more information, check out my post on running an open source home area network.


k3yb0w

k3yb0w, Raspberry Pi Zero W with a Pimoroni Keybow HAT, running the Kiwi firmware

This Raspberry Pi Zero W has a Pimoroni Keybow attached to it and runs the Kiwi firmware that allows it to connect to any 2.4 GHz WiFi and act as a wireless controller for all sorts of things.

ComponentDetails
CPUBroadcom BCM2835
GPU-
RAM512 MB
Motherboard-
Storage64 GB Samsung Evo Plus micro SD
PSUMicro USB, 5V/2A
Cooling-
Display-
OSKiwi / Nerves
WM-
KeyboardPimoroni Keybow
Mouse-

I’m using this device to control everything that has an API (like IoT lights) as well as OBS Studio, which it can interface with since Kiwi 1.0.2.


Enjoyed this? Support me via Monero, Bitcoin, Lightning, or Ethereum!  More info.