Project

sysdo

0.0
No commit activity in last 3 years
No release in over 3 years
Do things automatically
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 2.0
>= 12.3.3
~> 3.0

Runtime

~> 1.3
 Project Readme

Sysdo

Sysdo is a tiny automation framework for gluing bits of your Linux system together. Sysdo provides events, and you write Ruby to do things automatically when the events fire.

# If we're on the go, automatically switch to power-saving CPU frequency
on Battery.charger_disconnected do
  `cpupower frequency-set -g powersave`
end

# Don't let Steam eat all of your data allowance when tethering
on Network.changed do |network|
  if network.ssid == "Aaron's Phone"
    `pkill -9 steam`
  end
end

If you've used Tasker on Android, or Shortcuts on iOS, or Automator on macOS, this is somewhat similar in the things you can achieve (albeit a bit more hands-on).

This isn't really ready for proper usage yet, but with a bit more polish and a larger library of events, it's not far off!

Usage

  1. Install with gem install sysdo.
  2. Create a sysdo directory under your user config directory (defaults to XDG_CONFIG_HOME, or ~/.config if that's unset).
  3. Put some Ruby scripts in there. You can create as many as you like and they'll all be loaded; the names don't matter as long as they end in .rb.
  4. Run sysdo start to launch the Sysdo daemon.