[GH-ISSUE #8158] [Bug] The AppImage is an empty file #3605

Closed
opened 2026-03-23 21:31:42 +00:00 by mirror · 14 comments
Owner

Originally created by @ivan-hc on GitHub (Aug 5, 2025).
Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/8158

Originally assigned to: @asjqkkkk on GitHub.

Bug Description

Title

How to Reproduce

chmod a+x ./*AppImage
./*.AppImage --appimage-extract

Expected Behavior

The extracted squashfs-root should contain files (and directories).

Operating System

GNU/Linux (any)

AppFlowy Version(s)

0.9.6

Screenshots

No response

Additional Context

https://github.com/user-attachments/assets/f48d68ff-41ed-4d67-b416-3b678f6821e1

Originally created by @ivan-hc on GitHub (Aug 5, 2025). Original GitHub issue: https://github.com/AppFlowy-IO/AppFlowy/issues/8158 Originally assigned to: @asjqkkkk on GitHub. ### Bug Description Title ### How to Reproduce ``` chmod a+x ./*AppImage ./*.AppImage --appimage-extract ``` ### Expected Behavior The extracted squashfs-root should contain files (and directories). ### Operating System GNU/Linux (any) ### AppFlowy Version(s) 0.9.6 ### Screenshots _No response_ ### Additional Context https://github.com/user-attachments/assets/f48d68ff-41ed-4d67-b416-3b678f6821e1
Author
Owner

@ivan-hc commented on GitHub (Aug 8, 2025):

@asjqkkkk the solution would be to export the AppDir to an AppImage using appimagetool from https://github.com/AppImage/appimagetool

appimage-builder is no more maintained and uses a no more supported appimagetool. See https://github.com/AppImage/AppImageKit/issues/1395 for more context

Using the new appimagetool also allows you to get rid of the old and obsolete libfuse2 dependency.

<!-- gh-comment-id:3166697922 --> @ivan-hc commented on GitHub (Aug 8, 2025): @asjqkkkk the solution would be to export the AppDir to an AppImage using `appimagetool` from https://github.com/AppImage/appimagetool appimage-builder is no more maintained and uses a no more supported `appimagetool`. See https://github.com/AppImage/AppImageKit/issues/1395 for more context Using the new `appimagetool` also allows you to get rid of the old and obsolete libfuse2 dependency.
Author
Owner

@ivan-hc commented on GitHub (Aug 13, 2025):

New release, same issue.

Anyone that fixes this please?

<!-- gh-comment-id:3184571604 --> @ivan-hc commented on GitHub (Aug 13, 2025): New release, same issue. Anyone that fixes this please?
Author
Owner

@asjqkkkk commented on GitHub (Aug 14, 2025):

Hi @ivan-hc
yes, we may need to use appimagetool to build the AppImage, and it might take some time to handle it

<!-- gh-comment-id:3187323069 --> @asjqkkkk commented on GitHub (Aug 14, 2025): Hi @ivan-hc yes, we may need to use appimagetool to build the AppImage, and it might take some time to handle it
Author
Owner

@ivan-hc commented on GitHub (Aug 14, 2025):

Hi @ivan-hc yes, we may need to use appimagetool to build the AppImage, and it might take some time to handle it

if you need some help or suggestion let me know, I also build AppImages, I have more than 90 in my repos and a package manager that lists 2100+ of them. I noticed the problem of your package trough a workflow, and then I decided to open this issue.

<!-- gh-comment-id:3187892257 --> @ivan-hc commented on GitHub (Aug 14, 2025): > Hi [@ivan-hc](https://github.com/ivan-hc) yes, we may need to use appimagetool to build the AppImage, and it might take some time to handle it if you need some help or suggestion let me know, I also build AppImages, I have more than 90 in my repos and a package manager that lists 2100+ of them. I noticed the problem of your package trough a workflow, and then I decided to open this issue.
Author
Owner

@asjqkkkk commented on GitHub (Aug 15, 2025):

Hi @ivan-hc yes, we may need to use appimagetool to build the AppImage, and it might take some time to handle it

if you need some help or suggestion let me know, I also build AppImages, I have more than 90 in my repos and a package manager that lists 2100+ of them. I noticed the problem of your package trough a workflow, and then I decided to open this issue.

thank you, this issue will be fixed in the next version

<!-- gh-comment-id:3190409004 --> @asjqkkkk commented on GitHub (Aug 15, 2025): > > Hi [@ivan-hc](https://github.com/ivan-hc) yes, we may need to use appimagetool to build the AppImage, and it might take some time to handle it > > if you need some help or suggestion let me know, I also build AppImages, I have more than 90 in my repos and a package manager that lists 2100+ of them. I noticed the problem of your package trough a workflow, and then I decided to open this issue. thank you, this issue will be fixed in the next version
Author
Owner

@ivan-hc commented on GitHub (Aug 18, 2025):

thank you, this issue will be fixed in the next version

in the meantime I suggest to remove the last two AppImages from releases, see https://github.com/AppFlowy-IO/AppFlowy/issues/8166

<!-- gh-comment-id:3197777975 --> @ivan-hc commented on GitHub (Aug 18, 2025): > thank you, this issue will be fixed in the next version in the meantime I suggest to remove the last two AppImages from releases, see https://github.com/AppFlowy-IO/AppFlowy/issues/8166
Author
Owner

@ivan-hc commented on GitHub (Aug 18, 2025):

@asjqkkkk as a workaround, since you have a portable build in the releases, I created a script for you

#!/bin/sh

APP=appflowy

ARCH="x86_64"

# DEPENDENCIES

dependencies="tar"
for d in $dependencies; do
	if ! command -v "$d" 1>/dev/null; then
		echo "ERROR: missing command \"d\", install the above and retry" && exit 1
	fi
done

_appimagetool() {
	if ! command -v appimagetool 1>/dev/null; then
		[ ! -f ./appimagetool ] && curl -#Lo appimagetool https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-"$ARCH".AppImage && chmod a+x ./appimagetool
		./appimagetool "$@"
	else
		appimagetool "$@"
	fi
}

DOWNLOAD_PAGE=$(curl -Ls https://api.github.com/repos/AppFlowy-IO/AppFlowy/releases/latest)
DOWNLOAD_URL=$(echo "$DOWNLOAD_PAGE" | tr '><" ' '\n' |  grep -i "^https.*github.com.*download.*linux.*tar.gz" | head -1)
VERSION=$(echo "$DOWNLOAD_URL" | tr '/' '\n' | grep "^v[0-9]\|^[0-9]" | head -1)
[ ! -f "$APP".tar.gz ] && curl -#Lo "$APP".tar.gz "$DOWNLOAD_URL"
mkdir -p "$APP".AppDir || exit 1

# Extract the package
tar xf ./*tar* && chmod a+x ./AppFlowy/AppFlowy && mv ./AppFlowy/* "$APP".AppDir/ || exit 1

_appimage_basics() {
	# Launcher
	cat <<-HEREDOC >> ./"$APP".AppDir/"$APP".desktop
	[Desktop Entry]
	Type=Application
	Name=AppFlowy
	Icon=appflowy
	Exec=AppFlowy %U
	Categories=Network;
	Keywords=Notes
	Terminal=false
	MimeType=x-scheme-handler/appflowy-flutter;
	HEREDOC

	# Icon
	wget -q https://raw.githubusercontent.com/AppFlowy-IO/AppFlowy/refs/heads/main/frontend/appflowy_flutter/linux/packaging/assets/logo.png -O ./"$APP".AppDir/"$APP".png

	# AppRun
	cat <<-'HEREDOC' >> ./"$APP".AppDir/AppRun
	#!/bin/sh
	HERE="$(dirname "$(readlink -f "${0}")")"
	exec "${HERE}"/AppFlowy "$@"
	HEREDOC
	chmod a+x ./"$APP".AppDir/AppRun
}

_appimage_basics

# CONVERT THE APPDIR TO AN APPIMAGE
ARCH=x86_64 VERSION="$VERSION" _appimagetool -s ./"$APP".AppDir 2>&1
if ! test -f ./*.AppImage; then
	echo "No AppImage available."; exit 1
fi

Usage

https://github.com/user-attachments/assets/eb42ccc0-fe2c-499b-8065-4e9acbb0ac6a

You can thank me later.

<!-- gh-comment-id:3197836063 --> @ivan-hc commented on GitHub (Aug 18, 2025): @asjqkkkk as a workaround, since you have a portable build in the releases, I created a script for you ``` #!/bin/sh APP=appflowy ARCH="x86_64" # DEPENDENCIES dependencies="tar" for d in $dependencies; do if ! command -v "$d" 1>/dev/null; then echo "ERROR: missing command \"d\", install the above and retry" && exit 1 fi done _appimagetool() { if ! command -v appimagetool 1>/dev/null; then [ ! -f ./appimagetool ] && curl -#Lo appimagetool https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-"$ARCH".AppImage && chmod a+x ./appimagetool ./appimagetool "$@" else appimagetool "$@" fi } DOWNLOAD_PAGE=$(curl -Ls https://api.github.com/repos/AppFlowy-IO/AppFlowy/releases/latest) DOWNLOAD_URL=$(echo "$DOWNLOAD_PAGE" | tr '><" ' '\n' | grep -i "^https.*github.com.*download.*linux.*tar.gz" | head -1) VERSION=$(echo "$DOWNLOAD_URL" | tr '/' '\n' | grep "^v[0-9]\|^[0-9]" | head -1) [ ! -f "$APP".tar.gz ] && curl -#Lo "$APP".tar.gz "$DOWNLOAD_URL" mkdir -p "$APP".AppDir || exit 1 # Extract the package tar xf ./*tar* && chmod a+x ./AppFlowy/AppFlowy && mv ./AppFlowy/* "$APP".AppDir/ || exit 1 _appimage_basics() { # Launcher cat <<-HEREDOC >> ./"$APP".AppDir/"$APP".desktop [Desktop Entry] Type=Application Name=AppFlowy Icon=appflowy Exec=AppFlowy %U Categories=Network; Keywords=Notes Terminal=false MimeType=x-scheme-handler/appflowy-flutter; HEREDOC # Icon wget -q https://raw.githubusercontent.com/AppFlowy-IO/AppFlowy/refs/heads/main/frontend/appflowy_flutter/linux/packaging/assets/logo.png -O ./"$APP".AppDir/"$APP".png # AppRun cat <<-'HEREDOC' >> ./"$APP".AppDir/AppRun #!/bin/sh HERE="$(dirname "$(readlink -f "${0}")")" exec "${HERE}"/AppFlowy "$@" HEREDOC chmod a+x ./"$APP".AppDir/AppRun } _appimage_basics # CONVERT THE APPDIR TO AN APPIMAGE ARCH=x86_64 VERSION="$VERSION" _appimagetool -s ./"$APP".AppDir 2>&1 if ! test -f ./*.AppImage; then echo "No AppImage available."; exit 1 fi ``` ## Usage https://github.com/user-attachments/assets/eb42ccc0-fe2c-499b-8065-4e9acbb0ac6a You can thank me later.
Author
Owner

@asjqkkkk commented on GitHub (Aug 19, 2025):

Hi @ivan-hc ,I built an AppImage with appimagetool, and it works on my Linux machine. Could you check if it runs on yours too?

https://github.com/asjqkkkk/AppFlowy/releases/tag/fix%2Flinux%2Fbuild

https://github.com/user-attachments/assets/8f0207c5-d050-48fe-90d0-fae4821c4ac6

<!-- gh-comment-id:3200599492 --> @asjqkkkk commented on GitHub (Aug 19, 2025): Hi @ivan-hc ,I built an AppImage with appimagetool, and it works on my Linux machine. Could you check if it runs on yours too? https://github.com/asjqkkkk/AppFlowy/releases/tag/fix%2Flinux%2Fbuild https://github.com/user-attachments/assets/8f0207c5-d050-48fe-90d0-fae4821c4ac6
Author
Owner

@ivan-hc commented on GitHub (Aug 19, 2025):

Hi @ivan-hc ,I built an AppImage with appimagetool, and it works on my Linux machine. Could you check if it runs on yours too?

https://github.com/asjqkkkk/AppFlowy/releases/tag/fix%2Flinux%2Fbuild
2025-08-19.20-45-00.webm

@asjqkkkk works!

https://github.com/user-attachments/assets/fa2aac47-1c50-4ca6-ab7a-58bf7dfe3d48

<!-- gh-comment-id:3200662518 --> @ivan-hc commented on GitHub (Aug 19, 2025): > Hi [@ivan-hc](https://github.com/ivan-hc) ,I built an AppImage with appimagetool, and it works on my Linux machine. Could you check if it runs on yours too? > > https://github.com/asjqkkkk/AppFlowy/releases/tag/fix%2Flinux%2Fbuild > 2025-08-19.20-45-00.webm @asjqkkkk works! https://github.com/user-attachments/assets/fa2aac47-1c50-4ca6-ab7a-58bf7dfe3d48
Author
Owner

@asjqkkkk commented on GitHub (Aug 19, 2025):

Hi @ivan-hc ,I built an AppImage with appimagetool, and it works on my Linux machine. Could you check if it runs on yours too?
https://github.com/asjqkkkk/AppFlowy/releases/tag/fix%2Flinux%2Fbuild
2025-08-19.20-45-00.webm

@asjqkkkk works!

simplescreenrecorder-2025-08-19_14.58.31.mp4

got it, thank you

<!-- gh-comment-id:3200821876 --> @asjqkkkk commented on GitHub (Aug 19, 2025): > > Hi [@ivan-hc](https://github.com/ivan-hc) ,I built an AppImage with appimagetool, and it works on my Linux machine. Could you check if it runs on yours too? > > https://github.com/asjqkkkk/AppFlowy/releases/tag/fix%2Flinux%2Fbuild > > 2025-08-19.20-45-00.webm > > [@asjqkkkk](https://github.com/asjqkkkk) works! > > simplescreenrecorder-2025-08-19_14.58.31.mp4 got it, thank you
Author
Owner

@ivan-hc commented on GitHub (Aug 20, 2025):

@asjqkkkk please let me know when it is ready, so I can re-add your poject to my package manager AM

https://github.com/ivan-hc/AM

<!-- gh-comment-id:3203862964 --> @ivan-hc commented on GitHub (Aug 20, 2025): @asjqkkkk please let me know when it is ready, so I can re-add your poject to my package manager AM https://github.com/ivan-hc/AM
Author
Owner

@asjqkkkk commented on GitHub (Aug 20, 2025):

@asjqkkkk please let me know when it is ready, so I can re-add your poject to my package manager AM

https://github.com/ivan-hc/AM

Probably the next version, when it's ready I’ll let you know

<!-- gh-comment-id:3203876179 --> @asjqkkkk commented on GitHub (Aug 20, 2025): > [@asjqkkkk](https://github.com/asjqkkkk) please let me know when it is ready, so I can re-add your poject to my package manager AM > > https://github.com/ivan-hc/AM Probably the next version, when it's ready I’ll let you know
Author
Owner

@asjqkkkk commented on GitHub (Sep 1, 2025):

Hi @ivan-hc , you can try to use AppImage with v0.9.8, it should work now

<!-- gh-comment-id:3241033060 --> @asjqkkkk commented on GitHub (Sep 1, 2025): Hi @ivan-hc , you can try to use `AppImage` with [v0.9.8](https://github.com/AppFlowy-IO/AppFlowy/releases/tag/0.9.8), it should work now
Author
Owner

@ivan-hc commented on GitHub (Sep 1, 2025):

Hi @ivan-hc , you can try to use AppImage with v0.9.8, it should work now

Thank you @asjqkkkk , I re-added AppFlowy to my package manager github.com/ivan-hc/AM@deae28bc10

See you next.

<!-- gh-comment-id:3241224278 --> @ivan-hc commented on GitHub (Sep 1, 2025): > Hi [@ivan-hc](https://github.com/ivan-hc) , you can try to use `AppImage` with [v0.9.8](https://github.com/AppFlowy-IO/AppFlowy/releases/tag/0.9.8), it should work now Thank you @asjqkkkk , I re-added AppFlowy to my package manager https://github.com/ivan-hc/AM/commit/deae28bc10066a36caf91755b23fe54ecf067b47 See you next.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AppFlowy-IO/AppFlowy#3605
No description provided.