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.5.ebuild @ 236:151d84363e64

[sync] imported 8c3bfd0..b15ca8c from upstream commit b15ca8c5239daf75d74e03ce0e88be2722c8a8b5 Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Sun Feb 28 13:03:05 2021 +0100 media-video/qt-faststart-python removed due to Python 2.7 qt-faststart-python requires Python 2.7 which is being removed from Gentoo. Even if 2.7 may remain available we seem to be unable to keep such packages on a registered overlay using the utility classes provided by Gentoo. In general, "faststart" is today also easily and quickly achieved through FFMPEG (without recoding), so this tool may really no longer be needed. commit dd2b6cb6314909e9253e5dc82cdd99f944f14733 Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Sun Feb 28 12:58:23 2021 +0100 media-gfx/trimage removed 1.0.5 due to outdated Python version commit a5de53e6780d5321372f2dcdabdd9eae83b7b1bb Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Sun Feb 28 12:56:56 2021 +0100 dev-python/sexpdata removed Same version is available from official Gentoo repository. commit 9009aaca44d0baf1c654f4b39ca1887b8395c2e8 Author: Daniel Neugebauer <dneuge@energiequant.de> Date: Sun Feb 28 12:26:51 2021 +0100 dev-python/epc removed; upstream seems dead Officially only compatible with Python 2.7 up to 3.3. Not sure if still needed - was introduced for emacs JEDI but that appears to now ship its own version through MELPA. Not needed on local installation.
author Migration Sync <gentoo-overlay@megacoffee.net>
date Sun, 28 Feb 2021 12:30:02 +0000
parents 64ad94cc6f53
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/"
216
64ad94cc6f53 dev-vcs/kallithea: version bump to 0.3.5 (security update), masking <0.3.5
Daniel Neugebauer <dneuge@energiequant.de>
parents: 152
diff changeset
21 SRC_URI="https://files.pythonhosted.org/packages/b7/74/5d8ff9186721347d40ef486bd7246b0fc9bf53d27ed923d4bf06be8fbadf/Kallithea-0.3.5.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 ""
216
64ad94cc6f53 dev-vcs/kallithea: version bump to 0.3.5 (security update), masking <0.3.5
Daniel Neugebauer <dneuge@energiequant.de>
parents: 152
diff changeset
255 #elog "We altered the default config slightly. It may be best to have a look at our"
64ad94cc6f53 dev-vcs/kallithea: version bump to 0.3.5 (security update), masking <0.3.5
Daniel Neugebauer <dneuge@energiequant.de>
parents: 152
diff changeset
256 #elog "short example on how to setup hosting with Apache and mod_wsgi, even if you"
64ad94cc6f53 dev-vcs/kallithea: version bump to 0.3.5 (security update), masking <0.3.5
Daniel Neugebauer <dneuge@energiequant.de>
parents: 152
diff changeset
257 #elog "prefer another method of hosting Kallithea:"
64ad94cc6f53 dev-vcs/kallithea: version bump to 0.3.5 (security update), masking <0.3.5
Daniel Neugebauer <dneuge@energiequant.de>
parents: 152
diff changeset
258 #elog " ${urlDocumentationMegacoffee}"
64ad94cc6f53 dev-vcs/kallithea: version bump to 0.3.5 (security update), masking <0.3.5
Daniel Neugebauer <dneuge@energiequant.de>
parents: 152
diff changeset
259 #elog ""
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
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 }