spksrc

Cross compilation framework to create native packages for the Synology's NAS

  • Owner: SynoCommunity/spksrc
  • Platform:
  • License:: Other
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

spksrc

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

Contributing

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

Docker
^^^^^^

  • Fork and clone spksrc: git clone https://You@github.com/You/spksrc.git ~/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 10 stable OS is recommended. Non-x86 architectures are not supported.

  • Install the requirements (in sync with Dockerfile)::

    sudo dpkg --add-architecture i386 && sudo apt-get update
    sudo apt install autogen automake bc bison build-essential check cmake curl cython debootstrap expect flex g++-multilib gettext git gperf imagemagick intltool libbz2-dev libc6-i386 libcppunit-dev libffi-dev libgc-dev libgmp3-dev libltdl-dev libmount-dev libncurses-dev libpcre3-dev libssl-dev libtool libunistring-dev lzip mercurial ncurses-dev php pkg-config python3 python3-distutils scons subversion swig unzip xmlto zlib1g-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

Usage

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

.. image:: https://www.paypal.com/en_US/i/btn/btn_donate_LG.gif
:target: https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=F6GDE5APQ4SBN

License

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

.. _3 clause BSD license: http://www.opensource.org/licenses/BSD-3-Clause
.. _bug tracker: https://github.com/SynoCommunity/spksrc/issues
.. _CONTRIBUTING: https://github.com/SynoCommunity/spksrc/blob/master/CONTRIBUTING.md
.. _Developers HOW TO: https://github.com/SynoCommunity/spksrc/wiki/Developers-HOW-TO
.. _Docker installation: https://docs.docker.com/engine/installation
.. _FAQ: https://github.com/SynoCommunity/spksrc/wiki/Frequently-Asked-Questions
.. _Install Docker with wget: https://docs.docker.com/linux/step_one
.. _SynoCommunity repository: http://www.synocommunity.com

Main metrics

Overview
Name With OwnerSynoCommunity/spksrc
Primary LanguageC
Program languageMakefile (Language Count: 19)
Platform
License:Other
所有者活动
Created At2011-10-12 20:25:50
Pushed At2025-07-14 12:33:53
Last Commit At2025-07-14 08:33:53
Release Count12
Last Release Namebefore_domoticz_removal (Posted on )
First Release Namepre-dsm6 (Posted on )
用户参与
Stargazers Count3.1k
Watchers Count165
Fork Count1.3k
Commits Count5.1k
Has Issues Enabled
Issues Count3770
Issue Open Count212
Pull Requests Count1998
Pull Requests Open Count70
Pull Requests Close Count771
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private