@josephholsten @Lulukaros @_bapt_ @chrisoffner3d @vaartis
Similarly, I'd not work on my own #toybox+#musl / #Linux distro if I felt there was a good, minimalist embedded Linux that could do what I want from a single 1440kB 3,5" FDD to boot from…

Feel free to make a clone based off a #BSD if you want to...


Serpent OS
2 weeks ago

OK - as of last night moss supports being built with static #musl libc :O

Note, this is required as be build libsqlite3-sys and co into a single binary to prevent disastrous update scenarios.

Granted, its a "fat" binary (approx 7mb?) but its also fully self contained and has an async runtime, TLS implementation, etc.

TLDR if you have a moss binary you can produce entire Serpent roots + containers. Same magic happening with boulder for bulletproof infra!

One day, It would be a cool idea to experiment with #VoidLinux and make an immutable version of it.

Imagine having #musl #OSTree based immutable distro, that may be interesting.

3 weeks ago

Python libzim 3.3.0 has been released! Based on libzim 9.0.0, it adds Linux Alpine support! #python #binding #alpine #kiwix #zim #musl

@ActionRetro @TritTriton Any way to #SelfHost the stack of #FrogFind?

Cuz I think this would work great and #decentralization would definitely reduce the burden of hosting and allow to further adapt it.

I.e. adding an #OnionService because I'm the kind of #MadLad that shoves vintage systems running #Lynx on OS/1337 (#toybox + #musl / #linux) behind a #OPNsense to provide them with @torproject / #Tor connectivity until I have ported that to #OS1337 as well...

Drew Naylor
3 weeks ago

There needs to be something easier and better than #Python with up-to-date bindings that can support building #Qt stuff with #musl libc. I really don't like using Python and only do because C++ (or rather, #CMake) is too hard to do new stuff in for me and CXX-Qt won't build with musl (could target a #glibc distro like #DanctNix #Arch, but then I'd be ignoring the entire set of devices supported by #postmarketOS). Why can't I just use #VB transpiled to #Rust?

#programming #cplusplus #CXXQt #CXX

GCC - GNU Toolchain
1 month ago

The future Musl libc roadmap is for glibc-ABI-compat handling to be shifted out of #Musl libc to the gcompat package. Musl Libc could do some sort of shims (and which musl ldso would assist it in shimming by letting a delegated
library interpose on modules that have dep) #clangbuiltlinux

@HopelessDemigod The current goal is to get a 0.1 release that fits on a 1.400kB 3,5" FDD and includes #Linux (ideally 6.6.6 for maximum meme factor) #Toybox and #dbclient (#Dropbear #SSH as SSH-Client only) compiled against #musl-cross and bootable on any #i486 and up.


@HopelessDemigod basically OS/1337 is a minimalist #Linux distro using #toybox + #musl for userspace and aiming to be an option for an extra lightweight #TUI / #CLI - #Desktop or basis for #embedded systems aka. #InternetOfShit devices:


The OS/1337 logotype which is written in Ubuntu Mono, a monospaced sans-serif typeface.

It's written as _OS/1337 where the _OS/ is in Amber (#FF8000) and the 1337 is green (#00FF00) coloured, both on black background.

It's meant to mimic classic terminal and monochrome screens.
1 month ago
Does anyone, who is into #alpine and #musl, know why valgrind shows
> still reachable: 73,728 bytes in 1 blocks
(When running a simple hello world c++ project)

From what I can tell the musl c++ library leaks memory (as does glibc) but valgrind doesn't properly ignore it (which it does for glibc)).
However, all my attempts to get valgrind to ignore it failed this far... :blobcatsadreach:
1 month ago

I was really excited to try the #Rust crate #iced, but it seems that both the linker and one of the dependency crates are unable to find the dependency libraries.

After debugging for a little over a day, it seems that the issue has something to do with #musl and how it works with libraries?

Sadly, this means that I cannot try out iced as I wished...

Edit: I just created a Void Linux glibc podman container, built the app in that, ran it, and it worked!

#GUI #Programming #Rustlang

@xyzdims well, #musl isn't made by me, I just use the musl-cross packages that Landley uses to build #toybox with...

So for all intents and purposes OS/1337 is just a #distro, repackaging the existing stuff...



Whilst a bit dated I think the talk is still valid...

I really think that #toybox & #musl are good and that's why I chose them for OS/1337:

I want a really #BareBones #Linux distro as an exercise in #minimalism and because I think we should embrace #FrugalComputing and that people should still be able to use a system just with a 1440kB Floppy to boot.

Even if that means they'll only have an #SSH-#Terminal using #Dropbear as #client...


1 month ago

I absolutely love #musl. Absolutely my favorite libc. Very clean and very robust. I especially love running it on #VoidLinux. It just works!

I even got academic software that requires glibc running on it using distrobox!

