diff options
Diffstat (limited to 'staging/miro')
-rw-r--r-- | staging/miro/PKGBUILD | 49 | ||||
-rw-r--r-- | staging/miro/ffmpeg.patch | 63 | ||||
-rw-r--r-- | staging/miro/miro.install | 17 |
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 +} + + |