Testing go-appimage on Deepin Linux
go-appimage is an experimental implementation of AppImage tools in Go. It is not ready for production yet, but is available for testing and development.
This document describes how to test it on Deepin Linux. It also describes areas that are not working correctly in Deepin Linux yet and for which help is greatly appreciated.
For any questions/bugs, please post here or write to probono@puredarwin.org (Chinese or English).
Boot Deepin Linux Live ISO
-
Download the Deepin Linux Live ISO 15.11 from https://www.deepin.org/de/download/
-
Flash it to a USB drive using Deepin Boot Maker or balenaEtcher
-
Boot your computer from the USB drive
-
In the bootloader screen, press the Tab key to edit the Linux boot command line
-
Delete the
livecd-installer
part. You can also change the language if you want. It should read:BOOT_IMAGE=/live/vmlinuz boot=live components quiet splash union=overlay locales=en_US.UTF-8 initrd=/live/initrd.lz
-
Press Enter to boot. The system will boot into the Deepin Linux desktop (not the installer)
Download and run the AppImage daemon
- Download the
appimaged-*-x86_64.AppImage
from https://github.com/probonopd/go-appimage/releases/tag/continuous - Double-click the downloaded
appimaged-*-x86_64.AppImage
- Click “Run”
Use the AppImage daemon
Basic operation
The AppImage daemon monitors common directories on the system, including ~/Downloads
and ~/Applications
for new AppImages and will integrate AppImages into the system (e.g., put it into the Launcher menu).
- Download any AppImage, e.g.,
qpdf-*-x86_64.AppImage
from https://github.com/qpdf/qpdf/releases - Click “Save” in the dialog box and save in
~/Downloads
or~/Applications
- Click the Deepin Launcher button
- Type “pdf”
- qpdf will show up as an installed application, you can launch it by clicking on it
![](https://user-images.githubusercontent.com/2480569/69624397-842f5c80-103c-11ea-9b7b-6db2d2724693.png - (Note that qpdf is a command line tool that requires an argument - hence we see an error message that would normally be printed only to stderr)
Desktop notifications for updates
When a new version of an AppImage that uses this functionality is published, the AppImage daemon shows a desktop notification informing the user that an update is available.
Currently this works only for AppImages created on GitHub using appimagetool-*-x86_64.AppImage
from https://github.com/probonopd/go-appimage/releases/tag/continuous).
Desktop notifications when AppImages cannot run
If a defective AppImage (e.g., missing libraries) is launched from the Launcher, a desktop notification is shown informing the user about the error. In this case, the user can ask the developer of the application to fix the AppImage.
Applications on external drives
The AppImage daemon allows for plug-and-play of applications that are stored on external USB storage drives.
- On another computer, create a folder
/Applications
in the root directory of an external USB storage medium (use NTFS because it does not work yet with FAT) - Copy an AppImage into that directory
- Eject the external USB storage medium
- Attach the external USB storage medium to the Deepin Linux computer where the AppImage daemon is running
- Mount the external USB storage medium on Deepin Linux (click on it in the file manager)
- You should see a notification “Application added”
- The application should be in the Deepin Launcher
- Eject the external USB storage medium
- The application should no longer be in the Deepin Launcher
Not working in Deepin yet
The following is not working yet in Deepin Linux. It is working in other distributions. So any help is appreciated to make it work on Deepin, too.
Right-click in the Launcher
-
Download
AppImageUpdater-*-x86_64.AppImage
from https://github.com/antony-jr/AppImageUpdater/releases/tag/continuous -
Click the Deepin Launcher button
-
Type “pdf”
-
qpdf will show up
-
Click the qpdf icon with the right mouse button
-
A menu will appear. There should be “Update” but there is not. How can this be fixed? (It does work e.g., in KDE and GNOME but not in Deepin yet.) For comparison, this is how it looks on GNOME:
Thumbnails
-
In the file manager, go to
~/Downloads
or~/Applications
(where you had downloaded the AppImages before) -
The applications should have application icons, but they do not have the correct icons. For comparison, this is how it looks on Xfce:
-
Go to
~/.cache/thumbnails/normal
in the file manager. You should see thumbnail files that have been created by the AppImage daemon. Why is the Deepin Linux desktop not using them?
Launching applications on FAT
Due to an issue in UDisks, FAT partitions are automounted with the showexec
option. This prevents any type of executable from running from FAT partitions, including AppImages. As a workaround, you can do (USE THIS AT YOUR OWN RISK):
sudo su
systemctl stop udisks2
sed -i -e 's|showexec|\x00\x00\x00\x00\x00\x00\x00\x00|g' /usr/lib/udisks2/udisksd
systemctl restart udisks2
Possibly a patch could be considered in Deepin Linux to make this work properly.
Desktop notifications disappear too fast
Desktop notifications disappear too fast. When I set the timeout to 120000 milliseconds, I expect the notification to stay on the screen for 2 minutes. But it disappears after a couple of seconds on Deepin.
Newline character in desktop notifications
Desktop notifications seem not to honor the \n
newline character. It does work in Xfce.