Category Archives: Synology Devices

Synology installation of ipkg DSM yum or apt-get equivalent

The reference for the first part is at http://swwiki.e-dschungel.de/synology but is in German.

First up we need a package installer, ipkg

Check the Synology device for which cpu it has,

[text]
#cat /proc/cpuinfo | grep cpu
[/text]

Then select the appropriate script

CPU Bootstrap Script
ARM (armv5tejl) http://ipkg.nslu2-linux.org/feeds/optware/syno-x07/cross/unstable/syno-x07-bootstrap_1.2-7_arm.xsh
PowerPC (ppc_6xx) http://ipkg.nslu2-linux.org/feeds/optware/ds101g/cross/unstable/ds101-bootstrap_1.0-4_powerpc.xsh
PowerPC (ppc_85xx, e500v?) http://ipkg.nslu2-linux.org/feeds/optware/syno-e500/cross/unstable/syno-e500-bootstrap_1.2-7_powerpc.xsh
Marvell Kirkwood 88F6281, 88F6282, 88FR131 (ARMv5TE Feroceon) http://ipkg.nslu2-linux.org/feeds/optware/cs08q1armel/cross/stable/syno-mvkw-bootstrap_1.2-7_arm.xsh
Intel Atom http://ipkg.nslu2-linux.org/feeds/optware/syno-i686/cross/unstable/syno-i686-bootstrap_1.2-7_i686.xsh

and get it with

[text]
#wget http://your_selected_cpu_bootstrap_script_here
[/text]

then run it with

[text]
#sh your_selected_cpu_bootstrap_script_here
[/text]

This install ipkg, but it is not in the path for the Synology system. To add it to the path:

1. check the path

[text]
#cat /etc/profile
[/text]

and this should be there

[text]
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin export PATH
[/text]

extend the path to include our /opt directories with two command lines

[text]
# PATH=/opt/bin:/opt/sbin:$PATH
# export PATH
[/text]

Then we can test that ipkg is installed and will run from anywhere with

[text]
# ipkg -v
[/text]

Should respond with something like

[text]
# ipkg version 0.99.163
[/text]

If you now try to install a package, you will get an error

[text]
#ipkg install mc
Nothing to be done
An error ocurred, return value: 4.
[/text]

Which is ok, this is expected because the new install does not yet know where to look for ‘mc’

Note: ‘mc’ is just a favourite package of mine, (midnight commander, with the excellent mcedit editor) but you could try any packge you want like ‘nano’, etc.

The final step for installing ipkg is to update the repositories

[text]
# ipkg update
[/text]

Then try again and as ipkg now has a repository to call on, it should find the install package and install it.

Much Later: Corrected a couple of text errors, thanks to all who pointed them out!