Sign inSign up

jdel/sspks

By jdel

•Updated over 3 years ago

A Simple Synology Package Server

Image
4

100K+

jdel/sspks repository overview

Scrutinizer Code Quality Code Coverage Build Status Build Status

Open in Gitpod

⁠Simple SPK Server

A very simple Synology Package Server, reverse engineered from the official Synology package repository and SynoCommunity.

This php script will serve SPKs to a Synology Package Center while also offering regular HTTP browsing through the available SPKs.

⁠Installation

Please see the INSTALL⁠ file for instructions.

⁠Docker

Docker images are built automatically from this repository and are available on Docker Hub⁠.

In order to use them you will need a working installation of Docker.

Simply run the following command:

docker run -d --name sspks \
  -v /path/to/your/local/packages:/packages \
  -v /path/to/your/local/cache:/cache \
  -p 9999:8080 \
  -e SSPKS_SITE_NAME="My Packages" \
  -e SSPKS_PACKAGES_DISTRIBUTOR_URL=https://cake.com \
  jdel/sspks

More environment variables are available to configure SSPKS:

VariablesDescriptionValues
SSPKS_SITE_NAMEDefine the Site NameSynology Repository
SSPKS_SITE_THEMEAllows the selection of the theme usedclassic, material (default)
SSPKS_PACKAGES_FILE_MASKDefines the format of the package to be processed.*.spk
SSPKS_PACKAGES_MAINTAINERName of the developerString
SSPKS_PACKAGES_MAINTAINER_URLUrl of the developer, if available the maintainer is shown as linkURL
SSPKS_PACKAGES_DISTRIBUTORPackage Center shows the publisher of the packageString
SSPKS_PACKAGES_DISTRIBUTOR_URLIf a package is installed and has a "help" webpage, Package Center will show a link to let user open itURL
SSPKS_PACKAGES_SUPPORT_URLPackage Center shows a support link to allow users to seek technical support when neededURL
SSPKS_SITE_REDIRECTINDEXInstead of listing the packages, a direct redirect to the defined URL is set.URL

In the command above, replace /path/to/your/local/packages with the directory containing your packages, /path/to/your/local/cache with the directory that will hold the cache files and -p 9999 with the port you intend to serve packages on.

Should you want SSL/TLS (you really should), you need to handle SSL/TLS termination externally, for example with Traefik⁠ that will automatically fetch Let's Encrypt⁠ certificates for you.

⁠Contribute

Feel free to contribute, improve the code or the design by forking https://github.com/jdel/sspks.git⁠

Tag summary

Content type

Image

Digest

sha256:124d1ae8b…

Size

12.1 MB

Last updated

over 3 years ago

docker pull jdel/sspks