Welcome to the Slackware Documentation Project

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
wiki:user:kikinovak [2013/03/03 07:32 (UTC)]
kikinovak
wiki:user:kikinovak [2014/02/20 06:38 (UTC)] (current)
kikinovak
Line 46: Line 46:
  
 Stuff I'm currently working on, and which will eventually end up as a page in the Slackware Documentation Project. Stuff I'm currently working on, and which will eventually end up as a page in the Slackware Documentation Project.
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +==== Gérer les paquets tiers confortablement avec sbopkg ====
 +
 +L'​outil ''​sbopkg''​ est une application tierce qui facilite énormément la construction et l'​installation de paquets tiers à partir des scripts de SlackBuilds.org. ​
 +
 +=== Installer sbopkg ===
 +
 +Aller sur le site http://​sbopkg.org et télécharger le paquet :
 +
 +<​code>​
 +# links http://​sbopkg.org
 +</​code>​
 +
 +Suivre le lien ''​Downloads''​ et télécharger le ''​Package''​. Puis :
 +
 +<​code>​
 +# installpkg sbopkg-0.36.0-noarch-1_cng.tgz
 +</​code>​
 +
 +=== Utiliser sbopkg ===
 +
 +Lancer ''​sbopkg''​ en invoquant son nom en tant que root. Au premier lancement, ''​sbopkg''​ propose de créer une série de répertoires nécessaires pour son fonctionnement. Confirmer avec la touche <​key>​C</​key>​ :
 +
 +<​code>​
 +# sbopkg
 +The following directories do not exist:
 +  ​
 +Variable ​                  ​Assignment
 +-------- ​                  ​----------
 +REPO_{ROOT,​NAME,​BRANCH} -> /​var/​lib/​sbopkg/,​SBo/,​14.0
 +LOGFILE directory -------> /​var/​log/​sbopkg
 +QUEUEDIR ---------------->​ /​var/​lib/​sbopkg/​queues
 +SRCDIR ------------------>​ /​var/​cache/​sbopkg
 +  ​
 +You can have sbopkg create them or, if these values are incorrect, you can
 +abort to edit your config files or pass different flags.
 +  ​
 +(C)reate or (A)bort?: ​
 +</​code>​
 +
 +La première chose à faire, c'est de synchroniser ''​sbopkg''​ avec le contenu de SlackBuilds.org avec l'​option ''​Sync with the remote repository''​. C'est une bonne idée de lancer une synchronisation avant toute installation. Une fois que la synchronisation est terminée (''​***SYNC COMPLETE***''​),​ confirmez simplement.
 +  ​
 +Dans l'​exemple,​ nous allons installer l'​utilitaire ''​unrar''​.
 +
 +   - Choisissez l'​outil de recherche ''​Search''​.
 +   - Dans le champ de recherche, tapez ''​unrar''​.
 +   - Dans la fenêtre des résultat, sélectionnez la ligne ''​system/​unrar''​.
 +   - L'​écran subséquent vous permet d'​effectuer toute une série d'​opérations. Vous pouvez par exemple visualiser le fichier ''​unrar.info''​ pour vérifier s'il n'y a pas de dépendances externes (il n'y en a pas).
 +   - Construisez le paquet avec ''​Process - Download/​build/​install unrar''​.
 +   - Confirmez simplement ''​Install - Download, build and install''​.
 +   - Démarrez l'​opération avec ''​Start''​.
 +
 +Si tout s'est bien passé, ''​sbopkg''​ construit et installe automatiquement le paquet. Appuyez sur n'​importe quelle touche pour revenir dans ''​sbopkg''​.
 +
 +
 +==== Installer des paquets tiers précompilés ====
 +
 +Certains sites proposent des paquets tiers précompilés pour Slackware. En règle générale, il vaut toujours mieux compiler ses propres paquets, ne serait-ce que pour de simples raisons de sécurité. Après tout, on peut mettre tout et n'​importe quoi dans un paquet et lui donner le nom qu'on veut.
 +
 +=== Les paquets fournis par Eric Hameleers ===
 +
 +Une exception peut être faite pour les paquets fournis par Eric Hameleers, développeur Slackware connu sous le nom de "​AlienBob"​. Eric fournit de nombreux paquets tiers très populaires parmi la communauté Slackware, notamment les "​usines à gaz" comme KDE ou LibreOffice qui nécessitent des heures voire des journées entières de compilation.
 +
 +  * Versions récentes de KDE : http://​alien.slackbook.org/​ktown/​
 +  * Les dernières versions de LibreOffice : http://​taper.alienbase.nl/​mirrors/​people/​alien/​slackbuilds/​libreoffice/​
 +  * OpenJDK : http://​taper.alienbase.nl/​mirrors/​people/​alien/​slackbuilds/​openjdk/​
 +  * VLC : http://​taper.alienbase.nl/​mirrors/​people/​alien/​restricted_slackbuilds/​vlc/​
 +  * Paquets de compatibilité 32-bit pour Slackware64 : http://​www.slackware.com/​~alien/​multilib/​
 +
 +Visitez le blog d'Eric pour être au courant des dernières nouveautés :
 +
 +  * http://​alien.slackbook.org/​blog/​
 +
 +==== Documentation ====
 +
 +Pages man :
 +
 +  * ''​installpkg(8)''​
 +  * ''​upgradepkg(8)''​
 +  * ''​removepkg(8)''​
 +  * ''​slackpkg(8)''​
 +  * ''​sbopkg(8)''​
 +  * ''​sbopkg.conf(8)''​
 +
 +Articles en ligne :
 +
 +  * http://​docs.slackware.com/​slackbook:​package_management
 +  * http://​www.linux.com/​learn/​tutorials/​261878-intro-to-slackware-package-management
 +  * http://​slackbuilds.org/​howto/​
 +  * http://​archive09.linux.com/​feature/​148826
 +
 +Livres :
 +
 +  * Linux Cookbook, Carla Schroder, Installing and Managing Software, 14-15
 +  * ibid., Installing Programs from Source Code, 55-57
 +
 +-----
  
 ===== Gestion des paquets logiciels ===== ===== Gestion des paquets logiciels =====
Line 66: Line 177:
 Exemples : Exemples :
  
-  * emacs-24.2-i486-1 +  * ''​emacs-24.2-i486-1''​ 
-  * mozilla-firefox-15.0.1-i486-1 +  * ''​mozilla-firefox-15.0.1-i486-1''​ 
-  * vim-7.3.645-x86_64-1+  * ''​vim-7.3.645-x86_64-1''​
  
  
Line 107: Line 218:
 </​code>​ </​code>​
  
-<note tip>Si l'on utilise le jeu de CDs, Emacs se trouve sur le 1er CD-Rom.</​tip>+<note tip>Si l'on utilise le jeu de CDs, Emacs se trouve sur le 1er CD-Rom.</​note>
  
 === Vérifier si un paquet est installé === === Vérifier si un paquet est installé ===
Line 118: Line 229:
 </​code>​ </​code>​
  
-Pour savoir si un paquet est installé, il suffit de vérifier s'il dispose d'une entrée correspondante dans ''/​var/​log/​packages''​. ​ +Pour savoir si un paquet est installé, il suffit de vérifier s'il dispose d'une entrée correspondante dans ''/​var/​log/​packages''​. Exemple :
- +
-Exemple :+
  
 <​code>​ <​code>​
Line 127: Line 236:
 </​code>​ </​code>​
  
-Firefox est installé sur le système, dans la version 15.0.1. +Firefox est installé sur le système, dans la version 15.0.1. Autre exemple :
- +
-Autre exemple :+
  
 <​code>​ <​code>​
Line 165: Line 272:
 </​code>​ </​code>​
  
-  ​1. Suivre le lien '​ChangeLogs'​. +  ​Suivre le lien ''​ChangeLogs''. 
-  ​ +  ​Repérer ​''​Slackware-stable ChangeLog'​'. 
-  2. Repérer '​Slackware-stable ChangeLog'​.+  - Lire le fichier ''​ChangeLog.txt''​ correspondant à l'​architecture du système.
  
-  3. Lire le fichier '​ChangeLog.txt' ​correspondant à l'architecture du système.+On pourra également utiliser ​le navigateur Links pour récupérer les mises à jour manuellementAvant de lancer Links, créer un répertoire ​''​/​root/​updates''​ dans lequel on rangera les mises à jour :
  
