{"id":15718361,"url":"https://github.com/jacobsalmela/ncutil","last_synced_at":"2025-08-21T20:33:27.953Z","repository":{"id":21892816,"uuid":"25216675","full_name":"jacobsalmela/NCutil","owner":"jacobsalmela","description":"Notification Center utility- Add/remove apps, set alert styles, suppress App store notifications","archived":false,"fork":false,"pushed_at":"2022-11-05T01:00:41.000Z","size":53,"stargazers_count":171,"open_issues_count":4,"forks_count":18,"subscribers_count":14,"default_branch":"master","last_synced_at":"2024-12-10T12:43:06.354Z","etag":null,"topics":["hacktoberfest","macos","notifications"],"latest_commit_sha":null,"homepage":"","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/jacobsalmela.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":["jacobsalmela"],"custom":["https://jacobsalmela.com/sponsor/"]}},"created_at":"2014-10-14T16:51:17.000Z","updated_at":"2024-01-19T15:08:31.000Z","dependencies_parsed_at":"2023-01-12T03:46:06.884Z","dependency_job_id":null,"html_url":"https://github.com/jacobsalmela/NCutil","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacobsalmela%2FNCutil","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacobsalmela%2FNCutil/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacobsalmela%2FNCutil/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jacobsalmela%2FNCutil/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jacobsalmela","download_url":"https://codeload.github.com/jacobsalmela/NCutil/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230532451,"owners_count":18240792,"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":["hacktoberfest","macos","notifications"],"created_at":"2024-10-03T21:52:52.299Z","updated_at":"2024-12-20T04:08:16.884Z","avatar_url":"https://github.com/jacobsalmela.png","language":"Python","readme":"NCutil\n======\n\nNotification Center command line utility - ***Add and remove apps, set alert styles.***\nOS Mavericks and [Yosemite](https://github.com/jasonpjohnson/NCutil/commit/3028e8baccc646b60712fa0cc08de2be52b4e11b).  View changes via the GUI in **real-time**.\n\n# Short Demo Video\n\u003ca href=\"http://www.youtube.com/watch?feature=player_embedded\u0026v=4mPsqD30eCY\n\" target=\"_blank\"\u003e\u003cimg src=\"http://img.youtube.com/vi/4mPsqD30eCY/0.jpg\"\nalt=\"Modify Notification Center from the command line in OS X\" width=\"600\" height=\"400\" border=\"0\" /\u003e\u003c/a\u003e\n\n\n# Add and remove apps from Notification Center\nAdding and removing apps is perfect for deploying software silently or having it pre-configured so the user doesn't have to do anything.\n\n## Add apps\n\n- ```NCutil.py -i com.noodlesoft.HazelHelper```\n- ```NCutil.py --insert com.noodlesoft.HazelHelper```\n\n## Remove apps\n\n- ```NCutil.py -r com.barebones.textwrangler```\n- ```NCutil.py --remove com.barebones.textwrangler```\n\n# Get Current Settings\nRunning a command like this:\n\n- ```NCutil.py --get-info com.apple.reminders```\n\nwill return something like this:\n\n```\nNotification Center settings for Reminders.app:\n    Reminders.app alert style:         Alerts\n    Show notifications on lock screen: Yes\n    Show message preview:              Always\n    Show in Notification Center:       5 Recent Items\n    Badge app icon:                    Yes\n    Play sound for notifications:      Yes\n```\n\n## Get Individual Settings\n\n### Get The Current Alert Settings\n\nYou can find out what the app's current alert setting is with the `-g` flag or `--get-alert-style`.\n\n- ```NCutil.py -g com.teamviewer.TeamViewer```\n- ```NCutil.py --get-alert-style com.teamviewer.TeamViewer```\n\nwhich will return a one line response: `none`, `banners`, or `alerts`\n\n### Get Other Settings\n\nYou can check if individual settings are on or off using some of the examples shown below, which will return a one line response.\n\n`NCutil.py --get-show-on-lock-screen com.apple.iCal`\n\nreturns `true` or `false`\n\n`NCutil.py --get-badge-app-icon com.apple.iCal`\n\nreturns `true` or `false`\n\n`NCutil.py --get-sound com.apple.iCal`\n\nreturns `true` or `false`\n\n`NCutil.py --get-show-in-notification-center com.apple.iCal`\n\nreturns a number: `0`, `5`, `10`, or `20`\n\n# Change Settings\n\n## Adjust Alert Duration (Alerts, Banners, or None)\n\n- ```NCutil.py -a alerts com.apple.Safari```\n- ```NCutil.py -a banners com.apple.reminders```\n- ```NCutil.py --alert-style none com.apple.appstore```\n\n## Adjust Other Checkbox Settings\n\nYou can adjust any of the checkboxes in the GUI such as the badge icon, number of recent items, whether or not to show it on the lock screen, etc.\n![Notifications that can be adjusted with NCutil.py](http://i.imgur.com/q0aRdGl.png)\n\nDon't show iCal Notifications on the lock screen\n\n- ```NCutil.py --show-on-lock-screen true com.apple.iCal```\n\nDisable the badge app icon for Message\n\n- ```NCutil.py --badge-app-icon false com.apple.iChat```\n\nDisable the sound for TextWrangler\n\n- ```NCutil.py --sound false com.barebones.textwrangler```\n\nSet the amount of recent Notifications to show to 20 for Dropbox\n\n- ```NCutil.py --show-in-notification-center 20 com.getdropbox.dropbox```\n\n# Multiple Bundle IDs\n\nMost of the options like `--insert`, `--remove`, or `--alert-style`, allow you to add multiple bundle IDs to modify the same setting for multiple apps.\n\n- ```NCutil.py --remove com.noodlesoft.HazelHelper com.apple.Safari com.apple.reminders```\n\n# `_SYSTEM_CENTER_` Notifications\n\nApple has a lot of different apps that show notifications, which do not show up in the GUI. You can remove **all** of these hidden Notification sources by using the `-remove-system-center` option but is not fully-supported as we don't know what they all do.  If you decide to try it, this is the equivalent to setting each one individually to an alert style of `none`.\n\n- ```NCutil.py --remove-system-center```\n\n## Remove `_SYSTEM_CENTER_` At Your Own Risk\n\nTo add a little more detail to the command above, the `_SYSTEM_CENTER_` entries are hidden from the GUI.  Apple is obviously not expecting users to change any of those preferences (since there is no UI to do so) and so it would be prudent to not modify those.  However, this utility lets you do that.  You can do so *at your own risk*.  Personally, I have had them turned off for a few weeks now without issue, but that doesn't mean it won't break later.\n\nAdditionally, if there were some sources you still wanted to have notification for, you can simply re-enable them on an individual basis.\n\n- ```NCutil.py -a banners _SYSTEM_CENTER_:com.apple.storeagent```\n- ```NCutil.py -a banners _SYSTEM_CENTER_:com.apple.battery-monitor```\n\n### Suppress Apple Update Notifications Like The \"Free Yosemite Upgrade\"\nFrom what I can tell, these are the items you need to disable to [stop the Yosemite upgrade Notification](http://jacobsalmela.com/hide-free-yosemite-upgrade-notification-with-ncutil-py/).  \n\n![Hide the Free Yosemite Upgrade notification](http://i.imgur.com/Vw4VlJM.png)\n\n- ```NCutil.py -a none _SYSTEM_CENTER_:com.apple.storeagent```\n- ```NCutil.py -a none _SYSTEM_CENTER_:com.apple.noticeboard```\n\nDisabling the App Store Notifications may also help:\n\n- ```NCutil.py --alerts none com.apple.maspushagent```\n\n# Known Issues\n\nIf Do Not Disturb is **on** and you run a command that modifies a setting, Do Not Disturb will be **turned off** unintentionally.  This seems to **only happen in Mavericks** and is likely caused by the `killall NotificiationCenter`, which is what allows the commands to show up in real time.\n\n![Do Not Disturb bug](http://i.imgur.com/SgeeTcA.png)\n\n# Changelog\n\n**2.4**\n\n- added support for OS X (10.11) El Capitan\n\n**2.3**\n\n- added `--get-show-on-lock-screen`\n- added `--get-badge-app-icon`\n- added `--get-sound`\n- added `--get-show-in-notification-center`\n- reformatted help menu into groups of similar settings\n\n**2.2**\n\n- `--get-info` allows you to see what all the current settings are\n- `--show-on-lock-screen` can now be set to `true` or `false`\n- `--badge-app-icon` can now be set to `true` or `false`\n- `--sound` can now be set to `true` or `false`\n- `--show-in-notification-center` can now be set to `0`, `5`, `10` or `20`\n- improved help menu\n- reduced verbosity of `--get-alert-style` since more information can be found with `--get-info`\n\n\n**2.1**\n\n- `--get-alert-style` allows you to see what alert style the app currently is set to\n- `--remove-system-center` removes all hidden notification, but do so at your own risk\n- allow multiple arguments for `--insert`, `--remove`, and `--alert-style`\n- syntax changed to `--alert-style` from `--alertstyle` for easier readability\n- find the most recently used .db if multiple ones exist\n\n**2.0**\n\n- Yosemite Support\n\n**1.0**\n\n- Initial release. Mavericks support.\n","funding_links":["https://github.com/sponsors/jacobsalmela","https://jacobsalmela.com/sponsor/"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacobsalmela%2Fncutil","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjacobsalmela%2Fncutil","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjacobsalmela%2Fncutil/lists"}