Closed nr-plaxon closed 3 years ago
I see indeed a few breaking changes in the new guide
I understand that none of the packages built in the past will work anymore on 7.0 without a proper upgrade. Indeed, in the INFO file, the os_min_ver field is now mandatory and must be at least 7.0-40000 or the package won't install :(
I see also that all packages must now provide a file "conf/privilege". I just started to add support for such configuration files in MODS but I am far from comfortable yet with them. I will need time to investigate further. This is the part going to take me a lot of time. Other changes sounds minor...
But I need to buy first a 2nd hand Synology to install DSM 7.0 (or be able to install it on XPenology in VMWare). Without a DSM 7.0 to test my packages, it will be walking in the dark...
I will post here when I start to work on this.
I can provide you with a VirtualDSM running DSM 7.0 Beta if this would help. Just let me know.
Thx. But I should get a second hand DS214play this afternoon. I will install DSM 7.0 Beta asap and do some tests...
I hope also that I will be able to capture some "native" packages of Synology to study their config. I always deeded some concrete samples in the past, as Synology documentation was never that clear.
[Edit] Capture Packages from DSM 7.0 will be really easy :D They are all here
[Edit²] Unfortunately, I can't find a trick to open those new spk (neither on Windows with 7zip on on my Syno with tar)?!?
$ tar -xvf phpMyAdmin-4.9.6-1017.spk tar: This does not look like a tar archive tar: Skipping to next header tar: Exiting with failure status due to previous errors
Ok... I have some progress on deploying a "MODS Dummy" package on DSM 7.0... I did implement support to edit the minimal requirement: set "run-as" = "package" in a conf/privilege file
Without that, we get the following error:
Next, it's mandatory to set the Min. Firmware = 7.0-40000 (NB: It's possible to add that version in the supported list, for auto completion, via Mods Settings > Mods Parameters > Edit DSM v.)
Without that, we get the following error:
I didn't try yet to sign my package, so, I had to accept this warning
Et voilà:
The source of this Dummy Package for DSM 7.0 is here" to open a URL on DSM 7.0
And I did check in my changes in MODS here
I didn't investigate further why I couldn't open the package (spk) of Synology yet. But I would guess that Synology did change something in the binary file (after compression with tar) to prevent us to open it...
In case of failure during installation, logs to be checked are:
Very good news.. the trick based on a pseudo "router.cgi" still works to run php scripts without the WebStation and the init 3rdParty...
I have however to find now how to get the privilege to create an link as: _ln: failed to create symbolic link '/usr/syno/share/nginx/conf.d/dsm.MODS_Dummy7.conf': Permission denied
If I create the link as admin from a SSH console, then it works (here : a php page to display the phpinfo)
That's good news to start with. Did you ever manage to extract the DSM 7.0 SPK for existing packages? This would be useful to make some changes to existing packages.
Unfortunately, I am still unable to open a SPK for DSM 7.0.
I did post a question on the forum... https://community.synology.com/enu/forum/20/post/140587
But as often, no answer :( Is there any real/active support forum for Synology ?
Ok... First packages for DSM 7.x work fine. Check here.
Still have to complete the documentation for those packages, clean-up a bit the scripts, and do so fine tuning in Mods Packager. But starting from those samples should do the trick.
That being said, I can still not open existing SPK from Synology. A workaround is to capture the SPK during installation.
Create a Shared Folder named "public" on the volume1 of your NAS Create a shell script named cp.sh in that share with:
#!/bin/bash
mkdir -p "/volume1/public/SynoCapture/"
rm -R /volume1/@tmp/pkginstall/*
echo "Press [CTRL+C] to stop.."
while true
do
rsync -qavr --exclude='*/package' /volume1/\@tmp/pkginstall/ /volume1/public/SynoCapture/ 2>/dev/null
done
And in a SSH console, run
cd /volume1/public
sudo ./cp.sh
It's not bullet proof, but voilà !
The SPK format has changed slightly in DSM 7.0 and DSM 7.0 packages currently cannot be opened in MODS. It would be great to implement support for DSM 7.0 SPKs.