summaryrefslogtreecommitdiff
path: root/staging/miro
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-10-16 00:33:10 -0700
committerroot <root@rshg054.dnsready.net>2012-10-16 00:33:10 -0700
commit99d0ec7ebad2eda5f3a03098962e3b250e3bef4c (patch)
tree8b24758dfa8c691cda33acaa931699ce81dc1c15 /staging/miro
parente9dd04abd0ede1143ea4af10059e37c2f599e1fd (diff)
Tue Oct 16 00:33:08 PDT 2012
Diffstat (limited to 'staging/miro')
-rw-r--r--staging/miro/PKGBUILD49
-rw-r--r--staging/miro/ffmpeg.patch63
-rw-r--r--staging/miro/miro.install17
3 files changed, 129 insertions, 0 deletions
diff --git a/staging/miro/PKGBUILD b/staging/miro/PKGBUILD
new file mode 100644
index 000000000..1b4c5711a
--- /dev/null
+++ b/staging/miro/PKGBUILD
@@ -0,0 +1,49 @@
+# $Id: PKGBUILD 168800 2012-10-16 01:40:22Z eric $
+# Maintainer: Ronald van Haren <ronald.archlinux.org>
+
+pkgname=miro
+pkgver=5.0.4
+pkgrel=2
+pkgdesc="The free and open source internet TV platform"
+arch=('i686' 'x86_64')
+url="http://www.getmiro.com"
+license=('GPL2')
+depends=('python2-dbus' 'pyrex' 'pygtk' 'gstreamer0.10' 'python2-gconf'
+ 'python2-pysqlite' 'pywebkitgtk' 'shared-mime-info'
+ 'desktop-file-utils' 'gstreamer0.10' 'hicolor-icon-theme'
+ 'gstreamer0.10-python' 'python2-notify' 'libtorrent-rasterbar'
+ 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'python2-pycurl'
+ 'gstreamer0.10-ffmpeg' 'ffmpeg' 'mutagen' 'xdg-utils')
+makedepends=('pkg-config' 'boost')
+install=miro.install
+source=("http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz"
+ 'ffmpeg.patch')
+sha1sums=('1144f98149ff07208b994a7cedb45a4beaaa451f'
+ 'ce0f42be2a0a3ac99f07b5abfabf0975928c841c')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ cd linux
+ patch -p2 -i "${srcdir}"/ffmpeg.patch
+
+ python2 setup.py install --root="${pkgdir}"
+
+ # fix miro startup script so --debug works with python2
+ sed -i "s|which python|which python2|" "${pkgdir}/usr/bin/miro"
+ sed -i "s|./miro.real|/usr/bin/miro.real|" "${pkgdir}/usr/bin/miro"
+
+ # fix python scripts for python2
+ sed -i "s|/usr/bin/env python|/usr/bin/env python2|" "${pkgdir}"/usr/share/miro/resources/searchengines/update-icons.py
+ for i in usr/share/miro/resources/testdata/echonest-replies/generate.py usr/share/miro/resources/searchengines/update-icons.py \
+ usr/share/miro/resources/testdata/7digital-replies/generate.py; do
+ sed -i "s|/usr/bin/python|/usr/bin/python2|" "${pkgdir}"/${i}
+ done
+
+ # Fakeroot segfaults on these; remove
+ if [ ${CARCH} == "i686" ]; then
+ rm -f "${pkgdir}"/usr/bin/codegen.Linux-x86_64 || true
+ else
+ rm -f "${pkgdir}"/usr/bin/codegen.Linux-i686 || true
+ fi
+}
diff --git a/staging/miro/ffmpeg.patch b/staging/miro/ffmpeg.patch
new file mode 100644
index 000000000..99c14107d
--- /dev/null
+++ b/staging/miro/ffmpeg.patch
@@ -0,0 +1,63 @@
+--- miro-5.0.1/linux/miro-segmenter.c~ 2012-07-06 14:33:24.618082171 +0000
++++ miro-5.0.1/linux/miro-segmenter.c 2012-07-06 15:10:19.564146117 +0000
+@@ -156,7 +156,7 @@
+ exit(1);
+ }
+
+- ret = av_open_input_file(&ic, input, ifmt, 0, NULL);
++ ret = avformat_open_input(&ic, input, ifmt, 0);
+ if (ret != 0) {
+ fprintf(stderr, "Could not open input file, make sure it is an mpegts file: %d\n", ret);
+ exit(1);
+@@ -215,12 +215,7 @@
+ }
+ }
+
+- if (av_set_parameters(oc, NULL) < 0) {
+- fprintf(stderr, "Invalid output format parameters\n");
+- exit(1);
+- }
+-
+- dump_format(oc, 0, input, 1);
++ av_dump_format(oc, 0, input, 1);
+
+ if (video_st) {
+ codec = avcodec_find_decoder(video_st->codec->codec_id);
+@@ -233,12 +228,12 @@
+ }
+ }
+
+- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) {
+ fprintf(stderr, "Could not open '%s'\n", output_filename);
+ exit(1);
+ }
+
+- if (av_write_header(oc)) {
++ if (avformat_write_header(oc, NULL)) {
+ fprintf(stderr, "Could not write mpegts header to first output file\n");
+
+ exit(1);
+@@ -274,10 +269,10 @@
+ }
+
+ if (segment_time - prev_segment_time >= segment_duration) {
+- put_flush_packet(oc->pb);
+- url_fclose(oc->pb);
++ avio_flush(oc->pb);
++ avio_close(oc->pb);
+
+- if (url_fopen(&oc->pb, output_filename, URL_WRONLY) < 0) {
++ if (avio_open(&oc->pb, output_filename, AVIO_FLAG_WRITE) < 0) {
+ fprintf(stderr, "Could not open '%s'\n", output_filename);
+ break;
+ }
+@@ -307,7 +302,7 @@
+ av_freep(&oc->streams[i]);
+ }
+
+- url_fclose(oc->pb);
++ avio_close(oc->pb);
+ av_free(oc);
+
+ /* End-of-transcode marker. */
diff --git a/staging/miro/miro.install b/staging/miro/miro.install
new file mode 100644
index 000000000..a5ee228aa
--- /dev/null
+++ b/staging/miro/miro.install
@@ -0,0 +1,17 @@
+post_install() {
+ update-desktop-database -q
+ xdg-icon-resource forceupdate --theme hicolor
+ update-mime-database usr/share/mime > /dev/null
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+post_remove() {
+ update-desktop-database -q
+ xdg-icon-resource forceupdate --theme hicolor
+ update-mime-database usr/share/mime > /dev/null
+}
+
+