summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <emulatorman@parabola.nu>2015-12-11 01:20:38 -0300
committerAndré Fabian Silva Delgado <emulatorman@parabola.nu>2015-12-11 01:20:38 -0300
commit40a385851bde11f34ddc58395e34ed4dceacb3f9 (patch)
tree0678f37cf35d3990ade643d0b47bce165a3c66ac
parentb952111fe4fc77ed42ee9cca2ed360b9fa322c96 (diff)
parent47dea6fb6bc00d10b55b1582bd1a76ce82360822 (diff)
downloadabslibre-40a385851bde11f34ddc58395e34ed4dceacb3f9.tar.gz
abslibre-40a385851bde11f34ddc58395e34ed4dceacb3f9.tar.bz2
abslibre-40a385851bde11f34ddc58395e34ed4dceacb3f9.zip
Merge branch 'master' of ssh://projects.parabola.nu/~git/abslibre
-rw-r--r--libre/apache-ant/PKGBUILD176
-rw-r--r--libre/apache-ant/ant.conf4
-rw-r--r--libre/apache-ant/apache-ant-build.patch11
-rw-r--r--libre/apache-ant/apache-ant.csh3
-rw-r--r--libre/apache-ant/apache-ant.install11
-rw-r--r--libre/apache-ant/apache-ant.sh3
-rw-r--r--libre/apache-ant/bin_ant6
-rw-r--r--libre/clojure/LICENSE.txt231
-rw-r--r--libre/clojure/PKGBUILD58
-rw-r--r--libre/clojure/clj.sh138
-rw-r--r--libre/clojure/clojure-replace_asm.patch186
-rw-r--r--libre/clojure/clojure.install5
-rw-r--r--libre/clojure/clojure.sh1
-rw-r--r--libre/java-jline/PKGBUILD50
-rw-r--r--libre/java-jline/build.xml57
-rw-r--r--libre/your-freedom/PKGBUILD6
-rw-r--r--pcr/networkmanager-consolekit/01-org.freedesktop.ModemManager1.rules6
-rw-r--r--pcr/networkmanager-consolekit/01-org.freedesktop.NetworkManager.settings.modify.system.rules6
-rw-r--r--pcr/networkmanager-consolekit/50-org.freedesktop.NetworkManager.rules5
-rw-r--r--pcr/networkmanager-consolekit/NetworkManager.conf3
-rw-r--r--pcr/networkmanager-consolekit/PKGBUILD136
-rw-r--r--pcr/networkmanager-consolekit/dnsmasq-path.patch30
-rw-r--r--pcr/networkmanager-consolekit/git-fixes.patch265
-rw-r--r--pcr/networkmanager-consolekit/networkmanager.install2
-rw-r--r--pcr/networkmanager-consolekit/networkmanager.rc60
-rw-r--r--pcr/openrc-devel/PKGBUILD4
-rw-r--r--pcr/polkit-consolekit/PKGBUILD49
-rw-r--r--pcr/polkit-consolekit/polkit.install9
-rw-r--r--pcr/polkit-consolekit/polkit.pam7
29 files changed, 970 insertions, 558 deletions
diff --git a/libre/apache-ant/PKGBUILD b/libre/apache-ant/PKGBUILD
index af9dde496..8f95874db 100644
--- a/libre/apache-ant/PKGBUILD
+++ b/libre/apache-ant/PKGBUILD
@@ -5,67 +5,45 @@
pkgname=apache-ant
pkgver=1.9.6
-pkgdesc="A Java-based build tool"
-license=('Apache' 'custom:BSD3')
-url="http://ant.apache.org/"
-
-# Arch splits it into pkgname=('apache-ant' 'apache-ant-doc')
-provides=("$pkgname-doc=$pkgver")
-replaces=("$pkgname-libre" "$pkgname-doc")
-conflicts=("$pkgname-libre" "$pkgname-doc")
-
-pkgrel=1.parabola1
+pkgdesc='A java-based build tool'
+pkgrel=1.parabola2
arch=('any')
+url='http://ant.apache.org/'
+license=('APACHE' 'custom:BSD3')
depends=('java-environment')
makedepends=('jh')
-
-_mirror=http://archive.apache.org/dist
-source=($_mirror/ant/source/${pkgname}-${pkgver}-src.tar.bz2{,.asc}
- ${pkgname}.sh ${pkgname}.csh)
-sha512sums=('cfd4fd5da725bb32d85c84f62835ce9511107da89c14487466d58df82d1f2b9ce6e363d3d02b10846c8463cae3287cb787f96f9103121b2e0e045b6027634ff0'
- 'SKIP'
- 'b5bd49bc99161e86f7198181aff7c47c8045e8cac7b7c1e2531dc49b71f1659ae35f90d33b01076b6bf665aa99f951c47ba09a0408b0aca43184f68ebd201768'
- 'c8c4be2928af648e064d4dff9efb71e250d0fb4baa318932a88de04c9c2d328b8b1af0321e732d2f302d25893e1a627da5c72264b8bd6bd50e662ca10e3f50bf')
-# Run this to get the validpgpkeys:
-# curl -s https://www.apache.org/dist/ant/KEYS | gpg --with-colons --with-fingerprint - | grep ^fpr: | cut -d: -f10
-validpgpkeys=(5B1E231C400B113C061C26508104644F51898504
- 47309207D818FFD8DCD3F83F1931D684307A10A5
- 5F35E131F832ED23F761578BEFA3E779EDF62C35
- CE8075A251547BEE249BC151A2115AE15F6B8B72
- B36135CBA375AA1ADE562A1C6E947594C152431A
- F54C925C2454F21D86692540A0BFF93DAA0077B0
- 07C69F931EE82E694E73B54203F68CBDDE8884A0
- 9C60C6B3A5A9DF8FEDD299D65BE0BA8CB80602AE
- 14604968898CEB74A5329360AEB01A153B7C75B1
- 5CDF153E81AB0522A1E5BFBE483C23C67BF8BE8E
- 7B8E57E91F116BECF9ACE6AF37A0E062971731FB
- F19E751B68B907C4F2E6B7B18D6D0AD09711DBFC
- 06A228AAB83A18A8DF7B84B08614D6AB265B4C63
- 61B656E44615E2AEF78E8DCF0E69F809710038F5
- 0BADE59B0EC24E68C03CA4815EFAD9FE82A7FBCD)
+install=apache-ant.install
+source=(https://www.apache.org/dist/ant/source/${pkgname}-${pkgver}-src.tar.bz2
+ apache-ant.sh
+ apache-ant.csh
+ apache-ant.install
+ bin_ant
+ ant.conf
+ apache-ant-build.patch)
+sha256sums=('2ad98dd3a4805452e546e0f5b682360370ae11692a2157fff8ec6d177c957123'
+ '182b9212610790966d3a018d3cbab2e5327dd9fd11dc15dd1f377853216f5718'
+ '919a3ab1acae1d0d190fe6e0034b00975caab40e55359a720bfccd098fe2d995'
+ '3de451d0f963ba96e83f4e068a8325e3d4fc42b1e5c4818e9d7962ed4f5393b3'
+ '29b443ae3af7e246b4ff0b5ec9f023ae95992db1a010a362e70ca7a65a6df461'
+ 'b86ce60f61cbd85a9faa61d698b0fc4607f1ff375cd15673aee57f053012eacb'
+ '3294d6714b276f446517f699d2a26e01ae1738c0adccf9a454ea58454f513687')
# This list is adapted from https://ant.apache.org/manual/install.html#librarydependencies
# The format is:
# jarname:description:pkgname:jarpath
_library_dependencies=(
- #jakarta-regexp-1.3.jar:Disregard
jakarta-oro-2.0.8.jar:'<ftp task>':jakarta-oro:/usr/share/java/jakarta-oro.jar
junit.jar:'<junit> task':junit:/usr/share/java/junit.jar
xalan.jar:'<junitreport> task':xalan-java:/usr/share/java/xalan.jar
antlr.jar:'<antlr> task':java-antlr2:/usr/share/java/antlr2.jar
bsf.jar:'<script> task':java-commons-bsf2:/usr/share/java/bsf2.jar
groovy-all.jar:'Groovy with <script> and <scriptdef> tasks':groovy:/usr/share/groovy/embeddable/groovy-all.jar
- #netrexx.jar:'<netrexx> task, Rexx with <script> task':???????:???????
js.jar:'Javascript with <script> task':java-rhino:/usr/share/java/js.jar
jython.jar:'Python with <script> task':jython:/opt/jython/jython.jar
- #jpython.jar:Disregard
- #jacl.jar:'TCL with <script> task':???????:???????
- #tcljava.jar:'TCL with <script> task':???????:???????
- beanshell.jar:'BeanShell with <script> task':'beanshell>=1.3':/usr/share/java/bsh.jar
+ beanshell.jar:'BeanShell with <script> task':'beanshell2':/usr/share/java/bsh.jar
jruby.jar:'Ruby with <script> task':jruby:/opt/jruby/lib/jruby.jar
- #judo.jar:'Judoscript with <script> task':???????:??????
- commons-logging.jar:'CommonsLoggingListener':java-commons-logging:/usr/share/java/commons-logging/commons-logging.jar
- #log4j.jar:'Log4jListener':???????:???????
+ commons-logging.jar:'CommonsLoggingListener':java-commons-logging:/usr/share/java/commons-logging.jar
+ log4j.jar:'Log4jListener':'log4j-1.2':'/usr/share/java/log4j-1.2.jar'
commons-net.jar:'<ftp>, <rexec> and <telnet> tasks':'java-commons-net1>=1.4.0':/usr/share/java/commons-net.jar
bcel.jar:"'classfileset' data type, JavaClassHelper for ClassConstants filter reader":java-bcel:/usr/share/java/bcel.jar
mail.jar:'<mimemail> task, mime encoding with <mail>':java-gnumail:/usr/share/java/gnumail.jar
@@ -73,7 +51,6 @@ _library_dependencies=(
jdepend.jar:'<jdepend> task':java-jdepend:/usr/share/java/jdepend.jar
resolver.jar:"external files for 'xmlcatalog' datatype":java-resolver:/usr/share/java/resolver.jar
jsch.jar:'<sshexec> and <scp> tasks':'java-jsch>=0.1.42':/usr/share/java/jsch.jar
- #jai.jar:'<image> task':???????:???????
)
for _dep in "${_library_dependencies[@]}"; do
@@ -83,76 +60,97 @@ for _dep in "${_library_dependencies[@]}"; do
done
unset _dep _jarname _desc _pkgname _jarpath
-build() {
- # This directory is what becomes
- # http://archive.apache.org/dist/ant/binaries/${pkgname}-${pkgver}-bin.tar.bz2
- # which is what Arch uses
- rm -rf "${srcdir}"/${pkgname}-${pkgver}-bin
- mkdir -p "${srcdir}"/${pkgname}-${pkgver}-bin
+prepare() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ rm -rv lib/optional/*.jar
+ rm -rv src/etc/testcases/taskdefs/conditions/jars/*.jar
+
+ patch -Np1 -i ../apache-ant-build.patch
- cd "${srcdir}"/${pkgname}-${pkgver}
# Symlink to external optional libraries/
local _dep _jarname _desc _pkgname _jarpath
for _dep in "${_library_dependencies[@]}"; do
IFS=: read _jarname _desc _pkgname _jarpath <<<"$_dep"
ln -sfv "${_jarpath}" lib/optional/${_jarname}
done
+}
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
# Build
export JAVA_HOME=/usr/lib/jvm/default
- sh build.sh -Ddist.dir="${srcdir}"/${pkgname}-${pkgver}-bin dist
+ sh build.sh dist
}
package() {
- cd "${srcdir}"/${pkgname}-${pkgver}-bin
+ cd "${srcdir}/${pkgname}-${pkgver}/${pkgbase}-${pkgver}"
source "${srcdir}"/${pkgname}.sh # Get the ANT_HOME env var
- source "/etc/profile.d/jre.sh" # Get the JAVA_HOME env var
-
- ## Install profile.d script
- install -d "${pkgdir}"/etc/profile.d
- install -m755 "${srcdir}"/${pkgname}.{csh,sh} "${pkgdir}"/etc/profile.d/
## Install the main distribution
- install -d "${pkgdir}"/${ANT_HOME}
- cp -Rp * "${pkgdir}"/${ANT_HOME}
+ install -d "${pkgdir}/${ANT_HOME}"
+
+ install -d "${pkgdir}/etc/${pkgname}"
+ cp -Rp etc/* "${pkgdir}/etc/${pkgname}"
+ rm "${pkgdir}/etc/${pkgname}/ant-bootstrap.jar"
+ ln -s /etc/${pkgname} "${pkgdir}${ANT_HOME}/etc"
+
+ install -d "${pkgdir}${ANT_HOME}/bin"
+ find bin -type f -a ! -name \*.bat -a ! -name \*.cmd \
+ -exec install -m755 {} "${pkgdir}${ANT_HOME}/bin" \;
+
+ install -Dm755 "${srcdir}/bin_ant" "${pkgdir}/usr/bin/ant"
+ install -Dm644 "${srcdir}/ant.conf" "${pkgdir}/etc/apache-ant/ant.conf"
- ## Fix the distribution
- # Remove Windows .bat/.cmd files
- rm -f "${pkgdir}"/${ANT_HOME}/bin/*.{bat,cmd}
# Fix python2 path
- sed -i 's|/usr/bin/python|/usr/bin/python2|' "${pkgdir}"/${ANT_HOME}/bin/runant.py
+ sed -i 's|/usr/bin/python|/usr/bin/python2|' "${pkgdir}/${ANT_HOME}/bin/runant.py"
+
+ ## Install profile.d script
+ install -d "${pkgdir}/etc/profile.d"
+ install -m755 "${srcdir}"/apache-ant.{csh,sh} "${pkgdir}/etc/profile.d/"
+
# Symlink to external optional libraries
+ install -d "${pkgdir}/usr/share/apache-ant/lib"
local _dep _jarname _desc _pkgname _jarpath
for _dep in "${_library_dependencies[@]}"; do
IFS=: read _jarname _desc _pkgname _jarpath <<<"$_dep"
ln -svfr "${pkgdir}/${_jarpath}" "${pkgdir}${ANT_HOME}/lib/${_jarname}"
done
- ## Symlink the /opt distribution to the normal places
-
- cd "${pkgdir}"/${ANT_HOME}/lib
- local pom a
- for pom in *.pom; do
- a=${pom%.pom}
- base=$(jh mvn-basename org.apache.ant $a $pkgver)
- install -d "${pkgdir}/${base%/*}"
- ln -sfvr "${pkgdir}/${ANT_HOME}/lib/$a.pom" "${pkgdir}/${base}.pom"
- if [[ -e "${pkgdir}/${ANT_HOME}/lib/$a.jar" ]]; then
- ln -sfvr "${pkgdir}/${ANT_HOME}/lib/$a.jar" "${pkgdir}/${base}.jar"
+ ## Install Maven artifacts, except 'ant-jai' and 'ant-netrexx'
+ cd lib
+ rm {ant-jai,ant-netrexx}.{jar,pom}
+ install -d "${pkgdir}/usr/share/java/${pkgname}"
+
+ export DESTDIR=${pkgdir}
+ for artifact in $(printf '%s\n' *.pom|sed 's/\.pom$//'); do
+ if [[ -f "${artifact}.jar" ]]; then
+ # This artifact has a jar file
+ jh mvn-install "org.apache.ant" ${artifact} ${pkgver} \
+ "${artifact}.pom" \
+ "${artifact}.jar" \
+ "${artifact}.jar"
+
+ # Symlink them to /usr/share/java
+ ln -s "/usr/share/java/${artifact}.jar" \
+ "${pkgdir}/usr/share/java/${artifact}-${pkgver}.jar"
+ ln -s "/usr/share/java/${artifact}.jar" \
+ "${pkgdir}/usr/share/java/apache-ant/${artifact}.jar"
+ ln -s "/usr/share/java/${artifact}.jar" \
+ "${pkgdir}/usr/share/apache-ant/lib/${artifact}.jar"
+ else
+ # This artifact is just a pom
+ jh mvn-install "org.apache.ant" ${artifact} ${pkgver} \
+ "${artifact}.pom"
fi
done
- cd "${pkgdir}"/${ANT_HOME}/bin
- install -d "${pkgdir}"/usr/bin
- local prog
- for prog in *; do
- ln -sfvr "${pkgdir}/${ANT_HOME}/bin/$prog" "${pkgdir}/usr/bin/$prog"
- done
install -d "${pkgdir}"/usr/share/{doc,licenses}/${pkgname}
- ln -sfvrT "${pkgdir}/${ANT_HOME}/README" "${pkgdir}/usr/share/doc/${pkgname}/README"
- ln -sfvrT "${pkgdir}/${ANT_HOME}/WHATSNEW" "${pkgdir}/usr/share/doc/${pkgname}/WHATSNEW"
- ln -sfvrT "${pkgdir}/${ANT_HOME}/manual" "${pkgdir}/usr/share/doc/${pkgname}/html"
- ln -sfvrT "${pkgdir}/${ANT_HOME}/LICENSE" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
- ln -sfvrT "${pkgdir}/${ANT_HOME}/NOTICE" "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE"
- mv -T "${pkgdir}/${ANT_HOME}/etc" "${pkgdir}/etc/${pkgname}"
- ln -sfvrT "${pkgdir}/etc/${pkgname}" "${pkgdir}/${ANT_HOME}/etc"
+
+ # Install documentation
+ cp "../README" "../WHATSNEW" "${pkgdir}/usr/share/doc/${pkgname}"
+ cp -r "../manual" "${pkgdir}/usr/share/doc/${pkgname}/html"
+
+ # Install license
+ install -Dm644 "../LICENSE" "../NOTICE" "${pkgdir}/usr/share/licenses/${pkgname}"
}
diff --git a/libre/apache-ant/ant.conf b/libre/apache-ant/ant.conf
new file mode 100644
index 000000000..10db6db73
--- /dev/null
+++ b/libre/apache-ant/ant.conf
@@ -0,0 +1,4 @@
+# Apache Ant start script configuration file
+
+# Optional jars and their dependencies
+OPT_JAR_LIST=/usr/share/java/junit.jar
diff --git a/libre/apache-ant/apache-ant-build.patch b/libre/apache-ant/apache-ant-build.patch
new file mode 100644
index 000000000..dc1d4b455
--- /dev/null
+++ b/libre/apache-ant/apache-ant-build.patch
@@ -0,0 +1,11 @@
+--- apache-ant-1.9.6.orig/build.xml 2015-06-28 23:46:12.000000000 -0500
++++ apache-ant-1.9.6/build.xml 2015-12-09 22:07:51.217674735 -0500
+@@ -899,7 +899,7 @@
+ ===================================================================
+ -->
+ <target name="dist-lite"
+- depends="jars,test-jar"
++ depends="jars"
+ description="--> creates a minimum distribution to run Apache Ant">
+
+ <mkdir dir="${dist.dir}"/>
diff --git a/libre/apache-ant/apache-ant.csh b/libre/apache-ant/apache-ant.csh
index fdc04b2f8..a19392b56 100644
--- a/libre/apache-ant/apache-ant.csh
+++ b/libre/apache-ant/apache-ant.csh
@@ -1,2 +1 @@
-#!/bin/csh
-setenv ANT_HOME /opt/apache-ant
+setenv ANT_HOME /usr/share/apache-ant
diff --git a/libre/apache-ant/apache-ant.install b/libre/apache-ant/apache-ant.install
new file mode 100644
index 000000000..6d444337c
--- /dev/null
+++ b/libre/apache-ant/apache-ant.install
@@ -0,0 +1,11 @@
+post_install() {
+ # Small fix after mistake in previous package version
+ if [ -e /usr/share/apache-ant/etc/apache-ant ]
+ then
+ unlink /usr/share/apache-ant/etc/apache-ant
+ fi
+}
+
+post_upgrade() {
+ post_install
+}
diff --git a/libre/apache-ant/apache-ant.sh b/libre/apache-ant/apache-ant.sh
index 6e4809da5..eaa8a54ea 100644
--- a/libre/apache-ant/apache-ant.sh
+++ b/libre/apache-ant/apache-ant.sh
@@ -1,2 +1 @@
-#!/bin/sh
-export ANT_HOME=/opt/apache-ant
+export ANT_HOME=/usr/share/apache-ant
diff --git a/libre/apache-ant/bin_ant b/libre/apache-ant/bin_ant
new file mode 100644
index 000000000..e245dbe52
--- /dev/null
+++ b/libre/apache-ant/bin_ant
@@ -0,0 +1,6 @@
+#!/bin/sh
+
+. /etc/apache-ant/ant.conf
+
+export LOCALCLASSPATH=${OPT_JAR_LIST}
+/usr/share/apache-ant/bin/ant "$@"
diff --git a/libre/clojure/LICENSE.txt b/libre/clojure/LICENSE.txt
new file mode 100644
index 000000000..6d2f00695
--- /dev/null
+++ b/libre/clojure/LICENSE.txt
@@ -0,0 +1,231 @@
+Eclipse Public License - v 1.0
+
+THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE
+PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF
+THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
+
+1. DEFINITIONS
+
+"Contribution" means:
+
+ a) in the case of the initial Contributor, the initial code and
+ documentation distributed under this Agreement, and
+
+ b) in the case of each subsequent Contributor:
+
+ i) changes to the Program, and
+
+ ii) additions to the Program;
+
+where such changes and/or additions to the Program originate from and
+are distributed by that particular Contributor. A Contribution
+'originates' from a Contributor if it was added to the Program by such
+Contributor itself or anyone acting on such Contributor's
+behalf. Contributions do not include additions to the Program which:
+(i) are separate modules of software distributed in conjunction with
+the Program under their own license agreement, and (ii) are not
+derivative works of the Program.
+
+"Contributor" means any person or entity that distributes the Program.
+
+"Licensed Patents" mean patent claims licensable by a Contributor
+which are necessarily infringed by the use or sale of its Contribution
+alone or when combined with the Program.
+
+"Program" means the Contributions distributed in accordance with this
+Agreement.
+
+"Recipient" means anyone who receives the Program under this
+Agreement, including all Contributors.
+
+2. GRANT OF RIGHTS
+
+ a) Subject to the terms of this Agreement, each Contributor hereby
+ grants Recipient a non-exclusive, worldwide, royalty-free
+ copyright license to reproduce, prepare derivative works of,
+ publicly display, publicly perform, distribute and sublicense the
+ Contribution of such Contributor, if any, and such derivative
+ works, in source code and object code form.
+
+ b) Subject to the terms of this Agreement, each Contributor hereby
+ grants Recipient a non-exclusive, worldwide, royalty-free patent
+ license under Licensed Patents to make, use, sell, offer to sell,
+ import and otherwise transfer the Contribution of such
+ Contributor, if any, in source code and object code form. This
+ patent license shall apply to the combination of the Contribution
+ and the Program if, at the time the Contribution is added by the
+ Contributor, such addition of the Contribution causes such
+ combination to be covered by the Licensed Patents. The patent
+ license shall not apply to any other combinations which include
+ the Contribution. No hardware per se is licensed hereunder.
+
+ c) Recipient understands that although each Contributor grants the
+ licenses to its Contributions set forth herein, no assurances are
+ provided by any Contributor that the Program does not infringe
+ the patent or other intellectual property rights of any other
+ entity. Each Contributor disclaims any liability to Recipient for
+ claims brought by any other entity based on infringement of
+ intellectual property rights or otherwise. As a condition to
+ exercising the rights and licenses granted hereunder, each
+ Recipient hereby assumes sole responsibility to secure any other
+ intellectual property rights needed, if any. For example, if a
+ third party patent license is required to allow Recipient to
+ distribute the Program, it is Recipient's responsibility to
+ acquire that license before distributing the Program.
+
+ d) Each Contributor represents that to its knowledge it has
+ sufficient copyright rights in its Contribution, if any, to grant
+ the copyright license set forth in this Agreement.
+
+3. REQUIREMENTS
+
+A Contributor may choose to distribute the Program in object code form
+under its own license agreement, provided that:
+
+ a) it complies with the terms and conditions of this Agreement; and
+
+ b) its license agreement:
+
+ i) effectively disclaims on behalf of all Contributors all
+ warranties and conditions, express and implied, including
+ warranties or conditions of title and non-infringement, and
+ implied warranties or conditions of merchantability and fitness
+ for a particular purpose;
+
+ ii) effectively excludes on behalf of all Contributors all
+ liability for damages, including direct, indirect, special,
+ incidental and consequential damages, such as lost profits;
+
+ iii) states that any provisions which differ from this Agreement
+ are offered by that Contributor alone and not by any other
+ party; and
+
+ iv) states that source code for the Program is available from such
+ Contributor, and informs licensees how to obtain it in a
+ reasonable manner on or through a medium customarily used for
+ software exchange.
+
+When the Program is made available in source code form:
+
+ a) it must be made available under this Agreement; and
+
+ b) a copy of this Agreement must be included with each copy of the Program.
+
+Contributors may not remove or alter any copyright notices contained
+within the Program.
+
+Each Contributor must identify itself as the originator of its
+Contribution, if any, in a manner that reasonably allows subsequent
+Recipients to identify the originator of the Contribution.
+
+4. COMMERCIAL DISTRIBUTION
+
+Commercial distributors of software may accept certain
+responsibilities with respect to end users, business partners and the
+like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a
+commercial product offering should do so in a manner which does not
+create potential liability for other Contributors. Therefore, if a
+Contributor includes the Program in a commercial product offering,
+such Contributor ("Commercial Contributor") hereby agrees to defend
+and indemnify every other Contributor ("Indemnified Contributor")
+against any losses, damages and costs (collectively "Losses") arising
+from claims, lawsuits and other legal actions brought by a third party
+against the Indemnified Contributor to the extent caused by the acts
+or omissions of such Commercial Contributor in connection with its
+distribution of the Program in a commercial product offering. The
+obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property
+infringement. In order to qualify, an Indemnified Contributor must: a)
+promptly notify the Commercial Contributor in writing of such claim,
+and b) allow the Commercial Contributor to control, and cooperate with
+the Commercial Contributor in, the defense and any related settlement
+negotiations. The Indemnified Contributor may participate in any such
+claim at its own expense.
+
+For example, a Contributor might include the Program in a commercial
+product offering, Product X. That Contributor is then a Commercial
+Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance
+claims and warranties are such Commercial Contributor's responsibility
+alone. Under this section, the Commercial Contributor would have to
+defend claims against the other Contributors related to those
+performance claims and warranties, and if a court requires any other
+Contributor to pay any damages as a result, the Commercial Contributor
+must pay those damages.
+
+5. NO WARRANTY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS
+PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY
+WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY
+OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and
+distributing the Program and assumes all risks associated with its
+exercise of rights under this Agreement , including but not limited to
+the risks and costs of program errors, compliance with applicable
+laws, damage to or loss of data, programs or equipment, and
+unavailability or interruption of operations.
+
+6. DISCLAIMER OF LIABILITY
+
+EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR
+ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT,
+INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING
+WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR
+DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED
+HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
+
+7. GENERAL
+
+If any provision of this Agreement is invalid or unenforceable under
+applicable law, it shall not affect the validity or enforceability of
+the remainder of the terms of this Agreement, and without further
+action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.
+
+If Recipient institutes patent litigation against any entity
+(including a cross-claim or counterclaim in a lawsuit) alleging that
+the Program itself (excluding combinations of the Program with other
+software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of
+the date such litigation is filed.
+
+All Recipient's rights under this Agreement shall terminate if it
+fails to comply with any of the material terms or conditions of this
+Agreement and does not cure such failure in a reasonable period of
+time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use
+and distribution of the Program as soon as reasonably
+practicable. However, Recipient's obligations under this Agreement and
+any licenses granted by Recipient relating to the Program shall
+continue and survive.
+
+Everyone is permitted to copy and distribute copies of this Agreement,
+but in order to avoid inconsistency the Agreement is copyrighted and
+may only be modified in the following manner. The Agreement Steward
+reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement
+Steward has the right to modify this Agreement. The Eclipse Foundation
+is the initial Agreement Steward. The Eclipse Foundation may assign
+the responsibility to serve as the Agreement Steward to a suitable
+separate entity. Each new version of the Agreement will be given a
+distinguishing version number. The Program (including Contributions)
+may always be distributed subject to the version of the Agreement
+under which it was received. In addition, after a new version of the
+Agreement is published, Contributor may elect to distribute the
+Program (including its Contributions) under the new version. Except as
+expressly stated in Sections 2(a) and 2(b) above, Recipient receives
+no rights or licenses to the intellectual property of any Contributor
+under this Agreement, whether expressly, by implication, estoppel or
+otherwise. All rights in the Program not expressly granted under this
+Agreement are reserved.
+
+This Agreement is governed by the laws of the State of New York and
+the intellectual property laws of the United States of America. No
+party to this Agreement will bring a legal action under this Agreement
+more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.
diff --git a/libre/clojure/PKGBUILD b/libre/clojure/PKGBUILD
new file mode 100644
index 000000000..203c6792e
--- /dev/null
+++ b/libre/clojure/PKGBUILD
@@ -0,0 +1,58 @@
+# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
+
+pkgname=clojure
+pkgver=1.7.0
+pkgrel=1.parabola1
+pkgdesc='LISP for the JVM'
+url='http://clojure.org/'
+arch=('any')
+license=('EPL')
+depends=('java-environment' 'bash')
+makedepends=('apache-ant' 'classpath' 'git' 'java-asm' 'jh')
+optdepends=('rlwrap: friendlier shell with readline support')
+install='clojure.install'
+source=("$pkgname::git://github.com/clojure/clojure.git#tag=$pkgname-$pkgver"
+ 'clojure-replace_asm.patch'
+ 'LICENSE.txt'
+ 'clj.sh' "$pkgname.sh")
+sha256sums=('SKIP'
+ 'b04cd1381bc78e40271fc18a1ec7d8e45f630a12fdafe571ace746c3426fb003'
+ '9bcd4c6eac491d1c9bbade5b35182a778fc7e08021de30edc387ac2adce75035'
+ '2194819fd417174351172d94e3ccff050479401ca883b57d325a349072200bee'
+ 'b3fa6257dad10fb39851e87563269b80b2473623126595d9c279bbd90e97f052')
+
+prepare() {
+ cd "$pkgname"
+ rm -rv "src/jvm/clojure/asm"
+ patch -Np1 -i ../clojure-replace_asm.patch
+}
+
+build() {
+ cd "$pkgname"
+
+ ant jar javadoc
+}
+
+package() {
+ cd "$pkgname"
+ # Install license file
+ install -Dm644 "${srcdir}/LICENSE.txt" "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt"
+
+ # Install documentation
+ install -d "${pkgdir}/usr/share/doc/${pkgname}"
+ cp -r "target/javadoc" "${pkgdir}/usr/share/doc/${pkgname}"
+
+ # Install Maven artifacts
+ export DESTDIR=${pkgdir}
+ jh mvn-install "org.${pkgname}" ${pkgname} ${pkgver} \
+ "pom.xml" \
+ "${pkgname}-${pkgver}.jar" \
+ "${pkgname}.jar"
+
+ ln -s "/usr/share/java/${pkgname}.jar" \
+ "${pkgdir}/usr/share/java/${pkgname}-${pkgver}.jar"
+
+ install -Dm755 "${srcdir}/clj.sh" "$pkgdir/usr/bin/clj"
+ install -Dm755 "${srcdir}/clj.sh" "$pkgdir/usr/bin/clojure"
+ install -Dm755 "${srcdir}/$pkgname.sh" "$pkgdir/etc/profile.d/$pkgname.sh"
+}
diff --git a/libre/clojure/clj.sh b/libre/clojure/clj.sh
new file mode 100644
index 000000000..9c43acf93
--- /dev/null
+++ b/libre/clojure/clj.sh
@@ -0,0 +1,138 @@
+#!/bin/bash
+#
+# Launcher script for Clojure programs. These environment variables can be
+# used to configure the script:
+#
+# CLOJURE_HOME
+# The root directory where Clojure is installed.
+# CLOJURE_JAVA
+# The name of the java executable used to run Clojure.
+# CLOJURE_JAVA_OPTS
+# Additional options to be passed to the java executable.
+# CLOJURE_CLASSPATH
+# A path to be added to Clojure's classpath.
+# CLOJURE_LIBRARY_PATH
+# A path to be searched for native code such as DLL's or JNI
+# libraries. This gets added to the Java options as
+# "-Djava.library.path=$CLOJURE_LIBRARY_PATH".
+# CLOJURE_LIB
+# This directory, and any jars inside it, will be automatically
+# added to Clojure's classpath.
+#
+# CLOJURE_JLINE
+# This should be the path to Jline jar.
+# TODO:
+# make CLOJURE_LIB a path instead of a single directory
+# allow for adding to CLOJURE_LIB from the command line
+
+usage="\
+usage: clojure [options] [file1 [file2] ...]
+
+Options:
+ --help, -h show this message
+ --java-cmd, -J the Java executable to use
+ --java-opts, -j add options to be passed on to the JVM
+ --classpath, -cp add to Clojure's classpath
+ --library-path, -L add to the path to search for native libraries
+ --verbose, -v print initialization information
+"
+## read ~/.clojurerc for home configuration
+[ -e ~/.clojurerc ] && . ~/.clojurerc
+
+## read ./.clojurerc for project specific configuration
+[ -e ./.clojurerc ] && . ./.clojurerc
+
+if [ ! "$CLOJURE_HOME" ]; then
+ # Find the real path to Clojure's home directory if $0 is a symlink
+ #program="$0"
+ #while [ -h "$program" ]; do
+ # ls=`ls -ld "$program"`
+ # link=`expr "$ls" : '.*-> \(.*\)$'`
+ # if expr "$link" : '.*/.*' >/dev/null; then
+ # program="$link"
+ # else
+ # program="`dirname $program`/$link"
+ # fi
+ #done
+ #script_dir=`dirname "$program"`
+ #relative_clojure_home=`dirname "$script_dir"`
+ #CLOJURE_HOME=`cd "$relative_clojure_home" && pwd`
+ . /etc/profile.d/clojure.sh
+fi
+
+if [ ! "$CLOJURE_JAVA" ]; then
+ CLOJURE_JAVA="java";
+fi
+
+if [ ! "$CLOJURE_JAVA_OPTS" ]; then
+ CLOJURE_JAVA_OPTS="-Dpid=$$"; # set the pid for SLIME
+fi
+
+if [ ! "$CLOJURE_CLASSPATH" ]; then
+ CLOJURE_CLASSPATH="."
+fi
+
+## Add Clojure home jars.
+for jar in "$CLOJURE_HOME"/*.jar; do
+ CLOJURE_CLASSPATH="$CLOJURE_CLASSPATH:$jar"
+done
+
+if [ -d "$CLOJURE_LIB" ]; then
+ CLOJURE_CLASSPATH="$CLOJURE_CLASSPATH:$CLOJURE_LIB"
+ for jar in "$CLOJURE_LIB"/*.jar; do
+ CLOJURE_CLASSPATH="$CLOJURE_CLASSPATH:$jar"
+ done
+fi
+
+# this is now the same for both the repl and for scripts
+main="clojure.main"
+repl=0
+verbose=0
+
+while true; do
+ case $1 in
+ -h|--help)
+ echo "$usage"; exit 1;;
+ -J|--java-cmd)
+ CLOJURE_JAVA="$2"; shift; shift;;
+ -j|--java-opts)
+ CLOJURE_JAVA_OPTS="$CLOJURE_JAVA_OPTS $2"; shift; shift;;
+ -cp|--classpath)
+ CLOJURE_CLASSPATH="$CLOJURE_CLASSPATH:$2"; shift; shift;;
+ -L|--library-path)
+ if [ "$CLOJURE_LIBRARY_PATH" ]; then
+ CLOJURE_LIBRARY_PATH="$CLOJURE_LIBRARY_PATH:$2";
+ else
+ CLOJURE_LIBRARY_PATH="$2";
+ fi
+ shift; shift;;
+ -v|--verbose)
+ verbose=1; shift;;
+ *) break;;
+ esac
+done
+
+[ $verbose -eq 1 ] && echo "$CLOJURE_CLASSPATH"
+
+# If we didn't get any files to load on the commandline, we want to run the
+# repl, with command line editing if available.
+[ $# -eq 0 ] && repl=1
+
+# If the classpath contains the JLine jar, use the JLine console runner
+if expr "$CLOJURE_CLASSPATH" : ".*jline.*\.jar" >/dev/null; then
+ [ $repl -eq 1 ] && jline="jline.ConsoleRunner"
+fi
+
+# Enable rlwrap if present
+if [ $repl -eq 1 ] && [ -z $jline ]; then
+ rlwrap=`type -p rlwrap`
+fi
+
+## Add CLOJURE_LIBRARY_PATH to the Java options if necessary
+if [ -n "$CLOJURE_LIBRARY_PATH" ]; then
+ CLOJURE_JAVA_OPTS="$CLOJURE_JAVA_OPTS -Djava.library.path=$CLOJURE_LIBRARY_PATH"
+fi
+
+cmd=`echo $rlwrap "$CLOJURE_JAVA" "$CLOJURE_JAVA_OPTS" -cp "$CLOJURE_CLASSPATH" $jline $main`
+[ $verbose -eq 1 ] && echo "$cmd" "$@"
+exec `echo $cmd` "$@"
diff --git a/libre/clojure/clojure-replace_asm.patch b/libre/clojure/clojure-replace_asm.patch
new file mode 100644
index 000000000..0c41a37e9
--- /dev/null
+++ b/libre/clojure/clojure-replace_asm.patch
@@ -0,0 +1,186 @@
+--- clojure-1.7.0.orig/build.xml 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/build.xml 2015-12-09 17:37:31.497314803 -0500
+@@ -38,6 +38,7 @@
+ <target name="compile-java" depends="init"
+ description="Compile Java sources.">
+ <javac srcdir="${jsrc}" destdir="${build}" includeJavaRuntime="yes"
++ classpath="/usr/share/java/asm-4.jar:/usr/share/java/asm-commons-4.jar"
+ includeAntRuntime="false"
+ debug="true" source="1.6" target="1.6"/>
+ </target>
+@@ -45,7 +46,7 @@
+ <target name="compile-clojure"
+ description="Compile Clojure sources.">
+ <java classname="clojure.lang.Compile"
+- classpath="${maven.compile.classpath}:${build}:${cljsrc}"
++ classpath="/usr/share/java/asm-4.jar:/usr/share/java/asm-commons-4.jar:${maven.compile.classpath}:${build}:${cljsrc}"
+ failonerror="true"
+ fork="true">
+ <sysproperty key="clojure.compile.path" value="${build}"/>
+@@ -87,7 +88,7 @@
+ <javac srcdir="${jtestsrc}" destdir="${test-classes}" includeJavaRuntime="yes"
+ debug="true" source="1.6" target="1.6" includeantruntime="no"/>
+ <java classname="clojure.lang.Compile"
+- classpath="${test-classes}:${test}:${build}:${cljsrc}"
++ classpath="/usr/share/java/asm-4.jar:/usr/share/java/asm-commons-4.jar:${test-classes}:${test}:${build}:${cljsrc}"
+ failonerror="true"
+ fork="true">
+ <sysproperty key="clojure.compile.path" value="${test-classes}"/>
+@@ -106,6 +107,8 @@
+ <java classname="clojure.main" failonerror="true" fork="true">
+ <classpath>
+ <pathelement path="${maven.test.classpath}"/>
++ <path location="/usr/share/java/asm-4.jar"/>
++ <path location="/usr/share/java/asm-commons-4.jar"/>
+ <path location="${test-classes}"/>
+ <path location="${test}"/>
+ <path location="${build}"/>
+@@ -122,6 +125,8 @@
+ <java classname="clojure.main" failonerror="true" fork="true">
+ <classpath>
+ <pathelement path="${maven.test.classpath}"/>
++ <path location="/usr/share/java/asm-4.jar"/>
++ <path location="/usr/share/java/asm-commons-4.jar"/>
+ <path location="${test-classes}"/>
+ <path location="${test}"/>
+ <path location="${build}"/>
+--- clojure-1.7.0.orig/src/clj/clojure/core.clj 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/src/clj/clojure/core.clj 2015-12-09 17:45:49.203841272 -0500
+@@ -5222,10 +5222,10 @@
+ (.getAnnotation c java.lang.annotation.Retention)]
+ (= (.value r) java.lang.annotation.RetentionPolicy/RUNTIME)))))
+
+-(defn- descriptor [^Class c] (clojure.asm.Type/getDescriptor c))
++(defn- descriptor [^Class c] (org.objectweb.asm.Type/getDescriptor c))
+
+ (declare process-annotation)
+-(defn- add-annotation [^clojure.asm.AnnotationVisitor av name v]
++(defn- add-annotation [^org.objectweb.asm.AnnotationVisitor av name v]
+ (cond
+ (vector? v) (let [avec (.visitArray av name)]
+ (doseq [vval v]
+@@ -5235,7 +5235,7 @@
+ (cond
+ (instance? java.lang.Enum ev)
+ (.visitEnum av name (descriptor (class ev)) (str ev))
+- (class? ev) (.visit av name (clojure.asm.Type/getType ev))
++ (class? ev) (.visit av name (org.objectweb.asm.Type/getType ev))
+ :else (throw (IllegalArgumentException.
+ (str "Unsupported annotation value: " v " of class " (class ev))))))
+ (seq? v) (let [[nested nv] v
+--- clojure-1.7.0.orig/src/clj/clojure/core_proxy.clj 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/src/clj/clojure/core_proxy.clj 2015-12-09 17:47:21.556152289 -0500
+@@ -11,9 +11,9 @@
+ ;;;;;;;;;;;;;;;;;;;;;;;;;;;; proxy ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+ (import
+- '(clojure.asm ClassWriter ClassVisitor Opcodes Type)
++ '(org.objectweb.asm ClassWriter ClassVisitor Opcodes Type)
+ '(java.lang.reflect Modifier Constructor)
+- '(clojure.asm.commons Method GeneratorAdapter)
++ '(org.objectweb.asm.commons Method GeneratorAdapter)
+ '(clojure.lang IProxy Reflector DynamicClassLoader IPersistentMap PersistentHashMap RT))
+
+ (defn method-sig [^java.lang.reflect.Method meth]
+--- clojure-1.7.0.orig/src/clj/clojure/genclass.clj 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/src/clj/clojure/genclass.clj 2015-12-09 17:48:30.376239833 -0500
+@@ -9,8 +9,8 @@
+ (in-ns 'clojure.core)
+
+ (import '(java.lang.reflect Modifier Constructor)
+- '(clojure.asm ClassWriter ClassVisitor Opcodes Type)
+- '(clojure.asm.commons Method GeneratorAdapter)
++ '(org.objectweb.asm ClassWriter ClassVisitor Opcodes Type)
++ '(org.objectweb.asm.commons Method GeneratorAdapter)
+ '(clojure.lang IPersistentMap))
+
+ ;(defn method-sig [^java.lang.reflect.Method meth]
+--- clojure-1.7.0.orig/src/jvm/clojure/lang/Compiler.java 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/src/jvm/clojure/lang/Compiler.java 2015-12-09 17:56:08.474634356 -0500
+@@ -12,11 +12,12 @@
+
+ package clojure.lang;
+
+-//*
++/*
+
+-import clojure.asm.*;
+-import clojure.asm.commons.GeneratorAdapter;
+-import clojure.asm.commons.Method;
++import org.objectweb.asm.*;
++import org.objectweb.asm.commons.GeneratorAdapter;
++import org.objectweb.asm.commons.Method;
++*/
+
+ import java.io.*;
+ import java.lang.reflect.Constructor;
+@@ -26,14 +27,15 @@
+ import java.util.regex.Matcher;
+
+ //*/
+-/*
++///*
+
+ import org.objectweb.asm.*;
+ import org.objectweb.asm.commons.Method;
+ import org.objectweb.asm.commons.GeneratorAdapter;
++/*
+ import org.objectweb.asm.util.TraceClassVisitor;
+ import org.objectweb.asm.util.CheckClassAdapter;
+-//*/
++*/
+
+ public class Compiler implements Opcodes{
+
+--- clojure-1.7.0.orig/src/jvm/clojure/lang/Intrinsics.java 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/src/jvm/clojure/lang/Intrinsics.java 2015-12-09 17:58:29.934629288 -0500
+@@ -12,7 +12,7 @@
+
+ package clojure.lang;
+
+-import clojure.asm.Opcodes;
++import org.objectweb.asm.Opcodes;
+
+ public class Intrinsics implements Opcodes{
+ private static Object[] oa(Object... arr){
+--- clojure-1.7.0.orig/src/clj/clojure/reflect/java.clj 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/src/clj/clojure/reflect/java.clj 2015-12-09 18:02:15.637317716 -0500
+@@ -11,7 +11,7 @@
+
+ (require '[clojure.set :as set]
+ '[clojure.string :as str])
+-(import '[clojure.asm ClassReader ClassVisitor Type Opcodes]
++(import '[org.objectweb.asm ClassReader ClassVisitor Type Opcodes]
+ '[java.lang.reflect Modifier]
+ java.io.InputStream)
+
+--- clojure-1.7.0.orig/test/clojure/test_clojure/reflect.clj 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/test/clojure/test_clojure/reflect.clj 2015-12-09 18:04:43.783663964 -0500
+@@ -25,7 +25,7 @@
+
+ (deftest field-descriptor->class-symbol-test
+ (are [s d] (= s (@#'reflect/field-descriptor->class-symbol d))
+- 'clojure.asm.Type<><> "[[Lclojure/asm/Type;"
++ 'org.objectweb.asm.Type<><> "[[Lclojure/asm/Type;"
+ 'int "I"
+ 'java.lang.Object "Ljava.lang.Object;"))
+
+--- clojure-1.7.0.orig/pom.xml 2015-06-30 09:23:20.000000000 -0500
++++ clojure-1.7.0/pom.xml 2015-12-09 18:12:28.005103036 -0500
+@@ -69,6 +69,16 @@
+ </exclusion>
+ </exclusions>
+ </dependency>
++ <dependency>
++ <groupId>org.ow2.asm</groupId>
++ <artifactId>asm</artifactId>
++ <version>5.0.3</version>
++ </dependency>
++ <dependency>
++ <groupId>org.ow2.asm</groupId>
++ <artifactId>asm-commons</artifactId>
++ <version>5.0.3</version>
++ </dependency>
+ </dependencies>
+
+ <build>
diff --git a/libre/clojure/clojure.install b/libre/clojure/clojure.install
new file mode 100644
index 000000000..7102ef726
--- /dev/null
+++ b/libre/clojure/clojure.install
@@ -0,0 +1,5 @@
+post_install() {
+ echo 'Relogin or source /etc/profile.d/clojure.sh'
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/libre/clojure/clojure.sh b/libre/clojure/clojure.sh
new file mode 100644
index 000000000..5fd8395dc
--- /dev/null
+++ b/libre/clojure/clojure.sh
@@ -0,0 +1 @@
+export CLOJURE_HOME=/usr/share/clojure
diff --git a/libre/java-jline/PKGBUILD b/libre/java-jline/PKGBUILD
new file mode 100644
index 000000000..31cb5f1eb
--- /dev/null
+++ b/libre/java-jline/PKGBUILD
@@ -0,0 +1,50 @@
+# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
+_libname=jline
+pkgname=java-${_libname}
+pkgver=1.0
+pkgrel=3.parabola1
+pkgdesc="Java library for handling console input"
+arch=('any')
+url="http://jline.sourceforge.net/"
+license=('BSD')
+depends=('java-runtime-headless')
+makedepends=('apache-ant' 'jh' 'junit')
+source=("http://downloads.sourceforge.net/project/${_libname}/${_libname}/${pkgver}/${_libname}-${pkgver}.zip"
+ "http://repo.maven.apache.org/maven2/${_libname}/${_libname}/${pkgver}/${_libname}-${pkgver}.pom"
+ "build.xml")
+md5sums=('811dc1c8a351a2e928524bd79eb9e798'
+ 'b45424a0b2557589f2f3eddae5fc4944'
+ '6d198263612535fe617c6d166200c08d')
+
+prepare() {
+ cd "${srcdir}/${_libname}-${pkgver}"
+ rm -v "${_libname}-${pkgver}.jar"
+ mv "${srcdir}/build.xml" .
+}
+
+build() {
+ cd "${srcdir}/${_libname}-${pkgver}"
+
+ ant clean jar javadoc
+}
+
+package() {
+ cd "${srcdir}/${_libname}-${pkgver}"
+
+ # Install license file
+ install -Dm644 LICENSE.txt "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.txt"
+
+ # Install documentation
+ install -d "${pkgdir}/usr/share/doc/${pkgname}"
+ cp -r "api" "${pkgdir}/usr/share/doc/${pkgname}"
+
+ # Install Maven artifacts
+ export DESTDIR=${pkgdir}
+ jh mvn-install ${_libname} ${_libname} ${pkgver} \
+ "${srcdir}/${_libname}-${pkgver}.pom" \
+ "${_libname}.jar" \
+ "${_libname}.jar"
+
+ ln -s "/usr/share/java/${_libname}.jar" \
+ "${pkgdir}/usr/share/java/${_libname}-${pkgver}.jar"
+}
diff --git a/libre/java-jline/build.xml b/libre/java-jline/build.xml
new file mode 100644
index 000000000..72b17e7ab
--- /dev/null
+++ b/libre/java-jline/build.xml
@@ -0,0 +1,57 @@
+<?xml version="1.0" encoding="utf-8"?>
+
+<project default="jar" name="jline" basedir=".">
+ <property name="class.dir" value="build">
+ </property>
+ <property name="source.dir" value="src/src">
+ </property>
+ <property name="doc.dir" value="api">
+ </property>
+ <property name="jar.name" value="jline.jar">
+ </property>
+ <property name="demo-jar.name" value="jline-demo.jar">
+ </property>
+
+ <patternset id="compiler.resources">
+ <include name="**/*.properties"/>
+ <include name="**/*.gz"/>
+ <include name="**/*.gif"/>
+ <include name="**/*.png"/>
+ <include name="**/*.jpg"/>
+ </patternset>
+
+ <target name="clean">
+ <delete dir="${class.dir}" quiet="true" />
+ <delete file="${jar.name}" quiet="true" />
+ <delete file="${demo-jar.name}" quiet="true" />
+ <delete dir="${doc.dir}" quiet="true" />
+ </target>
+
+ <target name="compile">
+ <mkdir dir="${class.dir}" />
+ <javac srcdir="${source.dir}" destdir="${class.dir}"
+ deprecation="true" debug="true" optimize="false" />
+ <copy todir="${class.dir}">
+ <fileset dir="${source.dir}/main/resources">
+ <patternset refid="compiler.resources" />
+ </fileset>
+ </copy>
+ <copy todir="${class.dir}">
+ <fileset dir="${source.dir}/test/resources">
+ <patternset refid="compiler.resources" />
+ </fileset>
+ </copy>
+ </target>
+
+ <target name="jar" description="o Creates the jars" depends="compile">
+ <jar jarfile="${jar.name}" basedir="${class.dir}"
+ includes="**/jline/*.class,**/jline/*.properties" />
+ <jar jarfile="${demo-jar.name}" basedir="${class.dir}" includes="**/example/*"/>
+ </target>
+
+ <target name="javadoc" description="Creates Javadoc documentation">
+ <mkdir dir="${doc.dir}" />
+ <javadoc packagenames="jline" sourcepath="${source.dir}/main/java" destdir="${doc.dir}" />
+ </target>
+
+</project>
diff --git a/libre/your-freedom/PKGBUILD b/libre/your-freedom/PKGBUILD
index 0bfa11ceb..cf865024c 100644
--- a/libre/your-freedom/PKGBUILD
+++ b/libre/your-freedom/PKGBUILD
@@ -5,8 +5,8 @@ pkgdesc="This package conflicts with every nonfree package known to date to ensu
license=('GPL3')
url="https://projects.parabola.nu/blacklist.git"
#url="https://lukeshu.com/git/mirror/parabola/blacklist.git"
-pkgver=20151109
-_gitver=513ca425f187cea2fc5967974137d870ca1369be
+pkgver=20151209
+_gitver=bf7643f01e2be038d6308f8bd4f053f3a0c9593e
pkgrel=1
arch=('any')
@@ -16,7 +16,7 @@ install=${pkgname}.install
makedepends=(librelib)
source=(blacklist-${_gitver}.txt::https://projects.parabola.nu/blacklist.git/plain/blacklist.txt?id=${_gitver})
#source=(blacklist-${_gitver}.txt::https://lukeshu.com/git/mirror/parabola/blacklist.git/plain/blacklist.txt?id=${_gitver})
-md5sums=('e43622be4a8fa684dffa81dc94d33d40')
+md5sums=('ac15d9c1cf727e1dac54e8ef0262d05a')
package() {
cd "$srcdir"
diff --git a/pcr/networkmanager-consolekit/01-org.freedesktop.ModemManager1.rules b/pcr/networkmanager-consolekit/01-org.freedesktop.ModemManager1.rules
new file mode 100644
index 000000000..6df2427c5
--- /dev/null
+++ b/pcr/networkmanager-consolekit/01-org.freedesktop.ModemManager1.rules
@@ -0,0 +1,6 @@
+polkit.addRule(function(action, subject) {
+ if (/^org\.freedesktop\.ModemManager1\.(Device\.Control|Contacts|Messaging|Location)$/.test(action.id) &&
+ subject.isInGroup("network")) {
+ return "yes";
+ }
+});
diff --git a/pcr/networkmanager-consolekit/01-org.freedesktop.NetworkManager.settings.modify.system.rules b/pcr/networkmanager-consolekit/01-org.freedesktop.NetworkManager.settings.modify.system.rules
new file mode 100644
index 000000000..ed4a41f9d
--- /dev/null
+++ b/pcr/networkmanager-consolekit/01-org.freedesktop.NetworkManager.settings.modify.system.rules
@@ -0,0 +1,6 @@
+polkit.addRule(function(action, subject) {
+ if (action.id == "org.freedesktop.NetworkManager.settings.modify.system" &&
+ subject.isInGroup("network")) {
+ return "yes";
+ }
+});
diff --git a/pcr/networkmanager-consolekit/50-org.freedesktop.NetworkManager.rules b/pcr/networkmanager-consolekit/50-org.freedesktop.NetworkManager.rules
new file mode 100644
index 000000000..b6fe9c73f
--- /dev/null
+++ b/pcr/networkmanager-consolekit/50-org.freedesktop.NetworkManager.rules
@@ -0,0 +1,5 @@
+polkit.addRule(function(action, subject) {
+ if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
+ return polkit.Result.YES;
+ }
+});
diff --git a/pcr/networkmanager-consolekit/NetworkManager.conf b/pcr/networkmanager-consolekit/NetworkManager.conf
index 668229628..e01e3c52f 100644
--- a/pcr/networkmanager-consolekit/NetworkManager.conf
+++ b/pcr/networkmanager-consolekit/NetworkManager.conf
@@ -1,7 +1,5 @@
[main]
plugins=keyfile
-dhcp=dhclient
-dns=default
## Set static hostname
#[keyfile]
@@ -10,4 +8,3 @@ dns=default
## HTTP-based connectivity check
#[connectivity]
#uri=http://nmcheck.gnome.org/check_network_status.txt
-#interval=100
diff --git a/pcr/networkmanager-consolekit/PKGBUILD b/pcr/networkmanager-consolekit/PKGBUILD
index 6033cee6a..22b62a7be 100644
--- a/pcr/networkmanager-consolekit/PKGBUILD
+++ b/pcr/networkmanager-consolekit/PKGBUILD
@@ -1,4 +1,5 @@
-# Maintainer (Arch): Alexey D. <lq07829icatm@rambler.ru>
+# Maintainer (Arch): artoo <artoo@manjaro.org>
+# Contributor (Arch): Alexey D. <lq07829icatm@rambler.ru>
# Contributor (Arch): DaZ <daz.root+arch@gmail.coM>
# Contributor (Arch): Lukas Jirkovsky <l.jirkovsky@gmail.com>
# Contributor (Arch): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
@@ -11,39 +12,41 @@
pkgname=networkmanager-consolekit
_pkgname=NetworkManager
-pkgver=1.0.6
-pkgrel=1
+pkgver=1.0.8
+pkgrel=2
_pppver=2.4.7
pkgdesc="NetworkManager with ConsoleKit support for non-systemd systems"
arch=('i686' 'x86_64')
license=('GPL' 'LGPL2.1')
url="http://www.gnome.org/projects/$_pkgname/"
-depends=("libnm-glib>=${pkgver}" 'iproute2' 'libnl' 'polkit-consolekit' 'consolekit'
- 'wpa_supplicant' 'dhclient' 'libsoup' 'libmm-glib' 'libnewt' 'libndp'
- 'libteam' 'libgudev')
-makedepends=('intltool' 'iptables' 'gobject-introspection' 'gtk-doc'
- "ppp=$_pppver" 'modemmanager' 'rp-pppoe' 'vala')
-optdepends=('modemmanager: for modem management service'
- 'dhcpcd: alternative DHCP client; does not support DHCPv6'
- 'iptables: connection sharing'
- 'dnsmasq: connection sharing'
- 'bluez: bluetooth support'
- 'openresolv: resolvconf support'
- 'ppp: dialup connection support')
+depends=('libnm-glib' 'iproute2' 'libnl' 'polkit-consolekit' 'wpa_supplicant' 'dhclient' 'libsoup'
+ 'libmm-glib' 'libnewt' 'libndp' 'libteam' 'libgudev' 'consolekit')
+optdepends=('dnsmasq: connection sharing'
+ 'bluez: Bluetooth support'
+ 'openresolv: resolvconf support'
+ 'ppp: dialup connection support'
+ 'rp-pppoe: ADSL support'
+ 'modemmanager: cellular network support')
+makedepends=('intltool' 'dhclient' 'iptables' 'gobject-introspection' 'gtk-doc' "ppp=$_pppver"
+ 'modemmanager' 'dbus-glib' 'iproute2' 'libnl' 'nss' 'polkit' 'wpa_supplicant' 'libsoup'
+ 'udev' 'libgudev' 'libmm-glib' 'rp-pppoe' 'libnewt' 'libndp' 'libteam' 'vala' 'perl-yaml'
+ 'python2-gobject')
provides=("networkmanager=$pkgver")
-replaces=('networkmanager')
conflicts=('networkmanager')
backup=('etc/NetworkManager/NetworkManager.conf')
install=networkmanager.install
-source=(http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver:0:3}/$_pkgname-$pkgver.tar.xz
- NetworkManager.conf
- disable_set_hostname.patch
- networkmanager.rc
- )
-sha256sums=('38ea002403e3b884ffa9aae25aea431d2a8420f81f4919761c83fb92648254bd'
- '2c6a647b5aec9f3c356d5d95251976a21297c6e64bd8d2a59339f8450a86cb3b'
+source=("http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver:0:3}/$_pkgname-$pkgver.tar.xz"
+ 'disable_set_hostname.patch'
+ 'NetworkManager.conf'
+ '01-org.freedesktop.ModemManager1.rules'
+ '01-org.freedesktop.NetworkManager.settings.modify.system.rules'
+ '50-org.freedesktop.NetworkManager.rules')
+sha256sums=('8bb128950f8a79ff881afadb46dd55e16f952390cf7cb4e06063431e5144937f'
'25056837ea92e559f09563ed817e3e0cd9333be861b8914e45f62ceaae2e0460'
- 'e39a2a0401518abd1d1d060200e2ca0f0854cdc49a5cb286919be177a7cd90fc')
+ '759db295ddae7a6dc6b29211fc0ec08695f875584d456dd146d3679e2c33e2e3'
+ '17b5e3ead960a0d2c3cea3f1549d1e83ada9600f174ab9a96f083abe6d8f962d'
+ '4b815f43de58379e68653d890f529485aec4d2f83f11d050b08b31489d2267c2'
+ '02d9f7d836d297d6ddf39482d86a8573b3e41735b408aa2cd6df22048ec5f6c4')
prepare() {
cd $_pkgname-$pkgver
@@ -53,50 +56,59 @@ prepare() {
}
build() {
- cd $_pkgname-$pkgver
+ cd $_pkgname-$pkgver
+
+ AUTOPOINT="intltoolize -f -c --automake" autoreconf -fi
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --sbindir=/usr/bin \
+ --libexecdir=/usr/lib/networkmanager \
+ --with-crypto=nss \
+ --with-dhclient=/usr/bin/dhclient \
+ --without-dhcpcd \
+ --with-dnsmasq=/usr/bin/dnsmasq \
+ --with-iptables=/usr/bin/iptables \
+ --with-systemdsystemunitdir=/usr/lib/systemd/system \
+ --with-udev-dir=/usr/lib/udev \
+ --with-resolvconf=/usr/bin/resolvconf \
+ --with-pppd=/usr/bin/pppd \
+ --with-pppd-plugin-dir=/usr/lib/pppd/$_pppver \
+ --with-pppoe=/usr/bin/pppoe \
+ --with-kernel-firmware-dir=/usr/lib/firmware \
+ --with-session-tracking=ck \
+ --with-modem-manager-1 \
+ --disable-static \
+ --enable-more-warnings=no \
+ --disable-wimax \
+ --enable-modify-system \
+ --enable-doc \
+ --enable-gtk-doc
- AUTOPOINT="intltoolize -f -c --automake" autoreconf -fi
- ./configure \
- --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --sbindir=/usr/bin \
- --libexecdir=/usr/lib/networkmanager \
- --with-crypto=nss \
- --with-dhclient=/usr/bin/dhclient \
- --without-dhcpcd \
- --with-dnsmasq=/usr/bin/dnsmasq \
- --with-iptables=/usr/bin/iptables \
- --with-systemdsystemunitdir=/usr/lib/systemd/system \
- --with-udev-dir=/usr/lib/udev \
- --with-resolvconf=/usr/bin/resolvconf \
- --with-pppd=/usr/bin/pppd \
- --with-pppd-plugin-dir=/usr/lib/pppd/$_pppver \
- --with-kernel-firmware-dir=/usr/lib/firmware \
- --with-session-tracking=ck \
- --disable-static \
- --enable-more-warnings=no \
- --disable-wimax \
- --enable-modify-system \
- --enable-doc
+ make
- make
}
package() {
- cd $_pkgname-$pkgver
- make DESTDIR="${pkgdir}" install
+ cd $_pkgname-$pkgver
+ make DESTDIR="${pkgdir}" install
+ make DESTDIR="$pkgdir" -C libnm uninstall
+ make DESTDIR="$pkgdir" -C libnm-glib uninstall
+ make DESTDIR="$pkgdir" -C libnm-util uninstall
+ make DESTDIR="$pkgdir" -C vapi uninstall
+
+ install -m644 $srcdir/NetworkManager.conf "$pkgdir/etc/NetworkManager/"
+
+ rm -rf "$pkgdir/usr/include"
+ rm -rf "$pkgdir/usr/lib/pkgconfig"
+ rm -r "${pkgdir}/var/run"
- make DESTDIR="$pkgdir" -C libnm uninstall
- make DESTDIR="$pkgdir" -C libnm-glib uninstall
- make DESTDIR="$pkgdir" -C libnm-util uninstall
- make DESTDIR="$pkgdir" -C vapi uninstall
-
- rm -rf "$pkgdir/usr/include"
- rm -rf "$pkgdir/usr/lib/pkgconfig"
+ install -dm 750 -o polkitd "${pkgdir}"/usr/share/polkit-1/rules.d
+ install -m 644 ${srcdir}/01-org.freedesktop.ModemManager1.rules $pkgdir/usr/share/polkit-1/rules.d/
+ install -m 644 ${srcdir}/01-org.freedesktop.NetworkManager.settings.modify.system.rules $pkgdir/usr/share/polkit-1/rules.d/
- install -D -m644 "${srcdir}/NetworkManager.conf" "${pkgdir}/etc/NetworkManager/NetworkManager.conf"
- install -D -m755 "${srcdir}/networkmanager.rc" "${pkgdir}/etc/rc.d/networkmanager"
+ install -m 644 ${srcdir}/50-org.freedesktop.NetworkManager.rules $pkgdir/usr/share/polkit-1/rules.d/
- rm -r "${pkgdir}/var/run"
+ #chown root:102 "$pkgdir"/{etc,usr/share}/polkit-1/rules.d
+ #chmod 750 "$pkgdir"/{etc,usr/share}/polkit-1/rules.d
}
diff --git a/pcr/networkmanager-consolekit/dnsmasq-path.patch b/pcr/networkmanager-consolekit/dnsmasq-path.patch
deleted file mode 100644
index c0e713266..000000000
--- a/pcr/networkmanager-consolekit/dnsmasq-path.patch
+++ /dev/null
@@ -1,30 +0,0 @@
-diff -u -r NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c
---- NetworkManager-0.9.2.0/src/dns-manager/nm-dns-dnsmasq.c 2011-10-10 23:38:20.000000000 +0200
-+++ NetworkManager-0.9.2.0-dnsmasq/src/dns-manager/nm-dns-dnsmasq.c 2012-03-06 09:07:24.137460927 +0100
-@@ -52,8 +52,11 @@
- find_dnsmasq (void)
- {
- static const char *paths[] = {
-+ "/usr/local/bin/dnsmasq",
- "/usr/local/sbin/dnsmasq",
-+ "/usr/bin/dnsmasq",
- "/usr/sbin/dnsmasq",
-+ "/bin/dnsmasq",
- "/sbin/dnsmasq",
- NULL
- };
-diff -u -r NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c
---- NetworkManager-0.9.2.0/src/dnsmasq-manager/nm-dnsmasq-manager.c 2011-04-19 07:06:22.000000000 +0200
-+++ NetworkManager-0.9.2.0-dnsmasq/src/dnsmasq-manager/nm-dnsmasq-manager.c 2012-03-06 09:07:58.603851818 +0100
-@@ -170,8 +170,11 @@
- nm_find_dnsmasq (void)
- {
- static const char *dnsmasq_binary_paths[] = {
-+ "/usr/local/bin/dnsmasq",
- "/usr/local/sbin/dnsmasq",
-+ "/usr/bin/dnsmasq",
- "/usr/sbin/dnsmasq",
-+ "/bin/dnsmasq",
- "/sbin/dnsmasq",
- NULL
- };
diff --git a/pcr/networkmanager-consolekit/git-fixes.patch b/pcr/networkmanager-consolekit/git-fixes.patch
deleted file mode 100644
index 939d0b1e0..000000000
--- a/pcr/networkmanager-consolekit/git-fixes.patch
+++ /dev/null
@@ -1,265 +0,0 @@
-diff --git a/configure.ac b/configure.ac
-index 94b0758..e61657d 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -4,7 +4,7 @@ dnl The NM version number
- m4_define([nm_major_version], [0])
- m4_define([nm_minor_version], [9])
- m4_define([nm_micro_version], [10])
--m4_define([nm_nano_version], [0])
-+m4_define([nm_nano_version], [1])
- m4_define([nm_version],
- [nm_major_version.nm_minor_version.nm_micro_version.nm_nano_version])
- m4_define([nm_git_sha], [m4_esyscmd([ ( [ -d ./.git/ ] && [ "$(readlink -f ./.git/)" = "$(readlink -f "$(git rev-parse --git-dir 2>/dev/null)" 2>/dev/null)" ] && git rev-parse --verify -q HEAD 2>/dev/null ) || true ])])
-diff --git a/src/devices/nm-device-team.c b/src/devices/nm-device-team.c
-index f3b25e3..51778c1 100644
---- a/src/devices/nm-device-team.c
-+++ b/src/devices/nm-device-team.c
-@@ -51,7 +51,7 @@ G_DEFINE_TYPE (NMDeviceTeam, nm_device_team, NM_TYPE_DEVICE)
-
- #define NM_DEVICE_TEAM_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), NM_TYPE_DEVICE_TEAM, NMDeviceTeamPrivate))
-
--#define NM_TEAM_ERROR (nm_team_error_quark ())
-+#define NM_DEVICE_TEAM_ERROR (nm_device_team_error_quark ())
-
- static gboolean teamd_start (NMDevice *dev, NMSettingTeam *s_team);
-
-@@ -75,7 +75,7 @@ enum {
- /******************************************************************/
-
- static GQuark
--nm_team_error_quark (void)
-+nm_device_team_error_quark (void)
- {
- static GQuark quark = 0;
- if (!quark)
-@@ -890,5 +890,5 @@ nm_device_team_class_init (NMDeviceTeamClass *klass)
- G_TYPE_FROM_CLASS (klass),
- &dbus_glib_nm_device_team_object_info);
-
-- dbus_g_error_domain_register (NM_TEAM_ERROR, NULL, NM_TYPE_TEAM_ERROR);
-+ dbus_g_error_domain_register (NM_DEVICE_TEAM_ERROR, NULL, NM_TYPE_TEAM_ERROR);
- }
-diff --git a/src/devices/nm-device-team.h b/src/devices/nm-device-team.h
-index fe1275c..32bc5fd 100644
---- a/src/devices/nm-device-team.h
-+++ b/src/devices/nm-device-team.h
-@@ -35,9 +35,9 @@ G_BEGIN_DECLS
- #define NM_DEVICE_TEAM_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), NM_TYPE_DEVICE_TEAM, NMDeviceTeamClass))
-
- typedef enum {
-- NM_TEAM_ERROR_CONNECTION_NOT_TEAM = 0, /*< nick=ConnectionNotTeam >*/
-- NM_TEAM_ERROR_CONNECTION_INVALID, /*< nick=ConnectionInvalid >*/
-- NM_TEAM_ERROR_CONNECTION_INCOMPATIBLE, /*< nick=ConnectionIncompatible >*/
-+ NM_DEVICE_TEAM_ERROR_CONNECTION_NOT_TEAM = 0, /*< nick=ConnectionNotTeam >*/
-+ NM_DEVICE_TEAM_ERROR_CONNECTION_INVALID, /*< nick=ConnectionInvalid >*/
-+ NM_DEVICE_TEAM_ERROR_CONNECTION_INCOMPATIBLE, /*< nick=ConnectionIncompatible >*/
- } NMTeamError;
-
- #define NM_DEVICE_TEAM_SLAVES "slaves"
-diff --git a/src/dhcp-manager/nm-dhcp-dhclient-utils.c b/src/dhcp-manager/nm-dhcp-dhclient-utils.c
-index 8527e6c..bc9de12 100644
---- a/src/dhcp-manager/nm-dhcp-dhclient-utils.c
-+++ b/src/dhcp-manager/nm-dhcp-dhclient-utils.c
-@@ -225,7 +225,6 @@ nm_dhcp_dhclient_create_config (const char *interface,
- add_also_request (alsoreq, "dhcp6.name-servers");
- add_also_request (alsoreq, "dhcp6.domain-search");
- add_also_request (alsoreq, "dhcp6.client-id");
-- add_also_request (alsoreq, "dhcp6.server-id");
- } else {
- add_ip4_config (new_contents, dhcp_client_id, hostname);
- add_also_request (alsoreq, "rfc3442-classless-static-routes");
-diff --git a/src/nm-manager.c b/src/nm-manager.c
-index 09a1985..0cf78e3 100644
---- a/src/nm-manager.c
-+++ b/src/nm-manager.c
-@@ -1879,42 +1879,116 @@ factory_component_added_cb (NMDeviceFactory *factory,
- #define PLUGIN_PATH_TAG "NMManager-plugin-path"
- #define PLUGIN_TYPEFUNC_TAG "typefunc"
-
--static void
--load_device_factories (NMManager *self)
-+struct read_device_factory_paths_data {
-+ char *path;
-+ struct stat st;
-+};
-+
-+static gint
-+read_device_factory_paths_sort_fcn (gconstpointer a, gconstpointer b)
-+{
-+ const struct read_device_factory_paths_data *da = a;
-+ const struct read_device_factory_paths_data *db = b;
-+ time_t ta, tb;
-+
-+ ta = MAX (da->st.st_mtime, da->st.st_ctime);
-+ tb = MAX (db->st.st_mtime, db->st.st_ctime);
-+
-+ if (ta < tb)
-+ return 1;
-+ if (ta > tb)
-+ return -1;
-+ return 0;
-+}
-+
-+static char**
-+read_device_factory_paths ()
- {
-- NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (self);
- GDir *dir;
- GError *error = NULL;
- const char *item;
-- char *path;
-- GSList *iter;
-+ GArray *paths;
-+ char **result;
-+ guint i;
-
- dir = g_dir_open (NMPLUGINDIR, 0, &error);
- if (!dir) {
-- nm_log_warn (LOGD_HW, "Failed to open plugin directory %s: %s",
-+ nm_log_warn (LOGD_HW, "device plugin: failed to open directory %s: %s",
- NMPLUGINDIR,
- (error && error->message) ? error->message : "(unknown)");
- g_clear_error (&error);
-- return;
-+ return NULL;
- }
-
-+ paths = g_array_new (FALSE, FALSE, sizeof (struct read_device_factory_paths_data));
-+
- while ((item = g_dir_read_name (dir))) {
-- GModule *plugin;
-- NMDeviceFactory *factory;
-- NMDeviceFactoryCreateFunc create_func;
-- NMDeviceFactoryDeviceTypeFunc type_func;
-- NMDeviceType dev_type;
-- const char *found = NULL;
-+ struct read_device_factory_paths_data data;
-
- if (!g_str_has_prefix (item, PLUGIN_PREFIX))
- continue;
- if (g_str_has_suffix (item, ".la"))
- continue;
-
-- path = g_module_build_path (NMPLUGINDIR, item);
-- g_assert (path);
-- plugin = g_module_open (path, G_MODULE_BIND_LOCAL);
-- g_free (path);
-+ data.path = g_build_filename (NMPLUGINDIR, item, NULL);
-+
-+ if (stat (data.path, &data.st) != 0)
-+ goto continue_with_error;
-+ if (!S_ISREG (data.st.st_mode))
-+ goto continue_silently;
-+ if (data.st.st_uid != 0)
-+ goto continue_with_error;
-+ if (data.st.st_mode & (S_IWGRP | S_IWOTH | S_ISUID))
-+ goto continue_with_error;
-+
-+ g_array_append_val (paths, data);
-+ continue;
-+
-+continue_with_error:
-+ nm_log_dbg (LOGD_HW, "device plugin: skip invalid file %s", data.path);
-+continue_silently:
-+ g_free (data.path);
-+ }
-+ g_dir_close (dir);
-+
-+ /* sort filenames by modification time. */
-+ g_array_sort (paths, read_device_factory_paths_sort_fcn);
-+
-+ result = g_new (char *, paths->len + 1);
-+ for (i = 0; i < paths->len; i++)
-+ result[i] = g_array_index (paths, struct read_device_factory_paths_data, i).path;
-+ result[i] = NULL;
-+
-+ g_array_free (paths, TRUE);
-+ return result;
-+}
-+
-+static void
-+load_device_factories (NMManager *self)
-+{
-+ NMManagerPrivate *priv = NM_MANAGER_GET_PRIVATE (self);
-+ char **path;
-+ char **paths;
-+
-+ paths = read_device_factory_paths ();
-+ if (!paths)
-+ return;
-+
-+ for (path = paths; *path; path++) {
-+ GError *error = NULL;
-+ GModule *plugin;
-+ NMDeviceFactory *factory;
-+ NMDeviceFactoryCreateFunc create_func;
-+ NMDeviceFactoryDeviceTypeFunc type_func;
-+ NMDeviceType dev_type;
-+ const char *found = NULL;
-+ GSList *iter;
-+ const char *item;
-+
-+ item = strrchr (*path, '/');
-+ g_assert (item);
-+
-+ plugin = g_module_open (*path, G_MODULE_BIND_LOCAL);
-
- if (!plugin) {
- nm_log_warn (LOGD_HW, "(%s): failed to load plugin: %s", item, g_module_error ());
-@@ -1939,7 +2013,7 @@ load_device_factories (NMManager *self)
- }
- }
- if (found) {
-- nm_log_warn (LOGD_HW, "Found multiple device plugins for same type: %s vs %s",
-+ nm_log_warn (LOGD_HW, "Found multiple device plugins for same type: use '%s' instead of '%s'",
- found, g_module_name (plugin));
- g_module_close (plugin);
- continue;
-@@ -1978,7 +2052,7 @@ load_device_factories (NMManager *self)
-
- nm_log_info (LOGD_HW, "Loaded device plugin: %s", g_module_name (plugin));
- };
-- g_dir_close (dir);
-+ g_strfreev (paths);
-
- priv->factories = g_slist_reverse (priv->factories);
- }
-diff --git a/src/platform/nm-linux-platform.c b/src/platform/nm-linux-platform.c
-index f73ff32..7b11a6b 100644
---- a/src/platform/nm-linux-platform.c
-+++ b/src/platform/nm-linux-platform.c
-@@ -1584,7 +1584,9 @@ announce_object (NMPlatform *platform, const struct nl_object *object, NMPlatfor
- */
- switch (change_type) {
- case NM_PLATFORM_SIGNAL_REMOVED:
-- check_cache_items (platform, priv->route_cache, address.ifindex);
-+ check_cache_items (platform,
-+ priv->route_cache,
-+ rtnl_addr_get_ifindex ((struct rtnl_addr *) object));
- break;
- default:
- break;
-@@ -3500,7 +3502,8 @@ _route_match (struct rtnl_route *rtnlroute, int family, int ifindex)
- rtnl_route_get_table (rtnlroute) != RT_TABLE_MAIN ||
- rtnl_route_get_protocol (rtnlroute) == RTPROT_KERNEL ||
- rtnl_route_get_family (rtnlroute) != family ||
-- rtnl_route_get_nnexthops (rtnlroute) != 1)
-+ rtnl_route_get_nnexthops (rtnlroute) != 1 ||
-+ rtnl_route_get_flags (rtnlroute) & RTM_F_CLONED)
- return FALSE;
-
- nexthop = rtnl_route_nexthop_n (rtnlroute, 0);
-diff --git a/vapi/NMClient-1.0.metadata b/vapi/NMClient-1.0.metadata
-index 12f1469..2d894d8 100644
---- a/vapi/NMClient-1.0.metadata
-+++ b/vapi/NMClient-1.0.metadata
-@@ -1,6 +1,6 @@
--RemoteSettings.new_async skip
-+RemoteSettings.new_finish symbol_type="function"
- RemoteConnection.updated#virtual_method skip
--Client.new_async skip
-+Client.new_finish symbol_type="function"
-
- ACTIVE_CONNECTION_* cheader_filename="nm-active-connection.h" name="ACTIVE_CONNECTION_(.+)" parent="NM.ActiveConnection"
- CLIENT_* cheader_filename="nm-client.h" name="CLIENT_(.+)" parent="NM.Client"
diff --git a/pcr/networkmanager-consolekit/networkmanager.install b/pcr/networkmanager-consolekit/networkmanager.install
index f9da4feb1..de40c17ed 100644
--- a/pcr/networkmanager-consolekit/networkmanager.install
+++ b/pcr/networkmanager-consolekit/networkmanager.install
@@ -1,5 +1,5 @@
post_upgrade() {
- (( $(vercmp $2 0.8.3) < 0 )) && cat <<MSG
+ (( $(vercmp 0.8.3 $2) > 0 )) && cat <<MSG
ATTENTION:
/etc/NetworkManager/nm-system-settings.conf has been replaced
by /etc/NetworkManager/NetworkManager.conf. Make sure you move
diff --git a/pcr/networkmanager-consolekit/networkmanager.rc b/pcr/networkmanager-consolekit/networkmanager.rc
deleted file mode 100644
index 1e803e87b..000000000
--- a/pcr/networkmanager-consolekit/networkmanager.rc
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/bin/bash
-
-NETWORKMANAGER_BIN=/usr/bin/NetworkManager
-
-# general config
-. /etc/rc.conf
-. /etc/rc.d/functions
-
-PID=`pidof -o %PPID $NETWORKMANAGER_BIN`
-case "$1" in
- start)
- ck_daemon dbus && /etc/rc.d/dbus start
-
- stat_busy "Starting NetworkManager"
- [ ! -d /var/run/NetworkManager ] && install -d /var/run/NetworkManager
- if [ -z "$PID" ]; then
- $NETWORKMANAGER_BIN
- fi
- if [ ! -z "$PID" -o $? -gt 0 ]; then
- stat_fail
- else
- add_daemon networkmanager
- stat_done
- fi
- ;;
- stop)
- stat_busy "Stopping NetworkManager"
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- if [ $? -gt 0 ]; then
- stat_fail
- else
- rm_daemon networkmanager
- stat_done
- fi
- ;;
- restart)
- $0 stop
- sleep 1
- $0 start
- ;;
- sleep)
- /usr/bin/dbus-send --system \
- --dest=org.freedesktop.NetworkManager \
- --type=method_call \
- /org/freedesktop/NetworkManager \
- org.freedesktop.NetworkManager.sleep
- ;;
- wake)
- /usr/bin/dbus-send --system \
- --dest=org.freedesktop.NetworkManager \
- --type=method_call \
- /org/freedesktop/NetworkManager \
- org.freedesktop.NetworkManager.wake
- ;;
- *)
- echo "usage: $0 {start|stop|restart|sleep|wake}"
- ;;
-esac
-exit 0
-
diff --git a/pcr/openrc-devel/PKGBUILD b/pcr/openrc-devel/PKGBUILD
index c3ccedb3c..6118b417c 100644
--- a/pcr/openrc-devel/PKGBUILD
+++ b/pcr/openrc-devel/PKGBUILD
@@ -1,4 +1,4 @@
-# Maintainer (Manjaro): artoo <artoo@manjaro.org>
+# Maintainer (Arch): artoo <artoo@manjaro.org>
# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
_gentoo_uri="https://raw.githubusercontent.com/gentoo/gentoo/master"
@@ -9,7 +9,7 @@ pkgname=('git-openrc'
'postgresql-openrc'
'subversion-openrc'
'php-fpm-openrc')
-pkgver=20151014
+pkgver=20151122
pkgrel=1
pkgdesc="OpenRC init scripts"
arch=('any')
diff --git a/pcr/polkit-consolekit/PKGBUILD b/pcr/polkit-consolekit/PKGBUILD
index 0d3b39f61..3b1d99f6b 100644
--- a/pcr/polkit-consolekit/PKGBUILD
+++ b/pcr/polkit-consolekit/PKGBUILD
@@ -1,44 +1,47 @@
-# Maintainer (Arch): kozec <kozec at kozec.com>
-# Contributor (Arch): Lukas Jirkovsky <l.jirkovsky@gmail.com>
-# Contributor (Arch): Jan de Groot <jgc@archlinux.org>
+# Maintainer: artoo <artoo@manjaro.org>
+# Contributor: kozec <kozec at kozec.com>
+# Contributor: Lukas Jirkovsky <l.jirkovsky@gmail.com>
+# Contributor: Jan de Groot <jgc@archlinux.org>
# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
+_pkgname=polkit
+
pkgname=polkit-consolekit
pkgver=0.113
-pkgrel=2
+pkgrel=3
pkgdesc="PolicyKit with ConsoleKit support for non-systemd systems"
arch=('i686' 'x86_64' 'armv7h')
license=('LGPL')
url="http://www.freedesktop.org/wiki/Software/polkit"
-depends=('glib2' 'pam' 'expat' 'js185')
+depends=('glib2' 'pam' 'expat' 'udev' 'js17')
makedepends=('intltool' 'gtk-doc' 'gobject-introspection')
provides=("polkit=$pkgver")
conflicts=('polkit')
options=('!libtool')
install=polkit.install
-source=(http://www.freedesktop.org/software/polkit/releases/polkit-$pkgver.tar.gz
- polkit.pam)
+source=("http://www.freedesktop.org/software/polkit/releases/$_pkgname-$pkgver.tar.gz")
+sha256sums=('e1c095093c654951f78f8618d427faf91cf62abdefed98de40ff65eca6413c81')
build() {
- cd "$srcdir/polkit-$pkgver"
+ cd "$srcdir"/$_pkgname-$pkgver
- ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --libexecdir=/usr/lib/polkit-1 \
- --with-systemdsystemunitdir=/usr/lib/systemd/system \
- --enable-libsystemd-login=no \
- --disable-static --enable-gtk-doc
- make
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --sbindir=/usr/bin \
+ --localstatedir=/var \
+ --libexecdir=/usr/lib/polkit-1 \
+ --enable-libsystemd-login=no \
+ --disable-static \
+ --enable-gtk-doc \
+ --with-os-type=gentoo
+ make
}
package() {
- cd "$srcdir/polkit-$pkgver"
- make DESTDIR="$pkgdir" install
-
- chown 102 "$pkgdir/etc/polkit-1/rules.d"
- chown 102 "$pkgdir/usr/share/polkit-1/rules.d"
+ cd "$srcdir"/$_pkgname-$pkgver
+ make DESTDIR="$pkgdir" install
- install -m644 "$srcdir/polkit.pam" "$pkgdir/etc/pam.d/polkit-1"
+ chown root:102 "$pkgdir"/{etc,usr/share}/polkit-1/rules.d
+ #chmod 750 "$pkgdir"/{etc,usr/share}/polkit-1/rules.d
}
-
-md5sums=('4b77776c9e4f897dcfe03b2c34198edf'
- '6564f95878297b954f0572bc1610dd15')
diff --git a/pcr/polkit-consolekit/polkit.install b/pcr/polkit-consolekit/polkit.install
index fbb98919e..e917e0095 100644
--- a/pcr/polkit-consolekit/polkit.install
+++ b/pcr/polkit-consolekit/polkit.install
@@ -7,12 +7,3 @@ post_install() {
post_upgrade() {
post_install
}
-
-post_remove() {
- if getent passwd polkitd >/dev/null; then
- userdel polkitd
- fi
- if getent group polkitd >/dev/null; then
- groupdel polkitd
- fi
-}
diff --git a/pcr/polkit-consolekit/polkit.pam b/pcr/polkit-consolekit/polkit.pam
deleted file mode 100644
index 04f53e0db..000000000
--- a/pcr/polkit-consolekit/polkit.pam
+++ /dev/null
@@ -1,7 +0,0 @@
-auth requisite pam_nologin.so
-auth required pam_env.so
-auth required pam_unix.so
-account required pam_unix.so
-session required pam_limits.so
-session required pam_unix.so
-password required pam_unix.so