Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vesktop: "your c++ library is too old to run venmic" #309897

Open
jemand771 opened this issue May 7, 2024 · 12 comments
Open

vesktop: "your c++ library is too old to run venmic" #309897

jemand771 opened this issue May 7, 2024 · 12 comments

Comments

@jemand771
Copy link
Contributor

Describe the bug

Trying to screenshare in vesktop reports the following problem/warning:

Failed to retrieve Audio Sources because your C++ library is too old to run venmic.
See this guide for possible solutions

Steps To Reproduce

Steps to reproduce the behavior:

  1. Install vesktop (from unstable in my case)
  2. Join any voice channel
  3. Open the screenshare dialog

Expected behavior

A list of audio sources (applications) should be displayed

Screenshots

screenshare dialog

image

Additional context

I initially ran into #306374 (pr: #306421) which prompted me to switch to unstable in the first place. My system is still on 23.11, but I pull vesktop from nixpkgs-unstable.
I'm new to nix+nixos (hi!) but as far as I can understand, this should still work.

Unlike the linked issue's reporter, I'm on x11 which I assume is why it's working for them but not me.

Notify maintainers

@getchoo @Scrumplex @vgskye @pluiedev

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

[willy@nixbox:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-linux"`
 - host os: `Linux 6.1.90, NixOS, 23.11 (Tapir), 23.11.20240504.651b470`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.18.1`
 - channels(root): `"nixos-23.11, nixos-unstable"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Add a 👍 reaction to issues you find important.

@Scrumplex
Copy link
Member

I think there isn't much we can do here for 23.11. Perhaps wait for 24.05 or pull in vesktop from unstable

@jemand771
Copy link
Contributor Author

jemand771 commented May 7, 2024

I am pulling from unstable D:

@Scrumplex
Copy link
Member

Oh, yeah, I just realized after re-reading the issue. I wonder if there is some more helpful log output for you. It seems to work fine for me, though I am on Sway

@jemand771
Copy link
Contributor Author

right, I could have run vesktop in a terminal to get the actual output. forgot to include that, whoops

[willy@nixbox:~]$ vesktop 
[arRPC > ipc] listening at /run/user/1000/discord-ipc-0
[arRPC > websocket] listening on 6463
[arRPC > process] started
Failed to import venmic Error: /nix/store/hc0jij4wmrcdrad7fd381r4x2j12d550-gcc-12.3.0-lib/lib/libstdc++.so.6: version `GLIBCXX_3.4.32' not found (required by /nix/store/4ywdc50cffx7wby1hh5iaqkllmdlid0p-vesktop-1.5.2/opt/Vesktop/resources/app.asar.unpacked/static/dist/venmic-x64.node)
    at process.func [as dlopen] (node:electron/js2c/node_init:2:2214)
    at Module._extensions..node (node:internal/modules/cjs/loader:1343:18)
    at Object.func [as .node] (node:electron/js2c/node_init:2:2441)
    at Module.load (node:internal/modules/cjs/loader:1098:32)
    at Module._load (node:internal/modules/cjs/loader:945:12)
    at c._load (node:electron/js2c/node_init:2:13672)
    at Module.require (node:internal/modules/cjs/loader:1122:19)
    at require (node:internal/modules/helpers:130:18)
    at yl (VCDMain:15:4752)
    at Ca (VCDMain:15:4978) {
  code: 'ERR_DLOPEN_FAILED'
}

@Scrumplex
Copy link
Member

Could you tell me what's the exact revision of Nixpkgs you are using for Vesktop? Current nixos-unstable produces a slightly different output

@jemand771
Copy link
Contributor Author

jemand771 commented May 7, 2024

from my flake.lock

    "nixpkgs": {
      "locked": {
        "lastModified": 1714782413,
        "narHash": "sha256-tbg0MEuKaPcUrnmGCu4xiY5F+7LW2+ECPKVAJd2HLwM=",
        "owner": "NixOS",
        "repo": "nixpkgs",
        "rev": "651b4702e27a388f0f18e1b970534162dec09aff",
        "type": "github"
      },
      "original": {
        "owner": "NixOS",
        "ref": "nixos-23.11",
        "repo": "nixpkgs",
        "type": "github"
      }
    },
    "nixpkgs-unstable": {
      "locked": {
        "lastModified": 1714763106,
        "narHash": "sha256-DrDHo74uTycfpAF+/qxZAMlP/Cpe04BVioJb6fdI0YY=",
        "owner": "NixOS",
        "repo": "nixpkgs",
        "rev": "e9be42459999a253a9f92559b1f5b72e1b44c13d",
        "type": "github"
      },
      "original": {
        "owner": "NixOS",
        "ref": "nixos-unstable",
        "repo": "nixpkgs",
        "type": "github"
      }
    }

this should be from "a couple of days ago™️", not sure exactly when

for completeness, here's how I defined them (this should be correct):

  inputs = {
    nixpkgs.url = "github:NixOS/nixpkgs/nixos-23.11";
    nixpkgs-unstable.url = "github:NixOS/nixpkgs/nixos-unstable";
  };

@Scrumplex
Copy link
Member

What is the output of ldd /nix/store/4ywdc50cffx7wby1hh5iaqkllmdlid0p-vesktop-1.5.2/opt/Vesktop/resources/app.asar.unpacked/static/dist/venmic-x64.node?

On my end I get this:

ldd: warning: you do not have execution permission for `./venmic-x64.node'
	linux-vdso.so.1 (0x00007ffe50dbd000)
	libpipewire-0.3.so.0 => /nix/store/wjxawc5kg90ijr011i8r1br5wpxx10ky-pipewire-1.0.5/lib/libpipewire-0.3.so.0 (0x0000746bac92b000)
	libpulse.so.0 => /nix/store/qhg3n4ld2aw0fyr5a1bb03bk8yyfnn3c-libpulseaudio-17.0/lib/libpulse.so.0 (0x0000746bac8d5000)
	libstdc++.so.6 => /nix/store/p3ffjixpnfgkqh20nsrc13vrj3yfi0nj-gcc-13.2.0-lib/lib/libstdc++.so.6 (0x0000746bac600000)
	libm.so.6 => /nix/store/apab5i73dqa09wx0q27b6fbhd1r18ihl-glibc-2.39-31/lib/libm.so.6 (0x0000746bac51d000)
	libgcc_s.so.1 => /nix/store/p3ffjixpnfgkqh20nsrc13vrj3yfi0nj-gcc-13.2.0-lib/lib/libgcc_s.so.1 (0x0000746bac8ae000)
	libc.so.6 => /nix/store/apab5i73dqa09wx0q27b6fbhd1r18ihl-glibc-2.39-31/lib/libc.so.6 (0x0000746bac330000)
	/nix/store/apab5i73dqa09wx0q27b6fbhd1r18ihl-glibc-2.39-31/lib64/ld-linux-x86-64.so.2 (0x0000746bacbb0000)
	libpulsecommon-17.0.so => /nix/store/qhg3n4ld2aw0fyr5a1bb03bk8yyfnn3c-libpulseaudio-17.0/lib/pulseaudio/libpulsecommon-17.0.so (0x0000746bac2aa000)
	libdbus-1.so.3 => /nix/store/asgpvq2q0fl49w1c65fggpzqkkiw0ch3-dbus-1.14.10-lib/lib/libdbus-1.so.3 (0x0000746bac253000)
	libsndfile.so.1 => /nix/store/bdd4409zqdxdp82rq7p8z5yxdqjqb56c-libsndfile-1.2.2/lib/libsndfile.so.1 (0x0000746bac1c9000)
	libsystemd.so.0 => /nix/store/ppf4k669sbm1kyggr7pbi34ycb62j6gp-systemd-minimal-255.4/lib/libsystemd.so.0 (0x0000746bac0ba000)
	libFLAC.so.12 => /nix/store/4n40harx8nqp2lsiqmfpn3w99si3f1ny-flac-1.4.3/lib/libFLAC.so.12 (0x0000746bac03a000)
	libvorbis.so.0 => /nix/store/5mp95b920k7djj6ip4ha4sgm9df9xx3g-libvorbis-1.3.7/lib/libvorbis.so.0 (0x0000746bac870000)
	libvorbisenc.so.2 => /nix/store/5mp95b920k7djj6ip4ha4sgm9df9xx3g-libvorbis-1.3.7/lib/libvorbisenc.so.2 (0x0000746babf8e000)
	libopus.so.0 => /nix/store/6j95x0gf0w6dr5zh7nc4rwbmr5qxf2kk-libopus-1.5.2/lib/libopus.so.0 (0x0000746babf27000)
	libogg.so.0 => /nix/store/gdkfgqbq27d88hbiqqjxpv68rljjnw15-libogg-1.3.5/lib/libogg.so.0 (0x0000746bac866000)
	libmpg123.so.0 => /nix/store/61cdki944hc7p8mgry2s68zk649qmz9b-libmpg123-1.32.6/lib/libmpg123.so.0 (0x0000746babeca000)
	libmp3lame.so.0 => /nix/store/nd5wjm6p4il5jcyb1nd1ljk3a0rfx95k-lame-3.100-lib/lib/libmp3lame.so.0 (0x0000746babe52000)
	libcap.so.2 => /nix/store/01xhvvrfkpfghp6r9iywahl9vd1ypgm0-libcap-2.69-lib/lib/libcap.so.2 (0x0000746babe46000)
	libmvec.so.1 => /nix/store/apab5i73dqa09wx0q27b6fbhd1r18ihl-glibc-2.39-31/lib/libmvec.so.1 (0x0000746babd4d000)

Notably libstdc++.so.6 is linked as /nix/store/p3ffjixpnfgkqh20nsrc13vrj3yfi0nj-gcc-13.2.0-lib/lib/libstdc++.so.6.

@jemand771
Copy link
Contributor Author

not sure what I'm looking at, but here you go:

ldd: warning: you do not have execution permission for `/nix/store/4ywdc50cffx7wby1hh5iaqkllmdlid0p-vesktop-1.5.2/opt/Vesktop/resources/app.asar.unpacked/static/dist/venmic-x64.node'
/nix/store/4ywdc50cffx7wby1hh5iaqkllmdlid0p-vesktop-1.5.2/opt/Vesktop/resources/app.asar.unpacked/static/dist/venmic-x64.node: /nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libm.so.6: version `GLIBC_2.39' not found (required by /nix/store/apab5i73dqa09wx0q27b6fbhd1r18ihl-glibc-2.39-31/lib/libmvec.so.1)
        linux-vdso.so.1 (0x00007ffe721ec000)
        libpipewire-0.3.so.0 => /nix/store/wjxawc5kg90ijr011i8r1br5wpxx10ky-pipewire-1.0.5/lib/libpipewire-0.3.so.0 (0x00007f51ed9ad000)
        libpulse.so.0 => /nix/store/qhg3n4ld2aw0fyr5a1bb03bk8yyfnn3c-libpulseaudio-17.0/lib/libpulse.so.0 (0x00007f51ed957000)
        libstdc++.so.6 => /nix/store/p3ffjixpnfgkqh20nsrc13vrj3yfi0nj-gcc-13.2.0-lib/lib/libstdc++.so.6 (0x00007f51ed600000)
        libm.so.6 => /nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libm.so.6 (0x00007f51ed877000)
        libgcc_s.so.1 => /nix/store/p3ffjixpnfgkqh20nsrc13vrj3yfi0nj-gcc-13.2.0-lib/lib/libgcc_s.so.1 (0x00007f51ed5db000)
        libc.so.6 => /nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib/libc.so.6 (0x00007f51ed3f2000)
        /nix/store/anlf335xlh41yjhm114swi87406mq5pw-glibc-2.38-44/lib64/ld-linux-x86-64.so.2 (0x00007f51edc32000)
        libpulsecommon-17.0.so => /nix/store/qhg3n4ld2aw0fyr5a1bb03bk8yyfnn3c-libpulseaudio-17.0/lib/pulseaudio/libpulsecommon-17.0.so (0x00007f51ed36c000)
        libdbus-1.so.3 => /nix/store/asgpvq2q0fl49w1c65fggpzqkkiw0ch3-dbus-1.14.10-lib/lib/libdbus-1.so.3 (0x00007f51ed315000)
        libsndfile.so.1 => /nix/store/bdd4409zqdxdp82rq7p8z5yxdqjqb56c-libsndfile-1.2.2/lib/libsndfile.so.1 (0x00007f51ed28b000)
        libsystemd.so.0 => /nix/store/ppf4k669sbm1kyggr7pbi34ycb62j6gp-systemd-minimal-255.4/lib/libsystemd.so.0 (0x00007f51ed17c000)
        libFLAC.so.12 => /nix/store/4n40harx8nqp2lsiqmfpn3w99si3f1ny-flac-1.4.3/lib/libFLAC.so.12 (0x00007f51ed0fc000)
        libvorbis.so.0 => /nix/store/5mp95b920k7djj6ip4ha4sgm9df9xx3g-libvorbis-1.3.7/lib/libvorbis.so.0 (0x00007f51ed0c2000)
        libvorbisenc.so.2 => /nix/store/5mp95b920k7djj6ip4ha4sgm9df9xx3g-libvorbis-1.3.7/lib/libvorbisenc.so.2 (0x00007f51ed016000)
        libopus.so.0 => /nix/store/6j95x0gf0w6dr5zh7nc4rwbmr5qxf2kk-libopus-1.5.2/lib/libopus.so.0 (0x00007f51ecfaf000)
        libogg.so.0 => /nix/store/gdkfgqbq27d88hbiqqjxpv68rljjnw15-libogg-1.3.5/lib/libogg.so.0 (0x00007f51ed867000)
        libmpg123.so.0 => /nix/store/61cdki944hc7p8mgry2s68zk649qmz9b-libmpg123-1.32.6/lib/libmpg123.so.0 (0x00007f51ecf52000)
        libmp3lame.so.0 => /nix/store/nd5wjm6p4il5jcyb1nd1ljk3a0rfx95k-lame-3.100-lib/lib/libmp3lame.so.0 (0x00007f51eceda000)
        libcap.so.2 => /nix/store/01xhvvrfkpfghp6r9iywahl9vd1ypgm0-libcap-2.69-lib/lib/libcap.so.2 (0x00007f51ecece000)
        libmvec.so.1 => /nix/store/apab5i73dqa09wx0q27b6fbhd1r18ihl-glibc-2.39-31/lib/libmvec.so.1 (0x00007f51ecdd5000)

@Scrumplex
Copy link
Member

I think this is an incarnation of #84043. Not sure if we can do much about it :/

@jemand771
Copy link
Contributor Author

I've looked over the issue you linked, but I don't really understand the problem

what does this mean for me? will this magically fix itself eventually (e.g. when 24.05. comes out)? why is this only broken for some people/just me, but not others? (I assume others would have reported it already)

@Scrumplex
Copy link
Member

The issue seems to be the glibc that is shipped by NixOS 23.11. I am not 100% sure why this issue is present, because I would expect venmic to inherit the glibc that's used to launch Vesktop in the first place (which should be one from unstable).

If you were to move your system to unstable (or 24.05 soon) it should be fixed.

@jemand771
Copy link
Contributor Author

alright, that's fine by me. I think I can wait the 3-ish weeks :b

thanks a ton for your patience and super quick replies! ✨

we can close this ticket as "will fix itself" or leave it open until 24.05 is out - you pick

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants