Hi all - I am learning about Linux and want to see if my understanding is correct on this - the list of major parts of any distro:

  1. the Linux Kernel
  2. GRUB or another bootloader
  3. one or more file systems (gotta work with files somehow, right?)
  4. one or more Shells (the terminal - bash, zsh, etc…)
  5. a Desktop Environment (the GUI, if included, like KDE or Gnome - does this include X11 or Wayland or are those separate from the DE?)
  6. a bunch of Default applications and daemons (is this where systemd fits int? I know about the GNU tools, SAMBA, CUPS, etc…)
  7. a Package Manager (apt, pacman, etc…)

Am I forgetting anything at this 50,000 foot level? I know there are lots of other things we can add, but what are the most important things that ALL Linux distributions include?

Thanks!

  • faethon@lemmy.world
    link
    fedilink
    arrow-up
    20
    ·
    edit-2
    11 months ago

    I think you would also need an initial run process such as systemd or the sysV runlevels.

    • lemmyvore@feddit.nl
      link
      fedilink
      English
      arrow-up
      5
      ·
      11 months ago

      Fun fact, the init process can be anything, even /bin/bash or a shell script. But if it ends or dies so does the system, and of course you want extra features like multiuser capability, better interface etc. So it’s typically a more complex system like you said, that starts a bunch of other things. But you can still see the init process with PID 1 there in the process list. 😊

      • KISSmyOS@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        11 months ago

        Fun fact: On Slackware, the init process is just a shell script (which launches other shell scripts).