- To contribute, see below on sharing your work. To simply run a copy of the site move into a new directory and type
git clone [email protected]:LMFDB/lmfdb.git lmfdb
- Install dependencies, i.e. you need Sage. Inside the Sage environment
sage -sh
:
easy_install -U flask
easy_install -U flask-login
easy_install -U pymongo
easy_install -U flask-markdown
easy_install -U flask-cache
easy_install -U pyyaml
easy_install -U unittest2
# optional packages, necessary for contributing:
easy_install -U coverage
easy_install -U nose
-
From the command-line:
sage -i gap_packages
(should check if we really need gap_packages.)sage -i database_gap
-
Regarding !MathJax: No longer necessary to install !MathJax.
ssh -C -N -L 37010:localhost:37010 [email protected]
(please send your public SSH key to Harald Schilly, Jonathan Bober or John Cremona to make it work)
* -C for compression of communication
* -N to not open a remote shell, just a blocking command in the shell (end connection with Ctrl-C)
If you don't have access to this server, you can temporarily start your own mongodb server and use it locally. There is no data (obviously) but it will work.
* Mongo locally:
mongod --port 40000 --dbpath [db_directory] --smallfiles
Note: Inside Sage, you might have to update the setuptools first, i.e. easy_install -U setuptools
dirichlet_conrey.pyx
:
goto [https://github.com/jwbober/conrey-dirichlet-characters its github page]
download dirichlet_conrey.pyx and setup.py
run: `sage setup.py install`
if it doesn't compile, update sage's cython and then try again:
`sage -sh`
`easy_install -U cython`
`exit`
- Lfunction plots:
To get plots locally, for sage <= 6.2, need a patch
From within sage directory
git remote add trac git://trac.sagemath.org/sage.git -t master
git fetch trac u/chapoton/8621
git checkout -b patch8621 FETCH_HEAD
Then rebuild:
sage -b
- Memcache:
` easy_install -U python-memcached` or even better and only possible if you have the dev headers: ` easy_install -U pylibmc `
install *memcached* (e.g. ` apt-get install memcached `)
run the service at 127.0.0.1:11211
Once everything is setup, sage -python start-lmfdb.py
should do the trick, but there can be some problems running in debug mode, so you might have omit the --debug
(--debug
doesn't work right now, but will soon!). Once the server is running, visit http://localhost:37777/
Maybe, you have to suppress loading of your local python libraries: sage -python -s start-lmfdb.py
If you use a local MongoDB instance, specify its port: sage -python start-lmfdb.py --debug --dbport 40000
Sometimes the pymongo
module is not able to connect to the database.
It works, if you force it to an earlier version:
easy_install pymongo==2.4.1
- Get a (free) github account if you do not have one already
- Login to github
- Go to
https://github.com/LMFDB/lmfdb
and click onFork
in the upper right corner - On your machine, create a new directory and type
git init
git clone [email protected]:YourGithubUserId/lmfdb.git
using your own github user id.
- Push your code to the fork.
- Tell the lmdb mailing list that you have some new code!