-On pourra également utiliser le navigateur Links pour récupérer les mises à +<​code>​ 
-jour manuellement. Avant de lancer Links, créer un répertoire '/​root/​updates' +# cd 
-dans lequel on rangera les mises à jour :+# mkdir updates 
 +# cd updates/ 
 +# links mirrors.slackware.com 
 +</​code>​
  
-  ​# cd +  ​Suivre le lien ''​Slackware File Tree''. 
-  # mkdir updates +  ​Repérer le répertoire correspondant à la version et à l'​architecture du système. 
-  # cd updates/ +  ​Aller dans le répertoire ​''​patches/​packages''. 
-  # links mirrors.slackware.com +  ​Télécharger les mises à jour disponibles.
- +
-  1. Suivre le lien '​Slackware File Tree'​. +
-  ​ +
-  2. Repérer le répertoire correspondant à la version et à l'​architecture du +
-  ​système. +
-  ​ +
-  3. Aller dans le répertoire '​patches/​packages'​. +
- +
-  ​4. Télécharger les mises à jour disponibles.+
   ​   ​
 Quitter Links et installer les mises à jour comme ceci : Quitter Links et installer les mises à jour comme ceci :
  
-  ​# upgradepkg bind-9.9.1_P4-i486-1_slack14.0.txz +<​code>​ 
- +# upgradepkg bind-9.9.1_P4-i486-1_slack14.0.txz
-  +============================================================================== +
-  | Upgrading bind-9.9.1_P3-i486-1 package using ./​bind-9.9.1_P4-i486-1_slack14.0.txz +
-  +==============================================================================+
  
-  ​Pre-installing package bind-9.9.1_P4-i486-1_slack14.0... ++============================================================================== 
- +| Upgrading bind-9.9.1_P3-i486-1 package using ./​bind-9.9.1_P4-i486-1_slack14.0.txz 
-  ​Removing package /​var/​log/​packages/​bind-9.9.1_P3-i486-1-upgraded-2012-11-21,​12:​14:​32... ++============================================================================== 
-    --> Deleting /​usr/​doc/​bind-9.9.1-P3/​CHANGES +Pre-installing package bind-9.9.1_P4-i486-1_slack14.0... 
-    --> Deleting /​usr/​doc/​bind-9.9.1-P3/​COPYRIGHT +Removing package /​var/​log/​packages/​bind-9.9.1_P3-i486-1-upgraded-2012-11-21,​12:​14:​32... 
-    --> Deleting /​usr/​doc/​bind-9.9.1-P3/​FAQ +  --> Deleting /​usr/​doc/​bind-9.9.1-P3/​CHANGES 
-    ... +  --> Deleting /​usr/​doc/​bind-9.9.1-P3/​COPYRIGHT 
-  Verifying package bind-9.9.1_P4-i486-1_slack14.0.txz. +  --> Deleting /​usr/​doc/​bind-9.9.1-P3/​FAQ 
-  Installing package bind-9.9.1_P4-i486-1_slack14.0.txz:​ +  ... 
-  PACKAGE DESCRIPTION:​ +Verifying package bind-9.9.1_P4-i486-1_slack14.0.txz. 
-  bind (DNS server and utilities) +Installing package bind-9.9.1_P4-i486-1_slack14.0.txz:​ 
-  +PACKAGE DESCRIPTION:​ 
-  # The named daemon and support utilities such as dig, host, and +bind (DNS server and utilities) 
-  # nslookup. ​ Sample configuration files for running a simple caching +
-  # nameserver are included. ​ Documentation for advanced name server +# The named daemon and support utilities such as dig, host, and 
-  # setup can be found in /​usr/​doc/​bind-9.x.x/​. +# nslookup. ​ Sample configuration files for running a simple caching 
-  +# nameserver are included. ​ Documentation for advanced name server 
-  Executing install script for bind-9.9.1_P4-i486-1_slack14.0.txz. +# setup can be found in /​usr/​doc/​bind-9.x.x/​. 
-  Package bind-9.9.1_P4-i486-1_slack14.0.txz installed.+
 +Executing install script for bind-9.9.1_P4-i486-1_slack14.0.txz. 
 +Package bind-9.9.1_P4-i486-1_slack14.0.txz installed.
   ​   ​
-  ​Package bind-9.9.1_P3-i486-1 upgraded with new package +Package bind-9.9.1_P3-i486-1 upgraded with new package 
-  ./​bind-9.9.1_P4-i486-1_slack14.0.txz.+./​bind-9.9.1_P4-i486-1_slack14.0.txz. 
 +</​code>​
  
 Autre exemple : Autre exemple :
  
-  ​# upgradepkg iptables-1.4.14-i486-2_slack14.0.txz+<​code>​ 
 +# upgradepkg iptables-1.4.14-i486-2_slack14.0.txz 
 +</​code>​
  
 +=== En savoir plus sur le contenu d'un paquet ===
  
-  En savoir plus sur le contenu d'un paquet +À chaque paquet installé correspond une entrée dans ''/​var/​log/​packages''​. Il s'agit de simples fichiers texte qui nous renseignent ​sur le contenu d'un paquet. Par exemple :
-  -----------------------------------------+
  
-À chaque paquet installé correspond une entrée dans '/​var/​log/​packages'​. Il +<​code>​ 
-s'agit de simples fichiers texte qui nous renseignent sur le contenu d'un +# less /​var/​log/​packages/​wget-1.14-i486-1 
-paquet. Par exemple : +PACKAGE NAME:     ​wget-1.14-i486-1 
- +COMPRESSED PACKAGE SIZE:     ​478.5K 
-  ​# less /​var/​log/​packages/​wget-1.14-i486-1 +UNCOMPRESSED PACKAGE SIZE:     ​2.0M 
-  PACKAGE NAME:     ​wget-1.14-i486-1 +PACKAGE LOCATION: /​var/​log/​mount/​slackware/​n/​wget-1.14-i486-1.txz 
-  COMPRESSED PACKAGE SIZE:     ​478.5K +PACKAGE DESCRIPTION:​ 
-  UNCOMPRESSED PACKAGE SIZE:     ​2.0M +wget: wget (a non-interactive network retriever) 
-  PACKAGE LOCATION: /​var/​log/​mount/​slackware/​n/​wget-1.14-i486-1.txz +wget: 
-  PACKAGE DESCRIPTION:​ +wget: GNU Wget is a free network utility to retrieve files from the  
-  wget: wget (a non-interactive network retriever) +wget: World Wide Web using HTTP and FTP, the two most widely used Internet 
-  wget: +wget: protocols. ​ It works non-interactively,​ thus enabling work in the 
-  wget: GNU Wget is a free network utility to retrieve files from the  +wget: background after having logged off. 
-  wget: World Wide Web using HTTP and FTP, the two most widely used Internet +wget: 
-  wget: protocols. ​ It works non-interactively,​ thus enabling work in the +wget: The author of Wget is Hrvoje Niksic <​hniksic@srce.hr>​. 
-  wget: background after having logged off. +wget: 
-  wget: +wget: 
-  wget: The author of Wget is Hrvoje Niksic <​hniksic@srce.hr>​. +wget: 
-  wget: +FILE LIST: 
-  wget: +./ 
-  wget: +install/ 
-  FILE LIST: +install/​slack-desc 
-  ./ +install/​doinst.sh 
-  install/ +usr/ 
-  install/​slack-desc +usr/bin/ 
-  install/​doinst.sh +usr/​bin/​wget 
-  usr/ +usr/man/ 
-  usr/bin/ +usr/​man/​man1/​ 
-  usr/​bin/​wget +usr/​man/​man1/​wget.1.gz 
-  usr/man/ +usr/info/ 
-  usr/​man/​man1/​ +usr/​info/​wget.info.gz 
-  usr/​man/​man1/​wget.1.gz +... 
-  usr/info/ +</​code>​
-  usr/​info/​wget.info.gz +
-  ...+
  
 +==== Gérer les paquets Slackware avec slackpkg ====
  
-Gérer les paquets Slackware avec '​slackpkg'​ +L'​utilitaire ​''​slackpkg'' a été officiellement inclus dans Slackware depuis la version 13.0. Il permet de gérer les paquets Slackware de manière beaucoup plus confortable. ​
-------------------------------------------- +
- +
-L'​utilitaire '​slackpkg'​ a été officiellement inclus dans Slackware depuis la +
-version 13.0. Il permet de gérer les paquets Slackware de manière beaucoup plus +
-confortable. ​+
  
 Deux mises en garde s'​imposent : Deux mises en garde s'​imposent :
  
