This is the standalone Sage Notebook.
Most of the notebook does not depend on having Sage installed. Only a few miscellaneous functions are imported from Sage. We welcome help in making the notebook completely independent from Sage, or indeed, any other help with the Sage notebook. Sage notebook development discussions happen on the sage-notebook mailing list.
Install Sage, then do
sage -python setup.py install in the current
directory. Then run the notebook from within Sage as follows:
sage: import sagenb.notebook.notebook_object as nb sage: nb.notebook(directory="mynotebook")
This will create a directory
mynotebook.sagenb, and all notebook
data is stored in that directory.
SSL is required for OpenID and accessing HTTPS from the Sage shell. Your
Sage install should usually support SSL out of the box, but if you
compiled it from source on a machine without the libssl headers, it may
not. You can check for SSL support by running
import ssl in the Sage
console. If you get an error, then do the following.
- Install the libssl headers on your system. On Debian-based systems,
one way to do this is to run
sudo apt-get install libssl-dev.
- Recompile Sage's internal Python interpreter by running
sage -f python.
See the Sage Developer's guide, part of the Sage documentation, for instructions.
Miscellaneous Release Instructions
The following advice for release managers of sagenb is taken from the old SPKG.txt file that was sitting around. Most of it is probably outdated, but here it is anyway. It is modified slightly to cause it to make sense in some cases.
To cut a new release of sagenb, make sure that:
- All changes are committed.
- The notebook runs.
- The doctests pass:
sage -t --sagenb
- The notebook will be possible to install from the new SPKG without an internet connection.
- Any dependencies that must be downloaded can be added in
util/fetch_deps.pyand inserted in
setup.py. Dependencies of dependencies need not be put in
setup.py, but need to be put in
util/fetch_deps.py(until we can make it smarter).
- The Selenium tests pass (optional, for now).
- The localization file
pybabel extract -F /path/to/babel.cfg /path/to/project -o /path/to/sagenb.po(get pybabel with
- Copy the headers from the existing
- Then, update the version in
setup.pyand commit this change.
dist.sh, optionally with a
-gargument to package the git repo too.
- Copy the newly generated
dist/directory from the sagenb repo to the SPKG's root directory and rename it
src/, replacing the
src/directory that is currently there
- Pack up the SPKG with
sage --pkg --no-compress(because everything in
src/is already compressed)
- Install and test the new spkg:
sage -f sagenb-*.spkg
- Don't forget to push all changes in the sagenb repo to github.
Stylesheets (CSS): see
To add a locale to an existing install:
- Create a new locale, or download one from http://wiki.sagemath.org/i18n . To create a new locale:
- Compile your copy via
msgfmt sagenb.pot -o sagenb.mo
sagenb/locale/xx_YY/LC_MESSAGES/, where xx_YY is a locale code (en_US, pt_BR, en_UK, etc.)