Replies: 61 comments 36 replies
-
Have you tried using environment variable SNIS_ASSET_DIR to make assets be read from someplace else? See the FILES section of man page for snis_client, for example:
|
Beta Was this translation helpful? Give feedback.
-
SNIS does need to write to disk for some things, mainly the little "database" it uses to keep track of a ship's state when jumping from one "solar system" (snis_server process) to another. |
Beta Was this translation helpful? Give feedback.
-
Hmm, yeah SNIS_ASSET_DIR won't help with that. TBH, if you can't compile the game yourself, you probably won't like it anyway, so not too keen on binary distributions anyway, just lets the horde of whiners in. |
Beta Was this translation helpful? Give feedback.
-
Just committed: a1b6cab Make snis_launcher put log files where you want them Try this:
I would not be too surprised if there are other files that it tries to write though. |
Beta Was this translation helpful? Give feedback.
-
Thank you very much. export SNIS_LOG_DIR=/tmp/snis_log_dir I have been testing making an AppImage using WSL on windows. Now over to linux to give it a full test. WSL is not working with sound. I am not sure it would be accurate to say that those who can't compile it would not appreciate it. I am not hopeful on building a flatpak as I believe that all dependencies have to seamlessly download and compile also. And there seem to be a few dependencies. If I get a AppImage build working with github actions, I will let you know. |
Beta Was this translation helpful? Give feedback.
-
Alright, cool. |
Beta Was this translation helpful? Give feedback.
-
One more small update to this: 40f2d62 snis_launcher: guard against non-existent or unwritable SNIS_LOG_DIR |
Beta Was this translation helpful? Give feedback.
-
Thanks.
With all the dependencies I have had a time to make an appimage.
I have a build and instructions:
https://github.com/vpelss/Space-Nerds-In-Space-Appimage/releases/tag/Newest
I had to build on a newer ubuntu, so mileage may vary on different distros.
I tested on Zorn distro, as that is all I had handy.
I have asked an unreliable friend to test on one of their linux distros. So
I will see how it fairs there.
It might be more stable to try and build in a flatpak. Although I foresee a
lot of hiccups. We will see :)
Thanks again!
…On Wed, Dec 18, 2024 at 7:20 PM smcameron ***@***.***> wrote:
One more small update to this:
40f2d62
<40f2d62>
snis_launcher: guard against non-existent or unwritable SNIS_LOG_DIR
—
Reply to this email directly, view it on GitHub
<#362 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACMU44L3IWBJPNINLFYHN2D2GIGMVAVCNFSM6AAAAABT3DJUYGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTCNRRGE2TAMQ>
.
You are receiving this because you authored the thread.Message ID:
<smcameron/space-nerds-in-space/repo-discussions/362/comments/11611502@
github.com>
|
Beta Was this translation helpful? Give feedback.
-
Thanks. Mentioned it here https://old.reddit.com/r/SNIS/comments/1hjxbw0/snis_appimage/ and here https://www.patreon.com/posts/space-nerds-in-118468188 |
Beta Was this translation helpful? Give feedback.
-
Tested successfully on: q4OS I am still trying a flatpack (off and on), but there are many hurdles. Flatpak insists that flatpak-builder is the only way to build packages from source. So for example, opus, the code in the makefile will not work as inside flatpak-builder, it won't let the make environment download anything from the internet. So for each dependency I have to try and find a flatpak friendly code base, and figure out a way to build it in flatpak builder. I believe flatpak is doing all this so they can validate the code in the flatpak, but it is a slog IMO. |
Beta Was this translation helpful? Give feedback.
-
Alright, let me work on the opus situation. You can build without it (and without voice chat functionality,) which is completely fine if you're playing locally, as is meant to be the case ... the voice chat was added during covid lockdown to try to enable over the internet play, but I don't know if anyone's really ever used it in anger, or how well it really works. I've done some minimal testing and it seems to work reasonably well with two users, one in Ohio and one (me) in Virginia, and the snis_server in New York, but I can't really say I've stress tested the voice functionality. To turn off the voice chat functionality, at the top of the Makefile, change "WITHVOICECHAT=yes" to "WITHVOICECHAT=no" (or to anything but yes). I think that will also prevent it from trying to download opus, as it should no longer be a dependency. |
Beta Was this translation helpful? Give feedback.
-
Does this patch help? It should allow you to pre-download opus to whatever location, then build via, e.g.:
so it won't try to use wget to fetch it from mozilla.org. It also occurs to me that the "make update-assets" target runs util/snis_update_assets.sh which makes extensive use of wget to fetch loads of art assets from my digital ocean server. You'll have to find a way around that too, I imagine. (Actually, you don't have to update the assets, the default assets should work, they just don't necessarily look very good.) |
Beta Was this translation helpful? Give feedback.
-
I am starting to hate flatpak more than I did before :) I had some really odd flatpak errors with a trailing space in a yaml file a few months back. To test and fix this I will have to probably have to fork the glew-cmake version I am using and remove those lines. |
Beta Was this translation helpful? Give feedback.
-
Are you sure that's a comment?
is, so far as I know, valid C, and it means the same as
Only the '#' has to be in the first column. You can indent ifdefs this way:
From the GNU C Preprocessor https://debrouxl.github.io/gcc4ti/cpp.html
Hmm, according to that, the '#' doesn't even need to be in the first column. If you're talking about this:
Yeah, those definitely aren't comments. |
Beta Was this translation helpful? Give feedback.
-
Hmm, I'm not a big fan of CMake as there's too much black magic, but you might try this black magic I found:
edit: actually no, you want it undefined, hmm... Oh wait no you do want it defined! Too many double negatives, heh. |
Beta Was this translation helpful? Give feedback.
-
Added this to https://spacenerdsinspace.com
|
Beta Was this translation helpful? Give feedback.
-
I have never submitted any flatpaks to flathub.com I detest the bureaucracy. That being said:
|
Beta Was this translation helpful? Give feedback.
-
Here's the part where I confess I don't know a damn thing about flatpaks, lol. This was your idea, you can do whatever you think is best. |
Beta Was this translation helpful? Give feedback.
-
Ok, watched a few youtube videos, read a bit. Let me think about it some. I am kind of thinking that perhaps it would be best if it were under my control, since, if there are bug reports and whatnot, I'd likely be on the receiving end of those, so it might be a good idea if I knew something about what was going on, and while I've been working on SNIS for a decade or so, and am unlikely to abandon it, you may not wish to commit to maintaining and updating some package for years and years and years and may want to wander off and work on other stuff instead at some point, which is 100% understandable (and probably predictable), so I don't want to rope you into such a commitment. So let me do some research and think about it some. |
Beta Was this translation helpful? Give feedback.
-
but I am realizing I don't know shit about flatpak, so, "best" may not be attainable, heh. I think I'm back to "do whatever you think is best" on the flatpak issue. |
Beta Was this translation helpful? Give feedback.
-
Yeah, up to now, I have not really tagged or versioned anything, I always develop on a branch, and the idea has been any commit at all that you care to pick on master should be working (to enable git bisect to work, and because my method of "releasing" it has always just been to tell people to "git clone" it if they want it, and "git pull" to get updates). I won't say that there are zero commits on master that are broken, but it's not far from zero. The closest thing I currently have to a version is the "v 0.1" plus git commit hash that you see if you go on COMMS and type "/about". But yeah, I gathered that I'd need to do some kind of a versioned release for flatpak. |
Beta Was this translation helpful? Give feedback.
-
A few commits related to version numbers: b5ef127 snis: bump version number to 1.0.0 Also, I made a release: https://github.com/smcameron/space-nerds-in-space/releases/tag/v1.0.0 |
Beta Was this translation helpful? Give feedback.
-
FYI I no longer rely on a modified copy of your Makefile. I was unaware that the following would clobber internal values. I am assuming I am doing that correctly. Well it works. So now there should be less package build issues on my side when you do Makefile updates. I spent a day, trying to hunt down an elusive bug on updating to flatpak runtime from org.freedesktop.Platform 23.08 to 24.08 |
Beta Was this translation helpful? Give feedback.
-
Can you confirm that you want me to create a flatpak of SNIS in this thread. Flathub team want to see it in github writing. I will link them to this thread. |
Beta Was this translation helpful? Give feedback.
-
Sure. I confirm that I have no problem with vpelss creating a flatpak of space-nerds-in-space. -- steve |
Beta Was this translation helpful? Give feedback.
-
Hey, I came across this ...
https://discourse.flathub.org/t/manifest-multiple-sources-in-one-module/8908
and noticed this ...
Well, your second repository contains mostly data files (icon, desktop
file, metainfo). Normally, these data files should be part of the main
repo, as these files are relevant on Linux no matter how the app is
distributed and therefore should be managed upstream together with the app.
Well, I'm not familiar with exactly what we're talking about, but things
like "icon, desktop file, metainfo", seem alright. I'm not sure where they
would go, and am largely unfamiliar with how they are "relevant on Linux no
matter ... ", but that's likely just my own ignorance.
There's always the Contrib directory, if that would help.
https://github.com/smcameron/space-nerds-in-space/tree/master/Contrib
…-- steve
On Fri, Feb 14, 2025 at 3:25 PM Vince Pelss ***@***.***> wrote:
Can you confirm that you want me to create a flatpak of SNIS in this
thread.
Flathub team want to see it in github writing.
I will link them to this thread.
—
Reply to this email directly, view it on GitHub
<#362 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAAF22B6PZGTLKPRF5DBGAL2PZGNNAVCNFSM6AAAAABT3DJUYGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTEMRQGUZDIOI>
.
You are receiving this because you commented.Message ID:
<smcameron/space-nerds-in-space/repo-discussions/362/comments/12205249@
github.com>
|
Beta Was this translation helpful? Give feedback.
-
Also, as for "desktop file" maybe I already have one:
https://github.com/smcameron/space-nerds-in-space/blob/master/snis.desktop
…-- steve
On Sat, Feb 15, 2025 at 12:01 AM Stephen Cameron ***@***.***>
wrote:
Hey, I came across this ...
https://discourse.flathub.org/t/manifest-multiple-sources-in-one-module/8908
and noticed this ...
> Well, your second repository contains mostly data files (icon, desktop
file, metainfo). Normally, these data files should be part of the main
repo, as these files are relevant on Linux no matter how the app is
distributed and therefore should be managed upstream together with the app.
Well, I'm not familiar with exactly what we're talking about, but things
like "icon, desktop file, metainfo", seem alright. I'm not sure where they
would go, and am largely unfamiliar with how they are "relevant on Linux no
matter ... ", but that's likely just my own ignorance.
There's always the Contrib directory, if that would help.
https://github.com/smcameron/space-nerds-in-space/tree/master/Contrib
-- steve
On Fri, Feb 14, 2025 at 3:25 PM Vince Pelss ***@***.***>
wrote:
> Can you confirm that you want me to create a flatpak of SNIS in this
> thread.
>
> Flathub team want to see it in github writing.
>
> I will link them to this thread.
>
> —
> Reply to this email directly, view it on GitHub
> <#362 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AAAF22B6PZGTLKPRF5DBGAL2PZGNNAVCNFSM6AAAAABT3DJUYGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTEMRQGUZDIOI>
> .
> You are receiving this because you commented.Message ID:
> <smcameron/space-nerds-in-space/repo-discussions/362/comments/12205249@
> github.com>
>
|
Beta Was this translation helpful? Give feedback.
-
Though I noticed that my snis.desktop file uses the
utilities-system-monitor icon, which seems pretty bogus.
…-- steve
On Sat, Feb 15, 2025 at 12:07 AM Stephen Cameron ***@***.***>
wrote:
Also, as for "desktop file" maybe I already have one:
https://github.com/smcameron/space-nerds-in-space/blob/master/snis.desktop
-- steve
On Sat, Feb 15, 2025 at 12:01 AM Stephen Cameron <
***@***.***> wrote:
> Hey, I came across this ...
>
>
> https://discourse.flathub.org/t/manifest-multiple-sources-in-one-module/8908
>
> and noticed this ...
>
> > Well, your second repository contains mostly data files (icon, desktop
> file, metainfo). Normally, these data files should be part of the main
> repo, as these files are relevant on Linux no matter how the app is
> distributed and therefore should be managed upstream together with the app.
>
> Well, I'm not familiar with exactly what we're talking about, but things
> like "icon, desktop file, metainfo", seem alright. I'm not sure where they
> would go, and am largely unfamiliar with how they are "relevant on Linux no
> matter ... ", but that's likely just my own ignorance.
>
> There's always the Contrib directory, if that would help.
> https://github.com/smcameron/space-nerds-in-space/tree/master/Contrib
>
> -- steve
>
>
> On Fri, Feb 14, 2025 at 3:25 PM Vince Pelss ***@***.***>
> wrote:
>
>> Can you confirm that you want me to create a flatpak of SNIS in this
>> thread.
>>
>> Flathub team want to see it in github writing.
>>
>> I will link them to this thread.
>>
>> —
>> Reply to this email directly, view it on GitHub
>> <#362 (comment)>,
>> or unsubscribe
>> <https://github.com/notifications/unsubscribe-auth/AAAF22B6PZGTLKPRF5DBGAL2PZGNNAVCNFSM6AAAAABT3DJUYGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTEMRQGUZDIOI>
>> .
>> You are receiving this because you commented.Message ID:
>> <smcameron/space-nerds-in-space/repo-discussions/362/comments/12205249@
>> github.com>
>>
>
|
Beta Was this translation helpful? Give feedback.
-
Eh, I can kind of see where they are coming from. They have a way of doing things, and if they let everyone sort of do their own thing their own way all the time, then it becomes the case that it's hard to find good examples to go by, easy to accidentally follow bad examples, hard to debug because everybody's doing different things, etc. A foolish consistency may be the hobgoblin of little minds, but not all consistency is foolish. I'll let you drive on this how you see fit, but if it's standard practice to do things a certain way, and we're doing them some other way for no real reason other than the convenience of not changing it from what we already have now, well... that's not ideal. But I'll leave it to you. |
Beta Was this translation helpful? Give feedback.
-
Since both flatpak and appimages now exist, I suppose we can close this discussion.
Feel free to re-open if need be. |
Beta Was this translation helpful? Give feedback.
-
I am making an AppImage or Flatpak for easy distribution.
The only problem is that the code places temp files in the same path as the code which will not allow AppImage to work, but I 'might. be able to get Flatpak to work.
AppImage creates a read only tmp directory to run the program.
See:
/tmp/.mount_Space_PFfcwi/usr/bin/snis_launcher: 317: cannot create snis_client_log.txt: Read-only file system
If temp files (and snisb) could be written to maybe ~, then I could package this up and open it to a wider audience.
Beta Was this translation helpful? Give feedback.
All reactions