Author Topic: AppImage - Universal package for Linux  (Read 2909 times)

Offline knapsu

  • Sergeant
  • **
  • Posts: 19
    • View Profile
AppImage - Universal package for Linux
« on: April 21, 2017, 04:12:39 pm »
Hi everyone. Because I got tired of all those issues when it comes to build and distribute packages for different Linux distributions, incompatibilities and quirks even between releases for one single distribution, issues with missing or buggy yaml-cpp package, I've decided to give AppImage a try.
To explain it in few words, we create an application package that can be downloaded from a web page (like for Windows and macOS) and just run by executing this file. Very straightforward, nothing downloaded in the background, nicely integrates with our desktop, and integrates nicely with our desktop. The fun fact is... it actually works!

You can read more about AppImage format here http://appimage.org/

I've created test packages for 64-bit and 32-bit platforms based on DEB packages (it was easier for me). When I find time I will check integrating AppImage directly with CMake as a build step (this would make Linux nightlies awesomely easy to test).

I wish to check if it works on as many Linux distributions as possible before proposing this to SupSuper and Warboy.
I've already check it using VirtualBox on the following distributions:
- Ubuntu Xenial (64-bit)
- Ubuntu Yakkety (64-bit)
- Ubuntu Trusty (64-bit and 32-bit)
- Fedora 25 (64-bit)
- openSUSE Leap 42.2 (64-bit)

Because I have limited resources I would appreciate if anyone could test it on Arch Linux, CentOS, Debian, and previous Fedora or openSUSE.
Generally all modern distributions that have glibc 2.14 (released after 2012) should work.

Links to OpenXcom 1.0 packages:
[links removed as they are no longer valid]

Links to OpenXcom Nightly packages:
[links removed as they are no longer valid]
« Last Edit: December 24, 2017, 01:24:18 am by knapsu »

Offline blesst

  • Squaddie
  • *
  • Posts: 3
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #1 on: May 13, 2017, 11:15:02 am »
I tried it with opensuse but I had the same problem like when I installed it without appimage.
Like :geodata/palettes.dat not found.

I'm sorry

Offline knapsu

  • Sergeant
  • **
  • Posts: 19
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #2 on: May 13, 2017, 11:16:17 am »
Tahnks @blesst for info. Which version of openSUSE are you using?

Offline blesst

  • Squaddie
  • *
  • Posts: 3
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #3 on: May 13, 2017, 12:15:07 pm »
I use OpenSuse Leap 42.2.

Offline 7Saturn

  • Colonel
  • ****
  • Posts: 479
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #4 on: May 14, 2017, 01:02:42 pm »
Honestly: Awesome idea! =)

Offline knapsu

  • Sergeant
  • **
  • Posts: 19
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #5 on: May 14, 2017, 01:44:35 pm »
Hey @blesst, I tested it on openSuSE Leap 42.2 64-bit already. Rechecked it and it works for me.
I guess the issue might be happening if you have locally installed openxcom package, as when running the AppImage the local paths/files takes priority before paths/files embedded in appimage file. when OpenXcom app searches for data directory and it finds a path in local filesystem it tries to use it.

Can you uninstall openxcom pacakge using yast/zypper and rerun the AppImage?

Offline knapsu

  • Sergeant
  • **
  • Posts: 19
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #6 on: May 14, 2017, 02:38:42 pm »
I've updated topic description with links to development/nightly AppImage packages. You can play TFTD with those builds.

Offline Hythlodaeus

  • Colonel
  • ****
  • Posts: 271
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #7 on: May 15, 2017, 04:20:53 pm »
Question: how would mods work with this? I don't see a single compressed binary being very flexible in terms of constantly tweaking and exchanging files for the purpose of mod creation/usage.




Offline 7Saturn

  • Colonel
  • ****
  • Posts: 479
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #8 on: May 15, 2017, 04:28:51 pm »
CMIIR, but aren't mods laying in userspace, anyways? Or does the AppImage concept ignore user space settings and files altogether?

Offline knapsu

  • Sergeant
  • **
  • Posts: 19
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #9 on: May 15, 2017, 04:51:30 pm »
@Hythlodaeus, to use mods you just extract them to data directory. List of valid paths can be found here https://github.com/SupSuper/OpenXcom#directory-locations

Personally I put mods inside my user home directory $HOME/.local/share/openxcom/mods. I find it easier to use (copy/delete mods) than switching to root account and copying extracted files to system directory /usr/share/openxcom/* (location may be different depending on distribution packaging).

The rest is just enabling them in Options > Mods when running OpenXcom.

Offline Hythlodaeus

  • Colonel
  • ****
  • Posts: 271
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #10 on: May 15, 2017, 06:01:27 pm »
@Hythlodaeus, to use mods you just extract them to data directory. List of valid paths can be found here https://github.com/SupSuper/OpenXcom#directory-locations

Aha, I was assuming the app image application did not create a user folder. That's all cool then!

Offline Hythlodaeus

  • Colonel
  • ****
  • Posts: 271
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #11 on: May 15, 2017, 09:07:25 pm »
Well I'll be a son of a gun, it actually works.

Tested on Xubuntu (Ubuntu 16.10 yakkety)

Offline niculinux [RETIRED/QUIT]

  • Commander
  • *****
  • Posts: 1443
  • "Bury me with my guns on"
    • View Profile
Re: AppImage - Universal package for Linux
« Reply #12 on: September 25, 2017, 11:35:03 pm »
Dear knapsu, may we get AppImahe builds also gor openxcom extended and extended plus? If you mind please answer here. Thanks again!