spkg is a package manager that downloads the source code from the official sources, and then mostly compiles it specifically for your device.
The goal of spkg is to get the latest versions of programs easily and without much experience, even under distros that do not offer the latest version. By compiling the package, the program is optimized for your device and can run faster. So spkg offers you a high security, so you don't have to worry about viruses in packages.
spkg also offers pre-build packages, so you don't have to build big packages like Java yourself.
In order to set up spkg for personal use and for development, simply run one of the setup scripts for your system.
chmod +x ./scripts/setup_ubuntu.sh
./scripts/setup_ubuntu.sh
chmod +x ./scripts/setup_fedora.sh
./scripts/setup_fedora.sh
(First install Python 3 & pip)
pip install -r ./requirements.txt
Yes. We are currently rewriting large parts of spkg's code so that spkg becomes more user friendly. Including a new configuration file, better error handling and much more!
spkg offers a convenient plugin system, allowing users to enable advanced features such as installing packages over a secure sandbox!
spkg-sandbox installs packages in a separate environment from the system to provide more security and compatibility. spkg-sandbox works on any system, regardless of the package manager, while spkg without spkg-sandbox currently only works on deb and apk-based systems. It uses Ubuntu 22.04 or 20.04 as base.
spkg-docker installs packages in a Docker container. This provides more security, and is more convenient. Therefore, spkg works on any system that supports docker. The Docker image used is an (custom) Ubuntu 22.04 or 20.04 image.
spkg was built on the basis of Python 3.11. We recommend to use Python 3.10 or higher. All Python versions below 3.9 are untested and therefore not recommended. We do not support Python 3.9 as we use features from a higher Python version. Therefore, please do not open an issue if spkg does not work under Python 3.10 or lower.
Version | Supported | Status |
---|---|---|
Python 3.8 | No | |
Python 3.9 | No | |
Python 3.10 | Yes | |
Python 3.11 | Yes | |
Python 3.12 | Yes |
Distrobutions and versions that are not listed are not supported by us.