184 lines
4 KiB
Nix
184 lines
4 KiB
Nix
{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.packages = with pkgs; [
|
|
bottom
|
|
cascadia-code
|
|
cmake
|
|
coreutils
|
|
curl
|
|
fira-code
|
|
gnupg
|
|
htop
|
|
imagemagick
|
|
iosevka-comfy.comfy
|
|
iosevka-comfy.comfy-motion-duo
|
|
jq
|
|
kubectl
|
|
nodejs_18
|
|
noto-fonts
|
|
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-05-17-2024";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "rechsteiner";
|
|
repo = "swift-ts-mode";
|
|
rev = "main";
|
|
hash = "sha256-OrJN33iaY/7IE7bRVw2i1xnnUfc3iznxeAFcxlibx5Q=";
|
|
};
|
|
})
|
|
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-05-12-2024";
|
|
src = pkgs.fetchFromGitHub {
|
|
owner = "copilot-emacs";
|
|
repo = "copilot.el";
|
|
rev = "main";
|
|
hash = "sha256-Knp36PtgA73gtYO+W1clQfr570bKCxTFsGW3/iH86A0=";
|
|
};
|
|
buildInputs = [
|
|
epkgs.dash
|
|
epkgs.editorconfig
|
|
epkgs.s
|
|
epkgs.f
|
|
];
|
|
})
|
|
]);
|
|
package = pkgs.emacs29;
|
|
};
|
|
|
|
git = {
|
|
enable = true;
|
|
userName = "Tobias Ostner";
|
|
userEmail = "tobias.ostner@gmail.com";
|
|
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;
|
|
}
|