Compare commits
3 Commits
Author | SHA1 | Date |
---|---|---|
|
0c58b2c27d | |
|
b54f0fbbfd | |
|
9204bc1c07 |
22
cbattery
22
cbattery
|
@ -9,6 +9,7 @@ PATH="/usr/bin:/usr/local/bin:/usr/sbin:/opt/homebrew/bin:/opt/homebrew/sbin:/op
|
|||
usage() {
|
||||
cat << EOF
|
||||
usage: ${0##*/} [command]
|
||||
|
||||
charging [on|off] - Toggle charging
|
||||
adapter [on|off] - Toggle adapter connection
|
||||
status - Get status information
|
||||
|
@ -26,24 +27,31 @@ read_cache() {
|
|||
cat "$TMP_FILE" 2> /dev/null
|
||||
}
|
||||
|
||||
log_message() {
|
||||
timestamp=$(date "+%b %d %H:%M:%S")
|
||||
echo "$timestamp - $1"
|
||||
}
|
||||
|
||||
enable_discharging() {
|
||||
echo "Enabling battery discharging"
|
||||
log_message "Enabling battery discharging"
|
||||
sudo smc -k CH0I -w 01
|
||||
}
|
||||
|
||||
disable_discharging() {
|
||||
echo "Disabling battery discharging"
|
||||
log_message "Disabling battery discharging"
|
||||
sudo smc -k CH0I -w 00
|
||||
}
|
||||
|
||||
enable_charging() {
|
||||
echo "Enabling battery charging"
|
||||
[[ "$(get_smc_charging_hex)" == "00" ]] && return
|
||||
log_message "Enabling battery charging"
|
||||
sudo smc -k CH0B -w 00
|
||||
sudo smc -k CH0C -w 00
|
||||
}
|
||||
|
||||
disable_charging() {
|
||||
echo "Disabling battery charging"
|
||||
[[ "$(get_smc_charging_hex)" != "00" ]] && return
|
||||
log_message "Disabling battery charging"
|
||||
sudo smc -k CH0B -w 02
|
||||
sudo smc -k CH0C -w 02
|
||||
}
|
||||
|
@ -117,7 +125,7 @@ runScript() {
|
|||
[[ -f "$launch_daemon" ]] && sudo launchctl unload -w "$launch_daemon"
|
||||
;;
|
||||
"charging")
|
||||
echo "Setting $action to $setting"
|
||||
log_message "Setting $action to $setting"
|
||||
case "$setting" in
|
||||
"on") enable_charging && write_cache "enabled" ;;
|
||||
"off") disable_charging && write_cache "disabled" ;;
|
||||
|
@ -125,7 +133,7 @@ runScript() {
|
|||
esac
|
||||
;;
|
||||
"adapter")
|
||||
echo "Setting $action to $setting"
|
||||
log_message "Setting $action to $setting"
|
||||
case "$setting" in
|
||||
"on") enable_discharging ;;
|
||||
"off") disable_discharging ;;
|
||||
|
@ -135,7 +143,7 @@ runScript() {
|
|||
"status")
|
||||
case "$setting" in
|
||||
"charging") exit "$(get_smc_charging_hex)" ;;
|
||||
"cache") "$(get_cached_status)" ;;
|
||||
"cache") get_cached_status ;;
|
||||
*) echo "Battery at $(get_battery_percentage)%, smc charging $(get_smc_charging_status)" ;;
|
||||
esac
|
||||
;;
|
||||
|
|
Loading…
Reference in New Issue