Skip to content

musl

Resumen

musl es una librería estándar de C. Todo programa en C depende de ella para reservar memoria, acceder a archivos, manejar cadenas de texto y otras operaciones básicas. La mayoría de las distribuciones Linux usan glibc; musl es una alternativa más ligera, construida en torno a la corrección, la simplicidad y el tamaño reducido.

Neko-Void usa musl donde es viable. Mantiene el sistema ligero y se mantiene fuera del camino.

Por qué musl

Aspectomuslglibc
TamañoPequeñoGrande
DiseñoSimple, predecibleRico en funciones, complejo
Uso de memoriaMenorMayor
CompatibilidadLa mayoría del softwareCasi todo
Enlazado estáticoLimpio, soportadoProblemático

El trade-off es la compatibilidad. Algo de software cerrado y algunos programas antiguos esperan glibc y necesitan workarounds. El resto del ecosistema de software libre corre en musl sin problema.

Cómo saber qué librería usa un sistema

bash
$ ldd /bin/ls | grep -E 'musl|glibc|libc\.so'

Un sistema musl muestra una ruta tipo /lib/ld-musl-x86_64.so.1. Un sistema glibc muestra libc.so.6 y /lib64/ld-linux-x86-64.so.2.

Ejecutar software glibc en un sistema musl

Cuando un programa requiere glibc, hay tres caminos habituales:

  • Flatpak. La opción más limpia. Flatpak empaqueta su propio runtime, así que las aplicaciones glibc corren sin tocar el sistema base. Neko-Void incluye soporte de Flatpak por esto.
  • chroot o contenedor glibc. Para casos más pesados, un chroot de Void glibc o un contenedor Distrobox ofrece un entorno glibc completo.
  • Binarios estáticos. Un build estático no lleva dependencias de librería y corre en cualquier sitio.

No mezcles librerías glibc en un sistema base musl. Es frágil y no está soportado.

Véase también

  • runit — el sistema de init que usa Neko-Void, parte de la misma filosofía ligera.
  • Documentación de Void Linux sobre musl.

Lanzado bajo la Licencia BSD-3-Clause.