Rendered at 07:31:48 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
jchw 15 hours ago [-]
I'm not entirely sure if it's a good idea per se, but hell, what's the point in making everything properly lazy if you couldn't. I mean me personally, I routinely use 20-30 flake inputs for large system configurations and I've never really minded this at all. The only real concern I have is that overriding Nixpkgs to avoid duplicates can occasionally break since the dependency may not be ready for the latest Nixpkgs, but this so far has only ever hit me with nix-vim, which arguably should be in Nixpkgs anyways in some form (although I haven't used it in a while so not sure what the status is.)
Because you have to, I searched and found that at least one of my flakes are in there, nix-binary-ninja, which is a Nix flake for the proprietary Binary Ninja disassembler/decompiler. Neat. (FYI though, while I use that, I'm not sure I actually recommend it; it does gross things to make binja use system libraries for better integration, which right now breaks some extensions. Oh well...)
digdugdirk 18 hours ago [-]
This is awesome and highlights the entertaining awesome/awful experience with using NixOS.
Also, this author has been on a roll lately! So many interesting articles, I have no idea how they manage to balance their technical writing alongside hosting a regular politics show on CNN.
mcmcmc 18 hours ago [-]
This is not the plagiarist political commentator. From the author’s about page:
> I'm a software engineer, father and wishful amateur surfer. If you've come seeking my political views, you've found the wrong Fareed.
sivakon 18 hours ago [-]
> I'm a software engineer, father and wishful amateur surfer. If you've come seeking my political views, you've found the wrong Fareed.
this is on their about page
markasoftware 14 hours ago [-]
Please be satire
AyanamiKaine 18 hours ago [-]
Wow, it looks really cool!
I will definitely try it! If there is one think that breaks me is always chasing that one shared library for example when developing something using SDl3 and its GPU API.
wredcoll 13 hours ago [-]
When I first met NixOS, it struck me as a super cool idea that would be incredibly useful just as soon as every other piece of software/programmer in the world converted to using it.
I haven't seen anything to change my mind since.
jchw 10 hours ago [-]
I think its mere existence and influence is already good enough. A fair number of modern open source projects either come with Nix flakes or are designed to work well in an immutable environment whether it is NixOS, SteamOS, or inside of a Flatpak or Docker container. The Nix contribution is trying to convince things to 1. stop hard-depending on FHS, 2. allow things to build and be used in a hermetic way, i.e. pushing projects to stop fetching things from the internet during the build phase or at least provide an escape hatch to avoid this.
If it hasn't been working, they could've fooled me. Nixpkgs definitely appears to be the largest and most up-to-date single Linux package repository out there.
wredcoll 13 hours ago [-]
To elaborate in a way that will make absolutely everyone unhappy, framework vs library is a decent analogy here and nixos is very definitely a framework.
Compare that to systemd, which despite having more tentacles than your average jellyfish, is actually a library, relative to "linux" as a whole. It's one reason it has more adoption.
toshinoriyagi 10 hours ago [-]
I don't think this is true. I've been using NixOS for years and it's awesome. Total game changer for managing my PC and development environments. More adoption will help of course, but I certainly haven't needed it to get tons of value from Nix.
televisionsaval 11 hours ago [-]
I don't really get the idea of needing converts when nixpkgs is basically the largest and most up to date.. Using another Linux as a system engineer you would certainly know how to build outside the package system because you would have to.
wredcoll 10 hours ago [-]
The point is that, from my perspective, the value proposition rapidly diminishes when you start needing to special case things to live inside the nixos configuration world.
Other people might be getting different benefits.
(Really this is just the configuration file vs language conflict, again. Oh, this is too complicated, make a config file, oh my config file can't express this special case lets add language features, why am I using a config language instead of a read language, oh this real language is too complicated...)
hombre_fatal 7 hours ago [-]
LLMs change this since you can get them to create a wrapper for some software you want based on a hash, and then bump it when you want to update it.
The end goal is that you have a reproducible, immutable build contained in some git-diffed config files which is all I want.
And it becomes especially nice when you have a single repo that configures all the machines you use, from your macOS laptop to your remote servers, with common config/programs shared between them.
Whether anyone else offers a nix/flake/HM version of their software barely moves the needle on utility of this setup.
televisionsaval 9 hours ago [-]
Sure, I generally didn't go very granular in things not meant for much distribution and then got somewhat less benefit (at least a condensed collection of the system's freakish config is in one source), but trying to go to that granularity level in other Linux I'd have to hope it was network related so editing network manager might be enough and then well, I'd still not follow through since that's maybe 18 months of babysitting for a small chance if the thing isn't obscure.
Because you have to, I searched and found that at least one of my flakes are in there, nix-binary-ninja, which is a Nix flake for the proprietary Binary Ninja disassembler/decompiler. Neat. (FYI though, while I use that, I'm not sure I actually recommend it; it does gross things to make binja use system libraries for better integration, which right now breaks some extensions. Oh well...)
Also, this author has been on a roll lately! So many interesting articles, I have no idea how they manage to balance their technical writing alongside hosting a regular politics show on CNN.
> I'm a software engineer, father and wishful amateur surfer. If you've come seeking my political views, you've found the wrong Fareed.
this is on their about page
I will definitely try it! If there is one think that breaks me is always chasing that one shared library for example when developing something using SDl3 and its GPU API.
I haven't seen anything to change my mind since.
If it hasn't been working, they could've fooled me. Nixpkgs definitely appears to be the largest and most up-to-date single Linux package repository out there.
Compare that to systemd, which despite having more tentacles than your average jellyfish, is actually a library, relative to "linux" as a whole. It's one reason it has more adoption.
Other people might be getting different benefits.
(Really this is just the configuration file vs language conflict, again. Oh, this is too complicated, make a config file, oh my config file can't express this special case lets add language features, why am I using a config language instead of a read language, oh this real language is too complicated...)
The end goal is that you have a reproducible, immutable build contained in some git-diffed config files which is all I want.
And it becomes especially nice when you have a single repo that configures all the machines you use, from your macOS laptop to your remote servers, with common config/programs shared between them.
Whether anyone else offers a nix/flake/HM version of their software barely moves the needle on utility of this setup.