Skip to main content

unattended upgrade for archlinux

Project description

Pacroller

The "Unattended Upgrades" for Arch Linux.

Concept

Parsing the output of pacman and pacman.log, searching for known patterns and notifying the user whether there is a potential error.
Currently the design is regex-based, any output that is unable to match a set of regex is reported back to the user.

Installation

yay -S pacroller

Usage

pacroller has the following subcommands

run [-d --debug]
    start an upgrade
    if the upgrade fails or pacroller determines that human action is required,
    pacroller writes an exception to the status database, and refuses to run again
    without resetting its failure status.
status [-v --verbose] [-m --max <number>]
    print details of a previous successful upgrade
fail-reset
    reset the current failure status

There is also a systemd timer for scheduled automatic upgrades.

Configuration

Pacroller reads /etc/pacroller/config.json on startup.

custom sync commands

Pacroller can be configured to use custom sync commands, which allows the usage of a different set of mirrors when syncing the database. Enable the "custom_sync" option and write your custom /etc/pacroller/sync.sh.

needrestart

If the "needrestart" option is enabled, needrestart should be called after a successful upgrade.

hold packages

Put your hold packages in a json keyval {package name: regex}, where the regex should have at least one matching group.
If pacroller observes any changes of the matching group or the hold package is to be removed, it refuses to upgrade further.

ignored pacnew

A list of pacnew files that are silently ignored during parsing, any other pacnews will trigger a waring and prevent further upgrades.

Limitations

  • Dracut is not supported, however it's easy to add another set of rules.
  • Custom pacman hooks are not supported.
  • Restarting the whole system after a kernel upgrade is not implemented.
  • Human interaction is required occasionally.
  • Does not check news from archlinux.org

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

pacroller-0.1.0.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

pacroller-0.1.0-py3-none-any.whl (24.3 kB view details)

Uploaded Python 3

File details

Details for the file pacroller-0.1.0.tar.gz.

File metadata

  • Download URL: pacroller-0.1.0.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for pacroller-0.1.0.tar.gz
Algorithm Hash digest
SHA256 f922bbfd1e10c77f0987a7614b8ba6529f2afaf85c99da54933aaeadb0524111
MD5 8c0fc283c3a46942bf7c7f656fb3fa2e
BLAKE2b-256 21dba2dbd640a6dfd35f30f3ae177b71b59cfa292c83ffbda1f40942440008fd

See more details on using hashes here.

File details

Details for the file pacroller-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: pacroller-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 24.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for pacroller-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 39e9181ceafa70396e4a61e0e405ef3660690afb9de22af4a266212844ce03a5
MD5 5e3adc816eea61d18e53182e020685e0
BLAKE2b-256 1f53b45acbde259667179aa563f51e86bc02c6869215b11000116220d3296b8d

See more details on using hashes here.

Supported by

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