SolarOS

SolarOS 4.13.4 manual · app

launcher

Configurable native graphical launcher for display shells. It draws the configured grid, centers one icon in each occupied cell, and shows the selected icon larger with its title centered underneath. Arrow keys move between occupied cells, Enter opens the selection, and a pointer selects and opens items by point and click. Esc or the app-exit key returns to the shell.

Usage:

launcher [config.json]

Without an argument, Launcher reads launcher.json from the active storage root. The first run creates a usable default file there. A supplied path selects another configuration. Launcher reloads the file whenever a child application returns, so editing the configuration through a launcher item takes effect immediately.

The file is JSON. layout.columns and layout.rows define a grid from 1 by 1 through 8 by 8. Each item has a displayed name, an Open Iconic icon name, a SolarOS shell command, and a zero-based column and row. A cell can contain at most one item, and a configuration can contain up to 32 items:

{
  "layout": {"columns": 3, "rows": 2},
  "items": [
    {"name": "Files", "icon": "folder", "command": "files", "column": 0, "row": 0},
    {"name": "Manual", "icon": "book", "command": "help", "column": 1, "row": 0},
    {"name": "Wi-Fi", "icon": "wifi", "command": "wifi", "column": 2, "row": 0},
    {"name": "Sketch", "icon": "brush", "command": "sketch", "column": 0, "row": 1}
  ]
}

Icon names are the lowercase, hyphenated Open Iconic names, such as book, browser, brush, calculator, clock, cog, document, folder, home, musical-note, pencil, tablet, terminal, and wifi. Legacy numeric IDs from 0 through 222 remain accepted for existing configurations.

Commands use the normal SolarOS shell parser, so arguments, aliases, scripts, and application availability checks behave exactly as at the prompt. A launched foreground application returns to Launcher when it closes. A command that does not open an application returns to the shell so its output remains visible.

Join us on: