Craft team welcomes you to another episode of its adventures

by Igor Ljubuncic on 21 March 2023

Welcome to the second article in the Craft team saga. Previously, on Craft Team, we gave you a brief introduction into the team’s function, we announced our desire to share the ins and outs of our day-to-day work with the community, and gave you an overview of roughly two weeks of coding and fun. Today, we’d like to continue, and update you on what we’ve been doing since.

Snapcraft, and who doesn’t like classics

After rigorous testing, some tense back and forth, and a couple of bugs squashed, Snapcraft 7.3.1 has been released to stable. But the work does not end there.

If you’re developing snaps, you may have noticed that the combo of the GNOME extension and Python plugin in the snapcraft.yaml can lead to an odd interaction issue, which led to Snapcraft being confused about which Python interpreter to use. This has been fixed, but for that, you will need to use Snapcraft from the edge channel.

There’s also proper Apt Key management in Craft Archives, part of the larger effort of making Snapcraft code modular and elegant and easier to maintain going boldly and inevitably into the future.

Then, Snapcraft is slowly but surely making its way on becoming able to target core24 as a base. This opens up a new build-base possibility – devel – which allows the use of whatever latest development release for Ubuntu at the time. This means that early adopters will be able to declare core24 as a base, and use devel as the build-base.

Lastly, if you want to learn more about classic confinement, we have three new guides that should help you set up projects with Python, autotools and makefile.

We will, we will Rockcraft you

Rockcraft now uses the latest Craft Providers. This brings in performance improvements, and integrates hooks to clean LXD snapcraft on removal and refresh. The integration also provides a better mechanism to interrupt the bootstrapping phase of build containers – when you hit Ctrl + C as soon as you run the command. 

The edge version of Rockcraft resolves issues around improving symlinking in the prime stage of the build process. Similarly, issues with the use of overlays have been fixed, in close collaboration with the LXD team.

Charmcraft

A fair deal of changes, fixes and new features have come into Charmcraft, too. Bundle Promotion, a functionality extracted from the Juju Bundle is now available in the edge channel. Library fetching (fetch-libs), should no longer require the user to be logged in.

The CentOS integration is almost there, with a PR ready, just waiting for the imminent Craft Parts release that will allow using Charmcraft in destructive mode. There has also been some lint work done, resolving a few corner cases that may occur during the publication of charms.

Last but not least, the team has a new team member who will be mostly focusing on making charms as charming as possible to the end user. 

Summary

This brings us to a close, with some fresh updates from the Craft team world. Hopefully, you will have found this article as engaging and interesting as the first one. If you’d like to get involved, or perhaps have a question you’d like to ask, check out the previous article for links to our public Mattermost channels. Until next time, may the dev force be with you.

Photo by Nicolas Thomas on Unsplash.

Newsletter Signup

Related posts

Snapcraft 8.0 and the respectable end of core18

‘E’s not pinin’! ‘E’s passed on! This base is no more! He has ceased to be! ‘E’s expired and gone to meet ‘is maker! ‘E’s a stiff! Bereft of life, ‘e rests in peace! If you hadn’t nailed ‘im to the perch ‘e’d be pushing up the daisies! ‘Is software processes are now ‘istory! ‘E’s […]

What happens in the Craft team stays in the Craft team … until today

Snapcraft, Charmcraft, Rockcraft … you may have heard of these tools, but have you ever wondered how – and by who – they are developed? These tools are the intellectual and keyboard-driven product of Canonical’s Craft team. Officially, the team’s name is *Craft, and the asterisk symbol can easily be seen as a “star” (The […]

The long ARM of KDE

With over 100 applications available in the Snap Store, KDE is by far the biggest publisher of snaps around. What unifies this impressive portfolio is the fact that all of these snaps are made for the x86 platform. Not anymore. Now, don’t panic! The x86 snaps are not going anywhere. But ARM-supported KDE snaps are […]