środa, 27 stycznia 2016

Otter-Browser #108

Kolejne wydanie tygodniowe nie przynosi wielkich nowości. Krótko i treściwie:
PKGBUILD dla wersji qtwebkit:
# Maintainer: boenki <boenki at gmx dot de>
# Maintainer: pavbaranov
# Contributor: sir_lucjan

# Full pkgname # Do no edit below this line unless you know what you're doing

_pkgver=0.9.10
_weekver=108
_pkgname=otter-browser-webkit-weekly

################################################

pkgname=$_pkgname
__pkgname=otter-browser
pkgver=$_pkgver.$_weekver
pkgrel=1
pkgdesc="Browser aiming to recreate classic Opera (12.x) UI using Qt5 - qtwebkit version."
arch=('i686' 'x86_64')
url="http://$pkgname.org"
license=('GPL3')
depends=('qt5-webkit' 'qt5-script' 'qt5-multimedia' 'hicolor-icon-theme' 'desktop-file-utils')
makedepends=('cmake' 'qt5-tools')
conflicts=('otter-browser-git' 'otter-browser' 'otter-browser-0.9.*' 'otter-browser-beta*')
provides=('otter-browser*')
install=otter.install
source=("http://sourceforge.net/projects/otter-browser/files/otter-browser-weekly${_weekver}/otter-browser-${_pkgver}-dev${_weekver}.tar.bz2")
md5sums=('7b6ab8db53e21238ed39286c6fd7ee85')

build() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  lrelease resources/translations/*.ts
  cmake -DCMAKE_INSTALL_PREFIX="/usr"
  make
}

package() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  make DESTDIR=$pkgdir install
}
PKGBUILD dla wersji qtwebengine (która wróciła):
# Maintainer: boenki <boenki at gmx dot de>
# Maintainer: pavbaranov
# Contributor: sir_lucjan

# Full pkgname # Do no edit below this line unless you know what you're doing

_pkgver=0.9.10
_weekver=108
_pkgname=otter-browser-webengine-weekly

################################################

pkgname=$_pkgname
__pkgname=otter-browser
pkgver=$_pkgver.$_weekver
weekver=$_weekver
pkgrel=1
pkgdesc="Browser aiming to recreate classic Opera (12.x) UI using Qt5 - qtwebengine version."
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')
makedepends=('cmake' 'qt5-tools>=5.5')
conflicts=('otter-browser-git' 'otter-browser' 'otter-browser*' 'otter-browser-beta*')
install=otter.install
source=("http://sourceforge.net/projects/otter-browser/files/otter-browser-weekly${_weekver}/otter-browser-${_pkgver}-dev${_weekver}.tar.bz2")
md5sums=('7b6ab8db53e21238ed39286c6fd7ee85')

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

package() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  make DESTDIR=$pkgdir install

sobota, 23 stycznia 2016

Patchworkowe nowości dla kerneli v. 4.4

Od blisko dwu tygodni dostępny jest już kernel 4.4, który jest o tyle ważny, że pojawiły się informacje, iż planowany jest jako nowy LTS. Pojawiają się już pierwsze popularne patche dla tej linii, zatem kompilujący kernele we własnym zakresie mogą się już pokusić o ich budowę.

Bodaj najwcześniej pojawił się fork łatki BFS przygotowany przez Alfreda Chena w ramach jego projektu VRQ. Nie jest to dokładnie ten BFS, jaki znamy z prac Cona Kolivasa. Jeśli ktoś chciałby skorzystać, to należy pobrać łatkę o nazwie v4.4_vrq_1.patch. "Oficjalnie" rozwijany patch BFS i CK nie jest jeszcze dostępny.

BFQ doczekał się już kilku wersji. Pierwszą zrobił deweloper Manjaro Philip Muller, która była dostosowaniem patcha dla wersji 4.3 do wersji 4.4. Potem pojawiła się v7r10, a dzisiaj dostępna jest już zaktualizowana wersja v7r11.

BLD - mniej znany, ale np. bardzo dobrze się sprawdzający patch na moim kompterze w wersji 4.4 właśnie się pojawił.

UKSM - nie trzeba dokonywać żadnych zmian w patchu, który dostępny jest tu i ówdzie dla wersji 4.3.

Dostępne też zaczynają być już "zbiorcze" patche jak np. linux-pf.

EDYCJA:
Właśnie ukazała się druga odsłona patcha VRQ dla kerneli 4.4, która dla przypomnienia zawiera fork niedostępnego jeszcze dla tej wersji, a popularnego BFS. Poprawione zostały m.in. zachowanie się kernela przy starcie i zamykaniu systemu, jego usypianiu itp.

środa, 20 stycznia 2016

Naprawiamy w kernelu lukę CVE-2016-0728

Tu i ówdzie pojawiają się alarmujące informacje o odkrytej luce 0-day w kernelu linuksa, która otrzymała oznaczenie CVE-2016-0728. W istocie jest to o tyle groźne, że odkrywcy luki udostępnili również gotowego exploita zezwalającego na atak. Patch jest już jednak gotowy i udostępniony również.
W Archu kernele dystrybucyjne zostały już zaktualizowane i nałożona została odpowiednia łatka. Należy zatem dokonać aktualizacji systemu. Problem może dotyczyć osób, które korzystają z kerneli spoza dystrybucji (różne repozytoria nieoficjalne, AUR) i ich kernel jest co najmniej w wersji 3.8. W takiej sytuacji należy sprawdzić, czy udostępniona została nowa wersja kernela, nakładająca łatkę. Różnie bywa nazywana, ale w PKGBUILDzie, w opisie powinno się  znaleźć informacja, że nakładany jest patch łatający CVE-2016-0728. Jeśli tego nie znajdziecie, bądź sami budujecie kernel, to należy wykonać następujące czynności (zakładam, że wszelkie czynności dokonujemy w katalogu ze skryptami budującymi kernel); oczywiście dla porządku można też zmienić na wyższy numer pkgrel, to akurat nie jest bezwzględnie konieczne):
1. Pozyskujemy patch
wget -c https://projects.archlinux.org/svntogit/packages.git/plain/trunk/CVE-2016-0728.patch?h=packages/linux -O CVE-2016-0728.patch
2, Dowolnym edytorem edytujemy PKGBUILD i wprowadzamy następujące zmiany:
a) w sekcji source dodajemy:
"CVE-2016-0728.patch"
b) w sekcji prepare dodajemy:
# Fix for CVE-2016-0728
msg "Fix CVE-2016-0728
patch -Np1 -i "${srcdir}/CVE-2016-0728.patch" 
3. Aktualizujemy sumy kontrolne:
updpkgsums
4. Budujemy kernel (i jak chcemy od razu go instalujemy/aktualizujemy):
makepkg -sirc
Dodatkowe operatory -rc dokonają wyczyszczenia katalogu po zbudowaniu i zainstalowaniu kernela.

Otter-Browser #107

Nowy tydzień przynosi niewiele poprawek, czy dodatkowych funkcji. Jak to określają twórcy: jeszcze jeden, nudny tydzień ;) Niestety bez wersji umożliwiającej zbudowanie przeglądarki z silnikiem QtWebEngine. Mam nadzieję, że wszystko już znacie z poprzednich postów, zatem podaję wyłącznie PKGBUILD:
# Maintainer: boenki <boenki at gmx dot de>
# Maintainer: pavbaranov
# Contributor: sir_lucjan

# Full pkgname # Do no edit below this line unless you know what you're doing

_pkgver=0.9.10
_weekver=107
_pkgname=otter-browser-webkit-weekly

################################################

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

build() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  lrelease resources/translations/*.ts
  cmake -DCMAKE_INSTALL_PREFIX="/usr"
  make
}

package() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  make DESTDIR=$pkgdir install
}

środa, 13 stycznia 2016

Nomacs 3.0.0

W AUR pojawiły się skrypty budujące nomacs-git, które oparte są o linię 3.0.0 i budowane z użyciem Qt5. Nie ma sensu zatem kontynuowanie przeze mnie linii rozwojowej (git) tego programu. Niemniej jednak od blisko miesiąca dostępna jest już stabilna wersja 3.0.0, do której w dalszym ciągu nie zaktualizowana została wersja dostępna w repozytoriach Archa (w dalszym ciągu to 2.4.6). Jeśli zatem ktoś chciałby skorzystać z wersji 3.0.0, ale jednocześnie nie chce korzystać z wersji rozwojowej oprogramowania, tylko stabilnej, to proponuję następujące rozwiązanie.
Tworzymy w dowolnym miejscu (musimy mieć do niego dostęp jako zwykły użytkownik) tymczasowy katalog dla budowania programu. Powiedzmy, że będzie się nazywać nomacs i przechodzimy do tego katalogu:
mkdir -p nomacs && cd nomacs
W katalogu tworzymy dwa pliki o nazwach PKGBUILD oraz nomacs.install, do których kopiujemy następującą zawartość:
PKGBUILD:
# Maintainer: pavbaranov

pkgname=nomacs
pkgver=3.0.0
pkgrel=1
pkgdesc="A Qt image viewer"
arch=(i686 x86_64)
url="http://www.nomacs.org/"
license=('GPL3')
depends=('qt5-base' 'libwebp' 'exiv2' 'libraw' 'libtiff' 'opencv')
makedepends=('cmake')
conflicts=('nomacs-git')
provides=('nomacs')
install="$pkgname.install"
source=("https://codeload.github.com/nomacs/nomacs/zip/3.0")
md5sums=('0df41bc0d07012c1fb4b391779f42762')

prepare() {
cd $pkgname-3.0
mkdir -p build
}

build() {
cd $pkgname-3.0/build
cmake ../ImageLounge \
-DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DISABLE_QT_DEBUG=ON 
make
}

package() {
cd $pkgname-3.0/build
make DESTDIR="$pkgdir" install
}
nomacs.install:
 
post_install() {
  update-desktop-database -q
}

post_upgrade() {
  post_install
}

post_remove() {
  post_install
}
Następnie korzystamy z makepkg i budujemy program. Osobiście zwykle korzystam z możliwości jednoczesnej instalacji zbudowanej paczki oraz usunięcia wszelkich pozostałości po udanej budowie, a zatem u mnie polecenie to wygląda tak:
makepkg -sirc
 W porównaniu z wersjami dostępnymi czy to w AUR czy to w repozytorium proponowane rozwiązanie tworzy paczkę bez możliwości jej debugowania. Jeśli ktoś chciałby z tego skorzystać to w sekcji build PKGBUILD polecenie cmake winno przybrać następującą postać:
cmake ../ImageLounge \
-DCMAKE_INSTALL_PREFIX=/usr
W przeciwieństwie do nomacs-git, wyjście z programu nie powoduje też naruszenia ochrony pamięci.
Niestety program jest w bardzo niewielkim stopniu spolszczony. Może zatem warto pomyśleć o pomocy w tym zakresie.
 

Otter-Browser wersja tygodniowa 106

Wersja 105 nie ukazała się, albowiem nie niosła wielu zmian w stosunku do ostatnie, dziewiątej bety programu. Obecna wersja 106 również nie zawiera jakichś wielkich zmian.
PKGBUILD umożliwiający budowę programu w oparciu o qtwebkit:
# Maintainer: boenki <boenki at gmx dot de>
# Maintainer: pavbaranov
# Contributor: sir_lucjan

# Full pkgname # Do no edit below this line unless you know what you're doing

_pkgver=0.9.10
_weekver=106
_pkgname=otter-browser-webkit-weekly

################################################

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

build() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  lrelease resources/translations/*.ts
  cmake -DCMAKE_INSTALL_PREFIX="/usr"
  make
}

package() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  make DESTDIR=$pkgdir install
}
 PKGBUILD umożliwiający budowę programu opartą o qtwebengine:
# Maintainer: boenki <boenki at gmx dot de>
# Maintainer: pavbaranov
# Contributor: sir_lucjan

# Full pkgname # Do no edit below this line unless you know what you're doing

_pkgver=0.9.10
_weekver=106
_pkgname=otter-browser-webengine-weekly

################################################

pkgname=$_pkgname
__pkgname=otter-browser
pkgver=$_pkgver.$_weekver
weekver=$_weekver
pkgrel=1
pkgdesc="Browser aiming to recreate classic Opera (12.x) UI using Qt5 - qtwebengine version."
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')
makedepends=('cmake' 'qt5-tools>=5.5')
conflicts=('otter-browser-git' 'otter-browser' 'otter-browser*' 'otter-browser-beta*')
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")
#source=("http://netcologne.dl.sourceforge.net/project/otter-browser/otter-browser-beta7/otter-browser-0.9.07.tar.bz2")
md5sums=('a9a95b4a682a926b9482ded832644f4e')

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

package() {
  cd ${__pkgname}-${_pkgver}-dev${_weekver}
  make DESTDIR=$pkgdir install
}
Do budowy programu potrzebny jest jeszcze plik *.install podany w poprzednich wpisach dotyczących przeglądarki.

sobota, 2 stycznia 2016

Otter-Browser Beta 9

Z przyczyn niezależnych od deweloperów nie ukazała się 104 odsłona tygodniowa przeglądarki, ale dzisiaj ukazała się nowa, dziewiąta już jej beta.
Spośród nowości oferuje m.in. dalsze możliwości personalizacji oraz uzyskała wstępne wsparcie korekty językowej dla wpisywanych w niej tekstów.
Nie będę opisywał dokładniej procesu instalacji, albowiem został on już opisany wcześniej. Przedstawiam jedynie dwa PKGBUILDy umożliwiające budowę aplikacji.
PKGBUILD dla wersji opartej o qtwebkit:
# Maintainer: boenki
# Maintainer: pavbaranov
# Contributor: sir_lucjan

# Full pkgname # Do no edit below this line unless you know what you're doing

_pkgver=0.9.09
_pkgname=otter-browser-beta9-qtwebkit

################################################

pkgname=$_pkgname
__pkgname=otter-browser
pkgver=$_pkgver
pkgrel=1
pkgdesc="Browser aiming to recreate classic Opera (12.x) UI using Qt5 - qtwebkit version."
arch=('i686' 'x86_64')
url="http://$pkgname.org"
license=('GPL3')
depends=('qt5-webkit' 'qt5-script' 'qt5-multimedia' 'hicolor-icon-theme' 'desktop-file-utils')
makedepends=('cmake' 'qt5-tools')
conflicts=('otter-browser-git' 'otter-browser' 'otter-browser-0.9.*')
provides=('otter-browser*')
install=otter.install
source=("http://sourceforge.net/projects/otter-browser/files/otter-browser-beta9/otter-browser-${_pkgver}.tar.bz2")
md5sums=('a9dac69a47887871d74d25b0e7581abe')

build() {
  cd ${__pkgname}-${_pkgver}
  lrelease resources/translations/*.ts
  cmake -DCMAKE_INSTALL_PREFIX="/usr"
  make
}

package() {
  cd ${__pkgname}-${_pkgver}
  make DESTDIR=$pkgdir install
}
PKGBUILD dla wersji qtwebengine:
# Maintainer: boenki
# Maintainer: pavbaranov
# Contributor: sir_lucjan

# Full pkgname # Do no edit below this line unless you know what you're doing

_pkgver=0.9.09
_pkgname=otter-browser-beta9-qtwebengine

################################################

pkgname=$_pkgname
__pkgname=otter-browser
pkgver=$_pkgver
pkgrel=1
pkgdesc="Browser aiming to recreate classic Opera (12.x) UI using Qt5 - qtwebkit version."
arch=('i686' 'x86_64')
url="http://$pkgname.org"
license=('GPL3')
depends=('qt5-webkit' 'qt5-script' 'qt5-multimedia' 'hicolor-icon-theme' 'desktop-file-utils')
makedepends=('cmake' 'qt5-tools')
conflicts=('otter-browser-git' 'otter-browser' 'otter-browser-0.9.*')
provides=('otter-browser*')
install=otter.install
source=("http://sourceforge.net/projects/otter-browser/files/otter-browser-beta9/otter-browser-${_pkgver}.tar.bz2")
md5sums=('a9dac69a47887871d74d25b0e7581abe')

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

package() {
  cd ${__pkgname}-${_pkgver}
  make DESTDIR=$pkgdir install
}
Oczywiście plik *.install musimy skopiować z wcześniejszego wpisu, a przy instalacji wyrazić zgodę na aktualizację z wersji tygodniowej.