#!/bin/sh
#Copyright: 2026 Aitor <aitor@genuen.org>
#License: CC0-1.0
#Comment: pause+finish — save brightness on sv down / stage 3 (no *-stop)

exec 2>&1

ebegin() { [ "${VERBOSE:-}" = no ] || echo "$@"; }
eend() { r=${1:-0}; shift || true; [ "$r" -eq 0 ] || [ "${VERBOSE:-}" = no ] || echo "$*" >&2; return "$r"; }

readonly SAVEFILE_PREFIX=/var/lib/initscripts/brightness
# shellcheck disable=SC1091
[ -r /lib/init/vars.sh ] && . /lib/init/vars.sh

do_stop_one() {
	local label=$1 knob=$2 max=$3 file=$SAVEFILE_PREFIX${1:+.$1}
	test -e "$knob" || return 0
	test "$(cat $knob)" -eq 0 && return 0
	test x"$VERBOSE" = x"no" || ebegin "Saving $label brightness level"
	cat "$knob" >"$file"
	local rv=$?
	test x"$VERBOSE" = x"no" || eend $rv
	return $rv
}

do_stop_one '' /sys/class/backlight/acpi_video0/brightness /sys/class/backlight/acpi_video0/max_brightness || true
do_stop_one intel /sys/class/backlight/intel_backlight/brightness /sys/class/backlight/intel_backlight/max_brightness || true
exit 0
