All Projects → ryantm → Home Manager Template

ryantm / Home Manager Template

Licence: cc0-1.0
A quick-start template for using home-manager in a more reproducible way.

Labels

Projects that are alternatives of or similar to Home Manager Template

Workshops
Stars: ✭ 47 (-35.62%)
Mutual labels:  nixos, nix
Configs
My configuration files
Stars: ✭ 26 (-64.38%)
Mutual labels:  nixos, nix
Nixpkgs
Nix Packages collection
Stars: ✭ 8,322 (+11300%)
Mutual labels:  nixos, nix
Awesome Nix
😎 A curated list of the best resources in the Nix community [[email protected]]
Stars: ✭ 388 (+431.51%)
Mutual labels:  nixos, nix
Snabblab Nixos
NixOS configuration for the Snabb Lab
Stars: ✭ 53 (-27.4%)
Mutual labels:  nixos, nix
Dotfiles
well-tailored NixOS & nix-darwin dotfiles
Stars: ✭ 63 (-13.7%)
Mutual labels:  nixos, nix
Nixsap
Stars: ✭ 23 (-68.49%)
Mutual labels:  nixos, nix
Devos
NixOS Framework
Stars: ✭ 338 (+363.01%)
Mutual labels:  nixos, nix
Nixos Config
NixOS configurations for server and desktop systems, including user specific config. with Home Manager
Stars: ✭ 30 (-58.9%)
Mutual labels:  nixos, nix
Fenix
Rust nightly toolchains and rust analyzer nightly for nix [[email protected]]
Stars: ✭ 29 (-60.27%)
Mutual labels:  nixos, nix
Idempotent Desktop
🛸 NixOS, Xmonad, Neovim
Stars: ✭ 51 (-30.14%)
Mutual labels:  nixos, nix
Nix Home
Nix home environment
Stars: ✭ 38 (-47.95%)
Mutual labels:  nixos, nix
Dotfiles
And I say hey, what's going on?
Stars: ✭ 348 (+376.71%)
Mutual labels:  nixos, nix
Nix Dotfiles
My personal nix and nixos configuration
Stars: ✭ 48 (-34.25%)
Mutual labels:  nixos, nix
Nixos Generators
Collection of image builders [[email protected]]
Stars: ✭ 355 (+386.3%)
Mutual labels:  nixos, nix
Kevin Nix
NixOS for the Samsung Chromebook Plus (kevin)
Stars: ✭ 18 (-75.34%)
Mutual labels:  nixos, nix
Morph
NixOS deployment tool
Stars: ✭ 303 (+315.07%)
Mutual labels:  nixos, nix
Cachix
Command line client for Nix binary cache hosting:
Stars: ✭ 322 (+341.1%)
Mutual labels:  nixos, nix
Nixops
NixOps is a tool for deploying to NixOS machines in a network or cloud.
Stars: ✭ 838 (+1047.95%)
Mutual labels:  nixos, nix
Nix Examples
Showcase of Nix usage for various technologies
Stars: ✭ 31 (-57.53%)
Mutual labels:  nixos, nix

home-manager template

This provides a quick-start template for using home-manager in a more reproducible way. You don't have to install home-manager, and it uses pinning.

Why?

home-manager is a great way to manage user-specific configuration ("dotfiles") in a reproducible way. This template takes reproducibility another step by making it so you do not need to install home-manager to use it, and do not need to install home-manager configuration files in a specific place.

Also, since this uses niv to pin nixpkgs and home-manager, you do not need nixpkgs on your path and can be sure the build will be the same on any computer.

Prerequisites

You must have nix installed on your machine.

curl -L https://nixos.org/nix/install | sh

Tutorial

  1. Click the "Use this template" button on GitHub

  2. Clone your repository onto the computer you want to configure

  3. Update dependencies (home-manager and nixpkgs) to the latest version:

    ./update-dependencies.sh
    

    which is just shorthand for:

    nix-shell --run "niv update"
    
  4. Edit ./home.nix to be how you want it.

  5. Run the switch script to switch to your configuration:

    ./switch.sh
    

    which is just shorthand for:

    nix-shell --run "home-manager switch"
    

Caveats

Since we do not install home-manager, you need to let home-manager manage your shell, otherwise it will not be able to add its hooks to your profile, e.g. no shell variables will get set by home-manager. Please consult home-manager documentation for exact required steps.

Also since we do not install home-manager, you cannot run the home-manager script from any directory and expect it to work. It must be run from within the nix-shell. (This is actually a feature!)

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].