воскресенье, 16 августа 2009 г.

CentOS 5.3 i386 - что нужно сделать для того чтобы разрабатывать приложения на django+postgress+apache

***
На русский язык переключаться одновременным нажатием двух клавишь shift

***
Для того, чтобы можно было под обыкновенным пользователем заходить под sudo, делаем:
1) зайти под root
2) в /etc/sudoers, раскомментировать
# %wheel ALL=(ALL) ALL
3) добавить желаемый логин в группу wheel:
gpasswd -a мой_логин wheel

#подробно: http://edipage.wordpress.com/2008/09/30/quickly-secure-centos-5-by-enabling-sudo-disabling-root-and-limiting-access/

###
sudo yum -y install gcc
sudo yum -y install mc
sudo yum -y install subversion

# setup EPIL (http://fedoraproject.org/wiki/EPEL) for psycopg2, python-sqlite2
sudo rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm

###
sudo yum -y install python-imaging
sudo yum -y install python-setuptools
sudo yum -y install python-sqlite2

###
# setup django and related
###
sudo svn co http://code.djangoproject.com/svn/django/trunk /usr/local/src/apps/django-trunk
cd /usr/local/src/apps/django-trunk
sudo python setup.py install
# as variant use:
# ln -s /usr/local/src/apps/django-trunk/django /usr/lib/python2.4/site-packages/django
# but this - problem with SELinux context ("ImportError: No module named django" under apache)
# See also about apache and SELinux:
# http://www.nabble.com/%22ImportError:-No-module-named-django%22-persists...-td14857086.html
# http://www.packtpub.com/article/selinux-secured-web-hosting-python-based-web-applications

sudo svn co http://django-evolution.googlecode.com/svn/trunk/ /usr/local/src/apps/django-evolution
sudo ln -s /usr/local/src/apps/django-evolution/django_evolution /usr/lib/python2.4/site-packages/django_evolution

sudo easy_install django-dbtemplates

# filebrowser
sudo svn co http://django-filebrowser.googlecode.com/svn/trunk/filebrowser/ /usr/local/src/apps/filebrowser
sudo ln -s /usr/local/src/apps/filebrowser /usr/lib/python2.4/site-packages/filebrowser

# django-tinymce
cd /tmp
wget http://django-tinymce.googlecode.com/files/django-tinymce-1.5.tar.gz
tar xzvf django-tinymce-1.5.tar.gz
cd django-tinymce-1.5
sudo python setup.py install

###
# co projects from repo
###
svn co file:////media/disk/projects/svn/current ~/repo

# add to PYTHONPATH shared apps
# edit ~/.bash_profile (for all users /etc/profile)
# add: PYTHONPATH=$HOME/repo/web-projects/apps
# change: export PATH ... -> export PATH ... PYTHONPATH
# logout, login, test: echo $PYTHONPATH


###
# setup komodo
###
sudo yum -y install scim scim-gtk scim-qtimm
cd ~/install/komodo
tar -xvzf Komodo-IDE-5.1.4-30485-linux-libcpp6-x86.tar.gz
cd Komodo-IDE-5.1.4-30485-linux-libcpp6-x86
sudo ./install.sh -I /usr/local/Komodo-IDE-5
# Run Komodo IDE
# copy licence: cp ~/install/komodo/ActiveState.lic ~/.ActiveState/


###
# Установим postgresql и то что нужно к тему
###

sudo yum -y install postgresql postgresql-server pgadmin3
sudo yum -y install python-psycopg2

# Для того чтобы ilike понимал строчные буквы русского алфавита перед первым запуском "правильно" инициализируем кластер базы данных (см: http://habrahabr.ru/blogs/postgresql/55620/)
su postgres
initdb --locale=ru_RU.utf8 /var/lib/pgsql/data

# можем проверить командой
#psql -c "show lc_ctype"
# должно быть ru_RU.utf8

# для автоматического старта вместе с ОС, делать нужно под root, для этого если зашли под обыкновенным пользователем нужно ввести "su -"
# http://www.cyberciti.biz/faq/howto-fedora-linux-install-postgresql-server/
su -
chkconfig postgresql on
# start
service postgresql start

# создадим пользователя postgre
su - postgres
createuser -P -s -e username;
# Modify /var/lib/pgsql/data/pg_hba.conf to require password authentication for local connections:
# Comment or remove any existing lines at the end of the file, then append this:
local all all password
# если хотим заходить pgadmin то раскоментировать строку:
# host all all 127.0.0.1/32 trust
# restart service:
service postgresql restart
# create database:
createdb --encoding=UTF-8 --username=user_name --password db_name

Комментариев нет: