Skip to content

Commit f3adaf1

Browse files
authored
Merge pull request #3390 from carstene1ns/update/flat-meta-snap
Update flatpak, metainfo, snapcraft for 0.8.1
2 parents 17f0bea + 1716fe9 commit f3adaf1

File tree

6 files changed

+175
-39
lines changed

6 files changed

+175
-39
lines changed

.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ insert_final_newline = true
1111
indent_style = space
1212
indent_size = 4
1313

14-
[*.{sh,rb,js,yml,adoc}]
14+
[*.{sh,rb,js,yml,yaml,adoc}]
1515
indent_style = space
1616
indent_size = 2
1717

.github/workflows/linter.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Lint Files
2+
3+
on:
4+
push:
5+
pull_request:
6+
7+
jobs:
8+
lint:
9+
name: YAML, CMake & Markdown
10+
runs-on: ubuntu-latest
11+
steps:
12+
- name: Clone Repository
13+
uses: actions/checkout@v4
14+
with:
15+
fetch-depth: 0
16+
17+
- name: Install tools
18+
run: |
19+
pip install yamllint
20+
pip install cmakelint
21+
22+
- uses: tj-actions/changed-files@v46
23+
if: '!cancelled()'
24+
id: changed-files-yaml
25+
with:
26+
files: |
27+
**/*.yaml
28+
**/*.yml
29+
- name: Lint YAML files
30+
if: steps.changed-files-yaml.outputs.any_changed == 'true'
31+
run: |
32+
yamllint -d "{extends: relaxed, rules: {line-length: {max: 100}}}" \
33+
${{ steps.changed-files-yaml.outputs.all_changed_files }}
34+
# we often have extra long lines, so relaxing the check (from 80)
35+
36+
- uses: tj-actions/changed-files@v46
37+
if: '!cancelled()'
38+
id: changed-files-cmake
39+
with:
40+
files: |
41+
**/*.cmake
42+
**/CMakeLists.txt
43+
- name: Lint CMake files
44+
if: steps.changed-files-cmake.outputs.any_changed == 'true'
45+
run: |
46+
cmakelint --filter=-whitespace/tabs --linelength=120 \
47+
${{ steps.changed-files-cmake.outputs.all_changed_files }}
48+
# we often have extra long lines, so relaxing the check (from 80)
49+
# also do not warn about tabstops
50+
51+
- uses: tj-actions/changed-files@v46
52+
if: '!cancelled()'
53+
id: changed-files-md
54+
with:
55+
files: '**/*.md'
56+
separator: ","
57+
- name: Lint Markdown files
58+
if: steps.changed-files-md.outputs.any_changed == 'true'
59+
uses: DavidAnson/markdownlint-cli2-action@v19
60+
with:
61+
globs: ${{ steps.changed-files-md.outputs.all_changed_files }}
62+
separator: ","

.github/workflows/pr_labels.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,10 @@ jobs:
1515
- name: Clone repository
1616
uses: actions/checkout@v4
1717
with:
18-
# pull_request_target is run under forks, use main repo source
19-
fetch-depth: 0
20-
repository: EasyRPG/Player
21-
ref: master
18+
# pull_request_target is run under forks, use main repo source
19+
fetch-depth: 0
20+
repository: EasyRPG/Player
21+
ref: master
2222

2323
- name: Update labels
2424
uses: actions/labeler@v5

builds/flatpak/org.easyrpg.player.yml

