summaryrefslogtreecommitdiffstats
path: root/debian/tzdata.config
diff options
context:
space:
mode:
Diffstat (limited to 'debian/tzdata.config')
-rw-r--r--debian/tzdata.config392
1 files changed, 392 insertions, 0 deletions
diff --git a/debian/tzdata.config b/debian/tzdata.config
new file mode 100644
index 0000000..88ba13a
--- /dev/null
+++ b/debian/tzdata.config
@@ -0,0 +1,392 @@
+#! /bin/sh
+set -e
+
+. /usr/share/debconf/confmodule
+db_version 2.0
+db_capb backup
+
+convert_timezone()
+{
+ case "$1" in
+ right/* | posix/*)
+ convert_timezone "${1#*/}"
+ ;;
+ "Africa/Asmera")
+ echo "Africa/Asmara"
+ ;;
+ "America/Buenos_Aires")
+ echo "America/Argentina/Buenos_Aires"
+ ;;
+ "America/Argentina/ComodRivadavia" | "America/Catamarca")
+ echo "America/Argentina/Catamarca"
+ ;;
+ "America/Cordoba" | "America/Rosario")
+ echo "America/Argentina/Cordoba"
+ ;;
+ "America/Fort_Wayne" | "America/Indianapolis" | "EST" | "SystemV/EST5" | "US/East-Indiana")
+ echo "America/Indiana/Indianapolis"
+ ;;
+ "America/Jujuy")
+ echo "America/Argentina/Jujuy"
+ ;;
+ "America/Knox_IN")
+ echo "America/Indiana/Knox"
+ ;;
+ "America/Louisville")
+ echo "America/Kentucky/Louisville"
+ ;;
+ "America/Mendoza")
+ echo "America/Argentina/Mendoza"
+ ;;
+ "Antarctica/South_Pole")
+ echo "Antarctica/McMurdo"
+ ;;
+ "Asia/Ashkhabad")
+ echo "Asia/Ashgabat"
+ ;;
+ "Asia/Calcutta")
+ echo "Asia/Kolkata"
+ ;;
+ "Asia/Chungking")
+ echo "Asia/Chongqing"
+ ;;
+ "Asia/Dacca")
+ echo "Asia/Dhaka"
+ ;;
+ "Asia/Katmandu")
+ echo "Asia/Kathmandu"
+ ;;
+ "Asia/Macao")
+ echo "Asia/Macau"
+ ;;
+ "Asia/Rangoon")
+ echo "Asia/Yangon"
+ ;;
+ "Asia/Riyadh87" | "Asia/Riyadh88" | "Asia/Riyadh89" | "Mideast/Riyadh87" | "Mideast/Riyadh88" | "Mideast/Riyadh89")
+ echo "Asia/Riyadh"
+ ;;
+ "Asia/Saigon")
+ echo "Asia/Ho_Chi_Minh"
+ ;;
+ "Asia/Thimbu")
+ echo "Asia/Thimphu"
+ ;;
+ "Asia/Ujung_Pandang")
+ echo "Asia/Makassar"
+ ;;
+ "Asia/Ulan_Bator")
+ echo "Asia/Ulaanbaatar"
+ ;;
+ "Atlantic/Faeroe")
+ echo "Atlantic/Faroe"
+ ;;
+ "Australia/ACT" | "Australia/NSW")
+ echo "Australia/Sydney"
+ ;;
+ "Australia/LHI")
+ echo "Australia/Lord_Howe"
+ ;;
+ "Australia/North")
+ echo "Australia/Darwin"
+ ;;
+ "Australia/Queensland")
+ echo "Australia/Brisbane"
+ ;;
+ "Australia/South")
+ echo "Australia/Adelaide"
+ ;;
+ "Australia/Tasmania")
+ echo "Australia/Hobart"
+ ;;
+ "Australia/Victoria")
+ echo "Australia/Melbourne"
+ ;;
+ "Australia/West")
+ echo "Australia/Perth"
+ ;;
+ "Brazil/Acre")
+ echo "America/Rio_Branco"
+ ;;
+ "Brazil/DeNoronha")
+ echo "America/Noronha"
+ ;;
+ "Brazil/East")
+ echo "America/Sao_Paulo"
+ ;;
+ "Brazil/West")
+ echo "America/Manaus"
+ ;;
+ "Canada/Atlantic" | "SystemV/AST4ADT")
+ echo "America/Halifax"
+ ;;
+ "Canada/Central")
+ echo "America/Winnipeg"
+ ;;
+ "Canada/Eastern")
+ echo "America/Toronto"
+ ;;
+ "Canada/East-Saskatchewan" | "Canada/Saskatchewan" | "SystemV/CST6")
+ echo "America/Regina"
+ ;;
+ "Canada/Mountain")
+ echo "America/Edmonton"
+ ;;
+ "Canada/Newfoundland")
+ echo "America/St_Johns"
+ ;;
+ "Canada/Pacific")
+ echo "America/Vancouver"
+ ;;
+ "Canada/Yukon")
+ echo "America/Whitehorse"
+ ;;
+ "CET" | "MET")
+ echo "Europe/Paris"
+ ;;
+ "Chile/Continental")
+ echo "America/Santiago"
+ ;;
+ "Chile/EasterIsland")
+ echo "Pacific/Easter"
+ ;;
+ "CST6CDT" | "SystemV/CST6CDT")
+ echo "America/Chicago"
+ ;;
+ "Cuba")
+ echo "America/Havana"
+ ;;
+ "EET")
+ echo "Europe/Helsinki"
+ ;;
+ "Egypt")
+ echo "Africa/Cairo"
+ ;;
+ "Eire")
+ echo "Europe/Dublin"
+ ;;
+ "EST5EDT" | "SystemV/EST5EDT")
+ echo "America/New_York"
+ ;;
+ "Europe/Kiev")
+ echo "Europe/Kyiv"
+ ;;
+ "Europe/Uzhgorod")
+ echo "Europe/Kyiv"
+ ;;
+ "Europe/Zaporozhye")
+ echo "Europe/Kyiv"
+ ;;
+ "GB" | "GB-Eire")
+ echo "Europe/London"
+ ;;
+ "GMT")
+ echo "Etc/GMT"
+ ;;
+ "GMT0")
+ echo "Etc/GMT0"
+ ;;
+ "GMT-0")
+ echo "Etc/GMT-0"
+ ;;
+ "GMT+0")
+ echo "Etc/GMT+0"
+ ;;
+ "Greenwich")
+ echo "Etc/Greenwich"
+ ;;
+ "Hongkong")
+ echo "Asia/Hong_Kong"
+ ;;
+ "HST" | "SystemV/HST10")
+ echo "Pacific/Honolulu"
+ ;;
+ "Iceland")
+ echo "Atlantic/Reykjavik"
+ ;;
+ "Iran")
+ echo "Asia/Tehran"
+ ;;
+ "Israel")
+ echo "Asia/Tel_Aviv"
+ ;;
+ "Jamaica")
+ echo "America/Jamaica"
+ ;;
+ "Japan")
+ echo "Asia/Tokyo"
+ ;;
+ "Kwajalein")
+ echo "Pacific/Kwajalein"
+ ;;
+ "Libya")
+ echo "Africa/Tripoli"
+ ;;
+ "Mexico/BajaNorte")
+ echo "America/Tijuana"
+ ;;
+ "Mexico/BajaSur")
+ echo "America/Mazatlan"
+ ;;
+ "Mexico/General")
+ echo "America/Mexico_City"
+ ;;
+ "MST" | "SystemV/MST7")
+ echo "America/Phoenix"
+ ;;
+ "MST7MDT" | "Navajo" | "SystemV/MST7MDT")
+ echo "America/Denver"
+ ;;
+ "NZ")
+ echo "Pacific/Auckland"
+ ;;
+ "Pacific/Enderbury")
+ echo "Pacific/Kanton"
+ ;;
+ "Pacific/Ponape")
+ echo "Pacific/Pohnpei"
+ ;;
+ "Pacific/Truk")
+ echo "Pacific/Chuuk"
+ ;;
+ "NZ-CHAT")
+ echo "Pacific/Chatham"
+ ;;
+ "Poland")
+ echo "Europe/Warsaw"
+ ;;
+ "Portugal" | "WET")
+ echo "Europe/Lisbon"
+ ;;
+ "PRC")
+ echo "Asia/Shanghai"
+ ;;
+ "PST8PDT" | "SystemV/PST8PDT")
+ echo "America/Los_Angeles"
+ ;;
+ "ROC")
+ echo "Asia/Taipei"
+ ;;
+ "ROK")
+ echo "Asia/Seoul"
+ ;;
+ "Singapore")
+ echo "Asia/Singapore"
+ ;;
+ "SystemV/AST4")
+ echo "America/Puerto_Rico"
+ ;;
+ "SystemV/PST8")
+ echo "Pacific/Pitcairn"
+ ;;
+ "SystemV/YST9")
+ echo "Pacific/Gambier"
+ ;;
+ "SystemV/YST9YDT")
+ echo "America/Anchorage"
+ ;;
+ "Turkey")
+ echo "Europe/Istanbul"
+ ;;
+ "UCT")
+ echo "Etc/UCT"
+ ;;
+ "Universal" | "UTC" | "Zulu")
+ echo "Etc/UTC"
+ ;;
+ "W-SU")
+ echo "Europe/Moscow"
+ ;;
+ *)
+ echo "$1"
+ ;;
+ esac
+}
+
+# Read timezone from /etc/localtime if it is a link
+if [ -L "$DPKG_ROOT/etc/localtime" ] ; then
+ TIMEZONE="$(readlink "$DPKG_ROOT/etc/localtime")"
+ TIMEZONE="$(cd "$DPKG_ROOT/etc" && realpath -m -s "$TIMEZONE")"
+ TIMEZONE="${TIMEZONE#/usr/share/zoneinfo/}"
+# Fall back to /etc/timezone if present
+elif [ -e "$DPKG_ROOT/etc/timezone" ]; then
+ TIMEZONE="$(head -n 1 "$DPKG_ROOT/etc/timezone")"
+ TIMEZONE="${TIMEZONE%% *}"
+ TIMEZONE="${TIMEZONE##/}"
+ TIMEZONE="${TIMEZONE%%/}"
+fi
+
+TIMEZONE="$(convert_timezone "$TIMEZONE")"
+
+if [ -f "$DPKG_ROOT/usr/share/zoneinfo/$TIMEZONE" ] ; then
+ AREA="${TIMEZONE%%/*}"
+ ZONE="${TIMEZONE#*/}"
+
+ # Don't ask the user, except if he/she explicitely asked that
+ if [ -z "$DEBCONF_RECONFIGURE" ] ; then
+ db_fset tzdata/Areas seen true
+ db_fset "tzdata/Zones/$AREA" seen true
+ fi
+# The timezone has never been configured or is falsely configured
+else
+ RET=""
+ db_fget tzdata/Areas seen || RET=false
+ if [ "$RET" = true ] ; then
+ db_get tzdata/Areas
+ AREA=$RET
+ else
+ AREA="Etc"
+ fi
+
+ RET=""
+ db_fget "tzdata/Zones/$AREA" seen || RET=false
+ if [ "$RET" = true ] ; then
+ db_get "tzdata/Zones/$AREA"
+ ZONE=$RET
+ else
+ ZONE="UTC"
+ fi
+
+ db_fset tzdata/Areas seen false
+ db_fset "tzdata/Zones/$AREA" seen false
+fi
+
+# Initializes debconf default values from the ones found in
+# configuration files
+db_set tzdata/Areas "$AREA"
+db_set "tzdata/Zones/$AREA" "$ZONE"
+
+STATE=1
+while [ "$STATE" -ge 0 ]; do
+ case "$STATE" in
+ 0)
+ # The user has cancel the timezone change, reset the debconf
+ # values to the initial one.
+ db_set tzdata/Areas "$AREA"
+ db_set "tzdata/Zones/$AREA" "$ZONE"
+ break
+ ;;
+ 1)
+ # Ask the user of the Area
+ db_input high tzdata/Areas || true
+ ;;
+ 2)
+ # Ask the user of the Zone
+ db_get tzdata/Areas || RET=Etc
+ db_input high tzdata/Zones/$RET || true
+ ;;
+ *)
+ break
+ ;;
+ esac
+ # shellcheck disable=SC2119
+ if db_go; then
+ STATE=$((STATE + 1))
+ else
+ STATE=$((STATE - 1))
+ fi
+done
+
+#DEBHELPER#
+
+
+exit 0