Greetings Pop!_OS fans! Another week has gone by and it’s time for another update. We’re doing something different with the timing and instead of releasing on Friday afternoon, we’ll publish on Monday mornings. So, Happy Monday!

DistInst

Last time, we discussed the front end development of the installer and our collaboration with elementary. This week, we’ll talk a little bit about what’s happening on the backend of the new installer. Engineering has been working very hard on the backend-distinst for the past couple of weeks and have logged thousands of lines of code. Since our last update, the implementation of advanced partitioning has progressed, allowing a finer grain of control of partitioning disks, as one would expect.

This work is still ongoing and what is left has to do with the ability to move and resize existing partitions. This will take some effort, requiring extensive amounts of time for testing so as to not lose data when initiating any of these operations. There is also a CLI interface against which the library is currently testing. You are welcome to test out the CLI interface; the source is available at https://github.com/pop-os/distinst. There are several bugs that are labeled for newcomers! So if you know Rust or are learning Rust, you can check out them out and help out! Feel free to ask questions about any of our bugs in Pop!_OS or on distinst itself in our chat room.

Boot Sequence Optimization

Another interesting development that’s been coming along over the past two weeks is a conversation centered around an overhaul of the entire boot process. The goal is to reduce the amount of time we get to the desktop by optimizing the boot sequence from the moment you turn on your computer. Instead of using grub to load the kernel and the initramfs on UEFI systems, we’re going to be using systemd-boot, the modern incarnation of gummiboot. But to make this work, we need a mechanism to copy the kernel and initramfs images to the EFI System Partition(ESP) where systemd-boot expects them to be in order for the boot to initiate. Since the Ubuntu kernels do not have an existing mechanism to these operations, we use kernelstub. Kernelstub, when it runs, copies the kernel image and initramfs image onto the ESP and configures systemd-boot with the entries for the copied files. If you need to change kernel parameters, kernelstub has a manual mode that will allow you to do so in case your machine needs additional parameters. The general use is that kernelstub can copy the kernel and the generated initramfs when a new kernel becomes available. This current work is still in the experimental phase and part of the new installer and initial login work that is ongoing.



Upstream News

Cassidy James Blaede, our UX architect, has been accepted as a member of the GNOME Foundation for his design work in elementary, Pop!_OS, and GNOME. Cassidy is now a formal part of the GNOME upstream ecosystem and an important voice in the design of the GNOME desktop! Cassidy can supply feedback gathered through customer testimonials and discussions, thereby providing another important data source for the GNOME project.

That’s this week’s worth of work! As usual, if you’re excited by what we are doing, we would love to have the community’s input, opinions, and contributions! Find us on our chat channel or file bugs on our Github page.

See you next week: different Pop! time, same Pop! channel!