{"id":22479739,"url":"https://github.com/jecaro/mprisqueeze","last_synced_at":"2025-08-02T14:32:29.517Z","repository":{"id":153880058,"uuid":"627095171","full_name":"jecaro/mprisqueeze","owner":"jecaro","description":"MPRIS interface for squeezelite","archived":false,"fork":false,"pushed_at":"2024-10-03T13:27:44.000Z","size":128,"stargazers_count":5,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2024-11-13T14:55:27.691Z","etag":null,"topics":["logitechmediaserver","mpris","rust","squeezelite"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jecaro.png","metadata":{"files":{"readme":"README.md","changelog":null,"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-04-12T19:18:01.000Z","updated_at":"2024-10-03T13:20:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"836e4d22-414f-49f1-b1fb-f305b443ec90","html_url":"https://github.com/jecaro/mprisqueeze","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jecaro%2Fmprisqueeze","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jecaro%2Fmprisqueeze/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jecaro%2Fmprisqueeze/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jecaro%2Fmprisqueeze/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jecaro","download_url":"https://codeload.github.com/jecaro/mprisqueeze/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228483562,"owners_count":17927363,"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":["logitechmediaserver","mpris","rust","squeezelite"],"created_at":"2024-12-06T15:16:48.025Z","updated_at":"2025-08-02T14:32:29.508Z","avatar_url":"https://github.com/jecaro.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# mprisqueeze\n\n[![CI][status-png]][status]\n[![crates][crates-png]][crates]\n\n`mprisqueeze` is a wrapper over [squeezelite]. It starts [squeezelite] in the \nbackground and exposes an [MPRIS] interface to control it with [MPRIS] clients \nsuch as [playerctl].\n\nBy default, `mprisqueeze` will try to discover the [LMS] server on the local \nnetwork. To specify a host and a port:\n\n```bash\n$ mprisqueeze -H somehost -P 9000\n```\n\nThe default command line for [squeezelite] is:\n\n```\nsqueezelite -n {name} -s {server}\n```\n\nBefore calling [squeezelite], `mprisqueeze` replaces:\n- `{name}` by the name of the player, `Squeezelite` by default\n- `{server}` by the LMS server IP, either automatically discovered either set \n  with the `-H` switch\n\nIt then starts [squeezelite] registering itself on [LMS] with the name \n`SqueezeLite`. To use another name, one can use:\n\n```bash\n$ mprisqueeze -p my-player\n```\n\nThe command to start [squeezelite] can be changed with the last arguments, \npreceded by `--`, for example:\n\n```bash\n$ mprisqueeze -- squeezelite -f ./squeezelite.log -n {name} -s {server}\n```\n\nNote that when using a custom command, both parameters must be present on the \ncommand line: `{name}` and `{server}`.\n\n`mprisqueeze` can be automatically started on login. The most convenient way of \ndoing that is using a user systemd unit. For example, one can set a unit called \n`mprisqueeze` in the file `~/.config/systemd/user/mprisqueeze.service`:\n\n```systemd\n[Install]\nWantedBy=default.target\n\n[Service]\nExecStart=mprisqueeze -- squeezelite-pulse -n {name} -s {server}\nRestart=always\nRestartSec=3\nType=simple\n\n[Unit]\nDescription=mprisqueeze\n```\n\nOn the next login, `mprisqueeze` will be automatically started. Otherwise, to \nstart it manually:\n\n```bash\n$ systemctl --user start mprisqueeze\n```\n\n[LMS]: https://github.com/Logitech/slimserver\n[MPRIS]: https://specifications.freedesktop.org/mpris-spec/latest/\n[crates-png]: https://img.shields.io/crates/v/mprisqueeze\n[crates]: https://crates.io/crates/mprisqueeze\n[playerctl]: https://github.com/altdesktop/playerctl\n[squeezelite]: https://github.com/ralph-irving/squeezelite\n[status-png]: https://github.com/jecaro/mprisqueeze/workflows/CI/badge.svg\n[status]: https://github.com/jecaro/mprisqueeze/actions\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjecaro%2Fmprisqueeze","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjecaro%2Fmprisqueeze","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjecaro%2Fmprisqueeze/lists"}