I kind of wish there was a version of Alpine that was libc based - just for desktop NVIDIA support really.
Alright, alright. Get this.
A #Linux distro using nothing but #Kuroko and #Musl.
Of course me getting Kuroko into Alpine community repos on edge inspired me to do this.
Anything else the user installs is in a different language of course but the main system not including the kernel uses Kuroko… maybe except coreutils if I don’t want to write them into Kuroko.
Is this even possible? Probably not, but I’m willing to find out. I mean Linux with Node.JS exists.
Got some complaints the #musl git server was sometimes giving errors from too much load. Load caused by abusive LLM scrapers hammering cgit. So I added frontend rules that apply a 10 byte/sec rate limit to client IPs hammering >5 requests per 10 sec for the duration of the hammering. Load average has plummeted.
Thought that would probably make me a lot more productive on #musl, musl-cross-make, etc.:
When there's an open issue that needs any sort of testing cycle feedback, scheduling real-time chat with the reporter or patch submitter to go through it until it's resolved.
That's what just finally cleared some backlog on multiple longstanding musl-cross-make failures.
Heads up maintainers: there's a static analysis tool Svace, and perhaps some AI-slop tool built on top of it, producing very wrong analysis. So far #musl has gotten 6 patch submissions based on it and they're all wrong and mostly unmotivated.
In one case it claimed possible null pointer dereference when the code in question was already immediately conditional on the pointer being non-null.
FWIW this is what Samsung uses to find and "fix" bugs in their fork of Android...
Document I was searching for in case anyone is curious:
#musl #vulnerability https://www.openwall.com/lists/musl/2025/02/13/1
I guess #openwrt and #alpine system should be all upgraded now once fixes are available.
So, from my notes:
#voidlinux: symlink a service's name from /etc/sv/ to /var/service to enable a service then sv up & down will become available for that service.
#chimeralinux: dinitctl, kinda like systemctl
#devuan: update-rc.d <service> default to get it on the runlevels, then enable/disable to do fun things. Only do update-rc.d remove when the package is removed from the system.. Gotcha
You want C for the portability, but you always will need assembler too. You just want to keep the assembler to a minimum, to make porting easier.
good news tho: #mimalloc is Significantly faster than the stock #musl allocator for #Rust, much like a recent blog post indicated
it just ran through updating 4k calendars, each probably requiring 100s of requests in a matter of TWENTY seconds
that's crazy, never had such a big "swap out a dependency and gain efficiency" type thing
@krishean that's not how #systemd works.
SystemD was created because #SysVinit was shit and noone fixed it or made something better.
#Wayland is the future as #Xorg is being #EoL'd.
For the shitty #GlibC we have alternatives like #bionic and espechally #musl!
@simontatham Pardon my straying from the joke, but FYI: #musl libc has a super compact representation for finding the rule for case mapping for a particular character. Under 5k for tables plus code. We don't have the car emoji mapping tho.
#musl mallocng just caught an interesting type of buffer overflow in mc: decrement of offset past start of buffer and overwrite of byte below allocated memory with '\0'.