Rilascio del motore desktop Arcan 0.7.1 e dell'ambiente desktop Durden 0.6.3

Dopo un anno di sviluppo, è stata presentata la versione 0.7.1 del motore desktop Arcan, che unisce un server di visualizzazione, un framework multimediale e un motore di gioco per l'elaborazione della grafica 3D. Arcan può essere utilizzato per creare diversi sistemi grafici, dagli interfacce utente per applicazioni embedded a ambienti desktop autonomi. Sulla base di Arcan sono stati sviluppati l'ambiente utente 3D per i sistemi di realtà virtuale Safespaces e l'ambiente desktop Durden. Il codice del progetto è scritto in linguaggio C e distribuito sotto licenza BSD (alcuni componenti sotto GPLv2+ e LGPL).

Arcan non è legato a specifici sistemi grafici e può funzionare su diversi ambienti di sistema (BSD, Linux, macOS, Windows), utilizzando backend plug-in. Ad esempio, è possibile l'esecuzione sopra Xorg, egl-dri, libsdl e AGP (GL/GLES). Sotto la gestione del server di visualizzazione, Arcan può eseguire applicazioni client basate su X11, Wayland e SDL. Il progetto sviluppa il proprio fork del server X.org — xarcan, e un server composito arcan-wayland (waybridge), che consente di eseguire applicazioni basate su Wayland. Tra i criteri chiave utilizzati nella progettazione delle API di Arcan ci sono sicurezza, prestazioni e idoneità per il debugging. Per semplificare lo sviluppo delle interfacce, viene proposto l'uso del linguaggio Lua.

Rilascio del motore desktop Arcan 0.7.1 e dell'ambiente desktop Durden 0.6.3

Caratteristiche di Arcan:

  • Combinazione delle capacità di un server composito, un server di visualizzazione e un gestore di finestre.
  • Supporto per l'esecuzione in modalità autonoma, in cui un'applicazione basata su Arcan funge da unità autosufficiente che opera senza ulteriori strati grafici.
  • Framework multimediale integrato che fornisce strumenti per la gestione della grafica, l'elaborazione di video e audio in streaming, l'animazione, il caricamento di immagini e l'interazione con dispositivi di acquisizione video.
    Rilascio del motore desktop Arcan 0.7.1 e dell'ambiente desktop Durden 0.6.3
  • Modello di connessione multiprocesso per gestire gli handler delle fonti di dati (ad esempio, flussi video e output di programmi in esecuzione).
    Rilascio del motore desktop Arcan 0.7.1 e dell'ambiente desktop Durden 0.6.3
  • Il rigido modello di separazione delle privilegi — i componenti del motore vengono suddivisi in piccoli processi non privilegiati che interagiscono tramite l'interfaccia di memoria condivisa Shmif.
  • Strumenti integrati per il monitoraggio e l'analisi dei crash dei processi. Il motore può serializzare lo stato interno di script Lua per facilitare il debug.
  • La possibilità di fallback su un altro gestore — in caso di errore nel programma, il motore può avviare un'applicazione di riserva, preservando le stesse fonti di dati esterne e connessioni.
  • Strumenti per l'accesso e la connessione remota al desktop. L'accesso tramite rete è fornito dal server grafico «arcan-net», che implementa il protocollo P2P A12, unendo le funzionalità di tecnologie come mDNS (scoperta di servizi locali), SSH (interfaccia a riga di comando interattiva), X11/VNC/RDP (interfaccia grafica interattiva), RTSP (streaming di dati multimediali) e HTTP (download di risorse e sincronizzazione dello stato).
  • La shell a riga di comando Cat9 consente di associare l'esecuzione di comandi a celle individuali che formano una sorta di foglio di calcolo (video di dimostrazione). Il concetto proposto consente di reindirizzare i flussi di dati tra le finestre, collegando i dati e i gestori in diverse finestre in modo simile alle celle in un foglio di calcolo (ad esempio, è possibile reindirizzare l'output da una finestra a un gestore shell avviato nel terminale e utilizzare il risultato in un'altra finestra).
    Rilascio del motore desktop Arcan 0.7.1 e dell'ambiente desktop Durden 0.6.3

