nixpkgs/nixos/modules/hardware
Philip Taron 29a46d2802
nixos/nvidia: Set SidebandSocketPath to a user-writable path in /run
The NVIDIA X driver uses a UNIX domain socket to pass information to
other driver components. If unable to connect to this socket, some
driver features, such as G-Sync, may not work correctly. The socket will
be bound to a file with a name unique to the X server instance created
in the directory specified by this option. Note that on Linux, an
additional abstract socket (not associated with a file) will also be
created, with this pathname socket serving as a fallback if connecting
to the abstract socket fails.

The default, which was in effect prior to this change, was `/var/run`.

The effect of not setting this option was that GDM X sessions
(and other non-root sessions) would see this warning in the log files:

```
   (WW) NVIDIA: Failed to bind sideband socket to
   (WW) NVIDIA:     '/var/run/nvidia-xdriver-b4f69129' Permission denied
```

I don't see any security implications of turning this on universally,
since there already was an abstract socket created according to the
docs.

Documentation:

1. [NVIDIA X Config Options](https://download.nvidia.com/XFree86/Linux-x86_64/440.82/README/xconfigoptions.html#SidebandSocketPath)

Diagnosis:

1. [Arch Linux BBS post](https://bbs.archlinux.org/viewtopic.php?pid=1909115#p1909115)
2024-03-19 16:34:41 -07:00
..
cpu
keyboard
network
onlykey
raid
sensor
video nixos/nvidia: Set SidebandSocketPath to a user-writable path in /run 2024-03-19 16:34:41 -07:00
acpilight.nix
all-firmware.nix
bladeRF.nix
brillo.nix
ckb-next.nix
corectrl.nix
decklink.nix
device-tree.nix
digitalbitbox.nix
flipperzero.nix
flirc.nix
gkraken.nix
glasgow.nix
gpgsmartcards.nix
hackrf.nix
i2c.nix
infiniband.nix
ksm.nix
ledger.nix
logitech.nix
mcelog.nix
new-lg4ff.nix
nitrokey.nix
opengl.nix
openrazer.nix
opentabletdriver.nix
pcmcia.nix
printers.nix
rtl-sdr.nix
saleae-logic.nix
sata.nix
steam-hardware.nix
system-76.nix
tuxedo-keyboard.nix
ubertooth.nix
uinput.nix
usb-modeswitch.nix
usb-storage.nix
wooting.nix
xone.nix
xpadneo.nix