This assumes you’re on Ubuntu or can figure out the difference between Ubuntu and your distro for the following:
$ git clone git://github.com/bookieio/Bookie.git $ cd Bookie && make sysdeps && make install # THIS WILL TAKE A WHILE, GET A COFFEE $ make run $ (YOUR BROWSER) http://127.0.0.1:6543/
You should have JavaScipt enabled.
Login as admin
user: admin pass: admin
You can create new users by writing a script or going through the signup process. You just need to install inbox (bin/pip install inbox) and run make smtp to get a fake email server to catch the activation emails.
Well, you might want to import a backup of your delicious bookmarks. You can do that by visiting the Import link in the footer of your site installation. Make sure you know the API key that you’ve set in your bookie install’s .ini configuration file.
You can view your recent bookmarks at: http://127.0.0.1:6543/recent
You probably also want to install a browser extension to be able to store new bookmarks going forward. Once you install the extension, you’ll need to set the options for it to work. See the browser extension docs for those settings.
There are some required packages that need to be installed so you can build bookie. These are:
Note: right we we support three databases - mysql, postgres, and sqlite - and the database bindings need to be built into the virtualenv. Out of the box, Bookie will setup a Sqlite version for you to get started with.
Bookie uses the Celery library to handle background processing tasks that might be expensive. Currently, it’s setup to use redis as the backend for this. Please check the bookie.ini for the connection string to the redis database. Any time a bookmark is saved it will background fulltext indexing for the bookmark. During import, it will attempt to fetch content for the imported urls as well. Emails and stats generation also go through this system. By default, make run will start up celery in the background. An exmaple manual command to run celery safely with the sqlite default database is:
celery worker --app=bookie.bcelery -B -l info --purge -c 1
Adjust the command to your own needs. You might need to increase or lower the debug level, for instance, to suit your needs.
If you’re using Postgres or MySQL as your database for Bookie you’ll also want to grab the dev package for your db so that the Python drivers for them can compile.
$ sudo apt-get install libmysqlclient-dev - OR - $ sudo apt-get install postgresql-server-dev-8.4
You will also need to install python db drivers for MySql.
$ bin/pip install MySQL-python
Then you’ll need to update the database connection string in your bookie.ini file. The database and user account need to exist in order for it to bootstrap the database for you. Once you’re ready run:
$ make db_up
First, follow the steps above to set up an empty MySQL/Postgresql database.
To prepare for the migration, we first need to empty the alembic_version and users tables which are not fully empty. To do this in MySQL:
TRUNCATE `alembic_version`; DELETE FROM `users` WHERE 1;
Then, install the migration tools:
$ apt-get install ruby-sqlite3 ruby-mysql - OR - $ apt-get install ruby-sqlite3 ruby-pg $ gem install rack -v 1.4.5 $ gem install taps
Next, let’s publish our existing sqlite database:
$ taps server sqlite:///home/user/bookie/bookie/bookie.db tmpuser tmppass &
And finally we pull the data into our new MySQL/Postgresql database:
$ taps pull -s mysql://bookie:***@localhost/bookie http://tmpuser:tmppass@localhost:5000 - OR - $ taps pull -s postgres://bookie:***@localhost/bookie http://tmpuser:tmppass@localhost:5000