Skip to content

Developer Guide

This guide covers everything you need to know to build and contribute packages to SynoCommunity.

Overview

spksrc is a cross-compilation framework that builds software for Synology NAS devices. It handles:

  • Downloading and extracting source code
  • Cross-compiling for multiple CPU architectures
  • Packaging as SPK files installable via Package Center
  • Managing dependencies between packages

Getting Started

1. Set Up Your Environment

Choose your development environment:

  • Docker - Recommended for most users. Works on Linux and macOS.
  • Virtual Machine - Full Debian environment. Good for heavy development.
  • LXC Container - Lightweight alternative to VMs on Linux.

2. Learn the Basics

Once your environment is ready:

3. Create or Improve Packages

Deep-dive into package development:

4. Contribute

Share your work:

Quick Reference

Need to... See...
Build an existing package Build Workflow
Create a new package Your First Package
Add a service/daemon Service Scripts
Package a Python app Python Packages
Debug build issues Debugging
Look up a Makefile variable Makefile Variables

Community Resources

External Resources