Frequently Asked Questions - SynoCommunity/spksrc GitHub Wiki
How do I add the SynoCommunity repository to my NAS?
Follow the instructions on https://synocommunity.com.
Invalid location
when trying to add the repository?
I'm getting Try again at a later time. If the issue persists, here are some troubleshooting suggestions:
- Are you running DSM version older than 6.2.4-25556 Update 2
- From the Changelog: 10. Updated the OpenSSL setting in response to new rules of Let's Encrypt certificates
- Please update the DSM to update the Certificate trust store.
- Alternatively run
sudo mv /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt.bak && sudo curl -Lko /etc/ssl/certs/ca-certificates.crt https://curl.se/ca/cacert.pem
- Are you connected via a VPN? Use a direct/local connection instead.
- Is your NAS able to successfully resolve
packages.synocommunity.com
to an IP address?- Log in to your NAS via SSH;
- Run
nslookup packages.synocommunity.com
. You should get an IP address back (e.g.104.31.95.179
)
- What is the DNS server configured on your NAS? A possible workaround is to set one or two public DNS servers in your Synology:
- Open
Control Panel
>Network
; - On the
General
tab, activate the checkbox calledManually configure DNS server
; - Add in one or two of the DNS servers you want to use. (Google:
8.8.8.8
/8.8.4.4
, OpenDNS:208.67.222.222
/208.67.220.220
); - Click
Apply
.
- Open
400 Bad Request, The browser (or proxy) sent a request that this server could not understand
I'm seeing a https://packages.synocommunity.com is the repository URL, and is meant for your NAS only.
Visit https://synocommunity.com for details about the repository and the available packages.
How can I check if a package is available for my model?
- Look up the architecture for your model with Architecture per Synology model;
- Look up the package on the package overview, and check if your architecture is mentioned in the package details.
My architecture is not listed in the package details. Can it be made available?
If an architecture is not listed, that is probably on purpose. Some packages cannot be compiled for certain architectures. PPC-based architectures (ppc* and qoriq) are known for this.
A second reason is new models. See I have a new nas model. What has to be done to provide packages for it?.
Search open and closed issues on the bugtracker to verify the question has not been asked before. If not, open an issue. Follow the instructions in CONTRIBUTING.
I have a new NAS model. What has to be done to provide packages for it?
A number of things need to happen before we can provide packages for a new model or a new architecture:
- A toolchain and kernel source must be available for that model;
Synology does not provide any public information on release dates of toolchains, kernel sources and other associated files. They generally state that it can take up to several months before those are made available.
Synology publishes the files on Sourceforge: https://sourceforge.net/projects/dsgpl/files/. Use Architecture per Synology model to look up the relation between a model and an architecture.
- The toolchain and kernel source has to be included in spksrc;
At this point, anyone can build packages for that model.
- The packages have to be built and published on the repository.
Which DSM versions do you support?
- spksrc can build packages for DSM4.0 and newer. However, due to the age of the toolchains, not all software can be compiled anymore.
- By default we publish the latest supported major DSM version in the SynoCommunity package repository; our latest supported version is currently DSM 7.
- Upon request, and based on best effort, we can publish packages for the previous DSM major version (currently DSM 5) on the SynoCommunity repository.
- For DSM4.2 and older, we might not be able to provide packages. You can try to build the packages yourself.
A package should be available for my model and DSM version, but I can't find it in Package Center. What do I do?
- If the package is listed as a
beta
package on https://synocommunity.com/packages, make sure you have turned onYes, I want to see beta versions
in the Package Center settings; - If you're using the search bar in Package Center, then select the drop-down arrow next to the magnifying glass, and set the value to
Community
.
Do you provide direct/manual downloads for packages?
Yes, at https://synocommunity.com/packages
Failed to install {package}
. What do I do?
I tried to install a package, and I get Set the trust level in the Package Center settings to Synology Inc. and trusted publishers
. See How do I add the SynoCommunity repository to my NAS.
A package does not start. What do I do?
Follow the instructions here: CONTRIBUTING.
A package does not show an icon in the DSM menu. How can I fix this?
The icon is shown to the user admin
by default. To show it for other users, log in as a user with administrator privileges. Then choose one of the following methods:
- Open Control Panel > Privileges. Select the application and activate the checkbox for the users who should see the icon;
- Open Control Panel > User. Select the correct user, click
Edit
and open the tab Applications. Activate the checkbox for the application for which the icon should be shown.
Notes:
- The icon does not affect access permissions;
- Packages that are command-line only will not show an icon.
-ash {command} : not found
. Help?
I'm trying to use a command-line only package, but I'm seeing Make sure you have set the path correctly, or use the full path to the binary. For some packages, we add a symlink to the most-used binary in /usr/local/bin
, which is on $PATH by default.
Examples:
PATH=/usr/local/git/bin:$PATH git
/usr/local/git/bin/git
How to query package status or start it from command line?
Only tested option is synopkg status packagename
and synopkg start packagename
If you find status
too slow to answer, here is a more technical work-around as root
:
SYNOPKG_PKGNAME="packagename"
SYNOPKG_PKGDEST=/var/packages/${SYNOPKG_PKGNAME}/target
SYNOPKG_DSM_VERSION_MAJOR=6
export SYNOPKG_PKGNAME SYNOPKG_PKGDEST SYNOPKG_DSM_VERSION_MAJOR
/var/packages/${SYNOPKG_PKGNAME}/scripts/start-stop-status status
Notice that because of use of non-privileged service account for most DSM 6 packages, start
and stop
cannot be used to same way with start-stop-status
package script.
Packages from the Package Center Download but Won't Install. What Can I Do?
Sometimes, when trying to install a package from the Package Center, the process appears to stall without any errors or progress. If this happens, follow these steps to troubleshoot:
-
Check Package Compatibility: First, verify if your architecture is supported. Visit the package overview and check the package details for compatibility with your system.
-
Try a Manual Installation: Download the package manually from the SynoCommunity page. When installing manually, errors may become visible that aren't shown during automated installation.
For example, in the case below, a conflict with another package (Emby Server) is causing the installation to fail:
Solution: Uninstall the conflicting package (in this case, Emby Server) before proceeding. This issue is known to Synology, and they are working on a fix.
*.sc
) located and what are there for (Advanced, requires ssh)?
Where are the firewall rule files (The rules show up in the firewall service picker. It allows easier management of firewall rules as it attaches a service name to a port number. It also ensures that the port cannot be used by a different service.
They are located in /usr/local/etc/services.d/[Package_Name].sc
and can easily be removed via this command: sudo servicetool --remove-configure-file --package [Package_Name].sc
This might be necessary if you cannot install a package because the file was left behind after an incomplete uninstallation.
Downgrade a package without uninstalling (Advanced)
Instead of uninstalling the (higher) version, you can fake a lower version number by modification of the INFO file of the installed package.
- SSH into the disk station
sudo vi /var/packages/[Package_Name]/INFO
- Modify version from e.g "5.20.1.34" to "1.0" and save the file
- Then it will display as 1.0 in DSM package center, and you can manually downgrade to an older version of the package.