Tipo de plugin · .zip
Apps — adicione uma janela à área de trabalho
Um app é uma aplicação empacotada que aparece na área de trabalho como os Arquivos, o Terminal ou o Monitor nativos. É um .zip: um manifesto mais um ponto de entrada empacotado.
O manifesto declara o que o app é e as faixas de versão que ele alveja: uma faixa contract (quais capacidades precisa) e uma faixa desk (contra qual app-runtime compila). O DeskSSH resolve ambas ao carregar e degrada com elegância se o adaptador do host não tiver uma capacidade.
Um app nunca inventa comandos do host. Ele chama capacidades do Contract pelo SDK, então cada ação permanece no mesmo caminho auditado e transparente que o resto da área de trabalho.
O build empacota sua entrada num único arquivo e monta o .zip; você o importa por Configurações → Importar.
{
"schema": 1,
"kind": "app",
"id": "services",
"name": "Services",
"version": "0.1.0",
"author": { "name": "you", "github": "you" },
"license": "AGPL-3.0-or-later",
"contract": "^0.1.0",
"desk": "^0.2.0",
"capabilities": ["listServices", "serviceAction"],
"entry": "index.js",
"icon": "ServerCog",
"category": "system"
} - capabilities
- Capacidades do Contract que o app usa, para degradar em hosts que não as tenham.
- contract
- Faixa do Contract que o app exige, ex. ^0.1.0.
- desk
- Faixa do app-runtime (SDK) contra a qual compila, ex. ^0.2.0.
- entry
- O arquivo de entrada empacotado dentro do .zip, ex. index.js.