diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /app-admin/webapp-config | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'app-admin/webapp-config')
16 files changed, 770 insertions, 0 deletions
diff --git a/app-admin/webapp-config/Manifest b/app-admin/webapp-config/Manifest new file mode 100644 index 000000000000..4c6c0ac19339 --- /dev/null +++ b/app-admin/webapp-config/Manifest @@ -0,0 +1,3 @@ +DIST webapp-config-1.52.tar.bz2 62951 SHA256 b8295bbc518f68f60913fe2ee9232d77f1a10e21fcddffb8c4370546ba96a2a5 SHA512 ec616067588e6ab306af067e70bab9d17961aa675f387ee67a2291235ce81638b49a784d9a6c31891b7c78a712f276c3e62c6681a5e496a52c7e6fe7753922ea WHIRLPOOL ca6484871e26acff6d14510a4a925672258f58c1c8c05c5207b78350b1cc787e29c6ea68c1af05b5c5aaebed12ce545e023f54acbdc7215678b30a2f14708eee +DIST webapp-config-1.53.tar.bz2 63429 SHA256 4d45b1452feb730cc55bfdce686277183acfd64ab6aef5fab82992d1a508263d SHA512 7d2fc7197d537f2264c26b68b61e69273d2fcd3eec93657db54ba685c8383e7b8245cf05ed2ddd8b72453bf3fbf8f4bc4867e53d608331799df2e6162be14820 WHIRLPOOL f12ca0f3fcee31de6e2ead3cd3685fa32c697d258324bf40fc2bfc2f1787c4e7cbd7290bbb5f5523515bff29cb78bece35fcad390e419cf5dd619e5efdafc1dc +DIST webapp-config-1.54.tar.bz2 58954 SHA256 7663c4f7ae0d4e7206e349f3bf79fed479c9971365363929f431c92ebd622d17 SHA512 fa61e88696eaed130575e5ae9a17ec827aa14aece359e5ba43fa723ad00083def22e44fb02d99fc5ba6000a5949c5ce7aecea9307d2bfae333e202ef111dcd31 WHIRLPOOL 417944147e0bdc7eb1575b10102230306f6c76652beeb0e2866d0fbe41b12bcdeb31421dd7551961db55f4fe4544ca5600c072cb74083621745c7c74fbfeec2e diff --git a/app-admin/webapp-config/files/webapp-config-1.50.16-absolute-paths.patch b/app-admin/webapp-config/files/webapp-config-1.50.16-absolute-paths.patch new file mode 100644 index 000000000000..c74fff9b2079 --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.50.16-absolute-paths.patch @@ -0,0 +1,42 @@ +Index: webapp-config-1.50.16/WebappConfig/config.py +=================================================================== +--- webapp-config-1.50.16.orig/WebappConfig/config.py ++++ webapp-config-1.50.16/WebappConfig/config.py +@@ -204,6 +204,7 @@ class Config: + pass + + self.__d = { ++ 'allow_absolute' : 'no', + 'config_protect' : wrapper.config_protect, + # Necessary to load the config file + 'my_etcconfig' : '/etc/vhosts/webapp-config', +@@ -870,8 +871,13 @@ class Config: + # + # this makes sure we don't write rubbish into the installs list + +- installpath = self.config.get('USER', 'g_htdocsdir') + '/' + \ +- self.config.get('USER', 'g_installdir') ++ g_installdir = self.config.get('USER', 'g_installdir') ++ ++ if (os.path.isabs(g_installdir) ++ and self.config.get('USER', 'allow_absolute') == 'yes'): ++ installpath = g_installdir ++ else: ++ installpath = self.config.get('USER', 'g_htdocsdir') + '/' + g_installdir + + installpath = re.compile('/+').sub('/', self.__root + installpath) + +Index: webapp-config-1.50.16/config/webapp-config +=================================================================== +--- webapp-config-1.50.16.orig/config/webapp-config ++++ webapp-config-1.50.16/config/webapp-config +@@ -183,6 +183,9 @@ vhost_perms_virtualowned_file="o-w" + + vhost_perms_installdir="0755" + ++# Allow specifying absolute path names using the -d option? ++allow_absolute="no" ++ + + # ======================================================================== + # END OF USER-EDITABLE SETTINGS diff --git a/app-admin/webapp-config/files/webapp-config-1.50.16-apache-move.patch b/app-admin/webapp-config/files/webapp-config-1.50.16-apache-move.patch new file mode 100644 index 000000000000..6f9a30e7a689 --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.50.16-apache-move.patch @@ -0,0 +1,13 @@ +Index: webapp-config-1.50.16/WebappConfig/server.py +=================================================================== +--- webapp-config-1.50.16.orig/WebappConfig/server.py ++++ webapp-config-1.50.16/WebappConfig/server.py +@@ -300,7 +300,7 @@ class Apache(Basic): + + name = 'Apache' + desc = 'supports installation on Apache 1 & 2' +- dep = '>=net-www/apache-1.3' ++ dep = '>=www-servers/apache-1.3' + + def set_server_user(self): + self.vhost_server_uid = get_user('apache') diff --git a/app-admin/webapp-config/files/webapp-config-1.50.16-baselayout2.patch b/app-admin/webapp-config/files/webapp-config-1.50.16-baselayout2.patch new file mode 100644 index 000000000000..24f000413479 --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.50.16-baselayout2.patch @@ -0,0 +1,13 @@ +Index: webapp-config-1.50.16/sbin/webapp-cleaner +=================================================================== +--- webapp-config-1.50.16.orig/sbin/webapp-cleaner ++++ webapp-config-1.50.16/sbin/webapp-cleaner +@@ -11,7 +11,7 @@ CMD="emerge -Cav" + WEBAPP_DIR="/usr/share/webapps" + WEBAPP_CONFIG= + +-[[ -z ${RC_GOT_FUNCTIONS} ]] && source /sbin/functions.sh ++[[ -z ${RC_GOT_FUNCTIONS} ]] && source /lib/gentoo/functions.sh + + function help() { + echo "Remove obsolete and unused versions of web applications" diff --git a/app-admin/webapp-config/files/webapp-config-1.50.16-fix-unicode-tests.patch b/app-admin/webapp-config/files/webapp-config-1.50.16-fix-unicode-tests.patch new file mode 100644 index 000000000000..cad75a2e517f --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.50.16-fix-unicode-tests.patch @@ -0,0 +1,39 @@ +Make strings unicode to fix test failures + +Python enables unicode by default. Various quoted strings used +in tests were not declared as unicode and so caused false failures. +This patch addresses this issue. + +Signed-off-by: Matthew Thode <prometheanfire@gentoo.org> +Signed-off-by: Anthony G. Basile <blueness@gentoo.org> + +diff -rupN webapp-config-1.50.16/WebappConfig.orig/db.py webapp-config-1.50.16/WebappConfig/db.py +--- webapp-config-1.50.16/WebappConfig.orig/db.py 2012-06-17 11:10:15.964264617 -0500 ++++ webapp-config-1.50.16/WebappConfig/db.py 2012-06-17 11:11:05.364265831 -0500 +@@ -186,7 +186,7 @@ class WebappDB(AppHierarchy): + >>> sb = [i[1] for i in b.list_locations().items()] + >>> sb.sort(lambda x,y: cmp(x[0]+x[1],y[0]+y[1])) + >>> sb +- [['gallery', '1.4.4_p6'], ['gallery', '2.0_rc2'], ['horde', '3.0.5'], ['phpldapadmin', '0.9.7_alpha4']] ++ [[u'gallery', u'1.4.4_p6'], [u'gallery', u'2.0_rc2'], [u'horde', u'3.0.5'], [u'phpldapadmin', u'0.9.7_alpha4']] + + >>> c = WebappDB(here + '/tests/testfiles/webapps', + ... package = 'horde', version = '3.0.5') +@@ -572,7 +572,7 @@ class WebappSource(AppHierarchy): + ... 'horde', '3.0.5') + >>> d = a.get_source_directories('htdocs') + >>> [i for i in d if i != '.svn'] +- ['dir1', 'dir2'] ++ [u'dir1', u'dir2'] + ''' + dirs = [] + +@@ -604,7 +604,7 @@ class WebappSource(AppHierarchy): + >>> a = WebappSource(here + '/tests/testfiles/share-webapps', + ... 'horde', '3.0.5') + >>> a.get_source_files('htdocs') +- ['test1', 'test2'] ++ [u'test1', u'test2'] + ''' + + files = [] diff --git a/app-admin/webapp-config/files/webapp-config-1.50.16-htdocs-symlink.patch b/app-admin/webapp-config/files/webapp-config-1.50.16-htdocs-symlink.patch new file mode 100644 index 000000000000..a7421b9b2c21 --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.50.16-htdocs-symlink.patch @@ -0,0 +1,13 @@ +Index: webapp-config-1.50.16/WebappConfig/server.py +=================================================================== +--- webapp-config-1.50.16.orig/WebappConfig/server.py ++++ webapp-config-1.50.16/WebappConfig/server.py +@@ -158,7 +158,7 @@ class Basic: + + # is the installation directory empty? + +- if not os.listdir(self.__destd): ++ if not os.listdir(self.__destd) and os.path.isdir(self.__destd): + if not self.__p: + os.rmdir(self.__destd) + else: diff --git a/app-admin/webapp-config/files/webapp-config-1.50.16-update-servers.patch b/app-admin/webapp-config/files/webapp-config-1.50.16-update-servers.patch new file mode 100644 index 000000000000..f6e7bbd54144 --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.50.16-update-servers.patch @@ -0,0 +1,80 @@ +--- WebappConfig/config.py 2006-12-30 13:38:36.000000000 -0500 ++++ config.py 2009-05-28 12:08:53.000000000 -0400 +@@ -1289,8 +1289,9 @@ + + allowed_servers = {'apache' : WebappConfig.server.Apache, + 'lighttpd' : WebappConfig.server.Lighttpd, +- 'aolserver': WebappConfig.server.Aolserver, +- 'cherokee' : WebappConfig.server.Cherokee} ++ 'cherokee' : WebappConfig.server.Cherokee, ++ 'nginx' : WebappConfig.server.Nginx, ++ 'gatling' : WebappConfig.server.Gatling} + + server = self.config.get('USER', 'vhost_server') + +--- WebappConfig/server.py 2009-05-28 12:06:48.000000000 -0400 ++++ server.py 2009-05-28 12:10:54.000000000 -0400 +@@ -316,16 +316,6 @@ + self.vhost_server_uid = get_user('lighttpd') + self.vhost_server_gid = get_group('lighttpd') + +-class Aolserver(Basic): +- +- name = 'Aolserver' +- desc = 'supports installation on Aolserver' +- dep = 'www-servers/aolserver' +- +- def set_server_user(self): +- self.vhost_server_uid = get_user('aolserver') +- self.vhost_server_gid = get_group('aolserver') +- + class Cherokee(Basic): + + name = 'Cherokee' +@@ -336,9 +326,30 @@ + self.vhost_server_uid = get_user('cherokee') + self.vhost_server_gid = get_group('cherokee') + ++class Nginx(Basic): ++ ++ name = 'Nginx' ++ desc = 'supports installation on Nginx' ++ dep = 'www-servers/nginx' ++ ++ def set_server_user(self): ++ self.vhost_server_uid = get_user('nginx') ++ self.vhost_server_gid = get_group('nginx') ++ ++class Gatling(Basic): ++ ++ name = 'Gatling' ++ desc = 'supports installation on Gatling' ++ dep = 'www-servers/gatling' ++ ++ def set_server_user(self): ++ self.vhost_server_uid = get_user('gatling') ++ self.vhost_server_gid = get_group('gatling') ++ + def listservers(): + + OUT.notice('\n'.join(['apache', +- 'aolserver', + 'lighttpd', +- 'cherokee'])) ++ 'cherokee', ++ 'nginx', ++ 'gatling'])) +--- config/webapp-config 2006-12-30 13:39:13.000000000 -0500 ++++ webapp-config 2009-05-28 12:11:24.000000000 -0400 +@@ -65,9 +65,10 @@ + # your choices are: + # + # apache +-# aolserver + # lighttpd + # cherokee ++# nginx ++# gatling + # + # you can override this setting by using the -s switch to webapp-config + diff --git a/app-admin/webapp-config/files/webapp-config-1.51-fix-indentation.patch b/app-admin/webapp-config/files/webapp-config-1.51-fix-indentation.patch new file mode 100644 index 000000000000..27a11aa83372 --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.51-fix-indentation.patch @@ -0,0 +1,25 @@ +From 1bc28049300625a3b24a632e2aacb5776937c19b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Manuel=20R=C3=BCger?= <mrueg@gentoo.org> +Date: Tue, 6 Aug 2013 03:59:31 +0200 +Subject: [PATCH] WebappConfig/config.py: fix indentation + +--- + WebappConfig/config.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/WebappConfig/config.py b/WebappConfig/config.py +index bf55d1e..bb86a55 100644 +--- a/WebappConfig/config.py ++++ b/WebappConfig/config.py +@@ -962,7 +962,7 @@ class Config: + OUT.die('You need to specify at least the application you' + ' would like to handle!') + else: +- return self.config.get('USER', 'pn') ++ return self.config.get('USER', 'pn') + + def check_version_set(self): + if not self.config.has_option('USER', 'pvr'): +-- +1.8.1.5 + diff --git a/app-admin/webapp-config/files/webapp-config-1.52-nulls-doctest.patch b/app-admin/webapp-config/files/webapp-config-1.52-nulls-doctest.patch new file mode 100644 index 000000000000..97c64a90df25 --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.52-nulls-doctest.patch @@ -0,0 +1,185 @@ +From 5f61d249507c3502c3c76faf3926522e6e63370d Mon Sep 17 00:00:00 2001 +From: Devan Franchini <twitch153@gentoo.org> +Date: Fri, 3 Jan 2014 21:03:00 -0500 +Subject: [PATCH] WebappConfig/{ebuild,content}.py: Nulls doctest code. + +Due to the variable nature of the returning values of the two functions +run_vars() and add(), it is unrealistic to depend on doctest to not +fail. It has been decided that disabling these two doctest codes would +be the best decision to prevent failures that are not detrimental. + +X-Gentoo-Bug: 430010 +X-Gentoo-Bug-URL: https://bugs.gentoo.org/430010 +--- + WebappConfig/content.py | 36 ++++++++++++++++++------------------ + WebappConfig/ebuild.py | 46 +++++++++++++++++++++++----------------------- + 2 files changed, 41 insertions(+), 41 deletions(-) + +diff --git a/WebappConfig/content.py b/WebappConfig/content.py +index 8fe5be9..c635f5a 100644 +--- a/WebappConfig/content.py ++++ b/WebappConfig/content.py +@@ -379,71 +379,71 @@ class Contents: + (and this is important for md5) + relative - 1 for storing a relative filename, 0 otherwise + +- >>> OUT.color_off() +- >>> import os.path +- >>> here = os.path.dirname(os.path.realpath(__file__)) ++ OUT.color_off() ++ import os.path ++ here = os.path.dirname(os.path.realpath(__file__)) + + One for pretending: + +- >>> a = Contents(here + '/tests/testfiles/contents/app/', ++ a = Contents(here + '/tests/testfiles/contents/app/', + ... package = 'test', version = '1.0', + ... pretend = True) + + And this one is for real: + +- >>> b = Contents(here + '/tests/testfiles/contents/app/', ++ b = Contents(here + '/tests/testfiles/contents/app/', + ... package = 'test', version = '1.0') + + Pretend to add a file: + +- >>> a.add('file', 'config-owned', ++ a.add('file', 'config-owned', + ... destination = here + '/tests/testfiles/contents/app/', + ... path = '/test1', relative = True) + * pretending to add: file 1 config-owned "test1" + + Lets not pretend this time: + +- >>> b.add('file', 'config-owned', ++ b.add('file', 'config-owned', + ... destination = here + '/tests/testfiles/contents/app/', + ... path = '/test1', relative = True) +- >>> b.entry(here + '/tests/testfiles/contents/app/test1') #doctest: +ELLIPSIS ++ b.entry(here + '/tests/testfiles/contents/app/test1') #doctest: +ELLIPSIS + 'file 1 config-owned "test1" ... d8e8fca2dc0f896fd7cb4cb0031ba249 ' + + Lets produce an error with a file that does not exist: + +- >>> b.add('file', 'config-owned', ++ b.add('file', 'config-owned', + ... destination = here + '/tests/testfiles/contents/app/', + ... path = '/nothere', relative = True) #doctest: +ELLIPSIS + * Cannot access file .../tests/testfiles/contents/app/nothere to add it as installation content. This should not happen! + + Other file types: + +- >>> b.add('hardlink', 'config-owned', ++ b.add('hardlink', 'config-owned', + ... destination = here + '/tests/testfiles/contents/app/', + ... path = '/test2', relative = True) +- >>> b.entry(here + '/tests/testfiles/contents/app/test2') #doctest: +ELLIPSIS ++ b.entry(here + '/tests/testfiles/contents/app/test2') #doctest: +ELLIPSIS + 'file 1 config-owned "test2" ... d8e8fca2dc0f896fd7cb4cb0031ba249 ' +- >>> b.add('dir', 'default-owned', ++ b.add('dir', 'default-owned', + ... destination = here + '/tests/testfiles/contents/app/', + ... path = '/dir1', relative = True) +- >>> b.entry(here + '/tests/testfiles/contents/app/dir1') #doctest: +ELLIPSIS ++ b.entry(here + '/tests/testfiles/contents/app/dir1') #doctest: +ELLIPSIS + 'dir 1 default-owned "dir1" ... 0 ' +- >>> b.add('dir', 'default-owned', destination = here + '/tests/testfiles/contents/app', ++ b.add('dir', 'default-owned', destination = here + '/tests/testfiles/contents/app', + ... path = '/dir1', + ... relative = False) +- >>> b.entry(here + '/tests/testfiles/contents/app/dir1') #doctest: +ELLIPSIS ++ b.entry(here + '/tests/testfiles/contents/app/dir1') #doctest: +ELLIPSIS + 'dir 0 default-owned ".../tests/testfiles/contents/app/dir1" ... 0 ' + + Q: Is the full link to the target what we want? + A: Yes, since the link will still be ok even if we move the directory. + +- >>> b.add('sym', 'virtual', ++ b.add('sym', 'virtual', + ... destination = here + '/tests/testfiles/contents/app/', + ... path = '/test3', relative = True) +- >>> b.entry(here + '/tests/testfiles/contents/app/test3') #doctest: +ELLIPSIS ++ b.entry(here + '/tests/testfiles/contents/app/test3') #doctest: +ELLIPSIS + 'sym 1 virtual "test3" ... 0 .../tests/testfiles/contents/app/test1' + +- >>> b.db_print() #doctest: +ELLIPSIS ++ b.db_print() #doctest: +ELLIPSIS + file 1 config-owned "test1" ... d8e8fca2dc0f896fd7cb4cb0031ba249 + file 1 config-owned "test2" ... d8e8fca2dc0f896fd7cb4cb0031ba249 + sym 1 virtual "test3" ... 0 .../tests/testfiles/contents/app/test1 +diff --git a/WebappConfig/ebuild.py b/WebappConfig/ebuild.py +index 03c0c57..cc23bec 100644 +--- a/WebappConfig/ebuild.py ++++ b/WebappConfig/ebuild.py +@@ -201,35 +201,35 @@ class Ebuild: + The procedure from above is repeated to set up the default + environment: + +- >>> import WebappConfig.config +- >>> config = WebappConfig.config.Config() +- >>> config.config.set('USER', 'my_htdocsbase', 'htdocs') +- >>> config.config.set('USER', 'pn', 'horde') +- >>> config.config.set('USER', 'pvr', '3.0.5') +- >>> import os.path +- >>> here = os.path.dirname(os.path.realpath(__file__)) +- >>> config.config.set('USER', 'my_approot', here + +- ... '/tests/testfiles/share-webapps') +- >>> my_approot = config.config.get('USER', 'my_approot') +- >>> my_appdir = my_approot + "/horde/3.0.5" +- >>> config.config.set('USER', 'my_appdir', my_appdir) +- >>> config.config.set('USER', 'my_hookscriptsdir', my_appdir + '/hooks') +- >>> config.config.set('USER', 'my_cgibinbase', 'cgi-bin') +- >>> config.config.set('USER', 'my_errorsbase', 'error') +- >>> config.config.set('USER', 'my_iconsbase', 'icons') +- >>> config.config.set('USER', 'my_serverconfigdir', '/'.join([my_appdir,'conf'])) +- >>> config.config.set('USER', 'my_hostrootdir', '/'.join([my_appdir,'hostroot'])) +- >>> config.config.set('USER', 'my_htdocsdir', '/'.join([my_appdir,'htdocs'])) +- >>> config.config.set('USER', 'my_sqlscriptsdir', '/'.join([my_appdir,'sqlscripts'])) ++ "">>> import WebappConfig.config" ++ ">>> config = WebappConfig.config.Config()" ++ ">>> config.config.set('USER', 'my_htdocsbase', 'htdocs')" ++ ">>> config.config.set('USER', 'pn', 'horde')" ++ ">>> config.config.set('USER', 'pvr', '3.0.5')" ++ ">>> import os.path" ++ ">>> here = os.path.dirname(os.path.realpath(__file__))" ++ ">>> config.config.set('USER', 'my_approot', here +" ++ "... '/tests/testfiles/share-webapps')" ++ ">>> my_approot = config.config.get('USER', 'my_approot')" ++ ">>> my_appdir = my_approot + "/horde/3.0.5"" ++ ">>> config.config.set('USER', 'my_appdir', my_appdir)" ++ ">>> config.config.set('USER', 'my_hookscriptsdir', my_appdir + '/hooks')" ++ ">>> config.config.set('USER', 'my_cgibinbase', 'cgi-bin')" ++ ">>> config.config.set('USER', 'my_errorsbase', 'error')" ++ ">>> config.config.set('USER', 'my_iconsbase', 'icons')" ++ ">>> config.config.set('USER', 'my_serverconfigdir', '/'.join([my_appdir,'conf']))" ++ ">>> config.config.set('USER', 'my_hostrootdir', '/'.join([my_appdir,'hostroot']))" ++ ">>> config.config.set('USER', 'my_htdocsdir', '/'.join([my_appdir,'htdocs']))" ++ ">>> config.config.set('USER', 'my_sqlscriptsdir', '/'.join([my_appdir,'sqlscripts']))" + + Time to create the ebuild handler: + +- >>> a = Ebuild(config) ++ ">>> a = Ebuild(config)" + + The dummy post-install file should display all the variables + that are exported here: + +- >>> a.show_postinst() #doctest: +ELLIPSIS ++ ">>> a.show_postinst() #doctest: +ELLIPSIS + <BLANKLINE> + ================================================================= + POST-INSTALL INSTRUCTIONS +@@ -270,7 +270,7 @@ class Ebuild: + PVR: 3.0.5 + <BLANKLINE> + ================================================================= +- <BLANKLINE> ++ <BLANKLINE>" + ''' + + v_root = self.get_config('vhost_root') +-- +1.8.3.2 + diff --git a/app-admin/webapp-config/files/webapp-config-1.53-sources-function.sh-from-lib-gentoo.patch b/app-admin/webapp-config/files/webapp-config-1.53-sources-function.sh-from-lib-gentoo.patch new file mode 100644 index 000000000000..06a924a426be --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.53-sources-function.sh-from-lib-gentoo.patch @@ -0,0 +1,25 @@ +From ff7ba0d89c79584f14a8137d886a656a9af6de5c Mon Sep 17 00:00:00 2001 +From: Devan Franchini <twitch153@gentoo.org> +Date: Sat, 27 Dec 2014 20:43:08 -0500 +Subject: [PATCH] webapp-cleaner: sources function.sh from /lib/gentoo + +--- + sbin/webapp-cleaner | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/sbin/webapp-cleaner b/sbin/webapp-cleaner +index bfec623..52e44ac 100755 +--- a/sbin/webapp-cleaner ++++ b/sbin/webapp-cleaner +@@ -13,7 +13,7 @@ CMD="emerge -Cav" + WEBAPP_DIR="/usr/share/webapps" + WEBAPP_CONFIG= + +-[[ -z ${RC_GOT_FUNCTIONS} ]] && source /etc/init.d/functions.sh ++[[ -z ${RC_GOT_FUNCTIONS} ]] && source /lib/gentoo/functions.sh + + function help() { + echo "Remove obsolete and unused versions of web applications" +-- +2.0.5 + diff --git a/app-admin/webapp-config/files/webapp-config-1.54-pvr-check.patch b/app-admin/webapp-config/files/webapp-config-1.54-pvr-check.patch new file mode 100644 index 000000000000..9a35ad70cafb --- /dev/null +++ b/app-admin/webapp-config/files/webapp-config-1.54-pvr-check.patch @@ -0,0 +1,49 @@ +commit 9e251c7574d074e424ea19024f743c754f321979 +Author: Devan Franchini <twitch153@gentoo.org> +Date: Fri Jul 10 21:25:17 2015 -0400 + + config.py: Fixes package version checking regression + + Previously webapp-config would not do any sanity checks when + setting the package version. After adding a sanity check in 1.54 + I made the mistake of not being flexible enough and this caused + a regression that prevented web apps with versions such as + "20140929d"[1] to be installed. This commit fixes that while still + allowing for some sanity checking. + + [1]: https://github.com/gentoo/webapp-config/issues/2 + +diff --git a/WebappConfig/config.py b/WebappConfig/config.py +index 6c915c3..3a176a0 100644 +--- a/WebappConfig/config.py ++++ b/WebappConfig/config.py +@@ -996,17 +996,20 @@ class Config: + OUT.die('Invalid package name') + + if len(args) > 1: +- argsvr = args[1].split('.') +- if len(argsvr) == 1: +- OUT.die('Invalid package version: %(pvr)s' ++ pvr = args[1] ++ has_int = False # A package version should have at least one ++ # numerical value, but we want to allow for ++ # the flexibility of having any alphanumeric ++ # value while checking to make sure it's sane. ++ ++ for char in pvr: ++ if char.isdigit(): ++ has_int = True ++ ++ if not has_int: ++ OUT.die('Invalid package version: "%(pvr)s"' + % {'pvr': args[1]}) + +- pvr = '' +- for i in range(0, len(argsvr)): +- if not i == len(argsvr) - 1: +- pvr += argsvr[i] + '.' +- else: +- pvr += argsvr[i] + self.config.set('USER', 'pvr', pvr) + + if (not options['dir'] and diff --git a/app-admin/webapp-config/metadata.xml b/app-admin/webapp-config/metadata.xml new file mode 100644 index 000000000000..c2253fc5d9b9 --- /dev/null +++ b/app-admin/webapp-config/metadata.xml @@ -0,0 +1,16 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <herd>web-apps</herd> + <maintainer> + <email>twitch153@gentoo.org</email> + <name>Devan Franchini</name> + </maintainer> + <maintainer> + <email>blueness@gentoo.org</email> + <name>Anthony G. Basile</name> + </maintainer> + <use> + <flag name="portage">Propagete python_targets dependencies to sys-apps/portage</flag> + </use> +</pkgmetadata> diff --git a/app-admin/webapp-config/webapp-config-1.52-r1.ebuild b/app-admin/webapp-config/webapp-config-1.52-r1.ebuild new file mode 100644 index 000000000000..278cdfe676f0 --- /dev/null +++ b/app-admin/webapp-config/webapp-config-1.52-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python{2_7,3_3} ) + +inherit distutils-r1 + +SRC_URI="http://dev.gentoo.org/~twitch153/${PN}/${P}.tar.bz2" +KEYWORDS="alpha amd64 arm hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd" + +DESCRIPTION="Gentoo's installer for web-based applications" +HOMEPAGE="http://sourceforge.net/projects/webapp-config/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+portage" + +DEPEND="app-text/xmlto + !dev-python/configparser" +RDEPEND="portage? ( sys-apps/portage[${PYTHON_USEDEP}] )" + +python_prepare() { + epatch "${FILESDIR}/${P}-nulls-doctest.patch" +} + +python_compile_all() { + emake -C doc/ +} + +python_install() { + # According to this discussion: + # http://mail.python.org/pipermail/distutils-sig/2004-February/003713.html + # distutils does not provide for specifying two different script install + # locations. Since we only install one script here the following should + # be ok + distutils-r1_python_install --install-scripts="/usr/sbin" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /etc/vhosts + doins config/webapp-config + + keepdir /usr/share/webapps + keepdir /var/db/webapps + + dodoc AUTHORS + doman doc/*.[58] + dohtml doc/*.[58].html +} + +python_test() { + PYTHONPATH="." "${PYTHON}" WebappConfig/tests/dtest.py \ + || die "Testing failed with ${EPYTHON}" +} + +pkg_postinst() { + elog "Now that you have upgraded webapp-config, you **must** update your" + elog "config files in /etc/vhosts/webapp-config before you emerge any" + elog "packages that use webapp-config." +} diff --git a/app-admin/webapp-config/webapp-config-1.53-r2.ebuild b/app-admin/webapp-config/webapp-config-1.53-r2.ebuild new file mode 100644 index 000000000000..df377d591cd7 --- /dev/null +++ b/app-admin/webapp-config/webapp-config-1.53-r2.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +RESTRICT="test" + +PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy ) + +inherit distutils-r1 + +SRC_URI="http://dev.gentoo.org/~twitch153/${PN}/${P}.tar.bz2" +KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~x86-fbsd" + +DESCRIPTION="Gentoo's installer for web-based applications" +HOMEPAGE="http://sourceforge.net/projects/webapp-config/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+portage" + +DEPEND="app-text/xmlto + !dev-python/configparser + sys-apps/gentoo-functions" +RDEPEND="portage? ( sys-apps/portage[${PYTHON_USEDEP}] )" + +python_prepare() { + epatch "${FILESDIR}/${P}-sources-function.sh-from-lib-gentoo.patch" +} + +python_compile_all() { + emake -C doc/ +} + +python_install() { + # According to this discussion: + # http://mail.python.org/pipermail/distutils-sig/2004-February/003713.html + # distutils does not provide for specifying two different script install + # locations. Since we only install one script here the following should + # be ok + distutils-r1_python_install --install-scripts="/usr/sbin" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /etc/vhosts + doins config/webapp-config + + keepdir /usr/share/webapps + keepdir /var/db/webapps + + dodoc AUTHORS + doman doc/*.[58] + dohtml doc/*.[58].html +} + +python_test() { + PYTHONPATH="." "${PYTHON}" WebappConfig/tests/dtest.py \ + || die "Testing failed with ${EPYTHON}" +} + +pkg_postinst() { + elog "Now that you have upgraded webapp-config, you **must** update your" + elog "config files in /etc/vhosts/webapp-config before you emerge any" + elog "packages that use webapp-config." +} diff --git a/app-admin/webapp-config/webapp-config-1.54-r1.ebuild b/app-admin/webapp-config/webapp-config-1.54-r1.ebuild new file mode 100644 index 000000000000..e16f3092c2f1 --- /dev/null +++ b/app-admin/webapp-config/webapp-config-1.54-r1.ebuild @@ -0,0 +1,65 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy ) + +inherit distutils-r1 + +SRC_URI="http://dev.gentoo.org/~twitch153/${PN}/${P}.tar.bz2" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" + +DESCRIPTION="Gentoo's installer for web-based applications" +HOMEPAGE="http://sourceforge.net/projects/webapp-config/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+portage" + +DEPEND="app-text/xmlto + sys-apps/gentoo-functions" +RDEPEND="portage? ( sys-apps/portage[${PYTHON_USEDEP}] )" + +python_prepare() { + epatch "${FILESDIR}/${P}-pvr-check.patch" +} +python_compile_all() { + emake -C doc/ +} + +python_install() { + # According to this discussion: + # http://mail.python.org/pipermail/distutils-sig/2004-February/003713.html + # distutils does not provide for specifying two different script install + # locations. Since we only install one script here the following should + # be ok + distutils-r1_python_install --install-scripts="/usr/sbin" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /etc/vhosts + doins config/webapp-config + + keepdir /usr/share/webapps + keepdir /var/db/webapps + + dodoc AUTHORS + doman doc/*.[58] + dohtml doc/*.[58].html +} + +python_test() { + PYTHONPATH="." "${PYTHON}" WebappConfig/tests/external.py \ + || die "Testing failed with ${EPYTHON}" +} + +pkg_postinst() { + elog "webapp-config now requires that all -I/-U/-C commands be followed" + elog "by the package name and package version of the webapp" + elog "eg.) 'webapp-config -d drupal -I drupal 8.0.0_beta10'" + elog "See 'man 8 webapp-config' for more information" +} diff --git a/app-admin/webapp-config/webapp-config-9999.ebuild b/app-admin/webapp-config/webapp-config-9999.ebuild new file mode 100644 index 000000000000..2325439ab7b1 --- /dev/null +++ b/app-admin/webapp-config/webapp-config-9999.ebuild @@ -0,0 +1,69 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI="5" + +PYTHON_COMPAT=( python{2_7,3_3,3_4} pypy ) + +inherit distutils-r1 + +if [[ ${PV} = 9999* ]] +then + EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git" + inherit git-r3 + KEYWORDS="" +else + SRC_URI="http://dev.gentoo.org/~blueness/${PN}/${P}.tar.bz2" + KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd" +fi + +DESCRIPTION="Gentoo's installer for web-based applications" +HOMEPAGE="http://sourceforge.net/projects/webapp-config/" + +LICENSE="GPL-2" +SLOT="0" +IUSE="+portage" + +DEPEND="app-text/xmlto + !dev-python/configparser + sys-apps/gentoo-functions" +RDEPEND="portage? ( sys-apps/portage[${PYTHON_USEDEP}] )" + +python_compile_all() { + emake -C doc/ +} + +python_install() { + # According to this discussion: + # http://mail.python.org/pipermail/distutils-sig/2004-February/003713.html + # distutils does not provide for specifying two different script install + # locations. Since we only install one script here the following should + # be ok + distutils-r1_python_install --install-scripts="/usr/sbin" +} + +python_install_all() { + distutils-r1_python_install_all + + insinto /etc/vhosts + doins config/webapp-config + + keepdir /usr/share/webapps + keepdir /var/db/webapps + + dodoc AUTHORS + doman doc/*.[58] + dohtml doc/*.[58].html +} + +python_test() { + PYTHONPATH="." "${PYTHON}" WebappConfig/tests/external.py \ + || die "Testing failed with ${EPYTHON}" +} + +pkg_postinst() { + elog "Now that you have upgraded webapp-config, you **must** update your" + elog "config files in /etc/vhosts/webapp-config before you emerge any" + elog "packages that use webapp-config." +} |