summaryrefslogtreecommitdiff
path: root/home.nix
blob: 7de67a9f97ee2d5777e85a5cd9e0f838e14fdc7b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
{ config, pkgs, ... }:

{
  home.username = "shubh";
  home.homeDirectory = "/home/shubh";

  # You should not change this value, even if you update Home Manager. If you do
  # want to update the value, then make sure to first check the Home Manager
  # release notes.
  home.stateVersion = "23.05";

  home.packages = with pkgs; [
    git
    unzip
    wget
    gnupg
    pinentry
    wl-clipboard
    pass
    tmux
    fzf
    firefox
    libreoffice-qt
    # (pkgs.nerdfonts.override { fonts = [ "FantasqueSansMono" ]; })
  ];

  programs.home-manager.enable = true;
  programs.zsh = {
    enable = true;
    enableCompletion = true;
    shellAliases = {
      ll = "ls -l";
      v = "nvim";
      o = "xdg-open";
      t = "tmux";
      update = "sudo nixos-rebuild switch --flake ~/nix";
    };
    history = {
      size = 10000;
      path = "${config.xdg.dataHome}/zsh/history";
    };
    oh-my-zsh = {
      enable = true;
      plugins = [ "git" "kubectl" "sudo" ];
      theme = "robbyrussell";
    };
  };
  programs.fzf = {
    enable = true;
    enableZshIntegration = true;
    defaultOptions = [ "--height 40%" "--layout=reverse" "--border" ];
  };
  programs.git = {
    enable = true;
    userEmail = "me@ubh.sh";
    userName = "Shubham Saini";
    signing = {
      key = "E0404DDE4BCF9DB5";
      signByDefault = true;
    };
  };

  services.gpg-agent = {                          
    enable = true;
    pinentryFlavor = "qt";
  };

  xdg = {
    userDirs = {
      enable = true;
      desktop = "\$HOME/desktop";
      documents = "\$HOME/docs";
      download = "\$HOME/downloads";
      pictures = "\$HOME/pics";
      music = "\$HOME/music";
      videos = "\$HOME/vids";
    };
  };
}