sv ru pl es en

Créer un script pour PlayOnLinux - Annexe

Couleurs des arguments

Rouge : Argument obligatoire.

Orange : Argument obligatoire si on utilise un des arguments suivants, mais qui peut être laissé vide ("").

Bleu : Argument optionnel, mais dans certains cas obligatoire.

Vert : Argument optionnel.

Démarrage et arrêt de l'interface graphique

POL_GetSetupImages

Arguments :

#1 : Adresse de l'image top.

#2 : Adresse de l'image left.

#3 : Nom du dossier dans lequel enregistrer les images (souvent $TITLE).

Description :

Permet de télécharger les images top et left du script sur le site de PlayOnLinux.

Prérequis :

Doit être utilisé avant POL_SetupWindow_Init.

Exemple :

POL_GetSetupImages "http://files.playonlinux.com/resources/setups/AC2/top.jpg" "http://files.playonlinux.com/resources/setups/AC2/left.jpg" "$TITLE"

POL_SetupWindow_Init

Description :

Ouvre la fenêtre de l'assistant.

Exemple :

POL_SetupWindow_Init

POL_SetupWindow_Close

Description :

Ferme la fenêtre de l'assistant.

Exemple :

POL_SetupWindow_Close

Interface graphique de PlayOnLinux

Note : Toutes les fonctions que nous allons voir dès maintenant nécessitent que la commande POL_SetupWindow_Init soit présente au début du script.

POL_SetupWindow_presentation

Arguments :

#1 : Nom du logiciel (souvent $TITLE).

#2 : Éditeur du logiciel.

#3 : Site de l'éditeur.

#4 : Auteur du script.

#5 : Nom du préfixe (souvent $PREFIX).

Description :

Présente l'application.

Exemple :

POL_SetupWindow_presentation "$TITLE" "Mozilla" "http://www.mozilla.com" "SuperPlumus and NSLW" "$PREFIX"

POL_SetupWindow_free_presentation

Arguments :

#1 : Nom du logiciel (souvent $TITLE).

#2 : Message.

Description :

Permet de faire une présentation plus libre que POL_SetupWindow_presentation.

Exemple :

POL_SetupWindow_free_presentation "$TITLE" "Bienvenue dans l'assistant d'installation de Mozilla Firefox."

POL_SetupWindow_message

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

Description :

Affiche un message.

Exemple :

POL_SetupWindow_message "Hello world!" "$TITLE"

check_one

POL_SetupWindow_missing

Arguments pour check_one:

#1 : Commande dont la présence doit être vérifiée.

#2 : Paquet dans lequel se trouve ce programme.

Description :

Vérifie la présence de une ou plusieurs commandes particulières requises par le script.

Exécutez autant de check_one que besoin (1 par commande), puis appelez POL_SetupWindow_missing.

Exemple :

check_one "p7zip" "p7zip"
POL_SetupWindow_missing

POL_SetupWindow_file

Arguments:

#1 : Message.

#2 : Titre (souvent $TITLE).

#3 : Fichier à afficher.

Description :

Affiche le contenu d'un fichier.

Exemple :

POL_SetupWindow_file "Changelog" "$TITLE" "$POL_System_TmpDir/changelog.txt"

POL_SetupWindow_licence

Arguments:

#1 : Message.

#2 : Titre (souvent $TITLE).

#3 : Fichier à afficher.

Description :

Identique à la commande POL_SetupWindow_file, excepté qu'une case "J'accepte" est présente.

Très utile pour les licences.

Exemple :

POL_SetupWindow_licence "Licence :" "$TITLE" "$POL_System_TmpDir/licence.txt"

POL_SetupWindow_pulsebar

POL_SetupWindow_pulse

POL_SetupWindow_set_text

Arguments pour POL_SetupWindow_pulsebar :

#1 : Message.

#2 : Titre (souvent $TITLE).

Arguments pour POL_SetupWindow_pulse :

#1 : Pourcentage.

Arguments pour POL_SetupWindow_set_text :

#1 : Texte actuel.

Description :

Affiche une barre de progression, de 0 à 100%.

POL_SetupWindow_pulsebar affiche la barre de progression.

POL_SetupWindow_pulse change le niveau d'avancement de la barre, de 0 à 100%.

POL_SetupWindow_set_text change le message actuel (différent du message de POL_SetupWindow_pulsebar).

Exemple :

POL_SetupWindow_pulsebar "Installation des patchs 1 à 5." "$TITLE"

