====== Arborescence du Wiki ======
Ce tuto ne concerne pas les rédacteurs du Wiki, qui doivent eux créer leur tutos dans l'[[:atelier:]] :-)
Le Wiki est organisé suivant l'arborescence suivante :
===== Grandes lignes =====
* **Les pages des applications sont triées suivant la section Debian de leur paquet.**
* **Certaines sections Debian sont regroupées par thématique, ce qui donne une arborescence à trois niveaux.**
* **Les noms des sections sont traduits et raccourcis pour ne pas faire des url à rallonge.**
===== Arborescence =====
les éléments en gras représentent des dossiers
* **:accueil**
* Présentation Debian
* Présentation Wiki
* Présentation Forum
* **:asso:** (Association)
* Bla…
* **:atelier:**
* Conventions
* Mise en page
* Nommage
* Outils préférés
* Arborescence //Comment sont classées les pages et où les admins/modo doivent les ranger//
* Bac à sable //Page pour tester les commandes du wiki.//
* **chantier:** (Pages en chantier) //Les nouvelles pages sont créés ici avant d'être transférées par les admins/modos au bon endroit. Les utilisateurs pas sûr de leurs modifications peuvent copier la page à modifier ici et l'éditer.//
* **:doc:** (Documentation)
* **faq:** //Foire Aux Questions//
* migrer //Migrer depuis Windows. Tableau d'équivalence GNU/Linux des logiciels//
* **autres:**
* (misc) Miscellaneous //Miscellaneous utilities that didn't fit well anywhere else.//
* (virtual) Virtual packages //Virtual packages.//
* Documentation //FAQs, HOWTOs and other documents trying to explain everything related to Debian, and software needed to browse documentation (man, info, etc).//
* **editeurs:** (Éditeurs de texte, Bureautique, Edit)
* (text) Text Processing //Utilities to format and print text documents.//
* (editors) Editors //Software to edit files. Programming environments.//
* **environnements:** (Environnements de bureau)
* **xfce:**
* (xfce) Xfce //Xfce, a fast and lightweight Desktop Environment.//
* **kde:**
* (kde) KDE //The K Desktop Environment, a powerful, easy to use set of integrated applications.//
* **gnome:**
* (gnome) GNOME //The GNOME desktop environment, a powerful, easy to use set of integrated applications.//
* **x11:**
* (x11) X Window System software //X servers, libraries, fonts, window managers, terminal emulators and many related applications.//
* **electronique:**
* (electronics) Electronics //Electronics utilities.//
* (embedded) Embedded software //Software suitable for use in embedded applications.//
* **install:** (Installation Debian)
* Support d'installation
* Mediums : CD/DVD/BlueRay/USB
* Interface : texte vs graphique
* Iso : CD1 vs CD1-KDE vs netinst vs LiveDebian
* Préparation de l'installation
* dual-boot et partitionnement
* efi/uefi
* Installation standard
* Installation experte
* Installation réseau (PXE)
* **jeux:**
* (games) Games //Programs to spend a nice time with after all this setting up.//
* **materiel:**
* **imprimantes-scanners:**
* hp laserjet machine chouette
* Canon trucs bidules
* **cartes-graphique:** (GPU, C-Graphique, C-Graph)
* Tuto installation pilote AMD libre
* Tuto installation pilote Nvidia libre
* Tuto installation pilote Nvidia proprio
* **cartes-son:**
* **webcams:**
* **media:** (Multimédia & Graphisme)
* (sound) Sound //Utilities to deal with sound: mixers, players, recorders, CD players, etc.//
* (hamradio) Ham Radio //Software for ham radio.//
* (video) Video //Video viewers, editors, recording, streaming.//
* (graphics) Graphics //Editors, viewers, converters... Everything to become an artist.//
* (fonts) Fonts //Font packages.//
* **programmation:** (Prog, Dev, Développement/Script)
* (devel) Development //Development utilities, compilers, development environments, libraries, etc.//
* (perl) Perl //Everything about Perl, an interpreted scripting language.//
* (php) PHP //Everything about PHP.//
* (python) Python //Everything about Python, an interpreted, interactive object oriented language.//
* (ruby) Ruby //Everything about Ruby, an interpreted object oriented language.//
* (shells) Shells //Command shells. Friendly user interfaces for beginners.//
* (zope) Zope/Plone Framework //Zope Application Server and Plone Content Managment System.//
* (libdevel) Library development //Libraries necessary for developers to write programs that use them.//
* (libs) Libraries //Libraries to make other programs work. They provide special features to developers.//
* (ocaml) OCaml //Everything about OCaml, an ML language implementation.//
* (java) Java //Everything about Java.//
* (interpreters) Interpreters //All kind of interpreters for interpreted languages. Macro processors.//
* (haskell) Haskell //Everything about Haskell.//
* (database) Databases //Database Servers and Clients.//
* (gnustep) GNUstep //The GNUstep environment.//
* (lisp) Lisp //Everything about Lisp.//
* (cli-mono) Mono/CLI //Everything about Mono and the Common Language Infrastructure.//
* **reseau:** (Réseaux et Communications)
* (comm) Communication Programs //Software to use your modem in the old fashioned style.//
* (web) Web Servers //Web servers and their modules.//
* (mail) Mail //Programs to route, read, and compose E-mail messages.//
* (net) Network //Daemons and clients to connect your system to the world.//
* (news) Newsgroups //Software to access Usenet, to set up news servers, etc.//
* Web Software //Web servers, browsers, proxies, download tools etc.//
* **sciences:**
* (math) Mathematics //Math software.//
* (science) Science //Basic tools for scientific work//
* (text) TeX //The famous typesetting software and related programs.//
* (gnu-r) GNU R //Everything about GNU R, a statistical computation and graphics system.//
* **systeme:**
* (admin) Administration Utilities //Utilities to administer system resources, manage user accounts, etc.//
* debian-installer udeb packages //Special packages for building customized debian-installer variants. Do not install them on a normal system!//
* (debug) Debug packages //Packages providing debugging information for executables and shared libraries.//
* (kernel) Kernels //Operating System Kernels and related modules.//
* (utils) Utilities //Utilities for file/disk manipulation, backup and archive tools, system monitoring, input systems, etc.//
* (vcs) Version Control Systems //Version control systems and related utilities.//
* (oldlibs) Old Libraries //Old versions of libraries, kept for backward compatibility with old applications.//
* (otherosfs) Other OS's and file systems //Software to run programs compiled for other operating systems, and to use their filesystems.//
* Language packs //Localization support for big software packages.//
* **:man:** (dossier contenant les man en français, généré automatiquement)
* '':man:uname''
* **:utilisateurs:** //Dossier contenant les pages créées par les utilisateurs.//
* **captnfab:**
===== Mettre un tuto à sa place ====
Ce paragraphe s'adresse principalement aux modérateurs, seuls habilités à déplacer les tutos (et encore, pas encore :-P).
==== Identifier le paquet ====
Pour identifier de quel paquet vient une application __installée__, on utilise ''dpkg -S //appli//''.
Exemple :
dpkg -S ifconfig
...
net-tools: /sbin/ifconfig
...
Nous indique que l'appli ''ifconfig'' est dans le paquet ''net-tools''.
Pour une application qui n'est pas installée, il faudra utiliser ''apt-file''.
==== Identifier la section ====
Pour identifier à quelle section appartient un paquet, on utilise ''apt-cache show //paquet// | grep "^Section"''.
Exemple :
apt-cache show net-tools | grep "^Section"''
Section: net
La page ''ifconfig'' est donc classée dans '':doc:reseau:ifconfig''.
==== Exemple ====
Ou pour une application, par exemple ''dvdauthor'' :
apt-cache show dvdauthor | grep "^Section"''
Section: video
Où l'on voit que que le tuto : **dvdauthor** sera créé dans la page '':doc:media:video:dvdauthor''
==== Automatisation ====
Voici un script tentant d'automatiser la détection de la nouvelle adresse en fonction du nom de la page :
#!/bin/bash
set -e
set -x
set -u
APP=$1
PACKAGE=$(apt-cache search -n '^'"$APP"'$' |cut -f1 -d' ')
if [ -z "$PACKAGE" ];
then
PACKAGE=$(apt-file search -F -l "/usr/bin/$APP")
fi
if [ -z "$PACKAGE" ];
then
PACKAGE=$(apt-file search -F -l "/bin/$APP")
fi
if [ -z "$PACKAGE" ];
then
PACKAGE=$(apt-file search -F -l "/sbin/$APP")
fi
if [ -z "$PACKAGE" ];
then
PACKAGE=$(apt-file search -F -l "/usr/sbin/$APP")
fi
if [ -z "$PACKAGE" ];
then
echo "Paquet non-trouvé"
exit 1
fi
SECTION=$(apt-cache show $PACKAGE | sed -n '/^Section/s/^Section: //p')
declare -A paths
paths["unknown"]="doc:autres"
paths["virtual"]="doc:autres"
paths["admin"]="doc:systeme"
paths["alien"]="doc:systeme"
paths["base"]="doc:programmation"
paths["cli-mono"]="doc:programmation"
paths["comm"]="doc:reseau"
paths["database"]="doc:programmation"
paths["debug"]="doc:systeme"
paths["devel"]="doc:programmation"
paths["editors"]="doc:editeurs"
paths["electronics"]="doc:electronique"
paths["embedded"]="doc:electronique"
paths["fonts"]="doc:media"
paths["games"]="doc:jeux"
paths["gnome"]="doc:environnements:gnome"
paths["gnu-r"]="doc:sciences"
paths["gnustep"]="doc:programmation"
paths["graphics"]="doc:media"
paths["hamradio"]="doc:media"
paths["haskell"]="doc:programmation"
paths["httpd"]="doc:reseau"
paths["interpreters"]="doc:programmation"
paths["java"]="doc:programmation"
paths["kernel"]="doc:systeme"
paths["kde"]="doc:environnements:kde"
paths["libdevel"]="doc:programmation"
paths["libs"]="doc:programmation"
paths["lisp"]="doc:programmation"
paths["localization"]="doc:systeme"
paths["mail"]="doc:reseau"
paths["math"]="doc:sciences"
paths["misc"]="doc:autres"
paths["net"]="doc:reseau"
paths["news"]="doc:reseau"
paths["ocaml"]="doc:programmation"
paths["oldlibs"]="doc:systeme"
paths["otherosfs"]="doc:systeme"
paths["perl"]="doc:programmation"
paths["php"]="doc:programmation"
paths["python"]="doc:programmation"
paths["ruby"]="doc:programmation"
paths["science"]="doc:sciences"
paths["shells"]="doc:programmation"
paths["sound"]="doc:media"
paths["tex"]="doc:sciences"
paths["text"]="doc:editeurs"
paths["utils"]="doc:systeme"
paths["video"]="doc:media"
paths["vcs"]="doc:systeme"
paths["web"]="doc:reseau"
paths["x11"]="doc:environnements:x11"
paths["xfce"]="doc:environnements:xfce"
paths["zope"]="doc:programmation"
NEWPATH=${paths[${SECTION}]}":"$APP
echo "Page=$APP Paquet=$PACKAGE Section=$SECTION NouveauNom=$NEWPATH"