{"id":23739502,"url":"https://github.com/ccatterina/plasmusic-toolbar","last_synced_at":"2025-09-04T15:30:57.065Z","repository":{"id":196160498,"uuid":"692343946","full_name":"ccatterina/plasmusic-toolbar","owner":"ccatterina","description":"KDE Plasma widget that shows currently playing song information and provide playback controls.","archived":false,"fork":false,"pushed_at":"2024-12-07T08:39:43.000Z","size":1058,"stargazers_count":90,"open_issues_count":16,"forks_count":7,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-12-07T09:24:02.834Z","etag":null,"topics":["kde","music","plasma","plasma-applet","plasma5","plasma6","spotify","toolbar","vlc","widget"],"latest_commit_sha":null,"homepage":"","language":"QML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ccatterina.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-09-16T07:31:02.000Z","updated_at":"2024-12-07T08:39:47.000Z","dependencies_parsed_at":"2023-09-22T01:45:10.056Z","dependency_job_id":"3bc26dcd-3a77-4847-bf1c-f22aa65f7b6f","html_url":"https://github.com/ccatterina/plasmusic-toolbar","commit_stats":null,"previous_names":["ccatterina/plasmusic-toolbar"],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccatterina%2Fplasmusic-toolbar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccatterina%2Fplasmusic-toolbar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccatterina%2Fplasmusic-toolbar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ccatterina%2Fplasmusic-toolbar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ccatterina","download_url":"https://codeload.github.com/ccatterina/plasmusic-toolbar/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231970931,"owners_count":18453925,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["kde","music","plasma","plasma-applet","plasma5","plasma6","spotify","toolbar","vlc","widget"],"created_at":"2024-12-31T09:36:58.165Z","updated_at":"2025-09-04T15:30:57.047Z","avatar_url":"https://github.com/ccatterina.png","language":"QML","funding_links":[],"categories":["QML"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n# PlasMusic Toolbar\n\n[![Store version](https://img.shields.io/badge/dynamic/xml?url=https%3A%2F%2Fapi.opendesktop.org%2Focs%2Fv1%2Fcontent%2Fdata%2F2128143\u0026query=%2Focs%2Fdata%2Fcontent%2Fversion%2Ftext()\u0026color=1f425f\u0026labelColor=2d333b\u0026logo=kde\u0026label=KDE%20Store)](https://store.kde.org/p/2128143)\n[![AUR Version](https://img.shields.io/aur/version/plasma6-applets-plasmusic-toolbar?logo=archlinux\u0026labelColor=2d333b\u0026color=1f425f)](https://aur.archlinux.org/packages/plasma6-applets-plasmusic-toolbar)\n[![nixpkgs unstable](https://repology.org/badge/version-for-repo/nix_unstable/plasma-plasmusic-toolbar.svg?header=nixpkgs%20unstable)](https://repology.org/project/plasma-plasmusic-toolbar/versions)\n\n\nPlasMusic Toolbar is a widget for KDE Plasma 6 that shows currently playing song information and provide playback controls. (A Plasma 5 version of the widget is available in the [plasma5 branch](https://github.com/ccatterina/plasmusic-toolbar/tree/plasma5).)\n\n\u003c/div\u003e\n\n## Features\n\n### 🎵 Now Playing Song\n- Show the currently playing song's title and artist in the KDE panel\n\n### ⏯️ Playback Controls\n- Manage your music effortlessly with Play, Pause, Next, and Previous controls directly from the KDE panel.\n\n### 📸 Full View\n- Full View provides the album image, along with Play, Pause, Next, Previous, Shuffle, and Repeat controls. Adjust the volume and track position with ease.\n\n### 🖥️ Compatibility\n- Compatible with both vertical and horizontal KDE Plasma panels, can also be used as a desktop widget.\n\n### 🛠️ Configurations\n- **Icon customization:** Change the widget's icon in the panel view to suit your preferences. You can also choose to display the album cover.\n- **Font customization:** Change the widget's text font to suit your preferences.\n- **Panel song/icon/controls visibility:** Choose whether to show icon, song text and playback controls in the panel view.\n- **Preferred source**: Change the widget preferred source for music information (choose between active MPRIS2 sources).\n- **Song text customization**: Customize the maximum (or fixed) text width and scrolling behavior with adjustable scroll speed.\n- and more...\n\n\n## Installation\n\n### KDE store\n\nYou can install the widget directly from the kde store:\n\n- https://store.kde.org/p/2128143\n\n### AUR package\n\nFor those using an Arch-based distribution, an AUR package is available:\n - https://aur.archlinux.org/packages/plasma6-applets-plasmusic-toolbar\n\nThanks to [@D3SOX](https://www.github.com/D3SOX) for creating and maintaining the package!\n\n### Nix package\n\nFor those using NixOS or the nix package manager, a Nix package is available in nixpkgs-unstable.\n\nTo install the widget use one of these methods:\n\n- NixOS\n\n  ```nix\n  environment.systemPackages = with pkgs; [\n    plasmusic-toolbar\n  ];\n  ```\n\n- [Home-manager](https://github.com/nix-community/home-manager)\n\n  ```nix\n  home.packages = with pkgs; [\n    plasmusic-toolbar\n  ];\n  ```\n\n- [Plasma-manager](https://github.com/nix-community/plasma-manager): If the widget gets added to a panel it will automatically be installed\n\n- Other distros using nix package manager\n\n  ```\n  # without flakes:\n  nix-env -iA nixpkgs.plasmusic-toolbar\n  # with flakes:\n  nix profile install nixpkgs#plasmusic-toolbar\n  ```\n\n\n\n\n### Manual\n1. Clone the repository:\n    ```sh\n    git clone https://github.com/ccatterina/plasmusic-toolbar.git /tmp/plasmusic-toolbar\n    ```\n\n2. Install the widget:\n\n    ```sh\n    kpackagetool6 -i /tmp/plasmusic-toolbar/src/ --type Plasma/Applet\n    ```\n\n3. Upgrading the widget:\n\n    ```sh\n    kpackagetool6 -u /tmp/plasmusic-toolbar/src/ --type Plasma/Applet\n    ```\n\n4. Removing the widget:\n\n    ```sh\n    kpackagetool6 -r plasmusic-toolbar --type Plasma/Applet\n    ```\n\n## Translations\n\n### Prerequisites\n\nMake sure you have the package `gettext` installed on your system, as it is required for managing translations.\n\n### I18n helper script\n\nThe widget comes with a helper script (`bin/i18n`) to manage translations:\n\n1. **Extract translatable strings** from the source code:\n   ```sh\n   ./bin/i18n extract\n   ```\n   Creates/updates the translation template file (`src/translate/template.pot`) and updates existing `.po` files.\n\n1. **Check translation status**:\n   ```sh\n   ./bin/i18n check\n   ```\n   Check if translations template is up to date and shows how many strings are untranslated in each language file.\n\n1. **Initialize a new language**:\n   ```sh\n   ./bin/i18n init \u003clang_code\u003e\n   ```\n   For example, `./bin/i18n init fr` creates a new French translation file.\n\n1. **Compile translations**:\n   ```sh\n   ./bin/i18n compile\n   ```\n   This compiles all `.po` files into `.mo` files that the widget can use.\n\n### Contributing Translations\n\n1. Create or edit a `.po` file in the `src/translate/` directory.\n1. Compile the translations to verify they work correctly.\n1. Submit a pull request with your changes to the `src/translate/` directory, do not include the compiled `.mo` files, as they will be generated automatically during the build process.\n\n\n## Screenshots\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"./screenshots/screenshot_dark.png\"/\u003e\n  \u003cimg src=\"./screenshots/screenshot_light.png\"/\u003e\n  \u003cbr\u003e\n  \u003cimg src=\"./screenshots/screenshot_colors_1.png\" /\u003e\n  \u003cimg src=\"./screenshots/screenshot_colors_2.png\" /\u003e\n  \u003cbr\u003e\n  \u003cimg src=\"./screenshots/screenshot_vertical_1.png\" /\u003e\n  \u003cimg src=\"./screenshots/screenshot_vertical_2.png\" /\u003e\n\u003cp\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccatterina%2Fplasmusic-toolbar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fccatterina%2Fplasmusic-toolbar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fccatterina%2Fplasmusic-toolbar/lists"}