Change:
mkdir -p $out/share/icons/hicolor/$path/apps cp $icon $out/share/icons/hicolor/$path/apps/us.zoom.Zoom.png done <del> ln -s $out/share/zoom-us/zoom $out/bin/zoom-us </del> ''; <ins> # $out/share/zoom-us isn't in auto-wrap directories list, need manual wrapping dontWrapQtApps = true; </ins> qtWrapperArgs = [ ''--prefix PATH : ${makeBinPath [ coreutils glib.dev pciutils procps qttools.dev utillinux ]}'' ''--prefix LD_PRELOAD : ${libv4l}/lib/libv4l/v4l2convert.so'' <ins> # --run "cd ${placeholder "out"}/share/zoom-us" # ^^ unfortunately, breaks run arg into multiple array elements, due to # some bad array propagation. We'll do that in bash below </ins> ]; <ins> postFixup = '' # Zoom expects "zopen" executable (needed for web login) to be present in CWD. Or does it expect # everybody runs Zoom only after cd to Zoom package directory? Anyway, :facepalm: qtWrapperArgs+=( --run "cd ${placeholder "out"}/share/zoom-us" ) for app in ZoomLauncher zopen zoom; do wrapQtApp $out/share/zoom-us/$app done ln -s $out/share/zoom-us/ZoomLauncher $out/bin/zoom-us ''; </ins> passthru.updateScript = ./update.sh; meta = { <del> homepage = https://zoom.us/; </del> <ins> homepage = "https://zoom.us/"; </ins> description = "zoom.us video conferencing application"; license = stdenv.lib.licenses.unfree; platforms = builtins.attrNames srcs;

Discussion:
Describe the bug SSO login in zoom just opens the default browser that loads the default homepage To Reproduce Steps to reproduce the behavior: zoom-us sign-in sign in with google Expected behavior A browser should open pointed at the Google SSO page Screenshots Additional context Seems like the argument isn't passed properly to the browser. Possibly wrapper issue or the default-browser-command-thing is somehow swallowing the parameter. Metadata system: host os: multi-user?: sandbox: version: channels(root): nixpkgs: Maintainer information:
Looks similar to cc
Also
FYI - from memory (as I also have this issue) I at least convinced zoom to launch the correct URL by symlinking the binary into the folder of the derivation. IIRC it uses that binary (alongside other means? can't remember) to launch the browser process but expects it to reside alongside the main binary and unless it's under it can't be found. That was unfortunately as far I got as upon signing it through the browser window the main zoom window would get stuck on "Connecting.." screen and I didn't have any luck getting past that :-/. EDIT: may have remembered wrong - zopen needs to sit in the current working directory (!).
indeed, confirmed that wtih : so zoom must be executed while sitting in directory. Now we have to find out how to pass this to ....
Yup, still launches one useless browser window for me (with - not sure why / what for) but eventually uses zopen to open the correct URL. And the "Connecting..." issue from my previous post seems to be due to using zoom from 19.09 - with zoom from unstable and making zopen available I can actually authenticate. Only tested with manual steps so I'm also not sure how to incorporate that into the derivation.
Also zopen seems to need some wrapping, because running directly causes qt5 to complain (so I assume it needs qt wrapping) Unless zopen will inherit the env of zoom I guess the fix could be to add --prefix PATH "$out/share/zoom-us" to wrapProgram, so it can find the binary
It seems to look specifically in $PWD so I'm not sure PATH would work.

Hmm, perhaps... :-D
If it looks in PWD, why not CD in the wrapper Another idea would be to move the zoom binary to share and symlink it to bin, so it would pick up share as it's PWD
Indeed, didn't realise there's argument to which could perhaps be used to switch to the correct directory before launching the executable?
Thanks for tne tip, now I know that, too (I'm literally just guessing all of this xD - but yeah, that's programming in a nutshell, except afterwards someone puts in on stackoverflow ^^)
okay, I've started on fixing this. I found also that our current .desktop file refers to incorrect mime schema ( but should ). This is necessary to make web URL to launch zoom app. EDIT: no, mime schema is fine, it is just me dumb reading...