updall
Simple command runner designed to run package managers if they exist on the system.
$ updall --help
Usage: updall [OPTIONS]
A simple package manager update runner.
Options:
-h, --help Show this message and exit.
-V, --version Show the version and exit.
-v, --verbose Output debug info to stderr. Pass multiple times to
show more logging.
-c, --config-file FILE Alternate location of the config file. [default:
/home/user/.config/updall/config.yaml]
Getting started
Create a config file. You can find the path updall expects to find this file by calling updall --help, or you can specify your own location by passing the -c / --config-file flag when running the command.
You can see the entire config structure and its default values below, but the only key you need to use updall is entries. This should be a list of PackagerEntries, which are objects containing at least name and update fields. name should be a unique string identifier representing the packager the entry works with, and update is a command string that'll be called to update packages.
Once you've populated the config file with entries, all you need to do next is run updall with no arguments:
$ updall
Running Updaters ...
:: [ flatpak::update ] ::
Looking for updates…
ID Branch Op Remote Download
1. [✓] org.freedesktop.Platform.GL.default 25.08 u flathub 69.7 MB / 146.0 MB
2. [✓] org.freedesktop.Platform.GL.default 25.08-extra u flathub 3.6 MB / 146.1 MB
3. [✓] org.freedesktop.Platform.Locale 25.08 u flathub 18.5 kB / 379.4 MB
4. [✓] org.freedesktop.Platform.codecs-extra 25.08-extra u flathub 698.8 kB / 14.6 MB
5. [✓] org.freedesktop.Sdk.Locale 25.08 u flathub 18.5 kB / 395.2 MB
6. [✓] org.freedesktop.Sdk 25.08 u flathub 29.3 MB / 606.7 MB
7. [✓] org.freedesktop.Platform 25.08 u flathub 3.4 MB / 257.1 MB
Updates complete.
:: [ pacman::update ] ::
[sudo] password for user:
no new news
:: Looking for PKGBUILD upgrades...
:: Looking for AUR upgrades...
:: Looking for devel upgrades...
:: Resolving dependencies...
:: Calculating conflicts...
:: Calculating inner conflicts...
:: packages not in the AUR: worm_hole
:: orphans: pest-language-server
there is nothing to do
:: Synchronizing package databases...
cachyos-v3 is up to date
cachyos-extra-v3 is up to date
cachyos-core-v3 is up to date
cachyos is up to date
core is up to date
extra is up to date
multilib is up to date
:: Starting full system upgrade...
there is nothing to do
:: [ flatpak::clean ] ::
Nothing unused to uninstall
:: [ pacman::clean ] ::
there is nothing to do
Config Reference
# The shell used to run each entry's `update` and `clean` scripts.
shell:
- /bin/sh
- -c
# The program's default log level, from 0 to 2.
# Same as if passing `--verbose` that many times.
log_level: 0
# A list of PackagerEntries.
entries: []
PackagerEntry
# The entry's identifier used for headers.
name: "<unique string>"
# The command run by the shell to update packages.
update: "<some shell command>"
# An optional separate command to run after all `update` scripts.
clean: null
# A list of WhenConditions that determine if the entry's commands are run.
# The entry is run when *ANY* condition is true, and a single entry is
# true when *ALL* of its keys are true.
when: []
WhenCondition
# Check if the user has a specific command on the PATH.
has_exe: "<some command on PATH>"
# Check if the user is running on a certain operating system.
is_os: Windows # or 'Darwin' or 'Linux'
# A dict of keys representing environment variable names, and values.
# Checks if all key variables exist and that their values match those defined.
env_equals: {}
Example Config
entries:
- name: flatpak
update: flatpak update
clean: flatpak uninstall --delete-data --unused
when:
- has_exe: flatpak
is_os: Linux
- name: scoop
update: scoop update --all
when:
- has_exe: scoop
is_os: Windows
- name: pacman
update: paru
clean: paru -c
when:
- has_exe: paru
is_os: Linux
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file updall-1.1.1.tar.gz.
File metadata
- Download URL: updall-1.1.1.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7894d098faecde1be741a678bdb150e32f281b81bf336d95e32f6ac509c8a8e7
|
|
| MD5 |
cab6a4ce08b12d857448c843f631495d
|
|
| BLAKE2b-256 |
3024ddeee4850f3c1edf1d73c9ba29fea3fb4484e1610c04c04b834e2210f176
|
Provenance
The following attestation bundles were made for updall-1.1.1.tar.gz:
Publisher:
release.yml on Mrfiregem/updall
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
updall-1.1.1.tar.gz -
Subject digest:
7894d098faecde1be741a678bdb150e32f281b81bf336d95e32f6ac509c8a8e7 - Sigstore transparency entry: 2491822332
- Sigstore integration time:
-
Permalink:
Mrfiregem/updall@40842ca951a422a5e48b8e9e6b9dc2f5b3697253 -
Branch / Tag:
refs/tags/v1.1.1 - Owner: https://github.com/Mrfiregem
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@40842ca951a422a5e48b8e9e6b9dc2f5b3697253 -
Trigger Event:
push
-
Statement type:
File details
Details for the file updall-1.1.1-py3-none-any.whl.
File metadata
- Download URL: updall-1.1.1-py3-none-any.whl
- Upload date:
- Size: 6.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
34386c12cef6d6cd8f3ad27a268a567ad6cd98160b309a646edfe55acef3f425
|
|
| MD5 |
c59b0f2ee9d73a3ae35b1d99867aa310
|
|
| BLAKE2b-256 |
0836f2072e61f2f6bcf85c782d7bf9bbfdfadf2e106a14ea49e2d9a2099ec2f2
|
Provenance
The following attestation bundles were made for updall-1.1.1-py3-none-any.whl:
Publisher:
release.yml on Mrfiregem/updall
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
updall-1.1.1-py3-none-any.whl -
Subject digest:
34386c12cef6d6cd8f3ad27a268a567ad6cd98160b309a646edfe55acef3f425 - Sigstore transparency entry: 2491822304
- Sigstore integration time:
-
Permalink:
Mrfiregem/updall@40842ca951a422a5e48b8e9e6b9dc2f5b3697253 -
Branch / Tag:
refs/tags/v1.1.1 - Owner: https://github.com/Mrfiregem
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@40842ca951a422a5e48b8e9e6b9dc2f5b3697253 -
Trigger Event:
push
-
Statement type: