Remix.run Logo
bzmrgonz 5 days ago

Fyi: NixOS would shine everytime a client handed you a laptop for the gig. Your working environment reproducible and declarative. Setup in minutes, not hours.

AyyEye 3 days ago | parent | next [-]

Having to figure out how to make whatever random god-awful corporate software they got sold work on nixos -- on a deadline -- sounds like seven circles of hell.

brainlessdev 3 days ago | parent | prev | next [-]

NixOS rocks, but if there is some software you need to install to comply with company policies (e.g. Vanta) then you may be in for some unexpected tinkering.

I would suggest Home Manager though, which will let you set up your environment just as well and is very portable, while still affording you a mainstream host system of the company's choice.

rasmus-kirk 3 days ago | parent | next [-]

+1 for Home Manager, as someone who uses Nix extensively (NixOS for server, Nix devshells, Home Manager on my dev machine) it's by far the most versatile tool the Nix ecosystem has to offer!

MarsIronPI 2 days ago | parent | prev | next [-]

What do you do if they hand you a Windows machine? Demand WSL? What if they don't give it to you?

markstos 3 days ago | parent | prev [-]

Agreed. Vanta does not support Linux.

katdork 3 days ago | parent [-]

nix-darwin and home-manager however, support macOS.

Jean-Papoulos 3 days ago | parent | prev | next [-]

Absolutely not, the company laptop will be locked down and you won't be able to install your own OS.

chasd00 2 days ago | parent | next [-]

yeah i was a little confused by the suggestion. If a client hands you a laptop to use for a project then there's corp. policy reasons why you have to use it as a contractor. (some companies have serious teeth in these policies)

It would be interesting to be a fly on the wall and listen in when infosec calls you and asks why your laptop disappeared from their monitoring tools and you told them you installed nixos (assuming that would even be possible) because that's what you prefer.

drob518 2 days ago | parent | prev [-]

Exactly. They don’t want you to just use their hardware. They want you to use all of it.

TZubiri 3 days ago | parent | prev | next [-]

Knowing how to work with builtin tools would shine in that environment. I first learned this style in a Spolsky blogpost were they talked about Wasabi, a language that compiled to either PHP or Visual Basic I think it was, the idea being that those languages were preinstalled in most servers of the era.

In a similar sense, knowing how to work with the builtin tools of major OS is a huge advantage. If you can write your code in vim or nano or notepad without breaking a sweat over your favourite hotkeys not working, that's a lot of hours saved.

SOLAR_FIELDS 5 days ago | parent | prev | next [-]

You don’t even need full on NixOS. I do the same with nix-Darwin and home manager. It’s not the perfect reproducible purists machine due to homebrew and Mac designs but it doesn’t really need to be, just mostly so

katdork 3 days ago | parent [-]

Purity here is a difficult ask without the whole "erase your darlings" impermanence. In general, there is something regardless which handles stateful interactions.

Often this is activation scripts, e.g. home-manager will complain at you if you are attempting to overwrite an existing file not managed with home-manager unless you tell it to forcibly overwrite the file.

You can get yourself into situations where even in NixOS land, switch-to-configuration will refuse to switch due to some kind of violation, e.g. a systemd mount service wholly failing. I've had an experience like that recently.

The Nix store is not a perfect get out of jail free card for this, everything impure must be wrangled by something eventually.

What I'm really trying to say is, the world is messy and full of impurity, it's unavoidable. The thing that manages Brew, casks and app store applications for you within nix-darwin is no different than home-manager managing home.files or switch-to-configuration acting upon systemd.

firefoxd 3 days ago | parent | prev | next [-]

2015 me didn't know that. But chances are, I wouldn't have been able to install it with their company software policy tools.

iberator 3 days ago | parent | prev | next [-]

Ansible and vagrant is easier and battle tested.

3 days ago | parent | prev [-]
[deleted]