You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -88,7 +89,7 @@ What other software a Linux distribution uses varies markedly between distributi
88
89
*[The Unix shell](https://en.wikipedia.org/wiki/Unix_shell). This serves as a crucial part of the systems command-line interface. [Bash](https://en.wikipedia.org/wiki/Bash_(Unix_shell)) is the most common Unix shell on Linux and is developed as part of the GNU Project. [Zsh](https://en.wikipedia.org/wiki/Z_shell) is a popular alternative, although it is not a popular default shell for Linux distributions and is usually manually installed by users that want a shell with advanced features. [tcsh](https://en.wikipedia.org/wiki/Tcsh) and [sh](https://en.wikipedia.org/wiki/Almquist_shell) are less popular Unix shells that can be installed on Linux.
89
90
*[Unix commands, or userland utilities](https://en.wikipedia.org/wiki/List_of_POSIX_commands). These are used to perform common command-line tasks such as copying files, moving files, manipulating strings, producing checksums, determining the current directory, etc. Most Linux distributions use the [GNU coreutils](https://en.wikipedia.org/wiki/GNU_Core_Utilities) package to provide these commands. [BusyBox](https://en.wikipedia.org/wiki/BusyBox) also provides many of these commands. Other Unix and Unix-like systems such as [FreeBSD](https://en.wikipedia.org/wiki/FreeBSD), [NetBSD](https://en.wikipedia.org/wiki/NetBSD), [OpenBSD](https://en.wikipedia.org/wiki/OpenBSD) and [OpenIndiana](https://en.wikipedia.org/wiki/OpenIndiana) provide their own versions of these commands. I know that at least FreeBSD's Unix commands have been ported to Linux.
90
91
*[util-linux](https://en.wikipedia.org/wiki/Util-linux). It is provided by the Linux Kernel Organization, like the kernel itself. util-linux provides some more commands on most Linux distributions such as `chsh` for changing the default Unix shell, `dmesg` for checking the status of kernel modules and `fsck` for checking and fixing file systems.
91
-
*[Package manager](https://en.wikipedia.org/wiki/Package_manager). This provides a means of installing, removing and updating software on one's system. There are several different package managers, including, but not limited to:
92
+
*[Package manager](https://en.wikipedia.org/wiki/Package_manager). This provides a means of installing, removing and updating software on one's system. In this section, I am going to limit myself to command-line package managers, although many of these command-line package managers have graphical front-ends that utilize these command-line package managers in the background. Examples include [GNOME Software](https://en.wikipedia.org/wiki/GNOME_Software) and [Discover](https://apps.kde.org/discover/) which can be front-ends to a range of different command-line package managers thanks to [PackageKit](https://en.wikipedia.org/wiki/PackageKit). Some distributions, such as Bodhi Linux, also use browser-based app stores. There are several different command-line package managers, including, but not limited to:
92
93
-[dpkg](https://en.wikipedia.org/wiki/Dpkg) and its frontend [Advanced Packaging Tool](https://en.wikipedia.org/wiki/APT_(software)) (APT).
-[RPM](https://en.wikipedia.org/wiki/RPM_Package_Manager) and its frontends [APT-RPM](https://en.wikipedia.org/wiki/APT-RPM), [Dandified YUM](https://en.wikipedia.org/wiki/Dandified_YUM) (DNF), [urpmi](https://en.wikipedia.org/wiki/Urpmi), [YUM](https://en.wikipedia.org/wiki/Yum_(software)) and [ZYpp](https://en.wikipedia.org/wiki/ZYpp).
@@ -101,14 +102,17 @@ As many core components of most Linux distributions are created as part of the G
101
102
## Linux graphical user interface
102
103
Most desktop Linux installations have a [graphical user interface](https://en.wikipedia.org/wiki/Graphical_user_interface) (GUI) too. A sufficiently complete Linux GUI that implements the desktop metaphor is often called a [desktop environment](https://en.wikipedia.org/wiki/Desktop_environment). Components of Linux GUIs include:
103
104
*[Graphics libraries](https://en.wikipedia.org/wiki/Graphics_library), such as [Mesa](https://en.wikipedia.org/wiki/Mesa_(computer_graphics)). These provide optimized functions for other GUI components.
104
-
*[Display server communication protocol](https://en.wikipedia.org/wiki/Windowing_system#Display_server_communications_protocols), such as [X.Org Server](https://en.wikipedia.org/wiki/X.Org_Server), [Wayland](https://en.wikipedia.org/wiki/Wayland_(protocol)) and [Mir](https://en.wikipedia.org/wiki/Mir_(software)). X.Org Server has been the dominant protocol on Linux and other Unix/Unix-like systems since the 1980s, but is in the process of being replaced by Wayland. Mir was originally developed with the intention of it replacing X.Org Server on the desktop, but it now seems to be largely developed for use in the Internet of Things.
105
+
*[Display server communication protocol](https://en.wikipedia.org/wiki/Windowing_system#Display_server_communications_protocols), such as [X.Org Server](https://en.wikipedia.org/wiki/X.Org_Server), [Wayland](https://en.wikipedia.org/wiki/Wayland_(protocol)) and [Mir](https://en.wikipedia.org/wiki/Mir_(software)). X.Org Server has been the dominant protocol on Linux and many other Unix/Unix-like systems since the 1980s, but is in the process of being replaced by Wayland. Mir was originally developed with the intention of it replacing X.Org Server on the desktop, but it now seems to be largely developed for use in the Internet of Things.
105
106
*[Widget toolkit](https://en.wikipedia.org/wiki/Widget_toolkit) to build GUIs for programs. Examples include [Enlightenment Foundation Libraries](https://en.wikipedia.org/wiki/Enlightenment_Foundation_Libraries) (EFL), [GTK](https://en.wikipedia.org/wiki/GTK), [Qt](https://en.wikipedia.org/wiki/Qt_(software)), [Tk](https://en.wikipedia.org/wiki/Tk_(software)), etc.
106
107
*[X window manager](https://en.wikipedia.org/wiki/Window_manager) (for X.Org Server)/[Wayland compositor](https://en.wikipedia.org/wiki/Wayland_compositor). This manages the windows for the GUI. Examples include [Mutter](https://en.wikipedia.org/wiki/Mutter_(software)), [KWin](https://en.wikipedia.org/wiki/KWin), [Enlightenment](https://en.wikipedia.org/wiki/Enlightenment_(window_manager)), [i3](https://en.wikipedia.org/wiki/I3_(window_manager)), [Sway](https://en.wikipedia.org/wiki/Sway_(window_manager)) and [Muffin](https://en.wikipedia.org/wiki/Muffin_(software)).
107
108
*[Graphical shell](https://en.wikipedia.org/wiki/Shell_(computing)#Graphical_shells), which provides menus, panels, docks, taskbars, system notifications, desktop icons, wallpaper management, application launchers, etc. Examples include the [GNOME Shell](https://en.wikipedia.org/wiki/GNOME_Shell), [Unity](https://en.wikipedia.org/wiki/Unity_(user_interface)) and that of [KDE Plasma](https://en.wikipedia.org/wiki/KDE_Plasma).
108
109
*[Graphical login manager](https://en.wikipedia.org/wiki/X_display_manager) (also known as a display manager), such as [GNOME Display Manager](https://en.wikipedia.org/wiki/GNOME_Display_Manager) (GDM), [LightDM](https://en.wikipedia.org/wiki/LightDM) and [Simple Desktop Display Manager](https://en.wikipedia.org/wiki/Simple_Desktop_Display_Manager) (SDDM).
109
110
110
111
Complete desktop environments include [GNOME](https://en.wikipedia.org/wiki/GNOME) (originally part of the GNU Project), KDE Plasma (versions [4](https://en.wikipedia.org/wiki/KDE_Plasma_4), [5](https://en.wikipedia.org/wiki/KDE_Plasma_5) and [6](https://en.wikipedia.org/wiki/KDE_Plasma_6)), [Deepin Desktop Environment](https://en.wikipedia.org/wiki/Deepin#Deepin_Desktop_Environment), [Cinnamon](https://en.wikipedia.org/wiki/Cinnamon_(desktop_environment)), [Budgie](https://en.wikipedia.org/wiki/Budgie_(desktop_environment)), [LXDE](https://en.wikipedia.org/wiki/LXDE), [MATE](https://en.wikipedia.org/wiki/MATE_(desktop_environment)), [LXQt](https://en.wikipedia.org/wiki/LXQt), [Trinity](https://en.wikipedia.org/wiki/Trinity_Desktop_Environment), [UKUI](https://en.wikipedia.org/wiki/UKUI), [Lumina](https://en.wikipedia.org/wiki/Lumina_(desktop_environment)) and [COSMIC](https://en.wikipedia.org/wiki/COSMIC_(desktop_environment)).
111
112
113
+
## Installer
114
+
Many Linux distributions have automated installers available, although some like Chimera Linux, Exherbo, Gentoo Linux and Linux From Scratch do not. Linux distribution installers range from installers accessed via the command line such as the installers of Alpine Linux, Arch Linux and Void to graphical installers of Anaconda (mostly used by Fedora and derivatives thereof), Calamares (an installer intended to be distribution-agnostic and used by many Arch derivatives like EndeavourOS and Manjaro, along with KDE Neon, NixOS, OpenMamba GNU/Linux and OpenMandriva Lx, etc.), Debian's installer, Ubiquity (used by Ubuntu and its derivatives) and YaST (used by openSUSE).
115
+
112
116
## Release model
113
117
Another difference between Linux distributions is their release model. Release models come in three different categories: fixed, rolling and semi-rolling.
0 commit comments