Skip to content

Strawberry-Foundations/spkg

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advanced Source Package Managment (spkg)

version Code Size Commit activity License

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.

Setting up

In order to set up spkg for personal use and for development, simply run one of the setup scripts for your system.

For Ubuntu

chmod +x ./scripts/setup_ubuntu.sh
./scripts/setup_ubuntu.sh

For Fedora

chmod +x ./scripts/setup_fedora.sh
./scripts/setup_fedora.sh

For other distros

(First install Python 3 & pip)

pip install -r ./requirements.txt

Is spkg being developed again?

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!

Plugins

spkg offers a convenient plugin system, allowing users to enable advanced features such as installing packages over a secure sandbox!

Sandbox spkg-sandbox

spkg-sandbox sandbox-release sandbox-methods sandbox-architetures

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.

Docker Containers spkg-docker

spkg-docker docker-release docker-methods docker-architetures

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.

Supported Python Versions

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

Linux Support

Distrobutions and versions that are not listed are not supported by us.

Platform Version Supported Branch Package Method
coreOS 1.0 Yes native, sandbox, docker, copt
Debian 9 and below No -
Debian 10 Yes native, sandbox, docker
Debian 11 Yes native, sandbox, docker
Debian 12 Yes native, sandbox, docker
Debian Sid Yes native, sandbox, docker
Ubuntu 16.04 No -
Ubuntu 18.04 Not offical sandbox, docker
Ubuntu 20.04 Yes native, sandbox, docker
Ubuntu 22.04 Yes native, sandbox, docker
Ubuntu 22.10 Yes native, sandbox, docker
Ubuntu 23.04 Yes native, sandbox, docker
Alpine 3.16.x Untested native, sandbox, docker
Alpine 3.17.x Yes native, sandbox, docker
Alpine 3.18.x Yes native, sandbox, docker
Fedora 37 - 38 Yes (soon native), sandbox, docker
Arch - Yes sandbox, docker
Gentoo - Untested sandbox, docker