Building from source - vrcx-team/VRCX GitHub Wiki
Windows
-
Get source code
- Download latest source code zip or clone repo with
git clone "https://github.com/vrcx-team/VRCX.git"
- Download latest source code zip or clone repo with
-
Build Node.js
- Download and install "Windows Installer (.msi)" for Node.js LTS.
- Browse to
build-scripts\node
folder and run these files in this order.- Restore node modules (only necessity for first build)
restore-node-dependencies.cmd
- Choose your build type (needs to match up with dotnet) Release/Debug:
build-node-release.cmd
/build-node-debug.cmd
- In
build-scripts
openmake-junction.cmd
- Restore node modules (only necessity for first build)
- These scripts will set up the Node.js environment and create necessary symbolic links for the build process.
-
Build .NET
- Install .NET 9.0 SDK x64
- Install Microsoft Visual C++ 2022
- Install Visual Studio or Rider if they aren't already installed.
- In Visual Studio/Rider "Open Project/Solution" and browse to the Solution file (.sln) provided inside the downloaded source code.
- Set Configuration to Release/Debug (needs to match up with node.js), Platform to "x64" and Project to "VRCX-Cef".
- Restore NuGet packages.
- VS: Right click "Solution" in Solution Explorer -> Restore NuGet Packages
- Rider: Tools -> NuGet -> NuGet Restore
- Start/Run Project.
Windows Extras
-
Run build outside of IDE
.\build\Cef\VRCX.exe
- Release: Auto build script changes with
npm run watch
then reload withCtrl + R
- Debug: Hot-reload with
npm run dev
-
Create release zip
-
Create release setup
- Run
build-scripts\build-all.ps1
this will also runs all the steps above for you.
- Run
Linux
-
Get source code
- Download latest source code zip or clone repo with
git clone "https://github.com/vrcx-team/VRCX.git"
- Download latest source code zip or clone repo with
-
Build .NET
- Install Dotnet 9.0 SDK
- arch
sudo pacman -S dotnet-sdk-9.0
- ubuntu
sudo apt install dotnet-sdk-9.0
- other Install .NET on Linux
- arch
- Build Dotnet
- GUI: Open solution file (.sln) with Rider, restore NuGet packages and build project "VRCX-Electron".
- CLI: Run
dotnet build 'Dotnet/VRCX-Electron.csproj' -p:Configuration=Release -p:Platform=x64 -p:RestorePackagesConfig=true -t:"Restore;Clean;Build" -m --self-contained
- Install Dotnet 9.0 SDK
-
Build Node.js
- Install nodejs and npm
- arch
sudo pacman -S nodejs npm
- ubuntu
sudo apt install nodejs npm
- other Installing Node.js via Package Managers
- arch
- Restore node modules, only necessity for first build
npm ci
- Build main app
npm run prod-linux
ornpm run watch-linux
for auto build - Build electron, only necessity for first build
npm run build-electron
- Launch app
npm run start-electron
- Install nodejs and npm
macOS
- ARM64 (Unofficial support by @i0ntempest)
- Install .NET 9 x64 SDK, node and npm.
export DOTNET_ROOT=/usr/local/share/dotnet/x64
node src-electron/patch-package-version.js
/usr/local/share/dotnet/x64/dotnet build Dotnet/VRCX-Electron.csproj -c Release -a x64 -v detailed
npm install --arch=x64
npm run prod-linux --arch=x64
- Change deployment target based on your OS version
./node_modules/.bin/electron-builder -c.mac.minimumSystemVersion=15.0 -c.mac.target=dir -c.mac.identity=null -c.mac.category=public.app-category.utilities --x64
- Optionally sign the app bundle
codesign --sign - --deep build/mac/VRCX.app/
- x64
- Install brew
brew install --cask dotnet-sdk
brew install node git
git clone "https://github.com/vrcx-team/VRCX.git"
cd VRCX
dotnet build Dotnet/VRCX-Electron.csproj -c Release
npm ci
npm run prod-linux
npm run build-electron
npm run start-electron
or open ./VRCX/build folder for .app and .dmg files