jokeyrhyme

u/jokeyrhyme@lemmy.ml
60 posts · 112 comments

Recent posts

Recent comments

on *Permanently Deleted* · c/linux · 7 pts · 135d

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 docker and flatpak --system save 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 permissions

you could also point EDITOR at a custom script that mounts the target file into a container running your desired editor

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

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.

  • redis -> valkey
  • terraform -> opentofu
  • vault -> openbao

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

on Linux and RISC-V by 2030 · c/linux · 4 pts · 155d

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

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

on gotcha when changing hostname · c/linux · 3 pts · 188d

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