summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-sound/shell-fm')
-rw-r--r--media-sound/shell-fm/Manifest1
-rw-r--r--media-sound/shell-fm/files/shell-fm-0.8-doublefree.patch24
-rw-r--r--media-sound/shell-fm/metadata.xml13
-rw-r--r--media-sound/shell-fm/shell-fm-0.8-r1.ebuild43
4 files changed, 81 insertions, 0 deletions
diff --git a/media-sound/shell-fm/Manifest b/media-sound/shell-fm/Manifest
new file mode 100644
index 000000000000..c007d53773e2
--- /dev/null
+++ b/media-sound/shell-fm/Manifest
@@ -0,0 +1 @@
+DIST shell-fm-0.8.tar.gz 54303 SHA256 b6d5b754c6ea0285c060f4989de730101dd6a172bb075a2a04b4649be33a06a3
diff --git a/media-sound/shell-fm/files/shell-fm-0.8-doublefree.patch b/media-sound/shell-fm/files/shell-fm-0.8-doublefree.patch
new file mode 100644
index 000000000000..5054ee1ad024
--- /dev/null
+++ b/media-sound/shell-fm/files/shell-fm-0.8-doublefree.patch
@@ -0,0 +1,24 @@
+Fix double free crash: http://bugs.gentoo.org/392413
+
+--- source/sckif.c
++++ source/sckif.c
+@@ -39,6 +39,8 @@
+
+ #include "split.h"
+
++#include "ropen.h" /* fshutdown */
++
+ struct hash track;
+
+ static int stcpsck = -1, sunixsck = -1;
+@@ -191,9 +193,7 @@
+
+ if(disconnect) {
+ debug("removing client\n");
+- shutdown(SHUT_RDWR, client_socket);
+- close(client_socket);
+- fclose(fd);
++ fshutdown(& fd);
+
+ remove_handle(client_socket);
+ }
diff --git a/media-sound/shell-fm/metadata.xml b/media-sound/shell-fm/metadata.xml
new file mode 100644
index 000000000000..8868a09811d7
--- /dev/null
+++ b/media-sound/shell-fm/metadata.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>sound</herd>
+ <longdescription lang="en">
+ Shell.FM is a lightweight console based player for Last.FM radio
+ streams. It's written mainly for Linux, but should be able to run on any
+ UNIX based system (even Mac OS X) with some minor tweaks.
+ </longdescription>
+ <upstream>
+ <remote-id type="github">jkramer/shell-fm</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/media-sound/shell-fm/shell-fm-0.8-r1.ebuild b/media-sound/shell-fm/shell-fm-0.8-r1.ebuild
new file mode 100644
index 000000000000..76cd0962ebeb
--- /dev/null
+++ b/media-sound/shell-fm/shell-fm-0.8-r1.ebuild
@@ -0,0 +1,43 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=4
+inherit flag-o-matic toolchain-funcs eutils
+
+DESCRIPTION="A lightweight console based player for Last.FM radio streams"
+HOMEPAGE="http://nex.scrapping.cc/shell-fm/"
+SRC_URI="https://github.com/jkramer/${PN}/tarball/v${PV} -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux"
+IUSE=""
+
+RDEPEND="media-libs/libao
+ media-libs/libmad
+ media-libs/taglib"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig
+ sys-apps/sed"
+
+src_unpack() {
+ unpack ${A}
+ mv *-${PN}-* "${S}"
+}
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-doublefree.patch #392413
+
+ sed -i -e 's:-Os::' source/Makefile || die
+
+ tc-export CC AR
+ use ppc && append-flags -DWORDS_BIGENDIAN=1
+}
+
+src_install() {
+ dobin source/${PN}
+ doman manual/${PN}.1
+ exeinto /usr/share/${PN}/scripts
+ doexe scripts/{*.sh,*.pl,zcontrol}
+}