9 releases
0.3.0 | Mar 25, 2021 |
---|---|
0.2.5 | Aug 17, 2017 |
0.2.3 | Jul 27, 2017 |
0.1.2 | Jul 18, 2017 |
#59 in #notification
24KB
499 lines
clin
Command completion notifications -- client & listener -- OSX & Linux
Installation
See releases
for binary releases, or:
cargo install clin
Note: when compiling from source, the feature
update
, which toggles self_update
abilities is disabled by default.
Compiling with this feature requires libssl-dev
on linux:
cargo install clin --features update
Usage
clin
provides desktop notifications of completed commands.
# Pass a command as trailing arguments
clin -- cargo build --release
# Pass a command as a string argument
clin -c 'cargo build --release'
clin
can also be used on remote machines by using ssh
remote port forwarding.
If you're sharing the remote machine, you should probably use a non-default port (default is 6445
)
to avoid any port conflicts and misdirected notifications. See --help
for supported environment
variables to avoid having to specify --send
and --port
.
# Listening for incoming notifications on 127.0.0.1:3443
clin listen --log --port 3443
# Connect to a different machine, forwarding your `clin` port
ssh -R 3443:localhost:3443 you@host
# Use the `--send` arg
clin -s -p 3443 -- ./some-build-script.sh # -> Get a local notification!
If you happen to be on the same network as your remote machine, you can listen "publicly" and specify the listener's hostname.
See --help
for supported environment variables to avoid having to specify --send
and --host
.
# Listen publicly
clin listen --public --log
# Don't need to do any port forwarding now
clin -s --host <clever-hostname-here> -c 'cargo build --release'
Updating
Update to the latest release available: releases
clin self update
Dependencies
~6–23MB
~341K SLoC