ryan4yin / thiscute.world

Ryan4Yin's Space
https://thiscute.world
20 stars 3 forks source link

en/posts/my-experience-of-nixos/ #37

Open utterances-bot opened 9 months ago

utterances-bot commented 9 months ago

OS as Code - My Experience of NixOS - This Cute World

https://thiscute.world/en/posts/my-experience-of-nixos/

PrimaMateria commented 9 months ago

Great article! It seems like NixOS is often seen as something only sysadmin wizards use for their secret rituals on homelabs and cloud servers. But lately, things are changing. NixOS is slowly gaining traction among regular Linux users like myself. I stumbled upon Nix because I needed a better way to manage my dotfiles, just my bash and vim configs really. I'm just a frontend guy working with React on NixOS WSL, and I've noticed a bunch of folks enjoying Nix on their MacBooks too. I reckon if we keep bringing NixOS down from its lofty heights and into the hands of everyday users, we'll build a strong and diverse community around it, ensuring its growth.

ryan4yin commented 9 months ago

@PrimaMateria Yep! I use Nix on my two MacBooks and Linux PC and a bunch of homelab servers too. here is my nix-config. Nix is becoming more and more popular, and we are participating in it.

Mawfyy commented 8 months ago

Nice article!

stottm commented 8 months ago

Correction: GNU GUIX does NOT use Nix.

GNU GUIX is very similar to NixOS but instead of a domain specific language, GUIX utilizes the full blown GNU Guile Scheme (a Lisp dialect). The GUIX package manager is known as Shepard. They both have atomic hashed packages in a store. GUIX is relatively new while Nix has been going for 20 years. Nix has many more packages available and a more active community creating and maintaining packages with significant automation from the Nix team. GUIX is worth exploring and comparing to Nix.

ryan4yin commented 8 months ago

@stottm Guix's README says:

GNU Guix is based on [[https://nixos.org/nix/][the Nix package manager]]. It implements the same package deployment paradigm, and in fact it reuses some of its code. Yet, different engineering decisions were made for Guix, as described below.

So I think it's no problem to say that Guix is based on the Nix package manager, and that's what I'm trying to say. I'm sorry that the words in the English version are not accurate enough because of translation problems(based on => relys on). I will adjust the content.

nick-walt commented 1 month ago

This is an excellent article. It would be fantastic if the Nix platform took some inspiration from Elm Lang, and the design discipline that has gone into the platform and its ecosystem, which results in the ultimate developer experience — "if it compiles, it works".

https://incrementalelm.com/if-it-compiles-it-works

Elm's package repository is also unique in the guarantees it provides and it would behove those with an interest to check it out: https://package.elm-lang.org/help/design-guidelines

There seems to be many aspects of Elm (Language, Compiler, Architecture , Runtime and Package Manager) which align closely with the values and goals of Nix and NixOS: https://guide.elm-lang.org/

The Nix project is indeed truly marvelous. Thanks for your excellent writing and focus on teaching.