Files
sxmo-utils/scripts/core/sxmo_timezonechange.sh
Peter John Hartman 7965c0c2e0 Rename $OS to $SXMO_OS.
2023-04-04 10:55:18 -05:00

51 lines
1.0 KiB
Bash
Executable File

#!/bin/sh
# SPDX-License-Identifier: AGPL-3.0-only
# Copyright 2022 Sxmo Contributors
# include common definitions
# shellcheck source=scripts/core/sxmo_common.sh
. sxmo_common.sh
change_alpine() {
echo "Changing timezone to $1"
doas setup-timezone -z "$1"
sxmo_hook_statusbar.sh time
echo "Timezone changed ok"
}
change_systemd() {
echo "Changing timezone to $1"
timedatectl set-timezone "$1"
sxmo_hook_statusbar.sh time
echo "Timezone changed ok"
}
menu() {
zoneinfo_dir=$(xdg_data_path zoneinfo)
T="$(
find "$zoneinfo_dir" -type f |
sed "s#^${zoneinfo_dir}/##g" |
sort |
sxmo_dmenu_with_kb.sh -p Timezone -i
)" || exit 0
sxmo_terminal.sh "$0" "$T"
}
if [ $# -gt 0 ]; then
trap "read -r" EXIT
set -e
case "$SXMO_OS" in
alpine|postmarketos) change_alpine "$@";;
arch|archarm|debian) change_systemd "$@";;
nixos) echo "Change the timezone in configuration.nix with time.timeZone = \"[timezone]\"";;
*) echo "Changing the timezone isn't implemented on your distro yet";;
esac
else
menu
fi