-  ​1. Seuls les paquets officiels sont gérés par '​slackpkg'​. ​+  ​Seuls les paquets officiels sont gérés par ''​slackpkg'​'. 
 +  - La gestion des dépendances reste toujours à la charge de l'​administrateur.
  
-  2. La gestion des dépendances reste toujours à la charge de l'​administrateur. 
  
 +=== Configuration initiale ===
  
-  Configuration initiale +Éditer ''/​etc/​slackpkg/​mirrors''​ et décommenter //une seule// source de paquets au choix, par exemple :
-  ----------------------+
  
-Éditer '/​etc/​slackpkg/​mirrors'​ et décommenter UNE SEULE source de paquets au +<​code>​ 
-choix, par exemple : +/​etc/​slackpkg/​mirrors
- +
---8<​---------- ​/​etc/​slackpkg/​mirrors ​-----------------------------------------+
 ... ...
 # FRANCE (FR) # FRANCE (FR)
 ftp://​mirror.ovh.net/​mirrors/​ftp.slackware.com/​slackware-14.0/​ ftp://​mirror.ovh.net/​mirrors/​ftp.slackware.com/​slackware-14.0/​
 # http://​mirror.ovh.net/​mirrors/​ftp.slackware.com/​slackware-14.0/​ # http://​mirror.ovh.net/​mirrors/​ftp.slackware.com/​slackware-14.0/​
---8<--------------------------------------------------------------------------+</code>
  
-  ​> Attention à ne pas se tromper de section et à ne pas utiliser un site +<note warning>​Attention à ne pas se tromper de section et à ne pas utiliser un site miroir de ''​Slackware-current''​, sous peine de se retrouver avec la version de développement de Slackware !</​note>​
-    ​miroir de Slackware-current,​ sous peine de se retrouver avec la version de +
-    ​développement de Slackware !+
  
-Si l'on préfère gérer les paquets localement et faire fi des mises à jour, on +Si l'on préfère gérer les paquets localement et faire fi des mises à jour, on peut également utiliser le DVD d'​installation comme source de paquets. Dans ce cas, on modifiera le point de montage défini par défaut :
-peut également utiliser le DVD d'​installation comme source de paquets. Dans ce +
-cas, on modifiera le point de montage défini par défaut :+
  
---8<---------- ​/​etc/​slackpkg/​mirrors ​-----------------------------------------+<code> 
 +/​etc/​slackpkg/​mirrors ​
 ... ...
 #​---------------------------------------------------------------- #​----------------------------------------------------------------
Line 307: Line 399:
 cdrom://​mnt/​cdrom/​ cdrom://​mnt/​cdrom/​
 ... ...
---8<--------------------------------------------------------------------------+</code>
  
-Ne pas oublier de monter le DVD avant chaque invocation de '​slackpkg'​ :+Ne pas oublier de monter le DVD avant chaque invocation de ''​slackpkg'' :
  
-  ​# mount /dev/cdrom /mnt/cdrom+<​code>​ 
 +# mount /dev/cdrom /mnt/cdrom 
 +</​code>​
  
 Mettre à jour les informations sur les paquets disponibles : Mettre à jour les informations sur les paquets disponibles :
  
-  ​# slackpkg update+<​code>​ 
 +# slackpkg update 
 +</​code>​
  
-  ​> Notez bien que cette commande n'​installe pas de mises à jour de paquets. +<note>Notez bien que cette commande n'​installe pas de mises à jour de paquets. Elle synchronise seulement les informations sur ce que l'​on ​//​peut// ​installer.</​note> ​
-    ​Elle synchronise seulement les informations sur ce que l'​on ​PEUT installer. ​+
  
-  ​> Avant de rechercher, d'​installer ou de mettre à jour un paquet, c'est une +<note tip>Avant de rechercher, d'​installer ou de mettre à jour un paquet, c'est une bonne idée d'​invoquer ​''​slackpkg update'' pour être sûr d'​avoir des infos à jour sur les paquets disponibles.</​note>​
-    ​bonne idée d'​invoquer '​slackpkg update'​ pour être sûr d'​avoir des infos à +
-    ​jour sur les paquets disponibles.+
  
  
-  ​Installer des paquets +=== Installer des paquets ​===
-  ---------------------+
  
 Exemple avec un seul paquet : Exemple avec un seul paquet :
  
-  ​# slackpkg install mplayerplug-in+<​code>​ 
 +# slackpkg install mplayerplug-in 
 +</​code>​
  
-Il suffit de confirmer l'​installation dans l'​écran subséquent,​ et le paquet est +Il suffit de confirmer l'​installation dans l'​écran subséquent,​ et le paquet est directement récupéré et installé.
-directement récupéré et installé.+
  
 On peut également fournir plusieurs paquets en argument : On peut également fournir plusieurs paquets en argument :
  
-  ​# slackpkg install mplayerplug-in bittorrent+<​code>​ 
 +# slackpkg install mplayerplug-in bittorrent 
 +</​code>​
  
 Les groupes de paquets sont également gérés : Les groupes de paquets sont également gérés :
  
-  ​# slackpkg install kde+<​code>​ 
 +# slackpkg install kde 
 +</​code>​
  
 Ou encore : Ou encore :
  
-  ​# slackpkg install xfce+<​code>​ 
 +# slackpkg install xfce 
 +</​code>​
  
- +=== Supprimer des paquets ​===
-  ​Supprimer des paquets +
-  ---------------------+
  
 Exemple avec un seul paquet : Exemple avec un seul paquet :
  
-  ​# slackpkg remove mplayerplug-in +<​code>​ 
- +# slackpkg remove mplayerplug-in 
 +</​code>​ 
 Là aussi, il suffit de confirmer la suppression dans l'​écran récapitulatif. Là aussi, il suffit de confirmer la suppression dans l'​écran récapitulatif.
  
 Supprimer plusieurs paquets à la fois : Supprimer plusieurs paquets à la fois :
  
-  ​# slackpkg remove mplayerplug-in bittorrent+<​code>​ 
 +# slackpkg remove mplayerplug-in bittorrent 
 +</​code>​
  
 Les groupes de paquets sont également gérés pour la suppression : Les groupes de paquets sont également gérés pour la suppression :
  
-  ​# slackpkg remove kde+<​code>​ 
 +# slackpkg remove kde 
 +</​code>​
  
 Ou encore : Ou encore :
  
-  ​# slackpkg remove xfce +<​code>​ 
 +# slackpkg remove xfce 
 +</​code>​
  
-  ​Mettre à jour des paquets +=== Mettre à jour des paquets ​===
-  -------------------------+
  
 Lorsqu'​une mise à jour est disponible pour un paquet, on peut l'​installer comme Lorsqu'​une mise à jour est disponible pour un paquet, on peut l'​installer comme
 ceci : ceci :
  
-  ​# slackpkg upgrade iptables+<​code>​ 
 +# slackpkg upgrade iptables 
 +</​code>​
  
 De même pour plusieurs paquets : De même pour plusieurs paquets :
  
-  ​# slackpkg upgrade mozilla-firefox mozilla-thunderbird+<​code>​ 
 +# slackpkg upgrade mozilla-firefox mozilla-thunderbird 
 +</​code>​
  
 Dans la pratique quotidienne,​ on mettra à jour l'​intégralité du système : Dans la pratique quotidienne,​ on mettra à jour l'​intégralité du système :
  
-  ​# slackpkg upgrade-all +<​code>​ 
 +# slackpkg upgrade-all 
 +</​code>​
  
-  ​Rechercher des paquets ou des fichiers individuels +=== Rechercher des paquets ou des fichiers individuels ​===
-  --------------------------------------------------+
  
 Rechercher un paquet spécifique : Rechercher un paquet spécifique :
  
-  ​# slackpkg search k3b     +<​code>​ 
-  Looking for k3b in package list. Please wait... DONE +# slackpkg search k3b     
-  The list below shows all packages with name matching "​k3b"​. +Looking for k3b in package list. Please wait... DONE 
-  [uninstalled] - k3b-2.0.2_20120226.git-i486-1+The list below shows all packages with name matching "​k3b"​. 
 +[uninstalled] - k3b-2.0.2_20120226.git-i486-1 
 +</​code>​
  
 Si le paquet est déjà installé, on obtiendra le résultat suivant : Si le paquet est déjà installé, on obtiendra le résultat suivant :
  
