How do I run Celestia activities on a Mac?

Have a question about using Celestia? Check here first for FAQs and helpful advice.
Forum rules
Please help to make this forum more useful by checking the FAQs before posting! Keep it clean, keep it civil, keep it truthful, stay on topic, be responsible, share your knowledge.
Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

How do I run Celestia activities on a Mac?

Post #1by paulfontaine100 » 26.09.2017, 22:46

I've managed to use Celestia successfully on my Apple Mac. Hugely impressed. I've even been able to download updates. It's amazing how easy it is to update this piece of software.

However I can't run activities. I've downloaded Activity 6 "The Life and Death of Stars". Extracted the zip file and found the Flight Plan Word document.

On page four there's a link that says "To begin our journey, left-click HERE just once." When I click on the link my Mac opens a piece of software called Dreamweaver, which displays the following code:

"set Shell = WScript.CreateObject("WScript.Shell")
set fso = CreateObject("Scripting.FileSystemObject")

ScriptName = WScript.ScriptFullName
scriptPath = fso.getParentFoldername(ScriptName)
celestiaPath = fso.getParentFoldername(scriptPath)
Shell.CurrentDirectory = celestiaPath

Shell.run "celestia161-ed.exe --conf Activity6-161.cfg"

Then nothing happens.

It's the same result whether or not I already have Celestia open.

I manually navigated to the file that the link was taking me to, a file named "Activity6.vbs". When I click on it exactly the same thing happens.

I've also tried dragging and dropping the vbs file into the open Celestia window (one of the updates I downloaded for Celestia previously had a tutorial which was activated in this way). Nothing happened.

Does anyone know what I need to do to run the activity? It sounds amazing but unfortunately I can't view it at the moment :(

Very grateful for any advice. Has anyone managed to run a Celestia activity on a Mac successfully?

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #2by selden » 27.09.2017, 10:17

That's a Visual Basic script which sets a couple of environment variables, then starts Celestia, passing it an argument which tells it which configuration file to use. In principle, you would be able to get the intended result by issuing those commands manually:

