|
That's exactly what I did, an old ThinkPad t470s. I installed NixOS, and then I copied /etc/nixos down to my main workstation where I had claude code working, and used it to modify the configs. I'd then rsync them to the other machine and run the "nixos-rebuild" there. I don't recall exactly how I did the initial copies, because SSH wasn't set up there. Probably would be best to just ask claude what needs to be done to enable SSH, it's only like a 1 line change. Some of the first things I asked it to do were: - Switch to flakes and tracking the latest software.
- Switch to using Sway for window manager.
- Various user account setup things: Configure zsh with atuin and zoxide, enable sudo, allow my SSH key for login, set up some aliases and the software I need.
- Install claude code (I gave it the "installing" URL) once I got tired of copying back and forth.
- Set up Home Manager and SOPS and put my secrets in SOPS, set up a variety of my scripts and symlinks.
- Configure vim to my liking (done entirely in English prose).
Those are the top things that come to mind. Honestly, it went pretty smoothly. The only real issue I had to speak of was that I'm running bleeding edge, and the moment I decided to unplug my desktop monitors from the Ubuntu machine and connect them to NixOS I had it do a package update at the same time. This hit a Gnome+Wayland bug which left me at a black screen. A nice thing about NixOS is you can just reboot and at the grub menu select an older system config, so I did that. Claude tracked down an open bug about it, tried a few mitigations, but eventually I told it to just revert the version of gnome until it was fixed upstream.It has gone extremely smoothly. Zero regrets. My manual attempts at NixOS always ran me into dark corners that I didn't know how to do (like installing gitbutler-cli, which is not packaged for NixOS yet), and Claude had no trouble figuring out. |
Pretty much everything else I did without asking Claude much in the way of NixOS specifics. I just described what I want in general terms.