WebKitGTK-2.42.5

Introduction à WebKitGTK

Le paquet WebKitGTK est un portage du moteur de rendu web portable WebKit vers les plateformes GTK+ 3 et GTK4.

This package is known to build and work properly using an LFS 12.1 platform.

Informations sur le paquet

  • Téléchargement (HTTP) : https://webkitgtk.org/releases/webkitgtk-2.42.5.tar.xz

  • Téléchargement (FTP) :

  • Somme de contrôle MD5 : 9cf27d88b55e5b8168f4835b17ea6fd0

  • Taille du téléchargement : 33 Mo

  • Estimation de l'espace disque requis : 1,2 Go (195 Mo installés, plus 148 Mo pour GTK-4)

  • Estimation du temps de construction : 23 SBU (pour GTK-3, avec parallélisme = 8, plus 22 SBU pour GTK-4)

Dépendances de WebKitGTK

Requises

Cairo-1.18.0, CMake-3.28.3, gst-plugins-base-1.22.10, gst-plugins-bad-1.22.10, GTK+-3.24.41, GTK-4.12.5, ICU-74.2, Little CMS-2.14, libgudev-238, libsecret-0.21.3, libsoup-3.4.4, libtasn1-4.19.0, libwebp-1.3.2, Mesa-24.0.1, OpenJPEG-2.5.0, Ruby-3.3.0, SQLite-3.45.1, unifdef-2.12, Which-2.21 et wpebackend-fdo-1.14.2

Recommandées

Facultatives

Gi-DocGen-2023.3, HarfBuzz-8.3.0, Wayland-1.22.0, WOFF2-1.0.2, ccache, Hyphen, libjxl et libmanette

Installation de WebKitGTK

Installation de WebKitGTK

[Important]

Important

Ce paquet permet de construire avec GTK-3 ou GTK-4, mais pas les deux dans la même construction. La version GTK-4 est requise pour les paquets comme Epiphany-45.2. D'autre paquets, comme Balsa-2.6.4 ou Evolution-3.50.4 nécessitent la version GTK-3. Les deux versions peuvent être installées en même temps sur le même système. Nous donnons les instructions pour les deux cas ci-dessous, mais la seule différence est le paramètre -DUSE_GTK4

Tout d'abord, si vous êtes sur une machine 32-bits, corrigez un échec de la construction :

case $(uname -m) in
   i?86) sed -e '/UNUSED_VARIABLE(t6)/d' \
             -e '/UNUSED_VARIABLE(t7)/d' \
             -i Source/JavaScriptCore/llint/LowLevelInterpreter.cpp ;;
esac

Si vous voulez installer la version GTK+-3 de WebKitGTK, exécutez les commandes suivantes :

mkdir -vp build &&
cd        build &&

cmake -DCMAKE_BUILD_TYPE=Release  \
      -DCMAKE_INSTALL_PREFIX=/usr \
      -DCMAKE_SKIP_RPATH=ON       \
      -DPORT=GTK                  \
      -DLIB_INSTALL_DIR=/usr/lib  \
      -DUSE_LIBHYPHEN=OFF         \
      -DENABLE_GAMEPAD=OFF        \
      -DENABLE_MINIBROWSER=ON     \
      -DENABLE_DOCUMENTATION=OFF  \
      -DUSE_WOFF2=OFF             \
      -DUSE_GTK4=OFF              \
      -DUSE_JPEGXL=OFF            \
      -DUSE_WPE_RENDERER=ON       \
      -DENABLE_JOURNALD_LOG=OFF   \
      -DENABLE_BUBBLEWRAP_SANDBOX=ON \
      -Wno-dev -G Ninja ..        &&
ninja

Ce paquet n'a pas de suite de tests fonctionnelle. Cependant, il y a un navigateur web graphique basique utilisable dans le répertoire de construction, build/bin/MiniBrowser. Si le lancement échoue, il y a un problème avec la construction.

Maintenant, en tant qu'utilisateur root :

ninja install

Comme l'option -DENABLE_DOCUMENTATION=OFF est utilisée, la documentation n'est pas reconstruite ni installée. Si vous avez besoin de la documentation, vous pouvez installer soit Gi-DocGen-2023.3 et supprimer cette option de la commande cmake, soit installer la documentation pré-construite à la place :

