Skip to main content

A safe terminal UI for managing Linux kernels on apt-based systems

Project description

kerntop

kerntop is a terminal user interface for inspecting and managing Linux kernel packages on Debian- and Ubuntu-based systems. It is designed for servers and SSH sessions: no graphical desktop or graphical libraries are required.

It presents installed and repository-available kernels in an ncdu-style browser, marks the running kernel, and keeps kernel meta packages out of package actions.

[!WARNING] kerntop 0.0.7 is an early release. It can run real apt-get transactions when started as root. Read the confirmation dialog and preview a transaction before applying it.

Install

Quick start

Run the latest release without installing it permanently:

$ uv tool run kerntop
$ uvenv run kerntop
$ pipx run kerntop

Install with pip

Install from PyPI with Python 3.12 or newer:

$ pip install kerntop

kerntop uses Debian's python3-apt bindings to read package state. Install that distribution package if it is not already present:

$ sudo apt-get install python3-apt

On systems where pip installs into a virtual environment, kerntop locates supported system site-package directories so it can use the distribution's python-apt binding. If the binding cannot be loaded, kerntop reports the problem rather than falling back to parsing apt command output.

Usage

Start in read-only mode:

$ kerntop

Start with package-action controls enabled:

$ sudo kerntop

Use the arrow keys and Enter to browse kernel series and builds. Press h in the application for the complete key reference. The primary actions are:

  • a toggles the recommended and all-variants views.
  • p previews the contextual install or removal with apt-get --simulate.
  • q queues a contextual install or removal for one combined transaction.
  • i installs an available kernel image after confirmation.
  • d removes an installed, non-running kernel image after confirmation.
  • u reviews unused versioned headers and kernel-support packages.

Safety model

  • The currently running kernel cannot be selected for removal or purge.
  • The browser warns when no non-running fallback kernel is installed, and repeats that warning before removing the final fallback.
  • Kernel meta packages are protected and are never package-action targets.
  • Package changes require root; unprivileged sessions are read-only.
  • Queued changes can be simulated before their final confirmation.
  • Header and kernel-support cleanup lists explicit packages and never runs autoremove automatically.

Scope and current limitations

The local apt cache supplies the available-kernel view; 0.0.7 does not refresh repository indexes itself. Kernel images are installed as image packages, while headers and support packages are handled separately. See PLAN.md for the remaining MVP safety work.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kerntop-0.0.7.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kerntop-0.0.7-py3-none-any.whl (20.5 kB view details)

Uploaded Python 3

File details

Details for the file kerntop-0.0.7.tar.gz.

File metadata

  • Download URL: kerntop-0.0.7.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"PikaOS","version":"4","id":"nest","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for kerntop-0.0.7.tar.gz
Algorithm Hash digest
SHA256 6afd0251d3f09ef34cc4ecd9a277f535738fef6a705b67a46c48bc8ac306f253
MD5 51dfa4137dbfea421a362a8c656e5dbb
BLAKE2b-256 c130e79dbf973c336721f3638b80851f3e8a84166f60ef124586419a83e9ceb5

See more details on using hashes here.

File details

Details for the file kerntop-0.0.7-py3-none-any.whl.

File metadata

  • Download URL: kerntop-0.0.7-py3-none-any.whl
  • Upload date:
  • Size: 20.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"PikaOS","version":"4","id":"nest","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for kerntop-0.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 50941c0bc11642cefdff2aa5fca3901360f95b23e35b362bc84583bd86679652
MD5 82682818eb33ff2d0f13643913e0bbc0
BLAKE2b-256 460700712ebbf36c5788e6cbea6045530af2a052d3a7e0bcc4ad8ab9e6089519

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page