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