The Meowgorithm Dotfiles, Collectors’ Edition
{
config,
pkgs,
lib,
...
} @ inputs: let
note = name: "\n\n# --- ${name} ---\n\n";
readIntoVar = varName: path:
"rc=\"$(cat <<EOF\n"
+ builtins.readFile path
+ "EOF\n"
+ ")\"\n\n";
in {
home.packages = with pkgs; [
bashInteractive
];
programs.bash = {
enable = true;
enableCompletion = true;
historyControl = ["ignoredups" "erasedups"];
historyIgnore = ["ls" "cd" "exit"];
sessionVariables =
{
EDITOR = "nvim";
PROMPT_DIRTRIM = "2";
XDG_DATA_DIRS = "$HOME/.nix-profile/share:$XDG_DATA_DIRS"; # necessary for completion
XDG_DATA_HOME = "$HOME/.local/share";
GIT_PS1_SHOWDIRTYSTATE = "true";
GIT_PS1_SHOWUNTRACKEDFILES = "true";
GIT_PS1_SHOWSTASHSTATE = "true";
POP_DEFAULT_FROM = "christian@rocha.is";
}
// (
if pkgs.stdenv.isDarwin
then {}
else {
HARDWARECLOCK = "localtime";
BASH_ENV = "$HOME/.bashrc";