⭐ Say thanks to the authors of all your installed packages ⭐
GitHub stars are meaningless internet points that don’t provide any real-life value, but at the same time, it is very much true that it warms developers’ hearts when you like their projects and give them a star as a form of appreciation.
I promise you, by running M-x thanks, you will make somebody’s day better.
By automatically starring all installed packages and their dependencies, you can potentially reveal information about yourself and your daily activities. It is not an issue for people like me, who have their whole Emacs config publicly available in a dotfiles repository. But it can be a factor for you. Before installing, please give it a thought.
If needed, there are possibilities for limiting what information you reveal about yourself, such as excluding some packages from being starred.
The package is available on MELPA
(use-package thanks
:ensure t
:config
(thanks-mode))Enable thanks-mode to automatically star all new packages as they are being
installed, or run M-x thanks command to star all your already installed
packages.
You shouldn’t need to configure your GitHub API token. Try M-x
thanks-test-github-auth and only if unsuccessfull, see the
Troubleshooting section.
You can exclude some of the installed packages from being stared:
(setq thanks-excluded-packages '("tramp-menu" "crontab-for-humans"))- ✅ Automatically give a star when installing a package
- ⬜ Maintain a cache of already starred projects to make next runs faster
- ⬜ Add support for other Git forges besides GitHub
- ⬛ Add configuration for excluding certain projects or authors
This package is built on top of gh.el, which can use existing API tokens from
your system. The chance is, you won’t have to configure anything to make
thanks work. Try running the M-x thanks-test-github-auth to make sure.
If the authentication failed, see if gh.el could find your token.
(gh-auth-get-oauth-token)If not, see what token is being used by your official gh command.
gh auth status --show-token
And then set the token manually.
(gh-set-config "oauth-token" "supersecrettoken")This package was inspired by jsongerber/thanks.nvim plugin for NeoVim.
