iglunix/README.md
Firas Khalil Khana 32d66a7f56
Fix typo (#6)
2021-12-09 20:31:48 +00:00

3.2 KiB

Iglunix

Unix like software distribution with no GNU components

All build scripts are 0BSD Licensed.

To create an ISO from a non-iglunix OS please see https://github.com/iglunix/iglunix-autobuild

Is this GNU/Linux

No, GNU currently contributes roughly 10 MiB of code in the base system whilst, LLVM and Linux both contribute approximately 1 GiB each. Instead we suggest that one should refer to Igluinx running on the Linux kernel as LLVM/Musl/Linux. LLVM and Linux because they are the two largest packages and make up the majority of the base system, and Musl to be explicit about the C library, target triple and to differentiate it from any system using LLVM's libc (which will may very well likely use in the future).

Discord

Join us at link

Status of Other Kernels

FreeBSD

FreeBSD has solid upstream LLVM support which would make it ideal for iglunix. However, I haven't been successful at building the required parts of the base system.

OpenBSD

Iglunix has been tested to work on OpenBSD. (don't forget to symlink libc.so otherwise the toolchain breaks).

Darwin

I have found no easy way of building libc on Darwin platforms as on yet. Because of this I haven't got far at all porting Iglunix to Darwin based systems such as MacOS and PureDarwin.

Web Browsers

Iglunix currently has qtwebengine running (with sandboxing broken on at least aarch64). This does require 3 extra GNU dependencies on top of GNU Make: gperf, gm4, bison. This also requires dbus however it is only needed at build time and for this reason we are working on a stub implementation.

Replacements LUT

standard tool iglunix tool use
glibc musl libc
glibc libexecinfo Backtrace functions
libstdc++ libc++ C++ standard library
libgcc libunwind Stack unwinding
libgcc compiler-rt Compiler builtins
bison byacc POSIX yacc
coreutils toybox+busybox POSIX utilities
gcc clang C++ compiler
zlib zlib-ng Compression library
gmake bmake, others POSIX Make implementation
ninja samurai Ninja build implementation
GNU M4 OpenBSD M4 POSIX M4 implementation
ncurses netbsd-curses X/Open Curses implementation
bash mksh Shell
Linux PAM Open PAM Pluggable Authentication Modules
sudo doas Privilege escalation
pkg-config pkgconf Package configuration tool
e2fsprogs make_ext4fs Make an ext4 file system

TODO (lots more TODO items in the Discord)

  • LLVM (Work out how to split packages)
  • QEMU for multiarch (need lots of work on glibr to get this to build)