{"id":13468947,"url":"https://github.com/DomT4/homebrew-autoupdate","last_synced_at":"2025-03-26T05:31:25.600Z","repository":{"id":30841694,"uuid":"34399150","full_name":"DomT4/homebrew-autoupdate","owner":"DomT4","description":":tropical_drink: An easy, convenient way to automatically update Homebrew.","archived":false,"fork":false,"pushed_at":"2024-10-01T17:09:10.000Z","size":396,"stargazers_count":1022,"open_issues_count":13,"forks_count":57,"subscribers_count":17,"default_branch":"master","last_synced_at":"2024-10-24T04:14:48.707Z","etag":null,"topics":["homebrew","homebrew-autoupdate","ruby"],"latest_commit_sha":null,"homepage":"","language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-2-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DomT4.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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},"funding":{"github":"Homebrew","open_collective":"homebrew","patreon":"homebrew"}},"created_at":"2015-04-22T15:36:13.000Z","updated_at":"2024-10-22T23:14:09.000Z","dependencies_parsed_at":"2023-12-24T00:06:32.891Z","dependency_job_id":"7b6b58fc-d5a5-4f29-ad2b-b75d1767c3ae","html_url":"https://github.com/DomT4/homebrew-autoupdate","commit_stats":{"total_commits":241,"total_committers":28,"mean_commits":8.607142857142858,"dds":"0.34024896265560167","last_synced_commit":"e0cf8d7762f35eb7558a35098909431887839bee"},"previous_names":["homebrew/homebrew-autoupdate"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DomT4%2Fhomebrew-autoupdate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DomT4%2Fhomebrew-autoupdate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DomT4%2Fhomebrew-autoupdate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DomT4%2Fhomebrew-autoupdate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DomT4","download_url":"https://codeload.github.com/DomT4/homebrew-autoupdate/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244913283,"owners_count":20530817,"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":["homebrew","homebrew-autoupdate","ruby"],"created_at":"2024-07-31T15:01:22.449Z","updated_at":"2025-03-26T05:31:25.593Z","avatar_url":"https://github.com/DomT4.png","language":"Ruby","funding_links":["https://github.com/sponsors/Homebrew","https://opencollective.com/homebrew","https://patreon.com/homebrew"],"categories":["Ruby","External Commands"],"sub_categories":[],"readme":"# Homebrew Autoupdate\n\nAn easy, convenient way to automatically update Homebrew.\n\nThis script will run `brew update` in the background once every 24 hours (by\ndefault) until explicitly told to stop, utilising `launchd`.\n\n`brew upgrade` and `brew cleanup` can also be handled automatically, but\nare optional flags.\n\nNotifications are enabled by default using a new, code-signed, universal AppleScript applet.\n\n![A comic highlighting humanity's habit of skipping important updates](https://imgs.xkcd.com/comics/update.png)\n\n## Installing this command\n\nJust `brew tap domt4/autoupdate`.\n\nNow run `brew autoupdate start [interval] [options]` to enable autoupdate.\n\n## Example\n\n```sh\nbrew autoupdate start 43200 --upgrade --cleanup --immediate --sudo\n```\n\nThis will upgrade all your casks and formulae every 12 hours and on every system boot.  \nIf a sudo password is required for an upgrade, a GUI to enter your password will be displayed.  \nAlso, it will clean up every old version and left-over files.\n\nCasks that have built-in auto-updates enabled by default will not be upgraded.\n\n## Usage\n\n[comment]: # (HELP-COMMAND-OUTPUT:START)\n\n```help\nUsage: brew autoupdate subcommand [interval] [options]\n\nAn easy, convenient way to automatically update Homebrew.\n\nThis script will run brew update in the background once every 24 hours (by\ndefault) until explicitly told to stop, utilising launchd.\n\nbrew autoupdate start [interval] [options]:\n    Start autoupdating either once every interval hours or once every 24\nhours. Please note the interval has to be passed in seconds, so 12 hours would\nbe brew autoupdate start 43200. If you want to start the autoupdate\nimmediately and on system boot, pass --immediate. Pass --upgrade or\n--cleanup to automatically run brew upgrade and/or brew cleanup\nrespectively.\n\nbrew autoupdate stop:\n    Stop autoupdating, but retain plist and logs.\n\nbrew autoupdate delete:\n    Cancel the autoupdate, delete the plist and logs.\n\nbrew autoupdate status:\n    Print the current status of this tool.\n\nbrew autoupdate version:\n    Output this tool's current version, and a short changelog.\n\n      --upgrade                    Automatically upgrade your installed\n                                   formulae. If the Caskroom exists locally then\n                                   casks will be upgraded as well. Must be\n                                   passed with start.\n      --greedy                     Upgrade casks with --greedy (include\n                                   auto-updating casks). Must be passed with\n                                   start.\n      --cleanup                    Automatically clean Homebrew's cache and\n                                   logs. Must be passed with start.\n      --immediate                  Starts the autoupdate command immediately and\n                                   on system boot, instead of waiting for one\n                                   interval (24 hours by default) to pass first.\n                                   Must be passed with start.\n      --sudo                       If a cask requires sudo, autoupdate will\n                                   open a GUI to ask for the password. Requires\n                                   https://formulae.brew.sh/formula/pinentry-mac\n                                   to be installed.\n  -d, --debug                      Display any debugging information.\n  -q, --quiet                      Make some output more quiet.\n  -v, --verbose                    Make some output more verbose.\n  -h, --help                       Show this message.\n```\n\n[comment]: # (HELP-COMMAND-OUTPUT:END)\n\n**Logs of the performed operations can be found at:** `~/Library/Logs/com.github.domt4.homebrew-autoupdate`\n\n## This vs `brew`'s built-in autoupdate mechanism\n\nThis command mostly exists to ensure Homebrew is updated regardless of whether\nyou invoke `brew` or not, which is the primary difference from the autoupdate\nmechanism built into `brew`, the latter requiring a user to explicitly run\nany of `brew install`, `brew tap` or `brew upgrade`.\n\nIf you run `brew` commands regularly yourself, you may wish to consider using\nthe built-in autoupdate mechanism, which can be instructed to autoupdate less\noften, or disabled entirely. If you wish to update every 24 hours using the\nbuilt-in autoupdate mechanism set this in your environment:\n\n```sh\nexport HOMEBREW_AUTO_UPDATE_SECS=\"86400\"\n```\n\nor if you wish to disable the built-in autoupdate mechanism entirely:\n\n```sh\nexport HOMEBREW_NO_AUTO_UPDATE=\"1\"\n```\n\nPlease note that Homebrew slightly frowns upon people disabling the built-in\nautoupdate mechanism.\n\n## TO-DO (PRs Welcome)\n\n## History\n\nThis tap was created by [DomT4](https://github.com/DomT4) in April 2015 to\naddress a personal desire for a background updater, before being moved to\nthe Homebrew organisation in April 2021 to become an official part of the\nproject after gaining somewhat widespread usage, something I'm both surprised\nby, but also very appreciative of people finding a small tool I wrote so\nuseful \u0026 contributing their own ideas and time towards.\n\nIt was in late 2023 moved back to DomT4's ownership to reduce the burden on\nthe wider Homebrew leadership team in terms of maintenance/support requests.\n\n## License\n\nCode is under the [BSD 2 Clause (NetBSD) license](https://github.com/DomT4/homebrew-autoupdate/blob/master/LICENSE.txt).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDomT4%2Fhomebrew-autoupdate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FDomT4%2Fhomebrew-autoupdate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FDomT4%2Fhomebrew-autoupdate/lists"}