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.2.ebuild @ 222:e74cbf10807d

net-im/trillian: removed due to EAPI 2
author Daniel Neugebauer <dneuge@energiequant.de>
date Sun, 15 Dec 2019 11:35:04 +0100
parents 9b93dbe42ce6
children
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/"
152
9b93dbe42ce6 Kallithea: updating to 0.3.2, masking 0.3.1 for security issues
Daniel Neugebauer <dneuge@energiequant.de>
parents: 151
diff changeset
21 SRC_URI="https://pypi.python.org/packages/72/b3/a135896270360385ae5b47a5a7d119e90143334e30d93fb68c26ec59edfc/Kallithea-0.3.2.tar.gz"
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
142
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
23 IUSE="+git mysql postgres sqlite"
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
24 REQUIRED_USE="|| ( mysql postgres sqlite )"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
25
140
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
26 RDEPEND="
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
27 dev-python/virtualenv
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
28 git? ( dev-vcs/git )
142
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
29 mysql? ( dev-db/mysql )
141
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
30 postgres? ( dev-db/postgresql )
140
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
31 sqlite? ( dev-lang/python:2.7[sqlite] )
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
32 "
142
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
33 #mysql? ( virtual/libmysqlclient )
139
75e8d4d50c86 dev-vcs/kallithea: adding dependency for sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 138
diff changeset
34
75e8d4d50c86 dev-vcs/kallithea: adding dependency for sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 138
diff changeset
35 DEPEND="${RDEPEND}
75e8d4d50c86 dev-vcs/kallithea: adding dependency for sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 138
diff changeset
36 app-arch/unzip
136
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
37 sys-apps/sed"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
38
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
39 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
40 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
41 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
42
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
43 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
44
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
45 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
46 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
47 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
48 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
49
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
50 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
51 urlDocumentationRhodeCode="http://kallithea.readthedocs.org/en/${PV}/readme.html#converting-from-rhodecode"
136
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
52 urlDocumentationMegacoffee="http://gentoo-overlay.megacoffee.net/s/docs-kallithea-apache-mod_wsgi"
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
53
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
54 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
55 # 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
56 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
57 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
58 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
59
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
60 src_unpack() {
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
61 unpack ${A}
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
62 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
63 }
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
64
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
65 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
66 # 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
67
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
68 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
69
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
70 # create new virtual environment
138
28cb864a4a8f dev-vcs/kallithea: forcing Python 2.7 further...
Daniel Neugebauer <dneuge@energiequant.de>
parents: 137
diff changeset
71 virtualenv --python=python2.7 --no-site-packages dist/v
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
72
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
73 # 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
74 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
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 # WORKAROUND:
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
77 # we need to make sure we have a current version of setuptools to install Kallithea's dependencies
137
e08c1ff80cad dev-vcs/kallithea: forcing Python 2.7, otherwise ebuild will fail on fresh Gentoo installations
Daniel Neugebauer <dneuge@energiequant.de>
parents: 136
diff changeset
78 pip2.7 install 'setuptools>=17.1' || die "Failed to install setuptools, aborting!"
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
79
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
80 # WORKAROUND:
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
81 # _after_ installation on --config we need a certain version of paster to create the initial config file...
137
e08c1ff80cad dev-vcs/kallithea: forcing Python 2.7, otherwise ebuild will fail on fresh Gentoo installations
Daniel Neugebauer <dneuge@energiequant.de>
parents: 136
diff changeset
82 pip2.7 install 'PasteScript==2.0.2' || die "Failed to install PasteScript, aborting!"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
83
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
84 # WORKAROUND:
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
85 # Kallithea's attempt to install Mercurial fails, so we do it first
137
e08c1ff80cad dev-vcs/kallithea: forcing Python 2.7, otherwise ebuild will fail on fresh Gentoo installations
Daniel Neugebauer <dneuge@energiequant.de>
parents: 136
diff changeset
86 pip2.7 install 'mercurial>=2.9,<3.8' || die "Failed to install Mercurial, aborting!"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
87
141
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
88 # WORKAROUND:
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
89 # Kallithea needs psycopg2 for PostgreSQL support which is not currently listed as a dependency?!
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
90 # at the time of writing 2.6.1 is current, so we limit the version to <2.7
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
91 if use postgres ; then
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
92 pip2.7 install 'psycopg2>=2.6,<2.7' || die "Failed to install psycopg2 (required for PostgreSQL support), aborting!"
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
93 fi
99a8dff9f4b0 dev-vcs/kallithea: PostgreSQL support
Daniel Neugebauer <dneuge@energiequant.de>
parents: 140
diff changeset
94
142
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
95 # WORKAROUND:
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
96 # Kallithea needs MySQLdb for MySQL support which is not currently listed as a dependency?!
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
97 # at the time of writing 1.2.5 is current, so we limit the version to <1.3
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
98 if use mysql ; then
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
99 pip2.7 install 'MySQL-python>=1.2,<1.3' || die "Failed to install MySQL-python (required for MySQL support), aborting!"
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
100 fi
2389785d147c dev-vcs/kallithea: adding MySQL support, removing sqlite default selection, requiring at least one database USE flag
Daniel Neugebauer <dneuge@energiequant.de>
parents: 141
diff changeset
101
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 # 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
103 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
104 echo "===> output by Kallithea's setup.py"
137
e08c1ff80cad dev-vcs/kallithea: forcing Python 2.7, otherwise ebuild will fail on fresh Gentoo installations
Daniel Neugebauer <dneuge@energiequant.de>
parents: 136
diff changeset
105 python2.7 setup.py install
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
106 retval=$?
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
107 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
108 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
109
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
110 # 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
111 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
112 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
113 exit 1
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
114 fi
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
115
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
116 # unzip all eggs
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
117 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
118 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
119 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
120 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
121 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
122 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
123 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
124 fi
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
125 done
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
126
140
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
127 # disable Git support according to manual
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
128 # see: http://kallithea.readthedocs.org/en/0.3.1/usage/vcs_support.html
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
129 if ! use git ; then
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
130 sed -i -e "/^BACKENDS\s*=\s*{/,/}/ s/^\(\s*\)\('git'\)/\1#\2/" Kallithea-${PV}-py2.7.egg/kallithea/__init__.py || die 'Failed to disable git support, aborting...'
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
131 fi
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
132
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 # 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
134 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
135 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
136 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
137
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
138 # 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
139 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
140 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
141
136
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
142 # rewrite config to only log from WARN level to "console"
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
143 # By Kallithea defaults, handler_console logs everything from INFO level to "console".
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
144 # As mod_wsgi logs everything from "console" to error_log this results in a huge amount
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
145 # of unnecessary log entries which we would like to prevent.
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
146 # NOTE: As sed syntax is hard to read... this replacement rule is prefixed with an "address" which
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
147 # is being defined by two regexps, effectively restricting replacements just to the
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
148 # handler_console section of our ini file.
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
149 sed -i -e '/^\[handler_console\]/,/^\[/ s/level\s*=\s*INFO/level = WARN/' production.ini
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
150
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
151 # rewrite config to disable debug mode
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
152 # By default, Kallithea uses debug = true which should *NOT* be used except during development.
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
153 # See: http://kallithea.readthedocs.org/en/0.3.1/usage/debugging.html
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
154 sed -i -e '/^\[DEFAULT\]/,/^\[/ s/\(debug\s*=\s*\)true/\1false/' production.ini
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
155
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
156 ## (disabled, does not work from sandbox)
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
157 ## maintain system-unique variables from previous production.ini if available
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
158 #previousProductionConfig="${installConfigPath}/production.ini"
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
159 #if [ -e "${previousProductionConfig}" ]; then
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
160 # previousAppInstanceUUID="$(grep -oE '^\s*app_instance_uuid\s*=\s*[0-9a-f\-]+' /etc/kallithea/production.ini | cut -d'=' -f2 | tr -d ' ')"
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
161 # previousBeakerSessionSecret="$(grep -oE '^\s*beaker\.session\.secret\s*=\s*[0-9a-f\-]+' "${previousProductionConfig}" | cut -d'=' -f2 | tr -d ' ')"
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
162 #
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
163 # if [ ! -z "${previousAppInstanceUUID}" ]; then
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
164 # echo 'Transferring previous app instance UUID to new production.ini'
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
165 # sed -i -e "s/^\(\s*app_instance_uuid\s*=\s*\).*/\1${previousAppInstanceUUID}/" production.ini
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
166 # fi
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
167 #
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
168 # if [ ! -z "${previousBeakerSessionSecret}" ]; then
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
169 # echo 'Transferring previous Beaker session secret to new production.ini'
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
170 # sed -i -e "s/^\(\s*beaker\.session\.secret\s*=\s*\).*/\1${previousBeakerSessionSecret}/" production.ini
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
171 # fi
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
172 #fi
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
173
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
174 # remove newly generated UUID and Beaker session secret from config
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
175 # as user should configure that instead and config diffs don't show
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
176 # unnecessary stuff
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
177 sed -i -e "s/^\(\s*app_instance_uuid\s*=\).*/#\1 (run uuidgen and insert the returned UUID here)/" production.ini
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
178 sed -i -e "s/^\(\s*beaker\.session\.secret\s*=\).*/#\1 (run uuidgen and insert the returned UUID here)/" production.ini
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
179
143
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
180 # comment out sqlite DB as we don't want users to use it by accident
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
181 sed -i -e 's/^\(\s*\)\(sqlalchemy\.db1\.url\s*=\s*sqlite:.*\)/\1#\2/' production.ini
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
182
136
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
183 # rename production.ini as it requires more configuration and is hard to read
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
184 mv production.ini production.ini.example
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
185
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
186 # 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
187 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
188 IFS="
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
189 "
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
190 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
191 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
192 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
193 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
194 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
195 done
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
196 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
197
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
198 # 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
199 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
200 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
201 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
202 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
203 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
204 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
205
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
206 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
207 # 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
208 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
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 # 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
211 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
212 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
213
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
214 # 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
215 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
216 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
217 insinto "${installConfigPath}"
136
4f080a258623 dev-vcs/kallithea: more config changes
Daniel Neugebauer <dneuge@energiequant.de>
parents: 134
diff changeset
218 doins "${S}/etc/production.ini.example"
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
219 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
220 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
221
140
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
222 # create data directory and subdirectories
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
223 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
224 keepdir "${installDataPath}"
140
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
225 keepdir "${installDataPath}/data"
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
226 keepdir "${installDataPath}/data/cache"
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
227 keepdir "${installDataPath}/data/cache/data"
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
228 keepdir "${installDataPath}/data/cache/lock"
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
229 keepdir "${installDataPath}/data/index"
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
230 keepdir "${installDataPath}/repositories"
3bcc5cfd5a95 dev-vcs/kallithea: creating default directories with permissions, adding USE flags for git and sqlite
Daniel Neugebauer <dneuge@energiequant.de>
parents: 139
diff changeset
231 keepdir "${installDataPath}/tarballcache"
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
232 }
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 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
235 # 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
236 # 12345678901234567890123456789012345678901234567890123456789012345678901234567890
143
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
237 elog "An example configuration file has already been created so you don't need to run"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
238 elog "make-config again; please copy and edit carefully on first setup:"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
239 elog " cp -a ${installConfigPath}/production.ini.example ${installConfigPath}/production.ini"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
240 elog " \$EDITOR ${installConfigPath}/production.ini"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
241 elog ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
242 elog "After updates, please compare what has changed and copy any necessary changes:"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
243 elog " diff -u ${installConfigPath}/production.ini ${installConfigPath}/production.ini.example"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
244 elog ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
245 elog "You still need to follow Kallithea's other setup steps according to the"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
246 elog "instructions at:"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
247 elog " ${urlDocumentationSetup}"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
248 elog ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
249 elog "When doing so, please mind that Kallithea was installed into a Python virtual"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
250 elog "environment that has to be \"activated\" before it can be used. To do so,"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
251 elog "you will have to run a dedicated shell and initialize the environment by running"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
252 elog ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
253 elog " source ${installBasePath}/${virtualenvActivationPath}"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
254 elog ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
255 elog "We altered the default config slightly. It may be best to have a look at our"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
256 elog "short example on how to setup hosting with Apache and mod_wsgi, even if you"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
257 elog "prefer another method of hosting Kallithea:"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
258 elog " ${urlDocumentationMegacoffee}"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
259 elog ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
260 #elog "We can wrap those commands for you if you run (no prior activation needed):"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
261 #elog " emerge --config =${CATEGORY}/${PF}"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
262 #elog ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
263 elog "Kallithea also provides a way to migrate your database if you are coming from"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
264 elog "RhodeCode 2.2 or below. Instructions can be found at:"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
265 elog "${urlDocumentationRhodeCode}"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
266 elog ""
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
267 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
268 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
269 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
270 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
271 ewarn "it allows any more recent versions to be installed)."
143
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
272
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
273 if use sqlite ; then
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
274 ewarn ""
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
275 ewarn "You chose to use SQLite for Kallithea. Please be advised that this is *ONLY* for"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
276 ewarn "testing purposes, please avoid using SQLite in production and choose a different"
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
277 ewarn "database instead."
b4939be30911 dev-vcs/kallithea: commenting out SQLAlchemy definition for SQLite, changing einfo to elog, warning if sqlite USE flag is set
Daniel Neugebauer <dneuge@energiequant.de>
parents: 142
diff changeset
278 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
279 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
280
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
281
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
282
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
283
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
284
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
285 #################################################################################################
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
286 ### 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
287 ### 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
288 #################################################################################################
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
289
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
290
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
291 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
292 # 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
293 # 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
294 # (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
295
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
296 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
297 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
298
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
299 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
300 choice=""
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 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
303 IFS="
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
304 "
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
305
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
306 # 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
307 # 12345678901234567890123456789012345678901234567890123456789012345678901234567890
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
308 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
309 echo "==============================================================================="
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
310 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
311 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
312 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
313 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
314 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
315 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
316 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
317 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
318 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
319 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
320 echo
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 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
323
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
324 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
325 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
326 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
327 done
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
328
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
329 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
330
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
331 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
332 }
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
333
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
334 pkg_config() {
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
335 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
336 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
337 echo " ${urlDocumentationSetup}"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
338 echo
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
339 echo
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
340 exit 1
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
341
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
342 # 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
343 # 12345678901234567890123456789012345678901234567890123456789012345678901234567890
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
344
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
345 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
346 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
347 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
348 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
349 echo
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
350 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
351
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
352 # 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
353 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
354 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
355
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
356 configFileName='production.ini'
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
357
132
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
358 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
359 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
360 choice=$?
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
361 echo
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
362
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
363 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
364 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
365 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
366
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
367 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
368 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
369
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
370 shouldCreate="y"
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
371 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
372 shouldCreate=""
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
373 while true; do
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
374 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
375 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
376 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
377 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
378 done
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
379 done
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
380 fi
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
381
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
382 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
383 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
384 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
385 else
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
386 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
387 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
388 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
389
134
702382d06f80 dev-vcs/kallithea: first fully working ebuild (tested with mod_wsgi)
Daniel Neugebauer <dneuge@energiequant.de>
parents: 132
diff changeset
390 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
391
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
392 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
393 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
394 continue
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
395 fi
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
396
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
397 # 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
398 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
399 reset
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
400 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
401
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
402 # 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
403 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
404 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
405 else
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
406 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
407 fi
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
408
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
409 # 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
410 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
411 reset
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
412 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
413 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
414
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
415 *) 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
416 ;;
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
417 esac
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
418 done
af030a9d6541 adding old dev-vcs/kallithea ebuild (lay around since late 2014, do not use!)
Daniel Neugebauer <dneuge@energiequant.de>
parents:
diff changeset
419 }