czwartek, 11 lutego 2016

Otter-Browser wydanie #110

Nieco później niż zwykle, albowiem nowa odsłona wymagała nieco więcej testów. Zmieniłem również PKGBUILD. Zmiany jakie nastąpiły w PKGBUILDzie, obejmują m.in.:

  • dodanie frameworku sonnet, który umożliwia sprawdzanie poprawności wpisywanych tekstów (Otter od pewnego czasu taką funkcjonalność uzyskał),
  • pewne przeczyszczenie i uproszczenie PKGBUILDu,
  • od dzisiaj nie będzie dwu różnych PKGBUILDów, a jeden: zmianę silnika używanego przez Ottera dokonujemy w opcjach konfiguracyjnych programu,
  • z uwagi na jeden PKGBUILD nazwa paczki ulegnie zmianie - została ona maksymalnie dostosowana do tej, jaką otrzymuje od twórców programu, jedyna różnica wynika z konwencji numeracji wersji przyjętej w PKGBUILDach i wynikającej z niej braku możliwości użycia myślnika w złożonych numerach wersji (oryginał 0.9.10-dev110, w mojej wersji 0.9.10.dev110),
  • dalsza zmiana, którą pociąga za sobą przyjęta konwencja, to pojawienie się w zależnościach zarówno qtwebkit jak i qtwebengine.

Zmianę z qtwebkit na qtwebengine i odwrotnie dokonujemy po wpisaniu:
about:config
Następnie odszukujemy pozycję Backends. Znajduje się w niej obecnie jedna tylko pozycja o nazwie Web, w której możemy dowolnie zmieniać pomiędzy wartością qtwebkit i qtwebengine. Zmiany możemy dokonywać "w locie" bez potrzeby restartu przeglądarki. Niemniej jednak przyjęcie jednolitego PKGBUILDu spowodowało, że w zależnościach musiały się pojawić oba obecnie wspierane backendy przez Ottera, czyli zarówno qtwebkit, jak i qtwebengine. Jeśli zatem ktoś z jakichś przyczyn chce wybrać wyłącznie jeden z nich, to musi zmienić PKGBUILD, eliminując go z zależności. Należy przy tym pamiętać, że zbudowanie przeglądarki ze wsparciem dla qtwebengine łączy się z poleceniem dla cmake:
-DEnableQtwebengine=ON
Zależność zatem prosta: budujemy z qtwebengine, powyższe polecenie winno w PKGBUILD pozostać - rezygnujemy z niego, możemy spokojnie je skasować z sekcji build.
Jedna tylko uwaga. Mówiąc szczerze, to "na rynku" silników opartych o Qt jest przysłowiowa bryndza. QtWebKit aczkolwiek istnieje już kawał czasu, dalej ma swoje błędy, które traktowane są nieco po macoszemu, albowiem "nadchodzi" QtWebEngine. Ten drugi dalej jeszcze jest niedopracowany. Być może coś zmieni Qt5.6, które pojawić się ma - po znacznym opóźnieniu - 1 marca. Zobaczymy. Pewnie nie tylko w Otterze, bowiem np. gotowa jest już QupZilla oparta o QtWebEngine, ale wymaga już wersji 5.6.
A propos używanego silnika w obecnej wersji Ottera. Zauważyłem przedziwny błąd, który pojawia się, gdy dokonam wyboru silnika qtwebengine. Otóż próba wpisania czegokolwiek z kropką (np. adresu mailowego) powoduje otwarcie się okna (chyba korekcji), skasowanie owej kropki i zablokowanie w ten sposób możliwości wpisania czegoś co ją zawiera. Stąd też np. nie zalogujemy się do żadnego serwisu, który wymaga od nas podania nazwy naszego adresu pocztowego itp. Myślę, że to przypadłość przejściowa - trzeba ją zgłosić.
Ze względu na zmiany w PKGBUILDzie prosiłbym o jego wypróbowanie i podzielenie się uwagami, czy prawidłowo buduje i instaluje paczki (u mnie tak, ale to nie ma większego znaczenia; testy namcap przeszedł prawidłowo).
Teraz już tylko PKGBUILD:
# Maintainer: boenki <boenki at gmx dot de>
# Maintainer: pavbaranov
# Contributor: sir_lucjan

pkgname=otter-browser
_pkgver=0.9.10
_weekver=110
pkgver=${_pkgver}.dev${_weekver}
_devver=${_pkgver}-dev${_weekver}
#weekver=$_weekver
pkgrel=1
pkgdesc="Browser aiming to recreate classic Opera (12.x) UI using Qt5"
arch=('i686' 'x86_64')
url="http://$pkgname.org"
license=('GPL3')
depends=('qt5-webengine>=5.5' 'qt5-script>=5.5' 'qt5-multimedia>=5.5' 'hicolor-icon-theme' 'desktop-file-utils' 'sonnet' 'qt5-webkit')
makedepends=('cmake' 'qt5-tools>=5.5')
conflicts=('otter-browser-git' 'otter-browser' 'otter-browser*' 'otter-browser-beta*' 'otter-browser-webengine-weekly' 'otter-browser-webkit-weekly')
install=otter.install
#source=('https://codeload.github.com/OtterBrowser/otter-browser/zip/v0.9.07-dev81')
source=("http://sourceforge.net/projects/otter-browser/files/otter-browser-weekly${_weekver}/otter-browser-${_pkgver}-dev${_weekver}.tar.bz2")
md5sums=('96e8d57316c54049002e8b2864740519')

build() {
  cd ${pkgname}-${_devver}
  lrelease resources/translations/*.ts
  cmake -DCMAKE_INSTALL_PREFIX="/usr" \
-DEnableQtwebengine=ON
  make
}

package() {
  cd ${pkgname}-${_devver}
  make DESTDIR=$pkgdir install
}
EDIT:
Dzięki informacji od Emdeka - osoby, które zaobserwowały ten sam błąd w wersji pracującej na QtWebEngine ("zjadanie" kropek) powinny w ustawieniach zaawansowanych programu wyłączyć skróty jednoklawiszowe i wówczas wszystko powinno działać.