Ask HN: What are best practices setting up a dev env on a new Linux laptop?

2 points by nivertech ↗ HN
- e.g. some suggest to install language runtimes, or things like k8s, into a separate VMs, etc.

- another good practice is to create local git repos before changing any dot-files.

- etc.

4 comments

[ 3.7 ms ] story [ 21.2 ms ] thread
I'm going to be "that guy" and say that using Linux is a highly personal and subjective experience. I personally prefer a very "vanilla" setup, and I usually go with stock Ubuntu and only install the things I need for each development project as I start it.
I download multiple JDK versions as archives and extract them to a set of folders. I'm using Eclipse with its dedicated JDK. Any 3rd party services (databases etc) run in their respective Docker containers. Dark themes all the way down. Haven't found a good git setup yet to work across multiple orgs. Firefox with container plugin. Offline copies for documentation. Offline ambient/electro music when it's "one of those days". I use Gedit when I have a graphical setup, vi for shell editing. Found it handy to write a set of shell scripts adapted to my personal workflow - they wouldn't make sense to anyone else. I have a reasonably clean desktop with only links & files for the current project I'm working on. Also, no Slack.
Personally, I treat setup of the workstation as one-off things, I don't archive configurations for stuff other than vim and an additional script for bashrc.

I prefer to have the build and runtime environments be independent of the host machine to some degree, so there are docker images available for executing the build, these contain stuff like compilers and libraries and even npm cache for nodejs stuff

1. What about nix?

2. There is also an issue of hardening the system.