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.
This commit is contained in:
Jan Tojnar 2023-04-30 21:19:04 +02:00 committed by GitHub
parent b00a5321bb
commit 699e707e90
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -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