From 60157801aae38ff3348715f7a68d0e5ba6bfc2ba Mon Sep 17 00:00:00 2001 From: Michael Prokop Date: Thu, 14 Sep 2023 17:00:44 +0200 Subject: [PATCH] Implement easter egg for 20 years of grml.org % whois grml.org | grep 'Creation Date' Creation Date: 2003-09-16T13:09:06Z Thanks: Christopher Bock for suggesting usage of lolcat --- autoconfig | 1 + autoconfig.functions | 27 +++++++++++++++++++++++++++ grml-autoconfig | 2 ++ 3 files changed, 30 insertions(+) diff --git a/autoconfig b/autoconfig index b98e4ca..711deaa 100644 --- a/autoconfig +++ b/autoconfig @@ -58,6 +58,7 @@ CONFIG_DEBS='yes' # check for bootoption debs for installing .debs CONFIG_DISPLAY_SSH_FINGERPRINTS='yes' # display SSH server key fingerprints CONFIG_DISTRI='yes' # support some customization via bootoption distri CONFIG_DMRAID='yes' # support for dmraid +CONFIG_EASTEREGG='yes' # easteregg CONFIG_EXTRACT='yes' # specify which (only in combination with bootparam myconfig/netconfig useful) CONFIG_FINDDCSDIR='yes' # search for a debs, config, scripts directory CONFIG_HOMEDIR='yes' # check for persistent homedir option diff --git a/autoconfig.functions b/autoconfig.functions index 0da044d..b7d694c 100755 --- a/autoconfig.functions +++ b/autoconfig.functions @@ -1992,5 +1992,32 @@ fi } # }}} +# {{{ Easteregg (for 20 years grml.org) +config_easteregg() { + current_date=$(date +%Y-%m-%d) + birthday="2023-09-16" + one_month_later=$(date -d "${current_date} + 1 month" +%Y-%m-%d) + + einfo "You found the birthday easter egg!" ; eend 0 + + # nothing to be done if it's more than one month since $birthday + if ! [[ "${current_date}" == "${birthday}" || "${current_date}" == "${one_month_later}" ]]; then + return 0 + fi + + if [[ -x /bin/toilet && -x /usr/games/lolcat ]] ; then + visualize() { printf "%s\n" "$*" | toilet | /usr/games/lolcat ; } + elif [[ -x /bin/toilet ]] ; then + visualize() { printf "%s\n" "$*" | toilet ; } + else + visualize() { printf "%s\n" "$*" ; } + fi + + visualize " \o/ " + visualize "20 years" + visualize "grml.org" +} +# }}} + ## END OF FILE ################################################################# # vim:foldmethod=marker expandtab ai ft=zsh shiftwidth=2 diff --git a/grml-autoconfig b/grml-autoconfig index 6e71b4d..f341de6 100755 --- a/grml-autoconfig +++ b/grml-autoconfig @@ -146,6 +146,8 @@ checkvalue $CONFIG_BLANKING && config_blanking checkvalue $CONFIG_DEBOOTSTRAP && config_debootstrap checkvalue $CONFIG_XSTARTUP && config_x_startup + +checkvalue $CONFIG_EASTEREGG && config_easteregg # }}} # {{{ Re-enable signals -- 2.1.4