After nearly four years of development, the release of the Qubes 4.1 operating system has occurred, implementing the idea of using a hypervisor for strict isolation of applications and OS components (each class of applications and system services runs in separate virtual machines). A system with 6 GB of RAM and a 64-bit Intel or AMD CPU with VT-x with EPT/AMD-v with RVI support and VT-d/AMD IOMMU is required, preferably with Intel GPU (NVIDIA and AMD GPUs have not been sufficiently tested). The size of the installation image is 6 GB.
Applications in Qubes are divided into classes based on the importance of the processed data and the tasks to be accomplished. Each application class (for example, work, entertainment, banking operations), along with system services (network subsystem, firewall, storage management, USB stack, etc.), operates in separate virtual machines, launched using the Xen hypervisor. These applications are accessible within a single desktop and are visually distinguished by different colored window borders. Each environment has read access to the underlying root filesystem and local storage, which does not overlap with the storage of other environments, with a special service facilitating interaction between applications.

Fedora and Debian package bases can serve as the foundation for forming virtual environments; the community also supports templates for Ubuntu, Gentoo, and Arch Linux. Access to applications in a Windows virtual machine can also be arranged, along with the creation of virtual machines based on Whonix to provide anonymous access through Tor. The user interface is built on Xfce. When a user launches an application from the menu, that application starts in a specific virtual machine. The content of the virtual environments is determined by a set of templates.


Key Changes:
- It has been implemented to use a separate GUI Domain environment with components to ensure the operation of the graphical interface. Previously, in virtual environments for each class of applications, a separate X server, a simplified window manager, and a dummy video driver were launched, transmitting output to the management environment in composite mode, but the components of the graphical stack, the window manager of the main desktop, screen management tools, and graphic drivers were executed in the main management environment Dom0. Now, graphics-related functions can be moved from Dom0 to a separate GUI Domain environment and separated from system management components. Only a special background process has been left in Dom0 to provide access to certain memory pages. Support for GUI Domain is still experimental and is not enabled by default.
- Experimental support for Audio Domain has been added, a separate environment for sound processing. server, allowing components for sound processing to be separated from Dom0.
- A background process qrexec-policy and a new rules system for the Qrexec RPC mechanism have been added, which allows commands to be executed in the context of specified virtual environments. The Qrexec rules system defines who can do what and where in Qubes. The new version of the rules features a more flexible format, significant performance improvements, and a notification system that simplifies problem diagnosis. The ability to run Qrexec services as a socket server has been added.
- Three new virtual environment templates based on Gentoo Linux have been proposed — minimal, with Xfce, and with GNOME.
- A new infrastructure has been implemented for the support, automated assembly, and testing of additional virtual environment templates. In addition to Gentoo, support for Arch Linux templates and Linux kernel testing has been integrated into the infrastructure.
- The build and testing system has been improved, with added support for checks in the continuous integration system based on GitLab CI.
- Work has been done to implement support for reproducible environment builds based on Debian, which can be used to confirm that Qubes components are built directly from the declared source codes and do not contain any unauthorized changes, which might happen through a compromise of the build infrastructure or compiler backdoor.
- The implementation of the firewall has been rewritten.

- The sys-firewall and sys-usb environments now start in ‘disposable’ mode by default, meaning they are one-time use and can be created on demand.
- Support for high pixel density displays has been enhanced.
- Support for different cursor shapes has been added.
- A notification for low disk space has been implemented.
- Support for a paranoid backup recovery mode has been added, in which a disposable virtual environment is used for recovery.
- In the installer, users can choose between Debian and Fedora for virtual machine templates.
- A new graphical interface for managing updates has been introduced.

- A Template Manager utility has been added for installing, removing, and updating templates.
- The mechanism for distributing templates has been improved.
- The base environment Dom0 has been updated to the Fedora 32 package base. Templates for creating virtual environments have been updated to Fedora 34, Debian 11, and Whonix 16. By default, Linux kernel 5.10 is proposed. The Xen hypervisor 4.14 and Xfce graphical environment 4.14 have been updated.
Source: opennet.ru


