All Projects → fzakaria → nix-home

fzakaria / nix-home

Licence: other
A nix home development environment

Programming Languages

shell
77523 projects
Nix
1067 projects

Projects that are alternatives of or similar to nix-home

dotfiles
No place like ~. Nix. All. The. Things.
Stars: ✭ 48 (+200%)
Mutual labels:  nix, home-manager
nixpkgs
My Nix system configs!
Stars: ✭ 143 (+793.75%)
Mutual labels:  nix, home-manager
dotfiles
My NixOS dotfiles
Stars: ✭ 21 (+31.25%)
Mutual labels:  nix, home-manager
homeage
runtime decrypted age secrets for nix home manager
Stars: ✭ 43 (+168.75%)
Mutual labels:  nix, home-manager
impermanence
Modules to help you handle persistent state on systems with ephemeral root storage [maintainer=@talyz]
Stars: ✭ 401 (+2406.25%)
Mutual labels:  nix, home-manager
nyx
⚙️Nix[OS] Configuration
Stars: ✭ 50 (+212.5%)
Mutual labels:  nix, home-manager
system
Declarative NixOS system configuration for all my machines
Stars: ✭ 14 (-12.5%)
Mutual labels:  nix, home-manager
elemental
Elemental, the component parts of a Nix/OS development system.
Stars: ✭ 44 (+175%)
Mutual labels:  nix, home-manager
laptop
💻 Handy Dandy macOS Environment Setup
Stars: ✭ 41 (+156.25%)
Mutual labels:  nix, development-environment
nixify
Bootstrap nix-shell environments
Stars: ✭ 25 (+56.25%)
Mutual labels:  nix, development-environment
nix-rice
A library to functionally define your configuration and theme (rice) with Nix
Stars: ✭ 43 (+168.75%)
Mutual labels:  nix, home-manager
nix-xdg
[WIP] Nix overlay for making programs xdg compliant
Stars: ✭ 18 (+12.5%)
Mutual labels:  nix, home-manager
base16.nix
Quickly theme programs in your favourite base16 colorscheme
Stars: ✭ 61 (+281.25%)
Mutual labels:  nix, home-manager
dotfiles
NixOS system config & Home-Manager user config
Stars: ✭ 43 (+168.75%)
Mutual labels:  nix, home-manager
nix-home
A Nix Home Manager setup. I've now moved to a new configuration system at hugoreeves/elemental
Stars: ✭ 60 (+275%)
Mutual labels:  nix, home-manager
dotnix
Shackled within an elaborate prison of my own design.
Stars: ✭ 35 (+118.75%)
Mutual labels:  nix, home-manager
dotfiles
My personal dotfiles
Stars: ✭ 71 (+343.75%)
Mutual labels:  nix, home-manager
dconf2nix
🐾 Convert Dconf files (e.g. Gnome Shell) to Nix, as expected by Home Manager
Stars: ✭ 51 (+218.75%)
Mutual labels:  nix, home-manager
nix-configs
My Nix{OS} configuration files
Stars: ✭ 54 (+237.5%)
Mutual labels:  nix, home-manager
nix-config
A collection of my system configs and dotfiles
Stars: ✭ 35 (+118.75%)
Mutual labels:  nix, home-manager

Nix Home

Welcome to a development environment using Nix; specifically with HomeManager.

Nix

Nix is a totally different way of managing packages & dependencies on your machine from all other package managers: homebrew, apt, yum etc..

If you want the official explanation on what Nix does better please read why you should give it a try.

Nix is a purely functional package manager. This means that it treats packages like values in purely functional programming languages such as Haskell — they are built by functions that don’t have side-effects, and they never change after they have been built. - About Nix

Getting Started

You can git clone this repository wherever you'd like!

$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
$ nix-channel --update
# add to your shell startup
$ export NIX_PATH=$HOME/.nix-defexpr/channels:/nix/var/nix/profiles/per-user/root/channels${NIX_PATH:+:$NIX_PATH}
$ nix-shell '<home-manager>' -A install

Backup Files

Athough this tool will try it's best not to clobber any files outside it's management; it's best just to backup any files before on-boarding.

mv ~/.zshrc ~/.zshrc.bak
mv ~/.gitconfig ~/.gitconfig.bak
mv ~/.p10k.zsh ~/.p10k.zsh.bak
mv ~/.rbenv ~/.rbenv.bak
mv ~/.config/htop/htoprc ~/.config/htop/htoprc.bak
mv ~/.ssh/config ~/.ssh/config.bak
mv ~/.tmux.conf ~/.tmux.conf.bak
mv ~/.tmux.conf.local ~/.tmux.conf.local.bak
mv ~/.vimrc ~/.vimrc.bak

Updating

Subsequent updating to the repository can be reflected in your system by simply running ./bin/switch

Uninstall

You can uninstall by running:

# remove the . "$HOME/.nix-profile/etc/profile.d/nix.sh" line in your ~/.profile or ~/.bash_profile
rm -rf $HOME/{.nix-channels,.nix-defexpr,.nix-profile,.config/nixpkgs}
rm -rf /nix

Don't forget to move back all your backup dotfiles!

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].