24
votes
Post your setup!
A thread to post your desktop (or laptop) setups - what OS you use, what desktop environment you use, what window manager you use, what editor you use, what terminal emulator you use etc.
A thread to post your desktop (or laptop) setups - what OS you use, what desktop environment you use, what window manager you use, what editor you use, what terminal emulator you use etc.
Yep, I like it old-school. Not really by hipsterism but more because i am and old fart.
DE/WM: I don't use any DE feature, I don't care if GUI programs integrate perfectly with each other, I launch everything from terminals. So I don't care about DEs, I just need and use: 1. one dock icon to launch a new terminal emulator, 2. the ability to move/resize/arrange windows, 3. Virtual screens, and that's it. WindowMaker has been doing the job for me for what... 20 years? Every time I tried something more shiny, I came back to WindowMaker.
Editors: I viscerally despise IDEs on one hand, and on the other hand I don't care about Vim tricks and features that I would use twice a decade, I don't care about super-crazy time-saving macros and shortcuts: most of the time in front of an editor is spent thinking about what to write/change, not actually writing/changing it. So any editor with a few classical shortcuts/features and a bit of mouse usage will do. For example, previously I used Geany (GUI), or when I am on Windows I may use Notepad++. As far as TUI are concerned, I gave tilde (looking like DOS editors, with a menu) a try to replace joe, but it lacked a few things at the time, maybe it got better now; I just learned about micro's existence, maybe I should try it (but it's got no menu).
OS: I started this because I was tired of updating and updating and updating packages on my Gentoo (multiplication of packages + multiplication of dependencies + the upstream craze about releasing new versions every 3 weeks since a couple of years). So I decided to go back to my 90's: take a simple distribution as a base, and build the rest myself, and then update what I want when I want. The process was interesting in that I realised that almost nobody compiles the sources any more today except distributions maintainers! Why do I conclude this? Because a lot of pieces of software make untold assumptions about requirements and fail to build on a bare system, and a lot of packages simply won't build without patches, and some can't even build at all depending on your configuration (and that concerns major components (in terms of size, in terms of ecosystem position (base brick for thousands of other libs/programs, or application leader in its domain), in terms of manpower, etc.), not just the one-hobbyist small tool.) There was no way I was the first to encounter this... except if (almost) nobody else does it (but distro maintainers who have to build patches like I did, which are never corrected by upstreams; and who have to manage told and untold dependencies, build order and other tweaks and tricks to get the damn things to compile). So everybody speaks of the beauty of Open Source and Free Software, but truth is nobody cares, it could be Proprietary Closed Source, it would be the same for 99.9% of the present vocal supporters of Open Source, they just care that it is Free as in Beer, and they only ever use "1-click" installs (or "1 command-line"), so they avoid the faintest contact with source (which is package compilation). Hmm... did I already say I was a grumpy old fart? :-D
This is one of the reasons why I hope Rust really takes off - not only because it's a great language, but also because the package management and dependancy situation is fantastic - Cargo does a great job of pulling down all the correct libraries and compiling everything into a neat binary from source - it basically never breaks.
In my approach, package/dependency managers were something I really wanted to avoid as much as possible, I want to be in charge and manage each program/lib as separate items.
And I have even stronger opinions against language-dependent packages managers because they add extra layers of management conflicting with other package managers like the distributions ones, and worst of all because their repositories are generally not curated at all, resulting in tens or hundreds of thousands of packages: unfinished, unmaintained, outdated, untrustable, with duplicate goals and functionalities (let alone the duplication with already existing language-agnostic libraries), incompatible between each other and the right one is basically impossible to explore and choose with a sufficient confidence.
I agree with the issues you have with language-specific package managers, and think it would be really nice if the people who write {pip, Cargo, cabal, npm, etc.} could agree on some sort of standard package management protocol to which you could write any number of front-ends, but I have to say that Cargo is one of the best out there. It blows pip and npm out of the water. The Rust ecosystem is small enough that there's never really more than one library to do any given thing anyway (and sometimes there's none at all). I don't think there's been any evidence of malware on Cargo, and I believe they have some decent mechanisms in place to prevent typosquatting.
That's why I love Nix. It allows me to create a reproducible development environment no matter the language. All I do is write a
default.nix
file. The file is read by thenix-shell
command when I invoke it and all dependencies are installed for me, without having to worry about a weird state on my system that is allowing my code to compile.Everything I've seen of Nix is really impressive. At some point I'll get around to trying it out properly.
(First, I want to state that I am aware that I am probably not in the majority concerning my opinion and choices on these matters, and certainly not in the majority considering the current trend.)
Small, small... I just checked and there are already 16,000 packages on https://crates.io/. For a language/ecosystem/repository so fresh and young, that's already a lot. Already too many, I'd say.
To get reference numbers, that's more than several Linux distributions and in the ballpark of others. Full OSes with applications...
It can't possibly be curated at that pace, there can't possibly be a majority of useful and well-done packages in it.
It's not only trendy repositories and package managers like pip and the infamous npm who have this problem of 'too much'. Perl is not trendy at all but CPAN has 200,000 packages... go find something reliable in that mess... Tex is even less trendy but CTAN has more than 5,000 packages, and you are extremely lucky if the 3 ones you want to use are not incompatible with each others.
OK, but I guess this tries to mitigate the recent trend of voluntary evil actions. But as far as curation and quality control are concerned, this won't help much. For example, I haven't really heard of malicious packages in CPAN, but it is still a mess. Just because of the numbers.
I'd rather favour a handful of standard and defacto-standard libraries/frameworks, and a certain number of strongly established specialised libraries. Like in the C world or the C++ world, in a way. A limited number (counted in the tens or hundreds of packages) of major projects with a long life time, a possible curation and quality control, and a very limited number of dependencies in each; rather than a mess of tens or hundreds of thousands of packages of very variable quality and support.
You see what I mean?
This can't possibly do all the things which people want external libraries to achieve. The reason it works in the C world is because there's a strong culture of implementing stuff yourself - in part because dependancy management pales in comparison to modern languages.
As for crate quality - all the code is right there for you to read if you're worried, and in my (admittedly anecdotal) experience it's been pretty good. There are some crates which already have 'canonical' status -
regex
,futures
, andserde
come to mind - you just have to spend a little bit of time immersed in the Rust ecosystem to learn which ones they are - that's no different to learning the useful C libraries as a beginner in that language.Well, there is none, so it is super-easy to handle :-D
But that implicitly highlights the inverse problem with language with package repositories and managers as side-kicks: it is too easy to add stupid dependencies and the mess starts from there, that's the original sin.
I mean, in the case of Rust/Cargo/crates.io, the language and repository are only something like 3 years old, the language is still a niche (hip, but niche) and yet there are already more than 15,000 packages... This is huge, and is just a beginning; it will soon be larger than the Go repository which is twice as old, it grows much faster than it. The pace this year is over 500 extra new packages per month... I can't see how this is going to turn any better than the other behemoths of package repositories. Same causes, same troubles.
I feel that Rust leaders wish to strike a happy medium between the two worlds, but I fail to see how it will not end in the second world (the world of pip, npm, CPAN, etc.)
While cargo is fantastic, I find that it does break quite often.
For example, I am currently debugging an error which already has many hits on Google: https://www.google.com/search?hl=en&q=%22found%20possibly%20newer%20version%20of%20crate%22. Somehow dependencies are ending up in an inconsistent state whenever we run tests for our crate.
I've also run into cyclic dependency errors for which the only fix was updating to Rust 1.25.
To be fair, our crates are fairly large and complex and I haven't run into problems with personal or hobby-level crates.
Well - it still sounds like it's doing a better job than pip, which has given me all kinds of headaches in the past.
Oh yeah, I didn't mean to imply it's not good. It's definitely one of the best package managers, but dependency management is by no means a solved problem yet.
OS: NixOS
WM: dwm
Editor: vim
Terminal: st
https://i.imgur.com/amkQqgb.jpg
I've a very minimal setup and I like it like that. It's fast and doesn't get in my way.
As I understand it,
st
is one of these Unix purist terminals that requires a multiplexer to support scrollback. Do you use a multiplexer, or do you just pipe everything longer than the height of your screen into a pager?You can use a multiplexer like screen or tmux, but there's also a scrollback patch that you can apply and then scroll using
Shift + (PageUp | PageDown)
.That seems reasonable. I don't really agree with the idea that a terminal emulator shouldn't support scrollback. To me, it feels like a core feature of an application that is ultimately just a box to contain text.
I don't think it's such a big deal. The nice thing about
st
is that even if you don't like something , you can easily change it, because the source code is quite simple and short (provided you know C).If I'm working with a command that outputs a lot of text I just use something like
less
and don't use the scrollback, because in most terminals (by default) the scrollback is limited.That's fair. I am wholly with you on the point of being able to easily change and recompile applicatons with ease - I really like software that lets you do that. Lots of software claims to be 'open source', but I think to truly be 'open' there needs to be a concerted effort on the part of the original developers to make rewriting sections of code a viable option without having to spend three days just working out the architecture of the program and piecing together the toolchain.
Here's mine (apologies for imgur mangling the image quality, it looks very crisp and clear in person). My main computer is out of action right now, normally I give them each a screen and use a program called Synergy to sync the mouse and keyboard between the two (and across Linux + Windows or Linux + FreeBSD).
Edit: And if you're wondering why there's a large black bar on the bottom of the second desktop, it's not a mistake, it's because the resolution on that monitor is smaller (1920x1080 vs 1280x1024)
That's pretty A E S T H E T I C :)
Out of interest, why do you chose to use FreeBSD? I'm tempted to try a BSD, although software compatibility worries me and while I like building from source, I can do that with the AUR anyway.
I'm a big sucker for mid 1990's / mid 2000's computer GUIs :D
Being honest mostly out of tradition for a long time. It was the first OS I got started with in 2012, and for a long time I had a pretty cool setup with i3 and some scripts for latex for school. I would have to convert a lot of things to use it on Linux, and since I had very standard and boring hardware back then (an old Compaq from 2004 that was supported by everything), I had no incentive to switch away. Now I use Linux primarily because this Dell can actually play some basic games like Silicon Zero on Steam, and because Trinity (the desktop I'm using) hasn't been backported to FreeBSD yet. On the other hand, with my main computer now having an SSD and a Ryzen 7, compiling doesn't take literal days like it used too anymore... :D
As to why I would suggest it, it's absolutely rock steady on hardware it supports, it has some really cool features like jails and ZFS in kernel that even Linux doesn't have iirc, and it's very fast and snappy. On that old Compaq, nothing else would run fluidly, but FreeBSD did.
Actually, so long as your software is open source, FreeBSD has an outstanding library of programs. You'd be very hard pressed to find a project out there that doesn't have a port for FreeBSD. However, the ports can be a little unstable sometimes especially around major version changes, and breakages do happen, so you have to stay up to date if there are any issues. And proprietary software is almost guaranteed not to work, so if you need Google's Chrome (although Chromium is supported) or Steam for example, you're out of luck. But if it's open source, there's a very good chance it'll be available, even when some Linux distributions might not have it.
I've tried Arch's AUR and it's far more hacky. The closest thing in the Linux world to ports would be Gentoo's portage system, which was actually inspired by FreeBSD, but portage is much more complex and I've never gotten it to work very well. If you're curious to try it, I would recommend it on a VM or a computer you have no other use for. It's definitely something you want to feel the ropes for and explore without pressure before you try to use it seriously, it has a learning curve (because it's not Linux after all).
Thanks for the response. It sounds like FreeBSD would be more feasible that I had figured - I don't really use much proprietary software (the Spotify desktop client is the only thing that comes to mind, and I can use that in web anyway) - and I had figured that the performance would be worse than Linux so I'm surprised to hear that the inverse is true.
Would you mind elaborating on why you feel this is the case?
The way it's handled separately from the base package manager. To update an Arch system that uses AUR, you need to run two different update programs; first you have to use Pacman, then you need to do a second pass with an AUR manager of some kind. There are some (I remember yaourt especially) that merged the two and let you treat it like one, but now you have a package manager for the package managers :P and Arch isn't the only Linux that does this either, Slackware for example needs you to use both the built in package manager (I forgot the name, slapt-get maybe?) as well as sbopkg. They are independent and unaware of what each other is doing, and you have to work with two entirely different programs. In FreeBSD in contrast, the ports system compiles all of your ports to pkg packages, and then calls the native package manager on those and installs them just like any other binary package from an official repository. This means that you don't need two package managers; you can use pkg to inspect and remove any ports program that you installed, and you can easily replace any ports program you install with the pkg version and vise-versa. They can even update each other; if portmaster (the program that actually handles installing ports) detects a pkg package is out of date, it will offer to replace it with its own updated version. In fact, portmaster can even update the pkg program itself :D So you can pick whichever you prefer and stick to it without having to ever touch the other.
Thanks for your indepth response.
Out of interest, have you looked into
mopidy-spotify
yet to deal with that issue?I don't have premium, but I've bookmarked the link in case I get it in the future. Thanks.
I'd call it "early 90's AMIGA" :-P
OS: Antergos
DM: Gnome
Editor: Atom or Vim
Doesn't need a difficult setup, and works fine for everything I need it to do
i3-gaps + polybar + termite + fish (pure theme) + nautilus (it looks too pretty!) + nvim-gtk
https://i.imgur.com/fHz6g5a.png
I mostly use sublime, but I've been trying to get into vim, so I took some time to pretty it up as an incentive to learn it.
Whats that icon theme in nautilus? Looks nice.
I should have specified in my original post, sorry about that!
I'm using the paper icon set and the arc gtk theme.
OS/DM: macOS
Editor: Vim
Term: iTerm
Git client: Tower
Music: Apple Music (it's shit, use spotify)
To-do app: Things
Mail: Apple mail
Calendar: Fantastical
I hate web apps, so I want a native application for most of the things i do, therefore I could never switch to Linux, even though I spend most of my time in the command line.
I really want to switch to a graphical text editor/ IDE, but muscle memory has made anything but vim unbearable to type in.
So close, but so far away :D
OS/DM: macOS
Editor: Sublime Text
Term: Terminal
Git client: Tower
Music: Spotify
To-do app: OmniFocus
Mail: Apple Mail
Calendar: Fantastical
Yeboi. You should really try iTerm, its great being able to split windows horizontally and vertically.
As for music, stick to Spotify. Even though I find the electron-crap disgusting, its much better than Apple Music.
I'll give it another go someday. I've tried it in the past but alway go back to old reliable. And yeah, I switched to Apple Music when it launched. There were somethings about it that I really liked. Being an iPhone user it was nice to say "Hey Siri, play x by y." But overall, it's a mess. Especially when you combine it with iTunes Match for stuff that's not on there.
I think a lot of graphical editors (e.g. sublime, vscode, etc) have plugins or native support for vim keybindings. I would guess that any reasonably popular editor that supports plugins has something like that.
All of those graphical editors lack something important in their "vim support", though. They all don't support vim plugins. And none of them are complete in their vim support. For instance, the editors you mentioned might have a vim plugin available, but you can't go
:Ex
to get an explorer window.Ah, yeah that's fair. I'm by no means a vim user so I guess I don't know what is lacking there.
Yea true, but they are not native. I have a irrational hate for user interfaces that doesn't follow the style of the os. That weeds out A LOT of editors. The only one I have found so far, is BBEdit. IDK, maybe I just need to accept the facts that most applications is not native.
Manjaro // Sway // Termite // Vim
Currently working on my laptop, the screen resolution isn't so great but tiling window managers make the most of it.
We got a user of the OG ThinkPads here :O
--T or X61?-- Apparently not, older according to google, more likely an R500 or perhaps an SL of some kind? I'm afraid my knowledge gets pretty hazy before the x60 / t60
It's actually an SL510. As far as I can ascertain it's not one of the old ThinkPads that people on Hacker News love, but it has served me well.
Nice! I'm hoping to get an A485 over the summer, I'd love to get an older style Thinkpad, but the low screens and slow processors deter me from using one for school (since that'll involve virtualizations and such eventually). As a spare though, an x61s would be perfect. Gotta love how that whole desktop + kernel fits into only 340 MB of RAM.
It's not an OG thinkpad, but I've been really enjoying the X1 Carbon. It hits all the sweet spots for me--extremely light, long battery, decent specs, and no discrete GPU (this might be a downside for some, but the hassle, weight, and battery drain aren't worth it imo). It's a bit pricey though.
This laptop really struggles with electron apps and heavyweight websites (yet another reason to like tildes) but it's perfectly fine for lightweight web browsing, writing, and a little programming.
OS: Ubuntu running on Crouton
DM: KDE
Editor: Sublime
I use a ~$150 chromebook that I installed crouton and 16.04 on. It has noooooo power to it at all, but my non-text editing work is almost exclusively on computational servers. Every once in awhile I get annoyed by crouton / my minuscule amount of RAM (my latest annoyance is that foobar on WINE won't play audio streamed over remote UPnP for... some reason) but until I graduate / get a job that'll pay me well enough to get something better, it works.
Out of curiosity, how minimal is that minuscule amount of RAM?
Well, it's 4GB but the combined load of 2 operating systems and a bad processor makes it feel tiny :P
In short I like to make life difficult for anyone else who want's to use my workstation, but not so complex that I can't recreate it easily. Here's a snapshot of what it looks like.
Dvorak and a tiling window manager. I bet no-one ever asks to borrow your laptop :)
Nope. I've had coworkers who use dvorak, and coworkers who use a tiling WM, but none who use both.
https://sr.ht/_81I.png
I use NixOS and fedora (fedora for work, NixOS at home), with herbstluftwm.
My desktop machine. It's XFCE on MXLinux. The icons are mostly Sardi Flexible. Guake terminal.
My laptop is currently running ArchLabs, which uses Openbox and polybar. I'm running a different color of the same icon set and Guake. I really like this setup, particularly the polybar configuration, but the number of updates is kind of annoying. About half the time have to boot twice: once to see how many updates are ready and again after installing them. Might save the configs and move over to Manjaro or back to Slackware.
Why do you have to reboot after installing updates (I'm not familiar with MXLinux)?
It's actually the ArchLabs install on my laptop. I basically reboot because I like being careful and a little lazy. If the system installs updates and if I don't know what they are, I reboot. If it's something I know I'm not using I don't bother. ArchLabs seems to update something every day, and today I had two updates in about 90 minutes.
On the plus side, the package manager is as fast as I've seen and it reboots quickly, too.
Oh I misread it. Yeah, I generally only reboot if the Linux kernel was updated or Systemd (because it's Systemd...).
Because I use NixOS, the output during an upgrade is hard to read sometimes (they're working on this). When that happens I also just reboot to be safe, but NixOS doesn't update as much as something like Arch :).
OS: Ubuntu
DM: Unity
Editor: Notepadqq
Are folks using the GUI for Vim or mostly CLI? I've tried CLI text editing and just can't, but more power to those who can.
This is my first foray into Linux (or Gnu/Linux if you prefer) and went with what I thought was the most popular and well supported OS/desktop. I am not a fan of the left-hand toolbar in Unity. I'm open to trying others and use XCFE at work, but find it a bit minimalistic. Any suggestions?
I use vim in CLI. It does take some time to transition to the terminal mindset but after a while you start to live in your terminal emulator and feel clumsy and awkward without it! It does help to have a decent .vimrc and while many folks recommend building your own up over time, I don't see much harm in taking one from the internet and tweaking it to suit your needs.
Perhaps try Budgie DE? It's not the most lightweight, but it's not too heavy either, it looks nice and is user friendly.
Thanks for that .vimrc file. Still somewhat new to to vim/CLI and that will be helpful.
Ps. We need a way to save posts, this comment is mostly so I can find your post with that link again later
Try out MATE, it's actively maintained.
GNOME successor. Neat. Thank you.
Ancient BSD system, xterm, dwm, pdksh, vi. Green on green xterm windows, all 80x24. Using GUI stuff only as a last resort.
Which BSD is that?
Nothing fancy, just a totally outdated version of FreeBSD. In the past I have used ULTRIX (on a VAX 11/750, not mine though!), 386BSD (on a ridiculously expensive 386 with 5 megabytes or RAM), and NetBSD. Today it's mostly FreeBSD and OpenBSD.
Windows 10 / Alpine Linux (no gui in Virtual Box) / vim
https://i.imgur.com/jyE0FTx.jpg
I'm currently on my windows 10 laptop, the better of my two laptops (I have another laptop for linux but it's not that good). I keep win10 around because of games, but I have found a way to get my programming done here as well, with an Alpine Linux distro on VirtualBox without a GUI.
Have you loked into using WSL? I wonder if it would be a cleaner solution than using a virtual machine?
First off, sorry for the clutter :P, I know it's pretty bad right now. Also, about WSL, I never really liked it... I'm not really sure, but I just prefer Alpine (plus it is rather lightweight)
WSL has been great for me. I have laptop that runs straight Mint, but I also have a laptop with Windows 10 and WSL. I had to tweak it a bit to get Guake-like functionality and some cosmetic things that I like, but now it's great. Definitely still a little clunkier than a CLI on a Linux machine, but it makes Windows a lot more usable for me.
Or dual-booting. I hate the slowness of Windows.
Eh, my work laptop provided by the company run with:
OS: Windows 10
WM: Windows
Editor: Notepad++ for simple stuff, nano when I've to do some changes on the fly, atom when developing bit stuff. I tried VSC but cannot like it and dunno why.
Terminal: cmder
I'm not happy, I'd like an ubuntu notebook at least and I've voiced my request but the sysop dept. is basically made by old school sysadmin that run everything through windows servers / AD / whatever else windows use to manage the network. Which is fine for literally everyone else doing office jobs, but the development department (3 guys as of now) should be free to use the stack they want ffs.
At home I've an asus with:
OS: Windows / Ubuntu 16.0.4
Editor: On windows just Notepad++, on Ubuntu nano and atom.
Terminal: cmd on windows, the default terminal on Ubuntu.
I'm a web developer, more towards software engineer lately as I mostly design the solutions and rarely work the details of the code (unless something is rather new / complicated). When at home I just chill with a movie or a videogame on my laptop (and that's Windows job). If I want to mess around with some new framework, technology or whatnot I fire up Ubuntu and it's more than enough to try something.
I'm trying to dig into the devops side of things (I had some experience for the last year at my previous job) but it's not stuff I want to mess around in my spare time and the current company really are more of an in-house servers and virtual machines so I've not really any needs of something more.
Lots of guys here with obscure (to me) stacks, that's pretty awesome! :D
That's frustrating that you are stuck with Windows at work. I can obviously see the sysadmin's point of view, as from what I understand AD is a very powerful and useful tool for managing a fleet of machines, but as you say - a developer should have the freedom to use the tools that work for them.
If he were one of mine I'd have at least given him VMWare workstation, or a fleet of dev environments sitting on the company cloud built out to what he needed.
Honestly, the linux stack has reached parity with Windows/AD, at least for most business needs (especially small-medium businesses). I think most businesses are just stuck paying the Microsoft tax based on inertia. There's even a drop-in domain controller replacement: Zentyal.
This old MCSE is still rolling with Win 7 because I despise 10... but I've mutated it with a full linux stack (the Microsoft GNU tools, not cygwin) so at the comment prompt level it's all there. This install must be close to 12 years old too, can't even remember how many tools and powertoys I've merged into it.
The last time I ran a linux desktop was Ubuntu 8 for about three years, until PulseAudio pissed me off during gaming one too many times. That was before the scheduler in the linux kernel was patched to support fast desktop performance, too.
I am definitely not going to move to Windows 10. Windows is better than ever under the hood from a straight tech perspective, but the tabletization of the UI makes me rage, and the way it snoops on you is insane. The question is, which linux distro to use next time I rebuild my machine...
I've never had a problem with PulseAudio in the last five or so years that I've been using Linux, for what it's worth. If and when you choose a Linux distro, you should make a post going over your rationale - I think it'd be an interesting thing to read!
I've settled into my current setup:
Dell XPS 9360 and Dell Precision 5510 both running Fedora 28 + Cinnamon. Gnome had horrible memory leaks that started to get in the way of work. Cinnamon has been a breath of fresh air in simplicity + functionality, really enjoying it.
OS: macOS
Editor/IDE: Sublime/IDEA/Xcode
Terminal: Terminal.app, bash, literally default theme
Browser: Safari (hardcore apple fan)
Package manager: homebrew
Git: SourceTree
Scratch “paper”: Apple Notes app
Machine: 2017 MBP w/ touch bar, 3.5GHz i7/16GB/250GB
Nothing fancy.
KDE Neon. Breeze Dark theme.
I use Fish inside Tmux.
Chrome because my whole life is synced to Google for better or worse.
Wow! Everyone here's running some sort of Linux/Unix. I'm certainly in the minority, then.
My desktop computer is a custom built, with a GTX 1070 SC and a 22-Core Xeon e5-2699.
It runs Windows 10, however. I also have a 2016 15 in Macbook Pro.
My phone is currently an LG G7
OS: Fedora
DE: Gnome 3
Gnome extensions: Dash to Dock, Impatience, Caffeine, Window Navigator, GConnect, Open Weather
Theme: Adwaita
Shell: zsh + https://github.com/bhilburn/powerlevel9k
Editor: neovim
Browser: Firefox
Music/podcasts: Rhythmbox & Spotify
Gnome gets a lot of hate these days, some of it justified (ridiculous memory leaks and a tendency to "improve" things by removing features) but having run the gamut from i3/Xmonad through XFCE and KDE as well as various flavors of Windows and Mac over the years, it's the DE that annoys me the least. It stays pretty much out of my way, while requiring the least amount of work to get up and running. Any other environments like i3 and KDE I end up wasting hours tweaking to get it working just right, rather than doing more interesting things with my spare non-work computer time. For that reason I usually just go with the default out-of-the-box Fedora Gnome experience, warts and all, with just half a dozen or so extensions.
For editing I again just end up with vim/neovim unless I need to use an IDE for something special (like Android). Visual Studio Code is nice enough but not a fan of electron and it doesn't buy me much more than what vim offers (and my habits and muscle memory are just more productive with vim).
OS: Debian sid or Arch
DE/WM: xfce or i3 or none
Editor: Vim
Terminal: xfce4-terminal or urxvt
All the ors are independent, I'll just use whatever I'm feeling like at the time. I use bash with all of my dotfiles tracked using GNU stow.
OS: Windows (I needed Adobe and like the occasional game)
Keyboard Layout: Neo2 (something sweet, but german)
Editor: Emacs/Spacemacs (for org mode, coming from vimstyle atom)
Browser: Firefox (with stylish, tree-style-tabs, ublock, pocket, etc)
Essentials: ShareX (screenshots), Stylish (for CSS in FF), Nextcloud, Thunderbird, Kodi
Hardware: Some 2016 Dell XPS 15", Logitech G900 mouse, mini-projector, good dynaudio speakers, a good chair, android phone (moto g)