From 12e3a710ff4cc9435cc2b984d5a453062b501a79 Mon Sep 17 00:00:00 2001 From: dakkar Date: Wed, 24 Jun 2015 17:26:19 +0100 Subject: first few scripts --- bin/set-screen | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100755 bin/set-screen (limited to 'bin/set-screen') diff --git a/bin/set-screen b/bin/set-screen new file mode 100755 index 0000000..49556e2 --- /dev/null +++ b/bin/set-screen @@ -0,0 +1,58 @@ +#!/bin/bash + +CONFIG_DIR="${HOME}/.config/set-screen" + +function get_display_state_hash() { + local hash etc + read hash etc < <( + for i in /sys/class/drm/card*/card*-*; do + echo $i + cat $i/status + cat $i/edid + done | sha1sum -b) + echo "$hash" +} + +function display_state_dir() { + local hash + hash="$(get_display_state_hash)" + echo "${CONFIG_DIR}/$hash" +} + +function make_display_state_dir() { + local dir + dir="$(display_state_dir)" + mkdir -p "$dir" + echo "Created $dir" +} + +function run_display_state_commands() { + local dir + dir="$(display_state_dir)" + + if [[ -x "${dir}/command" ]]; then + "${dir}/command" + if [[ -x "${CONFIG_DIR}/post-command" ]]; then + "${CONFIG_DIR}/post-command" + fi + fi +} + +function print_usage() { + cat <&2 print_usage; exit 1 ;; +esac -- cgit v1.2.3