Skip Navigation
104 comments
    • NixOS + Home Manager
    • Niri
    • Kitty
    • Neovim, via Neovide

    For work it's Fedora + Home Manager because the remote admin software doesn't support NixOS. Thankfully I've been able to define my dev environment almost fully in a Home Manager config that I can use at work and at home.

    I use lots of Neovim plugins. Beyond the basic LSP and completion plugins, some of my indispensables are:

    • Leap for in-buffer navigation & remote text copying
    • Oil for file management
    • Fugitive + Git Signs + gv.vim + diffview.nvim for git integration
    • nvim-surround to add/change/remove delimiters
    • vim-auto-save
    • kitty-scrollback
    • What is Home Manager?

      • Home Manager is a Nix tool for managing configuration for a single user, usually on a Linux or MacOS system, or possibly WSL. You configure installed programs, program configuration (such as dot files), and a number of other things, and you get a reproducible environment that's easy to apply to multiple machines, or to roll back configuration, etc. I find it helpful for having a clear record of how everything is set up. It's the sort of thing that people sometimes use GNU Stow or Ansible for, but it's much more powerful.

        A Home Manager configuration is very similar to a NixOS configuration, except that NixOS configures the entire system instead of just configuring user level stuff. (The lines do blur in Nix because unlike traditional package managers where packages are installed at the system level, using Nix packages can be installed at the system, user, project, or shell session level.) Home Manager is often paired with NixOS. Or on Macs Home Manager is often paired with nix-darwin. As I mentioned, the Home Manager portion of my config is portable to OSes other than NixOS. In my case I'm sharing it in another Linux distro, but you can also use Home Manager to share configurations between Linux, MacOS, and WSL.

  • I run Manjaro, and use neovim for my development. I've got a slew of plugins for everything from language servers to database to things like integration with tmux and specialty motions.

    I've tried many development environments, but so far I keep coming back to nvim.

    I've been a fan for about 5 years at this point, and I use it for PHP+js+html at my day job and Rust for personal projects, but also any other language that comes up. Delightful to have one editor that can do basically everything and do it with consistent shortcuts, that I can even run on my phone with a folding keyboard.

  • Arch with Niri, LazyVim in Ghostty.

    • So how do you like niri and is it stable enough to be a daily driver? Also what kind of screen do you have for it to be useful? I have a feeling that it's extra useful on wide screens but when it comes to ones which are fairly high it's less useful, is my assumption correct?

      • Not OP, but I've been using Niri as my daily driver for almost two years (since v0.1.2). The stability and polish have really impressed me. In addition to the scrolling workflow it has some especially nice features for screen sharing & capturing, like key binds to quickly switch which window you are sharing, and customizable rules to block certain windows when showing your whole desktop.

        I do use a 40" ultrawide. Looking for options for getting the most out of an ultrawide was how I got into scrolling window managers.

        I only occasionally use my 13" laptop display. I still like scrolling because I like spatial navigation. Even if windows end up mostly or entirely off the screen I still think about my windows in terms of whether they're left, right, up, or down from where I'm currently looking.

        I don't like traditional tiling as much because I find squishing every window to be fully in view to be awkward; and with e.g. i3-style wms if I want to stash a window out of view, like in a tab that's a separate metaphor I have to keep track of, with another axis where windows might be. Scrolling consistently uses on spatial metaphor, placing all windows on one 2D plane with one coordinate system.

  • Arch Linux (BTW) is my main/dev OS, but also Windows 10 VM for certain projects.

    For simple scripting in any language: VSCodium

    PyCharm, Android Studio for projects in specific languages.

    For other full projects: VSCodium

    As for testing/deploying projects, I have a QEMU dev VM that's connected to my IDEs using shared folders running basic Arch with fresh install of KDE Plasma.

    Plugins mainly consist of QoL features, linting for certain languages in VSCodium, themes, etc.

  • Linux Mint. No IDE -- I just use xed (a fork of gedit) + gnome-terminal, both of which ship with the distro. Only plugin I use regularly for xed is "Code Comment" which lets you comment/uncomment blocks of code quickly.

  • Linux

    Distrobox container

    Code OSS

    • clangd (always have to change compile commands path because $workspacefolder variable varies per machine even on the same project, it will just choose a subfolder sometimes)
    • nrfconnect suite (it has some extra checks for .dts files and a nice GUI)
    • embedded flash plugins/programs like jlink, Stmcubeprogrammer, etc..

    Serial Studio

    Logic 2 / Sigrok pulseview

  • Private: Arch, sway, nvim with too many to remembet plugins in foot
    Work: Windows to Google Cloud Workstation, JetBrains

    • using your private setup 🚀 I couldn't imagine using your work setup though 😅

  • At work, windows with jet brains products. Then docker with Ubuntu server.

    At home its popos with vim. Sometimes docker, sometimes not.

    • OS:
      • Arch Linux or OpenBSD, depending in how I feel
    • Editor:
      • Micro on Linux
      • mg(1) on OpenBSD
    • Plug-ins:
      • Micro has support for a few linters, which is all I really need
      • mg(1), meanwhile, doesn't even have syntax highlighting
    • Terminal:
      • Kitty on Linux
      • XTerm on OpenBSD
    • Shell:
      • Zsh on Linux
      • ksh on OpenBSD
    • Version Control:
      • Git is the only realistic option (though Mercurial and Fossil are nice)
    • Code Hosting:
      • Usually Codeberg
      • I also have sourcehut
      • My Formula Student team uses GitLab
      • My university and another society use GitHub 🤮

    I usually licence my work under GPL if it's a large project, or Beerware if it's something smaller (or if it's for internal use in one of my societies).

    Any coursework I do, however, gets licenced under BSD-3-clause. For this, GPL would be too restrictive and Beerware would be too informal, and BSD-3-clause is a nice middle-ground (as far as I'm concerned).

  • I'm a:

    • Gamer
    • Full stack web dev
    • Android/iOS/MacOS/Windows Dev

    So I have a lot of machines


    Machine 1

    • Purpose: MacOS/iOS app builder/publisher
    • Usage: 100% work
    • Location: Work
    • OS: Modified MacOS Sequoia
      • Sequoia to avoid the glass interface disaster that Apple released
      • Uses custom window manager built in hammerspoon because fuck macos's window management
      • Modified firmware so Caps + IJKJ = Arrows
    • Shell: ZSH
    • IDE: VSCode

    Machine 2

    • Purpose: Personal computer
    • Usage: 90% games / 10% work
    • Location: Home
    • OS: Modified Windows 11
      • All the ads and AI bloat is removed but it requires increasing maintenance to maintain
    • Shell: ZSH through WSL Ubuntu
    • IDE: VSCode

    Machine 3:

    • Purpose: do everything on the go
    • Usage: 50% games / 50% work
    • Location: Wherever
    • OS: Modified Windows 11
      • All the ads and AI bloat is removed but it requires increasing maintenance to maintain
    • Shell: ZSH through WSL Ubuntu
    • IDE: VSCode

    Machine 4:

    • Purpose: Disposable environments to test new things
    • Usage: 100% work
    • Location: Work
    • OS: Kubuntu 25.10 (Current plasma version is great so far)
    • Shell: ZSH
    • IDE: VSCode

    Also:

    • Android Tablets
    • Android Phones
    • iPads
    • iPhones

    Future:

    • Helix
      • I want to learn Helix's keyboard workflow
      • Helix's lack of extensions has held me back.
        • Helix has been working on extensions for a while though and I'll re-evaluate it once it does and the community builds the needed extensions
      • Zed has some helix commands, so I may switch to that from vscode to get helix commands + extensions.
    • OSs
      • I want to reduce my windows 11 maintenance
      • Held back by anti-cheat games (PUBG, then Helldivers 2, and will try Arc Raiders these holidays, potentially Marathon next year)
      • I'll experiment with KDE / Cosmic / Niri in 2026.
      • If no anti-cheat games have captured my attention in 2027, I'll switch another one of my personal machines to Linux
104 comments