Zależności
----------
python2.7
python-dev
postgresql (wersja co najmniej 9.2)
postgresql-server-dev-?.?
gettext
Oprócz tego są zależności pythonowe wymienione w pliku requirements.text.
Instalujemy je przez virtualenv:
$ virtualenv venv
$ source venv/bin/activate
$ pip install -r requirements.txt
Polecenia z manage.py należy uruchamiać będąc w aktywnym środowisku virtualenv. Wyjść ze środowiska można poleceniem deactivate.
Odpalenie serwera deweloperskiego
---------------------------------
Przede wszystkim trzeba skonfigurować bazę. W tym celu należy zmienić nazwę pliku database_data.py.example w głównym katalogu projektu na database_data.py i uzupełnić w nim parametry bazy.
Konfiguracja postgresa
----------------------
$ sudo su postgres
# psql
# create user kuznia with password 'kuznia';
# create database kuznia;
# grant all privileges on database kuznia to kuznia;
Ctrl+D
Ctrl+D
Baza oczywiście na początku jest pusta. Aktualnie jedyną możliwością jest wgranie gotowego zrzutu. Zrzuty w formacie .sql.gz ładujemy poleceniem:
$ zcat zrzut.sql.gz | ./manage.py dbshell
Po załadowaniu zrzutu należy zmigrować bazę:
$ ./manage.py migrate
(wszystkie polecenia mają być wykonywane w głównym katalogu projektu, o ile nie wskazano inaczej)
Odpalenie serwera
-----------------
Odpalamy lokalny serwer:
$ ./manage.py runserver
Możemy połączyć się z nim przez http://localhost:8000/.
Nazwy użytkowników łatwo sprawdzić np. przez interfejs bazy (kolumna username w tabeli auth_user). Do potrzeby testów można ujednolicić hasła poleceniem:
$ ./manage.py set_fake_passwords --password=blaba
Kompilowanie lokalizacji
------------------------
$ ./manage.py compilemessages
Aktualizacja
------------
W celu aktualizacji repozytorium do najnowszej wersji należy wykonać następujące polecenia:
$ hg pull -u
$ ./manage.py migrate
$ ./manage.py update_permissions
$ ./manage.py compilemessages
Problemy
--------
Klawisze PageUp/PageDown działają (aktualnie przewijają na sztywno o 10, to można zmienić), ale przy włączonym zaznaczeniu i szybkim naciskaniu powodują, że czasem zaznaczenie ucieka. (okazuje się, że nawet całkiem często)