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

Request: Please add net-dns/libidn-compat to the second life viewers #17

Open
ntheo1979 opened this issue Jan 12, 2022 · 4 comments
Open
Assignees

Comments

@ntheo1979
Copy link

Hello Paul. Would it be possible to add net-dns/libidn-compat as a dependency to Firestorm and the other viewers? It is necessary for voice to work. The package exists in two overlays: https://gpo.zugaina.org/net-dns/libidn-compat. Thank you.

@lmiphay
Copy link
Owner

lmiphay commented Feb 6, 2022

From #15 (comment)

Wine (sadly) is the safest choice, I would the suggest using the 64 bit slvoice.exe (using FSLinuxEnableWin64VoiceProxy debug)

And that is:

$ 7z e Phoenix-Firestorm-Releasex64-6-4-21-64531_Setup.exe SLVoice.exe
7-Zip [64] 16.02 : Copyright (c) 1999-2016 Igor Pavlov : 2016-05-21
p7zip Version 16.02 (locale=en_IE.utf8,Utf16=on,HugeFiles=on,64 bits,8 CPUs Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz (306C3),ASM,AES-NI)

Scanning the drive for archives:
1 file, 123091053 bytes (118 MiB)

Extracting archive: Phoenix-Firestorm-Releasex64-6-4-21-64531_Setup.exe
--       
Path = Phoenix-Firestorm-Releasex64-6-4-21-64531_Setup.exe
Type = Nsis
Physical Size = 123091053
Method = LZMA:23
Solid = +
Headers Size = 960736
Embedded Stub Size = 409600
SubType = NSIS-3 Unicode BadCmd=11

Everything is Ok  

Size:       104448
Compressed: 123091053
$ ls -l SLVoice.exe 
-rw-r--r-- 1 lmiphay lmiphay 104448 Apr  3  2020 SLVoice.exe
$

@ntheo1979
Copy link
Author

Thanks, I'll try that. Where should I put the SLVoice.exe file, though? Which was the working directory in the process above?

@lmiphay
Copy link
Owner

lmiphay commented Feb 6, 2022

Actually there is a 32 bit (it looks like) binary already bundled in the linux tarball:

$ ls -l /opt/firestorm-bin/bin/win32/SLVoice.exe 
-rwxr-xr-x 1 root root 2383360 Jul 21  2021 /opt/firestorm-bin/bin/win32/SLVoice.exe
$ file /opt/firestorm-bin/bin/win32/SLVoice.exe 
/opt/firestorm-bin/bin/win32/SLVoice.exe: PE32 executable (GUI) Intel 80386 (stripped to external PDB), for MS Windows
$

However the one from the MSWin 64 bit FS installer seems to be 64 bit:

$ file SLVoice.exe 
SLVoice.exe: PE32+ executable (GUI) x86-64, for MS Windows

There is also a set of windows DLL's and certificate bundle in that directory which is all presumably needed.

The relevant code is in LLVivoxVoiceClient::startAndLaunchDaemon():

        std::string exe_path = gDirUtilp->getExecutableDir();
        // <FS:ND> On Linux the viewer can run SLVoice.exe through wine (https://www.winehq.org/)
        //gDirUtilp->append(exe_path, "SLVoice");
        if( !viewerUsesWineForVoice() )
            gDirUtilp->append(exe_path, "SLVoice"); // native version
        else
            gDirUtilp->append(exe_path, "win32/SLVoice.exe"); // use bundled win32 version
        // </FS:ND>

and:

            // vivox executable exists.  Build the command line and launch the daemon.
            LLProcess::Params params;

            // <FS:ND> On Linux the viewer can run SLVoice.exe through wine (https://www.winehq.org/)
            params.executable = exe_path;

            if( !viewerUsesWineForVoice() )
                params.executable = exe_path;
            else
            {
                params.executable = "wine";
                params.args.add( exe_path );
            }
            //</FS:ND>

The fs ticket which originated the voice via wine support: https://jira.firestormviewer.org/browse/FIRE-19663

@Nicky-D
Copy link

Nicky-D commented Feb 6, 2022

We package both 32 and 64 Bit windows voice. I think this will only come with 6.5.3 (next release). You will then find a bin/win64 folder with 64 bit voice.

ls -1 bin/win*
bin/win32:
DbgHelp.dll
SLVoice.exe
ortp.dll
ortp.pdb
vivoxsdk.dll
vivoxsdk.lib
vivoxsdk.pdb
zlib1.dll

bin/win64:
DbgHelp.dll
SLVoice.exe
ortp_x64.dll
ortp_x64.pdb
vivoxsdk_x64.dll
vivoxsdk_x64.lib
vivoxsdk_x64.pdb

See also https://vcs.firestormviewer.org/phoenix-firestorm/changeset/ef7ee0a17bd5e7fe3bb7d740ecc73d6fed2612ca

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

No branches or pull requests

3 participants