-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Linux Release #24
Comments
I have a working one running since yesterday with everything in it, and it has launched fine today after login. So could do it, but please tell me once how to do this. |
Thank you! I believe it's as simple as running Then in the release here, click |
It is as you say, but we are not quite 'over the hilltop' yet, as we say here - see my post in issue #22 |
I paste that post here in order to save everybody some clicks: Unfortunately there are still some flaws which I only noticed at a second glance. The good news: it's up and running, but: The autostart entry which is created in /.config/autostart has to be edited manually, since it does not work with the command entered there. It says: Exec=/HOME/USER/TEMPS-LITE-FOLDER/./temps-lite-rust. This command launches it, but although the libsciter-gtk.so file and the locale folder are also present, it launches, but does not seem to recognize them. If you modify the command to Exec=cd /HOME/USER/TEMPS-LITE-FOLDER && ./temps-lite-rust, temps-lite-rust works, but I do not know why this makes any difference, because syntaxwise the former version should be fine. I have copied the release folder from the build and placed it in different locations/places on my machine, but what I described above was always the same. I also tried both commands in a Terminal, and the results were also the same. There are errors on launch with the second command. The first one is an old acquaintance about the rubik font, but the second one may be of interest - I do not know if it is important, because the app is running fine. Here it is: ERROR:TIS: this://app/lang/load-translations.tis(16) : warning :'async' does not contain any 'await' And there is the complaint about GLibc already familiar, too |
I can get rid of the "async" and "font" warnings but the "GLibc" warnings would remain until next version of Sciter so I don't suppose it makes a difference to fix them yet. |
Very good, but after all these warnings would be invisible anyway if you do not launch temps-lite from the Terminal, and it seems furhtermore that they do not prevent the app from working normally. |
Hi,
WARNING:CSS: in @font-face statement, failed to install font at (this://app/rubik.css(4))
Exec=/home/user/temps-lite/target/release/./temps-lite-rust I have to edit it manually, so it matches my folder/file structure: Exec=bash -c 'cd /home/user/temps-lite/target/release && temps-lite' Having done so and logging out and back in produces the desired result.
|
Yes! That would be very appreciated 😍
I recieved this response while typing this 😁 I just applied these fixes which should get rid of the warnings.
I believe @4silvertooth wrote the relevant code here: Lines 23 to 29 in 677a748
I am tempted to recommend replacing this: URL.toPath(System.home("./temps-lite-rust")); With this: URL.toPath(System.home()); Which should theoretically (based on this documentation) return something like:
But I'm confused because you say that it should not begin with Also, why do you prefix it with Forgive me, I am not familiar with Linux 🤔 And honestly, me trying to troubleshoot Linux without a Linux computer is like a blindfolded monkey 🙈 trying to hit a target 🎯 😄 Hopefully, someone else can chime in.
Not a stupid question 😄 Yes, that is exactly what I was hoping for! It would be great if we could have a Linux release so other Linux users don't have to build it themselves 🚀 |
I've tested that on Mint Linux, I suppose on different flavours of Linux it might be a bit different to launch the aplication, Edit: @papioara can you confirm |
Ah yes, when I copied your code from the rust respository to this one, I did not think to update it to match the current name |
Hello everybody, |
It's what you suspected: Instead of my own user name I inserted a generic name, that's all. Maybe I should have done so in a more explicit way... |
Build under Linux: Errors
It is only "bash -c" - " 'cd" is already a part of the following command in single quotes (cd is "change directory"). It does not open a terminal, but just has bash execute the command in the background. If you omit it in the .desktop file, temps-lite won't start. If you open a Terminal and just type in (assuming you are not in the release folder already) |
I believe that's because the executable thinks it's located in whatever folder the command was run from. In this case I imagine it's I will have to find a way to fix this. Maybe allow a command line parameter to tell it where it's located. |
@papioara I believe I fixed the bug where it was not loading languages when started via bash outside of the executable's own folder. |
Hi,
I cloned the repository and copied over packfolder and libsciter-gtk.so from my already existing temps-lite folder in my home directory with the already executable packfolder (was a bit lazy). Then I built temps-lite, moved /locale to /target/release and libsciter-gtk.so also. Of course I wanted to test, if your bugfix concerning smooth launches from wherever you are on your system, works. I went to my home directory and launched temps-lite with the full path name like so: /home/myusername/Downloads/temps-lite/target/release/temps-lite. And lo and behold: it launched flawlessly, but not with the New York weather like when launched from within its folder, but with the weather in my place. Phew, that was all for tonight, but not boring at least... |
Did another test using fresh packfolder and libsciter-gtk.so files, but with the same results as before. Something's tracking me... Scary! And the other temps-lite folder is still in the trash. |
I need some time to respond to the rest of your post, but it seemed appropriate to try to quell your concerns right now: The last location you entered (and your API key) is saved in a file named |
Last time I checked the database.bin file was at the parent directory of where the executable is. |
Thanks for your replies and the information about database.bin. I did some tests, but they raise another question: when called from outside the executable folder with (in my case) ~/Downloads/target/release/temps-lite: can temps-lite draw on another database.bin file somewhere on your system instead? To me it seems to be like that, because, when you launch it like this (database.bin deleted beforehand) and watch what happens in the executable folder, you can see that no new database.bin folder is being created. I scanned my home folder for stray database.bin files and found a single one in my home folder (no idea how it got there) and two others in the Windows version (never used, though) and one in a sciter-notes folder with an additional temps-lite in it. I trashed everything, and now indeed, even if launched from 'somewhere' outside of its executable folder, it is in New York again. |
Thanks for identifying this issue, fixed here! Basically when I corrected the path for the locale folder, I forgot to also correct the path for the database file, to ensure it is always created in the executable's folder, regardless of from where the command prompt was opened which initiated the program. |
I have linked to a specific version of sciter-sdk here in the readme. The included
I imagine this is related to the previously-discussed issue of locale and database pathnames, which hopefully have been resolved. Basically, there should no longer be any issue if for whatever reason one wants to have two or more temps-lite folders on the same computer. |
Great, brilliant! I will run a test later this evening and report. |
Coming back to a ready-to-run downloadable Linux version without even the need to build it beforehand: would it make sense if I upload a folder with the contents of the release folder? To me it seems that there is everything in it which is needed by temps-lite, or am I wrong? Of course, from time to time, I would have to build a new version when there are changes - not an awful lot of work. This would be something for the more lazy users who do not want to or cannot build it themselves, let alone get an API key from openweather... I know a couple of people who are exactly like that. If it's not ready in one or two clicks, they are not interested any more, although in the Windows and Apple worlds, there are more of them than in the Linux world. Linux users often are more open to tinkering a little and to explore things a little more in-depth. You also are closer to the command line, and it is less fraught with all kinds of prejudice among them. |
I see no problem with including your
I am not sure what you mean. To be clear, I am already asking for a
|
Sorry, I was not clear enough... After running cargo build --release, among other stuff, you have a new folder 'target' with a folder 'release' in it. The latter contains the executable - under Linux it is just called temps-lite without the exe. As for the API key one could also open another account on openweather under a different email, so I cannot run into trouble if someone should abuse that account. So I guess, it's pretty much like what you are asking for, or not? Of course that folder does not have to keep the name 'release'l After having tested the latest version, I could upload a .zip of it. |
Sorry, my description of the temps-lite folder contents before and after the build are somewhat cursory and incomplete - I just tried to mention the most essential points... |
Well, on my Windows computer the release folder contains almost 100 megabytes of stuff besides the executable. That's why I was confused by this:
It sounded like you wanted to upload 100 megabytes? 😄 I am still not sure to be honest, but you sound like you know what you are doing, so all good. Apologies for my lack of understanding. |
I have taken a closer look at the release folder and send you a screenshot of its contents after the build. Its size is 49.9 MiB. There are a couple of files and folders which do not seem to be essential for the function, and two folders are empty. I will move out what I guess is unnecessary and see if temps-lite still works and report. |
Ahh, now I understand the source of my confusion. When I build temps-lite, the executable is produced in the release folder, which itself produces But everything else is in the top level folder ( Sciter DLL is in my |
And it also runs when being launched from somewhere else... Looks like the Windows build process goes off differently. I always have to add packfolder and libsciter-gtk.so manually, before I start the build process. Otherwise there will be complaints about them missing. |
That is my fault. I have both packfolder and sciter.dll in my Actually, I don't need sciter.dll to build it, only to run it. |
I have just cloned the repository again, built temps-lite and tested it. Good news: the bug is gone - you can call it from wherever you want, and it does not drop a database.bin like a bird everywhere. Wonderful! /home/myusername/Downloads/temps-lite/target/release/./temps-lite-rust It should be, however: /home/myusername/Downloads/temps-lite/target/release/./temps-lite Would that be difficult? Otherwise you need to edit the autostart entry manually, which would be annoying, because you might have to do it again, should you uncheck the 'Start at login' box and tick it again. |
Should be fixed by the last commit. |
I just checked and can confirm... Wonderful! Thank you! |
That sounds perfect, I would appreciate that very much (as I'm sure future Linux users will too!). The warning isn't important, but removing the underscored line |
Anyone want to upload a Linux binary to the latest release?
Preferably with the folder locale and the appropriate Sciter library file included.
The text was updated successfully, but these errors were encountered: