KCast is a KDE Plasma 6 widget that lets you cast video files or YouTube URLs to a Chromecast device in your local network.
It supports device discovery, local media playback (served via catt's own temporary HTTP server), and drag-and-drop integration with browsers and file managers like Dolphin.
Caution! starting with version 0.0.2 we need catt installed.
KCast was recently featured on r/kde and received over 38,000 views and 305 upvotes (99% positive). Thanks to everyone for the amazing feedback, ideas, and testing!
If you’d like to support ongoing development, consider sponsoring the project:
💖 GitHub Sponsors
- Chromecast discovery using Avahi (mDNS)
- Media playback controls: Play, Pause, Resume, Stop
- Local media files, served to the Chromecast via
catt's own temporary local HTTP server - YouTube and thousands of other sites, plus direct HLS (
.m3u8) stream URLs —cattresolves these viayt-dlpunder the hood. Live-tested and confirmed working end to end. If a site stops working, update yt-dlp (pipx inject catt yt-dlp --forcefor a pipx install, or just update yourcattpackage on RPM-based distros — it depends on your systemyt-dlp, which stays current through normal updates) - Drag & Drop from Firefox, Chrome, or Dolphin
git clone https://github.com/Agundur-KDE/KCast.git
mkdir build && cd build
cmake ..
make
make install (as root) KCast is available in the Arch User Repository (AUR).
If you use an AUR helper like yay or paru, you can install it with:
yay -S kcast
paru -S kcastIf you prefer to build manually from the AUR package:
git clone https://aur.archlinux.org/kcast.git
cd kcast
makepkg -siNote: The AUR package is community-maintained by a third party Special thanks for creating and keeping it up to date.
For openSUSE Tumbleweed (and compatible systems):
# Add the repository
sudo zypper ar -f https://download.opensuse.org/repositories/home:/Agundur/openSUSE_Tumbleweed/home:Agundur.repo
# Automatically import GPG key (required once)
sudo zypper --gpg-auto-import-keys ref
# Refresh repository metadata
sudo zypper ref
# Install KCast
sudo zypper in kcastcatt is packaged in the same home:Agundur repository and pulled in
automatically as a dependency — no extra step needed.
# Enable repository
sudo dnf copr enable agundur/KCast
# Install package
sudo dnf install kcastFedora has no catt package (COPR or official), so install it separately:
sudo dnf install -y pipx
pipx ensurepath
pipx install catt
catt --versionPrerequisites
-
You’re running KDE Plasma 6 on Debian 13 (Trixie) — e.g. on plasma-desktop / plasma-workspace.
-
Architecture: packages provided are amd64 (x86-64).
sudo apt update
sudo apt install -y pipx
pipx ensurepath # add ~/.local/bin to PATH (log out/in if prompted)
pipx install catt
catt --versionDownload the .deb from the latest release, then:
sudo apt install ./kcast_*.debTo run KCast successfully, the following software must be installed:
KCast is based on:
-
catt — on openSUSE this comes automatically as an RPM dependency from the same repo. On Fedora/Debian there's no distro package for it, install via
pipx install catt. -
Avahi Daemon – for local network device discovery (mDNS) (systemctl status avahi-daemon)
Networking & Firewall:
-
Your PC and the Chromecast must be on the same LAN
-
mDNS must be allowed through the firewall
-
Local files aren't served by KCast itself —
cattspins up its own temporary local HTTP server on a random port to serve them, see below.
To allow via firewalld:
-
sudo firewall-cmd --permanent --add-service=mdns
-
sudo firewall-cmd --permanent --add-port=8009/tcp
-
sudo firewall-cmd --reload
-
For the casting of local files to work you need to allow the port range 45000-47000 over tcp (catt's local file server picks a port in this range).
- Switch on a chromecast enabled device in your locale network.
- drop a video file from Dolphin and/or Web-Browser on it an hit "play"
KCast has been tested successfully with the JMGO N1S Pro 4K Triple Laser Projector (supports high-quality Chromecast streaming) and a Samsung HW-Q935GD 9.1.4-channel Q-Soundbar.
- Open an issue in git ...
Under consideration for a future release, tracked in #8 — not started yet.
accepting contributions ...
Alec
GPL-3.0-or-later
active
