Progetti
Quattro progetti. Un compito ciascuno.
Tutti e quattro sono open source e sviluppati apertamente, nell'organizzazione NoWayOS su GitHub.
NoWayOS
Il Single Purpose OS.
Pattern di domini di protezione su seL4 e Microkit, messaggi tipizzati, driver, rete e un'interfaccia utente nativa, con il container di sviluppo e i controlli con cui si costruisce ogni repository NoWayOS.
- Gira in QEMU e su Raspberry Pi 5
- Un supervisore, un watchdog e uno stato fail-safe
- Uno stack IP e un client TLS 1.3, in Rust
- Controlli su concessioni, unsafe, licenze e segreti, e una distinta base per ogni immagine
- Stato
- In sviluppo
- Licenza
- MIT OR Apache-2.0
Screen Compiler
Si progetta in React. Si consegna Rust nativo. Nessun browser sul dispositivo.
Converte le schermate React, scritte in TSX secondo un sottoinsieme dichiarato, in Rust per l'interfaccia utente di NoWayOS. Gira al momento della build, sulla propria macchina o in CI, e non finisce mai sul dispositivo.
- Esatto o niente: tutto ciò che esce dal sottoinsieme viene rifiutato, con riga e colonna
- La stessa schermata produce Rust identico byte per byte su qualsiasi macchina
- Ogni schermata convertita deve corrispondere pixel per pixel alla sua immagine approvata
- Uno strumento di build, non una sandbox: convertire solo schermate di cui ci si fida
- Stato
- In sviluppo: il sottoinsieme v0 e le prime parti della v1
- Licenza
- MIT
Showcase
Applicazioni sicure da far girare su un Raspberry Pi.
Un kit per schermi self-service sicuri, un'applicazione di riferimento su cui costruire e un launcher di esempi con marchi di fantasia, in cui si avvia il Raspberry Pi 5.
- Nessun browser, WebView o JavaScript sul dispositivo
- Lo schermo e l'applicazione in compartimenti separati
- Le risposte di ogni persona sono progettate per restare solo nella memoria del dispositivo ed essere cancellate a fine sessione
- Ogni schermata progettata in React e convertita dallo Screen Compiler
- Stato
- In fase iniziale, non utilizzabile sul campo
- Licenza
- MIT OR Apache-2.0
Defence Agent
I controlli che ogni contributo deve superare, fuori dalla portata della pull request.
Ogni controllo di sicurezza che una modifica ai progetti aperti di NoWayOS deve superare, messo per iscritto con la minaccia a cui risponde e con chi può modificarlo, e l'agente che li esegue. Una pull request non modifica né fornisce mai ciò che la giudica.
- Ogni controllo dice cosa lo supera, così si può verificare la propria modifica in anticipo
- Ogni commit con sign-off secondo il Developer Certificate of Origin
- Una modifica a un controllo passa dal maintainer, e nessuna modifica giudica sé stessa
- L'agente non decide mai: un maintainer legge il suo verdetto e poi fa il merge, oppure no
- Stato
- Pubblico: i controlli sono messi per iscritto; l'agente e i suoi strumenti vengono dopo
- Licenza
- MIT OR Apache-2.0
Prodotti commerciali sulla stessa base
Su NoWayOS si costruiscono anche prodotti commerciali. Tutto ciò che di generico serve loro viene costruito in NoWayOS stesso, apertamente, e NoWayOS non dipende mai da un prodotto costruito su di esso.
Licenze
- NoWayOS, lo Showcase e Defence Agent sono rilasciati con licenza MIT OR Apache-2.0, a scelta.
- Lo Screen Compiler è MIT. Il Rust che genera dalle schermate appartiene a chi le ha scritte, che può concederlo in licenza come preferisce.
- Gli atlanti di glifi di NoWayOS sono rilasciati con la SIL Open Font License, la licenza del font da cui sono disegnati, e le sue icone con ISC, la licenza di Lucide.
Sponsorizzazione
NoWayOS è sponsorizzato da Adappt.ai.