Open a terminal window
cd to the directory where you installed Celestia
type the command
./celestia161-ed.exe --conf Activity6-161.cfg
(You'll probably have to change the capitalization to match the files. Windows is case-insensitive but MacOS is not.)

That command runs the ED version of Celestia with a configuration file which primarily is used to tell Celestia to run a particular Lua initialization script and where to find the Addons associated with that specific Activity. (I.e. it augments the extras search list.)

However, to experience the Activity as it was designed, you have to interact with Celestia by selecting the hyperlinks provided in the associated Word document. I suspect they won't work at all on a Mac since those links expect Celestia to be installed in the Windows directory "Program Files (x86)" and often use the wrong case when they specify various file names.
Selden

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #3by paulfontaine100 » 27.09.2017, 12:19

Many thanks for the prompt and informative reply Selden.

I'm still fairly new to Mac. I've just looked up the Wikihow article on how to open a terminal window. That should be fine.

How do I "cd" to the directory where I installed Celestia? What does "cd" stand for?

Going to try this when I get home from work this evening.

In principle it ought to be possible to use the Word find and replace function to change all the links within the document to match the location of Celestia in my machine. Unfortunately I think they're all displayed as "here" rather than showing the hyperlink location. Any tips on doing that would be appreciated.

Alternatively can I still run the activity without clicking on those links?

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #4by selden » 27.09.2017, 13:51

MacOS is actually a variant of Unix with a GUI (Graphical User Interface) which provides access to some of its features. A terminal window can be used to access all of its features. (One of many discussions of the MacOS relationship to Unix is available at https://unix.stackexchange.com/questions/1489/is-mac-os-x-unix )

"cd" is a Unix terminal command with means "Change Directory".
A tutorial on how to use Unix is available at http://www.ee.surrey.ac.uk/Teaching/Unix/

Unfortunately, even the most recent versions of Word and LibreOffice don't provide a way to do a search-and-replace of hyperlinks while using Word or Writer. Either you have to do each link individually using the right-mouse-button popup menu (select "edit hyperlink") or you have to unzip the docx file, edit the xml files and re-zip the document.

The 2017 edition of the EDU software should be available RealSoonNow. (It's finished beta-testing and is waiting for MotherLode management to do their thing.) It uses relative links instead of absolute links so it should fix most of the linkage problems. However,it does *not* fix the mixed-case problem. Far too many of the Addons that it depends on use mixed case when they shouldn't. Fixing them would take months of work. :(

The EDU Activites are designed for you (the student) to work your way through the document, reading the text, clicking on the links and filling out the worksheet. Some of the links run external scripts or view external videos although most of the links are actually Cel://URLs. I think the Cel:// URLs will work under MacOS once you've started Celestia appropriately but most of the links to external resources won't.

To put it another way, to get the most enjoyment out of the EDU software, you should consider using one of the methods of running Windows on your Mac.There are several.
Selden

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #5by paulfontaine100 » 27.09.2017, 19:25

Thanks again Selden

I'm trying to enter those commands into a terminal window but it keeps saying "No such file or directory".

I've just started reading through the guidance on Unix that you helpfully shared. Meanwhile I'll show you what I tried entering so you can correct it if you see this before I've finished reading the guidance:

XINYIs-iMac:Activity6-161 xinyiwang$ cd /Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161
XINYIs-iMac:Activity6-161 xinyiwang$ ./celestia161-ed.exe --conf Activity6-161.cfg
-bash: ./celestia161-ed.exe: No such file or directory
XINYIs-iMac:Activity6-161 xinyiwang$

I've checked and the capitalisation is correct: the cfg file is called "Activity6-161.cfg". I've just copied that from the actual file name.

The other explanation, apart from me not knowing the correct grammer, is that I don't have that file "celestia161-ed.exe" saved on my machine (just tried searching for it). What is this supposed to refer to?

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #6by selden » 27.09.2017, 19:43

Unfortunately, celestia161-ed is available only for Windows :(
I think its major enhancement over the standard Windows version of Celestia v1.6.1 is the addition of sound support.

The command you type needs to use the directory where the Mac version of Celestia.exe is installed, not the directory where you put Celestia Addons. (./ means to access the file in your current default directory, which you've specified to be your Addons directory.) Unfortunately, I don't know where Celeseita.exe is located on a Mac, but if it's in your default search path (which seems likely) maybe this command would work after you've cd'd to the Addons directory:

celestia --conf Activity6-161.cfg

although maybe Celestia needs to be capitalized.
Selden

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #7by paulfontaine100 » 27.09.2017, 19:56

No joy I'm afraid. I've tried it with and without capitalisation:

XINYIs-iMac:~ xinyiwang$ cd
XINYIs-iMac:~ xinyiwang$ cd /Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard
XINYIs-iMac:extras-standard xinyiwang$ celestia --conf Activity6-161.cfg
-bash: celestia: command not found
XINYIs-iMac:extras-standard xinyiwang$ Celestia --conf Activity6-161.cfg
-bash: Celestia: command not found
XINYIs-iMac:extras-standard xinyiwang$

Any other suggestions?

If not I'll follow up your other helpful suggestion of trying to run Windows on my Mac.

It scarcely seems credible that none of the activities are useable on a Mac, and because of a technicality. Clearly nobody wanted to prevent Macs from running them; after all the software itself is designed to be used on both PCs and Macs, and can be used on both.

Avatar
catwrings
Posts: 12
Joined: 19.01.2017
With us: 7 years 5 months

Post #8by catwrings » 27.09.2017, 21:41

The EDU version is for Windows, but anyway the executable is in this place on a Mac:

Celestia.app/Contents/MacOS/Celestia

Also, the file system is case insensitive and you can invoke programs with any case.

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #9by paulfontaine100 » 27.09.2017, 22:55

I see what you mean. I've tried cd'ing to that directory but when I run the command it still doesn't accept it. Can you see what I'm doing wrong?

XINYIs-iMac:~ xinyiwang$ cd /Users/xinyiwang/Desktop/Celestia.app/Contents/MacOS
XINYIs-iMac:MacOS xinyiwang$
XINYIs-iMac:MacOS xinyiwang$ celestia --conf Activity6-161.cfg
-bash: celestia: command not found

Thanks for all your help, it's really appreciated.

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #10by paulfontaine100 » 28.09.2017, 19:52

Sorry maybe I didn't make it clear enough in that last post that I was asking another question. Can anyone spot anything wrong with the way I entered that command? I'm not used to using Unix so it's quite possible I've just go the grammar wrong.

Very grateful if someone could help.

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #11by selden » 28.09.2017, 22:08

The directory containing Celesia needs to be in your PATH. PATH is an envrionment variable which contains a list of directories that the command shell searches through for files. Most Unix commands ( "celestia" in this case) actually are just names of files to be executed. I suspect the directory which contains celestia.exe is not in your PATH. As a result, the shell is complaining that it can't find celestia.

If you type the command

printenv PATH

that command should output a list of directories separated by colons, one of which needs to contain celestia.exe
If the directory containing celestia.exe is not in that list, you can add it (for the duration of your current terminal session) by typing either the command
export PATH=full-path-to-celestia's-directory:$PATH
or the command
export PATH=$PATH:full-path-to-celestia's-directory
where "full-path-to-celestia's-directory" specifies where celestia.exe is located

The first command makes the added directory the first place searched for unknown files, while the second command makes the added directory the last place searched.

For example, the command
export PATH=$PATH:/usr/local/netpbm_adv/bin

adds the directory /usr/local/netpbm_adv/bin to the tail end of PATH, making it the last place searched for netpbm commands.

Unfortunately, I don't know where celestia.exe is located when it's installed on a Mac. I believe that Celestia's installation program should have told you that directory's name and should have given you the option of installing Celestia somewhere else.

In principle, at least, installing Celestia a second time just so you can find out that directory's name shouldn't cause any problems.
Selden

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #12by paulfontaine100 » 29.09.2017, 12:36

The directory I specified above definitely is the one where Celestia.exe is located on my Mac. Catwrings helpfully advised me above on where to find it on a Mac, and they were spot on. That is where it's located on my Mac.

I didn't include the ".exe" file ending in the example above, but I'm fairly sure I tried that as well and got the same result. Will try again when I get home tonight just in case.

Can you think of any other reason why this wouldn't work?

I have one theory based on your last comment. The command is asking the two files Celestia.exe and Activity6-161.cfg to do something together, right? The second of these files is located in a different directory from the one I specified. Would that stop the command from working?

In that case, is the solution to direct the command at the overall directory including all the Celestia files (Desktop/Celestia.app)? If I do that, will the command search through every file in all sub-folders to see if it can find any matching the file names mentioned in the command?

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #13by selden » 29.09.2017, 13:44

Even if Celestia is in the right directory, that directory must be in your PATH. Did you verify that is the case?

Celestia itself decides where to look for the specified cfg file. However, it probably wouldn't hurt to specify its full path. If you want to specify everything in detail, you could use a command which looks something like this:

/Users/xinyiwang/Desktop/Celestia.app/Contents/MacOS/celestia --conf /Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161.cfg

(or wherever those files actually are)
Selden

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #14by paulfontaine100 » 29.09.2017, 21:02

I've now got home and tried this out. No joy.

I opened a terminal window and pasted in the exact location of the Celestia.exe file followed by "--conf":

/Users/xinyiwang/Desktop/Celestia.app/Contents/MacOS/Celestia --conf

And pressed enter.

This opened Celestia, and produced a response in the terminal window from my Mac saying that the command had executed successfully.

I then pasted in the exact location of Activity6-161.cfg:

/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg

This didn't open the activity and produced a load of responses from the computer saying that it couldn't find various commands and directories.

Looking at these responses I've spotted two issues:

1. My computer is looking for a directory called "extra" within CelestiaResources which I don't have (not to be confused with directory "extras-standard", a directory at the same level which I do have.

2. My computer is looking for various "lines" within the file Activity6-161.cfg which it can't find in my version of the file.

In case it's helpful, I'll paste the log of my terminal activity. Very grateful if you could take a look when you have time and see if there's a solution. Thanks again Selden.

I won't paste the whole log of my terminal activity because the responses from my Mac go on forever (the whole thing fills more than 8 pages of MS Word in Arial 12).

Here's the start of it, beginning with my successful execution of Celestia --conf which caused Celestia to open:

XINYIs-iMac:~ xinyiwang$ /Users/xinyiwang/Desktop/Celestia.app/Contents/MacOS/Celestia --conf
2017-09-29 21:15:51.759 Celestia[592:23836] Multithreaded OpenGL enabled.
Initializing ARB vertex programs . . .
Loading ARB vertex program: shaders/diffuse_arb.vp
Loading ARB vertex program: shaders/specular_arb.vp
Loading ARB vertex program: shaders/haze_arb.vp
Loading ARB vertex program: shaders/bumpdiffuse_arb.vp
Loading ARB vertex program: shaders/bumphaze_arb.vp
Loading ARB vertex program: shaders/shadowtex_arb.vp
Loading ARB vertex program: shaders/diffuse_texoff_arb.vp
Loading ARB vertex program: shaders/rings_arb.vp
Loading ARB vertex program: shaders/ringshadow_arb.vp
Loading ARB vertex program: shaders/night_arb.vp
Loading ARB vertex program: shaders/glossmap_arb.vp
Loading ARB vertex program: shaders/diffuse2_arb.vp
Loading ARB vertex program: shaders/haze2_arb.vp
Loading ARB vertex program: shaders/diffuse_texoff2_arb.vp
Loading ARB vertex program: shaders/specular2_arb.vp
Loading ARB vertex program: shaders/night2_arb.vp
Loading ARB vertex program: shaders/star_arb.vp
Loading ARB vertex program: shaders/multishadow_arb.vp
Loading ARB vertex program: shaders/texphong_arb.vp
Loading ARB vertex program: shaders/texphong_alpha_arb.vp
Loading ARB vertex program: shaders/ell_galaxy_arb.vp
All ARB vertex programs loaded successfully.
render path: 8
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg
XINYIs-iMac:~ xinyiwang$ /Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extra: command not found6-161/Activity6-161.cfg: line 5:
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extra: command not found6-161/Activity6-161.cfg: line 6:
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extra: command not found6-161/Activity6-161.cfg: line 7: Configuration
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extra: command not found6-161/Activity6-161.cfg: line 8: {
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extra: command not found6-161/Activity6-161.cfg: line 9:
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg: line 11: StarDatabase: command not found
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg: line 12: StarNameDatabase: command not found
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg: line 13: StarCatalogs: command not found
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extra: No such file or directorytivity6-161.cfg: line 14: data/extrasolar.stc
/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg: line 15: data/nearstars.stc: No such file or directory
...

Added after 5 minutes 30 seconds:
PS After trying that I tried a different approach drawing on your earlier advice about using "PATH=" to direct terminal to the correct directories. This didn't work either. I should explain that at the end of the file path there's a folder called "Activity6-161" containing a file called "Activity6-161.cfg". Here's the log:

XINYIs-iMac:~ xinyiwang$ export PATH=/Users/xinyiwang/Desktop/Celestia.app/Contents/MacOS:$PATH
XINYIs-iMac:~ xinyiwang$ Celestia --conf
(at this point Celestia opened in the normal way)
2017-09-29 21:59:45.022 Celestia[887:198893] Multithreaded OpenGL enabled.
Initializing ARB vertex programs . . .
Loading ARB vertex program: shaders/diffuse_arb.vp
Loading ARB vertex program: shaders/specular_arb.vp
Loading ARB vertex program: shaders/haze_arb.vp
Loading ARB vertex program: shaders/bumpdiffuse_arb.vp
Loading ARB vertex program: shaders/bumphaze_arb.vp
Loading ARB vertex program: shaders/shadowtex_arb.vp
Loading ARB vertex program: shaders/diffuse_texoff_arb.vp
Loading ARB vertex program: shaders/rings_arb.vp
Loading ARB vertex program: shaders/ringshadow_arb.vp
Loading ARB vertex program: shaders/night_arb.vp
Loading ARB vertex program: shaders/glossmap_arb.vp
Loading ARB vertex program: shaders/diffuse2_arb.vp
Loading ARB vertex program: shaders/haze2_arb.vp
Loading ARB vertex program: shaders/diffuse_texoff2_arb.vp
Loading ARB vertex program: shaders/specular2_arb.vp
Loading ARB vertex program: shaders/night2_arb.vp
Loading ARB vertex program: shaders/star_arb.vp
Loading ARB vertex program: shaders/multishadow_arb.vp
Loading ARB vertex program: shaders/texphong_arb.vp
Loading ARB vertex program: shaders/texphong_alpha_arb.vp
Loading ARB vertex program: shaders/ell_galaxy_arb.vp
All ARB vertex programs loaded successfully.
render path: 8
PATH=/Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161:$PATH
Activity6-161.cfg
Activity6-161.cfg --conf

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #15by selden » 29.09.2017, 21:47

I think the problem might be that you terminated the Celestia command by typing an enter after --conf
which caused Celestia to try to interpret the config file as if it were a .celx script. Please try again, typing the name of the config file on the same line with the --conf qualifier.
Selden

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #16by paulfontaine100 » 01.10.2017, 18:29

I'm not quite sure what you want me to do differently. I tried doing the same as above but instead of the last two lines I just typed the final line. Again nothing happened.

Was that what you were proposing? If not could you please be a bit more specific, thanks.

I should have explained above that there was no response from my Mac to the final command.

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #17by selden » 01.10.2017, 19:20

The log that you showed suggests that you typed an "enter" right after you typed "--conf". The .cfg file is supposed to be loaded silently before Celestia loads the shaders. Your log shows it being loaded after the shaders.

What I was trying to say is that it's all one command, and has to be all on the same line. In other words, you have to type all of
path-to-celestia/celestia.exe --conf path-to-activity/Activity161-t.cfg
not typing an enter until after the final .cfg even though the command is very long and looks like it doesn't fit within the terminal window.

Try copying and pasting this:

Code: Select all

/Users/xinyiwang/Desktop/Celestia.app/Contents/MacOS/Celestia --conf /Users/xinyiwang/Desktop/Celestia.app/Contents/Resources/CelestiaResources/extras-standard/Activity6-161/Activity6-161.cfg


In the code above, it is all just one line of text. There is not actually an "Enter" (line terminator) after the "--conf". It only looks like there is because your browser is trying to make the entire line of text visible in the same window. Browsers automatically "break" long lines at the places where they encounter a space in the text just so they can try to draw them as best they can, not because there's actually an "Enter" there.

Bear in mind that when Celestia successfully loads the .cfg file it's going to start complaining about other problems. For example, the .cfg file tells Celestia to load various database files (like stars1M.dat) which I'm sure you don't have in Celestia's data folder. You should consider looking at the .cfg file to see what it wants so you can think about how you might provide those files.
Selden

Topic author
paulfontaine100
Posts: 10
Joined: 26.09.2017
With us: 6 years 9 months

Post #18by paulfontaine100 » 03.10.2017, 12:32

I see what you mean now. Thanks for your patience.

I'll give this a try, but I suppose from what you've said above it might not work. I'll see what files it tries to find and then see whether I can move them into the data folder.

If that fails I may need to see if I can get my old laptop PC working and find a version of Celestia old enough that it will run on said laptop.

Avatar
selden
Developer
Posts: 10190
Joined: 04.09.2002
With us: 21 years 10 months
Location: NY, USA

Post #19by selden » 03.10.2017, 20:43

Well, as I mentioned earlier, another option is to run Windows on your current Mac, in parallel with MacOS. In fact, one of the ways to do that is called Parallels. Several different options are described at https://www.howtogeek.com/187359/5-ways-to-run-windows-software-on-a-mac/

If it's still in working order, though, your old laptop should be able to run Celestia V1.6.1, if it has enough memory. In particular, the ED Activities really do need graphics hardware with at least 512MB of graphics memory.
Selden


Return to “Help Central”