Développement
- À propos du développement - Sur SliTaz et de SliTaz.
- Scripts SHell - #!/bin/sh
- Dialog - Création d'interface graphique basée sur la console.
- Geany - IDE ou Environnement de Développement Intégré.
- Perl ou Microperl - Coder et utiliser des scripts Perl et/ou CGI propulsés par microperl.
- Python - Le langage Python
- Ruby - Le langage Ruby
- Toolchain - Bibliothèques, compilateur C et outils associés.
À propos du dévelopement
SliTaz fournit quelques outils de développement, conception de sites web, édition avancée de scripts, et de code source avec l'IDE 'geany'. Création d'interface graphique à vos scripts SHell avec 'dialog'.
Si vous cherchez des informations sur le développement de SliTaz, le cookbook (livre de cuisine) vous décrira toutes les étapes de construction du système. Sur le site web de SliTaz, la partie devel vous donnera des informations générales au sujet des développeurs et des possibilités de participation.
Scripts SHell
L'écriture de scripts SHell est la manière la plus simple pour commencer à
coder, ils permettent d'avoir rapidement un résultat et les seuls prérequis
sont de savoir ouvrir un terminal et utiliser un éditeur de texte tels
que Nano, LeafPad ou Geany. Les scripts SHell permettent de faire énomérement
de choses sur un système GNU/Linux, initialiser le système, faire des
sauvegardes, exécuter des tâches répétitives, afficher des informations sur
l'état du système, créer ou modifier des fichier, etc. Dans un script SHell,
vous pouvez aussi utiliser des variables, des fonctions ou encore des appels
pour inclure un fichier. A noter que vous pouvez nommer vos scripts comme bon
vous semble et que l'utilisation de l'extension .sh
est largement
utilisée.
Créer un script SHell
Avant de commencer un nouveau script SHell, vous devez faire attention
à l'interprétateur utilisé. La plus part du temps les scripts SHell
utilisent /bin/sh
, cela permet d'être plus portable.
Il y a aussi des scripts qui appelent /bin/bash
, mais cela
implique que Bash soit installé sur le système. Pour qu'un script SHell
fonctionne il doit être exécutable par l'utilisateur courant, le changement
des permissions sur un fichier peut se faire en ligne de commande via
l'outils chmod
. Pour créer un script.sh
et le
rendre exécutable :
$ touch script.sh $ chmod +x script.sh
Maintenant que vous avez un nouveau fichier exécutable, vous allez pouvoir l'éditer. Vous pouvez continuer en restant dans le terminal et en utilisant l'éditeur Nano (Ctrl+X pour enregistrer) ou en ouvrant l'IDE Geany sur le fichier :
$ nano script.sh Ou : $ geany script.sh &
Voici un µscript qui contient une variable NAME
et qui en
affiche la valeur avec la commande echo
:
#!/bin/sh NAME="kayam" echo "$NAME est sympa."
Une fois que vous avez créé/modifié votre script.sh
, il suffit
d'enregistrer et d'exécuter le script pour voir le résultat :
$ ./script.sh
Voilà pour cette brève introduction au scripts SHell. Pour aller plus loin, le web regorge d'informations à ce sujet et regarder ce qu'on fait les autres peut aussi aider.
Dialog
Dialog permet de créer des interfaces graphique basées sur la console, telles que 'tazkmap'. Le fichier de configuration de dialog est /etc/dialogrc, et/ou ~/.dialogrc pour chaque utilisateur. Voici un simple exemple d'utilisation de dialog via une console ou un terminal :
$ dialog --title "Hello $USER" \ --msgbox "Message propulsé par dialog." 5 54
Vous trouverez pleins d'exemples de scripts dans le répertoire /sample des sources de dialog, que vous pouvez télécharger depuis: invisible-island.net/dialog/dialog.html. Download des sources avec 'wget' et décompression :
$ wget ftp://invisible-island.net/dialog/dialog.tar.gz $ tar xzf dialog.tar.gz
Geany IDE
Geany est un IDE ou Environnement de Dévelopement Intégré, il est simple, léger, et rapide, proposant la coloration syntaxique, les onglets, pliage/dépliage du code, la complétion automatique, de l'aide à l'écriture. Vous avez une liste des symboles, fonctions, méthodes, variables très utiles, avec une petite flèche de signalisation. Et encore, sélecteur de couleurs intégré, fenêtre de messages, lancement du script courant via le bouton Exécuter, etc. C'est avec lui que nous avons créé cette page, la documentation, et presque tout le site web (un peu avec Nano aussi).
Lancer Geany
Vous trouverez Geany dans le menu de JWM --> Development --> Geany. Un fois lancé pour la première fois, vous pouvez ajuster vos préférences via --> Editer --> Préférences. Vous pouvez aussi lancer Geany via un terminal X et la commande :
$ geany &
Note : Lors de la compilation des sources, le scripts ./configure
propose l'option : --enable-the-force
... Que l'on peut utiliser
si l'on penser avoir la force et être Luc Skywalker!
Perl ou Microperl - Coder/utiliser des scripts Perl
Sur SliTaz vous pouvez coder et utiliser le puissant langage de scripts Perl
via le binaire perl
ou microperl
. Microperl est une
version très allégée de Perl compilée à partir des sources officielles de Perl,
les scripts fonctionnant avec microperl sont complètement compatible avec la
version complète de Perl. C'est justement une des forces de Perl, il est portable
et fonctionne sur toutes les systèmes d'exploitations. Perl est un langage
interprété cela veut dire que le code n'a pas besoin d'être compilé et qu'il
peut être utilisé directement. A noter que sur SliTaz, perl
et/ou microperl
se sont pas installé par défaut sur le LiveCD, vous
pouvez soit reconstruire votre propore ISO en incluant Perl ou installer via
le gestionnaire de paquets. A noter que le paquet Microperl fait mois d'1 Mb
et ne fournit aucun modules, juste le minimum :
# tazpkg install perl Ou : # tazpkg install microperl
Hello world!
Le but de ce µscript est d'afficher Hello World. Vous pouvez
commencer par créer le fichier et le rendre exécutable depuis la ligne de
commandes et l'éditer ensuite graphiquement avec l'IDE Geany. A noter que nous
nommons le scripts hello.pl
mais que vous pouvez nommer un
script Perl comme bon vous semble, avec ou sans l'extension .pl
:
$ touch hello.pl $ chmod +x hello.pl $ geany hello.pl &
La première ligne d'un scripts Perl commence par définir le chemin vers
l'interprétateur Perl, généralement /usr/bin/perl
et pour
afficher du texte il suffit d'utiliser la commande print
.
Code à copier/coller. A noter que le langage Perl est sensible à la casse et
qu'une instruction devrait toujours se terminer par un point-virgule :
#!/usr/bin/perl # print "Hello World!\n";
Pour exécuter et tester le script :
$ ./hello.pl
Scripts CGI et Perl
Les scripts CGI ont pour but d'afficher des pages web générées dynamiquement. Le langage Perl assoicié au serveur web LightTPD vous permet d'utiliser des scripts CGI via votre espace public ou via des hôtes virtuels. Perl est tout à fait adapté au web 2.0 et permet de générer rapidement des pages xHTML. Sur SliTaz, vous devez avoir installé Perl ou Microperl et configuré le serveur Web LightTPD avant de pouvoir utiliser des scripts CGI codé en Perl. A noter que par défaut vous pouvez utiliser des scripts SHell (.sh) et les placer dans /cgi-bin/).
Une fois le server bien configuré, vous pouvez directement placer des scripts
CGI dans votre répertoire $HOME/Public/cgi-bin
en utilisant
l'extension .pl
ou .cgi
et les visualiser en local
ou à distance. Exemple de script CGI utilisant Perl :
#!/usr/bin/perl # print "content-type : text/html\n\n"; print "Hello World!\n";
Python
Le langage de programmation Python est disponible sous forme de paquet
facilement installable. Un fois Python installé vous pouvez créer vos propre
scripts/programmes et utiliser des applications CGI via le serveur Web LightTPD
en prenant soin de configurer le serveur
correctement. A noter que le dépôt Mercurial officiel de SliTaz fourni une
interface Web CGI/Python, c'est une solution adaptée à la production, robuste
et fiable. Pour installer le paquet python
avec Tazpkg :
# tazpkg get-install python
Ruby
Ruby est un langage de programmation interprété et orienté objet. Ruby
est fourni avec irb, un interpréteur de commandes interactif pour tester
en profondeur le fonctionnement du langage. Il existe même une version
web d'irb pour tester Ruby dans un navigateur. Ruby fourni aussi un
gestionnaire de paquet nommé gem
et un framework pour créer
des applications Web nommé rails
. Pour installer Ruby sur
SliTaz:
$ tazpkg get-install ruby
Le site oficell fourni toute la documentation utile à l'apprentissage du langage facilement et efficacement: www.ruby-lang.org
Toolchain - Bibliothèques, compilateur C et outils associés
Pour compiler des logiciels depuis les sources ou son propre code, vous avez au minimum, besoin de la chaîne d'outils de base (toolchain), composée des outils Binutils, de la bibliothèque Glibc , du compilateur GCC, des headers du noyau et de l'utilitaire Make. Cette chaîne d'outils peut être installée via le gestionnaire de paquets Tazpkg et une seule commande. A noter que cette toolchain est utilisée par les développeurs de SliTaz pour compiler le système entier depuis les sources. Pour installer les paquets via l'installation d'un meta paquet créant les dépendances qu'il faut :
# tazpkg get-install slitaz-toolchain
L'installation de la toolchain permet de compiler beaucoup d'applications de base et en mode texte. A noter que beaucoup de paquets compileront sans problème en utilisant le SHell Ash de Busybox, mais d'autres paquets ne compileront pas sans Bash. GNU bash est disponnible sous forme de paquet ainsi que divers outils de développement de base tels que Flex, M4, Bison, ou encore Pkg-config. Si vous cherchez pkg-config par exemple :
$ tazpkg search pkg-config
Si vous désirez compiler des applications utilsant les bibliothèques Ncurses,
vous devez installer le paquet ncurses-dev
complet (par défaut
il n'y a que le paquet minimum installé). A noter que le paquet ncurses fournit
aussi divers petits programmes tels que tic
ou tack
:
$ tazpkg search ncurses