John Seager, vice president of engineering at Canonical and technical lead of the Ubuntu project, announced the resumption of work on the Ubuntu Core Desktop project, developing an alternative desktop edition of Ubuntu that utilizes developments from the Ubuntu Core platform and employs packages in Snap format instead of deb packages.
Unlike existing atomically updatable distributions, in which system components are mounted in read-only mode, Ubuntu Core Desktop applies a model where "all components are in snap format." With this model, the content of the system environment, Linux kernel, bootloader, desktop environments, multimedia servers, background processes, and applications are delivered in snap format and managed by the snapd toolkit.
Unlike the previously developed prototype, the distribution intends to be more modular, separating the base system into a set of separately updatable snap packages instead of delivering a single snap package with the Ubuntu Core system environment. All applications are intended to run isolated from the main system, and for packages that do not support isolation, a layer will be provided for running using virtualization.
To control application access to system and external resources, a permissions request mechanism is being developed, which requires user confirmation for access, for example, when snap packages try to access files in the home directory, webcam, or microphone. Dynamic output of requests is based on analyzing system call access, and access control is organized using AppArmor.
Development is underway with regard to three basic usage scenarios:
- A workstation where the main activity is associated with using a web browser and working with web applications. This scenario is considered the quickest to implement, as there are already ready-made snap packages for Firefox and Chromium, as well as established support for permission requests when accessing the camera and microphone.
- Systém pro vývojáře softwaru, který umožňuje současné používání několika vývojových prostředí nainstalovaných v izolovaných prostředích pomocí nástrojů workshop, využívající LXD pro správu kontejnerů. V případě potřeby spustit aplikace z deb balíčků, balíčků ve formátu flatpak nebo klasických snap balíčků, které nepracují nad Ubuntu Core, budou použity kontejnery nebo virtualizace.
- Systém pro nadšence počítačových her, postavený kolem snap balíčku Steam. Složkové části herního stacku, jako jsou Proton, Mesa a ovladače, budou také dodávány ve formátu snap, což umožní instalaci nejnovějších verzí těchto komponentů nebo použití různých verzí pro různé hry.
V procesu přípravy dalšího vydání Ubuntu se plánuje práce na oddělení složkových částí prostředí pracovního stolu do různých modulů, vytvoření snap rozhraní pro podporu různých funkcí a scénářů použití pracovního stolu, a také testování nové architektury Ubuntu Core Desktop na výše zmíněných třech scénářích použití. Kromě toho byla zahájena spolupráce s vývojáři projektu KDE Neon na variantě distribuce KDE Neon, realizované nad Ubuntu Core, což umožní přizpůsobit Ubuntu Core Desktop pro podporu různých pracovních ploch, aniž by se omezovalo na GNOME.
Zdroj: opennet.ru
