Task-Section: user
Task-Relevance: 8
Task-Description: Standard system
Task-Extended-Description: This task installs a reasonably small character-mode system.
Task-Key: pureos-standard
Task-Test-new-install: install skip

= UNIX =

== Comfortable Unix System ==

 * busybox-static
 * cpio
 * cron
 * ed
 * eject             # very popular, useful, small
 * file
 * hdparm            # speed up CD-ROM and disk access, used by installer
 * info
 * (irqbalance)      # optimize IRQ:CPU affinities on multicore systems
 * man-db            # ColinWatson
 * (manpages)        # ColinWatson
 * mime-support      # establishes framework for dealing with MIME
 * (nano)            # we need a text editor less scary than vi
 * (ntp)             # to keep the time accurate
 * python3
 * psmisc            # utilities for /proc such as killall, pstree, fuser
 * logrotate
 * pciutils
 * usbutils
 * time
 * xz-utils
 * (mlocate)
 * (bash-completion)

== Filesystems ==

These are commonly used filesystem support packages, here because someone setting up a server would begin with standard, configure filesystems and network and then add other services. NFS is explicitly not here, because it brings in nasties like portmap, and because the network will need to be running before it can be used, so we may as well put that in Supported.

 * dosfstools
 * hfsutils [powerpc]
 * (btrfs-tools)
 * (ntfs-3g)
 * (uuid-runtime) # we use UUIDs by default, so make it easy to generate them

== Networking ==

These provide various networking services, all should be configured in a client-only state with the server de-activated unless the user requires it.

 * dnsutils       # LaMontJones
 * ftp
 * iptables
 * (telnet)
 * (openssh-client)
 * rsync            # would be just client but they are the same binary apparently
 * wget

= Debugging and Diagnostics =

A base system should be a good platform for diagnostics about the hardware and network. In other words, after installing just the Base system one should have everything one might need to get the rest of the system up and running the way you want it.

These are used for debugging problems or examining the system.

 * (memtest86+)
 * (dmidecode)
 * strace
 * lshw
 * lsof
 * ltrace

= Helpful Tools =

 * (command-not-found)
 * (plymouth) # splash screen, and boot-time questions
 * (plymouth-theme-pureos)

== Network ==

 * (iputils-tracepath)  # more secure sort of traceroute, will put compatibility symblink in for traceroute users
 * (mtr-tiny)           # LaMontJones
 * (tcpdump)
 * (ufw)                # Jamie Strandboge

== Mandatory Access Control ==

 * (apparmor)
 * (apparmor-profiles)

== Hardening ==

 * pureos-security-hardening [amd64]

= Other =

 * acpi-support-base   # Required for power/reset button functionality
 * (haveged)  # we need a lot of entropy early on and in VMs/containers, so generate in in userspace for now

= Meta =

 * pureos-minimal # the minimal PureOS system