POL_SetupWindow_set_text "Installation du patch 1 en cours"
POL_Wine start /unix "$POL_System_TmpDir/patch1.exe"
POL_SetupWindow_pulse "20" # pour 20%

POL_SetupWindow_set_text "Installation du patch 2 en cours"
POL_Wine start /unix "$POL_System_TmpDir/patch2.exe"
POL_SetupWindow_pulse "40"

POL_SetupWindow_set_text "Installation du patch 3 en cours"
POL_Wine start /unix "$POL_System_TmpDir/patch3.exe"
POL_SetupWindow_pulse "60"

POL_SetupWindow_set_text "Installation du patch 4 en cours"
POL_Wine start /unix "$POL_System_TmpDir/patch4.exe"
POL_SetupWindow_pulse "80"

POL_SetupWindow_set_text "Installation du patch 5 en cours"
POL_Wine start /unix "$POL_System_TmpDir/patch5.exe"
POL_SetupWindow_pulse "100"

POL_SetupWindow_wait

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

Description :

Affiche une barre qui fait des allers-retours.

Exemple :

POL_SetupWindow_wait "Veuillez patienter" "$TITLE"

POL_SetupWindow_textbox

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

#3 : Valeur par défaut.

Description :

Affiche une fenêtre demandant à l'utilisateur d'inscrire quelque chose.

Retour :

La saisie de l'utilisateur est renvoyée dans la variable $APP_ANSWER.

Exemple :

POL_SetupWindow_textbox "Votre pseudo :" "$TITLE"

POL_SetupWindow_textbox_multiline

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

#3 : Valeur par défaut.

Description :

Identique à POL_SetupWindow_textbox, excepté que la saisie se fait sur plusieurs lignes.

Retour :

La saisie de l'utilisateur est renvoyée dans la variable $APP_ANSWER.

Exemple :

POL_SetupWindow_textbox_multiline "Entrez la description du logiciel" "$TITLE"

POL_SetupWindow_browse

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

#3 : Fichier par défaut.

Description :

Demande à l'utilisateur de sélectionner un fichier.

Retour :

Le chemin vers le fichier sélectionné par l'utilisateur est renvoyé dans la variable $APP_ANSWER.

Exemple :

POL_SetupWindow_browse "Veuillez sélectionner le logiciel." "$TITLE"

POL_SetupWindow_question

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

Description :

Pose une question à l'utilisateur (il peut répondre par Oui ou par Non).

Retour :

La réponse de l'utilisateur est renvoyée dans la variable $APP_ANSWER (TRUE si oui, FALSE si non).

Exemple :

POL_SetupWindow_question "Message" "Titre"

POL_SetupWindow_menu

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

#2 : Choix possibles.

#2 : Séparateur (souvent ~ ou -).

Description :

Montre un menu à l'utilisateur, et lui demande de choisir parmi les choix proposés.

Retour :

Le choix de l'utilisateur est renvoyé dans la variable $APP_ANSWER.

Exemple :

POL_SetupWindow_menu "Quel est votre couleur préférée ?" "$TITLE" "Rouge~Vert~Bleu" "~"

POL_SetupWindow_menu_num

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

#2 : Choix possibles.

#2 : Séparateur (souvent ~ ou -).

Description :

Identique à la fonction POL_SetupWindow_menu excepté que au lieu de renvoyer le nom de l'entrée sélectionnée (Rouge, par exemple), elle renvoie un nombre selon qu'il s'agit de la 1ère entrée, 2ème entrée, etc. 0 correspond à la 1ère entrée.

Retour :

Le choix de l'utilisateur est renvoyé dans la variable $APP_ANSWER.

Exemple :

POL_SetupWindow_menu_num "Quel est votre couleur préférée ?" "$TITLE" "Rouge~Vert~Bleu" "~"

POL_SetupWindow_menu_list

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

#2 : Choix possibles.

#2 : Séparateur (souvent ~ ou -).

#3 : Entrée par défaut.

Description :

Identique à la fonction POL_SetupWindow_menu excepté qu'il s'agit d'un menu déroulant.

Retour :

Le choix de l'utilisateur est renvoyé dans la variable $APP_ANSWER.

Exemple :

POL_SetupWindow_menu_list "Quel est votre couleur préférée ?" "$TITLE" "Rouge~Vert~Bleu" "~"

POL_SetupWindow_checkbox_list

Arguments :

#1 : Message.

