graphics shell vs graphical shell
From Understanding The Linux Kernel
Unix is a multiprocessing operating system with preemptable processes. Even when
no user is logged in and no application is running, several system processes monitor
the peripheral devices. In particular, several processes listen at the system terminals
waiting for user logins. When a user inputs a login name, the listening process runs a
program that validates the user password. If the user identity is acknowledged, the process creates another process that runs a shell into which commands are entered.
When a graphical display is activated, one process runs the window manager, and
each window on the display is usually run by a separate process. When a user creates a graphics shell, one process runs the graphics windows and a second process
runs the shell into which the user can enter the commands. For each user command,
the shell process creates another process that executes the corresponding program.
What does "graphics shell" mean here?
Is gnome shell a graphics shell?
Is my earlier question Where does "graphical shell" stand in the hierarchy of "windowing system, window manager, desktop environment"?
related to the one here? The question links to https://en.wikipedia.org/wiki/Shell_(computing)#GUI, which says
Graphical shells provide means for manipulating programs based on graphical user interface (GUI), by allowing for operations such as opening, closing, moving and resizing windows, as well as switching focus between windows. Graphical shells may be included with desktop environments or come separately, even as a set of loosely coupled utilities.
Does "the shell" near the end mean a "graphics shell"? Is it a command line shell running in a terminal emulator?
linux shell gui
add a comment |
From Understanding The Linux Kernel
Unix is a multiprocessing operating system with preemptable processes. Even when
no user is logged in and no application is running, several system processes monitor
the peripheral devices. In particular, several processes listen at the system terminals
waiting for user logins. When a user inputs a login name, the listening process runs a
program that validates the user password. If the user identity is acknowledged, the process creates another process that runs a shell into which commands are entered.
When a graphical display is activated, one process runs the window manager, and
each window on the display is usually run by a separate process. When a user creates a graphics shell, one process runs the graphics windows and a second process
runs the shell into which the user can enter the commands. For each user command,
the shell process creates another process that executes the corresponding program.
What does "graphics shell" mean here?
Is gnome shell a graphics shell?
Is my earlier question Where does "graphical shell" stand in the hierarchy of "windowing system, window manager, desktop environment"?
related to the one here? The question links to https://en.wikipedia.org/wiki/Shell_(computing)#GUI, which says
Graphical shells provide means for manipulating programs based on graphical user interface (GUI), by allowing for operations such as opening, closing, moving and resizing windows, as well as switching focus between windows. Graphical shells may be included with desktop environments or come separately, even as a set of loosely coupled utilities.
Does "the shell" near the end mean a "graphics shell"? Is it a command line shell running in a terminal emulator?
linux shell gui
"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
Sep 16 '18 at 16:53
judging by that fragment, that's not a great read. It's clear that in the mind of the author 'graphics shell' means 'xterm running bash', but I guess that's not the answer you're looking for.
– mosvy
Sep 16 '18 at 17:05
2
+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
Sep 16 '18 at 18:29
add a comment |
From Understanding The Linux Kernel
Unix is a multiprocessing operating system with preemptable processes. Even when
no user is logged in and no application is running, several system processes monitor
the peripheral devices. In particular, several processes listen at the system terminals
waiting for user logins. When a user inputs a login name, the listening process runs a
program that validates the user password. If the user identity is acknowledged, the process creates another process that runs a shell into which commands are entered.
When a graphical display is activated, one process runs the window manager, and
each window on the display is usually run by a separate process. When a user creates a graphics shell, one process runs the graphics windows and a second process
runs the shell into which the user can enter the commands. For each user command,
the shell process creates another process that executes the corresponding program.
What does "graphics shell" mean here?
Is gnome shell a graphics shell?
Is my earlier question Where does "graphical shell" stand in the hierarchy of "windowing system, window manager, desktop environment"?
related to the one here? The question links to https://en.wikipedia.org/wiki/Shell_(computing)#GUI, which says
Graphical shells provide means for manipulating programs based on graphical user interface (GUI), by allowing for operations such as opening, closing, moving and resizing windows, as well as switching focus between windows. Graphical shells may be included with desktop environments or come separately, even as a set of loosely coupled utilities.
Does "the shell" near the end mean a "graphics shell"? Is it a command line shell running in a terminal emulator?
linux shell gui
From Understanding The Linux Kernel
Unix is a multiprocessing operating system with preemptable processes. Even when
no user is logged in and no application is running, several system processes monitor
the peripheral devices. In particular, several processes listen at the system terminals
waiting for user logins. When a user inputs a login name, the listening process runs a
program that validates the user password. If the user identity is acknowledged, the process creates another process that runs a shell into which commands are entered.
When a graphical display is activated, one process runs the window manager, and
each window on the display is usually run by a separate process. When a user creates a graphics shell, one process runs the graphics windows and a second process
runs the shell into which the user can enter the commands. For each user command,
the shell process creates another process that executes the corresponding program.
What does "graphics shell" mean here?
Is gnome shell a graphics shell?
Is my earlier question Where does "graphical shell" stand in the hierarchy of "windowing system, window manager, desktop environment"?
related to the one here? The question links to https://en.wikipedia.org/wiki/Shell_(computing)#GUI, which says
Graphical shells provide means for manipulating programs based on graphical user interface (GUI), by allowing for operations such as opening, closing, moving and resizing windows, as well as switching focus between windows. Graphical shells may be included with desktop environments or come separately, even as a set of loosely coupled utilities.
Does "the shell" near the end mean a "graphics shell"? Is it a command line shell running in a terminal emulator?
linux shell gui
linux shell gui
edited Dec 21 '18 at 16:54
asked Sep 16 '18 at 16:12
Tim
26.1k74246455
26.1k74246455
"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
Sep 16 '18 at 16:53
judging by that fragment, that's not a great read. It's clear that in the mind of the author 'graphics shell' means 'xterm running bash', but I guess that's not the answer you're looking for.
– mosvy
Sep 16 '18 at 17:05
2
+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
Sep 16 '18 at 18:29
add a comment |
"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
Sep 16 '18 at 16:53
judging by that fragment, that's not a great read. It's clear that in the mind of the author 'graphics shell' means 'xterm running bash', but I guess that's not the answer you're looking for.
– mosvy
Sep 16 '18 at 17:05
2
+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
Sep 16 '18 at 18:29
"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
Sep 16 '18 at 16:53
"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
Sep 16 '18 at 16:53
judging by that fragment, that's not a great read. It's clear that in the mind of the author 'graphics shell' means 'xterm running bash', but I guess that's not the answer you're looking for.
– mosvy
Sep 16 '18 at 17:05
judging by that fragment, that's not a great read. It's clear that in the mind of the author 'graphics shell' means 'xterm running bash', but I guess that's not the answer you're looking for.
– mosvy
Sep 16 '18 at 17:05
2
2
+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
Sep 16 '18 at 18:29
+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
Sep 16 '18 at 18:29
add a comment |
1 Answer
1
active
oldest
votes
The term graphics shell
can be both a graphical shell or a command line shell running under it. Meaning, the user graphical interface (GUI) or the command line that controls the GUI functions.
First, let's begin with the shell, what "shell" means: the definition of the word "shell" means a program, or even a group of programs working together, it controls the operating system, and the hardware, so the shell is really the software gives you direct control over the computer.
A graphical shell is a shell that presents output as 2D or 3D graphics, as opposed to plain text. In other words, it is the graphical user interface (GUI) that include windows, menus ...etc that the provide more flexible interaction between the user and the system instead of the plain dull-text offered by terminal interface.
However, given that the core of the GUI is built as a shell, then all its functions can be controlled by the command line. For example, the command genome-shell is the graphical shell for the GNOME desktop, this command provides core user interface functions for the GNOME desktop that can be adjusted by a command line. Another example, is nautilus which is the main GUI interface of files explorer in Gnome, this interface is available as a command line called nautilus. This command line has the following functions:
$ nautilus --help
Usage:
nautilus [OPTION...] [URI...]
Help Options:
-h, --help Show help options
--help-all Show all help options
--help-gapplication Show GApplication options
--help-gtk Show GTK+ Options
Application Options:
-c, --check Perform a quick set of self-check tests.
--version Show the version of the program.
-w, --new-window Always open a new window for browsing specified URIs
-n, --no-default-window Only create windows for explicitly specified URIs.
-q, --quit Quit Nautilus.
-s, --select Select specified URI in parent folder.
--display=DISPLAY X display to use
Meaning, you can control the GUI functions through the command line.
In Linux, a graphical shell is usually made of a couple of layers of software. The operating system should provide graphics drivers, and keyboard and mouse drivers. Then on top of the drivers, you have a windowing system like X11 or Wayland. It
creates higher-level wrappers around input (like providing keyboard layouts), to manage the memory that store the 2D images that are transmitted to the display driver, and to provide apps with capabilities to paint to these 2D images in memory.
Above the windowing system you have a window manager, and this is how an application translates keyboard and mouse events into system calls that manipulate the windows that the apps are painting to. This includes tasks such as launching, pausing, hiding, showing, and closing apps, detecting when an app has failed and cleaning up after it.
There are dozens of popular window managers, including Unity, Gnome Shell, Xfwm, OpenBox, i3, Xmonad and many others.
Apps can draw graphics as they see fit, however app developers usually prefer to make use of a common set of drawing tools, so their app looks consistent with all other apps running on the system. These are software libraries that you import into your app. You then call their functions to draw menus, buttons, text input, and display images like PNG and JPG images.
These common drawing tools are called "widget toolkits." The two most popular widget toolkits on Linux are Gtk+ and Qt. You can use both Gtk+ and Qt at the same time, and this is often why different apps on Linux can sometimes have inconsistencies in their look and feel.
These layers are pretty specific to the Linux software ecosystem. Mac OS, Windows, and Android all do things differently, but they all tend to integrate each of these layers into a single monolithic graphical shell software. It simplifies things, but also prevents a lot of customization.
The reason Linux complicates things is because people prefer to have choices, and they enjoy to customize their shells. If you are managing your own Linux distribution, it is a good idea to put some effort into choosing your default set of apps so that they all use the same widget toolkits, and provide a consistent look and feel.
On top of the graphical shell, you can build graphical apps, such as file system browsers, app launchers, notification and system status apps, and system configuration ("control panel") apps. These apps taken collectively make up what we call the "desktop environment."
2
Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
Sep 16 '18 at 18:28
1
@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– user88036
Sep 16 '18 at 18:48
add a comment |
Your Answer
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "106"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f469406%2fgraphics-shell-vs-graphical-shell%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The term graphics shell
can be both a graphical shell or a command line shell running under it. Meaning, the user graphical interface (GUI) or the command line that controls the GUI functions.
First, let's begin with the shell, what "shell" means: the definition of the word "shell" means a program, or even a group of programs working together, it controls the operating system, and the hardware, so the shell is really the software gives you direct control over the computer.
A graphical shell is a shell that presents output as 2D or 3D graphics, as opposed to plain text. In other words, it is the graphical user interface (GUI) that include windows, menus ...etc that the provide more flexible interaction between the user and the system instead of the plain dull-text offered by terminal interface.
However, given that the core of the GUI is built as a shell, then all its functions can be controlled by the command line. For example, the command genome-shell is the graphical shell for the GNOME desktop, this command provides core user interface functions for the GNOME desktop that can be adjusted by a command line. Another example, is nautilus which is the main GUI interface of files explorer in Gnome, this interface is available as a command line called nautilus. This command line has the following functions:
$ nautilus --help
Usage:
nautilus [OPTION...] [URI...]
Help Options:
-h, --help Show help options
--help-all Show all help options
--help-gapplication Show GApplication options
--help-gtk Show GTK+ Options
Application Options:
-c, --check Perform a quick set of self-check tests.
--version Show the version of the program.
-w, --new-window Always open a new window for browsing specified URIs
-n, --no-default-window Only create windows for explicitly specified URIs.
-q, --quit Quit Nautilus.
-s, --select Select specified URI in parent folder.
--display=DISPLAY X display to use
Meaning, you can control the GUI functions through the command line.
In Linux, a graphical shell is usually made of a couple of layers of software. The operating system should provide graphics drivers, and keyboard and mouse drivers. Then on top of the drivers, you have a windowing system like X11 or Wayland. It
creates higher-level wrappers around input (like providing keyboard layouts), to manage the memory that store the 2D images that are transmitted to the display driver, and to provide apps with capabilities to paint to these 2D images in memory.
Above the windowing system you have a window manager, and this is how an application translates keyboard and mouse events into system calls that manipulate the windows that the apps are painting to. This includes tasks such as launching, pausing, hiding, showing, and closing apps, detecting when an app has failed and cleaning up after it.
There are dozens of popular window managers, including Unity, Gnome Shell, Xfwm, OpenBox, i3, Xmonad and many others.
Apps can draw graphics as they see fit, however app developers usually prefer to make use of a common set of drawing tools, so their app looks consistent with all other apps running on the system. These are software libraries that you import into your app. You then call their functions to draw menus, buttons, text input, and display images like PNG and JPG images.
These common drawing tools are called "widget toolkits." The two most popular widget toolkits on Linux are Gtk+ and Qt. You can use both Gtk+ and Qt at the same time, and this is often why different apps on Linux can sometimes have inconsistencies in their look and feel.
These layers are pretty specific to the Linux software ecosystem. Mac OS, Windows, and Android all do things differently, but they all tend to integrate each of these layers into a single monolithic graphical shell software. It simplifies things, but also prevents a lot of customization.
The reason Linux complicates things is because people prefer to have choices, and they enjoy to customize their shells. If you are managing your own Linux distribution, it is a good idea to put some effort into choosing your default set of apps so that they all use the same widget toolkits, and provide a consistent look and feel.
On top of the graphical shell, you can build graphical apps, such as file system browsers, app launchers, notification and system status apps, and system configuration ("control panel") apps. These apps taken collectively make up what we call the "desktop environment."
2
Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
Sep 16 '18 at 18:28
1
@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– user88036
Sep 16 '18 at 18:48
add a comment |
The term graphics shell
can be both a graphical shell or a command line shell running under it. Meaning, the user graphical interface (GUI) or the command line that controls the GUI functions.
First, let's begin with the shell, what "shell" means: the definition of the word "shell" means a program, or even a group of programs working together, it controls the operating system, and the hardware, so the shell is really the software gives you direct control over the computer.
A graphical shell is a shell that presents output as 2D or 3D graphics, as opposed to plain text. In other words, it is the graphical user interface (GUI) that include windows, menus ...etc that the provide more flexible interaction between the user and the system instead of the plain dull-text offered by terminal interface.
However, given that the core of the GUI is built as a shell, then all its functions can be controlled by the command line. For example, the command genome-shell is the graphical shell for the GNOME desktop, this command provides core user interface functions for the GNOME desktop that can be adjusted by a command line. Another example, is nautilus which is the main GUI interface of files explorer in Gnome, this interface is available as a command line called nautilus. This command line has the following functions:
$ nautilus --help
Usage:
nautilus [OPTION...] [URI...]
Help Options:
-h, --help Show help options
--help-all Show all help options
--help-gapplication Show GApplication options
--help-gtk Show GTK+ Options
Application Options:
-c, --check Perform a quick set of self-check tests.
--version Show the version of the program.
-w, --new-window Always open a new window for browsing specified URIs
-n, --no-default-window Only create windows for explicitly specified URIs.
-q, --quit Quit Nautilus.
-s, --select Select specified URI in parent folder.
--display=DISPLAY X display to use
Meaning, you can control the GUI functions through the command line.
In Linux, a graphical shell is usually made of a couple of layers of software. The operating system should provide graphics drivers, and keyboard and mouse drivers. Then on top of the drivers, you have a windowing system like X11 or Wayland. It
creates higher-level wrappers around input (like providing keyboard layouts), to manage the memory that store the 2D images that are transmitted to the display driver, and to provide apps with capabilities to paint to these 2D images in memory.
Above the windowing system you have a window manager, and this is how an application translates keyboard and mouse events into system calls that manipulate the windows that the apps are painting to. This includes tasks such as launching, pausing, hiding, showing, and closing apps, detecting when an app has failed and cleaning up after it.
There are dozens of popular window managers, including Unity, Gnome Shell, Xfwm, OpenBox, i3, Xmonad and many others.
Apps can draw graphics as they see fit, however app developers usually prefer to make use of a common set of drawing tools, so their app looks consistent with all other apps running on the system. These are software libraries that you import into your app. You then call their functions to draw menus, buttons, text input, and display images like PNG and JPG images.
These common drawing tools are called "widget toolkits." The two most popular widget toolkits on Linux are Gtk+ and Qt. You can use both Gtk+ and Qt at the same time, and this is often why different apps on Linux can sometimes have inconsistencies in their look and feel.
These layers are pretty specific to the Linux software ecosystem. Mac OS, Windows, and Android all do things differently, but they all tend to integrate each of these layers into a single monolithic graphical shell software. It simplifies things, but also prevents a lot of customization.
The reason Linux complicates things is because people prefer to have choices, and they enjoy to customize their shells. If you are managing your own Linux distribution, it is a good idea to put some effort into choosing your default set of apps so that they all use the same widget toolkits, and provide a consistent look and feel.
On top of the graphical shell, you can build graphical apps, such as file system browsers, app launchers, notification and system status apps, and system configuration ("control panel") apps. These apps taken collectively make up what we call the "desktop environment."
2
Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
Sep 16 '18 at 18:28
1
@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– user88036
Sep 16 '18 at 18:48
add a comment |
The term graphics shell
can be both a graphical shell or a command line shell running under it. Meaning, the user graphical interface (GUI) or the command line that controls the GUI functions.
First, let's begin with the shell, what "shell" means: the definition of the word "shell" means a program, or even a group of programs working together, it controls the operating system, and the hardware, so the shell is really the software gives you direct control over the computer.
A graphical shell is a shell that presents output as 2D or 3D graphics, as opposed to plain text. In other words, it is the graphical user interface (GUI) that include windows, menus ...etc that the provide more flexible interaction between the user and the system instead of the plain dull-text offered by terminal interface.
However, given that the core of the GUI is built as a shell, then all its functions can be controlled by the command line. For example, the command genome-shell is the graphical shell for the GNOME desktop, this command provides core user interface functions for the GNOME desktop that can be adjusted by a command line. Another example, is nautilus which is the main GUI interface of files explorer in Gnome, this interface is available as a command line called nautilus. This command line has the following functions:
$ nautilus --help
Usage:
nautilus [OPTION...] [URI...]
Help Options:
-h, --help Show help options
--help-all Show all help options
--help-gapplication Show GApplication options
--help-gtk Show GTK+ Options
Application Options:
-c, --check Perform a quick set of self-check tests.
--version Show the version of the program.
-w, --new-window Always open a new window for browsing specified URIs
-n, --no-default-window Only create windows for explicitly specified URIs.
-q, --quit Quit Nautilus.
-s, --select Select specified URI in parent folder.
--display=DISPLAY X display to use
Meaning, you can control the GUI functions through the command line.
In Linux, a graphical shell is usually made of a couple of layers of software. The operating system should provide graphics drivers, and keyboard and mouse drivers. Then on top of the drivers, you have a windowing system like X11 or Wayland. It
creates higher-level wrappers around input (like providing keyboard layouts), to manage the memory that store the 2D images that are transmitted to the display driver, and to provide apps with capabilities to paint to these 2D images in memory.
Above the windowing system you have a window manager, and this is how an application translates keyboard and mouse events into system calls that manipulate the windows that the apps are painting to. This includes tasks such as launching, pausing, hiding, showing, and closing apps, detecting when an app has failed and cleaning up after it.
There are dozens of popular window managers, including Unity, Gnome Shell, Xfwm, OpenBox, i3, Xmonad and many others.
Apps can draw graphics as they see fit, however app developers usually prefer to make use of a common set of drawing tools, so their app looks consistent with all other apps running on the system. These are software libraries that you import into your app. You then call their functions to draw menus, buttons, text input, and display images like PNG and JPG images.
These common drawing tools are called "widget toolkits." The two most popular widget toolkits on Linux are Gtk+ and Qt. You can use both Gtk+ and Qt at the same time, and this is often why different apps on Linux can sometimes have inconsistencies in their look and feel.
These layers are pretty specific to the Linux software ecosystem. Mac OS, Windows, and Android all do things differently, but they all tend to integrate each of these layers into a single monolithic graphical shell software. It simplifies things, but also prevents a lot of customization.
The reason Linux complicates things is because people prefer to have choices, and they enjoy to customize their shells. If you are managing your own Linux distribution, it is a good idea to put some effort into choosing your default set of apps so that they all use the same widget toolkits, and provide a consistent look and feel.
On top of the graphical shell, you can build graphical apps, such as file system browsers, app launchers, notification and system status apps, and system configuration ("control panel") apps. These apps taken collectively make up what we call the "desktop environment."
The term graphics shell
can be both a graphical shell or a command line shell running under it. Meaning, the user graphical interface (GUI) or the command line that controls the GUI functions.
First, let's begin with the shell, what "shell" means: the definition of the word "shell" means a program, or even a group of programs working together, it controls the operating system, and the hardware, so the shell is really the software gives you direct control over the computer.
A graphical shell is a shell that presents output as 2D or 3D graphics, as opposed to plain text. In other words, it is the graphical user interface (GUI) that include windows, menus ...etc that the provide more flexible interaction between the user and the system instead of the plain dull-text offered by terminal interface.
However, given that the core of the GUI is built as a shell, then all its functions can be controlled by the command line. For example, the command genome-shell is the graphical shell for the GNOME desktop, this command provides core user interface functions for the GNOME desktop that can be adjusted by a command line. Another example, is nautilus which is the main GUI interface of files explorer in Gnome, this interface is available as a command line called nautilus. This command line has the following functions:
$ nautilus --help
Usage:
nautilus [OPTION...] [URI...]
Help Options:
-h, --help Show help options
--help-all Show all help options
--help-gapplication Show GApplication options
--help-gtk Show GTK+ Options
Application Options:
-c, --check Perform a quick set of self-check tests.
--version Show the version of the program.
-w, --new-window Always open a new window for browsing specified URIs
-n, --no-default-window Only create windows for explicitly specified URIs.
-q, --quit Quit Nautilus.
-s, --select Select specified URI in parent folder.
--display=DISPLAY X display to use
Meaning, you can control the GUI functions through the command line.
In Linux, a graphical shell is usually made of a couple of layers of software. The operating system should provide graphics drivers, and keyboard and mouse drivers. Then on top of the drivers, you have a windowing system like X11 or Wayland. It
creates higher-level wrappers around input (like providing keyboard layouts), to manage the memory that store the 2D images that are transmitted to the display driver, and to provide apps with capabilities to paint to these 2D images in memory.
Above the windowing system you have a window manager, and this is how an application translates keyboard and mouse events into system calls that manipulate the windows that the apps are painting to. This includes tasks such as launching, pausing, hiding, showing, and closing apps, detecting when an app has failed and cleaning up after it.
There are dozens of popular window managers, including Unity, Gnome Shell, Xfwm, OpenBox, i3, Xmonad and many others.
Apps can draw graphics as they see fit, however app developers usually prefer to make use of a common set of drawing tools, so their app looks consistent with all other apps running on the system. These are software libraries that you import into your app. You then call their functions to draw menus, buttons, text input, and display images like PNG and JPG images.
These common drawing tools are called "widget toolkits." The two most popular widget toolkits on Linux are Gtk+ and Qt. You can use both Gtk+ and Qt at the same time, and this is often why different apps on Linux can sometimes have inconsistencies in their look and feel.
These layers are pretty specific to the Linux software ecosystem. Mac OS, Windows, and Android all do things differently, but they all tend to integrate each of these layers into a single monolithic graphical shell software. It simplifies things, but also prevents a lot of customization.
The reason Linux complicates things is because people prefer to have choices, and they enjoy to customize their shells. If you are managing your own Linux distribution, it is a good idea to put some effort into choosing your default set of apps so that they all use the same widget toolkits, and provide a consistent look and feel.
On top of the graphical shell, you can build graphical apps, such as file system browsers, app launchers, notification and system status apps, and system configuration ("control panel") apps. These apps taken collectively make up what we call the "desktop environment."
edited Sep 16 '18 at 18:26
Rui F Ribeiro
39.1k1479130
39.1k1479130
answered Sep 16 '18 at 17:11
user88036
2
Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
Sep 16 '18 at 18:28
1
@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– user88036
Sep 16 '18 at 18:48
add a comment |
2
Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
Sep 16 '18 at 18:28
1
@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– user88036
Sep 16 '18 at 18:48
2
2
Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
Sep 16 '18 at 18:28
Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
Sep 16 '18 at 18:28
1
1
@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– user88036
Sep 16 '18 at 18:48
@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– user88036
Sep 16 '18 at 18:48
add a comment |
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f469406%2fgraphics-shell-vs-graphical-shell%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
Sep 16 '18 at 16:53
judging by that fragment, that's not a great read. It's clear that in the mind of the author 'graphics shell' means 'xterm running bash', but I guess that's not the answer you're looking for.
– mosvy
Sep 16 '18 at 17:05
2
+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
Sep 16 '18 at 18:29