summaryrefslogtreecommitdiff
path: root/libre
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-03-22 00:01:28 +0000
committerroot <root@rshg054.dnsready.net>2012-03-22 00:01:28 +0000
commit39e662ccfbe62ae77d458159d192816171a22f43 (patch)
tree2484a55934cd77dd33597ab2f214de5b7326cf69 /libre
parenta3108a9a809c496e1f6a0e9caf0acebac3889bfb (diff)
Thu Mar 22 00:01:28 UTC 2012
Diffstat (limited to 'libre')
-rw-r--r--libre/filesystem/PKGBUILD53
-rw-r--r--libre/filesystem/filesystem.install26
-rw-r--r--libre/kdelibs-libre/PKGBUILD17
-rw-r--r--libre/kdelibs-libre/fix-kmail-crash.patch71
-rw-r--r--libre/kdelibs-libre/use-pythondontwritebytecode.patch80
5 files changed, 203 insertions, 44 deletions
diff --git a/libre/filesystem/PKGBUILD b/libre/filesystem/PKGBUILD
index 733d34aa3..e9282b5aa 100644
--- a/libre/filesystem/PKGBUILD
+++ b/libre/filesystem/PKGBUILD
@@ -1,9 +1,10 @@
-# $Id: PKGBUILD 147201 2012-01-24 06:36:12Z bisson $
+# $Id: PKGBUILD 150594 2012-02-18 18:25:33Z tomegun $
# Maintainer: Tom Gundersen <teg@jklm.no>
# Maintainer (Parabola): fauno <fauno@kiwwwi.com.ar>
+# Contributor (Parabola): André Silva <andre.paulista@adinet.com.uy>
pkgname=filesystem
-pkgver=2011.12
+pkgver=2012.2
pkgrel=2
pkgdesc='Base filesystem for Parabola'
arch=('any')
@@ -37,51 +38,53 @@ md5sums=('772fe869b921698cc3e6fde73c4ac85a'
'a8a962370cd0128465d514e6a1f74130')
package() {
- cd ${srcdir}
+ cd ${pkgdir}
#
# setup root filesystem
#
for d in bin boot dev etc home lib/modules media mnt sbin usr var opt srv/http sys run; do
- install -d -m755 ${pkgdir}/${d}
+ install -d -m755 ${d}
done
- install -d -m555 ${pkgdir}/proc
- install -d -m0750 ${pkgdir}/root
- install -d -m1777 ${pkgdir}/tmp
+ install -d -m555 proc
+ install -d -m0750 root
+ install -d -m1777 tmp
# vsftpd won't run with write perms on /srv/ftp
- install -d -m555 -g ftp ${pkgdir}/srv/ftp
+ install -d -m555 -g ftp srv/ftp
# setup /etc
- install -d ${pkgdir}/etc/{ld.so.conf.d,skel,profile.d}
+ install -d etc/{ld.so.conf.d,skel,profile.d}
for f in fstab group host.conf hosts issue ld.so.conf motd nsswitch.conf passwd resolv.conf securetty shells profile; do
- install -m644 ${srcdir}/${f} ${pkgdir}/etc/
+ install -m644 ${srcdir}/${f} etc/
done
- ln -s /proc/self/mounts ${pkgdir}/etc/mtab
+ ln -s /proc/self/mounts etc/mtab
for f in gshadow shadow crypttab; do
- install -m600 ${srcdir}/${f} ${pkgdir}/etc/
+ install -m600 ${srcdir}/${f} etc/
done
- touch ${pkgdir}/etc/arch-release
- install -D -m644 ${srcdir}/modprobe.d.usb-load-ehci-first ${pkgdir}/lib/modprobe.d/usb-load-ehci-first.conf
+ touch etc/arch-release
+ install -D -m644 ${srcdir}/modprobe.d.usb-load-ehci-first lib/modprobe.d/usb-load-ehci-first.conf
# setup /var
- for d in cache/man local opt log/old lib/misc empty; do
- install -d -m755 ${pkgdir}/var/${d}
+ for d in cache/man local opt log/old lib/misc empty run; do
+ install -d -m755 var/${d}
done
- install -d -m1777 ${pkgdir}/var/{tmp,spool/mail}
+ install -d -m1777 var/{tmp,spool/mail,lock}
# allow setgid games to write scores
- install -d -m775 -g games ${pkgdir}/var/games
- ln -s /var/spool/mail ${pkgdir}/var/mail
- ln -s /run ${pkgdir}/var/run
- ln -s /run/lock ${pkgdir}/var/lock
+ install -d -m775 -g games var/games
+ ln -s spool/mail var/mail
+ # not ready yet, needs possible change in pacman or other magic
+ # is fixed by initscripts on next boot
+# ln -s ../run var/run
+# ln -s ../run/lock var/lock
#
# setup /usr hierarchy
#
for d in bin include lib sbin share/misc src; do
- install -d -m755 ${pkgdir}/usr/${d}
+ install -d -m755 usr/${d}
done
for d in $(seq 8); do
- install -d -m755 ${pkgdir}/usr/share/man/man${d}
+ install -d -m755 usr/share/man/man${d}
done
@@ -89,7 +92,7 @@ package() {
# setup /usr/local hierarchy
#
for d in bin etc games include lib man sbin share src; do
- install -d -m755 ${pkgdir}/usr/local/${d}
+ install -d -m755 usr/local/${d}
done
- ln -s ../man ${pkgdir}/usr/local/share/man
+ ln -s ../man usr/local/share/man
}
diff --git a/libre/filesystem/filesystem.install b/libre/filesystem/filesystem.install
index 0ecc27e65..38d21a85b 100644
--- a/libre/filesystem/filesystem.install
+++ b/libre/filesystem/filesystem.install
@@ -1,24 +1,24 @@
post_install() {
[ -f var/log/lastlog ] || : >var/log/lastlog
[ -f var/log/wtmp ] || : >var/log/wtmp
- [ -f var/log/btmp ] || (: >var/log/btmp && bin/chmod 600 var/log/btmp)
+ [ -f var/log/btmp ] || (: >var/log/btmp && chmod 600 var/log/btmp)
# workaround for bug #7194
# readded due to bug #9465
# please do not remove!
- bin/chmod 1777 var/spool/mail tmp var/tmp var/lock
+ chmod 1777 var/spool/mail tmp var/tmp var/lock
}
# args: <group> [options]
_addgroup() {
- if ! bin/grep -q "^$1:" etc/group; then
- usr/sbin/groupadd ${@} >/dev/null
+ if ! getent group "$1"; then
+ groupadd "$@" >/dev/null
fi
}
# args: <group> [options]
_adduser() {
- if ! bin/grep -q "^$1:" etc/passwd; then
- usr/sbin/useradd ${@} >/dev/null
+ if ! getent passwd "$1"; then
+ useradd "$@" >/dev/null
fi
}
@@ -37,23 +37,23 @@ post_upgrade() {
_addgroup games -g 50
_addgroup uucp -g 14
_addgroup http -g 33
- _adduser http -u 33 -d /srv/http -g http -s /bin/false http
+ _adduser http -u 33 -d /srv/http -g http -s /bin/false
_addgroup scanner -g 96
_addgroup rfkill -g 24
# sync gshadow to group (fixes FS#19869
- if ! bin/grep -q '^rfkill:' etc/gshadow; then
- usr/sbin/grpconv >/dev/null
+ if ! grep -q '^rfkill:' etc/gshadow; then
+ grpconv >/dev/null
fi
- if ! bin/grep -q '^include /etc/ld.so.conf.d/\*.conf$' etc/ld.so.conf; then
- bin/echo 'include /etc/ld.so.conf.d/*.conf' >> etc/ld.so.conf
+ if ! grep -q '^include /etc/ld.so.conf.d/\*.conf$' etc/ld.so.conf; then
+ echo 'include /etc/ld.so.conf.d/*.conf' >> etc/ld.so.conf
fi
# set "Last password change" > 0; otherwise su $user wont work
for user in bin daemon mail ftp http nobody; do
- if LANG=C usr/bin/chage -l ${user} | bin/grep -q 'password must be changed'; then
- usr/bin/chage -d 14871 ${user}
+ if LANG=C chage -l ${user} | grep -q 'password must be changed'; then
+ chage -d 14871 ${user}
fi
done
}
diff --git a/libre/kdelibs-libre/PKGBUILD b/libre/kdelibs-libre/PKGBUILD
index 7fcc8e77e..e792acf9f 100644
--- a/libre/kdelibs-libre/PKGBUILD
+++ b/libre/kdelibs-libre/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 149297 2012-02-06 17:49:28Z andrea $
+# $Id: PKGBUILD 153517 2012-03-15 13:55:48Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org
# Contributor: Pierre Schmitz <pierre@archlinux.de>
# Contributor (Parabola): André Silva <andre.paulista@adinet.com.uy>
@@ -6,7 +6,7 @@
_pkgname=kdelibs
pkgname=kdelibs-libre
pkgver=4.8.1
-pkgrel=1
+pkgrel=2
pkgdesc="KDE Core Libraries"
arch=('i686' 'x86_64' 'mips64el')
url='http://www.kde.org'
@@ -22,11 +22,13 @@ conflicts=('kdelibs')
install=${_pkgname}.install
source=("http://download.kde.org/stable/${pkgver}/src/${_pkgname}-${pkgver}.tar.bz2"
'kde-applications-menu.patch'
- 'fix-knotify-filepath.patch'
+ 'fix-kmail-crash.patch'
+ 'use-pythondontwritebytecode.patch'
'khtml-fsdg.diff')
sha1sums=('ec393b096003f1dd57c5e2987381b086ba1b363e'
'86ee8c8660f19de8141ac99cd6943964d97a1ed7'
- '3312f6005aa56a9b992c74008fe5b314f1c8ffba'
+ '081b0663480568359120b573d26abb91e1a348c0'
+ 'a1e35760d5b4e29471ad357c963a343c67200f32'
'a1502a964081ad583a00cf90c56e74bf60121830')
build() {
@@ -35,8 +37,11 @@ build() {
# avoid file conflict with gnome-menus
patch -p1 -i "${srcdir}"/kde-applications-menu.patch
- # https://bugs.kde.org/show_bug.cgi?id=285028
- patch -p1 -i "${srcdir}"/fix-knotify-filepath.patch
+ # Upstream (FS#28907)
+ patch -p1 -i "${srcdir}"/fix-kmail-crash.patch
+
+ # Set PYTHONDONTWRITEBYTECODE (KDEBUG#276151)
+ patch -p0 -i "${srcdir}"/use-pythondontwritebytecode.patch
# Don't ask the user to download a plugin, it's probably nonfree.
patch -p1 -i "${srcdir}"/khtml-fsdg.diff
diff --git a/libre/kdelibs-libre/fix-kmail-crash.patch b/libre/kdelibs-libre/fix-kmail-crash.patch
new file mode 100644
index 000000000..27caa25f0
--- /dev/null
+++ b/libre/kdelibs-libre/fix-kmail-crash.patch
@@ -0,0 +1,71 @@
+commit 979b0436510e7807c054e79c40c3753834ac2863
+Author: Sebastian Trueg <trueg@kde.org>
+Date: Thu Mar 15 09:14:35 2012 +0100
+
+ Thread-safe ResourceWatcher handling.
+
+ We simply perform all RW operations in the manager thread.
+
+ BUG: 295474
+ FIXED-IN: 4.8.2
+
+diff --git a/nepomuk/core/resourcedata.cpp b/nepomuk/core/resourcedata.cpp
+index abe55ea..9d45228 100644
+--- a/nepomuk/core/resourcedata.cpp
++++ b/nepomuk/core/resourcedata.cpp
+@@ -175,7 +175,8 @@ void Nepomuk::ResourceData::resetAll( bool isDelete )
+ if( !m_uri.isEmpty() ) {
+ m_rm->m_initializedData.remove( m_uri );
+ if( m_rm->m_watcher && m_addedToWatcher ) {
+- m_rm->m_watcher->removeResource(Resource::fromResourceUri(m_uri));
++ // See load() for an explanation of the QMetaObject call
++ QMetaObject::invokeMethod(m_rm->m_watcher, "removeResource", Qt::AutoConnection, Q_ARG(Nepomuk::Resource, Resource::fromResourceUri(m_uri)));
+ m_addedToWatcher = false;
+ }
+ }
+@@ -393,16 +394,23 @@ bool Nepomuk::ResourceData::load()
+ m_cache.clear();
+
+ if(!m_rm->m_watcher) {
++ //
++ // The ResourceWatcher is not thread-safe. Thus, we need to ensure the safety ourselves.
++ // We do that by simply handling all RW related operations in the manager thread.
++ // This also means to invoke methods on the watcher through QMetaObject to make sure they
++ // get queued in case of calls between different threads.
++ //
+ m_rm->m_watcher = new ResourceWatcher(m_rm->m_manager);
++ m_rm->m_watcher->moveToThread(m_rm->m_manager->thread());
+ QObject::connect( m_rm->m_watcher, SIGNAL(propertyAdded(Nepomuk::Resource, Nepomuk::Types::Property, QVariant)),
+ m_rm->m_manager, SLOT(slotPropertyAdded(Nepomuk::Resource, Nepomuk::Types::Property, QVariant)) );
+ QObject::connect( m_rm->m_watcher, SIGNAL(propertyRemoved(Nepomuk::Resource, Nepomuk::Types::Property, QVariant)),
+ m_rm->m_manager, SLOT(slotPropertyRemoved(Nepomuk::Resource, Nepomuk::Types::Property, QVariant)) );
+ m_rm->m_watcher->addResource( Nepomuk::Resource::fromResourceUri(m_uri) );
+- m_rm->m_watcher->start();
++ QMetaObject::invokeMethod(m_rm->m_watcher, "start", Qt::AutoConnection);
+ }
+ else {
+- m_rm->m_watcher->addResource( Nepomuk::Resource::fromResourceUri(m_uri) );
++ QMetaObject::invokeMethod(m_rm->m_watcher, "addResource", Qt::AutoConnection, Q_ARG(Nepomuk::Resource, Nepomuk::Resource::fromResourceUri(m_uri)) );
+ }
+ m_addedToWatcher = true;
+
+diff --git a/nepomuk/core/resourcewatcher.h b/nepomuk/core/resourcewatcher.h
+index 06b9622..92b12f5 100644
+--- a/nepomuk/core/resourcewatcher.h
++++ b/nepomuk/core/resourcewatcher.h
+@@ -93,6 +93,7 @@ namespace Nepomuk {
+ */
+ virtual ~ResourceWatcher();
+
++ public Q_SLOTS:
+ /**
+ * \brief Add a type to be watched.
+ *
+@@ -204,7 +205,6 @@ namespace Nepomuk {
+ */
+ QList<Types::Property> properties() const;
+
+- public Q_SLOTS:
+ /**
+ * \brief Start the signalling of changes.
+ *
diff --git a/libre/kdelibs-libre/use-pythondontwritebytecode.patch b/libre/kdelibs-libre/use-pythondontwritebytecode.patch
new file mode 100644
index 000000000..bab46a9a2
--- /dev/null
+++ b/libre/kdelibs-libre/use-pythondontwritebytecode.patch
@@ -0,0 +1,80 @@
+--- cmake/modules/PythonMacros.cmake
++++ cmake/modules/PythonMacros.cmake
+@@ -23,40 +23,42 @@
+ # Install the source file.
+ INSTALL(FILES ${SOURCE_FILE} DESTINATION ${DESINATION_DIR})
+
+- # Byte compile and install the .pyc file.
+- GET_FILENAME_COMPONENT(_absfilename ${SOURCE_FILE} ABSOLUTE)
+- GET_FILENAME_COMPONENT(_filename ${SOURCE_FILE} NAME)
+- GET_FILENAME_COMPONENT(_filenamebase ${SOURCE_FILE} NAME_WE)
+- GET_FILENAME_COMPONENT(_basepath ${SOURCE_FILE} PATH)
+-
+- if(WIN32)
+- string(REGEX REPLACE ".:/" "/" _basepath "${_basepath}")
+- endif(WIN32)
+-
+- SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename})
+- SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc)
+-
+- FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath})
+-
+- SET(_message "-DMESSAGE=Byte-compiling ${_bin_py}")
+-
+- GET_FILENAME_COMPONENT(_abs_bin_py ${_bin_py} ABSOLUTE)
+- IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself.
+- ADD_CUSTOM_COMMAND(
+- TARGET compile_python_files
+- COMMAND ${CMAKE_COMMAND} -E echo ${message}
+- COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
+- DEPENDS ${_absfilename}
+- )
+- ELSE(_abs_bin_py STREQUAL ${_absfilename})
+- ADD_CUSTOM_COMMAND(
+- TARGET compile_python_files
+- COMMAND ${CMAKE_COMMAND} -E echo ${message}
+- COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py}
+- COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
+- DEPENDS ${_absfilename}
+- )
+- ENDIF(_abs_bin_py STREQUAL ${_absfilename})
++ # Byte compile and install the .pyc file.
++ IF("$ENV{PYTHONDONTWRITEBYTECODE}" STREQUAL "")
++ GET_FILENAME_COMPONENT(_absfilename ${SOURCE_FILE} ABSOLUTE)
++ GET_FILENAME_COMPONENT(_filename ${SOURCE_FILE} NAME)
++ GET_FILENAME_COMPONENT(_filenamebase ${SOURCE_FILE} NAME_WE)
++ GET_FILENAME_COMPONENT(_basepath ${SOURCE_FILE} PATH)
++
++ if(WIN32)
++ string(REGEX REPLACE ".:/" "/" _basepath "${_basepath}")
++ endif(WIN32)
++
++ SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename})
++ SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc)
++
++ FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath})
++
++ SET(_message "-DMESSAGE=Byte-compiling ${_bin_py}")
++
++ GET_FILENAME_COMPONENT(_abs_bin_py ${_bin_py} ABSOLUTE)
++ IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself.
++ ADD_CUSTOM_COMMAND(
++ TARGET compile_python_files
++ COMMAND ${CMAKE_COMMAND} -E echo ${message}
++ COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
++ DEPENDS ${_absfilename}
++ )
++ ELSE(_abs_bin_py STREQUAL ${_absfilename})
++ ADD_CUSTOM_COMMAND(
++ TARGET compile_python_files
++ COMMAND ${CMAKE_COMMAND} -E echo ${message}
++ COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py}
++ COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
++ DEPENDS ${_absfilename}
++ )
++ ENDIF(_abs_bin_py STREQUAL ${_absfilename})
+
+- INSTALL(FILES ${_bin_pyc} DESTINATION ${DESINATION_DIR})
++ INSTALL(FILES ${_bin_pyc} DESTINATION ${DESINATION_DIR})
++ ENDIF("$ENV{PYTHONDONTWRITEBYTECODE}" STREQUAL "")
+ ENDMACRO(PYTHON_INSTALL)