dotfiles/nix/module/home-manager.nix
2024-07-07 10:38:10 +02:00

191 lines
4.2 KiB
Nix

{email}: {pkgs, ...}: {
home.file.".emacs.d/early-init.el".source = ../config/emacs/early-init.el;
home.file.".emacs.d/tree-sitter/libtree-sitter-swift.dylib".source = ../config/emacs/tree-sitter/libtree-sitter-swift.dylib;
home.file.".clojure/deps.edn".source = ../config/clojure/deps.edn;
home.language = {
base = "en_US.utf8";
numeric = "de_DE.utf8";
time = "de_DE.utf8";
measurement = "de_DE.utf8";
};
home.packages = with pkgs; [
bottom
cascadia-code
cmake
coreutils
curl
fira-code
gnupg
htop
imagemagick
iosevka-comfy.comfy
iosevka-comfy.comfy-motion-duo
jq
kubectl
noto-fonts
nixd
pass
python311Packages.python-lsp-server
ripgrep
texliveMedium
tree
wget
];
home.stateVersion = "24.05";
home.sessionVariables = {
PAGER = "less";
CLICOLOR = 1;
EDITOR = "emacs";
LOGSEQ_DIR = "~/Logseq/Me/";
};
programs = {
direnv = {
enable = true;
enableZshIntegration = true;
nix-direnv.enable = true;
};
emacs = {
enable = true;
extraConfig = builtins.readFile ../config/emacs/init.el +
builtins.readFile ../config/emacs/lisp/utils.el;
extraPackages = epkgs: (with epkgs; [
ace-window
avy
cape
cider
clj-refactor
clojure-mode
consult
corfu
dash
diff-hl
dired-preview
dockerfile-mode
editorconfig
ef-themes
envrc
exec-path-from-shell
f
flycheck
flycheck-clj-kondo
flycheck-swiftlint
gptel
git-link
graphql-mode
helpful
js2-mode
json-mode
ligature
minions
multiple-cursors
nerd-icons
nerd-icons-completion
nerd-icons-corfu
nerd-icons-dired
nerd-icons-ibuffer
ob-restclient
ob-swift
olivetti
orderless
org
org-modern
ox-gfm
pulsar
rainbow-delimiters
rainbow-mode
restclient
s
smartparens
so-long
swift-mode
(trivialBuild {
pname = "swift-ts-mode";
version = "main-07-05-2024";
src = pkgs.fetchFromGitHub {
owner = "rechsteiner";
repo = "swift-ts-mode";
rev = "5e198d306bd4d49e4dddab39195fe99e1caf8892";
hash = "sha256-c7AAFuaDbufMpzJtJ2PbRRXFJmo1y4L50T0idzxrvao=";
};
})
super-save
terraform-mode
treesit-auto
yaml-mode
vterm
fontaine
magit
magit-todos
marginalia
modus-themes
nix-mode
vertico
(trivialBuild {
pname = "copilot.el";
version = "main-07-05-2024";
src = pkgs.fetchFromGitHub {
owner = "copilot-emacs";
repo = "copilot.el";
rev = "e15bafa95b39091dbb2a99ad62e42f03a8d78f01";
hash = "sha256-jKm+oVMadHyeG93VFU3JG3qNROOJPDXs7w2pIO/2IyM=";
};
buildInputs = [
epkgs.dash
epkgs.editorconfig
epkgs.s
epkgs.f
];
})
]);
package = pkgs.emacs29;
};
git = {
enable = true;
userName = "Tobias Ostner";
userEmail = email;
extraConfig = {
init.defaultBranch = "main";
pull.rebase = true;
rebase.updateRefs = true;
};
};
kitty = {
enable = true;
extraConfig = ''
${builtins.readFile ../config/kitty/kitty.conf}
${builtins.readFile ../config/kitty/dracula.conf}
'';
};
starship = {
enable = true;
enableZshIntegration = true;
settings = {
gcloud.disabled = true;
aws.disabled = true;
hostname.style = "bold green";
};
};
zsh = {
enable = true;
enableCompletion = true;
autosuggestion.enable = true;
initExtra = builtins.readFile ../config/zsh/zshrc;
syntaxHighlighting.enable = true;
shellAliases = {
ls = "ls --color=auto -F";
};
};
};
xdg.configFile."amethyst/amethyst.yml".text = builtins.readFile ../config/amethyst/amethyst.yml;
}