nix/home-mods/dev/default.nix

133 lines
2.4 KiB
Nix
Raw Normal View History

2023-10-05 17:45:31 +02:00
{
lib,
pkgs,
config,
inputs,
...
}: {
programs.alacritty = {
enable = true;
settings = {
window.opacity = 0.88;
window.dimensions = {
lines = 40;
columns = 150;
};
};
};
home.sessionVariables = {
TERMINAL = "alacritty";
};
programs.fish = {
enable = true;
interactiveShellInit = ''
any-nix-shell fish --info-right | source
direnv hook fish | source
'';
loginShellInit = ''
direnv hook fish | source
'';
functions = {
ec = "emacsclient $argv";
ecc = "emacsclient -c $argv";
ecr = "emacsclient -r $argv";
ecrr = "emacsclient -r $argv";
};
};
programs.git = {
enable = true;
userName = "Tristan Druyen";
userEmail = "tristan@vault81.de";
aliases = {
ci = "commit";
co = "checkout";
s = "status";
};
extraConfig = {
user.signingkey = "/home/tristand/.ssh/id_ed25519";
commit.gpgsign = true;
gpg.format = "ssh";
};
};
programs.nix-index = {
enable = true;
enableFishIntegration = true;
};
programs.ssh = {
enable = true;
matchBlocks = {
"he3" = {
host = "he3";
hostname = "he3.vault81.de";
user = "root";
identityFile = "~/.ssh/id_hetz_ed25519";
};
"he2" = {
host = "he2";
hostname = "he2.vault81.de";
user = "root";
identityFile = "~/.ssh/id_v81_ed25519";
};
"desk-arch" = {
host = "desk-arch";
hostname = "tristan-desk-arch";
user = "tristand";
identityFile = "~/.ssh/id_v81_ed25519";
};
};
};
programs.gpg = {
enable = true;
};
services.gpg-agent = {
enable = true;
enableExtraSocket = true;
enableSshSupport = true;
};
services.lorri.enable = true;
services.emacs = {
enable = true;
defaultEditor = true;
package = pkgs.emacs-unstable-pgtk;
};
home.packages = with pkgs; [
any-nix-shell
atool
aspell
aspellDicts.en
aspellDicts.en-computers
aspellDicts.en-science
aspellDicts.de
binutils
cmake
direnv
fd
gnutls
gnumake
gcc
imagemagick
pandoc
libtool
(lib.mkIf (config.services.gpg-agent.enable)
pinentry_emacs)
(ripgrep.override {withPCRE2 = true;})
rnix-lsp
texlive.combined.scheme-full
zstd
];
}