2016-01-14 3 views
2

Я искал дистрибутив Linux, который не для встроенных систем, и не использует многие утилиты GNU, найденные во многих популярных дистрибутивах. Я хочу разработать дистрибутив linux (pet project), который использует musl-libc, bsd userland и Plan 9 из пользовательского пространства. Прежде чем я начну и, возможно, потрачу свободное время на выполнение невозможного, целесообразно ли/использовать пользовательское пространство BSD в качестве замены GNU coreutils? Если нет, то какая альтернатива?Возможно ли запустить пользовательское пространство BSD в качестве замены GNU coreutils ядром linux?

ответ

1

Ваша цель, похоже, очень близка к проекту stali (единственное отличие - требование пользователя BSD).

http://sta.li/

Я не знаю много о сцене этого проекта, но вы можете получить некоторую помощь в проекте в список рассылки.

Насколько я знаю, инструменты BSD используют множество прямых системных вызовов и небольшое использование POSIX API. Я не верю, что ребята из bsd написали код, используя множество #ifdefs, чтобы получить полностью совместимые программы (но я могу ошибаться) ...

Сайт suckless портировал plan9 userland в unix (на основе plan9port тоже), он называется 9base (и доступен для репозитория archlinux для установки).

Я думаю, у вас будет такая же проблема, с которой я раньше пытался собрать подобный дистрибутив: Слишком много усилий, чтобы избавиться от GNU ... Базовая система проста, но для чего-то полезного вам понадобится компилятор C, и тогда у вас нет хороших альтернатив. GCC является gnu и имеет десятки зависимостей gnu, и нормальный freebsd gcc-порт никогда не будет работать на Linux по очевидным причинам.

Моя текущая попытка - помочь завершить порт ken-c (или 9-cc) для Linux.

+0

Что относительно clang? –