It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
avatar
king_mosiah:
This is a terrible idea, IMO.

I have several issues with this:

1) with bundled this way packages it is impossible to use mods or fan translations or... basically do anything with game resources;
2) sometimes libraries provided with a package simply refuse to work (I'm on Fedora). I have to delete those *.so libraries to force the game to work with system ones instead (this is particulary true for libSDL2.so and its 'family');
3) as was mentioned before, unpacking everytime you want to use an app has a big impact on launch time. It is tolerable for portable apps but for desktop it has absolutely no excuses;
4) one does not need to install a game: it is an entertainment application for a short time only, not a system-wide utility for mundane use. And besides, the process known as installation stems from the dreaded MS DOS where a game needed to determine hardware and system environment (disk paths, IRQs etc.) before it could be run. Later under Windows a game needed to write some nefarious information (like activation time for shareware games) and user preferences into the Registry. This is not the case under Linux, so the process of installation is reduced only to '*.desktop' links creation. Thus all these debates regarding DEB VS. RPM are completely irrelevant (it is not that the game resolves some dependancies).
avatar
king_mosiah:
avatar
Alm888: This is a terrible idea, IMO.

I have several issues with this:

1) with bundled this way packages it is impossible to use mods or fan translations or... basically do anything with game resources;
2) sometimes libraries provided with a package simply refuse to work (I'm on Fedora). I have to delete those *.so libraries to force the game to work with system ones instead (this is particulary true for libSDL2.so and its 'family');
3) as was mentioned before, unpacking everytime you want to use an app has a big impact on launch time. It is tolerable for portable apps but for desktop it has absolutely no excuses;
4) one does not need to install a game: it is an entertainment application for a short time only, not a system-wide utility for mundane use. And besides, the process known as installation stems from the dreaded MS DOS where a game needed to determine hardware and system environment (disk paths, IRQs etc.) before it could be run. Later under Windows a game needed to write some nefarious information (like activation time for shareware games) and user preferences into the Registry. This is not the case under Linux, so the process of installation is reduced only to '*.desktop' links creation. Thus all these debates regarding DEB VS. RPM are completely irrelevant (it is not that the game resolves some dependancies).
1. You can crack open AppImages, so I don't see how they stop mods from being installed.
2.Like I said before, you can open appimages to add/remove files.
3. It's an extra second or two. I don't really see this as a big deal for games in particular.
4.Not sure what the point here is... You do not "install" appimages; you juse run them from whatever folder you put them in.
Post edited November 02, 2016 by king_mosiah
avatar
king_mosiah: 1. You can crack open AppImages, so I don't see how they stop mods from being installed.
I do not want to crack anything. Nor should I. All I want is an easy straightforward way to access files. Let's not complicate things without the need, OK?

avatar
king_mosiah: 2.Like I said before, you can open appimages to add/remove files.
See above.

avatar
king_mosiah: 3. It's an extra second or two. I don't really see this as a big deal for games in particular.
I have rather slow (but quiet) WD "Green" disk. I'm sure, in my case it will be more than 1 second.

avatar
king_mosiah: 4.Not sure what the point here is... You do not "install" appimages; you juse run them from whatever folder you put them in.
The point is: let's not fix what is not broken. Current Mojo "installation" method is simple and universal across all OS distributions enough.

And one another thing: how to distribute updates? To force redownload 10+ GiB of data every time? Sure, there are utilites such as xdelta, but honestly, have you used it before? It easier to teach a monkey to play grand piano that to explain a newbie how to apply xdelta patches. Oh, wait! AppImage *has* update capabilities. In the command line...

Overall, AppImage is not meant to be used on a stationary hard drive. It simply does not provide any benefits. And, IMHO, currently GOG should have other priorities (*cough*... Galaxy *cough*) than reimplementing package distribution methods.
Post edited November 02, 2016 by Alm888
avatar
king_mosiah: 1. You can crack open AppImages, so I don't see how they stop mods from being installed.
avatar
Alm888: I do not want to crack anything. Nor should I. All I want is an easy straightforward way to access files. Let's not complicate things without the need, OK?

