Linux permission issue

Started by Honza, Wed 16/08/2023 13:00:19

Previous topic - Next topic

Honza

I got this report from a user who downloaded my game:

I'm unable to run it on Linux... After I set the 'execute' permission, it fails with the message: "Shards of God/data/ags64: Permission denied", and I can't figure out what permission it needs.

I don't have Linux myself and have never used it :-[ . What should I recommend they do? Thank you!

Nahuel

What I can see there's no permissions for execution.

I would suspect just doing a simple chmod +x ags64 would resolve the issue. But I don't know why those are not unix executable like files :



The strange thing also is that, the main "executable" (I suspect) has no permissions to be executed



 :confused:
Life isn't a game. Let's develop a life-like-game.

Crimson Wizard

#2
This is a well known issue, since the game archive is built on Windows these files don't contain necessary flags.

You need to apply chmod to the launch script too (file with the name of your game in the parent dir).

EDIT: I was expecting to see this mentioned in the manual, but cannot find any note about this either, so apparently this is another thing that has not been documented.

Nahuel

Would it resolve this issue just by changing permissions to those 3 files to be executable? Would that do the trick?

EDIT:
I was posting it before getting the edited post.
Life isn't a game. Let's develop a life-like-game.


Laura Hunt

For my games I've used @morganw's "ags-tar" script to set the correct permissions and pack everything into a tar.gz archive that you can then simply upload directly to itch: https://git.sr.ht/~mew/ags-tar

Honza

With Nahuel's help, I tried using the script Laura linked and at first it looked like it did the trick:



But then it turned out the files were still not executable, not sure what I did wrong. In the end, Nahuel ended up changing the flags for me manually, so the issue is solved now. Thanks everyone for responding, and especially Nahuel for sacrificing a ton of his time to help me out!

morganw

Quote from: Honza on Thu 24/08/2023 18:32:41But then it turned out the files were still not executable, not sure what I did wrong.
The output of the script is the list of files and their permissions as they are added to the archive, and everything looks to be correct.

At a guess, you were either looking at the wrong file (in your example it would have been created in the directory "C:\AGS 6") or someone has tested the wrong file.  If you still have the file that the script generated I would be happy to have a look at it.

Nahuel

I run it locally and it generates a {GameName}.tar.gz but strangely when running with @Honza there was no tar file generated at all with a "successful" execution summary.

I did it manually it was a very simple change, just +x the permissions to the main executable and data/ags32 and data/ags64

Normally it will generate the tar under the same linux compiled folder (apparently)
Life isn't a game. Let's develop a life-like-game.

morganw

Quote from: Nahuel on Sat 26/08/2023 19:07:23I run it locally and it generates a {GameName}.tar.gz but strangely when running with @Honza there was no tar file generated at all with a "successful" execution summary.

I did it manually it was a very simple change, just +x the permissions to the main executable and data/ags32 and data/ags64

Normally it will generate the tar under the same linux compiled folder (apparently)
It writes the file to the current directory.
In the screenshot the current directory was "C:\AGS 6".

SMF spam blocked by CleanTalk