2023-08-15 20:55:27 +02:00
|
|
|
{ config, pkgs, ... }:
|
|
|
|
let
|
|
|
|
#home-manager = builtins.fetchTarball "https://github.com/nix-community/home-manager/archive/master.tar.gz";
|
|
|
|
home-manager = (import ./nix/sources.nix).home-manager;
|
|
|
|
in
|
|
|
|
{
|
|
|
|
imports = [
|
|
|
|
(import "${home-manager}/nixos")
|
|
|
|
];
|
|
|
|
|
|
|
|
home-manager.users.yoda = {
|
|
|
|
/* The home.stateVersion option does not have a default and must be set */
|
2023-08-16 18:28:29 +02:00
|
|
|
/* https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion */
|
2023-08-15 20:55:27 +02:00
|
|
|
home.stateVersion = "23.05";
|
2023-08-16 18:28:29 +02:00
|
|
|
|
2023-08-15 20:55:27 +02:00
|
|
|
/* Here goes the rest of your home-manager config, e.g. home.packages = [ pkgs.foo ]; */
|
2023-08-28 17:17:01 +02:00
|
|
|
|
|
|
|
#home.username = "yoda";
|
|
|
|
#home.homeDirectory = "/home/yoda";
|
2023-08-15 20:55:27 +02:00
|
|
|
|
|
|
|
# Git config using Home Manager modules
|
|
|
|
programs.git = {
|
|
|
|
enable = true;
|
|
|
|
userName = "Daniel Langbein";
|
|
|
|
userEmail = "daniel@systemli.org";
|
|
|
|
aliases = {
|
|
|
|
st = "status";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
#services.gpg-agent = {
|
|
|
|
# enable = true;
|
|
|
|
# enableSshSupport = true;
|
|
|
|
# defaultCacheTtl = 1800;
|
|
|
|
#};
|
2023-08-28 17:17:01 +02:00
|
|
|
|
2023-08-28 17:52:35 +02:00
|
|
|
# TODO: See history.path below.
|
2023-08-28 17:17:01 +02:00
|
|
|
# xdg = {
|
|
|
|
# enable = true;
|
|
|
|
# #dataHome = "${config.xdg.home.homeDirectory}/.local/share";
|
|
|
|
# };
|
|
|
|
|
|
|
|
programs.zsh = {
|
|
|
|
enable = true;
|
|
|
|
shellAliases = {
|
|
|
|
#ll = "ls -l";
|
|
|
|
#update = "sudo nixos-rebuild switch";
|
|
|
|
};
|
|
|
|
history.size = 1000;
|
2023-08-28 17:52:35 +02:00
|
|
|
history.ignoreDups = true;
|
2023-08-28 17:17:01 +02:00
|
|
|
#history.ignoreAllDups = true;
|
2023-08-28 17:52:35 +02:00
|
|
|
|
|
|
|
# TODO:
|
|
|
|
# Currently, `config` is my NixOS config. However, I want to access Home Manager's `config`.
|
|
|
|
# I could change home-manager.users.yoda to be a function and take config as an argument there.
|
|
|
|
#history.path = "${config.xdg.dataHome}/.histfile";
|
|
|
|
|
|
|
|
oh-my-zsh = {
|
|
|
|
enable = true;
|
|
|
|
plugins = [ "git" "sudo" ];
|
|
|
|
#theme = "robbyrussell";
|
|
|
|
theme = "agnoster";
|
|
|
|
};
|
2023-08-28 17:17:01 +02:00
|
|
|
};
|
2023-08-15 20:55:27 +02:00
|
|
|
};
|
|
|
|
}
|