#!/bin/bash # SPDX-FileCopyrightText: 2023 Deminder # SPDX-License-Identifier: GPL-3.0-or-later # # shutdowntimerctl - This script can configure the shutdown and rtc wake alarm schedule. # # This file is part of the gnome-shell extension ShutdownTimer@Deminder. SHUTDOWN_BIN=/usr/sbin/shutdown RTCWAKE_BIN=/usr/sbin/rtcwake SHUTDOWN_MODE="-P" if [ ! -z "$2" ] && [ "$2" -gt 0 ];then POSITIVE_VALUE="$2" fi function print_help() { echo "[help] (show this help)" >&2 echo "[shutdown|reboot|shutdown-cancel] {MINUTES}" >&2 echo "[wake|wake-cancel] {MINUTES} (default: 0)" >&2 } if [ "$#" -lt 1 ]; then print_help exit fi case "$1" in shutdown|reboot) if [[ "$1" = "reboot" ]]; then SHUTDOWN_MODE="-r" fi $SHUTDOWN_BIN "$SHUTDOWN_MODE" "$POSITIVE_VALUE" ;; shutdown-cancel) $SHUTDOWN_BIN -c ;; wake) $RTCWAKE_BIN --date +${POSITIVE_VALUE:-0}min --mode no ;; wake-cancel) $RTCWAKE_BIN --mode disable ;; --version) echo 1 ;; -h|help) print_help ;; *) echo "Invalid argument: $1" >&2 print_help esac