Add AppImage install and update bundle
This commit is contained in:
parent
a1b941e8f5
commit
91590ec08d
5 changed files with 211 additions and 11 deletions
55
packaging/build-release-bundle.sh
Executable file
55
packaging/build-release-bundle.sh
Executable file
|
|
@ -0,0 +1,55 @@
|
|||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
root_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
||||
package_id="$(cargo pkgid --manifest-path "${root_dir}/Cargo.toml")"
|
||||
version="${package_id##*@}"
|
||||
bundle_name="Comicviewer-${version}-x86_64"
|
||||
appimage_name="${bundle_name}.AppImage"
|
||||
appimage="${root_dir}/dist/${appimage_name}"
|
||||
checksum="${appimage}.sha256"
|
||||
archive="${root_dir}/dist/${bundle_name}.tar.gz"
|
||||
archive_checksum="${archive}.sha256"
|
||||
work_dir="$(mktemp -d)"
|
||||
bundle_dir="${work_dir}/${bundle_name}"
|
||||
archive_mtime="${SOURCE_DATE_EPOCH:-$(git -C "${root_dir}" log -1 --format=%ct)}"
|
||||
|
||||
cleanup() {
|
||||
rm -rf "${work_dir}"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
if [[ ! -f "${appimage}" ]]; then
|
||||
printf 'AppImage가 없습니다: %s\n' "${appimage}" >&2
|
||||
printf '%s\n' "먼저 packaging/build-appimage.sh를 실행하세요." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
mkdir -p "${bundle_dir}"
|
||||
(
|
||||
cd "${root_dir}/dist"
|
||||
sha256sum "${appimage_name}" > "${appimage_name}.sha256"
|
||||
)
|
||||
|
||||
install -m 0755 "${appimage}" "${bundle_dir}/${appimage_name}"
|
||||
install -m 0644 "${checksum}" "${bundle_dir}/${appimage_name}.sha256"
|
||||
install -m 0755 \
|
||||
"${root_dir}/packaging/install-or-update.sh" \
|
||||
"${bundle_dir}/install-or-update.sh"
|
||||
install -m 0644 \
|
||||
"${root_dir}/data/io.github.comicviewer.Comicviewer.desktop" \
|
||||
"${bundle_dir}/io.github.comicviewer.Comicviewer.desktop"
|
||||
install -m 0644 \
|
||||
"${root_dir}/data/io.github.comicviewer.Comicviewer.svg" \
|
||||
"${bundle_dir}/io.github.comicviewer.Comicviewer.svg"
|
||||
install -m 0644 "${root_dir}/docs/INSTALL.ko.md" "${bundle_dir}/README.ko.md"
|
||||
|
||||
tar --sort=name --owner=0 --group=0 --numeric-owner --mtime="@${archive_mtime}" \
|
||||
-C "${work_dir}" -cf - "${bundle_name}" | gzip -n > "${archive}"
|
||||
(
|
||||
cd "${root_dir}/dist"
|
||||
sha256sum "$(basename "${archive}")" > "$(basename "${archive_checksum}")"
|
||||
)
|
||||
|
||||
printf 'Created %s\n' "${archive}"
|
||||
printf 'Created %s\n' "${archive_checksum}"
|
||||
Loading…
Add table
Add a link
Reference in a new issue