I am trying to create compressed AppImages for a few closed-source development tools, namely Texas Instruments’ Code Composer Studio (~2GB), Altera’s Quartus (~6GB), Xilinx ISE (~20GB). Creating a quartus image take a full hour due to xorriso’s compression eating up a single cpu core, even though I have SSD drives that should be able do it in minutes.
- Can I disable xorriso’s compression for faster image creation during testing?
- If not, what other techniques can I use to speed testing up?
- Can xorriso do multithreaded compression?
P.S.: Running quartus from the AppDir is working, but running from the image is not. That is why I wanted to test directly with an AppImage.
Hi @lhartmann, welcome to AppImage.
Please use appimagetool rather than AppImageAssistant, the result will be squashfs-based rather than xorriso ISO9660 zisofs AppImages. mksquashfs does support multiple cores for compression. I could imagine that this alone will speed up compression times considerably.
For testing though, an AppImage should not behave noticeably differently from an AppDir when you call AppRun from outside of the AppDir (e.g., current working directory is outside of the AppDir), and the AppDir is read-only (e.g., on a disk mounted read-only).
Found a way to test AppImageAssistant without compression, just removed --zisofs from a command line inside AppImageAssistant.AppImage/package.
- Quartus.AppDir runs fine.
- Quartus.AppImage is ~12GB uncompressed, but runs fine.
- Quartus.AppImage is ~5GB compressed, but does not work. strace returns error on execve(“AppRun”… Maybe a 4GB (32-bit) issue with zisofs?
Will try appimagetool next.
P.S.: Great tool you made, probono! Thanks for the help!
Yes, please use
appimagetool, it adds other advantages too as discussed here, including GPG2 signatures.