Pronote 2018 et 2019 sous Linux avec Wine

Chaque année, l'installation de Pronote sous Linux est un casse-tête ; 2018 n'échappe pas à la règle.

Voici comment faire. La distribution utilisée est Linux Mint 19, mais cela devrait fonctionner avec toute autre distribution à base de Debian.

Pronote 2019 : Bonne nouvelle ! Si vous aviez installé Pronote 2018 par cette méthode, il vous suffit d'effectuer les étapes à partir de installation_du_client_pronote_2018 !

Pronote nécessite de compiler le code source de Wine (dernière version) et d'y appliquer deux patches pour lui permettre de fonctionner.

Mauvaise nouvelle : si vous avez déjà compilé Wine pour installer Pronote 2017, il faut tout détruire et tout recommencer.

apt remove wine wine1.8
apt autoremove
apt install bison cabextract git flex libcups2-dev libosmesa6-dev libx11-dev libfreetype6-dev libxslt1-dev libxml2-dev libgnutls28-dev libjpeg-dev libldap2-dev libsane-dev libcapi20-dev gcc-multilib g++-multilib libxxf86vm-dev libglu1-mesa-dev binfmt-support clang-9 libclang-common-9-dev libclang-cpp9 libglu1-mesa-dev libhwloc-plugins libhwloc15 libncurses-dev libobjc-9-dev libobjc4 libomp-9-dev libomp5-9 libpfm4 libpocl-dev libpocl2 libpocl2-common libtinfo-dev libxnvctrl0 libxxf86vm-dev libz3-4 libz3-dev llvm-9 llvm-9-dev llvm-9-runtime llvm-9-tools pocl-opencl-icd x11proto-xf86vidmode-dev
sudo dpkg --add-architecture i386
apt update
apt install libx11-dev:i386 libfreetype6-dev:i386 libxml2-dev:i386 libxslt1-dev:i386 libgnutls28-dev:i386 libjpeg-dev:i386 libldap2-dev:i386 libicu-dev:i386

On prépare l'espace de travail, c'est-à-dire qu'on sauvegarde la configuration existante de wine (stockée dans ~/.wine) dans ~/.wine_OLD, puis on le crée le dossier wine-latest avec tous les sous-dossiers nécessaires.

cd ~
mv .wine .wine_OLD
mkdir -p wine-latest/{wine32-build,wine64-build}

On se place dans le dossier wine-latest, on y télécharge le code source de la dernière version de Wine et les patches nécessaires, et on installe le tout.

cd ~/wine-latest/
git clone https://github.com/wine-mirror/wine.git
mv wine wine-source
wget http://www.index-education.com/contenu/telechargement/correctifs/Wine1.8_CompareString.patch
wget http://www.index-education.com/contenu/telechargement/correctifs/Wine1.8_CreateWindowEx.patch
cd wine-source/
patch -p1 < ../Wine1.8_CompareString.patch
patch -p1 < ../Wine1.8_CreateWindowEx.patch

Enfin, on lance les compilations (chacun des make ci-dessous peut durer plusieurs dizaines de minutes !) et les installations (les sudo make install, bien plus rapides !)

cd ../wine64-build/
../wine-source/configure --enable-win64 --with-png
make
sudo make install
cd ../wine32-build/
../wine-source/configure --with-wine64=../wine64-build --with-png
make
sudo make install

C'est fait. Wine “spécial Pronote 2018” est installé. Fermer et rouvrir le terminal.

On télécharge winetricks, qui est un programme permettant d'affiner l'environnement de Wine. Vous pouvez visiter la page de Winetricks, mais ce n'est pas nécessaire pour la suite.

cd ~/wine-latest/
wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks && chmod +x winetricks

Installation de bibliothèques Windows, et de Mono et Gecko.

WINEARCH=win32 ./winetricks msxml6 ie8 windowscodecs winhttp corefonts ddr=gdi atmlib riched20 riched30 wsh57 msls31 mspatcha
Pendant cette installation, il vous est demandé si vous voulez redémarrer. Répondez par la négative (Restart later et Oui). Ne tenez pas compte des “warning”.

Pour que Wine soit vu comme un Windows Seven.

WINEARCH=win32 ./winetricks win7

Pour pouvoir ouvrir les pdf attachés aux messages dans Pronote.

wget https://linux.claudeclerc.fr/_media/linuxaddict:logiciels:pdf.reg -O pdf.reg
WINEARCH=win32 wine regedit pdf.reg
Ne tenez pas compte des éventuelles erreurs.

Pour ouvrir les fichiers attachés aux messages (onglet Communication de Pronote), il est inutile d'installer dans Wine, en plus de Pronote, MS Office ou LibreOffice. Profitons de LibreOffice installé dans notre cher Linux !

