GitPedia

Media controls

A mpris client for the Gnome shell.

From sakithb·Updated June 25, 2026·View on GitHub·
·Archived

Show controls and information of the currently playing media in the panel. The project is written primarily in JavaScript, distributed under the MIT License license, first published in 2021. Key topics include: gjs, gnome, gnome-extension, gnome-shell-extension, mpris.

Latest release: v2.4.5
April 22, 2026View Changelog →

What does this extension do?

Show controls and information of the currently playing media in the panel.

Features

  • Customize the extension the way you want it
  • Basic media controls (play/pause/next/previous/loop/shuffle/seek)
  • Mouse actions lets you run different actions via left/middle/right/scroll.
  • Popup with album art and a slider to control the playback
  • Scrolling animations
  • Blacklist players

How to install

<img src="assets/images/ego.png" height="100">

Manual installation

Install from source

  • Download archive file from the releases tab
  • Open a terminal in the directory containing the downloaded file
  • Install and enable the extension by executing gnome-extensions install extension.zip --force in the terminal

Reporting issues

  • Make sure your issue isn't a duplicate
  • Include the following information when creating the issue,
    • Extension version
    • Gnome version
    • Your distribution
    • A screenshot if it is possible

Development

This project uses pnpm for package management and script execution. Make sure you have pnpm installed.

Available Scripts

Building:

  • pnpm build - Build the extension
  • pnpm release - Build release version (strips debug code)

Development:

  • pnpm debug - Run a nested gnome session for debugging
  • pnpm translations - Update translation files

Extension Management:

  • pnpm run ext:install - Install the extension
  • pnpm run ext:uninstall - Uninstall the extension
  • pnpm run ext:enable - Enable the extension
  • pnpm run ext:disable - Disable the extension
  • pnpm run ext:prefs - Open extension preferences

Quick Start for Contributors

  1. Clone the repository
  2. Install dependencies: pnpm install
  3. Build and install: pnpm reinstall
  4. Enable the extension: pnpm run enable
  5. Open preferences to test: pnpm run prefs

For active development, use pnpm reload (X11) or pnpm debug (Wayland) to test changes.


Get involved

Any type of contribution is appreciated! If you have any suggestions for new features feel free to open a new issue.

If you are interested in translating, download the po file and translate it. Then open a pull request with the translated file. You can use Gtranslator or Poedit to translate.

If you are interested in contributing code. There are no specific guidelines for contributing. Just make sure you follow the coding style of the project. To update the translation files run pnpm run translations in the extensions directory after your changes are done. This will update the files in the locale folder.

<a href="https://github.com/sakithb/media-controls/graphs/contributors"> <img src="https://contrib.rocks/image?repo=sakithb/media-controls" /> </a>

Made with contrib.rocks.

Screenshots

<img src="assets/images/popup.png" width="400">

General settings

<img src="assets/images/prefs_general.png" width="400">

Panel settings

<img src="assets/images/prefs_panel.png" width="400">

Position settings

<img src="assets/images/prefs_positions.png" width="400">

Shortcut settings

<img src="assets/images/prefs_shortcuts.png" width="400">

Other settings

<img src="assets/images/prefs_other.png" width="400">

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from sakithb/media-controls via the GitHub API.Last fetched: 6/25/2026