Creando el instalador

Last Updated on April 17, 2026

Sigue la guía de compilación para saber cómo compilar Overte para tu plataforma.

Durante la generación, CMake debe producir un target install y un target package.

El target install copiará los targets Overte y sus dependencias a CMAKE_INSTALL_PREFIX. Esta variable es establecida por el comando project(hifi) en CMakeLists.txt a C:/Program Files/hifi y almacenada en build/CMakeCache.txt

Empaquetamiento

Para producir un instalador, ejecute el target package. Sin embargo, deberá seguir los pasos específicos para su plataforma que se indican a continuación.

Windows

Prerrequisitos

Para producir un instalador ejecutable en Windows, se requiere lo siguiente:

  1. 7-zip

  2. Nullsoft Scriptable Install System - 3.04 Instalación predeterminada (se instalará en C:\Program Files (x86)\NSIS)

  3. NSIS Plugins Copie el contenido en C:\Program Files (x86)\NSIS. Alternativamente, instale lo siguiente:

    1. UAC Plug-in for Nullsoft - 0.2.4c

      1. Extraer el Zip

      2. Copiar UAC.nsh a C:\Program Files (x86)\NSIS\Include\

      3. Copiar Plugins\x86-ansi\UAC.dll a C:\Program Files (x86)\NSIS\Plugins\x86-ansi\

      4. Copiar Plugins\x86-unicode\UAC.dll a C:\Program Files (x86)\NSIS\Plugins\x86-unicode\

    2. nsProcess Plug-in for Nullsoft - 1.6 (use el enlace nsProcess_1_6.7z)

      1. Extraer el Zip

      2. CopiarInclude\nsProcess.nsh a C:\Program Files (x86)\NSIS\Include\

      3. Copiar Plugins\nsProcess.dll a C:\Program Files (x86)\NSIS\Plugins\x86-ansi\

      4. Copiar Plugins\nsProcessW.dll a C:\Program Files (x86)\NSIS\Plugins\x86-unicode\

    3. InetC Plug-in for Nullsoft - 1.0

      1. Extraer el Zip

      2. CopiarPlugin\x86-ansi\InetC.dll a C:\Program Files (x86)\NSIS\Plugins\x86-ansi\

      3. Copiar Plugin\x86-unicode\InetC.dll a C:\Program Files (x86)\NSIS\Plugins\x86-unicode\

    4. NSISpcre Plug-in for Nullsoft - 1.0

      1. Extraer el Zip

      2. CopiarNSISpre.nsh a C:\Program Files (x86)\NSIS\Include\

      3. Copiar NSISpre.dll a C:\Program Files (x86)\NSIS\Plugins\x86-ansi\

    5. nsisSlideshow Plug-in for Nullsoft - 1.7

      1. Extraer el Zip

      2. Copiar bin\nsisSlideshow.dll a C:\Program Files (x86)\NSIS\Plugins\x86-ansi\

      3. Copiar bin\nsisSlideshowW.dll a C:\Program Files (x86)\NSIS\Plugins\x86-unicode\

    6. Nsisunz plug-in para Nullsoft

      1. Descargar los Zips y descomprimir

      2. Copiar nsisunz\Release\nsisunz.dll a C:\Program Files (x86)\NSIS\Plugins\x86-ansi\

      3. Copiar NSISunzU\Plugin unicode\nsisunz.dll a C:\Program Files (x86)\NSIS\Plugins\x86-unicode\

    7. ApplicationID plug-in para Nullsoft - 1.0

      1. Descargar Pre-built DLLs

      2. Extraer el Zip

      3. Copiar Release\ApplicationID.dll a C:\Program Files (x86)\NSIS\Plugins\x86-ansi\

      4. CopiarReleaseUnicode\ApplicationID.dll a C:\Program Files (x86)\NSIS\Plugins\x86-unicode\

    8. Node.JS y NPM

      1. Instalar la versión 10.15.0 LTS (o superior)

Firma del Código (opcional)

Para que la firma de código funcione, necesitarás establecer las variables de entorno HF_PFX_FILE y HF_PFX_PASSPHRASE para que estén presentes durante la ejecución de CMake y de forma global cuando procedamos a empaquetar el instalador.

Creación del instalador

  1. Realizar una Instalación Limpia desde un nuevo terminal.

  2. Abra la solución overte.sln con permisos de administrador en Visual Studio y seleccione la configuración Release.

  3. Construir la solución.

  4. Construirpackaged-server-console (que se encuentra en Server Console) Esto agregar 2 directorios a build\server-console\ - server-console-win32-x64 y x64

  5. Construir CMakeTargets->PACKAGE El instalador estará disponible en build\_CPack_Packages\win64\NSIS

Crear un Paquete de Avatar MSIX

  1. Consigue la “Herramienta de empaquetado MSIX” de la Tienda Windows.

  2. Ejecute el proceso para crear un nuevo paquete MSIX a partir de un instalador .exe o .msi existente. Este proceso te permitirá instalar Overte con el instalador habitual, sin embargo hará seguimiento a los cambios para replicar la funcionalidad en el Paquete MSIX. Por lo tanto, evitar hacer cualquier otra cosa en durante este proceso.

  3. Asegúrese de no seleccionar ningún acceso directo e instale sólo la interfaz Overte.

  4. Cuando se le pregunte por los puntos de «Entrada», seleccione sólo la entrada Interface y no el "desinstalador". Esto se debe a que el paquete MSIX es desinstalado por el propio Windows. Si por alguna razón el desinstalador aparece de todos modos, puede editar el manifiesto para quitarlo manualmente, incluso si el desinstalador está presente en el paquete. Esto es necesario para subir a la Tienda Windows.

  5. Una vez completado, puedes firmar el paquete con esta aplicación o con otras herramientas como “MSIX Hero”. Debe firmarse con un certificado local para probarlo, y con un certificado propio para distribuirlo.

  6. Si lo subes a la Tienda Windows, tendrás que asegurarte de que toda la información del manifiesto, incluida la información del editor, coincide con la registrada en tu cuenta de desarrollador de Microsoft para Windows. Verás estos errores y los valores esperados al validarlo.

PREGUNTAS FRECUENTES

  1. Problema: Error al abrir un archivo. File: failed opening file "\FOLDERSHARE\XYZSRelease\...\Credits.rtf" Error in script "C:\TFS\XYZProject\Releases\NullsoftInstaller\XYZWin7Installer.nsi" on line 77 -- aborting creation process

    1. Causa: La ruta completa (directorio actual + ruta relativa) debe tener < 260 carácteres.

    2. Solución: Mueva los directorios de build y packaging a un nivel superior en el disco.

MacOS

  1. Asegúrese de que cumple todos los requisitos de la Guía de compilación de macOS.

  2. Realiza un CMake limpio en tu carpeta de compilación, por ejemplo.

    cmake -DOVERTE_GIT_COMMIT_SHORT="Insert short hash of your last Git commit" -DOVERTE_RELEASE_NUMBER="Insert Release Version Here e.g. 1.1.0" -DOVERTE_RELEASE_TYPE=PRODUCTION -DCMAKE_OSX_SYSROOT="/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk" -DOVERTE_BUILD_SERVER=0 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.12 -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl -DOSX_SDK=10.12  ..
    
  3. Elije un método para crear y empaquetar tu versión.

Opción A: Usa Xcode GUI

  1. Realice una compilación Release de ALL_BUILD

  2. Realizar una Release build de packaged-server-console Esto agregará un directorio a build\server-console\ - Sandbox-darwin-x64

  3. Realice un "Release build" de package El instalador está ahora en build/_CPack_Packages/Darwin/DragNDrop

Opción B: Use el terminal

  1. Vaya al directorio de compilación desde la consola.

  2. make -j4, puede cambiar el número para que coincida con el número de hilos que desea utilizar.

  3. make package para crear el paquete.

Linux

Cliente

AppImage

Las AppImages de Overte se construyen usando linuxdeploy y linuxdeploy-plugin-qt. Las AppImages necesitan ser construidas usando la versión glibc de la distribución de Linux más antigua en la que se supone que van a funcionar. Nuestro objetivo es el Ubuntu LTS más antiguo que todavía reciba actualizaciones de seguridad estándar (no ESM).

  1. Prepare el ambiente de compilación siguiendo la Guía de compilación para Linux.

  2. Configurar Interface

    cmake --preset conan-release
    
  3. Crear AppImage

    cmake --build --preset conan-release --target package
    

    CPack construirá el target ALL en lugar de INTERFACE, lo cual es una limitación de CPack.

  4. Lint con appimagelint para verificar en cual distribución Linux la AppImage será capaz de ejecutarse.

Alternatively, you can also create the AppImage manually:

  1. Compilar las Interfaz

    cmake --build --preset conan-release --target interface
    
  2. Copiar build/interface/plugins build/interface/scripts build/interface/resources.rcc y build/interface/resources a build/AppDir/usr/bin/

  3. Copiar interface/org.overte.interface.appdata.xml a build/AppDir/usr/share/metainfo/org.overte.interface.appdata.xml

  4. Ejecute linuxdeploy (asegúrese que el linuxdeploy-plugin-qt esté en el mismo directorio que linuxdeploy y que juntos sean ejecutables)

    export "QML_SOURCES_PATHS=interface/resources/qml/"
    export "LINUXDEPLOY_EXCLUDED_LIBRARIES=libnss3.so;libnssutil3.so"
    ~/temp/linuxdeploy-x86_64.AppImage --appdir build/AppDir --executable build/interface/interface --deploy-deps-only build/AppDir/usr/bin/plugins --output appimage --plugin qt --icon-file interface/icon/interface.svg --desktop-file interface/org.overte.interface.desktop
    

Servidor

Paquete Debian
Construyendo los paquetes Debian del servidor Overte usando Docker
  1. Construya la imagen Docker como se indica en el Dockerfile en tools/ci-scripts/deb_package/

  2. Cree/inicie el contenedor. Por ejemplo: docker run -v $(pwd)/../../..:/overte -it overte/overte-server-build:0.1.2-debian-11-amd64

  3. Preparar el ambiente de compilación

cd overte
mkdir build
rm -rf build/*
conan install . -s build_type=Release -b missing -pr:b=default -of build
cmake --preset conan-release -DOVERTE_BUILD_CLIENT=false -DOVERTE_BUILD_TOOLS=true
  1. Compilar

cmake --build --preset conan-release --target domain-server assignment-client oven
  1. Crear un Paquete Debian

cd pkg-scripts
DEBVERSION="1-experimental-debian-11" DEBEMAIL="julian.gro@overte.org" DEBFULLNAME="Julian Groß" ./make-deb-server
Paquete RPM
Creación de paquetes RPM del servidor Overte mediante Docker
  1. Cree la imagen Docker conforme al Dockerfile en tools/ci-scripts/rpm_package/

  2. Cree/Inicie el contenedor. Por ejemplo: docker run -v $(pwd)/../../..:/overte -it overte/overte-server-build:0.1.2-fedora-36-amd64

  3. Preparar el ambiente de compilación

cd overte
mkdir build
rm -rf build/*
conan install . -s build_type=Release -b missing -pr:b=default -of build
cmake --preset conan-release -DOVERTE_BUILD_CLIENT=false -DOVERTE_BUILD_TOOLS=true
  1. Compilar

cmake --build --preset conan-release --target domain-server assignment-client oven
  1. Crear un Paquete RPM

cd pkg-scripts
RPMVERSION="1.experimental" ./make-rpm-server