diff options
Diffstat (limited to 'net-misc/youtube-dl/youtube-dl-2018.01.21.ebuild')
-rw-r--r-- | net-misc/youtube-dl/youtube-dl-2018.01.21.ebuild | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/net-misc/youtube-dl/youtube-dl-2018.01.21.ebuild b/net-misc/youtube-dl/youtube-dl-2018.01.21.ebuild new file mode 100644 index 000000000000..db51a779b025 --- /dev/null +++ b/net-misc/youtube-dl/youtube-dl-2018.01.21.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=(python{2_7,3_4,3_5,3_6}) +inherit bash-completion-r1 distutils-r1 readme.gentoo-r1 + +DESCRIPTION="Download videos from YouTube.com (and more sites...)" +HOMEPAGE="https://rg3.github.com/youtube-dl/" +SRC_URI="https://youtube-dl.org/downloads/${PV}/${P}.tar.gz" + +LICENSE="public-domain" +SLOT="0" +KEYWORDS="~amd64 ~arm ~hppa ~ppc ~ppc64 ~x86 ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris" +IUSE="+offensive test" + +RDEPEND=" + dev-python/setuptools[${PYTHON_USEDEP}] +" +DEPEND=" + ${RDEPEND} + test? ( dev-python/nose[coverage(+)] ) +" + +S="${WORKDIR}/${PN}" + +python_prepare_all() { + if ! use offensive; then + sed -i -e "/..version../s|'$|+gentoo.no.offensive.sites'|g" \ + youtube_dl/version.py || die + # these have single line import statements + local xxx=( + alphaporno anysex behindkink camwithher chaturbate eporner + eroprofile extremetube foxgay goshgay hellporno hentaistigma + hornbunny keezmovies lovehomeporn mofosex myvidster porn91 porncom + pornflip pornhd pornotube pornovoisines pornoxo ruleporn sexu + slutload spankbang spankwire sunporno thisav tube8 vporn + watchindianporn xbef xnxx xtube xvideos xxxymovies youjizz youporn + ) + # these have multi-line import statements + local mxxx=( + drtuber fourtube motherless pornhub redtube tnaflix xhamster + ) + # do single line imports + sed -i \ + -e $( printf '/%s/d;' ${xxx[@]} ) \ + youtube_dl/extractor/extractors.py \ + || die + + # do multiple line imports + sed -i \ + -e $( printf '/%s/,/)/d;' ${mxxx[@]} ) \ + youtube_dl/extractor/extractors.py \ + || die + + sed -i \ + -e $( printf '/%s/d;' ${mxxx[@]} ) \ + youtube_dl/extractor/generic.py \ + || die + + rm \ + $( printf 'youtube_dl/extractor/%s.py ' ${xxx[@]} ) \ + $( printf 'youtube_dl/extractor/%s.py ' ${mxxx[@]} ) \ + test/test_age_restriction.py \ + || die + fi + + eapply_user + + distutils-r1_python_prepare_all +} + +src_compile() { + distutils-r1_src_compile +} + +python_test() { + emake test +} + +python_install_all() { + dodoc README.txt + doman ${PN}.1 + + newbashcomp ${PN}.bash-completion ${PN} + + insinto /usr/share/zsh/site-functions + newins youtube-dl.zsh _youtube-dl + + insinto /usr/share/fish/completions + doins youtube-dl.fish + + distutils-r1_python_install_all + + rm -r "${ED}"/usr/etc || die + rm -r "${ED}"/usr/share/doc/youtube_dl || die +} + +pkg_postinst() { + elog "youtube-dl(1) / https://bugs.gentoo.org/355661 /" + elog "https://github.com/rg3/youtube-dl/blob/master/README.md#faq :" + elog + elog "${PN} works fine on its own on most sites. However, if you want" + elog "to convert video/audio, you'll need avconf (media-video/libav) or" + elog "ffmpeg (media-video/ffmpeg). On some sites - most notably YouTube -" + elog "videos can be retrieved in a higher quality format without sound." + elog "${PN} will detect whether avconv/ffmpeg is present and" + elog "automatically pick the best option." + + elog + elog "Videos or video formats streamed via RTMP protocol can only be" + elog "downloaded when rtmpdump (media-video/rtmpdump) is installed." + elog "Downloading MMS and RTSP videos requires either mplayer" + elog "(media-video/mplayer) or mpv (media-video/mpv) to be installed." +} |