avatar
king_mosiah: 2.Like I said before, you can open appimages to add/remove files.
avatar
Alm888: See above.

avatar
king_mosiah: 3. It's an extra second or two. I don't really see this as a big deal for games in particular.
avatar
Alm888: I have rather slow (but quiet) WD "Green" disk. I'm sure, in my case it will be more that 1 second.

avatar
king_mosiah: 4.Not sure what the point here is... You do not "install" appimages; you juse run them from whatever folder you put them in.
avatar
Alm888: The point is: let's not fix what is not broken. Current Mojo "installation" method is simple and universal across all OS distributions enough.

And one another thing: how to distribute updates? To force redownload 10+ GiB of data every time? Sure, there are utilites such as xdelta, but honestly, have you used it before? It easier to teach a monkey to play grand piano that to explain a newbie how to apply xdelta patches. Oh, wait! AppImage *has* update capabilities. In the command line...

Overall, AppImage is not meant to be used on a stationary hard drive. It simply does not provide any benefits. And, IMHO, currently GOG should have other priorities (*cough*... Galaxy *cough*) than reimplementing package distribution methods.
"Crack" may have not been the right word, but opening an appimage is not harder than an archive file. Mojo installers try to replicate the 'Windows' way of installing software on Linux. That might not be "broken", but it's still not a good thing.
As for Galaxy, it could also make use of AppImages (and Flatpaks/Snaps) and even update them with the utilites you mentioned, for the user.
avatar
king_mosiah: 1. You can crack open AppImages, so I don't see how they stop mods from being installed.
2.Like I said before, you can open appimages to add/remove files.
3. It's an extra second or two. I don't really see this as a big deal for games in particular.
4.Not sure what the point here is... You do not "install" appimages; you juse run them from whatever folder you put them in.
That's still a ton of hoops I have to jump through. The way things currently work, after installation I can interact with the game's files with bog standard unix tools and I never have to repack everything into an ISO. It might sound like it's notihng to you, but for many of us it's a big deal. Installing mods and tweaking settings might require dozens of file additions, removals and edits. All of which may have to be tested separately. It's a major pain in the arse if you have to introduce more tooling and steps to the process.

And I suspect you might be seriously underestimating the performance impact. Games are getting huge these days; heck, Crysis (which is nearing a decade old) is like 7 or 8 gigabytes. Recent games can be much bigger.

Now tell me, what good does this do for me again? I don't see a single benefit. At least not for games. Maybe, again, for some smallish desktop apps that you never want to mess with. Because these *are* comparatively small, you don't mod them, and tweaks are done through config files residing under users' home directories. It's a completely different scenario.
avatar
king_mosiah: 1. You can crack open AppImages, so I don't see how they stop mods from being installed.
2.Like I said before, you can open appimages to add/remove files.
3. It's an extra second or two. I don't really see this as a big deal for games in particular.
4.Not sure what the point here is... You do not "install" appimages; you juse run them from whatever folder you put them in.
avatar
clarry: That's still a ton of hoops I have to jump through. The way things currently work, after installation I can interact with the game's files with bog standard unix tools and I never have to repack everything into an ISO. It might sound like it's notihng to you, but for many of us it's a big deal. Installing mods and tweaking settings might require dozens of file additions, removals and edits. All of which may have to be tested separately. It's a major pain in the arse if you have to introduce more tooling and steps to the process.

And I suspect you might be seriously underestimating the performance impact. Games are getting huge these days; heck, Crysis (which is nearing a decade old) is like 7 or 8 gigabytes. Recent games can be much bigger.

Now tell me, what good does this do for me again? I don't see a single benefit. At least not for games. Maybe, again, for some smallish desktop apps that you never want to mess with. Because these *are* comparatively small, you don't mod them, and tweaks are done through config files residing under users' home directories. It's a completely different scenario.
Dolphin opens appimages as though they were archive files. I dunno about other file managers, But you can also mount them like an .iso and add files that way.

