We have moved to Git. This repository is only provided for compatibility with old installations. Learn how to migrate your installation here.

annotate dev-vcs/kallithea/kallithea-0.3.1.ebuild @ 134:702382d06f80

dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
author Daniel Neugebauer <dneuge@energiequant.de>
date Sat, 26 Mar 2016 22:44:41 +0100
parents dev-vcs/kallithea/kallithea-9999.ebuild@af030a9d6541
children 4f080a258623
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
1 # Copyright 1999-2016 Gentoo Foundation
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
2 # Distributed under the terms of the GNU General Public License v2
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
3
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
4 ### NOTES ##########################################################################
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
5 #
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
6 # When updating this ebuild, comment out all workarounds and try without them first.
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
7 # Only re-enable them if they are still required.
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
8 #
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
9 # Also check that documentation URLs are still correct.
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
10 #
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
11 ####################################################################################
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
12
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
13 EAPI="5"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
14 PYTHON_DEPEND="2"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
15 SUPPORT_PYTHON_ABIS="1"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
16
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
17 inherit user
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
18
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
19 DESCRIPTION="a web-based frontend and middleware to Mercurial and Git repositories"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
20 HOMEPAGE="https://kallithea-scm.org/"
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
21 SRC_URI="https://pypi.python.org/packages/source/K/Kallithea/Kallithea-${PV}.tar.bz2"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
22
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
23 RDEPEND="dev-python/virtualenv"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
24
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
25 DEPEND="${RDEPEND}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
26
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
27 LICENSE="GPL-3"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
28 SLOT="0"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
29 KEYWORDS="~amd64 ~x86"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
30 IUSE=""
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
31
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
32 RESTRICT_PYTHON_ABIS="3.*"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
33
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
34 installDataPath="/var/lib/kallithea"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
35 installBasePath="/opt/kallithea"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
36 installConfigPath="/etc/kallithea"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
37 virtualenvActivationPath="bin/activate"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
38
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
39 urlDocumentationSetup="http://kallithea.readthedocs.org/en/${PV}/setup.html"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
40 urlDocumentationRhodeCode="http://kallithea.readthedocs.org/en/${PV}/readme.html#converting-from-rhodecode"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
41
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
42 pkg_setup() {
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
43 # create user and group
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
44 enewgroup kallithea
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
45 enewuser kallithea -1 -1 "${installDataPath}" kallithea
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
46 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
47
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
48 src_unpack() {
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
49 unpack ${A}
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
50 mv Kallithea-${PV} kallithea-${PV} || die "Unexpected directory structure, aborting..."
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
51 }
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
52
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
53 src_compile() {
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
54 # not really compiling anything
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
55
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
56 realWorkDir=$(pwd)
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
57
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
58 # create new virtual environment
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
59 virtualenv --no-site-packages dist/v
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
60
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
61 # activate environment
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
62 source "dist/v/${virtualenvActivationPath}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
63
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
64 # WORKAROUND:
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
65 # we need to make sure we have a current version of setuptools to install Kallithea's dependencies
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
66 pip install 'setuptools>=17.1'
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
67
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
68 # WORKAROUND:
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
69 # _after_ installation on --config we need a certain version of paster to create the initial config file...
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
70 pip install 'PasteScript==2.0.2'
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
71
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
72 # WORKAROUND:
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
73 # Kallithea's attempt to install Mercurial fails, so we do it first
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
74 pip install 'mercurial>=2.9,<3.8'
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
75
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
76 # perform automatic installation, includes dependencies
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
77 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
78 echo "===> output by Kallithea's setup.py"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
79 python setup.py install
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
80 retval=$?
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
81 echo "<=== Kallithea's setup.py is done, resuming ebuild code"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
82 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
83
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
84 # quit now if failed
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
85 if [ ${retval} -ne 0 ]; then
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
86 echo "Bad return value ${retval} from setup.py install"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
87 exit 1
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
88 fi
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
89
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
90 # unzip all eggs
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
91 echo 'Unzipping all eggs...'
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
92 cd dist/v/lib/python2.7/site-packages/ || die "site-packages not found"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
93 for eggname in *.egg; do
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
94 if [ -f "${eggname}" ]; then
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
95 mv "${eggname}" tmp.extract.zip
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
96 unzip -d "${eggname}" tmp.extract.zip
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
97 rm tmp.extract.zip
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
98 fi
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
99 done
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
100
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
101 # TODO: remove dummy config & directory
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
102
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
103 # create config
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
104 mkdir "${realWorkDir}/etc"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
105 cd "${realWorkDir}/etc"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
106 paster make-config Kallithea production.ini || die "unable to create configuration file"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
107
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
108 # rewrite config to refer to correct default paths
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
109 sed -i -e "s/%(here)s\(\/\(tarballcache\|data\)\)/${installDataPath//\//\\/}\1/" production.ini
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
110 sed -i -e "s/%(here)s\(\/kallithea.db\)/${installDataPath//\//\\/}\1/" production.ini
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
111
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
112 # TODO: only log WARN by default?
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
113
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
114 # rewrite virtualenv directory to later installation directory
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
115 oldIFS="${IFS}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
116 IFS="
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
117 "
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
118 echo "Searching files that need to have paths replaced when leaving portage sandbox..."
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
119 dirtyFiles=$(grep -Ri "${realWorkDir}/dist/v" ${realWorkDir}/dist/v | grep -vE '^Binary' | cut -d':' -f1 | sort | uniq)
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
120 for dirtyFile in ${dirtyFiles}; do
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
121 echo " patching ${dirtyFile}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
122 sed -e "s#${realWorkDir}/dist/v#${installBasePath}#" -i "${dirtyFile}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
123 done
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
124 IFS="${oldIFS}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
125
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
126 # create WSGI file
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
127 cd "${realWorkDir}/etc"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
128 cp "${FILESDIR}/production.wsgi" .
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
129 sed -e "s:###BASEDIR###:${installBasePath}:" -i production.wsgi
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
130 sed -e "s:###DATADIR###:${installDataPath}:" -i production.wsgi
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
131 sed -e "s:###CONFDIR###:${installConfigPath}:" -i production.wsgi
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
132 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
133
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
134 src_install() {
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
135 # QA: no need to have anything world-writable...
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
136 chmod o-w -R dist/v/lib/python2.7/site-packages/
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
137
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
138 # just copy the virtualenv directory to /opt/kallithea
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
139 dodir /opt
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
140 cp -aR "${S}/dist/v" "${D}${installBasePath}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
141
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
142 # install configuration files to /etc/kallithea
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
143 diropts -m750 -oroot -gkallithea
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
144 insopts -m640 -oroot -gkallithea
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
145 insinto "${installConfigPath}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
146 doins "${S}/etc/production.ini"
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
147 insopts -m644 -oroot -gkallithea
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
148 doins "${S}/etc/production.wsgi"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
149
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
150 # create data directory
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
151 diropts -m2770 -okallithea -gkallithea
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
152 keepdir "${installDataPath}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
153 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
154
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
155 pkg_postinst() {
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
156 # 1 2 3 4 5 6 7 8
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
157 # 12345678901234567890123456789012345678901234567890123456789012345678901234567890
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
158 einfo "An example configuration file has already been created so you don't need to run"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
159 einfo "make-config again, see:"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
160 einfo " ${installConfigPath}/production.ini"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
161 einfo ""
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
162 einfo "You still need to follow Kallithea's other setup steps according to the"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
163 einfo "instructions at:"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
164 einfo " ${urlDocumentationSetup}"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
165 einfo ""
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
166 einfo "When doing so, please mind that Kallithea was installed into a Python virtual"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
167 einfo "environment that has to be \"activated\" before it can be used. To do so,"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
168 einfo "you will have to run a dedicated shell and initialize the environment by running"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
169 einfo ""
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
170 einfo " source ${installBasePath}/${virtualenvActivationPath}"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
171 einfo ""
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
172 #einfo "We can wrap those commands for you if you run (no prior activation needed):"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
173 #einfo " emerge --config =${CATEGORY}/${PF}"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
174 #einfo ""
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
175 einfo "Kallithea also provides a way to migrate your database if you are coming from"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
176 einfo "RhodeCode 2.2 or below. Instructions can be found at:"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
177 einfo "${urlDocumentationRhodeCode}"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
178 einfo ""
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
179 ewarn "Bear in mind that the whole purpose of a Python virtual environment is to"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
180 ewarn "isolate complex dependency installations from other instances installed on the"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
181 ewarn "same system so you will have to remember to re-emerge this ebuild when"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
182 ewarn "Kallithea's dependencies received bug and in particular security fixes (assuming"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
183 ewarn "it allows any more recent versions to be installed)."
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
184 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
185
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
186
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
187
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
188
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
189
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
190 #################################################################################################
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
191 ### EVERYTHING BELOW WAS AN ATTEMPT TO ASSIST USERS ON SETUP BUT CALLING EDITORS NEVER WORKED ###
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
192 ### SHOULD STAY DEACTIVATED FOR NOW ###
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
193 #################################################################################################
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
194
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
195
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
196 my_read_line() {
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
197 # BASH function 'read' cannot write input back to variable in correct environment
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
198 # when run by emerge so we have to do *this* instead... great... :/
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
199 # (at least this works...)
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
200
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
201 python -c 'import sys; print(sys.stdin.readline().strip())'
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
202 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
203
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
204 config_menu() {
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
205 choice=""
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
206
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
207 oldIFS="${IFS}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
208 IFS="
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
209 "
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
210
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
211 # 1 2 3 4 5 6 7 8
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
212 # 12345678901234567890123456789012345678901234567890123456789012345678901234567890
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
213 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
214 echo "==============================================================================="
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
215 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
216 echo "Your options:"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
217 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
218 echo " 1) create production config from template (paster make-config ...)"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
219 echo " 2) edit production config"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
220 echo " 3) initialize Kallithea (paster setup-db)"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
221 echo " This will also ask for repository location and create an admin account."
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
222 echo " 0) quit"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
223 echo " Kallithea should be able to run now, check documentation for more options"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
224 echo " such as setting up a task queue or full text search if you need it."
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
225 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
226
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
227 echo "TERM is ${TERM}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
228
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
229 while [[ ! "${choice}" =~ ^[0-3]$ ]]; do
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
230 echo -n "Your choice? "
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
231 choice=$(my_read_line)
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
232 done
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
233
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
234 IFS="${oldIFS}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
235
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
236 return ${choice}
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
237 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
238
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
239 pkg_config() {
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
240 echo "Erm... You are not supposed to call --config as it has not been completed."
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
241 echo "Sorry, you will have to follow the docs yourself for now, see:"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
242 echo " ${urlDocumentationSetup}"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
243 echo
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
244 echo
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
245 exit 1
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
246
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
247 # 1 2 3 4 5 6 7 8
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
248 # 12345678901234567890123456789012345678901234567890123456789012345678901234567890
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
249
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
250 echo "Kallithea setup requires following multiple steps, some of which need to be run"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
251 echo "in the correct virtual Python environment. This script helps you running those"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
252 echo "commands by wrapping the commands to be run inside the correct virtualenv."
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
253 echo "You may still want to read the setup instructions while running this script:"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
254 echo
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
255 echo " ${urlDocumentationSetup}"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
256
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
257 # activate virtualenv
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
258 cd ${installBasePath} || die "installation is gone? (${installBasePath})"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
259 source "${virtualenvActivationPath}" || die "failed to activate virtualenv (${installBasePath}/${virtualenvActivationPath})"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
260
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
261 configFileName='production.ini'
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
262
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
263 while true; do
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
264 config_menu
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
265 choice=$?
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
266 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
267
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
268 case "${choice}" in
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
269 0) break
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
270 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
271
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
272 1) mkdir -p "${installBasePath}/etc"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
273 cd "${installBasePath}/etc"
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
274
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
275 shouldCreate="y"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
276 if [ -e "${configFileName}" ]; then
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
277 shouldCreate=""
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
278 while true; do
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
279 echo "${configFileName} already exists, overwrite?"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
280 while [[ ! "${shouldCreate}" =~ ^[yn]$ ]]; do
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
281 echo -n "Enter y to overwrite, n to abort: "
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
282 shouldCreate=$(my_read_line)
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
283 done
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
284 done
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
285 fi
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
286
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
287 if [ "${shouldCreate}" == 'y' ]; then
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
288 echo 'Creating configuration file...'
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
289 paster make-config Kallithea ${configFileName}
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
290 else
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
291 echo 'Aborted, configuration file has not been overwritten.'
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
292 fi
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
293 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
294
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
295 2) iniPath="${installBasePath}/etc/${configFileName}"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
296
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
297 if [ ! -e "${iniPath}" ]; then
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
298 echo "config not found at ${iniPath}; did you follow step 1?"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
299 continue
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
300 fi
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
301
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
302 # terminal and shell need a reset or editor will be screwed up
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
303 source /etc/profile
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
304 reset
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
305 stty sane
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
306
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
307 # open editor
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
308 if [[ "${EDITOR}" != "" ]] && [ -e "${EDITOR}" ]; then
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
309 TERM="xterm" ${EDITOR} "${iniPath}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
310 else
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
311 TERM="xterm" nano -w "${iniPath}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
312 fi
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
313
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
314 # we better reset again...
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
315 source /etc/profile
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
316 reset
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
317 stty sane
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
318 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
319
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
320 *) echo "invalid choice ${choice}"
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
321 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
322 esac
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
323 done
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
324 }