#2 : Titre (souvent $TITLE).

#2 : Choix possibles.

#2 : Séparateur (souvent ~ ou -).

Description :

Montre une liste de cases à cocher à l'utilisateur, et lui demande de cocher les options voulues.

Retour :

Les choix de l'utilisateur sont renvoyés dans la variable $APP_ANSWER.

Exemple :

POL_SetupWindow_checkbox_list "Quels sont vos couleurs préférées ?" "$TITLE" "Rouge~Vert~Bleu" "~"
if [ "$(echo $APP_ANSWER | grep -o "Rouge")" != "" ]
then
	# Rouge coché
fi
if [ "$(echo $APP_ANSWER | grep -o "Vert")" != "" ]
then
	# Vert coché
fi
if [ "$(echo $APP_ANSWER | grep -o "Bleu")" != "" ]
then
	# Bleu coché
fi

POL_SetupWindow_cdrom

Description :

Demande à l'utilisateur de sélectionner son CD/DVD.

Retour :

Le choix de l'utilisateur est renvoyé dans la variable $CDROM.

Exemple :

POL_SetupWindow_cdrom

POL_SetupWindow_check_cdrom

Arguments :

#1 : Fichier dont la présence doit être vérifiée.

Description :

Vérifie que le fichier passé en argument existe bien sur le CD/DVD. Dans le cas contraire, exécute POL_SetupWindow_cdrom à nouveau.

Prérequis :

Doit être utilisé juste après POL_SetupWindow_cdrom.

Exemple :

POL_SetupWindow_check_cdrom "Data/32_icon.ico"

POL_SetupWindow_InstallMethod

Arguments :

#1 : Modes d'installation disponibles.

Description :

Demande à l'utilisateur de choisir la méthode d'installation qu'il veut utiliser parmi les choix proposés.

Valeurs possibles :

LOCAL, CD, DVD, DOWNLOAD, STEAM, STEAM_DEMO.

Retour :

Le choix de l'utilisateur est renvoyé dans la variable $INSTALL_METHOD.

Exemple :

POL_SetupWindow_InstallMethod "LOCAL,CD,STEAM"

POL_Shortcut

Arguments :

#1 : Nom de l'exécutable.

#2 : Nom du logiciel (souvent $TITLE).

#3 : Nom de l'icône à télécharger sur le site de PlayOnLinux.

#4 : Arguments pour le .exe.

Description :

Crée un lanceur dans PlayOnLinux.

Prérequis :

La commande POL_Wine_SelectPrefix doit être éxécutée avant.

Exemple :

POL_Shortcut "firefox.exe" "$TITLE"

POL_Shortcut_InsertBeforeWine

Arguments :

#1 : Nom du lanceur (souvent $TITLE).

#2 : Commande à ajouter.

Description :

Permet d'exécuter une commande juste avant chaque lancement du logiciel.

Exemple :

POL_Shortcut_InsertBeforeWine "Jedi Knight II" "export __GL_ExtensionStringVersion=17700"

POL_Browser

Arguments :

#1 : Adresse de la page à ouvrir.

Description :

Ouvre une page web sur le navigateur par défaut de l'utilisateur.

Exemple :

POL_Browser "http://www.playonlinux.com"

POL_System_TmpCreate

Arguments :

#1 : Nom du dossier temporaire (souvent $PREFIX).

Description :

Crée le dossier temporaire du script.

Retour :

$POL_System_TmpDir contient le chemin vers le dossier temporaire.

Exemple :

POL_System_TmpCreate "$PREFIX"

POL_System_TmpDelete

Description :

Supprime le dossier temporaire du script.

Exemple :

POL_System_TmpDelete

POL_System_SetArch

Arguments :

#1 : Architectures supportées (voir ci-dessous).

Description :

Définit quels sont les architectures supportées par le script (concernant Wine).

Valeurs possibles :

auto : La version de Wine correspondant à l'architecture du système sera utilisée (Wine x86 pour x86 et Wine x64 pour amd64)

x86 : Force l'installation avec la version x86 de Wine (en cas de bugs avec la version x64 de Wine concernant un programme)

amd64 : Force l'installation avec la version x64 de Wine (si le système est en x86, alors le script s'arrète).

Exemple :

POL_System_SetArch "auto"

POL_Call

Arguments :

#1 : Nom de la fonction.

#2, #3, etc. : Arguments pour la fonction, si besoin (très peu de fonctions prennent des arguments).