#Linux #Clang #libc

1 month ago

Trying to use that old project, #actkbd on #AlpineLinux.
It compiles well with #musl, but at runtime fread() complains about invalid argument!! :blobPikaGlare:

@nixCraft what if I told you that I specifically make OS/1337 as a #toybox + #musl / #Linux distro?

Cuz #Glibc sucks!


also: call me weird but I'd rather integrate #SystemD into #OS1337 than using #glibc for OS/1337:
In fact I'd rather statically link #musl with every binary to maximize portability of applications...


@nemo basically my attempt at making a #minimalist #CLI / #TUI-based #toybox + #musl / #Linux distribution...


@parvXtl @case2tv It also doesn't run on OS/1337 since that's an #embedded #linux #distro and thus doesn't even come close to fulfill the installed dependencies for said #GUI application...

Would I love to see them build a #TUI version statically-compiled against #musl that is one binary to just drop in and use?


But I don't expect them to do so no matter if there are 1 or devices running #OS1337...

@joepie91 Don't forget:
- #Mumble for #VoiceChats

- #Linphone as #SIP / #VoIP client

- #gparted and #ddrescue as well as #testdik & #photorec for halding storage and recovering data.

And ofc all the tools I need daily like #SSH (#OpenSSH), #OpenVPN, #WireGuard, #IPsec, #pfSense, #OPNsense, #ipFire, #LUKS/ #dmcrypt and the whole #toolchain needed for OS/1337 like #gcc, #musl, #toybox, #dropbear and so on.


2 months ago

@thegibson Setting up #Debian on #musl #voidlinux to #chroot into for installing #leapmotion software to control my new hand/motion tracker/controller, only for the software to spit out this:

Error: Missing Dependency: glibc

Thought I could cheat the system. Long story short, installed the GLIBC variant of Void on a USB, booted into it, and redid the process of converting and installing (guide coming soon).

Uutils Rules: Yeeting GNU Coreutils from my System

On my first blog post, I explain how I installed uutils on openSUSE Tumbleweed - completely removing gnu coreutils. Everything went surprisingly smoothly!

#Linux #uutils #coreutils #openSUSE @opensuse #musl #blog #OpenSource

I’ve read somewhere a while ago about how GNU was secretive about documentation for some parts of glibc, making it harder for alternatives like #Musl to achieve full intercompatibility. I think I saw this maybe on one of musl’s websites or something, but I can’t seem to find this anymore. Does anyone know where I can find this piece of information again?

@rq yeah, the #Enshittification is the problem.

If #Glibc wasn't a piece of shit that knowingly and willingly bricks #Userspace all the time #Docker would neither have a right to exist nor legitimate reason to be used.

I hope #Linux will migrate to #musl sooner than later...

Just when I feel like I'm ready to throw in the towel with email, I discover a solution that actually sounds sensible:

« #mxclient is not a normal MTA. Rather, it's a minimalist client for sending mail direct to the recipient's MX, or mail exchanger, in contrast to the widespread practice of sending through a "smarthost" or "outgoing mail server".

In combination with sufficient cryptographic measures, this ensures that no one outside the receiving domain's mail system can intercept or alter the contents of the message, making mxclient suitable for:

- Private bi-directional communication between individuals (with personal domains) or organizations that mutually implement this kind of delivery.

- Delivery of sensitive data like account access or password reset tokens without them passing through third party mailer systems.

- Avoiding dragnet surveillance of outgoing mail in otherwise conventional mail setups.

mxclient is not an outgoing mail queue. It delivers mail synchronously, to a single recipient, reporting success, temporary failure, or permanent failure via the exit status (using sysexits.h codes). It can be used as the backend for the separate queuing frontend to yield a full "sendmail" command for use by MUAs or scripts that expect asynchronous delivery.

Ability to send mail directly to the recipient's MX depends on having unblocked outgoing port 25 (many residential and mobile ISPs firewall it) and on not being on one of several "dialup"/residential IP address lists that many sites' mail systems use to block likely spammers. To get around this while still maintaining the security and privacy properties of interfacing directly with the recipient's MX, future versions of mxclient will support performing the actual TCP connection through a (SOCKS5 or ssh -W child process) proxy while keeping the actual TLS endpoint local. »

from Rich Felker, maintainer of #musl

das menschy
3 months ago

Should I install #AlpineLinux on my Laptop with #ArchLinux? Are all the usual programs (like Firefox, Thunderbird/Evolution, Nextcloud clients) compilable with #musl #libc?

Jakub Jirutka
3 months ago

I hacked the latest Oracle Instant Client libraries ( and other crap) and SQL*Plus CLI (the most awful DB client ever), which are only distributed as binaries linked against glibc, to work on #musl libc and #AlpineLinux. It’s available in my Packages: oracle-instantclient-oci, oracle-instantclient-sqplus, oracle-instantclient-dev etc.


