From 699e707e90a89fb06a9880df6b83c22428fd8deb Mon Sep 17 00:00:00 2001 From: Jan Tojnar Date: Sun, 30 Apr 2023 21:19:04 +0200 Subject: [PATCH] spotify: Fix login with firefox - Spotify uses `LD_LIBRARY_PATH` environment variable to load dependencies. - One of those dependencies is `nss_esr`. - Firefox is linked against `nss_latest`. - Spotify opens a URL in web browser to log in. - Firefox process executed as a child will inherit environment variables from Spotify. - NSS library will be replaced, resulting in missing symbols. firefox.desktop[2946438]: XPCOMGlueLoad error for file /nix/store/8yc9g32afmgcv1j02y1zh69rhskpkcdc-firefox-112.0.2/lib/firefox/libxul.so: firefox.desktop[2946438]: /nix/store/br95hq0v4l2akqi1x7474ni3fm6nzp7v-nss-3.79.4/lib/libssl3.so: version `NSS_3.80' not found (required by /nix/store/8yc9g32afmgcv1j02y1zh69rhskpkcdc-firefox-112.0.2/lib/firefox/libxul.so) firefox.desktop[2946438]: Couldn't load XPCOM. Ideally, we would not use `LD_LIBRARY_PATH` but switching to the same nss version as Firefox uses is an easy workaround. --- pkgs/applications/audio/spotify/linux.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/applications/audio/spotify/linux.nix b/pkgs/applications/audio/spotify/linux.nix index df50e3bd28fc..bd869cc543bc 100644 --- a/pkgs/applications/audio/spotify/linux.nix +++ b/pkgs/applications/audio/spotify/linux.nix @@ -1,5 +1,5 @@ { fetchurl, lib, stdenv, squashfsTools, xorg, alsa-lib, makeShellWrapper, wrapGAppsHook, openssl, freetype -, glib, pango, cairo, atk, gdk-pixbuf, gtk3, cups, nspr, nss, libpng, libnotify +, glib, pango, cairo, atk, gdk-pixbuf, gtk3, cups, nspr, nss_latest, libpng, libnotify , libgcrypt, systemd, fontconfig, dbus, expat, ffmpeg, curlWithGnuTls, zlib, gnome , at-spi2-atk, at-spi2-core, libpulseaudio, libdrm, mesa, libxkbcommon , pname, meta, harfbuzz @@ -47,7 +47,7 @@ let libpulseaudio libxkbcommon mesa - nss + nss_latest pango stdenv.cc.cc systemd