AppImage / AppImage/appimagetool

Make it easier in appimagetool to produce valid update information and .zsync files

オープン
#66 コメント 3 件 リアクション 1 件 担当者 0 名 GitHub で見る
主要言語
C
スター
426
フォーク
55
PR マージ指標
30日以内にマージされた PR はありません

説明

Adoption of update information and .zsync files still leaves to be deserved.

Feedback is that currently implementing update information is too cumbersome, e.g., @ivan-hc (who is very dedicated and spends lots of time) saying

> Too many developers does not include this update system with metadata... me included (because I think the documentation is too complicate).

And indeed, putting together valid and working update information and .zsync files is too cumbersome.

So, can we think of input (environment variables) and outputs (stdout, stderr) to make this easier?
E.g. whenever we detect that GitHub Actions environment variables are set, we could construct the update information like this (pseudo-code to get across the idea):

```
#!/bin/sh

# Check if GitHub Actions environment variables are set
if [ -n "${GITHUB_REPOSITORY}" ]; then
# Split GITHUB_REPOSITORY into actor and repository
REPO_PARTS=(${GITHUB_REPOSITORY//\// })
USER=${REPO_PARTS[0]}
REPO=${REPO_PARTS[1]}

# Construct the update information using GitHub Actions environment variables
UPDATE_INFO="gh-releases-zsync|${USER}|${REPO}|latest|${APPIMAGE_NAME}-*${ARCH}.AppImage.zsync"

# Set the update information as an environment variable
export APPIMAGE_UPDATE_INFORMATION=${UPDATE_INFO}

# Print the constructed update information
echo "APPIMAGE_UPDATE_INFORMATION=${UPDATE_INFO}"
fi
```
We might use that automatically detected update information and make `appimagetool` print out a message saying something like

> If you want to make your AppImage updateable, use the `--make-updatable` argument; it will then use the following update information: $APPIMAGE_UPDATE_INFORMATION"

If the user then indeed uses `--make-updatable`, `appimagetool` should embed the update information, produce the `.zsync` file, and output very clear instructions on how and where to upload the files (under which URLs they _must_ be hosted) and how to test that it all works.

@TheAssassin I hope that this proposal addresses your dislike of "automagic" solutions, while still achieving the desired effect of "nudging" users to using update information.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。