WARNING: This is probably not the repository your are interested in. This repository is only for cryptobib developers. The repositories containing the public bib files are cryptobib/export and cryptobib/export_crossref.
For any correction or issue with the database content, you can either contact Michel Abdalla and Fabrice Benhamouda ([email protected]), or submit a pull request or report an issue for cryptobib/db.
- MyRepos mr in your path (on MacOS X with HomeBrew:
brew install mr
) - python 3.6 with the following packages (which can be installed using
pip
- on MacOS X with HomeBrew,pip
can be installed withbrew install python
- on Ubuntusudo apt install python3-pip
):- pybtex 0.16-0.24
WARNING: we use the internal structure of pybtex.
CryptoBib has only been tested with pybtex 0.16-0.24.
There might be bugs with other versions but they should be easy to spot
(like an abnormal exception).
If you do not want or cannot install an outdated version of pybtex globally, please read the section about virtual_env below
pip3 install pybtex==0.24
- unidecode
On Ubuntu, to install globally:
sudo -H pip3 install pybtex==0.24 unidecode
- pybtex 0.16-0.24
WARNING: we use the internal structure of pybtex.
CryptoBib has only been tested with pybtex 0.16-0.24.
There might be bugs with other versions but they should be easy to spot
(like an abnormal exception).
If you do not want or cannot install an outdated version of pybtex globally, please read the section about virtual_env below
- on MacOS X, XCode Command Line Tools is required:
xcode-select --install
. We also recommend to use HomeBrew.
If you want to separate the Python installation for CryptoBib from your global installation, you can use virtualenv.
Run (somewhere not necessarily in the cryptobib folder):
pip install virtualenv
virtualenv venv
. venv/bin/activate
pip install pybtex==0.24 unidecode
Each time you need to run any CryptoBib script, you need to first activate the virtualenv . venv/bin/activate
. This will replace the global Python installation by the local one in venv
. You can go back to the global one using deactivate
.
Just run in some folder:
mr bootstrap https://raw.githubusercontent.com/cryptobib/cryptobib/master/mrconfig/mrconfig_https
or
mr bootstrap https://raw.githubusercontent.com/cryptobib/cryptobib/master/mrconfig/mrconfig_ssh
depending whether you want to access github using https or ssl.
If you want to be able to run make test
(highly recommended before any push), you first need to read db_test/README.md
.
- go to
db_import
- run
python3 import.py confYYYY
with conf the conf key and YYYY the year - correct the bibtex file
confYYYY.bib
- go back in
..
- update
db/abbrev.bibyml
and runpython3 db_tools/gen_abbrev.py
- update
db/crypto_conf_list.bib
- add this bibtex file to
db/crypto_db.bib
by runningpython3 db_tools/add.py db_import/confYYYY.bib
- update
db/changes.txt
- generate all the files:
make
- check all was done correctly:
make test
First, do not forget to run make
(and, even better, make test
) before any commit.
Do not forget either to update db/changes.txt
if changes are related to the database content.
Then run
mr record -m "message... generally the same as in changes.txt"
mr push
The project is composed of multiple repositories:
cryptobib
: this repository containing this documentation, the mainMakefile
and themrconfig
files (to get all the repositories usingmr
)db
: the database containing all the bibtex entries and the list of all conferencesdb_import
: tools to import bibtex entries from DBLP, ePrint, ...db_test
: tools to check the database is valid and can successfully be used by bibtexdb_tools
: tools to merge bibtex entrie imported bydb_import
tools into the main database, to generate the website database, ...export
: thebib
files to be used in latex documents, generated fromdb
. This repository can be added as a submodule of a latex project for example.export_crossref
: same as above, but using crossref (lighter files)lib
: some internal libraries used by the various tools and the websitewebapp
: the web2py application corresponding to the website