Skip to content

Commit 6a6c3e8

Browse files
committed
Merge branch 'master' into feature/added_missing_include
2 parents e4f0fa0 + efb55c8 commit 6a6c3e8

File tree

3 files changed

+26
-1
lines changed

3 files changed

+26
-1
lines changed

AppImageAssistant.AppDir/AppImageAssistant

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ class Assistant(gtk.Assistant):
275275
return
276276

277277
def init_intro_page(self):
278-
self.text_page("AppImageAssistant " + __version__, "This assistant helps you to package an AppDir for distribution as an AppImage. It is part of AppImageKit. \n\nPlease see http://portablelinuxapps.org/forum for more information.")
278+
self.text_page("AppImageAssistant " + __version__, "This assistant helps you to package an AppDir for distribution as an AppImage. It is part of AppImageKit. \n\nPlease see http://appimage.org for more information.")
279279
self.chooser_page("Please select the AppDir")
280280
self.runner_page(self.run1_func)
281281

AppImageUpdate.AppDir/README.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,29 @@ If you would like to provide update-able AppImages, you basically have to:
115115

116116
You can see this in action as part of an automated build process [here](https://github.com/probonopd/AppImages/blob/1249ce96f1a2bac1cb7a397bde1f74a87e86edf2/bintray.sh#L138-L151).
117117

118+
## Example how to make your app self-updateable
119+
120+
121+
> Do you have more documentation, or maybe an example, on how to add the update information this way?
122+
123+
First, you would have to inject the update information into the AppImage, second you would have to upload the AppImage and the AppImage.zsync to an URL that matches the URL specified in the update information.
124+
125+
**Step 1: Inject the update information into the AppImage**
126+
127+
Assuming you have a file `Etcher-linux-x64.AppImage` in your current working directory, then the following command would tell the updater to look for `Etcher-linux-x64.AppImage.zsync` at the URL `https://resin-production-downloads.s3.amazonaws.com/etcher/latest/Etcher-linux-x64.AppImage.zsync`:
128+
129+
```
130+
echo "zsync|https://resin-production-downloads.s3.amazonaws.com/etcher/latest/Etcher-linux-x64.AppImage.zsync" | dd of="Etcher-linux-x64.AppImage" bs=1 seek=33651 count=512 conv=notrunc 2>/dev/null
131+
```
132+
133+
**Step 2: Upload the AppImage and the AppImage.zsync to an URL that matches the URL specified in the update information**
134+
135+
You would have to copy both `Etcher-linux-x64.AppImage.zsync` and `Etcher-linux-x64.AppImage.zsync` to `https://resin-production-downloads.s3.amazonaws.com/etcher/latest/` for this to work.
136+
137+
When you have a new version, simply put the updated `Etcher-linux-x64.AppImage.zsync` and `Etcher-linux-x64.AppImage.zsync` at the *same* location.
138+
139+
At this point, AppImageUpdate should work. AppImageUpdate is really just an example GUI around the (work-in-progress but useable) [appimageupdate](https://github.com/probonopd/AppImageKit/blob/master/AppImageUpdate.AppDir/usr/bin/appimageupdate) bash script. You could put `appimageupdate` (and its dependency [zsync_curl](https://github.com/probonopd/zsync-curl)) inside `usr/bin` of the AppImage, and call `appimageupdate` from within your app and even have a little GUI around it; or reimplement it in the language of your app.
140+
118141
## TODO
119142

120143
* Implement a GUI

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ run on a variety of different target systems (base operating systems, distributi
1010
__AppImageKit__ is a concrete implementation of the AppImage format and provides tools for
1111
conveniently handling AppImages.
1212

13+
https://en.wikipedia.org/wiki/AppImage
14+
1315
This document describes the AppImage format and AppImageKit. It is intended to describe the philosophy behind the AppImage format and the concrete implementation. This document is not a formal specification, since the AppImage format is not frozen yet but in the process of being specified more formally. Contributors are encouraged to comment on this document and propose formal format descriptions.
1416

1517
Significant upstream projects have started providing AppImages of releases and/or nightly/continuous builds, see this [list of upstream-provided AppImages](https://github.com/probonopd/AppImageKit/wiki/AppImages#upstream-appimages).

0 commit comments

Comments
 (0)