aboutsummaryrefslogtreecommitdiff
path: root/home-manager
diff options
context:
space:
mode:
authorkdam0 <me@kumardamani.net>2025-03-05 13:53:14 +0000
committerkdam0 <me@kumardamani.net>2025-03-05 13:53:14 +0000
commit4d57950543ce45b7c40085952699a757050dcf72 (patch)
tree73b6910fd3c8dac557052afe60aaa94568907502 /home-manager
parentf921afc49df917b6ab99ea8038c5c07e73cf4936 (diff)
wsl conf
Diffstat (limited to 'home-manager')
-rw-r--r--home-manager/.config/home-manager/flake.nix21
-rw-r--r--home-manager/.config/home-manager/per-user/kdam0-wsl/home.nix187
2 files changed, 188 insertions, 20 deletions
diff --git a/home-manager/.config/home-manager/flake.nix b/home-manager/.config/home-manager/flake.nix
index efc9ed7..19de58e 100644
--- a/home-manager/.config/home-manager/flake.nix
+++ b/home-manager/.config/home-manager/flake.nix
@@ -65,31 +65,12 @@
"kdam0" = home-manager.lib.homeManagerConfiguration {
pkgs = nixpkgs.legacyPackages."x86_64-linux";
modules = [
- ./per-user/kdam0-work/home.nix
+ ./per-user/kdam0-wsl/home.nix
];
# Optionally use extraSpecialArgs
# to pass through arguments to home.nix
};
- "kdam0@orb-deb" = home-manager.lib.homeManagerConfiguration {
- pkgs = nixpkgs.legacyPackages."x86_64-linux";
- modules = [
- ./per-user/kdam0-orb-deb/home.nix
- ];
- };
- "kdamani" = home-manager.lib.homeManagerConfiguration {
- pkgs = nixpkgs.legacyPackages."x86_64-linux";
- modules = [
- ./per-user/kdamani-work/home.nix
- ];
- };
- "kdamani@orb-deb" = home-manager.lib.homeManagerConfiguration {
- pkgs = nixpkgs.legacyPackages."aarch64-linux";
- modules = [
- ./per-user/kdamani-work/home.nix
- ];
- };
};
-
};
}
diff --git a/home-manager/.config/home-manager/per-user/kdam0-wsl/home.nix b/home-manager/.config/home-manager/per-user/kdam0-wsl/home.nix
new file mode 100644
index 0000000..474af48
--- /dev/null
+++ b/home-manager/.config/home-manager/per-user/kdam0-wsl/home.nix
@@ -0,0 +1,187 @@
+{ config, pkgs, libs, ...}:
+{
+ home.username = "kdam0";
+ home.homeDirectory = "/home/kdam0";
+ home.sessionPath = [
+ "$HOME/.config/home-manager/common/scripts"
+ ];
+ home.sessionVariables = {
+ EDITOR = "hx";
+ };
+ home.shellAliases = {
+ l = "ls -l";
+ ll = "ls -al";
+ ".." = "cd ..";
+ v = "$EDITOR $@";
+ r = "yazi $@";
+ gst = "git status";
+ gd = "git diff";
+ chm = "$EDITOR ~/.config/home-manager/per-user/kdam0-wsl/home.nix";
+ search = "nix search nixpkgs $@";
+ conf = "ranger ~/.config/home-manager/common/";
+ up = "cd ~/.config/home-manager && home-manager switch";
+ tmux = "tmux -u $@";
+ };
+
+ programs.home-manager.enable = true;
+ programs.zsh = {
+ enable = true;
+ defaultKeymap = "viins";
+ initExtra = ''
+ source ${config.home.homeDirectory}/.p10k.zsh
+ bindkey '^ ' autosuggest-accept
+ '';
+ zplug = {
+ enable = true;
+ plugins = [
+ { name = "zsh-users/zsh-autosuggestions"; }
+ { name = "romkatv/powerlevel10k"; tags = [ as:theme depth:1 ]; }
+ ];
+ };
+ };
+ programs.tmux = {
+ enable = true;
+ clock24 = true;
+ shell = "${pkgs.zsh}/bin/zsh";
+ # shell = "/bin/zsh";
+ prefix = "C-a";
+ terminal = "xterm-256color";
+ keyMode = "vi";
+ plugins = with pkgs; [
+ tmuxPlugins.sensible
+ {
+ plugin = tmuxPlugins.resurrect;
+ extraConfig = "set -g @resurrect-strategy-nvim 'session'";
+ }
+ tmuxPlugins.pain-control
+ tmuxPlugins.yank
+ ];
+ sensibleOnTop = true;
+ extraConfig = "set -g default-command '$SHELL'";
+ };
+ programs.git = {
+ enable = true;
+ userName = "Kumar Damani";
+ userEmail = "me@kumardamani.net";
+ aliases = {
+ lg = "log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit";
+ };
+ delta = {
+ enable = true;
+ };
+ lfs = {
+ enable = true;
+ };
+ extraConfig = {
+ push = { autoSetupRemote = true; };
+ };
+ };
+ programs.fzf = {
+ enable = true;
+ tmux.enableShellIntegration = true;
+ };
+ programs.direnv = {
+ enable = true;
+ enableZshIntegration = true; # see note on other shells below
+ nix-direnv.enable = true;
+ config = {
+ global = {
+ load_dotenv = true;
+ };
+ };
+ };
+ programs.helix = {
+ enable = true;
+ settings = {
+ # theme = "jetbrains_dark";
+ theme = "gruvbox_dark_hard";
+ editor = {
+ mouse = false;
+ true-color = true;
+ line-number = "relative";
+ lsp.display-messages = true;
+ rulers = [81];
+ indent-guides = {
+ render = true;
+ character = "╎";
+ };
+ cursor-shape = {
+ normal = "block";
+ insert = "bar";
+ select = "block";
+ };
+ };
+ keys.normal = {
+ space.space = "file_picker";
+ space.w = ":w";
+ space.q = ":q";
+ G = "goto_file_end";
+ esc = [ "collapse_selection" "keep_primary_selection" ];
+ space.t = ":sh xelatex KumarDamaniCV.tex";
+ };
+ };
+ extraPackages = [
+ pkgs.bash-language-server
+ pkgs.marksman
+ pkgs.gopls
+ pkgs.ansible-language-server
+ pkgs.yaml-language-server
+ pkgs.ruff
+ pkgs.pyright
+ pkgs.pylyzer
+ pkgs.vscode-langservers-extracted
+ ];
+ languages = {
+ language-server.ruff = {
+ command = "ruff";
+ args = ["server"];
+ config = {
+ settings = {
+ lineLength = 88;
+ lint = {
+ select = ["B" "C4" "I" "N" "PIE" "RUF" "TCH" "TID" "UP" "S" "W" "E" "F"];
+ preview = false;
+ };
+ format = {
+ preview = true;
+ };
+ };
+ };
+ };
+ language-server.pyright = {
+ config.python.analysis = {
+ typeCheckingMode = "basic";
+ };
+ };
+ language-server.pylyzer = {
+ command = "pylyzer";
+ config = {
+ settings = {
+ args = ["--server"];
+ };
+ };
+ };
+ language = [
+ {
+ name = "python";
+ language-servers = ["ruff" "pyright" "pylyzer"];
+ auto-format = true;
+ }
+ ];
+ };
+ };
+ home.stateVersion = "23.05";
+ home.packages = with pkgs; [
+ dig
+ fd
+ htop
+ imagemagick
+ jq
+ poppler
+ python3Minimal
+ ripgrep
+ tldr
+ yazi
+ ];
+ targets.genericLinux.enable = true;
+}