summary refs log tree commit diff stats
path: root/user/settings/base.nix
blob: e9ef997b79101106ce99159f5d91c6b21ddc4016 (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
80
81
82
{ config, lib, pkgs, ... }:

{
  imports = [
    ../modules/nvim-coc.nix
  ];

  # Let Home Manager install and manage itself.
  programs.home-manager.enable = true;
  manual = {
    html.enable = true;
  };
  programs.neovim = {
    enable = true;
    vimAlias = true;
    vimdiffAlias = true;
    withNodeJs = true;
    configure = {
      customRC = builtins.readFile ../nvim/init.vim;
      packages.myVimPackage = with pkgs.vimPlugins; {
        start = [
          commentary
          coc-css
          coc-eslint
          coc-git
          coc-html
          coc-json
          coc-nvim
          coc-prettier
          coc-tabnine
          coc-yaml
          vim-surround
          vim-nix
        ];
        opt = [ ];
      };
    };
    coc = {
      config = {
        "json.enable" = true;
        "suggest.enablePreview" = true;
      };
    };
  };
  home.sessionVariables =
    let
      HOME = builtins.getEnv "HOME";
    in
    {
      EMAIL = "alan@alanpearce.eu";
      XDG_CACHE_HOME = if pkgs.stdenv.isDarwin then "${HOME}/Library/Caches/XDG" else "${HOME}/.cache";
      XDG_CONFIG_HOME = "${HOME}/.config";
      XDG_DATA_HOME = "${HOME}/.local/share";
    };

  programs.zsh.shellAliases = {
    make = "remake";
  };
  home.packages = with pkgs; [
    pv
    fd
    sd
    entr
    ripgrep
    htop
    iftop
    nmap
    moreutils
    mtr
    remake
    tree
  ] ++ (
  if !stdenv.isDarwin
  then [
    file
    ldns
    lsof
    unar
    zip
  ] else [
  ]);
}