Genode OS Framework release 19.11 Nov 28, 2019Following this year's theme of "bridging worlds", Genode 19.11 adds the ability to use popular build tools like CMake for application development, introduces a new virtual-machine monitor for 64-bit ARM, and enhances POSIX compatibility. As another highlight, it features the first version of our custom block-device encrypter. Block-device encryption is a feature often requested by users of our Sculpt OS. Until now, we deliberately left this topic unaddressed because we felt that a profound answer was beyond our expertise. However, during the past year, we dived deep into it. The result is the prototype for a new block encrypter that encrypts data but also protects integrity and freshness. For us, the implementation of the encrypter is especially intriguing because - with about 7000 lines of code - it is Genode's first non-trivial component written in the SPARK programming language. The second major addition is a new virtual machine monitor (VMM) for 64-bit ARM platforms such as the NXP i.MX8. It leverages the proof of concept we developed in 2015 for ARMv7, which we pursued as a technology exploration. In contrast, our aspiration with the new VMM is a product-quality solution. In our road map for 2019, we stated the "bridging of worlds" as our overall theme for this year. On that account, the current release moves the project forward on two levels. First, by successively increasing the scope of POSIX compatibility, we reduce the friction when porting existing application software to Genode. We managed to bridge several gaps in our POSIX support that we considered as impossible to cover some years ago. In particular, we identified ways to emulate certain POSIX signals, ioctl calls, and fork/execve semantics. This way, popular software such as bash, coreutils, or Vim can now be executed as regular Genode components with no additional runtime environment (like Noux or a VMM) required. At a higher level, the current release introduces new tooling especially geared at the development and porting of application software. Compared to Genode's regular development tools, which were designed for whole-system development, the new tool called Goa relieves the developer from the complexity of Genode's custom build system and instead promotes the use of popular commodity solutions like CMake. These and more topics are described in the release documentation of version 19.11... Genode OS Framework release 19.08 Aug 28, 2019Genode 19.08 puts emphasis on practical concerns ranging from keyboard layouts, over system-time management, to remote system administration. It also continues our commitment to the 64-bit ARM i.MX8 SoC, comes with Qt5 version 5.13, and improves POSIX compatibility. The summer release of Genode addresses a variety of topics when using Genode and Sculpt OS in practice. The confrontation with the real world prompted us to develop new concepts for managing system time, keyboards layouts, and copy-and-paste. For using Sculpt OS on the road, a new application VM for accessing captive portals smoothes the experience of connecting to public WiFi networks. Besides the practical focus, the new release continues our commitment to the 64-bit ARM i.MX8 platform through new kernel support, device drivers, and test coverage. Further topics include SMBIOS support for commodity PC hardware, a new tracing tool, enhanced POSIX compatibility, and a major update of Qt5 to version 5.13. The complete picture is presented in the release documentation of version 19.08... Sculpt OS release 19.07 Jul 09, 2019Version 19.07 of the Sculpt operating system improves overall performance and introduces copy and paste between terminals, virtual machines, and graphical applications. The most prominent user-visible feature of Sculpt OS 19.07 is the ability of copy and paste text between terminals, graphical applications, and virtual machines. Our unique take on this feature is described in a dedicated article. Under the hood, Sculpt 19.07 benefits from the massive infrastructure improvements that came with Genode 19.05, yielding a smoother user experience compared to earlier versions. The new release can be obtained from the Sculpt download page and is accompanied by updated documentation. Genode OS Framework release 19.05 May 29, 2019The highlights of version 19.05 are a new kernel-agnostic virtualization interface, initial support for the 64-bit ARM architecture, the use of C++17 by default, a new tool chain based on GCC 8.3, updated C and SPARK runtimes, and the consolidation of build directories across boards. We dedicated the release cycle of Genode 19.05 to platform topics at various levels. The flagship feature is certainly the introduction of our kernel-agnostic virtualization interface. It has been in the works for more than a half year and gives us the prospect of running virtual machine monitors like Seoul and VirtualBox seamlessly across Genode's supported kernels. The second major theme is the extension of Genode's CPU-architecture support to 64-bit ARM (AARCH64). This step motivated the update of many parts of the framework's fundamental infrastructure, ranging from the tool chain (updated to GCC 8.3), over the C runtime (updated to FreeBSD 12 libc), to the dynamic linker. The new tool chain, in turn, paved the ground for enabling C++17 by default. With the diversity of kernels, CPU architectures, and boards growing, we are constantly striving to remove friction and redundancies between Genode's underlying platforms. The current release eventually consolidates the build directories not only across kernels but also across all boards of a given CPU architecture. This vastly increases the velocity of Genode-based system scenarios when targeting multiple boards or emulators at the same time. Further details about these and many more improvements are given in the release documentation of version 19.05... Sculpt as a Community Experience Mar 19, 2019The fourth stage of Sculpt OS introduces a new federated software provisioning model while giving the user full control over the component deployment via a novel graphical user interface. With Sculpt CE, we enter the final stage of the evolution of Sculpt OS as envisioned roughly one year ago. Initially geared towards die-hard enthusiasts only, each revision became more and more user friendly. The previous version Sculpt VC already offered a glimpse of Sculpt's unique user interface in the form of an interactive component graph. The just released Sculpt OS "as a community experience" (CE) combines this tangible notion of component compositions with a completely federated software provisioning model that cuts out middlemen like an app store or a distribution. With Sculpt CE, components can be offered by a federation of independent software providers selectable by the user. The software installation is sandboxed and protected via digital signatures. The integration of components with the rest of the system is completely under control by the user. With the principle of least privilege at the heart of Sculpt's architecture, you - the user - can fearlessly install and run software without the need to ultimately trust the software providers. Sculpt CE is intended to work in tandem with the new community blog Genodians.org where developers and users exchange experiences and announce new software. The best way to watch how the Sculpt story continues is the RSS feed of Genodians.org. To dive into the new world of Sculpt CE, download Sculpt OS... Genodians.org Mar 08, 2019Genodians.org is the new place to be for getting the latest news and stories around Genode. It is a federated blog by and for developers and users alike. With Genodians.org, the Genode community has gained a new place for exchanging ideas, announcing current developments, giving tutorials, and sharing experience stories. In contrast to the formal character of Genode's regular release notes, the articles at Genodians.org are raw and personal, authored by individuals with no editorial process. For feedback about the articles, readers are invited to the new /r/genode subreddit. As written in the initial posting, Genode users and developers are warmly invited to join the authors at Genodians.org! As a side note, the blogging platform is based on the Genode OS framework and is of course open source (GitHub repository). Genode OS Framework release 19.02 Feb 28, 2019Version 19.02 enhances Sculpt OS with a federated software provisioning model, showcases the use of Java for an IoT network appliance and the creation of a component-based web service, improves the runtime support for Ada and SPARK, and adds board support for i.MX6 Quad Sabrelite and Nitrogen6 SoloX. Our first release of 2019 pays tribute to this year's road map topic of making Genode relevant and attractive for a broader community. First, it enhances Sculpt OS with an easy-to-use way to discover, install, and integrate software originating from different providers into a running Sculpt system. Conversely, software providers get a distribution channel directly to the user, secured by cryptographic signatures. Unlike commodity OSes that rely on app stores or distributions, there is no middleman between software providers and users in Sculpt OS. Second, it makes the world's most popular programming language - Java - available. Our port of OpenJDK facilitates just-in-time compilation on both 32-bit ARM and 64-bit x86 architectures. The use of Java within a Genode system is nicely showcased by an exemplary IoT network appliance. Third, to foster a strong sense of community, the release introduces a Genode-based federated blogging platform, which enables users and developers alike to share ideas, practical tips and tricks, and announcements. Genodians.org is open for everyone to participate. Other highlights of Genode 19.02 are the improved runtimes for the Ada/SPARK and OCaml programming languages, and the added support for the i.MX6 Quad Sabrelite and Nitrogen6 SoloX boards. For more details, please refer to the release documentation of version 19.02... Road Map for 2019 Jan 15, 2019In 2019, we will focus on practical use cases, on interoperability, and on harmonizing Genode with existing applications and programming languages. The past Year of Sculpt was dedicated to bringing Genode to the desktop on commodity PC hardware. Now is a good time to focus on making the Sculpt OS relevant and appealing for a broader community. The road map for 2019 features three major ambitions towards that goal. First, making Genode easier approachable and usable by presenting practical use cases while fostering a stronger sense of community among users and developers. Second, simplifying the use of existing applications and programming languages in Genode-based systems. And third, improving the interoperability of Genode with existing protocols and systems. The complete story behind the new road map is presented at the road-map page. |