Rich Felker
3 months ago

Great example of Fork Considered Harmful just came up on #musl: a program that spawns children via fork+exec spending inordinate time in kernelspace (accounted as minor page faults) slowing down computation.

Hugo Trentesaux ⏚
3 months ago

J'ai joué à essayer de compiler une appli #Flutter pour #PostmarketOS sur #ARMv8 (#Pinephone acheté en #Ğ1), mais entre la version du sdk #Dart, la std #musl, je ne m'en suis pas sorti ><

@ncommander Granted that's not common for #Distros to do so, and my goal with #OS1337 was to make something more practical than #Floppinux which can barely output some text on screen - at least connect to somethng else that is useful.

OFC I'll release it once tested and satisfactory in useability for what I want to achieve with it.

But yeah, there isn't much beyond #musl being shared among those processes, so it's mostly a tradeoff that'll cost storage or RAM in more extensive setups...

espechally since "#Glibc breaking shit" really pisses off folks and #musl being a much slimmer and sleeker alternative to it that doesn't constantly brick code with minor updates...


#Linux 6.4.12 (with networking support!) + #toybox 0.8.10 in 980k using #musl-cross-i686

This is awesome...

Seems like I can fit #dropbear as #SSH client on the 3,5" #1440kB #Floppy as well...

I guess it would've been possible to make #Floppinux for a #720k #Floppy as well... ?

#OS1337 #development

screenshot of a directory listing showing the linux kernel [bzImage] (839kB) + toybox (130kB) just measuring 980kB!

@whitekiba yeah, I do intent on putting those a bit in order and add the .config for the kernel.

If necessary to get that 1440kB FDD target I do consider having only dbclient (dropbear but as SSH client) or just toybox (with wget enabled) to download the latter into a ramdisk.
Or using busybox.

Tho ideally I could use #toybox+#musl since that wpuld make it easier to get cross-compiled, tho again I'm not fixed on either and would consider both.

The idea is to use that sleek baseline to expand.

@beforewisdom @Yehuda @fsf exactly.

As for the #GNUtils like #bash, I do work on getting rid of them as well where I can.

I am currently working on a #minimalist #embedded distro based off #toybox / #Linux + #musl, because #Glibc is a shitty mess that bricks stuff at random in minor version updates for no good reason!

vimproved :gentoo:
3 months ago

It's actually embarrassing that we're nearly 4 months post-release and #rust still hasn't been fixed on #musl 1.2.4.

Rich Felker
3 months ago

Strongly considering trying out a new form of release condition for #musl, that really should have been obvious: rolling a release whenever there's been a bugfix for something reasonably user-facing (vs like silent/"harmless" UB or weird corner cases nobody but me cares about) and there's not anything release-blockingly unstable in main.

(The latter condition could be dropped if there were a "stable branch" of course, but for the most part I don't think it's an issue at present.)

Rich Felker
3 months ago

@foone See the code in #musl for evaluating plural form expressions in gettext translation files. It's extremely small:

Rich Felker
3 months ago

A really common form of the second error, and one just encountered on #musl debugging a buffer overflow mallocng caught, is where T2 is inadvertently T1 * rather than T1.

musl libc
4 months ago

Due to issues with how this instance is run and who is permitted to be here and influence moderation decisions, #musl's social media presence will likely be moving off Fosstodon.

Recommendations for an appropriate instance friendly to hosting project accounts, and with agreeable values, would be welcome!

4 months ago

Can anyone advise on CC=musl-gcc with autoconf? autoconf is trying to check musl-gcc --version, and that's failing. #alpine #musl #glibc #autoconf #gcc

Rich Felker
5 months ago

@tqbf No such UAF primitive in #musl 😎

Rich Felker
5 months ago

@rgacogne Wow, nice to see the research validating real-world instances of the reasons #musl dynamic linker never unloads libraries.

@bitpirate @gamingonlinux and as much as I'd love to see every game getting updated, it's illusional that publishers and devs will invest the time to do so on one-time-purchase titles that are over 2 years old, don't sell any significant numbers or don't get any other revenue to pay for workarounding the shit that #flibc does.

Other #libc's like #musl don't do that.

@lunaa @yura @torvalds I know...

There's a reason Distros like #AlpineLinux, #ChimeraLinux and almost all #embedded systems using #Busybox or #Toybox want to get rid of #glibc if not replace it with something like #uClinux, #musl,or another #libc...

Because glibc bricking stuff with minor updates kills any #CCSS and any non-#FLOSS that can't be recompiled.

And what RMS et. al. may see as intentional, I think is the biggest issie that prevents #Linux from dominating #Desktop|s!

Rich Felker
5 months ago

