Name: shiru Version: 6.1.12 Release: 1%{?dist} Summary: Shiru - The ultimate torrent-based anime player. License: GPL-3.0-or-later URL: https://github.com/RockinChaos/Shiru Source0: shiru-6.1.12.tar.gz Packager: Yashwanth Rathakrishnan Vendor: RockinChaos Requires: gtk3, libnotify, nss, libXScrnSaver, libXtst, xdg-utils, at-spi2-core, libuuid, libsecret Suggests: libappindicator-gtk3 BuildArch: x86_64 %global debug_package %{nil} %description Shiru - Allows you to stream anime in real-time with no waiting for downloads, combining the advantages of high-speed torrents, great video quality, and fast releases — all without ads or tracking. %prep %setup #verbose output # %setup -q %install rm -rf %{buildroot} mkdir -p %{buildroot} cp -a opt %{buildroot}/opt cp -a usr %{buildroot}/usr ls -lR %{buildroot} %check %files /opt/Shiru/* /usr/share/applications/shiru.desktop /usr/share/icons/hicolor/16x16/apps/shiru.png /usr/share/icons/hicolor/32x32/apps/shiru.png /usr/share/icons/hicolor/48x48/apps/shiru.png /usr/share/icons/hicolor/64x64/apps/shiru.png /usr/share/icons/hicolor/128x128/apps/shiru.png /usr/share/icons/hicolor/256x256/apps/shiru.png /usr/share/icons/hicolor/512x512/apps/shiru.png %doc /usr/share/doc/shiru/changelog.gz %license LICENSE %post if type update-alternatives >/dev/null 2>&1; then # Remove previous link if it doesn't use update-alternatives if [ -L '/usr/bin/shiru' ] && [ -e '/usr/bin/shiru' ] && [ "$(readlink '/usr/bin/shiru')" != '/etc/alternatives/shiru' ]; then rm -f '/usr/bin/shiru' fi update-alternatives --install '/usr/bin/shiru' 'shiru' '/opt/Shiru/shiru' 100 || ln -sf '/opt/Shiru/shiru' '/usr/bin/shiru' else ln -sf '/opt/Shiru/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/Shiru/chrome-sandbox' || true else chmod 0755 '/opt/Shiru/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 # 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 %changelog * Sat Aug 30 2025 Yashwanth Rathakrishnan 6.1.12-1 - fix: prevent the app from being killed during playback on Android * Fixed random termination during external player playback due to Android background CPU restrictions. * Removed battery optimization permission requirement for external playback. - fix: wide cover images * Adjusted display for non-standard sized covers (e.g., Dr. STONE SCIENCE FUTURE Cour 2). - fix: Ooops! Dubbed Releases * Resolved issue where cache resets or missing media caused incorrect Dub listings. - fix: dub filter * Fixed broken Dub filter in user list search and general search. - fix: Android episode summary * Restored truncated descriptions and corrected skeleton card extra lines. - fix: discord-rpc * Proper handling of RPC state after Discord restarts or profile swaps. * Fixed premature/incorrect "limited" status until after startup delay. - fix: mapping rate limit * Introduced rate limiting to avoid failures when resolving mappings; skeleton cards may be visible for longer under heavy API use. - fix: duplicate torrent edge case - fix: hide availability warning when seeding - fix: showing broken image - chore: improve player to external player * Improved external player flow, now triggered only on playback start (or via auto-play). * Removed irrelevant buttons when external player is active. - chore: improve schedule fetching * Dub/Sub/Hentai Home sections and schedules now fetched only on change detection. * Reduces bandwidth (check ~1KB vs fetch >1MB). - chore: improve home sections * Home page updates dynamically when modified in settings, no restart required. * Skips redundant updates if values unchanged. - chore: improve caching performance * More efficient query/media caching, batching writes as needed. - chore: reduce torrent cache hits * Optimized cache comparisons to reduce unnecessary writes. - chore: improve bitfield caching - chore: reduce log size