26

On the GNU Project webpage, there's a subsection called "All GNU packages" which lists the various software in the GNU project.

Are there any GNU distributions which use only these packages -- i.e. a "pure" GNU operating system that runs on only GNU packages?

I'm not particularly interested on whether this would be a practical operating system, just if it's theoretically possible to run GNU Hurd with purely the GNU packages. If not, what kind of software must still be implemented to achieve this goal (i.e. what's missing)?

If GNU Hurd is the limiting factor, than if an exception is made for the kernel, would a pure GNU OS be possible using the Linux kernel?

6
  • 6
    Since you can boot a Linux (or Hurd) system that runs only bash, then in any case, it's possible. Sep 16, 2013 at 14:06
  • @StephaneChazelas That should answer my question if it's possible. I wonder if anyone has set up a distribution like that as a proof of concept. Sep 16, 2013 at 14:24
  • 3
    Update: There is GNU Guix Operating System Developed by GNU project!
    – Pandya
    Jun 2, 2015 at 5:39
  • 1
  • 1
    "Just GNU" is misleading at best. The GNU packages proper (from FSF) are vital, but far from self-sufficient. Not even the documentation format texinfo is GNU proper (it uses TeX).
    – vonbrand
    Sep 9, 2019 at 11:09

3 Answers 3

23

The explicit goal of the GNU project is to provide a complete open source/libre/free operating system.

Are there any GNU distributions which use only these packages -- i.e. a "pure" GNU operating system that runs on only GNU packages?

There is a reference here to an official sounding GNU binary distro based on Hurd which "consists of GNU Mach, the Hurd, the C library and many applications". It may or may not be currently maintained, however, as I couldn't find any other online references to it. But it does sound like it fits your criteria.

I'm not particularly interested on whether this would be a practical operating system, just if it's theoretically possible to run GNU Hurd with purely the GNU packages.

The answer to the previous question implies an obvious answer WRT Hurd. Of course, it might help to define more precisely what would count as a reasonably complete "operating system". I'll provide two definitions:

  1. A collection of software sufficient to boot up to a shell prompt.

  2. A system which fulfills POSIX criteria. This is essentially a stricter version of #1, since the highest level mandatory entity in a POSIX system would be the shell.

This is a little arbitrary, since an operating system designed to fulfill some special purpose might not need a shell at all. However, in that case it would become a more specific question about the nature of the "special purpose".

In any case, the answer is yes, although GNU's implementation of some things may not be 100% perfectly POSIX compliant (and there are a handful of required utilities, such as crontab, which GNU doesn't provide). Here are the potential components:

  • Kernel (Hurd)
  • C library (glibc)
  • Essential utilities (GNU core-utils, etc.)
  • Shell (bash, which is a GNU project)

I did not include a bootloader, since that is not part of the OS -- but in any case grub is also a GNU project.

3
  • 1
    Debian Hurd also meets the criteria.
    – jordanm
    Sep 16, 2013 at 14:40
  • 6
    @jordanm : I doubt it, since the base install probably includes, e.g., vixie cron, which is non-GNU software. This punches a bit of a hole in my thesis re. POSIX tho, since crontab is a required utility.
    – goldilocks
    Sep 16, 2013 at 14:54
  • 3
    @goldilocks: In Debian, cron is not priority required or essential, so you can have a Debian system without it.
    – jordanm
    Sep 16, 2013 at 15:10
9

If GNU Hurd is the limiting factor, than if an exception is made for the kernel, would a pure GNU OS be possible using the Linux kernel?

Yes, Guix System is a complete operating system distribution, developed by the GNU Project it self! and is (obviosuly) endorsed by GNU as an entirely free operating system.

Apart from GNU Userland and GNU's GNOME Desktop Environment which all GNU/Linux distros have, following are some key GNUish features of the Guix System:

3
  • 1
    More than half of its packages are non-GNU. Jun 7, 2021 at 19:44
  • @ThomasDickey Oh! Should I rollback an edit?
    – Pandya
    Jun 8, 2021 at 1:12
  • Guix isn't a valid example of what OP asked for, since (without some detailed analysis), it's not possible to assume that a user would consider it complete enough for their use if limited to GNU packages (which account for perhaps a thousand out of the 17 thousand cited in the website). Jun 8, 2021 at 7:54
2

Take a look at the GNU website. They maintain a list of GNU/Linux distros there:

These are still running the Linux kernel but could be adapted to only run with the GNU Hurd kernel instead.

Also there is this link which covers how to run say Debian using the Hurd kernel:

That same page also has links to a few other distros such as Arch + Hurd too.

4
  • I'm sorry, my question is probably a bit misleading. I'm curious if it's theoretically possible to run an operating system exclusively on GNU packages (i.e. no X11, etc). Sep 16, 2013 at 14:23
  • 4
    Those are all linux based. They are distros which comply with GNU's philosophy about free software, not necessarily distros which use only GNU software.
    – goldilocks
    Sep 16, 2013 at 14:24
  • Take a look at the other answer. To answer your question, though, yes you can run an entire OS with just GNU.
    – slm
    Sep 16, 2013 at 14:24
  • @goldilocks - thanks for clarifying.
    – slm
    Sep 16, 2013 at 14:27

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.