9 ms·
I don’t know if it’s just because I hopped on the bandwagon in the past few months, but it really is starting to feel like Nix is gaining momentum. You can use
by nickysielicki 5y ago
I don’t know if it’s just because I hopped on the bandwagon in the past few months, but it really is starting to feel like Nix is gaining momentum.
You can use it on Mac, WSL, Ubuntu multiuser, Docker, in an nspawn container, or through NixOS on a drive. You can build a livecd iso or a Raspberry Pi image from the same flake that you use for everything else.
I work in embedded with Yocto every day, and I can’t help but think that Nix is going to eat their lunch in the next decade.
There’s really never been anything (usable) that’s like Nix. I think it’s inevitable that it takes over everything.
- mateuszf 5y agoNot tried that but I've heard it's even possible to build custom Android distros.
- nickysielicki 5y agoI know that there’s a very active matrix channel for Nix on ARM that is mostly dedicated to pinephone/smartphone projects, so I imagine there’s some android tooling there but I don’t think it’s “android” in the AOSP sense.
- yakak 5y agoThere is an AOSP/etc dist building on nix project called robotnix. It has little to do with nixOS on Arm, so it is rarely mentioned on that channel.
- zimbatm 5y agosamueldr has been doing a lot of good work in that direction. See https://mobile.nixos.org/ https://mobile.nixos.org/ and https://github.com/samueldr/ https://github.com/samueldr/
- samueldr 5y agoJust noting, using Nix it is also possible to build an actual real deal Android image using Robotnix: - https://github.com/danielfullmer/robotnix/ https://github.com/danielfullmer/robotnix/ This is different from a non-Android Linux on Mobile devices, which is what Mobile NixOS aims to achieve :).
- BreakfastB0b 5y agoWe recently adopted it at my company for managing local dev machines, project environments, and CI. It definitely has some warts, often the best documentation is “read the source code”, but man is it an awesome tool. I’ve switched all of my machines / servers over to it and I’ll never look back. Now I’m looking at my iPad and iPhone and wishing I could manage them through Nix too. I’d put it at a comparable difficulty to learn / powerful tool as git. Which given that they’re both based on hash trees makes sense.
- alias_neo 5y agoThough the documentation may be lacking, or difficult for beginners, I'd like to point out that I've found the community to be extremely helpful, patient and welcoming when asking questions and for help on Matrix.
- xvector 5y agoHow can one use Nix to manage project-specific dependencies that typically store Dotfiles in annoying locations like the home folder? I am aware of home-manager but am not sure how (or if) it would work for per-project dot file management.
- catern 5y agoCan you say what specifically? Many language-specific package managers match your description and are completely handled by Nix, but maybe you're talking about something else?
- SuperSandro2000 5y agoCan you name a tool which does not allow per project local configuration files? One option to do it per project with hm would be to add new options which set certain configuration options.
- xvector 5y agoConsidering any command-line tool that requires a dotfile to be in some ~/<path>
- imhoguy 5y agoqq: Any good tutorials to get up to speed with NixOS with 64-bit Raspberry Pi Zero 2 please? I have a plan to thinker with some off-grid IoT this year, good moment to try something new, like Nix, than continue with Ansible which unfortunately gets out of hand with very long lasting installations - no implicit cleanup of removed resources and lack of build reproducibility (apt-get update issue really).
- sjustinas 5y agoNot a tutorial, but the unofficial wiki has info on Raspberry Pi and other ARM SBCs: https://nixos.wiki/wiki/NixOS_on_ARM https://nixos.wiki/wiki/NixOS_on_ARM
- e3bc54b2 5y agoDifferent model, but I just (about 2 days ago) setup my Pi 4B using this, and was done in about an hour: https://nix.dev/tutorials/installing-nixos-on-a-raspberry-pi https://nix.dev/tutorials/installing-nixos-on-a-raspberry-pi I made it difficult for myself by using flakes, but if you don't care about that, just follow the instructions and you'll be set in 10 min flat.
- JamesSwift 5y agoI love nix, but you're a lot more optimistic and forgiving of its cons than I am :D To be clear, I've not used NixOS and it might be a more reasonable experience. Nix package manager though is the most useful tool I have integrated into my dev-life and also the one I am most hesitant to recommend to anyone else. The UX of the whole thing still has a long way to go and the initial installation experience on Mac has been all over the place quality-wise in recent years. Now that flakes are officially a thing (even though they are still unofficial!!!) it again will take a while to stabilize. My hope is that once that flake transition stabilizes we will have a much more reasonable baseline of UX to begin recommending to others without nearly as many caveats.
- abathur 5y ago> and the initial installation experience on Mac has been all over the place quality-wise in recent years. In minor defense of this, Apple making the root read-only threw a pretty big wrench in things. There are a lot of little reasons (some understandable and some exasperating) it took so long to adjust, but all of them were exacerbated by the amount of new logistical complexity required (and the amount of experimentation necessary to figure it out).
- JamesSwift 5y agoFor sure, that part is understandable and the current install is pretty simple since FDE avoids previous steps. But for a while it was _really_ difficult to find the needed info (had to read through Github issues and find specific comments embedded in extremely long threads)
- abathur 5y agoYes--it was bleak. Getting tired of watching people run into sharp corners in the process of that was part of why I got involved with trying to fix it up, myself. There were some dumb (but common in informally-organized OSS...) reasons it malingered. Most of them are still problems (though a few have improved or are slowly moving towards it). A lot of the fixes entail investments in improving leverage of time spent on the installer. Better automated testing, more organizational structure/memory/accountability, etc. But those issues wouldn't have been enough headwind to drag the situation out like it did if there was always one obvious straightforward politically-acceptable solution from day-1 that just needed to get implemented.
- candiddevmike 5y agoTo all the folks using Nix at scale: How are you doing it? Are you still using Kubernetes and friends, custom images, etc? How are you deploying apps or making changes to your Nix instances across a fleet of servers?
- SuperSandro2000 5y agoI a know a group which deploys ~10 machines and ~30 Containers mostly with shell and custom CI. Nothing fancy.
- colordrops 5y agoI was afraid of Nix before I adopted it based on what I've read. Now that I've taken the leap, there is no going back. Other operating systems are crude dinosaurs in comparison. Once you get past the learning curve and the initial setup (which can be steep), your system will be far more stable and easy to maintain than anything out there. Declarative OS builds are the future, whether it's Nix or something else.
- pkulak 5y agoOkay, sorry to hijack, but I keep trying it, and keep getting stuck. Most recently, how do I install a Rust binary from Github? They have a releases page, or I can just do a cargo build. Either way, I would just drop the resulting binary in /usr/bin and it's done. With Nix... I'm totally stumped. Do I have to package it myself somehow?
- assbuttbuttass 5y agoYes, you will have to package it if it's not already in nixpkgs. The good news is once you learn how, it's basically trivial with crate2nix[0], which can autogenerate nix derivations from rust crates [0] https://github.com/kolloch/crate2nix https://github.com/kolloch/crate2nix
- lilyball 5y agoYou can also use naersk¹ if you want to avoid a two-step process. It's especially convenient when using nix flakes. ¹https://github.com/nix-community/naersk https://github.com/nix-community/naersk
- JamesSwift 5y agoIf you just want to take a precompiled binary and install it, you just have to write a derivation wrapper around the binary which will declare the expected hash and take care of e.g. unzipping and moving to $out/bin. Here is a more involved example of downloading a release and then extracting the binary from a .pkg file: https://gist.github.com/J-Swift/364a8b158bf0b603f6e784e454ca6e53 https://gist.github.com/J-Swift/364a8b158bf0b603f6e784e454ca... Here is a more simplified example: https://gist.github.com/mitchellh/c47e3333bb78f57836ba2aa8064ad993#file-hashicorp-generic-nix-L32-L47 https://gist.github.com/mitchellh/c47e3333bb78f57836ba2aa806... EDIT: to get the sha, unfortunately you have to perform some esoteric command line incantations: https://github.com/NixOS/nix/issues/1880#issuecomment-366615204 https://github.com/NixOS/nix/issues/1880#issuecomment-366615... and https://gist.github.com/boxofrox/d8a3080fbb03f84b7d7a31e102b35f09 https://gist.github.com/boxofrox/d8a3080fbb03f84b7d7a31e102b...
- mekster 5y agoI've stopped taking it seriously after seeing blogs like this. https://blog.wesleyac.com/posts/the-curse-of-nixos https://blog.wesleyac.com/posts/the-curse-of-nixos