home-manager VS nixos-flake-example

Compare home-manager vs nixos-flake-example and see what are their differences.

home-manager

Manage a user environment using Nix [maintainer=@rycee] [Moved to: https://github.com/nix-community/home-manager] (by rycee)

nixos-flake-example

This is a demo NixOS config, with optional flakes support. Along with notes on why flakes is useful and worth adopting. (by colemickens)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
home-manager nixos-flake-example
4 3
1,753 166
- -
9.1 1.8
about 3 years ago almost 3 years ago
Nix Nix
MIT License -
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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.

home-manager

Posts with mentions or reviews of home-manager. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-22.
  • [Help] Home-manager service?
    2 projects | /r/NixOS | 22 Apr 2023
    I really am at lost rn, foud this github issue tried the solution and it didn't work.
  • NixOS and Neovim plugins
    3 projects | /r/NixOS | 24 Oct 2022
  • Flakes, nixos and home-configuration help
    2 projects | /r/NixOS | 7 May 2022
    { config, pkgs, ... }: { imports = [ (import "${builtins.fetchTarball https://github.com/rycee/home-manager/archive/master.tar.gz}/nixos") ]; users.users = { jdoe = { isNormalUser = true; initialPassword = "1234"; extraGroups = [ "wheel" ]; }; }; home-manager.useUserPackages = true; home-manager.users.jdoe = { home.stateVersion = "21.11"; programs.home-manager.enable = true; programs.git.userName = "John"; programs.git.userEmail = "Doe"; programs.zsh.zplug = { enable = true; plugins = [ { name = "zsh-users/zsh-autosuggestions"; } { name = "romkatv/powerlevel10k"; tags = [ as:theme depth:1 ]; } { name = "ohmyzsh/ohmyzsh oh-my-zsh"; } { name = "ajeetdsouza/zoxide"; } { name = "marlonrichert/zsh-autocomplete"; } { name = "marlonrichert/zsh-edit"; } { name = "zsh-users/zsh-autosuggestions"; } { name = "ptavares/zsh-exa"; } { name = "zsh-users/zsh-syntax-highlighting"; } { name = "mbenford/zsh-tmux-auto-title"; } { name = "zsh-users/zsh-history-substring-search"; } ]; }; services.gpg-agent = { enable = true; defaultCacheTtl = 1800; enableSshSupport = true; }; }; }
  • How do I do declarative package management using nix package manager on Debian?
    2 projects | /r/NixOS | 6 Jan 2021
    There are multiple ways of managing declarative profiles. 1) Attrset, compatible with imperative use of nix-env https://git.io/fAQHW ; 2) buildEnv, providing more control over the paths that are linked into the profile https://git.io/fp0aU ; 3) home-manager, providing nixos-like config for your ~ https://github.com/rycee/home-manager

nixos-flake-example

Posts with mentions or reviews of nixos-flake-example. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-12-01.
  • Tvix: We Are Rewriting Nix
    6 projects | news.ycombinator.com | 1 Dec 2021
    There are some technical objections to the design of flakes, but the controversy in the community is primarily social imo.

    The reading I'd recommend as someone sympathetic to both 'sides' isn't really a technical comparison, but this: https://grahamc.com/blog/flakes-are-an-obviously-good-thing

    As far as technical pros and cons, it's worth looking at colemickens' PoC demonstrating that in principle, you can use Nix to generate literally identical output with and without flakes: https://github.com/colemickens/nixos-flake-example

  • How can I pass other stuff to modules in NixOS?
    1 project | /r/NixOS | 7 Jun 2021
    My limited knowledge of flakes for my system comes mostly from https://github.com/colemickens/nixos-flake-example/
  • Using a local nixpkgs repo for packages
    1 project | /r/NixOS | 15 Apr 2021

What are some alternatives?

When comparing home-manager and nixos-flake-example you can also consider the following projects:

nixpkgs-wayland - Automated, pre-built packages for Wayland (sway/wlroots) tools for NixOS. [maintainers=@colemickens, @Artturin]

Home Manager using Nix - Manage a user environment using Nix [maintainer=@rycee]

rust-nix-template - Rust project template with Nix (Flakes) and VSCode support

fenix - Rust toolchains and rust-analyzer nightly for Nix [maintainer=@figsoda]

impermanence - Modules to help you handle persistent state on systems with ephemeral root storage [maintainer=@talyz]

dotfiles - My personal dotfiles

nixos-vscode-server - Visual Studio Code Server support in NixOS

bdwgc - The Boehm-Demers-Weiser conservative C/C++ Garbage Collector (bdwgc, also known as bdw-gc, boehm-gc, libgc)

gitignore.nix - Nix functions for filtering local git sources

nixpkgs - Nix Packages collection & NixOS

nix - Nix, the purely functional package manager