nixos docs: improve GPU driver documentation
I'm not 100% sure about the incompatibility lines, but I believe it's better to discourage these anyway. If you find better information, feel free to amend... The 32-bit thing is completely GPU-agnostic, so I can't see why we had it separately for proprietary drivers and missing for the rest.
This commit is contained in:
parent
e85525245c
commit
11d204a9c4
|
@ -35,8 +35,8 @@
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
NixOS’s default <emphasis>display manager</emphasis> (the program that
|
NixOS’s default <emphasis>display manager</emphasis> (the program that
|
||||||
provides a graphical login prompt and manages the X server) is LightDM. You can
|
provides a graphical login prompt and manages the X server) is LightDM. You
|
||||||
select an alternative one by picking one of the following lines:
|
can select an alternative one by picking one of the following lines:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
<xref linkend="opt-services.xserver.displayManager.sddm.enable"/> = true;
|
<xref linkend="opt-services.xserver.displayManager.sddm.enable"/> = true;
|
||||||
<xref linkend="opt-services.xserver.displayManager.slim.enable"/> = true;
|
<xref linkend="opt-services.xserver.displayManager.slim.enable"/> = true;
|
||||||
|
@ -59,9 +59,16 @@
|
||||||
<screen>
|
<screen>
|
||||||
# systemctl start display-manager.service
|
# systemctl start display-manager.service
|
||||||
</screen>
|
</screen>
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
On 64-bit systems, if you want OpenGL for 32-bit programs such as in Wine,
|
||||||
|
you should also set the following:
|
||||||
|
<programlisting>
|
||||||
|
<xref linkend="opt-hardware.opengl.driSupport32Bit"/> = true;
|
||||||
|
</programlisting>
|
||||||
</para>
|
</para>
|
||||||
<simplesect xml:id="sec-x11-graphics-cards-nvidia">
|
<simplesect xml:id="sec-x11-graphics-cards-nvidia">
|
||||||
<title>NVIDIA Graphics Cards</title>
|
<title>Proprietary NVIDIA drivers</title>
|
||||||
<para>
|
<para>
|
||||||
NVIDIA provides a proprietary driver for its graphics cards that has better
|
NVIDIA provides a proprietary driver for its graphics cards that has better
|
||||||
3D performance than the X.org drivers. It is not enabled by default because
|
3D performance than the X.org drivers. It is not enabled by default because
|
||||||
|
@ -71,6 +78,7 @@
|
||||||
</programlisting>
|
</programlisting>
|
||||||
Or if you have an older card, you may have to use one of the legacy drivers:
|
Or if you have an older card, you may have to use one of the legacy drivers:
|
||||||
<programlisting>
|
<programlisting>
|
||||||
|
<xref linkend="opt-services.xserver.videoDrivers"/> = [ "nvidiaLegacy390" ];
|
||||||
<xref linkend="opt-services.xserver.videoDrivers"/> = [ "nvidiaLegacy340" ];
|
<xref linkend="opt-services.xserver.videoDrivers"/> = [ "nvidiaLegacy340" ];
|
||||||
<xref linkend="opt-services.xserver.videoDrivers"/> = [ "nvidiaLegacy304" ];
|
<xref linkend="opt-services.xserver.videoDrivers"/> = [ "nvidiaLegacy304" ];
|
||||||
<xref linkend="opt-services.xserver.videoDrivers"/> = [ "nvidiaLegacy173" ];
|
<xref linkend="opt-services.xserver.videoDrivers"/> = [ "nvidiaLegacy173" ];
|
||||||
|
@ -78,16 +86,9 @@
|
||||||
You may need to reboot after enabling this driver to prevent a clash with
|
You may need to reboot after enabling this driver to prevent a clash with
|
||||||
other kernel modules.
|
other kernel modules.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
|
||||||
On 64-bit systems, if you want full acceleration for 32-bit programs such as
|
|
||||||
Wine, you should also set the following:
|
|
||||||
<programlisting>
|
|
||||||
<xref linkend="opt-hardware.opengl.driSupport32Bit"/> = true;
|
|
||||||
</programlisting>
|
|
||||||
</para>
|
|
||||||
</simplesect>
|
</simplesect>
|
||||||
<simplesect xml:id="sec-x11--graphics-cards-amd">
|
<simplesect xml:id="sec-x11--graphics-cards-amd">
|
||||||
<title>AMD Graphics Cards</title>
|
<title>Proprietary AMD drivers</title>
|
||||||
<para>
|
<para>
|
||||||
AMD provides a proprietary driver for its graphics cards that has better 3D
|
AMD provides a proprietary driver for its graphics cards that has better 3D
|
||||||
performance than the X.org drivers. It is not enabled by default because
|
performance than the X.org drivers. It is not enabled by default because
|
||||||
|
@ -99,11 +100,8 @@
|
||||||
other kernel modules.
|
other kernel modules.
|
||||||
</para>
|
</para>
|
||||||
<para>
|
<para>
|
||||||
On 64-bit systems, if you want full acceleration for 32-bit programs such as
|
Note: for recent AMD GPUs you most likely want to keep either the defaults
|
||||||
Wine, you should also set the following:
|
or <literal>"amdgpu"</literal> (both free).
|
||||||
<programlisting>
|
|
||||||
<xref linkend="opt-hardware.opengl.driSupport32Bit"/> = true;
|
|
||||||
</programlisting>
|
|
||||||
</para>
|
</para>
|
||||||
</simplesect>
|
</simplesect>
|
||||||
<simplesect xml:id="sec-x11-touchpads">
|
<simplesect xml:id="sec-x11-touchpads">
|
||||||
|
|
|
@ -246,7 +246,7 @@ in
|
||||||
default = [ "ati" "cirrus" "vesa" "vmware" "modesetting" ];
|
default = [ "ati" "cirrus" "vesa" "vmware" "modesetting" ];
|
||||||
example = [
|
example = [
|
||||||
"ati_unfree" "amdgpu" "amdgpu-pro"
|
"ati_unfree" "amdgpu" "amdgpu-pro"
|
||||||
"nv" "nvidia" "nvidiaLegacy340" "nvidiaLegacy304"
|
"nv" "nvidia" "nvidiaLegacy390" "nvidiaLegacy340" "nvidiaLegacy304"
|
||||||
];
|
];
|
||||||
# TODO(@oxij): think how to easily add the rest, like those nvidia things
|
# TODO(@oxij): think how to easily add the rest, like those nvidia things
|
||||||
relatedPackages = concatLists
|
relatedPackages = concatLists
|
||||||
|
@ -259,6 +259,11 @@ in
|
||||||
The names of the video drivers the configuration
|
The names of the video drivers the configuration
|
||||||
supports. They will be tried in order until one that
|
supports. They will be tried in order until one that
|
||||||
supports your card is found.
|
supports your card is found.
|
||||||
|
Don't combine those with "incompatible" OpenGL implementations,
|
||||||
|
e.g. free ones (mesa-based) with proprietary ones.
|
||||||
|
|
||||||
|
For unfree "nvidia*", the supported GPU lists are on
|
||||||
|
https://www.nvidia.com/object/unix.html
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue