Arthur Zamarin

67 Followers
15 Following
17 Posts
Gentoo Developer
GitHubhttps://github.com/arthurzam

Congratulations to @ramereth from @osuosl who just received the first Distinguished Service Award in Free Software from @conservancy at #FOSSY!

#FOSSY2025 #FOSSY25 #FreeSoftware #OpenSource

I have done The Thing.

https://catfox.life/2024/09/05/porting-systemd-to-musl-libc-powered-linux/

I have ported #systemd to #musl. Properly. Passing all tests, properly. Booting my 2012 Ivy Bridge in 3.2 seconds, properly.

I'm aware of how unpopular this will be in some circles. But change does not happen without competition, and musl environments deserve more than what they have right now. systemd isn't a panacea, it isn't even that great, but it's here, it solves real issues people have, and it's now an option. Not a requirement, but an option.

Porting systemd to musl libc-powered Linux

I have completed an initial new port of systemd to musl. This patch set does not share much in common with the existing OpenEmbedded patchset. I wanted to make a fully updated patch series targetin…

The Cat Fox Life

For a long time I had a plan to integrate #fedora release-monitoring with https://packages.gentoo.org, as another source for notifying #gentoo developers when their packages become outdated.

Till now, we supported only Repology, which was very nice and simple to use, but required that someone on another distribution bumped to the newer version. Meanwhile anitya (release-monitoring backend) checks the source repo/website for any new version.

So I want to thank fedora for creating and hosting anitya, now Gentoo would also use it nicely. We use it on the lightweight side (~16 API calls every 2 hours), and I also plan to contribute some improvements to anitya, as a thank you and also improving it for all of us.

I hope various linux distribution would continue help each other to improve the world, we are all together here :)

Gentoo Packages

Gentoo Packages Database

After reading #systemd v256 rc changelog, I got very hyped for run0 (simple replacement for basic sudo or doas). But after verifying the code, I understood it misses bash completion. For me this would be sad and even degrade the usage.

So the best way to fix it is of course to add it myself. On the same note, check which other commands miss shell completion, and add them.

Not high impact contribution to a project I use, but every small bit counts.

https://github.com/systemd/systemd/pull/32510

shell-completions: add bash completion for run0 & systemd-vpick by arthurzam · Pull Request #32510 · systemd/systemd

After the merge of #32494, and adding some more completions for new v256 commands, I noticed I forgot to include it in meson.build, resulting in it not being installed, so in this PR I fix my mista...

GitHub

Finally, after 3 weeks of work, I've refactored the way https://packages.gentoo.org renders the HTML pages.

So instead of using the previous untyped and hard to read template files (using Go's html/template library), it uses templ library. As a result, everything is typed, faster, and has better formatting. It should also always create minified HTML, which is a nice bonus.
This should make maintenance much easier in the future, and maybe more people would join the development.

On the same front, I've optimized more SQL queries, resulting in nearly 80% reduction in heavy pages. I've also marked the next slow points, so future optimizations can be expected.

I do want to note that don't expect a huge difference on website loading times, since it mostly feels like network latency is still the slowest part by a lot (there aren't to many rounds, mostly one round, but still).

#gentoo

Gentoo Packages

Gentoo Packages Database

I've just release version 0.2.9 of pkgdev (collection of development tools for #gentoo ).

This release comprises of improvements to pkgdev tatt (testing packages in various combinations), pkgdev bugs (filing stabilization bugs for packages) and some more.

https://github.com/pkgcore/pkgdev/releases/tag/v0.2.9

Release v0.2.9 · pkgcore/pkgdev

ci: add testing on Python 3.12 and Python 3.13 (@thesamesam, #126) New Features: tatt: pass specific test configuration for the specific package, while not affecting the dependencies (@arthurzam,...

GitHub

One new check requested for #pkgcheck, just one new check... Give it a go, implement it, ship it... 2 new checks requested for pkgcheck.

Working on pkgcheck, #gentoo QA tool, is always source for more checks.

But at the end of the day, the more checks we have, the less space there is to make mistakes for ebuild writers.

pkgcheck, the #gentoo ebuild QA too, just had version 0.10.26 released, with a nice batch of new checks, and usage of the new tree-sitter-bash (whose grammar now can parse all of gentoo tree without errors).

All #gentoo devs and ebuilds writers are advised to upgrade pkgcheck, so you can depend on the new checks.

https://github.com/pkgcore/pkgcheck/releases/tag/v0.10.26

Release v0.10.26 · pkgcore/pkgcheck

tree-sitter-bash: use and bundle the latest version of the bash grammar. This version is capable to parse all the bash code that was used in gentoo repository, meaning various false positives or pa...

GitHub

I'm happy to announce a new release of #pkgcheck (the #gentoo ebuild QA tool).

This release comes with new checks, around Rust, Ruby, Python, Perl, deprecated hashes, and also some bug fixes.

I also want to emphasize on the new flag --git-remote for pkgcheck scan, which can help those who don't have "origin" as target remote repository to compare with. For those that need it, I recommend to set it up using the config file.

https://github.com/pkgcore/pkgcheck/releases/tag/v0.10.25

Release v0.10.25 · pkgcore/pkgcheck

scan: add --git-remote option to select remote used for git operations (@arthurzam, #601) New checks: RustCheck: check for suboptimal - CRATES separator (@arthurzam, #589) RustCheck: check for su...

GitHub

I'm working on my university seminar about Elliptic Curves Cryptography. I didn't expect how fun this subject is!

I've started from the basic curves used in the start. More reading brought me to Edwards curves and Montgomery curves. Understanding all the math, geometry, and workings in prime fields is quite fascinating.

The more I read, the more I understand how amazing and efficient curve25519 is. When you just look at it without the math knowledge, it is quite hard to fathom this, but when you understand it, it is just elegant.

I've no idea how deep my seminar will go into ECC (my professor didn't specify a stopping point), but we will see. I like entering the cryptography world.