install -vdm755 /usr/share/gtk-doc/html/{jsc-glib,webkit2gtk{,-web-extension}}-4.1 &&
install -vm644  ../Documentation/jsc-glib-4.1/*              \
                /usr/share/gtk-doc/html/jsc-glib-4.1         &&
install -vm644  ../Documentation/webkit2gtk-4.1/*            \
                /usr/share/gtk-doc/html/webkit2gtk-4.1       &&
install -vm644  ../Documentation/webkit2gtk-web-extension-4.1/* \
                /usr/share/gtk-doc/html/webkit2gtk-web-extension-4.1

Si vous voulez installer la version GTK4 de WebKitGTK, exécutez les commandes suivantes :

rm -rf * .[^.]* &&

cmake -DCMAKE_BUILD_TYPE=Release  \
      -DCMAKE_INSTALL_PREFIX=/usr \
      -DCMAKE_SKIP_RPATH=ON       \
      -DPORT=GTK                  \
      -DLIB_INSTALL_DIR=/usr/lib  \
      -DUSE_LIBHYPHEN=OFF         \
      -DENABLE_GAMEPAD=OFF        \
      -DENABLE_MINIBROWSER=ON     \
      -DENABLE_DOCUMENTATION=OFF  \
      -DUSE_WOFF2=OFF             \
      -DUSE_GTK4=ON               \
      -DUSE_JPEGXL=OFF            \
      -DUSE_WPE_RENDERER=ON       \
      -DENABLE_JOURNALD_LOG=OFF   \
      -DENABLE_BUBBLEWRAP_SANDBOX=ON \
      -Wno-dev -G Ninja ..        &&
ninja

Maintenant, en tant qu'utilisateur root :

ninja install

Explication des commandes

-DUSE_LIBHYPHEN=OFF : ce paramètre désactive l'implémentation des césures automatiques par défaut. Vous devez installer Hyphen si vous souhaitez l'activer (en remplaçant OFF par ON ou en supprimant le paramètre).

-DENABLE_DOCUMENTATION=OFF : ce paramètre désactive la régénération de la locumentation. Supprimez ce paramètre si vous avez installé Gi-DocGen-2023.3 et souhaitez régénérer la documentation.

-DENABLE_GAMEPAD=OFF : ce paramètre désactive la prise en charge des manettes de jeu. Supprimez ce paramètre si vous avez installé libmanette et souhaitez l'activer.

-DENABLE_MINIBROWSER=ON : ce paramètre active la compilation et l'installation de Mini Browser.

-DUSE_WPE_RENDERER=ON : ce paramètre utilise le moteur de rendu WPE, qui est recommandé en amont.

-DUSE_JPEGXL=OFF : ce paramètre désactive la prise en charge des images JPEG-XL. Supprimez-le si vous avez installé le paquet facultatif libjxl.

-DENABLE_BUBBLEWRAP_SANDBOX=ON : ce paramètre active le bac à sable Bubblewrap, qui aide à réduire l'impact de la plupart des vulnérabilités de sécurité dans ce paquet. Mettez ce paramètre à OFF si vous ne voulez pas installer bubblewrap-0.8.0, libseccomp-2.5.5 ou xdg-dbus-proxy-0.1.5, mais remarquez que cela peut être dangereux.

-DENABLE_JOURNALD_LOG=OFF : ce paramètre désactive l'utilisation du journal de systemd pour la journalisation des erreurs et des informations de débogage puisqu'il n'est pas disponible sur les systèmes SysV.

-DUSE_SYSTEM_MALLOC=ON : Ce paramètre permet la construction avec la version du système de malloc.

-DENABLE_GEOLOCATION=OFF : Utilisez ce paramètre si vous ne voulez pas installer GeoClue-2.7.1.

-DUSE_AVIF=OFF : utilisez ce paramètre si vous ne voulez pas installer libavif-1.0.4. Remarquez que vous n'aurez pas la prise en charge des images AVIF si vous faites cela.

-DUSE_WOFF2=ON : Utilisez ce paramètre si vous avez installé le paquet facultatif WOFF2-1.0.2. Cela ajoute la prise en charge des polices de caractères.

Contenu

Programme installé: WebKitWebDriver
Bibliothèques installées: libjavascriptcoregtk-4.1.so, libjavascriptcoregtk-6.0.so, libwebkit2gtk-4.1.so et libwebkitgtk-6.0.so
Répertoires installés: /usr/include/webkitgtk-4.1, /usr/include/webkitgtk-6.0, /usr/lib{,exec}/webkit2gtk-4.1, /usr/lib{,exec}/webkitgtk-6.0 et /usr/share/gtk-doc/html/{jsc-glib,webkit2gtk{,-web-extension}}-4.1

Descriptions courtes

WebKitWebDriver

permet de déboguer et d'automatiser les pages web et les navigateurs

libjavascriptcoregtk-4.1.so

contient les fonctions du cœur de l'API JavaScript utilisé par jsc et libwebkit2gtk-4.1

libjavascriptcoregtk-6.0.so

contient les fonctions du cœur de l'API JavaScript utilisé par jsc et libwebkitgtk-6.0

libwebkit2gtk-4.1.so

contient les fonctions de l'API de WebKit2

libwebkitgtk-6.0.so

contient les fonctions de l'API de WebKit pour les applications GTK-4