-  ​# slackpkg search Terminal +<​code>​ 
-  Looking for Terminal in package list. Please wait... DONE +# slackpkg search Terminal 
-  The list below shows all packages with name matching "​Terminal"​. +Looking for Terminal in package list. Please wait... DONE 
-  [ installed ] - Terminal-0.4.8-i486-1+The list below shows all packages with name matching "​Terminal"​. 
 +[ installed ] - Terminal-0.4.8-i486-1 
 +</​code>​
  
-On peut également chercher des fichiers individuels,​ ce qui affichera le cas +On peut également chercher des fichiers individuels,​ ce qui affichera le cas échéant le ou les paquets contenant le fichier en question :
-échéant le ou les paquets contenant le fichier en question :+
  
-  ​# slackpkg file-search libncurses.so +<​code>​ 
-  Looking for libncurses.so in package list. Please wait... DONE +# slackpkg file-search libncurses.so 
-  The list below shows the packages that contains "​libncurses\.so"​ file. +Looking for libncurses.so in package list. Please wait... DONE 
-  [ installed ] - aaa_elflibs-14.0-i486-4 +The list below shows the packages that contains "​libncurses\.so"​ file. 
-  [ installed ] - ncurses-5.9-i486-1+[ installed ] - aaa_elflibs-14.0-i486-4 
 +[ installed ] - ncurses-5.9-i486-1 
 +</​code>​
  
 Si l'on veut en savoir plus sur le contenu d'un paquet : Si l'on veut en savoir plus sur le contenu d'un paquet :
  
-  ​# slackpkg info mesa+<​code>​ 
 +# slackpkg info mesa
  
-  ​PACKAGE NAME:  mesa-8.0.4-i486-1.txz +PACKAGE NAME:  mesa-8.0.4-i486-1.txz 
-  PACKAGE LOCATION: ​ ./​slackware/​x +PACKAGE LOCATION: ​ ./​slackware/​x 
-  PACKAGE SIZE (compressed): ​ 19208 K +PACKAGE SIZE (compressed): ​ 19208 K 
-  PACKAGE SIZE (uncompressed): ​ 83930 K +PACKAGE SIZE (uncompressed): ​ 83930 K 
-  PACKAGE DESCRIPTION:​ +PACKAGE DESCRIPTION:​ 
-  mesa: mesa (a 3-D graphics library) +mesa: mesa (a 3-D graphics library) 
-  mesa: +mesa: 
-  mesa: Mesa is a 3-D graphics library with an API very similar to that of +mesa: Mesa is a 3-D graphics library with an API very similar to that of 
-  mesa: another well-known 3-D graphics library. ​ :-)  The Mesa libraries are +mesa: another well-known 3-D graphics library. ​ :-)  The Mesa libraries are 
-  mesa: used by X to provide both software and hardware accelerated graphics. +mesa: used by X to provide both software and hardware accelerated graphics. 
-  mesa: +mesa: 
-  mesa: Mesa was written by Brian Paul. +mesa: Mesa was written by Brian Paul. 
-  mesa:+mesa: 
 +</​code>​
  
 +=== Faire le ménage ===
  
-  Faire le ménage +Supprimer tous les paquets tiers qui ne font pas partie de la distribution officielle :
-  ---------------+
  
-Supprimer tous les paquets tiers qui ne font pas partie de la distribution +<​code>​ 
-officielle :+# slackpkg clean-system 
 +</​code>​
  
-  # slackpkg clean-system+Dans l'​écran récapitulatif,​ il suffit de désélectionner les paquets que l'on souhaite garder.
  
-Dans l'​écran récapitulatif,​ il suffit ​de désélectionner les paquets ​que l'on +On peut également se servir ​de ''​slackpkg''​ pour réparer un paquet endommagé. Admettons ​que j'aie accidentellement supprimé le fichier ''/​usr/​bin/​glxgears'​'​. ​Dans un premier temps, il me faut rechercher le paquet qui le contient :
-souhaite garder.+
  
-On peut également se servir de '​slackpkg'​ pour réparer un paquet endommagé. +<​code>​ 
-Admettons que j'aie accidentellement supprimé le fichier '/​usr/​bin/​glxgears'​. +# slackpkg file-search glxgears 
-Dans un premier temps, il me faut rechercher le paquet qui le contient : +Looking for glxgears in package list. Please wait... DONE 
- +The list below shows the packages that contains "​glxgears"​ file. 
-  # slackpkg file-search glxgears +[ installed ] - mesa-8.0.4-i486-1 
-  Looking for glxgears in package list. Please wait... DONE +</​code>​
-  The list below shows the packages that contains "​glxgears"​ file. +
-  [ installed ] - mesa-8.0.4-i486-1+
  
 À partir de là, il me suffit de réinstaller le paquet en question : À partir de là, il me suffit de réinstaller le paquet en question :
  
-  ​# slackpkg reinstall mesa+<​code>​ 
 +# slackpkg reinstall mesa 
 +</​code>​
  
 +==== Recompiler des paquets officiels ====
  
-Recompiler des paquets officiels +Slackware fournit le code source de l'​ensemble du système dans le répertoire ''​source''​. À chaque paquet du système correspond un répertoire source. Ces répertoires source contiennent généralement :
---------------------------------+
  
-Slackware fournit ​le code source de l'ensemble du système dans le répertoire +  * le code source de l'application ou de la bibliothèque en question ; 
-'source'​. ​À chaque paquet ​du système correspond ​un répertoire sourceCes +  * sa recette de fabrication sous forme de fichier ​''​*.SlackBuild''​ ; 
-répertoires source contiennent généralement :+  * le descriptif ​du paquet, nommé ''​slack-desc''​ ; 
 +  * parfois, ​un fichier post-installation nommé ''​doinst.sh''​ ; 
 +  * d'​autres fichiers comme les patches, les entrées de menu, etc.
  
-  · le code source ​de l'​application ou de la bibliothèque en question ; +=== Fabriquer un paquet à partir du code source ​===
-  · sa recette de fabrication sous forme de fichier '​*.SlackBuild'​ ; +
-  · le descriptif du paquet, nommé '​slack-desc'​ ; +
-  · parfois, un fichier post-installation nommé '​doinst.sh'​ ; +
-  · d'​autres fichiers comme les patches, les entrées de menu, etc.+
  
 +Dans l'​exemple ci-dessous, nous allons compiler l'​application ''​Terminal''​ à partir des sources fournies par Slackware. Au préalable, il faut donc désinstaller le paquet correspondant s'il est installé :
  
-  Fabriquer un paquet à partir du code source +<code> 
-  ​------------------------------------------- +# removepkg Terminal 
- +</​code>​
-Dans l'​exemple ci-dessous, nous allons compiler l'​application Terminal à partir +
-des sources fournies par Slackware. Au préalable, il faut donc désinstaller le +
-paquet correspondant s'il est installé : +
- +
-  ​# removepkg Terminal+
  
 Choisir un endroit pour ranger le code source et les scripts, par exemple : Choisir un endroit pour ranger le code source et les scripts, par exemple :
  
-  ​# cd +<​code>​ 
-  # mkdir -pv source/​Terminal +# cd 
-  mkdir: création du répertoire ​« source » +# mkdir -pv source/​Terminal 
-  mkdir: création du répertoire ​« source/Terminal » +mkdir: création du répertoire ​« source » 
-  # cd source/​Terminal/​ +mkdir: création du répertoire ​« source/Terminal » 
-  # links mirrors.slackware.com+# cd source/​Terminal/​ 
 +# links mirrors.slackware.com 
 +</​code>​
  
-Récupérer le contenu de '​source/​xfce/​Terminal'​ sur un miroir de Slackware.+Récupérer le contenu de ''​source/​xfce/​Terminal'' sur un miroir de Slackware. ​Au total, on a :
  
-Au total, ​on a :+<​code>​ 
 +# ls -lh  
 +total 1,4M 
 +-rw-r--r-- 1 root root  821 nov.  24 15:09 slack-desc 
 +-rw-r--r-- 1 root root 1,4M nov.  24 15:11 Terminal-0.4.8.tar.xz 
 +-rw-r--r-- 1 root root 3,6K nov.  24 15:10 Terminal.SlackBuild 
 +</​code>​
  
-  # ls -lh  +Rendre le fichier ''​Terminal.SlackBuild''​ exécutable et lancer la construction du paquet ​:
-  total 1,4M +
-  -rw-r--r-- 1 root root  821 nov.  24 15:09 slack-desc +
-  -rw-r--r-- 1 root root 1,4M nov.  24 15:11 Terminal-0.4.8.tar.xz +
-  -rw-r--r-- 1 root root 3,6K nov.  24 15:10 Terminal.SlackBuild+
  
