75 lines
1.6 KiB
Nix
75 lines
1.6 KiB
Nix
{ config, lib, pkgs, ... }:
|
|
let
|
|
inherit (pkgs.lib) mkIf optionals;
|
|
inherit (pkgs.stdenv) isLinux isDarwin;
|
|
in
|
|
{
|
|
|
|
imports = [
|
|
./bash
|
|
./git
|
|
./htop
|
|
./iterm2
|
|
./nvim
|
|
./powerline
|
|
./readline
|
|
./tmux
|
|
];
|
|
|
|
# Home Manager Config
|
|
home.username = "evanreichard";
|
|
home.homeDirectory = "/Users/evanreichard";
|
|
home.stateVersion = "22.05";
|
|
programs.home-manager.enable = true;
|
|
|
|
# Global Packages
|
|
home.packages = with pkgs; [
|
|
(nerdfonts.override { fonts = [ "Meslo" ]; })
|
|
bashInteractive
|
|
htop
|
|
k9s
|
|
kubectl
|
|
mosh
|
|
neofetch
|
|
python311
|
|
tldr
|
|
] ++ optionals isDarwin [
|
|
iterm2
|
|
] ++ optionals isLinux [];
|
|
|
|
# Misc Programs
|
|
programs.jq.enable = true;
|
|
programs.pandoc.enable = true;
|
|
|
|
# Misc Configuration
|
|
home.file.".sqliterc".text = ''
|
|
.headers on
|
|
.mode column
|
|
'';
|
|
|
|
# Darwin Spotlight Indexing Hack
|
|
home.activation = mkIf isDarwin {
|
|
copyApplications = let
|
|
apps = pkgs.buildEnv {
|
|
name = "home-manager-applications";
|
|
paths = config.home.packages;
|
|
pathsToLink = "/Applications";
|
|
};
|
|
in lib.hm.dag.entryAfter [ "writeBoundary" ] ''
|
|
baseDir="$HOME/Applications/Home Manager Apps"
|
|
if [ -d "$baseDir" ]; then
|
|
rm -rf "$baseDir"
|
|
fi
|
|
mkdir -p "$baseDir"
|
|
for appFile in ${apps}/Applications/*; do
|
|
target="$baseDir/$(basename "$appFile")"
|
|
$DRY_RUN_CMD cp ''${VERBOSE_ARG:+-v} -fHRL "$appFile" "$baseDir"
|
|
$DRY_RUN_CMD chmod ''${VERBOSE_ARG:+-v} -R +w "$target"
|
|
done
|
|
'';
|
|
};
|
|
|
|
# Darwin Spotlight Indexing Hack
|
|
disabledModules = [ "targets/darwin/linkapps.nix" ];
|
|
}
|