Celestia 1.7.0 windows installer

The place to discuss creating, porting and modifying Celestia's source code.
Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #21by cartrite » 03.01.2023, 08:27

The iss file lists all files that needs to be built which is a pain to maintain. I build and install Celestia make sure all the files are their folders. Then I add the top folder into the inno program which adds all the files to be installed into the setup.exe file.
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Markerz
Developer
Posts: 274
Joined: 29.01.2009
Age: 29
With us: 15 years 10 months
Location: Suzhou, China

Post #22by Markerz » 10.01.2023, 11:25

I've been adding automation to installer generation.

code: https://github.com/CelestiaProject/Celestia/pull/1499
can test with the artifacts here: https://github.com/CelestiaProject/Celestia/actions/runs/3882535755 (installer is xxx.zip/installer/CelestiaInstaller.exe)

Note that the 64bit installer will install to C:\Program Files\Celestia by default.

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Post #23by selden » 10.01.2023, 16:40

Markerz wrote:I've been adding automation to installer generation.

code: https://github.com/CelestiaProject/Celestia/pull/1499
can test with the artifacts here: https://github.com/CelestiaProject/Celestia/actions/runs/3882535755 (installer is xxx.zip/installer/CelestiaInstaller.exe)

Note that the 64bit installer will install to C:\Program Files\Celestia by default.

If there's a pre-existing installation of Celestia, does it install to (or default to installing in) the pre-existing directory?

For my use case, I've found it important that Celestia NOT be installed in Program Files. Windows has become more and more protective of its program directories, preventing some ways of interacting with Celestia, especially from a non-admin account. (Modifying startup files, etc.)

In particular, I have Celestia installed in C:MyPrograms\Celestia

When I want to use different versions of Celestia, I just rename the current Celestia folder to something else, and rename the other folder to be Celestia.
Selden

Markerz
Developer
Posts: 274
Joined: 29.01.2009
Age: 29
With us: 15 years 10 months
Location: Suzhou, China

Post #24by Markerz » 11.01.2023, 12:22

selden wrote:If there's a pre-existing installation of Celestia, does it install to (or default to installing in) the pre-existing directory?
probably not, I've not tested but you can check

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Post #25by selden » 11.01.2023, 16:35

*sigh* I give up.
What's the full path to the installer?

I can only find logs but not the installer itself. I'm obviously looking in all the wrong places. :(
Selden

Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #26by cartrite » 11.01.2023, 18:05

selden wrote:*sigh* I give up.
What's the full path to the installer?

I can only find logs but not the installer itself. I'm obviously looking in all the wrong places. :(

The installer from this thread is provided by the Inno program. In it is the .iss file that was the input to compile the installer. From what I can understand, Markerz is trying to do what the Inno wizard does with the iss script. I don't see the point. That would be another project in itself. Any automation would have to have all options coded into it.

With the Inno wizard, options can be provided. I build Celestia with cmake with a prefix to a CelestiaSpace folder. Then I install it into that folder. Problem is, not all the dll's and data folders are installed with it. So they must be copied into the CelestiaSpace folder manually. That is the problem that should be addressed.

When I run the Inno wizard, I simply add CelestiaSpace into the wizard and it compiles the installer. But all dll's and data files must be in the folder. With the wizard, there is the option to let the user install Celestia into any folder they want to. Selden, that would address your concern.

Added after 15 minutes 1 second:
I think that the cmake installation process should be fixed. After that compiling an installer is cake. :hi:
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Post #27by selden » 11.01.2023, 20:10

@cartrite

Are you referring to the installer which is in post#2 of this thread?

That installer and its version of Celstia v1.7 (with Lua v5.1) do seem to work OK on my Win10 computer, installing Celestia where I want and successfully running nroutes.celx.

However, while its Celestia executable is dated Feb 3, 2022, its "Help/About Celestia" claims to be v1.7.0, copyrighted 2021.
Hopefully somebody has been updating Celestia's internal version number so the interim alphas can be distinguished from one another.
Selden

Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #28by cartrite » 11.01.2023, 20:24