Description :

Permet d'exécuter un script de la catégorie functions (liste ici).

Prérequis :

Pour la plupart des fonctions appelées, les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Call POL_Install_vcrun6

Fonctions pour Wine

POL_Wine_SelectPrefix

Arguments :

#1 : Nom du préfixe (souvent $PREFIX).

Description :

Sélectionne le préfixe qui sera utilisé par Wine (obligatoire, même si le préfixe n'existe pas encore).

Exemple :

POL_Wine_SelectPrefix "$PREFIX"

POL_Wine_PrefixExists

Arguments :

#1 : Nom du préfixe (souvent $PREFIX.

Description :

Vérifie si le préfixe existe (utile pour les extensions de jeux et les patchs).

Retour :

La fonction affiche True si le préfixe existe, False si il n'existe pas.

Exemple :

if [ "$(POL_Wine_PrefixExists "$PREFIX")" = "False" ]
then
	# Le préfixe n'existe pas
fi

POL_Wine_PrefixCreate

Arguments :

#1 : Version de Wine.

Description :

Crée le préfixe ou le met à jour. Il est possible d'utiliser une autre version de Wine que celle installée chez l'utilisateur, en la précisant dans le 1er argument.

Prérequis :

La commande POL_Wine_SelectPrefix doit être éxécutée avant.

Exemple :

POL_Wine_PrefixCreate "1.3.4"

POL_Wine

Description :

Cette fonction s'utilise de la même manière que la commande wine, mais permet d'utiliser le système de gestion des versions de Wine de PlayOnLinux.

Note : l'utilisation de start /unix permet parfois d'éviter certains problèmes de chemins d'accès et d'installation avec plusieurs CD/DVD.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemples :

POL_Wine "Setup.exe"
POL_Wine start /unix "Setup.exe"

POL_SetupWindow_VMS

Arguments :

#1 : Minimum de mémoire nécessaire.

Description :

Demande à l'utilisateur de saisir la quantité de mémoire de sa carte graphique.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_SetupWindow_VMS "128"

Set_OS

Arguments :

#1 : Version de Windows à simuler.

#2 : Service pack.

Description :

Change la version de Windows simulée par Wine.

Valeur par défaut : winxp (Windows XP).

Valeurs possibles :

Versions de Windows : win7, vista, win2003, winxp, win2k, winnt, winme, nt40, win98, win95, win31.

Services packs: sp1, sp2, sp3.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

Set_OS "win2k"

Set_Managed

Arguments :

#1 : On/Off.

Description :

Définit si le gestionnaire de fenêtres a le droit de gérer les fenêtres de Wine.

Valeur par défaut : On.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

Set_Managed "Off"

Set_SoundDriver

Arguments :

#1 : alsa/oss/esd.

Description :

Définit quel pilote audio est utilisé par Wine.

Note : Cette fonction est désactivée sous PlayOnMac, car elle est inutile (si cette fonction est présente dans un script exécuté sous PlayOnMac, elle sera simplement ignorée).

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

Set_SoundDriver "alsa"

POL_Wine_Direct3D

Arguments :

#1 : Valeur à modifier.

#2 : Contenu de la valeur.

Description :

Permet de créer/modifier une valeur dans la clé [HKEY_CURRENT_USER\Software\Wine\Direct3D].

Valeurs possibles :

Voir le wiki de WineHQ.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_Direct3D "UseGLSL" "disabled"

POL_Wine_X11Drv

Arguments :

#1 : Valeur à modifier.

#2 : Contenu de la valeur.

Description :

Permet de créer/modifier une valeur dans la clé [HKEY_CURRENT_USER\Software\Wine\X11 Driver].

Valeurs possibles :

Voir le wiki de WineHQ.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_X11Drv "DXGrab" "Y"

POL_Wine_DirectSound

Arguments :

#1 : Valeur à modifier.

#2 : Contenu de la valeur.

Description :

Permet de créer/modifier une valeur dans la clé [HKEY_CURRENT_USER\Software\Wine\DirectSound].

Valeurs possibles :

Voir le wiki de WineHQ.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_DirectSound "HardwareAcceleration" "Emulation"

POL_Wine_DirectInput

Arguments :

#1 : Valeur à modifier.

#2 : Contenu de la valeur.

Description :

Permet de créer/modifier une valeur dans la clé [HKEY_CURRENT_USER\Software\Wine\DirectInput].

Valeurs possibles :

Voir le wiki de WineHQ.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_DirectInput "MouseWarpOverride" "force"

POL_Wine_GetRegValue

Arguments :

#1 : Valeur à récupérer (sans la clé).

Description :

Cette fonction permet de récupérer le contenu d'une valeur du registre.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Retour :

La fonction affiche le contenu de la valeur spécifiée.

Exemple :

VALUE="$(POL_Wine_GetRegValue "MouseWarpOverride")"

Set_Desktop

Arguments :

#1 : On/Off.

#2 : Largeur du bureau virtuel (si activé).

#3 : Hauteur du bureau virtuel (si activé).

Description :

Cette fonction permet de définir le bureau virtuel de Wine.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

Set_Desktop "On" "1024" "768"

Set_WineWindowTitle

Arguments :

#1 : Nom du bureau virtuel.

Description :

Définit le nom du bureau virtuel (effet uniquement esthétique).

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

Set_WineWindowTitle "$TITLE"

POL_Wine_InstallFonts

Description :

Cette fonction permet d'installer certaines polices d'écritures manquantes dans le préfixe.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_InstallFonts

POL_Wine_SetVideoDriver

Description :

Cette fonction permet de définir correctement le pilote video (parfois mal défini par Wine).

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_SetVideoDriver

POL_Wine_OverrideDLL

Arguments :

#1 : Type d'override.

#2, #3, #4, etc. : Noms des DLL (sans le .dll).

Description :

Effectue une override sur une ou plusieurs DLL.

Valeurs possibles :

Pour #1 : native, builtin, native,builtin, builtin,native. Pour désactiver la DLL, ne rien mettre dans #1 ("").

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemples :

POL_Wine_OverrideDLL "native" "msvcrt"
POL_Wine_OverrideDLL "" "msvcrt" # Pour désactiver la DLL

POL_Wine_OverrideDLL_App

Arguments :

#1 : Application.

#2 : Type d'override.

#3, #4, #5, etc. : Noms des DLL (sans le .dll).

Description :

Effectue une override sur une ou plusieurs DLL, mais qui ne concerne qu'une seule application.

Valeurs possibles :

Pour #2 : native, builtin, native,builtin, builtin,native. Pour désactiver la DLL, ne rien mettre dans #2 ("").

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemples :

POL_Wine_OverrideDLL_App "firefox.exe" "native" "msvcrt"
POL_Wine_OverrideDLL_App "firefox.exe" "" "msvcrt" # Pour désactiver la DLL

POL_Wine_WaitExit

Arguments :

#1 : Nom de l'application.

Description :

Permet d'attendre la fin du logiciel lancé avec la commande POL_Wine.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_WaitExit "$TITLE"

POL_Wine_reboot

Description :

Simule un redémarrage de Windows.

Prérequis :

Les commandes POL_Wine_SelectPrefix et POL_Wine_PrefixCreate doivent êtres exécutées avant.

Exemple :

POL_Wine_reboot

Fonctions de déboguage

POL_Debug_Init

Description :

Démarre le système de débogage.

Exemple :

POL_Debug_Init

POL_Debug_Message

Arguments :

#1 : Message.

Description :

Affiche un message dans le log de l'installation (invisible pour l'utilisateur).

Prérequis :

La commande POL_Debug_Init doit être utilisée avant.

Exemple :

POL_Debug_Message "Modification du fichier config.cfg."

POL_Debug_Warning

Arguments :

#1 : Message.

Description :

Affiche un warning dans le log de l'installation (invisible pour l'utilisateur).

Prérequis :

La commande POL_Debug_Init doit être utilisée avant.

Exemple :

POL_Debug_Warning "Le fichier config.cfg n'existait pas, il vient d'être créé."

POL_Debug_Error

Arguments :

#1 : Message.

Description :

Affiche une erreur dans le log de l'installation (l'utilisateur est avertit qu'une erreur s'est produite, mais le script continue).

Prérequis :

La commande POL_Debug_Init doit être utilisée avant.

Exemple :

POL_Debug_Error "Erreur lors de la modification du fichier config.cfg"

POL_Debug_Fatal

Arguments :

#1 : Message.

Description :

Déclare une erreur fatale (le script est arrêté immédiatement).

Prérequis :

La commande POL_Debug_Init doit être utilisée avant.

Exemple :

POL_Debug_Fatal "Erreur lors de la modification du fichier config.cfg"

Chapitre précédent

Il n'y a rien à voir ici