Games sold on GOG already come packed with their own libs (in most cases), so there wouldn't be much of a file size difference most of the time.
avatar
djotaku: Well, I say that I think it'd be really great. However, when I asked over on reddit, people seemed to say that it was less buggy to keep it the way it is now.
avatar
king_mosiah: Buggy? Anyway, there isn't much of a drawback over tarballs; since you can open an AppImage, if needed to remove/add a lib or make some other change.
avatar
Darvond: That's great except the three biggest distros use different methods.

Arch uses PacMan, Fedora uses DNF, and people who like month old leftovers or older enjoy apt.

Between those three, they all have different means of dependency revolvers.

Not all distros will have the required deps, and even worse ones don't allow i686/x64 to coexist in the same environment.

And as I've learned while trying to play with OpenRCT2's Linux distro, some .so files just straight up don't exist for certain distros. Like Libcrypto, even though I installed both i686 and x64 libssh files.
avatar
king_mosiah: These are the problems addressed by appimages (or at least mitigated). The same appimage for Krita, for example, works with all my Arch, Fedora and Debian based boxes. Try it for yourself.

https://krita.org/en/download/krita-desktop/
No thanks. Already installed though DNF and I have no idea if appimage has the proper means to hook into the various systems as to keep a program properly updated.
avatar
linuxvangog: I am personally very excited for AppImages! So far it's the fastest and easiest way to run third party applications that are not available in the distribution repositories. And it (more or less) works across all distributions.

It is different from Mac .dmg, though. The content of a .dmg file is an .app bundle that user moves to the Applications folder on user's Mac (which is something similar to Program Files folder on Windows). That way the application is installed locally in a officially supported path.

Instead of that, AppImage uncompresses the application on each run, which might make the application start considerably slower. This acts like portable applications known from Windows:
http://portableapps.com/about/what_is_a_portable_app
avatar
Darvond: [Some] (..) distros (..) don't allow i686/x64 to coexist in the same environment.
avatar
linuxvangog: This is sadly a problem that AppImage doesn't solve and also a reason why we chose to use an installer that is started via a shell script.

Btw
avatar
Darvond: Arch uses PacMan, Fedora uses DNF, and people who like month old leftovers or older enjoy apt.
avatar
linuxvangog: Shots fired! :)
And even the current installer isn't perfect, as I found out with Little Inferno requiring some i686 deps. (Resolved, thankfully.) I know that one can use the ldd command in order to check and see what libraries/so files are required. I wonder if GOG can/has implemented such a thing?

As for fired shots, I like having new features in a timely matter, rather than 9 months later.
avatar
Darvond: Arch uses PacMan, Fedora uses DNF, and people who like month old leftovers or older enjoy apt.
avatar
timppu: People who like the be free testers for an extremely buggy alpha version of Red Hat, use Fedora. :)

I mean seriously. I recall when I tried to use Fedora, it was almost impossible to use due to all the bugs. When it finally got relatively stable... they replaced it with another buggy release of Fedora (I presume that earlier stable Fedora became a Red Hat release then).

If one wishes to use a free Red Hat family distro, I presume CentOS is the way to go, not that awful Fedora. Stay away from it, it is highly carcinogenic.
If I wanted to test a buggy alpha, I'd go ahead and run Rawhide.
Post edited November 02, 2016 by Darvond
avatar
king_mosiah: Dolphin opens appimages as though they were archive files. I dunno about other file managers,
I care about using standard unix tools, not distribution or DE specific linux-only hacks.

But you can also mount them like an .iso and add files that way.
With what? Last I looked, fuseiso only implements read support. And again, I would prefer to work with standard unix tools and not some terrible fuse hacks.

Mounting a huge file is not going to work around the fact that editing a huge file will suck. And there are other problems, like support for legacy filesystems that do not support these huge files. GOG currently breaks them down for you, so you can still move your installer on to a FAT32 usb stick.

I repeat: I do not see a single benefit to using a system like this. I only see plenty of downsides compared to what we're using now.
Post edited November 02, 2016 by clarry
avatar
king_mosiah: Dolphin opens appimages as though they were archive files. I dunno about other file managers,
avatar
clarry: I care about using standard unix tools, not distribution or DE specific linux-only hacks.

But you can also mount them like an .iso and add files that way.
avatar
clarry: With what? Last I looked, fuseiso only implements read support. And again, I would prefer to work with standard unix tools and not some terrible fuse hacks.