-Rendre le fichier 'Terminal.SlackBuild' exécutable et lancer la construction du +<​code>​ 
-paquet :+# chmod +x Terminal.SlackBuild 
 +# ./Terminal.SlackBuild 
 +</​code>​
  
-  # chmod +x Terminal.SlackBuild +Le script lance alors la construction du paquetL'​opération se termine par le message suivant :
-  # ./​Terminal.SlackBuild+
  
-Le script lance alors la construction du paquet. L'​opération se termine par le +<​code>​ 
-message suivant : +Slackware package /​tmp/​Terminal-0.4.8-i486-1.txz created. 
- +</​code>​
-  Slackware package /​tmp/​Terminal-0.4.8-i486-1.txz created.+
  
 Il ne reste plus qu'à installer ce paquet : Il ne reste plus qu'à installer ce paquet :
  
-  ​# installpkg /​tmp/​Terminal-0.4.8-i486-1.txz+<​code>​ 
 +# installpkg /​tmp/​Terminal-0.4.8-i486-1.txz 
 +</​code>​
  
 +=== Modifier un paquet officiel ===
  
-  Modifier un paquet officiel +L'​intérêt de recompiler un paquet officiel, c'est de pouvoir le modifier, par exemple en ajoutant ou en retirant certaines fonctionnalités. Dans l'​exemple suivant, nous allons recompiler le paquet ​''​audacious-plugins'' pour modifier le lecteur audio Audacious. Celui-ci comporte deux interfaces graphiques au choix, et nous allons en supprimer une.
-  --------------------------- +
- +
-L'​intérêt de recompiler un paquet officiel, c'est de pouvoir le modifier, par +
-exemple en ajoutant ou en retirant certaines fonctionnalités. Dans l'​exemple +
-suivant, nous allons recompiler le paquet '​audacious-plugins'​ pour modifier le +
-lecteur audio Audacious. Celui-ci comporte deux interfaces graphiques au choix, +
-et nous allons en supprimer une.+
  
 Pour commencer, supprimer le paquet s'il est installé : Pour commencer, supprimer le paquet s'il est installé :
  
-  ​# removepkg audacious-plugins +<​code>​ 
-  +# removepkg audacious-plugins 
 +</​code>​ 
 Ensuite, créer un endroit pour ranger le code source : Ensuite, créer un endroit pour ranger le code source :
  
-  ​# cd /​root/​source +<​code>​ 
-  # mkdir audacious-plugins +# cd /​root/​source 
-  # cd audacious-plugins +# mkdir audacious-plugins 
-  # links mirrors.slackware.com ​+# cd audacious-plugins 
 +# links mirrors.slackware.com ​ 
 +</​code>​
  
-Récupérer le contenu du répertoire '​source/​xap/​audacious-plugins'​ et rendre le +Récupérer le contenu du répertoire ​''​source/​xap/​audacious-plugins'' et rendre le script ​''​audacious-plugins.SlackBuild'' exécutable :
-script '​audacious-plugins.SlackBuild'​ exécutable :+
  
-  ​# chmod +x audacious-plugins.SlackBuild +<​code>​ 
-  # ls -lh +# chmod +x audacious-plugins.SlackBuild 
-  total 1,4M +# ls -lh 
-  -rw-r--r-- 1 root root 1,4M nov.  24 15:28 audacious-plugins-3.3.1.tar.xz +total 1,4M 
-  -rwxr-xr-x 1 root root 4,0K nov.  24 15:28 audacious-plugins.SlackBuild* +-rw-r--r-- 1 root root 1,4M nov.  24 15:28 audacious-plugins-3.3.1.tar.xz 
-  -rw-r--r-- 1 root root  892 nov.  24 15:28 slack-desc+-rwxr-xr-x 1 root root 4,0K nov.  24 15:28 audacious-plugins.SlackBuild* 
 +-rw-r--r-- 1 root root  892 nov.  24 15:28 slack-desc 
 +</​code>​
  
-Maintenant, éditer ​le SlackBuild et ajouter une option :+Maintenant, éditer ​''​audacious-plugins.SlackBuild'' ​et ajouter une option :
  
---8<---------- audacious-plugins.SlackBuild ----------------------------------+<code>
 ... ...
 # Configure: # Configure:
Line 558: Line 671:
   --mandir=/​usr/​man \   --mandir=/​usr/​man \
   --enable-amidiplug \   --enable-amidiplug \
-  --disable-gtkui \                  -> ajouter cette option+  --disable-gtkui \          -> ajouter cette option
   --program-prefix= \   --program-prefix= \
   --program-suffix= \   --program-suffix= \
Line 564: Line 677:
   --build=$ARCH-slackware-linux   --build=$ARCH-slackware-linux
 ... ...
---8<--------------------------------------------------------------------------+</code>
  
 Il ne reste plus qu'à construire et installer le paquet : Il ne reste plus qu'à construire et installer le paquet :
  
-  ​# ./​audacious-plugins.SlackBuild +<​code>​ 
-  ... +# ./​audacious-plugins.SlackBuild 
-  Slackware package /​tmp/​audacious-plugins-3.3.1-i486-1.txz created. +... 
-  # installpkg /​tmp/​audacious-plugins-3.3.1-i486-1.txz+Slackware package /​tmp/​audacious-plugins-3.3.1-i486-1.txz created. 
 +# installpkg /​tmp/​audacious-plugins-3.3.1-i486-1.txz 
 +</​code>​
  
 +=== Choisir les options de compilation ===
  
-  Choisir les options de compilation +Le script de configuration des sources (plus exactement la ligne à rallonge qui commence par ''​./​configure''​ dans le SlackBuild) affiche souvent un résumé des options ​activées ou désactivées. Pour interrompre le processus ​de construction du paquet et afficher ce résumé, on peut temporairement éditer le SlackBuild comme ceci :
-  ----------------------------------+
  
-Le script de configuration des sources (plus exactement la ligne à rallonge qui +<code>
-commence par '​./​configure'​ dans le SlackBuild) affiche souvent un résumé des +
-options activées ou désactivées. +
- +
-Pour interrompre le processus de construction du paquet et afficher ce résumé, +
-on peut temporairement éditer le SlackBuild comme ceci : +
- +
---8<---------- audacious-plugins.SlackBuild ----------------------------------+
 ... ...
 # Configure: # Configure:
Line 606: Line 714:
 make install DESTDIR=$PKG || exit 1 make install DESTDIR=$PKG || exit 1
 ...  ... 
---8<--------------------------------------------------------------------------+</code>
  
 Lancer le script, qui affichera un résumé de la configuration au bout de Lancer le script, qui affichera un résumé de la configuration au bout de
 quelques secondes : quelques secondes :
  
-  ​# ./​audacious-plugins.SlackBuild +<​code>​ 
-  ... +# ./​audacious-plugins.SlackBuild 
-  Configuration:​+... 
 +Configuration:​
   ​   ​
-  ​...+...
  
-  ​Interfaces +Interfaces 
-  ---------- +---------- 
-  GTK (gtkui): ​                           yes +GTK (gtkui): ​                           yes 
-  Winamp Classic (skins): ​                yes+Winamp Classic (skins): ​                yes 
 +</​code>​
  
 Les options de configuration sont toutes fournies par le code source lui-même : Les options de configuration sont toutes fournies par le code source lui-même :
  
-  ​# tar xvf audacious-plugins-3.3.1.tar.xz +<​code>​ 
-  # cd audacious-plugins-3.3.1 +# tar xvf audacious-plugins-3.3.1.tar.xz 
-  # ./configure --help | less +# cd audacious-plugins-3.3.1 
-  ... +# ./configure --help | less 
-  --disable-speedpitch ​   disable Speed and Pitch effect plugin +... 
-  --disable-gtkui ​        ​disable GTK interface (gtkui) +--disable-speedpitch ​   disable Speed and Pitch effect plugin 
-  --disable-skins ​        ​disable Winamp Classic interface (skins) +--disable-gtkui ​        ​disable GTK interface (gtkui) 
-  --disable-lyricwiki ​    ​disable LyricWiki plugin (default=enabled) +--disable-skins ​        ​disable Winamp Classic interface (skins) 
-  ...+--disable-lyricwiki ​    ​disable LyricWiki plugin (default=enabled) 
 +... 
 +</​code>​
  
