summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <emulatorman@parabola.nu>2014-05-26 12:42:08 -0300
committerAndré Fabian Silva Delgado <emulatorman@parabola.nu>2014-05-26 12:42:08 -0300
commit7093cd981cafcf8dcf5619d4c5a7876c9acade4f (patch)
tree508a8890214ffa7fb9d61914af2b001ed5019a1f
parentcb607eaf6eb23ddc950c26a11b1fc581c2250339 (diff)
downloadabslibre-7093cd981cafcf8dcf5619d4c5a7876c9acade4f.tar.gz
abslibre-7093cd981cafcf8dcf5619d4c5a7876c9acade4f.tar.bz2
abslibre-7093cd981cafcf8dcf5619d4c5a7876c9acade4f.zip
xbmc-libre-lts-12.3-2: updating revision based on xbmc from Arch
* cleaned and improved pkgbuild * updated install script for 420 uid/gid FIXES: FS#40264 (https://bugs.archlinux.org/task/40264) - [xbmc] polkit rules should be in /usr/share/polkit-1/rules.d/ FS#40247 (https://bugs.archlinux.org/task/40247) - [xbmc] optional dependency description for upower is wrong FS#40539 (https://bugs.archlinux.org/task/40539) - [xbmc] .desktop entry has executable attributes
-rw-r--r--libre/xbmc-libre-lts/0001-make-sure-applications-xbmc.desktop-does-nt-have-exe.patch27
-rw-r--r--libre/xbmc-libre-lts/PKGBUILD103
-rw-r--r--libre/xbmc-libre-lts/xbmc.install29
3 files changed, 111 insertions, 48 deletions
diff --git a/libre/xbmc-libre-lts/0001-make-sure-applications-xbmc.desktop-does-nt-have-exe.patch b/libre/xbmc-libre-lts/0001-make-sure-applications-xbmc.desktop-does-nt-have-exe.patch
new file mode 100644
index 000000000..71841758e
--- /dev/null
+++ b/libre/xbmc-libre-lts/0001-make-sure-applications-xbmc.desktop-does-nt-have-exe.patch
@@ -0,0 +1,27 @@
+From 6abfd7104202121d3e23ddad47e377dfaef22b10 Mon Sep 17 00:00:00 2001
+From: BlackEagle <ike.devolder@gmail.com>
+Date: Sun, 25 May 2014 12:10:01 +0200
+Subject: [PATCH] make sure applications/xbmc.desktop does'nt have executable
+ flag
+
+Signed-off-by: BlackEagle <ike.devolder@gmail.com>
+---
+ Makefile.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/Makefile.in b/Makefile.in
+index 754f153..bee1fdd 100644
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -646,7 +646,7 @@ endif
+ endif
+ @# Icons and links
+ @install -d $(DESTDIR)$(datarootdir)/applications
+- @install tools/Linux/xbmc.desktop $(DESTDIR)$(datarootdir)/applications/xbmc.desktop
++ @install -m 0644 tools/Linux/xbmc.desktop $(DESTDIR)$(datarootdir)/applications/xbmc.desktop
+ @install -d $(DESTDIR)$(datadir)/icons/hicolor/48x48/apps
+ @install -m 0644 media/icon48x48.png $(DESTDIR)$(datadir)/icons/hicolor/48x48/apps/xbmc.png
+ @install -d $(DESTDIR)$(datadir)/icons/hicolor/256x256/apps
+--
+1.9.1
+
diff --git a/libre/xbmc-libre-lts/PKGBUILD b/libre/xbmc-libre-lts/PKGBUILD
index bd0ab5108..9be7cda0c 100644
--- a/libre/xbmc-libre-lts/PKGBUILD
+++ b/libre/xbmc-libre-lts/PKGBUILD
@@ -3,6 +3,7 @@
# Contributor (Arch): [vEX] <niechift.dot.vex.at.gmail.dot.com>
# Contributor (Arch): Zeqadious <zeqadious.at.gmail.dot.com>
# Contributor (Arch): BlackIkeEagle < ike DOT devolder AT gmail DOT com >
+# Contributor (Arch): Bartłomiej Piotrowski <bpiotrowski@archlinux.org>
# Maintainer: André Silva <emulatorman@parabola.nu>
_prefix=/usr
@@ -11,37 +12,53 @@ _pkgname=xbmc
pkgname=xbmc-libre-lts
pkgver=12.3
_codename=Frodo
-pkgrel=1
+pkgrel=2
pkgdesc="A software media player and entertainment hub for digital media (Frodo version), without nonfree addons and unrar support"
arch=('i686' 'x86_64')
url="http://xbmc.org"
-license=('GPL' 'custom')
+license=('GPL2')
conflicts=($_pkgname)
provides=($_pkgname)
-depends=('hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff' 'libva'
- 'libpng' 'libcdio' 'yajl' 'libmariadbclient' 'libjpeg-turbo' 'libsamplerate'
- 'glew' 'libssh' 'libmicrohttpd' 'libxrandr' 'sdl_mixer' 'sdl_image' 'python2'
- 'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'mesa-demos'
- 'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez-libs' 'glu'
- 'tinyxml' 'taglib' 'ffmpeg-compat')
-makedepends=('boost' 'cmake' 'gperf' 'nasm' 'libxinerama' 'zip' 'libvdpau' 'libcec'
- 'udisks' 'upower' 'mesa' 'doxygen' 'swig' 'java-environment')
-optdepends=('libcec: support for Pulse-Eight USB-CEC adapter'
- 'lirc: remote controller support'
- 'udisks: automount external drives'
- 'upower: used to trigger power management functionality'
- 'xorg-xinit: autostart xbmc')
+depends=(
+'hicolor-icon-theme' 'fribidi' 'lzo2' 'smbclient' 'libtiff' 'libva'
+'libpng' 'libcdio' 'yajl' 'libmariadbclient' 'libjpeg-turbo' 'libsamplerate'
+'glew' 'libssh' 'libmicrohttpd' 'libxrandr' 'sdl_mixer' 'sdl_image' 'python2'
+'libass' 'libmpeg2' 'libmad' 'libmodplug' 'jasper' 'rtmpdump' 'unzip' 'mesa-demos'
+'xorg-xdpyinfo' 'libbluray' 'libnfs' 'afpfs-ng' 'libshairport' 'avahi' 'bluez-libs' 'glu'
+'tinyxml' 'taglib' 'ffmpeg-compat'
+)
+makedepends=(
+'boost' 'cmake' 'gperf' 'nasm' 'libxinerama' 'zip' 'libvdpau' 'libcec'
+'udisks' 'upower' 'mesa' 'doxygen' 'swig' 'java-runtime-headless'
+)
+optdepends=(
+'libcec: support for Pulse-Eight USB-CEC adapter'
+'lirc: remote controller support'
+'xorg-xinit: autostart xbmc'
+'udisks: automount external drives'
+'upower: display battery level'
+)
install="${_pkgname}.install"
-mksource=("http://mirrors.xbmc.org/releases/source/xbmc-$pkgver.tar.gz")
-source=("https://repo.parabolagnulinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz"
- "xbmc.service"
- "polkit.rules"
- "libass.patch::https://bugs.archlinux.org/index.php?getfile=11285")
-mkmd5sums=('7ae385ebf8e5cfcb917393235e6efbdb')
-md5sums=('7c71af50af55b097e4365a58b70754e8'
- 'de331663cc8adc94f2fe44a262cfff58'
- '02f7951824ee13103344f36009c0ef2a'
- '7fd6399d2ffbdf06b724f0cc2efa0784')
+mksource=(
+ "http://mirrors.xbmc.org/releases/source/xbmc-$pkgver.tar.gz"
+)
+source=(
+ "https://repo.parabolagnulinux.org/other/$pkgname/$pkgname-$pkgver.tar.gz"
+ 'xbmc.service'
+ 'polkit.rules'
+ "libass.patch::https://bugs.archlinux.org/index.php?getfile=11285"
+ '0001-make-sure-applications-xbmc.desktop-does-nt-have-exe.patch'
+)
+mkmd5sums=(
+ '7ae385ebf8e5cfcb917393235e6efbdb'
+)
+md5sums=(
+ '7c71af50af55b097e4365a58b70754e8'
+ 'de331663cc8adc94f2fe44a262cfff58'
+ '02f7951824ee13103344f36009c0ef2a'
+ '7fd6399d2ffbdf06b724f0cc2efa0784'
+ '8998bc505ae4c66604c90b1c005be8c2'
+)
mksource() {
cd "${srcdir}/xbmc-$pkgver-$_codename"
@@ -54,6 +71,7 @@ prepare() {
cd "${srcdir}/xbmc-$pkgver-$_codename"
patch -p0 <$srcdir/libass.patch
+ patch -p1 -i "$srcdir/0001-make-sure-applications-xbmc.desktop-does-nt-have-exe.patch"
# fix lsb_release dependency
sed -i -e 's:/usr/bin/lsb_release -d:cat /etc/arch-release:' xbmc/utils/SystemInfo.cpp
@@ -64,7 +82,7 @@ prepare() {
}
build() {
- cd "${srcdir}/xbmc-$pkgver-$_codename"
+ cd "$srcdir/xbmc-$pkgver-$_codename"
# Bootstrapping XBMC
./bootstrap
@@ -105,34 +123,43 @@ build() {
--enable-external-libraries \
--enable-external-ffmpeg \
--disable-non-free
+
# Now (finally) build
make
}
package() {
- cd "${srcdir}/xbmc-$pkgver-$_codename"
+ cd "$srcdir/xbmc-$pkgver-$_codename"
# Running make install
- make DESTDIR="${pkgdir}" install
+ make DESTDIR="$pkgdir" install
# run feh with python2
- sed -i -e 's/python/python2/g' ${pkgdir}${_prefix}/bin/xbmc
+ sed -i -e 's/python/python2/g' ${pkgdir}$_prefix/bin/xbmc
# lsb_release fix
- sed -i -e 's/which lsb_release &> \/dev\/null/\[ -f \/etc\/arch-release ]/g' "${pkgdir}${_prefix}/bin/xbmc"
- sed -i -e "s/lsb_release -a 2> \/dev\/null | sed -e 's\/\^\/ \/'/cat \/etc\/arch-release/g" "${pkgdir}${_prefix}/bin/xbmc"
+ sed -i -e 's/which lsb_release &> \/dev\/null/\[ -f \/etc\/arch-release ]/g' "${pkgdir}$_prefix/bin/xbmc"
+ sed -i -e "s/lsb_release -a 2> \/dev\/null | sed -e 's\/\^\/ \/'/cat \/etc\/arch-release/g" "${pkgdir}$_prefix/bin/xbmc"
# Tools
- install -D -m 0755 "${srcdir}/xbmc-$pkgver-$_codename/xbmc-xrandr" "${pkgdir}${_prefix}/share/xbmc/xbmc-xrandr"
- install -D -m 0755 "${srcdir}/xbmc-$pkgver-$_codename/tools/TexturePacker/TexturePacker" "${pkgdir}${_prefix}/share/xbmc/"
+ install -D -m 0755 "$srcdir/xbmc-$pkgver-$_codename/tools/TexturePacker/TexturePacker" \
+ "${pkgdir}$_prefix/lib/xbmc/"
# Licenses
- install -d -m 0755 "${pkgdir}${_prefix}/share/licenses/${_pkgname}"
+ install -dm755 "${pkgdir}$_prefix/share/licenses/$_pkgname"
for licensef in LICENSE.GPL copying.txt; do
- mv "${pkgdir}${_prefix}/share/doc/xbmc/${licensef}" "${pkgdir}${_prefix}/share/licenses/${_pkgname}"
+ mv "${pkgdir}$_prefix/share/doc/xbmc/$licensef" \
+ "${pkgdir}$_prefix/share/licenses/$_pkgname"
done
- install -Dm0644 $srcdir/xbmc.service $pkgdir/usr/lib/systemd/system/xbmc.service
-# install -Dm0644 $srcdir/polkit.rules $pkgdir/usr/share/polkit-1/rules.d/10-xbmc.rules
-# chmod 0700 $pkgdir/usr/share/polkit-1/rules.d/
+ # install systemd service
+ install -Dm0644 "$srcdir/xbmc.service" "$pkgdir/usr/lib/systemd/system/xbmc.service"
+
+ # install polkit rules
+ install -dm700 "$pkgdir/usr/share/polkit-1/rules.d"
+ install -Dm0644 "$srcdir/polkit.rules" "$pkgdir/usr/share/polkit-1/rules.d/10-xbmc.rules"
+
+ # XBMC user home
+ install -dm 700 "${pkgdir}"/var/lib/xbmc
+ chown 420:420 "${pkgdir}"/var/lib/xbmc
}
# vim:set ts=2 sw=2 et:
diff --git a/libre/xbmc-libre-lts/xbmc.install b/libre/xbmc-libre-lts/xbmc.install
index 8076fe2d3..6e477d103 100644
--- a/libre/xbmc-libre-lts/xbmc.install
+++ b/libre/xbmc-libre-lts/xbmc.install
@@ -1,19 +1,28 @@
post_install() {
- [[ $(type -p gtk-update-icon-cache) ]] && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor
- [[ $(type -p update-desktop-database) ]] && usr/bin/update-desktop-database -q usr/share/applications
- getent group xbmc > /dev/null || groupadd -r xbmc
- getent passwd xbmc > /dev/null || useradd -r -m -d /var/lib/xbmc -g xbmc xbmc
- usermod -a -G xbmc,audio,video,network,optical xbmc
- mkdir -p var/lib/xbmc
- chown -R xbmc:xbmc var/lib/xbmc
+ update_icons
+ getent group xbmc > /dev/null || groupadd -g 420 xbmc
+ getent passwd xbmc > /dev/null || useradd -c 'XBMC user' -u 420 -g xbmc -G audio,video,network,optical -d /var/lib/xbmc -s /sbin/nologin xbmc
+ passwd -l xbmc > /dev/null
}
post_upgrade() {
post_install $1
+ if ! getent group xbmc | cut -d: -f3 | grep 420 > /dev/null 2>&1; then
+ groupmod -g 420 xbmc
+ fi
+ if ! id -u xbmc | grep 420 > /dev/null 2>&1; then
+ usermod -u 420 xbmc
+ chown -R xbmc:xbmc /var/lib/xbmc
+ fi
}
post_remove() {
- [[ $(type -p gtk-update-icon-cache) ]] && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor
- [[ $(type -p update-desktop-database) ]] && usr/bin/update-desktop-database -q usr/share/applications
- getent passwd xbmc > /dev/null && userdel xbmc
+ update_icons
+ getent passwd xbmc > /dev/null 2>&1 && userdel xbmc
+ getent group xbmc > /dev/null 2>&1 && groupdel xbmc
+}
+
+update_icons() {
+ type -p gtk-update-icon-cache > /dev/null 2>&1 && usr/bin/gtk-update-icon-cache -qtf usr/share/icons/hicolor
+ type -p update-desktop-database > /dev/null 2>&1 && usr/bin/update-desktop-database -q usr/share/applications
}