WebKitGTK-2.41.91

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.0 platform.

Informations sur le paquet

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

  • Téléchargement (FTP) :

  • Somme de contrôle MD5 : 1140f86d9044fb76be974b65f71737d7

  • Taille du téléchargement : 39 Mo

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

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

Dépendances de WebKitGTK

Requises

Cairo-1.17.6, CMake-3.27.2, gst-plugins-base-1.22.5, gst-plugins-bad-1.22.5, GTK+-3.24.38, GTK-4.12.0, ICU-73.2, Little CMS-2.14, libgudev-238, libsecret-0.21.0, libsoup-3.4.2, libtasn1-4.19.0, libwebp-1.3.1, Mesa-23.1.6, OpenJPEG-2.5.0, Ruby-3.2.2, SQLite-3.42.0, unifdef-2.12, Which-2.21 et wpebackend-fdo-1.14.2

Recommandées

Facultatives

Gi-DocGen-2023.1, HarfBuzz-8.1.1, Wayland-1.22.0, WOFF2-1.0.2, ccache, Hyphen, libjxl et libmanette

Notes des rédacteurs : https://wiki.linuxfromscratch.org/blfs/wiki/webkitgtk

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-44.6. D'autre paquets, comme Balsa-2.6.4 ou Evolution-3.48.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

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_WPE_RENDERER=ON       \
      -DUSE_JPEGXL=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.1 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_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.1 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 et xdg-dbus-proxy-0.1.5, mais remarquez que cela peut être dangereux.

-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.0.

-DUSE_AVIF=OFF : utilisez ce paramètre si vous ne voulez pas installer libavif-0.11.1. 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