You guys fell for clickbait
You guys fell for clickbait
Ideally, we wouldn’t need to do age verification at all. But if it’s absolutely required, the most privacy-preserving way would be:
But if it’s absolutely required
It’s not.
Applications can then ask, “is the current user over 18?” And just gets true/false.
the current implementation allows reading the precise age
Exactly, and some of the laws require just asking if the age is over a some pre-defined threshold, not sending the full date, for example “is the user over 18? Is the user over 15? 13?”
And just to be clear, I do think that “protecting the children” is just an excuse to push surveillance tech that was very convenient to use after the Epstein files. I am strongly against these laws and I am supporting ($$$) activist groups fighting against them. Do consider donating or getting involved too if you can.
But this specific change isn’t adding surveillance to Linux. It’s just a date of birth field that a parent can set. I can see why a parent would want it instead of using shady and intrusive “child control” software that takes over the computer.
You need to store the date of birth to update the user’s reported age automatically. It makes sense and puts the “protecting the children” responsibility back on parents instead of third parties that every website is now starting to use.
The systemd solution is not even reusable for actual verification because it can’t provide any cryptographic proof of the verification! It’s literally just a date.
All of this was discussed in the PR.
Systemd is present on the vast majority of Linix systems so it made the most sense to put it in systemd. It is an optional field so it is up to applications and distros on weither to use it for something. Age verification laws are legally binding so compliance is not optional.
If you have a problem with age verification call your local lawmaker. Don’t attack a bunch of devs who somehow got stuck in the middle.
The source is the source: github.com/…/acb6624fa19ddd68f9433fb0838db119fe18…
Takes a birth date for the user in ISO 8601 calendar date format. The earliest representable year is 1900. If an empty string is passed the birth date is reset to unset.
That’s it. That’s all it does.
Whatever was discussed in the PR, the code does precisely nothing to implement any kind of verification. It’s just an optional birth date field, like tons of electronics have had forever.
it’s in one place that any third party can reference.
But why would I want that?
Even if you ignore the whole “this doesn’t verify anything” discussion, why would I want to give third parties easy access to personal and potentially sensitive information? I personally am not interested in simplifying data collection for corporate entities who definitely do not give a shit about the safety of my personal data, let alone hypothetical children. I do not know why this data collection needs or would be desired to be implemented within systemd, besides being a direct response to age verification laws saying its an OS providers responsibility to collect it. Arbitrary data collection by private entities is not “useful”. My personal data has no business being referenced by random asshats that ask for it. There are so few things in the world that “justify” needing my age that I would suggest it would be easier to make my birth date a permanent data point on my PC. Same goes for the other personal details that systemd already supports. Crazy to imagine anyone actually using those on a personal machine.
It is just a optional field
Be mad at lawmakers not developers who are trying to make the best of a shitty situation
I speak only for myself, but I’m not mad at any developers for following with this. I wish they wouldn’t, but I can’t blame them for following the law to protect themselves.
I still think this is bullshit and just going down the slippery slope. The next thing is “this value doesn’t do anything. Now we need a law that actually checks an ID!” And it just keeps getting worse and worse.
Don’t give them an inch on any of this bullshit. And by them, I do mean the governments trying these stupid laws that, at best, waste taxpayer money and valuable time spent on other worthwhile things.
It was also an option to not make a useless field. Not like this self reported dob is going to cut it for the existing age verification laws as is exists now. But I can be mad at people in a position of community production for not having a spine, too.
How is this supposed to be making the best of the situation anyway? It accomplished nothing but piss off the community and signify to authoritarians that open source developers are ready to bend over for them. Simply threaten unenforceable fines across the world and suddenly everything is hopeless. Better get ready to comply, its inevitable! Its pathetic. Ageless Linux might be performative bs, but at least its critical of this over reach instead of intentionally signalling compliance in advance.
I’m Jeremy from System76. We are in talks with legislators and there are likely to be amendments to the age verification bills, as well as conflicting requirements in different jurisdictions. It may even be the case that open source operating systems are exempted entirely. I detailed this on the xdg mailing list here:
https://lists.freedesktop.org/archives/xdg/2026-March/014797.html
I have other concerns about this specific implementation. By relying on systemd, which is decidedly unportable to non-Linux operating systems, and not used across all Linux operating systems either, it will force at least one alternative implementation to exist. If these implementations end up having to collect jurisdiction specific requirements, that makes it much harder for complihttps://github.com/systemd/systemd/pull/40954#issuecomment-4032221990
Good system design doesn’t do things without me asking it to. I’ll gladly manually re enter my birth date for an external service if its required, which to be clear, should be as close to 0 times as possible. What, should I keep all my job application info in the initialization system too? Because a website I’m on might ask for it at some point? Don’t want to be too redundant.
Literally this field serves no purpose other than to build compliance with the surveillance state. No end user asked for this. Like I said, can’t imagine any end user making use of the existing systemd fields either. But those also didn’t get any attention because they weren’t made as a reaction to threats by a malicious regime.
earliest representable year is 1900
(Time to set it to) literally 1984!
You can if you want
You also could just ignoro it entirely as it is optional
So they’re introducing a system where a users age can be verified?
Hmm, if only there was a name for that.
Stores the user’s birth date for age verification, as required by recent laws\
in California (AB-1043), Colorado (SB26-051), Brazil (Lei 15.211/2025), etc.
https://github.com/systemd/systemd/pull/40954
Guess

