/ users / vincent / core / default.nix
default.nix
 1  { lib, pkgs, nixosConfig, ... }:
 2  
 3  let
 4    inherit (lib) versionOlder;
 5  in
 6  {
 7    imports = [
 8      ./bash.nix
 9      ./direnv.nix
10      ./fzf.nix
11      ./git.nix
12      ./gpg.nix
13      ./htop.nix
14      ./ssh.nix
15      ./tmux.nix
16      ./xdg.nix
17      ./zsh.nix
18    ];
19  
20    home = {
21      stateVersion = "22.05";
22      packages = with pkgs; [
23        enchive
24        entr
25        # exa # TODO: switch to eza in 2024
26        fd
27        htop
28        mosh
29        ncurses
30        pciutils
31        ripgrep
32        ugrep
33        scripts
34        tree
35        broot
36        lf
37        usbutils
38      ];
39    };
40  
41    programs.atuin = {
42      enable = true;
43      flags = [ "--disable-up-arrow" ];
44      settings = {
45        auto_sync = true;
46        sync_frequency = "10m";
47        sync_address = "http://sakhalin.sbr.pm:8888";
48        search_mode = "skim";
49        filter_mode = "global";
50        enter_accept = false;
51        prefers_reduced_motion = true;
52        common_prefix = [ "sudo" ];
53        ignored_commands = [
54          "cd"
55          "fg"
56          "ls"
57          "rm"
58          "vi"
59          "vim"
60          "p"
61          "d"
62          "ll"
63          "j"
64          "g"
65          ":"
66          "mv"
67          "cat"
68          "echo"
69        ];
70        # history_filter = [
71        #   "^curl"
72        #   "^wget"
73        #   "^monolith"
74        #   "^sherlock"
75        #   "^yt-dlp"
76        #   "^yt-dl"
77        #   "^gallery-dl"
78        #   "^archivebox"
79        #   "^fanficfare"
80        # ];
81      };
82    };
83  
84    # manpages are broken on 21.05 and home-manager (for some reason..)
85    # (versionOlder nixosConfig.system.nixos.release "21.11");
86    manual.manpages.enable = true;
87  
88    xdg.configFile."nixpkgs/config.nix".text = ''
89      {
90        allowUnfree = true;
91      }
92    '';
93  }