Add Flatpak image build
This commit is contained in:
8
.gitignore
vendored
8
.gitignore
vendored
@@ -1,6 +1,6 @@
|
||||
*.iml
|
||||
.gradle
|
||||
**/build/
|
||||
build
|
||||
xcuserdata
|
||||
!src/**/build/
|
||||
local.properties
|
||||
@@ -16,3 +16,9 @@ captures
|
||||
!*.xcworkspace/contents.xcworkspacedata
|
||||
**/xcshareddata/WorkspaceSettings.xcsettings
|
||||
.kotlin
|
||||
|
||||
# Flatpak Build
|
||||
.flatpak-builder
|
||||
flatpak/_build
|
||||
flatpak/_repo
|
||||
flatpak/*.flatpak
|
||||
|
||||
16
flatpak/build.sh
Executable file
16
flatpak/build.sh
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
cd "$(dirname "$(readlink -f "$0")")/.." || error "Failed to switch to correct directory"
|
||||
|
||||
./gradlew packageReleaseUberJarForCurrentOS
|
||||
|
||||
flatpak-builder --ccache --force-clean --repo=flatpak/_repo ./flatpak/_build ./flatpak/ch.dissem.YAEP.yml
|
||||
|
||||
if [ "$1" = "bundle" ] || [ "$1" = "install" ]; then
|
||||
echo "Build is done, creating bundle now. This may take a while..."
|
||||
flatpak build-bundle flatpak/_repo "flatpak/YAEP-$(arch)-1.0.0.flatpak" ch.dissem.YAEP
|
||||
fi
|
||||
|
||||
if [ "$1" = "install" ]; then
|
||||
flatpak install "flatpak/YAEP-$(arch)-1.0.0.flatpak"
|
||||
fi
|
||||
35
flatpak/ch.dissem.YAEP.yml
Normal file
35
flatpak/ch.dissem.YAEP.yml
Normal file
@@ -0,0 +1,35 @@
|
||||
id: ch.dissem.YAEP
|
||||
runtime: org.freedesktop.Platform
|
||||
runtime-version: '25.08'
|
||||
sdk: org.freedesktop.Sdk
|
||||
sdk-extensions:
|
||||
- org.freedesktop.Sdk.Extension.openjdk21
|
||||
command: yaep
|
||||
finish-args:
|
||||
- --socket=x11
|
||||
- --device=dri # Required for better X11 performance
|
||||
- --share=ipc # Required for better X11 performance
|
||||
- --env=PATH=/app/bin:/app/jre/bin:/usr/bin
|
||||
- --env=JAVA_HOME=/app/jre
|
||||
modules:
|
||||
- name: openjdk
|
||||
buildsystem: simple
|
||||
build-commands:
|
||||
- /usr/lib/sdk/openjdk21/install.sh
|
||||
- name: yaep
|
||||
buildsystem: simple
|
||||
sources:
|
||||
- type: dir
|
||||
path: ../desktop/build/compose/jars/
|
||||
- type: dir
|
||||
path: ../flatpak/info/
|
||||
- type: script
|
||||
dest-filename: yaep
|
||||
commands:
|
||||
- java -jar /app/data/yaep.jar
|
||||
build-commands:
|
||||
- install -Dm755 yaep /app/bin/yaep
|
||||
- install -Dm644 YAEP-*-release.jar /app/data/yaep.jar
|
||||
- install -Dm644 ch.dissem.YAEP.desktop /app/share/applications/ch.dissem.YAEP.desktop
|
||||
- install -Dm644 ch.dissem.YAEP.svg /app/share/icons/hicolor/scalable/apps/ch.dissem.YAEP.svg
|
||||
- install -Dm644 ch.dissem.YAEP.metainfo.xml /app/share/metainfo/ch.dissem.YAEP.metainfo.xml
|
||||
8
flatpak/info/ch.dissem.YAEP.desktop
Normal file
8
flatpak/info/ch.dissem.YAEP.desktop
Normal file
@@ -0,0 +1,8 @@
|
||||
[Desktop Entry]
|
||||
Name=YAEP
|
||||
Comment=Yet Another Einstein Puzzle
|
||||
Exec=/app/bin/yaep
|
||||
Icon=ch.dissem.YAEP
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Game;LogicGame;
|
||||
61
flatpak/info/ch.dissem.YAEP.metainfo.xml
Normal file
61
flatpak/info/ch.dissem.YAEP.metainfo.xml
Normal file
@@ -0,0 +1,61 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component type="desktop-application">
|
||||
<id>ch.dissem.YAEP</id>
|
||||
|
||||
<name>YAEP</name>
|
||||
<summary>Yet Another Einstein Puzzle</summary>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
<project_license>TODO</project_license>
|
||||
<developer_name>Christian Basler</developer_name>
|
||||
|
||||
<description>
|
||||
<p>
|
||||
TODO.
|
||||
</p>
|
||||
</description>
|
||||
|
||||
<launchable type="desktop-id">ch.dissem.YAEP.desktop</launchable>
|
||||
|
||||
<requires>
|
||||
<control>pointing</control>
|
||||
<display_length compare="ge">768</display_length>
|
||||
</requires>
|
||||
|
||||
<keywords>
|
||||
<keyword>Game</keyword>
|
||||
<keyword>Puzzle</keyword>
|
||||
<keyword>Einstein</keyword>
|
||||
<keyword>Zebra</keyword>
|
||||
</keywords>
|
||||
|
||||
<branding>
|
||||
<!-- TODO -->
|
||||
<color scheme_preference="light" type="primary">#b8bee3</color>
|
||||
<color scheme_preference="dark" type="primary">#282245</color>
|
||||
</branding>
|
||||
|
||||
<screenshots>
|
||||
<screenshot type="default">
|
||||
<caption>TODO</caption>
|
||||
<image>
|
||||
https://raw.githubusercontent.com/RedddFoxxyy/Pomolin/v1.1.9/gitAssets/app_screenshots/screenshot1.png
|
||||
</image>
|
||||
</screenshot>
|
||||
</screenshots>
|
||||
|
||||
<content_rating type="oars-1.1"/>
|
||||
|
||||
<url type="homepage">https://dissem.ch/YAEP/</url>
|
||||
<url type="bugtracker">https://git.dissem.ch/chris/YAEP/issues</url>
|
||||
<url type="vcs-browser">https://git.dissem.ch/chris/YAEP</url>
|
||||
|
||||
<releases>
|
||||
<release date="2025-11-29" version="1.0.0">
|
||||
<description>
|
||||
<ul>
|
||||
<li>Initial release</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
</releases>
|
||||
</component>
|
||||
157
flatpak/info/ch.dissem.YAEP.svg
Normal file
157
flatpak/info/ch.dissem.YAEP.svg
Normal file
@@ -0,0 +1,157 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!-- Generator: Adobe Illustrator 24.1.2, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||
|
||||
<svg
|
||||
version="1.1"
|
||||
id="Layer_2"
|
||||
x="0px"
|
||||
y="0px"
|
||||
viewBox="0 0 32 32"
|
||||
xml:space="preserve"
|
||||
sodipodi:docname="ic_launcher.svg"
|
||||
inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
|
||||
width="32"
|
||||
height="32"
|
||||
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"><defs
|
||||
id="defs16"><filter
|
||||
style="color-interpolation-filters:sRGB"
|
||||
inkscape:label="Drop Shadow"
|
||||
id="filter31"
|
||||
x="-0.032370995"
|
||||
y="-0.033195397"
|
||||
width="1.0773869"
|
||||
height="1.0793577"><feFlood
|
||||
result="flood"
|
||||
in="SourceGraphic"
|
||||
flood-opacity="0.498039"
|
||||
flood-color="rgb(0,0,0)"
|
||||
id="feFlood30" /><feGaussianBlur
|
||||
result="blur"
|
||||
in="SourceGraphic"
|
||||
stdDeviation="1.600000"
|
||||
id="feGaussianBlur30" /><feOffset
|
||||
result="offset"
|
||||
in="blur"
|
||||
dx="1.500000"
|
||||
dy="1.500000"
|
||||
id="feOffset30" /><feComposite
|
||||
result="comp1"
|
||||
operator="in"
|
||||
in="flood"
|
||||
in2="offset"
|
||||
id="feComposite30" /><feComposite
|
||||
result="comp2"
|
||||
operator="over"
|
||||
in="SourceGraphic"
|
||||
in2="comp1"
|
||||
id="feComposite31" /></filter></defs><sodipodi:namedview
|
||||
id="namedview16"
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#000000"
|
||||
borderopacity="0.25"
|
||||
inkscape:showpageshadow="2"
|
||||
inkscape:pageopacity="0.0"
|
||||
inkscape:pagecheckerboard="0"
|
||||
inkscape:deskcolor="#d1d1d1"
|
||||
inkscape:zoom="5.0602329"
|
||||
inkscape:cx="18.47741"
|
||||
inkscape:cy="88.632284"
|
||||
inkscape:window-width="2514"
|
||||
inkscape:window-height="1376"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="Layer_2" />
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<g
|
||||
id="g1"
|
||||
transform="scale(0.25)"><rect
|
||||
style="fill:#64bb8b;fill-opacity:1;stroke:none;stroke-width:1.06961;stroke-linecap:round;stroke-linejoin:round"
|
||||
id="rect16"
|
||||
width="128"
|
||||
height="128"
|
||||
x="0"
|
||||
y="0"
|
||||
ry="34.385769" /><g
|
||||
id="g16"
|
||||
transform="matrix(0.86689217,0,0,0.86689217,8.5348442,8.6056136)"
|
||||
style="filter:url(#filter31)"><path
|
||||
style="fill:#464c4f"
|
||||
d="m 48.37,30.91 c 0,0 -11.64,-10.14 -12.76,-11.26 -1.13,-1.13 -3.94,-3.19 -3.38,-4.69 0.56,-1.5 9.970869,-5.1593697 16.52,-6.57 61.24673,-13.1920546 87.03498,66.992265 69.07,103.23 z"
|
||||
id="path1"
|
||||
sodipodi:nodetypes="cssscc" /><path
|
||||
style="fill:#dfdfe0"
|
||||
d="m 122.80319,94.287388 c -0.55952,4.737883 -1.7556,9.476742 -3.58825,14.216582 L 58.78,28.65 45.9,9.09 C 50.172499,7.9539441 54.430312,7.2672185 58.673441,7.0298231 L 65.33,33.23 73.824086,8.2778223 c 3.944588,0.9298418 7.612394,2.2400637 11.003419,3.9306647 L 71.88,39.22 75.96,40.7 93.154829,17.321488 c 2.030666,1.525255 3.874009,3.08539 5.530028,4.680406 L 81.59,44.64 l 5.63,4.15 17.60648,-20.033392 c 2.18905,2.770551 4.17347,5.673589 5.95327,8.709114 L 93.63,53.44 97.01,59 115.57372,46.917431 c 0.85589,1.980725 1.62329,3.929695 2.3022,5.84691 L 99.33,63.71 l 4.65,5.21 16.1781,-8.818231 c 0.56937,2.125057 1.06545,4.261013 1.48824,6.407868 L 104.19,75.33 l 2.96,6.69 15.8982,-5.810371 c 0.19299,2.146165 0.3103,4.149076 0.35195,6.008735 L 109.75,87.23 l 3.24,8.09 z"
|
||||
id="path2"
|
||||
sodipodi:nodetypes="ccccccccccccccccccccccccccccccc" /><path
|
||||
style="fill:#2f2f2f"
|
||||
d="m 56.53,27.11 c -9.515632,0.68283 -16.735265,5.918392 -36.32,31.67 3.278036,11.308288 6.065802,22.034403 13.09,31.4 14.754823,1.844912 25.776979,-4.514463 29.98,-7.46 -1.570069,13.010422 -3.421949,25.24918 -4.98,38.29 -0.377505,3.1597 58.73991,1.00009 60.58,-0.84 4.00672,-4.00672 -2.52698,-67.624889 -40.1,-85.32 C 79.488656,14.965582 70.214593,7.4654598 69.62,7.4 69.522198,7.3894675 60.081987,9.8944679 56.53,27.11 Z"
|
||||
id="path3"
|
||||
sodipodi:nodetypes="ccccssccc" /><path
|
||||
style="fill:#ffffff"
|
||||
d="M 22.53,58.86 33.02,45.77 c 1.819925,2.610936 -1.210179,6.546081 -7.11,13.86 z"
|
||||
id="path4"
|
||||
sodipodi:nodetypes="cccc" /><path
|
||||
style="fill:#ffffff"
|
||||
d="m 28.47,78.02 c 16.344125,-15.16343 24.960791,-8.079215 23.51,6.76 -2.066549,1.049292 -3.371337,1.310501 -5.45,1.67 1.593813,-13.420769 -5.839561,-12.487267 -16.75,-5.89 z"
|
||||
id="path5"
|
||||
sodipodi:nodetypes="ccccc" /><path
|
||||
style="fill:#ffffff"
|
||||
d="m 32.69,85.39 c 2.974025,-3.546509 7.702141,-3.296661 8.03,1.97 -3.066857,0.198745 -4.479365,0.154746 -8.68,0 z"
|
||||
id="path6"
|
||||
sodipodi:nodetypes="cccc" /><path
|
||||
style="fill:#ffffff"
|
||||
d="m 29.97,69.81 c 0,0 8.49,-10.46 21.02,-6.01 12.53,4.45 7.27,17.55 7.27,17.55 l 3.43,-1.6 c 3.134982,-14.516465 -6.072104,-15.228473 -4.5,-23.22 0.988119,-3.902791 1.347111,-10.123287 5.957155,-11.45065 3.973341,0.142932 0.08547,6.596839 0.712845,12.11065 0.984765,8.654834 7.526674,7.780843 3.8,29.32 C 80.153957,80.177213 91.077391,71.622086 101.44,62.29 100.92352,61.019029 99.873769,59.293652 98.95,58.26 79.930936,72.11648 72.049452,76.501362 71.59,75.96 70.906762,75.154956 79.113363,52.72085 83.6,41.7 c -1.739551,-1.553843 -2.447211,-1.879108 -5.58,-3.05 -1.49791,2.87385 -3.62374,12.446811 -8.11,11.55 -1.88,-1.36 -1.83,-7.65 1.41,-11.97 1.73,-2.31 3.8,-3.05 4.08,-9.43 0.406083,-9.252901 -4.874232,-17.135626 -5.92,-17.08 -6.439844,4.086989 -8.193181,11.175358 -9.15,18.21 l -2.02,0.75 c 0,0 -0.96,10.46 -3.26,12.2 -2.3,1.74 -6.05,1.2 -6.45,-1.78 -0.52,-3.91 -0.33,-7.93 -0.33,-7.93 -3.254156,1.181974 -4.495149,3.708555 -5.2,6.94 -0.617081,6.754115 -10.168497,11.485223 -11.988628,22.794533 z"
|
||||
id="path7"
|
||||
sodipodi:nodetypes="csccssscccsccccssccsccssc" /><path
|
||||
style="fill:#ffffff"
|
||||
d="m 89.76,47.43 c 0,0 -5.33,11.83 -5.16,12.44 0.17,0.61 10.23,-7.46 10.23,-7.46 -3.009379,-3.73527 -4.307475,-4.571497 -5.07,-4.98 z"
|
||||
id="path8"
|
||||
sodipodi:nodetypes="cscc" /><path
|
||||
style="fill:#0b0b0b"
|
||||
d="m 54.23,53.58 c 0,2.8 -1.08,5.58 -4.22,5.3 -2.34,-0.21 -4.27,-2.5 -4.27,-5.3 0,-2.8 1.9,-5.07 4.25,-5.07 2.35,0 4.24,2.27 4.24,5.07 z"
|
||||
id="path9" /><path
|
||||
style="fill:#ffffff"
|
||||
d="m 63.71,101.51 -0.84,7.67 c 28.972358,-11.093985 43.69859,-32.108673 44.98,-34 -0.57539,-2.121581 -1.50834,-4.063048 -2.82,-6.13 -20.847573,22.144094 -22.952642,23.971573 -41.32,32.46 z"
|
||||
id="path10"
|
||||
sodipodi:nodetypes="ccccc" /><path
|
||||
style="fill:#ffffff"
|
||||
d="m 66.88,118.9 c 4.883311,-4.88331 10.685214,3.17631 44.13,-36.04 0.47481,2.342723 1.09693,3.835453 1.47,5.78 -8.40359,12.68318 -15.724822,22.84732 -30.84,30.62 -4.826151,0.25674 -9.638547,0.0546 -14.76,-0.36 z"
|
||||
id="path11"
|
||||
sodipodi:nodetypes="ccccc" /><path
|
||||
style="fill:#ffffff"
|
||||
d="m 114.46,99.82 c -5.1642,9.14719 -5.75663,10.86854 -11.12,18.16 4.86811,-0.11174 9.09144,-0.43841 12.67,-0.98 0.34304,-5.51174 -0.17363,-11.23841 -1.55,-17.18 z"
|
||||
id="path12"
|
||||
sodipodi:nodetypes="cccc" /><path
|
||||
style="fill:#454c50"
|
||||
d="m 68.64,18.45 c -2.435036,-0.263247 -8.50729,16.82 -1.34,16.82 6.08653,0 3.386055,-16.594451 1.34,-16.82 z"
|
||||
id="path13"
|
||||
sodipodi:nodetypes="csc" /><path
|
||||
style="fill:#464c4f"
|
||||
d="m 29.88,60 c -2.89,-2.64 -7.41,-3.57 -9.67,-1.22 -2.25,2.35 -3.57,5.35 -5.44,7.32 -7.0250353,6.534018 -13.116568,15.916769 -8.17,25.53 3,4.97 9.1,8.26 16.61,5.63 C 30.72,94.63 33.72,90.78 34,87.97 35.035769,77.575321 27.08491,78.160548 28.56,74.64 29.31,72.85 35.32,64.98 29.88,60 Z"
|
||||
id="path14"
|
||||
sodipodi:nodetypes="cccssssc" /><path
|
||||
style="fill:#303030"
|
||||
d="m 11.11,79.71 c -0.1,1.56 1.92,1.27 2.63,2.72 0.7,1.45 -0.94,4.27 0.89,4.6 1.83,0.33 4.18,-3.28 3.05,-6.71 -1.13,-3.42 -6.43,-2.86 -6.57,-0.61 z"
|
||||
id="path15" /><path
|
||||
style="fill:#303030"
|
||||
d="m 14.23,97.64 c 0,0 5,-2.44 7.25,-4.55 2.19,-2.06 4.32,-4.55 4.83,-5.35 0.52,-0.8 1.6,-2.25 2.53,-1.6 0.94,0.66 0.52,1.83 -0.09,2.72 -0.61,0.89 -2.16,3.1 -4.6,5.35 -2.11,1.95 -3.14,2.44 -4.69,3.28 -1.13,0.61 -2.21,0.7 -2.21,0.7 0,0 -0.88,0.01 -1.79,-0.14 C 15.11,98 14.23,97.64 14.23,97.64 Z"
|
||||
id="path16" /></g></g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 8.1 KiB |
4
flatpak/prerequisites.sh
Executable file
4
flatpak/prerequisites.sh
Executable file
@@ -0,0 +1,4 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
flatpak install flathub org.freedesktop.Sdk
|
||||
flatpak install flathub org.freedesktop.Sdk.Extension.openjdk21
|
||||
@@ -1,6 +1,7 @@
|
||||
@file:Suppress("UnstableApiUsage")
|
||||
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
|
||||
|
||||
rootProject.name = "YAEP"
|
||||
enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS")
|
||||
|
||||
pluginManagement {
|
||||
repositories {
|
||||
|
||||
Reference in New Issue
Block a user