Site web

De VoWiki
Aller à la navigation Aller à la recherche
La version imprimable n’est plus prise en charge et peut comporter des erreurs de génération. Veuillez mettre à jour les signets de votre navigateur et utiliser à la place la fonction d’impression par défaut de celui-ci.

AccueilNos Projets


Étude des besoins

  • communiquer les news avec le public (blog, facebook, twitter, RSS, Google+, Diaspora*, ...)
    • réalisations
    • articles et tutoriels
    • événements
    • invitation aux séances de formations
  • communiquer les news avec les membres (galette)
    • infos administratives
    • infos techniques
    • demande d'aide
  • documentation pour le public et les membres : tutoriels, retours d'expérience, etc. (wiki)
  • documentation des projets centralisée et uniforme (wiki)
  • référentiel pour le code source et la CAD (et dans certain cas pour la documentation) (github)
  • agenda partagé pour les membres et le public (est-ce vraiment utile ?)
  • partage de fichiers entre membres (pydio)
  • gérer les inscriptions aux formations (www.eventbrite.fr)


Problèmes avec la configuration actuelle

  • le wiki est utilisé comme CMS à sens unique
  • le menu du blog est à refaire
  • manque de dynamisme sur le wiki et le blog
  • le forum est très peu utilisé
  • ...


Outils : usages potentiels, forces et faiblesses

  • blog
    • communication figée et chronologique
  • cms
  • wiki
    • documentation
    • sa liberté d'usage fait que ça peut vite devenir le chaos si on y prête pas attention...
  • serveur de fichier interne
    • parfait pour échanger des binaires (exe, fichiers de CAD, fichiers STL/gcode/..., multimédia, open/libreoffice, word, ...)
  • serveur FTP (vs Pydio) ?
  • forum
  • www.eventbrite.fr
    • pour gérer les inscriptions aux formations
  • IRC
  • calendrier comme google calendar (import/export ical)
  • twitter
  • facebook
  • google+
  • diaspora*
  • pinterest
  • google drive
    • préférer les framapad (etherpad) ou owncloud
  • git / svn
    • pour le partage de code source et de documentation texte (latex, ReStructuredText, Markdown, Docbook, HTML, Troff, ...), a usage interne et/ou vers le publique
  • https://framadate.org/ alternative à doodle
  • owncloud
  • blog statiques (fichiers Markdown + Git)


Les outils/formats à éviter:

  • word/exel : ce ne sont pas des formats ouverts, préférer par exemple libreoffice ou openoffice


TODO list et propositions


Documentation publique (wiki)

Organisation documenatation wiki odt rst latex.png

Conversion ODT (openoffice/libreoffice) vers PDF et HTML

Conversion ODT vers PDF:

libreoffice --headless --convert-to pdf test.odt

Conversion ODT vers HTML (à améliorer : CSS personnalisé, etc.):

libreoffice --headless --convert-to html test.odt

Conversion ReStructuredText vers PDF et HTML

Cf. https://github.com/jdhp-misc/rst_jdhp_theme (en cours d'écriture).


Sphinx et readthedocs.org

...

Synchronisation des fichiers HTML et PDF générés depuis un serveur de fichier vers un serveur web

sync_files.sh:

#!/bin/sh

SRC_DIR=./          # Écrire ici le chemin vers le répertoire contenant les fichiers PDF et HTML à transférer sur le serveur web
DST_DIR=./          # Écrire ici le chemin vers le répertoire de données du serveur web

### CHECK COMMANDS ###

# command -v will return >0 when the $i is not found
command -v rsync >/dev/null && continue || { echo "rsync: command not found."; exit 1; }

### CHECK ARGS ###

if [ ! -d "$SRC_DIR" ] ; then echo "$SRC_DIR: directory not found." ; exit 1 ; fi
if [ ! -d "$DST_DIR" ] ; then echo "$DST_DIR: directory not found." ; exit 1 ; fi

### SYNC ###

echo "Synchronizing ${SRC_DIR} to ${DST_DIR}"
rsync -r -L -v -e ssh --delete ${SRC_DIR} ${DST_DIR}

Options utilisées pour rsync:

  • -e ssh : utilise SSH
  • -r : mode "récursif"
  • -L : déréférence les liens
  • -v : mode "verbeux"
  • --delete : supprime de $DST les fichiers qui ont été supprimés de $SRC depuis la dernière synchronisation

Synchronisation des fichiers HTML et PDF générés depuis un référentiel Git vers un serveur web

...

Automatisation avec Cron

Éditer la liste des taches cron avec la commande suivante:

crontab -e

Par exemple, pour synchroniser les fichiers toutes les heures:

0 * * * * /absolute/path/to/convert_and_sync.sh

ou pour synchroniser les fichiers tous les jours à 4h du matin:

0 4 * * * /absolute/path/to/convert_and_sync.sh

avec convert_and_sync.sh:

#!/bin/sh

convert_files.sh && sync_files.sh

et convert_files.sh:

#!/bin/sh

SRC_DIR=./          # Écrire ici le chemin vers le répertoire contenant les fichiers source (ODT, ...)
DST_DIR=./          # Écrire ici le chemin vers le répertoire contenant les fichiers PDF et HTML générés

### CHECK COMMANDS ###

# command -v will return >0 when the $i is not found
command -v libreoffice >/dev/null && continue || { echo "sync_a_file: command not found."; exit 1; }

### CHECK ARGS ###

if [ ! -d "$SRC_DIR" ] ; then echo "$SRC_DIR: directory not found." ; exit 1 ; fi
if [ ! -d "$DST_DIR" ] ; then echo "$DST_DIR: directory not found." ; exit 1 ; fi

### CONVERT FILES ###

# ODT FILES
find ${SRC_DIR} -type f -iname "*.odt" -execdir libreoffice --headless --convert-to html --outdir ${DST_DIR} {} \;
find ${SRC_DIR} -type f -iname "*.odt" -execdir libreoffice --headless --convert-to pdf --outdir ${DST_DIR} {} \;

# RST FILES
#...

Tous ces scripts sont disponibles sur le référentiel Git suivant : https://github.com/volab/vor-doctools

Écriture des liens dans le wiki

Écrire les liens comme suit dans le "wikicode":

* [http://volab.vorobotics.com/docs/nom_du_fichier.html Titre du document] (version [http://volab.vorobotics.com/docs/nom_du_fichier.pdf PDF])