{"id":33143073,"url":"https://github.com/ekrlstd/songfetch","last_synced_at":"2026-03-01T03:32:52.868Z","repository":{"id":318398101,"uuid":"1071132581","full_name":"ekrlstd/songfetch","owner":"ekrlstd","description":"A Linux CLI tool, very similar to neofetch, that displays current song information in the terminal.","archived":false,"fork":false,"pushed_at":"2025-11-16T23:50:33.000Z","size":70,"stargazers_count":94,"open_issues_count":7,"forks_count":6,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-17T01:20:18.173Z","etag":null,"topics":["cli","linux","unixporn"],"latest_commit_sha":null,"homepage":"https://aur.archlinux.org/packages/songfetch","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ekrlstd.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-06T23:02:02.000Z","updated_at":"2025-11-16T23:50:37.000Z","dependencies_parsed_at":null,"dependency_job_id":"16a754bd-dadd-4d1a-8992-00151d28d27a","html_url":"https://github.com/ekrlstd/songfetch","commit_stats":null,"previous_names":["fwtwoo/songfetch","ekrlstd/songfetch"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/ekrlstd/songfetch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekrlstd%2Fsongfetch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekrlstd%2Fsongfetch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekrlstd%2Fsongfetch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekrlstd%2Fsongfetch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ekrlstd","download_url":"https://codeload.github.com/ekrlstd/songfetch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ekrlstd%2Fsongfetch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29959375,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-01T01:47:18.291Z","status":"online","status_checked_at":"2026-03-01T02:00:07.437Z","response_time":124,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["cli","linux","unixporn"],"created_at":"2025-11-15T13:00:24.203Z","updated_at":"2026-03-01T03:32:52.860Z","avatar_url":"https://github.com/ekrlstd.png","language":"Python","funding_links":[],"categories":["Miscellaneous"],"sub_categories":["Other"],"readme":"# songfetch\n\nA simple Linux CLI tool, very similar to something like neo/fastfetch, that displays current song information in the terminal using playerctl and MPRIS/MPRIS2.\n\n### Contributions and Issues are welcome!\n\n---\n\n\u003cimg width=\"1186\" height=\"730\" alt=\"2025-10-17-032127_hyprshot\" src=\"https://github.com/user-attachments/assets/761d714a-932d-4c5b-8065-5f6ae9fcb505\" /\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eMore Images\u003c/summary\u003e\n  \u003cimg width=\"2241\" height=\"1400\" alt=\"2025-10-17-031524_hyprshot\" src=\"https://github.com/user-attachments/assets/32ff2ed2-dce1-47f5-b3f7-9aa397152588\" /\u003e\n\u003cimg width=\"2241\" height=\"1401\" alt=\"2025-10-17-031901_hyprshot\" src=\"https://github.com/user-attachments/assets/adf539ad-9fda-4283-99b5-3c7e7f44a834\" /\u003e\n\u003c/details\u003e\n\n## Installation (Arch Linux):\n\nYou need to first manually install the package for ascii image conversion. You can install it from the AUR:\n\n```bash\nyay -S python-ascii_magic\n```\n\nor with pip/pipx:\n\n```bash\npip install ascii-magic\nor,\npipx install ascii-magic\n```\n\nThen install the full program:\n\n```bash\nyay -S songfetch\n```\n\n## Dependencies:\n\n```bash\npython\npython-pillow\npython-ascii_magic (AUR) (or ascii-magic from pip/pipx)\nplayerctl\n```\n\n## Player Compatibility\n\n### Works Out of the Box\n\nMost players **should** work without any additional setup:\n\n- Spotify, VLC, Firefox, Chrome\n- Rhythmbox, Clementine, Strawberry\n- Any player that supports MPRIS2\n\n### Requires Additional Setup\n\nSome terminal/daemon-based players need an MPRIS bridge installed:\n\n| Player   | Package to Install | Command                                                                                                      |\n| -------- | ------------------ | ------------------------------------------------------------------------------------------------------------ |\n| **MPD**  | `mpdris2`          | `yay -S mpdris2` (Arch)\u003cbr\u003e`sudo dnf install mpdris2` (Fedora)\u003cbr\u003e`sudo apt install mpdris2` (Debian/Ubuntu) |\n| **cmus** | `cmus`             | Check your distro's package manager                                                                          |\n| **moc**  | `moc-mpris`        | Check your distro's package manager                                                                          |\n\nAfter installing the bridge, enable it:\n\n```bash\nsystemctl --user enable --now mpDris2  # for MPD\n# enable similar services for other players\n```\n\nTo start the `playerctld` daemon and set it to run on startup, run:\n\n```bash\nsystemctl --user enable --now playerctld\n```\n\nIf you get an error like `Unit playerctld.service does not exist`, or issues with player instances not updating correctly, create a user systemd service:\n\nCreate `~/.config/systemd/user/playerctld.service`:\n\n```\n[Unit]\nDescription=playerctld daemon\n\n[Service]\nExecStart=/usr/bin/playerctld daemon\n\n[Install]\nWantedBy=default.target\n```\n\nReload user systemd and enable with:\n\n```bash\nsystemctl --user daemon-reload\nsystemctl --user enable --now playerctld\n```\n\nIf you see `playerctld DBus service is already running`, it means another instance is active. Kill it with:\n\n```bash\npkill playerctld\n```\n\nThen restart the systemd service as above.\n\n## Notes\n\nAlbum art colors will be displayed using ANSI terminal colors and will be affected by custom terminal color schemes (pywal, themes etc.), just like the other big fetching tools.\n\nThis program is designed to be used on **actual songs**, so running this while watching a YouTube video for example, might give unwanted results. This is due to the _non- 1 to 1 aspect ratio_ of the \"album art\" (in this case, a YouTube thumbnail.\n\n## Thanks to Microck and Matars for contributing to this project!\n\n### Please star this repo if you liked it! ⭐\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekrlstd%2Fsongfetch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fekrlstd%2Fsongfetch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fekrlstd%2Fsongfetch/lists"}