I haven't done this in a while now but I have a few days off and I'll boot into Windows 11 tonight and see if I can build a new version with the latest git pull and renew the old installer. The problem isn't compiling an installer, it's building Celestia and getting it to work. Once it has all the dep dll's and it works, the installer is basically just a folder that has been compressed into a zip file. The installer part just automates the process of unzipping the folder to a place on a computer and modifies the registry for file associations, etc.

Added after 2 minutes 42 seconds:
Are you referring to the installer which is in post#2 of this thread?

Yes I was.

Added after 11 minutes 28 seconds:
If one has installed Celestia with the installer from this thread, there should be a file called celestia.iss in your installed folder. If you compare it to the celestia.iss file that comes with the celestia source from github, you'll see the difference and should be able to see what I'm talking about here.

Added after 1 minute 52 seconds:
Keep it simple. Build and iInstall Celestia with cmake then run the Inno wizard to create celestia.iss. When I run the wizard I don't add every file that needs to be installed. I just add the whole folder all the files are in. Inno then adds all the files that are in the folder.

Added after 1 minute 36 seconds:
Running that celestia.iss with the Inno program will create the setup.exe for the latest build.

Added after 1 minute 17 seconds:
Of course Inno needs to be installed. :wink:

Added after 48 minutes 50 seconds:
After I build and install Celestia into a working folder, I create a set.exe to officially install to my computer for testing and for running. Believe me that is the easiest part of the whole process. That's why I am confused as of why the need for an automated installer creation on github.
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Markerz
Developer
Posts: 274
Joined: 29.01.2009
Age: 29
With us: 15 years 10 months
Location: Suzhou, China

Post #29by Markerz » 12.01.2023, 04:21

it is part of modern app development to have everything automated. it's not because it is difficult, it is rather because that local development are not reliable. One can generate a build and create an installer locally, but first your local environment could affect the output of installer. for example, Inno version, visual studio version. Also one could easily inject malicious code if they generate the installer locally.

Added after 1 minute 47 seconds:
and also it is about making sure that the .iss file works, since every commit to GitHub would go through the automated installer generation process, if the iss stops working it will show up in the build status.

Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #30by cartrite » 12.01.2023, 04:33

Here is a 64 bit installer for win32 and qt5. I did a git pull tonight of both content and Celestia source bfa007b2. No anticipated problems building. Lot of missing dll's for win32 and qt versions. That was it. Hires folder is missing because of it's file size. There is something to note about installing where ever you want. I had a few trials tonight. The first time, I installed it where I wanted to. But the second time it bypassed that option. I had yo uninstall the first one. Then I was able to browse for the location again.

I removed the installer created last week.

See this post,
viewtopic.php?p=160735#p160735

Celestia-x64-setup.zip
Last edited by cartrite on 21.01.2023, 23:11, edited 2 times in total.
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Post #31by selden » 12.01.2023, 14:48

This new installer worked fine for me!

It provided the option to install Celestia wherever I wanted (which was into my pre-existing (but emptied) folder.) Presumably that's because I did empty that folder first, but left the folder itself.

FWIW, I also deselected the options to create a desktop icon and associate file types with Celestia, since they had been done by previous installations.
----
I was disappointed to see that the "About Celestia" help window has not been updated. e.g. it still says it's v1.7.0, copyright 2021. In other words, there's no way to find out at run-time which pre-release version of Celestia v1.7 is being used.

A new bug, not present in the version of Celestia that's in the previous installer: this version of Celestia does not set the default cursor to be a crosshair as is specified in the default celestia.cfg. Instead the cursor stays unchanged from whatever it was previously, including Windows' "change window size" indicator if one happened to pause on the border of Celestia's window. *sigh*

I'll try to post these two problems to github.

Added after 18 minutes 38 seconds:
Unfortunately, Celestia-qt does not work at all. It hangs while still showing the pre-start popup, which claims that it's loading the Skylab addon.

Might there be a file missing?
Selden

Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #32by cartrite » 12.01.2023, 16:11

