GNOME TV - getting GNOME to work well on TV’s

There was a wiki page set up before the big redesign of gnome-shell which revolved around the concept of a variant of gnome tailored for 10-foot form factors. Somewhere along the line discussion fizzled out and now that a lot of work has gone into building out infrastructure to gradually replace the wiki I thought it might be a good idea to continue the discussion/brainstorming here.

I have been thinking about this more since playing around with GNOME on the steamdeck and discovering how well it works, would be neat to be able to use GNOME on Raspberry Pi in place of AndroidTV.

Gnome’s redesign probably only needs some tweaking now.

In terms of shell itself, it would probably make sense to introduce a recents and favourites page which the user could use to view a global view of recently played/accessed files, kind of like zeitgeist activity journal but pulling in relevant artwork (album covers, movie/tv show artwork etc). This could also be a useful view for mobile/desktop.

HDMI-CEC support out of the box for interacting with GNOME with the remote of the display you have connected to.

Having content played on YouTube, Netflix etc show up in recents would be pretty cool too, maybe log mpris or is that a horrible hack.

If there is no support for hdmi-cec on the hardware you are using then support for air mice would be a good alternative, they might already be supported, it’s a long time since I used one but having them considered when it comes to navigating the shell might be worth it.

So why is any of this necessary? Why not just use Kodi/Jellyfin/Plex and be done with it?

Have tried all of the above but always end up having to context switch back to the os in order to launch an app anyway. Not needing to switch contexts at all when interacting with local/remote media library would be pretty cool.

Having something capable of running foss apps on a large display in living room would also be pretty neat. Right now Google doesn’t have very much competition in that space and what competition it has is usually proprietary.

DVB-I might be worth investigating also, there are several open reference implementations on GitHub along with interest from public service broadcasters e.g RTE in the Republic of Ireland.

Might be a potential avenue for future sovereign tech fund work, bringing public service broadcasts to where Europeans actually are instead of on proprietary platforms or inaccessible due to technical choices of state bodies.


Sam worked on an experimental music recommendation engine backed by Tracker 3.0 that we could take some inspiration from on the media side.

FWIW, support for the low-level aspects HDMI-CEC (input mostly) is in my to-do/bucket list. Somewhat buried in there, but still there nonetheless.

While much of our platform (including the compositor and UI libraries) could be used/extended to cater for TV use cases, I however tend to think a proper TV experience would likely deserve its own compositor UI, and definitely need a great development/filtering of applications suitable for TV use.

Extending the GNOME platform to handle TV-oriented usecases sounds amazing, but I feel that being able to control the GNOME desktop with a TV remote would be a bit of a gimmick, if we leave it at that.


HDMI-CEC would probably not be very useful with desktop level motherboards, I think Intel supports it partially with some nucs but only for switching the display on and off. Pi supports it and I’m assuming other arm based tv hardware too.

I find controlling Google Cast with the tv remote to be useful and not gimicky but I might be the exception.

I don’t want to place too much emphasis on it, it was more to point out that there are other relevant issues which would need to be tackled if people were to look at this seriously, not just slapping a coat of shiny paint on it and calling it a day.

Some of the work on getting hdmi-cec working could benefit controller support too, making sure you can navigate shell sufficiently with directional pads and buttons you have available at your disposal instead of having to hunt down a keyboard and mouse.

Is there anything in particular that you can see being problematic when it comes to using mutter/gnome-shell to facilitate a leanback experience?