Tum (TheUnixManager) is a universal package management and system initialization library created by Archetypum, designed to simplify interactions with UNIX-like systems and streamline the development of system-related python scripts.
This is the Python implementation of tum
.
- Why?
- What does it solve?
- Use Cases
- Installation
- Documentation
- Tests
- Supported Package Management Utilities (35)
- Supported Initialization Systems (7)
- Example Usage
- Other Implementations by Archetypum
- Legal
Because interacting with countless package managers and init systems across UNIX-like platforms is painful — tum
fixes that.
With tum
, you:
-
Don't need to be a UNIX maniac who knows every package manager and init system syntax by heart;
-
Don't waste time building utilities from scratch — core functions are prebuilt and ready;
-
Don't write bloated, error-prone scripts — your code stays clean, readable, and portable.
Managing packages and system services is inconsistent across distros. Whether you're scripting for Arch, Debian, Void, Slackware, Red Hat, or others, tum
provides a unified interface to abstract those differences.
It gives you:
-
A standardized way to install, remove, purge, update, upgrade packages (any many more!);
-
Unified service control (status, start, stop, enable, etc.) across multiple init systems (and many more);
-
A modular approach to extend support for more tools and distros;
-
Shell-friendly integration for faster development and cleaner scripts.
-
Write portable installation scripts that “just work” on most UNIX-like systems;
-
Build lightweight system provisioning tools in pure python;
-
Create consistent automation for servers, containers, or virtual machines;
-
Prototype cross-distro sysadmin tools without rewriting core logic.
- Via
pip
:
pip install the_unix_manager # WIP.
- Manual Bulinding:
git clone https://github.com/Archetypum/tum-python.git
cd tum-python/
pip install -r requirements.txt
python3 setup.py
All tum-python
functions, classes and methods have a lot of documentation. You can check it inside your code editor.
You can find automatic tests inside the t/
directory.
If you want test your installation manually:
python3 autotests.py
- apt, apt-get, apt-cache, apt-cdrom, apt-config, apt-extracttemplates, apt-listchanges, apt-mark, apt-sortpkgs, aptitude, aptitude-create-state-bundle, aptitude-run-state-bundle, dpkg
- pacman, yay, trizen, pamac
- portage (open for pull requests)
- slackpkg
- apk
- xbps-install, xbps-remove, xbps-query
- guix
- qi
- pkg_add, pkg_delete, pkg_create, pkg_info
- pkg
- pkgin
- yum, dnf
- zypper, zypper-log
- homebrew
-
systemd
-
sysvinit
-
openrc
-
runit
-
s6
-
dinit
-
launchd
#!/usr/bin/env python3
import theunixmanager as tum
#!/usr/bin/env python3
import theunixmanager as tum
#!/usr/bin/env python3
import theunixmanager as tum
tum-python
is free software, released under the GNU Lesser General Public License v3.
See: