Skip to content

Latest commit

 

History

1,636 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Plasma Bigscreen

This repository contains shell components for Plasma Bigscreen.

Plasma Bigscreen is a user-friendly, open-source, Wayland desktop environment designed for devices like HTPCs and SBCs connected to TVs and projectors. It provides an intuitive experience that allows for easy navigation from a distance using remote controls. Discover an engaging environment that adapts to your preferences, offering the safety and privacy protection that come with free and open source software!

Locations

  • components - Shell components & controls libraries
  • containments - Shell components (homescreen)
  • envmanager - Utility that sets Plasma configuration
  • inputhandler - Daemon that interprets controllers and TV remotes as keyboard input
  • kcms - Settings modules
  • lookandfeel - Plasma look-and-feel package
  • settingsapp - The standalone settings application
  • shell - Plasma shell package, provides implementations for applet and containment configuration dialogs
  • uvcviewer - Standalone application to view camera input, paired with a UVC adapter it can view input from other devices (ex. consoles)
  • webapp-viewer - Application to view webapps added from the settings

CEC and controller support

The plasma-bigscreen-inputhandler utility daemon handles CEC and game controller support. You can manually run it with:

PLASMA_PLATFORM=mediacenter plasma-bigscreen-inputhandler

For CEC support, ensure that your user has permission to access the device:

usermod -aG input $USER

If that doesn't work, the udev rule might not be working. Try this broader permission:

ls -l /dev/ttyACM* # Find the group the cec device belongs to

usermod -aG dialout $USER # Replace dialout with the group that the cec device belongs to

Test on a development machine

It is recommended to use kde-builder to build this from source. See this wiki page in order to set it up.

Click here to see dependencies

KDE Plasma Dependencies

KDE Frameworks Dependencies

  • Activities
  • ActivitiesStats
  • Plasma
  • BluezQt
  • I18n
  • Kirigami
  • KCMUtils
  • GlobalAccel
  • Notifications
  • PlasmaQuick
  • KIO
  • Wayland
  • WindowSystem
  • KDE Connect
  • SVG

Other dependencies

  • QCoro
  • SDL (for game controller support)
  • libcec (optional: for TV Controller support)

To start the Bigscreen homescreen in a window, you can use the following script:

#/bin/bash

# Environment variables
export QT_QUICK_CONTROLS_STYLE=org.kde.breeze
export QT_ENABLE_GLYPH_CACHE_WORKAROUND=1
export QT_QUICK_CONTROLS_MOBILE=true
export PLASMA_INTEGRATION_USE_PORTAL=1
export PLASMA_PLATFORM=mediacenter
export QT_FILE_SELECTORS=mediacenter

# Set ~/.config/plasma-bigscreen/... as location for default bigscreen configs (i.e. envmanager generated)
export XDG_CONFIG_DIRS="$HOME/.config/plasma-bigscreen:/etc/xdg:$XDG_CONFIG_DIRS"

# ensure that we have our environment settings set properly prior to the shell being loaded (otherwise there is a race condition with autostart)
QT_QPA_PLATFORM=offscreen plasma-bigscreen-envmanager --apply-settings

export PLASMA_DEFAULT_SHELL=org.kde.plasma.bigscreen
dbus-run-session kwin_wayland "plasmashell -p org.kde.plasma.bigscreen"

About

Plasma shell for TVs

Resources

Stars

447 stars

Watchers

19 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages