{"id":13669653,"url":"https://github.com/fgrehm/vagrant-notify","last_synced_at":"2025-04-27T04:34:09.646Z","repository":{"id":4941029,"uuid":"6098097","full_name":"fgrehm/vagrant-notify","owner":"fgrehm","description":"Vagrant plugin that redirects `notify-send` from guest to host machine  and notifies provisioning status.","archived":true,"fork":false,"pushed_at":"2022-12-08T18:16:13.000Z","size":208,"stargazers_count":180,"open_issues_count":0,"forks_count":12,"subscribers_count":8,"default_branch":"master","last_synced_at":"2025-04-11T03:06:30.331Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"scrapy/scrapyd-client","license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fgrehm.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2012-10-05T23:36:26.000Z","updated_at":"2025-03-23T02:11:42.000Z","dependencies_parsed_at":"2023-01-13T13:18:26.448Z","dependency_job_id":null,"html_url":"https://github.com/fgrehm/vagrant-notify","commit_stats":null,"previous_names":[],"tags_count":16,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fgrehm%2Fvagrant-notify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fgrehm%2Fvagrant-notify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fgrehm%2Fvagrant-notify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fgrehm%2Fvagrant-notify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fgrehm","download_url":"https://codeload.github.com/fgrehm/vagrant-notify/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251089408,"owners_count":21534511,"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":[],"created_at":"2024-08-02T08:01:21.145Z","updated_at":"2025-04-27T04:34:07.728Z","avatar_url":"https://github.com/fgrehm.png","language":"Ruby","funding_links":[],"categories":["Ruby"],"sub_categories":[],"readme":"# :warning: UNMAINTAINED :warning:\n\nThis project has been archived. Thanks a lot to everyone that contributed with it and used it over the years ❤️‍🔥\n\nIf anyone else wants to resurrect it please reach out on Twitter or by other means listed in @fgrehm's website!\n\n# vagrant-notify\n\n[![Build Status](https://travis-ci.org/fgrehm/vagrant-notify.png)](https://travis-ci.org/fgrehm/vagrant-notify)\n[![Gem Version](https://badge.fury.io/rb/vagrant-notify.png)](http://badge.fury.io/rb/vagrant-notify)\n\nA Vagrant plugin that forwards `notify-send` from guest to host machine and\nnotifies provisioning status. [See it in action](#demo)\n\n\n## Installation\n\nMake sure you have Vagrant 1.4+ around and run:\n\n```terminal\n$ vagrant plugin install vagrant-notify\n```\n\n\n## Usage\n\n### `notify-send` from guest VMs\n\nWhenever you run `vagrant up`, a Ruby [TCPServer](http://www.ruby-doc.org/stdlib-1.9.3/libdoc/socket/rdoc/TCPServer.html)\nwill fire up on a port within the [usable port range](https://www.vagrantup.com/docs/vagrantfile/machine_settings.html)\nand a Ruby [script](https://github.com/fgrehm/vagrant-notify/blob/master/files/notify-send.erb)\nwill be copied over to the guest machine to replace the original `notify-send`\ncommand.\n\n### Provisioning notification\n\nApart from redirecting `notify-send` from the guest VM to the host, whenever\na Vagrant 1.4+ provisioner starts or completes running you'll also receive\nnotifications like:\n\n![provisioning](http://i.imgur.com/DgKjDgr.png)\n\n![provisioned](http://i.imgur.com/UGhOAzV.png)\n\n### Linux\n\nSince Linux distributions have `notify-send` pre-installed, everything should work out of the box.\n\n### OS X\n\nCheck out our OS X notify-send compatible [scripts](https://github.com/fgrehm/vagrant-notify/tree/master/examples#os-x).\n\n### Windows\n\nCheck out our Windows notify-send compatible [scripts](https://github.com/fgrehm/vagrant-notify/tree/master/examples#windows).\n\n## Configuration\n\nNotification server is enabled by default on all guests. You can individually disable the plugin by adding a false boolean to the ***notify.enable*** option in your `Vagrantfile` configuration block\n\n```ruby\nVagrant.configure(2) do |config|\n  config.vm.box = \"ubuntu/trusty64\"\n  config.notify.enable = false\nend\n```\n\n_Please note that as of v0.5.1, the notification server will automatically be disabled for any of the following\n[cloud providers](lib/vagrant-notify/plugin.rb#L78-L80)._\n\nBy default, the notification server is binded to [local interfaces](lib/vagrant-notify/plugin.rb#L83-L90). For networking different than your provider's default network configuration, you can use the ***notify.bind\\_ip*** configuration option to bind the notification server onto a different local ip address. \n\n```ruby\nVagrant.configure(2) do |config|\n  config.vm.box = \"ubuntu/trusty64\"\n  config.notify.bind_ip = \"192.68.56.20\"\nend\n```\n\n**WARNING!** _Do **NOT** bind the notification server to an IP accessible over a network! The notification server does not have any authentication and doing so will leave your system vulnerable to remote command execution._\n\nBy default the local notification server uses the ***notify_send*** command in your host PATH for displaying notifications, there is a possibility to use different app without wrapper scripts:\n* ***notify.sender\\_app*** configuration option is used for specifing application name (default: `notify-send`)\n* ***notify.sender\\_params\\_str*** defines how params for applications will be passed (default: `[--app-name {app_name}] [--urgency {urgency}] [--expire-time {expire_time}] [--icon {icon}] [--category {category}] [--hint {hint}] {message}`). You can use these variables (escaped by `{` and `}` characters) here:\n  * ***urgency*** - urgency level for notification\n  * ***expire\\_time*** - when notification will expire?\n  * ***app\\_name*** - application name\n  * ***icon*** - icon for the notification (can be multiple, devided by comma)\n  * ***category*** - category for the notification (can be multiple, devided by comma)\n  * ***hint*** - icon for the notification (need to use this format: TYPE:NAME:VALUE)\n  * ***message*** - message to send\n* ***notify.sender\\_params\\_escape*** - should params will be escaped when passed to script (default: `true`)\n\nThis is example how to to run notifications with build-in MacOS X notifications support:\n```ruby\nVagrant.configure(2) do |config|\n  config.vm.box = \"ubuntu/trusty64\"\n  config.notify.sender_params_str = '-e \\'display notification {message} sound name \\\"default\\\"\\''\n  config.notify.sender_app = 'osascript'\n  config.notify.sender_params_escape = true\nend\n```\n\n### Providers and Guests\n\nvagrant-notify supports the following providers:\n\n  - VirtualBox\n  - Docker\n  - Hyper-V\n  - [LXC](https://github.com/fgrehm/vagrant-lxc)\n  - [Parallels](https://github.com/Parallels/vagrant-parallels)\n  - [VMWare Fusion](https://www.vagrantup.com/vmware)\n  - [VMWare Workstation](https://www.vagrantup.com/vmware)\n\nvagrant-notify has been tested and known to work with Linux, Solaris 11, FreeBSD, OpenBSD, and NetBSD guests. (notify-send icon forwarding feature is not supported on BSD guests)\n\n## Demo\n\n![Demo](http://i.imgur.com/tzOLvGY.gif)\n![Demo OS X](http://i.imgur.com/216NIlf.gif)\n![Demo Windows](http://i.imgur.com/cJYqX4y.gif)\n\n\n## Known issues\n\n* On rare occasions the notification server may stop receiving notifications if the host is suspended/hibernates. The notification server may need to be manually restarted if that's the case. `vagrant notify --restart`\n\n\n## Contributing\n\n1. Fork it\n2. Create your feature branch (`git checkout -b my-new-feature`)\n3. Commit your changes (`git commit -am 'Add some feature'`)\n4. Push to the branch (`git push origin my-new-feature`)\n5. Create new Pull Request\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffgrehm%2Fvagrant-notify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffgrehm%2Fvagrant-notify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffgrehm%2Fvagrant-notify/lists"}