summaryrefslogtreecommitdiff
path: root/app-admin/webapp-config
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /app-admin/webapp-config
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'app-admin/webapp-config')
-rw-r--r--app-admin/webapp-config/Manifest14
-rw-r--r--app-admin/webapp-config/files/webapp-config-1.52-nulls-doctest.patch185
-rw-r--r--app-admin/webapp-config/files/webapp-config-1.53-sources-function.sh-from-lib-gentoo.patch25
-rw-r--r--app-admin/webapp-config/files/webapp-config-1.54-fix-bashism.patch12
-rw-r--r--app-admin/webapp-config/files/webapp-config-1.54-pvr-check.patch49
-rw-r--r--app-admin/webapp-config/metadata.xml22
-rw-r--r--app-admin/webapp-config/webapp-config-1.52-r1.ebuild64
-rw-r--r--app-admin/webapp-config/webapp-config-1.53-r2.ebuild67
-rw-r--r--app-admin/webapp-config/webapp-config-1.54-r2.ebuild65
-rw-r--r--app-admin/webapp-config/webapp-config-1.55-r1.ebuild71
-rw-r--r--app-admin/webapp-config/webapp-config-9999.ebuild78
11 files changed, 652 insertions, 0 deletions
diff --git a/app-admin/webapp-config/Manifest b/app-admin/webapp-config/Manifest
new file mode 100644
index 000000000000..4d78a97fcc43
--- /dev/null
+++ b/app-admin/webapp-config/Manifest
@@ -0,0 +1,14 @@
+AUX webapp-config-1.52-nulls-doctest.patch 9054 BLAKE2B 722e41d0585580a7137aeeca48d93e9574cb69246ae45128735197f19df21c360cb945fc72053860a5bc9f35573488554ed0b2fe9cb5c1ae9bb27e9568496f4e SHA512 3e1fa14a1db1a3c6fe505d846e40c47b91d75ffea52daf4f34e9da0713b954b47264d0b4f068e9736bc3d100ee981b461888b9ee8cde9103dcd86eb1b5f5a47f
+AUX webapp-config-1.53-sources-function.sh-from-lib-gentoo.patch 756 BLAKE2B 4f15574025b919b29574ca55d06507e1d727934ced133482b8f75044d6e247ce3c95903cb1da8e928d95fcee9217cdf653cf8793ef78fb9f9fd73b2b533aa7ba SHA512 e67f8e055bd0af7b97eade6dfce40fac411374dc264952ef1f17ffb5a161eed015bbbee512e83e1b533cef352c7dc863a96fa2345ecedaaa72352ddb622b820d
+AUX webapp-config-1.54-fix-bashism.patch 400 BLAKE2B def7896c26a6b8c948b63717058aa6a6eb67ccba45db9a9f2c3018891dad111f73aded150e8663b23e49ad9f7202ecf7c70b17b8dab23b27e424f746fcd42f09 SHA512 2e5080199ded653e07cf0188ca16ad0a505e7dc8230176c2452a4b2934017d7a8696a5d4b2bfcbc92159b36602a391d9c270acf0b7178f10249f5141fa8e22af
+AUX webapp-config-1.54-pvr-check.patch 2095 BLAKE2B ffc28f16af8d69e5c60fc7cfd85ed20ea2d3f1d43400c60e41984d78e33505038ca0928392667763882a3c555117febefd7eea8d0a43b17118d949bb65446e03 SHA512 ee1c38e467ae4670b84d7b8d1cd8d99544898f8816dcc1cce37afb7ae3b8ecdce49f1d61f7f2e2609ec1166c5dffaa639e0705c017f18d0c3b50e72baf99aa96
+DIST webapp-config-1.52.tar.bz2 62951 BLAKE2B 8abc9f5503c9204fdb2d860f819e06a9f75f285bc0190bf1c479caea08754da92a351a12abe026d8600a51d8e33d57d827b027e8a0f9da5a8af1f09daa0de1e5 SHA512 ec616067588e6ab306af067e70bab9d17961aa675f387ee67a2291235ce81638b49a784d9a6c31891b7c78a712f276c3e62c6681a5e496a52c7e6fe7753922ea
+DIST webapp-config-1.53.tar.bz2 63429 BLAKE2B bb13d52a4c19859ff4730df2f7db75452effa23d1864d97aada38137f00ada8eec530f728f1c3ae06ecbed713a2d489b7225db3fc02aeabbf6241d0956761609 SHA512 7d2fc7197d537f2264c26b68b61e69273d2fcd3eec93657db54ba685c8383e7b8245cf05ed2ddd8b72453bf3fbf8f4bc4867e53d608331799df2e6162be14820
+DIST webapp-config-1.54.tar.bz2 58954 BLAKE2B 42a4305c51ccb8bb9db455c6ae2663b5d17c9d477eee3e504569c802e5f0d10183f3e6cd1e747462dcc0559d6ed7ba53a8b5607ed422f34813a33e0e8148bb90 SHA512 fa61e88696eaed130575e5ae9a17ec827aa14aece359e5ba43fa723ad00083def22e44fb02d99fc5ba6000a5949c5ce7aecea9307d2bfae333e202ef111dcd31
+DIST webapp-config-1.55.tar.bz2 72583 BLAKE2B be958dc991f0e1f6835d9c29350b7d97e3f23d52971f6013165ce59a8f4b32ac6262c9719956d1bcdbe60797f07d77910b44a749ae545c4dc15f765525144709 SHA512 44294b276fd036908438cd984ebf70433639caa18d8330bab348433b4f39ea2c42c57fa8de4f0a6198f7875429a3ef9ebe61321c288d910f9be8b3414865f438
+EBUILD webapp-config-1.52-r1.ebuild 1606 BLAKE2B 9f9f8643009e63730bc35ef404784d4883dfc396cf901d1cd13099c49bd8ccd5fea30603d2f8a2951dabcc5f4c9755a1cebde4457e4a26aed54bcce26530d4d8 SHA512 bff85d0cd35afc3fc99525ea34db8a6a49c0aa56b91ba4e8a6ad5dab9f5a34880b7f193166c0cdc40d37e51741306e091a080dfb363cc5d5401a315fce0d4d79
+EBUILD webapp-config-1.53-r2.ebuild 1690 BLAKE2B 07202fd26910ab49aeaeb12ccbacde118d19bbb99e748fa454add902b38fcbfe7b4444c668ffe3c0c7727f2915fb7fd687893d67c178d3f988d89f8deafee7b4 SHA512 3d4ba6d9bfae336fab02b3fcd5b5d11b7c28dbdaf2d32594e98ad79c321914af33cc9c761d7fb7b6b4f734e35f8d47734712d2866ca7981e4c4b296135638b46
+EBUILD webapp-config-1.54-r2.ebuild 1743 BLAKE2B 4fd352e2f29ba7289935662e424a9cbdc1e484b2021f027cb60c102aa790621535a8861e0a0f9dae07556ee303d1ffc109735c7e0db1beb2c7f0d0434ec04a55 SHA512 be5330d0ecd6d05d8a5a539baaffd1919079bbbf22eb508789ef306a0e9cdc513268a3ca19fde73ebc7182adff30b34813fe47d1226b8d66758fd6f2da8525d3
+EBUILD webapp-config-1.55-r1.ebuild 1749 BLAKE2B 858936e485482eae2d04f3baecc698aa4af9fa22027109e2cd930e16c0adea7621db2b0df21709b920b10a2207f53e8ff82276c05463bf65bc6075f1871f01ca SHA512 4bb2d185ac159bf870d32333d06cf31d5958c5692a983ae23b6fa6fcad2d358bf30ba4268942a9c5e04a9308b7ecb26b97df1d514a5fd6b10c229f8d4ac2aefb
+EBUILD webapp-config-9999.ebuild 1875 BLAKE2B 34626a203c536160711fdc2a90129c33d1223f1275dd5ab21564454c0ac50addb18a6688677936539f357a0fd56f1ec1f454090b43975c3d6b521d308e29bd31 SHA512 badc7e1f37c48da80e1550a8486fc537a644d06fdbaa5f598c2389c29383f096b109b7274827e1b99d23a4a0490761cbcea24e1d7fe2e170273676dc9cfa5b49
+MISC metadata.xml 661 BLAKE2B f82847c0e1fb4f92339258755eb15899b5f4ce6e0acbc8bfcc1dc428e9c76f335b40f8b878de5de009bf09dd7e4e7f119104b4fdac78179b8e2a5abe5d2f87f4 SHA512 bd5161502c6e93cef50b1206247f26920d011d87ca9b9d83217f30a2c29e67728262804d42b13eeb956b69432adbf27d9f42ca75b48a92b6335c9eac25a9976c
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-fix-bashism.patch b/app-admin/webapp-config/files/webapp-config-1.54-fix-bashism.patch
new file mode 100644
index 000000000000..9958c142d4a7
--- /dev/null
+++ b/app-admin/webapp-config/files/webapp-config-1.54-fix-bashism.patch
@@ -0,0 +1,12 @@
+diff -Naur WebappConfig.old/ebuild.py WebappConfig/ebuild.py
+--- WebappConfig/ebuild.py
++++ WebappConfig/ebuild.py
+@@ -101,7 +101,7 @@
+
+ for i in post_instructions:
+ i = i.replace('"', '\\"')
+- post.append(os.popen('echo -n "' + i + '"\n').read()[:-1])
++ post.append(os.popen('printf "' + i + '"\n').read()[:-1])
+
+ post = post + [
+ '',
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..bf2371089c83
--- /dev/null
+++ b/app-admin/webapp-config/metadata.xml
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>twitch153@gentoo.org</email>
+ <name>Devan Franchini</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>blueness@gentoo.org</email>
+ <name>Anthony G. Basile</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>web-apps@gentoo.org</email>
+ <name>Gentoo Webapps</name>
+ </maintainer>
+ <use>
+ <flag name="portage">Propagete python_targets dependencies to sys-apps/portage</flag>
+ </use>
+ <upstream>
+ <remote-id type="sourceforge">webapp-config</remote-id>
+ </upstream>
+</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..e8c416dd5e3a
--- /dev/null
+++ b/app-admin/webapp-config/webapp-config-1.52-r1.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit distutils-r1
+
+SRC_URI="https://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="https://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="${EPREFIX}/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..e7084845cb46
--- /dev/null
+++ b/app-admin/webapp-config/webapp-config-1.53-r2.ebuild
@@ -0,0 +1,67 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="5"
+
+RESTRICT="test"
+
+PYTHON_COMPAT=( python{2_7,3_4} pypy )
+
+inherit distutils-r1
+
+SRC_URI="https://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="https://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="${EPREFIX}/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-r2.ebuild b/app-admin/webapp-config/webapp-config-1.54-r2.ebuild
new file mode 100644
index 000000000000..d364cbb45113
--- /dev/null
+++ b/app-admin/webapp-config/webapp-config-1.54-r2.ebuild
@@ -0,0 +1,65 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} pypy )
+
+inherit distutils-r1
+
+SRC_URI="https://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="https://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"\
+ "${FILESDIR}/${P}-fix-bashism.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="${EPREFIX}/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-1.55-r1.ebuild b/app-admin/webapp-config/webapp-config-1.55-r1.ebuild
new file mode 100644
index 000000000000..be1d9c659f8b
--- /dev/null
+++ b/app-admin/webapp-config/webapp-config-1.55-r1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} pypy )
+
+inherit distutils-r1 prefix
+
+SRC_URI="https://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="https://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}]
+ sys-apps/portage-mgorny[${PYTHON_USEDEP}]
+ )
+ )"
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ eprefixify WebappConfig/eprefix.py config/webapp-config
+}
+
+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="${EPREFIX}/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."
+}
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..08cda6204783
--- /dev/null
+++ b/app-admin/webapp-config/webapp-config-9999.ebuild
@@ -0,0 +1,78 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} pypy )
+
+inherit distutils-r1 prefix
+
+if [[ ${PV} = 9999* ]]
+then
+ EGIT_REPO_URI="git://anongit.gentoo.org/proj/${PN}.git"
+ inherit git-r3
+ KEYWORDS=""
+else
+ SRC_URI="https://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="https://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}]
+ sys-apps/portage-mgorny[${PYTHON_USEDEP}]
+ )
+ )"
+
+python_prepare_all() {
+ distutils-r1_python_prepare_all
+ eprefixify WebappConfig/eprefix.py config/webapp-config
+}
+
+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="${EPREFIX}/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."
+}