Modifiche relative al progetto:

  • Portato il server composito Gamescope, sviluppato da Valve, che consente di avviare giochi da Steam senza dover manipolare Xwayland.
  • Migliorato il plugin Qt qtarcan, che consente di eseguire applicazioni che utilizzano Qt5 e Qt6 in Arcan, come Qbittorrent e Binary Ninja.
  • Creati patch e script per eseguire KeepassXC.
  • Sviluppato un visualizzatore per il protocollo A12 e l'interazione tramite esso.
  • In fase di sviluppo un gestore di finestre interattivo chiamato Lasso.
  • Aggiunta l'utilità Xkbd2Lua per convertire i layout di tastiera da X11 in un formato supportato da Arcan.
  • Sviluppati pacchetti nix per creare un ambiente di avvio operativo basato su Arcan, il desktop Durden e una shell.
  • Aggiunta la supporto per l'algoritmo di crittografia post-quantistico ML-KEM.
  • Aggiunta la possibilità di riprendere le connessioni di rete interrotte dai clienti (dopo il ripristino della connessione interrotta, l'applicazione verrà riassociata senza perdere lo stato della sua finestra).
  • È stata aggiunta l'opzione «—cast», che consente di organizzare il lavoro di altri utenti con una copia dell'output dell'applicazione in modalità sola lettura.
  • Nel server dei cataloghi è stata aggiunta la supporto per nuovi collegamenti unificati (Unified) e referenziali (Referential), con cui è possibile combinare server in un unico spazio dei nomi o costruire catene. server. Nel primo caso, per l'utente, il gruppo di server appare come un unico server, mentre nel secondo è possibile eseguire applicazioni su uno. server, connettendosi a un altro.
  • Nell'API è stata aggiunta la funzione launch_target per avviare dinamicamente un'applicazione sul server su richiesta del cliente. Per l'applicazione è possibile creare un controller: un insieme di script Lua per gestire lo scambio di messaggi e l'accesso alle risorse.
  • È stata aggiunta la supporto per gli identificatori di risorse esterni (External Resource Resolver), che possono intercettare le operazioni con il deposito Arcan e gestire le operazioni di richiesta delle risorse, ad esempio, organizzando la cache locale o il caricamento dei dati da Web, BitTorrent o IPFS invece di restituirli dal disco locale.
  • È stata implementata una sorta di client leggero, che consente al cliente, senza l'intero stack di Arcan (avendo solo il visualizzatore Smash), di spostare la logica di esecuzione dei programmi sul server. Ad esempio, per avviare l'ambiente desktop durden sul server myserver, è possibile eseguire «arcan-net —host-appl myserver@ durden».
  • Nella shell Cat9 è stato aggiunto un backend con debugger che supporta il protocollo DAP (Debug Adapter Protocol) per il debug locale o remoto.
  • È stata aggiunta una vasta gamma di modifiche relative allo sviluppo del protocollo A12, all'ambiente di esecuzione degli script in linguaggio Lua, al sottosistema di rete, al server di directory per il collegamento dei componenti distribuiti sulla rete, al sistema di memoria condivisa Shmif e al modulo egl-dri.

È stata contemporaneamente pubblicata la versione dell'ambiente desktop Durden 0.6.3. L'ultima versione risale al 2020. Durden supporta modalità di disposizione a mosaico e classica delle finestre con completi strumenti di gestione tramite tastiera. È possibile utilizzare sistemi con più monitor che hanno diverse impostazioni DPI.

Viene fornita un'ampia clipboard che mantiene la cronologia delle modifiche e disponibile in due varianti: globale e legata a singole finestre. Supporta il cambio di layout della tastiera e l'interazione con dispositivi avanzati come i controller di gioco. Sono disponibili funzionalità come il menu globale, il menu nella barra del titolo delle finestre, widget e la possibilità di impostare comportamenti personalizzati per ciascuna finestra. Tutte le impostazioni, compresi i metodi di input, i caratteri e gli effetti visivi, possono essere modificate al volo, senza la necessità di ricaricare la configurazione.

La versione 0.6.3 è un rilascio preparatorio prima del prossimo rilascio di Durden 0.7, in fase di sviluppo, che presenterà una serie di importanti novità, come gesti su schermo, supporto per intestazioni verticali e pannelli, modalità compatta per la visualizzazione di intestazioni e pannelli, un nuovo configuratore, anteprima al passaggio del mouse, tastiera su schermo osdkbd, modalità di sovrapposizione delle finestre, supporto per sintesi vocale e integrazione dei componenti a12net e a12_directory per garantire la trasparenza di rete e l'accesso remoto.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster