Home
2025-03-29 Computer Setup
I wanted to document what my computer setup is. It'll probably change over the years and I might be interested in looking back.
graph TB
%% Style definitions
classDef monitors fill:#66c2a5,stroke:#333,stroke-width:1px;
classDef computers fill:#fc8d62,stroke:#333,stroke-width:1px;
classDef hubs fill:#8da0cb,stroke:#333,stroke-width:1px;
classDef peripherals fill:#e78ac3,stroke:#333,stroke-width:1px;
%% Group definitions
subgraph Monitors
Monitor1[Monitor 1]
Monitor2[Monitor 2]
end
subgraph Computers
Laptop[Laptop]
Desktop[Desktop]
end
USBHubToggle[USB Hub\nwith output toggle]
USBHub[USB Hub]
subgraph HubPeripherals[Shared Peripherals]
Mouse[Mouse]
Keyboard[Keyboard]
Webcam[Webcam]
Mic[Desk Mic]
end
subgraph DesktopPeripherals[Desktop Peripherals]
Headset[Headset]
XBoxController[Xbox Controller]
FootPedal[Foot Pedal]
WifiAntenna[Wifi Antenna]
end
%% Connections
Desktop -- DisplayPort --> Monitor1
Desktop -- HDMI --> Monitor2
Laptop -- USB --> Monitor2
Laptop -- HDMI --> Monitor1
USBHubToggle --> Laptop
USBHubToggle --> Desktop
USBHub --> USBHubToggle
Mouse --> USBHub
Keyboard --> USBHub
Webcam --> USBHub
Mic --> USBHub
Headset --> Desktop
XBoxController --> Desktop
FootPedal --> Desktop
WifiAntenna --> Desktop
%% Apply styles
class Monitor1,Monitor2 monitors;
class Laptop,Desktop computers;
class USBHubToggle,USBHub hubs;
class Mouse,Keyboard,Webcam,Headset,XBoxController,FootPedal,WifiAntenna,Mic peripherals;
I have both my work laptop and personal desktop computer at the same desk, using the same monitors. The standard
hardware to do this is a "KVM switch". These let you plug in a monitor to two computers and toggle the input. Back
when I was looking into KVM switches, they seemed very expensive (a couple hundred dollars
each) and had major performance penalties (often limiting monitors to 60Hz). They seem to have improved
significantly, or maybe I'm mis-remembering. Now I see ones that support 4k@144Hz for two monitors for only $70.
Perhaps I should get one of those!
When I set this up, I went a slightly different route. I bought a cheap USB hub
that allows toggling between outputs. It has 2 outputs and 3 inputs. I have more than 3 input devices so I connected a larger USB
hub. I leave the two slots open for miscellaneous use, like plugging in my phone for USB debugging or using a thumb
drive. I also have some peripherals that are only for my personal computer, so I plug
those into it directly.
Another quirk of my setup is the headset. I leave it plugged into my personal desktop. While I'm working I use
my headset and play music on Spotify. Spotify lets you control a remote session, so the playback is through my
desktop and headset, but the controls are through my work laptop.
To switch between computers, I press the toggle button on the USB hub and then manually use the buttons on the back
of each monitor. Often I won't even need to manually change the monitor because it automatically switches to the
active input if there is only one computer turned on.
I switched from Windows to Debian in 2023. I had wanted to do it for a long time because it's a far better experience
for programming, but the rumored poor support for video games kept me away from it. Steam makes it nearly seamless
for most games. I'm very glad to have made the jump.