Moved answers from a spam topic:
Iām not sure what youād qualify in this category, so Iāll just list what comes to mind.
OS: Linux, artix with dinit if you care
Window manager: Niri, a tiling wm with infinite horizontal space.
Terminal: wezterm, (built in multiplexing, and very customisable)
Shell: fish, nothing special, the syntax is less arcane than bash/zsh
Editor: helix, with a kakoune key map. Sometimes I use kakoune.
Helix comes preconfigures for a lot of languages, so you usually only need to install the tooling, and it works immediately.
Something I have yet to do is set up nix or guile or something so I can keep projects with system dependencies self-contained, currently I lazily just install things system-wide.
Personnaly, I used to be on Zed, then recently switched to nvim. My config is really lightweight, only lsp and stuff but I need no more for my projects.
Iām on hyprland as well for the tiling side. Used to be on dwm but I wanted to try wayland. Of course, I use ghostty ![]()
When I hop around projects, that have different dependencies, that I donāt want installed on my system or need different versions for stuff I have already installed, I really like to use Spack.
You just clone the repo, source the environment and are ready to go. It compiles everything from scratch, which can of course be a burden, but you can also define it to use your installed system libraries. I find this a much better solution than doing things inside of containers. You can also easily switch between compilers or different MPI versions or whatever.
The workflow for me is then just cd project_dir and . env.sh. Inside env.sh I then just have a line like this . spack/share/spack/setup-env.sh. A nice thing is that you can also do project specific configurations inside the env.sh file, like adding things to PATH or setting other environment variables.
Bonus tip: add env.sh or whatever you call it to your global ~/.config/git/ignore if you have teammates that donāt do this. Or push it into the repo for easy reproducability.
I do most of my programming on a work laptop unfortunately, so Iām on Windows more often than not, although I have openSUSE Tumbleweed on WSL for some stuff. I also used Zed, mainly because it does some things a bit quicker than VSCode, but also because it doesnāt need a whole lot of configuration from my experience (except for some LaTeX stuff for school, that was sorta annoying, but LaTeX on Windows is just annoying. I really should just use WSL for that
) I donāt really want any of the AI integration that Zed has though, so Iāve been passively looking for alternatives - configuring nvim for long enough just made me think I should just use a dedicated code editor rather than slapping a bunch of stuff on top of it. And I kinda like having a gui program for text editing. All said though, Iāve been happy with Zed, and also use it on my desktop (Arch, riverwm, ghostty) when I have the chance to do programming from home.
A basic kakoune setup (auto format on save, no lsp) and dwm. Using this setup for years and worked wonders for me.
Void Linux with niri wm. Helix as editor, because it dont need much config and has lsp support ootb. Only supported by some custom bash scripts for recurring tasks and some TUIs (self-written and 3rd party) since I like a terminal first approach. Zsh as shell. And thats it. I tried many GUI editors, as well as nvim and emacs. But all too much config setup. For me, keep it simple is a great way (though, lsp support is really helpful).
-` ****@arch
.o+` ---------
`ooo/ OS: Arch Linux x86_64
`+oooo: Host: Victus by HP Gaming Laptop 15-fb2xxx
`+oooooo: Kernel: Linux 6.19.11-zen1-1-zen
-+oooooo+: Uptime: 3 days, 18 hours, 12 mins
`/:-:++oooo+:
`/++++/+++++++: WM: Hyprland 0.54.3 (Wayland)
`/++++++++++++++: Terminal: ghostty 1.3.1-arch1
`/+++ooooooooooooo/` Shell: zsh 5.9
./ooosssso++osssssso+` Packages: 1288 (pacman)
.oossssso-````/ossssss+`
-osssssso. :ssssssso. CPU: AMD Ryzen 5 8645HS (12) @ 5.02 GHz
:osssssss/ osssso+++. GPU: NVIDIA GeForce RTX 4050 Max-Q / Mobile [Discrete]
/ossssssss/ +ssssooo/- GPU: AMD Radeon 760M Graphics [Integrated]
`/ossssso+/:- -:/+osssso+- Memory: 7.86 GiB / 30.60 GiB (26%)
`+sso+:-` `.-/+oso: Disk (/): 669.94 GiB / 952.87 GiB (70%) - btrfs
`++:. `-/+/ Display (AUOF7AD): 1920x1080 in 15", 144 Hz [Built-in]
.` `/
I use Neovim for all of my programming needs, with a configuration based on LazyVim. As others have noted and I assume is fairly common nowadays, most all of my applications and workflow are terminal-based, so I use rmpc for music, yazi for file manager, etc. My browser (Brave) is the only GUI application that I use on a regular basis.
OS: Linux, EndeavourOS
Window manager: xfce4
Terminal: xfce-terminal
Shell: bash
Editor: vim or neovim+lazyvim
OS: debian linux + wayland + gnome + flathub (moved from macOS and Windows)
Browser: firefox
Terminal: ghostty (moved from kitty)
Shell: fish
Editor: helix (moved from vscode)
OS: Asahi Linux - FC42
IDE: Kate - LSP disabled (it got annoying)
Editor: KWrite
SCM: Fossil
Terminal: Konsole with bash
Dolphin file manager (wow, how did I ever manage with Finder)
IceCat browser, Claws email
Not sure how to check wm, Iām new to GUI linux, but this feels like my best dev. machine since Amiga with a hard disc and DevPac ![]()
Zed+zsh on macos. I use mise+just for all my projects, including zig stuff. I use a dedicated mini pc w/ ubuntu for llms, mostly codex.
OS: Arch linux, though considering removing systemD, os potentially moving to Artix.
Window Manager: SwayFX
Terminal: Ghostty + tmux
Shell: fish
Editor: nvim
Debugging: LLDB
Note taking: Obsidian
CLI Tools! (didn't want to crowd the topic)
| Tool | Description |
|---|---|
| Zoxide | Navigating directories has never been so easy |
| FuzzyFinder (fzf) | an absolute must have for finding files |
| entr | Runs a command when a file changes. Great for automatically building and testing files on save |
| tail | Using the -f flag allows me to print error and debug logs to a separate terminal window using a pipe and a separate file |
| bat | cat with more formatting and colour options |
| trash | Safer than rm |
Nvim Plugins!
Iām leaving out asthetic plugins and including only practical ones.
| Plugin | Description |
|---|---|
| tree-sitter | Better highlighting, folds, indentations and so much more |
| telescope + fzf | Search for files with fzf, grep files, navigate your project at the touch of a button. |
| Mason + lsp-setup | Easily install and set up LSPs |
| blink.cmp | LSP, snippet, and in-document autocomplete |
| LuaSnip | Powerful lua based snippets |
| vim-obsession | Session managment |
| oil | Edit directories as if they were text files in nvim |
| cheatsheet.nvim | Searchable cheat sheet from within nvim. You can also add a file where you can add your own cheat sheet commands for plugins, or your own bespoke key bindings. |
OS: Arch Linux
Window manager: Hyprland
Terminal: Kitty (considering Ghostty)
Shell: Fish
Editor: Neovim (currently using LazyVim, but itās too heavy. I want to finallly create my own config)
Note taking: Obsidian
Misc: Yazi, Tmux
I like my setup a lot ![]()
I use omarchy.
The best way to describe it is ādone for youā arch with hyprland.
It comes in with ghostty, neovim with lazyvim config. The OS even has a built-in way to install zig.
My only ānon stockā change from that is I use zen browser instead of chromium and some many minor key binding changes. I also have zig fmt disabled (I really hate that thing).
Other than that, you get pretty much a great setup out of the box without having to do any configuration yourself (Which is something I didnāt want to invest time in doing), I highly recommend it.
I use ubuntu latest always, because I only care about having something that works reliably, and ubuntu is sort of the de facto, not the greatest, but simple, reliable, always gets the most support.
For the editor I use Helix, I donāt recommend it, itās too good, and you get stuck in it (at least the motions are the best, and the multi-cursor is just worse than crack)
For the terminal I use Ghostty, because itās easy to compile, and the split plus font-size per split is just godsend, so useful and versatile, on top of being fast enough, and reliable.
For the cli tools, I use btop, yazi, fzf, ripgrep, topgrade, jq, stow, sshfs, croc, ffmpeg, brew, uv, zigup, cloc, lldb, curl, dust, nvtop, vllm, lms, opencode + nemotron-3-super (because I have an RTX A6000 at work :)) or codex at home, python pretty regularly
For the shell i use fish, for the web browser i use firefox.
Overall my setup is pretty terminal centric, Iām trying to switch to Zed because they have the best Helix mode that I have seen, but Itās taking me time, because I feel handicaped when the muscle memory try to kicks in, and their documentation for keyboard configuration is not great, and I always hate json to configure shit, I prefer toml.
Os: NixOs
Terminal: Ghostty
Shell: Fish
Editor: Neovim with custom config
Window manager: MangoWM ā Check it out itās awesome
Windows āenvironementā bars menu etc: QuickShell custom config
Note taking: Vim wiki
File explorer: Yazi
I also enjoy a Kinesys 360 ![]()
I must admit, based on your profile-picture, NixOs was not what I expected. ![]()
OS: Arch and Windows. I have to use Windows every so often because Iām currently building an data editor for a close source sound engine (Wwise, similar to FMOD, used by good amount of games) whose authoring tool is only available in Windows (no luck of emulating through Wine). Iām using it to reverse engineer the custom binary output generated from the authoring tool and verify my implementation.
Window manager: patched dwm on Arch, komorebi on Windows.
Terminal: kitty on Arch, wezterm on Windows.
Shell: zsh
Editor: nvim with custom config
- OS: Alpine linux on laptop(it is awesome)
- on PC OpenBSD
- Terminal: st
- Shell: ash
- on PC ksh
- Editor: * liteāxl (without lsp and with ripgrep to navigate zig std)
- for editing single files: micro
- WM: dwm, dwmblocks, dmenu
- file navigating: * zoxide
- vc: git/darcs