Just got a bug report in #musl that appears to be this hot garbage. 🤦 Reporter left before identifying the system but it's the only plausible explanation I see for statx failing with EINVAL instead of ENOSYS on old kernel...

Rich Felker
5 months ago

@freemin7 On #musl, a fun manifestation of the bug is assert(1.2==atof("1.2"))

Rich Felker
5 months ago

I love rediscovering places in #musl where someone's brought up a scary corner case that almost surely has wrong behavior and... nope! that was handled right a decade ago!

Why donate to the #musl libc project?

A blog post by the author of the #Zig language

6 months ago

I found a cool #linux #distro the other day called "Oasis Linux" that I wanted to get more people to learn about bc it's intriguing.
It's completely statically built using #musl and various other alternatives to typical tools.
It seems they make efforts to simplify the file system as well, which is nice.
Check it out:

7 months ago

Finally, after 5 months of hard work, I managed to build the tool to create a static #LLVM based toolchain on top of #musl libc and #libcxx with compiler-rt support.
Now I can go back and work on #serene again.

7 months ago

@tobtobxx #nixpkgs has experimental #musl support

here is a discussion to use it by default

you can use dynamic linked packages with e.g.

nix-shell -p pkgsMusl.hello

see also pkgsStatic

#nixos can run from ram with

boot.kernelParams = [ "copytoram=1" ];

(as the installer does)

it would be interesting to see native packages with sandboxing and granular permissions, integrated in the desktop. then nix might be able to make #flatpak obsolete

8 months ago

Alpine Linux als Desktop

Die leichtgewichtige und auf Sicherheit getrimmte Distribution Alpine Linux lässt sich mit wenig Aufwand auch als Desktop-System nutzen. In dieser Anleitung erfährst du Schritt-für-Schritt, was dazu nötig ist.

#Alpine #Busybox #Musl #OpenRC #Linux

Rich Felker
8 months ago

Uhg, sorry this release cycle has taken so long. 😫 Trying to get things together ASAP now for the #musl 2.39 release...

8 months ago

🪤 Why I Will Never Use Alpine Linux Ever Again
「 Usually, you would not notice this difference, because most of the time a single UDP packet (512 bytes) is enough to resolve hostnames... until it isn't enough and your application (running on Kubernetes) that previously worked completely fine for months suddenly starts throwing "Unknown Host" exceptions for one particular (very critical) hostname 」

#Alpine #AlpineLinux #Kubernetes #musl #DNS

Rich Felker
9 months ago

In case anyone's wondering, this has come up again because, if all goes well, #musl is finally going to be getting first-class IDN support! 🥳

Aral Balkan
9 months ago

Sadly, it looks like no one was able to solve the issues around creating a Node.js binary for Musl on arm64, so it looks like Kitten¹ won’t be available on @postmarketOS on mobile phones, etc., in the foreseeable future (unless someone with the necessary knowledge and time can step up right away before this commit is reverted).


#musl #nodeJS #arm64 #arm #kitten #SmallWeb #SmallTech

Aral Balkan
9 months ago

Wonder if anyone has any ideas why the new Alpine Linux musl/ARM64 Node.js build is failing and/or can help fix it.

If we can get this fixed soon-ish (before it’s reverted) it’ll mean – among other things – that Node.js will run on @postmarketOS on phones and other mobile devices.

CC @martijnbraam @alpinelinux

#NodeJS #postmarketOS #musl #alpineLinux #arm #arm64 #helpWanted

Aral Balkan
10 months ago

Imagine Node.js running on a @PINE64 PineBook or PineBook Pro with @postmarketOS… could be very useful for education (not to mention make development more accessible in general).

(If this pull request gets merged, Kitten – – will be able to run on the PinePhone and be used for Small Web development on it.)

#nodeJS #postmarketOS #alpineLinux #arm #musl #JavaScript #SmallWeb #SmallTech #mobile #education

Ariadne Conill 🐰
10 months ago

this particular claim is provably bullshit.

pkgconf, when built with knowledge of the system toolchain, which every distribution does, does absolutely understand that /usr/include is a system include path.

otherwise it would be printing -I/usr/include a gazillion times.

and one of the main people who, has, for whatever reason, decided this is the battle he wants to fight in the year of our lord 2023, is just chilling on #musl with nobody calling him on his fuckery.

Rich Felker
11 months ago

In this case, trying to compile against glibc and link against #musl. 🤦 And claiming musl is broken when it doesn't work.

Rich Felker
1 year ago

This is classic systemd acting like they have editorial control over libc interfaces. Why over at @musl #musl we don't engage with their demands.

1 year ago


I'm yet another transplant from twitter.

I'm a software developer, mostly using TypeScript, C#, and ObjectScript at my dayjob, though I prefer C at home. I mostly work on personal projects for fun or to scratch an itch, but I've contributed to #musl and #ffmpeg in the past.

I also occasionally dabble in 3d printing.