Skip to main content

Easier Gentoo system maintenance

Python versions PyPI - Version GitHub tag (with filter) License GitHub commits since latest release (by SemVer including pre-releases) CodeQL QA Tests Coverage Status Dependabot Documentation Status mypy uv pytest Ruff Downloads Stargazers pre-commit Prettier

@Tatsh Buy Me A Coffee Libera.Chat Mastodon Follow Patreon

This is a set of commands to simplify maintaining a Gentoo system.

Installation

Poetry

poetry add upkeep

Pip

pip install upkeep

emerges

This command will do the following:

  • Update Portage
  • Update @world with options --with-bdeps=y, --update, --deep, --newuse
  • Update live installations of packages (@live-rebuild)
  • Run emerge @preserved-rebuild
  • Run systemctl daemon-reexec (if applicable)
  • Update the kernel

There are flags to disable most parts of this functionality, such as --no-upgrade-kernel. Pass --help to see all the options.

Automatic kernel update process

Older versions of this tool supported various ways to update the kernel to boot from. However this is better left to the configuration and hooks of kernelinstall which is invoked by make install.

The automatic kernel update will only work if there are 2 kernels displayed with the command eselect --brief kernel list. The first one in the list must be the active kernel. The second one is the one to upgrade to. After switching to the new kernel, a .config must exist in /usr/src/linux or the command will not run make. If the configuration exists at /proc/config.gz it will be used.

If emerges fails to build the kernel because of the state of eselect kernel list, you can fix it and re-run the update by running upgrade-kernel.

The old kernel data in /boot will be stored in /root/.upkeep/old-kernels.

If you want to only rebuild the kernel, run rebuild-kernel.

ecleans

This command will run the following commands (or equivalents):

  • emerge --depclean
  • emerge @preserved-rebuild
  • revdep-rebuild
  • eclean-dist --deep
  • rm -fR /var/tmp/portage/*

Release files for upkeep 1.7.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for upkeep 1.7.1
File Size Uploaded
upkeep-1.7.1.tar.gz 16.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for upkeep 1.7.1
File Interpreter ABI Platform
upkeep-1.7.1-py3-none-any.whl Python 3 none any Details

Total release size: 30.2 kB

Release files / upkeep-1.7.1.tar.gz

Download URL upkeep-1.7.1.tar.gz
Size 16.5 kB
Tags Source
SHA-256 checksum
How to use checksums
c47f97cd5f69b3a8043bd44317fef77e12f3de34566890d9e2a65804cdc7efb6
BLAKE2b-256 checksum
How to use checksums
55f92d1f6a8f69344e4e9124fca170cb25ff3b6cbad6fe4ad03b3aadcf7c26ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 3, 2026.

Transparency log

Release files / upkeep-1.7.1-py3-none-any.whl

Download URL upkeep-1.7.1-py3-none-any.whl
Size 13.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7146b2aca1af39ced13af3b67f79af5a4d3ee6f5b06602cca1eb4c0f3166e6c8
BLAKE2b-256 checksum
How to use checksums
8458fb16f63d0bee02961a31f3a840b1e4e535f40bee2e4d18e3a5fdcd1a290d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 3, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.7.1 This release

2 release files

1.7.0

2 release files

1.6.1

2 release files

1.6.0

2 release files

1.5.0

2 release files

1.4.3

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.7

2 release files

1.2.6

2 release files

1.2.5

2 release files

1.2.4

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.0

2 release files

1.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page