nix-config/homes/aarch64-darwin/marshall@canis/default.nix
2024-08-12 19:53:56 -04:00

108 lines
2.8 KiB
Nix

{
pkgs,
inputs,
...
}: {
imports = with inputs; [
nix-index-database.hmModules.nix-index
catppuccin.homeManagerModules.catppuccin
chaotic.homeManagerModules.default
nix-colors.homeManagerModules.default
];
snowfallorg.user = {
enable = true;
name = "marshall";
};
home = {
packages = with pkgs;
[
alejandra
bit
cargo-edit
cargo-udeps
cmake
duf
eternal-terminal
grc
huniq
hurl
igrep
keybase
keychain
monolith
nix-output-monitor
nix-prefetch-scripts
nixd
nodePackages_latest.nodejs
nurl
pinentry_mac
pkg-config
pnpm
rm-improved
rnr
slack
stylua
tailspin
tokei
typst
typst-live
typstfmt
unrar
unzip
upx
vgrep
wget
xcp
xh
]
++ (with inputs; [nixvim.packages.${pkgs.system}.default]);
stateVersion = "24.05";
};
programs = {
bacon.enable = true;
btop.enable = true;
bun.enable = true;
gpg.enable = true;
skim.enable = false;
tealdeer.enable = false;
wezterm.extraConfig = builtins.readFile ./wezterm.lua;
emacs.package = with pkgs;
emacs29-pgtk.overrideAttrs (old: {
patches =
(old.patches or [])
++ [
# Fix OS window role (needed for window managers like yabai)
(fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/fix-window-role.patch";
sha256 = "0c41rgpi19vr9ai740g09lka3nkjk48ppqyqdnncjrkfgvm2710z";
})
# Use poll instead of select to get file descriptors
(fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/poll.patch";
sha256 = "0j26n6yma4n5wh4klikza6bjnzrmz6zihgcsdx36pn3vbfnaqbh5";
})
# Enable rounded window with no decoration
(fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-29/round-undecorated-frame.patch";
sha256 = "0x187xvjakm2730d1wcqbz2sny07238mabh5d97fah4qal7zhlbl";
})
# Make Emacs aware of OS-level light/dark mode
(fetchpatch {
url = "https://raw.githubusercontent.com/d12frosted/homebrew-emacs-plus/master/patches/emacs-28/system-appearance.patch";
sha256 = "14ndp2fqqc95s70fwhpxq58y8qqj4gzvvffp77snm2xk76c1bvnn";
})
];
});
git = {
extraConfig.credential.helper = "osxkeychain";
signing.key = "874E22DF2F9DFCB5";
};
};
}