{"id":13609869,"url":"https://github.com/dcx86r/cmus-notify","last_synced_at":"2025-04-12T22:32:08.230Z","repository":{"id":218437575,"uuid":"195492161","full_name":"dcx86r/cmus-notify","owner":"dcx86r","description":"Configurable cmus status desktop notifications via notify-send","archived":false,"fork":false,"pushed_at":"2022-11-23T03:03:00.000Z","size":508,"stargazers_count":66,"open_issues_count":3,"forks_count":7,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-08-01T19:53:37.062Z","etag":null,"topics":["cmus-music-player","notify-send"],"latest_commit_sha":null,"homepage":null,"language":"Perl","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/dcx86r.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":"2019-07-06T03:16:59.000Z","updated_at":"2024-06-25T19:18:43.000Z","dependencies_parsed_at":null,"dependency_job_id":"aa15d5ab-a632-4131-bc97-cea25b94e655","html_url":"https://github.com/dcx86r/cmus-notify","commit_stats":null,"previous_names":["dcx86r/cmus-notify"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcx86r%2Fcmus-notify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcx86r%2Fcmus-notify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcx86r%2Fcmus-notify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dcx86r%2Fcmus-notify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dcx86r","download_url":"https://codeload.github.com/dcx86r/cmus-notify/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223549008,"owners_count":17163576,"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":["cmus-music-player","notify-send"],"created_at":"2024-08-01T19:01:38.817Z","updated_at":"2024-11-07T16:30:18.777Z","avatar_url":"https://github.com/dcx86r.png","language":"Perl","funding_links":[],"categories":["Perl"],"sub_categories":[],"readme":"## Cmus-notify\n\nA cmus status notification program made for easy configuration and portability.\n\n![Screenshot](https://raw.githubusercontent.com/dcx86r/cmus-notify/master/2020-12-18-a85d.jpg)\n\n#### Requirements:\n\n* cmus\n* perl\n* notify-send\n* ffmpeg (optional)\n* PerlMagick (optional)\n\n#### Installation:\n\n* `git clone https://github.com/dcx86r/cmus-notify`  \n* install `HTML::Entities` module from CPAN\n* `[sudo] sh installer.sh install`\n\n...and to uninstall:  \n* `[sudo] sh installer.sh uninstall`\n\nIf using a previous version, uninstall old version before installing new one\n\n#### Configuration:\n\nConfiguration is accomplished via file, which is installed to  \n`$HOME/.config/cmus/notify.cfg` on first run. The file is prepopulated with some \ndefault values that can be modified or added to.\n\nThe default config values:\n\n`artist i:title duration`\n\nAll possible config values:\n\n`file artist album duration title tracknumber date nomarkup covers placeholder \ndunst`\n\nAlbum art is not shown by default, adding the value `covers` to the config file \nenables that option.  \n\nAdding the value `placeholder:\u003cfilename\u003e` allows for user-defined album art \nplaceholder image where no other image is available to use. See below for \ndetails.\n\nMarkup can be used by prepending config values with b, i, or u -- meaning bold, \nitalicized, underlined. All can be used together, e.g. ibu:artist ui:title. \nMarkup tags do not apply to `nomarkup` or `covers`.\n\nThe default is to assume the notification application parses markup. If it does \nnot, then `nomarkup` should be supplied in the config file.\n\n**When using dunst**, the config option `dunst` can be used to only display\nthe most current notification instead of stacking new notifications under old\nones. This option does not need to be set if this behaviour is not desired but\ndunst is still being used.\n\n##### Activate in cmus:\n\n`:set status_display_program=/usr/local/bin/cmus-notify`.\n\n#### Album art\n\n`cmus-notify` uses `ffmpeg` to extract art from media files.  Art is cached on \ndisk at `$HOME/.local/share/cmus-notify/covers`, and this directory is created \nby the program if it does not yet exist. \n\nA placeholder image is used when art cannot be found. An image is embedded in\nthe script to be used by default. A different placeholder image can be chosen, \nby copying the desired image file to the `covers` directory after it has been \ncreated, then adding `placeholder:\u003cfilename\u003e` to the config file. An example of \nthis is `placeholder:covers.png`.\n\n##### Rounding corners\n\nIn order to use the functionality to round corners on album art, PerlMagick \nmust be installed first.  \n\nWith PerlMagick installed, the `covers` option in the config file must be \nappended with two values:\n\n1. image size\n2. corner radius\n\nThe image size setting should match the expected size shown in the notification \napplication (e.g. 64, 128). For example, `covers:128:8` sets the image size to \n128px and the corner radius to 8.\n\n#### Error handling\n\nErrors are logged to `$HOME/.local/share/cmus-notify/error.log`.\n\n#### Other Notes\n\n* the album art cache has no size limits imposed\n* the placeholder image is shown if art has not yet been cached (e.g. on \nfirst play of a file), this is because `ffmpeg` takes anywhere between 1-5+ \nseconds to perform the extraction, so whatever is available is shown instead of \nwaiting an indeterminate amount of time\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcx86r%2Fcmus-notify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdcx86r%2Fcmus-notify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdcx86r%2Fcmus-notify/lists"}