new screenshot

This commit is contained in:
Timofey Gelazoniya 2022-06-07 22:36:05 +03:00
parent 36260b5814
commit fc016ae780
Signed by: zeldon
GPG Key ID: 047886915281DD2A

106
README
View File

@ -8,7 +8,7 @@
[![Packaging status](https://repology.org/badge/tiny-repos/htop.svg)](https://repology.org/project/htop/versions)
[![License: GPL v2+](https://img.shields.io/badge/License-GPL%20v2+-blue.svg)](COPYING?raw=true)
![Screenshot of htop](docs/images/screenshot.png?raw=true)
![Screenshot of htop](https://i.imgur.com/dCSsvSv.png)
## Introduction
@ -30,55 +30,66 @@ For more information and details visit [htop.dev](https://htop.dev).
## Build instructions
### Prerequisite
List of build-time dependencies:
* standard GNU autotools-based C toolchain
- C99 compliant compiler
- `autoconf`
- `autotools`
* `ncurses`
* standard GNU autotools-based C toolchain
* C99 compliant compiler
* `autoconf`
* `autotools`
* `ncurses`
**Note about `ncurses`:**
> `htop` requires `ncurses` 6.0. Be aware the appropriate package is sometimes still called libncurses5 (on Debian/Ubuntu). Also `ncurses` usually comes in two flavours:
>
>* With Unicode support.
>* Without Unicode support.
>
> This is also something that is reflected in the package name on Debian/Ubuntu (via the additional 'w' - 'w'ide character support).
List of additional build-time dependencies (based on feature flags):
* `sensors`
* `hwloc`
* `libcap` (v2.21 or later)
* `libnl-3`
* `sensors`
* `hwloc`
* `libcap` (v2.21 or later)
* `libnl-3`
Install these and other required packages for C development from your package manager.
**Debian/Ubuntu**
~~~ shell
sudo apt install libncursesw5-dev autotools-dev autoconf build-essential
~~~
**Fedora/RHEL**
~~~ shell
sudo dnf install ncurses-devel automake autoconf gcc
~~~
**Archlinux/Manjaro**
~~~ shell
sudo pacman -S ncurses automake autoconf gcc
~~~
**macOS**
~~~ shell
brew install ncurses automake autoconf gcc
~~~
### Compile from source:
### Compile from source
To compile from source, download from the Git repository (`git clone` or downloads from [GitHub releases](https://github.com/htop-dev/htop/releases/)), then run:
~~~ shell
./autogen.sh && ./configure && make
~~~
### Install
To install on the local system run `make install`. By default `make install` installs into `/usr/local`. To change this path use `./configure --prefix=/some/path`.
### Build Options
@ -87,67 +98,70 @@ To install on the local system run `make install`. By default `make install` ins
#### Generic
* `--enable-unicode`:
* `--enable-unicode`:
enable Unicode support
- dependency: *libncursesw*
- default: *yes*
* `--enable-affinity`:
* dependency: *libncursesw*
* default: *yes*
* `--enable-affinity`:
enable `sched_setaffinity(2)` and `sched_getaffinity(2)` for affinity support; conflicts with hwloc
- default: *check*
* `--enable-hwloc`:
* default: *check*
* `--enable-hwloc`:
enable hwloc support for CPU affinity; disables affinity support
- dependency: *libhwloc*
- default: *no*
* `--enable-static`:
* dependency: *libhwloc*
* default: *no*
* `--enable-static`:
build a static htop binary; hwloc and delay accounting are not supported
- default: *no*
* `--enable-debug`:
* default: *no*
* `--enable-debug`:
Enable asserts and internal sanity checks; implies a performance penalty
- default: *no*
* default: *no*
#### Performance Co-Pilot
* `--enable-pcp`:
* `--enable-pcp`:
enable Performance Co-Pilot support via a new pcp-htop utility
- dependency: *libpcp*
- default: *no*
* dependency: *libpcp*
* default: *no*
#### Linux
* `--enable-sensors`:
* `--enable-sensors`:
enable libsensors(3) support for reading temperature data
- dependencies: *libsensors-dev*(build-time), at runtime *libsensors* is loaded via `dlopen(3)` if available
- default: *check*
* `--enable-capabilities`:
* dependencies: *libsensors-dev*(build-time), at runtime *libsensors* is loaded via `dlopen(3)` if available
* default: *check*
* `--enable-capabilities`:
enable Linux capabilities support
- dependency: *libcap*
- default: *check*
* `--with-proc`:
* dependency: *libcap*
* default: *check*
* `--with-proc`:
location of a Linux-compatible proc filesystem
- default: */proc*
* `--enable-openvz`:
* default: */proc*
* `--enable-openvz`:
enable OpenVZ support
- default: *no*
* `--enable-vserver`:
* default: *no*
* `--enable-vserver`:
enable VServer support
- default: *no*
* `--enable-ancient-vserver`:
* default: *no*
* `--enable-ancient-vserver`:
enable ancient VServer support (implies `--enable-vserver`)
- default: *no*
* `--enable-delayacct`:
* default: *no*
* `--enable-delayacct`:
enable Linux delay accounting support
- dependencies: *pkg-config*(build-time), *libnl-3* and *libnl-genl-3*
- default: *check*
* dependencies: *pkg-config*(build-time), *libnl-3* and *libnl-genl-3*
* default: *check*
## Runtime dependencies
## Runtime dependencies:
`htop` has a set of fixed minimum runtime dependencies, which is kept as minimal as possible:
* `ncurses` libraries for terminal handling (wide character support).
### Runtime optional dependencies:
### Runtime optional dependencies
`htop` has a set of fixed optional dependencies, depending on build/configure option used:
#### Linux
* `libdl`, if not building a static binary, is always required when support for optional dependencies (i.e. `libsensors`, `libsystemd`) is present.
* `libcap`, user-space interfaces to POSIX 1003.1e capabilities, is always required when `--enable-capabilities` was used to configure `htop`.
* `libsensors`, readout of temperatures and CPU speeds, is optional even when `--enable-sensors` was used to configure `htop`.
@ -156,11 +170,13 @@ To install on the local system run `make install`. By default `make install` ins
`htop` checks for the availability of the actual runtime libraries as `htop` runs.
#### BSD
On most BSD systems `kvm` is a requirement to read kernel information.
More information on required and optional dependencies can be found in [configure.ac](configure.ac).
## Usage
See the manual page (`man htop`) or the help menu (**F1** or **h** inside `htop`) for a list of supported key commands.
## Support