Cross compilation framework to create native packages for the Synology's NAS
Switch branches/tags
Nothing to show
Clone or download
ymartin59 tcl: update to 8.6.9
Use generic installer
Resolves #3536
Latest commit 00a880a Dec 8, 2018



spksrc is a cross compilation framework intended to compile and package software for Synology NAS devices. Packages are made available via the SynoCommunity repository.


Before opening a new issue, check the FAQ and search open issues. If you can't find an answer, or if you want to open a package request, read CONTRIBUTING to make sure you include all the information needed for contributors to handle your request.

Setup Development Environment


  • Fork and clone spksrc: git clone ~/spksrc
  • Install Docker on your host OS: Docker installation. A wget-based alternative for linux: Install Docker with wget.
  • Download the spksrc docker container: docker pull synocommunity/spksrc
  • Run the container with docker run -it -v ~/spksrc:/spksrc synocommunity/spksrc /bin/bash

Virtual machine

A virtual machine based on an 64-bit version of Debian stable OS is recommended. Non-x86 architectures are not supported.

  • Install the requirements:

    sudo dpkg --add-architecture i386 && sudo apt-get update
    sudo aptitude install build-essential debootstrap python-pip automake libgmp3-dev libltdl-dev libunistring-dev libffi-dev libcppunit-dev ncurses-dev imagemagick libssl-dev pkg-config zlib1g-dev gettext git curl subversion check intltool gperf flex bison xmlto php5 expect libgc-dev mercurial cython lzip cmake swig libc6-i386 libmount-dev libpcre3-dev libbz2-dev
    sudo pip install -U setuptools pip wheel httpie
  • You may need to install some packages from testing like autoconf. Read about Apt-Pinning to know how to do that.

  • Some older toolchains may require 32-bit development versions of packages, e.g. zlib1g-dev:i386


Once you have a development environment set up, you can start building packages, create new ones, or improve upon existing packages while making your changes available to other people. See the Developers HOW TO for information on how to use spksrc.


To support SynoCommunity, you can make a donation to its founder


When not explicitly set, files are placed under a 3 clause BSD license