Lines changed: 64 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
app-id: org.easyrpg.player
22
runtime: org.freedesktop.Platform
3-
runtime-version: '23.08'
3+
runtime-version: '24.08'
44
sdk: org.freedesktop.Sdk
55
command: easyrpg-player
66
rename-desktop-file: easyrpg-player.desktop
@@ -15,23 +15,28 @@ finish-args:
1515
# - --filesystem=home # user can store games anywhere
1616
- --device=all # needed for gamepad access
1717
- --allow=devel
18+
cleanup-commands:
19+
# provide launcher and wizard
20+
- mv /app/bin/{easyrpg-player,org.easyrpg.player.real}
21+
- mv /app/bin/{firststart,easyrpg-firststart}
22+
- mv /app/bin/{launcher,easyrpg-player}
1823
cleanup:
1924
- /include
2025
- /lib/cmake
2126
- /lib/pkgconfig
2227
- /lib/*.so
2328
modules:
2429
# external libraries
25-
# this is copied from shared-modules to not add the dependency on it
30+
# this is adapted from shared-modules to not add the dependency on it
2631
- name: libfluidsynth
2732
buildsystem: cmake-ninja
2833
config-opts:
2934
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
3035
sources:
3136
- type: git
3237
url: https://github.com/FluidSynth/fluidsynth.git
33-
tag: v2.3.4
34-
commit: 5ecdc4568e45123216c6888892caad07918ef127
38+
tag: v2.3.5
39+
commit: 619fc5c3380513146cd05e17decf8d747b02bba4
3540
cleanup:
3641
- /bin
3742
- /share
@@ -44,8 +49,8 @@ modules:
4449
sources:
4550
- type: git
4651
url: https://github.com/fmtlib/fmt.git
47-
tag: '9.1.0'
48-
commit: a33701196adfad74917046096bf5a2aa0ab0bb50
52+
tag: 11.1.4
53+
commit: 123913715afeb8a437e6388b4473fcc4753e1c9a
4954
- name: libxmp
5055
buildsystem: cmake-ninja
5156
config-opts:
@@ -56,17 +61,45 @@ modules:
5661
sources:
5762
- type: git
5863
url: https://github.com/libxmp/libxmp.git
59-
tag: libxmp-4.6.0
60-
commit: 8201d26cf933688a8be64292457c429fd8e654ab
64+
tag: libxmp-4.6.2
65+
commit: 828ef357943e1fbb13910e7a6fca21987c5c5827
6166
- name: libinih
6267
buildsystem: meson
6368
config-opts:
6469
- --buildtype=debugoptimized
70+
- -Ddefault_library=shared
71+
- -Ddistro_install=true
72+
- -Dwith_INIReader=false
6573
sources:
6674
- type: git
6775
url: https://github.com/benhoyt/inih.git
68-
tag: 58
69-
commit: 5cc5e2c24642513aaa5b19126aad42d0e4e0923e
76+
tag: r60
77+
commit: 9de2a5fe4956447a22a324e2efc0648c5aad5285
78+
- name: nlohmann_json
79+
buildsystem: cmake-ninja
80+
builddir: true
81+
config-opts:
82+
- -DJSON_BuildTests=OFF
83+
sources:
84+
- type: git
85+
url: https://github.com/nlohmann/json.git
86+
tag: v3.11.3
87+
commit: 9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03
88+
cleanup:
89+
- /share
90+
- name: lhasa
91+
config-opts:
92+
- --enable-shared
93+
- --disable-static
94+
sources:
95+
- type: git
96+
url: https://github.com/fragglet/lhasa.git
97+
tag: v0.4.0
98+
commit: 3b8f502c1480c5d9f2927e95d7e0f022b9cdd0a1
99+
cleanup:
100+
- /bin
101+
- /share/man
102+
- /lib/*.la
70103
# own libraries
71104
- name: liblcf
72105
buildsystem: cmake-ninja
@@ -84,6 +117,7 @@ modules:
84117
- /share
85118
- name: player
86119
buildsystem: cmake-ninja
120+
builddir: true
87121
config-opts:
88122
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
89123
- -DPLAYER_VERSION_APPEND='(Flatpak)'
@@ -93,3 +127,23 @@ modules:
93127
cleanup:
94128
- /share/bash-completion
95129
- /share/pixmaps
130+
- name: wizard
131+
buildsystem: cmake-ninja
132+
subdir: Flatpak/firststart
133+
config-opts:
134+
- -DCMAKE_BUILD_TYPE=RelWithDebInfo
135+
sources:
136+
- type: git
137+
disable-submodules: true
138+
url: https://github.com/EasyRPG/packaging.git
139+
commit: a5f26c7243d24a690b2615dff4955148d3f79c14
140+
- name: launcher
141+
buildsystem: simple
142+
subdir: Flatpak
143+
sources:
144+
- type: git
145+
disable-submodules: true
146+
url: https://github.com/EasyRPG/packaging.git
147+
commit: a5f26c7243d24a690b2615dff4955148d3f79c14
148+
build-commands:
149+
- install -Dm755 flatpak-launcher.sh /app/bin/launcher

builds/snap/snapcraft.yaml

Lines changed: 33 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
name: easyrpg-player
2-
base: core20
2+
base: core22
33
adopt-info: easyrpg-player
44
summary: easyrpg-player
55
description: |
6-
EasyRPG Player is a program that allows to play games created with RPG Maker 2000 and 2003.
7-
EasyRPG is developed by the amazing people running the [EasyRPG project](https://easyrpg.org/).
6+
EasyRPG Player is a program that allows to play games created with
7+
RPG Maker 2000 and 2003. EasyRPG is developed by the amazing people running
8+
the [EasyRPG project](https://easyrpg.org/).
89
910
It aims to be a free (as in freedom) cross-platform RPG Maker 2000/2003 interpreter.
10-
The main goal is to play all games created with them as the original game interpreter (RPG_RT) does.
11+
The main goal is to play all games created with them as the original
12+
game interpreter (RPG_RT) does.
1113
confinement: strict
1214
grade: stable
1315

@@ -17,7 +19,7 @@ apps:
1719
plugs:
1820
- x11
1921
- wayland
20-
- unity7
22+
- unity8
2123
- opengl
2224
- audio-playback
2325
- joystick
@@ -35,37 +37,43 @@ layout:
3537

3638
parts:
3739
liblcf:
38-
plugin: autotools
40+
plugin: cmake
3941
source: https://github.com/EasyRPG/liblcf
4042
source-type: git
4143
build-environment:
4244
- CXXFLAGS: "$CXXFLAGS -fuse-ld=gold -flto=$(nproc) -ffunction-sections -fdata-sections"
43-
- LDFLAGS: "$LDFLAGS -fuse-ld=gold -flto=$(nproc) -Wl,--gc-sections"
44-
autotools-configure-parameters:
45-
- --prefix=/usr
46-
- --disable-static
47-
- --disable-tools
45+
- LDFLAGS: "$LDFLAGS -fuse-ld=gold -flto=$(nproc) -Wl,--gc-sections"
46+
cmake-parameters:
47+
- -DCMAKE_BUILD_TYPE=Release
48+
- -DCMAKE_INSTALL_PREFIX=/usr
49+
- -DBUILD_SHARED_LIBS=ON
50+
- -DLIBLCF_ENABLE_TOOLS=OFF
51+
- -DLIBLCF_UPDATE_MIMEDB=OFF
4852
override-build: |
4953
git fetch
5054
snapcraftctl build
5155
strip --strip-all $SNAPCRAFT_PART_INSTALL/usr/lib/liblcf.so.0.0.0
5256
build-packages:
5357
- libexpat1-dev
5458
- libicu-dev
59+
- libinih-dev
5560
- icu-devtools
5661
stage-packages:
57-
- libicu66
62+
- libicu70
63+
- libinih1
5864

59-
easyrpg-player:
60-
plugin: autotools
61-
after: [libwildmidi,liblcf,desktop-glib-only]
65+
easyrpg-player:
66+
plugin: cmake
67+
after: [libwildmidi, liblcf, desktop-glib-only]
6268
source: https://github.com/EasyRPG/Player
6369
source-type: git
6470
build-environment:
6571
- CXXFLAGS: "$CXXFLAGS -fuse-ld=gold -flto=$(nproc) -ffunction-sections -fdata-sections"
66-
- LDFLAGS: "$LDFLAGS -fuse-ld=gold -flto=$(nproc) -Wl,--gc-sections"
67-
autotools-configure-parameters:
68-
- --prefix=/usr
72+
- LDFLAGS: "$LDFLAGS -fuse-ld=gold -flto=$(nproc) -Wl,--gc-sections"
73+
cmake-parameters:
74+
- -DCMAKE_BUILD_TYPE=Release
75+
- -DCMAKE_PREFIX_PATH=${SNAPCRAFT_STAGE}/usr
76+
- -DCMAKE_INSTALL_PREFIX=/usr
6977
override-build: |
7078
last_committed_tag="$(git tag --list | tail -n1)"
7179
last_released_tag="$(snap info easyrpg-player | awk '$1 == "latest/beta:" { print $2 }')"
@@ -80,38 +88,40 @@ parts:
8088
fi
8189
snapcraftctl build
8290
strip --strip-all $SNAPCRAFT_PART_INSTALL/usr/bin/easyrpg-player
83-
8491
build-packages:
92+
- libfluidsynth-dev
8593
- libfmt-dev
8694
- libfreetype6-dev
8795
- libharfbuzz-dev
96+
- liblhasa-dev
8897
- libmpg123-dev
8998
- libopusfile-dev
9099
- libpixman-1-dev
91100
- libpng-dev
92101
- libsndfile1-dev
93102
- libsdl2-dev
94-
- libsdl2-mixer-dev
95103
- libspeexdsp-dev
96104
- libvorbis-dev
97105
- libxmp-dev
98-
99106
stage-packages:
100107
- freepats
108+
- libfluidsynth3
109+
- libfmt8
101110
- libfreetype6
102111
- libharfbuzz0b
103112
- libmpg123-0
104113
- libgl1-mesa-dri
105114
- libgl1-mesa-glx
106115
- libglu1-mesa
116+
- liblhasa0
107117
- libopusfile0
108118
- libpixman-1-0
109119
- libpng16-16
110120
- libsdl2-2.0-0
111-
- libsdl2-mixer-2.0-0
112121
- libsndfile1
113122
- libspeexdsp1
114123
- libvorbis0a
124+
- libvorbisfile3
115125
- libwayland-egl1-mesa
116126
- libwildmidi-config
117127
- libxmp4
@@ -122,7 +132,7 @@ parts:
122132
source-type: git
123133
build-environment:
124134
- CXXFLAGS: "$CXXFLAGS -fuse-ld=gold -flto=$(nproc) -ffunction-sections -fdata-sections"
125-
- LDFLAGS: "$LDFLAGS -fuse-ld=gold -flto=$(nproc) -Wl,--gc-sections"
135+
- LDFLAGS: "$LDFLAGS -fuse-ld=gold -flto=$(nproc) -Wl,--gc-sections"
126136
cmake-parameters:
127137
- -DCMAKE_BUILD_TYPE=Release
128138
- -DBUILD_SHARED_LIBS=ON

resources/unix/easyrpg-player.metainfo.xml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
<developer_name>EasyRPG Team</developer_name>
77
<update_contact>easyrpg_AT_easyrpg.org</update_contact>
88

9-
<!-- Copyright 2022 EasyRPG team -->
9+
<!-- Copyright 2022-2025 EasyRPG team -->
1010
<metadata_license>FSFAP</metadata_license>
1111
<project_license>GPL-3.0-or-later</project_license>
1212

@@ -67,6 +67,16 @@
6767
</content_rating>
6868

6969
<releases>
70+
<release version="0.8.1" date="2025-04-07">
71+
<description>
72+
<p>
73+
"Stun"
74+
</p>
75+
<p>
76+
https://blog.easyrpg.org/2025/04/easyrpg-player-0-8-1-stun/
77+
</p>
78+
</description>
79+
</release>
7080
<release version="0.8" date="2023-04-29">
7181
<description>
7282
<p>

0 commit comments

Comments
 (0)