summaryrefslogtreecommitdiff
path: root/modules/home-manager/core
diff options
context:
space:
mode:
Diffstat (limited to 'modules/home-manager/core')
-rw-r--r--modules/home-manager/core/default.nix74
-rw-r--r--modules/home-manager/core/helix.nix42
2 files changed, 116 insertions, 0 deletions
diff --git a/modules/home-manager/core/default.nix b/modules/home-manager/core/default.nix
new file mode 100644
index 0000000..9c33f66
--- /dev/null
+++ b/modules/home-manager/core/default.nix
@@ -0,0 +1,74 @@
+{ pkgs, inputs, ... }:
+{
+
+ imports = [
+ ./helix.nix
+ ./shell.nix
+ ];
+
+ home.packages = [
+ pkgs.gnumake
+ pkgs.git-crypt
+ pkgs.bitwarden-cli
+
+ pkgs.fd
+ pkgs.glow
+ pkgs.eza
+
+ pkgs.nixfmt-rfc-style
+ inputs.nil.packages."${pkgs.system}".nil
+ ];
+
+ programs.ripgrep.enable = true;
+ programs.btop.enable = true;
+
+ programs.zoxide = {
+ enable = true;
+ options = [ "--cmd cd" ];
+ };
+ programs.fzf.enable = true;
+
+ programs.direnv = {
+ enable = true;
+ nix-direnv.enable = true;
+ };
+
+ programs.git = {
+ enable = true;
+ aliases = {
+ b = "branch";
+ f = "fetch";
+ p = "pull";
+ s = "status";
+ co = "checkout";
+ pu = "push";
+ nb = "checkout -b";
+ db = "branch -D";
+ lg =
+ "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit";
+ praise = "blame";
+ bump = "!git bump";
+ ae = "!git add -A && git commit --amend";
+ ad = "commit --amend";
+ ac = "!git add -A && git commit";
+ rmbs =
+ "!git branch | grep -wv master | grep -wv main | xargs git branch -D";
+ };
+ extraConfig = {
+ pull.rebase = false;
+ init.defaultBranch = "main";
+ };
+ };
+
+ services.ssh-agent.enable = true;
+ programs.ssh = {
+ enable = true;
+ package = "${pkgs.openssh}";
+ addKeysToAgent = "yes";
+ };
+
+ programs.taskwarrior = {
+ enable = true;
+ package = "${pkgs.taskwarrior3}";
+ };
+}
diff --git a/modules/home-manager/core/helix.nix b/modules/home-manager/core/helix.nix
new file mode 100644
index 0000000..42861ce
--- /dev/null
+++ b/modules/home-manager/core/helix.nix
@@ -0,0 +1,42 @@
+{ pkgs, inputs, ... }:
+{
+ home.sessionVariables = { EDITOR = "hx"; };
+ home.file = {
+ helix-ferra = {
+ source = ../../../assets/helix-wavez.toml;
+ target = ".config/helix/themes/wavez.toml";
+ };
+ };
+
+ programs.helix = {
+ enable = true;
+ package = inputs.helix.packages."${pkgs.system}".helix;
+ defaultEditor = true;
+ settings = {
+ theme = "wavez";
+ keys.normal = {
+ space.F = "file_picker_in_current_buffer_directory";
+ };
+ editor = {
+ end-of-line-diagnostics = "hint";
+ line-number = "relative";
+ bufferline = "always";
+ auto-save = false;
+
+ inline-diagnostics = {
+ cursor-line = "error";
+ };
+
+ lsp = {
+ enable = true;
+ display-messages = true;
+ };
+
+ indent-guides = {
+ render = true;
+ skip-levels = 1;
+ };
+ };
+ };
+ };
+}