{"id":30783350,"url":"https://github.com/schulle4u/atmiral","last_synced_at":"2026-04-12T11:48:36.308Z","repository":{"id":310827174,"uuid":"1040842212","full_name":"schulle4u/atmiral","owner":"schulle4u","description":"Accessible text-based menu interface for running applications on Linux","archived":false,"fork":false,"pushed_at":"2025-12-20T14:50:34.000Z","size":195,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-12-22T15:41:54.960Z","etag":null,"topics":["bash","dialog","launcher","linux","shell","tui"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/schulle4u.png","metadata":{"files":{"readme":"README-de.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-08-19T15:29:17.000Z","updated_at":"2025-12-20T14:50:38.000Z","dependencies_parsed_at":"2025-08-23T00:04:14.643Z","dependency_job_id":"398b6226-e27d-4ea6-bbb7-bccd4ddebe6d","html_url":"https://github.com/schulle4u/atmiral","commit_stats":null,"previous_names":["schulle4u/whiplaunch","schulle4u/atmiral"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/schulle4u/atmiral","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schulle4u%2Fatmiral","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schulle4u%2Fatmiral/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schulle4u%2Fatmiral/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schulle4u%2Fatmiral/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/schulle4u","download_url":"https://codeload.github.com/schulle4u/atmiral/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/schulle4u%2Fatmiral/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31713876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T06:22:27.080Z","status":"ssl_error","status_checked_at":"2026-04-12T06:21:52.710Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bash","dialog","launcher","linux","shell","tui"],"created_at":"2025-09-05T10:51:26.251Z","updated_at":"2026-04-12T11:48:36.303Z","avatar_url":"https://github.com/schulle4u.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ATMIRAL\nBarrierefreies textbasiertes Menü zum Starten von Programmen unter Linux\n\n\u003cdiv align=\"right\"\u003e\n\n🌐 [Deutsch](./README-de.md) | [English](./README.md)\n\n\u003c/div\u003e\n\n## Beschreibung\n\n[![Screenshot](./screenshot.png)](./screenshot.png)\n\nATMIRAL (Abkürzung für \"Accessible text-based menu interface for running applications on Linux\") ist ein benutzerfreundliches Startmenü für die Linux-Shell zum schnellen Aufrufen häufig verwendeter Programme und Befehle. Über eine Ordnerstruktur mit menschenlesbaren Textdateien kann das Menü individuell zusammengestellt werden und ist somit an jedes Linux-System anpassbar. Es eignet sich sowohl für Anfänger, um ihnen die Scheu vor Befehlseingaben zu nehmen, als auch für Menschen, die für bestimmte Abläufe bewusst eine eingeschränkte Arbeitsumgebung bevorzugen. Es soll dabei weder die Befehlseingabe noch eine komplette grafische Oberfläche auf Shellebene ersetzen. Derzeit sind folgende Module enthalten: \n\n* ATMIRAL (`atmiral.sh`): Das Hauptprogramm mit individuell anpassbaren Befehlssammlungen. \n* ATMIRAL Dateibrowser (`atmiralfm.sh`): Ein einfacher Dateibrowser zum Auflisten und Öffnen von Dateien. \n\n## Installation\n\nDas Repository clonen und `install.sh` ausführbar machen. \n\n```\nchmod +x ./install.sh\n```\n\nFolgende Installationsoptionen sind verfügbar: \n\n* `./install.sh --user`: Installation nur für den aktuellen Benutzer.\n* `sudo ./install.sh --system`: Systemweite Installation, benötigt Root-Rechte. \n* `sudo ./install.sh --both`: Installation systemweit und für den aktuellen Benutzer, benötigt Root-Rechte. \n* `sudo ./install.sh --uninstall`: ATMIRAL vom System entfernen, benötigt je nach vorheriger Installation Root-Rechte. \n\nNach der Installation sind die einzelnen Module in der gewählten Installationsumgebung aufrufbar, z. B. `atmiral` für das Hauptprogramm oder `atmiralfm` für den dateibrowser. ATMIRAL kann durch Aufruf von `atmiral.sh` auch direkt aus dem Quellcode-Verzeichnis ausgeführt werden, sollte keine Installation gewünscht sein. \n\n## Verwendung des Hauptprogramms\n\n### Menüverzeichnisse\n\nDie Menüdateien werden in folgenden Ordnern gefunden, aufgeführt in absteigender Priorität: \n\n* Benutzerdefiniert: Aufruf `atmiral \u003cPfad\u003e`\n* Im Benutzerordner: `$HOME/.local/share/atmiral/menu/`\n* Systemweit: `/usr/local/share/atmiral/menu/`\n* Im Skriptverzeichnis (letztes Fallbackverzeichnis): `./menu/`\n\n### Menüs erstellen\n\nEine Menüdatei besteht aus Konfigurationsabschnitten, die durch eine leerzeile voneinander getrennt sind. Jeder Konfigurationsabschnitt kann folgende Felder enthalten: \n\n* Name: Anzeigename des Programms oder Befehls (nicht der eigentliche Befehl)\n* Beschreibung: Kurze Beschreibung, wird rechts neben dem Namen angezeigt.\n* Befehl: Der eigentliche Befehl, welcher beim Bestätigen des Menüeintrags aufgerufen wird. \n* Argumente: jede Art von festen oder dynamischen Befehlsoptionen. Der Text zwischen `\u003c` und `\u003e` wird als Platzhalter erkannt und im Menü beim Aufrufen abgefragt. \n\nFolgende Platzhalter können verwendet werden, um spezielle Dialogboxen während der Abfrage aufzurufen: \n\n* `\u003cDatei\u003e`: Öffnet einen Dateiauswahldialog\n* `\u003cVerzeichnis\u003e`: Öffnet eine Verzeichnisauswahl.\n* `\u003cPasswort\u003e`: Eingabefeld für Passwörter.\n\n**Hinweis**: Die oben genannten Feldnamen und Platzhalter sind für jede Sprache übersetzbar. Wird ATMIRAL in einer anderen Sprache als deutch verwendet, müssen auch die Feldnamen und Platzhalter in dieser Sprache angegeben werden, sofern sie in der Sprachdatei übersetzt wurden. \n\n### Beispiel\n\nHier ist eine Menüdatei mit verschiedenen Systembefehlen.\n\n```\nName: Top\nBeschreibung: Systemmonitor\nBefehl: top\n\n# Hier nutzen wir Dialog, um die Systemlaufzeit in einer Hinweisbox anzuzeigen\nName: Uptime\nBeschreibung: Zeigt Systemlaufzeit\nBefehl: dialog --no-lines --title \"uptime\" --msgbox \"$(uptime)\" 10 70\n\nName: Updates\nBeschreibung: Nach Updates suchen\nBefehl: sudo apt update \u0026\u0026 sudo apt upgrade\n\n# Im nachfolgenden Beispiel wird \u003cText\u003e als Argumentvorlage hinterlegt und beim Aufruf abgefragt\nName: Sprachausgabe\nBeschreibung: Eingegebenen Text sprechen\nBefehl: espeak-ng\nArgumente: -v de -a 100 -s 300 \"\u003cText\u003e\"\n\n# Es sind auch mehrere Platzhalter möglich, die dann nacheinander vor dem Befehlsaufruf abgefragt werden\nName: Dienststeuerung\nBeschreibung: Dienststeuerung\nBefehl: sudo systemctl\nArgumente: \u003cAktion\u003e \u003cDienst\u003e\n```\n\n### Das Interface\n\nNach dem Starten von ATMIRAL werden die im Menüverzeichnis angelegten Dateien und Unterordner als zweispaltige Liste mit Namen und Beschreibung angezeigt. Mit Pfeiltasten hoch und runter kann durch die Listen navigiert werden, mit Enter bestätigt man die Auswahl. Am Beginn jeder Liste befindet sich ein Eintrag, um ins übergeordnete Menü zurückzukehren. Solange ATMIRAL geöffnet ist, werden alle Befehle in dessen Umgebung ausgeführt. Dadurch landet man nach jedem Aufruf eines Befehls wieder im aktuellen Menü. Escape beendet das ATMIRAL-Interface und man kehrt zurück in die normale Shell-Umgebung. \n\n### Konfiguration\n\nEinige Konfigurationsoptionen lassen sich in der Datei `atmiral.conf` festlegen: \n\n* `ATMIRAL_LANG`: Die für das Interface verwendete Sprache, entspricht dem Namen der Sprachdatei ohne Erweiterung, z. B. `de`. \n* `COMMAND_DEBUG`: Auf 1 setzen, um die Ausgabe der Befehle einzuschalten.\n\nWer für das Menü eine dunkle Farbgebung bevorzugt, findet im Ordner eine `.dialogrc` Beispieldatei, welche in das Home-Verzeichnis kopiert werden kann. Sie enthält Darkmode-Farben und setzt auch die Option `visit_items` auf `ON`, um eine bessere Tastaturbedienung zu ermöglichen. Letztere Option wird jedoch bereits im Script beim Definieren des Menüs festgelegt. \n\n## Dateibrowser\n\nDer ATMIRAL-Dateibrowser wird mit dem Befehl `atmiralfm` bzw. `atmiralfm.sh` im Skriptverzeichnis aufgerufen. Das Homeverzeichnis des aktuellen Benutzers ist standardmäßig als Startverzeichnis festgelegt. Ein anderes Startverzeichnis kann als Argument an `atmiralfm` übergeben werden. Die Navigation durch Dateien und Ordner ist selbsterklärend und funktioniert entweder mittels Pfeiltasten hoch und runter oder durch die Eingabe des Anfangsbuchstabens eines Eintrags sowie der Bestätigung mit Enter. Wie in vielen Dateimanagern üblich befindet sich am Anfang jeder Liste die Möglichkeit in den nächsthöheren Ordner zu wechseln. Am linken oberen Bildschirmrand ist eine dem Shell-Prompt ähnliche Statuszeile hinterlegt, welche den Benutzer und Hostnamen sowie den aktuellen Ordnerpfad anzeigt. \n\nNach der Auswahl einer datei oder durch Drücken der Aktionen-Schaltfläche öffnet sich ein Aktionsmenü, welches verschiedene Optionen zum Umgang mit Dateien und Ordnern anbietet. Je nach Dateityp und installierten Paketen kann die Anzeige variieren. Folgende Auswahlmöglichkeiten sind möglich: \n\n* Verzeichnis öffnen\n* Datei öffnen (Text, Audio/Video, Bilder)\n* Benutzerdefiniert: Erlaubt die Eingabe eines benutzerdefinierten Befehls zum Betrachten der Datei.\n* Ausführen: Prüft, ob die Datei ausführbar ist und startet sie direkt. \n* Kopieren nach: Datei an einen anderen Ort kopieren\n* Verschieben nach: Datei an einen anderen Ort verschieben.\n* Löschen: Datei nach Bestätigung löschen.\n* Info: Zeigt Dateiinformationen an.\n* Abbruch: Schließt das menü und kehrt in die Dateiliste zurück. \n\n### Konfiguration des Dateibrowsers\n\nFolgende Optionen sind in der Datei `atmiral.conf` verfügbar: \n\n* `SHOW_HIDDEN`: Versteckte Dateien und Verzeichnisse anzeigen\n* `DEFAULT_EDITOR`: Standard-Texteditor, z. B. nano oder vim\n* `DEFAULT_VIEWER`: Standard-Dateibetrachter, z. B. less, more, w3m.\n* `DEFAULT_PLAYER`: Standard-Medienwiedergabe, z. B.  mpv, vlc. \n* `DEFAULT_IMG_VIEWER`: Standard-Bildbetrachter, z. B. feh. \n\n## Entwicklung\n\nCopyright (C) 2025 Steffen Schultz, freigegeben unter den Bedingungen der MIT-Lizenz. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschulle4u%2Fatmiral","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fschulle4u%2Fatmiral","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschulle4u%2Fatmiral/lists"}