Mounting a huge file is not going to work around the fact that editing a huge file will suck. And there are other problems, like support for legacy filesystems that do not support these huge files. GOG currently breaks them down for you, so you can still move your installer on to a FAT32 usb stick.
Again, most of the games you get here also have libs bundled with them. So where are you getting that an AppImage version will be all that much bigger?

Also:

>Linux only
>Muh unix

Are you trying to run games for GNU/Linux on BSD?
Post edited November 02, 2016 by king_mosiah
avatar
king_mosiah: Again, most of the games you get here also have libs bundled with them. So where are you getting that an AppImage version will be all that much bigger?
I didn't say that. But if I have to repack everything into that single iso that contains everything, it's a huge file. As it is, I can deal with all the little files installed on my filesystem of choice.

Should I be able to run these modified AppImage applications without repacking the entire thing into a huge iso? Because right now I cannot. It does not work. If the purpose of this format is to make it difficult for me, it has succeeded.

Are you trying to run games for GNU/Linux on BSD?
And what if I were? But what I do with my files should not be your concern.

Also there's a reason why installers are compressed. Game data files shouldn't have a layer of compression on them, however. Either the AppImage is uncompressed (it's gonna be needlessly large for distribution) or decompressing gigabytes of data is going to be a major performance burden.
Post edited November 02, 2016 by clarry
avatar
immi101: did you try and measure how much slower that actually is?
avatar
linuxvangog: No serious benchmarks, but with a timer, AppImages were considerably (a few seconds) slower. Using regular SATA hard drive, not a SSD.
well, ok then. I'd rather have quicker startup times than a bit more convenience :)

and the argument wrt making modding a pain in the ass is certainly true as well.

avatar
immi101: most modern file systems support on-the-disk compression, because it is usually said that decompression is faster than reading from the harddisk.

(...)
avatar
linuxvangog: Is ext4 modern? :)
that's why I wrote 'most' :p
avatar
king_mosiah: Again, most of the games you get here also have libs bundled with them. So where are you getting that an AppImage version will be all that much bigger?
avatar
clarry: I didn't say that. But if I have to repack everything into that single iso that contains everything, it's a huge file. As it is, I can deal with all the little files installed on my filesystem of choice.

Should I be able to run these modified AppImage applications without repacking the entire thing into a huge iso? Because right now I cannot. It does not work. If the purpose of this format is to make it difficult for me, it has succeeded.

Are you trying to run games for GNU/Linux on BSD?
avatar
clarry: And what if I were? But what I do with my files should not be your concern.

