dev.avyos.distro
api/distro/api.json
Linux distribution management API with install/run/shell lifecycle operations.
Service
| Field | Value |
|---|---|
| Name | dev.avyos.distro |
| Package | distro |
| Service ID | 0x00000070 |
Linux distribution management API with install/run/shell lifecycle operations.
Types
Empty
Empty payload used for requests and responses without data.
No fields.
StatusResponse
Current state of the Linux distribution rootfs.
| Field | Type | Description |
|---|---|---|
Installed |
bool |
- |
Path |
string |
- |
Size |
int |
- |
InstallRequest
Optional override URL for installing the distribution rootfs.
| Field | Type | Description |
|---|---|---|
URL |
string |
- |
RunRequest
Execution payload for running a command inside the distribution.
| Field | Type | Description |
|---|---|---|
Command |
string |
- |
Workdir |
string |
- |
Bind |
string |
- |
Env |
string |
- |
Input |
[]byte |
- |
RunResult
Execution output for a distribution command run.
| Field | Type | Description |
|---|---|---|
Stdout |
[]byte |
- |
Stderr |
[]byte |
- |
ExitCode |
int |
- |
ShellOpenRequest
Payload to open an interactive shell session in the distribution.
| Field | Type | Description |
|---|---|---|
Workdir |
string |
- |
Bind |
string |
- |
Env |
string |
- |
Rows |
int |
- |
Cols |
int |
- |
ShellSession
Shell session identifier assigned by the service.
| Field | Type | Description |
|---|---|---|
SessionID |
uint32 |
- |
ShellInputRequest
Input payload for an open shell session.
| Field | Type | Description |
|---|---|---|
SessionID |
uint32 |
- |
Data |
[]byte |
- |
ShellResizeRequest
Resize payload for a shell pseudo-terminal.
| Field | Type | Description |
|---|---|---|
SessionID |
uint32 |
- |
Rows |
int |
- |
Cols |
int |
- |
ShellCloseRequest
Request to close an active shell session.
| Field | Type | Description |
|---|---|---|
SessionID |
uint32 |
- |
ShellOutputEvent
Streamed terminal output for an active shell session.
| Field | Type | Description |
|---|---|---|
SessionID |
uint32 |
- |
Data |
[]byte |
- |
ShellExitEvent
Exit notification for a shell session.
| Field | Type | Description |
|---|---|---|
SessionID |
uint32 |
- |
ExitCode |
int |
- |
Requests
Status
0x0201
Get the current installation status of the distribution.
Input
Type: Empty
No parameters.
Output
Type: StatusResponse
Returns installed state, path, and size.
Install
0x0202
Install the distribution rootfs if not already present.
Input
Type: InstallRequest
Optional source URL override.
Output
Type: Empty
No payload is returned.
Run
0x0203
Run a non-interactive command in the distribution.
Input
Type: RunRequest
Command plus execution environment options.
Output
Type: RunResult
Returns stdout, stderr, and exit code.
Remove
0x0204
Remove the installed distribution rootfs.
Input
Type: Empty
No parameters.
Output
Type: Empty
No payload is returned.
ShellOpen
0x0205
Open an interactive shell session in the distribution.
Input
Type: ShellOpenRequest
Initial shell context and terminal size.
Output
Type: ShellSession
Returns the created shell session id.
ShellInput
0x0206
Send user input to an active shell session.
Input
Type: ShellInputRequest
Session id plus input bytes.
Output
Type: none (one-way)
No response payload for one-way request.
ShellResize
0x0207
Resize the pseudo-terminal for an active shell session.
Input
Type: ShellResizeRequest
Session id and new row/column dimensions.
Output
Type: none (one-way)
No response payload for one-way request.
ShellClose
0x0208
Close an active shell session.
Input
Type: ShellCloseRequest
Session id to terminate.
Output
Type: none (one-way)
No response payload for one-way request.
Events
ShellOutput
0x0301
Published when shell output data is available.
Payload
Type: ShellOutputEvent
Contains session id and output bytes.
ShellExit
0x0302
Published when a shell session exits.
Payload
Type: ShellExitEvent
Contains session id and exit code.