-Deux remarques :+<note tip>Le script se charge déjà de décompresser les sources automatiquement dans ''/​tmp''​. On peut donc très bien invoquer ''​./​configure --help | less''​ à partir de ce répertoire,​ sans décompresser les sources dans le répertoire courant.</​note>​
  
-  ​Le script se charge déjà de décompresser les sources automatiquement dans +<note>L'activation ​de certaines fonctionnalités comme par exemple la gestion de certains formats audio propriétaires dépend de la présence de certaines bibliothèques sur le système.</​note>​
-    '/​tmp'​. On peut donc très bien invoquer '​./​configure --help | less' ​à +
-    partir ​de ce répertoire,​ sans décompresser les sources dans le répertoire +
-    courant.+
  
-  > L'activation ​de certaines fonctionnalités comme par exemple ​la gestion de +Une fois qu'on a choisi toutes les options ​de configuration,​ il ne reste plus qu'à supprimer ​la commande ''​exit 1''​ du script et lancer ​la compilation et l'​installation :
-    certains formats audio propriétaires dépend de la présence de certaines +
-    bibliothèques sur le système.+
  
-Une fois qu'on a choisi toutes les options de configuration,​ il ne reste plus +<​code>​ 
-qu'à supprimer la commande '​exit ​1' du script et lancer la compilation et +# ./​audacious-plugins.SlackBuild 
-l'​installation :+... 
 +Slackware package /​tmp/​audacious-plugins-3.3.1-i486-1.txz created. 
 +# installpkg /​tmp/​audacious-plugins-3.3.1-i486-1.txz 
 +</​code>​
  
-  # ./​audacious-plugins.SlackBuild +==== Compiler des paquets tiers ====
-  ... +
-  Slackware package /​tmp/​audacious-plugins-3.3.1-i486-1.txz created. +
-  # installpkg /​tmp/​audacious-plugins-3.3.1-i486-1.txz+
  
 +Comparé à des distributions comme Ubuntu ou Debian, Slackware n'​offre qu'un choix de paquets relativement limité. On en arrivera très vite au point de vouloir installer une application ou une bibliothèque qui n'est pas fournie par la distribution. Dans ce cas, que faire ?
  
-Compiler des paquets tiers +Le portail SlackBuilds.org (http://​slackbuilds.org) sera sans doute la meilleure adresse pour trouver des paquets tiers. Attention, SlackBuilds.org n'​est ​//​pas// ​un dépôt de paquets binaires. Il s'agit plutôt d'une collection extrêmement bien fournie de scripts de compilation dûment soignés et testés, qui vous permettent de compiler à peu près n'​importe quel paquet Slackware en un tournemain. ​
--------------------------- +
- +
-Comparé à des distributions comme Ubuntu ou Debian, Slackware n'​offre qu'​un +
-choix de paquets relativement limité. On en arrivera très vite au point de +
-vouloir installer une application ou une bibliothèque qui n'est pas fournie par +
-la distribution. Dans ce cas, que faire ? +
- +
-Le portail SlackBuilds.org (http://​slackbuilds.org) sera sans doute la +
-meilleure adresse pour trouver des paquets tiers. Attention, SlackBuilds.org +
-n'​est ​PAS un dépôt de paquets binaires. Il s'agit plutôt d'une collection +
-extrêmement bien fournie de scripts de compilation dûment soignés et testés, +
-qui vous permettent de compiler à peu près n'​importe quel paquet Slackware en +
-un tournemain. ​+
  
   ​   ​
-  ​Compiler des paquets à partir des scripts de SlackBuilds.org +=== Compiler des paquets à partir des scripts de SlackBuilds.org ​===
-  ------------------------------------------------------------+
  
-Dans l'​exemple,​ nous allons compiler et installer le paquet '​cowsay'​ à partir +Dans l'​exemple,​ nous allons compiler et installer le paquet ​''​cowsay'' à partir des scripts fournis par SlackBuilds.org. ​
-des scripts fournis par SlackBuilds.org. ​+
  
-Aller dans l'​environnement de construction de paquets que nous avons défini +Aller dans l'​environnement de construction de paquets que nous avons défini plus haut :
-plus haut :+
  
-  ​# cd /​root/​source+<​code>​ 
 +# cd /​root/​source 
 +</​code>​
  
 À partir de là, télécharger : À partir de là, télécharger :
  
-  ​1. l'​archive compressée contenant les scripts pour construire le paquet ; +  ​l'​archive compressée contenant les scripts pour construire le paquet ; 
-  ​2. l'​archive compressée contenant le code source du paquet. ​+  ​l'​archive compressée contenant le code source du paquet. ​
  
 Concrètement : Concrètement :
  
-  ​# links slackbuilds.org+<​code>​ 
 +# links http://slackbuilds.org 
 +</​code>​
  
-  ​1. Dans le champ de recherche en haut à gauche, taper '​cowsay',​ placer le +  ​Dans le champ de recherche en haut à gauche, taper ''​cowsay'', placer le curseur sur ''​Search'' et confirmer par <key>Entrée</​key>​. 
-  ​curseur sur '​Search'​ et confirmer par [Entrée]+  - Dans la page des résultats de la recherche, suivre le lien ''​cowsay''​. 
 +  - Sur la page de ''​cowsay'',​ télécharger le SlackBuild (''​cowsay.tar.gz''​) et le code source (''​cowsay-3.03.tar.gz''​) et quitter Links.
  
-  2. Dans la page des résultats de la recherchesuivre le lien 'cowsay'+<note tip>​Alternativementvous pouvez utiliser ​''​lynx''​ au lieu de ''​links''​.</​note>​
- +
-  3. Sur la page de 'cowsay', télécharger le SlackBuild (cowsay.tar.gz) et le +
-  code source (cowsay-3.03.tar.gz) et quitter Lynx.+
  
 Voici nos deux archives téléchargées : Voici nos deux archives téléchargées :
  
-  ​# ls -l cowsay* +<​code>​ 
-  -rw-r--r-- 1 root root 15136 nov.  25 08:14 cowsay-3.03.tar.gz +# ls -l cowsay* 
-  -rw-r--r-- 1 root root  2855 nov.  25 08:14 cowsay.tar.gz+-rw-r--r-- 1 root root 15136 nov.  25 08:14 cowsay-3.03.tar.gz 
 +-rw-r--r-- 1 root root  2855 nov.  25 08:14 cowsay.tar.gz 
 +</​code>​
  
 Décompresser l'​archive contenant les scripts : Décompresser l'​archive contenant les scripts :
  
-  ​# tar xvzf cowsay.tar.gz  +<​code>​ 
-  cowsay/ +# tar xvzf cowsay.tar.gz  
-  cowsay/​cowsay.SlackBuild.patch +cowsay/ 
-  cowsay/​README +cowsay/​cowsay.SlackBuild.patch 
-  cowsay/​slack-desc +cowsay/​README 
-  cowsay/​cowsay.SlackBuild +cowsay/​slack-desc 
-  cowsay/​cowsay.info+cowsay/​cowsay.SlackBuild 
 +cowsay/​cowsay.info 
 +</​code>​
  
-À la limite, on peut faire un peu de ménage et supprimer l'​archive qui ne sert +À la limite, on peut faire un peu de ménage et supprimer l'​archive qui ne sert plus à rien :
-plus à rien :+
  
-  ​# rm -f cowsay.tar.gz+<​code>​ 
 +# rm -f cowsay.tar.gz 
 +</​code>​
  
 Puis, déplacer le code source dans le répertoire nouvellement créé : Puis, déplacer le code source dans le répertoire nouvellement créé :
  
-  ​# mv -v cowsay-3.03.tar.gz cowsay/ +<​code>​ 
-  ​« cowsay-3.03.tar.gz » ​-> « cowsay/​cowsay-3.03.tar.gz »+# mv -v cowsay-3.03.tar.gz cowsay/ 
 +« cowsay-3.03.tar.gz » -> « cowsay/​cowsay-3.03.tar.gz » 
 +</​code>​
  
 Voici ce que l'on doit avoir : Voici ce que l'on doit avoir :
  
-  ​# tree cowsay +<​code>​ 
-  cowsay +# tree cowsay 
-  |-- cowsay-3.03.tar.gz +cowsay 
-  |-- cowsay.info +|-- cowsay-3.03.tar.gz 
-  |-- cowsay.SlackBuild +|-- cowsay.info 
-  |-- cowsay.SlackBuild.patch +|-- cowsay.SlackBuild 
-  |-- README +|-- cowsay.SlackBuild.patch 
-  `-- slack-desc+|-- README 
 +`-- slack-desc 
 +</​code>​
  
-Changer dans le répertoire,​ vérifier éventuellement si le script +Changer dans le répertoire,​ vérifier éventuellement si le script ​''​cowsay.SlackBuild'' est bien exécutable,​ puis exécuter ce script pour lancer la construction du paquet :
-'​cowsay.SlackBuild'​ est bien exécutable,​ puis exécuter ce script pour lancer la +
-construction du paquet :+
  
-  ​# cd cowsay/ +<​code>​ 
-  # ls -l cowsay.SlackBuild +# cd cowsay/ 
-  -rwxr-xr-x 1 kikinovak users 1475 mai   ​27 ​ 2010 cowsay.SlackBuild* +# ls -l cowsay.SlackBuild 
-  # ./​cowsay.SlackBuild +-rwxr-xr-x 1 kikinovak users 1475 mai   ​27 ​ 2010 cowsay.SlackBuild* 
-  ...+# ./​cowsay.SlackBuild 
 +... 
 +</​code>​
  
-Là encore, si tout se passe bien, l'​opération produit un paquet dans '/​tmp',​ et +Là encore, si tout se passe bien, l'​opération produit un paquet dans ''/tmp'', et plus exactement dans le répertoire ​''​$OUTPUT'' défini par le script :
-plus exactement dans le répertoire '​$OUTPUT'​ défini par le script :+
  
-  ​... +<​code>​ 
-  Slackware package /​tmp/​cowsay-3.03-noarch-1_SBo.tgz created.+... 
 +Slackware package /​tmp/​cowsay-3.03-noarch-1_SBo.tgz created. 
 +</​code>​
  
-Il ne reste qu'à installer ce paquet avec '​installpkg'​ :+Il ne reste qu'à installer ce paquet avec ''​installpkg'' :
  
-  ​# installpkg /​tmp/​cowsay-3.03-noarch-1_SBo.tgz  +<​code>​ 
-  # cowsay Et voilà ! +# installpkg /​tmp/​cowsay-3.03-noarch-1_SBo.tgz  
-   _____________ ​ +# cowsay Et voilà !  
-  < Et voilà ! > + ------------- 
-   ​-------------  +< Et voilà ! > 
-          \   ​^__^ + ​-------------  
-           ​\  (oo)\_______ +        \   ​^__^ 
-              (__)\       ​)\/​\ +         ​\  (oo)\_______ 
-                  ||----w | +            (__)\       ​)\/​\ 
-                  ||     ||+                ||----w | 
 +                ||     || 
 +</​code>​
  
 +=== Gérer les dépendances de paquets ===
  
-  Gérer les dépendances de paquets +Certains ​paquets ​nécessitent la présence d'​autres paquets sur le système pour compiler (//build dependencies//​) et/ou fonctionner (//runtime dependencies//​) correctement. Dans certains cas, un paquet requis peut lui-même dépendre d'​autres paquets, et ainsi de suite. ​
-  --------------------------------+
  
-Certains paquets nécessitent la présence ​d'autres paquets sur le système pour +À titre d'exemplejetons ​un oeil sur la page de ''​libgnomeprint'​' de SlackBuilds.org. La description du paquet est suivie d'un avertissement :
-compiler ("​build dependencies"​) et/ou fonctionner ("​runtime dependencies"​) +
-correctement. Dans certains cas, un paquet requis peut lui-même dépendre +
-d'autres paquets, et ainsi de suite+
  
-À titre d'​exemple,​ jetons un oeil sur la page de '​libgnomeprint'​ de +<​code>​ 
-SlackBuilds.org. La description du paquet est suivie d'un avertissement : +This requires: libgnomecups. 
- +</​code>​
-  'This requires: libgnomecups.'+
  
-Chaque collection de scripts contient par ailleurs un fichier '​*.info'​ qui +Chaque collection de scripts contient par ailleurs un fichier ​''​*.info'' qui explicite le ou les paquets requis. Jetons un oeil sur le fichier ​''​libgnomeprint.info'', et nous y trouvons un champ ''​REQUIRES'' :
-explicite le ou les paquets requis. Jetons un oeil sur le fichier +
-'​libgnomeprint.info',​ et nous y trouvons un champ '​REQUIRES'​ :+
  
---8<---------- libgnomeprint.info --------------------------------------------+<code>
 PRGNAM="​libgnomeprint"​ PRGNAM="​libgnomeprint"​
 VERSION="​2.18.8"​ VERSION="​2.18.8"​
Line 790: Line 890:
 REQUIRES="​libgnomecups"​ ----> dépendances du paquet REQUIRES="​libgnomecups"​ ----> dépendances du paquet
 ... ...
---8<--------------------------------------------------------------------------+</code>
  
-  ​> Le champ '​REQUIRES'​ a été introduit depuis Slackware 14.0.+<note>Le champ ''​REQUIRES'' a été introduit depuis Slackware 14.0.</​note>​
  
-Cela signifie tout simplement qu'​avant de construire le paquet '​libgnomeprint',​ +Cela signifie tout simplement qu'​avant de construire le paquet ​''​libgnomeprint'', nous devons impérativement construire et installer le paquet ​''​libgnomecups''.
-nous devons impérativement construire et installer le paquet '​libgnomecups'​.+
  
-En dehors des dépendances requises, un paquet peut également présenter des +En dehors des dépendances requises, un paquet peut également présenter des dépendances optionnelles,​ qui ajoutent certaines fonctionnalités. L'​éditeur Leafpad, par exemple, peut être construit avec les dépendances optionnelles ​''​libgnomeprint'' et ''​libgnomeprintui''.
-dépendances optionnelles,​ qui ajoutent certaines fonctionnalités. L'​éditeur +
-Leafpad, par exemple, peut être construit avec les dépendances optionnelles +
-'​libgnomeprint'​ et '​libgnomeprintui'​.+
  
-Gérer les paquets tiers confortablement avec 'sbopkg+==== Gérer les paquets tiers confortablement avec sbopkg ​====
------------------------------------------------------+
  
-L'​outil '​sbopkg'​ est une application tierce qui facilite énormément la +L'​outil ​''​sbopkg'' est une application tierce qui facilite énormément la construction et l'​installation de paquets tiers à partir des scripts de SlackBuilds.org. ​
-construction et l'​installation de paquets tiers à partir des scripts de +
-SlackBuilds.org. ​+
  
 +=== Installer sbopkg ===
  
-  Installer 'sbopkg+Aller sur le site http://sbopkg.org et télécharger le paquet :
-  ------------------+
  
-Aller sur le site http://​sbopkg.org ​et télécharger le paquet.+<​code>​ 
 +# links http://​sbopkg.org 
 +</​code>​
  
-  # links sbopkg.org+Suivre le lien ''​Downloads''​ et télécharger le ''​Package''​Puis :
  
-Suivre le lien '​Downloads'​ et télécharger le '​Package'​Puis :+<​code>​ 
 +# installpkg sbopkg-0.36.0-noarch-1_cng.tgz 
 +</​code>​
  
-  # installpkg ​sbopkg-0.36.0-noarch-1_cng.tgz+=== Utiliser ​sbopkg ​===
  
-   +Lancer ''​sbopkg'​' en invoquant son nom en tant que root. Au premier lancement, ''​sbopkg''​ propose de créer une série de répertoires nécessaires pour son fonctionnement. Confirmer avec la touche <​key>​C</​key>​ :
-  Utiliser ​'​sbopkg'​ +
-  -----------------+
  
-Lancer '​sbopkg'​ en invoquant son nom en tant que root. Au premier lancement,​ +<​code>​ 
-'​sbopkg'​ propose de créer une série de répertoires nécessaires pour son +# sbopkg 
-fonctionnement. Confirmer avec la touche [C] : +The following directories do not exist:
- +
-  # sbopkg +
-  The following directories do not exist:+
   ​   ​
-  ​Variable ​                  ​Assignment +Variable ​                  ​Assignment 
-  -------- ​                  ​---------- +-------- ​                  ​---------- 
-  REPO_{ROOT,​NAME,​BRANCH} -> /​var/​lib/​sbopkg/,​SBo/,​14.0 +REPO_{ROOT,​NAME,​BRANCH} -> /​var/​lib/​sbopkg/,​SBo/,​14.0 
-  LOGFILE directory -------> /​var/​log/​sbopkg +LOGFILE directory -------> /​var/​log/​sbopkg 
-  QUEUEDIR ---------------->​ /​var/​lib/​sbopkg/​queues +QUEUEDIR ---------------->​ /​var/​lib/​sbopkg/​queues 
-  SRCDIR ------------------>​ /​var/​cache/​sbopkg+SRCDIR ------------------>​ /​var/​cache/​sbopkg
   ​   ​
