Displaylink: Difference between revisions

From NixOS Wiki
imported>Lillecarl
xorg configuration added, required for me to get displaylink working on 21.05
imported>Artturin
This shouldn't be needed because adding modesetting to videoDrivers already does it Undo revision 6965 by Lillecarl (talk)
Line 20: Line 20:
     ${lib.getBin pkgs.xorg.xrandr}/bin/xrandr --setprovideroutputsource 2 0
     ${lib.getBin pkgs.xorg.xrandr}/bin/xrandr --setprovideroutputsource 2 0
'';</syntaxhighlight>
'';</syntaxhighlight>
====xorg configuration====
After some experimentation at work getting our Dell D6000 docks to work i had to create an xorg configuration file as follows
<syntaxhighlight lang="nix">environment.etc."X11/xorg.conf.d/20-evdi.conf" = {
  enable = true;
  text = ''
    Section "OutputClass"
      Identifier "DisplayLink"
      MatchDriver "evdi"
      Driver "modesetting"
      Option "AccelMethod" "none"
    EndSection
  '';
};</syntaxhighlight>
Taken from arch wiki (https://wiki.archlinux.org/title/DisplayLink#Configuring_X_Server)
Note that modesetting is the modern Intel iGPU driver, read further into the Arch wiki if you're experiencing issues.
evdi is automatically pulled in as a dependency from the displaylink package, you might need to add it to boot.kernelModules.


====Status of the package====
====Status of the package====
As of right now (2020-01-24), the package in the {{ic|nixos}} stable channel is out of date, so you may need to override it from {{ic|nixpkgs}}.  
As of right now (2020-01-24), the package in the {{ic|nixos}} stable channel is out of date, so you may need to override it from {{ic|nixpkgs}}.


Since '''NixOS 20.03''' this package is working out of the box again.
Since '''NixOS 20.03''' this package is working out of the box again.
[[Category:Video]]
[[Category:Video]]

Revision as of 16:19, 15 November 2021

DisplayLink monitors

In order to use Displaylink monitors over USB, such as the ASUS MB16AC, the displaylink driver needs to be installed:

$ services.xserver.videoDrivers = [ "displaylink" "modesetting" ];

Since these drivers depend on binary unfree blobs, you will need to first add it to your nix-store. Go to https://www.displaylink.com/downloads/ubuntu to get the appropriate driver version and note the download URL you get after accepting the EULA. Then (example):

$ nix-prefetch-url --name displaylink.zip http://assets.displaylink.com/live/downloads/software/f1369_DisplayLink%20USB%20Graphics%20Software%20for%20Ubuntu%205.2.zip\?AWSAccessKeyId\=AKIAJHGQWPVXWHEDJUEA\&Expires\=1579838008\&Signature\=4UidRIwBYLZPHSf2EkcyLFKb%2B8o%3D

Before the monitor can be used by xrandr, you will need to run the following command, which can be added to e.g. your ~/.xprofile (this is not necessary since NixOS 20.03):

$ xrandr --setprovideroutputsource 1 0

Connecting a second external monitor

In order to add a second external monitor you can add the following to your configuration:

services.xserver.displayManager.sessionCommands = ''
    ${lib.getBin pkgs.xorg.xrandr}/bin/xrandr --setprovideroutputsource 2 0
'';

Status of the package

As of right now (2020-01-24), the package in the nixos stable channel is out of date, so you may need to override it from nixpkgs.

Since NixOS 20.03 this package is working out of the box again.