Diaoul
SynoCommunity-
Compteur de contenus
2173 -
Inscription
-
Dernière visite
-
Jours gagnés
4
Tout ce qui a été posté par Diaoul
-
Dans le même style que optware il y a buildroot. J'essaye de migrer syno-packager vers ce style d'outil. S'il y a des volontaires pour aider, manifestez-vous !
-
:facepalm:
-
Toujours le chemin complet pour les AuthUserFile !
-
D'après : https://github.com/fatbob313/umurmur/blob/master/ChangeLog Rien de très palpitant Je vais sortir prochainement une nouvelle version de umurmur. Je suis en train de refaire syno-packager pour l'instant
-
Dès que une prochaine version de umurmur sort. Notament avec ça : https://github.com/fatbob313/umurmur/pull/4
-
Cool je regarde ce que je peux faire avec ça @zebulon: C'est bon ça comme canal de diffusion tu penses ? L'URL est plutôt pro et internationale je trouve
-
Une initiative similaire à été lancée par le forum de la communauté allemande : http://forum.synology.com/enu/viewtopic.php?f=27&t=41015 J'ai regardé ça à l'air sympa mais y'a aucun outil commun de cross compilation... Je suis en contact avec le gars pour en savoir un peu plus.
-
Donc si je vire start-stop-status ça le met non startable ? Cool. Pour les versions, d'après ce que j'ai pu constater, il faut que la seconde partie de la version 'xxxx-yyyy', 'yyyy' donc, soit > pour qu'il propose une mise à jour. Rien ne se passe sinon. J'ai fait le test en vitesse donc je peux me tromper. A versions identiques mais hash md5 différents, rien ne se passe.
-
Une des requêtes AJAX de DSM quand on ouvre le gestionnaire de paquets donne ça, c'est assez intéressant puisqu'on voit "startable". J'ai essayé plusieurs choses dans mes SPK pour le mettre à false sans succès. { "data" : [ { "pkgadminpath" : "", "pkgadminport" : 0, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Perl (used by other SPKs)", "pkgdisplayname" : "perl", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "perl", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "tip-0.1" }, { "pkgadminpath" : "", "pkgadminport" : 9200, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Open Source Binary Newsreader written in Python", "pkgdisplayname" : "SABnzbd", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "SABnzbd", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "0.6.8-1.4" }, { "pkgadminpath" : "", "pkgadminport" : 0, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Python (used by other SPKs)", "pkgdisplayname" : "Python", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "Python", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "2.7.2-2.0" }, { "pkgadminpath" : "", "pkgadminport" : 0, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Debian environment", "pkgdisplayname" : "debian-chroot", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "debian-chroot", "pkgstartable" : true, "pkgstatus" : "running", "pkgurl" : "", "pkgversion" : "tip-0.3" }, { "pkgadminpath" : "", "pkgadminport" : 9100, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "A Fast and Easy BitTorrent Client", "pkgdisplayname" : "transmission", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "transmission", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "2.33-1.0" }, { "pkgadminpath" : "", "pkgadminport" : 0, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "VPN Server offre une solution simple VPN qui transforme votre DiskStation en un serveur VPN, fournissant une manière sécurisée de connecter à un réseau local privé à un emplacement distant. Les services PPTP et OpenVPN sont tous les deux pris en charge.", "pkgdisplayname" : "VPN Server", "pkgdsmappnames" : "SYNO.SDS.VPN.Instance", "pkghelpurl" : "", "pkgicon" : "VPNCenter", "pkgisuninstui" : false, "pkgmaintainer" : "Synology Inc.", "pkgname" : "VPNCenter", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "1.0-1922" }, { "pkgadminpath" : "", "pkgadminport" : 0, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Useful tools (used by other SPKs)", "pkgdisplayname" : "toolbox", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "toolbox", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "tip-1.1" }, { "pkgadminpath" : "", "pkgadminport" : 0, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Cron Manager", "pkgdisplayname" : "cron-manager", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "cron-manager", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "tip-0.2" }, { "pkgadminpath" : "", "pkgadminport" : 9500, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Automatic music downloader for SABnzbd", "pkgdisplayname" : "headphones", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "headphones", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "tip-1.0" }, { "pkgadminpath" : "", "pkgadminport" : 9400, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Téléchargeur automatique de films via NZB ou torrent", "pkgdisplayname" : "CouchPotato", "pkghelpurl" : "", "pkgicon" : "CouchPotato", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "CouchPotato", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "tip-1.0" }, { "pkgadminpath" : "", "pkgadminport" : 9300, "pkgadminporturl" : "", "pkgautostart" : false, "pkgdescription" : "Automatic NZB and torrent downloader for TV shows", "pkgdisplayname" : "SickBeard", "pkghelpurl" : "", "pkgicon" : "", "pkgisuninstui" : false, "pkgmaintainer" : "diaoulael@gmail.com", "pkgname" : "SickBeard", "pkgstartable" : true, "pkgstatus" : "stop", "pkgurl" : "", "pkgversion" : "tip-1.2" } ], "success" : true }
-
Tout fonctionne bien sauf mes spk qui devaient se lancer au sein de DSM... On peut les lancer en popup mais pas en embedded.... Si quelqu'un a une id
-
<p> </p> <p> </p> <p>Non :</p> <div> </div>
-
Voilà j'ai codé 2 scripts PHP. Un pour l'upload avec un formulaire et un autre à indiquer dans DSM. Les sources seront là demain : https://github.com/Diaoul/syno-package-server Tout est automatique, on sélectionne le SPK, ça rempli la base de donnée et le rend téléchargeable via DSM.
-
Mon but est de remplir la base de donnée à l'upload d'un fichier via un script. Je ne suis pas sûr que ce soit faisable facilement avec cette approche. L'avantage c'est que c'est vraiment précis mais ça en devient complexe. Toi tu veux une ligne par package, moi je préfère une ligne par fichier. D'autant que les infos de JSON (hash md5, size, link) sont relatives au fichier, pas au package. Dans ton approche, tu les stoquerai ou ? Ca fait longtemps que je ne fais plus de SPK compatible DSM 2, c'est plus du tout la même approche que DSM 3. La compatibilité devrait être assurée avec DSM 3.x, plus de features pour DSM 3.2+ ceci-dit. Pour les modèles pareil. Chacun installe ce qu'il veut, si ça ramme il désinstalle et basta.
-
Pour la modélisation, ça va être 1 ligne dans la BDD par fichier. Donc index unique de la table packages serait package+arch PK id. Je pense reprendre la liste des champs de la réponse en JSON pour faire la base en y ajoutant l'architecture. Ca pose un problème pour les langues donc je ferai peut être une autre table package_descriptions avec une FK id_package, language CHAR 3 (ISO-639-2) et description (TEXT). Une simple jointure permettrait de répondre avec un JSON tout propre. Je ne sais pas si ça vaut le coup de garder l'historique des versions surtout quand on voit le format des versions Synology... De toutes façon, la réponse ne renvoit que la dernière version en date. Si on veut garder l'historique je splitterai le champ JSON version en deux : pkg_version et spk_version. Le champ JSON de la réponse sera recomposé facilement comme ça et on pourra plus facilement trier la table avec deux champs que un seul. Pour l'architecture il manque 88f6282 mais en fait il ne manque pas. Les synos à base de 88f6282 accèptent des SPK avec arch 88f6281. Soit j'écrirai 88f628x en base (plus cohérent) soit 88f6281. Ce qui est sûr c'est qu'il n'y aura pas de distinction entre 88f6281 et 88f6282 en base de donnée. Il ne me semble pas qu'il y ait des dépendances au sein des paquets de Synology donc je n'ai pas "cherché" ce champ. En admetant qu'il y en ait, je ne pense pas qu'elles soient multiples. Je l'ai deviné en fait car j'ai trouvé "install_dep_services" dans le INFO et j'ai vu "depsers" en JSON. J'ai donc déduit "install_dep_packages" car il y a "deppkgs" en JSON Mais le fonctionnement semble légèrement différent
-
Syno à répondu à ma demande de documentation. Elle sera fournie avec la prochaine version de DSM, il parrait. Autant dire que c'est pas pour tout de suite. Par ailleurs, j'ai testé un paramètre dans les fichiers INFO: install_dep_packages="dependance" Si le package "dependance" n'est pas installé, une erreur s'affiche. C'est super d'avoir la gestion des dépendances mais c'est limité à une seule dépendance. J'ai essayé pein de séparateurs sans succès, y compris le même que install_dep_services à savoir un espace. Dommage mais bon, c'est déjà un début.
-
Je suis en train de faire un script PHP d'upload de SPK. Le but est de parser le SPK uploadé (nom du SPK + Fichier INFO) de récupérer quelques autres informations (hash md5, size, etc.) et de remplir une base MySQL avec ces données. Un autre script récupèrera ces infos de la base MySQL et transmettra la liste des packages avec leur URL. J'ai déjà testé avec succès l'ajout d'un serveur personnalisé de paquets via DSM Aussi, dans syno-packager, je rajouterai une règle "publish" qui permettra d'uploader les SPK fraichement compilés directement et de déclencher tout ce bazar avec cURL. Ca fait longtemps que j'ai pas fait de PHP donc il va sans doute falloir sécuriser mon travail de porc
-
Ouep désolé j'avais pas eu le temps. De toutes façon là je fais un tour de tous mes SPK pour la 3.2 et prépare ce qu'il faut pour faire tourner un serveur de packages. Ça devrait arriver fin de ce WE.
-
Ouep mais je pense que c'est ce qui est utilisé après le tiret qui est utilisé pour savoir si Package Center doit faire une mise à jour ou pas. Du coup, si au lieu de mettre un build number (1922) on met un version number avec un point, est-ce que le détecteur de nouvelles version pete un cable ou pas ? Genre 1.9, etc.
-
C'est pas grave, ce qui transite en HTTP est juste le contenu du paquet en clair : Fichier INFO, dossier scripts avec ses fichiers et le package.tgz, le tout en tar. Je suis curieux pour cette histoire de build number des packages. J'aurai bien aimé un numéro de version plutot qu'un build number... yyy c'est flou...
-
Tape l'erreur sur internet, aparament c'est pas lié au SPK mais à ton Syno. Il y en a qui dise que rebooter résout le problème.
-
Aucune, je vais essayer de regarder mais je ne te garanti rien car je ne peux pas reproduire le bug
-
Bonjour tout le monde, Comme Synology n'est pas très généreux en terme de documentation, j'ai décide de regarder le fonctionnement de Package Center afin de créer éventuellement notre propre serveur de paquets afin de faciliter leur distribution. L'analyse des paquets HTTP transitant par le réseau devrait être suffisante pour essayer de répliquer le fonctionnement du serveur de paquets Synology. Cette analyse est encore en cours, n'hésitez pas à contribuer. Merci PiwiLAbruti pour la récupération des requêtes brutes Les intérogations restantes sont en orrange Récupération de la liste des paquets: Requête brute : POST /packageupdate/getpackages.php HTTP/1.1 User-Agent: "Mozilla/4.0 (compatible; MSIE 6.1; Windows XP)" Host: update.synology.com Accept: */* Content-Length: 93 Content-Type: application/x-www-form-urlencoded timezone=Brussels&language=fre&unique=synology_x86_411+II&arch=x86&major=3&minor=2&build=1922 Analyse requête : Si j'ai bien compris, la requête est faite vers update.synology.com/packageupdate/getpackages.php en POST avec comme paramètres: timezone: le timezone (format ISO... ?) language: format ISO 639-2 unique: identifiant du Syno (synology_arch_modèle), résultat de `get_key_value /etc.defaults/synoinfo.conf unique` arch: architecture, résultat de `get_key_value /etc.defaults/synoinfo.conf unique | cut -d_ -f2` major: major du DSM minor: minor du DSM build: build du DSM Réponse brute : HTTP/1.1 200 OK Date: Wed, 07 Sep 2011 10:46:41 GMT Server: Apache/2.2.16 (Unix) mod_ssl/2.2.16 OpenSSL/1.0.0c PHP/5.3.3 X-Powered-By: PHP/5.3.3 Vary: Accept-Encoding Transfer-Encoding: chunked Content-Type: text/html 1afbb [{"package":"phpMyAdmin","version":"3.2.5-003","dname":"phpMyAdmin","desc":"phpMyAdmin est un outil logiciel gratuit con\u00e7u pour g\u00e9rer les bases de donn\u00e9es MySQL. G\u00e9rez les bases de donn\u00e9es MySQL stock\u00e9es sur votre DiskStation en installant ce programme.","link":"http:\/\/ukdl.synology.com\/download\/packages\/phpMyAdmin-3.2.5-003.spk","md5":"fc2898f5f46e603cac06cb91cb271aca","icon":"[image encodée en Base64]","size":3840000,"qinst":true,"depsers":"apache-web mysql","deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false}, {"package":"MailStation","version":"20110715-035","dname":"Mail Station","desc":"Mail Station 2 fournit un service webmail afin que vous puissiez acc\u00e9der aux courriers \u00e9lectroniques stock\u00e9s sur votre DiskStation. De plus, vous pouvez \u00e9galement recevoir des courriers de n\u2019importe quel autre serveur de messagerie pour conserver tous vos messages dans un seul endroit facile d\u2019acc\u00e8s.","link":"http:\/\/ukdl.synology.com\/download\/packages\/MailStation2-20110715-035.spk","md5":"905efb6a4dd4fd5bfd3d9da4eceede95","icon":"[image encodée en Base64]","size":2119680,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"WordPress","version":"3.2-006","dname":"WordPress","desc":"WordPress est un outil open source de blog et une plateforme de publication \u00e0 base de PHP et MySQL. Le programme vous permet d'h\u00e9berger un blog WordPress sur votre DiskStation.","link":"http:\/\/ukdl.synology.com\/download\/packages\/WordPress-3.2-006.spk","md5":"a940355c11485e7fdf87bee0327498c3","icon":"[image encodée en Base64]","size":9441280,"qinst":false,"depsers":"apache-web mysql","deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"Hasplm","version":"8.3.0-3","dname":"Hasplm","desc":"Le programme Synology HASP est con\u00e7u pour fonctionner avec 1C ou d'autres applications install\u00e9es sur votre PC. DiskStation offrira la possibilit\u00e9 d'authentifier les applications sur vos clients PC et emp\u00eachera les utilisations non autoris\u00e9es et la duplication en installant ce programme.","link":"http:\/\/ukdl.synology.com\/download\/packages\/Hasplm-x86-8.3.0-3.spk","md5":"567e13df98781b9bcba7ee097b062b43","icon":"[image encodée en Base64]","size":3225600,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"HiDriveBackup","version":"1.0-1922","dname":"HiDrive Backup","desc":"HiDrive Backup fournit un moyen flexible et rapide de sauvegarder les dossiers partag\u00e9s du DiskStation vers le stockage en ligne STRATO HiDrive, qui peut servir comme votre site d'urgence pour la pr\u00e9servation des donn\u00e9es. Vous pouvez restaurer les donn\u00e9es de sauvegarde lorsque la r\u00e9cup\u00e9ration des donn\u00e9es existe.","link":"http:\/\/ukdl.synology.com\/download\/packages\/HiDriveBackup-x86-1.0-1922.spk","md5":"88fdce55d739ee20a43575bad891e9be","icon":"[image encodée en Base64]","size":634880,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"TimeBackup","version":"1.1-1922","dname":"Time Backup","desc":"Time Backup est une solution innovante qui sauvegarde les donn\u00e9es de la DiskStation en multiples versions. Vous pouvez naviguer intuitivement dans les versions et restaurer facilement les donn\u00e9es vers n'importe quelle version d'une heure sp\u00e9cifique.","link":"http:\/\/ukdl.synology.com\/download\/packages\/TimeBackup-x86-1.1-1922.spk","md5":"d81062947d90de19381c0d441c5f7989","icon":"[image encodée en Base64]","size":1976320,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"VPNCenter","version":"1.0-1922","dname":"VPN Server","desc":"VPN Server offre une solution simple VPN qui transforme votre DiskStation en un serveur VPN, fournissant une mani\u00e8re s\u00e9curis\u00e9e de connecter \u00e0 un r\u00e9seau local priv\u00e9 \u00e0 un emplacement distant. Les services PPTP et OpenVPN sont tous les deux pris en charge.","link":"http:\/\/ukdl.synology.com\/download\/packages\/VPNServer-x86-1.0-1922.spk","md5":"f3cdf8db5e12fa56175f4a58f916d29c","icon":"[image encodée en Base64]","size":2201600,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"DirectoryServer","version":"1.0-1922","dname":"Directory Server","desc":"Directory Server fournit le service LDAP avec un contr\u00f4le d'acc\u00e8s centralis\u00e9, l\u2019authentification et la gestion des comptes. Vous pouvez g\u00e9rer les utilisateurs et les groupes LDAP avec ce programme.","link":"http:\/\/ukdl.synology.com\/download\/packages\/DirectoryServer-x86-1.0-1922.spk","md5":"6dd688a47cea5bb6c61df8f7a341f60b","icon":"[image encodée en Base64]","size":256000,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"SqueezeCenter","version":"7.6.1-001","dname":"Squeezebox Server","desc":"Le serveur Squeezebox diffuse la musique stock\u00e9e sur le DiskStation vers votre Squeezebox Logitech\u00ae. Maintenant, commencez \u00e0 \u00e9couter votre collection de musique partout dans la maison.","link":"http:\/\/ukdl.synology.com\/download\/packages\/SqueezeboxServer-7.6.1-x86-001.spk","md5":"6673995bc1cacc1ea16703039ce94ded","icon":"[image encodée en Base64]","size":24842240,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"SyslogServer","version":"1.0-1922","dname":"Syslog Server","desc":"Le serveur Syslog offre une solution simple pour la collecte et l'affichage des messages de journaux des appareils r\u00e9seau. Il vous fournit une interface de gestion des journaux centralis\u00e9e et la fonction de recherche flexible pour vous aider \u00e0 trouver les informations utiles de mani\u00e8re efficace.","link":"http:\/\/ukdl.synology.com\/download\/packages\/SyslogServer-x86-1.0-1922.spk","md5":"3e1f330cc93d872bd7c83b3f4d0f12ec","icon":"[image encodée en Base64]","size":440320,"qinst":true,"depsers":null,"deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false},{"package":"Webalizer","version":"2.21-07","dname":"Webalizer","desc":"Webalizer est un programme d'analyse de journaux de serveur Web rapide et gratuit. DiskStation vous offre la possibilit\u00e9 de consulter les statistiques d'utilisation des services Web qui sont ex\u00e9cut\u00e9s sur DiskStation et utilisent le port , comme Web Station et Photo Station, apr\u00e8s l\u2019installation de ce programme.","link":"http:\/\/ukdl.synology.com\/download\/packages\/Webalizer-x86-2.21-07.spk","md5":"189283b0b1b1a886f695d875d331e3ac","icon":"[image encodée en Base64]","size":573440,"qinst":true,"depsers":"apache-web mysql","deppkgs":null,"start":true,"maintainer":"Synology Inc.","changelog":null,"beta":false}] Analyse réponse : Réponse en JSON encodé en UTF-8 et images en Base64. Aucune idée de ce que peut être 1afbb au début de la réponse... Pour les champs coté réponse: package: nom du package version: version du package (semble être au format x.x.x-yyy) avec x.x.x la version du binaire ou de l'appli et yyy le numéro de build du SPK. yyy peut aussi être un numéro de version standart (y.y.y par exemple) dname: nom à afficher du package desc: description longue dans la langue demandée link: lien vers le SPK md5: checksum md5 du SPK icon: image PNG 72*72 encodée en base64 size: taille du SPK, aucun impact sur l'installation qinst: quick install, permet de zapper quelques popups lors de l'i depsers: dépendances vers les services Synology (apache-web, mysql, etc.). Quelle est la liste des "services" ? deppkgs: dépendances vers d'autres packages start: le package est lançable ? maintainer: auteur/maintainer changelog: toujours null donc je ne connais pas le format mais sans doute une string beta: le package est en beta ?
-
C'est pas un problème, c'est normal.
-
Ces packages ne se lancent pas, c'est juste des dépendances pour d'autres packages
-
Je suis en train de migrer mes packages en ce moment. Je vais essayer de mettre un serveur de packages en place aussi, j'attends des retours de PiwiLabruti pour comprendre le protocole.