forked from armatik/Kitsune
No description
- Python 93.8%
- Shell 5.3%
- Meson 0.9%
- Added `test-isolated.sh` script to verify that Kitsune.app runs without Homebrew or system Python, including checks for Homebrew path leaks, bundle structure, Python imports, and app launch. - Refactored token storage in `token_store.py` to use `keyring` instead of `Secret`, simplifying token management. - Enhanced `GstPlayer` to initialize GStreamer if not already done and added a method to reset the pipeline after end-of-stream. - Introduced `macos_media_keys.py` for handling media key events on macOS, integrating with `MPRemoteCommandCenter` for playback controls. - Updated `image_cache.py` to generate square thumbnails for macOS Now Playing widget. - Modified `player_view.py` to set up media key handlers and update Now Playing info based on playback state. - Adjusted `main.py` to handle locale binding for non-GNU builds. - Updated tests in `test_token_store.py` to reflect changes in token storage implementation and ensure robustness against deletion errors. |
||
|---|---|---|
| build-aux/flatpak | ||
| data | ||
| po | ||
| scripts | ||
| src | ||
| tests | ||
| .gitignore | ||
| changelog.md | ||
| CLAUDE.md | ||
| LICENSE | ||
| meson.build | ||
| README.md | ||
| README.ru.md | ||
| TODO.md | ||
Kitsune
Libadwaita client for watching anime from AniLiberty
Kitsune is an unofficial client. All content (catalog, descriptions, and subtitles) is provided in Russian by the AniLiberty team through their public API.
Features
- Release catalog with filters by genre, year, season, and type
- Search by title with instant results
- Release page with details, episode list, voice cast, and torrents
- Built-in video player with HLS playback and quality control
- Browse by genres and franchises
- Tags and favorites for organizing your library
- Episode watch progress tracking
- Customizable navigation — tab order and visibility
- Watch position saving
- Poster and release data caching for offline access
- Adaptive interface for desktop and mobile devices
- Russian and English language support
Screenshots
Installation
From ALT Linux repository
apt-get update
apt-get install kitsune-adw
From ALS (ALT Linux Space)
apt-repo add rpm https://altlinux.space/api/packages/armatik/alt/group/sisyphus.repo noarch classic
apt-get update
apt-get install kitsune
Building from source
Dependencies:
- Python 3.12+
- GTK 4
- Libadwaita >= 1.6
- GStreamer >= 1.24 (with gtk4paintablesink and hlsdemux plugins)
- Libsoup 3
- Meson 1.0+
- Blueprint Compiler
Build and install:
meson setup _build
meson compile -C _build
sudo meson install -C _build
Runtime dependencies:
For proper video playback you also need:
- gst-plugin-gtk4
- libwebp-pixbuf-loader
Community
- Telegram channel — news and updates
- Telegram chat — discussion and support
- Bug tracker — report an issue
Contributing
Contributions in the form of fixes and improvements are welcome.
Translation
Translations are managed through Meson:
meson compile -C _build kitsune-pot # Update translation template
meson compile -C _build kitsune-update-po # Update translation files
AniLiberty
Kitsune is powered by content from the AniLiberty team — a non-commercial project dedicated to translating and dubbing anime.
License
Kitsune is licensed under GPL-3.0-or-later.
AI tools were used during the development of this project.