LibreOffice 5.1 rc1 dla Arch Linux (Manjaro)
Właśnie na serwerach deweloperskich zagościła pierwsza wersja kandydująca popularnego pakietu LibreOffice z serii 5.1. Poniżej przedstawiam PKGBUILD umożliwiający budowę i instalację paczki dla Arch Linux (oraz dystrybucji pochodnych, w tym Manjaro). O nowościach tej wersji tej wersji można przeczytać m.in. w artykule na portalu dobreprogramy.pl, nie będę się zatem i rozpisywał i powielał te informacje, które są łatwo dostępne również na stronach związanych z pakietem.
Kilka uwag natomiast o przedstawionym PKGBUILDzie.
Po pierwsze wyszedłem z założenia, że samodzielna kompilacja pakietu ze źródeł, który ma wielkość ok. 0,5GB to gruba przesada. Nawet na dość szybkich komputerach będzie trwać to bardzo długo. Document Foundation tworzy natomiast paczki w formatach rpm oraz deb, które dość łatwo dają się przekonwertować na format znany pacmanowi, który potrafi go zainstalować i nim zarządzać. Stąd też PKGBUILD po prostu przebudowuje istniejącą paczkę rpm. Zaletą takiego rozwiązania jest stosunkowo krótkie budowanie paczki dla Archa. Po drugie PKGBUILD umożliwia wyłącznie zbudowanie LO 5.1 rc1 w wersji dla systemów 64 bitowych (choć łatwo go można przerobić na wersję dla systemów 32 bitowych). Po trzecie zaś oferuję wyłącznie budowę polskiej wersji językowej (znów - łatwo jest zbudować paczkę w wersji oryginalnej, bądź w innym, dostępnym języku).
Paczka instaluje się w katalogu /opt umożliwiając koegzystencję na jednym komputerze z LibreOffice Fresh bądź Still.
Nie będę powtarzać, że program jest w wersji testowej, że wobec powyższego nie nadaje się do używania "produkcyjnego" itp. Udostępniam dla tych wszystkich, którzy chcą się wdrożyć w rozwój pakietu, choćby poprzez zgłaszanie dostrzeżonych błędów.
Pakiet nie jest moim autorskim rozwiązaniem, a jedynie zmienionym skryptem libreoffice-fresh-rpm udostępnionym na AUR.
PKGBUILD
Kilka uwag natomiast o przedstawionym PKGBUILDzie.
Po pierwsze wyszedłem z założenia, że samodzielna kompilacja pakietu ze źródeł, który ma wielkość ok. 0,5GB to gruba przesada. Nawet na dość szybkich komputerach będzie trwać to bardzo długo. Document Foundation tworzy natomiast paczki w formatach rpm oraz deb, które dość łatwo dają się przekonwertować na format znany pacmanowi, który potrafi go zainstalować i nim zarządzać. Stąd też PKGBUILD po prostu przebudowuje istniejącą paczkę rpm. Zaletą takiego rozwiązania jest stosunkowo krótkie budowanie paczki dla Archa. Po drugie PKGBUILD umożliwia wyłącznie zbudowanie LO 5.1 rc1 w wersji dla systemów 64 bitowych (choć łatwo go można przerobić na wersję dla systemów 32 bitowych). Po trzecie zaś oferuję wyłącznie budowę polskiej wersji językowej (znów - łatwo jest zbudować paczkę w wersji oryginalnej, bądź w innym, dostępnym języku).
Paczka instaluje się w katalogu /opt umożliwiając koegzystencję na jednym komputerze z LibreOffice Fresh bądź Still.
Nie będę powtarzać, że program jest w wersji testowej, że wobec powyższego nie nadaje się do używania "produkcyjnego" itp. Udostępniam dla tych wszystkich, którzy chcą się wdrożyć w rozwój pakietu, choćby poprzez zgłaszanie dostrzeżonych błędów.
Pakiet nie jest moim autorskim rozwiązaniem, a jedynie zmienionym skryptem libreoffice-fresh-rpm udostępnionym na AUR.
PKGBUILD
pkgname=libreoffice-rpm-plpkgver=5.1.0.rc1_pkgver=5.1.0.1pkgrel=1pkgdesc="LGPL Office Suite installed from rpms"arch=('any')url='http://www.libreoffice.org'license=('LGPL')conflicts=('libreoffice-fresh-rpm' 'libreoffice-rpm-rc-pl' 'libreofficedev-rpm-pl')depends=('glibc>=2.5' 'gtk2>=2.10.4' 'xorg-server')makedepends=('curl' 'awk')optdepends=('jre7-openjdk' 'gtk3' 'gst-plugins-base' 'gst-plugins-good' 'gst-plugins-bad' 'gst-plugins-ugly')source=("http://dev-builds.libreoffice.org/pre-releases/rpm/x86_64/LibreOffice_${_pkgver}_Linux_x86-64_rpm.tar.gz""http://dev-builds.libreoffice.org/pre-releases/rpm/x86_64/LibreOffice_5.1.0.1_Linux_x86-64_rpm_helppack_pl.tar.gz""http://dev-builds.libreoffice.org/pre-releases/rpm/x86_64/LibreOffice_5.1.0.1_Linux_x86-64_rpm_langpack_pl.tar.gz")package() { ## package function## check kernel version to allow arbitrarily patched kernelsmin_kernMajor=2;min_kernMinor=6;min_kernRelease=18;## in bash, we need to split kernVer assigning into 2 stepstmp_kernVer=$(uname -r);new_kernVer=${tmp_kernVer%%-*}kernVer=(${new_kernVer//./ });## remove temporary variablesunset new_kernVer tmp_kernVer;if [ ${kernVer[0]} -le $min_kernMajor ]; thenif [ ${kernVer[1]} -le $min_kernMinor ]; thenif [ ${kernVer[2]} -lt $min_kernRelease ]; thenmsg "The kernel version needs to be at least 2.6.18. The current kernel version is $(uname -r). Please update your linux kernel";exit;fi;fi;fi;cd ${srcdir}; ## enter the package source directory## extract rpms and install themfor a in $(ls -d */); do ## loop for all directories foundcd "${srcdir}/${a}/RPMS"; ## enter the RPMS directoryfor b in *.rpm; do ## loop for all rpm files foundbsdtar -xf $b; ## extract the rpm filesdone;cp -rf */ ${pkgdir}/; ## copy and merge all found directories to the package directory## change the permissions for files that shouldn't be executabledeclare -a wrongexec=("opt/libreoffice$(echo $pkgver | awk -F'.' 'OFS="." {print $1,$2}')/CREDITS.fodt" "opt/libreoffice$(echo $pkgver | awk -F'.' 'OFS="." {print $1,$2}')/LICENSE.fodt" "opt/libreoffice$(echo $pkgver | awk -F'.' 'OFS="." {print $1,$2}')/NOTICE"); ## set the array to change permissionsfor a in ${wrongexec[@]}; dochmod 644 ${pkgdir}/$a; ## change permissions to read/write for root, read only for usersdone;done;}md5sums=('41a23a79bf4ceecf18286234a48fed17''483d02dd34ce7620ed04caa07c9950e0''ff99b1cd930a7bcbc124b7ca63219319')
Komentarze
Prześlij komentarz