My celestia-qt started fine. I didn't run it for long. I was able to use Help / About Celestia. That is how I got that version/commit number. I also saw the copyright message for 2001 - 2021. Skylab is the last to load on my linux qt version. Probably the last to load on qt windows too. Not sure what is going on here. Maybe your system is having trouble with one of the qt libs. ?
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Post #33by selden » 12.01.2023, 17:42

Very strange. I tried again and this time the QT version started. Maybe it's a "very first time" problem. I've seen them in the past with other programs. Of course, they're almost impossible to reproduce, especially if they're due to registry settings.

And yes, I confirm that the QT "About Celestia" popup is quite different from what's shown by the Windows Native UI. That surprises me, to tell the truth.
Selden

Avatar
selden
Developer
Posts: 10192
Joined: 04.09.2002
With us: 22 years 3 months
Location: NY, USA

Post #34by selden » 14.01.2023, 17:27

@cartrite

I sent you some PMs.
Selden

Avatar
Lepestronik
Posts: 19
Joined: 12.11.2020
With us: 4 years

Post #35by Lepestronik » 14.01.2023, 18:00

Markerz wrote:can test with the artifacts here: https://github.com/CelestiaProject/Celestia/actions/runs/3882535755 (installer is xxx.zip/installer/CelestiaInstaller.exe)

Installation and removal generally works.

Only "native" versions are launched.

Qt versions give errors, see screenshots.

x86-x64-Qt5.png
x86-x64-Qt5.png (7.59 KiB) Viewed 41532 times

x86-x64-Qt6.png
x86-x64-Qt6.png (10.1 KiB) Viewed 41532 times

Note that when I build the program from artifacts, Qt5 versions work and Qt6 versions did not work at all, therefore, for your automatic installer at least for Qt5 you are able to correct the situation with the libraries.

Remarks:
1) both on the desktop and in the main menu shortcuts are created only for the "native" version of the application. I think it's right to have a second shortcut for Qt version at the same time, because it's being installed anyway;
2) it is advisable to add a shortcut for the uninstaller to the main menu.

Thanks!

Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #36by cartrite » 14.01.2023, 18:34

I'm not sure why your getting an error for missing qt6 libs.
This a 64 bit win32/qt5 installer. QT6 was not built. I don't have qt6 installed.

Added after 4 minutes 17 seconds:
The programs can be uninstalled with Windows control panel. I will look into an unistaller to see if it is possible with Inno.

The qt version must be renamed to celestia.exe to get the file associations and the desktop icon to start that program. The other way to do it is to right click on the qt5 application and send to desktop.
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Avatar
Lepestronik
Posts: 19
Joined: 12.11.2020
With us: 4 years

Post #37by Lepestronik » 14.01.2023, 19:10

cartrite, I was talking about Markerz' installer on GitHub, I haven't tried your installer yet.

I have no problems deleting the program (there is a correct uninstaller), thank you. It was just a wish for additional shortcuts created by the installer.

onetwothree spoke about problems with Qt6 libraries, how to solve the problem is still unknown.

Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #38by cartrite » 14.01.2023, 19:22

Selden would like the link to that installer on Github. Neither him or myself can find it.
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4

Avatar
Lepestronik
Posts: 19
Joined: 12.11.2020
With us: 4 years

Post #39by Lepestronik » 14.01.2023, 19:28

cartrite wrote:can find it
To download from there you need to register on GitHub. See my attachments:
https://disk.yandex.ru/d/sUUuZGo7KXO09g

Avatar
Topic author
cartrite
Posts: 1978
Joined: 15.09.2005
With us: 19 years 2 months
Location: Pocono Mountains, Pennsylvania, USA Greate Grandfother from Irshava, Zakarpattia Oblast Ukraine

Post #40by cartrite » 14.01.2023, 19:39

Thank You
VivoBook_ASUSLaptop X712JA_S712JA Intel(R) UHD Graphics 8gb ram. Intel(R) Core(TM) i5-1035G1 CPU @ 1.00GHz, 1190 Mhz, 4 Core(s), 8 Logical Processor(s) 8 GB ram. Running on Windows 11 and OpenSuse 15.4


Return to “Development”