home.nix
author Tomas Zeman <tomas@functionals.cz>
Tue, 26 May 2020 21:54:45 +0200
changeset 2 a71813720fef
parent 0 0bfc10663494
child 3 27522465c8a6
permissions -rw-r--r--
enableAutojump
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     1
{ config, pkgs, ... }:
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     2
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     3
let
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     4
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     5
  my-nur = import /repos/NixOS/nur-packages {
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     6
    inherit pkgs;
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     7
  };
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     8
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
     9
in
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    10
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    11
{
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    12
  home.file."bin/idea" = {
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    13
    text = ''
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    14
      #!${pkgs.bash}/bin/bash
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    15
      export JAVA_HOME=${pkgs.jetbrains.jdk}
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    16
      exec /opt/idea-IC-201.7223.91/bin/idea.sh
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    17
    '';
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    18
    executable = true;
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    19
  };
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    20
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    21
  home.packages = [
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    22
    my-nur.guilt
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    23
    pkgs.nix-direnv
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    24
  ];
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    25
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    26
  programs.bash = {
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    27
    enable = true;
2
a71813720fef enableAutojump
Tomas Zeman <tomas@functionals.cz>
parents: 0
diff changeset
    28
    enableAutojump = true;
0
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    29
    initExtra = ''
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    30
      export LC_CTYPE=cs_CZ.UTF-8
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    31
      unset LC_ALL
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    32
      eval `dircolors $HOME/.dir_colors`
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    33
      eval `keychain --eval --agents ssh,gpg`
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    34
      PS1='[\u@\h \W \D{%F %T}]\n\$ '
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    35
    '';
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    36
    sessionVariables = {
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    37
      HGEDITOR="~/bin/hgeditor";
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    38
    };
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    39
  };
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    40
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    41
  # Let Home Manager install and manage itself.
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    42
  programs.home-manager.enable = true;
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    43
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    44
  programs.direnv = {
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    45
    enable = true;
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    46
    enableBashIntegration = true;
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    47
    stdlib = ''
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    48
      if [ -f ~/.nix-profile/share/nix-direnv/direnvrc ]; then
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    49
        source ~/.nix-profile/share/nix-direnv/direnvrc
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    50
      fi
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    51
    '';
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    52
  };
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    53
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    54
  services.gpg-agent = {
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    55
    enable = true;
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    56
    pinentryFlavor = "gtk2";
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    57
    verbose = true;
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    58
  };
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    59
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    60
  # This value determines the Home Manager release that your
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    61
  # configuration is compatible with. This helps avoid breakage
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    62
  # when a new Home Manager release introduces backwards
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    63
  # incompatible changes.
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    64
  #
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    65
  # You can update Home Manager without changing this value. See
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    66
  # the Home Manager release notes for a list of state version
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    67
  # changes in each release.
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    68
  home.stateVersion = "20.03";
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    69
}
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    70
0bfc10663494 Initialized nix-home repo.
Tomas Zeman <tomas@functionals.cz>
parents:
diff changeset
    71
# vim: ts=2 sw=2 et