nix/home.nix

104 lines
2.3 KiB
Nix
Raw Normal View History

2022-11-30 19:12:27 +00:00
{ config, lib, pkgs, ... }:
let
inherit (pkgs.lib) mkIf optionals;
inherit (pkgs.stdenv) isLinux isDarwin;
in
2022-11-15 17:32:46 +00:00
{
2022-11-25 16:30:22 +00:00
imports = [
./bash
2022-12-02 23:42:53 +00:00
./direnv
2025-01-09 17:01:35 +00:00
./ghostty
2022-11-25 16:30:22 +00:00
./git
2022-11-30 19:35:03 +00:00
./htop
2025-01-09 17:46:41 +00:00
./fastfetch
2022-11-25 16:30:22 +00:00
./nvim
./powerline
./readline
];
2022-11-15 17:32:46 +00:00
# Home Manager Config
home.username = "evanreichard";
home.homeDirectory = "/Users/evanreichard";
2025-01-09 17:01:35 +00:00
home.stateVersion = "24.11";
2022-11-15 17:32:46 +00:00
programs.home-manager.enable = true;
# Global Packages
2022-11-25 16:30:22 +00:00
home.packages = with pkgs; [
2022-12-01 16:38:15 +00:00
(nerdfonts.override { fonts = [ "Meslo" ]; })
android-tools
2024-04-26 15:39:10 +00:00
awscli2
2022-11-25 16:30:22 +00:00
bashInteractive
2024-06-10 11:24:38 +00:00
cw
2025-01-09 17:01:35 +00:00
# ghostty - Pending Darwin @ https://github.com/NixOS/nixpkgs/pull/369788
gitAndTools.gh
2022-12-06 23:27:25 +00:00
google-cloud-sdk
2022-12-10 17:27:51 +00:00
imagemagick
2022-11-25 16:30:22 +00:00
kubectl
2024-06-16 14:57:42 +00:00
kubernetes-helm
2022-11-25 16:30:22 +00:00
mosh
2025-01-09 17:46:41 +00:00
fastfetch
2022-12-10 17:27:51 +00:00
pre-commit
2022-11-25 16:30:22 +00:00
python311
2024-05-09 20:30:33 +00:00
ssm-session-manager-plugin
2025-01-09 17:01:35 +00:00
texliveSmall # Pandoc PDF Dep
2024-07-25 16:29:25 +00:00
thefuck
2022-11-25 16:30:22 +00:00
tldr
2025-01-09 17:01:35 +00:00
]
++ optionals isDarwin [ ]
++ optionals isLinux [ ];
2022-11-15 17:32:46 +00:00
# GitHub CLI
programs.gh = {
enable = true;
settings = {
git_protocol = "ssh";
};
};
2022-11-30 19:12:27 +00:00
# Misc Programs
programs.htop.enable = true;
2022-11-15 17:32:46 +00:00
programs.jq.enable = true;
programs.k9s.enable = true;
2022-11-15 17:32:46 +00:00
programs.pandoc.enable = true;
2024-01-17 15:17:22 +00:00
# Enable Flakes & Commands
nix = {
package = pkgs.nix;
extraOptions = ''experimental-features = nix-command flakes'';
};
2023-08-31 13:03:45 +00:00
# SQLite Configuration
2022-11-30 19:12:27 +00:00
home.file.".sqliterc".text = ''
.headers on
.mode column
'';
# Darwin Spotlight Indexing Hack
2025-01-09 17:01:35 +00:00
# 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
# '';
# };
2022-11-30 19:12:27 +00:00
# Darwin Spotlight Indexing Hack
disabledModules = [ "targets/darwin/linkapps.nix" ];
2022-11-15 17:32:46 +00:00
}