This is my home-manager configuration.
It configures basically all CLI tools I want and is split into modules that can be enabled/disabled as needed.
The flake provides a home-manager module, which can be imported in an existing config.
Add this input to your flake.nix
:
homecfg = {
url = "github:clemak27/homecfg";
};
Add it as module to your homeManagerConfiguration
:
modules = [
homecfg.hmModules.homecfg
...
];
For local development/changes to homecfg
, use the absolute path to the checked
out git repo when switching config, e.g.
home-manager switch --flake . --impure --override-input homecfg 'path:<path-to-homecfg>'"
The versions of nixpkgs
included here might not be up-to-date. It is suggested
to pin the versions to whatever you use in your flake like this:
nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
home-manager = {
url = "github:nix-community/home-manager/master";
inputs.nixpkgs.follows = "nixpkgs";
};
homecfg = {
url = "github:clemak27/homecfg";
inputs.nixpkgs.follows = "nixpkgs";
inputs.home-manager.follows = "home-manager";
};
If running on non NixOS systems, you need to add this to your .zshrc
:
". $HOME/.nix-profile/etc/profile.d/nix.sh"
"export GIT_SSH=/usr/bin/ssh"