1# This module defines the software packages included in the "minimal"
2# installation CD. It might be useful elsewhere.
3
4{ config, lib, pkgs, ... }:
5
6{
7 # Include some utilities that are useful for installing or repairing
8 # the system.
9 environment.systemPackages = [
10 pkgs.w3m-nographics # needed for the manual anyway
11 pkgs.testdisk # useful for repairing boot problems
12 pkgs.ms-sys # for writing Microsoft boot sectors / MBRs
13 pkgs.efibootmgr
14 pkgs.efivar
15 pkgs.parted
16 pkgs.gptfdisk
17 pkgs.ddrescue
18 pkgs.ccrypt
19 pkgs.cryptsetup # needed for dm-crypt volumes
20
21 # Some text editors.
22 (pkgs.vim.customize {
23 name = "vim";
24 vimrcConfig.packages.default = {
25 start = [ pkgs.vimPlugins.vim-nix ];
26 };
27 vimrcConfig.customRC = "syntax on";
28 })
29
30 # Some networking tools.
31 pkgs.fuse
32 pkgs.fuse3
33 pkgs.sshfs-fuse
34 pkgs.socat
35 pkgs.screen
36 pkgs.tcpdump
37
38 # Hardware-related tools.
39 pkgs.sdparm
40 pkgs.hdparm
41 pkgs.smartmontools # for diagnosing hard disks
42 pkgs.pciutils
43 pkgs.usbutils
44 pkgs.nvme-cli
45
46 # Some compression/archiver tools.
47 pkgs.unzip
48 pkgs.zip
49 ];
50
51 # Include support for various filesystems and tools to create / manipulate them.
52 boot.supportedFilesystems =
53 [ "btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs" ] ++
54 lib.optional (lib.meta.availableOn pkgs.stdenv.hostPlatform config.boot.zfs.package) "zfs";
55
56 # Configure host id for ZFS to work
57 networking.hostId = lib.mkDefault "8425e349";
58}