-  ​You can have sbopkg create them or, if these values are incorrect, you can +You can have sbopkg create them or, if these values are incorrect, you can 
-  abort to edit your config files or pass different flags.+abort to edit your config files or pass different flags.
   ​   ​
-  ​(C)reate or (A)bort?: ​+(C)reate or (A)bort?: ​ 
 +</​code>​
  
-La première chose à faire, c'est de synchroniser '​sbopkg'​ avec le contenu de +La première chose à faire, c'est de synchroniser ​''​sbopkg'' avec le contenu de SlackBuilds.org avec l'​option ​''Sync with the remote repository''. C'est une bonne idée de lancer une synchronisation avant toute installation. Une fois que la synchronisation est terminée (''​***SYNC COMPLETE***''), confirmez simplement.
-SlackBuilds.org avec l'​option 'Sync with the remote repository'​. C'est une +
-bonne idée de lancer une synchronisation avant toute installation. Une fois que +
-la synchronisation est terminée ('​***SYNC COMPLETE***'​),​ confirmez simplement.+
   ​   ​
-Dans l'​exemple,​ nous allons installer l'​utilitaire '​unrar'​.+Dans l'​exemple,​ nous allons installer l'​utilitaire ​''unrar''.
  
-  1. Choisissez l'​outil de recherche '​Search'​.+   ​- ​Choisissez l'​outil de recherche ​''​Search''​. 
 +   - Dans le champ de recherche, tapez ''​unrar''​. 
 +   - Dans la fenêtre des résultat, sélectionnez la ligne ''​system/​unrar''​. 
 +   - L'​écran subséquent vous permet d'​effectuer toute une série d'​opérations. Vous pouvez par exemple visualiser le fichier ''​unrar.info''​ pour vérifier s'il n'y a pas de dépendances externes (il n'y en a pas). 
 +   - Construisez le paquet avec ''​Process - Download/​build/​install unrar''​. 
 +   - Confirmez simplement ''​Install - Download, build and install''​. 
 +   - Démarrez l'​opération avec ''​Start'​'.
  
-  2. Dans le champ de recherchetapez 'unrar'.+Si tout s'est bien passé, ''​sbopkg''​ construit et installe automatiquement le paquet. Appuyez sur n'​importe quelle touche pour revenir dans ''​sbopkg'​'.
  
-  3. Dans la fenêtre des résultat, sélectionnez la ligne '​system/​unrar'​. 
  
-  4. L'​écran subséquent vous permet d'​effectuer toute une série d'​opérations. +==== Installer des paquets tiers précompilés ====
-  Vous pouvez par exemple visualiser le fichier '​unrar.info'​ pour vérifier s'il +
-  n'y a pas de dépendances externes (il n'y en a pas). +
  
-  5Construisez le paquet avec '​Process ​Download/​build/​install unrar'.+Certains sites proposent des paquets tiers précompilés pour SlackwareEn règle générale, il vaut toujours mieux compiler ses propres paquets, ne serait-ce que pour de simples raisons de sécurité. Après tout, on peut mettre tout et n'​importe quoi dans un paquet et lui donner le nom qu'on veut.
  
-  6. Confirmez simplement '​Install - Download, build and install'​.+=== Les paquets fournis par Eric Hameleers ===
  
-  7Démarrez l'​opération avec '​Start'​.+Une exception peut être faite pour les paquets fournis par Eric Hameleers, développeur Slackware connu sous le nom de "​AlienBob"​Eric fournit de nombreux paquets tiers très populaires parmi la communauté Slackware, notamment les "​usines à gaz" comme KDE ou LibreOffice qui nécessitent des heures voire des journées entières de compilation.
  
-Si tout s'est bien passé, '​sbopkg'​ construit et installe automatiquement le +  * Versions récentes de KDE : http://​alien.slackbook.org/​ktown/​ 
-paquet. Appuyez sur n'​importe quelle touche pour revenir dans '​sbopkg'​. +  ​* ​Les dernières versions de LibreOffice : http://​taper.alienbase.nl/​mirrors/​people/​alien/​slackbuilds/​libreoffice/​ 
- +  ​* ​OpenJDK : http://​taper.alienbase.nl/​mirrors/​people/​alien/​slackbuilds/​openjdk/​ 
- +  ​* ​VLC : http://​taper.alienbase.nl/​mirrors/​people/​alien/​restricted_slackbuilds/​vlc/​ 
-Installer des paquets tiers précompilés +  ​* ​Paquets de compatibilité 32-bit pour Slackware64 : http://​www.slackware.com/​~alien/​multilib/​
---------------------------------------- +
- +
-Certains sites proposent des paquets tiers précompilés pour Slackware. En règle +
-générale, il vaut toujours mieux compiler ses propres paquets, ne serait-ce que +
-pour de simples raisons de sécurité. Après tout, on peut mettre tout et +
-n'​importe quoi dans un paquet et lui donner le nom qu'on veut. +
- +
- +
-  Les paquets fournis par Eric Hameleers +
-  -------------------------------------- +
- +
-Une exception peut être faite pour les paquets fournis par Eric Hameleers,​ +
-développeur Slackware connu sous le nom de "​AlienBob"​. Eric fournit de nombreux +
-paquets tiers très populaires parmi la communauté Slackware, notamment les +
-"​usines à gaz" comme KDE ou LibreOffice qui nécessitent des heures voire des +
-journées entières de compilation. +
- +
-Versions récentes de KDE : +
- +
-  · http://​alien.slackbook.org/​ktown/​ +
- +
-Les dernières versions de LibreOffice : +
- +
-  · http://​taper.alienbase.nl/​mirrors/​people/​alien/​slackbuilds/​libreoffice/​ +
- +
-OpenJDK : +
- +
-  · http://​taper.alienbase.nl/​mirrors/​people/​alien/​slackbuilds/​openjdk/​ +
- +
-VLC : +
- +
-  · http://​taper.alienbase.nl/​mirrors/​people/​alien/​restricted_slackbuilds/​vlc/​ +
- +
-Paquets de compatibilité 32-bit pour Slackware64 : +
- +
-  · http://​www.slackware.com/​~alien/​multilib/​+
  
 Visitez le blog d'Eric pour être au courant des dernières nouveautés : Visitez le blog d'Eric pour être au courant des dernières nouveautés :
  
-  ​· http://​alien.slackbook.org/​blog/​+  ​http://​alien.slackbook.org/​blog/​
  
- +==== Documentation ​====
-Documentation +
--------------+
  
 Pages man : Pages man :
  
-  ​· installpkg(8) +  ​* ''​installpkg(8)''​ 
-  ​· upgradepkg(8) +  ​* ''​upgradepkg(8)''​ 
-  ​· removepkg(8)  +  ​* ''​removepkg(8)''​ 
-  ​· slackpkg(8) +  ​* ''​slackpkg(8)''​ 
-  ​· sbopkg(8) +  ​* ''​sbopkg(8)''​ 
-  ​· sbopkg.conf(8)+  ​* ''​sbopkg.conf(8)''​
  
 Articles en ligne : Articles en ligne :
  
-  ​· http://​docs.slackware.com/​slackbook:​package_management +  ​http://​docs.slackware.com/​slackbook:​package_management 
-  ​· http://​www.linux.com/​learn/​tutorials/​261878-intro-to-slackware-package-management +  ​http://​www.linux.com/​learn/​tutorials/​261878-intro-to-slackware-package-management 
-  ​· http://​slackbuilds.org/​howto/​ +  ​http://​slackbuilds.org/​howto/​ 
-  ​· http://​archive09.linux.com/​feature/​148826+  ​http://​archive09.linux.com/​feature/​148826
  
 Livres : Livres :
  
-  ​· Linux Cookbook, Carla Schroder, Installing and Managing Software, 14-15  +  ​Linux Cookbook, Carla Schroder, Installing and Managing Software, 14-15 
-  ​· ibid., Installing Programs from Source Code, 55-57 +  ​ibid., Installing Programs from Source Code, 55-57
- +

In Other Languages
QR Code
QR Code wiki:user:kikinovak (generated for current page)