diff --git a/preload/menu.py b/preload/menu.py index bd9705a37158b252591674984eda7a7bfb186931..d9d95b5d56c8288c329a269c8d1bdde63effd7ef 100644 --- a/preload/menu.py +++ b/preload/menu.py @@ -17,13 +17,17 @@ import utime App = collections.namedtuple("App", ["name", "path"]) -def enumerate_apps(): - """List all installed apps.""" +def enumerate_entries(): for f in os.listdir("/"): if f == "main.py": yield App("Home", f) - for app in sorted(os.listdir("/apps")): + yield from sorted(enumerate_apps(), key=lambda b: b.name.lower()) + + +def enumerate_apps(): + """List all installed apps.""" + for app in os.listdir("/apps"): if app.startswith("."): continue @@ -88,7 +92,7 @@ def no_apps_message(): if __name__ == "__main__": try: - apps = list(enumerate_apps()) + apps = list(enumerate_entries()) except OSError: apps = []