Fix NSIS CI step: use -D defines (makensis on Linux rejects /D as scripts); AppStream metadata hardened (homepage, developer, lowercase id, filename match)
- AppImage validation now passes appstreamcli --pedantic locally; builds with metainfo named net.stepline.game.appdata.xml + desktop in usr/share/applications
This commit is contained in:
1 parent
39a80f39f9
commit
418c30e334
14 files changed
+67
-6
No files matched your search
@@ -81,9 +81,12 @@ jobs:
|
||||
run: |
|
||||
sudo apt-get update && sudo apt-get install -y nsis p7zip-full
|
||||
VERSION="$(sed -n 's/.*config\/version="\([^"]*\)".*/\1/p' project.godot)"
|
||||
makensis /DVERSION="$VERSION" \
|
||||
/DARTIFACT="build/step-line-windows-$VERSION.exe" \
|
||||
/DICON=packaging/windows/step-line.ico \
|
||||
# NOTE: on Linux, makensis uses -D defines (the /D form is Windows-only
|
||||
# and is rejected as a script path).
|
||||
makensis \
|
||||
-DVERSION="$VERSION" \
|
||||
-DARTIFACT="build/step-line-windows-$VERSION.exe" \
|
||||
-DICON=packaging/windows/step-line.ico \
|
||||
packaging/windows/step-line.nsi
|
||||
|
||||
- name: Verify Windows installer contents
|
||||
|
||||
@@ -27,8 +27,11 @@ cp "$HERE/step-line.desktop" "$APPDIR/step-line.desktop"
|
||||
cp "$HERE/AppRun" "$APPDIR/AppRun"
|
||||
chmod +x "$APPDIR/AppRun"
|
||||
cp "$HERE/step-line.png" "$APPDIR/step-line.png"
|
||||
mkdir -p "$APPDIR/usr/share/metainfo"
|
||||
cp "$HERE/step-line.appdata.xml" "$APPDIR/usr/share/metainfo/step-line.appdata.xml"
|
||||
# Desktop entry + metainfo in standard locations (AppStream validation requires
|
||||
# the metainfo filename to match the component id, and the .desktop discoverable).
|
||||
mkdir -p "$APPDIR/usr/share/applications" "$APPDIR/usr/share/metainfo"
|
||||
cp "$HERE/step-line.desktop" "$APPDIR/usr/share/applications/step-line.desktop"
|
||||
cp "$HERE/step-line.appdata.xml" "$APPDIR/usr/share/metainfo/net.stepline.game.appdata.xml"
|
||||
|
||||
TOOL="${APPIMAGE_TOOL:-/tmp/appimagetool-x86_64.AppImage}"
|
||||
if [[ ! -f "$TOOL" ]]; then
|
||||
|
||||
@@ -1,8 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component type="desktop-application">
|
||||
<id>net.step-line.StepLine</id>
|
||||
<id>net.stepline.game</id>
|
||||
<name>Step Line</name>
|
||||
<summary>Workplace security simulation on Hollywood Boulevard</summary>
|
||||
<url type="homepage">https://git.allucanget.biz/zwitschi/security-game</url>
|
||||
<developer id="net.stepline"><name>Step Line Team</name></developer>
|
||||
<description>
|
||||
<p>
|
||||
Step Line is a workplace security simulation about observation, communication,
|
||||
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
appimagetool.png
|
||||
Executable
+10
@@ -0,0 +1,10 @@
|
||||
#! /bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
this_dir="$(dirname -- "$(readlink -f -- "$0")")"
|
||||
|
||||
# make appimagetool prefer the bundled mksquashfs
|
||||
export PATH="$this_dir"/usr/bin:"$PATH"
|
||||
|
||||
exec "$this_dir"/usr/bin/appimagetool "$@"
|
||||
+1
@@ -0,0 +1 @@
|
||||
usr/share/applications/appimagetool.desktop
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
usr/share/icons/hicolor/128x128/apps/appimagetool.png
|
||||
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
Executable
BIN
Binary file not shown.
@@ -0,0 +1,9 @@
|
||||
[Desktop Entry]
|
||||
Type=Application
|
||||
Name=appimagetool
|
||||
Exec=appimagetool
|
||||
Comment=Tool to generate AppImages from AppDirs
|
||||
Icon=appimagetool
|
||||
Categories=Development;
|
||||
Terminal=true
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 9.5 KiB |
@@ -0,0 +1,31 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<component type="desktop">
|
||||
<id>appimagetool.desktop</id>
|
||||
<metadata_license>MIT</metadata_license>
|
||||
<project_license>MIT</project_license>
|
||||
<name>appimagetool</name>
|
||||
<summary>Create AppImage files</summary>
|
||||
<description>
|
||||
<p>
|
||||
appimagetool is a tool that lets you generate AppImage files. An AppImage
|
||||
is a self-running bundle that contains an application and everything
|
||||
it needs to run that cannot reasonably expected to be part of each target system.
|
||||
</p>
|
||||
<p>
|
||||
This can include libraries that are not commonly available on target systems,
|
||||
resources such as translations, icons, fonts, and other auxiliary files.
|
||||
appimagetool makes it easy to take an AppDir (e.g., generated by linuxdeployqt)
|
||||
and turn it into an AppImage.
|
||||
</p>
|
||||
<p>
|
||||
You can also embed update information so that your users can update the AppImage
|
||||
using binary delta updates with the AppImageUpdate tool.
|
||||
You can also sign the AppImage with GPG.
|
||||
</p>
|
||||
</description>
|
||||
<url type="homepage">https://github.com/AppImage/AppImageKit</url>
|
||||
<project_group>AppImage</project_group>
|
||||
<provides>
|
||||
<binary>appimagetool</binary>
|
||||
</provides>
|
||||
</component>
|
||||
Reference in new issue
Block a user