Manjaro Difference between pages "Install Desktop Environments" and "Configure Graphics Cards"

Difference between pages "Install Desktop Environments" and "Configure Graphics Cards"

From Manjaro
(Difference between pages)
imported>Verityproductions
 
imported>Petsam
m (Add bumblebee tutorial for troubleshooting)
 
Line 1: Line 1:
= Overview =
= Overview =


There are several desktop environments available for Manjaro, each with their own unique style, interface, and features. Which you may choose is entirely down to personal preference. However, it is possible to install multiple desktop environments if you wish, which can be selected at the login screen at any time. It is worth noting that a desktop environment is not a single application; it is actually a collection of different components that work together, commonly including a:
{{note|The mhwd command is still ''under development'', and at present is only able to install drivers for graphics cards connected internally via pci.}}


* '''windows manager''' to display, move and resize application windows
* '''file manager''' to visually browse, copy and access files, etc.
* '''background provider''' to display wallpapers, etc.
* '''panel''' to provide a menu and to display information such as the time
* '''settings/configuration manager''' to change the look of the environment


And so on. Most desktop environments will also come with their own preferred applications, in addition to various widgets, addons, and extensions to provide extra features. As such, upon entering the commands provided below in your terminal to download and install a desktop environment, you may be prompted to choose from a selection of components provided for it. '''To install a full desktop environment''' - complete with its own preferred file manager, applications, and so on - simply press <enter> when prompted. Everything will be downloaded and installed by default.
Where installing the full version of Manjaro (i.e. complete with a pre-installed desktop environment, codecs, and software applications), the mhwd command will be automatically run by the GUI and CLI installer to automatically detect your graphics card and install the most appropriate driver for it. '''Whether free or proprietary drivers are installed will depend on your initial choice of using free or nonfree graphics drivers to boot up'''.
Otherwise, it will be necessary to run the mhwd command manually as part of the post-installation process for the minimalistic '''NET-Edition''' of Manjaro.  


{{note|If you install this way to use multiple desktop environments, you may find certain applications seem to appear several times in your application menus. For example, several different terminals may be available, as many desktop environments come with their own preferred version, which can also be used in other desktops.}}
'''For Beginners, it is recommended to use "Hardware Detection" in [[Manjaro Settings Manager]] to change or install new graphics drivers.'''
For intermediate and advanced users, it is also possible to use the mhwd command to install, re-install, and remove installed graphics drivers at any time, as illustrated below.


Where additional (and optional) extras for a desktop environment are availble, the terminal commands to obtain these have also been provided. These commands have been listed seperately to those for obtaining the desktop environments themselves.


