Porteus modules vs AppImage

Post here if you are a new Porteus member and you're looking for some help.
mekineer
Ronin
Ronin
Posts: 1
Joined: 26 Feb 2024, 05:17
Distribution: crunchbang

Porteus modules vs AppImage

Post#1 by mekineer » 26 Feb 2024, 06:11

What are the differences between Porteus modules and AppImage?

http://www.porteus.org/tutorials/9-modu ... dules.html

https://docs.appimage.org/reference/architecture.html
https://docs.appimage.org/user-guide/portable-mode.html

From what I understand, Porteus copies some files to the system, while Applmage creates a mountpoint that pretends to have files in the system directories? I'm not sure about that. Can someone explain?

In Windows I would create portable software. Many well behaved executables would first look in the present-working-directory for any libraries it needed. I would log a program install, then copy the program directory to my "portable" folder which contained all my portable software. I would also copy all files injected into the system into the same folder. Do Linux executables have the same tradition of checking the PWD for dependent files?

User avatar
M. Eerie
Moderator
Moderator
Posts: 622
Joined: 31 Aug 2017, 21:18
Distribution: Nemesis Xfce/MATE x64

Porteus modules vs AppImage

Post#2 by M. Eerie » 26 Feb 2024, 08:51

mekineer wrote:
26 Feb 2024, 06:11
What are the differences between Porteus modules and AppImage?
mekineer wrote:
26 Feb 2024, 06:11
Porteus copies some files to the system, while Applmage creates a mountpoint that pretends to have files in the system directories
While both containers usually use the same compression method (squashfs), they use different aproaches to somehow inject a file structure into the Live System (system directories).

The main difference being that in order to inject his contents into the UnionFS, and thus make the various binaries/libraries available to the user, a module needs to be "activated":

Code: Select all

$ activate /path/to/my-module.xzm
while an AppImage does not need to be "activated", since it contains an executable header that invokes the main program for which it was conceived. That header can be a binary that is included when the AppImage is created, or a shell script that does the same. In this way, an AppImage only needs to be executed (don't forget to set his executable bit).

More info Howto: Popular AppImages one click away
> Does not compute_ 🖖

https://forum.porteus.org/viewtopic.php?p=94310#p94310
https://forum.porteus.org/viewtopic.php?p=84002#p84002
https://forum.porteus.org/viewtopic.php?p=77174#p77174
https://forum.porteus.org/viewtopic.php?f=39&t=8584

Post Reply