Il suffit d'installer un script, nommé wine-libreoffice.sh et qui se charge de lancer notre LibreOffice à partir de Wine, dans le dossier /usr/local/bin, puis d'enregistrer dans le registre de Wine les extensions des fichiers MS Office et LibreOffice qui pourront être ouverts grâce à ce script.

Le script wine-libreoffice.sh est très court (son téléchargement et enregistrement est décrit à la suite) :

#!/bin/bash
set -x
/usr/bin/libreoffice "$(wine winepath -u "$1")"

Le fichier libreoffice.reg permettant de modifier le registre dans Wine est le suivant (les fins de lignes doivent être de type Windows ; il vaut mieux télécharger le fichier que faire un simple copier-coller, voir ci-après) :

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\.doc]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.docx]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.xls]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.xlsx]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.ppt]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.odt]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.ott]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.odm]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.oth]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.ods]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.ots]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.odg]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.otg]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.odp]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.otp]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.odf]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.odb]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\.oxt]
@="LibreOfficeFile"

[HKEY_CLASSES_ROOT\LibreOfficeFile]
@="Docx Document"

[HKEY_CLASSES_ROOT\LibreOfficeFile\shell]

[HKEY_CLASSES_ROOT\LibreOfficeFile\shell\open]

[HKEY_CLASSES_ROOT\LibreOfficeFile\shell\open\command]
@="c:\\windows\\command\\start.exe /Unix /usr/local/bin/wine-libreoffice.sh \"%1\""

[HKEY_CLASSES_ROOT\LibreOfficeFile\shell\open\ddeexec]
@="\"%1\",,-1,0,,,,"
"NoActivateHandler"=""

[HKEY_CLASSES_ROOT\LibreOfficeFile\shell\open\ddeexec\Application]
@="IExplore"

[HKEY_CLASSES_ROOT\LibreOfficeFile\shell\open\ddeexec\Topic]
@="WWW_OpenURL"

Pour installer et utiliser ces deux fichiers :

sudo wget https://linux.claudeclerc.fr/_media/linuxaddict:logiciels:wine-libreoffice.sh -O /usr/local/bin/wine-libreoffice.sh
sudo chmod +x /usr/local/bin/wine-libreoffice.sh
cd ~/wine-latest
wget https://linux.claudeclerc.fr/_media/linuxaddict:logiciels:libreoffice.reg -O libreoffice.reg
WINEARCH=win32 wine regedit libreoffice.reg

Procédure analogue à la précédente :

cd ~/wine-latest
wget https://linux.claudeclerc.fr/_media/linuxaddict:logiciels:winebrowser.reg -O winebrowser.reg
WINEARCH=win32 wine regedit winebrowser.reg
Vérifier sur le site de Pronote quelle est la dernière version du client (en 32 bits).
wget http://tele5.index-education.com/telechargement/pn/v2018.0/exe/Install_PRNclient_FR_2018.0.2.2_win32.exe
WINEARCH=win32 wine Install_PRNclient_FR_2018.0.2.2_win32.exe
Remplacer Réseau par Reseau (sans accent) dans le chemin du dossier d'installation et décocher les cases “Raccourci sur le bureau” et “Lancer Client PRONOTE”.

Une fois l'installation terminée, lancez le Client Pronote 2018 à partir du menu Wine, ou bien par la ligne de commande :

WINEARCH=win32 LANG=fr_FR.UTF-8 wine ~/.wine/drive_c/Program\ Files/Index\ Education/Pronote\ 2018/Reseau/Client\ PRONOTE.exe
Accepter l'installation des compléments proposés par PRONOTE lors de son premier démarrage.
La mise à jour du Client Pronote fonctionne, lorsque celle-ci vous est proposée au démarrage.
Avant d'exécuter le script ci-dessous, vous devez vous être connecté au moins une fois au serveur Pronote de votre établissement (ou de chacun de vos établissements) avec le Client Pronote que vous venez d'installer.

Le script suivant (en Python3) crée dans le menu Wine un raccourci pour chacun des établissements présents dans la liste qui s'affiche au démarrage du Client Pronote. Cerise sur le pompon, chaque raccourci est affublé de l'icône idoine, contrairement au raccourci de base.

Les trois commandes suivantes téléchargent le script, le rendent exécutable puis l'exécutent. L'exécution prend quelques millisecondes. Voyez ensuite le contenu de votre menu Wine.

cd ~/wine-latest
wget https://linux.claudeclerc.fr/_media/linuxaddict:logiciels:pnraccourcis.py -O pnraccourcis.py
chmod +x pnraccourcis.py
./pnraccourcis.py

Une discussion sur cette page est ouverte sur le Forum Ubuntu fr.

  • linuxaddict/logiciels/pronote2018wine.txt
  • Dernière modification : 31/08/2021, 20:16
  • de Claude Clerc