mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-05 03:34:24 +02:00
Initial AppImage packaging on Conan.
This commit is contained in:
parent
881a0ce999
commit
e2d3e826d5
4 changed files with 234 additions and 2 deletions
36
INSTALLER.md
36
INSTALLER.md
|
@ -1,13 +1,13 @@
|
|||
<!--
|
||||
Copyright 2013-2019 High Fidelity, Inc.
|
||||
Copyright 2020-2021 Vircadia contributors
|
||||
Copyright 2021-2022 Overte e.V.
|
||||
Copyright 2021-2025 Overte e.V.
|
||||
SPDX-License-Identifier: Apache-2.0
|
||||
-->
|
||||
|
||||
# Creating an Installer
|
||||
|
||||
*Last Updated on June 16, 2021*
|
||||
*Last Updated on April 12, 2025*
|
||||
|
||||
Follow the [build guide](BUILD.md) to figure out how to build Overte for your platform.
|
||||
|
||||
|
@ -130,6 +130,38 @@ For code signing to work, you will need to set the `HF_PFX_FILE` and `HF_PFX_PAS
|
|||
|
||||
### Linux
|
||||
|
||||
#### Client
|
||||
|
||||
##### AppImage
|
||||
|
||||
Overte Interface AppImages are built using [linuxdeploy](https://github.com/linuxdeploy/linuxdeploy) and [linuxdeploy-plugin-qt](https://github.com/linuxdeploy/linuxdeploy-plugin-qt).
|
||||
**AppImages need to be built using the glibc version of the oldest Linux distribution it is supposed to run on.** We target the oldest Ubuntu LTS which still receives standard (not ESM) security updates.
|
||||
|
||||
1. Prepare build environment
|
||||
Follow the [Linux build guide](BUILD_LINUX.md).
|
||||
|
||||
2. Configure Interface (**Make sure that OVERTE_CPU_ARCHITECTURE is set to an empty string or `-msse3` depending on target CPU architecture!**)
|
||||
```bash
|
||||
cmake --preset conan-release -DOVERTE_CPU_ARCHITECTURE=-msse3
|
||||
```
|
||||
|
||||
3. Build Interface
|
||||
```bash
|
||||
cmake --build --preset conan-release --target interface
|
||||
```
|
||||
|
||||
4. Copy `build/interface/plugins` `build/interface/scripts` `build/interface/resources.rcc` and `build/interface/resources` into `build/AppDir/usr/bin/`
|
||||
|
||||
5. Copy `interface/org.overte.interface.appdata.xml` to `build/AppDir/usr/share/metainfo/org.overte.interface.appdata.xml`
|
||||
|
||||
6. Run linuxdeploy (make sure that linuxdeploy-plugin-qt is next to linuxdeploy and that both are executable)
|
||||
```bash
|
||||
export "QML_SOURCES_PATHS=interface/resources/qml/"
|
||||
~/temp/linuxdeploy-x86_64.AppImage --appdir build/AppDir --executable build/interface/interface --output appimage --plugin qt --icon-file interface/icon/interface.svg --desktop-file interface/org.overte.interface.desktop
|
||||
```
|
||||
|
||||
7. Lint with [appimagelint](https://github.com/TheAssassin/appimagelint) to check which Linux distributions the AppImage will likely be able to run on.
|
||||
|
||||
#### Server
|
||||
|
||||
##### Debian package
|
||||
|
|
76
interface/icon/interface.svg
Normal file
76
interface/icon/interface.svg
Normal file
|
@ -0,0 +1,76 @@
|
|||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
||||
|
||||
<svg
|
||||
width="14.816667mm"
|
||||
height="14.816667mm"
|
||||
viewBox="0 0 14.816667 14.816667"
|
||||
version="1.1"
|
||||
id="svg5"
|
||||
inkscape:version="1.1.1 (3bf5ae0d25, 2021-09-20)"
|
||||
sodipodi:docname="LOGO_Overte_Interface.svg"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns="http://www.w3.org/2000/svg"
|
||||
xmlns:svg="http://www.w3.org/2000/svg"
|
||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
||||
xmlns:cc="http://creativecommons.org/ns#"
|
||||
xmlns:dc="http://purl.org/dc/elements/1.1/">
|
||||
<title
|
||||
id="title715">LOGO_Overte_Interface</title>
|
||||
<sodipodi:namedview
|
||||
id="namedview7"
|
||||
pagecolor="#d1d1d1"
|
||||
bordercolor="#666666"
|
||||
borderopacity="1.0"
|
||||
inkscape:pageshadow="2"
|
||||
inkscape:pageopacity="0"
|
||||
inkscape:pagecheckerboard="true"
|
||||
inkscape:document-units="mm"
|
||||
showgrid="false"
|
||||
inkscape:zoom="1.2057243"
|
||||
inkscape:cx="163.38727"
|
||||
inkscape:cy="60.959209"
|
||||
inkscape:window-width="1627"
|
||||
inkscape:window-height="1011"
|
||||
inkscape:window-x="1705"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="layer4" />
|
||||
<defs
|
||||
id="defs2" />
|
||||
<g
|
||||
inkscape:groupmode="layer"
|
||||
id="layer4"
|
||||
inkscape:label="pastille"
|
||||
style="display:inline"
|
||||
transform="translate(-64.878913,-47.104301)">
|
||||
<circle
|
||||
style="fill:#6667ab;fill-opacity:1;stroke-width:0.326686"
|
||||
id="path12778"
|
||||
cx="72.287247"
|
||||
cy="54.512634"
|
||||
r="7.4083333" />
|
||||
</g>
|
||||
<g
|
||||
inkscape:label="Letters"
|
||||
inkscape:groupmode="layer"
|
||||
id="layer1"
|
||||
style="display:inline"
|
||||
transform="translate(-64.878913,-47.104301)">
|
||||
<path
|
||||
style="fill:#ffffff;fill-opacity:1;stroke-width:0.0240699"
|
||||
d="m 71.752748,60.147164 c -1.377172,-0.14605 -2.574378,-0.732869 -3.530213,-1.730362 -0.825342,-0.861313 -1.341717,-1.931985 -1.516444,-3.144257 -0.04744,-0.329165 -0.04014,-1.234694 0.01269,-1.573208 0.220327,-1.411764 0.906991,-2.625395 2.001937,-3.538291 0.406864,-0.339217 0.998514,-0.688227 1.513503,-0.892803 0.204169,-0.0811 0.718969,-0.241851 0.774539,-0.241851 0.02985,0 0.03471,0.208002 0.03471,1.487877 v 1.48788 l -0.09026,0.04291 c -0.261261,0.124198 -0.69358,0.506545 -0.926976,0.819823 -0.7253,0.973539 -0.719063,2.366351 0.01495,3.335577 0.675906,0.892517 1.728786,1.300709 2.82169,1.093946 1.110321,-0.210056 2.027379,-1.147031 2.226244,-2.274592 0.04085,-0.23159 0.04094,-0.754422 2.06e-4,-0.986869 -0.07876,-0.449196 -0.279384,-0.901684 -0.549607,-1.239604 -0.23905,-0.298937 -0.685088,-0.667484 -0.963399,-0.796026 L 73.475802,51.95089 73.4751,50.476605 c -4.67e-4,-1.042841 0.007,-1.474284 0.02546,-1.474284 0.05635,0 0.413281,0.100024 0.646028,0.181038 2.077867,0.723258 3.543285,2.558867 3.779523,4.734302 0.03259,0.300057 0.03259,0.917373 0,1.21743 -0.116007,1.068259 -0.594065,2.195254 -1.273315,3.001776 -0.907409,1.077435 -2.114515,1.75767 -3.504262,1.974746 -0.280638,0.04384 -1.116884,0.06513 -1.395838,0.03555 z"
|
||||
id="path339"
|
||||
sodipodi:nodetypes="cssssssscsscsscssccscsssscc" />
|
||||
</g>
|
||||
<metadata
|
||||
id="metadata713">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
<dc:title>LOGO_Overte_Interface</dc:title>
|
||||
</cc:Work>
|
||||
</rdf:RDF>
|
||||
</metadata>
|
||||
</svg>
|
After Width: | Height: | Size: 3.4 KiB |
116
interface/org.overte.interface.appdata.xml
Normal file
116
interface/org.overte.interface.appdata.xml
Normal file
|
@ -0,0 +1,116 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!--
|
||||
Copyright 2023 Dale Glass <dale\@daleglass.net>
|
||||
Copyright 2023-2025 Overte e.V.
|
||||
-->
|
||||
<component type="desktop-application">
|
||||
<id>org.overte.interface</id>
|
||||
<metadata_license>FSFAP</metadata_license>
|
||||
<project_license>Apache-2.0</project_license>
|
||||
<name>Overte</name>
|
||||
<summary>Overte open-source social-VR client</summary>
|
||||
<summary xml:lang="de">Quelloffene Social-VR Anwendung</summary>
|
||||
<developer id="org.overte">
|
||||
<name>Overte e.V.</name>
|
||||
</developer>
|
||||
<content_rating type="oars-1.1">
|
||||
<content_attribute id="social-chat">moderate</content_attribute>
|
||||
<content_attribute id="social-audio">moderate</content_attribute>
|
||||
</content_rating>
|
||||
<description>
|
||||
<p>
|
||||
Overte is an open source virtual worlds and social VR software which enables you to create and share virtual worlds as virtual reality (VR) and desktop experiences. You can create and host your own virtual world, explore other worlds, meet and connect with other users, attend or host live VR events, and much more.
|
||||
</p>
|
||||
<p>
|
||||
The Overte software provides the following key features:
|
||||
</p>
|
||||
<ul>
|
||||
<li>Collaborative world creation and editing</li>
|
||||
<li>VR support, including body tracking</li>
|
||||
<li>Scalability for up to 500 users in a single world</li>
|
||||
<li>Scripting in JavaScript, which allows creation of games, interactables, UI elements, and custom applications</li>
|
||||
<li>High quality low latency spatial audio</li>
|
||||
<li>Powerful physics through Bullet physics engine</li>
|
||||
<li>Fully open-source under the permissive Apache 2.0 license</li>
|
||||
<li>No central authority. You can run your own server from home.</li>
|
||||
<li>No user account required</li>
|
||||
<li>Supported by a democratic non-profit organization</li>
|
||||
</ul>
|
||||
</description>
|
||||
<categories>
|
||||
<category>Game</category>
|
||||
<category>Network</category>
|
||||
<category>Qt</category>
|
||||
</categories>
|
||||
<launchable type="desktop-id">org.overte.interface.desktop</launchable>
|
||||
<screenshots>
|
||||
<screenshot type="default">
|
||||
<caption>Creation UI</caption>
|
||||
<image>https://overte.org/_images/Create_UI_2.jpeg</image>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<caption>Hanging out on Maker Monday</caption>
|
||||
<image>https://overte.org/_images/overte-snap-by--on-2022-02-20_19-48-33.jpeg</image>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<caption>Kreolis playing in Brainstormer's Club</caption>
|
||||
<image>https://overte.org/_images/overte-snap-by-X74hc595-on-2023-02-26_19-01-20.jpg</image>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<caption>Pool toys exploring a fantasy island</caption>
|
||||
<image>https://overte.org/_images/overte-snap-by-X74hc595-on-2023-01-15_22-01-12.jpg</image>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<caption>Basinsky showing off his photogrammetry worlds</caption>
|
||||
<image>https://overte.org/_images/overte-snap-by--on-2022-12-14_23-23-03.jpg</image>
|
||||
</screenshot>
|
||||
<screenshot>
|
||||
<caption>Installing new lanterns on the Hub bridge</caption>
|
||||
<image>https://overte.org/_images/overte-snap-by-X74hc595-on-2023-03-27_22-42-02.jpg</image>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
|
||||
<!--
|
||||
The version of our logo used as desktop icon already has the brand color in it.
|
||||
Maybe we can use another version of the logo on stores?
|
||||
<branding>
|
||||
<color type="primary" scheme_preference="light">#6667AB</color>
|
||||
<color type="primary" scheme_preference="dark">#6667AB</color>
|
||||
</branding>
|
||||
-->
|
||||
|
||||
<url type="homepage">https://overte.org/</url>
|
||||
<url type="bugtracker">https://github.com/overte-org/overte/issues</url>
|
||||
<url type="help">https://docs.overte.org/</url>
|
||||
<url type="translate">https://weblate.overte.org/</url>
|
||||
<url type="donation">https://overte.org/donate.html</url>
|
||||
<url type="contribute">https://docs.overte.org/contribute.html</url>
|
||||
<url type="faq">https://docs.overte.org/faq.html</url>
|
||||
|
||||
<supports>
|
||||
<control>pointing</control>
|
||||
<control>keyboard</control>
|
||||
<control>gamepad</control>
|
||||
<!--
|
||||
The touch UI gets enabled at compile time when building for Android.
|
||||
It should be possible to enable it for Linux as well somehow.
|
||||
<control>touch</control>
|
||||
-->
|
||||
</supports>
|
||||
<recommends>
|
||||
<!-- 10 mbit/s downstream and 2 mbit/s upstream -->
|
||||
<internet bandwidth_mbitps="10">always</internet>
|
||||
</recommends>
|
||||
|
||||
<provides>
|
||||
<binary>Overte</binary>
|
||||
</provides>
|
||||
|
||||
|
||||
<releases>
|
||||
<release version="2024.07.1" date="2024-07-13">
|
||||
<url>https://github.com/overte-org/overte/blob/master/CHANGELOG.md</url>
|
||||
</release>
|
||||
</releases>
|
||||
|
||||
</component>
|
8
interface/org.overte.interface.desktop
Normal file
8
interface/org.overte.interface.desktop
Normal file
|
@ -0,0 +1,8 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Name=Overte
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Exec=interface
|
||||
Icon=interface
|
||||
Categories=Network;Qt;
|
Loading…
Reference in a new issue