Stores the user's birth date for age verification, as required by recent laws in California (AB-1043), Colorado (SB26-051), Brazil (Lei 15.211/2025), etc. The xdg-desktop-portal project is addi...
So they’re introducing a system where a users age can be verified?
No. They are not.
It is an optional field that does no semblance of checking its veracity. Again, like basically every bit of electronics has had forever.
It is literally for the act of verifying a users age.
Being the verifier instead of the requester doesn’t make it not age verification. It’s part and parcel.
I just don’t see how it’s any different than my Sony PSP having an optional birthday field. Or oldschool forums having one. It can’t possibly affect me, or anyone who’s concerned about it.
If systemd starts talking about bundling face scanners or whatever they actually need to verify someone’s age, and then tons of linux systems start requiring it, then I will be gravely concerned.
it’s optional now but can be mandatory later? It literally takes a baby monkey’s brain to understand that.
Also this is literally in the PR:
Stores the user’s birth date for AGE VERIFICATION, as required by recent laws in California (AB-1043), Colorado (SB26-051), Brazil (Lei 15.211/2025), etc.

Stores the user's birth date for age verification, as required by recent laws in California (AB-1043), Colorado (SB26-051), Brazil (Lei 15.211/2025), etc. The xdg-desktop-portal project is addi...
Couldn’t reply to me pointing out that this was merged, and was stated to be explicitly to support age verification laws, so you had to lie about it as a meme instead.
Because thats what youre doing right now, lying and spreading misinformation. You can admit it.
It was added specifically for the purpose of two state laws and Brazil.
Trying to weasel it as “this doesnt implement it” is misinformation at best.
sigh
How do these laws do anything to “protect children”? And since they dont actually do that, which you may already be aware of, what do you think their purpose is?
Then ask that question to yourself and think about whether the verification of an age is the issue with what’s going on here, and why people are angry with systemd maintainers merging something that houses PII, for no other stated reason or potential use case than a law that will have zero ability to “protect children”.
Then ask that question to yourself and think about whether the verification of an age is the issue with what’s going on here
Verification is the issue. Or, rather, it would be if there was any verification here at all.
I could put 1970-01-01 in that field no problem. Systemd has asked for precisely 0 additional information from any of its users, because it neither asks you to fill it in nor verifies that what you filled it with is correct. Just like the real name and location fields that were already present, which, might I remind you, are also PII.
Systemd isn’t the problem here. The laws are a problem and pissing in systemd’s direction won’t change that.
Age verification could be a usecase.
ITS THE EXPRESS PURPOSE AS WRITTEN IN THE PR.
I will absolutely direct my anger and frustration where it belongs, which includes systemd along with the dumbasses pushing these laws.
As well as you for spreading misinformation. Make no mistake, its deserved.
It enables other dead brained dev to push it further
Little by little
It is just a arbitrary field. They could have a field for all sorts of questionable things and it wouldn’t bother me.
It is up to the people outside of systemd on how it gets used. Systemd is non political and will implement whatever features have a use case. They don’t control the distro.
Technology is inherently political.
This is something that has been known and taught for decades.
Learning towards bad faith pedant here.
That’s actually an interesting question…is grass political ?
By touching it, would we be signalling some sort of political stance ?
Something to ponder.
hi. slrpnk.net user here. yes. grass is political. when you mow your grass is determined by social contracts, the kind of grass you grow is reflective of the economic pressures you experience. when a city makes a green area, they must engage with politics on how to determine where and what the green area will be.
since the dawn of civilization, aka growing grass for food purposes, grass growing has been both political in its decision making, as well as a driving force in politics.
everything is political, and calling people who think that chronically online is goofy
github.com/systemd/systemd/pull/40954
They don’t control the distro.
And google doesn’t officially control web standards, but their monopoly on browser usage means they have “effective” control, for the most part at least.
See the manifest v3 changes for extensions.

Stores the user's birth date for age verification, as required by recent laws in California (AB-1043), Colorado (SB26-051), Brazil (Lei 15.211/2025), etc. The xdg-desktop-portal project is addi...
Storing a users birthday is useful metadata anyway. I’m surprised it wasn’t stored before.
The age isn’t verified is any way. You can set it to the 1800s for all it cares
Yeah like the email address and the full name of the user.
… What do you mean it’s blank for 99% of users?
And how is it useful then? Parental controls have existed for decades and you never had to give your age to Facebook, who is the main proponent of these laws in the US and has poured millions of dollars into their creation.
This isn’t about protecting kids. It’s about adding an additional fingerprint companies and governments can use to track and identify you and what you do with your system.
Providing a place to store and read data for minimal, nominal, non-invasive compliance with legislation so that people can protect themselves without harming anyone else
Things I have never said anything about: