3 %bcond_without python2 # CPython 2.x module
5 # full version number as seen on youtube-dl website
6 %define verlong 2021.12.17
8 # transform version so we don't have to bump epoch after four digit upgrades:
9 # 2013.01.17.1 becomes 20130117_1
10 # 2013.01.28 becomes 20130128
11 # $ rpmvercmp 20130117_1 20130128
12 # 20130117_1 < 20130128
13 %define ver %(echo %{verlong} | awk -F. 'NF == 3 {printf("%s%s%s", $1, $2, $3)} NF == 4 {printf("%s%s%s_%s", $1, $2, $3, $4)}')
14 Summary: Video extraction utility for YouTube
15 Summary(pl.UTF-8): Narzędzie do wydobywania filmów z YouTube
20 License: Public Domain
21 Group: Applications/System
22 Source0: https://youtube-dl.org/downloads/%{verlong}/%{name}-%{verlong}.tar.gz
23 # Source0-md5: 64b373c39c30c314cda9396c6a3f731f
25 # should be downloaded from:
26 # https://github.com/rg3/youtube-dl/pull/10291.diff
27 # but the author removed his repository, so the url is 404
28 # git log -p --reverse pr/10291~3..pr/10291
30 Patch1: extract-uploader.patch
31 URL: http://youtube-dl.org/
33 BuildRequires: python-modules >= 1:2.6
34 BuildRequires: python-setuptools
36 BuildRequires: python3-modules >= 1:3.2
37 BuildRequires: python3-setuptools
38 BuildRequires: rpm-pythonprov
39 BuildRequires: rpmbuild(macros) >= 1.720
40 Requires: python3-setuptools
41 Requires: python3-%{name} = %{epoch}:%{version}-%{release}
44 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
47 youtube-dl is a small command-line program to download videos from
50 %description -l pl.UTF-8
51 youtube-dl jest programem do ściągania plików video z YouTube.com.
53 %package -n bash-completion-%{name}
54 Summary: Bash completion for youtube-dl command
55 Summary(pl.UTF-8): Bashowe dopełnianie parametrów polecenia youtube-dl
56 Group: Applications/Shells
57 Requires: %{name} = %{epoch}:%{version}-%{release}
58 Requires: bash-completion >= 2.0
60 %description -n bash-completion-%{name}
61 Bash completion for youtube-dl command.
63 %description -n bash-completion-%{name} -l pl.UTF-8
64 Bashowe dopełnianie parametrów polecenia youtube-dl.
66 %package -n fish-completion-%{name}
67 Summary: Fish completion for youtube-dl command
68 Summary(pl.UTF-8): Dopełnianie parametrów w fish dla polecenia youtube-dl
69 Group: Applications/Shells
70 Requires: %{name} = %{epoch}:%{version}-%{release}
73 %description -n fish-completion-%{name}
74 Fish completion for youtube-dl command.
76 %description -n fish-completion-%{name} -l pl.UTF-8
77 Dopełnianie parametrów w fish dla polecenia youtube-dl.
79 %package -n python-%{name}
80 Summary: Python 2 video extraction utility for YouTube
81 Summary(pl.UTF-8): Narzędzie do wydobywania filmów z YouTube dla Pythona 2
82 Group: Libraries/Python
83 Requires: python-pyxattr >= 0.5.0
85 %description -n python-%{name}
86 Python 2 video extraction utility for YouTube.
88 %description -n python-%{name} -l pl.UTF-8
89 Narzędzie do wydobywania filmów z YouTube dla Pythona 2.
91 %package -n python3-%{name}
92 Summary: Python 3 video extraction utility for YouTube
93 Summary(pl.UTF-8): Narzędzie do wydobywania filmów z YouTube dla Pythona 3
94 Group: Libraries/Python
95 Requires: python3-pyxattr >= 0.5.0
97 %description -n python3-%{name}
98 Python 3 video extraction utility for YouTube.
100 %description -n python3-%{name} -l pl.UTF-8
101 Narzędzie do wydobywania filmów z YouTube dla Pythona 3.
103 %package -n zsh-completion-%{name}
104 Summary: Zsh completion for youtube-dl command
105 Summary(pl.UTF-8): Dopełnianie parametrów w zsh dla polecenia youtube-dl
106 Group: Applications/Shells
107 Requires: %{name} = %{epoch}:%{version}-%{release}
110 %description -n zsh-completion-%{name}
111 Zsh completion for youtube-dl command.
113 %description -n zsh-completion-%{name} -l pl.UTF-8
114 Dopełnianie parametrów w zsh dla polecenia youtube-dl.
118 %{__mv} %{name} .tmp; %{__mv} .tmp/* .
130 rm -rf $RPM_BUILD_ROOT
139 install -d $RPM_BUILD_ROOT%{_sysconfdir}
140 cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}
142 install -d $RPM_BUILD_ROOT{%{bash_compdir},%{fish_compdir},%{zsh_compdir}}
143 %{__mv} $RPM_BUILD_ROOT%{_prefix}/etc/bash_completion.d/youtube-dl.bash-completion \
144 $RPM_BUILD_ROOT%{bash_compdir}/%{name}
145 %{__mv} $RPM_BUILD_ROOT%{_prefix}/etc/fish/completions/youtube-dl.fish \
146 $RPM_BUILD_ROOT%{fish_compdir}/%{name}.fish
147 cp -p youtube-dl.zsh $RPM_BUILD_ROOT%{zsh_compdir}/_youtube-dl
148 %{__rm} -r $RPM_BUILD_ROOT%{_docdir}/youtube_dl
151 rm -rf $RPM_BUILD_ROOT
154 %defattr(644,root,root,755)
155 %doc README.md LICENSE
156 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/youtube-dl.conf
157 %attr(755,root,root) %{_bindir}/youtube-dl
158 %{_mandir}/man1/youtube-dl.1*
160 %files -n bash-completion-%{name}
161 %defattr(644,root,root,755)
162 %{bash_compdir}/%{name}
164 %files -n fish-completion-%{name}
165 %defattr(644,root,root,755)
166 %{fish_compdir}/%{name}.fish
169 %files -n python-%{name}
170 %defattr(644,root,root,755)
171 %{py_sitescriptdir}/youtube_dl
172 %{py_sitescriptdir}/youtube_dl-*-py*.egg-info
175 %files -n python3-%{name}
176 %defattr(644,root,root,755)
177 %{py3_sitescriptdir}/youtube_dl
178 %{py3_sitescriptdir}/youtube_dl-*-py*.egg-info
180 %files -n zsh-completion-%{name}
181 %defattr(644,root,root,755)
182 %{zsh_compdir}/_youtube-dl