{{warning|For the NET-Edition, ensure that the graphics drivers are installed '''prior''' to installing and configuring your desired desktop and greeter. Without video drivers to show them, you won't get very far upon rebooting!}}


= XFCE =


[[File: xfceDE.png|thumb|left|375px]]
= Automated Identification and Installation =


This is the recommended method for the detection and installation of graphics drivers. The syntax for the automated installation method is:


'''[http://xfce.org/ XFCE]''' is a lightweight and versatile desktop environment that utilises a classic drop-down menu to access applications. It is also compatible with '''[[Compiz_and_Emerald|Compiz]]'''. Although highly configurable, XFCE does provide a somewhat basic interface that may lack some modern features expected (e.g. no built-in search bar in the menu). A little time and effort will also be required to properly customise the deskop to suit personal taste. A 64 bit installation of Manjaro running XFCE uses about 200MB of memory. '''To install XFCE, enter the command:'''
sudo mhwd -a [pci or usb connection] [free or nonfree drivers] 0300


sudo pacman -S xfce4


To install extra themes, desktop backgrounds, and panel items (widgets), enter the command:
A breakdown of the command used for the automated method is as follows:


sudo pacman -S xfce4-goodies
* '''-a''': Automatically detect and install the appropriate driver
<br clear="all" />
* '''[pci or usb]''': Install the appropriate driver for devices connected internally via pci, or externally via usb (again, mhwd currently only supports pci connections at this stage in its development)
* '''[free or nonfree]''': Install either free drivers (e.g. provided by the Linux community), or nonfree drivers (e.g. provided by hardware manufacturers)
* '''0300''': Identify that a driver is to be installed for a graphics card (0300 is the ID for graphics cards. As the mhwd command develops, new ids will be used for other hardware devices).


= KDE =


[[File: kdeDE.png|thumb|left|375px]]
For example, the following command would result in the automatic detection and installation of the best available '''proprietary driver''' for a pci-connected graphics card:


sudo mhwd -a pci nonfree 0300


'''[http://www.kde.org/ KDE]''' is a feature-rich and versatile desktop environment that provides several different styles of menu to access applications. It is also compatible with '''[[Compiz_and_Emerald|Compiz]]'''. An excellent built-in interface to easily access and install new themes, widgets, etc, from the internet is also worth mentioning. While very user-friendly and certainly  flashy, KDE is also quite resource heavy and noticably slower to start and use than a desktop environment such as XFCE. A 64 bit installation of Manjaro running KDE uses about 550MB of memory. '''To install KDE, enter the command:'''


sudo pacman -S KDE kdeplasma-applets-networkmanagement
Otherwise, the following command would result in the automatic detection and installation of the best available '''free driver''' for a pci-connected graphics card:


{{note|Upon installing, you will be asked to pick a gstreamer version (phonon or vlc). Gstreamer is a multimedia framework used to handle multimedia applications (i.e. audio and video playback and editing). If you are not sure which one you should choose, pick '''vlc'''.}}
sudo mhwd -a pci free 0300
<br clear="all" />


= Gnome 3 =


[[File: gnome3DE.png|thumb|left|375px]]
= Manual Identification and Installation =


Taking a do-it-yourself approach is itself relatively easy and straightforward using the mhwd command. This should be undertaken in two stages:


'''[http://www.gnome.org/ Gnome 3]''' is an intuitive desktop environment that utilises a tablet or smartphone style interface to access applications. It is not compatible with compiz. Although Gnome is very easy to learn and use, its customisation options are quite limited, and it can be difficult to configure. A 64 bit installation of Manjaro running Gnome uses about 220MB of memory. '''To install Gnome, enter the command:'''
'''1.''' Identify the appropriate driver to be installed, and then


sudo pacman -S gnome
'''2.''' Install the driver


To install extra themes, games, and features, enter the command:
{{tip| Just ensure that you have identified and are indeed about to install the correct driver for your particular graphics card!}}


sudo pacman -S gnome-extra
<br clear="all" />


= Cinnamon =
== Identifying Available Drivers ==


[[File: cinnamonde.png|thumb|left|375px]]
Prior to manually installing a graphics driver, it will be necessary to identify what drivers are available for your system. To list the appropriate drivers available, the basic syntax is:


mhwd -l [optional: detailed view] [optional: --pci or --usb connection]


'''[http://cinnamon.linuxmint.com/ Cinnamon]''' is a desktop environment based on Gnome 3 that utilises a large panel-style menu to access applications. It is not compatible with compiz. Despite being based on Gnome, it has more customisation options and is easier to configure. Users of Windows Vista or Windows 7 may find Cinnamon's interface comfortably familiar. A 64 bit installation of Manjaro running Cinnamon uses about 350MB of memory. '''To install Cinnamon, enter the command:'''


pacman -S cinnamon
Using this command without the additional options will list basic information for all the available drivers for devices connected to your system. '''All drivers graphics card drivers will have the prefix (video-) in their name'''. The basic information provided for all listed drivers will be:


{{note| as a gnome-based desktop, many gnome configuration applications will work with cinnamon, e.g. gnome-color-manager.}}
* Name
<br clear="all" />
* Version
* Free or proprietary, and
* PCI or USB connection




= Openbox =
A more detailed list of installed drivers can be obtained by entering:


[[File: openboxde.png|thumb|left|375px]]
mhwd -l -d




'''[http://openbox.org/ Openbox]''' is not a desktop environment, but a windows manager. Although a basic menu is available (and accessed by right-clicking on the desktop), absolutely nothing else is provided with Openbox's basic installation - not even its own themes or configuration application! One for the minimalists out there, or perhaps those who want to use Openbox as a foundation to build on. It will be necessary to install and configure your own choice of panel, file manager, background provider, and so on. '''To install Openbox, enter the command:'''
A detailed list will provide the following information:


sudo pacman -S openbox
* Name
* Version
* PCI or USB connection
* Description
* Priority
* Free or proprietary
* Dependencies
* Conflicts
* Class ID (e.g. '0300' for graphics card drivers), and
* Vendor ID


To install a logout script, configuration application, themes, and a background provider (nitrogen), enter the command:


sudo pacman -S oblogout obconf openbox-themes nitrogen
In addition, using the ''--pci'' filter in the following example will list detailed information for only the drivers available for devices (e.g. graphics cards) using an internal PCI connection:
<br clear="all" />


= Razor-QT =
mhwd -l -d --pci


[[File: razorde2.png|thumb|left|375px]]


== Installing a Driver ==


'''[http://razor-qt.org/ Razor-QT]''' is a lightweight, desktop environment still under development. It has no window manager of its own, although it can be configured to use Compiz as such (not using the Fusion-Icon, however). It is designed with lower-end computers in mind. At its current stage of development, Razor-QT may not be suitable for all users. A 64 bit installation of Manjaro running Razor-QT uses about 180MB of memory. '''To install Razor-QT, enter the command:'''
To install a driver for a graphics card, the syntax is:


  sudo pacman -S razor-qt
  sudo mhwd -i pci [name of driver]


To install the recommended Window Manager, use USB devices, and shutdown/reboot from Razor-QT, enter the command:


sudo pacman -S openbox upower udisks
A breakdown of the command used to manually install a driver is as follows:


{{note|You will need to manually edit Razor-QT's configuration file '''~/.config/razor/session.conf''' to set the window manager.}}
* '''-i''': Install a driver
<br clear="all" />
* '''[pci]''': Install a driver for a device connected internally via pci (e.g. graphics cards)
* '''[name of driver]''': The name of the driver to be installed


[[Category:Customisation and Configuration]]
For example, to install the proprietary nvidia graphics card driver, the following command would be used:
 
sudo mhwd -i pci video-nvidia
 
== Forcing Re-installation of a Driver ==
 
{{warning|use this command with care!}}
 
 
To force the re-installation of an existing driver without removing it first, the syntax is:
 
sudo mhwd -f -i pci [name of driver]
 
 
For example, to force the re-installation of a previously installed nvidia graphics card driver, the following command would be used:
 
sudo mhwd -f -i pci video-nvidia
 
 
= Removing an Installed Driver =
 
On occasion it may be necessary to remove an installed graphics card driver. Similarly to manually installing a graphics card driver, two steps should be undertaken for removal:
 
'''1.''' Identify the installed driver
 
'''2.''' Remove the identified driver
 
After all, it would be somewhat difficult to remove an installed driver if you don't know what it's called!
 
 
== Identifying Installed Drivers ==
 
To identify and list Manjaro's installed drivers - including the graphics driver to be removed, the syntax is:
 
mhwd  -li [optional: detailed view] [optional: pci or usb devices only]
 
 
Using this command without the additional options will list the basic information of all the drivers currently installed on your system. '''Once again, all drivers for graphics cards will have the prefix (video-) in their name'''. As with listing drivers available for your system, the ''-d'' option used in the following command will list detailed information:
 
mhwd -li -d
 
 
This information may prove useful to determine any otherwise unforeseen consequences or problems upon removing a driver. And again, it is also possible to filter your list of installed drivers by whether they are used on hardware connected via pci or usb. In this instance, a detailed list will be generated only for installed drivers used on hardware with a PCI connection:
 
mhwd -li -d --pci
 
 
== Removing Installed Drivers ==
 
{{warning|use this command with care!}}
 
 
To remove an installed driver, the syntax is:
 
sudo mhwd -r [pci or usb] [name of driver]
 
 
For example, to remove the installed driver for a nvidia graphics card (connected internally via pci), the following command would be used:
 
sudo mhwd -r pci video-nvidia
 
 
= Checking configuration =
 
You can check configuration with:
mhwd-gpu --check
mhwd-gpu --status
 
And if needed fix issues with:
mhwd-gpu --setmod
mhwd-gpu --setxorg [PATH]
 
Make sure the path to xorg config file is valid.
 
Note about ati, xorg file and login artifacts or kicad: if you get artifacts upon logging in or if kicad rendering and zooming is slow, try adding [Option "EXAPixmaps" "off"] in the "Device" section of xorg config file. See [https://wiki.archlinux.org/index.php/ATI#Artifacts_upon_logging_in here.]
 
 
=Dual GPU=
 
If your hardware includes more than one GPU card and you are using the free drivers (video-linux), you may choose to run a program with a specific GPU, prepending the application's command with DRI_PRIME=x, where x is the card priority number.
For example, to use the second card with Gimp
 
  DRI_PRIME=1 gimp
 
To use the 1st card (usually when the CPU has an embedded GPU, this is used)
 
  DRI_PRIME=0 gimp
 
If you have Nvidia Optimus hardware and use proprietary drivers see [[#Nvidia Optimus]]
 
= NVIDIA Proprietary (non-free) drivers =
 
If you have a Nvidia card, you have the option to use the proprietary (closed sourse = non-free) drivers instead of the open source (free) nouveau driver.
 
For Legacy/older nvidia cards, Manjaro maintains older drivers for compatibility. In these cases the driver name is different, instead of nvidia it is nvidia-390xx or nvidia340xx, whether in nvidia-only or bumblebee mhwd driver configuration.
 
When you install the non-free driver, mhwd includes a Nvidia utility "Nvidia Settings Utility" that can help you configure several settings. You can find this utility in your GUI Applications Menu or start it from a terminal
 
  sudo nvidia-settings
 
If you are using bumblebee, the nvidia utility needs a special command
 
  sudo optirun -b none nvidia-settings -c :8
 
 
==Nvidia Optimus==
For Optimus laptops or dual GPU hardware with intel and nvidia GPUs, you have three options to utilize the card driver usage at your preference or your hardware capabilities.
 
'''[[#Bumblebee]] (mhwd default)'''
 
'''[https://forum.manjaro.org/t/howto-set-up-prime-with-nvidia-proprietary-driver/40225 Prime] or [https://wiki.archlinux.org/index.php/PRIME#Reverse_PRIME Reverse Prime]'''
 
'''[[Optimus Manager]]'''
 
When you install Manjaro with the non-free option selected from Grub menu, or when you use automatic driver installation, bumblebee is installed by default. In these cases, the mhwd driver is named "video-hybrid-intel-nvidia-bumblebee".
 
 
==Configure The Resolution/Refresh Rate==
 
{{warning|The method provided does not currently work for the Cinnamon Edition. As soon as a solution is found, then this article will be updated.}}
 
 
'''1.'''  Start nvidia-settings utility
 
'''2.'''  Change resolution and refresh rate in 'X Server Display Configuration' tab.
 
'''3.'''  Hit the 'Save to X Configuration File' button and save to '''/etc/X11/mhwd.d/nvidia.conf'''
 
'''4.'''  Now start your terminal and enter the following command to complete the process:
 
sudo mhwd-gpu --setmod nvidia --setxorg /etc/X11/mhwd.d/nvidia.conf
 
==Configure X Screen settings (OpenGL Settings, Antialiasing, X Server XVideo)==
 
 
'''1.'''  Start nvidia-settings utility
 
'''2.''' Change settings in X Server XVideo Settings, OpenGL and Antialiasing, in the 'X Screen' tab.
 
'''3.''' Click on 'nvidia-settings configuration' tab and click on the 'Save Current Configuration' button.
 
'''4.''' Save the .nvidia-settings-rc to the default location specified ('''/home/[your account name]''')
 
'''5.''' Edit the .xinitrc file with your preferred text editor. For example, if you use gedit, run this in your terminal:
 
gedit ~/.xinitrc
 
 
'''6.''' Once opened, add the following line into the configuration file:
 
exec nvidia-settings --load-config-only
 
 
'''7.''' Save and exit.
 
 
==Bumblebee==
 
Bumblebee configuration is mainly developed to help minimize laptop battery consumption, since Nvidia usually consumes significant power, while Intel cards are more power efficient. So, bumblebee detects both cards and automatically selects Intel card by default, while uses Nvidia for more demanding applications.
You may also manually select for an application to use the Nvidia card, prepending the application command with optirun or primusrun. For example:
 
  primusrun glxspheres64
  primusrun steam
 
 
If bumblebee fails to auto-detect nvidia as best option, or if you want to specifically run some application with the nvidia driver, you may edit that application's .desktop file "Exec" property, or run it in terminal like this
 
 
  primusrun steam
 
 
Some applications (usually games like steam) may have an embedded option to specify the command line, where it is preferred to use this way.
 
For example, in Steam, select a game - that you want to run using your discrete Nvidia card - from the Library page of the Steam client, right-click, and select Properties.
Click the SET LAUNCH OPTIONS... button and specify primusrun %command% for the command line.
Save your changes.This method allows you to pick when the discrete NVidia GPU should be used on a per-game basis.
 
 
If you have problems with a bumblebee setup, refer to this [https://forum.manjaro.org/t/bumblebee-troubleshooting-20181229/40584 Forum Tutorial] for advice.
 
 
 
= See also =
 
* [[Manjaro Hardware Detection Overview]]
 
 
= Easier way =
 
You may use a GUI version of mhwd in [[Manjaro Settings Manager#Hardware Detection]]
: With this tool you can:
: - install graphic driver
: - switch graphic driver
 
https://www.youtube.com/watch?v=UAFGukpEIJw
 
 
= How to check the driver =
 
glxinfo | grep OpenGL
 
 
Example output command:
 
 
'''Nvidia driver''' ( proprietary driver )
 
$ glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 660/PCIe/SSE2
OpenGL core profile version string: 4.3.0 NVIDIA 331.49
OpenGL core profile shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.4.0 NVIDIA 331.49
OpenGL shading language version string: 4.40 NVIDIA via Cg compiler
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
 
 
'''Nouveau''' , '''Gallium''' from '''Mesa''' ( open source driver )
 
$ glxinfo | grep OpenGL
OpenGL vendor string: nouveau
OpenGL renderer string: Gallium 0.4 on NVE6
OpenGL core profile version string: 3.1 (Core Profile) Mesa 9.2.5
OpenGL core profile shading language version string: 1.40
OpenGL core profile context flags: (none)
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 9.2.5
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
 
 
'''Intel''' driver from '''Mesa''' ( open driver )
 
$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Desktop
OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.0.6
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 11.0.6
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.0.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:
 
 
[[Category:Contents Page]]

Revision as of 16:48, 7 January 2019

Overview

Note
The mhwd command is still under development, and at present is only able to install drivers for graphics cards connected internally via pci.


Where installing the full version of Manjaro (i.e. complete with a pre-installed desktop environment, codecs, and software applications), the mhwd command will be automatically run by the GUI and CLI installer to automatically detect your graphics card and install the most appropriate driver for it. Whether free or proprietary drivers are installed will depend on your initial choice of using free or nonfree graphics drivers to boot up. Otherwise, it will be necessary to run the mhwd command manually as part of the post-installation process for the minimalistic NET-Edition of Manjaro.

For Beginners, it is recommended to use "Hardware Detection" in Manjaro Settings Manager to change or install new graphics drivers. For intermediate and advanced users, it is also possible to use the mhwd command to install, re-install, and remove installed graphics drivers at any time, as illustrated below.


Warning
For the NET-Edition, ensure that the graphics drivers are installed prior to installing and configuring your desired desktop and greeter. Without video drivers to show them, you won't get very far upon rebooting!


Automated Identification and Installation

This is the recommended method for the detection and installation of graphics drivers. The syntax for the automated installation method is:

sudo mhwd -a [pci or usb connection] [free or nonfree drivers] 0300


A breakdown of the command used for the automated method is as follows:

  • -a: Automatically detect and install the appropriate driver
  • [pci or usb]: Install the appropriate driver for devices connected internally via pci, or externally via usb (again, mhwd currently only supports pci connections at this stage in its development)
  • [free or nonfree]: Install either free drivers (e.g. provided by the Linux community), or nonfree drivers (e.g. provided by hardware manufacturers)
  • 0300: Identify that a driver is to be installed for a graphics card (0300 is the ID for graphics cards. As the mhwd command develops, new ids will be used for other hardware devices).


For example, the following command would result in the automatic detection and installation of the best available proprietary driver for a pci-connected graphics card:

sudo mhwd -a pci nonfree 0300


Otherwise, the following command would result in the automatic detection and installation of the best available free driver for a pci-connected graphics card:

sudo mhwd -a pci free 0300


Manual Identification and Installation

Taking a do-it-yourself approach is itself relatively easy and straightforward using the mhwd command. This should be undertaken in two stages:

1. Identify the appropriate driver to be installed, and then

2. Install the driver



Tip
Just ensure that you have identified and are indeed about to install the correct driver for your particular graphics card!


Identifying Available Drivers

Prior to manually installing a graphics driver, it will be necessary to identify what drivers are available for your system. To list the appropriate drivers available, the basic syntax is:

mhwd -l [optional: detailed view] [optional: --pci or --usb connection]


Using this command without the additional options will list basic information for all the available drivers for devices connected to your system. All drivers graphics card drivers will have the prefix (video-) in their name. The basic information provided for all listed drivers will be:

  • Name
  • Version
  • Free or proprietary, and
  • PCI or USB connection


A more detailed list of installed drivers can be obtained by entering:

mhwd -l -d


A detailed list will provide the following information:

  • Name
  • Version
  • PCI or USB connection
  • Description
  • Priority
  • Free or proprietary
  • Dependencies
  • Conflicts
  • Class ID (e.g. '0300' for graphics card drivers), and
  • Vendor ID


In addition, using the --pci filter in the following example will list detailed information for only the drivers available for devices (e.g. graphics cards) using an internal PCI connection:

mhwd -l -d --pci


Installing a Driver

To install a driver for a graphics card, the syntax is:

sudo mhwd -i pci [name of driver]


A breakdown of the command used to manually install a driver is as follows:

  • -i: Install a driver
  • [pci]: Install a driver for a device connected internally via pci (e.g. graphics cards)
  • [name of driver]: The name of the driver to be installed

For example, to install the proprietary nvidia graphics card driver, the following command would be used:

sudo mhwd -i pci video-nvidia

Forcing Re-installation of a Driver

Warning
use this command with care!


To force the re-installation of an existing driver without removing it first, the syntax is:

sudo mhwd -f -i pci [name of driver]


For example, to force the re-installation of a previously installed nvidia graphics card driver, the following command would be used:

sudo mhwd -f -i pci video-nvidia


Removing an Installed Driver

On occasion it may be necessary to remove an installed graphics card driver. Similarly to manually installing a graphics card driver, two steps should be undertaken for removal:

1. Identify the installed driver

2. Remove the identified driver

After all, it would be somewhat difficult to remove an installed driver if you don't know what it's called!


Identifying Installed Drivers

To identify and list Manjaro's installed drivers - including the graphics driver to be removed, the syntax is:

mhwd  -li [optional: detailed view] [optional: pci or usb devices only]


Using this command without the additional options will list the basic information of all the drivers currently installed on your system. Once again, all drivers for graphics cards will have the prefix (video-) in their name. As with listing drivers available for your system, the -d option used in the following command will list detailed information:

mhwd -li -d


This information may prove useful to determine any otherwise unforeseen consequences or problems upon removing a driver. And again, it is also possible to filter your list of installed drivers by whether they are used on hardware connected via pci or usb. In this instance, a detailed list will be generated only for installed drivers used on hardware with a PCI connection:

mhwd -li -d --pci


Removing Installed Drivers

Warning
use this command with care!


To remove an installed driver, the syntax is:

sudo mhwd -r [pci or usb] [name of driver]


For example, to remove the installed driver for a nvidia graphics card (connected internally via pci), the following command would be used:

sudo mhwd -r pci video-nvidia


Checking configuration

You can check configuration with:

mhwd-gpu --check 
mhwd-gpu --status 

And if needed fix issues with:

mhwd-gpu --setmod
mhwd-gpu --setxorg [PATH]

Make sure the path to xorg config file is valid.

Note about ati, xorg file and login artifacts or kicad: if you get artifacts upon logging in or if kicad rendering and zooming is slow, try adding [Option "EXAPixmaps" "off"] in the "Device" section of xorg config file. See here.


Dual GPU

If your hardware includes more than one GPU card and you are using the free drivers (video-linux), you may choose to run a program with a specific GPU, prepending the application's command with DRI_PRIME=x, where x is the card priority number. For example, to use the second card with Gimp

 DRI_PRIME=1 gimp

To use the 1st card (usually when the CPU has an embedded GPU, this is used)

 DRI_PRIME=0 gimp

If you have Nvidia Optimus hardware and use proprietary drivers see #Nvidia Optimus

NVIDIA Proprietary (non-free) drivers

If you have a Nvidia card, you have the option to use the proprietary (closed sourse = non-free) drivers instead of the open source (free) nouveau driver.

For Legacy/older nvidia cards, Manjaro maintains older drivers for compatibility. In these cases the driver name is different, instead of nvidia it is nvidia-390xx or nvidia340xx, whether in nvidia-only or bumblebee mhwd driver configuration.

When you install the non-free driver, mhwd includes a Nvidia utility "Nvidia Settings Utility" that can help you configure several settings. You can find this utility in your GUI Applications Menu or start it from a terminal

 sudo nvidia-settings

If you are using bumblebee, the nvidia utility needs a special command

 sudo optirun -b none nvidia-settings -c :8


Nvidia Optimus

For Optimus laptops or dual GPU hardware with intel and nvidia GPUs, you have three options to utilize the card driver usage at your preference or your hardware capabilities.

#Bumblebee (mhwd default)

Prime or Reverse Prime

Optimus Manager

When you install Manjaro with the non-free option selected from Grub menu, or when you use automatic driver installation, bumblebee is installed by default. In these cases, the mhwd driver is named "video-hybrid-intel-nvidia-bumblebee".


Configure The Resolution/Refresh Rate

Warning
The method provided does not currently work for the Cinnamon Edition. As soon as a solution is found, then this article will be updated.


1. Start nvidia-settings utility

2. Change resolution and refresh rate in 'X Server Display Configuration' tab.

3. Hit the 'Save to X Configuration File' button and save to /etc/X11/mhwd.d/nvidia.conf

4. Now start your terminal and enter the following command to complete the process:

sudo mhwd-gpu --setmod nvidia --setxorg /etc/X11/mhwd.d/nvidia.conf

Configure X Screen settings (OpenGL Settings, Antialiasing, X Server XVideo)

1. Start nvidia-settings utility

2. Change settings in X Server XVideo Settings, OpenGL and Antialiasing, in the 'X Screen' tab.

3. Click on 'nvidia-settings configuration' tab and click on the 'Save Current Configuration' button.

4. Save the .nvidia-settings-rc to the default location specified (/home/[your account name])

5. Edit the .xinitrc file with your preferred text editor. For example, if you use gedit, run this in your terminal:

gedit ~/.xinitrc


6. Once opened, add the following line into the configuration file:

exec nvidia-settings --load-config-only


7. Save and exit.


Bumblebee

Bumblebee configuration is mainly developed to help minimize laptop battery consumption, since Nvidia usually consumes significant power, while Intel cards are more power efficient. So, bumblebee detects both cards and automatically selects Intel card by default, while uses Nvidia for more demanding applications. You may also manually select for an application to use the Nvidia card, prepending the application command with optirun or primusrun. For example:

 primusrun glxspheres64
 primusrun steam


If bumblebee fails to auto-detect nvidia as best option, or if you want to specifically run some application with the nvidia driver, you may edit that application's .desktop file "Exec" property, or run it in terminal like this


 primusrun steam


Some applications (usually games like steam) may have an embedded option to specify the command line, where it is preferred to use this way.

For example, in Steam, select a game - that you want to run using your discrete Nvidia card - from the Library page of the Steam client, right-click, and select Properties. Click the SET LAUNCH OPTIONS... button and specify primusrun %command% for the command line. Save your changes.This method allows you to pick when the discrete NVidia GPU should be used on a per-game basis.


If you have problems with a bumblebee setup, refer to this Forum Tutorial for advice.


See also


Easier way

You may use a GUI version of mhwd in Manjaro Settings Manager#Hardware Detection

With this tool you can:
- install graphic driver
- switch graphic driver

https://www.youtube.com/watch?v=UAFGukpEIJw


How to check the driver

glxinfo | grep OpenGL


Example output command:


Nvidia driver ( proprietary driver )

$ glxinfo | grep OpenGL
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 660/PCIe/SSE2
OpenGL core profile version string: 4.3.0 NVIDIA 331.49
OpenGL core profile shading language version string: 4.30 NVIDIA via Cg compiler
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.4.0 NVIDIA 331.49
OpenGL shading language version string: 4.40 NVIDIA via Cg compiler
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:


Nouveau , Gallium from Mesa ( open source driver )

$ glxinfo | grep OpenGL
OpenGL vendor string: nouveau
OpenGL renderer string: Gallium 0.4 on NVE6
OpenGL core profile version string: 3.1 (Core Profile) Mesa 9.2.5
OpenGL core profile shading language version string: 1.40
OpenGL core profile context flags: (none)
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 9.2.5
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:


Intel driver from Mesa ( open driver )

$ glxinfo | grep OpenGL
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Desktop 
OpenGL core profile version string: 3.3 (Core Profile) Mesa 11.0.6
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 3.0 Mesa 11.0.6
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 11.0.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
OpenGL ES profile extensions:
Cookies help us deliver our services. By using our services, you agree to our use of cookies.