

yeah, I think, at least initially, we had many data scientists lacking a little in terms of development practices around code rot and dependency management
aspiring Rustacean, JavaScript jockey, 3D printing addict, use Bluefin Linux, (Apple|Google)-captive, Meta-escapee, parent, husband with a husband, cisgender, he/him


yeah, I think, at least initially, we had many data scientists lacking a little in terms of development practices around code rot and dependency management


hehe, this exact same problem but in Node.js drove me towards Rust, as well 🦀
there are widely-used Rust crates that wrap C/C++ code and there are the …-sys crates that expose bindings for dynamically-linked dependencies, but i’ve never encountered one that needed a specifically-ancient version of GCC


Why do you need gcc to compile a Python program?
this is pretty common in interpreted languages/runtimes like Python, Node.js, Ruby, etc where a dependency is written in C or C++ or Rust or something else when the performance benefit is worth the cost of abandoning the primary language
the amusing/horrifying part is that Node.js actually depends on a Python script for this, so any Node.js application with a C/C++/Rust dependency actually needs Python installed somewhere
e.g. https://github.com/pyca/cryptography is a Python dependency that requires the Rust compiler/toolchain if pip / pipx / uv can’t find a pre-compiled version for your system
To me sounds like either a neglected project or designed to run in a docker image maybe? When was it updated last?
as far as i can tell, the project is alive and well, frequent and recent commits, and all the dependencies involved here are on their latest versions
In such cases its probably the best to run the application in a virtual machine.
and yeah, i know i can fix this with a VM or a Dockerfile and i’ll probably have to
but my point is that Python is kinda’ hot garbage for sharing code that depends on other shared code
it’s a terrific language by itself and sharing code that only depends on the standard library is perfectly fine, but as soon as we share code that depends on other third-party code we introduce inevitable suffering
https://zoo.dev/ is one of the newer ones
and there’s https://microcad.xyz/
yep, the major lobbying force in favour of these laws is Meta/Facebook


sure, but there’s so much community outrage at BSL (and similar) licences, usually because they start as open source and then later rug-pull and relicense community contributions
and this results in there usually being a non-BSL fork of everything that is BSL, or at least a very good (incompatible) alternative
e.g.
but sure, I concede that a clean-room AI-implementation might be valuable depending on the existing licence
I just don’t see this being especially common 🤷


open source licence obligations are almost always triggered upon distribution
and cloud software-as-a-service doesn’t count as distribution (except under AGL and a few rarer less-used licences), because the software never leaves machines owned/operated by the “author”
so, cloud SaaS has been able to consume open source code without contributing anything back for decades already
AI-generated bespoke software might be killing SaaS, but it’ll like never trigger open source obligations either, because it’ll never leave machines owned/operated by the “author”
so these AI-reimplementations of existing open source software are kinda’ pointless
even without going too-CISC it can make sense to have instructions for popular use cases
e.g. ARM has special instructions for optimal numeric operations in JavaScript: https://developer.arm.com/documentation/dui0801/h/A64-Floating-point-Instructions/FJCVTZS
and I thought I’d read something about custom instructions in Apple Silicon to optimise virtualisation (i.e. translation of x86_64 executables) but I can’t find a source for that, maybe that secret sauce is not in the instruction set


rejecting the revert is completely separate from accepting additional age-check / mass-surveillance PRs, you know this and you are being willfully ignorant
I would be very upset and very surprised if hypothetical follow-up PRs were merged into systemd, and I’m betting they will be rejected


it would be very interesting to see that attempt
but Poettering has already said that functionality doesn’t belong in systemd so I’m not sure where anyone would raise such a PR
seems like an Ubuntu/RedHat level distribution design to pull in a brand new age-verification / mass-surveillance component, or maybe modify an existing telemetry component
the birth date field only made it into systemd because it’s user metadata that is consistent with what is already stored there, whereas surveillance does not
for now, at least
again, I’d be very interested to see what happens with follow-up PRs


I’ll be upset when a cloud-connected Linux component prevents the system from working unless the real name and birth date fields have been verified
until then, this is just as inert as the real name field which has been there for decades, and far less useful for surveillance than the real name field which has been there for decades


love to hear some examples of the issues you’ve seen
for years, i’ve always completely wiped the trusted CAs and enrolled my own SecureBoot keys, and only use Linux
there have been vulnerabilities in SecureBoot, sure, but only for folks that don’t wipe the “trust Microsoft” keys away first
tell me how user-enrolled keys cements Microsoft’s ownership over my device please :)


this new anti-systemd sentiment reminds me of anti-TPM and anti-SecureBoot sentiment
having TPMs and SecureBoot on Linux machines has only ever empowered device owners to ensure that the software on their devices has not been tampered with
there’s never been a case where these technologies were used against Linux device owners
likewise, I predict that Linux device owners may find the age field useful for certain opt-in parental controls, but we’ll otherwise look back on this and shrug at the extreme paranoia


this new anti-systemd sentiment reminds me of anti-TPM and anti-SecureBoot sentiment
having TPMs and SecureBoot on Linux machines has only ever empowered device owners to ensure that the software on their devices has not been tampered with
there’s never been a case where these technologies were used against Linux device owners
likewise, I predict that Linux device owners may find the age field useful for certain opt-in parental controls, but we’ll otherwise look back on this and shrug at the extreme paranoia
you don’t have to use or like Ubuntu, but they do have a certified hardware list that might be helpful


meh, it was cryptocurrency and blockchain snake-oil before it was AI snake-oil
it might have been good before cryptocurrency, i sadly can’t remember
i’m guessing a few things somehow consume /etc/hosts mappings without going through nss /shrug
it modifies /etc/hostname for you, but doesn’t seem to touch /etc/hosts
i still prefer hostnamectl, but i’m now unsure of what benefit it offers over editing /etc/hostname directly
no, you might have misunderstood
/etc/hosts is not where the hostname is configured
/etc/hostname for the actual hostname, and a mapping in /etc/hosts pointing it at a 127.x.x.x address
I switch back and forth between bazzite and bluefin quite often
on these and other immutable distributions, /usr is read-only, and the recommended is to use installation methods that write to your HOME (or to /var which is where
dockerandflatpak --systemsave files)i really should muck about with container-based development flows
my current preference is flatpak, then whatever per-language package tooling (e.g. cargo for tools written in Rust, npm with a custom HOME prefix for tools written in Node.js, uv for Python projects, etc) when there’s no flatpak, then homebrew, then rpm-ostree as a last resort
for editing files in /etc my recommendation would be to set the EDITOR environment variable to point at whatever you like, installed however you like, and edit with
sudoedit /etc/fstab, because then your editor is not running with root permissionsyou could also point EDITOR at a custom script that mounts the target file into a container running your desired editor