This repository was archived by the owner on Jan 20, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathio.github.opendriver2.Redriver2.yaml
More file actions
189 lines (189 loc) · 7.15 KB
/
io.github.opendriver2.Redriver2.yaml
File metadata and controls
189 lines (189 loc) · 7.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
---
app-id: io.github.opendriver2.Redriver2
runtime: org.freedesktop.Platform
runtime-version: '21.08'
rename-icon: 'icon'
sdk: org.freedesktop.Sdk
command: start_launcher.sh
finish-args:
- "--socket=wayland"
- "--socket=x11"
- "--share=ipc"
# Required for controller support
- "--device=all"
- "--socket=pulseaudio"
- "--persist=."
- "--allow=multiarch"
# Used to easily access your DRIVER2 image, can be removed.
- "--filesystem=home"
- "--env=JAVA_HOME=/app/jdk"
- "--env=PATH=/usr/bin:/app/bin:/app/jdk/bin"
add-extensions:
org.freedesktop.Platform.Compat.i386:
directory: lib/i386-linux-gnu
version: '21.08'
org.freedesktop.Platform.Compat.i386.Debug:
directory: lib/debug/lib/i386-linux-gnu
version: '21.08'
no-autodownload: true
# required for hardware acceleration
org.freedesktop.Platform.GL32:
directory: lib/i386-linux-gnu/GL
version: '1.4'
versions: 21.08;1.4
subdirectories: true
no-autodownload: true
autodelete: false
add-ld-path: lib
merge-dirs: vulkan/icd.d;glvnd/egl_vendor.d;OpenCL/vendors;lib/dri;lib/d3d;vulkan/explicit_layer.d;vulkan/implicit_layer.d
download-if: active-gl-driver
enable-if: active-gl-driver
sdk-extensions:
- org.freedesktop.Sdk.Compat.i386
- org.freedesktop.Sdk.Extension.toolchain-i386
- org.freedesktop.Sdk.Extension.openjdk11
x-compat-i386-build-options: &compat-i386-build-options
prepend-pkg-config-path: "/app/lib32/pkgconfig:/usr/lib/i386-linux-gnu/pkgconfig"
ldflags: "-L/app/lib32"
prepend-path: "/usr/lib/sdk/toolchain-i386/bin"
env:
CC: i686-unknown-linux-gnu-gcc
CXX: i686-unknown-linux-gnu-g++
libdir: "/app/lib32"
modules:
# JRE is required for jpsxdec (PS1 AV converter)
- name: openjdk
buildsystem: simple
build-commands:
- /usr/lib/sdk/openjdk11/installjdk.sh
- name: ld-i386
buildsystem: simple
build-commands:
- mkdir -p /app/lib/i386-linux-gnu /app/lib/debug/lib/i386-linux-gnu /app/lib/i386-linux-gnu/GL
- install -Dm644 -t /app/etc ld.so.conf
sources:
- type: file
dest-filename: ld.so.conf
url: data:/app/lib32%0A/app/lib/i386-linux-gnu%0A
# using the latest SDL2 for better wayland support
- name: SDL2
config-opts:
- --disable-static
buildsystem: autotools
build-options: *compat-i386-build-options
cleanup:
- /bin
- /include
- /lib/pkgconfig
- /share
sources:
- type: git
url: https://github.com/libsdl-org/SDL
tag: release-2.0.20
modules:
- name: libdecor
config-opts:
- -Ddemo=false
buildsystem: meson
build-options: *compat-i386-build-options
cleanup:
- /include
- /lib/pkgconfig
sources:
- type: git
url: https://gitlab.gnome.org/jadahl/libdecor/
commit: 8e465f1254a84ff419134df47fa6c3f72b6b784f
# libnotify is required for the Launcher (Ultimate++)
- name: "libnotify"
build-options: *compat-i386-build-options
buildsystem: meson
cleanup:
- "/bin"
config-opts:
- "-Dtests=false"
- "-Dintrospection=disabled"
- "-Dman=false"
- "-Dgtk_doc=false"
sources:
- type: "git"
url: "https://gitlab.gnome.org/GNOME/libnotify.git"
tag: "0.7.9"
- name: premake5
buildsystem: simple
build-commands:
- make -f Bootstrap.mak linux
- install bin/release/premake5 /app/bin
sources:
- type: git
url: "https://github.com/premake/premake-core.git"
tag: "v5.0.0-beta1"
- name: Launcher
buildsystem: simple
build-options: *compat-i386-build-options
build-commands:
- ls -la
- mkdir upp/uppsrc/Launcher
- find . -maxdepth 1 -mindepth 1 -not -name upp -exec mv '{}' upp/uppsrc/Launcher \;
- cd upp && ./umks32 uppsrc Launcher GCC -rbM=makefile.gcc.linux +GUI,SSE2,SHARED Launcher
- sed -i 's/CXX = c++/CXX = i686-unknown-linux-gnu-g++/g' upp/makefile.gcc.linux
- cd upp && make -f makefile.gcc.linux
- mkdir -p /app/game/bin
- install upp/Launcher /app/game/bin/Launcher
- chmod a+x /app/game/bin/Launcher
sources:
- type: git
url: https://github.com/OpenDriver2/Launcher.git
- type: archive
archive-type: "tar-xz"
strip-components: 0
# I cannot use the latest stable relase because it's completly borked on linux
url: https://www.ultimatepp.org/downloads/upp-posix-16181.tar.xz
sha256: "96b3d598cf5b6ee7fa5aa111b69fe4a467f3575aeefc394f01f5e33689fdcb69"
- name: REDRIVER2
buildsystem: simple
build-options: *compat-i386-build-options
build-commands:
- cd src_rebuild && premake5 gmake2
- cd src_rebuild/project_gmake2_linux && make config=release_x86 -j$(nproc)
- mkdir -p /app/game/bin /app/game/bin/install /app/game/data /app/bin /app/lib /app/share/applications/ /app/share/appdata /var/data/install/ /var/data/DRIVER2/ /app/share/icons/hicolor/256x256/apps
- install start.sh /app/game/bin/REDRIVER2
- cat /app/game/bin/REDRIVER2
- cp -r data/* /app/game/data
- install src_rebuild/bin/Release/REDRIVER2 /app/game/bin/REDRIVER2_game
- install -m644 .flatpak/io.github.opendriver2.Redriver2.appdata.xml /app/share/appdata/
- install .flatpak/icon.png /app/share/icons/hicolor/256x256/apps/
- chmod a+x /app/game/bin/REDRIVER2
- chmod a+x /app/game/bin/REDRIVER2_game
- ln -s /var/data/config.ini /app/game/bin/config.ini
- ln -s /var/data/cutscene_recorder.ini /app/game/bin/cutscene_recorder.ini
- ln -s /var/data/DRIVER2 /app/game/bin/DRIVER2
- cp -r data/install/* /app/game/bin/install
- ln -s /var/cache/idxfile.tmp /app/game/bin/install/idxfile.tmp
- ln -s /var/data/REDRIVER2.log /app/game/bin/REDRIVER2.log
- install start_launcher.sh /app/bin
- chmod a+x /app/bin/start_launcher.sh
- install io.github.opendriver2.Redriver2.desktop /app/share/applications/
sources:
- type: git
url: "https://github.com/OpenDriver2/REDRIVER2.git"
tag: "7.4-rc1"
- type: shell
commands:
- echo "#!/bin/sh" > start_launcher.sh # Starting Launcher script
- echo "[[ \$(echo \$XDG_SESSION_TYPE) = wayland ]] && export SDL_VIDEODRIVER=wayland" >> start_launcher.sh
- echo "cd /app/game/bin/" >> start_launcher.sh
- echo "[ ! -f /var/data/REDRIVER2.log ] && touch REDRIVER2.log" >> start_launcher.sh
- echo "[ ! -f /var/cache/idxfile.tmp ] && touch idxfile.tmp" >> start_launcher.sh
- echo "[ ! -d /var/data/DRIVER2 ] && mkdir -p /var/data/DRIVER2" >> start_launcher.sh
- echo "[ ! -f /var/data/config.ini ] && cp /app/game/data/config.ini /var/data/config.ini" >> start_launcher.sh
- echo "[ ! -f /var/data/cutscene_recorder.ini ] && cp /app/game/data/cutscene_recorder.ini /var/data/cutscene_recorder.ini" >> start_launcher.sh
- echo "./Launcher" >> start_launcher.sh
- echo "#!/bin/sh" > start.sh # Starting game script
- echo "cd /app/game/data" >> start.sh
- echo "find DRIVER2/ -type f -exec sh -c 'if [[ ! -f /var/data/\"\$0\" ]]; then mkdir -p \$(dirname /var/data/\"\$0\") && cp /app/game/data/\"\$0\" /var/data/\"\$0\"; fi' {} \;" >> start.sh
- echo "cd /app/game/bin" >> start.sh
- echo "args=''" >> start.sh
- echo "while [[ "$#" -gt 0 ]]; do args+="$1 "; shift; done" >> start.sh
- echo "./REDRIVER2_game" >> start.sh
- type: file
path: io.github.opendriver2.Redriver2.desktop