Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Shield Cat

Spin to win as Lance the otter in this top-down pixel art game! · By Jess

Re: Linux version questions

A topic by Skirmisher created Sep 04, 2022 Views: 166 Replies: 2
Viewing posts 1 to 3

Hi! Regarding your blurb at the bottom of the game page, I wanted to report that I can download the Linux version of Shield Cat through the itch client (on Steam Deck) and launch it straight away with no problems! Presumably the client knows to mark the AppImage executable after downloading?

For those not using the itch client (or downloading the game elsewhere), you could put the AppImage into a tar archive ("tarball"). Unlike a zip, the tar format stores the permission settings of its files, so if your AppImage was in a tarball, it would be marked executable automatically when extracted (which the itch client should do automatically). That's one reason Linux stuff is usually distributed in tarballs and not zips. (Aside: usually a tar archive is compressed, with gzip for example (extension ".tar.gz"), but the AppImage is compressed already, so you could just use a plain ".tar". Not a big deal though.)

have seen Linux archive tools that try to detect programs in zip archives so they can set the execute permisson accordingly, but I'm not sure which ones do it, or if their heuristics are any good. On my Steam Deck, I tested Ark with the zip download from Shield Cat's SFGHQ page, and it did not mark the AppImage as executable when extracting it.

Also, it's common for user-friendly file managers to do a similar detection, and offer to set the execute bit if someone tries to open a binary without it. In KDE Plasma's file manager, it pops a dialog asking if you trust the program; if you accept, then it sets the execute bit, runs the program, and never asks about it again—sort of treating the setting as a makeshift "quarantine bit" and not bothering the user with details about permissions. I would expect GNOME to have something similar.

All that is to say, setting the execute permission is not usually much of a bother, but you can distribute a tarball if you don't want to worry about it. Downloading the AppImage directly is still reasonable, too. If people have more specific struggles getting the game to run, I'd be happy to offer advice to streamline the process in those cases.

Sorry that was a bit lengthy, this always happens when I try to explain something! Very excited to play through the current state of Shield Cat now!!

Developer

Ah, I may have to try out the tarball thing. Honestly, Gamemaker just connects to a Linux computer over SSH, the Linux computer makes the appimage, and then it sends the build back to my Windows computer. So, I think even if it is being marked as executable, it's probably losing that the second that the appimage file is copied back to my Windows PC.

Haha oops, that didn't occur to me at all! I forgot about GMS's convoluted Linux build process... I'm not actually sure how one would work around that within Windows, short of using Windows Subsystem for Linux or something. At any rate, I think it would be fine if you kept the direct AppImage download, and just had a "remember to mark the file as executable" note in the install instructions on itch's download page.