diff --git a/Userland/Utilities/timezone.cpp b/Userland/Utilities/timezone.cpp index 3c2c008c26..641d8ef548 100644 --- a/Userland/Utilities/timezone.cpp +++ b/Userland/Utilities/timezone.cpp @@ -18,11 +18,19 @@ ErrorOr serenity_main(Main::Arguments arguments) TRY(Core::System::unveil(nullptr, nullptr)); StringView time_zone; + bool list_time_zones = false; Core::ArgsParser args_parser; + args_parser.add_option(list_time_zones, "List all available time zones", "list-time-zones", 'l'); args_parser.add_positional_argument(time_zone, "The time zone to set", "time-zone", Core::ArgsParser::Required::No); args_parser.parse(arguments); + if (list_time_zones) { + for (auto time_zone : TimeZone::all_time_zones()) + outln("{}", time_zone); + return 0; + } + if (time_zone.is_empty()) { outln("{}", TimeZone::current_time_zone()); return 0;