# Upstream release tag. GitHub drops the doubled dash when it names the # tarball and its top-level directory, so both spellings are needed. %global picons_tag 2026-09-12--23-13-54 %global picons_version 2026-09-12-23-13-54 # Logo geometry: canvas, box the artwork is scaled into, artwork variant and # background style. VDR skins reserve a 4:3 box for the channel logo, so the # canvas is 268x200 rather than the 5:3 the picon packages are built at: # skinflatplus scales its logo_background to an aspect of 1.34, and the logo # set skindesigner recommends is 268x200 as well. %global logo_resolution 268x200 %global logo_resize 262x190 %global logo_style dark %global logo_background transparent Name: vdr-channellogos # Date of the upstream picons release the artwork is taken from Version: 20260912 Release: 1%{?dist} Summary: Channel logos for VDR skins License: GPL-3.0-or-later URL: https://github.com/picons/picons # The upstream release at # %%{url}/archive/refs/tags/%%{picons_tag}.tar.gz # is 1.3 GiB, nearly all of it artwork for channels this package does not # ship. Source0 is the subset the channel list below resolves to, generated # reproducibly by Source3: # ./channellogos-make-source.sh -t %%{picons_tag} -c channels.conf.base Source0: %{name}-picons-%{picons_version}.tar.xz # Channel list the logos are matched against: Astra 19.2E + Hotbird 13E. Source1: channels.conf.base Source2: channellogos_build.py Source3: channellogos-make-source.sh Source4: README.md BuildArch: noarch BuildRequires: librsvg2-tools BuildRequires: oxipng BuildRequires: pngquant BuildRequires: python3 >= 3.14 BuildRequires: python3-pillow # Any skin that reads logos from the shared /logos wants this # package; each of these Recommends it in turn. Supplements: (vdr-skinflatplus or vdr-skindesigner) %description Channel logos in PNG format for the Astra 19.2E and Hotbird 13E channel lineup, installed in the shared skin independent VDR logo directory where any VDR skin can use them. %prep %autosetup -n picons-%{picons_version} cp -p %{SOURCE4} . %build %{python3} %{SOURCE2} \ --build-source build-source \ --channels-conf %{SOURCE1} \ --output logos \ --resolution %{logo_resolution} \ --resize %{logo_resize} \ --style %{logo_style} \ --background %{logo_background} \ --jobs %{?_smp_build_ncpus}%{!?_smp_build_ncpus:1} %check # No name may be left pointing at artwork that was not rendered, and the # channels the lineup is built around have to have found a logo. test -z "$(find logos -xtype l -print -quit)" for logo in 'das erste hd' 'zdf hd' 'rtl television' 'sat.1' 'arte hd' ; do test -s "logos/${logo}.png" done %install install -dm 755 %{buildroot}%{_datadir}/vdr # -a keeps the symlinks that stand in for shared artwork. cp -a logos %{buildroot}%{_datadir}/vdr/logos find %{buildroot}%{_datadir}/vdr/logos -type d -exec chmod 755 {} + find %{buildroot}%{_datadir}/vdr/logos -type f -exec chmod 644 {} + %files %license LICENSE %doc README.md %dir %{_datadir}/vdr/ %{_datadir}/vdr/logos/ %changelog * Wed Sep 16 2026 Dirk Nehring - 20260912-1 - Render the logos at build time from the picons release 2026-09-12--23-13-54 instead of shipping a pre-converted tarball - Ship the artwork the channel list resolves to rather than the whole 1.3 GiB upstream release, reproducibly cut by channellogos-make-source.sh - Initial release