Masthash

#MUSL

lxsameer
3 weeks 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.

1 month ago

@tobtobxx #nixpkgs has experimental #musl support

https://github.com/NixOS/rfcs/blob/master/rfcs/0023-musl-libc.md

here is a discussion to use it by default

https://github.com/NixOS/nixpkgs/issues/90147

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

GNU/Linux.ch
2 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

https://gnulinux.ch/alpine-linux-als-desktop

Rich Felker
2 months ago

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

jbz :catjam:
2 months ago

🪤 Why I Will Never Use Alpine Linux Ever Again
@martinheinz
「 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

https://martinheinz.dev/blog/92

Rich Felker
3 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
3 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).

https://github.com/nodejs/unofficial-builds/pull/59#issuecomment-1451256522

¹ https://codeberg.org/kitten/app

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

Rich Felker
3 months ago
Rich Felker
3 months ago

OK, back to some #musl stuff: it's always interesting to me how some folks' reaction to it revealing a bug in calling code has been "can you make it stop doing that?" rather than being thankful and fixing the bug in the calling code. 🙃

Aral Balkan
3 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.

https://github.com/nodejs/unofficial-builds/pull/59#issuecomment-1436328696

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

Rich Felker
4 months ago

With pending bugs/patches mostly done (push coming soon), working up slowly towards a #musl 1.2.4 release now! Gigantic WHATSNEW summary in draft.

testssl.sh :verified:
4 months ago

If you're using #docker images for #testssl.sh you should do a "git pull".

#musl libc seems to have performance problems wrt #glibc .

Thanks to polarathene (https://github.com/drwetter/testssl.sh/issues/2299)

Aral Balkan
4 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).

https://github.com/nodejs/unofficial-builds/pull/59

