impermanence
nixos-config
Our great sponsors
impermanence | nixos-config | |
---|---|---|
32 | 35 | |
840 | 894 | |
10.8% | - | |
5.9 | 9.9 | |
about 1 month ago | 8 days ago | |
Nix | Nix | |
MIT License | BSD 3-clause "New" or "Revised" License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
impermanence
-
Silverblue users: why?
This is indeed a blind spot. Thanks for pointing that out! Silverblue -to my knowledge- doesn't do a lot to address this. Though, 3rd-party tools like Home Manager and the suite of applications developed by the folks over at uBlue might be able to limit this to a minimum. Though I'm not sure if it surpasses NixOS in this regard; for the uninitiated. Though, to my knowledge, this requires special attention and depends on the specifics of the NixOS system in question.
- NixOS for the Impatient
-
Interested in NixOS, have some questions
Some files in /etc (like saved networks) will still not be managed by NixOS, if you want to have full control over them use Impermanence
-
Upgrading to NixOS 22.11 Issue
{ imports = [ (modulesPath + "/installer/scan/not-detected.nix") "${builtins.fetchGit { url = "https://github.com/NixOS/nixos-hardware.git"; }}/system76" "${builtins.fetchGit { url = "https://github.com/nix-community/impermanence.git"; }}/nixos.nix" ];
-
Good guides for a non-developer using NixOS?
There is a maintained collection of modules for running this kind of NixOS setup. It's called impermanence.
-
48hrs with Fedora Silverblue and I'm SOLD. Question: does anyone else use a volatile home ?
https://grahamc.com/blog/erase-your-darlings https://nixos.org/ https://github.com/nix-community/home-manager https://github.com/nix-community/impermanence
-
First post, here's my home lab and how I use it every day (running Proxmox and NixOS)
I'm also fascinated by the idea of completely decoupling the state from the configuration using https://github.com/nix-community/impermanence. If you can get your system working without leftover state sticking around, and continuously back up the state you do have, you're almost guaranteed to have a fully working environment at all times.
-
First post, here's what my homelab does running Proxmox and NixOS
Drop Proxmox for vanilla NixOS + kvm. Working towards impermanence to manage persistent state everywhere.
-
Nix: Taming Unix with Functional Programming
docs nixos: https://nixos.org/manual/nixos/stable/
This tooling includes higher-level helpers for language-/environment-specific packaging, like "buildGoModule", "buildRustPackage" and so on, as well as e.g. tooling to run integration tests in a whole cluster of inter-connected linux VMs!
Packages which are submitted to nixpkgs must fulfill certain criteria, such as not using "IFD" (input-from-derivation, to simplify: "letting nix evaluate nix-code which was generated by another deriviation/"nix package".
nixpkgs is alive and well with lots of daily contribution and an everlasting effort to keep Hydra, the nix-specific CI/CD system and public binary caches up to date and responsive. Thanks to all maintainers & contributors!
* flakes are an approach to standardize a way to package nix code outside of nixpkgs but to still keep it re-usable. They are still "experimental" as the details are figured out, but nevertheless used in production. There are some frame-works to keep boilerplate low, like "flake-utils", "flake-parts" and others, as well as e.g. deployment tools like "colmena" and "deploy-rs" and re-usable helpers for system-configuration like e.g. https://github.com/nix-community/impermanence
There's lots of other stuff in the community, things like home-manager, direnv + flakes and devshells changed my workflow fundamentally to the better since I've switched. If you got the time and are still interested, join us on matrix or elsewhere :)
-
How can you keep a Linux installation tidy and minimal?
I haven't set this up for my personal machines yet but you can trivially use a tmpfs as your / and then use impermanence to explicitly opt into stateful files and directories that you want to keep across reboots like login passwords, host keys etc.
nixos-config
-
Going declarative on macOS with Nix and Nix-Darwin
Here's my flake that does it: https://github.com/dustinlyons/nixos-config/blob/main/flake....
I’ve been using Nix directly on MacOS with minimal issues for a few years now. Works great.
I hate using docker on Mac and have since replaced it with flakes and devenv.
My configuration with a step by step guide (600+ stars): https://github.com/dustinlyons/nixos-config
Yes, but he runs a NixOS VM inside MacOS, which is still very nice, but not what the article describes.
Here's my configuration (600+ stars) running Nix on MacOS and NixOS at the same time, if it's helpful: https://github.com/dustinlyons/nixos-config
This enables me to work at a desktop and be portable with my Macbook with essentially the same configuration and enables MacOS to feel more akin to a Linux machine (as close as I can get it).
-
Flakes aren't real and cannot hurt you: using Nix flakes the non-flake way
I tried to make Nix as easy to adopt as possible by creating Nix commands and a step by step guide: https://github.com/dustinlyons/nixos-config
I love Nix. I use it every day to manage multiple local dev environments. And I use devenv instead of docker for sharing project-specific environments with others.
-
2024-01-01 Emacs News
Felt (still am, actually) this problem too. Started with the same approach (Vanilla Emacs) a few years back in order to really learn the ins-and-outs after giving DOOM and others a shot and feeling like I didn't have the faintest what was really going on with all the magic. I somehow did end up falling in love with Emacs again[^1].
Won't lie... there was a fair amount of cursing involved and, despite the love, I wouldn't recommend many to venture down this road[^2].
Now I have gone the literate config way in my dotfiles https://github.com/vidbina/dotfiles/tree/main/emacs and I jump between Cursor (vscode-based), Neovim and Emacs for different tasks on a daily. I also found dustinlyons/nixos-config (https://github.com/dustinlyons/nixos-config/blob/main/module...) just a few days ago and figured that could be a fun resource when you're building yours up.
Take it as a hobby. There are a bunch of nice things that I picked up from Emacs (a. literate configs, b. comfort around working with LISPs, c. bigger appreciation for parts of the GNU ecosystem, d. more in-depth understanding of how my editor works which helps me debug issues in Neovim or vscode when I see them) but I still think that I'm cursed by wanting to go down this road so badly. Wish I could just vscode my way through live and build dope stuff, unencumbered.
1: Used Emacs heavily in college over 12 years ago when I would boot the Windows + Novell groupware school computers into my own Ubuntu config with my Emacs and embedded dev toolchain from my pendrive.
2: The single-threaded-ness and related ocassional unresponsiveness/hangups still grind my gears.
-
Adding a Mac to my flake
Here is my flake using home manager on Mac: https://github.com/dustinlyons/nixos-config
-
Nix Survival Mode: macOS upgrades won't break Nix anymore
What do I need to do to switch from an official Nix install to using nix-installer on macOS? Just uninstall the current nix and install using nix-installer?
My config is loosely based off https://github.com/dustinlyons/nixos-config if this matters. Using nix-darwin.
Yep, and we now have nix-homebrew, which installs homebrew for you as a flake input. Taps are also flake inputs so your apps versions get declaratively managed/locked too!
Here’s how I do it: https://github.com/dustinlyons/nixos-config/blob/main/flake....
-
Thinking about buying a macbook, does Emacs work well?
My configuration uses Nix.
-
Ask HN: Could you show your personal blog here?
Not my personal notes, but how I do my writing and organize my thoughts. This is my Nix configuration that powers my Macbook, Linux PC, and home lab server. Emacs + org-roam to capture everything. https://github.com/dustinlyons/nixos-config
What are some alternatives?
home-manager - Manage a user environment using Nix [maintainer=@rycee] [Moved to: https://github.com/nix-community/home-manager]
nix-config - Nix configurations
nixpkgs - My Nix system configs!
raspi-overlayroot - Protect your SD card against wear and tear
nix-config - :space_invader: NixOS configuration
dotfiles - My personal dotfiles
nix-prisma-example - An example Prisma project using nix
nix-config - Personal nixos and home-manager configurations.
nix-embedded - Nix embedded image generator.
guix-config - Literate configuration for Guix Linux ⛰️
Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]
dotfiles - My PC Dotfiles & Website