WebKit/QtWebKit στο Linux και τον Konqueror

Ανώνυμος (χωρίς επαλήθευση) | Τρί, 04/22/2008 - 14:28 | 7'

Όταν χρησιμοποιώ KDE, όπως τώρα στο openSUSE, προτιμώ τον Konqueror. Ο λόγος είναι ότι μου δίνει σε ένα παράθυρο: και διαχείριση αρχείων και web browsing (και κονσολα, με ένα F4). Ουσιαστικά, μου δίνει τα πάντα. Και η πλοήγηση σε κάποια websites είναι πιο γρήγορη από τον Firefox, χωρίς να μου ζητάει 250MB επειδή τόλμησα να ανοίξω 2-3 καρτέλες. :)

Υπάρχουν και προβλήματα, όμως, όπως το Gtalk/Gmail και η μειωμένη συμβατότητα με κάποια ακόμα websites. Σε αυτό δεν φταίει ο Konqueror, αλλά η μηχανή που κάνει το rendering των ιστοσελίδων, η οποία λέγεται "KHTML" (η αντίστοιχη του Firefox λέγεται "Gecko"). Υπάρχει όμως μια λύση (στον ορίζοντα) που λέγεται QtWebKit.

Τι είναι όμως το WebKit;

Με απλά λόγια το WebKit είναι μια "νέα" rendering engine που δημιουργήθηκε από την Apple με βάση τον κώδικα του ...KHTML. Ουσιαστικά, το Webkit ήταν fork της KHTML, που χρησιμοποιήθηκε και χρησιμοποιείται στον Safari, τον browser του Mac OS X. Ωστόσο, η υποστήριξη της Apple είχε ως αποτέλεσμα το WebKit να αποκτήσει σύντομα πολύ καλή συμβατότητα με τα περισσότερα sites (και το Gmail) ενώ πολλοί σημαντικοί developers του KDE/KHTML άρχισαν να συνεισφέρουν κι εκείνοι, όπως ο Lars Knoll, o Zach Rusin, o George Staikos, κά. Ο Knoll μάλιστα είναι ο αρχικός δημιουργός της KHTML, οπότε η απόφασή του να συνεισφέρει (και) στο WebKit έχει σημασία. Σημειώστε ότι το WebKit ήταν αρχικά κλειστό προϊόν της Apple αλλά από το 2006 διανέμεται με την άδεια LGPL. Επίσης, η Linux πλατφόρμα κινητών τηλεφώνων (Android) της Google βασίζεται στο WebKit για rendering...

Στην πράξη, τώρα, η Trolltech (πρόσφατα εξαγορασθείσα από τη Nokia) που αναπτύσσει το Qt toolkit, στο οποίο βασίζεται όλο το KDE, αποφάσισε ότι από την έκδοση 4.4 και μετά, το Qt θα ενσωματώνει ένα port του WebKit υπό μορφή βιβλιοθήκης, ώστε να μπορεί οποιοσδήποτε γράφει κώδικα σε Qt να έχει λειτουργικότητα browsing στις εφαρμογές του, χωρίς να χρειάζεται το KDE.

Από την άλλη, στο KDΕ υπάρχει μια συζήτηση εδώ και καιρό για το ποια rendering engine θα χρησιμοποιηθεί τελικά στο Konqueror από κάποιο σημείο και μετά. Κάποιοι λένε "ας υιοθετήσουμε το WebKit", κάποιοι άλλοι προτιμουν την KHTML, και κάποιοι άλλοι λένε, δώστε μας το δικαίωμα επιλογής. Προς το παρόν, δεν έχει ληφθεί κάποια απόφαση. Το μόνο που υπάρχει είναι μια αναφορά ότι στην έκδοση 4.1 μπορεί να χρησιμοποιηθεί το QtWebKit ως προεπιλογή του Konqueror, αν το KPart που αναπτύσσεται έχει φτάσει σε καλό σημείο...

Στο ζουμί τώρα...

Για να εγκαταστήσετε και να δοκιμάσετε το WebKit, υπάρχουν δύο τρόποι. Πρώτα όμως έχετε υπόψη, ότι όλα αυτά είναι πειραματατικά, μη υποστηριζόμενα κλπ κλπ...

ΑΠΕΥΘΕΙΑΣ ΑΠΟ ΤΟ SYBVERSION (ΧΩΡΙΣ KONQUEROR)

Απλά κάντε check out τον κώδικα:

svn checkout http://svn.webkit.org/repository/webkit/trunk WebKit

Θα χρειαστεί να περιμένετε καμπόσο. Μόλις τελειώσει η λήψη, απλώς τρέξτε το σκριπτάκι build-webkit, ρυθμίζοντας σωστά τη μεταβλητή QTDIR για τη μεταγλώττιση :

QTDIR=/usr/share/qt4/ WebKit/WebKitTools/Scripts/build-webkit

Περιμένετε, θα δειτε πολλά μηνύματα μεταγλώττισης, και όταν τελειώσουν θα εμφανιστεί το

WebKit is now built. To run Safari with this...

Αγνοήστε ότι λέει για το Safari. Mπορείτε να τρέξετε ένα μινιμαλιστικό QtWebKit browser με την εντολή:

WebKit/WebKitBuild/Release/WebKitQt/QtLauncher/QtLauncher about:blank

Δείτε περισσότερα εδώ...

ΜΕ ΤΗΝ LIBQTWEBKIT (ΚΑΙ KONQUEROR)

Στο openSUSE και όποια άλλη διανομή έχει το Qt4.4 ή κάποια rc, μπορείτε να εγκαταστήσετε απευθείας το πακέτο libQtWebKit4 και να εγκαταστήσετε το webkit ΚPart από το playground του
KDE SVN: trunk/playground/libs/webkitkde.

Γενικά, η χρήση τoυ Webkit KPart αντί του KHTML δεν ενδείκνυεται μια και είναι υπο ανάπτυξη. Υπάρχει όμως ένα πολλά υποσχόμενο GSoC Project που στοχεύει να διορθώσει την κατάσταση.

Για το τέλος, δείτε ένα παλιότερο αλλά ωραίο βίντεο με το George Staikos και τον Lars Knoll να μιλούν για τον Konqueror και το WebKit. Όπως πάντα, το πλήρες ιστορικό του WebKit υπάρχει στη Wikipedia...

Το επίσημο site είναι εδώ:
http://webkit.org/

Φόρουμ
Δώσε αστέρια!

MO: 1 (ψήφοι: 1)