chore(sync): f39 -> f40 (#1002)

This commit is contained in:
madomado
2024-03-28 02:27:55 +08:00
committed by GitHub
parent 2dadfcfc25
commit 6c9da528c0
28 changed files with 378 additions and 65 deletions
+2 -3
View File
@@ -38,9 +38,8 @@ Keywords=Music;Jellyfin;Audio;Stream;Sonixd
EOF
%build
npm i --legacy-peer-deps update-browserslist-db@latest
npm audit fix --force
npx update-browserslist-db@latest
npm install --legacy-peer-deps
npm run postinstall
npm run build
%ifarch x86_64
+2 -2
View File
@@ -1,6 +1,6 @@
%global commit 3e42139e138a8cbb67a756dab2d6eaeb2a115223
%global commit a46ce9e28cd97f7280c085649a79f85aa1d0fe70
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20240227
%global commit_date 20240325
%global ver v0.37.0
Name: mpv-nightly
@@ -1,13 +1,13 @@
%global real_name prismlauncher
%global nice_name PrismLauncher
%global commit 3b0564f098c49be2fd3082928c91440c73df4d80
%global commit df0280f52b68f4352d8da711136609c16ce4db7b
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global libnbtplusplus_commit a5e8fd52b8bf4ab5d5bcc042b2a247867589985f
%global quazip_commit 6117161af08e366c37499895b00ef62f93adc345
%global tomlplusplus_commit 7eb2ffcc09f8e9890dc0b77ff8ab00fc53b1f2b8
%global commit_date 20240311
%global commit_date 20240325
%global snapshot_info %{commit_date}.%{shortcommit}
%bcond_without qt6
@@ -1,13 +1,13 @@
%global real_name prismlauncher
%global nice_name PrismLauncher
%global commit 3b0564f098c49be2fd3082928c91440c73df4d80
%global commit df0280f52b68f4352d8da711136609c16ce4db7b
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global libnbtplusplus_commit a5e8fd52b8bf4ab5d5bcc042b2a247867589985f
%global quazip_commit 6117161af08e366c37499895b00ef62f93adc345
%global tomlplusplus_commit 7eb2ffcc09f8e9890dc0b77ff8ab00fc53b1f2b8
%global commit_date 20240311
%global commit_date 20240325
%global snapshot_info %{commit_date}.%{shortcommit}
%bcond_with qt6
+29 -14
View File
@@ -1,11 +1,12 @@
%global csrc_commit 561b417c65791cd8356b5f73620914ceff845d10
%global commit 78c834dd76f273d8813247647531005a1f7db1a6
%global commit 33902d9dbb65fbfdfbd6e3b2a34c6e19eccb762f
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global ver 2.1.1
%global commit_date 20240312
%global commit_date 20240322
%global debug_package %nil
Name: nim-nighlty
Version: %ver^%commit_date.%commit
Version: %ver^%commit_date.%shortcommit
Release: 1%?dist
Summary: Imperative, multi-paradigm, compiled programming language
License: MIT and BSD
@@ -36,6 +37,7 @@ order of priority).
This package provides various tools, which help Nim programmers.
%ifarch x86_64
%package doc
Summary: Documentation for Nim programming language
BuildArch: noarch
@@ -46,12 +48,15 @@ order of priority).
This package provides documentation and reference manual for the language
and its standard library.
%endif
%prep
%autosetup -n Nim-%commit
# hack
cp /usr/bin/mold /usr/bin/ld
%build
export CFLAGS="${CFLAGS} -Ofast"
export CXXFLAGS="${CXXFLAGS} -Ofast"
@@ -66,13 +71,18 @@ nimBuildCsourcesIfNeeded CFLAGS="${CFLAGS} -Ic_code -w -O3 -fno-strict-aliasing
nim c --noNimblePath --skipUserCfg --skipParentCfg --hints:off -d:danger koch.nim
koch boot -d:release -d:nimStrictMode --lib:lib
%ifarch x86_64
koch docs &
%endif
(cd lib; nim c --app:lib -d:danger -d:createNimRtl -t:-fPIE -l:-pie nimrtl.nim) &
koch tools --skipUserCfg --skipParentCfg --hints:off -d:release -t:-fPIE -l:-pie &
nim c -d:danger -t:-fPIE -l:-pie nimsuggest/nimsuggest.nim &
wait
%ifarch x86_64
sed -i '/<link.*fonts.googleapis.com/d' doc/html/*.html
%endif
%install
export PATH="$(pwd):$(pwd)/bin:${PATH}"
@@ -82,24 +92,28 @@ mold -run bin/nim cc -d:nimCallDepthLimit=10000 -r tools/niminst/niminst --var:v
sh ./install.sh %buildroot/usr/bin
mkdir -p %buildroot/%_bindir %buildroot/%_datadir/bash-completion/completions
mkdir -p %buildroot/%_bindir %buildroot/%_datadir/bash-completion/completions %buildroot/usr/lib/nim
install -Dpm755 bin/nim{grep,suggest,pretty} %buildroot/%_bindir
install -Dpm644 tools/nim.bash-completion %buildroot/%_datadir/bash-completion/completions/nim
install -Dpm644 dist/nimble/nimble.bash-completion %buildroot/%_datadir/bash-completion/completions/nimble
install -Dpm644 -t%buildroot/%_mandir/man1 %SOURCE1 %SOURCE2 %SOURCE3 %SOURCE4
mkdir -p %buildroot/%_docdir/%name/html %buildroot/usr/lib/nim
%ifarch x86_64
mkdir -p %buildroot/%_docdir/%name/html
cp -a doc/html/*.html %buildroot/%_docdir/%name/html/
cp tools/dochack/dochack.js %buildroot/%_docdir/%name/
%endif
cp -r lib/* %buildroot%_prefix/lib/nim/
cp -a compiler %buildroot%_prefix/lib/nim/
install -Dm644 nim.nimble %buildroot%_prefix/lib/nim/compiler
install -Dm644 config/* -t %buildroot/etc/nim
install -d %buildroot%_includedir || true
cp -a %buildroot%_prefix/lib/nim/lib/*.h %buildroot%_includedir || true
ln -s %_prefix/lib/nim %buildroot%_prefix/lib/nim/lib || true
rm -rf %buildroot/nim || true
rm %buildroot%_bindir/*.bat || true
#check
# export PATH=$PATH:$(realpath ./bin)
# for cat in manyloc gc threads nimble-all lib io async rodfiles debugger examples dll flags
# do
# ./koch tests --pedantic category $cat -d:nimCoroutines || (echo "$cat test category failed" && exit 1)
# done
%files
%license copying.txt dist/nimble/license.txt
@@ -108,16 +122,17 @@ cp -r lib/* %buildroot%_prefix/lib/nim/
%_mandir/man1/nim{,ble}.1*
%_datadir/bash-completion/completions/nim{,ble}
%_prefix/lib/nim/
%_sysconfdir/nim/
%files tools
%license copying.txt
%_bindir/nim{grep,suggest,pretty}
%_mandir/man1/nim{grep,suggest}.1*
%ifarch x86_64
%files doc
%doc %_docdir/%name
%endif
%changelog
* Mon Jan 9 2023 windowsboy111 <windowsboy111@fyralabs.com> - 1.9.3^fcc383d89994241f1b73fe4f85ef38528c135e2e-1
- Initial Package.
%autochangelog
+23 -22
View File
@@ -3,7 +3,7 @@
Name: nim
Version: 2.0.2
Release: 2%{?dist}
Release: 3%{?dist}
Summary: Imperative, multi-paradigm, compiled programming language
License: MIT and BSD
URL: https://nim-lang.org
@@ -13,8 +13,7 @@ Source2: nimgrep.1
Source3: nimble.1
Source4: nimsuggest.1
BuildRequires: gcc mold git gcc-c++ nodejs openssl-devel pkgconfig(bash-completion) gc-devel pcre-devel
Requires: redhat-rpm-config gcc
Conflicts: choosenim
Requires: gcc
%description
@@ -32,7 +31,7 @@ order of priority).
This package provides various tools, which help Nim programmers.
%ifarch x86_64
%package doc
Summary: Documentation for Nim programming language
BuildArch: noarch
@@ -43,10 +42,13 @@ order of priority).
This package provides documentation and reference manual for the language
and its standard library.
%endif
%prep
%autosetup -n nim-%{version}
%build
export CFLAGS="${CFLAGS} -Ofast"
export CXXFLAGS="${CXXFLAGS} -Ofast"
@@ -58,20 +60,24 @@ export PATH="$(pwd):$(pwd)/bin:${PATH}"
mold -run nim c -d:danger koch.nim
mold -run koch boot -d:useLinenoise -t:-fPIE -l:-pie -d:release -d:nativeStacktrace -d:useGnuReadline
%ifarch x86_64
mold -run koch docs &
%endif
(cd lib && nim c --app:lib -d:createNimRtl -d:release nimrtl.nim) &
mold -run koch tools -t:-fPIE -l:-pie &
mold -run nim c -t:-fPIE -l:-pie -d:release nimsuggest/nimsuggest.nim &
wait
%ifarch x86_64
sed -i '/<link.*fonts.googleapis.com/d' doc/html/*.html
%endif
%install
export PATH="$(pwd):$(pwd)/bin:${PATH}"
sh install.sh %{buildroot}usr/bin
mkdir -p %buildroot{%_bindir,%_docdir/%name/html,%_prefix/lib/nim}
mkdir -p %buildroot{%_bindir,%_prefix/lib/nim}
install -Dp -m755 bin/nim{,ble,grep,suggest,pretty} %buildroot/%_bindir
install -Dp -m644 dist/nimble/nimble.bash-completion %{buildroot}%{bashcompdir}/nimble
install -Dp -m644 -t%{buildroot}%{_mandir}/man1 %SOURCE1 %SOURCE2 %SOURCE3 %SOURCE4
@@ -83,34 +89,27 @@ for comp in tools/*.zsh-completion; do
install -Dm644 $comp %zshcompdir/_$(basename "${comp/.zsh-completion}")
done
%ifarch x86_64
mkdir -p %buildroot%_docdir/%name/html
cp -a doc/html/*.html %buildroot%_docdir/%name/html/
cp tools/dochack/dochack.js %{buildroot}%{_docdir}/%{name}/
cp -a lib %buildroot%_prefix/lib/nim
ln -s %_datadir/nim/doc %buildroot%_prefix/lib/nim/doc
%endif
cp -a lib %buildroot%_prefix/lib/
mv %buildroot%_prefix/lib/{lib,nim}
cp -a compiler %buildroot%_prefix/lib/nim
install -Dm644 nim.nimble %buildroot%_prefix/lib/nim/compiler
ls **
ls %buildroot%_prefix/lib/nim/*
install -m755 lib/libnimrtl.so %buildroot%_prefix/lib/libnimrtl.so
install -m755 lib/libnimrtl.so %buildroot%_prefix/lib/libnimrtl.so # compiler needs
install -Dm644 config/* -t %buildroot/etc/nim
install -Dm755 bin/* -t %buildroot%_bindir
install -d %buildroot%_includedir
cp -a %buildroot%_prefix/lib/nim/lib/*.h %buildroot%_includedir
ln -s %_datadir/nim/doc %buildroot%_prefix/lib/nim/doc
ln -s %_prefix/lib/nim %buildroot%_prefix/lib/nim/lib
ln -s %_prefix/lib/nim %buildroot%_prefix/lib/nim/lib # compiler needs lib from here
ln -s %_prefix/lib/nim/system.nim %_prefix/lib/system.nim # nimsuggest bug
rm -rf %buildroot/nim || true
rm %buildroot%_bindir/*.bat || true
%check
# export PATH=$PATH:$(realpath ./bin)
# for cat in manyloc gc threads nimble-all lib io async rodfiles debugger examples dll flags
# do
# ./koch tests --pedantic category $cat -d:nimCoroutines || (echo "$cat test category failed" && exit 1)
# done
%files
%license copying.txt dist/nimble/license.txt
@@ -133,8 +132,10 @@ rm %buildroot%_bindir/*.bat || true
%{_bindir}/nim{grep,suggest,pretty}
%{_mandir}/man1/nim{grep,suggest}.1*
%ifarch x86_64
%files doc
%doc %{_docdir}/nim
%endif
%changelog
%autochangelog
@@ -1,9 +1,9 @@
%global real_name vala-language-server
%global commit 3b5fe941bea6ecd5c8fcb84930c40b8582eea165
%global commit 0b020298aa3dafacd2f6633533ca91fba5698340
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 240218
%global commit_date 20240323
%global snapshot_info %{commit_date}.%{shortcommit}
%global verrel 0.48.7
@@ -3,7 +3,7 @@
%global commit 8ae2bb65fe66458263d94711ae4ddd978faece00
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 240218
%global commit_date 20240218
%global snapshot_info %{commit_date}.%{shortcommit}
Name: vala-lint-nightly
@@ -7,7 +7,7 @@
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global repo https://gitlab.gnome.org/GNOME/%{real_name}.git
%global commit_date 240218
%global commit_date 20240218
%global snapshot_info %{commit_date}.%{shortcommit}
Name: vala-nightly
@@ -21,6 +21,7 @@ BuildRequires: vala
BuildRequires: systemd-rpm-macros
BuildRequires: pkgconfig(libxfce4panel-2.0)
BuildRequires: pkgconfig(gtk+-2.0)
BuildRequires: java-devel
BuildRequires: pkgconfig(gtk+-3.0)
BuildRequires: pkgconfig(libxfconf-0)
BuildRequires: pkgconfig(budgie-1.0)
@@ -82,6 +83,13 @@ Summary: Gtk3MenuShell D-Bus exporter
%description -n vala-panel-appmenu-gtk-module
GTK (2, 3) module that exports GtkMenuShells over D-Bus.
%package -n vala-panel-appmenu-jayatana-module
Summary: Vala appmenu support for Java Swing applications
%description -n vala-panel-appmenu-jayatana-module
Vala appmenu support for Java Swing applications.
%prep
%forgeautosetup
@@ -123,6 +131,11 @@ GTK (2, 3) module that exports GtkMenuShells over D-Bus.
%{_libdir}/gtk-3.0/modules/libappmenu-gtk-module.so
%{_datadir}/glib-2.0/schemas/org.appmenu.gtk-module.gschema.xml
%files -n vala-panel-appmenu-jayatana-module
%{_datadir}/java/*.jar
%dir %{_libdir}/jayatana
%{_libdir}/jayatana/*.so
%files -n xfce4-vala-panel-appmenu-plugin
%{_libdir}/xfce4/panel/plugins/libappmenu-xfce.so
%{_datadir}/xfce4/panel/plugins/appmenu.desktop
-4
View File
@@ -139,10 +139,6 @@ changehat abilities exposed through libapparmor.
%prep
%autosetup -p1 -n %{name}-%{version}
ver="%(echo %version | sed 's@~alpha@a@')"
sed -i "s/@VERSION@/$ver/g" libraries/libapparmor/swig/python/setup.py.in
sed -i 's/${PYTHON} ${PYSETUP} install --prefix=${PYPREFIX} --root=${DESTDIR} --version=${VERSION}/${PYTHON} ${PYSETUP} install --prefix=${PYPREFIX} --root=${DESTDIR} --version="'$ver'"/' ./utils/Makefile
%build
export PYTHON=%{__python3}
export PYTHON_VERSION=3
+3
View File
@@ -2,4 +2,7 @@ project pkg {
rpm {
spec = "pqmarble.spec"
}
labels {
nightly = "1"
}
}
+3 -1
View File
@@ -1,8 +1,10 @@
%global commit f240b2ec7d5cdacb8fdcc553703420dc5101ffdb
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20240310
%global ver 2.0.0
Name: pqmarble
Version: %ver^%commit
Version: %ver^%commit_date.%shortcommit
Release: 1%{?dist}
Summary: My GTK library
License: GPL-3.0
+8 -4
View File
@@ -1,4 +1,8 @@
let req = get("https://gitlab.gnome.org/api/v4/projects/20662/repository/branches/master").json();
rpm.global("commit", req.commit.id);
let meson = get("https://gitlab.gnome.org/raggesilver/marble/-/raw/master/meson.build");
rpm.global("ver", find("(?m)^\\s+version:\\s*'(.+)',$", meson, 1));
if filters.contains("nightly") {
rpm.global("commit", gitlab_commit("gitlab.gnome.org", "20662", "master"));
if rpm.changed() {
let meson = get("https://gitlab.gnome.org/raggesilver/marble/-/raw/master/meson.build");
rpm.global("ver", find("(?m)^\\s+version:\\s*'(.+)',$", meson, 1));
rpm.global("commit_date", date());
}
}
+6 -4
View File
@@ -1,8 +1,10 @@
%global commit d0ff90bb19a235d9357f0874b0a62306e40d90b8
%global ver 1.8.25
%global commit_date 240219
%global commit 586bc784138042d2710168cd0b29f5dd6d415f45
%global ver 1.8.26
%global commit_date 20240219
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: tdlib-nightly
Version: %ver^%commit_date.%commit
Version: %ver^%commit_date.%shortcommit
Release: 1%?dist
License: BSL-1.0
URL: https://github.com/tdlib/td
+1 -1
View File
@@ -1,7 +1,7 @@
if filters.contains("nightly") {
rpm.global("commit", gh_commit("tdlib/td"));
if rpm.changed() {
let v = find("\nproject\\(TDLib\\s+VERSION\\s+([\\d.]+)\\s+", gh_rawfile("tdlib/td", "master", "CMakeLists.txt")), 1);
let v = find("\nproject\\(TDLib\\s+VERSION\\s+([\\d.]+)\\s+", gh_rawfile("tdlib/td", "master", "CMakeLists.txt"), 1);
rpm.global("ver", v);
rpm.release();
}
+1 -1
View File
@@ -1,5 +1,5 @@
%global commit 7cb289b6466b662fdf9f7d7ccc9f3c08a7dc0cac
%global commit_date 240219
%global commit_date 20240219
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global debug_package %{nil}
%define __os_install_post %{nil}
+5
View File
@@ -0,0 +1,5 @@
project pkg {
rpm {
spec = "dfu-programmer.spec"
}
}
@@ -0,0 +1,16 @@
Include <stdlib.h> for the malloc function.
Submitted upstream: <https://github.com/dfu-programmer/dfu-programmer/pull/76>
diff --git a/src/atmel.c b/src/atmel.c
index 4ea794d17f65d8d0..491bbb16706e65a8 100644
--- a/src/atmel.c
+++ b/src/atmel.c
@@ -19,6 +19,7 @@
*/
#include <stdio.h>
+#include <stdlib.h>
#include <stdarg.h>
#include <stdint.h>
#include <string.h>
@@ -0,0 +1,37 @@
Name: dfu-programmer
Version: 1.1.0
Release: 1%?dist
Summary: A Device Firmware Update based USB programmer for Atmel chips
License: GPL-2.0-or-later
URL: https://github.com/dfu-programmer/dfu-programmer
Source0: %url/archive/refs/tags/v%version.tar.gz
Patch0: dfu-programmer-c99.patch
BuildRequires: pkgconfig(libusb-1.0) >= 1.0.0
BuildRequires: make gcc autoconf automake
%description
A linux based command-line programmer for Atmel chips with a USB
bootloader supporting ISP. This is a mostly Device Firmware Update
(DFU) 1.0 compliant user-space application. Supports all DFU enabled
Atmel chips with USB support.
%prep
%autosetup -p1
touch ./ChangeLog
autoreconf -fiv
%build
%configure
%make_build
%install
%make_install
%files
%license COPYING
%doc AUTHORS ChangeLog NEWS README.md
%{_bindir}/%{name}
%{_mandir}/man1/%{name}.1*
%changelog
%autochangelog
+1
View File
@@ -0,0 +1 @@
rpm.version(gh("dfu-programmer/dfu-programmer"));
+1 -1
View File
@@ -1,7 +1,7 @@
%global debug_package %{nil}
%global commit 564c0661a942f7163cb2cfa6cb1b14b4bcff3a30
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 240218
%global commit_date 20240218
%global patches %{_datadir}/src/nvidia-patch
+5
View File
@@ -0,0 +1,5 @@
project "pkg" {
rpm {
spec = "opentabletdriver.spec"
}
}
@@ -0,0 +1,70 @@
# saves time so we don't have to download the thing manually
#undefine _disable_source_fetch
# We don't have debug symbols, because .NET
%define debug_package %{nil}
# We aren't using Mono but RPM expected Mono
%global __requires_exclude_from ^/usr/lib/opentabletdriver/.*$
%global __os_install_post %{nil}
Name: opentabletdriver
Version: 0.6.4.0
Release: 1%{?dist}
Summary: A cross-platform open source tablet driver
License: LGPLv3
URL: https://github.com/OpenTabletDriver/OpenTabletDriver
%define otddir OpenTabletDriver-%{version}
BuildRequires: dotnet-sdk-6.0 git jq systemd-rpm-macros
Requires: dotnet-runtime-6.0
Requires: libevdev.so.2()(64bit)
Requires: gtk3
Requires: gtk3
Requires: udev
Suggests: libX11
Suggests: libXrandr
%description
OpenTabletDriver is an open source, cross platform, user mode tablet driver. The goal of OpenTabletDriver is to be cross platform as possible with the highest compatibility in an easily configurable graphical user interface.
%prep
git clone -b v%version %url .
%build
./eng/linux/package.sh --output bin
%install
export DONT_STRIP=1
PREFIX="%{_prefix}" ./eng/linux/package.sh --package Generic --build false
mkdir -p "%{buildroot}"
mv ./dist/files/* "%{buildroot}"/
rm -rf ./dist
mkdir -p "%{buildroot}/%{_prefix}/lib/"
cp -r bin "%{buildroot}/%{_prefix}/lib/opentabletdriver"
%post
%systemd_user_post %name.service
%preun
%systemd_user_preun %name.service
%postun
%systemd_user_postun_with_restart %name.service
%files
%defattr(-,root,root)
%dir %{_prefix}/lib/opentabletdriver
%dir %{_prefix}/share/doc/opentabletdriver
%{_bindir}/otd
%{_bindir}/otd-daemon
%{_bindir}/otd-gui
%{_prefix}/lib/modprobe.d/99-opentabletdriver.conf
%{_prefix}/lib/modules-load.d/opentabletdriver.conf
%{_prefix}/lib/opentabletdriver/*
%{_prefix}/lib/systemd/user/opentabletdriver.service
%{_prefix}/lib/udev/rules.d/70-opentabletdriver.rules
%{_prefix}/share/applications/opentabletdriver.desktop
%{_prefix}/share/man/man8/opentabletdriver.8.gz
%{_prefix}/share/doc/opentabletdriver/LICENSE
%{_prefix}/share/pixmaps/otd.ico
%{_prefix}/share/pixmaps/otd.png
+1
View File
@@ -0,0 +1 @@
rpm.version(gh("OpenTabletDriver/OpenTabletDriver"));
+8
View File
@@ -0,0 +1,8 @@
project pkg {
rpm {
spec = "yt-dlp-nightly.spec"
}
labels {
nightly = "1"
}
}
+8
View File
@@ -0,0 +1,8 @@
if filters.contains("nightly") {
rpm.global("commit", gh_commit("yt-dlp/yt-dlp"));
if rpm.changed() {
rpm.global("ver", gh("yt-dlp/yt-dlp"));
rpm.global("commit_date", date());
rpm.release();
}
}
+127
View File
@@ -0,0 +1,127 @@
#bcond_without tests
%global commit e5d4f11104ce7ea1717a90eea82c0f7d230ea5d5
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global commit_date 20240325
%global ver 2024.03.10
Name: yt-dlp-nightly
Version: %ver^%commit_date.%shortcommit
Release: 1%?dist
Summary: A command-line program to download videos from online video platforms
License: Unlicense
URL: https://github.com/yt-dlp/yt-dlp
Source: %url/archive/%commit.tar.gz
# License of the specfile
Source: https://src.fedoraproject.org/rpms/yt-dlp/raw/rawhide/f/yt-dlp.spec.license
BuildArch: noarch
BuildRequires: python3-devel
%if %{with tests}
# Needed for %%check
BuildRequires: %{py3_dist pytest}
%endif
# Needed for docs
BuildRequires: pandoc
BuildRequires: make
# ffmpeg-free is now available in Fedora.
Recommends: /usr/bin/ffmpeg
Recommends: /usr/bin/ffprobe
Provides: yt-dlp
Conflicts: yt-dlp
Suggests: python3dist(keyring)
%global _description %{expand:
yt-dlp is a command-line program to download videos from many different online
video platforms, such as youtube.com. The project is a fork of youtube-dl with
additional features and fixes.}
%description %{_description}
%package bash-completion
Summary: Bash completion for yt-dlp
Requires: %{name} = %{version}-%{release}
Requires: bash-completion
Supplements: (%{name} and bash-completion)
Provides: yt-dlp-bash-completion
Conflicts: yt-dlp-bash-completion
%description bash-completion
Bash command line completion support for %{name}.
%package zsh-completion
Summary: Zsh completion for %{name}
Requires: %{name} = %{version}-%{release}
Requires: zsh
Supplements: (%{name} and zsh)
Provides: yt-dlp-zsh-completion
Conflicts: yt-dlp-zsh-completion
%description zsh-completion
Zsh command line completion support for %{name}.
%package fish-completion
Summary: Fish completion for %{name}
Requires: %{name} = %{version}-%{release}
Requires: fish
Supplements: (%{name} and fish)
Provides: yt-dlp-fish-completion
Conflicts: yt-dlp-fish-completion
%description fish-completion
Fish command line completion support for %{name}.
%prep
%autosetup -n yt-dlp-%commit
# Remove unnecessary shebangs
find -type f ! -executable -name '*.py' -print -exec sed -i -e '1{\@^#!.*@d}' '{}' +
# Relax version constraints
sed -i 's@"\(requests\|urllib3\|websockets\)>=.*"@"\1"@' pyproject.toml
%generate_buildrequires
%pyproject_buildrequires -r
%build
# Docs and shell completions
make yt-dlp.1 completion-bash completion-zsh completion-fish
# Docs and shell completions are also included in the wheel.
%pyproject_wheel
%install
%pyproject_install
%pyproject_save_files yt_dlp
%check
%if %{with tests}
# See https://github.com/yt-dlp/yt-dlp/blob/master/devscripts/run_tests.sh
%pytest -m 'not download'
%endif
%files -f %{pyproject_files}
%{_bindir}/yt-dlp
%{_mandir}/man1/yt-dlp.1*
%doc README.md
%license LICENSE
%files bash-completion
%{bash_completions_dir}/yt-dlp
%files zsh-completion
%{zsh_completions_dir}/_yt-dlp
%files fish-completion
%{fish_completions_dir}/yt-dlp.fish
%changelog
%autochangelog