Можно ли запустить чистый GNU?

23

На веб-странице проекта GNU есть подраздел « Все пакеты GNU », в котором перечислены различные программы в проекте GNU.

Существуют ли какие-либо дистрибутивы GNU, в которых используются только эти пакеты, то есть «чистая» операционная система GNU, которая работает только на пакетах GNU?

Я не особенно заинтересован о том, будет ли это быть практичной операционной системой, только если это теоретически возможно запустить GNU Hurd с чисто в пакетах GNU . Если нет, какое программное обеспечение все еще должно быть реализовано для достижения этой цели (т.е. чего не хватает)?

Если ограничивающим фактором является GNU Hurd , то если для ядра сделано исключение, будет ли возможна чистая ОС GNU с использованием ядра Linux?

Вильгельм Грей
источник
4
Поскольку вы можете загрузить систему Linux (или Hurd), которая работает только bashтогда, в любом случае это возможно.
Стефан Шазелас
@ StephaneChazelas Это должно ответить на мой вопрос, если это возможно. Интересно, настроил ли кто-нибудь такой дистрибутив в качестве доказательства концепции?
Вильгельм Грей,
3
Обновление: есть операционная система GNU Guix, разработанная проектом GNU!
Пандья
Конечно, у вас не будет GUI, потому что X не является проектом GNU
farhangfarhangfar
Несколько связано: Могу ли я запустить Ubuntu на чем-то другом, кроме ядра Linux?
G-Man говорит «Восстановить Монику»

Ответы:

20

Явная цель проекта GNU - предоставить полную операционную систему с открытым исходным кодом / libre / free.

Существуют ли какие-либо дистрибутивы GNU, в которых используются только эти пакеты, то есть «чистая» операционная система GNU, которая работает только на пакетах GNU?

Существует ссылка здесь на официальном звучащей GNU бинарного дистрибутива на основе Hurd , который «состоит из GNU Mach, в Hurd, библиотеки C и многих приложений». Однако он может поддерживаться или не поддерживаться, поскольку я не смог найти никаких других ссылок на него в Интернете. Но это звучит так, как будто соответствует вашим критериям.

Меня не особенно интересует, будет ли это практическая операционная система, просто теоретически возможно ли запустить GNU Hurd только с пакетами GNU.

Ответ на предыдущий вопрос подразумевает очевидный ответ WRT Hurd. Конечно, это может помочь более точно определить, что будет считаться достаточно полной «операционной системой». Я приведу два определения:

  1. Набор программного обеспечения, достаточный для загрузки до приглашения оболочки.

  2. Система, которая соответствует критериям POSIX. По сути, это более строгая версия # 1, поскольку обязательной сущностью самого высокого уровня в системе POSIX будет оболочка.

Это немного произвольно, поскольку операционная система, предназначенная для выполнения каких-то специальных задач, может вообще не нуждаться в оболочке. Однако в этом случае это станет более конкретным вопросом о природе «специального назначения».

В любом случае, ответ - да , хотя реализация некоторых вещей в GNU может быть не на 100% полностью POSIX-совместимой (и есть несколько необходимых утилит, таких как crontab, которые GNU не предоставляет). Вот потенциальные компоненты:

  • Ядро (Херд)
  • Библиотека C (glibc)
  • Основные утилиты (GNU core-utils и т. Д.)
  • Shell (bash, который является проектом GNU)

Я не включил загрузчик, так как это не часть ОС - но в любом случае grubэто также проект GNU.

лютик золотистый
источник
1
Debian Hurd также соответствует критериям.
Иордания
5
@jordanm: Я сомневаюсь в этом, поскольку базовая установка, вероятно, включает, например, vixie cron, которая не является программным обеспечением GNU. Это пробивает дыру в моей диссертации. POSIX tho, так crontabкак это необходимая утилита.
Златовласка
2
@goldilocks: В Debian cronне является приоритетом requiredили essential, поэтому вы можете иметь систему Debian без нее.
Иордания
7

Guix SD , один из дистрибутивов, одобренных GNU , разрабатывается самим проектом GNU! Поставляется с GNU Guix package-manager. Хотя он использует ядро ​​Linux-Libre, он также поддерживает работу с GNU Hurd. Он использует GNU Shepherd init system.

Guix System Distribution (GuixSD) - это расширенный дистрибутив операционной системы GNU, разработанный GNU Project, который уважает свободу пользователей компьютеров.

GuixSD - это дистрибутив операционной системы GNU, основанный на менеджере пакетов GNU Guix. Он использует ядро ​​Linux-libre, и работа над поддержкой Hurd продолжается. Как дистрибутив GNU , он стремится уважать и расширять свободу своих пользователей. Таким образом, он придерживается Руководства по бесплатному распространению системы GNU.

Примечание: он все еще находится в бета-версии и еще не является чистым GNU.

Pandya
источник
3

Взгляните на сайт GNU. Там есть список дистрибутивов GNU / Linux:

Они все еще работают под ядром Linux, но могут быть адаптированы для работы только с ядром GNU Hurd.

Также есть ссылка, которая описывает, как запустить Debian, используя ядро ​​Hurd:

На этой же странице есть ссылки на несколько других дистрибутивов, таких как Arch + Hurd.

SLM
источник
Извините, мой вопрос, вероятно, немного вводит в заблуждение. Мне любопытно, теоретически возможно ли запускать операционную систему исключительно на пакетах GNU (т.е. без X11 и т. Д.).
Вильгельм Грей,
2
Все они основаны на Linux. Это дистрибутивы, которые соответствуют философии GNU о свободном программном обеспечении, не обязательно дистрибутивы, использующие только программное обеспечение GNU.
Златовласка
Посмотрите на другой ответ. Однако, чтобы ответить на ваш вопрос, да, вы можете запустить всю ОС только с GNU.
SLM
@goldilocks - спасибо за разъяснения.
SLM