How to set up Jupyter qtconsole to run Sagemath
Hi All,
I have a Sagemath 9.4 folder and it tests good on XFCE console on Xubuntu 21.10. I also have Jupyter qtconsole 5.0.2-2 installed. I want to run Sagemath on qtconsole. If I run
./sage -n ipython
in XFCE it throws me into Firefox to a mirror view of the Sage folder. Under the 'Running' tab is the msg
No terminals are running.
But at this point a (useless) ipython console is running from the point of view of qtconsole. So if in a separate terminal I open qtconsole and run
%connect_info
I get
{
"shell_port": 57411,
"iopub_port": 55751,
"stdin_port": 37633,
"control_port": 49559,
"hb_port": 59669,
"ip": "127.0.0.1",
"key": "5b9cb610-7062b32ac0e643c16b7c17f7",
"transport": "tcp",
"signature_scheme": "hmac-sha256",
"kernel_name": ""
}
Paste the above JSON into a file, and connect with:
jupyter [app] --existing [file]
or, if you are local, you can connect with just:
jupyter [app] --existing kernel-4868.json
or even just:
jupyter [app] --existing
if this is the most recent Jupyter kernel you have started.
So this seems to give me way. So now if I open a second instance of qtconsole with
Jupyter qtconsole --existing kernel-4868.json
it opens a qtconsole which looks ready to go. However, Sagemath is not in there because it is not displaying a Sagemath prompt. If I had to guess, I would say that the blank field where "kernel_name" should go above is telling me that I need to register the Sagemath kernel with Jupyter. I have a
export SAGE_ROOT="..."
line in .bashrc, but this is not working. What would I need to do to get Sagemath properly recognized by qtconsole (or vice versa) ? (Preferably without Anaconda or Pip.)
Welcome to Ask Sage! Thank you for your question.