]> Git — Sourcephile - julm/julm-nix.git/blob - home-manager/profiles/essential.nix
+use/op(nvim): set whichwrap
[julm/julm-nix.git] / home-manager / profiles / essential.nix
1 {
2 pkgs,
3 lib,
4 config,
5 nixosConfig,
6 ...
7 }:
8 {
9 imports = [
10 ./bash.nix
11 ./htop.nix
12 ./ssh.nix
13 ./tmux.nix
14 ];
15 programs.bat.enable = lib.mkDefault true;
16 home.packages = [
17 nixosConfig.boot.kernelPackages.cpupower
18 pkgs.acpi
19 pkgs.audit
20 pkgs.binutils
21 pkgs.bmon
22 pkgs.btop
23 pkgs.cryptsetup
24 pkgs.direnv
25 pkgs.dislocker
26 pkgs.dmidecode
27 pkgs.dool
28 pkgs.dust
29 pkgs.e2fsprogs
30 pkgs.efitools
31 pkgs.file
32 pkgs.fio
33 pkgs.fswatch
34 pkgs.gptfdisk
35 pkgs.hdparm
36 pkgs.hwinfo
37 pkgs.hyperfine
38 pkgs.i2c-tools # for decode-dimms
39 pkgs.inxi
40 pkgs.iotop
41 pkgs.iperf
42 pkgs.kernel-hardening-checker
43 pkgs.ldns
44 pkgs.lm_sensors
45 pkgs.lshw
46 pkgs.lsof
47 pkgs.lsscsi
48 pkgs.lzop # for syncoid
49 pkgs.mbuffer # for syncoid
50 pkgs.mkpasswd
51 pkgs.mmc-utils
52 pkgs.mokutil
53 #pkgs.moreutils
54 pkgs.multitail
55 pkgs.nethogs
56 pkgs.nload
57 pkgs.nmon
58 pkgs.nvme-cli
59 pkgs.p7zip
60 pkgs.parted
61 pkgs.pastel
62 pkgs.pciutils
63 #pkgs.powertop
64 pkgs.procps
65 pkgs.pstree
66 pkgs.pv
67 pkgs.refind
68 pkgs.rsync
69 pkgs.s-tui
70 pkgs.sanoid
71 pkgs.sbctl # for Secure Boot
72 pkgs.smartmontools
73 pkgs.smem
74 pkgs.spectre-meltdown-checker
75 pkgs.strace
76 pkgs.stress-ng
77 pkgs.testdisk
78 pkgs.tpm2-tools
79 pkgs.tree
80 pkgs.usbutils
81 pkgs.util-linux
82 pkgs.which
83 ]
84 ++ lib.optionals nixosConfig.services.xserver.enable [
85 pkgs.gparted
86 pkgs.xdg-utils
87 ]
88 ++ pkgs.lib.optionals pkgs.stdenv.hostPlatform.isx86_64 [
89 pkgs.ncdu
90 ];
91 home.sessionPath = [ "${config.home.homeDirectory}/bin" ];
92 home.sessionVariables = {
93 EDITOR = "vim";
94 LANG = "fr_FR.UTF-8";
95 LESS = "-FRSX";
96 # NixOS generates a customized pkgs.glibcLocales in config.i18n.glibcLocales
97 #LOCALE_ARCHIVE = "${pkgs.glibcLocalesUtf8}/lib/locale/locale-archive";
98 MANPAGER = "less";
99 };
100 # Keep only the last generation of the home-manager profile
101 home.activation.delete-generations = lib.hm.dag.entryAfter [ "writeBoundary" ] ''
102 if [ "$(${pkgs.coreutils}/bin/id -u)" = 0 ]
103 then profile="''${NIX_STATE_DIR:-/nix/var/nix}/profiles/per-user/$USER"
104 else profile="''${XDG_STATE_HOME:-$HOME/.local/state}"/nix/profiles
105 fi
106 ${nixosConfig.nix.package}/bin/nix-env --delete-generations +1 --profile "$profile"/home-manager
107 '';
108 }