Tags

Apple Wiki Server

Cet article tente de regrouper des informations sur la structure et le fonctionnement du Wiki Server de Mac OS X. Vu le peu d'informations que j'ai pu trouver pour le moment, je me dis que cela pourra peut-être resservir à d'autres.

Cela fait une semaine que j'ai commencé à utiliser Mac OS X Server 10.6 « Snow Leopard », et globalement j'en suis plutôt content.

La mise en oeuvre est relativement aisée pour peu qu'on ait un minimum de connaissances sur les serveurs en général (Mac OS X Server réutilise un certain nombre de projets connus du monde « libre » comme Postfix, Dovecot, Apache, BIND, Samba, SpamAssassin, ClamAV, SQLite, CUPS et j'en passe) et Mac en particulier (notamment l'utilisation de l'Open Directory, ou l'emplacement de certains fichiers système à des emplacement inhabituels pour un système BSD). Fort heureusement, j'utilisais déjà une partie des applications pré-citées telles Postfix, CUPS ou Samba sur mon serveur GNU/Linux Debian et j'en suis à mon quatrième Mac « moderne » de l'ère Mac OS X.

Par contre je n'avais jamais tenu de blog. Comme le serveur 10.6 intègre un certain nombre d'outils de collaboration permettant de créer blogs, wikis et calendriers, j'ai décidé de m'y mettre avec l'Apple Wiki Server.

L'éditeur wysiwyg du weblog et du wikiLe weblog made in Apple est assez simple à utiliser.

L'éditeur de pages wysiwyg est facile de prise en main et permet même de visualiser et modifier le code html du document (bien qu'il ne laisse pas modifier n'importe quoi).

Les écrans de paramétrage permettent de choisir un thème graphique parmi une liste prédéfinie (choix de la couleur dominante, avec ou sans bannière).

On a le choix de la visibilité des pages de wiki et weblog (réservé à un cercle privé de personnes identifiées ou accessible au public) ainsi que de la possibilité ou non de laisser des commentaires, éventuellement après modération.

Par contre on ne semble pas pouvoir afficher de calendrier des archives du blog dans une barre latérale, comme c'est courant dans la majorité des blogs que j'ai déjà vu. Mis à par cette dernière limitation, pour moi qui n'ai jamais blogué jusqu'alors l'apparente simplicité du Wiki Server Apple n'est (pour le moment) pas gênante.

En revanche, quand j'ai voulu en savoir plus sur le moteur utilisé, le choix du langage, la structure des templates de page ou l'emplacement des données stockées je n'ai pas trouvé grand chose sur le waste, waste web.

Regardons le serveur de plus près


Apple documente une partie de la disposition des fichiers (pour la partie thèmes, css et sidebars) dans ses manuels Wiki Server Administration (pour 10.6) ou Extending your Wiki Server (pour 10.5) qui sont disponibles sur leur site dans la section Support / Manuals / Servers and Enterprise software.

Je n'avais pas encore trouvé avec quoi fonctionne le moteur wiki / weblog; il semble que ce soit avec python + twisted + sqlite, comme le décrivent ces intéressants articles A web developer’s introduction to the Apple WikiServer : partie 1 et partie 2.

En recoupant ces informations avec l'existant, on peut lister les différents emplacements du code et des données du wiki :

path nature des données Remarques
/Library/Application Support/Apple/WikiServer/Themes fichiers plist, css et png des thèmes les css importent les informations depuis /usr/share/collaboration, sauf wireframe.theme
/usr/share/collaboration/themes/ fichiers plist, css et png des thèmes véritable emplacement des css
/Library/Collaboration/Users/username/weblog/ contenu des entrées du blog un folder par page (avec un nom unique) :
- un fichier plist pour garder certaines informations (auteur, dernier à avoir modifié, ...)
- un fichier html de la dernière version
- une base SQLite qui conserve toutes les révisions
/usr/share/wikid/ moteur python


Outils utiles

  • Les fichiers plist sont des documents xml modifiables avec n'importe quel éditeur texte tel nano, vi ou même TextEdit.app en mode plain text. Apple mentionne dans ses manuels Property List Editor qui fait partie des outils fournis avec XCode, disponible à tout titulaire d'un compte ADC (inscription gratuite). Je suis parvenu à utiliser cet outil sur mon serveur sans installer XCode, en le recopiant depuis mon iMac où XCode est installé, mais ce n'est pas très pratique (nécessite de recopier des frameworks et de corriger des droits). Cela pourrait faire l'objet d'un autre article. Par ailleurs, il est possible d'utiliser une ancienne version qui n'a pas de dépendances envers XCode disponible ici : Property List Editor v.1.2.8
  • Les fichiers db sont des bases SQLite. Il existe un certain nombre d'applications mac permettant d'accéder à une base SQLite. Pour ma part, je recommande SQLite Database Browser.




Comments

Florian (unauthenticated)
Nov 28, 2014

Bonjour,

Je suis tombé sur votre blog en faisant des recherches sur le fonctionnement de (os x server). Je viens moi-même de me lancer dans l'aventure avec Yosemite, mais comme toute aventure il y a des imprévus... Je ne sais pas comment rendre accessible tout ça via internet.

Pour le moment je peux visionner mon wiki ou mon site uniquement via le local.

Si vous pouvez m'aider à ce sujet je vous en serais vraiment reconnaissant !

Merci d'avance,

Sébastien Kirche
Jan 20, 2015

Je vous invite à poser sur http://superuser.com/ (un site frère de stackoverflow.com que je fréquente beaucoup) ce genre de question. Je soupçonne que le serveur OSX soit derrière un pare-feu qui doit être configuré pour laisser passer les requêtes web entrantes et les rediriger vers la machine où est OSX...