Name: shiru Version: 6.8.0 Release: 1%{?dist} Summary: A personal anime library manager License: GPL-3.0-or-later URL: https://github.com/RockinChaos/Shiru Source0: %{name}-%{version}.tar.gz Packager: Yashwanth Rathakrishnan Vendor: Yashwanth Rathakrishnan Requires: gtk3, libnotify, nss, libXScrnSaver, libXtst, xdg-utils, at-spi2-core, libuuid Suggests: libappindicator-gtk3 BuildArch: x86_64 # The application ships its own debug symbols; do not emit a debuginfo package. %global debug_package %{nil} %description A personal anime library manager for watching and tracking your collection in real time. Lightweight, powerful, and paws-itively fast. No waiting required! This is a modified fork. The in-application updater has been removed, so updates are delivered by the system package manager instead. See the NOTICE file for the full list of changes. # There is deliberately no %build section. COPR buildroots resolve # BuildRequires from the configured distribution repositories but have no # general outbound network access, so a from-source build cannot fetch Node.js, # pnpm, or the npm dependency tree. The source tarball therefore contains the # pre-built application laid out in its installed form, and this spec only # stages that tree into the buildroot. %prep %setup -q %install rm -rf %{buildroot} mkdir -p %{buildroot} cp -a opt %{buildroot}/opt cp -a usr %{buildroot}/usr # %license and %doc pull these from the source tree and install them under # /usr/share/licenses and /usr/share/doc themselves. Leaving the originals in # the staged tree would ship the license twice and trip the unpackaged-file # check. rm -rf %{buildroot}/usr/share/doc %post #!/bin/bash if type update-alternatives 2>/dev/null >&1; then # Remove previous link if it doesn't use update-alternatives if [ -L '/usr/bin/shiru' -a -e '/usr/bin/shiru' -a "`readlink '/usr/bin/shiru'`" != '/etc/alternatives/shiru' ]; then rm -f '/usr/bin/shiru' fi update-alternatives --install '/usr/bin/shiru' 'shiru' '/opt/%{name}/shiru' 100 || ln -sf '/opt/%{name}/shiru' '/usr/bin/shiru' else ln -sf '/opt/%{name}/shiru' '/usr/bin/shiru' fi # Check if user namespaces are supported by the kernel and working with a quick test: if ! { [[ -L /proc/self/ns/user ]] && unshare --user true; }; then # Use SUID chrome-sandbox only on systems without user namespaces: chmod 4755 '/opt/%{name}/chrome-sandbox' || true else chmod 0755 '/opt/%{name}/chrome-sandbox' || true fi if hash update-mime-database 2>/dev/null; then update-mime-database /usr/share/mime || true fi if hash update-desktop-database 2>/dev/null; then update-desktop-database /usr/share/applications || true fi %postun #!/bin/bash # Delete the link to the binary if command -v update-alternatives >/dev/null 2>&1; then update-alternatives --remove shiru %{_bindir}/shiru || true else rm -f %{_bindir}/shiru fi %files /opt/%{name} /usr/share/applications/%{name}.desktop /usr/share/icons/hicolor/512x512/apps/%{name}.png /usr/share/metainfo/%{name}.appdata.xml %license usr/share/doc/shiru/LICENSE %doc usr/share/doc/shiru/NOTICE %changelog * Wed Oct 07 2026 Yashwanth Rathakrishnan - 6.8.0-1 - Rebased onto upstream v6.8.0-RELEASE - Removed in-application updater; updates now come from the package manager - Added AppStream metadata and full GPL-3.0 attribution (see NOTICE)