Hey there, I just saw this, otherwise I would have responded sooner. I addressed a lot of points here on my blog post which was linked to by the original It’s FOSS article, but before responding to me, I’d like to ask you to read my thoughts on the matter at My First Contribution to systemd: Adding birthDate to userdb | Dylan M. Taylor .
deliberately trying to corrupt the world of free and open source software (FOSS).
I love free and open source software, and run it on all of my devices. Trust me, there is no ill-intent or anything like that.
made commits to various projects
Indeed, I have an entire paragraph about this in my blog post, but let me specifically quote that here too:
People keep asking why I submitted PRs to multiple projects, as if that’s suspicious. It’s not. Like many things in software development, multiple moving pieces need to fit together to form a working solution. On their own, they are not fit for purpose. The architecture I proposed looks like this:
-
userdb / AccountsService as the storage layer
-
Installers for having a date picker or prompt during account creation
-
xdg-desktop-portal as a broker from the storage layer to applications, so they get an “18+” signal instead of direct access to personally identifiable information
These changes are designed to work with one another, and my PRs link to each other with explanations of how the pieces fit together. This development is being done entirely in the open. This is how cross-project infrastructure work happens – see any other project with complexity like GNOME or KDE where interoperability between components is required.
I believe having a centralized, protected storage layer is a far saner and safer solution than having personally identifying information scattered across the filesystem in various formats. Without a standardized, local-first, privacy-respecting way to store this data, every app-level developer or system integrator will be forced to roll their own if they want to be compliant, or they will just avoid shipping Linux apps entirely if they see it as a liability. With centralization, we can secure it, control it, and minimize harm. Would you rather every app collect your age and store it all over the filesystem? Privacy-wise, this is a win.
It’s also worth noting that the xdg-specs MR, which was based on what Aaron Rainbolt suggested on the Freedesktop mailing list, is now closed. It’s superseded by David Edmundson’s xdg-desktop-portal PR, which I think is the best approach for sharing just the age range with applications. Since people continued to comment on the closed MR, I asked the freedesktop project to lock it.
Also, I don’t think anything was “rejected”. I voluntarily closed my xdg-spec PR in favor of handling it in a desktop portal, Calamares was locked for discussion because of uncivil behavior towards me in the comments, and Arch is indeed on hold. They’re waiting on legal counsel to see what’s needed and tracking that at Age declaration laws (#61) · Issues · Arch Linux / Project Management · GitLab
I have abandoned the Ubuntu PRs at this point, since Canonical is discussing this internally to see what solution they will implement.
Much depends on the adoption of systemd, which appears to be compromised.
Implementing an age check has zero dependency on systemd. birth date, or any other PII could have always been stored on the filesystem in any arbitrary location. I’m not enabling it so much as trying to standardize how this would be collected and stored - userdb is a very rational place to store this data, and it can be controlled via policy and protected that way. Also, even if you wish to use a project such as ageless linux, you should welcome standardization as if your goal is to remove this functionality it is significantly easier when there is one implementation not thirty competing ones.
problematic code changes
That’s your opinion. userdb is a database of extended user attributes. This field isn’t out of place there at all.
Happy to answer any questions you have.
Dylan