(If this pull request gets merged, Kitten – https://codeberg.org/kitten/app – 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

Rich Felker
4 months ago

@jbzfn AIUI @alpinelinux's Firefox package disables malloc replacement and is thus using #musl's mallocng, one of the most hardened allocators available.

Rich Felker
4 months ago

Happy ending to a disturbing bug report with #musl: application was calling free() from a signal handler, introducing a sort of allocator state corruption I hadn't seen before. https://www.openwall.com/lists/musl/2023/01/27/1

Rich Felker
4 months ago

Yay, #musl mallocng just found yet another buffer overflow, this time in iwd. Which apparently nobody runs under valgrind... 🤦

PureTryOut
4 months ago

@snaums @postmarketOS It's possible, but highly recommended against. You're fundamentally changing what #AlpineLinux and #postmarketOS are. I'd recommend using a different distro instead.

What problems do you have with #Musl?

Rich Felker
5 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
5 months ago

I know #musl has a lot of places where code is doing stuff to satisfy hidden constraints/requirements, like inability to allocate resources (at all or after a point of an operation having caused irreversible side effects) and I think it would be nice for these to be more obvious to readers.

Rich Felker
5 months ago

Ok, idea for a fun game I'm going to play/host when I'm back home: folks reading #musl point out places where it's not obvious *why* something is being done the way it is, and I get to either add comments, clarify/simplify the code, or cite an existing explanation somewhere in the repo.

Aaron Ash
5 months ago

@nova I was curious what #guix could do, 24MB gnu-hello image with gzip or 20MB with zstd. Bigger than I'd hoped. That's still with the default glibc, wonder if guix or #nix can build docker images with #musl.

Rich Felker
5 months ago

New round of test case failure reports against #musl fnmatch and they're all from systemd-originating tests asserting wrong behavior from glibc and undefined behavior matching glibc. 😂

Rich Felker
5 months ago

New WONTFIX hall of shame entry courtesy of #musl folks: https://bugs.openldap.org/show_bug.cgi?id=8988

Thomas Weitzel
5 months ago

I'm running Ubuntu servers with LTS versions, from 16.04 to 22.04. My development system runs on the latest version, so building #Rust executables for x86_64-unknown-linux-gnu will not run on older versions due to the GLIBC dependency.

Instead of building the executable in a #Docker container with the same OS version as the target system, I opted for the #MUSL target instead. It adds a little overhead, but the whole process is much simpler.

What would you do? What do you think is better? Why?

nmeum
5 months ago

Happy to report that the entirety of our #AlpineLinux gccgo compatibility patchset for #musl libc has now been integrated upstream. If you are using Go on a musl-based Linux distribution, consider bootstrapping it using gccgo: https://github.com/golang/go/issues/51280#issuecomment-1362855803

Is it still "#GNU / #Linux" if you replaced glibc with #musl, GCC with #clang, and a bunch of other tools with non-GNU alternatives like libarchive? Or is it "musl/LLVM/FreeBSD/.../Linux" then?

#Gentoo

Rich Felker
6 months 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.

Daniel Isaksen
6 months ago

@rwlowry Mostly because there are no simple, fast, no-bullshit options that vaguely resemble #RHEL.

It's something I've really missed at work where certain colleagues insist on staying at least somewhat compatible with RHEL. Besides, I like how #DNF handles transactions and history even if the spec files are written in a terrible DSL.

I don't particularly condone VMware's business practices but #tdnf is one of their simpler, more open projects.

#AlpineLinux and #musl also, in my opinion, can focus a bit too much on correctness to the point where it impacts usability, compability and freedom of choice.

Jaro
7 months ago
Installed Gentoo w/ musl and OpenRC. Blazingly fast, nothing works out of the box without some tweaking. Some Alpine Linux patches applied, and I got flatpak installed. Helped a lot, although I am still more interested in seeing apps run natively instead of being sandboxed. #linux #gentoo #musl #openrc #flatpak :ablobcool:
Rich Felker
7 months ago

@rnd Sorry! #musl's locale support has very little user feedback and known problems that I'd love to rework, but feel stuck without more engagement from folks who will want to use the results (and who are also willing to wade a little into technical details).

lazy cat ☮️
7 months ago

Today I tried to upgrade my #Pleroma instance up to the version 2.4.4. For some time past I use OTP version bundled with all libraries. But the crucial point is #Alpine #Linux running in #LXC container. Official guide recommends to use v3.10, but I stick with 3.11 since it’s the last version with some additional erlang packages which are absent in more recent versions.

So, as usual, the upgrade went smoothly with pleroma_ctl update --branch develop. But after pleroma_ctl migrate I’ve got very strange result:

Error relocating /var/lib/pleroma/release/erts-10.7.2.18/bin/beam.smp: pthread_getname_np: symbol not found

Well… I checked the binary with ldd and confirmed that it depends on libc.musl-x86_64.so.1. Quick search led me to #musl repo, where I found the particular commit where pthread_getname_np function was added. It turned out that this commit was added 3 months after release 1.2.2 and almost a year before release 1.2.3. Mentioned musl versions were integrated in Alpine versions 3.15 and 3.16 accordingly. So the easiest way was to upgrade my Alpine container to 3.16 and enjoy. But I don’t look for easy ways. Instead I downloaded Pleroma release 2.4.3 archive with erts version 10.7.2.17, unpacked erts directory only, added it to release folder in Pleroma installation and changed in source files all references to erts binary path from 10.7.2.18 to 10.7.2.17. And voilà, my pleroma server works again!

Kees Cook :tux:
7 months ago

The #LinuxKernel has 2 #ELF loaders: one for executables and one for the interpreter (PT_INTERP). The latter is rather simple and expected only the last PT_LOAD to need zero padding. #LLD linking #musl's libc.so started doing this with multiple PT_LOADs...

Hopefully this will fix the bug
@dalias noticed:
https://lore.kernel.org/linux-hardening/20221111061315.gonna.703-kees@kernel.org/

I hope to merge these loaders in the future, but first we need better unit tests.

PureTryOut
10 months ago

@Fu @agx His phone OS is, but there is also #postmarketOS which I wouldn't call GNU (being based on #alpinelinux and #Musl and #Busybox) but also isn't Android.

@kdrummond i wiped out mxlinux for a minimal voidlinux based on musl instead. And made a custom xfce-look to it. I am very pleased. #voidlinux #musl #xfce big fan of the Dracula themes.

TobTobXX
1 year ago

YESSSS, I sucessfully cross-compiled a rust gui application from Archlinux x86_64 to postmarketos aarch64 (pinephone) without emulation and thus quite acceptable performance!

I'll write up the process and publish a blog or sth. for other poor souls soon.

#linuxmobile #rust #crosscompile #musl #postmarketos

Boiling Steam
2 years ago

Linux Standard Library Implementations: X32 can be 10% faster, but musl Libc 40% slower: https://www.youtube.com/watch?v=wq-a8juPFzs #linux #glibc #musl #libc #performance #comparison #standardlibrary #x32

Linux ☑️
2 years ago

Adélie Linux calls for assistance!

The people behind this promising distro are looking to expand their community of users & developers.

Adélie Linux is based on musl runtime library focusing on reliability, security, compatibility, portability, usability.

They even aim eventually to operate smoothly without any GNU components, utilizing Busybox or similar.

Please contact them if interested.

==> https://blog.adelielinux.org/2021/08/31/power-to-the-people
_
#Adelie #Linux #musl #libre #help #testing #developers #community #GNU

@tobtobxx @linmob Yepp, I gave up on getting the current version of #anki running on #postmarketos #musl. I changed to 2.1.15 which was the last version with a build system that I could at least remotely comprehend: https://pkgs.alpinelinux.org/package/edge/testing/x86/anki

Hyperreal Gopher :debian:
2 years ago

Is there any advantage to using something like this (for static builds) https://github.com/utdemir/ghc-musl over just installing all the haskell depends via APK in alpine the normal way and building from there? like how fossa/haskell-static-alpine does it. I don't understand what the advantage of musl would be in this context.

#haskell #musl

Hyperreal Gopher :debian:
2 years ago

Is #Stack and something like #AppImage the only simple way to produce releases/binaries in #haskell? I spent the last few days trying to get #bazel, #musl, and #nix to play nice to produce static binaries, but no such luck.

Hyperreal Gopher :debian:
2 years ago

Here I was trying to get static builds with #musl, #bazel, and #nix working, when it turned out I can't even build the demo included. I should've tested the demo first before diving in.

https://github.com/lunaris/minirepo