Also there's a reason why installers are compressed. Game data files shouldn't have a layer of compression on them, however. Either the AppImage is uncompressed (it's gonna be needlessly large for distribution) or decompressing gigabytes of data is going to be a major performance burden.
Except you can update an appimage. Granted, you have to use the CLI at this point, but I see no reason why Galaxy couldn't have that functionality built into it, since all the tools are F/OSS.

Seems more people than I thought are bothered by the extra secound or two it takes for AppImages to start. That being the case, I'm open to extending the topic to Flatpak and Snap, neither of which have this problem. Though, both require systemd, which I felt would still be an even bigger issue for some.
Post edited November 02, 2016 by king_mosiah
avatar
king_mosiah: Except you can update an appimage. Granted, you have to use the CLI at this point, but I see no reason why Galaxy couldn't have that functionality built into it, since all the tools are F/OSS.
You're still triyng to hoist tools on me for no good reason. Why can't I just work with my old tools that have worked fine for decades?

Seems more people than I thought are bothered by the extra secound or two it takes for AppImages to start.
Forget that extra second or two. We don't know what linuxvangog tested.

Here are a couple facts: If appimage decompresses the whole image at startup, it is absolutely not suitable for games.

Why? Well, where you store the decompressed version? On the disk? IO is still comparatively slow. Decompressing and writing a 10-gigabyte on the disk game *will* take more than a couple seconds even on a fast SSD.

The other alternative is to decompress it into RAM. Thus RAM reqiurements for the games will absolutely skyrocket, for no good reason. And I still have a hard time believing you could read and decompress 10 gigabytes of data even with a reasonably fast SSD.

There is the possibility of decompressing only the data that is accessed, when it is accessed. But there is another problem with compression; the industry has been for long headed into streaming asssets. If we're going towards the system John Carmack envisioned, we'd mmap assets into GPU-accessible memory, then let the GPU generate page faults, which then result in automatically loading the relevant page of the asset directly from the disk. That is the simplest and likely the fastest way to stream assets into a game, *and* it will reduce memory pressure as the VM subsystem can page out unused data automatically. This works best when the assets are stored on disk in the same format the GPU uses for rendering; a layer of compression will get in the way. It's technically possible to have the page fault handler decompress data for you (and indeed fuse appears to make it possible even with userspace fault handlers), but it's quite nasty, eliminates the most direct DMA path from disk to GPU, and will tax the CPU on a game that might already be stressing the CPU hard enough.

This is all a non-issue for small desktop applications. I don't think AppImage designers ever thought about games.
Post edited November 02, 2016 by clarry
avatar
king_mosiah: Except you can update an appimage. Granted, you have to use the CLI at this point, but I see no reason why Galaxy couldn't have that functionality built into it, since all the tools are F/OSS.
avatar
clarry: You're still triyng to hoist tools on me for no good reason. Why can't I just work with my old tools that have worked fine for decades?

Seems more people than I thought are bothered by the extra secound or two it takes for AppImages to start.
avatar
clarry: Forget that extra second or two. We don't know what linuxvangog tested.

Here are a couple facts: If appimage decompresses the whole image at startup, it is absolutely not suitable for games.

Why? Well, where you store the decompressed version? On the disk? IO is still comparatively slow. Decompressing and writing a 10-gigabyte on the disk game *will* take more than a couple seconds even on a fast SSD.

The other alternative is to decompress it into RAM. Thus RAM reqiurements for the games will absolutely skyrocket, for no good reason. And I still have a hard time believing you could read and decompress 10 gigabytes of data even with a reasonably fast SSD.

There is the possibility of decompressing only the data that is accessed, when it is accessed. But there is another problem with compression; the industry has been for long headed into streaming asssets. If we're going towards the system John Carmack envisioned, we'd mmap assets into GPU-accessible memory, then let the GPU generate page faults, which then result in automatically loading the relevant page of the asset directly from the disk. That is the simplest and likely the fastest way to stream assets into a game, *and* it will reduce memory pressure as the VM subsystem can page out unused data automatically. This works best when the assets are stored on disk in the same format the GPU uses for rendering; a layer of compression will get in the way. It's technically possible to have the page fault handler decompress data for you (and indeed fuse appears to make it possible even with userspace fault handlers), but it's quite nasty, eliminates the most direct DMA path from disk to GPU, and will tax the CPU on a game that might already be stressing the CPU hard enough.

This is all a non-issue for small desktop applications. I don't think AppImage designers ever thought about games.
Well, since the topic has been extended to include Flatpak and Snaps, what is your opinion there? Neither one of these has this issues you bring up with AppImage.
Post edited November 02, 2016 by king_mosiah
avatar
king_mosiah: Flatpak
Documentation is too sparse and I cannot be arsed to read the source right now but it looks nasty and doesn't seem to solve any problem I have. But again it does seem to introduce the problem that AppImage has, namely that now I need more tools and steps to tweak the files.

and Snaps
Compressed and read-only, it seems to have exactly the same problems that AppImage has.

All three are introducing problems for me and not solving one I have. Apparently they could solve one problem for you, namely having to run an installer before playing a game. Is that such a major problem?

Whatever GOG is doing right now is fine. So the installer look windows-like and isn't sexy (and GOG uses it to shove the EULA at you, which is convenient for them and me assuming I really have to see one). Yeah I agree. But it's not a big deal. Either way the data files end up somewhere on your filesystem of choice, stored in a format chosen by the developer, you can easily mess with them using the good old tools, and indeed I can extract these files from the installer on just about any system. Such as a BSD.
Post edited November 02, 2016 by clarry