What is a graphics shell?

The name of the pictureThe name of the pictureThe name of the pictureClash Royale CLAN TAG#URR8PPP











up vote
2
down vote

favorite












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?










share|improve this question























  • "Is it a command line shell running in a terminal emulator?" Probably yes.
    – sebasth
    2 hours ago










  • 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
    2 hours ago






  • 1




    +1 to save the question. While it seems obvious, it is not worthy the downvotes.
    – Rui F Ribeiro
    38 mins ago















up vote
2
down vote

favorite












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?










share|improve this question























  • "Is it a command line shell running in a terminal emulator?" Probably yes.
    – sebasth
    2 hours ago










  • 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
    2 hours ago






  • 1




    +1 to save the question. While it seems obvious, it is not worthy the downvotes.
    – Rui F Ribeiro
    38 mins ago













up vote
2
down vote

favorite









up vote
2
down vote

favorite











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?










share|improve this question















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






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 2 hours ago









Goro

2,36441849




2,36441849










asked 2 hours ago









Tim

23.1k66225410




23.1k66225410











  • "Is it a command line shell running in a terminal emulator?" Probably yes.
    – sebasth
    2 hours ago










  • 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
    2 hours ago






  • 1




    +1 to save the question. While it seems obvious, it is not worthy the downvotes.
    – Rui F Ribeiro
    38 mins ago

















  • "Is it a command line shell running in a terminal emulator?" Probably yes.
    – sebasth
    2 hours ago










  • 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
    2 hours ago






  • 1




    +1 to save the question. While it seems obvious, it is not worthy the downvotes.
    – Rui F Ribeiro
    38 mins ago
















"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
2 hours ago




"Is it a command line shell running in a terminal emulator?" Probably yes.
– sebasth
2 hours ago












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
2 hours ago




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
2 hours ago




1




1




+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
38 mins ago





+1 to save the question. While it seems obvious, it is not worthy the downvotes.
– Rui F Ribeiro
38 mins ago











1 Answer
1






active

oldest

votes

















up vote
3
down vote













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."






share|improve this answer


















  • 1




    Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
    – Rui F Ribeiro
    40 mins ago







  • 1




    @Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
    – Goro
    19 mins ago










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',
convertImagesToLinks: false,
noModals: false,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);



);













 

draft saved


draft discarded


















StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f469406%2fwhat-is-a-graphics-shell%23new-answer', 'question_page');

);

Post as a guest






























1 Answer
1






active

oldest

votes








1 Answer
1






active

oldest

votes









active

oldest

votes






active

oldest

votes








up vote
3
down vote













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."






share|improve this answer


















  • 1




    Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
    – Rui F Ribeiro
    40 mins ago







  • 1




    @Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
    – Goro
    19 mins ago














up vote
3
down vote













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."






share|improve this answer


















  • 1




    Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
    – Rui F Ribeiro
    40 mins ago







  • 1




    @Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
    – Goro
    19 mins ago












up vote
3
down vote










up vote
3
down vote









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."






share|improve this answer














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."







share|improve this answer














share|improve this answer



share|improve this answer








edited 42 mins ago









Rui F Ribeiro

36.6k1271116




36.6k1271116










answered 1 hour ago









Goro

2,36441849




2,36441849







  • 1




    Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
    – Rui F Ribeiro
    40 mins ago







  • 1




    @Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
    – Goro
    19 mins ago












  • 1




    Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
    – Rui F Ribeiro
    40 mins ago







  • 1




    @Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
    – Goro
    19 mins ago







1




1




Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
40 mins ago





Congrats for synthesising such a nice read, hope you do not mind the grammar tweaks.
– Rui F Ribeiro
40 mins ago





1




1




@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– Goro
19 mins ago




@Rui F Ribeiro. Fantastic revisions! thank you so much! ;-)
– Goro
19 mins ago

















 

draft saved


draft discarded















































 


draft saved


draft discarded














StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f469406%2fwhat-is-a-graphics-shell%23new-answer', 'question_page');

);

Post as a guest













































































Comments

Popular posts from this blog

Long meetings (6-7 hours a day): Being “babysat” by supervisor

Is the Concept of Multiple Fantasy Races Scientifically Flawed? [closed]

Confectionery