Skip to content

A fish-shell package to automatically receive notifications when long processes finish.

License

Notifications You must be signed in to change notification settings

yicrotkd/done

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

done

A fish shell package to automatically receive notifications when long processes finish.

Stability: Stable Release version fish >=2.3.0 License: MIT


Just go on with your normal life. You will get a notification when a process takes more than 5 seconds finish, and the terminal window not in the foreground.

After installing you could type, for instance sleep 6, and start using other app. After 6 seconds you should get a notification.

Installation

Using Fisher

fisher add franciscolourenco/done

Manually

curl -Lo ~/.config/fish/functions/humanize_duration.fish --create-dirs https://raw.githubusercontent.com/fishpkg/fish-humanize-duration/master/humanize_duration.fish
curl -Lo ~/.config/fish/conf.d/done.fish --create-dirs https://raw.githubusercontent.com/franciscolourenco/done/master/conf.d/done.fish

Dependencies

  • If you want notifications with icons on macOS, please install terminal-notifier with
brew install terminal-notifier
  • If you are using https://swaywm.org please install jq.

  • If you are using Windows Subsystem for Linux (WSL), please install the BurntToast Powershell module. Note: in some cases you may also need to install wslu.

Updating

fisher

Settings

Only display notifications if a command takes more than a certain amount of time

set -U __done_min_cmd_duration 5000  # default: 5000 ms

Prevent specific commands from triggering notifications. Accepts a regex.

This is useful to exclude commands like git commit for instance, since it could trigger unwanted notifications if it is configured to use an external editor.

set -U __done_exclude 'git (?!push|pull)'  # default: all git commands, except push and pull. accepts a regex.

Execute a custom command instead of showing the default notifications

set -U __done_notification_command 'some custom command'

Play sound when showing notifications.

set -U __done_notify_sound 1

When using sway, do not show notifications for visible windows.

set -U __done_sway_ignore_visible 1

For Linux, set the urgency level for notifications sent via notify-send (low, normal, critical).

set -U __done_notification_urgency_level critical

Support

  • fish 2.3.0+
  • macOS 10.8+ via Notification Center.
  • Linux via notify-send. Otherwise bell sound is played.
  • Windows 10 via Windows Subsystem for Linux (WSL) and BurntToast

Credits

Contributors

Code Contributors

This project exists thanks to all the people who contribute. [Contribute].

Financial Contributors

Become a financial contributor and help us sustain our community. [Contribute]

Individuals

Organizations

Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]

License

Done is MIT licensed. See LICENSE for details.

About

A fish-shell package to automatically receive notifications when long processes finish.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%