After three and a half years since the last release the release of the distribution . In GoboLinux, instead of the traditional file hierarchy found in Unix systems, there is a stack-based model for creating the directory tree, where each program is installed in a separate directory. The size is 1.9 GB, which can also be used to explore the features of the distribution in Live mode.
The root in GoboLinux consists of the directories /Programs, /Users, /System, /Files, /Mount, and /Depot. A drawback of combining all application components in one directory, without separating settings, data, libraries, and executable files, is the need to store data (such as logs and configuration files) alongside system files. The advantage is the ability to install different versions of the same application in parallel (for example, /Programs/LibreOffice/6.4.4 and /Programs/LibreOffice/6.3.6) and simplifying system maintenance (for instance, to remove a program, simply delete the associated directory and clean up the symbolic links in /System/Index).
To comply with the FHS (Filesystem Hierarchy Standard), executable files, libraries, logs, and configuration files are distributed across the familiar directories /bin, /lib, /var/log, and /etc via symbolic links. These directories are not visible to the user by default, thanks to a special , which hides these directories (the contents are accessible only with direct file access). To simplify navigation by file types, the distribution includes the /System/Index directory, where symbolic links denote various types of content. For example, the list of available executable files is presented in the subdirectory /System/Index/bin, shared data in /System/Index/share, and libraries in /System/Index/lib (for instance, /System/Index/lib/libgtk.so links to /Programs/GTK+/3.24/lib/libgtk-3.24.so).
For package building, the project (Automated Linux from Scratch) contributions are used. The build scripts are formatted as
, which automatically loads the program code and required dependencies upon startup. For quick program installation without recompilation, two repositories with pre-built binary packages are available — the official one, supported by the distribution development team, and an unofficial one created by the user community. The distribution is installed using an installer that supports both graphical and text modes.
Key Innovations :
- A simplified management and development model has been proposed, "", which is fully integrated with the GoboLinux Compile build tools. The recipe tree now functions as a standard Git repository, managed through GitHub and cloned into the system in the directory /Data/Compile/Recipes, from which recipes are used directly in GoboLinux Compile.
- The ContributeRecipe utility, used to create a package based on a recipe file and upload it to GoboLinux.org servers for review, now creates a branch from a local Git repository clone, adds the new recipe, and submits a pull request to the main recipe tree on GitHub.
- The improvement of the minimalist user environment based on the tiling window manager . Through the integration of Lua-based extensions within Awesome, floating window management familiar to most users has been implemented, while retaining all the capabilities for tiled layouts.
Improvements have been made to the widgets for managing Wi-Fi, sound, battery charge, and screen brightness. A new Bluetooth widget has been added. A screenshot creation tool has been implemented. - Updated versions of the components of the distribution have been added. New drivers have been included. The distribution adheres to a model of supplying only the latest versions of libraries in the base environment. Additionally, using Runner, the filesystem virtualization tool, users can compile and install any version of a library that can coexist with the version provided in the system.
- Support for the Python 2 interpreter has been discontinued; it has been completely removed from the distribution, and all system scripts tied to it have been rewritten to work with Python 3.
- The GTK2 library has also been removed from the package (only GTK3 packages are provided).
- NCurses is compiled with Unicode support by default (libncursesw6.so); the ASCII-limited variant, libncurses.so, has been excluded from the distribution.
- The sound subsystem has been migrated to use PulseAudio.
- The graphical installer has been migrated to Qt 5.
Source: opennet.ru
