Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tatsh/upkeep
Commands to make keeping a Gentoo system updated an easier task.
https://github.com/tatsh/upkeep
gentoo portage
Last synced: about 2 months ago
JSON representation
Commands to make keeping a Gentoo system updated an easier task.
- Host: GitHub
- URL: https://github.com/tatsh/upkeep
- Owner: Tatsh
- License: mit
- Created: 2018-05-27T15:43:07.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-04-22T12:36:18.000Z (9 months ago)
- Last Synced: 2024-04-22T13:50:44.313Z (9 months ago)
- Topics: gentoo, portage
- Language: Python
- Homepage: https://upkeep.rtfd.io/
- Size: 1020 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
Awesome Lists containing this project
README
# Easier Gentoo system maintenance
[![QA](https://github.com/Tatsh/upkeep/actions/workflows/qa.yml/badge.svg)](https://github.com/Tatsh/upkeep/actions/workflows/qa.yml)
[![Tests](https://github.com/Tatsh/upkeep/actions/workflows/tests.yml/badge.svg)](https://github.com/Tatsh/upkeep/actions/workflows/tests.yml)
[![Coverage Status](https://coveralls.io/repos/github/Tatsh/upkeep/badge.svg?branch=master)](https://coveralls.io/github/Tatsh/upkeep?branch=master)
[![Documentation Status](https://readthedocs.org/projects/upkeep/badge/?version=latest)](https://upkeep.readthedocs.io/en/latest/?badge=latest)
![PyPI - Version](https://img.shields.io/pypi/v/upkeep)
![GitHub tag (with filter)](https://img.shields.io/github/v/tag/Tatsh/upkeep)
![GitHub](https://img.shields.io/github/license/Tatsh/upkeep)
![GitHub commits since latest release (by SemVer including pre-releases)](https://img.shields.io/github/commits-since/Tatsh/upkeep/v0.0.1/master)This is a set of commands to simplify maintaining a Gentoo system.
[Documentation](https://upkeep.rtfd.io/)
## esync
This command needs `eix` installed to fully function. It runs `eix-sync`. This
is intended for use as a cron job. I use it daily.This command can run `layman -S` for you if you pass `-l` or `--run-layman`.
## 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 kernelThere 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/*`