summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--community-staging/freeradius/PKGBUILD44
-rw-r--r--community-staging/freeradius/freeradius.install22
-rw-r--r--community-staging/freeradius/krb5-build-fix.patch21
-rwxr-xr-xcommunity-staging/freeradius/radiusd43
-rw-r--r--community-staging/freerdp/PKGBUILD30
-rw-r--r--community-staging/freerdp/freerdp.changelog2
-rw-r--r--community-staging/gsasl/PKGBUILD27
-rw-r--r--community-staging/ipsec-tools/PKGBUILD35
-rwxr-xr-xcommunity-staging/ipsec-tools/ipsec.rc35
-rwxr-xr-xcommunity-staging/ipsec-tools/racoon.rc35
-rw-r--r--community-staging/perl-gssapi/PKGBUILD27
-rw-r--r--community-staging/pgadmin3/ChangeLog28
-rw-r--r--community-staging/pgadmin3/PKGBUILD43
-rw-r--r--community-staging/pgadmin3/pgadmin3.desktop10
-rw-r--r--community-staging/splix/PKGBUILD34
-rw-r--r--community-staging/splix/splix.install19
-rw-r--r--community-testing/exim/PKGBUILD77
-rw-r--r--community-testing/exim/aliases35
-rwxr-xr-xcommunity-testing/exim/exim42
-rw-r--r--community-testing/exim/exim.Makefile1227
-rw-r--r--community-testing/exim/exim.conf.d1
-rw-r--r--community-testing/exim/exim.install24
-rw-r--r--community-testing/exim/exim.logrotate5
-rwxr-xr-xcommunity-testing/exim/newaliases2
-rw-r--r--community-testing/python-cherrypy/837.2049.patch554
-rw-r--r--community-testing/python-cherrypy/ChangeLog26
-rw-r--r--community-testing/python-cherrypy/PKGBUILD24
-rw-r--r--community-testing/python-cherrypy/license25
-rw-r--r--community-testing/python2-cherrypy/837.2049.patch554
-rw-r--r--community-testing/python2-cherrypy/ChangeLog26
-rw-r--r--community-testing/python2-cherrypy/PKGBUILD25
-rw-r--r--community-testing/python2-cherrypy/license25
-rw-r--r--community/cairo-compmgr/PKGBUILD8
-rw-r--r--community/calibre/PKGBUILD6
-rw-r--r--community/clementine/PKGBUILD6
-rw-r--r--community/denemo/PKGBUILD9
-rw-r--r--community/dwm/PKGBUILD18
-rw-r--r--community/dwm/dwm.install17
-rw-r--r--community/gecko-mediaplayer/PKGBUILD12
-rw-r--r--community/giggle/PKGBUILD4
-rw-r--r--community/gimmie/PKGBUILD14
-rw-r--r--community/glipper/PKGBUILD4
-rw-r--r--community/gnome-mplayer/PKGBUILD10
-rw-r--r--community/gnome-mplayer/gnome-mplayer.install17
-rw-r--r--community/gnome-system-tools/PKGBUILD12
-rw-r--r--community/gnote/PKGBUILD17
-rw-r--r--community/gnubiff/PKGBUILD18
-rw-r--r--community/go/PKGBUILD6
-rw-r--r--community/google-gadgets/PKGBUILD11
-rw-r--r--community/google-gadgets/wifi-types.patch36
-rw-r--r--community/gphpedit/PKGBUILD10
-rw-r--r--community/gphpedit/gphpedit.install5
-rw-r--r--community/gtkwave/PKGBUILD4
-rw-r--r--community/ibus/PKGBUILD7
-rw-r--r--community/ibus/ibus.install6
-rw-r--r--community/inputattach/0001-Add-w8001-flag.patch27
-rw-r--r--community/inputattach/0002-Allow-for-custom-baud-rates.patch70
-rw-r--r--community/inputattach/PKGBUILD42
-rw-r--r--community/inputattach/inputattach.conf.d13
-rw-r--r--community/inputattach/inputattach.install11
-rw-r--r--community/inputattach/inputattach.rc.d49
-rw-r--r--community/kdenlive/PKGBUILD12
-rw-r--r--community/libmicrohttpd/PKGBUILD7
-rw-r--r--community/libmicrohttpd/libmicrohttpd.install20
-rw-r--r--community/liboobs/PKGBUILD13
-rw-r--r--community/nut/PKGBUILD4
-rw-r--r--community/open-vm-tools/PKGBUILD10
-rw-r--r--community/pbzip2/PKGBUILD11
-rw-r--r--community/perl-gtk2-webkit/PKGBUILD4
-rw-r--r--community/podofo/PKGBUILD6
-rw-r--r--community/python-cherrypy/837.2049.patch554
-rw-r--r--community/python-cherrypy/ChangeLog26
-rw-r--r--community/python-cherrypy/PKGBUILD23
-rw-r--r--community/python-cherrypy/license25
-rw-r--r--community/python2-cherrypy/837.2049.patch554
-rw-r--r--community/python2-cherrypy/ChangeLog26
-rw-r--r--community/python2-cherrypy/PKGBUILD23
-rw-r--r--community/python2-cherrypy/license25
-rw-r--r--community/redis/PKGBUILD9
-rw-r--r--community/rsyslog/PKGBUILD7
-rw-r--r--community/shotwell/PKGBUILD6
-rw-r--r--community/shotwell/shotwell.install4
-rw-r--r--community/stone-soup/PKGBUILD4
-rw-r--r--community/surf/PKGBUILD4
-rw-r--r--community/system-tools-backends/PKGBUILD6
-rw-r--r--community/systemd/PKGBUILD12
-rw-r--r--community/systemd/os-release7
-rw-r--r--community/systemd/systemd.install11
-rw-r--r--community/texmaker/PKGBUILD4
-rw-r--r--community/uzbl/PKGBUILD12
-rw-r--r--community/warsow/PKGBUILD13
-rw-r--r--community/workrave/PKGBUILD6
-rw-r--r--community/yajl/PKGBUILD13
-rw-r--r--core/glib2/PKGBUILD14
-rw-r--r--core/nilfs-utils/PKGBUILD10
-rw-r--r--extra/accountsservice/PKGBUILD32
-rw-r--r--extra/anjuta/PKGBUILD28
-rw-r--r--extra/anjuta/anjuta.install23
-rw-r--r--extra/ardour/PKGBUILD10
-rw-r--r--extra/ardour/ardour.changelog8
-rw-r--r--extra/at-spi/PKGBUILD18
-rw-r--r--extra/at-spi2-atk/PKGBUILD24
-rw-r--r--extra/at-spi2-atk/at-spi2-atk.install12
-rw-r--r--extra/at-spi2-core/PKGBUILD21
-rw-r--r--extra/atk/PKGBUILD14
-rw-r--r--extra/atkmm/PKGBUILD8
-rw-r--r--extra/avahi/PKGBUILD10
-rw-r--r--extra/banshee/PKGBUILD25
-rw-r--r--extra/bluez/PKGBUILD6
-rw-r--r--extra/brasero/PKGBUILD16
-rw-r--r--extra/cairomm/PKGBUILD10
-rw-r--r--extra/cheese/PKGBUILD26
-rw-r--r--extra/cheese/cheese.install12
-rw-r--r--extra/claws-mail-extra-plugins/PKGBUILD12
-rw-r--r--extra/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch47
-rw-r--r--extra/claws-mail/PKGBUILD6
-rw-r--r--extra/claws-mail/claws-mail.install1
-rw-r--r--extra/clutter-gst/PKGBUILD29
-rw-r--r--extra/clutter-gtk/PKGBUILD21
-rw-r--r--extra/clutter-gtk2/PKGBUILD33
-rw-r--r--extra/clutter-gtk2/gir.patch39
-rw-r--r--extra/clutter/PKGBUILD6
-rw-r--r--extra/cups-pdf/PKGBUILD19
-rw-r--r--extra/cups-pdf/cups-pdf.install4
-rw-r--r--extra/cups-pk-helper/PKGBUILD28
-rw-r--r--extra/curl/PKGBUILD11
-rw-r--r--extra/dconf/PKGBUILD27
-rw-r--r--extra/dconf/load-enum.patch22
-rw-r--r--extra/devhelp/PKGBUILD16
-rw-r--r--extra/ekiga/PKGBUILD24
-rw-r--r--extra/empathy/PKGBUILD29
-rw-r--r--extra/eog-plugins/PKGBUILD27
-rw-r--r--extra/eog-plugins/eog-plugins.install11
-rw-r--r--extra/eog/PKGBUILD26
-rw-r--r--extra/eog/eog.install17
-rw-r--r--extra/epiphany-extensions/PKGBUILD19
-rw-r--r--extra/epiphany-extensions/epiphany-extensions.install6
-rw-r--r--extra/epiphany/PKGBUILD36
-rw-r--r--extra/epiphany/epiphany.install17
-rw-r--r--extra/evince/PKGBUILD52
-rw-r--r--extra/evince/evince.install19
-rw-r--r--extra/evolution-data-server/PKGBUILD21
-rw-r--r--extra/evolution-exchange/PKGBUILD17
-rw-r--r--extra/evolution/PKGBUILD34
-rw-r--r--extra/farsight2/PKGBUILD10
-rw-r--r--extra/file-roller/PKGBUILD36
-rw-r--r--extra/file-roller/file-roller.install18
-rw-r--r--extra/folks/PKGBUILD16
-rw-r--r--extra/gcalctool/PKGBUILD16
-rw-r--r--extra/gcin/PKGBUILD12
-rw-r--r--extra/gconf-editor/PKGBUILD16
-rw-r--r--extra/gconf/PKGBUILD22
-rw-r--r--extra/gdk-pixbuf2/PKGBUILD12
-rw-r--r--extra/gdl/PKGBUILD20
-rw-r--r--extra/gdm/2.91_fix_external_program_directories.patch48
-rw-r--r--extra/gdm/PKGBUILD42
-rw-r--r--extra/gdm/fix_crasher_with_gtk307.patch104
-rw-r--r--extra/gdm/gdm.install21
-rw-r--r--extra/gedit/PKGBUILD30
-rw-r--r--extra/gedit/gedit.install18
-rw-r--r--extra/gimp-devel/PKGBUILD19
-rw-r--r--extra/gimp/PKGBUILD13
-rw-r--r--extra/git/PKGBUILD14
-rw-r--r--extra/gjs/PKGBUILD25
-rw-r--r--extra/glade/PKGBUILD35
-rw-r--r--extra/glib-networking/PKGBUILD30
-rw-r--r--extra/glib-networking/glib-networking.install11
-rw-r--r--extra/glibmm/PKGBUILD22
-rw-r--r--extra/gnome-applets/PKGBUILD43
-rw-r--r--extra/gnome-bluetooth/PKGBUILD31
-rw-r--r--extra/gnome-bluetooth/gnome-bluetooth.install1
-rw-r--r--extra/gnome-color-manager/PKGBUILD32
-rw-r--r--extra/gnome-color-manager/gnome-color-manager.install19
-rw-r--r--extra/gnome-control-center/PKGBUILD27
-rw-r--r--extra/gnome-control-center/gnome-control-center.install22
-rw-r--r--extra/gnome-desktop-sharp/PKGBUILD28
-rw-r--r--extra/gnome-desktop/PKGBUILD21
-rw-r--r--extra/gnome-desktop2/PKGBUILD32
-rw-r--r--extra/gnome-disk-utility/PKGBUILD22
-rw-r--r--extra/gnome-games/PKGBUILD40
-rw-r--r--extra/gnome-games/gnome-games.install4
-rw-r--r--extra/gnome-keyring/PKGBUILD16
-rw-r--r--extra/gnome-media/PKGBUILD61
-rw-r--r--extra/gnome-menus/PKGBUILD32
-rw-r--r--extra/gnome-nettool/PKGBUILD25
-rw-r--r--extra/gnome-nettool/gnome-nettool.install1
-rw-r--r--extra/gnome-panel/PKGBUILD59
-rw-r--r--extra/gnome-panel/fix-crasher-launchers.patch42
-rw-r--r--extra/gnome-panel/gnome-panel.install18
-rw-r--r--extra/gnome-pilot/PKGBUILD20
-rw-r--r--extra/gnome-power-manager/PKGBUILD29
-rw-r--r--extra/gnome-power-manager/gnome-power-manager.install17
-rw-r--r--extra/gnome-screensaver/PKGBUILD41
-rw-r--r--extra/gnome-screensaver/gnome-screensaver.install16
-rw-r--r--extra/gnome-session/PKGBUILD26
-rw-r--r--extra/gnome-session/gnome-session.install16
-rw-r--r--extra/gnome-settings-daemon/PKGBUILD73
-rw-r--r--extra/gnome-settings-daemon/gnome-settings-daemon.install16
-rw-r--r--extra/gnome-sharp/PKGBUILD73
-rw-r--r--extra/gnome-shell/PKGBUILD44
-rw-r--r--extra/gnome-shell/arch.patch12
-rw-r--r--extra/gnome-shell/gnome-shell.install22
-rw-r--r--extra/gnome-system-monitor/PKGBUILD20
-rw-r--r--extra/gnome-system-monitor/gnome-system-monitor.install12
-rw-r--r--extra/gnome-terminal/PKGBUILD27
-rw-r--r--extra/gnome-terminal/exitcode.patch25
-rw-r--r--extra/gnome-themes-standard/PKGBUILD29
-rw-r--r--extra/gnome-user-share/PKGBUILD21
-rw-r--r--extra/gnome-utils/PKGBUILD24
-rw-r--r--extra/gnome-utils/gnome-utils.install4
-rw-r--r--extra/gnome-vfs/PKGBUILD15
-rw-r--r--extra/gobject-introspection/PKGBUILD12
-rw-r--r--extra/gthumb/PKGBUILD19
-rw-r--r--extra/gtk-vnc/PKGBUILD38
-rw-r--r--extra/gtk2/PKGBUILD64
-rw-r--r--extra/gtk3/PKGBUILD36
-rw-r--r--extra/gtk3/gtk3.install15
-rw-r--r--extra/gtk3/settings.ini2
-rw-r--r--extra/gtkhtml4/PKGBUILD29
-rw-r--r--extra/gtkmm/PKGBUILD14
-rw-r--r--extra/gtkmm3/PKGBUILD38
-rw-r--r--extra/gtksourceview3/PKGBUILD28
-rw-r--r--extra/gucharmap/PKGBUILD19
-rw-r--r--extra/gvfs/PKGBUILD57
-rw-r--r--extra/gvfs/gvfs-smb.install12
-rw-r--r--extra/gvfs/gvfs.install2
-rw-r--r--extra/iptraf-ng/PKGBUILD5
-rw-r--r--extra/k9copy/PKGBUILD19
-rw-r--r--extra/kdeplasma-applets-networkmanagement/PKGBUILD6
-rw-r--r--extra/kismet/PKGBUILD18
-rw-r--r--extra/lcms2/PKGBUILD28
-rw-r--r--extra/lftp/PKGBUILD6
-rw-r--r--extra/libcanberra/PKGBUILD39
-rw-r--r--extra/libcanberra/libcanberra-quit-add.patch24
-rw-r--r--extra/libchamplain/PKGBUILD20
-rw-r--r--extra/libdmapsharing/PKGBUILD10
-rw-r--r--extra/libgda/PKGBUILD24
-rw-r--r--extra/libgda/libgda.install12
-rw-r--r--extra/libgdata/PKGBUILD14
-rw-r--r--extra/libgnome-keyring/PKGBUILD18
-rw-r--r--extra/libgnome-media-profiles/PKGBUILD36
-rw-r--r--extra/libgnome-media-profiles/libgnome-media-profiles.install17
-rw-r--r--extra/libgnomekbd/PKGBUILD22
-rw-r--r--extra/libgnomekbd/libgnomekbd.install12
-rw-r--r--extra/libgpod/PKGBUILD8
-rw-r--r--extra/libgtkhtml/PKGBUILD19
-rw-r--r--extra/libgtop/PKGBUILD14
-rw-r--r--extra/libgweather/PKGBUILD49
-rw-r--r--extra/libgweather/gettext-not-xml.patch533
-rw-r--r--extra/libimobiledevice/PKGBUILD8
-rw-r--r--extra/liblrdf/PKGBUILD17
-rw-r--r--extra/libnice/PKGBUILD12
-rw-r--r--extra/libnotify/PKGBUILD16
-rw-r--r--extra/libotr/PKGBUILD18
-rw-r--r--extra/libpeas/PKGBUILD29
-rw-r--r--extra/libpeas/libpeas.install11
-rw-r--r--extra/librsvg/PKGBUILD10
-rw-r--r--extra/libsocialweb/PKGBUILD33
-rw-r--r--extra/libsoup/PKGBUILD18
-rw-r--r--extra/libunique/PKGBUILD15
-rw-r--r--extra/libunique3/PKGBUILD27
-rw-r--r--extra/libvncserver/PKGBUILD26
-rw-r--r--extra/libwebkit/PKGBUILD68
-rw-r--r--extra/libwebkit/gcc46.patch11
-rw-r--r--extra/libwebkit/libwebkit.install11
-rw-r--r--extra/libwnck/PKGBUILD26
-rw-r--r--extra/libwnck3/PKGBUILD27
-rw-r--r--extra/libxklavier/PKGBUILD18
-rw-r--r--extra/libxml++/PKGBUILD12
-rw-r--r--extra/liferea/PKGBUILD7
-rw-r--r--extra/lighttpd/PKGBUILD6
-rw-r--r--extra/lighttpd/lighttpd.rc.d2
-rw-r--r--extra/llvm/PKGBUILD225
-rw-r--r--extra/llvm/cindexer-clang-path.patch10
-rw-r--r--extra/llvm/clang-plugin-loader-registry.patch11
-rw-r--r--extra/llvm/clang-pure64.patch38
-rw-r--r--extra/llvm/clang-toolchains-gcc-versions.patch12
-rw-r--r--extra/llvm/enable-lto.patch36
-rw-r--r--extra/mail-notification/PKGBUILD56
-rw-r--r--extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch16
-rw-r--r--extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch70
-rw-r--r--extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch12
-rw-r--r--extra/mail-notification/mail-notification-5.4-evolution.patch244
-rw-r--r--extra/mail-notification/mail-notification-5.4-gtk3-support.patch1382
-rw-r--r--extra/mail-notification/mail-notification-5.4-icons.patch37
-rw-r--r--extra/mail-notification/mail-notification-5.4-kde-trayicon.patch72
-rw-r--r--extra/mail-notification/mail-notification-5.4-popup-attach.patch45
-rw-r--r--extra/mail-notification/mail-notification-5.4-sasl_encode64.patch24
-rw-r--r--extra/mail-notification/mail-notification-5.4-weak.patch11
-rw-r--r--extra/metacity/PKGBUILD17
-rw-r--r--extra/midori/PKGBUILD6
-rw-r--r--extra/miro/PKGBUILD12
-rw-r--r--extra/mono/PKGBUILD8
-rw-r--r--extra/mousetweaks/PKGBUILD18
-rw-r--r--extra/mousetweaks/mousetweaks.install14
-rw-r--r--extra/mpd/PKGBUILD7
-rw-r--r--extra/mutter/PKGBUILD36
-rw-r--r--extra/mutter/mutter.install17
-rw-r--r--extra/mx/PKGBUILD28
-rw-r--r--extra/nautilus-open-terminal/PKGBUILD16
-rw-r--r--extra/nautilus-sendto/PKGBUILD16
-rw-r--r--extra/nautilus/PKGBUILD35
-rw-r--r--extra/nautilus/nautilus.install18
-rw-r--r--extra/nautilus/places-sidebar.patch36
-rw-r--r--extra/nautilus/progress-ui-handler.patch28
-rw-r--r--extra/network-manager-applet/PKGBUILD22
-rw-r--r--extra/networkmanager-openvpn/PKGBUILD12
-rw-r--r--extra/networkmanager-pptp/PKGBUILD12
-rw-r--r--extra/networkmanager-vpnc/PKGBUILD15
-rw-r--r--extra/networkmanager/PKGBUILD22
-rw-r--r--extra/notification-daemon/PKGBUILD36
-rw-r--r--extra/ntfs-3g_ntfsprogs/25-ntfs-config-write-policy.fdi42
-rw-r--r--extra/ntfs-3g_ntfsprogs/PKGBUILD47
-rw-r--r--extra/octave/PKGBUILD29
-rw-r--r--extra/octave/octave-3.4.0-gcc46.patch24
-rw-r--r--extra/opal/PKGBUILD20
-rw-r--r--extra/openmpi/PKGBUILD4
-rw-r--r--extra/orc/PKGBUILD6
-rw-r--r--extra/pangomm/PKGBUILD13
-rw-r--r--extra/pidgin/PKGBUILD4
-rw-r--r--extra/pmount/PKGBUILD15
-rw-r--r--extra/polkit-gnome/PKGBUILD27
-rw-r--r--extra/polkit-gnome/polkit-gnome-authentication-agent-1.desktop88
-rw-r--r--extra/polkit/CVE-2011-1485.patch908
-rw-r--r--extra/polkit/PKGBUILD15
-rw-r--r--extra/ptlib/PKGBUILD20
-rw-r--r--extra/pygobject/PKGBUILD73
-rw-r--r--extra/pygtk/PKGBUILD19
-rw-r--r--extra/python-cairo/PKGBUILD14
-rw-r--r--extra/pywebkitgtk/PKGBUILD2
-rw-r--r--extra/qhull/PKGBUILD49
-rw-r--r--extra/qhull/qhull-2010.1-cmake-install.patch98
-rw-r--r--extra/qhull/qhull-2010.1-overflows.patch50
-rw-r--r--extra/raptor/PKGBUILD14
-rw-r--r--extra/raptor1/PKGBUILD30
-rw-r--r--extra/rasqal/PKGBUILD12
-rw-r--r--extra/redland/PKGBUILD23
-rw-r--r--extra/rest/PKGBUILD29
-rw-r--r--extra/rhythmbox/PKGBUILD36
-rw-r--r--extra/rhythmbox/rhythmbox.install18
-rw-r--r--extra/seahorse/PKGBUILD25
-rw-r--r--extra/seed/PKGBUILD27
-rw-r--r--extra/slim/PKGBUILD60
-rw-r--r--extra/slim/install7
-rw-r--r--extra/slim/logrotate9
-rw-r--r--extra/slim/pam.d10
-rwxr-xr-xextra/slim/rc.d36
-rw-r--r--extra/slim/sigterm.patch45
-rw-r--r--extra/slv2/PKGBUILD6
-rw-r--r--extra/slv2/slv2.changelog5
-rw-r--r--extra/soprano/PKGBUILD8
-rw-r--r--extra/sound-juicer/PKGBUILD20
-rw-r--r--extra/telepathy-farsight/PKGBUILD15
-rw-r--r--extra/telepathy-gabble/PKGBUILD16
-rw-r--r--extra/telepathy-glib/PKGBUILD19
-rw-r--r--extra/telepathy-idle/PKGBUILD14
-rw-r--r--extra/telepathy-logger/PKGBUILD15
-rw-r--r--extra/telepathy-mission-control/PKGBUILD12
-rw-r--r--extra/telepathy-qt4/PKGBUILD10
-rw-r--r--extra/telepathy-sofiasip/PKGBUILD10
-rw-r--r--extra/tomboy/PKGBUILD19
-rw-r--r--extra/totem-plparser/PKGBUILD6
-rw-r--r--extra/totem/PKGBUILD56
-rw-r--r--extra/totem/totem.install17
-rw-r--r--extra/udisks/01-mkfs-tempdir.patch17
-rw-r--r--extra/udisks/PKGBUILD27
-rw-r--r--extra/upower/PKGBUILD12
-rw-r--r--extra/vinagre/PKGBUILD25
-rw-r--r--extra/vinagre/vinagre.install18
-rw-r--r--extra/vino/PKGBUILD19
-rw-r--r--extra/vino/vino.install15
-rw-r--r--extra/vte/PKGBUILD66
-rw-r--r--extra/xarchiver/PKGBUILD15
-rw-r--r--extra/xchm/PKGBUILD14
-rw-r--r--extra/xsp/PKGBUILD8
-rw-r--r--extra/xulrunner/PKGBUILD12
-rw-r--r--extra/xulrunner/xulrunner-omnijar.patch6
-rw-r--r--extra/yelp/PKGBUILD30
-rw-r--r--extra/yelp/yelp.install19
-rw-r--r--extra/zenity/PKGBUILD20
-rw-r--r--extra/zip/PKGBUILD26
-rw-r--r--kde-unstable/kdepim-runtime/PKGBUILD2
-rw-r--r--kde-unstable/kdepim/PKGBUILD4
-rw-r--r--libre/aufs2-libre/PKGBUILD17
-rw-r--r--libre/aufs2-libre/aufs2-libre.install2
-rw-r--r--libre/aufs2-libre/create-tarball.sh10
-rw-r--r--libre/kernel26-libre-lts/PKGBUILD34
-rw-r--r--libre/kernel26-libre-lts/config.i68614
-rw-r--r--libre/kernel26-libre-lts/config.x86_6414
-rw-r--r--libre/libretools/PKGBUILD1
-rw-r--r--multilib/lib32-gdk-pixbuf2/PKGBUILD6
-rw-r--r--multilib/lib32-glib2/PKGBUILD10
-rw-r--r--multilib/lib32-gtk2/PKGBUILD10
-rw-r--r--multilib/wine/PKGBUILD6
-rw-r--r--staging/alpine/2.00-lpam.patch13
-rw-r--r--staging/alpine/CVE-2008-5514.patch20
-rw-r--r--staging/alpine/PKGBUILD44
-rw-r--r--staging/cups/PKGBUILD110
-rwxr-xr-xstaging/cups/cups38
-rw-r--r--staging/cups/cups-avahi.patch1089
-rw-r--r--staging/cups/cups.install15
-rw-r--r--staging/cups/cups.logrotate8
-rw-r--r--staging/cups/cups.pam3
-rw-r--r--staging/cvs/PKGBUILD39
-rw-r--r--staging/cvs/cvs-1.11.23-cve-2010-3846.patch167
-rw-r--r--staging/cvs/cvs-1.11.23-getline64.patch34
-rw-r--r--staging/cvs/cvs.install20
-rw-r--r--staging/dovecot/PKGBUILD74
-rw-r--r--staging/dovecot/dovecot.install57
-rwxr-xr-xstaging/dovecot/dovecot.sh36
-rw-r--r--staging/krb5/CVE-2010-4022.patch19
-rw-r--r--staging/krb5/CVE-2011-0281.0282.0283.patch126
-rw-r--r--staging/krb5/CVE-2011-0284.patch13
-rw-r--r--staging/krb5/CVE-2011-0285.patch39
-rw-r--r--staging/krb5/PKGBUILD77
-rw-r--r--staging/krb5/kadmind.rc40
-rw-r--r--staging/krb5/krb5-kdc.rc40
-rw-r--r--staging/librpcsecgss/PKGBUILD27
-rw-r--r--staging/librpcsecgss/librpcsecgss-0.18-heimdal.patch33
-rw-r--r--staging/libtirpc/PKGBUILD32
-rw-r--r--staging/libtirpc/libtirpc-0.2.1-fortify.patch18
-rw-r--r--staging/mutt/PKGBUILD47
-rw-r--r--staging/mutt/install8
-rw-r--r--staging/neon/PKGBUILD29
-rw-r--r--staging/nss_ldap/PKGBUILD33
-rw-r--r--staging/openssh/PKGBUILD55
-rwxr-xr-xstaging/openssh/sshd48
-rw-r--r--staging/openssh/sshd.confd4
-rw-r--r--staging/openssh/sshd.pam10
-rw-r--r--staging/rasqal/PKGBUILD28
-rw-r--r--staging/redland/PKGBUILD77
-rw-r--r--staging/redland/rpath.diff11
-rw-r--r--staging/slv2/PKGBUILD32
-rw-r--r--staging/slv2/slv2.changelog23
-rw-r--r--staging/slv2/slv2.install14
-rw-r--r--staging/subversion/PKGBUILD92
-rw-r--r--staging/subversion/subversion.rpath.fix.patch10
-rw-r--r--staging/subversion/subversion.suppress.deprecation.warnings.patch22
-rw-r--r--staging/subversion/svn11
-rw-r--r--staging/subversion/svnmerge.py2370
-rwxr-xr-xstaging/subversion/svnserve42
-rw-r--r--staging/subversion/svnserve.conf7
-rw-r--r--staging/wireshark/PKGBUILD54
-rw-r--r--staging/wireshark/wireshark-gtk.install11
-rw-r--r--staging/wireshark/wireshark.install18
-rw-r--r--testing/binutils/PKGBUILD83
-rw-r--r--testing/binutils/binutils.install17
-rw-r--r--testing/blender/PKGBUILD84
-rw-r--r--testing/claws-mail-extra-plugins/PKGBUILD10
-rw-r--r--testing/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch47
-rw-r--r--testing/coreutils/PKGBUILD69
-rw-r--r--testing/coreutils/coreutils-pam.patch428
-rw-r--r--testing/coreutils/coreutils-uname.patch173
-rw-r--r--testing/coreutils/coreutils.install21
-rw-r--r--testing/coreutils/su.pam9
-rw-r--r--testing/cronie/PKGBUILD12
-rw-r--r--testing/cronie/cron.deny1
-rw-r--r--testing/cronie/crontab1
-rw-r--r--testing/gcc/PKGBUILD255
-rw-r--r--testing/gcc/gcc-ada.install20
-rw-r--r--testing/gcc/gcc-fortran.install16
-rw-r--r--testing/gcc/gcc-go.install20
-rw-r--r--testing/gcc/gcc-hash-style-both.patch122
-rw-r--r--testing/gcc/gcc-libs.install16
-rw-r--r--testing/gcc/gcc.install20
-rw-r--r--testing/gcc/gcc_pure64.patch26
-rw-r--r--testing/glib-networking/PKGBUILD8
-rw-r--r--testing/gnome-control-center/PKGBUILD14
-rw-r--r--testing/gnome-control-center/gnome-control-center.install13
-rw-r--r--testing/gnome-desktop-sharp/PKGBUILD35
-rw-r--r--testing/gnome-desktop-sharp/gnome-desktop-sharp-lib-target.patch9
-rw-r--r--testing/gnome-desktop2/PKGBUILD32
-rw-r--r--testing/libgcrypt/PKGBUILD40
-rw-r--r--testing/libgcrypt/libgcrypt.install20
-rw-r--r--testing/libwebkit/PKGBUILD17
-rw-r--r--testing/libwebkit/gcc46.patch11
-rw-r--r--testing/mesa/PKGBUILD53
-rw-r--r--testing/rasqal/PKGBUILD16
-rw-r--r--testing/redland/PKGBUILD25
-rw-r--r--testing/slv2/PKGBUILD6
-rw-r--r--testing/soprano/PKGBUILD8
-rw-r--r--testing/tzdata/PKGBUILD12
482 files changed, 19539 insertions, 2518 deletions
diff --git a/community-staging/freeradius/PKGBUILD b/community-staging/freeradius/PKGBUILD
new file mode 100644
index 000000000..3727a8cb3
--- /dev/null
+++ b/community-staging/freeradius/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id: PKGBUILD 45793 2011-04-29 10:36:54Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Jason R Begley (jayray@digitalgoat.com>
+
+pkgname=freeradius
+pkgver=2.1.10
+pkgrel=6
+pkgdesc="The premier open source RADIUS server"
+arch=('i686' 'x86_64')
+url="http://www.freeradius.org/"
+license=("GPL")
+depends=('openssl' 'krb5' 'pth' 'libldap>=2.4.18' 'net-snmp' 'pam' \
+ 'postgresql-libs>=9.0.3' 'libtool' 'libmysqlclient' 'gdbm' 'shadow')
+optdepends=('libpcap' 'unixodbc' 'python2')
+options=('!libtool' 'emptydirs' '!makeflags')
+install=$pkgname.install
+source=(ftp://ftp.freeradius.org/pub/radius/freeradius-server-$pkgver.tar.bz2 \
+ radiusd
+ krb5-build-fix.patch)
+md5sums=('8ea2bd39460a06212decf2c14fdf3fb8'
+ 'f1a6530b1b69d2fa793aa45b2de379bb'
+ 'c6a61de7576933f59154a53bfc12a2d2')
+
+build() {
+ cd $srcdir/freeradius-server-$pkgver
+ export CFLAGS="$CFLAGS -fno-strict-aliasing"
+ sed -i 's/ -DKRB5_DEPRECATED//' src/modules/rlm_krb5/Makefile.in
+ patch -p1 <$srcdir/krb5-build-fix.patch
+ ./configure --with-system-libtool --with-system-libltdl \
+ --prefix=/usr --enable-heimdal-krb5 \
+ --localstatedir=/var \
+ --sysconfdir=/etc \
+ --libdir=/usr/lib/freeradius
+ make
+}
+
+package() {
+ cd $srcdir/freeradius-server-$pkgver
+ make install R=$pkgdir
+ install -D -m755 ../radiusd $pkgdir/etc/rc.d/radiusd
+ chmod o+r $pkgdir/etc/raddb/*
+ mv $pkgdir/etc/raddb $pkgdir/etc/raddb.default
+ rm -rf $pkgdir/var/run
+}
diff --git a/community-staging/freeradius/freeradius.install b/community-staging/freeradius/freeradius.install
new file mode 100644
index 000000000..e50aa403d
--- /dev/null
+++ b/community-staging/freeradius/freeradius.install
@@ -0,0 +1,22 @@
+post_install() {
+ groupadd radiusd
+ useradd -m -d /var/lib/radiusd -g radiusd -s /bin/false radiusd
+
+ touch /var/log/radius/radius.log
+ chown -R radiusd.radiusd /var/log/radius/radius.log
+
+ [ -d /etc/raddb ] || cp -a /etc/raddb.default /etc/raddb
+
+ /bin/true
+}
+
+pre_remove() {
+ /etc/rc.d/radiusd stop
+ /bin/true
+}
+
+post_remove() {
+ userdel radiusd
+ groupdel radiusd
+ /bin/true
+}
diff --git a/community-staging/freeradius/krb5-build-fix.patch b/community-staging/freeradius/krb5-build-fix.patch
new file mode 100644
index 000000000..11dae7090
--- /dev/null
+++ b/community-staging/freeradius/krb5-build-fix.patch
@@ -0,0 +1,21 @@
+diff -wbBur freeradius-server-2.1.10/src/modules/rlm_krb5/rlm_krb5.c freeradius-server-2.1.10.my/src/modules/rlm_krb5/rlm_krb5.c
+--- freeradius-server-2.1.10/src/modules/rlm_krb5/rlm_krb5.c 2010-09-28 11:03:56.000000000 +0000
++++ freeradius-server-2.1.10.my/src/modules/rlm_krb5/rlm_krb5.c 2011-04-29 09:26:10.000000000 +0000
+@@ -375,7 +375,7 @@
+ * Heimdal krb5 verification
+ */
+ radlog(L_AUTH, "rlm_krb5: Parsed name is: %s@%s\n",
+- *userP->name.name_string.val,
++ "-" /* *userP->name.name_string.val*/,
+ userP->realm);
+
+ krb5_cc_default(context, &id);
+@@ -390,7 +390,7 @@
+
+ radlog(L_AUTH, "rlm_krb5: failed verify_user: %s (%s@%s )",
+ error_message(ret),
+- *userP->name.name_string.val,
++ "-" /* *userP->name.name_string.val */,
+ userP->realm);
+
+ return RLM_MODULE_REJECT;
diff --git a/community-staging/freeradius/radiusd b/community-staging/freeradius/radiusd
new file mode 100755
index 000000000..bf872b6f2
--- /dev/null
+++ b/community-staging/freeradius/radiusd
@@ -0,0 +1,43 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/radiusd`
+case "$1" in
+ start)
+ stat_busy "Starting radiusd Server"
+
+ [ -d /var/run/radiusd ] || mkdir -p /var/run/radiusd
+ [ -f /var/run/radiusd/radiusd.pid ] || touch /var/run/radiusd/radiusd.pid
+ chown -R radiusd.radiusd /var/run/radiusd
+
+ [ -z "$PID" ] && /usr/sbin/radiusd
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ echo $PID > /var/run/radiusd.pid
+ add_daemon radiusd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping radiusd Server"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm /var/run/radiusd.pid
+ rm_daemon radiusd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community-staging/freerdp/PKGBUILD b/community-staging/freerdp/PKGBUILD
new file mode 100644
index 000000000..f845453fe
--- /dev/null
+++ b/community-staging/freerdp/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 45796 2011-04-29 10:42:30Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Stijn Segers <francesco dot borromini at gmail dot com>
+
+pkgname=freerdp
+pkgver=0.8.2
+pkgrel=2
+pkgdesc="Free RDP client"
+arch=('i686' 'x86_64')
+url="http://freerdp.sourceforge.net"
+license=('GPL')
+depends=('openssl' 'libxcursor' 'libcups' 'alsa-lib')
+makedepends=('krb5')
+conflicts=('freerdp-git')
+changelog=${pkgname}.changelog
+options=('!libtool')
+source=(http://downloads.sourceforge.net/project/freerdp/${pkgver%.*}/${pkgname}-${pkgver}.tar.gz)
+md5sums=('cde590336292c977dfc1b4b7badf24d2')
+
+build() {
+ cd `find ${srcdir}/ -type d -name freerdp-\*`
+ [ -x configure ] || sh ./autogen.sh
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd `find ${srcdir}/ -type d -name freerdp-\*`
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/community-staging/freerdp/freerdp.changelog b/community-staging/freerdp/freerdp.changelog
new file mode 100644
index 000000000..d47f165c3
--- /dev/null
+++ b/community-staging/freerdp/freerdp.changelog
@@ -0,0 +1,2 @@
+0.7.1-1 to 0.7.1-2
+* Added x86_64 to supported architectures (tested by figue).
diff --git a/community-staging/gsasl/PKGBUILD b/community-staging/gsasl/PKGBUILD
new file mode 100644
index 000000000..01c39c725
--- /dev/null
+++ b/community-staging/gsasl/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 45799 2011-04-29 10:48:15Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Orivej Desh <smpuj@bk.ru>
+# Maintainer: Orivej Desh <smpuj@bk.ru>
+
+pkgname=gsasl
+pkgver=1.5.4
+pkgrel=2
+pkgdesc="Simple Authentication and Security Layer framework and a few common SASL mechanisms"
+arch=("i686" "x86_64")
+url="http://josefsson.org/gsasl/"
+license=("GPL")
+depends=('gnutls' 'libidn' 'krb5')
+source=("ftp://alpha.gnu.org/gnu/gsasl/$pkgname-$pkgver.tar.gz")
+md5sums=('44cf5073a6ee2d77d526605bd6ab3904')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+ rm "$pkgdir/usr/share/info/dir" "$pkgdir/usr/lib/libgsasl.la"
+}
diff --git a/community-staging/ipsec-tools/PKGBUILD b/community-staging/ipsec-tools/PKGBUILD
new file mode 100644
index 000000000..77a72f6df
--- /dev/null
+++ b/community-staging/ipsec-tools/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 45815 2011-04-29 12:08:18Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Contributor: Allan Henriksen <allan.henriksen@gmail.com>
+
+pkgname=ipsec-tools
+pkgver=0.8.0
+pkgrel=2
+pkgdesc="KAME IPSec tools ported to Linux"
+arch=('i686' 'x86_64')
+url="http://ipsec-tools.sourceforge.net/"
+depends=('readline' 'openssl' 'krb5')
+license=('GPL')
+options=('!makeflags' '!libtool')
+source=(http://downloads.sourceforge.net/sourceforge/ipsec-tools/$pkgname-$pkgver.tar.bz2
+ racoon.rc
+ ipsec.rc)
+md5sums=('b79aae3055a51f8de5c0f1b8ca6cf619'
+ '416b8e362d86987b8c55f7153cdafbeb'
+ '90d0810267cbd847383ae3101699b192')
+
+build() {
+ cd $srcdir/$pkgname-$pkgver
+ sed -i 's#-Werror##' configure
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --enable-security-context=no --enable-hybrid --enable-dpd --enable-natt \
+ --enable-adminport --enable-gssapi
+ make
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver
+ make DESTDIR=$pkgdir install
+ install -Dm0755 $srcdir/racoon.rc $pkgdir/etc/rc.d/racoon
+ install -Dm0755 $srcdir/ipsec.rc $pkgdir/etc/rc.d/ipsec
+}
diff --git a/community-staging/ipsec-tools/ipsec.rc b/community-staging/ipsec-tools/ipsec.rc
new file mode 100755
index 000000000..cff472c59
--- /dev/null
+++ b/community-staging/ipsec-tools/ipsec.rc
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+case "$1" in
+ start)
+ stat_busy "Loading IPSec Security Policy Database..."
+ /usr/sbin/setkey -f /etc/ipsec.conf &>/dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon ipsec
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Unloading IPSec Security Policy Database..."
+ /usr/sbin/setkey -F -P
+ /usr/sbin/setkey -F
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon ipsec
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community-staging/ipsec-tools/racoon.rc b/community-staging/ipsec-tools/racoon.rc
new file mode 100755
index 000000000..1a67dcac5
--- /dev/null
+++ b/community-staging/ipsec-tools/racoon.rc
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/racoon`
+case "$1" in
+ start)
+ stat_busy "Starting Racoon IPSec daemon"
+ [ -z "$PID" ] && /usr/sbin/racoon
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon racoon
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Racoon IPSec daemon"
+ [ ! -z "$PID" ] && kill $PID &>/dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon racoon
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community-staging/perl-gssapi/PKGBUILD b/community-staging/perl-gssapi/PKGBUILD
new file mode 100644
index 000000000..ec1e50684
--- /dev/null
+++ b/community-staging/perl-gssapi/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 45801 2011-04-29 10:49:42Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Charles Mauch <cmauch@gmail.com>
+
+pkgname=perl-gssapi
+pkgver=0.28
+pkgrel=3
+pkgdesc="Perl/CPAN Module GSSAPI"
+arch=("i686" "x86_64")
+url="http://search.cpan.org/dist/GSSAPI"
+license=("GPL" "PerlArtistic")
+depends=('krb5')
+source=("http://www.cpan.org/authors/id/A/AG/AGROLMS/GSSAPI-$pkgver.tar.gz")
+md5sums=('65f00a0749212af064289c8a05e59b3f')
+
+build() {
+ cd $srcdir/GSSAPI-$pkgver
+ PERL_MM_USE_DEFAULT=1 perl Makefile.PL INSTALLDIRS=vendor
+ make
+}
+
+package() {
+ cd $srcdir/GSSAPI-$pkgver
+ make install DESTDIR=$pkgdir
+ find $pkgdir -name '.packlist' -delete
+ find $pkgdir -name '*.pod' -delete
+}
diff --git a/community-staging/pgadmin3/ChangeLog b/community-staging/pgadmin3/ChangeLog
new file mode 100644
index 000000000..76de01d7d
--- /dev/null
+++ b/community-staging/pgadmin3/ChangeLog
@@ -0,0 +1,28 @@
+2008-08-21 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 1.8.5
+
+2008-06-24 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updated for i686 - 1.8.4
+
+2008-02-21 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updated for i686 - 1.8.2
+
+2008-01-05 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updated for x86_64 - 1.8.1
+ * Updated for i686 - 1.8.1
+
+2007-10-28 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updated version
+
+2007-10-11 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updated version
+
+2007-06-28 tardo <tardo@nagi-fanboi.net>
+
+ * Built for x86_64
diff --git a/community-staging/pgadmin3/PKGBUILD b/community-staging/pgadmin3/PKGBUILD
new file mode 100644
index 000000000..e9da012df
--- /dev/null
+++ b/community-staging/pgadmin3/PKGBUILD
@@ -0,0 +1,43 @@
+# $Id: PKGBUILD 45809 2011-04-29 11:11:02Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Douglas Soares de Andrade <dsa@aur.archlinux.org>
+# Contributor: Benjamin Andresen <benny@klapmuetz.org>
+# Contributor: bekks <eduard.warkentin@gmx.de>
+
+pkgname=pgadmin3
+pkgver=1.12.2
+_realver=1.12.2
+pkgrel=2
+pkgdesc="A comprehensive design and management interface for PostgreSQL database"
+arch=('i686' 'x86_64')
+url="http://www.pgadmin.org"
+license=('custom')
+depends=('wxgtk' 'postgresql-libs>=8.4.1' 'libxslt')
+makedepends=('libpqxx' 'krb5')
+source=(ftp://ftp.de.postgresql.org/pub/packages/databases/PostgreSQL/pgadmin3/release/v${_realver}/src/pgadmin3-${_realver}.tar.gz
+ pgadmin3.desktop)
+md5sums=('5b0e7b0867c42a529ce2a41bc7f830c8'
+ 'd07ba4df54baead30b66d19d7450bcad')
+
+build() {
+ cd $srcdir/pgadmin3-${_realver}
+
+ unset LDFLAGS
+
+ [ $NOEXTRACT -eq 1 ] || ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd $srcdir/pgadmin3-${_realver}
+ make DESTDIR=$pkgdir/ install
+
+ install -D -m 644 i18n/$pkgname.lng $pkgdir/usr/share/pgadmin3/i18n
+ install -D -m 644 LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
+
+ mkdir -p $pkgdir/usr/share/pgadmin3/pixmaps/
+ mkdir -p $pkgdir/usr/share/applications/
+
+ install -D -m 644 pgadmin/include/images/pgAdmin3.ico $pkgdir/usr/share/pgadmin3/pixmaps/pgAdmin3.ico
+ install -D -m 644 $srcdir/pgadmin3.desktop $pkgdir/usr/share/applications/
+}
diff --git a/community-staging/pgadmin3/pgadmin3.desktop b/community-staging/pgadmin3/pgadmin3.desktop
new file mode 100644
index 000000000..2e0864f60
--- /dev/null
+++ b/community-staging/pgadmin3/pgadmin3.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Encoding=UTF-8
+Name=pgadmin3
+Comment=A comprehensive design and management interface for PostgreSQL database
+Exec=pgadmin3
+Terminal=false
+Type=Application
+StartupNotify=true
+Icon=/usr/share/pgadmin3/pixmaps/pgAdmin3.ico
+Categories=Application;Development;
diff --git a/community-staging/splix/PKGBUILD b/community-staging/splix/PKGBUILD
new file mode 100644
index 000000000..9b8061ad5
--- /dev/null
+++ b/community-staging/splix/PKGBUILD
@@ -0,0 +1,34 @@
+# $Id: PKGBUILD 45807 2011-04-29 11:10:15Z spupykin $
+# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
+# Maintainer: Angel 'angvp' Velasquez <angvp[at]archlinux.com.ve>
+# Contributor: Francis Carroll (franciscarroll at gmail dot com)
+
+pkgname=splix
+pkgver=2.0.0
+pkgrel=9
+pkgdesc="CUPS drivers for SPL (Samsung Printer Language) printers"
+arch=('i686' 'x86_64')
+url="http://splix.ap2c.org/"
+license=('GPL')
+depends=('libcups' 'gcc-libs' 'ghostscript>=9.02')
+makedepends=('libcups' 'jbigkit' 'krb5')
+install=splix.install
+source=(http://downloads.sourceforge.net/splix/$pkgname-$pkgver.tar.bz2)
+md5sums=('f3aa735c22a926818b3d8b26c9964186')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ sed -i 's#const PPDFile::Value::Value #const PPDFile::Value #' src/ppdfile.cpp
+
+ make PSTORASTER=gstoraster
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ install -d "$pkgdir/usr/lib/cups/filter"
+ install -d "$pkgdir/usr/share/cups/model/samsung"
+
+ make DESTDIR="$pkgdir" install
+}
diff --git a/community-staging/splix/splix.install b/community-staging/splix/splix.install
new file mode 100644
index 000000000..ee1eb78a3
--- /dev/null
+++ b/community-staging/splix/splix.install
@@ -0,0 +1,19 @@
+post_install() {
+ cat <<EOF
+Installation of the color profile for color printers:
+-----------------------------------------------------
+
+ Color printers needs color profile files to get better results. These
+files are provided by your printer manufacturer and you have to install them
+manually. To do that, download the linux official drivers and locate the "cms"
+directory. Install this directory to "/usr/share/cups/model/\$MANUFACTURER/cms".
+
+ Samsung color profile files are available at:
+ (Then use MANUFACTURER=samsung)
+ http://splix.ap2c.org/samsung_cms.tar.bz2
+EOF
+}
+
+post_upgrade() {
+ post_install
+}
diff --git a/community-testing/exim/PKGBUILD b/community-testing/exim/PKGBUILD
new file mode 100644
index 000000000..d8b81e37b
--- /dev/null
+++ b/community-testing/exim/PKGBUILD
@@ -0,0 +1,77 @@
+# $Id: PKGBUILD 45865 2011-04-30 05:58:54Z angvp $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Maintainer: judd <jvinet@zeroflux.org>
+pkgname=exim
+pkgver=4.75
+pkgrel=1
+pkgdesc="A Message Transfer Agent"
+arch=(i686 x86_64)
+url="http://www.exim.org/"
+license=('GPL')
+backup=(etc/mail/aliases etc/mail/exim.conf \
+ etc/logrotate.d/exim etc/conf.d/exim)
+install=exim.install
+depends=('db' 'pcre' 'pam' 'tcp_wrappers' 'openssl' 'libldap')
+makedepends=('sudo')
+provides=('smtp-server')
+conflicts=('smtp-server')
+options=('!makeflags')
+source=(ftp://mirrors.24-7-solutions.net/pub/exim/ftp/exim/exim4/exim-${pkgver}.tar.bz2
+ aliases
+ newaliases
+ exim
+ exim.logrotate
+ exim.conf.d
+ exim.Makefile
+ )
+md5sums=('427fb74bbd2afbea759e6da38f25af17'
+ '4874006f0585253ddab027d441009757'
+ 'ea39f58bffc16f5e3bbe59dffcf09449'
+ '9aed772e87223213e8da9ca5e7376869'
+ 'd788c26f86a9d72a0aebb3b849fe74f2'
+ 'b75fe4c6e960a59a25b5f51e8f61ba3a'
+ '63e22266168e5eddd42b6e2d1dc5caf5')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ sed -i 's|tail -1|tail -n -1|g' scripts/Configure-config.h
+ # Make some configuration changes
+ cp ${srcdir}/${pkgname}.Makefile Local/Makefile
+ make
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver
+ install -D -m644 ../exim.logrotate ${pkgdir}/etc/logrotate.d/exim
+ install -D -m644 ../exim.conf.d ${pkgdir}/etc/conf.d/exim
+ install -D -m644 doc/exim.8 ${pkgdir}/usr/share/man/man8/exim.8
+ install -D -m755 ../exim ${pkgdir}/etc/rc.d/exim
+ mkdir -p ${pkgdir}/var/spool/exim/db ${pkgdir}/etc/mail \
+ ${pkgdir}/var/log/exim ${pkgdir}/usr/{lib,sbin}
+ chmod 770 ${pkgdir}/var/spool/exim ${pkgdir}/var/spool/exim/db ${pkgdir}/var/log/exim
+ cd build-Linux-*
+ for i in exicyclog exim_checkaccess exim_dumpdb exim_lock\
+ exim_tidydb exipick exiqsumm exigrep exim_dbmbuild exim\
+ exim_fixdb eximstats exinext exiqgrep exiwhat
+ do
+ install -m 0755 $i ${pkgdir}/usr/sbin
+ done
+
+ cd ${srcdir}/exim-${pkgver}/src
+ sed "s|/etc/aliases|/etc/mail/aliases|g" configure.default | \
+ sed "s|SYSTEM_ALIASES_FILE|/etc/mail/aliases|g" \
+ >${pkgdir}/etc/mail/exim.conf
+
+ cp ${srcdir}/aliases ${pkgdir}/etc/mail
+ cp ${srcdir}/newaliases ${pkgdir}/usr/sbin
+ cd ${pkgdir}/usr/sbin
+ for i in mailq rmail rsmtp runq sendmail
+ do
+ ln -s exim $i
+ done
+ # fhs compliancy
+ ln -s ../sbin/exim ../lib/sendmail
+
+ mkdir -p ${pkgdir}/etc/rc.d
+ cp ${srcdir}/exim ${pkgdir}/etc/rc.d
+}
diff --git a/community-testing/exim/aliases b/community-testing/exim/aliases
new file mode 100644
index 000000000..5a76ff7d5
--- /dev/null
+++ b/community-testing/exim/aliases
@@ -0,0 +1,35 @@
+#
+# /etc/mail/aliases
+#
+# NOTE: Make sure you run 'newaliases' after modifying this file
+#
+
+# Basic system aliases -- these MUST be present.
+MAILER-DAEMON: postmaster
+postmaster: root
+hostmaster: root
+webmaster: hostmaster
+ftpmaster: hostmaster
+admin: hostmaster
+administrator: hostmaster
+
+# General redirections for pseudo accounts.
+bin: root
+daemon: root
+games: root
+ingres: root
+nobody: root
+system: root
+toor: root
+uucp: root
+
+# Well-known aliases.
+manager: root
+dumper: root
+operator: root
+
+# trap decode to catch security attacks
+decode: root
+
+# Person who should get root's mail
+#root:
diff --git a/community-testing/exim/exim b/community-testing/exim/exim
new file mode 100755
index 000000000..8e9640b32
--- /dev/null
+++ b/community-testing/exim/exim
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+# source application-specific settings
+[ -f /etc/conf.d/exim ] && . /etc/conf.d/exim
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/exim`
+
+case "$1" in
+ start)
+ stat_busy "Starting Exim"
+ [ -z "$PID" ] && /usr/sbin/exim $EXIM_ARGS
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon exim
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Exim"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm /var/run/exim.pid
+ rm_daemon exim
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 2
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/community-testing/exim/exim.Makefile b/community-testing/exim/exim.Makefile
new file mode 100644
index 000000000..44fbe10f4
--- /dev/null
+++ b/community-testing/exim/exim.Makefile
@@ -0,0 +1,1227 @@
+# $Cambridge: exim/src/src/EDITME,v 1.27 2010/06/12 15:21:25 jetmore Exp $
+
+##################################################
+# The Exim mail transport agent #
+##################################################
+
+# This is the template for Exim's main build-time configuration file. It
+# contains settings that are independent of any operating system. These are
+# things that are mostly sysadmin choices. The items below are divided into
+# those you must specify, those you probably want to specify, those you might
+# often want to specify, and those that you almost never need to mention.
+
+# Edit this file and save the result to a file called Local/Makefile within the
+# Exim distribution directory before running the "make" command.
+
+# Things that depend on the operating system have default settings in
+# OS/Makefile-Default, but these are overridden for some OS by files called
+# called OS/Makefile-<osname>. You can further override these by creating files
+# called Local/Makefile-<osname>, where "<osname>" stands for the name of your
+# operating system - look at the names in the OS directory to see which names
+# are recognized.
+
+# However, if you are building Exim for a single OS only, you don't need to
+# worry about setting up Local/Makefile-<osname>. Any build-time configuration
+# settings you require can in fact be placed in the one file called
+# Local/Makefile. It is only if you are building for several OS from the same
+# source files that you need to worry about splitting off your own OS-dependent
+# settings into separate files. (There's more explanation about how this all
+# works in the toplevel README file, under "Modifying the building process", as
+# well as in the Exim specification.)
+
+# One OS-specific thing that may need to be changed is the command for running
+# the C compiler; the overall default is gcc, but some OS Makefiles specify cc.
+# You can override anything that is set by putting CC=whatever in your
+# Local/Makefile.
+
+# NOTE: You should never need to edit any of the distributed Makefiles; all
+# overriding can be done in your Local/Makefile(s). This will make it easier
+# for you when the next release comes along.
+
+# The location of the X11 libraries is something else that is quite variable
+# even between different versions of the same operating system (and indeed
+# there are different versions of X11 as well, of course). The four settings
+# concerned here are X11, XINCLUDE, XLFLAGS (linking flags) and X11_LD_LIB
+# (dynamic run-time library). You need not worry about X11 unless you want to
+# compile the Exim monitor utility. Exim itself does not use X11.
+
+# Another area of variability between systems is the type and location of the
+# DBM library package. Exim has support for ndbm, gdbm, tdb, and Berkeley DB.
+# By default the code assumes ndbm; this often works with gdbm or DB, provided
+# they are correctly installed, via their compatibility interfaces. However,
+# Exim can also be configured to use the native calls for Berkeley DB (obsolete
+# versions 1.85, 2.x, 3.x, or the current 4.x version) and also for gdbm.
+
+# For some operating systems, a default DBM library (other than ndbm) is
+# selected by a setting in the OS-specific Makefile. Most modern OS now have
+# a DBM library installed as standard, and in many cases this will be selected
+# for you by the OS-specific configuration. If Exim compiles without any
+# problems, you probably do not have to worry about the DBM library. If you
+# do want or need to change it, you should first read the discussion in the
+# file doc/dbm.discuss.txt, which also contains instructions for testing Exim's
+# interface to the DBM library.
+
+# In Local/Makefiles blank lines and lines starting with # are ignored. It is
+# also permitted to use the # character to add a comment to a setting, for
+# example
+#
+# EXIM_GID=42 # the "mail" group
+#
+# However, with some versions of "make" this works only if there is no white
+# space between the end of the setting and the #, so perhaps it is best
+# avoided. A consequence of this facility is that it is not possible to have
+# the # character present in any setting, but I can't think of any cases where
+# this would be wanted.
+###############################################################################
+
+
+
+###############################################################################
+# THESE ARE THINGS YOU MUST SPECIFY #
+###############################################################################
+
+# Exim will not build unless you specify BIN_DIRECTORY, CONFIGURE_FILE, and
+# EXIM_USER. You also need EXIM_GROUP if EXIM_USER specifies a uid by number.
+
+# If you don't specify SPOOL_DIRECTORY, Exim won't fail to build. However, it
+# really is a very good idea to specify it here rather than at run time. This
+# is particularly true if you let the logs go to their default location in the
+# spool directory, because it means that the location of the logs is known
+# before Exim has read the run time configuration file.
+
+#------------------------------------------------------------------------------
+# BIN_DIRECTORY defines where the exim binary will be installed by "make
+# install". The path is also used internally by Exim when it needs to re-invoke
+# itself, either to send an error message, or to recover root privilege. Exim's
+# utility binaries and scripts are also installed in this directory. There is
+# no "standard" place for the binary directory. Some people like to keep all
+# the Exim files under one directory such as /usr/exim; others just let the
+# Exim binaries go into an existing directory such as /usr/sbin or
+# /usr/local/sbin. The installation script will try to create this directory,
+# and any superior directories, if they do not exist.
+
+BIN_DIRECTORY=/usr/sbin
+
+
+#------------------------------------------------------------------------------
+# CONFIGURE_FILE defines where Exim's run time configuration file is to be
+# found. It is the complete pathname for the file, not just a directory. The
+# location of all other run time files and directories can be changed in the
+# run time configuration file. There is a lot of variety in the choice of
+# location in different OS, and in the preferences of different sysadmins. Some
+# common locations are in /etc or /etc/mail or /usr/local/etc or
+# /usr/local/etc/mail. Another possibility is to keep all the Exim files under
+# a single directory such as /usr/exim. Whatever you choose, the installation
+# script will try to make the directory and any superior directories if they
+# don't exist. It will also install a default runtime configuration if this
+# file does not exist.
+
+CONFIGURE_FILE=/etc/mail/exim.conf
+
+# It is possible to specify a colon-separated list of files for CONFIGURE_FILE.
+# In this case, Exim will use the first of them that exists when it is run.
+# However, if a list is specified, the installation script no longer tries to
+# make superior directories or to install a default runtime configuration.
+
+
+#------------------------------------------------------------------------------
+# The Exim binary must normally be setuid root, so that it starts executing as
+# root, but (depending on the options with which it is called) it does not
+# always need to retain the root privilege. These settings define the user and
+# group that is used for Exim processes when they no longer need to be root. In
+# particular, this applies when receiving messages and when doing remote
+# deliveries. (Local deliveries run as various non-root users, typically as the
+# owner of a local mailbox.) Specifying these values as root is not supported.
+
+EXIM_USER=ref:exim
+
+# If you specify EXIM_USER as a name, this is looked up at build time, and the
+# uid number is built into the binary. However, you can specify that this
+# lookup is deferred until runtime. In this case, it is the name that is built
+# into the binary. You can do this by a setting of the form:
+
+# EXIM_USER=ref:exim
+
+# In other words, put "ref:" in front of the user name. If you set EXIM_USER
+# like this, any value specified for EXIM_GROUP is also passed "by reference".
+# Although this costs a bit of resource at runtime, it is convenient to use
+# this feature when building binaries that are to be run on multiple systems
+# where the name may refer to different uids. It also allows you to build Exim
+# on a system where there is no Exim user defined.
+
+# If the setting of EXIM_USER is numeric (e.g. EXIM_USER=42), there must
+# also be a setting of EXIM_GROUP. If, on the other hand, you use a name
+# for EXIM_USER (e.g. EXIM_USER=exim), you don't need to set EXIM_GROUP unless
+# you want to use a group other than the default group for the given user.
+
+# EXIM_GROUP=
+
+# Many sites define a user called "exim", with an appropriate default group,
+# and use
+#
+# EXIM_USER=exim
+#
+# while leaving EXIM_GROUP unspecified (commented out).
+
+
+#------------------------------------------------------------------------------
+# SPOOL_DIRECTORY defines the directory where all the data for messages in
+# transit is kept. It is strongly recommended that you define it here, though
+# it is possible to leave this till the run time configuration.
+
+# Exim creates the spool directory if it does not exist. The owner and group
+# will be those defined by EXIM_USER and EXIM_GROUP, and this also applies to
+# all the files and directories that are created in the spool directory.
+
+# Almost all installations choose this:
+
+SPOOL_DIRECTORY=/var/spool/exim
+
+
+
+###############################################################################
+# THESE ARE THINGS YOU PROBABLY WANT TO SPECIFY #
+###############################################################################
+
+# If you need extra header file search paths on all compiles, put the -I
+# options in INCLUDE. If you want the extra searches only for certain
+# parts of the build, see more specific xxx_INCLUDE variables below.
+
+# INCLUDE=-I/example/include
+
+# You need to specify some routers and transports if you want the Exim that you
+# are building to be capable of delivering mail. You almost certainly need at
+# least one type of lookup. You should consider whether you want to build
+# the Exim monitor or not.
+
+
+#------------------------------------------------------------------------------
+# These settings determine which individual router drivers are included in the
+# Exim binary. There are no defaults in the code; those routers that are wanted
+# must be defined here by setting the appropriate variables to the value "yes".
+# Including a router in the binary does not cause it to be used automatically.
+# It has also to be configured in the run time configuration file. By
+# commenting out those you know you don't want to use, you can make the binary
+# a bit smaller. If you are unsure, leave all of these included for now.
+
+ROUTER_ACCEPT=yes
+ROUTER_DNSLOOKUP=yes
+ROUTER_IPLITERAL=yes
+ROUTER_MANUALROUTE=yes
+ROUTER_QUERYPROGRAM=yes
+ROUTER_REDIRECT=yes
+
+# This one is very special-purpose, so is not included by default.
+
+# ROUTER_IPLOOKUP=yes
+
+
+#------------------------------------------------------------------------------
+# These settings determine which individual transport drivers are included in
+# the Exim binary. There are no defaults; those transports that are wanted must
+# be defined here by setting the appropriate variables to the value "yes".
+# Including a transport in the binary does not cause it to be used
+# automatically. It has also to be configured in the run time configuration
+# file. By commenting out those you know you don't want to use, you can make
+# the binary a bit smaller. If you are unsure, leave all of these included for
+# now.
+
+TRANSPORT_APPENDFILE=yes
+TRANSPORT_AUTOREPLY=yes
+TRANSPORT_PIPE=yes
+TRANSPORT_SMTP=yes
+
+# This one is special-purpose, and commonly not required, so it is not
+# included by default.
+
+TRANSPORT_LMTP=yes
+
+
+#------------------------------------------------------------------------------
+# The appendfile transport can write messages to local mailboxes in a number
+# of formats. The code for three specialist formats, maildir, mailstore, and
+# MBX, is included only when requested. If you do not know what this is about,
+# leave these settings commented out.
+
+SUPPORT_MAILDIR=yes
+# SUPPORT_MAILSTORE=yes
+# SUPPORT_MBX=yes
+
+
+#------------------------------------------------------------------------------
+# See below for dynamic lookup modules.
+# LOOKUP_MODULE_DIR=/usr/lib/exim/lookups/
+# If not using package management but using this anyway, then think about how
+# you perform upgrades and revert them. You should consider the benefit of
+# embedding the Exim version number into LOOKUP_MODULE_DIR, so that you can
+# maintain two concurrent sets of modules.
+
+# To build a module dynamically, you'll need to define CFLAGS_DYNAMIC for
+# your platform. Eg:
+# CFLAGS_DYNAMIC=-shared -rdynamic
+# CFLAGS_DYNAMIC=-shared -rdynamic -fPIC
+
+#------------------------------------------------------------------------------
+# These settings determine which file and database lookup methods are included
+# in the binary. See the manual chapter entitled "File and database lookups"
+# for discussion. DBM and lsearch (linear search) are included by default. If
+# you are unsure about the others, leave them commented out for now.
+# LOOKUP_DNSDB does *not* refer to general mail routing using the DNS. It is
+# for the specialist case of using the DNS as a general database facility (not
+# common).
+# If set to "2" instead of "yes" then the corresponding lookup will be
+# built as a module and must be installed into LOOKUP_MODULE_DIR. You need to
+# add -export-dynamic -rdynamic to EXTRALIBS. You may also need to add -ldl to
+# EXTRALIBS so that dlopen() is available to Exim. You need to define
+# LOOKUP_MODULE_DIR above so the exim binary actually loads dynamic lookup
+# modules.
+# Also, instead of adding all the libraries/includes to LOOKUP_INCLUDE and
+# LOOKUP_LIBS, add them to the respective LOOKUP_*_INCLUDE and LOOKUP_*_LIBS
+# (where * is the name as given here in this list). That ensures that only
+# the dynamic library and not the exim binary will be linked against the
+# library.
+# NOTE: LDAP cannot be built as a module!
+
+LOOKUP_DBM=yes
+LOOKUP_LSEARCH=yes
+LOOKUP_DNSDB=yes
+
+# LOOKUP_CDB=yes
+LOOKUP_DSEARCH=yes
+# LOOKUP_IBASE=yes
+LOOKUP_LDAP=yes
+# LOOKUP_MYSQL=yes
+# LOOKUP_NIS=yes
+# LOOKUP_NISPLUS=yes
+# LOOKUP_ORACLE=yes
+# LOOKUP_PASSWD=yes
+# LOOKUP_PGSQL=yes
+# LOOKUP_SQLITE=yes
+# LOOKUP_WHOSON=yes
+
+# These two settings are obsolete; all three lookups are compiled when
+# LOOKUP_LSEARCH is enabled. However, we retain these for backward
+# compatibility. Setting one forces LOOKUP_LSEARCH if it is not set.
+
+# LOOKUP_WILDLSEARCH=yes
+# LOOKUP_NWILDLSEARCH=yes
+
+
+#------------------------------------------------------------------------------
+# If you have set LOOKUP_LDAP=yes, you should set LDAP_LIB_TYPE to indicate
+# which LDAP library you have. Unfortunately, though most of their functions
+# are the same, there are minor differences. Currently Exim knows about four
+# LDAP libraries: the one from the University of Michigan (also known as
+# OpenLDAP 1), OpenLDAP 2, the Netscape SDK library, and the library that comes
+# with Solaris 7 onwards. Uncomment whichever of these you are using.
+
+# LDAP_LIB_TYPE=OPENLDAP1
+LDAP_LIB_TYPE=OPENLDAP2
+# LDAP_LIB_TYPE=NETSCAPE
+# LDAP_LIB_TYPE=SOLARIS
+
+# If you don't set any of these, Exim assumes the original University of
+# Michigan (OpenLDAP 1) library.
+
+
+#------------------------------------------------------------------------------
+# The PCRE library is required for exim. There is no longer an embedded
+# version of the PCRE library included with the source code, instead you
+# must use a system library or build your own copy of PCRE.
+# In either case you must specify the library link info here. If the
+# PCRE header files are not in the standard search path you must also
+# modify the INCLUDE path (above)
+# The default setting of PCRE_LIBS should work on the vast majority of
+# systems
+
+PCRE_LIBS=-lpcre
+
+
+#------------------------------------------------------------------------------
+# Additional libraries and include directories may be required for some
+# lookup styles (e.g. LDAP, MYSQL or PGSQL). LOOKUP_LIBS is included only on
+# the command for linking Exim itself, not on any auxiliary programs. You
+# don't need to set LOOKUP_INCLUDE if the relevant directories are already
+# specified in INCLUDE. The settings below are just examples; -lpq is for
+# PostgreSQL, -lgds is for Interbase, -lsqlite3 is for SQLite.
+
+# LOOKUP_INCLUDE=-I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include
+# LOOKUP_LIBS=-L/usr/local/lib -lldap -llber -lmysqlclient -lpq -lgds -lsqlite3
+
+
+#------------------------------------------------------------------------------
+# Compiling the Exim monitor: If you want to compile the Exim monitor, a
+# program that requires an X11 display, then EXIM_MONITOR should be set to the
+# value "eximon.bin". Comment out this setting to disable compilation of the
+# monitor. The locations of various X11 directories for libraries and include
+# files are defaulted in the OS/Makefile-Default file, but can be overridden in
+# local OS-specific make files.
+
+
+
+
+#------------------------------------------------------------------------------
+# Compiling Exim with content scanning support: If you want to compile Exim
+# with support for message body content scanning, set WITH_CONTENT_SCAN to
+# the value "yes". This will give you malware and spam scanning in the DATA ACL,
+# and the MIME ACL. Please read the documentation to learn more about these
+# features.
+
+WITH_CONTENT_SCAN=yes
+
+# If you want to use the deprecated "demime" condition in the DATA ACL,
+# uncomment the line below. Doing so will also explicitly turn on the
+WITH_CONTENT_SCAN=yes
+# the "demime" condition.
+
+WITH_OLD_DEMIME=yes
+
+# If you're using ClamAV and are backporting fixes to an old version, instead
+# of staying current (which is the more usual approach) then you may need to
+# use an older API which uses a STREAM command, now deprecated, instead of
+# zINSTREAM. If you need to set this, please let the Exim developers know, as
+# if nobody reports a need for it, we'll remove this option and clean up the
+# code. zINSTREAM was introduced with ClamAV 0.95.
+#
+# WITH_OLD_CLAMAV_STREAM=yes
+
+#------------------------------------------------------------------------------
+# By default Exim includes code to support DKIM (DomainKeys Identified
+# Mail, RFC4871) signing and verification. Verification of signatures is
+# turned on by default. See the spec for information on conditionally
+# disabling it. To disable the inclusion of the entire feature, set
+# DISABLE_DKIM to "yes"
+
+# DISABLE_DKIM=yes
+
+
+#------------------------------------------------------------------------------
+# Compiling Exim with experimental features. These are documented in
+# experimental-spec.txt. "Experimental" means that the way these features are
+# implemented may still change. Backward compatibility is not guaranteed.
+
+# Uncomment the following lines to add SPF support. You need to have libspf2
+# installed on your system (www.libspf2.org). Depending on where it is installed
+# you may have to edit the CFLAGS and LDFLAGS lines.
+
+# EXPERIMENTAL_SPF=yes
+# CFLAGS += -I/usr/local/include
+# LDFLAGS += -lspf2
+
+# Uncomment the following lines to add SRS (Sender rewriting scheme) support.
+# You need to have libsrs_alt installed on your system (srs.mirtol.com).
+# Depending on where it is installed you may have to edit the CFLAGS and
+# LDFLAGS lines.
+
+# EXPERIMENTAL_SRS=yes
+# CFLAGS += -I/usr/local/include
+# LDFLAGS += -lsrs_alt
+
+# Uncomment the following lines to add Brightmail AntiSpam support. You need
+# to have the Brightmail client SDK installed. Please check the experimental
+# documentation for implementation details. You need to edit the CFLAGS and
+# LDFLAGS lines.
+
+# EXPERIMENTAL_BRIGHTMAIL=yes
+# CFLAGS += -I/opt/brightmail/bsdk-6.0/include
+# LDFLAGS += -lxml2_single -lbmiclient_single -L/opt/brightmail/bsdk-6.0/lib
+
+
+
+###############################################################################
+# THESE ARE THINGS YOU MIGHT WANT TO SPECIFY #
+###############################################################################
+
+# The items in this section are those that are commonly changed according to
+# the sysadmin's preferences, but whose defaults are often acceptable. The
+# first five are concerned with security issues, where differing levels of
+# paranoia are appropriate in different environments. Sysadmins also vary in
+# their views on appropriate levels of defence in these areas. If you do not
+# understand these issues, go with the defaults, which are used by many sites.
+
+
+#------------------------------------------------------------------------------
+# Although Exim is normally a setuid program, owned by root, it refuses to run
+# local deliveries as root by default. There is a runtime option called
+# "never_users" which lists the users that must never be used for local
+# deliveries. There is also the setting below, which provides a list that
+# cannot be overridden at runtime. This guards against problems caused by
+# unauthorized changes to the runtime configuration. You are advised not to
+# remove "root" from this option, but you can add other users if you want. The
+# list is colon-separated. It must NOT contain any spaces.
+
+# FIXED_NEVER_USERS=root:bin:daemon
+FIXED_NEVER_USERS=root
+
+
+#------------------------------------------------------------------------------
+# By default, Exim insists that its configuration file be owned by root. You
+# can specify one additional permitted owner here.
+
+# CONFIGURE_OWNER=
+
+# If the configuration file is group-writeable, Exim insists by default that it
+# is owned by root. You can specify one additional permitted group owner here.
+
+# CONFIGURE_GROUP=
+
+# If you specify CONFIGURE_OWNER or CONFIGURE_GROUP as a name, this is looked
+# up at build time, and the uid or gid number is built into the binary.
+# However, you can specify that the lookup is deferred until runtime. In this
+# case, it is the name that is built into the binary. You can do this by a
+# setting of the form:
+
+# CONFIGURE_OWNER=ref:mail
+# CONFIGURE_GROUP=ref:sysadmin
+
+# In other words, put "ref:" in front of the user or group name. Although this
+# costs a bit of resource at runtime, it is convenient to use this feature when
+# building binaries that are to be run on multiple systems where the names may
+# refer to different uids or gids. It also allows you to build Exim on a system
+# where the relevant user or group is not defined.
+
+
+#------------------------------------------------------------------------------
+# The -C option allows Exim to be run with an alternate runtime configuration
+# file. When this is used by root, root privilege is retained by the binary
+# (for any other caller including the Exim user, it is dropped). You can
+# restrict the location of alternate configurations by defining a prefix below.
+# Any file used with -C must then start with this prefix (except that /dev/null
+# is also permitted if the caller is root, because that is used in the install
+# script). If the prefix specifies a directory that is owned by root, a
+# compromise of the Exim account does not permit arbitrary alternate
+# configurations to be used. The prefix can be more restrictive than just a
+# directory (the second example).
+
+# ALT_CONFIG_PREFIX=/some/directory/
+# ALT_CONFIG_PREFIX=/some/directory/exim.conf-
+
+
+#------------------------------------------------------------------------------
+# When a user other than root uses the -C option to override the configuration
+# file (including the Exim user when re-executing Exim to regain root
+# privileges for local message delivery), this will normally cause Exim to
+# drop root privileges. The TRUSTED_CONFIG_LIST option, specifies a file which
+# contains a list of trusted configuration filenames, one per line. If the -C
+# option is used by the Exim user or by the user specified in the
+# CONFIGURE_OWNER setting, to specify a configuration file which is listed in
+# the TRUSTED_CONFIG_LIST file, then root privileges are not dropped by Exim.
+
+# TRUSTED_CONFIG_LIST=/usr/exim/trusted_configs
+
+
+#------------------------------------------------------------------------------
+# Uncommenting this option disables the use of the -D command line option,
+# which changes the values of macros in the runtime configuration file.
+# This is another protection against somebody breaking into the Exim account.
+
+# DISABLE_D_OPTION=yes
+
+
+#------------------------------------------------------------------------------
+# By contrast, you might be maintaining a system which relies upon the ability
+# to override values with -D and assumes that these will be passed through to
+# the delivery processes. As of Exim 4.73, this is no longer the case by
+# default. Going forward, we strongly recommend that you use a shim Exim
+# configuration file owned by root stored under TRUSTED_CONFIG_LIST.
+# That shim can set macros before .include'ing your main configuration file.
+#
+# As a strictly transient measure to ease migration to 4.73, the
+# WHITELIST_D_MACROS value definies a colon-separated list of macro-names
+# which are permitted to be overriden from the command-line which will be
+# honoured by the Exim user. So these are macros that can persist to delivery
+# time.
+# Examples might be -DTLS or -DSPOOL=/some/dir. The values on the
+# command-line are filtered to only permit: [A-Za-z0-9_/.-]*
+#
+# This option is highly likely to be removed in a future release. It exists
+# only to make 4.73 as easy as possible to migrate to. If you use it, we
+# encourage you to schedule time to rework your configuration to not depend
+# upon it. Most people should not need to use this.
+#
+# By default, no macros are whitelisted for -D usage.
+
+# WHITELIST_D_MACROS=TLS:SPOOL
+
+#------------------------------------------------------------------------------
+# Exim has support for the AUTH (authentication) extension of the SMTP
+# protocol, as defined by RFC 2554. If you don't know what SMTP authentication
+# is, you probably won't want to include this code, so you should leave these
+# settings commented out. If you do want to make use of SMTP authentication,
+# you must uncomment at least one of the following, so that appropriate code is
+# included in the Exim binary. You will then need to set up the run time
+# configuration to make use of the mechanism(s) selected.
+
+AUTH_CRAM_MD5=yes
+# AUTH_CYRUS_SASL=yes
+AUTH_DOVECOT=yes
+AUTH_PLAINTEXT=yes
+AUTH_SPA=yes
+
+
+#------------------------------------------------------------------------------
+# If you specified AUTH_CYRUS_SASL above, you should ensure that you have the
+# Cyrus SASL library installed before trying to build Exim, and you probably
+# want to uncomment the following line:
+
+# AUTH_LIBS=-lsasl2
+
+
+#------------------------------------------------------------------------------
+# When Exim is decoding MIME "words" in header lines, most commonly for use
+# in the $header_xxx expansion, it converts any foreign character sets to the
+# one that is set in the headers_charset option. The default setting is
+# defined by this setting:
+
+HEADERS_CHARSET="ISO-8859-1"
+
+# If you are going to make use of $header_xxx expansions in your configuration
+# file, or if your users are going to use them in filter files, and the normal
+# character set on your host is something other than ISO-8859-1, you might
+# like to specify a different default here. This value can be overridden in
+# the runtime configuration, and it can also be overridden in individual filter
+# files.
+#
+# IMPORTANT NOTE: The iconv() function is needed for character code
+# conversions. Please see the next item...
+
+
+#------------------------------------------------------------------------------
+# Character code conversions are possible only if the iconv() function is
+# installed on your operating system. There are two places in Exim where this
+# is relevant: (a) The $header_xxx expansion (see the previous item), and (b)
+# the Sieve filter support. For those OS where iconv() is known to be installed
+# as standard, the file in OS/Makefile-xxxx contains
+#
+# HAVE_ICONV=yes
+#
+# If you are not using one of those systems, but have installed iconv(), you
+# need to uncomment that line above. In some cases, you may find that iconv()
+# and its header file are not in the default places. You might need to use
+# something like this:
+#
+# HAVE_ICONV=yes
+# CFLAGS=-O -I/usr/local/include
+# EXTRALIBS_EXIM=-L/usr/local/lib -liconv
+#
+# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM
+# as well.
+
+
+#------------------------------------------------------------------------------
+# The passwords for user accounts are normally encrypted with the crypt()
+# function. Comparisons with encrypted passwords can be done using Exim's
+# "crypteq" expansion operator. (This is commonly used as part of the
+# configuration of an authenticator for use with SMTP AUTH.) At least one
+# operating system has an extended function called crypt16(), which uses up to
+# 16 characters of a password (the normal crypt() uses only the first 8). Exim
+# supports the use of crypt16() as well as crypt() but note the warning below.
+
+# You can always indicate a crypt16-encrypted password by preceding it with
+# "{crypt16}". If you want the default handling (without any preceding
+# indicator) to use crypt16(), uncomment the following line:
+
+# DEFAULT_CRYPT=crypt16
+
+# If you do that, you can still access the basic crypt() function by preceding
+# an encrypted password with "{crypt}". For more details, see the description
+# of the "crypteq" condition in the manual chapter on string expansions.
+
+# Some operating systems do not include a crypt16() function, so Exim has one
+# of its own, which it uses unless HAVE_CRYPT16 is defined. Normally, that will
+# be set in an OS-specific Makefile for the OS that have such a function, so
+# you should not need to bother with it.
+
+# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING ***
+# It turns out that the above is not entirely accurate. As well as crypt16()
+# there is a function called bigcrypt() that some operating systems have. This
+# may or may not use the same algorithm, and both of them may be different to
+# Exim's built-in crypt16() that is used unless HAVE_CRYPT16 is defined.
+#
+# However, since there is now a move away from the traditional crypt()
+# functions towards using SHA1 and other algorithms, tidying up this area of
+# Exim is seen as very low priority. In practice, if you need to, you can
+# define DEFAULT_CRYPT to the name of any function that has the same interface
+# as the traditional crypt() function.
+# *** WARNING *** WARNING *** WARNING *** WARNING *** WARNING ***
+
+
+#------------------------------------------------------------------------------
+# Exim can be built to support the SMTP STARTTLS command, which implements
+# Transport Layer Security using SSL (Secure Sockets Layer). To do this, you
+# must install the OpenSSL library package or the GnuTLS library. Exim contains
+# no cryptographic code of its own. Uncomment the following lines if you want
+# to build Exim with TLS support. If you don't know what this is all about,
+# leave these settings commented out.
+
+# This setting is required for any TLS support (either OpenSSL or GnuTLS)
+SUPPORT_TLS=yes
+
+# Uncomment this setting if you are using OpenSSL
+TLS_LIBS=-L/usr/lib -lssl -lcrypto
+
+# Uncomment these settings if you are using GnuTLS
+# USE_GNUTLS=yes
+TLS_LIBS=-L/usr/lib -lssl -lcrypto
+
+# If you are running Exim as a server, note that just building it with TLS
+# support is not all you need to do. You also need to set up a suitable
+# certificate, and tell Exim about it by means of the tls_certificate
+# and tls_privatekey run time options. You also need to set tls_advertise_hosts
+# to specify the hosts to which Exim advertises TLS support. On the other hand,
+# if you are running Exim only as a client, building it with TLS support
+# is all you need to do.
+
+# Additional libraries and include files are required for both OpenSSL and
+# GnuTLS. The TLS_LIBS settings above assume that the libraries are installed
+# with all your other libraries. If they are in a special directory, you may
+# need something like
+
+TLS_LIBS=-L/usr/lib -lssl -lcrypto
+# or
+TLS_LIBS=-L/usr/lib -lssl -lcrypto
+
+TLS_LIBS=-L/usr/lib -lssl -lcrypto
+# auxiliary programs. If the include files are not in a standard place, you can
+# set TLS_INCLUDE to specify where they are, for example:
+
+TLS_INCLUDE=-I/usr/include/openssl
+# or
+TLS_INCLUDE=-I/usr/include/openssl
+
+# You don't need to set TLS_INCLUDE if the relevant directories are already
+# specified in INCLUDE.
+
+
+#------------------------------------------------------------------------------
+# The default distribution of Exim contains only the plain text form of the
+# documentation. Other forms are available separately. If you want to install
+# the documentation in "info" format, first fetch the Texinfo documentation
+# sources from the ftp directory and unpack them, which should create files
+# with the extension "texinfo" in the doc directory. You may find that the
+# version number of the texinfo files is different to your Exim version number,
+# because the main documentation isn't updated as often as the code. For
+# example, if you have Exim version 4.43, the source tarball upacks into a
+# directory called exim-4.43, but the texinfo tarball unpacks into exim-4.40.
+# In this case, move the contents of exim-4.40/doc into exim-4.43/doc after you
+# have unpacked them. Then set INFO_DIRECTORY to the location of your info
+# directory. This varies from system to system, but is often /usr/share/info.
+# Once you have done this, "make install" will build the info files and
+# install them in the directory you have defined.
+
+# INFO_DIRECTORY=/usr/share/info
+
+
+#------------------------------------------------------------------------------
+# Exim log directory and files: Exim creates several log files inside a
+# single log directory. You can define the directory and the form of the
+# log file name here. If you do not set anything, Exim creates a directory
+# called "log" inside its spool directory (see SPOOL_DIRECTORY above) and uses
+# the filenames "mainlog", "paniclog", and "rejectlog". If you want to change
+# this, you can set LOG_FILE_PATH to a path name containing one occurrence of
+# %s. This will be replaced by one of the strings "main", "panic", or "reject"
+# to form the final file names. Some installations may want something like this:
+
+LOG_FILE_PATH=/var/log/exim/%slog
+
+# which results in files with names /var/log/exim_mainlog, etc. The directory
+# in which the log files are placed must exist; Exim does not try to create
+# it for itself. It is also your responsibility to ensure that Exim is capable
+# of writing files using this path name. The Exim user (see EXIM_USER above)
+# must be able to create and update files in the directory you have specified.
+
+# You can also configure Exim to use syslog, instead of or as well as log
+# files, by settings such as these
+
+# LOG_FILE_PATH=syslog
+# LOG_FILE_PATH=syslog:/var/log/exim_%slog
+
+# The first of these uses only syslog; the second uses syslog and also writes
+# to log files. Do not include white space in such a setting as it messes up
+# the building process.
+
+
+#------------------------------------------------------------------------------
+# When logging to syslog, the following option caters for syslog replacements
+# that are able to accept log entries longer than the 1024 characters allowed
+# by RFC 3164. It is up to you to make sure your syslog daemon can handle this.
+# Non-printable characters are usually unacceptable regardless, so log entries
+# are still split on newline characters.
+
+# SYSLOG_LONG_LINES=yes
+
+# If you are not interested in the process identifier (pid) of the Exim that is
+# making the call to syslog, then comment out the following line.
+
+SYSLOG_LOG_PID=yes
+
+
+#------------------------------------------------------------------------------
+# Cycling log files: this variable specifies the maximum number of old
+# log files that are kept by the exicyclog log-cycling script. You don't have
+# to use exicyclog. If your operating system has other ways of cycling log
+# files, you can use them instead. The exicyclog script isn't run by default;
+# you have to set up a cron job for it if you want it.
+
+EXICYCLOG_MAX=10
+
+
+#------------------------------------------------------------------------------
+# The compress command is used by the exicyclog script to compress old log
+# files. Both the name of the command and the suffix that it adds to files
+# need to be defined here. See also the EXICYCLOG_MAX configuration.
+
+COMPRESS_COMMAND=/bin/gzip
+COMPRESS_SUFFIX=gz
+
+
+#------------------------------------------------------------------------------
+# If the exigrep utility is fed compressed log files, it tries to uncompress
+# them using this command.
+
+ZCAT_COMMAND=/bin/zcat
+
+
+#------------------------------------------------------------------------------
+# Compiling in support for embedded Perl: If you want to be able to
+# use Perl code in Exim's string manipulation language and you have Perl
+# (version 5.004 or later) installed, set EXIM_PERL to perl.o. Using embedded
+# Perl costs quite a lot of resources. Only do this if you really need it.
+
+# EXIM_PERL=perl.o
+
+
+#------------------------------------------------------------------------------
+# Support for dynamically-loaded string expansion functions via ${dlfunc. If
+# you are using gcc the dynamically-loaded object must be compiled with the
+# -shared option, and you will need to add -export-dynamic to EXTRALIBS so
+# that the local_scan API is made available by the linker. You may also need
+# to add -ldl to EXTRALIBS so that dlopen() is available to Exim.
+
+# EXPAND_DLFUNC=yes
+
+
+#------------------------------------------------------------------------------
+# Exim has support for PAM (Pluggable Authentication Modules), a facility
+# which is available in the latest releases of Solaris and in some GNU/Linux
+# distributions (see http://ftp.kernel.org/pub/linux/libs/pam/). The Exim
+# support, which is intended for use in conjunction with the SMTP AUTH
+# facilities, is included only when requested by the following setting:
+
+SUPPORT_PAM=yes
+
+# You probably need to add -lpam to EXTRALIBS, and in some releases of
+# GNU/Linux -ldl is also needed.
+
+
+#------------------------------------------------------------------------------
+# Support for authentication via Radius is also available. The Exim support,
+# which is intended for use in conjunction with the SMTP AUTH facilities,
+# is included only when requested by setting the following parameter to the
+# location of your Radius configuration file:
+
+# RADIUS_CONFIG_FILE=/etc/radiusclient/radiusclient.conf
+# RADIUS_CONFIG_FILE=/etc/radius.conf
+
+# If you have set RADIUS_CONFIG_FILE, you should also set one of these to
+# indicate which RADIUS library is used:
+
+# RADIUS_LIB_TYPE=RADIUSCLIENT
+# RADIUS_LIB_TYPE=RADIUSCLIENTNEW
+# RADIUS_LIB_TYPE=RADLIB
+
+# RADIUSCLIENT is the radiusclient library; you probably need to add
+# -lradiusclient to EXTRALIBS.
+#
+# The API for the radiusclient library was changed at release 0.4.0.
+# Unfortunately, the header file does not define a version number that clients
+# can use to support both the old and new APIs. If you are using version 0.4.0
+# or later of the radiusclient library, you should use RADIUSCLIENTNEW.
+#
+# RADLIB is the Radius library that comes with FreeBSD (the header file is
+# called radlib.h); you probably need to add -lradius to EXTRALIBS.
+#
+# If you do not set RADIUS_LIB_TYPE, Exim assumes the radiusclient library,
+# using the original API.
+
+
+#------------------------------------------------------------------------------
+# Support for authentication via the Cyrus SASL pwcheck daemon is available.
+# Note, however, that pwcheck is now deprecated in favour of saslauthd (see
+# next item). The Exim support for pwcheck, which is intented for use in
+# conjunction with the SMTP AUTH facilities, is included only when requested by
+# setting the following parameter to the location of the pwcheck daemon's
+# socket.
+#
+# There is no need to install all of SASL on your system. You just need to run
+# ./configure --with-pwcheck, cd to the pwcheck directory within the sources,
+# make and make install. You must create the socket directory (default
+# /var/pwcheck) and chown it to exim's user and group. Once you have installed
+# pwcheck, you should arrange for it to be started by root at boot time.
+
+# CYRUS_PWCHECK_SOCKET=/var/pwcheck/pwcheck
+
+
+#------------------------------------------------------------------------------
+# Support for authentication via the Cyrus SASL saslauthd daemon is available.
+# The Exim support, which is intented for use in conjunction with the SMTP AUTH
+# facilities, is included only when requested by setting the following
+# parameter to the location of the saslauthd daemon's socket.
+#
+# There is no need to install all of SASL on your system. You just need to run
+# ./configure --with-saslauthd (and any other options you need, for example, to
+# select or deselect authentication mechanisms), cd to the saslauthd directory
+# within the sources, make and make install. You must create the socket
+# directory (default /var/state/saslauthd) and chown it to exim's user and
+# group. Once you have installed saslauthd, you should arrange for it to be
+# started by root at boot time.
+
+# CYRUS_SASLAUTHD_SOCKET=/var/state/saslauthd/mux
+
+
+#------------------------------------------------------------------------------
+# TCP wrappers: If you want to use tcpwrappers from within Exim, uncomment
+# this setting. See the manual section entitled "Use of tcpwrappers" in the
+# chapter on building and installing Exim.
+#
+USE_TCP_WRAPPERS=yes
+#
+# You may well also have to specify a local "include" file and an additional
+# library for TCP wrappers, so you probably need something like this:
+#
+USE_TCP_WRAPPERS=yes
+# CFLAGS=-O -I/usr/local/include
+# EXTRALIBS_EXIM=-L/usr/local/lib -lwrap
+#
+# but of course there may need to be other things in CFLAGS and EXTRALIBS_EXIM
+# as well.
+#
+# To use a name other than exim in the tcpwrappers config file,
+# e.g. if you're running multiple daemons with different access lists,
+# or multiple MTAs with the same access list, define
+# TCP_WRAPPERS_DAEMON_NAME accordingly
+#
+# TCP_WRAPPERS_DAEMON_NAME="exim"
+
+
+#------------------------------------------------------------------------------
+# The default action of the exim_install script (which is run by "make
+# install") is to install the Exim binary with a unique name such as
+# exim-4.43-1, and then set up a symbolic link called "exim" to reference it,
+# moving the symbolic link from any previous version. If you define NO_SYMLINK
+# (the value doesn't matter), the symbolic link is not created or moved. You
+# will then have to "turn Exim on" by setting up the link manually.
+
+# NO_SYMLINK=yes
+
+
+#------------------------------------------------------------------------------
+# Another default action of the install script is to install a default runtime
+# configuration file if one does not exist. This configuration has a router for
+# expanding system aliases. The default assumes that these aliases are kept
+# in the traditional file called /etc/aliases. If such a file does not exist,
+# the installation script creates one that contains just comments (no actual
+# aliases). The following setting can be changed to specify a different
+# location for the system alias file.
+
+SYSTEM_ALIASES_FILE=/home/angvp/pkgs/community/exim/trunk/pkg/etc/mail/aliases
+
+
+#------------------------------------------------------------------------------
+# There are some testing options (-be, -bt, -bv) that read data from the
+# standard input when no arguments are supplied. By default, the input lines
+# are read using the standard fgets() function. This does not support line
+# editing during interactive input (though the terminal's "erase" character
+# works as normal). If your operating system has the readline() function, and
+# in addition supports dynamic loading of library functions, you can cause
+# Exim to use readline() for the -be testing option (only) by uncommenting the
+# following setting. Dynamic loading is used so that the library is loaded only
+# when the -be testing option is given; by the time the loading occurs,
+# Exim has given up its root privilege and is running as the calling user. This
+# is the reason why readline() is NOT supported for -bt and -bv, because Exim
+# runs as root or as exim, respectively, for those options. When USE_READLINE
+# is "yes", as well as supporting line editing, a history of input lines in the
+# current run is maintained.
+
+# USE_READLINE=yes
+
+# You may need to add -ldl to EXTRALIBS when you set USE_READLINE=yes.
+# Note that this option adds to the size of the Exim binary, because the
+# dynamic loading library is not otherwise included.
+
+
+
+###############################################################################
+# THINGS YOU ALMOST NEVER NEED TO MENTION #
+###############################################################################
+
+# The settings in this section are available for use in special circumstances.
+# In the vast majority of installations you need not change anything below.
+
+
+#------------------------------------------------------------------------------
+# The following commands live in different places in some OS. Either the
+# ultimate default settings, or the OS-specific files should already point to
+# the right place, but they can be overridden here if necessary. These settings
+# are used when building various scripts to ensure that the correct paths are
+# used when the scripts are run. They are not used in the Makefile itself. Perl
+# is not necessary for running Exim unless you set EXIM_PERL (see above) to get
+# it embedded, but there are some utilities that are Perl scripts. If you
+# haven't got Perl, Exim will still build and run; you just won't be able to
+# use those utilities.
+
+# CHOWN_COMMAND=/usr/bin/chown
+# CHGRP_COMMAND=/usr/bin/chgrp
+# CHMOD_COMMAND=/usr/bin/chmod
+# MV_COMMAND=/bin/mv
+# RM_COMMAND=/bin/rm
+# TOUCH_COMMAND=/usr/bin/touch
+# PERL_COMMAND=/usr/bin/perl
+
+
+#------------------------------------------------------------------------------
+# The following macro can be used to change the command for building a library
+# of functions. By default the "ar" command is used, with options "cq".
+# Only in rare circumstances should you need to change this.
+
+# AR=ar cq
+
+
+#------------------------------------------------------------------------------
+# In some operating systems, the value of the TMPDIR environment variable
+# controls where temporary files are created. Exim does not make use of
+# temporary files, except when delivering to MBX mailboxes. However, if Exim
+# calls any external libraries (e.g. DBM libraries), they may use temporary
+# files, and thus be influenced by the value of TMPDIR. For this reason, when
+# Exim starts, it checks the environment for TMPDIR, and if it finds it is set,
+# it replaces the value with what is defined here. Commenting this setting
+# suppresses the check altogether.
+
+TMPDIR="/tmp"
+
+
+#------------------------------------------------------------------------------
+# The following macros can be used to change the default modes that are used
+# by the appendfile transport. In most installations the defaults are just
+# fine, and in any case, you can change particular instances of the transport
+# at run time if you want.
+
+# APPENDFILE_MODE=0600
+# APPENDFILE_DIRECTORY_MODE=0700
+# APPENDFILE_LOCKFILE_MODE=0600
+
+
+#------------------------------------------------------------------------------
+# In some installations there may be multiple machines sharing file systems,
+# where a different configuration file is required for Exim on the different
+# machines. If CONFIGURE_FILE_USE_NODE is defined, then Exim will first look
+# for a configuration file whose name is that defined by CONFIGURE_FILE,
+# with the node name obtained by uname() tacked on the end, separated by a
+# period (for example, /usr/exim/configure.host.in.some.domain). If this file
+# does not exist, then the bare configuration file name is tried.
+
+# CONFIGURE_FILE_USE_NODE=yes
+
+
+#------------------------------------------------------------------------------
+# In some esoteric configurations two different versions of Exim are run,
+# with different setuid values, and different configuration files are required
+# to handle the different cases. If CONFIGURE_FILE_USE_EUID is defined, then
+# Exim will first look for a configuration file whose name is that defined
+# by CONFIGURE_FILE, with the effective uid tacked on the end, separated by
+# a period (for eximple, /usr/exim/configure.0). If this file does not exist,
+# then the bare configuration file name is tried. In the case when both
+# CONFIGURE_FILE_USE_EUID and CONFIGURE_FILE_USE_NODE are set, four files
+# are tried: <name>.<euid>.<node>, <name>.<node>, <name>.<euid>, and <name>.
+
+# CONFIGURE_FILE_USE_EUID=yes
+
+
+#------------------------------------------------------------------------------
+# The size of the delivery buffers: These specify the sizes (in bytes) of
+# the buffers that are used when copying a message from the spool to a
+# destination. There is rarely any need to change these values.
+
+# DELIVER_IN_BUFFER_SIZE=8192
+# DELIVER_OUT_BUFFER_SIZE=8192
+
+
+#------------------------------------------------------------------------------
+# The mode of the database directory: Exim creates a directory called "db"
+# in its spool directory, to hold its databases of hints. This variable
+# determines the mode of the created directory. The default value in the
+# source is 0750.
+
+# EXIMDB_DIRECTORY_MODE=0750
+
+
+#------------------------------------------------------------------------------
+# Database file mode: The mode of files created in the "db" directory defaults
+# to 0640 in the source, and can be changed here.
+
+# EXIMDB_MODE=0640
+
+
+#------------------------------------------------------------------------------
+# Database lock file mode: The mode of zero-length files created in the "db"
+# directory to use for locking purposes defaults to 0640 in the source, and
+# can be changed here.
+
+# EXIMDB_LOCKFILE_MODE=0640
+
+
+#------------------------------------------------------------------------------
+# This parameter sets the maximum length of the header portion of a message
+# that Exim is prepared to process. The default setting is one megabyte. The
+# limit exists in order to catch rogue mailers that might connect to your SMTP
+# port, start off a header line, and then just pump junk at it for ever. The
+# message_size_limit option would also catch this, but it may not be set.
+# The value set here is the default; it can be changed at runtime.
+
+# HEADER_MAXSIZE="(1024*1024)"
+
+
+#------------------------------------------------------------------------------
+# The mode of the input directory: The input directory is where messages are
+# kept while awaiting delivery. Exim creates it if necessary, using a mode
+# which can be defined here (default 0750).
+
+# INPUT_DIRECTORY_MODE=0750
+
+
+#------------------------------------------------------------------------------
+# The mode of Exim's log directory, when it is created by Exim inside the spool
+# directory, defaults to 0750 but can be changed here.
+
+# LOG_DIRECTORY_MODE=0750
+
+
+#------------------------------------------------------------------------------
+# The log files themselves are created as required, with a mode that defaults
+# to 0640, but which can be changed here.
+
+# LOG_MODE=0640
+
+
+#------------------------------------------------------------------------------
+# The TESTDB lookup is for performing tests on the handling of lookup results,
+# and is not useful for general running. It should be included only when
+# debugging the code of Exim.
+
+# LOOKUP_TESTDB=yes
+
+
+#------------------------------------------------------------------------------
+# /bin/sh is used by default as the shell in which to run commands that are
+# defined in the makefiles. This can be changed if necessary, by uncommenting
+# this line and specifying another shell, but note that a Bourne-compatible
+# shell is expected.
+
+# MAKE_SHELL=/bin/sh
+
+
+#------------------------------------------------------------------------------
+# The maximum number of named lists of each type (address, domain, host, and
+# local part) can be increased by changing this value. It should be set to
+# a multiple of 16.
+
+MAX_NAMED_LIST=16
+
+
+#------------------------------------------------------------------------------
+# Network interfaces: Unless you set the local_interfaces option in the runtime
+# configuration file to restrict Exim to certain interfaces only, it will run
+# code to find all the interfaces there are on your host. Unfortunately,
+# the call to the OS that does this requires a buffer large enough to hold
+# data for all the interfaces - it was designed in the days when a host rarely
+# had more than three or four interfaces. Nowadays hosts can have very many
+# virtual interfaces running on the same hardware. If you have more than 250
+# virtual interfaces, you will need to uncomment this setting and increase the
+# value.
+
+# MAXINTERFACES=250
+
+
+#------------------------------------------------------------------------------
+# Per-message logs: While a message is in the process of being delivered,
+# comments on its progress are written to a message log, for the benefit of
+# human administrators. These logs are held in a directory called "msglog"
+# in the spool directory. Its mode defaults to 0750, but can be changed here.
+# The message log directory is also used for storing files that are used by
+# transports for returning data to a message's sender (see the "return_output"
+# option for transports).
+
+# MSGLOG_DIRECTORY_MODE=0750
+
+
+#------------------------------------------------------------------------------
+# There are three options which are used when compiling the Perl interface and
+# when linking with Perl. The default values for these are placed automatically
+# at the head of the Makefile by the script which builds it. However, if you
+# want to override them, you can do so here.
+
+# PERL_CC=
+# PERL_CCOPTS=
+# PERL_LIBS=
+
+
+#------------------------------------------------------------------------------
+# Identifying the daemon: When an Exim daemon starts up, it writes its pid
+# (process id) to a file so that it can easily be identified. The path of the
+# file can be specified here. Some installations may want something like this:
+
+PID_FILE_PATH=/var/run/exim.pid
+
+# If PID_FILE_PATH is not defined, Exim writes a file in its spool directory
+# using the name "exim-daemon.pid".
+
+# If you start up a daemon without the -bd option (for example, with just
+# the -q15m option), a pid file is not written. Also, if you override the
+# configuration file with the -oX option, no pid file is written. In other
+# words, the pid file is written only for a "standard" daemon.
+
+
+#------------------------------------------------------------------------------
+# If Exim creates the spool directory, it is given this mode, defaulting in the
+# source to 0750.
+
+# SPOOL_DIRECTORY_MODE=0750
+
+
+#------------------------------------------------------------------------------
+# The mode of files on the input spool which hold the contents of messages can
+# be changed here. The default is 0640 so that information from the spool is
+# available to anyone who is a member of the Exim group.
+
+# SPOOL_MODE=0640
+
+
+#------------------------------------------------------------------------------
+# Moving frozen messages: If the following is uncommented, Exim is compiled
+# with support for automatically moving frozen messages out of the main spool
+# directory, a facility that is found useful by some large installations. A
+# run time option is required to cause the moving actually to occur. Such
+# messages become "invisible" to the normal management tools.
+
+# SUPPORT_MOVE_FROZEN_MESSAGES=yes
+
+
+#------------------------------------------------------------------------------
+# Disabling the use of fsync(): DO NOT UNCOMMENT THE FOLLOWING LINE unless you
+# really, really, really know what you are doing. And even then, think again.
+# You should never uncomment this when compiling a binary for distribution.
+# Use it only when compiling Exim for your own use.
+#
+# Uncommenting this line enables the use of a runtime option called
+# disable_fsync, which can be used to stop Exim using fsync() to ensure that
+# files are written to disc before proceeding. When this is disabled, crashes
+# and hardware problems such as power outages can cause data to be lost. This
+# feature should only be used in very exceptional circumstances. YOU HAVE BEEN
+# WARNED.
+
+# ENABLE_DISABLE_FSYNC=yes
+
+HAVE_IPV6=YES
+LOOKUP_LIBS=-lldap
+EXTRALIBS_EXIM=-lwrap -lpam
+# End of EDITME for Exim 4.
diff --git a/community-testing/exim/exim.conf.d b/community-testing/exim/exim.conf.d
new file mode 100644
index 000000000..b9bec4335
--- /dev/null
+++ b/community-testing/exim/exim.conf.d
@@ -0,0 +1 @@
+EXIM_ARGS="-bd -q15m"
diff --git a/community-testing/exim/exim.install b/community-testing/exim/exim.install
new file mode 100644
index 000000000..cf05fe4e4
--- /dev/null
+++ b/community-testing/exim/exim.install
@@ -0,0 +1,24 @@
+# arg 1: the new package version
+post_install() {
+ getent group exim >/dev/null 2>&1 || groupadd -g 79 exim
+ if getent passwd exim > /dev/null 2>&1; then
+ usr/sbin/usermod -d /var/spool/exim -c 'Exim MTA' -s /sbin/nologin exim > /dev/null 2>&1
+ else
+ usr/sbin/useradd -c 'Exim MTA' -u 79 -g exim -d /var/spool/exim -s /sbin/nologin exim
+ fi
+ passwd -l exim > /dev/null
+ chown root.exim /var/spool/exim /var/log/exim
+ chown exim.exim /var/spool/exim/db
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install $1
+}
+
+# arg 1: the old package version
+pre_remove() {
+ getent passwd exim >/dev/null 2>&1 && userdel exim
+}
+
diff --git a/community-testing/exim/exim.logrotate b/community-testing/exim/exim.logrotate
new file mode 100644
index 000000000..ff38a1452
--- /dev/null
+++ b/community-testing/exim/exim.logrotate
@@ -0,0 +1,5 @@
+/var/log/exim/*log {
+ missingok
+ notifempty
+ delaycompress
+}
diff --git a/community-testing/exim/newaliases b/community-testing/exim/newaliases
new file mode 100755
index 000000000..c7b0e383d
--- /dev/null
+++ b/community-testing/exim/newaliases
@@ -0,0 +1,2 @@
+#!/bin/sh
+/usr/sbin/exim_dbmbuild /etc/mail/aliases /var/spool/exim/db/aliases && chown exim.exim /var/spool/exim/db/aliases
diff --git a/community-testing/python-cherrypy/837.2049.patch b/community-testing/python-cherrypy/837.2049.patch
new file mode 100644
index 000000000..20cc0dd36
--- /dev/null
+++ b/community-testing/python-cherrypy/837.2049.patch
@@ -0,0 +1,554 @@
+Index: cherrypy/test/test_tools.py
+===================================================================
+--- cherrypy/test/test_tools.py (revision 2049)
++++ cherrypy/test/test_tools.py (working copy)
+@@ -3,6 +3,7 @@
+ import gzip
+ import StringIO
+ import sys
++from httplib import IncompleteRead
+ import time
+ timeout = 0.2
+
+@@ -272,8 +273,12 @@
+ # Because this error is raised after the response body has
+ # started, and because it's chunked output, an error is raised by
+ # the HTTP client when it encounters incomplete output.
+- self.assertRaises(ValueError, self.getPage,
+- "/demo/errinstream?id=5")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/demo/errinstream?id=5")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/demo/errinstream?id=5")
+ # If this fails, then on_end_request isn't being called at all.
+ time.sleep(0.1)
+ self.getPage("/demo/ended/5")
+Index: cherrypy/test/webtest.py
+===================================================================
+--- cherrypy/test/webtest.py (revision 2049)
++++ cherrypy/test/webtest.py (working copy)
+@@ -491,7 +491,7 @@
+ # IN6ADDR_ANY, which should respond on localhost.
+ host = "::1"
+ conn = http_conn(host, port)
+-
++
+ conn._http_vsn_str = protocol
+ conn._http_vsn = int("".join([x for x in protocol if x.isdigit()]))
+
+Index: cherrypy/test/test_encoding.py
+===================================================================
+--- cherrypy/test/test_encoding.py (revision 2049)
++++ cherrypy/test/test_encoding.py (working copy)
+@@ -1,7 +1,9 @@
+ from cherrypy.test import test
+ test.prefer_parent_path()
+
++import sys
+ import gzip, StringIO
++from httplib import IncompleteRead
+ import cherrypy
+ europoundUnicode = u'\x80\xa3'
+ europoundUtf8 = u'\x80\xa3'.encode('utf-8')
+@@ -160,10 +162,13 @@
+ else:
+ # The wsgiserver will simply stop sending data, and the HTTP client
+ # will error due to an incomplete chunk-encoded stream.
+- self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
+- headers=[("Accept-Encoding", "gzip")])
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
++ else:
++ self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
+
+-
+ if __name__ == "__main__":
+ setup_server()
+ helper.testmain()
+Index: cherrypy/test/test_core.py
+===================================================================
+--- cherrypy/test/test_core.py (revision 2049)
++++ cherrypy/test/test_core.py (working copy)
+@@ -7,6 +7,7 @@
+ localDir = os.path.dirname(__file__)
+ import sys
+ import types
++from httplib import IncompleteRead
+
+ import cherrypy
+ from cherrypy import _cptools, tools
+@@ -760,8 +761,12 @@
+ else:
+ # Under HTTP/1.1, the chunked transfer-coding is used.
+ # The HTTP client will choke when the output is incomplete.
+- self.assertRaises(ValueError, self.getPage,
+- "/error/page_streamed")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/error/page_streamed")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/error/page_streamed")
+
+ # No traceback should be present
+ self.getPage("/error/cause_err_in_finalize")
+Index: cherrypy/wsgiserver/__init__.py
+===================================================================
+--- cherrypy/wsgiserver/__init__.py (revision 2049)
++++ cherrypy/wsgiserver/__init__.py (working copy)
+@@ -713,148 +713,325 @@
+ """Exception raised when the SSL implementation signals a fatal alert."""
+ pass
+
++if sys.version_info[:2] >= (2, 6) or sys.version_info[:3] >= (2, 5, 2):
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
+
+-class CP_fileobject(socket._fileobject):
+- """Faux file object attached to a socket object."""
+-
+- def sendall(self, data):
+- """Sendall for non-blocking sockets."""
+- while data:
+- try:
+- bytes_sent = self.send(data)
+- data = data[bytes_sent:]
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def send(self, data):
+- return self._sock.send(data)
+-
+- def flush(self):
+- if self._wbuf:
+- buffer = "".join(self._wbuf)
+- self._wbuf = []
+- self.sendall(buffer)
+-
+- def recv(self, size):
+- while True:
+- try:
+- return self._sock.recv(size)
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def read(self, size=-1):
+- if size < 0:
+- # Read until EOF
+- buffers = [self._rbuf]
+- self._rbuf = ""
+- if self._rbufsize <= 1:
+- recv_size = self.default_bufsize
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
++ while True:
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def read(self, size=-1):
++ # Use max, disallow tiny reads in a loop as they are very inefficient.
++ # We never leave read() with any leftover data from a new recv() call
++ # in our internal buffer.
++ rbufsize = max(self._rbufsize, self.default_bufsize)
++ # Our use of StringIO rather than lists of string objects returned by
++ # recv() minimizes memory usage and fragmentation that occurs when
++ # rbufsize is large compared to the typical return value of recv().
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if size < 0:
++ # Read until EOF
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(rbufsize)
++ if not data:
++ break
++ buf.write(data)
++ return buf.getvalue()
+ else:
+- recv_size = self._rbufsize
+-
++ # Read until size bytes or EOF seen, whichever comes first
++ buf_len = buf.tell()
++ if buf_len >= size:
++ # Already have size bytes in our buffer? Extract and return.
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ left = size - buf_len
++ # recv() will malloc the amount of memory given as its
++ # parameter even though it often returns much less data
++ # than that. The returned data string is short lived
++ # as we copy it into a StringIO and free it. This avoids
++ # fragmentation issues on many platforms.
++ data = self.recv(left)
++ if not data:
++ break
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid buffer data copies when:
++ # - We have no data in our buffer.
++ # AND
++ # - Our call to recv returned exactly the
++ # number of bytes we were asked to read.
++ return data
++ if n == left:
++ buf.write(data)
++ del data # explicit free
++ break
++ assert n <= left, "recv(%d) returned %d bytes" % (left, n)
++ buf.write(data)
++ buf_len += n
++ del data # explicit free
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++ def readline(self, size=-1):
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if buf.tell() > 0:
++ # check if we already have it in our buffer
++ buf.seek(0)
++ bline = buf.readline(size)
++ if bline.endswith('\n') or len(bline) == size:
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return bline
++ del bline
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ buf.seek(0)
++ buffers = [buf.read()]
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ data = None
++ recv = self.recv
++ while data != "\n":
++ data = recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++
++ buf.seek(0, 2) # seek end
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ buf.write(data[:nl])
++ self._rbuf.write(data[nl:])
++ del data
++ break
++ buf.write(data)
++ return buf.getvalue()
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ buf.seek(0, 2) # seek end
++ buf_len = buf.tell()
++ if buf_len >= size:
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ left = size - buf_len
++ # did we just receive a newline?
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ # save the excess data to _rbuf
++ self._rbuf.write(data[nl:])
++ if buf_len:
++ buf.write(data[:nl])
++ break
++ else:
++ # Shortcut. Avoid data copy through buf when returning
++ # a substring of our first recv().
++ return data[:nl]
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid data copy through buf when
++ # returning exactly all of our first recv().
++ return data
++ if n >= left:
++ buf.write(data[:left])
++ self._rbuf.write(data[left:])
++ break
++ buf.write(data)
++ buf_len += n
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++else:
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
++
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
+ while True:
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- return "".join(buffers)
+- else:
+- # Read until size bytes or EOF seen, whichever comes first
+- data = self._rbuf
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- left = size - buf_len
+- recv_size = max(self._rbufsize, left)
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
+
+- def readline(self, size=-1):
+- data = self._rbuf
+- if size < 0:
+- # Read until \n or EOF, whichever comes first
+- if self._rbufsize <= 1:
+- # Speed up unbuffered case
+- assert data == ""
++ def read(self, size=-1):
++ if size < 0:
++ # Read until EOF
++ buffers = [self._rbuf]
++ self._rbuf = ""
++ if self._rbufsize <= 1:
++ recv_size = self.default_bufsize
++ else:
++ recv_size = self._rbufsize
++
++ while True:
++ data = self.recv(recv_size)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++ else:
++ # Read until size bytes or EOF seen, whichever comes first
++ data = self._rbuf
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
+ buffers = []
+- while data != "\n":
+- data = self.recv(1)
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ left = size - buf_len
++ recv_size = max(self._rbufsize, left)
++ data = self.recv(recv_size)
+ if not data:
+ break
+ buffers.append(data)
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
+ return "".join(buffers)
+- nl = data.find('\n')
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
++
++ def readline(self, size=-1):
++ data = self._rbuf
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ assert data == ""
++ buffers = []
++ while data != "\n":
++ data = self.recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
+ nl = data.find('\n')
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- return "".join(buffers)
+- else:
+- # Read until size bytes or \n or EOF seen, whichever comes first
+- nl = data.find('\n', 0, size)
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
+- left = size - buf_len
+- nl = data.find('\n', 0, left)
++ return data[:nl]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ return "".join(buffers)
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ nl = data.find('\n', 0, size)
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ return data[:nl]
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ left = size - buf_len
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
++ return "".join(buffers)
+
+
+ class SSL_fileobject(CP_fileobject):
diff --git a/community-testing/python-cherrypy/ChangeLog b/community-testing/python-cherrypy/ChangeLog
new file mode 100644
index 000000000..90276417c
--- /dev/null
+++ b/community-testing/python-cherrypy/ChangeLog
@@ -0,0 +1,26 @@
+
+2009-04-15 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.2
+
+2008-12-14 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.1
+
+2008-11-04 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for python 2.6
+ * Thanks to David Moore
+
+2008-07-09 Mateusz Herych <heniekk@gmail.com>
+
+ * Updating for x86_64: 3.1.0
+
+2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updating for i686: 3.1.0
+
+2008-02-28 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updating in i686: 3.0.3
+
diff --git a/community-testing/python-cherrypy/PKGBUILD b/community-testing/python-cherrypy/PKGBUILD
new file mode 100644
index 000000000..75af39b55
--- /dev/null
+++ b/community-testing/python-cherrypy/PKGBUILD
@@ -0,0 +1,24 @@
+# $Id: PKGBUILD 45860 2011-04-30 05:41:24Z kchen $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Kaiting Chen <kaitocracy@gmail.com>
+# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
+# Contributor: Armando M. Baratti <amblistas@ajato.com.br>
+# Contributor: Florian Richter <Florian_Richter@gmx.de>
+pkgname=python-cherrypy
+pkgver=3.2.0
+pkgrel=1
+pkgdesc="A pythonic, object-oriented web development framework"
+arch=('i686' 'x86_64')
+url="http://www.cherrypy.org"
+license=('BSD')
+depends=('python3')
+source=(http://download.cherrypy.org/cherrypy/$pkgver/CherryPy-$pkgver.tar.gz
+ license)
+md5sums=('e5c1322bf5ce962c16283ab7a6dcca3f'
+ '22365dc6b0e6835b53da009aa36af017')
+
+build() {
+ cd $srcdir/CherryPy-$pkgver
+ python ./setup.py install --root=$pkgdir
+ install -D -m644 $srcdir/license $pkgdir/usr/share/licenses/$pkgname/license
+}
diff --git a/community-testing/python-cherrypy/license b/community-testing/python-cherrypy/license
new file mode 100644
index 000000000..32e9cf6bd
--- /dev/null
+++ b/community-testing/python-cherrypy/license
@@ -0,0 +1,25 @@
+Copyright (c) 2004, CherryPy Team (team@cherrypy.org)
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of the CherryPy Team nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/community-testing/python2-cherrypy/837.2049.patch b/community-testing/python2-cherrypy/837.2049.patch
new file mode 100644
index 000000000..20cc0dd36
--- /dev/null
+++ b/community-testing/python2-cherrypy/837.2049.patch
@@ -0,0 +1,554 @@
+Index: cherrypy/test/test_tools.py
+===================================================================
+--- cherrypy/test/test_tools.py (revision 2049)
++++ cherrypy/test/test_tools.py (working copy)
+@@ -3,6 +3,7 @@
+ import gzip
+ import StringIO
+ import sys
++from httplib import IncompleteRead
+ import time
+ timeout = 0.2
+
+@@ -272,8 +273,12 @@
+ # Because this error is raised after the response body has
+ # started, and because it's chunked output, an error is raised by
+ # the HTTP client when it encounters incomplete output.
+- self.assertRaises(ValueError, self.getPage,
+- "/demo/errinstream?id=5")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/demo/errinstream?id=5")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/demo/errinstream?id=5")
+ # If this fails, then on_end_request isn't being called at all.
+ time.sleep(0.1)
+ self.getPage("/demo/ended/5")
+Index: cherrypy/test/webtest.py
+===================================================================
+--- cherrypy/test/webtest.py (revision 2049)
++++ cherrypy/test/webtest.py (working copy)
+@@ -491,7 +491,7 @@
+ # IN6ADDR_ANY, which should respond on localhost.
+ host = "::1"
+ conn = http_conn(host, port)
+-
++
+ conn._http_vsn_str = protocol
+ conn._http_vsn = int("".join([x for x in protocol if x.isdigit()]))
+
+Index: cherrypy/test/test_encoding.py
+===================================================================
+--- cherrypy/test/test_encoding.py (revision 2049)
++++ cherrypy/test/test_encoding.py (working copy)
+@@ -1,7 +1,9 @@
+ from cherrypy.test import test
+ test.prefer_parent_path()
+
++import sys
+ import gzip, StringIO
++from httplib import IncompleteRead
+ import cherrypy
+ europoundUnicode = u'\x80\xa3'
+ europoundUtf8 = u'\x80\xa3'.encode('utf-8')
+@@ -160,10 +162,13 @@
+ else:
+ # The wsgiserver will simply stop sending data, and the HTTP client
+ # will error due to an incomplete chunk-encoded stream.
+- self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
+- headers=[("Accept-Encoding", "gzip")])
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
++ else:
++ self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
+
+-
+ if __name__ == "__main__":
+ setup_server()
+ helper.testmain()
+Index: cherrypy/test/test_core.py
+===================================================================
+--- cherrypy/test/test_core.py (revision 2049)
++++ cherrypy/test/test_core.py (working copy)
+@@ -7,6 +7,7 @@
+ localDir = os.path.dirname(__file__)
+ import sys
+ import types
++from httplib import IncompleteRead
+
+ import cherrypy
+ from cherrypy import _cptools, tools
+@@ -760,8 +761,12 @@
+ else:
+ # Under HTTP/1.1, the chunked transfer-coding is used.
+ # The HTTP client will choke when the output is incomplete.
+- self.assertRaises(ValueError, self.getPage,
+- "/error/page_streamed")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/error/page_streamed")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/error/page_streamed")
+
+ # No traceback should be present
+ self.getPage("/error/cause_err_in_finalize")
+Index: cherrypy/wsgiserver/__init__.py
+===================================================================
+--- cherrypy/wsgiserver/__init__.py (revision 2049)
++++ cherrypy/wsgiserver/__init__.py (working copy)
+@@ -713,148 +713,325 @@
+ """Exception raised when the SSL implementation signals a fatal alert."""
+ pass
+
++if sys.version_info[:2] >= (2, 6) or sys.version_info[:3] >= (2, 5, 2):
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
+
+-class CP_fileobject(socket._fileobject):
+- """Faux file object attached to a socket object."""
+-
+- def sendall(self, data):
+- """Sendall for non-blocking sockets."""
+- while data:
+- try:
+- bytes_sent = self.send(data)
+- data = data[bytes_sent:]
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def send(self, data):
+- return self._sock.send(data)
+-
+- def flush(self):
+- if self._wbuf:
+- buffer = "".join(self._wbuf)
+- self._wbuf = []
+- self.sendall(buffer)
+-
+- def recv(self, size):
+- while True:
+- try:
+- return self._sock.recv(size)
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def read(self, size=-1):
+- if size < 0:
+- # Read until EOF
+- buffers = [self._rbuf]
+- self._rbuf = ""
+- if self._rbufsize <= 1:
+- recv_size = self.default_bufsize
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
++ while True:
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def read(self, size=-1):
++ # Use max, disallow tiny reads in a loop as they are very inefficient.
++ # We never leave read() with any leftover data from a new recv() call
++ # in our internal buffer.
++ rbufsize = max(self._rbufsize, self.default_bufsize)
++ # Our use of StringIO rather than lists of string objects returned by
++ # recv() minimizes memory usage and fragmentation that occurs when
++ # rbufsize is large compared to the typical return value of recv().
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if size < 0:
++ # Read until EOF
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(rbufsize)
++ if not data:
++ break
++ buf.write(data)
++ return buf.getvalue()
+ else:
+- recv_size = self._rbufsize
+-
++ # Read until size bytes or EOF seen, whichever comes first
++ buf_len = buf.tell()
++ if buf_len >= size:
++ # Already have size bytes in our buffer? Extract and return.
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ left = size - buf_len
++ # recv() will malloc the amount of memory given as its
++ # parameter even though it often returns much less data
++ # than that. The returned data string is short lived
++ # as we copy it into a StringIO and free it. This avoids
++ # fragmentation issues on many platforms.
++ data = self.recv(left)
++ if not data:
++ break
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid buffer data copies when:
++ # - We have no data in our buffer.
++ # AND
++ # - Our call to recv returned exactly the
++ # number of bytes we were asked to read.
++ return data
++ if n == left:
++ buf.write(data)
++ del data # explicit free
++ break
++ assert n <= left, "recv(%d) returned %d bytes" % (left, n)
++ buf.write(data)
++ buf_len += n
++ del data # explicit free
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++ def readline(self, size=-1):
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if buf.tell() > 0:
++ # check if we already have it in our buffer
++ buf.seek(0)
++ bline = buf.readline(size)
++ if bline.endswith('\n') or len(bline) == size:
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return bline
++ del bline
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ buf.seek(0)
++ buffers = [buf.read()]
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ data = None
++ recv = self.recv
++ while data != "\n":
++ data = recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++
++ buf.seek(0, 2) # seek end
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ buf.write(data[:nl])
++ self._rbuf.write(data[nl:])
++ del data
++ break
++ buf.write(data)
++ return buf.getvalue()
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ buf.seek(0, 2) # seek end
++ buf_len = buf.tell()
++ if buf_len >= size:
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ left = size - buf_len
++ # did we just receive a newline?
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ # save the excess data to _rbuf
++ self._rbuf.write(data[nl:])
++ if buf_len:
++ buf.write(data[:nl])
++ break
++ else:
++ # Shortcut. Avoid data copy through buf when returning
++ # a substring of our first recv().
++ return data[:nl]
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid data copy through buf when
++ # returning exactly all of our first recv().
++ return data
++ if n >= left:
++ buf.write(data[:left])
++ self._rbuf.write(data[left:])
++ break
++ buf.write(data)
++ buf_len += n
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++else:
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
++
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
+ while True:
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- return "".join(buffers)
+- else:
+- # Read until size bytes or EOF seen, whichever comes first
+- data = self._rbuf
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- left = size - buf_len
+- recv_size = max(self._rbufsize, left)
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
+
+- def readline(self, size=-1):
+- data = self._rbuf
+- if size < 0:
+- # Read until \n or EOF, whichever comes first
+- if self._rbufsize <= 1:
+- # Speed up unbuffered case
+- assert data == ""
++ def read(self, size=-1):
++ if size < 0:
++ # Read until EOF
++ buffers = [self._rbuf]
++ self._rbuf = ""
++ if self._rbufsize <= 1:
++ recv_size = self.default_bufsize
++ else:
++ recv_size = self._rbufsize
++
++ while True:
++ data = self.recv(recv_size)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++ else:
++ # Read until size bytes or EOF seen, whichever comes first
++ data = self._rbuf
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
+ buffers = []
+- while data != "\n":
+- data = self.recv(1)
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ left = size - buf_len
++ recv_size = max(self._rbufsize, left)
++ data = self.recv(recv_size)
+ if not data:
+ break
+ buffers.append(data)
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
+ return "".join(buffers)
+- nl = data.find('\n')
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
++
++ def readline(self, size=-1):
++ data = self._rbuf
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ assert data == ""
++ buffers = []
++ while data != "\n":
++ data = self.recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
+ nl = data.find('\n')
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- return "".join(buffers)
+- else:
+- # Read until size bytes or \n or EOF seen, whichever comes first
+- nl = data.find('\n', 0, size)
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
+- left = size - buf_len
+- nl = data.find('\n', 0, left)
++ return data[:nl]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ return "".join(buffers)
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ nl = data.find('\n', 0, size)
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ return data[:nl]
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ left = size - buf_len
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
++ return "".join(buffers)
+
+
+ class SSL_fileobject(CP_fileobject):
diff --git a/community-testing/python2-cherrypy/ChangeLog b/community-testing/python2-cherrypy/ChangeLog
new file mode 100644
index 000000000..90276417c
--- /dev/null
+++ b/community-testing/python2-cherrypy/ChangeLog
@@ -0,0 +1,26 @@
+
+2009-04-15 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.2
+
+2008-12-14 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.1
+
+2008-11-04 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for python 2.6
+ * Thanks to David Moore
+
+2008-07-09 Mateusz Herych <heniekk@gmail.com>
+
+ * Updating for x86_64: 3.1.0
+
+2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updating for i686: 3.1.0
+
+2008-02-28 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updating in i686: 3.0.3
+
diff --git a/community-testing/python2-cherrypy/PKGBUILD b/community-testing/python2-cherrypy/PKGBUILD
new file mode 100644
index 000000000..98665d8eb
--- /dev/null
+++ b/community-testing/python2-cherrypy/PKGBUILD
@@ -0,0 +1,25 @@
+# $Id: PKGBUILD 45860 2011-04-30 05:41:24Z kchen $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Kaiting Chen <kaitocracy@gmail.com>
+# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
+# Contributor: Armando M. Baratti <amblistas@ajato.com.br>
+# Contributor: Florian Richter <Florian_Richter@gmx.de>
+pkgname=python2-cherrypy
+pkgver=3.2.0
+pkgrel=1
+pkgdesc="A pythonic, object-oriented web development framework"
+arch=('i686' 'x86_64')
+url="http://www.cherrypy.org"
+license=('BSD')
+replaces=('cherrypy')
+depends=('python2')
+source=(http://download.cherrypy.org/cherrypy/$pkgver/CherryPy-$pkgver.tar.gz
+ license)
+md5sums=('e5c1322bf5ce962c16283ab7a6dcca3f'
+ '22365dc6b0e6835b53da009aa36af017')
+
+build() {
+ cd $srcdir/CherryPy-$pkgver
+ python2 ./setup.py install --root=$pkgdir
+ install -D -m644 $srcdir/license $pkgdir/usr/share/licenses/$pkgname/license
+}
diff --git a/community-testing/python2-cherrypy/license b/community-testing/python2-cherrypy/license
new file mode 100644
index 000000000..32e9cf6bd
--- /dev/null
+++ b/community-testing/python2-cherrypy/license
@@ -0,0 +1,25 @@
+Copyright (c) 2004, CherryPy Team (team@cherrypy.org)
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of the CherryPy Team nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/community/cairo-compmgr/PKGBUILD b/community/cairo-compmgr/PKGBUILD
index 28e604268..f1dad846e 100644
--- a/community/cairo-compmgr/PKGBUILD
+++ b/community/cairo-compmgr/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 42740 2011-03-20 09:26:47Z bluewind $
+# $Id: PKGBUILD 45705 2011-04-27 13:34:55Z bluewind $
# Maintainer: Florian Pritz <flo@xinu.at>
# Contributor: Adam Hani Schakaki (krzd) <krzd@krzd.net>
# Contributor: Det <nimetonmaili at gmail a-dot com>
@@ -10,14 +10,14 @@
pkgname=cairo-compmgr
pkgver=git20110320
_commit=711fc7275b79cc802dc69658eb714ddc50666c06
-pkgrel=1
+pkgrel=2
epoch=1
pkgdesc="A Cairo based composite manager"
arch=(i686 x86_64 'mips64el')
url="http://cairo-compmgr.tuxfamily.org/"
license=(GPL)
-makedepends=(gettext gtk-doc "intltool>=0.41" gconf git)
-depends=("gtk2>=2.16.0" "vala>=0.11.6" libsm)
+makedepends=(gettext gtk-doc "intltool>=0.41" git)
+depends=("gtk2>=2.16.0" "vala>=0.11.6" libsm gconf)
install=cairo-compmgr.install
options=(!libtool)
#source=(http://download.tuxfamily.org/ccm/$pkgname/$pkgname-$pkgver.tar.gz)
diff --git a/community/calibre/PKGBUILD b/community/calibre/PKGBUILD
index ced4e3c5e..f776f1138 100644
--- a/community/calibre/PKGBUILD
+++ b/community/calibre/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 45564 2011-04-24 10:21:12Z giovanni $
+# $Id: PKGBUILD 45966 2011-04-30 22:16:22Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Petrov Roman <nwhisper@gmail.com>
# Contributor: Andrea Fagiani <andfagiani _at_ gmail dot com>
pkgname=calibre
-pkgver=0.7.57
+pkgver=0.7.59
pkgrel=1
pkgdesc="Ebook management application"
arch=('i686' 'x86_64' 'mips64el')
@@ -20,7 +20,7 @@ optdepends=('ipython: to use calibre-debug')
install=calibre.install
source=(http://calibre-ebook.googlecode.com/files/${pkgname}-${pkgver}.tar.gz
desktop_integration.patch)
-md5sums=('62879f10d2d4ab72b22ad744a44dbf67'
+md5sums=('78ebed5248758b9be1d135ae018b8dfe'
'bcc538a3b004429bf8f5a0ac1d89a37f')
build() {
diff --git a/community/clementine/PKGBUILD b/community/clementine/PKGBUILD
index 3dfe2f092..54ef7c949 100644
--- a/community/clementine/PKGBUILD
+++ b/community/clementine/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 43984 2011-04-01 14:24:01Z stephane $
+# $Id: PKGBUILD 44544 2011-04-08 11:52:13Z stephane $
#Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
#Contributor: BlackEagle < ike DOT devolder AT gmail DOT com >
#Contributor: Dany Martineau <dany.luc.martineau@gmail.com>
pkgname=clementine
pkgver=0.7.1
-pkgrel=1
+pkgrel=2
pkgdesc="A music player and library organizer"
url="http://www.clementine-player.org/"
license=('GPL')
arch=('i686' 'x86_64' 'mips64el')
-depends=('gstreamer0.10' 'taglib' 'glew' 'liblastfm' 'libgpod' 'libmtp' 'hicolor-icon-theme')
+depends=('gstreamer0.10' 'taglib' 'glew' 'liblastfm' 'libgpod' 'libmtp' 'libplist' 'hicolor-icon-theme' 'qt' 'libimobiledevice')
makedepends=('cmake' 'boost')
optdepends=('gstreamer0.10-base-plugins: for more open formats'
'gstreamer0.10-good-plugins: for use with "Good" plugin libraries'
diff --git a/community/denemo/PKGBUILD b/community/denemo/PKGBUILD
index 9cc69fb7c..b04dd2eac 100644
--- a/community/denemo/PKGBUILD
+++ b/community/denemo/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 38446 2011-01-27 15:07:46Z spupykin $
+# $Id: PKGBUILD 45779 2011-04-28 21:38:58Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Philipp Sandhaus <philipp.sandhaus@gmx.de>
# Contributor: Robert Emil Berge <filoktetes@linuxophic.org>
# Contributor: Gnud <ach.gnud@gmail.com>
pkgname=denemo
-pkgver=0.8.22
+pkgver=0.9.0
pkgrel=1
pkgdesc="A music score editor"
arch=('i686' 'x86_64' 'mips64el')
@@ -14,12 +14,13 @@ license=('GPL')
depends=('aubio' 'portaudio' 'lilypond' 'gtk2' 'libxml2' 'guile' 'fftw' 'gtksourceview2'
'librsvg' 'fluidsynth')
options=('!libtool')
+backup=('etc/denemo/denemo.conf')
source=("http://ftp.gnu.org/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz")
-md5sums=('4645ae66d21fc62b362ae554b10c487e')
+md5sums=('7679622302e5fec9776501a5e2777888')
build() {
cd $srcdir/$pkgname-$pkgver
- ./configure --prefix=/usr
+ ./configure --prefix=/usr --sysconfdir=/etc
make
make DESTDIR=$pkgdir install
}
diff --git a/community/dwm/PKGBUILD b/community/dwm/PKGBUILD
index 05604c664..75801fa62 100644
--- a/community/dwm/PKGBUILD
+++ b/community/dwm/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 18861 2010-06-16 09:09:52Z spupykin $
+# $Id: PKGBUILD 45679 2011-04-27 08:57:46Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Dag Odenhall <dag.odenhall@gmail.com>
# Contributor: Grigorios Bouzakis <grbzks@gmail.com>
@@ -13,7 +13,7 @@ license=('MIT')
options=(zipman)
depends=('libx11' 'libxinerama')
install=dwm.install
-source=(http://dl.suckless.org/dwm/dwm-$pkgver.tar.gz \
+source=(http://dl.suckless.org/dwm/dwm-$pkgver.tar.gz
config.h
dwm.desktop)
md5sums=('f0b422bfeaa812d66c6dd15c3cc92a6b'
@@ -26,13 +26,15 @@ build() {
cp $srcdir/config.h config.h
sed -i 's/CPPFLAGS =/CPPFLAGS +=/g' config.mk
- sed -i 's/CFLAGS =/CFLAGS +=/g' config.mk
- sed -i 's/LDFLAGS =/LDFLAGS +=/g' config.mk
+ sed -i 's/^CFLAGS = -g/#CFLAGS += -g/g' config.mk
+ sed -i 's/^#CFLAGS = -std/CFLAGS += -std/g' config.mk
+ sed -i 's/^LDFLAGS = -g/#LDFLAGS += -g/g' config.mk
+ sed -i 's/^#LDFLAGS = -s/LDFLAGS += -s/g' config.mk
- make X11INC=/usr/include/X11 X11LIB=/usr/lib/X11 || return 1
- make PREFIX=/usr DESTDIR=$pkgdir install || return 1
+ make X11INC=/usr/include/X11 X11LIB=/usr/lib/X11
+ make PREFIX=/usr DESTDIR=$pkgdir install
- install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE && \
- install -m644 -D README $pkgdir/usr/share/doc/$pkgname/README && \
+ install -m644 -D LICENSE $pkgdir/usr/share/licenses/$pkgname/LICENSE
+ install -m644 -D README $pkgdir/usr/share/doc/$pkgname/README
install -m644 -D $srcdir/dwm.desktop $pkgdir//etc/X11/sessions/dwm.desktop
}
diff --git a/community/dwm/dwm.install b/community/dwm/dwm.install
index d4fa27e62..7415613df 100644
--- a/community/dwm/dwm.install
+++ b/community/dwm/dwm.install
@@ -4,25 +4,8 @@ pre_install() {
/bin/true
}
-post_install() {
- /bin/true
-}
-
pre_upgrade() {
echo "-- Edit config.h in PKGBUILD's directory (generally /var/abs/community/x11/dwm/)"
echo "-- and rebuild package if you want to change settings."
/bin/true
}
-
-post_upgrade() {
- /bin/true
-}
-
-pre_remove() {
- /bin/true
-}
-
-post_remove() {
- /bin/true
-}
-
diff --git a/community/gecko-mediaplayer/PKGBUILD b/community/gecko-mediaplayer/PKGBUILD
index 93f308beb..f2dd7e47f 100644
--- a/community/gecko-mediaplayer/PKGBUILD
+++ b/community/gecko-mediaplayer/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 43379 2011-03-25 11:39:12Z jelle $
+# $Id: PKGBUILD 45744 2011-04-28 09:33:53Z lfleischer $
# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
# Contributor: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: fancris3 <fancris3 at aol.com>
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=gecko-mediaplayer
-pkgver=1.0.0
-pkgrel=3
+pkgver=1.0.3
+pkgrel=1
pkgdesc='Browser plugin that uses gnome-mplayer to play media in a web browser.'
arch=('i686' 'x86_64' 'mips64el')
url='http://code.google.com/p/gecko-mediaplayer/'
@@ -14,14 +14,12 @@ license=('GPL')
depends=("gnome-mplayer>=${pkgver}" 'dbus-glib')
makedepends=('xulrunner' 'pkgconfig')
replaces=('mplayer-plugin')
-source=("http://gecko-mediaplayer.googlecode.com/files/${pkgname}-${pkgver}.tar.gz" "gecko-mediaplayer-xulrunner2.0.patch")
-md5sums=('80ccb671aea90153be9f9e6dc41b7eae'
- '36e4332f67d74605530c12a804966d4f')
+source=("http://gecko-mediaplayer.googlecode.com/files/${pkgname}-${pkgver}.tar.gz")
+md5sums=('4996b243ed720dc30f5dcc9bc253bf68')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i $srcdir/gecko-mediaplayer-xulrunner2.0.patch
./configure --prefix=/usr --sysconfdir=/etc --without-gconf
make
}
diff --git a/community/giggle/PKGBUILD b/community/giggle/PKGBUILD
index cc252ff1d..19f2d0e0f 100644
--- a/community/giggle/PKGBUILD
+++ b/community/giggle/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 28719 2010-10-04 19:55:45Z tdziedzic $
+# $Id: PKGBUILD 44519 2011-04-08 03:41:57Z tdziedzic $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: neodreams <yanbrodeur@gmail.com>
pkgname=giggle
pkgver=0.5
-pkgrel=4
+pkgrel=5
pkgdesc="Graphical frontend for the git directory tracker (think of gitk on GTK+)."
arch=('i686' 'x86_64' 'mips64el')
url="http://live.gnome.org/giggle"
diff --git a/community/gimmie/PKGBUILD b/community/gimmie/PKGBUILD
index 78ef6bbce..2aefefda1 100644
--- a/community/gimmie/PKGBUILD
+++ b/community/gimmie/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 38302 2011-01-25 10:22:59Z spupykin $
+# $Id: PKGBUILD 44484 2011-04-07 20:23:57Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: György Balló <ballogy@freestart.hu>
pkgname=gimmie
pkgver=0.2.8
-pkgrel=13
+pkgrel=14
pkgdesc="desktop organizer which allows interaction with applications, contacts, documents, etc"
arch=('i686' 'x86_64' 'mips64el')
url="http://beatniksoftware.com/gimmie/"
@@ -21,6 +21,16 @@ md5sums=('721b8ec80f0247e1281aeb4aa5614c2f')
build() {
cd "$srcdir/$pkgname-$pkgver"
sed -i 's@^#!.*python$@#!/usr/bin/python2@' gimmie/gimmie_{threads,bar}.py
+
+ export CFLAGS="$CFLAGS `pkg-config --cflags glib-2.0`"
+ export LDFLAGS="$LDFLAGS `pkg-config --libs glib-2.0`"
+
+ export CFLAGS="$CFLAGS `pkg-config --cflags gtk+-2.0`"
+ export LDFLAGS="$LDFLAGS `pkg-config --libs gtk+-2.0`"
+
+ export CFLAGS="$CFLAGS `pkg-config --cflags pygtk-2.0`"
+ export LDFLAGS="$LDFLAGS `pkg-config --libs pygtk-2.0`"
+
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --libexecdir="/usr/lib/$pkgname" \
--disable-static --disable-schemas-install \
--with-gconf-schema-file-dir=/usr/share/gconf/schemas \
diff --git a/community/glipper/PKGBUILD b/community/glipper/PKGBUILD
index bf778bbbb..f1fae4d4e 100644
--- a/community/glipper/PKGBUILD
+++ b/community/glipper/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 38218 2011-01-23 22:09:28Z spupykin $
+# $Id: PKGBUILD 44486 2011-04-07 20:24:38Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Pbl Gomez <pblgomez@gmail.com>
pkgname=glipper
pkgver=1.0
-pkgrel=11
+pkgrel=12
pkgdesc="Clipboard for gnome desktop"
arch=('i686' 'x86_64' 'mips64el')
url="http://sourceforge.net/projects/glipper/"
diff --git a/community/gnome-mplayer/PKGBUILD b/community/gnome-mplayer/PKGBUILD
index 72cd9e495..1a8165ca5 100644
--- a/community/gnome-mplayer/PKGBUILD
+++ b/community/gnome-mplayer/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 41527 2011-03-07 14:09:14Z lfleischer $
+# $Id: PKGBUILD 45739 2011-04-28 09:17:53Z lfleischer $
# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
# Contributor: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=gnome-mplayer
-pkgver=1.0.2
-pkgrel=2
+pkgver=1.0.3
+pkgrel=1
pkgdesc='A simple MPlayer GUI.'
arch=('i686' 'x86_64' 'mips64el')
url='http://gnome-mplayer.googlecode.com/'
license=('GPL')
-depends=('mplayer' 'dbus-glib' 'libnotify')
+depends=('mplayer' 'dbus-glib' 'libnotify' 'gtk2' 'dconf' 'hicolor-icon-theme')
makedepends=('gnome-power-manager' 'nautilus')
install="${pkgname}.install"
source=("http://gnome-mplayer.googlecode.com/files/${pkgname}-${pkgver}.tar.gz")
-md5sums=('2cbba8838ecaa03a4c3a0190dcabfade')
+md5sums=('72a1c7d640a67eb2d60f2671108919c2')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/community/gnome-mplayer/gnome-mplayer.install b/community/gnome-mplayer/gnome-mplayer.install
index 6b1b64bdd..35db81614 100644
--- a/community/gnome-mplayer/gnome-mplayer.install
+++ b/community/gnome-mplayer/gnome-mplayer.install
@@ -1,11 +1,22 @@
post_install() {
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ glib-compile-schemas usr/share/glib-2.0/schemas
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ update-desktop-database -q
+}
+
+pre_upgrade() {
+ pre_remove $1
}
post_upgrade() {
- post_install
+ post_install $1
+}
+
+pre_remove() {
+ glib-compile-schemas usr/share/glib-2.0/schemas
}
post_remove() {
- post_install
+ update-desktop-database -q
+ gtk-update-icon-cache -q -f -t usr/share/icons/hicolor
}
diff --git a/community/gnome-system-tools/PKGBUILD b/community/gnome-system-tools/PKGBUILD
index 1572c6c1a..9b242bc59 100644
--- a/community/gnome-system-tools/PKGBUILD
+++ b/community/gnome-system-tools/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 27934 2010-09-30 15:07:45Z ibiru $
+# $Id: PKGBUILD 44473 2011-04-07 19:13:54Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Hugo Doria <hugodoria@archlinux-br.org>
pkgname=gnome-system-tools
-pkgver=2.32.0
+pkgver=3.0.0
pkgrel=1
pkgdesc="Gnome System Configuration Utilities"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gnome.org/projects/gst/"
license=('GPL')
options=('!libtool')
-depends=('wireless_tools' 'liboobs>=2.32.0' 'nautilus>=2.30.1' 'polkit-gnome>=0.97' 'dconf')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool>=0.40')
+depends=('wireless_tools' 'liboobs' 'nautilus' 'polkit-gnome' 'dconf')
+makedepends=('gnome-doc-utils' 'intltool')
install=gnome-system-tools.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('71d52698ccb60bc07d6e4e442b7cb178ebf1152396379500df5ec62da4c4d14a')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('905df26c02f00a6c2c18706ba3db7eab764e3df6576289e103504aa39a47ae0b')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/community/gnote/PKGBUILD b/community/gnote/PKGBUILD
index eb372bf44..d89fd19b6 100644
--- a/community/gnote/PKGBUILD
+++ b/community/gnote/PKGBUILD
@@ -1,23 +1,22 @@
-# $Id: PKGBUILD 41039 2011-03-03 11:13:48Z ibiru $
+# $Id: PKGBUILD 45878 2011-04-30 20:15:23Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: uastasi <uastasi@archlinux.us>
pkgname=gnote
-pkgver=0.7.3
-pkgrel=3
+pkgver=0.7.4
+pkgrel=1
pkgdesc="Experimental port of Tomboy to C++ "
arch=('i686' 'x86_64' 'mips64el')
url="http://live.gnome.org/Gnote"
license=('GPL')
-depends=('boost-libs' 'gtkspell' 'libpanelappletmm' 'libxslt')
+depends=('gtkmm' 'gconf' 'gtkspell' 'libxslt')
makedepends=('intltool' 'gnome-doc-utils' 'boost')
options=('!libtool')
install=gnote.install
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('4853315711baf7647cdae4c2f7d23e22e2b13322605efe3dd98796a06f928321')
+sha256sums=('19bf64397278b85703979fd4943692f6c44579e597bad27acf04a64d6813e6f2')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- export CXXFLAGS="${CXXFLAGS} -DBOOST_FILESYSTEM_VERSION=2"
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
@@ -26,8 +25,12 @@ build() {
--disable-schemas-install \
--disable-static
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnote ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+ rm -rf ${pkgdir}/etc/gconf/
}
diff --git a/community/gnubiff/PKGBUILD b/community/gnubiff/PKGBUILD
index f6a6dd2a4..6bdb40527 100644
--- a/community/gnubiff/PKGBUILD
+++ b/community/gnubiff/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 14203 2010-04-02 08:57:36Z spupykin $
+# $Id: PKGBUILD 44789 2011-04-11 20:19:28Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Tom K <tomk@runbox.com>
# Contributor: Todd Musall <tmusall@gmail.com>
pkgname=gnubiff
-pkgver=2.2.11
-pkgrel=4
+pkgver=2.2.13
+pkgrel=1
pkgdesc="Mail notification program that checks for mail and displays headers when new mail has arrived"
arch=('i686' 'x86_64' 'mips64el')
url="http://gnubiff.sourceforge.net/"
@@ -14,7 +14,7 @@ depends=('gnome-panel')
makedepends=('perlxml')
conflicts=(gnubiff-gtk)
source=(http://downloads.sourceforge.net/gnubiff/gnubiff-$pkgver.tar.gz)
-md5sums=('d9e899f25b1e83081ccd3ac97ee31b8b')
+md5sums=('65423957eb027b94c9e661611c0e4271')
build() {
[ "$GNOMEDIR" = "" ] && GNOMEDIR=/usr
@@ -46,9 +46,13 @@ diff -wbBur gnubiff-2.2.10/src/support.h gnubiff-2.2.10.my/src/support.h
}
EOF
- LDFLAGS="-lgnomeui-2" CFLAGS="-I/usr/include/libgnomeui-2.0" CPPFLAGS="-I/usr/include/libgnomeui-2.0" ./configure --prefix=/usr --with-password --with-password-string --disable-fam
- make || return 1
- make DESTDIR=$startdir/pkg install || return 1
+ export LDFLAGS="$LDFLAGS -lgnomeui-2"
+ export CFLAGS="$CFLAGS -I/usr/include/libgnomeui-2.0"
+ export CPPFLAGS="$CPPFLAGS -I/usr/include/libgnomeui-2.0"
+ ./configure --prefix=/usr --with-password --with-password-string --disable-fam \
+ --disable-gnome
+ make
+ make DESTDIR=$startdir/pkg install
rm -rf ${pkgdir}/usr/share/info/dir
}
diff --git a/community/go/PKGBUILD b/community/go/PKGBUILD
index bc6c7ad82..b079ca98c 100644
--- a/community/go/PKGBUILD
+++ b/community/go/PKGBUILD
@@ -5,9 +5,9 @@
# Contributor: Christian Himpel <chressie at gmail dot com>
pkgname=go
-pkgver=2011_02_15
-_pkgver=2011-02-15
+pkgver=r56
pkgrel=1
+epoch=1
pkgdesc='Google Go compiler and tools (release version)'
arch=('i686' 'x86_64' 'mips64el')
url="http://golang.org/"
@@ -48,7 +48,7 @@ build() {
mkdir -p "$GOROOT/bin"
cd "$GOROOT/src"
- hg update release.$_pkgver
+ hg update release.$pkgver
. ./make.bash
}
diff --git a/community/google-gadgets/PKGBUILD b/community/google-gadgets/PKGBUILD
index 7bd430d67..fbe77e1be 100644
--- a/community/google-gadgets/PKGBUILD
+++ b/community/google-gadgets/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 43358 2011-03-25 11:00:25Z schiv $
+# $Id: PKGBUILD 44556 2011-04-08 21:04:15Z spupykin $
# Maintainer: Ray Rashif <schiv@archlinux.org>
pkgbase=google-gadgets
@@ -8,7 +8,7 @@ _basedir="$startdir/pkg/base"
pkgver=0.11.2
_sover=1.0
_sobump=0.0.0
-pkgrel=3
+pkgrel=4
arch=('i686' 'x86_64' 'mips64el')
url="http://code.google.com/p/google-gadgets-for-linux/"
license=('APACHE')
@@ -19,8 +19,10 @@ makedepends=('gstreamer0.10-base-plugins' 'libwebkit'
'networkmanager'
'zip' 'flex')
options=('!libtool')
-source=("http://google-gadgets-for-linux.googlecode.com/files/$_realname-$pkgver.tar.bz2")
-md5sums=('279305553bcbf74f3e3615f6abc36a5e')
+source=("http://google-gadgets-for-linux.googlecode.com/files/$_realname-$pkgver.tar.bz2"
+ "wifi-types.patch")
+md5sums=('279305553bcbf74f3e3615f6abc36a5e'
+ 'f0df71c60a174e9d629db87b8bd9e102')
build() {
cd "$srcdir/$_realname-$pkgver"
@@ -31,6 +33,7 @@ build() {
# xulrunner 2.0 is incompatible;
# we build without smjs-script/browser-element
+ patch -p1 <$srcdir/wifi-types.patch
./configure --prefix=/usr \
--disable-werror \
--disable-update-desktop-database \
diff --git a/community/google-gadgets/wifi-types.patch b/community/google-gadgets/wifi-types.patch
new file mode 100644
index 000000000..be9383a61
--- /dev/null
+++ b/community/google-gadgets/wifi-types.patch
@@ -0,0 +1,36 @@
+diff -wbBur google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/network.cc google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/network.cc
+--- google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/network.cc 2009-03-15 04:12:42.000000000 +0000
++++ google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/network.cc 2011-04-08 20:57:16.000000000 +0000
+@@ -23,17 +23,9 @@
+ namespace framework {
+ namespace linux_system {
+
+-#ifdef NM_DEVICE_TYPE_WIFI
+ static const int kDeviceTypeWifi = NM_DEVICE_TYPE_WIFI;
+-#else
+-static const int kDeviceTypeWifi = DEVICE_TYPE_802_11_WIRELESS;
+-#endif
+
+-#ifdef NM_DEVICE_TYPE_ETHERNET
+ static const int kDeviceTypeEthernet = NM_DEVICE_TYPE_ETHERNET;
+-#else
+-static const int kDeviceTypeEthernet = DEVICE_TYPE_802_3_ETHERNET;
+-#endif
+
+ static const int kDeviceTypeUnknown = 0;
+
+diff -wbBur google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/wireless.cc google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/wireless.cc
+--- google-gadgets-for-linux-0.11.2/extensions/linux_system_framework/wireless.cc 2009-12-28 10:39:53.000000000 +0000
++++ google-gadgets-for-linux-0.11.2.my/extensions/linux_system_framework/wireless.cc 2011-04-08 20:57:39.000000000 +0000
+@@ -77,11 +77,7 @@
+
+ using namespace ggadget::dbus;
+
+-#ifdef NM_DEVICE_TYPE_WIFI
+ static const int kDeviceTypeWifi = NM_DEVICE_TYPE_WIFI;
+-#else
+-static const int kDeviceTypeWifi = DEVICE_TYPE_802_11_WIRELESS;
+-#endif
+
+ // Defined in nm 0.7
+ static const int kDeviceStateActivated = 8;
diff --git a/community/gphpedit/PKGBUILD b/community/gphpedit/PKGBUILD
index 963af4f93..963c8d44a 100644
--- a/community/gphpedit/PKGBUILD
+++ b/community/gphpedit/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 18217 2010-06-01 12:55:06Z spupykin $
+# $Id: PKGBUILD 44458 2011-04-07 16:24:21Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: tobias <tobias@archlinux.org>
# Contributor: Tobias Kieslich <tobias@justdreams.de>
pkgname=gphpedit
pkgver=0.9.98RC1
-pkgrel=1
+pkgrel=2
pkgdesc="a scintilla/gnome based editor specialized on php-files"
arch=(i686 x86_64 'mips64el')
license=('GPL')
@@ -20,12 +20,12 @@ md5sums=('cc3c5f50704fa0ed3ef3d4ac983db525'
build() {
cd ${srcdir}/*$pkgname*
-# patch -Np1 -i ${srcdir}/doc-fix.patch || return 1
+# patch -Np1 -i ${srcdir}/doc-fix.patch
./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
- make || return 1
- make DESTDIR=$pkgdir install || return 1
+ make
+ make DESTDIR=$pkgdir install
# extend MimeType declaration
echo "MimeType=application/x-php;text-x-php-text/x-php-source;" >> \
diff --git a/community/gphpedit/gphpedit.install b/community/gphpedit/gphpedit.install
index 21f20806c..39bc96919 100644
--- a/community/gphpedit/gphpedit.install
+++ b/community/gphpedit/gphpedit.install
@@ -6,11 +6,6 @@ post_upgrade() {
post_install $1
}
-pre_remove() {
- /bin/true
-}
-
post_remove() {
post_install
}
-
diff --git a/community/gtkwave/PKGBUILD b/community/gtkwave/PKGBUILD
index e18d8e683..bac1db048 100644
--- a/community/gtkwave/PKGBUILD
+++ b/community/gtkwave/PKGBUILD
@@ -2,7 +2,7 @@
# Contributor: Jared Casper <jaredcasper@gmail.com>
pkgname=gtkwave
-pkgver=3.3.20
+pkgver=3.3.21
pkgrel=1
pkgdesc='A wave viewer which reads LXT, LXT2, VZT, GHW and VCD/EVCD files'
arch=('i686' 'x86_64' 'mips64el')
@@ -12,7 +12,7 @@ depends=('gtk2')
makedepends=('gperf')
install="${pkgname}.install"
source=("http://gtkwave.sourceforge.net/${pkgname}-${pkgver}.tar.gz")
-md5sums=('91f35ce56817b1a0b37a904be4e5f021')
+md5sums=('ae3a99a2304f45703471629c7b614ef6')
build() {
cd ${pkgname}-${pkgver}
diff --git a/community/ibus/PKGBUILD b/community/ibus/PKGBUILD
index cbd4e259c..1966162fa 100644
--- a/community/ibus/PKGBUILD
+++ b/community/ibus/PKGBUILD
@@ -4,12 +4,12 @@
pkgname=ibus
pkgver=1.3.9
-pkgrel=2
+pkgrel=3
pkgdesc='Next Generation Input Bus for Linux.'
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
url='http://ibus.googlecode.com'
-depends=('dbus-python>=0.83.0' 'gconf' 'python2' 'pygtk' 'pyxdg' 'iso-codes' 'librsvg' 'python-notify' 'hicolor-icon-theme')
+depends=('dbus-python>=0.83.0' 'gconf' 'python2' 'pygtk' 'pyxdg' 'iso-codes' 'librsvg' 'python-notify' 'hicolor-icon-theme' 'gtk3')
optdepends=('notification-daemon')
makedepends=('intltool')
options=('!libtool')
@@ -27,7 +27,8 @@ build() {
--libexecdir=/usr/lib/ibus \
--sysconfdir=/etc \
--with-gconf-schema-file-dir=/usr/share/gconf/schemas \
- --enable-introspection=no # disabled because build fails with
+ --enable-gtk3
+ #--enable-introspection=no # disabled because build fails with
# gobject-introspection 0.9.10-2
# python2 fix
diff --git a/community/ibus/ibus.install b/community/ibus/ibus.install
index d5c04de2b..439f00b29 100644
--- a/community/ibus/ibus.install
+++ b/community/ibus/ibus.install
@@ -5,6 +5,9 @@ post_install() {
/usr/sbin/gconfpkg --install ibus
gtk-update-icon-cache -fq -t /usr/share/icons/hicolor
+
+ # update for gkt3
+ gtk-query-immodules-3.0 --update-cache
}
pre_upgrade() {
@@ -22,4 +25,7 @@ pre_remove() {
post_remove() {
/usr/bin/gtk-query-immodules-2.0 > /etc/gtk-2.0/gtk.immodules
gtk-update-icon-cache -fq -t /usr/share/icons/hicolor
+
+ # update for gkt3
+ gtk-query-immodules-3.0 --update-cache
}
diff --git a/community/inputattach/0001-Add-w8001-flag.patch b/community/inputattach/0001-Add-w8001-flag.patch
new file mode 100644
index 000000000..ba6f9394b
--- /dev/null
+++ b/community/inputattach/0001-Add-w8001-flag.patch
@@ -0,0 +1,27 @@
+From 729257077e328e0b2fa1bba5a5509c09a743d5d0 Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Tue, 13 Jul 2010 11:49:47 +1000
+Subject: [PATCH 2/3] Add w8001 flag for serial Wacom devices.
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+---
+ inputattach.c | 3 +++
+ 1 files changed, 3 insertions(+), 0 deletions(-)
+
+diff --git a/inputattach.c b/inputattach.c
+index a7de302..0382954 100644
+--- a/inputattach.c
++++ b/inputattach.c
+@@ -495,6 +495,9 @@ static struct input_types input_types[] = {
+ { "--dump", "-dump", "Just enable device",
+ B2400, CS8,
+ 0, 0x00, 0x00, 0, dump_init },
++{ "--w8001", "-w8001", "Wacom W8001",
++ B38400, CS8,
++ SERIO_W8001, 0x00, 0x00, 0, NULL },
+ { NULL, NULL, NULL, 0, 0, 0, 0, 0, 0, NULL }
+ };
+
+--
+1.7.2.3
+
diff --git a/community/inputattach/0002-Allow-for-custom-baud-rates.patch b/community/inputattach/0002-Allow-for-custom-baud-rates.patch
new file mode 100644
index 000000000..78f5d19c8
--- /dev/null
+++ b/community/inputattach/0002-Allow-for-custom-baud-rates.patch
@@ -0,0 +1,70 @@
+From 5d9373f24f1b519c030024b2f36277ba9713697c Mon Sep 17 00:00:00 2001
+From: Peter Hutterer <peter.hutterer@who-t.net>
+Date: Wed, 21 Jul 2010 14:41:04 +1000
+Subject: [PATCH 3/3] Allow for custom baud rates.
+
+Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
+---
+ inputattach.c | 25 ++++++++++++++++++++++++-
+ 1 files changed, 24 insertions(+), 1 deletions(-)
+
+diff --git a/inputattach.c b/inputattach.c
+index 0382954..6806fc8 100644
+--- a/inputattach.c
++++ b/inputattach.c
+@@ -506,7 +506,7 @@ static void show_help(void)
+ struct input_types *type;
+
+ puts("");
+- puts("Usage: inputattach [--daemon] <mode> <device>");
++ puts("Usage: inputattach [--daemon] [--baud <baud>] <mode> <device>");
+ puts("");
+ puts("Modes:");
+
+@@ -530,6 +530,7 @@ int main(int argc, char **argv)
+ int i;
+ char c;
+ int retval;
++ int baud = -1;
+
+ for (i = 1; i < argc; i++) {
+ if (!strcasecmp(argv[i], "--help")) {
+@@ -540,6 +541,15 @@ int main(int argc, char **argv)
+ } else if (need_device) {
+ device = argv[i];
+ need_device = 0;
++ } else if (!strcasecmp(argv[i], "--baud")) {
++ if (argc <= i + 1) {
++ show_help();
++ fprintf(stderr,
++ "inputattach: require baud rate\n");
++ return EXIT_FAILURE;
++ }
++
++ baud = atoi(argv[++i]);
+ } else {
+ if (type && type->name) {
+ fprintf(stderr,
+@@ -580,6 +590,19 @@ int main(int argc, char **argv)
+ return 1;
+ }
+
++ switch(baud) {
++ case -1: break;
++ case 2400: type->speed = B2400; break;
++ case 4800: type->speed = B4800; break;
++ case 9600: type->speed = B9600; break;
++ case 19200: type->speed = B19200; break;
++ case 38400: type->speed = B38400; break;
++ default:
++ fprintf(stderr, "inputattach: invalid baud rate '%d'\n",
++ baud);
++ return EXIT_FAILURE;
++ }
++
+ setline(fd, type->flags, type->speed);
+
+ if (type->flush)
+--
+1.7.2.3
+
diff --git a/community/inputattach/PKGBUILD b/community/inputattach/PKGBUILD
index 037c76e9c..b081de6c5 100644
--- a/community/inputattach/PKGBUILD
+++ b/community/inputattach/PKGBUILD
@@ -2,30 +2,42 @@
pkgname=inputattach
pkgver=1.24
-pkgrel=2
+pkgrel=3
pkgdesc="Attach serial mice, keyboards and other input devices to the kernel input system"
arch=('i686' 'x86_64' 'mips64el')
url="http://linuxconsole.sourceforge.net/"
license=('GPL')
-depends=('glibc' 'bash')
+depends=('bash')
makedepends=('gcc')
-backup=(etc/conf.d/inputattach.conf)
+backup=(etc/conf.d/inputattach)
install=inputattach.install
source=('http://kernel.org/pub/linux/kernel/people/dtor/inputattach.c'
'http://kernel.org/pub/linux/kernel/people/dtor/serio-ids.h'
- 'inputattach.conf.d'
- 'inputattach.rc.d')
-md5sums=('eb595a766ca363edb3b14c25404596ce'
- '93d34d96cd3ad19ea1aeca7f68a66b4a'
- 'ca36071f8384314c037e1e8b15c63afe'
- 'd484778b0464e25b22cda89ac7fed156')
+ 'inputattach.conf.d' 'inputattach.rc.d'
+ '0001-Add-w8001-flag.patch' '0002-Allow-for-custom-baud-rates.patch')
+md5sums=('eb595a766ca363edb3b14c25404596ce' '93d34d96cd3ad19ea1aeca7f68a66b4a'
+ '7ca903e54829764c8241233af5069216' '8d62f8840a2e6457a953f667df39ef99'
+ 'f1b3ddae308351357f557cbd5c6cda81' '8f76908449cae24a95adbf0bc0a17721')
build() {
- cc $CFLAGS inputattach.c -o inputattach || return 1
+ cd "$srcdir"
- install -D -m755 inputattach $startdir/pkg/usr/sbin/inputattach && \
- install -D -m644 $startdir/src/inputattach.conf.d \
- $startdir/pkg/etc/conf.d/inputattach.conf && \
- install -D -m755 $startdir/src/inputattach.rc.d \
- $startdir/pkg/etc/rc.d/inputattach
+ # Add support for serial wacom tablets
+ patch -Np1 -i "$srcdir/0001-Add-w8001-flag.patch"
+ patch -Np1 -i "$srcdir/0002-Allow-for-custom-baud-rates.patch"
+
+ cc $CFLAGS inputattach.c -o inputattach
+}
+
+package() {
+ cd "$srcdir"
+
+ install -Dm755 inputattach \
+ "$pkgdir/usr/sbin/inputattach"
+
+ install -Dm644 $srcdir/inputattach.conf.d \
+ "$pkgdir/etc/conf.d/inputattach"
+
+ install -Dm755 $srcdir/inputattach.rc.d \
+ "$pkgdir/etc/rc.d/inputattach"
}
diff --git a/community/inputattach/inputattach.conf.d b/community/inputattach/inputattach.conf.d
index 1e04240fa..ae8d1842a 100644
--- a/community/inputattach/inputattach.conf.d
+++ b/community/inputattach/inputattach.conf.d
@@ -1,11 +1,10 @@
#
# Configuration for inputattach
#
+# IAPARAMS is an array of inputattach arguments, see 'inputattach --help'.
+# An inputattach instance will be started for each element.
-# inputattach mode - see 'inputattach --help' for list e.g. "--microsoft" for
-# 2 button Microsoft mouse
-IAMODE="--microsoft"
-
-# inputattach device - /dev file entry where device is attached e.g.
-# "/dev/ttyS0" for device attached to first system serial port
-IADEV="/dev/ttyS0"
+IAPARAMS=(
+ "--microsoft /dev/ttyS0"
+ #"--baud 9600 --w8001 /dev/ttyS1"
+)
diff --git a/community/inputattach/inputattach.install b/community/inputattach/inputattach.install
index 965958b6b..b5381e14a 100644
--- a/community/inputattach/inputattach.install
+++ b/community/inputattach/inputattach.install
@@ -1,9 +1,18 @@
## arg 1: the new package version
+
+post_upgrade() {
+ (( $(vercmp 1.24-3 $2) > 0 )) && cat <<MSG
+ATTENTION:
+ /etc/conf.d/inputattach.conf has been replaced by /etc/conf.d/inputattach
+ Make sure you adjust the new config file, which has a new format.
+MSG
+}
+
post_install() {
cat << EOF
The correct device mode and /dev device file will need to be set in
-/etc/conf.d/inputattach.conf before starting /etc/rc.d/inputattach
+/etc/conf.d/inputattach before starting /etc/rc.d/inputattach
EOF
}
diff --git a/community/inputattach/inputattach.rc.d b/community/inputattach/inputattach.rc.d
index 7f260f9f8..6b92827be 100644
--- a/community/inputattach/inputattach.rc.d
+++ b/community/inputattach/inputattach.rc.d
@@ -1,60 +1,37 @@
#!/bin/bash
-daemon_name=inputattach
-
. /etc/rc.conf
-
-. /etc/conf.d/$daemon_name.conf
-
. /etc/rc.d/functions
-
-get_pid() {
- pidof $daemon_name
-}
+. /etc/conf.d/inputattach
case "$1" in
start)
- stat_busy "Starting $daemon_name daemon"
-
- PID=`get_pid`
- if [ -z "$PID" ]; then
- [ -f /var/run/$daemon_name.pid ] && rm -f /var/run/$daemon_name.pid
- # RUN
- $daemon_name --daemon $IAMODE $IADEV
- #
- if [ $? -gt 0 ]; then
+ stat_busy "Starting inputattach"
+ for param in ${IAPARAMS[@]}; do
+ if ! /usr/sbin/inputattach --daemon $param; then
stat_fail
exit 1
- else
- echo `get_pid` > /var/run/$daemon_name.pid
- add_daemon $daemon_name
- stat_done
fi
- else
- stat_fail
- exit 1
- fi
- ;;
+ done
+ add_daemon inputattach
+ stat_done
+ ;;
stop)
- stat_busy "Stopping $daemon_name daemon"
- PID=`get_pid`
- # KILL
- [ ! -z "$PID" ] && kill $PID &> /dev/null
- #
+ stat_busy "Stopping inputattach"
+ PID=`pidof -o %PPID /usr/sbin/inputattach`
+ [ ! -z "$PID" ] && kill $PID &>/dev/null
if [ $? -gt 0 ]; then
stat_fail
exit 1
else
- rm -f /var/run/$daemon_name.pid &> /dev/null
- rm_daemon $daemon_name
+ rm_daemon inputattach
stat_done
fi
;;
-
restart)
$0 stop
- sleep 3
+ sleep 1
$0 start
;;
*)
diff --git a/community/kdenlive/PKGBUILD b/community/kdenlive/PKGBUILD
index d7e79a899..8a1e95af1 100644
--- a/community/kdenlive/PKGBUILD
+++ b/community/kdenlive/PKGBUILD
@@ -1,26 +1,26 @@
-# $Id: PKGBUILD 43713 2011-03-29 10:19:44Z spupykin $
+# $Id: PKGBUILD 45687 2011-04-27 09:20:17Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Zuf <kontakt.zuf@gmail.com>
# Contributor: Darwin Bautista <djclue917@gmail.com>
pkgname=kdenlive
-pkgver=0.7.8
-pkgrel=3
+pkgver=0.8
+pkgrel=1
pkgdesc="A non-linear video editor for Linux"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.kdenlive.org/"
license=('GPL')
-depends=('kdebase-runtime' 'mlt' 'dvgrab')
+depends=('kdebase-runtime' 'mlt' 'dvgrab' 'qjson' 'qimageblitz')
makedepends=('automoc4' 'cmake' 'gettext')
install=kdenlive.install
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz")
-md5sums=('7011d0c6b26f7f2350065defef3d9a76')
+md5sums=('26170b4360285e8a7bf53fd122d8854e')
build() {
export LDFLAGS="$LDFLAGS -lX11"
cd "${srcdir}"
- mkdir build
+ mkdir build || true
cd build
cmake ../${pkgname}-${pkgver} \
-DCMAKE_BUILD_TYPE=Release \
diff --git a/community/libmicrohttpd/PKGBUILD b/community/libmicrohttpd/PKGBUILD
index 0e71895ba..08c0b1322 100644
--- a/community/libmicrohttpd/PKGBUILD
+++ b/community/libmicrohttpd/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 43754 2011-03-29 17:11:14Z spupykin $
+# $Id: PKGBUILD 45868 2011-04-30 09:25:16Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Norberto Lopes <shelika@mail.telepac.pt>
# Contributor: Kao Dome <kaodome@gmail.com>
@@ -6,7 +6,7 @@
# Contributor: Mathias Rohnstock <linksoft@gmx.de>
pkgname=libmicrohttpd
-pkgver=0.9.9
+pkgver=0.9.10
pkgrel=1
pkgdesc="a small C library that is supposed to make it easy to run an HTTP server as part of another application."
arch=('i686' 'x86_64' 'mips64el')
@@ -14,8 +14,9 @@ url="http://www.gnu.org/software/libmicrohttpd/"
license=('LGPL')
options=('!libtool')
depends=('gnutls')
+install=libmicrohttpd.install
source=(ftp://ftp.gnu.org/gnu/libmicrohttpd/$pkgname-$pkgver.tar.gz)
-md5sums=('0114a439bb3cca9d9ca9e43b1f4fd0b1')
+md5sums=('7cc44373fe1b03348510755839091578')
build() {
cd ${pkgname}-${pkgver}
diff --git a/community/libmicrohttpd/libmicrohttpd.install b/community/libmicrohttpd/libmicrohttpd.install
new file mode 100644
index 000000000..dc0d2b996
--- /dev/null
+++ b/community/libmicrohttpd/libmicrohttpd.install
@@ -0,0 +1,20 @@
+infodir=usr/share/info
+filelist=(microhttpd.info microhttpd-tutorial.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
diff --git a/community/liboobs/PKGBUILD b/community/liboobs/PKGBUILD
index d565ce733..746af8e79 100644
--- a/community/liboobs/PKGBUILD
+++ b/community/liboobs/PKGBUILD
@@ -1,23 +1,26 @@
-# $Id: PKGBUILD 27928 2010-09-30 14:47:40Z ibiru $
+# $Id: PKGBUILD 44470 2011-04-07 19:06:42Z ibiru $
# Maintainer : Ionut Biru<ibiru@archlinux.org>
# Contributor: Hugo Doria <hugodoria@gmail.com>
pkgname=liboobs
-pkgver=2.32.0
+pkgver=3.0.0
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
pkgdesc="A wrapping library to the System Tools Backends"
url="ftp://ftp.gnome.org/pub/GNOME/sources/liboobs/"
license=('GPL')
-depends=('system-tools-backends>=2.10.1')
+depends=('system-tools-backends')
makedepends=('pkgconfig')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/GNOME/sources/liboobs/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('1b70061272b2c777d505b5b6c785e045d4297639dd0d4214d04dea154a9b63d6')
+source=(http://ftp.gnome.org/pub/GNOME/sources/liboobs/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('1e7a327df7dcfa30e0cd3e0d2ffcd9a2c91c7870291dd30434b5da907945c00a')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --disable-static
make
+}
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR=${pkgdir} install
}
diff --git a/community/nut/PKGBUILD b/community/nut/PKGBUILD
index d6eccb9b0..70108db54 100644
--- a/community/nut/PKGBUILD
+++ b/community/nut/PKGBUILD
@@ -2,14 +2,14 @@
# Contributor: Slash <demodevil5 [at] yahoo [dot] com>
pkgname=nut
-pkgver=16.9
+pkgver=16.10
pkgrel=1
pkgdesc='Records what you eat and analyzes your meals for nutrient levels in terms of the Daily Value or DV which is the standard for food labeling in the US.'
url='http://nut.sourceforge.net/'
license=('GPL')
arch=('i686' 'x86_64' 'mips64el')
source=("http://downloads.sourceforge.net/project/nut/nut/${pkgver}/nut-${pkgver}.tar.gz")
-md5sums=('1f5a56a372023f4dcfc5a31fef61f5dd')
+md5sums=('7b360d0cc7fed5361f1220385af7aa1b')
build() {
cd ${pkgname}-${pkgver}
diff --git a/community/open-vm-tools/PKGBUILD b/community/open-vm-tools/PKGBUILD
index 5ca385f92..25314acaa 100644
--- a/community/open-vm-tools/PKGBUILD
+++ b/community/open-vm-tools/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id: PKGBUILD 44320 2011-04-05 15:30:39Z spupykin $
+# $Id: PKGBUILD 45812 2011-04-29 12:03:32Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Krzysztof Raczkowski <raczkow@gmail.com>
pkgname=open-vm-tools
pkgver=2011.03.28
_pkgsubver=387002
-pkgrel=1
+pkgrel=3
pkgdesc="The Open Virtual Machine Tools (open-vm-tools) are the open source implementation of VMware Tools."
arch=('i686' 'x86_64' 'mips64el')
url="http://open-vm-tools.sourceforge.net/"
license=('LGPL')
depends=('open-vm-tools-modules' 'libdnet' 'icu' 'procps' 'glib2' 'uriparser' 'libsigc++' 'libxss')
-makedepends=('chrpath' 'doxygen')
+makedepends=('chrpath' 'doxygen' 'gtkmm' 'fuse')
optdepends=('gtkmm' 'libnotify' 'libxtst' 'fuse' 'libsm')
options=('docs' '!libtool')
install=$pkgname.install
@@ -55,8 +55,6 @@ package() {
patch -Np1 -i $srcdir/scripts-network.patch etc/vmware-tools/scripts/vmware/network
patch -Np1 -i $srcdir/scripts-network-FS19541.patch etc/vmware-tools/scripts/vmware/network
- ln -fs /usr/sbin/mount.vmhgfs $pkgdir/sbin/mount.vmhgfs
-
install -D -m 755 $srcdir/open-vm-tools.rc.d $pkgdir/etc/rc.d/open-vm-tools
install -D -m 644 $srcdir/open-vm-tools.conf.d $pkgdir/etc/conf.d/open-vm-tools
install -D -m 644 $srcdir/tools.conf $pkgdir/etc/vmware-tools/tools.conf
@@ -64,5 +62,7 @@ package() {
install -D -m 644 $srcdir/vmware-guestd $pkgdir/etc/pam.d/vmware-guestd
rm -rf $pkgdir/usr/etc
+ ln -fs /usr/sbin/mount.vmhgfs $pkgdir/sbin/mount.vmhgfs
+
cd $pkgdir && find -type f -exec sh -c "file {} | grep ELF >/dev/null && echo {} && chrpath -d {}" \;
}
diff --git a/community/pbzip2/PKGBUILD b/community/pbzip2/PKGBUILD
index 1c4671dd2..d9b8ef890 100644
--- a/community/pbzip2/PKGBUILD
+++ b/community/pbzip2/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 43691 2011-03-29 08:17:25Z foutrelis $
+# $Id: PKGBUILD 45756 2011-04-28 15:32:42Z foutrelis $
# Contributor: Vasco Costa <vasco dot costa at geekslot dot com>
# Maintainer: Evangelos Foutras <foutrelis@gmail.com>
pkgname=pbzip2
-pkgver=1.1.3
+pkgver=1.1.4
pkgrel=1
pkgdesc="Parallel implementation of the bzip2 block-sorting file compressor"
arch=(i686 x86_64 'mips64el')
@@ -11,12 +11,17 @@ url="http://compression.ca/pbzip2/"
license=('BSD')
depends=('bzip2' 'gcc-libs')
source=(http://compression.ca/$pkgname/$pkgname-$pkgver.tar.gz)
-md5sums=('beb27a8055723f5f84364182d137ed1a')
+md5sums=('797e3ae5c6293a55e3e97fefb11cf494')
build() {
cd "$srcdir/$pkgname-$pkgver"
make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
make PREFIX="$pkgdir/usr" install
# Fix location of man pages
diff --git a/community/perl-gtk2-webkit/PKGBUILD b/community/perl-gtk2-webkit/PKGBUILD
index 03f81cd48..362605884 100644
--- a/community/perl-gtk2-webkit/PKGBUILD
+++ b/community/perl-gtk2-webkit/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 35664 2010-12-21 23:31:37Z tdziedzic $
+# $Id: PKGBUILD 44460 2011-04-07 16:27:39Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: Corrado Primier <bardo@aur.archlinux.org>
pkgname=perl-gtk2-webkit
pkgver=0.08
-pkgrel=2
+pkgrel=3
pkgdesc="Gtk2::WebKit"
arch=('i686' 'x86_64' 'mips64el')
url="http://search.cpan.org/dist/Gtk2-WebKit"
diff --git a/community/podofo/PKGBUILD b/community/podofo/PKGBUILD
index c8ce303b5..ebee2b0a6 100644
--- a/community/podofo/PKGBUILD
+++ b/community/podofo/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 42262 2011-03-15 21:34:00Z giovanni $
+# $Id: PKGBUILD 45713 2011-04-27 19:09:19Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: BlackEagle < ike DOT devolder AT gmail DOT com >
# Contributor: Preecha Patumchareonpol <yumyai at gmail.com>
pkgname=podofo
-pkgver=0.9.0
+pkgver=0.9.1
pkgrel=1
pkgdesc="A C++ library to work with the PDF file format"
arch=('i686' 'x86_64' 'mips64el')
@@ -13,7 +13,7 @@ license=('GPL')
depends=( 'gcc-libs' 'fontconfig' 'libpng' 'libtiff')
makedepends=('cmake')
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.gz")
-md5sums=('2a9ac8cbb5e6575dbc00f083ad8996fb')
+md5sums=('cec586ab69f92bc88d38b5d4b8eee5a0')
build() {
cd ${pkgname}-${pkgver}
diff --git a/community/python-cherrypy/837.2049.patch b/community/python-cherrypy/837.2049.patch
new file mode 100644
index 000000000..20cc0dd36
--- /dev/null
+++ b/community/python-cherrypy/837.2049.patch
@@ -0,0 +1,554 @@
+Index: cherrypy/test/test_tools.py
+===================================================================
+--- cherrypy/test/test_tools.py (revision 2049)
++++ cherrypy/test/test_tools.py (working copy)
+@@ -3,6 +3,7 @@
+ import gzip
+ import StringIO
+ import sys
++from httplib import IncompleteRead
+ import time
+ timeout = 0.2
+
+@@ -272,8 +273,12 @@
+ # Because this error is raised after the response body has
+ # started, and because it's chunked output, an error is raised by
+ # the HTTP client when it encounters incomplete output.
+- self.assertRaises(ValueError, self.getPage,
+- "/demo/errinstream?id=5")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/demo/errinstream?id=5")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/demo/errinstream?id=5")
+ # If this fails, then on_end_request isn't being called at all.
+ time.sleep(0.1)
+ self.getPage("/demo/ended/5")
+Index: cherrypy/test/webtest.py
+===================================================================
+--- cherrypy/test/webtest.py (revision 2049)
++++ cherrypy/test/webtest.py (working copy)
+@@ -491,7 +491,7 @@
+ # IN6ADDR_ANY, which should respond on localhost.
+ host = "::1"
+ conn = http_conn(host, port)
+-
++
+ conn._http_vsn_str = protocol
+ conn._http_vsn = int("".join([x for x in protocol if x.isdigit()]))
+
+Index: cherrypy/test/test_encoding.py
+===================================================================
+--- cherrypy/test/test_encoding.py (revision 2049)
++++ cherrypy/test/test_encoding.py (working copy)
+@@ -1,7 +1,9 @@
+ from cherrypy.test import test
+ test.prefer_parent_path()
+
++import sys
+ import gzip, StringIO
++from httplib import IncompleteRead
+ import cherrypy
+ europoundUnicode = u'\x80\xa3'
+ europoundUtf8 = u'\x80\xa3'.encode('utf-8')
+@@ -160,10 +162,13 @@
+ else:
+ # The wsgiserver will simply stop sending data, and the HTTP client
+ # will error due to an incomplete chunk-encoded stream.
+- self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
+- headers=[("Accept-Encoding", "gzip")])
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
++ else:
++ self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
+
+-
+ if __name__ == "__main__":
+ setup_server()
+ helper.testmain()
+Index: cherrypy/test/test_core.py
+===================================================================
+--- cherrypy/test/test_core.py (revision 2049)
++++ cherrypy/test/test_core.py (working copy)
+@@ -7,6 +7,7 @@
+ localDir = os.path.dirname(__file__)
+ import sys
+ import types
++from httplib import IncompleteRead
+
+ import cherrypy
+ from cherrypy import _cptools, tools
+@@ -760,8 +761,12 @@
+ else:
+ # Under HTTP/1.1, the chunked transfer-coding is used.
+ # The HTTP client will choke when the output is incomplete.
+- self.assertRaises(ValueError, self.getPage,
+- "/error/page_streamed")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/error/page_streamed")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/error/page_streamed")
+
+ # No traceback should be present
+ self.getPage("/error/cause_err_in_finalize")
+Index: cherrypy/wsgiserver/__init__.py
+===================================================================
+--- cherrypy/wsgiserver/__init__.py (revision 2049)
++++ cherrypy/wsgiserver/__init__.py (working copy)
+@@ -713,148 +713,325 @@
+ """Exception raised when the SSL implementation signals a fatal alert."""
+ pass
+
++if sys.version_info[:2] >= (2, 6) or sys.version_info[:3] >= (2, 5, 2):
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
+
+-class CP_fileobject(socket._fileobject):
+- """Faux file object attached to a socket object."""
+-
+- def sendall(self, data):
+- """Sendall for non-blocking sockets."""
+- while data:
+- try:
+- bytes_sent = self.send(data)
+- data = data[bytes_sent:]
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def send(self, data):
+- return self._sock.send(data)
+-
+- def flush(self):
+- if self._wbuf:
+- buffer = "".join(self._wbuf)
+- self._wbuf = []
+- self.sendall(buffer)
+-
+- def recv(self, size):
+- while True:
+- try:
+- return self._sock.recv(size)
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def read(self, size=-1):
+- if size < 0:
+- # Read until EOF
+- buffers = [self._rbuf]
+- self._rbuf = ""
+- if self._rbufsize <= 1:
+- recv_size = self.default_bufsize
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
++ while True:
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def read(self, size=-1):
++ # Use max, disallow tiny reads in a loop as they are very inefficient.
++ # We never leave read() with any leftover data from a new recv() call
++ # in our internal buffer.
++ rbufsize = max(self._rbufsize, self.default_bufsize)
++ # Our use of StringIO rather than lists of string objects returned by
++ # recv() minimizes memory usage and fragmentation that occurs when
++ # rbufsize is large compared to the typical return value of recv().
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if size < 0:
++ # Read until EOF
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(rbufsize)
++ if not data:
++ break
++ buf.write(data)
++ return buf.getvalue()
+ else:
+- recv_size = self._rbufsize
+-
++ # Read until size bytes or EOF seen, whichever comes first
++ buf_len = buf.tell()
++ if buf_len >= size:
++ # Already have size bytes in our buffer? Extract and return.
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ left = size - buf_len
++ # recv() will malloc the amount of memory given as its
++ # parameter even though it often returns much less data
++ # than that. The returned data string is short lived
++ # as we copy it into a StringIO and free it. This avoids
++ # fragmentation issues on many platforms.
++ data = self.recv(left)
++ if not data:
++ break
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid buffer data copies when:
++ # - We have no data in our buffer.
++ # AND
++ # - Our call to recv returned exactly the
++ # number of bytes we were asked to read.
++ return data
++ if n == left:
++ buf.write(data)
++ del data # explicit free
++ break
++ assert n <= left, "recv(%d) returned %d bytes" % (left, n)
++ buf.write(data)
++ buf_len += n
++ del data # explicit free
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++ def readline(self, size=-1):
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if buf.tell() > 0:
++ # check if we already have it in our buffer
++ buf.seek(0)
++ bline = buf.readline(size)
++ if bline.endswith('\n') or len(bline) == size:
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return bline
++ del bline
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ buf.seek(0)
++ buffers = [buf.read()]
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ data = None
++ recv = self.recv
++ while data != "\n":
++ data = recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++
++ buf.seek(0, 2) # seek end
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ buf.write(data[:nl])
++ self._rbuf.write(data[nl:])
++ del data
++ break
++ buf.write(data)
++ return buf.getvalue()
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ buf.seek(0, 2) # seek end
++ buf_len = buf.tell()
++ if buf_len >= size:
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ left = size - buf_len
++ # did we just receive a newline?
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ # save the excess data to _rbuf
++ self._rbuf.write(data[nl:])
++ if buf_len:
++ buf.write(data[:nl])
++ break
++ else:
++ # Shortcut. Avoid data copy through buf when returning
++ # a substring of our first recv().
++ return data[:nl]
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid data copy through buf when
++ # returning exactly all of our first recv().
++ return data
++ if n >= left:
++ buf.write(data[:left])
++ self._rbuf.write(data[left:])
++ break
++ buf.write(data)
++ buf_len += n
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++else:
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
++
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
+ while True:
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- return "".join(buffers)
+- else:
+- # Read until size bytes or EOF seen, whichever comes first
+- data = self._rbuf
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- left = size - buf_len
+- recv_size = max(self._rbufsize, left)
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
+
+- def readline(self, size=-1):
+- data = self._rbuf
+- if size < 0:
+- # Read until \n or EOF, whichever comes first
+- if self._rbufsize <= 1:
+- # Speed up unbuffered case
+- assert data == ""
++ def read(self, size=-1):
++ if size < 0:
++ # Read until EOF
++ buffers = [self._rbuf]
++ self._rbuf = ""
++ if self._rbufsize <= 1:
++ recv_size = self.default_bufsize
++ else:
++ recv_size = self._rbufsize
++
++ while True:
++ data = self.recv(recv_size)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++ else:
++ # Read until size bytes or EOF seen, whichever comes first
++ data = self._rbuf
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
+ buffers = []
+- while data != "\n":
+- data = self.recv(1)
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ left = size - buf_len
++ recv_size = max(self._rbufsize, left)
++ data = self.recv(recv_size)
+ if not data:
+ break
+ buffers.append(data)
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
+ return "".join(buffers)
+- nl = data.find('\n')
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
++
++ def readline(self, size=-1):
++ data = self._rbuf
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ assert data == ""
++ buffers = []
++ while data != "\n":
++ data = self.recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
+ nl = data.find('\n')
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- return "".join(buffers)
+- else:
+- # Read until size bytes or \n or EOF seen, whichever comes first
+- nl = data.find('\n', 0, size)
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
+- left = size - buf_len
+- nl = data.find('\n', 0, left)
++ return data[:nl]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ return "".join(buffers)
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ nl = data.find('\n', 0, size)
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ return data[:nl]
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ left = size - buf_len
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
++ return "".join(buffers)
+
+
+ class SSL_fileobject(CP_fileobject):
diff --git a/community/python-cherrypy/ChangeLog b/community/python-cherrypy/ChangeLog
new file mode 100644
index 000000000..90276417c
--- /dev/null
+++ b/community/python-cherrypy/ChangeLog
@@ -0,0 +1,26 @@
+
+2009-04-15 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.2
+
+2008-12-14 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.1
+
+2008-11-04 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for python 2.6
+ * Thanks to David Moore
+
+2008-07-09 Mateusz Herych <heniekk@gmail.com>
+
+ * Updating for x86_64: 3.1.0
+
+2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updating for i686: 3.1.0
+
+2008-02-28 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updating in i686: 3.0.3
+
diff --git a/community/python-cherrypy/PKGBUILD b/community/python-cherrypy/PKGBUILD
new file mode 100644
index 000000000..b352f6296
--- /dev/null
+++ b/community/python-cherrypy/PKGBUILD
@@ -0,0 +1,23 @@
+$Id: PKGBUILD 40928 2011-03-01 19:03:36Z angvp $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
+# Contributor: Armando M. Baratti <amblistas@ajato.com.br>
+# Contributor: Florian Richter <Florian_Richter@gmx.de>
+pkgname=cherrypy
+pkgver=3.2.0
+pkgrel=1
+pkgdesc="A pythonic, object-oriented web development framework"
+arch=('i686' 'x86_64')
+url="http://www.cherrypy.org"
+license=('BSD')
+depends=('python2')
+source=(http://download.cherrypy.org/cherrypy/$pkgver/CherryPy-$pkgver.tar.gz
+ license)
+md5sums=('e5c1322bf5ce962c16283ab7a6dcca3f'
+ '22365dc6b0e6835b53da009aa36af017')
+
+build() {
+ cd $srcdir/CherryPy-$pkgver
+ python2 ./setup.py install --root=$pkgdir
+ install -D -m644 $srcdir/license $pkgdir/usr/share/licenses/$pkgname/license
+}
diff --git a/community/python-cherrypy/license b/community/python-cherrypy/license
new file mode 100644
index 000000000..32e9cf6bd
--- /dev/null
+++ b/community/python-cherrypy/license
@@ -0,0 +1,25 @@
+Copyright (c) 2004, CherryPy Team (team@cherrypy.org)
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of the CherryPy Team nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/community/python2-cherrypy/837.2049.patch b/community/python2-cherrypy/837.2049.patch
new file mode 100644
index 000000000..20cc0dd36
--- /dev/null
+++ b/community/python2-cherrypy/837.2049.patch
@@ -0,0 +1,554 @@
+Index: cherrypy/test/test_tools.py
+===================================================================
+--- cherrypy/test/test_tools.py (revision 2049)
++++ cherrypy/test/test_tools.py (working copy)
+@@ -3,6 +3,7 @@
+ import gzip
+ import StringIO
+ import sys
++from httplib import IncompleteRead
+ import time
+ timeout = 0.2
+
+@@ -272,8 +273,12 @@
+ # Because this error is raised after the response body has
+ # started, and because it's chunked output, an error is raised by
+ # the HTTP client when it encounters incomplete output.
+- self.assertRaises(ValueError, self.getPage,
+- "/demo/errinstream?id=5")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/demo/errinstream?id=5")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/demo/errinstream?id=5")
+ # If this fails, then on_end_request isn't being called at all.
+ time.sleep(0.1)
+ self.getPage("/demo/ended/5")
+Index: cherrypy/test/webtest.py
+===================================================================
+--- cherrypy/test/webtest.py (revision 2049)
++++ cherrypy/test/webtest.py (working copy)
+@@ -491,7 +491,7 @@
+ # IN6ADDR_ANY, which should respond on localhost.
+ host = "::1"
+ conn = http_conn(host, port)
+-
++
+ conn._http_vsn_str = protocol
+ conn._http_vsn = int("".join([x for x in protocol if x.isdigit()]))
+
+Index: cherrypy/test/test_encoding.py
+===================================================================
+--- cherrypy/test/test_encoding.py (revision 2049)
++++ cherrypy/test/test_encoding.py (working copy)
+@@ -1,7 +1,9 @@
+ from cherrypy.test import test
+ test.prefer_parent_path()
+
++import sys
+ import gzip, StringIO
++from httplib import IncompleteRead
+ import cherrypy
+ europoundUnicode = u'\x80\xa3'
+ europoundUtf8 = u'\x80\xa3'.encode('utf-8')
+@@ -160,10 +162,13 @@
+ else:
+ # The wsgiserver will simply stop sending data, and the HTTP client
+ # will error due to an incomplete chunk-encoded stream.
+- self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
+- headers=[("Accept-Encoding", "gzip")])
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
++ else:
++ self.assertRaises(ValueError, self.getPage, '/gzip/noshow_stream',
++ headers=[("Accept-Encoding", "gzip")])
+
+-
+ if __name__ == "__main__":
+ setup_server()
+ helper.testmain()
+Index: cherrypy/test/test_core.py
+===================================================================
+--- cherrypy/test/test_core.py (revision 2049)
++++ cherrypy/test/test_core.py (working copy)
+@@ -7,6 +7,7 @@
+ localDir = os.path.dirname(__file__)
+ import sys
+ import types
++from httplib import IncompleteRead
+
+ import cherrypy
+ from cherrypy import _cptools, tools
+@@ -760,8 +761,12 @@
+ else:
+ # Under HTTP/1.1, the chunked transfer-coding is used.
+ # The HTTP client will choke when the output is incomplete.
+- self.assertRaises(ValueError, self.getPage,
+- "/error/page_streamed")
++ if sys.version_info[:2] >= (2, 6):
++ self.assertRaises(IncompleteRead, self.getPage,
++ "/error/page_streamed")
++ else:
++ self.assertRaises(ValueError, self.getPage,
++ "/error/page_streamed")
+
+ # No traceback should be present
+ self.getPage("/error/cause_err_in_finalize")
+Index: cherrypy/wsgiserver/__init__.py
+===================================================================
+--- cherrypy/wsgiserver/__init__.py (revision 2049)
++++ cherrypy/wsgiserver/__init__.py (working copy)
+@@ -713,148 +713,325 @@
+ """Exception raised when the SSL implementation signals a fatal alert."""
+ pass
+
++if sys.version_info[:2] >= (2, 6) or sys.version_info[:3] >= (2, 5, 2):
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
+
+-class CP_fileobject(socket._fileobject):
+- """Faux file object attached to a socket object."""
+-
+- def sendall(self, data):
+- """Sendall for non-blocking sockets."""
+- while data:
+- try:
+- bytes_sent = self.send(data)
+- data = data[bytes_sent:]
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def send(self, data):
+- return self._sock.send(data)
+-
+- def flush(self):
+- if self._wbuf:
+- buffer = "".join(self._wbuf)
+- self._wbuf = []
+- self.sendall(buffer)
+-
+- def recv(self, size):
+- while True:
+- try:
+- return self._sock.recv(size)
+- except socket.error, e:
+- if e.args[0] not in socket_errors_nonblocking:
+- raise
+-
+- def read(self, size=-1):
+- if size < 0:
+- # Read until EOF
+- buffers = [self._rbuf]
+- self._rbuf = ""
+- if self._rbufsize <= 1:
+- recv_size = self.default_bufsize
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
++ while True:
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def read(self, size=-1):
++ # Use max, disallow tiny reads in a loop as they are very inefficient.
++ # We never leave read() with any leftover data from a new recv() call
++ # in our internal buffer.
++ rbufsize = max(self._rbufsize, self.default_bufsize)
++ # Our use of StringIO rather than lists of string objects returned by
++ # recv() minimizes memory usage and fragmentation that occurs when
++ # rbufsize is large compared to the typical return value of recv().
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if size < 0:
++ # Read until EOF
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(rbufsize)
++ if not data:
++ break
++ buf.write(data)
++ return buf.getvalue()
+ else:
+- recv_size = self._rbufsize
+-
++ # Read until size bytes or EOF seen, whichever comes first
++ buf_len = buf.tell()
++ if buf_len >= size:
++ # Already have size bytes in our buffer? Extract and return.
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ left = size - buf_len
++ # recv() will malloc the amount of memory given as its
++ # parameter even though it often returns much less data
++ # than that. The returned data string is short lived
++ # as we copy it into a StringIO and free it. This avoids
++ # fragmentation issues on many platforms.
++ data = self.recv(left)
++ if not data:
++ break
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid buffer data copies when:
++ # - We have no data in our buffer.
++ # AND
++ # - Our call to recv returned exactly the
++ # number of bytes we were asked to read.
++ return data
++ if n == left:
++ buf.write(data)
++ del data # explicit free
++ break
++ assert n <= left, "recv(%d) returned %d bytes" % (left, n)
++ buf.write(data)
++ buf_len += n
++ del data # explicit free
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++ def readline(self, size=-1):
++ buf = self._rbuf
++ buf.seek(0, 2) # seek end
++ if buf.tell() > 0:
++ # check if we already have it in our buffer
++ buf.seek(0)
++ bline = buf.readline(size)
++ if bline.endswith('\n') or len(bline) == size:
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return bline
++ del bline
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ buf.seek(0)
++ buffers = [buf.read()]
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ data = None
++ recv = self.recv
++ while data != "\n":
++ data = recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++
++ buf.seek(0, 2) # seek end
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ buf.write(data[:nl])
++ self._rbuf.write(data[nl:])
++ del data
++ break
++ buf.write(data)
++ return buf.getvalue()
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ buf.seek(0, 2) # seek end
++ buf_len = buf.tell()
++ if buf_len >= size:
++ buf.seek(0)
++ rv = buf.read(size)
++ self._rbuf = StringIO.StringIO()
++ self._rbuf.write(buf.read())
++ return rv
++ self._rbuf = StringIO.StringIO() # reset _rbuf. we consume it via buf.
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ left = size - buf_len
++ # did we just receive a newline?
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ # save the excess data to _rbuf
++ self._rbuf.write(data[nl:])
++ if buf_len:
++ buf.write(data[:nl])
++ break
++ else:
++ # Shortcut. Avoid data copy through buf when returning
++ # a substring of our first recv().
++ return data[:nl]
++ n = len(data)
++ if n == size and not buf_len:
++ # Shortcut. Avoid data copy through buf when
++ # returning exactly all of our first recv().
++ return data
++ if n >= left:
++ buf.write(data[:left])
++ self._rbuf.write(data[left:])
++ break
++ buf.write(data)
++ buf_len += n
++ #assert buf_len == buf.tell()
++ return buf.getvalue()
++
++else:
++ class CP_fileobject(socket._fileobject):
++ """Faux file object attached to a socket object."""
++
++ def sendall(self, data):
++ """Sendall for non-blocking sockets."""
++ while data:
++ try:
++ bytes_sent = self.send(data)
++ data = data[bytes_sent:]
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
++
++ def send(self, data):
++ return self._sock.send(data)
++
++ def flush(self):
++ if self._wbuf:
++ buffer = "".join(self._wbuf)
++ self._wbuf = []
++ self.sendall(buffer)
++
++ def recv(self, size):
+ while True:
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- return "".join(buffers)
+- else:
+- # Read until size bytes or EOF seen, whichever comes first
+- data = self._rbuf
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- left = size - buf_len
+- recv_size = max(self._rbufsize, left)
+- data = self.recv(recv_size)
+- if not data:
+- break
+- buffers.append(data)
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ try:
++ return self._sock.recv(size)
++ except socket.error, e:
++ if e.args[0] not in socket_errors_nonblocking:
++ raise
+
+- def readline(self, size=-1):
+- data = self._rbuf
+- if size < 0:
+- # Read until \n or EOF, whichever comes first
+- if self._rbufsize <= 1:
+- # Speed up unbuffered case
+- assert data == ""
++ def read(self, size=-1):
++ if size < 0:
++ # Read until EOF
++ buffers = [self._rbuf]
++ self._rbuf = ""
++ if self._rbufsize <= 1:
++ recv_size = self.default_bufsize
++ else:
++ recv_size = self._rbufsize
++
++ while True:
++ data = self.recv(recv_size)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
++ else:
++ # Read until size bytes or EOF seen, whichever comes first
++ data = self._rbuf
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
+ buffers = []
+- while data != "\n":
+- data = self.recv(1)
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ left = size - buf_len
++ recv_size = max(self._rbufsize, left)
++ data = self.recv(recv_size)
+ if not data:
+ break
+ buffers.append(data)
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
+ return "".join(buffers)
+- nl = data.find('\n')
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
++
++ def readline(self, size=-1):
++ data = self._rbuf
++ if size < 0:
++ # Read until \n or EOF, whichever comes first
++ if self._rbufsize <= 1:
++ # Speed up unbuffered case
++ assert data == ""
++ buffers = []
++ while data != "\n":
++ data = self.recv(1)
++ if not data:
++ break
++ buffers.append(data)
++ return "".join(buffers)
+ nl = data.find('\n')
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- return "".join(buffers)
+- else:
+- # Read until size bytes or \n or EOF seen, whichever comes first
+- nl = data.find('\n', 0, size)
+- if nl >= 0:
+- nl += 1
+- self._rbuf = data[nl:]
+- return data[:nl]
+- buf_len = len(data)
+- if buf_len >= size:
+- self._rbuf = data[size:]
+- return data[:size]
+- buffers = []
+- if data:
+- buffers.append(data)
+- self._rbuf = ""
+- while True:
+- data = self.recv(self._rbufsize)
+- if not data:
+- break
+- buffers.append(data)
+- left = size - buf_len
+- nl = data.find('\n', 0, left)
++ return data[:nl]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ nl = data.find('\n')
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ return "".join(buffers)
++ else:
++ # Read until size bytes or \n or EOF seen, whichever comes first
++ nl = data.find('\n', 0, size)
+ if nl >= 0:
+ nl += 1
+ self._rbuf = data[nl:]
+- buffers[-1] = data[:nl]
+- break
+- n = len(data)
+- if n >= left:
+- self._rbuf = data[left:]
+- buffers[-1] = data[:left]
+- break
+- buf_len += n
+- return "".join(buffers)
++ return data[:nl]
++ buf_len = len(data)
++ if buf_len >= size:
++ self._rbuf = data[size:]
++ return data[:size]
++ buffers = []
++ if data:
++ buffers.append(data)
++ self._rbuf = ""
++ while True:
++ data = self.recv(self._rbufsize)
++ if not data:
++ break
++ buffers.append(data)
++ left = size - buf_len
++ nl = data.find('\n', 0, left)
++ if nl >= 0:
++ nl += 1
++ self._rbuf = data[nl:]
++ buffers[-1] = data[:nl]
++ break
++ n = len(data)
++ if n >= left:
++ self._rbuf = data[left:]
++ buffers[-1] = data[:left]
++ break
++ buf_len += n
++ return "".join(buffers)
+
+
+ class SSL_fileobject(CP_fileobject):
diff --git a/community/python2-cherrypy/ChangeLog b/community/python2-cherrypy/ChangeLog
new file mode 100644
index 000000000..90276417c
--- /dev/null
+++ b/community/python2-cherrypy/ChangeLog
@@ -0,0 +1,26 @@
+
+2009-04-15 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.2
+
+2008-12-14 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for i686: 3.1.1
+
+2008-11-04 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updated for python 2.6
+ * Thanks to David Moore
+
+2008-07-09 Mateusz Herych <heniekk@gmail.com>
+
+ * Updating for x86_64: 3.1.0
+
+2008-07-09 Douglas Soares de Andrade <douglas@archlinux.org>
+
+ * Updating for i686: 3.1.0
+
+2008-02-28 Douglas Soares de Andrade <dsa@aur.archlinux.org>
+
+ * Updating in i686: 3.0.3
+
diff --git a/community/python2-cherrypy/PKGBUILD b/community/python2-cherrypy/PKGBUILD
new file mode 100644
index 000000000..b352f6296
--- /dev/null
+++ b/community/python2-cherrypy/PKGBUILD
@@ -0,0 +1,23 @@
+$Id: PKGBUILD 40928 2011-03-01 19:03:36Z angvp $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
+# Contributor: Douglas Soares de Andrade <dsa@aur.archlinux.org>
+# Contributor: Armando M. Baratti <amblistas@ajato.com.br>
+# Contributor: Florian Richter <Florian_Richter@gmx.de>
+pkgname=cherrypy
+pkgver=3.2.0
+pkgrel=1
+pkgdesc="A pythonic, object-oriented web development framework"
+arch=('i686' 'x86_64')
+url="http://www.cherrypy.org"
+license=('BSD')
+depends=('python2')
+source=(http://download.cherrypy.org/cherrypy/$pkgver/CherryPy-$pkgver.tar.gz
+ license)
+md5sums=('e5c1322bf5ce962c16283ab7a6dcca3f'
+ '22365dc6b0e6835b53da009aa36af017')
+
+build() {
+ cd $srcdir/CherryPy-$pkgver
+ python2 ./setup.py install --root=$pkgdir
+ install -D -m644 $srcdir/license $pkgdir/usr/share/licenses/$pkgname/license
+}
diff --git a/community/python2-cherrypy/license b/community/python2-cherrypy/license
new file mode 100644
index 000000000..32e9cf6bd
--- /dev/null
+++ b/community/python2-cherrypy/license
@@ -0,0 +1,25 @@
+Copyright (c) 2004, CherryPy Team (team@cherrypy.org)
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimer in the documentation
+ and/or other materials provided with the distribution.
+ * Neither the name of the CherryPy Team nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 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
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/community/redis/PKGBUILD b/community/redis/PKGBUILD
index cd50b7da4..ad42b8f77 100644
--- a/community/redis/PKGBUILD
+++ b/community/redis/PKGBUILD
@@ -1,14 +1,15 @@
-# $Id: PKGBUILD 44372 2011-04-06 16:45:50Z spupykin $
+# $Id: PKGBUILD 45690 2011-04-27 09:20:54Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: Jan-Erik Rediger <badboy at archlinux dot us>
# Contributor: nofxx <x@<nick>.com>
pkgname=redis
-pkgver=2.2.4
+pkgver=2.2.5
pkgrel=1
pkgdesc="Advanced key-value store"
arch=('i686' 'x86_64' 'mips64el')
-url="http://code.google.com/p/redis"
+url="http://redis.io/"
+#url="http://code.google.com/p/redis"
license=('BSD')
depends=('bash')
makedepends=('gcc>=3.1' 'make' 'pkgconfig')
@@ -17,7 +18,7 @@ backup=("etc/redis.conf"
source=("http://redis.googlecode.com/files/${pkgname}-${pkgver}.tar.gz"
"redis.d"
"redis.logrotate")
-md5sums=('c98260dfab860da934d465e829ad0866'
+md5sums=('fe6395bbd2cadc45f4f20f6bbe05ed09'
'bf61968d18d0e42529880f5c488ea9ed'
'9e2d75b7a9dc421122d673fe520ef17f')
diff --git a/community/rsyslog/PKGBUILD b/community/rsyslog/PKGBUILD
index 4f1023c68..cc2fed8de 100644
--- a/community/rsyslog/PKGBUILD
+++ b/community/rsyslog/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 45185 2011-04-18 08:58:39Z spupykin $
+# $Id: PKGBUILD 45847 2011-04-29 22:50:10Z heftig $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
pkgname=rsyslog
pkgver=5.8.0
-pkgrel=1
+pkgrel=2
pkgdesc="An enhanced multi-threaded syslogd with a focus on security and reliability"
url="http://www.rsyslog.com/"
arch=('i686' 'x86_64' 'mips64el')
@@ -37,7 +37,8 @@ build() {
--enable-imtemplate \
--enable-snmp \
--enable-gnutls \
- --enable-inet
+ --enable-inet \
+ --with-systemdsystemunitdir=/lib/systemd/system
make
}
package() {
diff --git a/community/shotwell/PKGBUILD b/community/shotwell/PKGBUILD
index 90d78c246..978b33d71 100644
--- a/community/shotwell/PKGBUILD
+++ b/community/shotwell/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 44302 2011-04-05 08:56:05Z spupykin $
+# $Id: PKGBUILD 45502 2011-04-22 15:22:48Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Joeny Ang <ang(dot)joeny(at)gmail(dot)com>
pkgname=shotwell
-pkgver=0.9.1
+pkgver=0.9.3
pkgrel=1
pkgdesc="A digital photo organizer designed for the GNOME desktop environment"
arch=('i686' 'x86_64' 'mips64el')
@@ -15,7 +15,7 @@ depends=('gconf' 'libgee' 'libgphoto2' 'libunique' 'libwebkit' 'libgexiv2'
makedepends=('intltool' 'vala')
install=shotwell.install
source=(http://yorba.org/download/shotwell/0.9/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('1a98d1da59424a67b310cc39e8ad3368')
+md5sums=('b1a3281be7d4ff8eac98289bcd129387')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/community/shotwell/shotwell.install b/community/shotwell/shotwell.install
index ceac19051..83c95a70f 100644
--- a/community/shotwell/shotwell.install
+++ b/community/shotwell/shotwell.install
@@ -7,7 +7,7 @@ post_install() {
}
pre_upgrade() {
- pre_remove $1
+ usr/sbin/gconfpkg --uninstall ${pkgname}
}
post_upgrade() {
@@ -16,9 +16,9 @@ post_upgrade() {
pre_remove() {
usr/sbin/gconfpkg --uninstall ${pkgname}
- update-desktop-database -q
}
post_remove() {
+ update-desktop-database -q
gtk-update-icon-cache -fq -t usr/share/icons/hicolor
}
diff --git a/community/stone-soup/PKGBUILD b/community/stone-soup/PKGBUILD
index 712cb296a..a3a17092b 100644
--- a/community/stone-soup/PKGBUILD
+++ b/community/stone-soup/PKGBUILD
@@ -1,7 +1,7 @@
# Maintainer: Jakob Gruber <jakob.gruber@gmail.com>
pkgname=stone-soup
-pkgver=0.7.2
+pkgver=0.8.0
pkgrel=1
pkgdesc="An open-source, single-player, role-playing roguelike game of exploration and treasure-hunting"
arch=('i686' 'x86_64' 'mips64el')
@@ -13,7 +13,7 @@ license=('custom')
install=('stone-soup.install')
source=("http://downloads.sourceforge.net/sourceforge/crawl-ref/stone_soup-${pkgver}-nodeps.tar.bz2"
"${pkgname}.desktop")
-md5sums=('dbd2680a2649acc681fce3453c65975b'
+md5sums=('cac7ae05da835bd87ace3b4de3822eb9'
'98be780cddb2a0915bbab15ad93644f1')
build() {
diff --git a/community/surf/PKGBUILD b/community/surf/PKGBUILD
index c7160dd4a..3ac7a21e7 100644
--- a/community/surf/PKGBUILD
+++ b/community/surf/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 31142 2010-10-27 11:32:19Z lfleischer $
+# $Id: PKGBUILD 44535 2011-04-08 08:10:39Z lfleischer $
# Maintainer: Lukas Fleischer <archlinux at cryptocrack dot de>
# Contributor: Pierre Chapuis <catwell at archlinux dot us>
# Contributor: Ray Kohler <ataraxia937 at gmail dot com>
@@ -6,7 +6,7 @@
pkgname=surf
pkgver=0.4.1
-pkgrel=1
+pkgrel=2
pkgdesc="A simple web browser based on WebKit/GTK+."
arch=('i686' 'x86_64' 'mips64el')
url='http://surf.suckless.org/'
diff --git a/community/system-tools-backends/PKGBUILD b/community/system-tools-backends/PKGBUILD
index 86d376a73..68b15f61e 100644
--- a/community/system-tools-backends/PKGBUILD
+++ b/community/system-tools-backends/PKGBUILD
@@ -2,17 +2,17 @@
# Contributor: Hugo Doria <hugo@archlinux.org>
pkgname=system-tools-backends
-pkgver=2.10.1
+pkgver=2.10.2
pkgrel=1
pkgdesc='Backends for Gnome System Tools.'
arch=('i686' 'x86_64' 'mips64el')
url='http://system-tools-backends.freedesktop.org/'
license=('GPL')
-depends=('perl>=5.12.1' 'perl-net-dbus' 'dbus>=1.4.0' 'polkit>=0.98' 'dbus-glib')
+depends=('perl' 'perl-net-dbus' 'dbus' 'polkit' 'dbus-glib')
makedepends=('perlxml' 'pkgconfig' 'intltool')
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.10/${pkgname}-${pkgver}.tar.bz2)
install=system-tools-backends.install
-sha256sums=('0c1cfdf5f0550c0ccacbbc4f00ed059ab9ea483d48138132db44b3a20575d7b4')
+sha256sums=('1dbe5177df46a9c7250735e05e77129fe7ec04840771accfa87690111ca2c670')
build() {
cd ${pkgname}-${pkgver}
diff --git a/community/systemd/PKGBUILD b/community/systemd/PKGBUILD
index 9cf223be6..2eab37e96 100644
--- a/community/systemd/PKGBUILD
+++ b/community/systemd/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 45374 2011-04-21 02:36:08Z dreisner $
+# $Id: PKGBUILD 45855 2011-04-30 03:24:21Z dreisner $
# Maintainer: Dave Reisner <d@falconindy.com>
pkgname=systemd
-pkgver=25
+pkgver=26
pkgrel=1
pkgdesc="Session and Startup manager"
arch=('i686' 'x86_64' 'mips64el')
@@ -25,8 +25,8 @@ backup=(etc/systemd/system.conf
install=systemd.install
source=("http://www.freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.bz2"
"os-release")
-md5sums=('11c64b4af8ba863d650b6a7339610fc2'
- 'f9922299150b4adda7b89e10bca33033')
+md5sums=('b7c468aa400c64d02d533eba6359e283'
+ '752636def0db3c03f121f8b4f44a63cd')
build() {
cd "$srcdir/$pkgname-$pkgver"
@@ -48,8 +48,8 @@ package() {
make DESTDIR="$pkgdir" install
install -Dm644 "$srcdir/os-release" "$pkgdir/etc/os-release"
- install -dm755 "$pkgdir/etc/modules-load.d" "$pkgdir/run"
- printf "d /var/run/console 755 root root\n" > "$pkgdir/etc/tmpfiles.d/console.conf"
+ install -dm755 "$pkgdir/etc/modules-load.d"
+ printf "d /run/console 755 root root\n" > "$pkgdir/etc/tmpfiles.d/console.conf"
# fix systemd-analyze for python2
sed -i '1s/python$/python2/' "$pkgdir/usr/bin/systemd-analyze"
diff --git a/community/systemd/os-release b/community/systemd/os-release
index 0b45d5265..5e24a6031 100644
--- a/community/systemd/os-release
+++ b/community/systemd/os-release
@@ -1,4 +1,5 @@
-NAME=Arch Linux
+NAME="Arch Linux"
ID=arch
-PRETTY_NAME=Arch Linux
-ANSI_COLOR=1;36 \ No newline at end of file
+PRETTY_NAME="Arch Linux"
+ANSI_COLOR="1;36"
+
diff --git a/community/systemd/systemd.install b/community/systemd/systemd.install
index 0c75c4b27..33d597bf1 100644
--- a/community/systemd/systemd.install
+++ b/community/systemd/systemd.install
@@ -9,17 +9,6 @@ post_install() {
[ -f /etc/machine-id ] || /bin/systemd-machine-id-setup
- # Try to read default runlevel from the old inittab if it exists
- runlevel=$(/bin/awk -F':' '$3 == "initdefault" && $1 !~ "^#" { print $2 }' /etc/inittab 2> /dev/null)
- if [ -z "$runlevel" ]; then
- target="/lib/systemd/system/graphical.target"
- else
- target="/lib/systemd/system/runlevel$runlevel.target"
- fi
-
- # And symlink what we found to the new-style default.target
- /bin/ln -sf "$target" /etc/systemd/system/default.target
-
echo "systemd has been installed to /bin/systemd. Please ensure you append"
echo "init=/bin/systemd to your kernel command line in your bootloader."
}
diff --git a/community/texmaker/PKGBUILD b/community/texmaker/PKGBUILD
index 26e100ad0..fc4e5d037 100644
--- a/community/texmaker/PKGBUILD
+++ b/community/texmaker/PKGBUILD
@@ -5,7 +5,7 @@
# Contributor: Paulo Matias <matiasΘarchlinux-br·org>
pkgname=texmaker
-pkgver=3.0.1
+pkgver=3.0.2
pkgrel=1
pkgdesc='Free cross-platform latex editor'
arch=('i686' 'x86_64' 'mips64el')
@@ -13,7 +13,7 @@ url="http://www.xm1math.net/texmaker/index.html"
license=('GPL')
depends=('poppler-qt' 'ghostscript')
source=("http://www.xm1math.net/texmaker/${pkgname}-${pkgver}.tar.bz2")
-md5sums=('0e96cbd3e8171363c2858fbe96eb1baa')
+md5sums=('d375c8f486fe44f3f2a2a7d2ddac08f3')
build() {
cd ${pkgname}-${pkgver}
diff --git a/community/uzbl/PKGBUILD b/community/uzbl/PKGBUILD
index 29d34ecf1..11e8a3b63 100644
--- a/community/uzbl/PKGBUILD
+++ b/community/uzbl/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 43484 2011-03-26 16:57:27Z lcarlier $
+# $Id: PKGBUILD 45245 2011-04-18 20:59:54Z lcarlier $
# Maintainer : Laurent Carlier <lordheavym@gmail.com>
# Contributor: Ionut Biru <ibiru@archlinux.org>
# Contributor: Dieter Plaetinck <dieter@plaetinck.be>
pkgbase=uzbl
pkgname=('uzbl-core' 'uzbl-browser' 'uzbl-tabbed')
-pkgver=2011.03.17
-pkgrel=1
+pkgver=2011.04.12
+pkgrel=2
arch=('i686' 'x86_64' 'mips64el')
url="http://www.uzbl.org"
license=('GPL3')
-makedepends=('git' 'pkgconfig' 'libwebkit>=1.2.0')
+makedepends=('git' 'pkgconfig' 'libwebkit>=1.3.13')
source=(uzbl-$pkgver.tar.gz::http://github.com/Dieterbe/uzbl/tarball/$pkgver)
-md5sums=('fffd69136e0c4a9dce8875e776f7e97e')
+md5sums=('27e82c838b8136dafb0683fa52ffc701')
build() {
cd "$srcdir"/Dieterbe-uzbl-*
@@ -30,7 +30,7 @@ build() {
package_uzbl-core() {
pkgdesc="Webpage interface component meant for integration with other tools and scripts"
- depends=('libwebkit')
+ depends=('libwebkit>=1.3.13')
optdepends=('socat: to interface with the socket' 'dmenu: to run some of the example scripts'
'zenity: to run some of the example scripts'
'python2: to run some of the example scripts'
diff --git a/community/warsow/PKGBUILD b/community/warsow/PKGBUILD
index 717749cc3..219a84170 100644
--- a/community/warsow/PKGBUILD
+++ b/community/warsow/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 42571 2011-03-17 17:04:27Z svenstaro $
+# $Id: PKGBUILD 45971 2011-04-30 23:33:26Z svenstaro $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Slash <demodevil5[at]yahoo[dot]com>
# Contributor: Babets
# Contributor: Vain
pkgname=warsow
-pkgver=0.61
+pkgver=0.62
pkgrel=1
pkgdesc="a free online multiplayer competitive FPS based on the Qfusion engine"
url="http://www.warsow.net/"
@@ -21,11 +21,11 @@ md5sums=('f9bf60c80820237f7097c4e50a9582cd'
'ec00081d81ad9802a8ca42fc2eac5498'
'f73e10c26197178df71b941b10bf83d7'
'd7e4a69835bbcf801e58307e9d6b951e'
- '04bd29a63c3a43a7e3ea3a865b75e580')
+ '649568447e938efded07e77cdfb3accb')
build() {
- unset CFLAGS
- unset CXXFLAGS
+ #unset CFLAGS
+ #unset CXXFLAGS
# Extract Game Source Code
unzip -o warsow_${pkgver}_sdk.zip -d $srcdir/warsow-src
@@ -33,6 +33,9 @@ build() {
# Patch Makefile to use correct program to query for system information
sed -i 's:openal-config:pkg-config:g' $srcdir/warsow-src/source/Makefile
+ # Patch Makefile to correctly pass on ld opts
+ sed -i 's:--as-needed:-Wc,--as-needed:g' $srcdir/warsow-src/source/Makefile
+
# Patch Sound Code to point to base openal library
sed -i 's:libopenal.so.0:libopenal.so:g' $srcdir/warsow-src/source/snd_openal/snd_main.c
diff --git a/community/workrave/PKGBUILD b/community/workrave/PKGBUILD
index 5e0d1a76b..7cbc54dd4 100644
--- a/community/workrave/PKGBUILD
+++ b/community/workrave/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 40294 2011-02-22 18:20:07Z spupykin $
+# $Id: PKGBUILD 44736 2011-04-11 12:32:49Z spupykin $
# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Maintainer: William Rea <sillywilly@gmail.com>
pkgname=workrave
-pkgver=1.9.3
+pkgver=1.9.4
pkgrel=1
pkgdesc="a tool to help RSI"
arch=('i686' 'x86_64' 'mips64el')
@@ -13,7 +13,7 @@ depends=('libgnomeuimm' 'gnet' 'gnome-panel' 'dbus' 'libxmu' 'gdome2' 'python-ch
'libxtst' 'python-cheetah')
makedepends=('intltool')
source=(http://downloads.sourceforge.net/workrave/workrave-$pkgver.tar.gz)
-md5sums=('d1992f54750f3241797aa809de5a0753')
+md5sums=('d5eaf399b38b063053cff1a8527cba8e')
build() {
cd $srcdir/workrave-$pkgver
diff --git a/community/yajl/PKGBUILD b/community/yajl/PKGBUILD
index 0204af458..c437f9e10 100644
--- a/community/yajl/PKGBUILD
+++ b/community/yajl/PKGBUILD
@@ -4,24 +4,20 @@
# Contributor: Andrej Gelenberg <andrej.gelenberg@udo.edu>
pkgname=yajl
-pkgver=2.0.0
-pkgrel=2
+pkgver=2.0.2
+pkgrel=1
pkgdesc='Yet Another JSON Library.'
arch=('i686' 'x86_64' 'mips64el')
url='http://lloyd.github.com/yajl/'
license=('ISC')
makedepends=('cmake')
-source=("$pkgname-$pkgver.tar.gz::https://github.com/lloyd/$pkgname/tarball/$pkgver"
- "handle-null-case.patch")
-md5sums=('ff3bb8531d1f3c48441a57220919c8e7'
- 'dd6ad7386f6d19f1d68357d8a2d48f3e')
+source=("$pkgname-$pkgver.tar.gz::https://github.com/lloyd/$pkgname/tarball/$pkgver")
+md5sums=('df6a751e7797b9c2182efd91b5d64017')
build() {
dirname=$(tar tf "$srcdir/$pkgname-$pkgver.tar.gz" | sed 1q);
cd "$dirname"
- patch -Np1 < "$srcdir/handle-null-case.patch"
-
cmake -DCMAKE_INSTALL_PREFIX=/usr .
make
@@ -35,3 +31,4 @@ package() {
install -Dm644 COPYING "$pkgdir/usr/share/licenses/${pkgname}/LICENSE"
}
+md5sums=('0cea435187c45e02972093ae537a2831')
diff --git a/core/glib2/PKGBUILD b/core/glib2/PKGBUILD
index 213ec62d4..8ca822c20 100644
--- a/core/glib2/PKGBUILD
+++ b/core/glib2/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 99447 2010-11-14 19:35:34Z ibiru $
+# $Id: PKGBUILD 119742 2011-04-14 11:29:04Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=glib2
-pkgver=2.26.1
+pkgver=2.28.6
pkgrel=1
-pkgdesc="Common C routines used by GTK+ 2.4 and other libs"
+pkgdesc="Common C routines used by GTK+ and other libs"
url="http://www.gtk.org/"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
depends=('pcre>=8.02')
makedepends=('pkgconfig' 'python2')
options=('!libtool' '!docs')
-source=(http://ftp.gnome.org/pub/GNOME/sources/glib/2.26/glib-${pkgver}.tar.bz2
+source=(http://ftp.gnome.org/pub/GNOME/sources/glib/2.28/glib-${pkgver}.tar.bz2
glib2.sh
glib2.csh)
-sha256sums=('7a74ff12b6b9dee1f2d0e520b56b68b621920c4f4250bdf23468e515625c28d5'
+sha256sums=('557fb7c39d21b9359fbac51fd6b0b883bc97a2561c0166eef993a4078312f578'
'9456872cdedcc639fb679448d74b85b0facf81033e27157d2861b991823b5a2a'
'8d5626ffa361304ad3696493c0ef041d0ab10c857f6ef32116b3e2878ecf89e3')
@@ -25,6 +25,10 @@ build() {
--with-pcre=system \
--disable-fam
make
+}
+
+package() {
+ cd "${srcdir}/glib-${pkgver}"
make DESTDIR="${pkgdir}" install
install -d "${pkgdir}/etc/profile.d"
diff --git a/core/nilfs-utils/PKGBUILD b/core/nilfs-utils/PKGBUILD
index 0a4aa770a..077c40cd5 100644
--- a/core/nilfs-utils/PKGBUILD
+++ b/core/nilfs-utils/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 107520 2011-01-26 13:39:05Z ibiru $
+# $Id: PKGBUILD 120135 2011-04-20 11:43:51Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Geoffroy Carrier <geoffroy.carrier@koon.fr>
pkgname=nilfs-utils
-pkgver=2.0.21
+pkgver=2.0.22
pkgrel=1
pkgdesc="A log-structured file system supporting continuous snapshotting (userspace utils)"
arch=('i686' 'x86_64' 'mips64el')
@@ -12,11 +12,15 @@ backup=('etc/nilfs_cleanerd.conf')
depends=('util-linux-ng')
options=(!libtool)
source=(http://www.nilfs.org/download/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('7f970f35950b429ac490df594c9d8fc1')
+md5sums=('d7650e53fbd4a73ef56e07a354fdd2b0')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --libdir=/lib
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install LDCONFIG=/bin/true
}
diff --git a/extra/accountsservice/PKGBUILD b/extra/accountsservice/PKGBUILD
new file mode 100644
index 000000000..1541ff19c
--- /dev/null
+++ b/extra/accountsservice/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 121312 2011-04-30 14:57:48Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+pkgname=accountsservice
+pkgver=0.6.10
+pkgrel=1
+pkgdesc="D-Bus interface for user account query and manipulation"
+arch=(i686 x86_64)
+url="http://cgit.freedesktop.org/accountsservice/"
+license=('GPL3')
+depends=('dbus-glib' 'polkit')
+makedepends=('intltool' 'gobject-introspection')
+options=('!libtool')
+source=(http://cgit.freedesktop.org/accountsservice/snapshot/${pkgname}-${pkgver}.tar.bz2)
+md5sums=('e43d0ea4c0cb9291e60f800d9c2d0ba4')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./autogen.sh
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/accountsservice \
+ --with-systemdsystemunitdir=/lib/systemd/system \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/anjuta/PKGBUILD b/extra/anjuta/PKGBUILD
index e1fc1d130..3e09aad25 100644
--- a/extra/anjuta/PKGBUILD
+++ b/extra/anjuta/PKGBUILD
@@ -1,24 +1,26 @@
-# $Id: PKGBUILD 104220 2010-12-30 21:23:10Z ibiru $
-# Mantainer: Andreas Radke <andyrtr@archlinux.org>
+# $Id: PKGBUILD 120797 2011-04-26 15:26:51Z ibiru $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Harley Laue <losinggeneration@yahoo.com>
pkgname=anjuta
-pkgver=2.32.1.1
+pkgver=3.0.1.0
pkgrel=1
-pkgdesc="Anjuta Integrated Development Environment (IDE)"
+pkgdesc="GNOME Integrated Development Environment (IDE)"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libunique>=1.1.6' 'gconf>=2.32.0' 'vte>=0.26.2' 'gdl>=2.30.1' 'autogen>=5.9.9' 'devhelp>=2.32.0' 'gtksourceview2>=2.10.5' 'glade>=3.6.7' 'libgda>=4.2.1' 'subversion>=1.6.9' 'gnome-icon-theme>=2.31.0' 'hicolor-icon-theme' 'vala>=0.10.1' 'graphviz>=2.6.23' 'perl-locale-gettext')
-makedepends=('gnome-doc-utils>=0.20.2' 'intltool')
+depends=('vte3' 'gdl' 'autogen' 'devhelp' 'gtksourceview3' 'glade' 'libgda'
+ 'subversion' 'gnome-icon-theme' 'hicolor-icon-theme' 'vala' 'graphviz'
+ 'python2' 'shared-mime-info' 'desktop-file-utils')
+makedepends=('gnome-doc-utils' 'intltool' 'gobject-introspection')
url="http://anjuta.sourceforge.net/"
install=anjuta.install
-source=(ftp://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
+source=(ftp://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*.*}/${pkgname}-${pkgver}.tar.bz2)
options=('!libtool' '!emptydirs')
-sha256sums=('f2b67609890a45d907ab5b42fd5963ba7cb41193d4a0dd2543584eca2ec5db58')
+sha256sums=('dbda189f453e0f9baecb35e85d59df92613668f7f4be08207d635cff3abb7261')
build() {
cd "${srcdir}/anjuta-${pkgver}"
- ./configure --prefix=/usr --sysconfdir=/etc \
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-scrollkeeper
make
}
@@ -26,12 +28,8 @@ build() {
package(){
cd "${srcdir}/anjuta-${pkgver}"
- make -j1 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+ make DESTDIR="${pkgdir}" install
- sed -i "s|#!/usr/bin/python$|#!/usr/bin/python2|" \
+ sed -i "1s|#!/usr/bin/python$|&2|" \
$pkgdir/usr/share/anjuta/project/{pygtk,python}/src/main.py
-
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain anjuta ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
diff --git a/extra/anjuta/anjuta.install b/extra/anjuta/anjuta.install
index 98f44a08f..c6fcfec11 100644
--- a/extra/anjuta/anjuta.install
+++ b/extra/anjuta/anjuta.install
@@ -1,28 +1,21 @@
-pkgname=anjuta
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
- update-mime-database usr/share/mime > /dev/null
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
gtk-update-icon-cache -q -t -f usr/share/icons/gnome
- update-desktop-database -q
+ update-mime-database usr/share/mime > /dev/null
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall anjuta
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- update-mime-database usr/share/mime > /dev/null
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
- gtk-update-icon-cache -q -t -f usr/share/icons/gnome
- update-desktop-database -q
+ post_install
}
diff --git a/extra/ardour/PKGBUILD b/extra/ardour/PKGBUILD
index 4019bdf28..770a8d0a2 100644
--- a/extra/ardour/PKGBUILD
+++ b/extra/ardour/PKGBUILD
@@ -1,6 +1,6 @@
-# $Id: PKGBUILD 101421 2010-11-29 06:10:19Z allan $
+# $Id: PKGBUILD 110738 2011-02-21 22:15:44Z schiv $
# Maintainer: tobias <tobias@archlinux.org>
-# Maintainer: Ray Rashif <schivmeister@gmail.com>
+# Maintainer: Ray Rashif <schiv@archlinux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
# ardour, liblrdf and raptor are heavily dependent on each other. Updating of
@@ -9,13 +9,13 @@
pkgname=ardour
pkgver=2.8.11
-pkgrel=2
+pkgrel=3
pkgdesc="A multichannel hard disk recorder and digital audio workstation"
arch=('i686' 'x86_64' 'mips64el')
url="http://ardour.org"
license=('GPL')
-depends=('liblrdf' 'liblo' 'aubio' 'libusb-compat'
- 'slv2' 'rubberband' 'libgnomecanvas')
+depends=('liblrdf>=0.4.0-7' 'liblo' 'aubio' 'libusb-compat'
+ 'slv2>=0.6.6-3' 'rubberband' 'libgnomecanvas')
makedepends=('scons' 'boost' 'pkg-config')
changelog=${pkgname}.changelog
source=(ftp://ftp.archlinux.org/other/ardour/${pkgname}-${pkgver}.tar.bz2
diff --git a/extra/ardour/ardour.changelog b/extra/ardour/ardour.changelog
index 6da0d9f57..ee9cf00bf 100644
--- a/extra/ardour/ardour.changelog
+++ b/extra/ardour/ardour.changelog
@@ -1,8 +1,12 @@
-9 Aug 2010 (GMT+8) Ray Rashif <schivmeister@gmail.com>
+22 Feb 2011 (GMT+8) Ray Rashif <schiv@archlinux.org>
+
+ * 2.8.11-2 :
+ raptor rebuild
+
+9 Aug 2010 (GMT+8) Ray Rashif <schiv@archlinux.org>
* 2.8.11-1 :
Testing build.
- Updated to latest upstream release.
Removed libgnomecanvasmm depend (ardour internal).
Removed soundtouch makedepend (ardour internal, unneded).
Added new depends
diff --git a/extra/at-spi/PKGBUILD b/extra/at-spi/PKGBUILD
index 9fd82c478..82cc1b4ec 100644
--- a/extra/at-spi/PKGBUILD
+++ b/extra/at-spi/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 92799 2010-10-01 11:04:27Z allan $
+# $Id: PKGBUILD 120762 2011-04-26 14:25:06Z ibiru $
# Maintainer: Jan de Groot <jan@archlinux.org>
pkgname=at-spi
pkgver=1.32.0
-pkgrel=2
+pkgrel=4
pkgdesc="Assistive Technology Service Provider Interface"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libbonobo>=2.32.0' 'libxtst' 'gtk2>=2.22.0' 'gconf>=2.31.91')
+depends=('libbonobo' 'libxtst' 'gtk2' 'gconf')
makedepends=('pkgconfig' 'python2' 'intltool' 'libice' 'libsm')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org"
@@ -19,11 +19,17 @@ build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
- --libexecdir=/usr/lib/at-spi
+ --libexecdir=/usr/lib/at-spi \
+ --enable-relocate
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain at-spi ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain at-spi "${pkgdir}"/etc/gconf/schemas/*.schemas
+ rm -f "${pkgdir}"/etc/gconf/schemas/*.schemas
}
diff --git a/extra/at-spi2-atk/PKGBUILD b/extra/at-spi2-atk/PKGBUILD
index 9a8d78fd7..e0034efe3 100644
--- a/extra/at-spi2-atk/PKGBUILD
+++ b/extra/at-spi2-atk/PKGBUILD
@@ -1,35 +1,35 @@
-# $Id: PKGBUILD 98652 2010-11-12 00:22:02Z ibiru $
+# $Id: PKGBUILD 120714 2011-04-26 05:27:06Z jgc $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
+
pkgname=at-spi2-atk
-pkgver=0.4.0
-pkgrel=2
+pkgver=2.0.1
+pkgrel=1
pkgdesc="A GTK+ module that bridges ATK to D-Bus at-spi"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gnome.org"
license=('GPL2')
-depends=('dbus-core>=1.4.0' 'dbus-glib>=0.92' 'atk>=1.32.0' 'gconf>=2.32.0')
+depends=('at-spi2-core' 'libx11' 'atk' 'dconf')
makedepends=('intltool')
install=at-spi2-atk.install
options=('!libtool')
-source=(http://download.gnome.org/sources/${pkgname}/0.4/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('2e2308cd67fe256e08085e499808f6e41b8d4967d91831ff7f25953898fc5b46')
+groups=('gnome')
+source=(http://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('d78a88067a53db479d3c7c1ce31f095b1d4962e44e653800a12599ade397dafc')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ sed -i -e '/AC_PATH_XTRA/d' configure.ac
+ autoreconf --force --install
+
./configure --prefix=/usr --sysconfdir=/etc \
- --disable-schemas-install
+ --disable-schemas-compile
make
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
-
make DESTDIR="${pkgdir}" install
-
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain at-spi2-atk ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
# vim:set ts=2 sw=2 et:
diff --git a/extra/at-spi2-atk/at-spi2-atk.install b/extra/at-spi2-atk/at-spi2-atk.install
index c0df41a2a..2ef26aaa9 100644
--- a/extra/at-spi2-atk/at-spi2-atk.install
+++ b/extra/at-spi2-atk/at-spi2-atk.install
@@ -1,17 +1,11 @@
-pkgname=at-spi2-atk
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
-}
-
-pre_upgrade() {
- pre_remove $1
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
}
post_upgrade() {
post_install $1
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+post_remove() {
+ post_install $1
}
diff --git a/extra/at-spi2-core/PKGBUILD b/extra/at-spi2-core/PKGBUILD
index 63be0f928..f826d6763 100644
--- a/extra/at-spi2-core/PKGBUILD
+++ b/extra/at-spi2-core/PKGBUILD
@@ -1,27 +1,32 @@
-# $Id: PKGBUILD 98644 2010-11-12 00:18:31Z ibiru $
+# $Id: PKGBUILD 120767 2011-04-26 14:35:02Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=at-spi2-core
-pkgver=0.4.0
-pkgrel=2
+pkgver=2.0.1
+pkgrel=1
pkgdesc="Protocol definitions and daemon for D-Bus at-spi"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gnome.org"
license=('GPL2')
-depends=('dbus-core>=1.4.0' 'dbus-glib>=0.92' 'libxtst' 'libxevie')
-source=(http://download.gnome.org/sources/${pkgname}/0.4/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('a579b628cc8c6036c3a57dabed89e2bffb61df1af011bddae68b5d3a9279a66c')
+depends=('dbus-core' 'glib2' 'libxtst')
+makedepends=('intltool' 'gobject-introspection')
+options=('!libtool')
+groups=('gnome')
+source=(http://download.gnome.org/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('f0880d816a554c0560e9f6aea786614e8ab439e17189d383a83ed7eebd9e328b')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ sed -i -e '/AC_PATH_XTRA/d' configure.ac
+ autoreconf --force --install
+
./configure --prefix=/usr --sysconfdir=/etc \
- --libexecdir=/usr/lib/at-spi2-core
+ --libexecdir=/usr/lib/at-spi2-core --disable-xevie
make
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
-
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/atk/PKGBUILD b/extra/atk/PKGBUILD
index 090333e38..91d1f1e3a 100644
--- a/extra/atk/PKGBUILD
+++ b/extra/atk/PKGBUILD
@@ -1,21 +1,25 @@
-# $Id: PKGBUILD 91408 2010-09-27 08:07:52Z jgc $
+# $Id: PKGBUILD 118010 2011-04-05 06:45:40Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=atk
-pkgver=1.32.0
+pkgver=2.0.0
pkgrel=1
pkgdesc="A library providing a set of interfaces for accessibility"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('glib2>=2.25.17')
+depends=('glib2')
makedepends=('pkgconfig' 'gobject-introspection')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/1.32/${pkgname}-${pkgver}.tar.bz2)
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
url='http://www.gtk.org/'
-sha256sums=('e9a3e598f75c4db1af914f8b052dd9f7e89e920a96cc187c18eb06b8339cb16e')
+sha256sums=('5dbdc35f7f5b3f0748039bb3faa7cd5e45ec3d337a539772bc73acd0dfb55afd')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/atkmm/PKGBUILD b/extra/atkmm/PKGBUILD
index 90178ce9f..db30facf8 100644
--- a/extra/atkmm/PKGBUILD
+++ b/extra/atkmm/PKGBUILD
@@ -3,15 +3,15 @@
pkgbase=atkmm
pkgname=(atkmm atkmm-docs)
-pkgver=2.22.2
+pkgver=2.22.4
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
-makedepends=('atk>=1.32.0' 'glibmm>=2.24.2' 'glibmm-docs>=2.24.2' 'libsigc++')
+makedepends=('atk' 'glibmm' 'glibmm-docs' 'libsigc++')
license=('LGPL')
options=('!libtool' '!emptydirs')
url="http://gtkmm.sourceforge.net/"
source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.22/${pkgbase}-${pkgver}.tar.bz2)
-sha256sums=('b94666ae0acebea53241fa0b2444468ff66e8a7790dfc7491489a9ad2eeefa34')
+sha256sums=('c47ac8866fd0be695b6ba54a7cda5ab94676295ec5b2c22bd159bb8212aca438')
build() {
cd "${srcdir}/${pkgbase}-${pkgver}"
@@ -21,7 +21,7 @@ build() {
package_atkmm() {
pkgdesc="C++ bindings for atk"
- depends=('atk>=1.32.0' 'glibmm>=2.24.2' 'libsigc++')
+ depends=('atk' 'glibmm' 'libsigc++')
cd "${srcdir}/${pkgbase}-${pkgver}"
sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile
diff --git a/extra/avahi/PKGBUILD b/extra/avahi/PKGBUILD
index dfd32251c..308615e57 100644
--- a/extra/avahi/PKGBUILD
+++ b/extra/avahi/PKGBUILD
@@ -1,16 +1,17 @@
-# $Id: PKGBUILD 118159 2011-04-05 16:56:06Z bisson $
+# $Id: PKGBUILD 118164 2011-04-05 16:57:59Z bisson $
# Contributor: Douglas Soares de Andrade <douglas@archlinux.org>
# Maintainer: Gaetan Bisson <bisson@archlinux.org>
pkgname=avahi
pkgver=0.6.30
-pkgrel=1
+pkgrel=2
pkgdesc='A multicast/unicast DNS-SD framework'
arch=('i686' 'x86_64' 'mips64el')
url='http://www.avahi.org/'
license=('LGPL')
depends=('expat' 'libdaemon' 'glib2' 'dbus' 'libcap' 'gdbm')
-optdepends=('gtk2: avahi-discover-standalone, bshell, bssh, bvnc'
+optdepends=('gtk3: avahi-discover-standalone, bshell, bssh, bvnc'
+ 'gtk2: gtk2 bindings'
'qt3: qt3 bindings'
'qt: qt bindings'
'pygtk: avahi-bookmarks, avahi-discover'
@@ -19,7 +20,7 @@ optdepends=('gtk2: avahi-discover-standalone, bshell, bssh, bvnc'
'dbus-python: avahi-discover'
'nss-mdns: NSS support for mDNS')
makedepends=('qt' 'qt3' 'pygtk' 'mono' 'intltool' 'dbus-python'
- 'gtk-sharp-2' 'gobject-introspection')
+ 'gtk-sharp-2' 'gobject-introspection' 'gtk3')
backup=(etc/avahi/avahi-daemon.conf etc/avahi/services/{sftp-,}ssh.service)
install=avahi.install
conflicts=('howl' 'mdnsresponder')
@@ -47,7 +48,6 @@ build() {
--sysconfdir=/etc \
--localstatedir=/var \
--disable-static \
- --disable-gtk3 \
--disable-monodoc \
--disable-doxygen-doc \
--disable-xmltoman \
diff --git a/extra/banshee/PKGBUILD b/extra/banshee/PKGBUILD
index a9a0157c3..f3850002e 100644
--- a/extra/banshee/PKGBUILD
+++ b/extra/banshee/PKGBUILD
@@ -1,16 +1,15 @@
-# $Id: PKGBUILD 110386 2011-02-19 06:36:31Z eric $
+# $Id: PKGBUILD 119748 2011-04-14 13:27:14Z jgc $
# Contributor: György Balló <ballogy@freestart.hu>
pkgname=banshee
-_pkgname=banshee-1
-pkgver=1.8.1
-pkgrel=1
+pkgver=2.0.0
+pkgrel=3
pkgdesc="Music management and playback for GNOME"
arch=('i686' 'x86_64' 'mips64el')
url="http://banshee.fm/"
license=('MIT')
-depends=('libxxf86vm' 'gnome-desktop>=2.28' 'mono-addins>=0.3.1' 'notify-sharp-svn' 'boo>=0.8.1' 'libwebkit>=1.2.2' 'gdata-sharp>=1.4' 'gtk-sharp-beans' 'gudev-sharp' 'gkeyfile-sharp' 'taglib-sharp>=2.0.3.7' 'gnome-sharp' 'libmtp>=0.2.0' 'libgpod>=0.7.95' 'mono-zeroconf>=0.8.0' 'gstreamer0.10-base-plugins>=0.10.25.2' 'desktop-file-utils' 'shared-mime-info' 'hicolor-icon-theme' 'xdg-utils')
-makedepends=('intltool>=0.35.0' 'gnome-doc-utils>=0.17.3')
+depends=('libxxf86vm' 'mono-addins' 'notify-sharp-svn' 'boo' 'libwebkit' 'gdata-sharp' 'gtk-sharp-beans' 'gudev-sharp' 'gkeyfile-sharp' 'taglib-sharp' 'libmtp' 'libgpod' 'mono-zeroconf' 'gstreamer0.10-base-plugins' 'desktop-file-utils' 'shared-mime-info' 'hicolor-icon-theme' 'xdg-utils' 'gconf-sharp')
+makedepends=('intltool' 'gnome-doc-utils')
optdepends=('gstreamer0.10-good-plugins: Extra media codecs'
'gstreamer0.10-ugly-plugins: Extra media codecs'
'gstreamer0.10-bad-plugins: Extra media codecs'
@@ -18,15 +17,14 @@ optdepends=('gstreamer0.10-good-plugins: Extra media codecs'
'brasero: CD burning')
options=('!libtool')
install=$pkgname.install
-source=(http://download.banshee.fm/$pkgname/stable/$pkgver/$_pkgname-$pkgver.tar.bz2)
-md5sums=('15311add4f943300701d7da3b488452e')
-sha1sums=('534f42be30f875560c95ab059cec6d46254df9ba')
+source=(http://download.banshee.fm/$pkgname/stable/$pkgver/$pkgname-$pkgver.tar.bz2)
+md5sums=('ecd129a3232bda507b98c90e6f9272cf')
build() {
export MONO_SHARED_DIR="$srcdir/.wabi"
mkdir -p "$MONO_SHARED_DIR"
- cd "$srcdir/$_pkgname-$pkgver"
+ cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--disable-docs \
@@ -41,9 +39,8 @@ package() {
export MONO_SHARED_DIR="$srcdir/.wabi"
mkdir -p "$MONO_SHARED_DIR"
- cd "$srcdir/$_pkgname-$pkgver"
- make DESTDIR="$pkgdir/" install
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
- install -m755 -d "$pkgdir"/usr/share/licenses/"$pkgname"
- install -m644 COPYING "$pkgdir"/usr/share/licenses/${pkgname}/
+ install -D -m644 COPYING "$pkgdir/usr/share/licenses/$pkgname/COPYING"
}
diff --git a/extra/bluez/PKGBUILD b/extra/bluez/PKGBUILD
index 0ac6dd2fe..4fe433b89 100644
--- a/extra/bluez/PKGBUILD
+++ b/extra/bluez/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 119035 2011-04-10 15:08:06Z andrea $
+# $Id: PKGBUILD 121271 2011-04-30 00:03:52Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Geoffroy Carrier <geoffroy@archlinux.org>
pkgname=bluez
-pkgver=4.91
+pkgver=4.92
pkgrel=1
pkgdesc="Libraries and tools for the Bluetooth protocol stack"
url="http://www.bluez.org/"
@@ -27,7 +27,7 @@ backup=(etc/bluetooth/{main,rfcomm,audio,network,input,serial}.conf
source=("http://www.kernel.org/pub/linux/bluetooth/${pkgname}-${pkgver}.tar.bz2"
'bluetooth.conf.d'
'rc.bluetooth')
-md5sums=('0a293ae6cf0d0e0bdd74fb65e655842a'
+md5sums=('33bb9a75239889c5ee5fbc666ad41c5c'
'8f60a5eb9d84b9c64c478d63e1c24b10'
'ca4c39eb4bb201bd2eacad01492cd735')
diff --git a/extra/brasero/PKGBUILD b/extra/brasero/PKGBUILD
index dc84b8e76..3f082cac3 100644
--- a/extra/brasero/PKGBUILD
+++ b/extra/brasero/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD,v 1.31 2009/03/14 02:03:57 allan Exp $
+# $Id: PKGBUILD 117967 2011-04-05 06:28:22Z heftig $
# Maintainer: Allan McRae <allan@archlinux.org>
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: William Rea <sillywilly@gmail.com>
pkgname=brasero
-pkgver=2.32.1
+pkgver=3.0.0
pkgrel=1
pkgdesc="A disc burning application for Gnome"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gnome.org/projects/brasero"
license=('GPL')
options=('!libtool' '!emptydirs')
-depends=('gstreamer0.10-base-plugins>=0.10.30' 'totem-plparser>=2.32.0' 'libbeagle>=0.3.9' 'cdrkit' 'cdrdao' 'desktop-file-utils' 'hicolor-icon-theme' 'libunique>=1.1.6' 'libcanberra>=0.25' 'dvd+rw-tools' 'dconf')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool' 'libburn' 'libisofs' 'nautilus' 'gobject-introspection' 'namcap')
+depends=('gtk3' 'gstreamer0.10-base-plugins' 'totem-plparser' 'cdrkit' 'cdrdao' 'desktop-file-utils' 'hicolor-icon-theme' 'shared-mime-info' 'libcanberra' 'dvd+rw-tools' 'dconf' 'libsm')
+makedepends=('gtk-doc' 'intltool' 'libburn' 'libisofs' 'nautilus' 'gobject-introspection' 'gconf')
optdepends=('libburn: alternative back-end'
'libisofs: libburn back-end'
'dvdauthor: video project'
@@ -20,8 +20,8 @@ optdepends=('libburn: alternative back-end'
'vcdimager: video project')
replaces=('nautilus-cd-burner')
install=brasero.install
-source=(http://ftp.gnome.org/pub/gnome/sources/brasero/2.32/brasero-${pkgver}.tar.bz2)
-sha256sums=('7b1056b6f19398912d51e3e583bc1b4d2a75ce2a8e15a96e1514fe6edb79df3b')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('aff1e900d6c68096e43a80443c8c367374fb980986d2f823d229606605a410e3')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -29,5 +29,9 @@ build() {
--localstatedir=/var --disable-caches \
--disable-schemas-compile
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR=${pkgdir} install
}
diff --git a/extra/cairomm/PKGBUILD b/extra/cairomm/PKGBUILD
index a73f94893..498fb790f 100644
--- a/extra/cairomm/PKGBUILD
+++ b/extra/cairomm/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 102350 2010-12-07 11:34:03Z jgc $
+# $Id: PKGBUILD 109789 2011-02-12 19:30:52Z ibiru $
# Maintainer: Kevin <kevin@archlinux.org>
# Contributor: criminy <criminy@gmail.com>
pkgname=cairomm
-pkgver=1.8.6
+pkgver=1.9.8
pkgrel=1
pkgdesc="C++ bindings to Cairo vector graphics library"
arch=('i686' 'x86_64' 'mips64el')
@@ -13,11 +13,15 @@ depends=('cairo' 'libsigc++')
makedepends=('pkgconfig')
source=(http://www.cairographics.org/releases/${pkgname}-${pkgver}.tar.gz)
options=('!libtool' '!emptydirs')
-md5sums=('39af0fd0c111bb74307f9860653046ce')
+md5sums=('6d5ce1138dbb09c58038ab6f766d5e88')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/cheese/PKGBUILD b/extra/cheese/PKGBUILD
index 6c3e5cba9..28365ff5e 100644
--- a/extra/cheese/PKGBUILD
+++ b/extra/cheese/PKGBUILD
@@ -1,30 +1,32 @@
-# $Id: PKGBUILD 91839 2010-09-28 08:08:33Z jgc $
+# $Id: PKGBUILD 120785 2011-04-26 15:12:27Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=cheese
-pkgver=2.32.0
+pkgver=3.0.1
pkgrel=1
pkgdesc="Use your webcam to take photos and videos, apply fancy special effects and share the fun with others"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('gnome-desktop>=2.32.0' 'gstreamer0.10-base-plugins>=0.10.30' 'gstreamer0.10-good-plugins>=0.10.24' 'librsvg>=2.32.0' 'gnome-icon-theme>=2.31.0' 'libcanberra>=0.25')
-makedepends=('pkgconfig' 'gnome-doc-utils>=0.20.1' 'intltool')
+depends=('gnome-desktop' 'gtk3' 'libcanberra' 'librsvg' 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'clutter-gst'
+ 'clutter-gtk' 'mx' 'libgee' 'gnome-video-effects' 'hicolor-icon-theme')
+makedepends=('pkgconfig' 'gnome-doc-utils' 'intltool' 'gobject-introspection')
groups=('gnome-extra')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org/projects/cheese/"
install=cheese.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('8debc47113d9889247f411d256a8eca0d8da49e5ab5909c200923945b8d5e087')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('a2e947146c83d60db2e4f858917c906733037f77067a7081de7a2ff3716fbe7a')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --libexecdir=/usr/lib \
- --disable-scrollkeeper --disable-static
+ --localstatedir=/var --disable-scrollkeeper \
+ --disable-static --disable-schemas-compile
make
- make -j1 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain cheese ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/cheese/cheese.install b/extra/cheese/cheese.install
index 2ee180576..c042fba42 100644
--- a/extra/cheese/cheese.install
+++ b/extra/cheese/cheese.install
@@ -1,22 +1,20 @@
pkgname=cheese
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if [ -f usr/share/gconf/schemas/$pkgname.schemas ]; then
+ usr/sbin/gconfpkg --uninstall $pkgname
+ fi
}
post_upgrade() {
post_install $1
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
-}
-
post_remove() {
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install $1
}
diff --git a/extra/claws-mail-extra-plugins/PKGBUILD b/extra/claws-mail-extra-plugins/PKGBUILD
index 6200cec71..b1cd6cbc9 100644
--- a/extra/claws-mail-extra-plugins/PKGBUILD
+++ b/extra/claws-mail-extra-plugins/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id: PKGBUILD 119025 2011-04-10 13:51:10Z andyrtr $
+# $Id: PKGBUILD 121174 2011-04-29 06:49:28Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Mildred <mildred593 at online dot fr>
pkgname=claws-mail-extra-plugins
pkgver=3.7.9
-pkgrel=1
+pkgrel=3
pkgdesc="Extra plugins for claws-mail"
url="http://www.claws-mail.org/plugins.php?branch=EXT"
license=('GPL3')
arch=('i686' 'x86_64' 'mips64el')
depends=('claws-mail>=3.7.8')
makedepends=('make' 'bc' 'perl>=5.10.1-5' 'libgtkhtml>=2.11.1-2' 'libnotify>=0.7'
- 'libxml2>=2.7.6' 'curl>=7.19.7' 'libytnef>=1.5-2' 'libwebkit>=1.2'
+ 'libxml2>=2.7.6' 'curl>=7.19.7' 'libytnef>=1.5-2' 'libwebkit>=1.3.13'
'pygtk>=2.16.0' 'libsoup-gnome' 'libcanberra')
optdepends=('libgtkhtml: for gtkhtml2_viewer plugin'
'perl: for perl plugin'
@@ -30,11 +30,11 @@ conflicts=('claws-gtkhtml2_viewer' 'claws-mail-acpinotifier-plugin'
'sylpheed-claws-extra-plugins' 'claws-tnef-plugin'
'claws-webkit-plugin-svn' 'claws-mayflower-plugin-svn')
replaces=('sylpheed-claws-extra-plugins')
-options=('!libtool')
+options=('!libtool' '!strip')
source=(http://downloads.sourceforge.net/project/sylpheed-claws/extra%20plugins/$pkgver/claws-mail-extra-plugins-$pkgver.tar.bz2
claws-mail-notification-0.26-libnotify-0.7.patch)
md5sums=('3d1ebc48f686ab10702380c776b5d5d0'
- 'b76e1cdbff7af46d6594c34646c06fd0')
+ 'a02be84594ebd28b18811ccc358509be')
build() {
cd "$srcdir/claws-mail-extra-plugins-$pkgver"
@@ -47,7 +47,7 @@ build() {
cd $dir
[[ $dir == notification_plugin-* ]] &&
- patch -Np0 -i "$srcdir/claws-mail-notification-0.26-libnotify-0.7.patch"
+ patch -Np2 -i "$srcdir/claws-mail-notification-0.26-libnotify-0.7.patch"
./configure --prefix=/usr --disable-static
make
diff --git a/extra/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch b/extra/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch
index 6159d139c..efc06a472 100644
--- a/extra/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch
+++ b/extra/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch
@@ -1,50 +1,25 @@
---- src/notification_popup.c
-+++ src/notification_popup.c
-@@ -339,7 +339,16 @@
+diff -Nur claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_popup.c claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_popup.c
+--- claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_popup.c 2009-04-26 03:05:05.000000000 +0200
++++ claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_popup.c 2010-11-12 13:39:02.363909583 +0100
+@@ -339,7 +339,7 @@
break;
}
-+#ifdef NOTIFY_CHECK_VERSION
-+#if NOTIFY_CHECK_VERSION (0, 7, 0)
+- ppopup->notification = notify_notification_new(summary, utf8_str, NULL, NULL);
+ ppopup->notification = notify_notification_new(summary, utf8_str, NULL);
-+#else
- ppopup->notification = notify_notification_new(summary, utf8_str, NULL, NULL);
-+#endif
-+#else
-+ ppopup->notification = notify_notification_new(summary, utf8_str, NULL, NULL);
-+#endif
-+
g_free(utf8_str);
if(ppopup->notification == NULL) {
debug_print("Notification Plugin: Failed to create a new "
---- src/notification_trayicon.c
-+++ src/notification_trayicon.c
-@@ -61,6 +61,10 @@
- #ifdef HAVE_LIBNOTIFY
- #include <libnotify/notify.h>
-
-+#ifndef NOTIFY_CHECK_VERSION
-+#define NOTIFY_CHECK_VERSION(x,y,z) 0
-+#endif
-+
- typedef struct {
- gint count;
- gint num_mail;
-@@ -601,8 +605,17 @@
+diff -Nur claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_trayicon.c claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_trayicon.c
+--- claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_trayicon.c 2010-03-25 09:56:34.000000000 +0100
++++ claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_trayicon.c 2010-11-12 13:38:30.809340907 +0100
+@@ -589,8 +589,7 @@
summary = notification_trayicon_popup_assemble_summary();
utf8_str = notification_trayicon_popup_assemble_body(msginfo);
-+#if NOTIFY_CHECK_VERSION (0, 7, 0)
+- popup.notification = notify_notification_new(summary, utf8_str, NULL, NULL);
+- notify_notification_attach_to_status_icon(popup.notification, trayicon);
+ popup.notification = notify_notification_new(summary, utf8_str, NULL);
-+#else
- popup.notification = notify_notification_new(summary, utf8_str, NULL, NULL);
-+#endif
-+
-+#if NOTIFY_CHECK_VERSION (0, 7, 0)
-+ /* notify_notification_attach_to_status_icon function was removed */
-+#else
- notify_notification_attach_to_status_icon(popup.notification, trayicon);
-+#endif
g_free(summary);
g_free(utf8_str);
diff --git a/extra/claws-mail/PKGBUILD b/extra/claws-mail/PKGBUILD
index 8bd4d566f..3637d7ef4 100644
--- a/extra/claws-mail/PKGBUILD
+++ b/extra/claws-mail/PKGBUILD
@@ -1,15 +1,15 @@
-# $Id: PKGBUILD 119020 2011-04-10 13:42:00Z andyrtr $
+# $Id: PKGBUILD 121163 2011-04-29 06:26:08Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgname=claws-mail
pkgver=3.7.9
-pkgrel=1
+pkgrel=2
pkgdesc="A GTK+ based e-mail client."
arch=('i686' 'x86_64' 'mips64el')
license=('GPL3')
url="http://www.claws-mail.org"
depends=('gtk2' 'gnutls' 'startup-notification' 'pilot-link' 'enchant'
- 'gpgme' 'libetpan' 'libsm' 'db' 'dbus-glib' 'hicolor-icon-theme')
+ 'gpgme' 'libetpan' 'libsm' 'db' 'dbus-glib' 'hicolor-icon-theme' 'desktop-file-utils')
makedepends=('compface' 'spamassassin' 'bogofilter' 'valgrind')
optdepends=('python2: needed for some tools'
'perl: needed for some tools'
diff --git a/extra/claws-mail/claws-mail.install b/extra/claws-mail/claws-mail.install
index 5f3cb0109..648480c3b 100644
--- a/extra/claws-mail/claws-mail.install
+++ b/extra/claws-mail/claws-mail.install
@@ -1,5 +1,6 @@
post_install() {
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ update-desktop-database -q
}
post_upgrade() {
diff --git a/extra/clutter-gst/PKGBUILD b/extra/clutter-gst/PKGBUILD
new file mode 100644
index 000000000..76dc16593
--- /dev/null
+++ b/extra/clutter-gst/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 118181 2011-04-05 18:32:42Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=clutter-gst
+pkgver=1.3.8
+pkgrel=1
+pkgdesc="GStreamer bindings for clutter"
+arch=('i686' 'x86_64')
+url="http://www.gtk.org/"
+license=('GPL2')
+depends=('clutter' 'gstreamer0.10-base')
+makedepends=('gobject-introspection' 'gtk-doc')
+options=('!libtool')
+source=(http://clutter-project.org/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('376c069bed2a6b374d96615b7196cb5f6ee4bbbd94243f92b64dee3ec56aec28')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/clutter-gtk/PKGBUILD b/extra/clutter-gtk/PKGBUILD
index b1b68d8fb..fc291a045 100644
--- a/extra/clutter-gtk/PKGBUILD
+++ b/extra/clutter-gtk/PKGBUILD
@@ -1,27 +1,26 @@
-# $Id: PKGBUILD 92411 2010-09-29 20:04:35Z ibiru $
+# $Id: PKGBUILD 118087 2011-04-05 12:00:37Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=clutter-gtk
-pkgver=0.10.8
-pkgrel=2
+pkgver=1.0.0
+pkgrel=1
pkgdesc="GTK clutter widget"
arch=('i686' 'x86_64' 'mips64el')
url="http://clutter-project.org/"
options=('!libtool')
license=('LGPL')
-depends=('clutter>=1.4.0' 'gtk2>=2.22.0')
+depends=('clutter' 'gtk3')
makedepends=('gobject-introspection' 'gtk-doc')
-source=(http://www.clutter-project.org/sources/${pkgname}/0.10/${pkgname}-${pkgver}.tar.bz2
- fix-gir.patch)
-sha256sums=('7867f951568871d9f68cbe8a3644fd53d2138f725b7ba61ffc0053eb64e80814'
- 'a134d7154f71c995ae09cd606dcf811e1d317818c13a1167b3850c3104dadbd4')
+source=(http://www.clutter-project.org/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('5d395218e30e2971dbf9ca69e564036e6b6316e2d995b93fef11c0195f136cdb')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/fix-gir.patch"
- gtkdocize
- autoreconf -vi
./configure --prefix=/usr
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/clutter-gtk2/PKGBUILD b/extra/clutter-gtk2/PKGBUILD
new file mode 100644
index 000000000..3b6d7c4f8
--- /dev/null
+++ b/extra/clutter-gtk2/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 113313 2011-03-08 12:29:48Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+
+pkgname=clutter-gtk2
+_pkgbasename=clutter-gtk
+pkgver=0.10.8
+pkgrel=1
+pkgdesc="GTK clutter widget"
+arch=('i686' 'x86_64')
+url="http://clutter-project.org/"
+options=('!libtool')
+license=('LGPL')
+depends=('clutter' 'gtk2')
+makedepends=('gobject-introspection' 'gtk-doc')
+source=(http://www.clutter-project.org/sources/${_pkgbasename}/${pkgver%.*}/${_pkgbasename}-${pkgver}.tar.bz2
+ gir.patch)
+sha256sums=('7867f951568871d9f68cbe8a3644fd53d2138f725b7ba61ffc0053eb64e80814'
+ 'a7bb2e41b155a293fef3a58f9d0486788564a5da9373b00cc5209bdbdcb1ec66')
+
+build() {
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ patch -Np1 -i "$srcdir/gir.patch"
+ autoreconf -i
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ rm -r "$pkgdir/usr/share/gtk-doc"
+}
diff --git a/extra/clutter-gtk2/gir.patch b/extra/clutter-gtk2/gir.patch
new file mode 100644
index 000000000..81b56f3a1
--- /dev/null
+++ b/extra/clutter-gtk2/gir.patch
@@ -0,0 +1,39 @@
+From 4de105a2bbd201c8e60f3e8777794a4cd532afdc Mon Sep 17 00:00:00 2001
+From: Emmanuele Bassi <ebassi@linux.intel.com>
+Date: Tue, 28 Sep 2010 13:52:25 +0000
+Subject: build: Add common CFLAGS to the introspection scanner
+
+---
+diff --git a/clutter-gtk/Makefile.am b/clutter-gtk/Makefile.am
+index 6e267b4..cec5cce 100644
+--- a/clutter-gtk/Makefile.am
++++ b/clutter-gtk/Makefile.am
+@@ -15,6 +15,8 @@ AM_CPPFLAGS = \
+ -DCLUTTER_DISABLE_DEPRECATED \
+ $(CLUTTER_GTK_DEBUG_CFLAGS)
+
++common_cflags = $(CLUTTER_CFLAGS) $(GTK_CFLAGS)
++
+ # please, keep these lists sorted alphabetically
+ sources_c = \
+ $(srcdir)/gtk-clutter-embed.c \
+@@ -36,7 +38,7 @@ lib_LTLIBRARIES = libclutter-gtk-@CLUTTER_GTK_API_VERSION@.la
+ libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_SOURCES = $(sources_c)
+ libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_LIBADD = $(CLUTTER_LIBS) $(GTK_LIBS)
+ libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_LDFLAGS = $(CLUTTER_LT_LDFLAGS)
+-libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_CFLAGS = $(MAINTAINER_CFLAGS) $(GTK_CFLAGS) $(CLUTTER_CFLAGS)
++libclutter_gtk_@CLUTTER_GTK_API_VERSION@_la_CFLAGS = $(common_cflags) $(MAINTAINER_CFLAGS)
+
+ cluttergtkheadersdir = $(includedir)/clutter-1.0/clutter-gtk
+ cluttergtkheaders_HEADERS = $(sources_h) $(srcdir)/clutter-gtk.h
+@@ -48,7 +50,7 @@ GtkClutter-@CLUTTER_GTK_API_VERSION@.gir: $(INTROSPECTION_SCANNER) Makefile libc
+ $(AM_V_GEN)$(INTROSPECTION_SCANNER) -v \
+ --namespace GtkClutter --nsversion=@CLUTTER_GTK_API_VERSION@ \
+ --strip-prefix=GtkClutter \
+- $(INCLUDES) $(AM_CPPFLAGS) \
++ $(INCLUDES) $(AM_CPPFLAGS) $(common_cflags) \
+ --add-include-path=$(srcdir) --add-include=path=. \
+ --include=Clutter-1.0 \
+ --include=GdkPixbuf-2.0 \
+--
+cgit v0.8.3.1-30-gff3a
diff --git a/extra/clutter/PKGBUILD b/extra/clutter/PKGBUILD
index 44e909e54..70b6986e3 100644
--- a/extra/clutter/PKGBUILD
+++ b/extra/clutter/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 111588 2011-02-27 19:49:35Z ibiru $
+# $Id: PKGBUILD 118176 2011-04-05 18:06:09Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com>
# Contributor: William Rea <sillywilly@gmail.com>
pkgname=clutter
-pkgver=1.6.6
+pkgver=1.6.14
pkgrel=1
pkgdesc="A GObject based library for creating fast, visually rich graphical user interfaces"
arch=('i686' 'x86_64' 'mips64el')
@@ -14,7 +14,7 @@ license=('LGPL')
depends=('gdk-pixbuf2' 'json-glib' 'atk' 'pango' 'mesa' 'libxcomposite' 'libxi')
makedepends=('gobject-introspection' 'gtk-doc')
source=(http://www.clutter-project.org/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('8499fef3019c00bb06354ebe6d3277d26c84a8aa1d964b7edf6d327cd4d9d886')
+sha256sums=('0564e57ca8eb24e76014627c0bb28a80a6c01b620ba14bc4198365562549576d')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/extra/cups-pdf/PKGBUILD b/extra/cups-pdf/PKGBUILD
index a65f7a359..86185ab06 100644
--- a/extra/cups-pdf/PKGBUILD
+++ b/extra/cups-pdf/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 30278 2009-03-18 07:31:03Z andyrtr $
+# $Id: PKGBUILD 121266 2011-04-29 22:22:36Z andyrtr $
# Maintainer: Andreas Radke <andyrtr at archlinux.org>
# Contributor: Thomas Baechler <thomas.baechler@rwth-aachen.de>
pkgname=cups-pdf
-pkgver=2.5.0
+pkgver=2.5.1
pkgrel=1
pkgdesc="PDF printer for cups"
arch=(i686 x86_64 'mips64el')
@@ -13,19 +13,22 @@ url="http://cip.physik.uni-wuerzburg.de/~vrbehr/cups-pdf"
license=('GPL2')
source=(http://cip.physik.uni-wuerzburg.de/~vrbehr/cups-pdf/src/cups-pdf_$pkgver.tar.gz)
backup=(etc/cups/cups-pdf.conf)
-md5sums=('9194af099a8c0e9aa213505b29ec6818')
+md5sums=('4b4cf1a249d02a38045db74b5f259aac')
build() {
- # Build and install
cd $srcdir/$pkgname-$pkgver/src
[ -z "$CC" ] && CC=gcc
- $CC $CFLAGS -Wall -o cups-pdf cups-pdf.c || return 1
- install -D -m700 cups-pdf $pkgdir/usr/lib/cups/backend/cups-pdf || return 1
+ $CC $CFLAGS -Wall -o cups-pdf cups-pdf.c
+}
+
+package() {
+ cd $srcdir/$pkgname-$pkgver/src
+ install -D -m700 cups-pdf $pkgdir/usr/lib/cups/backend/cups-pdf
# Install Postscript Color printer
cd ../extra
- install -D -m644 CUPS-PDF.ppd $pkgdir/usr/share/cups/model/CUPS-PDF.ppd || return 1
+ install -D -m644 CUPS-PDF.ppd $pkgdir/usr/share/cups/model/CUPS-PDF.ppd
# Install config file
- install -D -m644 cups-pdf.conf $startdir/pkg/etc/cups/cups-pdf.conf || return 1
+ install -D -m644 cups-pdf.conf $pkgdir/etc/cups/cups-pdf.conf
}
diff --git a/extra/cups-pdf/cups-pdf.install b/extra/cups-pdf/cups-pdf.install
index 0ef82189a..7df03c811 100644
--- a/extra/cups-pdf/cups-pdf.install
+++ b/extra/cups-pdf/cups-pdf.install
@@ -14,7 +14,3 @@ pdf output is /var/spool/cups-pdf/$username.
-------------------------------------------------
EOF
}
-
-op=$1
-shift
-$op $*
diff --git a/extra/cups-pk-helper/PKGBUILD b/extra/cups-pk-helper/PKGBUILD
new file mode 100644
index 000000000..aaeec33b6
--- /dev/null
+++ b/extra/cups-pk-helper/PKGBUILD
@@ -0,0 +1,28 @@
+#$Id: PKGBUILD 119655 2011-04-13 10:39:02Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+pkgname=cups-pk-helper
+pkgver=0.1.2
+pkgrel=1
+pkgdesc="A helper that makes system-config-printer use PolicyKit"
+arch=(i686 x86_64)
+url="http://www.freedesktop.org/software/cups-pk-helper/releases/"
+license=('GPL')
+depends=(dbus-glib polkit libcups)
+makedepends=(intltool)
+install=
+source=(http://www.freedesktop.org/software/${pkgname}/releases/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('ccc5f35c5232b83c16929431b352775dd4c63cb92759ec45a525edb6fcb805df')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/cups-pk-helper
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/curl/PKGBUILD b/extra/curl/PKGBUILD
index 313ff891c..2ef35e67f 100644
--- a/extra/curl/PKGBUILD
+++ b/extra/curl/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 110504 2011-02-19 17:12:53Z angvp $
+# $Id: PKGBUILD 120474 2011-04-24 01:23:51Z angvp $
# Maintainer: Angel Velasquez <angvp@archlinux.org>
# Contributor: Eric Belanger <eric@archlinux.org>
# Contributor: Lucien Immink <l.immink@student.fnt.hvu.nl>
# Contributor: Daniel J Griffiths <ghost1227@archlinux.us>
pkgname=curl
-pkgver=7.21.4
-pkgrel=2
+pkgver=7.21.6
+pkgrel=1
pkgdesc="An URL retrival utility and library"
arch=('i686' 'x86_64' 'mips64el')
url="http://curl.haxx.se"
@@ -15,11 +15,12 @@ depends=('zlib' 'openssl' 'bash' 'ca-certificates')
options=('!libtool')
source=(http://curl.haxx.se/download/${pkgname}-${pkgver}.tar.bz2
curlbuild.h)
-md5sums=('e2dd20c88a7d01c745af9d788545ab2a'
- '751bd433ede935c8fae727377625a8ae')
[[ $CARCH == "x86_64" ]] && _curlbuild=curlbuild-64.h
[[ $CARCH == "i686" ]] && _curlbuild=curlbuild-32.h
+md5sums=('6611989a81ebd7b03a35adc3001ddee0'
+ '751bd433ede935c8fae727377625a8ae')
+
build() {
cd ${srcdir}/${pkgname}-${pkgver}
diff --git a/extra/dconf/PKGBUILD b/extra/dconf/PKGBUILD
index 2fdd90e36..f9bd14a1b 100644
--- a/extra/dconf/PKGBUILD
+++ b/extra/dconf/PKGBUILD
@@ -1,26 +1,33 @@
-# $Id:
+# $Id: PKGBUILD 118171 2011-04-05 17:33:39Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=dconf
-pkgver=0.5.1
-pkgrel=1
+pkgver=0.7.3
+pkgrel=2
pkgdesc="A low-level configuration system."
arch=(i686 x86_64 'mips64el')
url="http://live.gnome.org/dconf"
license=('LGPL2.1')
-depends=('glib2>=2.25.17')
-makedepends=('vala' 'gobject-introspection' 'gtk2')
-optdepends=('gtk2: for dconf-editor')
+depends=('glib2')
+makedepends=('vala' 'gobject-introspection' 'gtk3')
+optdepends=('gtk3: for dconf-editor')
install=dconf.install
-source=(http://download.gnome.org/sources/${pkgname}/0.5/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('0083d70e1b5e540d8d4b3f04fa5d17dff4c574136682fe3bdd9b5ecc196ec4f6')
+source=(http://download.gnome.org/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2
+ load-enum.patch)
+sha256sums=('84efc95cb62b6637b2131e110ff447908be739c2185d69bebb300293b561dfd9'
+ '8ead56b2897b18c97b9b72b81bd6e9f9249e28743b05a2653bbf4e6af7d9f7cc')
build() {
- cd "$srcdir/$pkgname-$pkgver"
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -Np1 -i "${srcdir}/load-enum.patch"
./configure --prefix=/usr \
--libexecdir=/usr/lib/dconf
make
- make DESTDIR="$pkgdir/" install
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
# vim:set ts=2 sw=2 et:
diff --git a/extra/dconf/load-enum.patch b/extra/dconf/load-enum.patch
new file mode 100644
index 000000000..949de1e00
--- /dev/null
+++ b/extra/dconf/load-enum.patch
@@ -0,0 +1,22 @@
+From 0d00a6ad3385e08eff0c50efe970af8d5d63c536 Mon Sep 17 00:00:00 2001
+From: Robert Ancell <robert.ancell@canonical.com>
+Date: Tue, 29 Mar 2011 05:50:12 +0000
+Subject: editor: Load *.enums.xml as well as *.gschema.xml. This was stopping some enums from being loaded.
+
+Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=636880
+---
+diff --git a/editor/dconf-schema.vala b/editor/dconf-schema.vala
+index 2b34e28..c2654b5 100644
+--- a/editor/dconf-schema.vala
++++ b/editor/dconf-schema.vala
+@@ -371,7 +371,7 @@ public class SchemaList
+ while ((info = i.next_file (null)) != null) {
+ string name = info.get_name();
+
+- if (!name.has_suffix(".gschema.xml"))
++ if (!name.has_suffix(".gschema.xml") && !name.has_suffix(".enums.xml"))
+ continue;
+
+ string path = Path.build_filename(dir, name, null);
+--
+cgit v0.9
diff --git a/extra/devhelp/PKGBUILD b/extra/devhelp/PKGBUILD
index b4d01e4aa..dd35c9cfe 100644
--- a/extra/devhelp/PKGBUILD
+++ b/extra/devhelp/PKGBUILD
@@ -1,26 +1,30 @@
-# $Id: PKGBUILD 92057 2010-09-28 17:39:36Z ibiru $
+# $Id: PKGBUILD 117678 2011-04-04 16:09:16Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Link Dupont <link@subpop.net>
pkgname=devhelp
-pkgver=2.32.0
+pkgver=3.0.0
pkgrel=1
pkgdesc="API documentation browser for GNOME"
arch=(i686 x86_64 'mips64el')
license=('GPL')
url="http://live.gnome.org/devhelp/"
-depends=('gconf>=2.32.0' 'libwnck>=2.30.5' 'libwebkit>=1.2.1' 'hicolor-icon-theme' 'libunique>=1.1.6')
-makedepends=('pkgconfig' 'intltool')
+depends=('gconf' 'libwebkit3' 'hicolor-icon-theme')
+makedepends=('pkgconfig' 'intltool' 'python2')
options=('!libtool' '!emptydirs')
install=devhelp.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/devhelp/2.32/devhelp-${pkgver}.tar.bz2)
-sha256sums=('61b342cbaf27379be9baa5df1f34c9464916601ec4378fa7e1c76fcc686553e4')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('e07094824bb655d8f2c2caa471aa97d2e0d705090d8b269bacc978cdc57e4a8d')
build() {
cd "${srcdir}/devhelp-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static
make
+}
+
+package() {
+ cd "${srcdir}/devhelp-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/ekiga/PKGBUILD b/extra/ekiga/PKGBUILD
index 357849f1b..4ed525aa1 100644
--- a/extra/ekiga/PKGBUILD
+++ b/extra/ekiga/PKGBUILD
@@ -1,33 +1,35 @@
-# $Id: PKGBUILD 112772 2011-03-06 16:43:00Z ibiru $
+# $Id: PKGBUILD 112176 2011-03-04 10:45:51Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Tom K <tomk@runbox.com>
pkgname=ekiga
-pkgver=3.2.7
-pkgrel=4
+pkgver=3.3.0
+pkgrel=2
pkgdesc="VOIP/Videoconferencing app with full SIP and H.323 support (GnomeMeeting expanded and renamed)"
url="http://www.ekiga.org"
license=(GPL)
-arch=(i686 x86_64 'mips64el')
-depends=('opal=3.6.8' 'evolution-data-server>=2.32.0' 'libsigc++>=2.2.8' 'libxv' 'libnotify>=0.4.5' 'hicolor-icon-theme' 'avahi>=0.6.27')
-makedepends=('pkgconfig' 'intltool' 'gnome-doc-utils>=0.20.0')
+arch=(i686 x86_64 mips64el)
+depends=('opal' 'boost-libs' 'libxv' 'libnotify' 'hicolor-icon-theme' 'avahi' 'gtk2')
+makedepends=('intltool' 'gnome-doc-utils' 'evolution-data-server' 'boost')
+optdepends=('evolution-data-server: Evolution integration')
provides=('gnomemeeting')
replaces=('gnomemeeting')
options=(!emptydirs)
groups=('gnome-extra')
install=ekiga.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.2/${pkgname}-${pkgver}.tar.bz2
- ekiga-3.2.7-libnotify-0.7.patch)
-sha256sums=('f25a1309b68eafe69f0d7aed461bc9a8196939060543d09bd2f19e0bb1e3fd8f'
- 'ad850d4e81a958081220f450a49ba9c10209d03f066f6afee99477c815c23daf')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('3fb22704e44afebf4294632505fb7a13f3eccb152fcb5878e97aa556d9486d2c')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/ekiga-3.2.7-libnotify-0.7.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-schemas-install \
--disable-scrollkeeper --enable-dbus
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/empathy/PKGBUILD b/extra/empathy/PKGBUILD
index f9737c2f7..a42ae2bd2 100644
--- a/extra/empathy/PKGBUILD
+++ b/extra/empathy/PKGBUILD
@@ -1,16 +1,15 @@
-# $Id: PKGBUILD 112778 2011-03-06 17:05:25Z ibiru $
+# $Id: PKGBUILD 120614 2011-04-25 18:12:59Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=empathy
-pkgver=2.32.2
-pkgrel=2
+pkgver=3.0.1
+pkgrel=1
pkgdesc="A GNOME instant messaging client using the Telepathy framework."
arch=('i686' 'x86_64' 'mips64el')
url="http://live.gnome.org/Empathy"
license=('GPL2')
-depends=('telepathy-glib>=0.12.4' 'telepathy-mission-control>=5.6.1' 'folks>=0.2.1' 'telepathy-logger>=0.1.5' 'telepathy-farsight>=0.0.15'
- 'gnome-keyring>=2.32.0' 'gnutls' 'gconf>=2.32.0' 'evolution-data-server>=2.32.1' 'libcanberra>=0.25' 'libnotify' 'libunique'
- 'enchant' 'iso-codes' 'libwebkit' 'dconf>=0.5.1' 'ca-certificates')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.1' 'nautilus-sendto')
+depends=('telepathy-glib' 'telepathy-mission-control' 'folks' 'telepathy-logger' 'telepathy-farsight' 'gnome-keyring' 'gnutls' 'evolution-data-server'
+ 'libcanberra' 'libnotify' 'enchant' 'iso-codes' 'libwebkit3' 'dconf' 'ca-certificates')
+makedepends=('intltool' 'gnome-doc-utils' 'nautilus-sendto' 'gnome-control-center')
optdepends=('telepathy-gabble: XMPP/Jabber support'
'telepathy-butterfly: MSN support'
'telepathy-idle: IRC support'
@@ -20,21 +19,21 @@ optdepends=('telepathy-gabble: XMPP/Jabber support'
options=('!libtool')
groups=('gnome-extra')
install=empathy.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- empathy-2.32.2-libnotify-0.7.patch)
-sha256sums=('f90a45955205fd8bd783a55acae4603197caab4f16a880106f8639cbbbe5e861'
- '8f7280c95fb67a2f91dc38984523f8ae4be95643e7404ea672d88d6541987ca8')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('4e29feb9f1100db2b4183b6f3aeccca85b0c89e7806c28adff0cb365b55c3809')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
-
- patch -Np0 -i "${srcdir}/empathy-2.32.2-libnotify-0.7.patch"
- sed -i -e '/libnotify/s:0.7:9999:' configure
./configure --prefix=/usr \
--sysconfdir=/etc \
--libexecdir=/usr/lib/empathy \
+ --disable-static \
+ --disable-scrollkeeper \
--disable-schemas-compile
make
- make DESTDIR="${pkgdir}" install
+}
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/eog-plugins/PKGBUILD b/extra/eog-plugins/PKGBUILD
new file mode 100644
index 000000000..d59b6c7f7
--- /dev/null
+++ b/extra/eog-plugins/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 120414 2011-04-23 21:13:06Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=eog-plugins
+pkgver=3.0.0
+pkgrel=1
+pkgdesc="Plugins for Eye of Gnome"
+arch=('i686' 'x86_64')
+url="http://www.gnome.org/"
+license=('GPL2')
+depends=('eog' 'libpeas' 'libchamplain' 'libexif')
+makedepends=('intltool')
+source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-${pkgver}.tar.bz2)
+sha256sums=('87cced9baf3c8ba84dcad95d774686694f5cb140a187a7bad3891bc50bc4c7bd')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --sysconfdir=/etc --localstatedir=/var
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/eog-plugins/eog-plugins.install b/extra/eog-plugins/eog-plugins.install
new file mode 100644
index 000000000..24072f316
--- /dev/null
+++ b/extra/eog-plugins/eog-plugins.install
@@ -0,0 +1,11 @@
+post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/extra/eog/PKGBUILD b/extra/eog/PKGBUILD
index 431000b8e..44b11b962 100644
--- a/extra/eog/PKGBUILD
+++ b/extra/eog/PKGBUILD
@@ -1,32 +1,32 @@
-# $Id: PKGBUILD 101184 2010-11-28 14:11:49Z ibiru $
+# $Id: PKGBUILD 120830 2011-04-26 16:59:37Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=eog
-pkgver=2.32.1
+pkgver=3.0.1
pkgrel=1
pkgdesc="Eye of Gnome: An image viewing and cataloging program"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('gnome-desktop>=2.32.0' 'libexif>=0.6.19' 'lcms>=1.19' 'desktop-file-utils' 'gnome-icon-theme>=2.31.0' 'exempi>=2.1.1' 'python2>=2.7')
-makedepends=('pkgconfig' 'gnome-doc-utils>=0.20.1' 'intltool' 'pygtk')
+depends=('gnome-desktop' 'libexif' 'lcms' 'desktop-file-utils' 'exempi'
+ 'dbus-glib' 'libpeas' 'librsvg' 'gnome-icon-theme')
+makedepends=('gtk-doc' 'intltool')
install=eog.install
groups=('gnome-extra')
options=('!emptydirs' '!libtool')
url="http://www.gnome.org"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('543672fb8e8e300bf2cf4c7eef43b5b1624e2e48e6aa0801a083ae7beb2d7078')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('97e40b0e0b618a53dffa83e30ff9add1563d54356e6ab1d588d510cedbc148d2')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- PYTHON=python2 ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-scrollkeeper \
- --enable-python
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-scrollkeeper
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain eog ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
# remove it from Xfce menu that ships its own thingy
echo "NotShowIn=XFCE" >> ${pkgdir}/usr/share/applications/eog.desktop
diff --git a/extra/eog/eog.install b/extra/eog/eog.install
index 61d28170f..284b24b18 100644
--- a/extra/eog/eog.install
+++ b/extra/eog/eog.install
@@ -1,24 +1,19 @@
-pkgname=eog
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
update-desktop-database -q
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall eog
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/epiphany-extensions/PKGBUILD b/extra/epiphany-extensions/PKGBUILD
index 12c4cba47..cb6a21df4 100644
--- a/extra/epiphany-extensions/PKGBUILD
+++ b/extra/epiphany-extensions/PKGBUILD
@@ -1,25 +1,30 @@
-# $Id: PKGBUILD 96469 2010-10-21 10:41:51Z jgc $
+# $Id: PKGBUILD 119191 2011-04-11 08:30:21Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=epiphany-extensions
-pkgver=2.32.0
+pkgver=3.0.0
pkgrel=1
url="http://www.gnome.org/projects/epiphany/"
pkgdesc="Various extentions for the Epiphany web browser"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('epiphany>=2.30.6' 'opensp' 'hicolor-icon-theme')
-makedepends=('pkgconfig' 'gnome-doc-utils>=0.20.0' 'intltool')
+depends=('epiphany' 'opensp' 'hicolor-icon-theme')
+makedepends=('gnome-doc-utils' 'intltool')
options=('!libtool' '!emptydirs')
install=epiphany-extensions.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('1d6ac9f24050f409812a1653156033c6c005c27bc590f2a54164715771a1e16e')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('c9984de0912b307fecd0232135c0e3d8c7f0859867b9693221ff12d1c483b724')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var \
- --with-extensions=really-all --disable-scrollkeeper
+ --disable-scrollkeeper
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/epiphany-extensions/epiphany-extensions.install b/extra/epiphany-extensions/epiphany-extensions.install
index 29e05e43c..1a05f573e 100644
--- a/extra/epiphany-extensions/epiphany-extensions.install
+++ b/extra/epiphany-extensions/epiphany-extensions.install
@@ -1,13 +1,11 @@
-pkgname=epiphany-extensions
-
post_install() {
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
post_upgrade() {
- post_install $1
+ post_install
}
post_remove() {
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/epiphany/PKGBUILD b/extra/epiphany/PKGBUILD
index f7e306518..60e8de91a 100644
--- a/extra/epiphany/PKGBUILD
+++ b/extra/epiphany/PKGBUILD
@@ -1,41 +1,33 @@
-# $Id: PKGBUILD 112785 2011-03-06 19:17:28Z ibiru $
+# $Id: PKGBUILD 117992 2011-04-05 06:37:18Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=epiphany
-pkgver=2.30.6
-pkgrel=3
+pkgver=3.0.0
+pkgrel=1
install=epiphany.install
-pkgdesc="A GNOME2 web browser based on the WebKit rendering engine."
+pkgdesc="A GNOME3 web browser based on the WebKit rendering engine."
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libwebkit>=1.2.4' 'iso-codes>=3.10.1' 'desktop-file-utils' 'libxslt>=1.1.24' 'libnotify>=0.7.1' 'avahi>=0.6.27' 'libsoup-gnome>=2.32.0' 'nss>=3.12.8' 'ca-certificates' 'gconf>=2.32.0' 'gobject-introspection>=0.9.8' 'dbus-glib')
-makedepends=('gnome-doc-utils>=0.20.1' 'pkgconfig' 'networkmanager' 'intltool' 'startup-notification' 'gnome-common' 'gtk-doc')
+depends=('libsoup-gnome' 'gsettings-desktop-schemas' 'libwebkit3' 'nss'
+ 'iso-codes' 'dconf' 'gobject-introspection' 'desktop-file-utils'
+ 'hicolor-icon-theme')
+makedepends=('intltool' 'networkmanager' 'gnome-doc-utils' 'startup-notification')
options=('!libtool' '!emptydirs')
groups=('gnome')
url="http://www.gnome.org/projects/epiphany/"
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2
- fix-introspection.patch
- epiphany-2.30.6-libnotify-0.7.patch
- add-dbus-glib.patch)
-sha256sums=('278a5c00ce07e6a3ea440d289de22dbec3ebec4ded4ff3b4c48b580f469c2dcc'
- 'fed862407db7d971aa759168f889e68e914c4e6d80d7768f3db549bc36bd8dbf'
- 'c1a59a9df78db07c2cf23d47d881d8d4edf6e55af3d655f8ec9870adf9255390'
- '6a0d826767eeed02300b612e16af99a8f3840ce1f754d437a1ddd8da9d254e95')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('9407220e21e95008b0c5b0a0383d1bdc56a932c40a4486ea4f996ba47eeae7bb')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/fix-introspection.patch"
- patch -Np1 -i "${srcdir}/add-dbus-glib.patch"
- patch -Np0 -i "${srcdir}/epiphany-2.30.6-libnotify-0.7.patch"
- ./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var \
--disable-scrollkeeper \
--enable-network-manager
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain epiphany ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/epiphany/epiphany.install b/extra/epiphany/epiphany.install
index bd9d774a6..00b1abb96 100644
--- a/extra/epiphany/epiphany.install
+++ b/extra/epiphany/epiphany.install
@@ -1,25 +1,20 @@
-pkgname=epiphany
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ glib-compile-schemas usr/share/glib-2.0/schemas
update-desktop-database -q
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if [ -f usr/share/gconf/schemas/epiphany.schemas ]; then
+ usr/sbin/gconfpkg --uninstall epiphany
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/evince/PKGBUILD b/extra/evince/PKGBUILD
index b19e8a4d1..c956aab16 100644
--- a/extra/evince/PKGBUILD
+++ b/extra/evince/PKGBUILD
@@ -1,51 +1,37 @@
-# $Id: PKGBUILD 114607 2011-03-14 14:33:58Z jgc $
+# $Id: PKGBUILD 119825 2011-04-15 13:37:39Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=evince
-pkgver=2.32.0
-pkgrel=8
+pkgver=3.0.0
+pkgrel=2
pkgdesc="Simply a document viewer"
url="http://projects.gnome.org/evince/"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libspectre>=0.2.6' 'gsfonts' 'poppler-glib>=0.16.3' 'libdjvu>=3.5.22' 'gnome-icon-theme>=2.31.0' 't1lib' 'libgnome-keyring>=2.32.0' 'desktop-file-utils' 'gconf' 'dconf')
-## gconf still needed
-## https://bugzilla.gnome.org/show_bug.cgi?id=628945
-makedepends=('gnome-doc-utils>=0.20.1' 'nautilus>=2.32.0' 'pkgconfig' 'texlive-bin' 'intltool' 'gobject-introspection' 'gnome-common' 'gtk-doc')
+depends=('libspectre' 'gsfonts' 'poppler-glib' 'djvulibre' 'gnome-icon-theme'
+ 't1lib' 'libgnome-keyring' 'desktop-file-utils' 'dconf' 'gsettings-desktop-schemas')
+makedepends=('gnome-doc-utils' 'nautilus' 'texlive-bin' 'intltool' 'gobject-introspection')
optdepends=('texlive-bin: DVI support')
-replaces=('gpdf')
groups=('gnome-extra')
install=evince.install
options=('!libtool' '!emptydirs')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- update_to_poppler_api.patch
- security_issues_in_dvi-backend.patch)
-sha256sums=('2a4c91ae38f8b5028cebb91b9da9ddc50ea8ae3f3d429df89ba351da2d787ff7'
- '2990c789c8cfd50e46f4dfa7a2406499b3ee26f4db9840c8b9a6e1dee40f61f4'
- '49d1ed8adc734a005d4d8fdc1912bb115d97f734071d64bcae0aae60f2b5626a')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('7c994a94200114ea7077d3348a03cbbad01c819ece2ec24b436b16e04386291b')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/update_to_poppler_api.patch"
- patch -Np1 -i "${srcdir}/security_issues_in_dvi-backend.patch"
- ./autogen.sh
-
- ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --libexecdir=/usr/lib/evince \
- --disable-static --enable-nautilus \
- --enable-pdf --enable-tiff \
- --enable-djvu --enable-dvi \
- --enable-t1lib --enable-pixbuf \
- --enable-comics --enable-impress \
- --enable-introspection \
- --disable-scrollkeeper \
- --disable-schemas-compile
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --libexecdir=/usr/lib/evince \
+ --disable-static --enable-nautilus \
+ --enable-pdf --enable-tiff \
+ --enable-djvu --enable-dvi \
+ --enable-t1lib --enable-comics \
+ --disable-scrollkeeper --disable-schemas-compile
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
-
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain evince ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+}
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/evince/evince.install b/extra/evince/evince.install
index ee40ec5eb..9643a9ba0 100644
--- a/extra/evince/evince.install
+++ b/extra/evince/evince.install
@@ -1,26 +1,19 @@
-pkgname=evince
-
post_install() {
usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
- usr/sbin/gconfpkg --install ${pkgname}
- gtk-update-icon-cache -q -f -t usr/share/icons/hicolor
update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall evince
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
- usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ post_install
}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -f -t usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/evolution-data-server/PKGBUILD b/extra/evolution-data-server/PKGBUILD
index 1af90bc0d..756a4e379 100644
--- a/extra/evolution-data-server/PKGBUILD
+++ b/extra/evolution-data-server/PKGBUILD
@@ -1,26 +1,29 @@
-# $Id: PKGBUILD 109544 2011-02-10 18:48:23Z ibiru $
+# $Id: PKGBUILD 120574 2011-04-25 17:24:21Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=evolution-data-server
-pkgver=2.32.2
+pkgver=3.0.1
pkgrel=1
pkgdesc="Central location for addressbook and calendar storage in the GNOME Desktop"
arch=('i686' 'x86_64' 'mips64el')
-depends=('libsoup>=2.32.2' 'nss>=3.12.9' 'libgnome-keyring>=2.32.0' 'heimdal>=1.3.3' 'libgweather>=2.30.3' 'libical>=0.46' 'db>=5.1.19' 'libgdata>=0.6.5')
-makedepends=('intltool' 'gtk-doc' 'gperf')
+depends=('libsoup' 'nss' 'libgnome-keyring' 'heimdal' 'libgweather' 'libical' 'db' 'libgdata')
+makedepends=('intltool' 'gperf' 'gobject-introspection')
options=('!libtool')
url="http://www.gnome.org"
license=('GPL')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('d22fcd9e6f1cee7b4b11a25ae3c3d19e6a454e4f09b983a954ff2d7640bf1c36')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('8592be94027a9848ac18670a0e86e48e857539cd2813eb345eda0ace19688dd0')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --with-openldap=yes \
- --libexecdir=/usr/lib/evolution-data-server-1.2 \
- --with-krb5=/usr --enable-gnome-keyring \
- --with-libdb=/usr
+ --libexecdir=/usr/lib/evolution-data-server \
+ --with-krb5=/usr --with-libdb=/usr
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/evolution-exchange/PKGBUILD b/extra/evolution-exchange/PKGBUILD
index ce3704d92..7d90c1ee1 100644
--- a/extra/evolution-exchange/PKGBUILD
+++ b/extra/evolution-exchange/PKGBUILD
@@ -1,20 +1,19 @@
-# $Id: PKGBUILD 109554 2011-02-10 19:19:29Z ibiru $
+# $Id: PKGBUILD 120624 2011-04-25 18:31:36Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=evolution-exchange
-pkgver=2.32.2
+pkgver=3.0.1
pkgrel=1
pkgdesc="Ximian Connector Exchange plugin for Evolution"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.ximian.com"
-depends=('evolution-data-server>=2.32.2' 'gtkhtml>=3.32.2' 'gnome-desktop>=2.32.0' 'libunique>=1.1.6')
+depends=('evolution-data-server' 'gtkhtml4' 'gnome-desktop' 'libunique3')
makedepends=('intltool' 'evolution')
options=('!libtool' '!emptydirs')
-groups=('gnome-extra')
install=evolution-exchange.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('60030eb2de042cef1d703cda7d64c3ec87fcef0bd966012e816954a96cc37d63')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('4c020f7946f534e3245806f29f48dbc9ccb98afdbc92d7bb5b14a5410668ad02')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -22,9 +21,13 @@ build() {
--libexecdir=/usr/lib/evolution --disable-static \
--with-libdb=/usr --with-krb5=/usr
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain evolution-exchange-${_majorver} ${pkgdir}/etc/gconf/schemas/*.schemas
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain evolution-exchange-3.0 ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
diff --git a/extra/evolution/PKGBUILD b/extra/evolution/PKGBUILD
index 7c2baa6de..42e98b3ca 100644
--- a/extra/evolution/PKGBUILD
+++ b/extra/evolution/PKGBUILD
@@ -1,30 +1,26 @@
-# $Id: PKGBUILD 112779 2011-03-06 18:16:38Z ibiru $
+# $Id: PKGBUILD 120599 2011-04-25 17:55:43Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=evolution
-pkgver=2.32.2
-pkgrel=4
+pkgver=3.0.1
+pkgrel=1
pkgdesc="Integrated Workgroup and Personal Information Management for Gnome"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libnotify>=0.7.1' 'gtkhtml>=3.32.2' 'evolution-data-server>=2.32.2' 'gstreamer0.10>=0.10.30' 'libpst>=0.6.41' 'libytnef>=0.1.5' 'gnome-desktop>=2.32.0' 'libcanberra>=0.26' 'gtkimageview>=1.6.4' 'libunique' 'desktop-file-utils')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool' 'networkmanager')
+depends=('gnome-desktop' 'evolution-data-server' 'gtkhtml4' 'libcanberra' 'libsm' 'gstreamer0.10' 'libunique3' 'libnotify' 'libpst' 'libytnef'
+ 'desktop-file-utils' 'hicolor-icon-theme')
+makedepends=('intltool' 'gnome-doc-utils' 'networkmanager')
optdepends=('bogofilter: possible junk filter plugin'
'spamassassin: possible junk filter plugin')
groups=('gnome-extra')
options=('!libtool' '!emptydirs')
install=evolution.install
url=http://www.gnome.org/projects/evolution/
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- evolution-2.32.1-libnotify-0.7.patch)
-sha256sums=('1831c7f5f00b4755869cf84ef3e3f79c4705a33e0659e72b6c1ffa4a59d4a4bb'
- '73746e65a3ba190ace8bd1e5fc9d52f6a67556fac0ba8727d7705ffe74e3ce0d')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('d322241c38ece00e2ee7adf0c4d0583dc811c52d5a176ef93427b9b35c04487b')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
-
- patch -Np0 -i "${srcdir}/evolution-2.32.1-libnotify-0.7.patch"
-
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib \
@@ -32,14 +28,18 @@ build() {
--enable-nss=yes \
--with-openldap=yes \
--enable-smime=yes \
- --with-krb5=/usr
+ --with-krb5=/usr \
+ --disable-image-inline
make
+ make -C plugins/tnef-attachments
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
- cd plugins/tnef-attachments
- make
- make DESTDIR="${pkgdir}" install
+ make -C plugins/tnef-attachments DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain evolution-2.32 ${pkgdir}/etc/gconf/schemas/*.schemas
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain evolution-3.0 ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
diff --git a/extra/farsight2/PKGBUILD b/extra/farsight2/PKGBUILD
index bd2685838..32004706a 100644
--- a/extra/farsight2/PKGBUILD
+++ b/extra/farsight2/PKGBUILD
@@ -1,26 +1,24 @@
-# $Id: PKGBUILD 98160 2010-11-03 23:14:07Z ibiru $
+# $Id: PKGBUILD 111877 2011-03-01 15:02:05Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: William Díaz <wdiaz@archlinux.us>
pkgname=farsight2
-pkgver=0.0.22
+pkgver=0.0.26
pkgrel=1
pkgdesc="Audio/Video conference software for Instant Messengers"
arch=('i686' 'x86_64' 'mips64el')
url="http://farsight.freedesktop.org"
license=('LGPL')
-depends=('libnice>=0.0.13' 'gstreamer0.10-base-plugins>=0.10.30' 'gstreamer0.10-python>=0.10.18' 'python2' 'pygobject>=2.26.0')
+depends=('libnice' 'gstreamer0.10-base-plugins' 'gstreamer0.10-python' 'python2' 'pygobject')
optdepends=('gstreamer0.10-good-plugins: for RTP plugin'
'gstreamer0.10-bad-plugins: for RTP plugin')
options=('!libtool' '!emptydirs')
source=(http://farsight.freedesktop.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-md5sums=('e1f540cf3ebab06c3d7db1f46b44ac88')
+md5sums=('7756d910687dd2abd455fd68e83f125c')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
sed -i -e 's#python-config#python2-config#' python/Makefile.in
- # this makefile is broken
- sed -i -e 's# # #' docs/libs/Makefile.in
./configure --prefix=/usr \
--with-package-name='Arch Linux farsight2 package' \
--with-package-origin='http://archlinux.org' \
diff --git a/extra/file-roller/PKGBUILD b/extra/file-roller/PKGBUILD
index 6977820fe..d340971a2 100644
--- a/extra/file-roller/PKGBUILD
+++ b/extra/file-roller/PKGBUILD
@@ -1,39 +1,39 @@
-# $Id: PKGBUILD 99609 2010-11-15 20:07:07Z ibiru $
+# $Id: PKGBUILD 120737 2011-04-26 09:07:12Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=file-roller
-pkgver=2.32.1
+pkgver=3.0.1
pkgrel=1
pkgdesc="Archive manipulator for GNOME2"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('desktop-file-utils' 'gconf>=2.32.0')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.1' 'pkg-config' 'nautilus>=2.32')
+depends=('desktop-file-utils' 'gtk3' 'hicolor-icon-theme' 'dconf')
+makedepends=('intltool' 'gnome-doc-utils' 'pkg-config' 'nautilus' 'libsm')
optdepends=('nautilus: nautilus shell extension'
- 'unrar: the RAR uncompression program'
- 'zip: creates PKZIP-compatible .zip files'
- 'unzip: unpacks .zip archives'
- 'p7zip: 7zip compression utility'
- 'xz: managing LZMA and XZ compressed files'
- 'arj: ARJ archiver'
- 'unace: extraction tool for the proprietary ace archive format')
+ 'unrar: the RAR uncompression program'
+ 'zip: creates PKZIP-compatible .zip files'
+ 'unzip: unpacks .zip archives'
+ 'p7zip: 7zip compression utility'
+ 'xz: managing LZMA and XZ compressed files'
+ 'arj: ARJ archiver'
+ 'unace: extraction tool for the proprietary ace archive format')
groups=('gnome-extra')
options=('!libtool' '!emptydirs')
install=file-roller.install
url="http://www.gnome.org"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('a9109d9c871c022eb0553eeedc98520bad42ba3099088c16a9f7df817f60cc92')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('805f5fb77fa8c2f982a2cee0db1b56fbc335f63a1eed34e0bac228ce8349d3ce')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/file-roller \
--localstatedir=/var --disable-static \
- --disable-scrollkeeper
+ --disable-scrollkeeper --disable-schemas-compile
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain file-roller ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/file-roller/file-roller.install b/extra/file-roller/file-roller.install
index e39620af7..10a148241 100644
--- a/extra/file-roller/file-roller.install
+++ b/extra/file-roller/file-roller.install
@@ -1,24 +1,22 @@
pkgname=file-roller
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+ fi
}
post_upgrade() {
- post_install $1
+ post_install $1
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
-}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install $1
}
diff --git a/extra/folks/PKGBUILD b/extra/folks/PKGBUILD
index b5a22e822..81036be00 100644
--- a/extra/folks/PKGBUILD
+++ b/extra/folks/PKGBUILD
@@ -1,22 +1,26 @@
-# $Id: PKGBUILD 97061 2010-10-26 09:12:29Z ibiru $
+# $Id: PKGBUILD 120851 2011-04-26 21:20:48Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=folks
-pkgver=0.2.1
+pkgver=0.4.3
pkgrel=1
pkgdesc="Library to aggregates people into metacontacts "
arch=(i686 x86_64 'mips64el')
url="http://telepathy.freedesktop.org/wiki/Folks"
license=('LGPL2.1')
-depends=('telepathy-glib>=0.12.1' 'libgee>=0.6.0' 'libxml2>=2.7.7')
-makedepends=('gobject-introspection' 'vala')
+depends=('telepathy-glib' 'libgee' 'libxml2')
+makedepends=('gobject-introspection' 'vala' 'intltool')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.2/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('f8eeeb6a6974416d4db1ab6b18187173fb6ff4ec7830bece379dfba9b25f2a29')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.4/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('e5a5bbe1524130ff5b6400726db3e12299b12ffefa108bc89169509f343d925e')
build() {
cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr
make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
}
diff --git a/extra/gcalctool/PKGBUILD b/extra/gcalctool/PKGBUILD
index 4b65d27ed..c397966ce 100644
--- a/extra/gcalctool/PKGBUILD
+++ b/extra/gcalctool/PKGBUILD
@@ -1,25 +1,29 @@
-# $Id: PKGBUILD 100386 2010-11-23 05:21:28Z heftig $
+# $Id: PKGBUILD 120856 2011-04-26 21:28:12Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gcalctool
-pkgver=5.32.2
+pkgver=6.0.1
pkgrel=1
pkgdesc="GNOME Scientific calculator"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('gtk2>=2.22.0' 'dconf')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.1')
+depends=('gtk3' 'dconf')
+makedepends=('intltool' 'gnome-doc-utils')
groups=('gnome-extra')
options=(!emptydirs)
url="http://www.gnome.org"
install=gcalctool.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/5.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('b281cc545f27b37a0fd120366b1be517574d9f505b59dfc34f9860007df0b788')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('be11a7c36a1ec20bd0b190e572aefedea13fb2cb8479b06673e182c7461cadfe')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc --disable-schemas-compile \
--localstatedir=/var --disable-scrollkeeper
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gcin/PKGBUILD b/extra/gcin/PKGBUILD
index b1698d4ea..a54e8e427 100644
--- a/extra/gcin/PKGBUILD
+++ b/extra/gcin/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 116389 2011-03-23 02:55:06Z bisson $
+# $Id: PKGBUILD 121293 2011-04-30 12:04:42Z bisson $
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
# Contributor: Andreas Radke <andyrtr@archlinux.org>
# Contributor: damir <damir@archlinux.org>
-# Maintainer: Gaetan Bisson <bisson@archlinux.org>
pkgname=gcin
-pkgver=1.6.0
+pkgver=1.6.1
pkgrel=1
pkgdesc='Input method server supporting various input methods'
arch=('i686' 'x86_64' 'mips64el')
@@ -16,7 +16,7 @@ optdepends=('qt: support for qt4 input method')
source=("${url}download/${pkgname}-${pkgver}.tar.bz2"
'fix_x86_64_libdir.patch'
'fix_qt4_paths.patch')
-sha1sums=('72d05f85e0cd410420eef539e034167172b8c34c'
+sha1sums=('acbfffbaf7eccd32ef251493e8c03dd126023b51'
'e5c113e50420bf4750f5547641df6ec4b7e437e0'
'16d004424caed541d5baaa6874f708b1c138ab08')
@@ -24,8 +24,8 @@ install=install
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -p1 -i "${srcdir}/fix_x86_64_libdir.patch"
- patch -p1 -i "${srcdir}/fix_qt4_paths.patch"
+ patch -p1 -i ../fix_x86_64_libdir.patch
+ patch -p1 -i ../fix_qt4_paths.patch
./configure --prefix=/usr --use_i18n=Y
make
}
diff --git a/extra/gconf-editor/PKGBUILD b/extra/gconf-editor/PKGBUILD
index dd8772903..d47432967 100644
--- a/extra/gconf-editor/PKGBUILD
+++ b/extra/gconf-editor/PKGBUILD
@@ -1,26 +1,30 @@
-# $Id: PKGBUILD 91657 2010-09-27 15:41:20Z ibiru $
+# $Id: PKGBUILD 117817 2011-04-04 18:08:43Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gconf-editor
-pkgver=2.32.0
+pkgver=3.0.0
pkgrel=1
pkgdesc="Graphical gconf registry editor"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('gconf>=2.31.91' 'hicolor-icon-theme')
-makedepends=('pkgconfig' 'intltool' 'gnome-doc-utils>=0.20.0')
+depends=('gconf' 'hicolor-icon-theme')
+makedepends=('pkgconfig' 'intltool' 'gnome-doc-utils')
url="http://www.gnome.org"
groups=('gnome-extra')
options=(!emptydirs)
install=gconf-editor.install
-source=(http://ftp.gnome.org/pub/gnome/sources/gconf-editor/2.32/gconf-editor-${pkgver}.tar.bz2)
-sha256sums=('c6d1d35ce5d136121ad76efe1c4033425bb2ad3800e711bd1bca9ce869c12a1f')
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('184e17416c2dd927ccb3a9b435d86fbe4b654316b91a6db724a3fd447a9fae60')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-scrollkeeper
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/gconf/PKGBUILD b/extra/gconf/PKGBUILD
index e0a731afe..6aa7c7c4f 100644
--- a/extra/gconf/PKGBUILD
+++ b/extra/gconf/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 91729 2010-09-27 18:54:15Z ibiru $
+# $Id: PKGBUILD 120561 2011-04-25 17:06:15Z ibiru $
# Maintainer: Jan de Groot <jan@archlinux.org>
pkgname=gconf
-pkgver=2.32.0
+pkgver=2.32.3
pkgrel=1
pkgdesc="A configuration database system"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('orbit2>=2.14.18' 'gtk2>=2.22.0' 'libxml2>=2.7.7' 'polkit>=0.98' 'libldap>=2.4.23' 'dbus-glib>=0.86')
+depends=('orbit2' 'libxml2' 'polkit' 'libldap' 'dbus-glib' 'gtk3')
makedepends=('pkgconfig' 'intltool' 'gtk-doc' 'gobject-introspection')
options=('!libtool')
install=gconf.install
@@ -17,7 +17,7 @@ source=(http://ftp.gnome.org/pub/gnome/sources/GConf/2.32/GConf-${pkgver}.tar.bz
gconfpkg
gconf-reload.patch
01_xml-gettext-domain.patch)
-sha256sums=('54dd1dd7f49928a9cc42574bef6ef0481753770fc19986dc2004bbb7fac977a0'
+sha256sums=('63e249d16b1b50820e9c32f1d85ff2c94498afdd45544fa5f37b8e1d084c5bae'
'ee6b6e6f4975dad13a8c45f1c1f0547a99373bdecdcd6604bfc12965c328a028'
'bf1928718caa5df2b9e54a13cfd0f15a8fe0e09e86b84385ce023616a114e898'
'567b78d8b4b4bbcb77c5f134d57bc503c34867fcc6341c0b01716bcaa4a21694'
@@ -30,13 +30,21 @@ build() {
# http://bugzilla.gnome.org/show_bug.cgi?id=568845
patch -Np1 -i "${srcdir}/01_xml-gettext-domain.patch"
+ # Python2 fix
+ sed -i '1s|#!/usr/bin/env python$|&2|' gsettings/gsettings-schema-convert
+
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --libexecdir=/usr/lib/GConf \
- --disable-static --enable-defaults-service
+ --disable-static --enable-defaults-service --with-gtk=3.0
+
make pkglibdir=/usr/lib/GConf
+}
+
+package() {
+ cd "${srcdir}/GConf-${pkgver}"
make DESTDIR="${pkgdir}" install
+
install -m755 -d "${pkgdir}/etc/gconf/gconf.xml.system"
install -m755 "${srcdir}/gconf-merge-schema" "${pkgdir}/usr/bin/"
- install -d -m755 "${pkgdir}/usr/sbin"
- install -m755 "${srcdir}/gconfpkg" "${pkgdir}/usr/sbin/"
+ install -Dm755 "${srcdir}/gconfpkg" "${pkgdir}/usr/sbin/gconfpkg"
}
diff --git a/extra/gdk-pixbuf2/PKGBUILD b/extra/gdk-pixbuf2/PKGBUILD
index e1ab11dfe..11ab4b9d2 100644
--- a/extra/gdk-pixbuf2/PKGBUILD
+++ b/extra/gdk-pixbuf2/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 114338 2011-03-12 18:07:51Z ibiru $
+# $Id: PKGBUILD 117317 2011-03-31 00:18:19Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=gdk-pixbuf2
-pkgver=2.22.1
-pkgrel=2
+pkgver=2.23.3
+pkgrel=1
pkgdesc="An image loading library for gtk2"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gtk.org/"
license=('GPL2')
-depends=('glib2>=2.26.0' 'libpng>=1.4.3' 'libtiff>=3.9.4' 'libjpeg' 'libx11')
+depends=('glib2>=2.28.1' 'libpng' 'libtiff' 'libjpeg' 'libx11')
makedepends=('gtk-doc' 'gobject-introspection')
options=('!libtool')
install=gdk-pixbuf2.install
-source=(http://download.gnome.org/sources/gdk-pixbuf/2.22/gdk-pixbuf-${pkgver}.tar.bz2)
-sha256sums=('6ce87eda24af9362307b2593c154d0b660f4e26d0abf2e71d46d0ddd55fd953d')
+source=(http://download.gnome.org/sources/gdk-pixbuf/2.23/gdk-pixbuf-${pkgver}.tar.bz2)
+sha256sums=('9faba780151c02e13cb2029d512c975e9c41b98cd72de6d2cc50e4af10a5e76a')
build() {
cd "${srcdir}/gdk-pixbuf-${pkgver}"
diff --git a/extra/gdl/PKGBUILD b/extra/gdl/PKGBUILD
index 3ee272a4f..608c11bd0 100644
--- a/extra/gdl/PKGBUILD
+++ b/extra/gdl/PKGBUILD
@@ -1,23 +1,27 @@
-# $Id: PKGBUILD 92053 2010-09-28 17:35:04Z ibiru $
+# $Id: PKGBUILD 120644 2011-04-25 20:32:25Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gdl
-pkgver=2.30.1
+pkgver=3.0.1
pkgrel=1
-pkgdesc="Gnome Devtool Libraries"
-arch=(i686 x86_64 'mips64el')
+pkgdesc="GNOME Docking Library"
+arch=(i686 x86_64 mips64el)
license=('GPL')
url="http://www.gnome.org/"
-depends=('gtk2>=2.22.0')
-makedepends=('pkgconfig' 'intltool')
+depends=('gtk3')
+makedepends=('pkgconfig' 'intltool' 'gobject-introspection')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/GNOME/sources/gdl/2.30/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('027dd1cd0191996fe1a0dc902da857698cc79564cb057ba13b09097e56e30cc1')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('e0c3d855c7f8b115ec10f34db1291cb09db48a24281c3f9242d8348b189d5b09')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gdm/2.91_fix_external_program_directories.patch b/extra/gdm/2.91_fix_external_program_directories.patch
new file mode 100644
index 000000000..912b5cdae
--- /dev/null
+++ b/extra/gdm/2.91_fix_external_program_directories.patch
@@ -0,0 +1,48 @@
+diff -Nur gdm-2.91.91.orig/daemon/gdm-server.c gdm-2.91.91/daemon/gdm-server.c
+--- gdm-2.91.91.orig/daemon/gdm-server.c 2011-02-17 19:27:53.000000000 -0800
++++ gdm-2.91.91/daemon/gdm-server.c 2011-02-27 16:56:51.283347074 -0800
+@@ -131,7 +131,7 @@
+ g_return_val_if_fail (GDM_IS_SERVER (server), NULL);
+
+ error = NULL;
+- command = g_strdup_printf (LIBEXECDIR "/ck-get-x11-display-device --display %s",
++ command = g_strdup_printf ("/usr/lib/ConsoleKit/ck-get-x11-display-device --display %s",
+ server->priv->display_name);
+
+ g_debug ("GdmServer: Running helper %s", command);
+diff -Nur gdm-2.91.91.orig/data/greeter-autostart/gnome-settings-daemon.desktop.in.in gdm-2.91.91/data/greeter-autostart/gnome-settings-daemon.desktop.in.in
+--- gdm-2.91.91.orig/data/greeter-autostart/gnome-settings-daemon.desktop.in.in 2011-02-17 19:27:53.000000000 -0800
++++ gdm-2.91.91/data/greeter-autostart/gnome-settings-daemon.desktop.in.in 2011-02-26 08:43:28.700009251 -0800
+@@ -1,8 +1,8 @@
+ [Desktop Entry]
+ Type=Application
+ _Name=GNOME Settings Daemon
+-TryExec=@LIBEXECDIR@/gnome-settings-daemon
+-Exec=@LIBEXECDIR@/gnome-settings-daemon
++TryExec=/usr/bin/gnome-settings-daemon
++Exec=/usr/bin/gnome-settings-daemon
+ OnlyShowIn=GNOME;
+ X-GNOME-Autostart-Phase=Initialization
+ X-GNOME-Autostart-Notify=true
+diff -Nur gdm-2.91.91.orig/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in gdm-2.91.91/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in
+--- gdm-2.91.91.orig/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in 2011-02-17 19:27:53.000000000 -0800
++++ gdm-2.91.91/data/greeter-autostart/polkit-gnome-authentication-agent-1.desktop.in.in 2011-02-26 08:44:06.810009153 -0800
+@@ -1,5 +1,5 @@
+ [Desktop Entry]
+ Type=Application
+ _Name=PolicyKit Authentication Agent
+-Exec=@LIBEXECDIR@/polkit-gnome-authentication-agent-1
++Exec=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
+ OnlyShowIn=GNOME;
+diff -Nur gdm-2.91.91.orig/gui/simple-chooser/gdm-chooser-session.c gdm-2.91.91/gui/simple-chooser/gdm-chooser-session.c
+--- gdm-2.91.91.orig/gui/simple-chooser/gdm-chooser-session.c 2011-02-17 19:27:53.000000000 -0800
++++ gdm-2.91.91/gui/simple-chooser/gdm-chooser-session.c 2011-02-26 08:45:01.946675918 -0800
+@@ -131,7 +131,7 @@
+ ret = FALSE;
+
+ error = NULL;
+- g_spawn_command_line_async (LIBEXECDIR "/gnome-settings-daemon", &error);
++ g_spawn_command_line_async ("/usr/bin/gnome-settings-daemon", &error);
+ if (error != NULL) {
+ g_warning ("Error starting settings daemon: %s", error->message);
+ g_error_free (error);
diff --git a/extra/gdm/PKGBUILD b/extra/gdm/PKGBUILD
index 2cbc2bf1c..bbb3b7622 100644
--- a/extra/gdm/PKGBUILD
+++ b/extra/gdm/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 117177 2011-03-29 06:49:52Z ibiru $
+# $Id: PKGBUILD 119944 2011-04-17 09:10:01Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gdm
-pkgver=2.32.1
-pkgrel=1
+pkgver=3.0.0
+pkgrel=3
pkgdesc="Gnome Display Manager (a reimplementation of xdm)"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
@@ -10,42 +10,43 @@ url="http://www.gnome.org"
backup=('etc/pam.d/gdm' 'etc/pam.d/gdm-autologin' 'etc/gdm/custom.conf')
groups=('gnome-extra')
options=('!libtool')
-depends=('libcanberra>=0.26' 'libxklavier>=5.0' 'tcp_wrappers' 'gnome-session>=2.32.1' 'upower>=0.9.7' 'consolekit>=0.4.1-4')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.1' 'xorg-server' 'gnome-panel>=2.32.0')
-optdepends=('gnome-panel: needed for user switch applet')
+depends=('libcanberra' 'libxklavier' 'tcp_wrappers' 'gnome-session' 'upower' 'accountsservice' 'consolekit')
+makedepends=('intltool' 'gnome-doc-utils' 'xorg-server')
conflicts=('fast-user-switch-applet')
replaces=('fast-user-switch-applet')
install=gdm.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- 04_fix_external_program_directories.patch
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
+ 2.91_fix_external_program_directories.patch
gdm-vt-allocation-hack.patch
- 0001-port-to-libpanel-applet-3.0.patch
- correctly-give-focus-to-user-chooser.patch
gdm.pam
gdm-autologin.pam
- gdm)
-sha256sums=('7ba9cb2a8efb9856994467b14e4837a281fcf6d9dc9a267ea38a9aae1ec55abc'
- 'cb585c39c6671387b5a25f21a99c97e3a20eaf4188fea1b62871681a1ebf8bff'
+ gdm
+ fix_crasher_with_gtk307.patch)
+sha256sums=('2d6443912272c0aa339a06b58d797cc11ce6b0854dadfcc027408f546da7aeff'
+ '92c5eb913b9556cffe9b5bb89e5c3435703e929addfb98145442f58af5d532c1'
'3c8b588d4af08d94dc93bcd5e4c2a983c3f4fbbbe40833bceac2a1df4f1e8215'
- '41ca4b2408d61776ab42c50834374a90664d43d33ad7034c7c52862d9bf3234a'
- 'ab6d9739c0cc3631d077a897291d6a38fea1c713a3647d008e2635f48c503cb4'
'f1dfa4d88288d4b0a631a68a51b46c2da537bee8fe5a99f9f288c8ff75a50b19'
'3daff680ff6b7ea56f84f40843e46e72477c81e9e405028203c942af04d07ae5'
- '272c08d8e8b50bf424d0705ac864d4c18c47ec4f6893b1af732c2efbc86c9550')
+ '272c08d8e8b50bf424d0705ac864d4c18c47ec4f6893b1af732c2efbc86c9550'
+ '6d08951919dcb1f928dd67c0b5a5c209b32464c2374ee7d2369ed8e914d541c9')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/04_fix_external_program_directories.patch"
+ patch -Np1 -i "${srcdir}/2.91_fix_external_program_directories.patch"
patch -Np1 -i "${srcdir}/gdm-vt-allocation-hack.patch"
- patch -Np1 -i "${srcdir}/0001-port-to-libpanel-applet-3.0.patch"
- patch -Np1 -i "${srcdir}/correctly-give-focus-to-user-chooser.patch"
- autoreconf -fi
+
+ #https://bugzilla.gnome.org/show_bug.cgi?id=646498
+ patch -Np1 -i "${srcdir}/fix_crasher_with_gtk307.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/gdm --localstatedir=/var --disable-static \
--with-at-spi-registryd-directory=/usr/lib/at-spi \
--disable-scrollkeeper
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gdm ${pkgdir}/etc/gconf/schemas/*.schemas
@@ -59,4 +60,5 @@ build() {
rmdir "${pkgdir}/var/gdm"
chmod 1770 "${pkgdir}/var/log/gdm"
+ rm -rf "${pkgdir}/var/run"
}
diff --git a/extra/gdm/fix_crasher_with_gtk307.patch b/extra/gdm/fix_crasher_with_gtk307.patch
new file mode 100644
index 000000000..3b8379ea3
--- /dev/null
+++ b/extra/gdm/fix_crasher_with_gtk307.patch
@@ -0,0 +1,104 @@
+From 045c319f2655fc45c24951479eb9cd1e59792cef Mon Sep 17 00:00:00 2001
+From: Benjamin Otte <otte@redhat.com>
+Date: Sat, 2 Apr 2011 04:10:09 +0200
+Subject: [PATCH] simple-greeter: Don't request an invalid size
+
+GTK widgets must at all times report a size they can handle. So it is
+not allowed to return 0 when not realized, because then size allocations
+break when GTK uses this size for its widget.
+In this case, GTK uses the pre-realize size to determine the size it
+should request when creating the greeter window - chicken and egg so to
+say.
+
+This patch just uses the default monitor (I guess the root window's
+monitor is the default monitor?) for determining the login window size.
+
+One thing this patch doesn't do is add a call to gtk_widget_queue_resize()
+from the realize callback or from monitor-changing signals, though
+that's probably technically necessary.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=646498
+---
+ gui/simple-greeter/gdm-greeter-login-window.c | 28 +++++++++----------------
+ 1 files changed, 10 insertions(+), 18 deletions(-)
+
+diff --git a/gui/simple-greeter/gdm-greeter-login-window.c b/gui/simple-greeter/gdm-greeter-login-window.c
+index abd6707..3ec9a09 100644
+--- a/gui/simple-greeter/gdm-greeter-login-window.c
++++ b/gui/simple-greeter/gdm-greeter-login-window.c
+@@ -1413,25 +1413,22 @@ gdm_greeter_login_window_get_preferred_width (GtkWidget *widget,
+ {
+ int monitor;
+ GdkScreen *screen;
++ GdkWindow *window;
+ GdkRectangle area;
+ GtkAllocation widget_allocation;
+ int min_size;
+ int nat_size;
+
+- min_size = 0;
+- nat_size = 0;
+-
+- if (!gtk_widget_get_realized (widget)) {
+- goto out;
+- }
+-
+ gtk_widget_get_preferred_width (gtk_bin_get_child (GTK_BIN (widget)),
+ &min_size,
+ &nat_size);
+
+ /* Make width be at least 33% screen width */
+ screen = gtk_widget_get_screen (widget);
+- monitor = gdk_screen_get_monitor_at_window (screen, gtk_widget_get_window (widget));
++ window = gtk_widget_get_window (widget);
++ if (window == NULL)
++ window = gdk_screen_get_root_window (screen);
++ monitor = gdk_screen_get_monitor_at_window (screen, window);
+ gdk_screen_get_monitor_geometry (screen, monitor, &area);
+ min_size = MAX (min_size, .33 * area.width);
+ nat_size = MAX (nat_size, .33 * area.width);
+@@ -1442,7 +1439,6 @@ gdm_greeter_login_window_get_preferred_width (GtkWidget *widget,
+ min_size = MAX (min_size, widget_allocation.width);
+ nat_size = MAX (nat_size, widget_allocation.width);
+
+- out:
+ if (minimum_size)
+ *minimum_size = min_size;
+ if (natural_size)
+@@ -1456,29 +1452,25 @@ gdm_greeter_login_window_get_preferred_height (GtkWidget *widget,
+ {
+ int monitor;
+ GdkScreen *screen;
++ GdkWindow *window;
+ GdkRectangle area;
+ int min_size;
+ int nat_size;
+
+- min_size = 0;
+- nat_size = 0;
+-
+- if (!gtk_widget_get_realized (widget)) {
+- goto out;
+- }
+-
+ gtk_widget_get_preferred_height (gtk_bin_get_child (GTK_BIN (widget)),
+ &min_size,
+ &nat_size);
+
+ /* Make height be at most 80% of screen height */
+ screen = gtk_widget_get_screen (widget);
+- monitor = gdk_screen_get_monitor_at_window (screen, gtk_widget_get_window (widget));
++ window = gtk_widget_get_window (widget);
++ if (window == NULL)
++ window = gdk_screen_get_root_window (screen);
++ monitor = gdk_screen_get_monitor_at_window (screen, window);
+ gdk_screen_get_monitor_geometry (screen, monitor, &area);
+ min_size = MIN (min_size, .8 * area.height);
+ nat_size = MIN (nat_size, .8 * area.height);
+
+- out:
+ if (minimum_size)
+ *minimum_size = min_size;
+ if (natural_size)
+--
+1.7.4 \ No newline at end of file
diff --git a/extra/gdm/gdm.install b/extra/gdm/gdm.install
index c2b5e375e..6cd981d77 100644
--- a/extra/gdm/gdm.install
+++ b/extra/gdm/gdm.install
@@ -2,31 +2,14 @@ pkgname=gdm
post_install() {
getent group gdm >/dev/null 2>&1 || groupadd -g 120 gdm
- if getent passwd gdm > /dev/null 2>&1; then
- usr/sbin/usermod -d /var/lib/gdm -c 'Gnome Display Manager' -s /sbin/nologin gdm > /dev/null 2>&1
- else
- usr/sbin/useradd -c 'Gnome Display Manager' -u 120 -g gdm -d /var/lib/gdm -s /sbin/nologin gdm
- fi
+ getent passwd gdm > /dev/null 2>&1 || usr/sbin/useradd -c 'Gnome Display Manager' -u 120 -g gdm -d /var/lib/gdm -s /sbin/nologin gdm
passwd -l gdm > /dev/null
- chown gdm:gdm /var/lib/gdm > /dev/null
- chown -R gdm:gdm /var/lib/gdm/.gconf.mandatory
+ chown -R gdm:gdm /var/lib/gdm > /dev/null
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
gconfpkg --install ${pkgname}
}
-pre_upgrade() {
- if [ -f opt/gnome/etc/gdm/custom.conf ]; then
- mkdir -p etc/gdm
- sed -e 's|/opt/gnome/libexec|usr/lib/gdm|g' \
- -e 's|/opt/gnome/etc|/etc|g' \
- -e 's|/opt/gnome/|/usr/|g' \
- opt/gnome/etc/gdm/custom.conf > etc/gdm/custom.conf
- mv opt/gnome/etc/gdm/custom.conf opt/gnome/etc/gdm/custom.conf.pacsave
- fi
- pre_remove
-}
-
pre_remove() {
if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
gconfpkg --uninstall ${pkgname}
diff --git a/extra/gedit/PKGBUILD b/extra/gedit/PKGBUILD
index 57d6f56f5..42b189676 100644
--- a/extra/gedit/PKGBUILD
+++ b/extra/gedit/PKGBUILD
@@ -1,29 +1,33 @@
-# $Id: PKGBUILD 101119 2010-11-28 10:04:15Z ibiru $
+# $Id: PKGBUILD 120727 2011-04-26 07:34:29Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gedit
-pkgver=2.30.4
-pkgrel=3
+pkgver=3.0.2
+pkgrel=1
pkgdesc="A text editor for GNOME"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('gconf>=2.32.0' 'pygtksourceview2>=2.10.1' 'enchant>=1.5.0' 'desktop-file-utils' 'iso-codes>=3.10.1' 'libsm')
-makedepends=('pkgconfig' 'gnome-doc-utils>=0.20.2' 'intltool')
+depends=('gtksourceview3' 'gsettings-desktop-schemas' 'libpeas' 'enchant'
+ 'iso-codes' 'libsm' 'desktop-file-utils' 'pygobject')
+makedepends=('gnome-doc-utils' 'intltool')
groups=('gnome-extra')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org"
install=gedit.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('a561fe3dd1d199baede1bd07c4ee65f06fc7c494dd4d3327117f04149a608e3c')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('a91fcfe321d8d5d8fe5c6c11f3b05389febe396efa2172b5ea6cb79d2f16b2db')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- PYTHON=python2 ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
- --libexecdir=/usr/lib --disable-scrollkeeper
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --sysconfdir=/etc --localstatedir=/var \
+ --libexecdir=/usr/lib --disable-scrollkeeper \
+ --disable-updater --disable-schemas-compile \
+ --enable-python
make
- make -j1 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gedit ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package(){
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gedit/gedit.install b/extra/gedit/gedit.install
index ed7a67459..9d88a1341 100644
--- a/extra/gedit/gedit.install
+++ b/extra/gedit/gedit.install
@@ -1,22 +1,18 @@
-pkgname=gedit
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
- update-desktop-database -q
+ glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
}
pre_upgrade() {
- pre_remove $1
+ if [ -f usr/share/gconf/schemas/gedit.schemas ]; then
+ usr/sbin/gconfpkg --uninstall gedit
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install $1
}
post_remove() {
- update-desktop-database -q
+ post_install $1
}
diff --git a/extra/gimp-devel/PKGBUILD b/extra/gimp-devel/PKGBUILD
index f99920a0f..077e66f4f 100644
--- a/extra/gimp-devel/PKGBUILD
+++ b/extra/gimp-devel/PKGBUILD
@@ -1,36 +1,37 @@
-# $Id: PKGBUILD 108258 2011-01-30 15:58:48Z ibiru $
-# Maintainer: Eric Belanger <eric@archlinux.org>
+# $Id: PKGBUILD 119839 2011-04-15 18:55:33Z eric $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=gimp-devel
-pkgver=2.7.1
-pkgrel=4
+pkgver=2.7.2
+pkgrel=1
pkgdesc="GNU Image Manipulation Program (Development Version)"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gimp.org/"
license=('GPL')
depends=('gtk2' 'lcms' 'libxpm' 'libwmf' 'libxmu' 'librsvg' 'libmng' 'dbus-glib' \
- 'libexif' 'pygtk' 'desktop-file-utils' 'gegl')
+ 'libexif' 'pygtk' 'desktop-file-utils' 'gegl' 'hicolor-icon-theme')
makedepends=('gutenprint' 'intltool' 'libwebkit' 'gnome-python' 'poppler-glib' \
'pkg-config' 'alsa-lib' 'iso-codes')
optdepends=('gutenprint: for sophisticated printing only as gimp has built-in cups print support'
'libwebkit: for the help browser'
'poppler-glib: for pdf support'
- 'hal: for Linux input event controller module'
'alsa-lib: for MIDI event controller module')
options=('!libtool' '!makeflags')
conflicts=('gimp')
provides=("gimp=${pkgver}")
install=gimp-devel.install
source=(ftp://ftp.gimp.org/pub/gimp/v${pkgver%.*}/gimp-${pkgver}.tar.bz2 linux.gpl)
-md5sums=('4932a0a1645ecd5b23ea6155ddda013d' 'bb27bc214261d36484093e857f015f38')
-sha1sums=('3dcfc08ddccbdf541449e4ea6be252b449f6d872' '110ce9798173b19a662d086ed7b882b4729f06cf')
+md5sums=('6996138ab70b0bfebfe9f563284e5f78'
+ 'bb27bc214261d36484093e857f015f38')
+sha1sums=('4690420961d110f99448c32fe61aae7d4869a863'
+ '110ce9798173b19a662d086ed7b882b4729f06cf')
build() {
cd "${srcdir}/gimp-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--enable-mp --enable-gimp-console --enable-gimp-remote \
--enable-python --with-gif-compression=lzw \
- --without-aa
+ --without-aa --without-hal
make
}
diff --git a/extra/gimp/PKGBUILD b/extra/gimp/PKGBUILD
index 361dbb2cc..04637f310 100644
--- a/extra/gimp/PKGBUILD
+++ b/extra/gimp/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 109732 2011-02-12 08:33:51Z eric $
+# $Id: PKGBUILD 119782 2011-04-15 08:31:34Z jgc $
# Maintainer: tobias <tobias@archlinux.org>
pkgname=gimp
pkgver=2.6.11
-pkgrel=3
+pkgrel=5
pkgdesc="GNU Image Manipulation Program"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gimp.org/"
@@ -15,21 +15,22 @@ makedepends=('gutenprint' 'intltool' 'libwebkit' 'gnome-python' 'poppler-glib' \
optdepends=('gutenprint: for sophisticated printing only as gimp has built-in cups print support'
'libwebkit: for the help browser'
'poppler-glib: for pdf support'
- 'hal: for Linux input event controller module'
'alsa-lib: for MIDI event controller module')
options=('!libtool' '!makeflags')
conflicts=('gimp-devel')
install=gimp.install
source=(ftp://ftp.gimp.org/pub/gimp/v${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2 linux.gpl)
-md5sums=('bb2939fe13e54fc7255cef5d097bb5dd' 'bb27bc214261d36484093e857f015f38')
-sha1sums=('2f9d596e727bdbf304fa78257c1731d9faf3934c' '110ce9798173b19a662d086ed7b882b4729f06cf')
+md5sums=('bb2939fe13e54fc7255cef5d097bb5dd'
+ 'bb27bc214261d36484093e857f015f38')
+sha1sums=('2f9d596e727bdbf304fa78257c1731d9faf3934c'
+ '110ce9798173b19a662d086ed7b882b4729f06cf')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--enable-mp --enable-gimp-console --enable-gimp-remote \
--enable-python --with-gif-compression=lzw \
- --without-aa
+ --without-aa --without-hal
make
}
diff --git a/extra/git/PKGBUILD b/extra/git/PKGBUILD
index d131a1842..cfd3a006f 100644
--- a/extra/git/PKGBUILD
+++ b/extra/git/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 118450 2011-04-07 01:40:08Z dan $
+# $Id: PKGBUILD 120940 2011-04-27 15:41:06Z dan $
# Maintainer: Dan McGee <dan@archlinux.org>
pkgname=git
-pkgver=1.7.4.4
+pkgver=1.7.5
pkgrel=1
pkgdesc="the fast distributed version control system"
arch=(i686 x86_64 'mips64el')
@@ -13,7 +13,9 @@ makedepends=('python2')
optdepends=('tk: gitk and git gui'
'perl-libwww: git svn'
'perl-term-readkey: git svn'
+ 'perl-mime-tools: git send-email'
'perl-net-smtp-ssl: git send-email TLS support'
+ 'perl-authen-sasl: git send-email TLS support'
'python2: various helper scripts'
'subversion: git svn'
'cvsps: git cvsimport')
@@ -69,11 +71,11 @@ package() {
install -D -m644 $srcdir/git-daemon.conf $pkgdir/etc/conf.d/git-daemon.conf
}
-md5sums=('1313f71d62fa100b32fa313769a85f2a'
- '5812f4fca4afc6c81e06f485111ec8ab'
+md5sums=('7f0bc26a6e87d251c9b09fa05a186ed3'
+ '94cf18c292f0db30046092ef306bf57c'
'8e2648910fd5dd4f1c41d3c7fa9e9156'
'2e42bf97779a1c6411d89043334c9e78')
-sha256sums=('5c3e738b01a4021ade56abebfdcce8825d2a50868e5c7befb65102f497387aa0'
- 'fa2ce1fd34a81dac1d8fca466dcd823ce1ed800ec5cb98d8bb2b0967deed19d0'
+sha256sums=('7d293c5c0e544188d9b9ea94036cc56b39fbe045ead6f8ced00ad02a8854142d'
+ 'ced2319cbb48a4aa10bc5b1e1167a5de3b694eb9d256e68d978dbe86d997bee9'
'2e0a50bdaf8f387a499895e1c204bff78244eaa72b78187c8a84ef40c0b82598'
'e8bfe29d8393d2b87517c4dd56ea834b213aa00bf3d7fcde4ead3457cadbbc68')
diff --git a/extra/gjs/PKGBUILD b/extra/gjs/PKGBUILD
new file mode 100644
index 000000000..34fd492d4
--- /dev/null
+++ b/extra/gjs/PKGBUILD
@@ -0,0 +1,25 @@
+# $Id: PKGBUILD 117650 2011-04-04 14:59:48Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+pkgname=gjs
+pkgver=0.7.14
+pkgrel=1
+pkgdesc="Javascript Bindings for GNOME"
+arch=('i686' 'x86_64')
+url="http://live.gnome.org/Gjs"
+license=('GPL')
+depends=('gobject-introspection' 'xulrunner')
+options=('!libtool')
+source=(http://download.gnome.org/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('3af6f449a505c419d4a0e5938737da8d1b9b09b33710cc1ac1edee2eaa86e348')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ sed -i 's|python|python2|' scripts/make-tests
+ ./configure --prefix=/usr --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/glade/PKGBUILD b/extra/glade/PKGBUILD
index 7c934386d..56daf1721 100644
--- a/extra/glade/PKGBUILD
+++ b/extra/glade/PKGBUILD
@@ -1,26 +1,29 @@
-# $Id: PKGBUILD 44620 2009-07-02 21:38:57Z jgc $
+# $Id: PKGBUILD 118419 2011-04-06 17:54:27Z ibiru $
# Maintainer: Douglas Soares de Andrade <douglas@archlinux.org>
pkgname=glade
-pkgver=3.6.7
-pkgrel=1
-pkgdesc="user interface builder for GTK+ and GNOME."
-arch=(i686 x86_64 'mips64el')
+pkgver=3.10.0
+pkgrel=2
+pkgdesc="User interface builder for GTK+ and GNOME."
+arch=(i686 x86_64 mips64el)
license=('GPL' 'LGPL')
-depends=('gtk2>=2.16.2' 'libxml2>=2.6.32' 'desktop-file-utils')
-makedepends=('intltool' 'pkgconfig' 'python>=2.6' 'libgnomeui>=2.24.1' 'gtk-doc')
-optdepends=('libgnomeui: GNOME UI widgets'
- 'python: Python widgets support')
+depends=('gtk3' 'libxml2' 'desktop-file-utils' 'hicolor-icon-theme')
+makedepends=('intltool' 'python2' 'gtk-doc' 'gobject-introspection' 'pygobject-devel')
+optdepends=('python2: Python widgets support')
options=('!libtool')
url="http://glade.gnome.org/"
install=glade.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/glade3/3.6/glade3-${pkgver}.tar.bz2)
-md5sums=('0fbe06e4babb2adeaf9725577ff43395')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('7e6a1423f1697d8b40618d0b01f0ebff572ccb80f5818a36af0971c5d1d94253')
build() {
- cd "${srcdir}/glade3-${pkgver}"
- ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ cd "${srcdir}/$pkgname-${pkgver}"
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/$pkgname-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/glib-networking/PKGBUILD b/extra/glib-networking/PKGBUILD
new file mode 100644
index 000000000..356a98037
--- /dev/null
+++ b/extra/glib-networking/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 121199 2011-04-29 10:51:43Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=glib-networking
+pkgver=2.28.6.1
+pkgrel=2
+pkgdesc="Network-related giomodules for glib"
+arch=('i686' 'x86_64')
+url="http://www.gtk.org/"
+license=('GPL2')
+depends=('glib2' 'libproxy' 'gnutls' 'ca-certificates' 'gsettings-desktop-schemas')
+makedepends=('intltool')
+options=('!libtool')
+install=glib-networking.install
+source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*.*}/$pkgname-${pkgver}.tar.bz2)
+sha256sums=('50f9aac36ce49b0e16f84a9f516cf59d0a1f9b3199634787fd9db7470ab6c65b')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure \
+ --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/glib-networking --disable-static
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/glib-networking/glib-networking.install b/extra/glib-networking/glib-networking.install
new file mode 100644
index 000000000..595f1c75b
--- /dev/null
+++ b/extra/glib-networking/glib-networking.install
@@ -0,0 +1,11 @@
+post_install() {
+ usr/bin/gio-querymodules usr/lib/gio/modules
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/extra/glibmm/PKGBUILD b/extra/glibmm/PKGBUILD
index 26cbba20f..50eb6cad7 100644
--- a/extra/glibmm/PKGBUILD
+++ b/extra/glibmm/PKGBUILD
@@ -1,35 +1,35 @@
-# $Id: PKGBUILD 79559 2010-05-04 13:57:18Z ibiru $
+# $Id: PKGBUILD 118216 2011-04-05 22:43:03Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
pkgbase=glibmm
pkgname=('glibmm' 'glibmm-docs')
-pkgver=2.24.2
-pkgrel=1
+pkgver=2.28.0
+pkgrel=2
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-makedepends=('glib2>=2.24.1' 'libsigc++2.0>=2.2.5' 'pkgconfig')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.24/${pkgname}-${pkgver}.tar.bz2)
+makedepends=('glib2' 'libsigc++2.0' 'pkgconfig' 'mm-common')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
options=('!libtool')
url="http://gtkmm.sourceforge.net/"
-sha256sums=('d4687c0b27f9c9f955a5306649008a1f8d8935edff916278fb7b65b44292ff7a')
+sha256sums=('b1b99868896b028354141e3b2470d98799283e90154550e12614f692db17a5a3')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr || return 1
- make || return 1
+ ./configure --prefix=/usr
+ make
}
package_glibmm() {
pkgdesc="Glib-- (glibmm) is a C++ interface for glib"
- depends=('glib2>=2.24.0' 'libsigc++2.0>=2.2.5')
+ depends=('glib2' 'libsigc++2.0')
cd "${srcdir}/${pkgbase}-${pkgver}"
sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile
- make DESTDIR="${pkgdir}" install || return 1
+ make DESTDIR="${pkgdir}" install
}
package_glibmm-docs() {
pkgdesc="Developer documentation for glibmm"
cd "${srcdir}/${pkgbase}-${pkgver}/docs"
- make DESTDIR="${pkgdir}" install || return 1
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-applets/PKGBUILD b/extra/gnome-applets/PKGBUILD
index 60263c7e8..fe9bc25e6 100644
--- a/extra/gnome-applets/PKGBUILD
+++ b/extra/gnome-applets/PKGBUILD
@@ -1,45 +1,38 @@
-# $Id: PKGBUILD 112787 2011-03-06 19:39:31Z ibiru $
+# $Id: PKGBUILD 113478 2011-03-08 21:10:38Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-applets
-pkgver=2.32.1.1
+pkgver=2.91.4
pkgrel=2
pkgdesc="GNOME Applets"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('gstreamer0.10-base-plugins>=0.10.30' 'gnome-panel>=2.31.92' 'libgtop>=2.28.1' 'gucharmap>=2.32.0' 'libnotify>=0.7.1' 'cpufrequtils')
-makedepends=('gnome-doc-utils>=0.20.1' 'pkgconfig' 'gnome-settings-daemon>=2.31.92' 'intltool' 'gnome-icon-theme>=2.31.0' 'gnome-python-desktop>=2.31.1' 'networkmanager>=0.8')
-optdepends=('python-gnomeapplet: invest-applet')
-options=('!emptydirs' '!libtool')
+depends=('gnome-panel' 'libgtop' 'gucharmap' 'libnotify' 'cpufrequtils')
+makedepends=('gnome-doc-utils' 'intltool' 'gnome-settings-daemon' 'networkmanager' 'gnome-common')
+options=(!emptydirs)
url="http://www.gnome.org"
groups=(gnome)
install=gnome-applets.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- gnome-applets-2.32.1.1-libnotify-0.7.patch
- add-dbus-glib.patch)
-sha256sums=('2b92fe4b3062dfbe264f45472b4db3a27d1e69e13260d37da9fb36b2cbd40327'
- '1e0b1f9545029bda0f4aadc28ef6eba34a5dbd1c3d1e5cec45627be7b0c32eda'
- '6c79b77aa731f82d9b7c9704e5c6d3cb06252eea3c2d21fa35245d2f02ca0346')
+#source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.91/${pkgname}-${pkgver}.tar.bz2)
+source=(${pkgname}-${pkgver}.tar.xz)
+sha256sums=('950ab962c39fca9375a9df0827ccb8f2178f7e84950c8fdbea5e3d2f9889a49c')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/add-dbus-glib.patch"
- patch -Np0 -i "${srcdir}/gnome-applets-2.32.1.1-libnotify-0.7.patch"
- autoreconf -fi
- PYTHON=python2 ./configure --prefix=/usr --sysconfdir=/etc \
- --libexecdir=/usr/lib/gnome-applets \
+ ./autogen.sh
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --sysconfdir=/etc --libexecdir=/usr/lib/gnome-applets \
--localstatedir=/var --disable-static \
- --disable-scrollkeeper --enable-mixer-applet \
- --disable-schemas-install --without-hal
+ --disable-scrollkeeper --disable-schemas-install \
+ --without-hal
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- sed -i "s|#!/usr/bin/env python$|#!/usr/bin/env python2|" \
- $pkgdir/usr/bin/invest-chart \
- $pkgdir/usr/lib/gnome-applets/invest-applet \
- $pkgdir/usr/lib/python2.7/site-packages/invest/chart.py
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-applets-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-applets-3.0 ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
diff --git a/extra/gnome-bluetooth/PKGBUILD b/extra/gnome-bluetooth/PKGBUILD
index ac51465db..eaf8911b5 100644
--- a/extra/gnome-bluetooth/PKGBUILD
+++ b/extra/gnome-bluetooth/PKGBUILD
@@ -1,36 +1,31 @@
-# $Id: PKGBUILD 112788 2011-03-06 19:49:19Z ibiru $
+# $Id: PKGBUILD 117688 2011-04-04 16:21:47Z ibiru $
# Maintainer:
# Contributor: Roman Kyrylych <roman@archlinux.org>
pkgname=gnome-bluetooth
-pkgver=2.32.0
-pkgrel=2
+pkgver=3.0.0
+pkgrel=1
pkgdesc="The GNOME Bluetooth Subsystem"
arch=('i686' 'x86_64' 'mips64el')
url="http://live.gnome.org/GnomeBluetooth"
license=('GPL' 'LGPL')
-depends=('libunique>=1.1.6' 'libnotify>=0.7.1' 'hicolor-icon-theme' 'gvfs-obexftp>=1.6.3' 'obexd-client>=0.33' 'dconf')
-makedepends=('intltool' 'pygtk>=2.22' 'gnome-doc-utils>=0.20.1' 'nautilus-sendto>=2.28.4')
-replaces=('bluez-gnome')
-conflicts=('bluez-gnome')
-options=('!libtool' '!emptydirs' '!makeflags')
+depends=('gnome-control-center' 'hicolor-icon-theme' 'gvfs-obexftp' 'obexd-client' 'dconf')
+makedepends=('intltool' 'gnome-doc-utils' 'nautilus-sendto' 'gobject-introspection')
+options=('!libtool' '!emptydirs')
install=gnome-bluetooth.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- 61-gnome-bluetooth-rfkill.rules
- gnome-bluetooth-2.32.0-libnotify-0.7.patch)
-sha256sums=('57b1f06c96a1b85e1c19ff919d708cc38e95edae658881ed99968c325839a973'
- 'b8acb8ea2e7f3588575cffd8ea14ec50c8641f518f2ea899771a508b299ea474'
- '42b8388156249bd7c8a18db6d6aef18895ce861f2a79cb937e55eda864245838')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2
+ 61-gnome-bluetooth-rfkill.rules)
+sha256sums=('bdfa7986b8b7f622b48a70b29a48016482190d240de499da5d7fddb48ed4c211'
+ 'b8acb8ea2e7f3588575cffd8ea14ec50c8641f518f2ea899771a508b299ea474')
+
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/gnome-bluetooth-2.32.0-libnotify-0.7.patch"
./configure --prefix=/usr \
--sysconfdir=/etc \
--localstatedir=/var \
--disable-desktop-update \
--disable-icon-update \
- --disable-schemas-compile \
- --enable-introspection=no
+ --disable-schemas-compile
make
}
@@ -40,4 +35,6 @@ package() {
install -m644 -D "${srcdir}/61-gnome-bluetooth-rfkill.rules" \
"${pkgdir}/lib/udev/rules.d//61-gnome-bluetooth-rfkill.rules"
+ install -d ${pkgdir}/etc/ld.so.conf.d
+ echo "/usr/lib/gnome-bluetooth" > ${pkgdir}/etc/ld.so.conf.d/${pkgname}.conf
}
diff --git a/extra/gnome-bluetooth/gnome-bluetooth.install b/extra/gnome-bluetooth/gnome-bluetooth.install
index bddac2574..927142ee0 100644
--- a/extra/gnome-bluetooth/gnome-bluetooth.install
+++ b/extra/gnome-bluetooth/gnome-bluetooth.install
@@ -7,7 +7,6 @@ post_upgrade() {
post_install $1
}
-
post_remove() {
post_install $1
}
diff --git a/extra/gnome-color-manager/PKGBUILD b/extra/gnome-color-manager/PKGBUILD
new file mode 100644
index 000000000..e99169465
--- /dev/null
+++ b/extra/gnome-color-manager/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 117742 2011-04-04 17:38:36Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+
+pkgname=gnome-color-manager
+pkgver=3.0.0
+pkgrel=1
+pkgdesc="Color profile manager for the GNOME desktop"
+arch=(i686 x86_64)
+url="http://projects.gnome.org/gnome-color-manager/"
+license=(GPL2)
+depends=(lcms2 gnome-settings-daemon gnome-control-center vte3 sane exiv2
+ hicolor-icon-theme desktop-file-utils)
+makedepends=(intltool gtk-doc)
+install=gnome-color-manager.install
+options=('!libtool')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('9e030b2a5dd61010bce25c2e3cdfca6e7ab3954fecb74dbf88f6a8e2c70b7207')
+
+build(){
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # man pages need docbook-sgml, which we don't have
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --libexecdir=/usr/lib --disable-static --disable-man-pages
+
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/extra/gnome-color-manager/gnome-color-manager.install b/extra/gnome-color-manager/gnome-color-manager.install
new file mode 100644
index 000000000..04fda0ddc
--- /dev/null
+++ b/extra/gnome-color-manager/gnome-color-manager.install
@@ -0,0 +1,19 @@
+post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+pre_upgrade() {
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall gnome-color-manager
+ fi
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/extra/gnome-control-center/PKGBUILD b/extra/gnome-control-center/PKGBUILD
index eb3faab59..1a694aff9 100644
--- a/extra/gnome-control-center/PKGBUILD
+++ b/extra/gnome-control-center/PKGBUILD
@@ -1,33 +1,34 @@
-# $Id: PKGBUILD 99871 2010-11-18 22:10:52Z ibiru $
+# $Id: PKGBUILD 120905 2011-04-27 08:37:19Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-control-center
-pkgver=2.32.1
+pkgver=3.0.1.1
pkgrel=1
pkgdesc="The Control Center for GNOME"
arch=('i686' 'x86_64' 'mips64el')
-depends=('metacity>=2.30.2' 'libxss' 'desktop-file-utils' 'gnome-settings-daemon>=2.32.1' 'libgnomekbd>=2.32.0' 'libcanberra>=0.25' 'sound-theme-freedesktop' 'libunique>=1.1.6' 'gnome-menus>=2.30.5' 'evolution-data-server>=2.32.1' 'librsvg>=2.32.1')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool')
+depends=('gtk3' 'gsettings-desktop-schemas' 'gnome-menus' 'gnome-desktop' 'gnome-settings-daemon' 'upower' 'libgtop' 'cups-pk-helper' 'accountsservice' 'sound-theme-freedesktop')
+optdepends=('mesa-demos: provides glxinfo for graphics information'
+ 'apg: adds password generation for user accounts')
+makedepends=('gnome-doc-utils' 'intltool' 'networkmanager')
url="http://www.gnome.org"
groups=('gnome')
install=gnome-control-center.install
license=('GPL')
options=('!libtool' '!emptydirs')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('7c568b57358e5c08f4d8dd76dbac7df2539135ad081872b60514b7a8ac797e66')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('b191991d3932b363154e6cf2b5055bc711272065397daee2163b6fb04402ad79')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static --enable-aboutme \
+ --localstatedir=/var --disable-static \
--disable-scrollkeeper --disable-update-mimedb
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-control-center-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
- # --disable-update-mimedb?
- rm -f "${pkgdir}/usr/share/applications/mimeinfo.cache"
+ make DESTDIR="${pkgdir}" install
}
+
diff --git a/extra/gnome-control-center/gnome-control-center.install b/extra/gnome-control-center/gnome-control-center.install
index 6d6b5678d..eb703319f 100644
--- a/extra/gnome-control-center/gnome-control-center.install
+++ b/extra/gnome-control-center/gnome-control-center.install
@@ -1,29 +1,19 @@
pkgname=gnome-control-center
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
- update-mime-database usr/share/mime
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+ fi
}
post_upgrade() {
- if [ "`vercmp $2 2.22.0-3`" -lt 0 ]; then
- usr/sbin/gconfpkg --install gnome-settings-daemon
- fi
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install $1
}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
- update-mime-database usr/share/mime
+ post_install $1
}
diff --git a/extra/gnome-desktop-sharp/PKGBUILD b/extra/gnome-desktop-sharp/PKGBUILD
index 6085f9b43..c8e883a28 100644
--- a/extra/gnome-desktop-sharp/PKGBUILD
+++ b/extra/gnome-desktop-sharp/PKGBUILD
@@ -1,31 +1,35 @@
-# $Id: PKGBUILD 70241 2010-02-25 17:21:11Z ibiru $
+# $Id: PKGBUILD 121043 2011-04-28 09:15:35Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-desktop-sharp
pkgver=2.26.0
-pkgrel=5
+pkgrel=6
pkgdesc="GNOME desktop bindings for C#"
arch=('i686' 'x86_64' 'mips64el')
license=(LGPL)
url="http://gtk-sharp.sourceforge.net"
-depends=('gnome-sharp>=2.24.1' 'vte>=0.23.5' 'librsvg>=2.26.0' 'gnome-panel>=2.29.91' 'libwnck>=2.29.91' 'gtkhtml>=3.29.91' 'gtksourceview2>=2.9.2')
-makedepends=('pkgconfig' 'monodoc' 'libgnomeprintui>=2.18.4')
+depends=('gnome-sharp' 'gnome-desktop2' 'vte' 'librsvg' 'libwnck' 'gtkhtml' 'gtksourceview2')
+makedepends=('monodoc' 'libgnomeprintui')
optdepends=('libgnomeprintui')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.26/${pkgname}-${pkgver}.tar.bz2
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2
gnome-desktop-sharp-lib-target.patch)
md5sums=('4bc990900bb318b2ba0b0e7998bb47d1'
'980cd3adf5e745f4caee0a172a51dcc3')
build() {
# get rid of that .wapi errors; thanks to brice
- export MONO_SHARED_DIR="${srcdir}/weird"
- mkdir -p "${MONO_SHARED_DIR}"
+ export MONO_SHARED_DIR="$srcdir/wapi"
+ mkdir -p "$MONO_SHARED_DIR"
- cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i ${srcdir}/gnome-desktop-sharp-lib-target.patch || return 1
- ./configure --prefix=/usr --sysconfdir=/etc || return 1
- make || return 1
+ cd "$srcdir/$pkgname-$pkgver"
+ patch -Np1 -i $srcdir/gnome-desktop-sharp-lib-target.patch
+ ./configure --prefix=/usr --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
make GACUTIL="/usr/bin/gacutil /root ${pkgdir}/usr/lib" \
- DESTDIR="${pkgdir}" install || return 1
+ DESTDIR="$pkgdir" install
}
diff --git a/extra/gnome-desktop/PKGBUILD b/extra/gnome-desktop/PKGBUILD
index 3c19fcd77..de382038d 100644
--- a/extra/gnome-desktop/PKGBUILD
+++ b/extra/gnome-desktop/PKGBUILD
@@ -1,27 +1,30 @@
-# $Id: PKGBUILD 99767 2010-11-17 12:13:39Z ibiru $
+# $Id: PKGBUILD 120873 2011-04-26 21:57:00Z ibiru $
# Maintainer: Jan de Groot <jan@archlinux.org>
pkgname=gnome-desktop
-pkgver=2.32.1
+pkgver=3.0.1
pkgrel=1
-pkgdesc="The GNOME Desktop"
+pkgdesc="Library with common API for various GNOME modules"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL' 'LGPL')
-depends=('gconf>=2.32.0' 'startup-notification>=0.10')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool')
-optdepends=('pygtk: gnome-about')
+depends=('gsettings-desktop-schemas' 'startup-notification' 'gtk3')
+makedepends=('gnome-doc-utils' 'intltool' 'gobject-introspection')
url="http://www.gnome.org"
groups=('gnome')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('55cbecf67efe1fa1e57ac966520a7c46d799c8ba3c652a1219f60cafccb3739d')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('6d5e140a0d5f9bc131caff505bc4a2afa11e1839437f7fc3da73238b37a3f0a3')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
- --with-gnome-distributor="Archlinux" \
+ --with-gnome-distributor="Arch Linux" \
--disable-scrollkeeper
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-desktop2/PKGBUILD b/extra/gnome-desktop2/PKGBUILD
new file mode 100644
index 000000000..3829d54f7
--- /dev/null
+++ b/extra/gnome-desktop2/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 121039 2011-04-28 07:31:32Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: Jan de Groot <jan@archlinux.org>
+
+_pkgname=gnome-desktop
+pkgname=${_pkgname}2
+pkgver=2.32.1
+pkgrel=1
+pkgdesc="The GNOME Desktop"
+arch=(i686 x86_64)
+license=(GPL LGPL)
+depends=(gconf gtk2 startup-notification)
+makedepends=(gnome-doc-utils intltool)
+url="http://www.gnome.org"
+options=(!libtool !emptydirs)
+source=(http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver%.*}/$_pkgname-$pkgver.tar.bz2)
+sha256sums=('55cbecf67efe1fa1e57ac966520a7c46d799c8ba3c652a1219f60cafccb3739d')
+
+build() {
+ cd "$srcdir/$_pkgname-$pkgver"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static \
+ --with-gnome-distributor="Archlinux" \
+ --disable-scrollkeeper \
+ --disable-gnome-about --disable-desktop-docs
+ make
+}
+
+package() {
+ cd "$srcdir/$_pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/extra/gnome-disk-utility/PKGBUILD b/extra/gnome-disk-utility/PKGBUILD
index 9a0546235..0a5f8e9a6 100644
--- a/extra/gnome-disk-utility/PKGBUILD
+++ b/extra/gnome-disk-utility/PKGBUILD
@@ -1,23 +1,21 @@
-# $Id: PKGBUILD 112789 2011-03-06 20:08:19Z ibiru $
+# $Id: PKGBUILD 117728 2011-04-04 17:27:54Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-disk-utility
-pkgver=2.32.1
+pkgver=3.0.0
pkgrel=1
pkgdesc="GNOME libraries and applications for dealing with storage devices"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org"
-depends=('dbus-glib>=0.86' 'libgnome-keyring>=2.31.92' 'libunique>=1.1.6' 'udisks>=1.0.1' 'libnotify>=0.7.1' 'hicolor-icon-theme' 'avahi')
-makedepends=('gnome-doc-utils>=0.20.0' 'intltool')
-replaces=('gnome-mount')
-conflicts=('gnome-mount')
-options=('!libtool' '!emptydirs' '!makeflags')
+depends=('dbus-glib' 'libgnome-keyring' 'libunique3' 'udisks' 'libnotify' 'hicolor-icon-theme' 'avahi')
+makedepends=('gtk-doc' 'intltool')
+options=('!libtool' '!emptydirs')
install=gnome-disk-utility.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
fix-freeze.patch)
-sha256sums=('fb3f6c8962eca9706fd96e1f0b431c1284536298bc927e8413e763054c618e99'
-'818b70360978968457d2c50738347c6726ed8d0c007eb57074881a7e33652526')
+sha256sums=('94d31142a5f488d034cd2954df4ab1c26bd053fb0d46d230fba91b4f8b3663fb'
+ '818b70360978968457d2c50738347c6726ed8d0c007eb57074881a7e33652526')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -26,5 +24,9 @@ build() {
--libexecdir=/usr/lib/gnome-disk-utility \
--disable-scrollkeeper --disable-nautilus --disable-gtk-doc
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-games/PKGBUILD b/extra/gnome-games/PKGBUILD
index 349d6007c..ff10f5bea 100644
--- a/extra/gnome-games/PKGBUILD
+++ b/extra/gnome-games/PKGBUILD
@@ -1,52 +1,40 @@
-# $Id: PKGBUILD 105513 2011-01-10 10:03:28Z jgc $
+# $Id: PKGBUILD 120383 2011-04-23 09:47:40Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-games
-pkgver=2.32.1
+pkgver=3.0.1.1
pkgrel=2
pkgdesc="Some Games for GNOME"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('pygtk' 'libsm' 'gconf>=2.32.0' 'guile>=1.8.7' 'filesystem>=2010.09' 'desktop-file-utils' 'libcanberra>=0.25' 'clutter-gtk>=0.10.8' 'hicolor-icon-theme' 'librsvg>=2.32.0' 'python-rsvg>=2.32.0' 'python2-gconf')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool' 'glproto' 'gobject-introspection')
-optdepends=('python-gtkglext: glchess 3D mode')
-provides=('glchess' 'gnome-sudoku')
-conflicts=('glchess' 'gnome-sudoku')
+depends=('libsm' 'gconf' 'guile' 'desktop-file-utils' 'libcanberra' 'clutter-gtk' 'hicolor-icon-theme' 'librsvg' 'seed')
+makedepends=('gnome-doc-utils' 'intltool' 'gobject-introspection')
+provides=('glchess')
+conflicts=('glchess')
options=('!emptydirs' '!libtool')
install=gnome-games.install
url="http://www.gnome.org"
groups=('gnome-extra')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- 03_missing_icons.patch
- scores.png)
-sha256sums=('1a3b2e82102eed3780f05db4378111c475456678deed82fd4ca379da1c5593d9'
- '05d63319773e5389b87672a20b03c4c1e91a33fd1678b5e76335bf7e4daa46a6'
- '2f818741bbf20fc83a68d71908de76f5f1b2b9e27691a4767aebf0e4a39fee85')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('dbbda8aa6960e36acff7537e49e033fc8037e6b3b3aa52d5f066cb67b34b4319')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/03_missing_icons.patch"
- PYTHON=python2 ./configure --prefix=/usr --sysconfdir=/etc \
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-scrollkeeper \
--disable-static \
--with-scores-user=root --with-scores-group=games \
- --enable-introspection=yes \
- --enable-omitgames=swell-foop,lightsoff
+ --enable-introspection=yes
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make -j1 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
# Remove all scores, we generate them from postinstall
rm -rf "${pkgdir}/var"
- sed -i "s|#!/usr/bin/python$|#!/usr/bin/python2|" \
- $pkgdir/usr/lib/python2.7/site-packages/gnome_sudoku/{tracker_info,number_box}.py
-
- sed -i "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|" \
- $pkgdir/usr/bin/{gnome-sudoku,glchess}
-
- install -m755 -d "${pkgdir}/usr/share/icons/hicolor/24x24/actions"
- install -m644 "${srcdir}/scores.png" "${pkgdir}/usr/share/icons/hicolor/24x24/actions/"
-
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-games ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
diff --git a/extra/gnome-games/gnome-games.install b/extra/gnome-games/gnome-games.install
index ac7091f45..1f67c2e01 100644
--- a/extra/gnome-games/gnome-games.install
+++ b/extra/gnome-games/gnome-games.install
@@ -88,9 +88,10 @@ scores=(glines.Large.scores
quadrapassel.scores)
post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
usr/sbin/gconfpkg --install ${pkgname}
update-desktop-database -q
- gtk-update-icon-cache -q -f -t usr/share/icons/hicolor
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
for sz in Large Medium Small; do
if [ -e "opt/gnome/var/games/same-gnome.${sz}.scores" ]; then
@@ -142,6 +143,7 @@ pre_remove() {
}
post_remove() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
update-desktop-database -q
gtk-update-icon-cache -q -f -t usr/share/icons/hicolor
diff --git a/extra/gnome-keyring/PKGBUILD b/extra/gnome-keyring/PKGBUILD
index a8cf4e6e8..6488fc2dd 100644
--- a/extra/gnome-keyring/PKGBUILD
+++ b/extra/gnome-keyring/PKGBUILD
@@ -1,20 +1,20 @@
-#$Id: PKGBUILD 97123 2010-10-26 16:27:27Z ibiru $
+#$Id: PKGBUILD 120584 2011-04-25 17:40:10Z ibiru $
# Maintainer: Jan De Groot <jgc@archlinux.org>
pkgname=gnome-keyring
-pkgver=2.32.1
+pkgver=3.0.1
pkgrel=1
pkgdesc="GNOME Password Management daemon"
arch=(i686 x86_64 'mips64el')
license=('GPL' 'LGPL')
-depends=('gtk2>=2.22.0' 'dconf')
+depends=('gtk3' 'dconf')
makedepends=('intltool' 'pkgconfig' 'python2')
groups=('gnome')
-options=('!libtool' '!emptydirs')
+options=('!libtool' '!emptydirs' '!makeflags')
url="http://www.gnome.org"
install=gnome-keyring.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('31fecec1430a97f59a6159a5a2ea8d6a1b44287f1e9e595b3594df46bf7f18f9')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('1b296fc58fb189c9632fdd8a8a8a2dbb0af97db1529af87d73e21a96c4b78c03')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -24,5 +24,9 @@ build() {
--with-pam-dir=/lib/security --with-root-certs=/etc/ssl/certs \
--disable-schemas-compile
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-media/PKGBUILD b/extra/gnome-media/PKGBUILD
index 6217a30d3..1f0927322 100644
--- a/extra/gnome-media/PKGBUILD
+++ b/extra/gnome-media/PKGBUILD
@@ -1,71 +1,38 @@
-# $Id: PKGBUILD 104482 2011-01-03 16:03:30Z ibiru $
+# $Id: PKGBUILD 111636 2011-02-27 21:57:39Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
-pkgbase=gnome-media
-pkgname=(gnome-media gnome-media-pulse)
-pkgver=2.32.0
-pkgrel=3
+pkgname=gnome-media
+pkgver=2.91.2
+pkgrel=2
pkgdesc="GNOME Media Tools"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('gstreamer0.10-good-plugins>=0.10.24' 'gstreamer0.10-base-plugins>=0.10.30' 'libcanberra>=0.25' 'hicolor-icon-theme')
-makedepends=('intltool' 'pkgconfig' 'gnome-doc-utils>=0.20.1' 'libunique>=1.1.6' 'libpulse')
+depends=('libgnome-media-profiles' 'libcanberra' 'hicolor-icon-theme')
+makedepends=('intltool' 'pkgconfig' 'gnome-doc-utils')
url="http://www.gnome.org"
groups=('gnome')
+replaces=('gnome-media-pulse')
options=('!libtool' '!emptydirs')
install=gnome-media.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2
- gnome_volume_control_fix_channel_bars.patch)
-sha256sums=('2b0ad4decd75406398f46e82a170e53bcbc6e1bdc3363f03a07b00f59c2fe5e6'
- '51e59fb42114d70118f4b750a06a33e0e40b0a03ed6509dc1348c641cc274d74' )
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.91/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('4aadc834d04c3d6f573fad667a69c6dc9668240e759cbd8cfb14d053d8e4da5f')
build() {
- cd "${srcdir}"
- patch -Np0 -i "${srcdir}/gnome_volume_control_fix_channel_bars.patch"
- cp -a "${pkgbase}-${pkgver}"{,-pulse}
+ cd "${srcdir}"/${pkgname}-${pkgver}
- cd "${pkgbase}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/gnome-media \
--localstatedir=/var --disable-static \
- --disable-scrollkeeper --disable-pulseaudio
- make
-
- cd "${srcdir}/${pkgbase}-${pkgver}-pulse"
- ./configure --prefix=/usr --sysconfdir=/etc \
- --libexecdir=/usr/lib/gnome-media \
- --localstatedir=/var --disable-static \
- --disable-scrollkeeper --enable-pulseaudio
+ --disable-scrollkeeper
make
}
-_commonpackage() {
+package() {
+ cd "${srcdir}"/${pkgname}-${pkgver}
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgbase}.schemas" --domain gnome-media-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
- # remove it from Xfce menu that ships its own thingy
- echo "NotShowIn=XFCE" >> ${pkgdir}/usr/share/applications/gnome-volume-control.desktop
-}
-
-package_gnome-media() {
- cd "${srcdir}/${pkgbase}-${pkgver}"
- _commonpackage
-}
-
-package_gnome-media-pulse() {
- pkgdesc+=" with PulseAudio support"
- depends+=(libpulse)
- groups=(pulseaudio-gnome)
- conflicts=(gnome-media)
- provides=("gnome-media=${pkgver}-${pkgrel}")
-
- cd "${srcdir}/${pkgbase}-${pkgver}-pulse"
- _commonpackage
-
- # Install missing icon
- install -Dm644 \
- gst-mixer/icons/16x16/status/audio-input-microphone-muted.png \
- "${pkgdir}/usr/share/icons/hicolor/16x16/status/audio-input-microphone-muted.png"
+ rm -rf "${pkgdir}/usr/share/sounds/"
}
diff --git a/extra/gnome-menus/PKGBUILD b/extra/gnome-menus/PKGBUILD
index efbb28d52..682651e66 100644
--- a/extra/gnome-menus/PKGBUILD
+++ b/extra/gnome-menus/PKGBUILD
@@ -1,30 +1,36 @@
-# $Id: PKGBUILD 101155 2010-11-28 13:11:57Z ibiru $
+# $Id: PKGBUILD 120868 2011-04-26 21:47:42Z ibiru $
# Maintainer: Jan de Groot <jan@archlinux.org>
pkgname=gnome-menus
-pkgver=2.30.5
+pkgver=3.0.1
pkgrel=1
pkgdesc="GNOME menu specifications"
arch=('i686' 'x86_64' 'mips64el')
-depends=('pygtk>=2.22.0')
-makedepends=('pkg-config' 'intltool' 'gobject-introspection')
-options=('!libtool' '!makeflags')
+depends=('glib2' 'python2')
+makedepends=('intltool' 'gobject-introspection')
+options=('!libtool')
license=('GPL' 'LGPL')
url="http://www.gnome.org"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
menus.patch)
-sha256sums=('6dcc565006d6e8c2025ae83ab1f82edf6bd04d61c804c0dc9bf5ea50629c4caa'
+sha256sums=('579c119c26f37781f66708e867ea45b3c37589b3b69e5b32d33e9bdb944165f0'
'df2779777906b038fa911dc745534564ede9524a64ab368e2f6f8e38d54e7acc')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/menus.patch"
- PYTHON=python2 ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var \
- --disable-static
+
+ patch -Np0 -i "$srcdir/menus.patch"
+
+ PYTHON=/usr/bin/python2 ./configure \
+ --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static
make
+}
+
+package(){
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
- sed -i "s|#!/usr/bin/env python|#!/usr/bin/env python2|" \
- $pkgdir/usr/lib/python2.7/site-packages/GMenuSimpleEditor/config.py
+ sed -i "1s|#!/usr/bin/env python$|&2|" \
+ "$pkgdir/usr/lib/python2.7/site-packages/GMenuSimpleEditor/config.py"
}
diff --git a/extra/gnome-nettool/PKGBUILD b/extra/gnome-nettool/PKGBUILD
index 3941a9ca2..026215dfc 100644
--- a/extra/gnome-nettool/PKGBUILD
+++ b/extra/gnome-nettool/PKGBUILD
@@ -1,27 +1,30 @@
-# $Id: PKGBUILD 91819 2010-09-28 07:23:49Z jgc $
+# $Id: PKGBUILD 117582 2011-04-04 11:28:21Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Kritoke <kritoke@nospam.gmail.com>
pkgname=gnome-nettool
-pkgver=2.32.0
+pkgver=3.0.0
pkgrel=1
-pkgdesc="A Collection of GNOME2 Networking Tools."
-arch=(i686 x86_64 'mips64el')
+pkgdesc="A Collection of GNOME3 Networking Tools."
+arch=(i686 x86_64 mips64el)
license=('GPL')
-depends=('gconf>=2.32.0' 'libgtop>=2.28.1' 'dnsutils' 'netkit-bsd-finger' 'whois' 'hicolor-icon-theme')
-makedepends=('gnome-doc-utils>=0.20.1' 'pkgconfig' 'intltool')
-conflicts=('gnome-network')
-replaces=('gnome-netinfo')
+depends=('gtk3' 'libgtop' 'dnsutils' 'netkit-bsd-finger' 'whois' 'hicolor-icon-theme')
+makedepends=('gnome-doc-utils' 'pkgconfig' 'intltool')
groups=('gnome-extra')
url="http://www.gnome.org"
install=gnome-nettool.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('8c70f85952760170114b2fa4be3ccaa3fc6298f802bacda2503ed482b8a0539c')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('6b75ee5de54fae67db0ba710e8b334a5b1fcd18719d38ae09b9dd05f5e2555e9')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-scrollkeeper
+ --localstatedir=/var --disable-scrollkeeper \
+ --disable-schemas-compile
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-nettool/gnome-nettool.install b/extra/gnome-nettool/gnome-nettool.install
index d7d985045..738f7859f 100644
--- a/extra/gnome-nettool/gnome-nettool.install
+++ b/extra/gnome-nettool/gnome-nettool.install
@@ -1,4 +1,5 @@
post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
diff --git a/extra/gnome-panel/PKGBUILD b/extra/gnome-panel/PKGBUILD
index b05c511af..c2c7931bd 100644
--- a/extra/gnome-panel/PKGBUILD
+++ b/extra/gnome-panel/PKGBUILD
@@ -1,54 +1,41 @@
-# $Id: PKGBUILD 108473 2011-01-31 14:15:15Z ibiru $
+# $Id: PKGBUILD 119512 2011-04-11 20:09:24Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
-pkgbase=gnome-panel
-pkgname=('gnome-panel' 'gnome-panel-bonobo')
-pkgver=2.32.1
-pkgrel=2
+pkgname=gnome-panel
+pkgver=3.0.0.1
+pkgrel=3
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
+pkgdesc="The GNOME Panel"
url="http://www.gnome.org"
-makedepends=('libwnck' 'gnome-menus' 'evolution-data-server' 'gnome-desktop' 'libgweather' 'librsvg' 'hicolor-icon-theme' 'libcanberra' 'libbonoboui' 'gnome-doc-utils' 'intltool' 'networkmanager' 'gobject-introspection')
+depends=('gnome-menus' 'gnome-desktop' 'evolution-data-server' 'librsvg' 'libwnck3' 'libsm' 'dconf' 'telepathy-glib')
+makedepends=('gnome-doc-utils' 'intltool' 'gobject-introspection' 'networkmanager' 'libcanberra')
+install=gnome-panel.install
+groups=('gnome')
+replaces=('gnome-panel-bonobo')
+provides=("gnome-panel-bonobo=${pkgver}")
options=('!libtool' '!emptydirs')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2
- evolution-appointments.patch)
-sha256sums=('8f7828eb7a21c817a73b697844a4e20256059b32386414a10f97d51e7d9fca5f'
- 'c42168cc1377f9dfb2e02ed0b47ee89bdb89d46e82551b9582801fdc375294bb')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*.*}/${pkgname}-${pkgver}.tar.bz2
+ fix-crasher-launchers.patch)
+sha256sums=('2014225215afc8a8a4363481c26f9a9443d3dfc944aa7bcb0c5224f723c0b98b'
+ '6724690bb2943f50ab296af6f1e1a7c10a91415ba150586b5623f20cc214ace0')
build() {
- cd "${srcdir}/${pkgbase}-${pkgver}"
-
- #https://bugzilla.gnome.org/show_bug.cgi?id=633566
- patch -Np1 -i "${srcdir}/evolution-appointments.patch"
-
- ./configure --prefix=/usr --sysconfdir=/etc \
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -Np1 -i "${srcdir}/fix-crasher-launchers.patch"
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
--libexecdir=/usr/lib/gnome-panel \
- --disable-scrollkeeper
+ --disable-scrollkeeper \
+ --disable-schemas-compile
make
- sed -e 's/$(am__append_1)//' -i Makefile
}
-package_gnome-panel() {
- pkgdesc="The GNOME Panel"
- depends=('gnome-menus>=2.30.5' 'gnome-desktop>=2.32.1' 'evolution-data-server>=2.32.1' 'librsvg>=2.32.1' 'libcanberra>=0.25' 'libwnck>=2.30.6' 'hicolor-icon-theme')
- optdepends=('gnome-panel-bonobo: libbonoboui-based applet support')
- groups=('gnome')
- install=gnome-panel.install
- cd "${srcdir}/${pkgbase}-${pkgver}"
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-panel-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-panel-3.0 ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
-
-package_gnome-panel-bonobo() {
- pkgdesc="Modules for libbonoboui-based applet support for the GNOME Panel"
- depends=('libbonoboui>=2.24.3' "gnome-panel=${pkgver}")
- conflicts=('gnome-panel<2.31.92')
- install=gnome-panel-bonobo.install
-
- cd "${srcdir}/${pkgbase}-${pkgver}"
- make -C bonobo "${pkgdir}" DESTDIR="${pkgdir}" install
-}
diff --git a/extra/gnome-panel/fix-crasher-launchers.patch b/extra/gnome-panel/fix-crasher-launchers.patch
new file mode 100644
index 000000000..b15fdf29c
--- /dev/null
+++ b/extra/gnome-panel/fix-crasher-launchers.patch
@@ -0,0 +1,42 @@
+From 8c275a2adf4ad99297a17cabf251344837620831 Mon Sep 17 00:00:00 2001
+From: Josselin Mouette <joss@malsain.org>
+Date: Mon, 11 Apr 2011 13:05:32 +0000
+Subject: panel: Fix crash when starting launcher
+
+Do not destroy a widget in its draw signal. This is bad. Really.
+
+This was happening in the animation that is being drawn after clicking a
+launcher.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=641325
+---
+diff --git a/gnome-panel/xstuff.c b/gnome-panel/xstuff.c
+index 8465341..5acbf66 100644
+--- a/gnome-panel/xstuff.c
++++ b/gnome-panel/xstuff.c
+@@ -305,6 +305,14 @@ zoom_timeout (GtkWidget *window)
+ }
+
+ static gboolean
++idle_destroy (gpointer data)
++{
++ gtk_widget_destroy (GTK_WIDGET (data));
++
++ return FALSE;
++}
++
++static gboolean
+ zoom_draw (GtkWidget *widget,
+ cairo_t *cr,
+ gpointer user_data)
+@@ -323,7 +331,7 @@ zoom_draw (GtkWidget *widget,
+
+ g_slice_free (CompositedZoomData, zoom);
+
+- gtk_widget_destroy (widget);
++ g_idle_add (idle_destroy, widget);
+ } else {
+ GdkPixbuf *scaled;
+ int width, height;
+--
+cgit v0.9
diff --git a/extra/gnome-panel/gnome-panel.install b/extra/gnome-panel/gnome-panel.install
index 7fef8cf05..e3175df5e 100644
--- a/extra/gnome-panel/gnome-panel.install
+++ b/extra/gnome-panel/gnome-panel.install
@@ -1,34 +1,24 @@
pkgname=gnome-panel
post_install() {
- GCONF_CONFIG_SOURCE=`usr/bin/gconftool-2 --get-default-source`
- usr/bin/gconftool-2 --config-source="${GCONF_CONFIG_SOURCE}" --direct --load \
- etc/gconf/schemas/panel-default-setup.entries >/dev/null
usr/sbin/gconfpkg --install ${pkgname}
-
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ pre_remove
}
post_upgrade() {
- post_install $1
+ post_install
}
pre_remove() {
- GCONF_CONFIG_SOURCE=`usr/bin/gconftool-2 --get-default-source`
- if [ -f opt/gnome/etc/gconf/schemas/panel-default-setup.entries ]; then
- usr/bin/gconftool-2 --config-source="${GCONF_CONFIG_SOURCE}" --direct --unload \
- opt/gnome/etc/gconf/schemas/panel-default-setup.entries >/dev/null
- else
- usr/bin/gconftool-2 --config-source="${GCONF_CONFIG_SOURCE}" --direct --unload \
- etc/gconf/schemas/panel-default-setup.entries > /dev/null
- fi
usr/sbin/gconfpkg --uninstall ${pkgname}
}
post_remove() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
diff --git a/extra/gnome-pilot/PKGBUILD b/extra/gnome-pilot/PKGBUILD
index cc3c0e8a0..f2751adfa 100644
--- a/extra/gnome-pilot/PKGBUILD
+++ b/extra/gnome-pilot/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 91505 2010-09-27 09:43:43Z ibiru $
+# $Id: PKGBUILD 116045 2011-03-22 16:53:46Z heftig $
# Jan de Groot <jgc@archlinux.org>
pkgname=gnome-pilot
-pkgver=2.32.0
+pkgver=2.91.92
pkgrel=1
pkgdesc="Pilot Support for Gnome"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('pilot-link>=0.12.5' 'evolution-data-server>=2.31.92')
-makedepends=('pkgconfig' 'intltool' 'gob2' 'gnome-doc-utils>=0.20.1' 'gnome-panel-bonobo>=2.31.92')
+depends=('pilot-link' 'evolution-data-server')
+makedepends=('intltool' 'gob2' 'gnome-doc-utils' 'gnome-panel')
optdepends=('gnome-panel')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org"
install=gnome-pilot.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('2b62b1c3578f51c9eceaed4cb49c841ae700a172787a8bcdc04768c59cb26bbf')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('dc7a166c95580c2935b1cab822d9e6d63d5ef08bb19eacf4a84f6eda071f07c3')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -23,13 +23,13 @@ build() {
--localstatedir=/var --disable-static \
--without-hal
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- rm -f "${pkgdir}/usr/share/applications/gpilot-applet.desktop"
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" ${pkgdir}/etc/gconf/schemas/*.schemas || return 1
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
-
- rm -f "${pkgdir}/usr/lib/gnome-pilot/gpilot-applet"
}
diff --git a/extra/gnome-power-manager/PKGBUILD b/extra/gnome-power-manager/PKGBUILD
index 4a71b3197..c9161e142 100644
--- a/extra/gnome-power-manager/PKGBUILD
+++ b/extra/gnome-power-manager/PKGBUILD
@@ -1,37 +1,34 @@
-# $Id: PKGBUILD 112791 2011-03-06 21:31:20Z ibiru $
+# $Id: PKGBUILD 117756 2011-04-04 17:41:50Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-power-manager
-pkgver=2.32.0
-pkgrel=2
+pkgver=3.0.0
+pkgrel=1
pkgdesc="Session daemon that makes it easy to manage your laptop or desktop system."
arch=(i686 x86_64 'mips64el')
url="http://www.gnome.org/projects/gnome-power-manager/"
license=('GPL')
-depends=('libnotify>=0.7.1' 'libunique>=1.1.6' 'libcanberra>=0.25' 'hicolor-icon-theme' 'upower>=0.9.5' 'libgnome-keyring>=2.31.92')
-makedepends=('intltool' 'pkgconfig' 'gnome-doc-utils>=0.20.1' 'gnome-panel-bonobo>=2.31.92')
-optdepends=('gnome-panel-bonobo: panel applets')
+depends=('libnotify' 'gconf' 'libcanberra' 'gnome-icon-theme' 'upower'
+ 'libgnome-keyring' 'dconf')
+makedepends=('intltool' 'gnome-doc-utils' 'gnome-control-center')
options=(!emptydirs)
install=gnome-power-manager.install
groups=(gnome-extra)
-source=(http://ftp.gnome.org/pub/GNOME/sources/gnome-power-manager/2.32/${pkgname}-${pkgver}.tar.bz2
- gnome-power-manager-2.32.0-libnotify-0.7.patch)
-sha256sums=('17fa301bf7e133285c0e054ae3be2b0f690c48f59b09f67e04d6ed339b330476'
- '50e2f726281805f2b1eb3fbce2e8aa7a4258de12a20bb09e57527235c82760d2')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('20d8c147a50eef534e81edb033648e5e9cf7a3f733e80c5d6c946b571f7ae4e1')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/gnome-power-manager-2.32.0-libnotify-0.7.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib/gnome-power-manager \
--disable-scrollkeeper \
--with-dbus-services=/usr/share/dbus-1/services \
- --enable-applets
+ --disable-schemas-compile
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-power-manager ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-power-manager/gnome-power-manager.install b/extra/gnome-power-manager/gnome-power-manager.install
index ee19ac94d..4666938db 100644
--- a/extra/gnome-power-manager/gnome-power-manager.install
+++ b/extra/gnome-power-manager/gnome-power-manager.install
@@ -1,22 +1,19 @@
-pkgname=gnome-power-manager
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ gtk-update-icon-cache -q -t -f usr/share/icons/gnome
}
pre_upgrade() {
-pre_remove $1
+ if (( $(vercmp $2 2.91.92) < 0 )); then
+ usr/sbin/gconfpkg --uninstall gnome-power-manager
+ fi
}
post_upgrade() {
-post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/gnome-screensaver/PKGBUILD b/extra/gnome-screensaver/PKGBUILD
index 7b2c9b395..4b2da8732 100644
--- a/extra/gnome-screensaver/PKGBUILD
+++ b/extra/gnome-screensaver/PKGBUILD
@@ -1,50 +1,37 @@
-# $Id: PKGBUILD 112853 2011-03-07 09:08:52Z ibiru $
+# $Id: PKGBUILD 117764 2011-04-04 17:44:42Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-screensaver
-pkgver=2.30.2
-pkgrel=2
+pkgver=3.0.0
+pkgrel=1
pkgdesc="Screensaver designed to integrate well with the GNOME desktop."
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://live.gnome.org/GnomeScreensaver"
backup=(etc/pam.d/gnome-screensaver)
-depends=('gnome-menus>=2.30.4' 'libgnomekbd>=2.32.0' 'libgl' 'libnotify>=0.7.1' 'gnome-desktop>=2.32.0')
-makedepends=('pkgconfig' 'intltool' 'mesa' 'xscreensaver' 'libxss' 'libxslt')
+depends=('dbus-glib' 'gnome-menus' 'libgnomekbd' 'gnome-desktop' 'gsettings-desktop-schemas')
+makedepends=('pkgconfig' 'intltool' 'libxss')
optdepends=('xscreensaver')
groups=('gnome')
options=(!emptydirs)
install=gnome-screensaver.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2
- gnome-screensaver.pam
- gnome-screensaver-2.30.2-libnotify-0.7.patch)
-sha256sums=('dd52ef278b23ec5abe5974548c2d576eeaeb5294c85e9f2efd6231ecc9ca09fa'
- '2744d1fc39da46fc681b7cf1c9230d2035b2bb8d9f510213fbe439c114eb76a2'
- 'fd79843008fb93d6caa5f84dd4766c99895ce520517b17a2a334da8c869041bb')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
+ gnome-screensaver.pam)
+sha256sums=('e00e801d94c1d9f1e62049f77b91d822047eb1dcbd2e01cc38b5dd1b0f67c948'
+ '2744d1fc39da46fc681b7cf1c9230d2035b2bb8d9f510213fbe439c114eb76a2')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/gnome-screensaver-2.30.2-libnotify-0.7.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/gnome-screensaver \
--localstatedir=/var \
- --with-xscreensaverdir=/usr/share/xscreensaver/config \
- --with-xscreensaverhackdir=/usr/lib/xscreensaver \
--with-mit-ext
make
- make DESTDIR="${pkgdir}" install
-
- install -m644 "${srcdir}/gnome-screensaver.pam" "${pkgdir}/etc/pam.d/gnome-screensaver"
-
- #Migrate xscreensaver configuration files
- sed -e 's|Exec=|Exec=/usr/lib/xscreensaver/|' \
- -i data/xscreensaver-config.xsl
- cd "${pkgdir}/usr/share/applications/screensavers"
- "${srcdir}/${pkgname}-${pkgver}/data/migrate-xscreensaver-config.sh" \
- /usr/share/xscreensaver/config/*.xml
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-screensaver ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ install -Dm644 "${srcdir}/gnome-screensaver.pam" "${pkgdir}/etc/pam.d/gnome-screensaver"
}
diff --git a/extra/gnome-screensaver/gnome-screensaver.install b/extra/gnome-screensaver/gnome-screensaver.install
index d79cf1a1e..3b0e06046 100644
--- a/extra/gnome-screensaver/gnome-screensaver.install
+++ b/extra/gnome-screensaver/gnome-screensaver.install
@@ -1,17 +1,7 @@
pkgname=gnome-screensaver
-post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
-}
-
pre_upgrade() {
- pre_remove $1
-}
-
-post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+ fi
}
diff --git a/extra/gnome-session/PKGBUILD b/extra/gnome-session/PKGBUILD
index 19b00b8f5..14916a6dd 100644
--- a/extra/gnome-session/PKGBUILD
+++ b/extra/gnome-session/PKGBUILD
@@ -1,29 +1,31 @@
-# $Id: PKGBUILD 99762 2010-11-17 12:08:07Z ibiru $
+# $Id: PKGBUILD 120864 2011-04-26 21:44:03Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-session
-pkgver=2.32.1
+pkgver=3.0.1
pkgrel=1
pkgdesc="The GNOME Session Handler"
arch=(i686 x86_64 'mips64el')
license=('GPL' 'LGPL')
-depends=('upower>=0.9.7' 'gtk2>=2.22.0' 'gconf>=2.32.0' 'startup-notification>=0.10' 'hicolor-icon-theme' 'libxtst' 'polkit-gnome>=0.97')
-makedepends=('intltool' 'xtrans')
+depends=('upower' 'gtk3' 'gconf' 'startup-notification' 'hicolor-icon-theme' 'libxtst' 'polkit-gnome' 'libgl' 'librsvg'
+ 'gsettings-desktop-schemas' 'consolekit' 'libsm' 'dconf')
+makedepends=('intltool' 'mesa' 'xtrans')
options=('!emptydirs')
install=gnome-session.install
url="http://www.gnome.org"
groups=('gnome')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('22d93ce433fcf9c7ce6b5f36dd81f64e692ea0e41faaa0f61159ddac28c3686a')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('8a553569d500e84e5815e5b0b2eb1ac1bf4064ef9afb0e16f28d948978efbd25')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
- --libexecdir=/usr/lib
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --libexecdir=/usr/lib/gnome-session \
+ --disable-schemas-compile
make
- make DESTDIR="${pkgdir}" GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install
+}
- install -d -m755 "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-session-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-session/gnome-session.install b/extra/gnome-session/gnome-session.install
index 9fc55e1a5..74cf4ed22 100644
--- a/extra/gnome-session/gnome-session.install
+++ b/extra/gnome-session/gnome-session.install
@@ -1,22 +1,18 @@
-pkgname=gnome-session
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.91.91.3-3) < 0 )); then
+ usr/sbin/gconfpkg --uninstall gnome-session
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/gnome-settings-daemon/PKGBUILD b/extra/gnome-settings-daemon/PKGBUILD
index 223aeba35..9658f40a3 100644
--- a/extra/gnome-settings-daemon/PKGBUILD
+++ b/extra/gnome-settings-daemon/PKGBUILD
@@ -1,74 +1,33 @@
-# $Id: PKGBUILD 115412 2011-03-17 20:09:00Z ibiru $
+# $Id: PKGBUILD 120747 2011-04-26 10:46:20Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
-pkgbase=gnome-settings-daemon
-pkgname=(gnome-settings-daemon gnome-settings-daemon-pulse)
-pkgver=2.32.1
-pkgrel=4
+pkgname=gnome-settings-daemon
+pkgver=3.0.1
+pkgrel=1
pkgdesc="The GNOME Settings daemon"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libgnomekbd>=2.32.0' 'gnome-desktop>=2.32.0' 'libnotify>=0.7.1' 'hicolor-icon-theme' 'libgnome-data')
-makedepends=('intltool' 'libpulse' 'gstreamer0.10-base>=0.10.30' 'libcanberra')
+depends=('libgnomekbd' 'gnome-desktop' 'libnotify' 'hicolor-icon-theme'
+ 'libcanberra' 'gsettings-desktop-schemas' 'nss' 'gconf' 'dconf'
+ 'pulseaudio' 'pulseaudio-alsa')
+makedepends=('intltool' 'gtk-doc')
options=('!emptydirs' '!libtool')
install=gnome-settings-daemon.install
url="http://www.gnome.org"
groups=('gnome')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2
- gstreamer-volume-2.30.patch
- gnome-settings-daemon-2.32.1-libnotify-0.7.patch
- add_notify_init.patch)
-sha256sums=('0074b3fec3ad6e3ab91a05dc20906b06101ea8bca0cd2caf394a5cc141b05e86'
- '4b2a14c0e238f3cde71619b74f178544151bb319dee84b52133a254b85548582'
- 'da836e61ddaea8b3a90692951296a28c4533e1e117412a0602f6c76e564e837d'
- '3f81b1bf76b4e01fe6264be0de987fe9d346eee305a898dca630dea7d77b61f3')
+replaces=(gnome-settings-daemon-pulse)
+conflicts=(gnome-settings-daemon-pulse)
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('51cdd0842b907e95c79d4e2b26f554e26fc626f7c2e6c3a14e3fc7954ca91117')
build() {
- cd "$srcdir"
- cp -a "$pkgbase-$pkgver"{,-pulse}
-
- cd "$pkgbase-$pkgver"
- patch -Np0 -i "${srcdir}/gnome-settings-daemon-2.32.1-libnotify-0.7.patch"
- patch -Np1 -i "${srcdir}/add_notify_init.patch"
- patch -Np1 -i "${srcdir}/gstreamer-volume-2.30.patch"
- libtoolize --force
- aclocal
- autoconf
- automake
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
- --libexecdir=/usr/bin --disable-static --disable-pulse --enable-gstreamer
- make
-
- cd "$srcdir/$pkgbase-$pkgver-pulse"
- patch -Np0 -i "${srcdir}/gnome-settings-daemon-2.32.1-libnotify-0.7.patch"
- patch -Np1 -i "${srcdir}/add_notify_init.patch"
+ cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--libexecdir=/usr/bin --disable-static --enable-pulse
make
}
-_commonpackage() {
- make DESTDIR="${pkgdir}" GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install
-
- install -d -m755 "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgbase}.schemas" --domain gnome-settings-daemon ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
-}
-
-package_gnome-settings-daemon() {
- depends+=(gstreamer0.10-base)
-
- cd "${srcdir}/${pkgbase}-${pkgver}"
- _commonpackage
-}
-
-package_gnome-settings-daemon-pulse() {
- pkgdesc+=" with PulseAudio support"
- depends+=(libpulse libcanberra)
- groups=(pulseaudio-gnome)
- conflicts=(gnome-settings-daemon)
- provides=("gnome-settings-daemon=$pkgver-$pkgrel")
-
- cd "${srcdir}/${pkgbase}-${pkgver}-pulse"
- _commonpackage
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-settings-daemon/gnome-settings-daemon.install b/extra/gnome-settings-daemon/gnome-settings-daemon.install
index 004705d03..483fb9450 100644
--- a/extra/gnome-settings-daemon/gnome-settings-daemon.install
+++ b/extra/gnome-settings-daemon/gnome-settings-daemon.install
@@ -1,22 +1,18 @@
-pkgname=gnome-settings-daemon
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall gnome-settings-daemon
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/gnome-sharp/PKGBUILD b/extra/gnome-sharp/PKGBUILD
index b2127411c..c530818c4 100644
--- a/extra/gnome-sharp/PKGBUILD
+++ b/extra/gnome-sharp/PKGBUILD
@@ -1,27 +1,70 @@
-# $Id: PKGBUILD 30955 2009-03-22 19:41:36Z jgc $
+# $Id: PKGBUILD 119246 2011-04-11 14:46:11Z jgc $
# Maintainer: tobias <tobias@archlinux.org>
-pkgname=gnome-sharp
-pkgver=2.24.1
+pkgbase=gnome-sharp
+pkgname=('gnome-sharp' 'art-sharp' 'gconf-sharp' 'gconf-sharp-peditors' 'libgnome-sharp' 'gnome-vfs-sharp')
+pkgver=2.24.2
pkgrel=1
-pkgdesc="GNOME bindings for C#"
-arch=(i686 x86_64 'mips64el')
+arch=(i686 x86_64 mips64el)
license=(LGPL)
url="http://gtk-sharp.sourceforge.net"
-depends=('gtk-sharp-2>=2.12.8' 'libgnomeui>=2.24.1')
-makedepends=('pkgconfig' 'monodoc')
+makedepends=('gtk-sharp-2' 'libgnomeui' 'monodoc')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/gnome/sources/gnome-sharp/2.24/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('408f83f790a5189bcf76ea9299bc6410')
+source=(http://ftp.gnome.org/pub/gnome/sources/gnome-sharp/2.24/${pkgbase}-${pkgver}.tar.bz2)
+md5sums=('3b38f53960c736d4afb8f04204efe98b')
build() {
- # get rid of that .wapi errors; thanks to brice
+ # get rid of that .wapi errors; thanks to brice
export MONO_SHARED_DIR="${srcdir}/weird"
mkdir -p "${MONO_SHARED_DIR}"
- cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --sysconfdir=/etc || return 1
- make || return 1
- make GACUTIL="/usr/bin/gacutil /root ${pkgdir}/usr/lib" \
- DESTDIR="${pkgdir}" install || return 1
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc
+ make
+}
+
+package_gnome-sharp() {
+ pkgdesc="GNOME bindings for C#"
+ depends=('art-sharp' 'gconf-sharp' 'gconf-sharp-peditors' 'libgnome-sharp' 'gnome-vfs-sharp')
+}
+
+package_art-sharp() {
+ pkgdesc="Mono bindings for libart"
+ depends=('gtk-sharp-2' 'libart-lgpl')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make -C art install DESTDIR="${pkgdir}"
+}
+
+package_gconf-sharp() {
+ pkgdesc="Mono bindings for GConf"
+ depends=('gtk-sharp-2' 'gconf')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make -C gconf/GConf install DESTDIR="${pkgdir}"
+ make -C gconf/tools install DESTDIR="${pkgdir}"
+}
+
+package_gconf-sharp-peditors() {
+ pkgdesc="Mono bindings for GConf - Property Editing classes"
+ depends=('gconf-sharp' 'libgnome-sharp')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make -C gconf/GConf.PropertyEditors install DESTDIR="${pkgdir}"
+}
+
+package_libgnome-sharp() {
+ pkgdesc="Mono bindings for libgnome"
+ depends=('art-sharp' 'gnome-vfs-sharp' 'libgnomeui')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make -C gnome install DESTDIR="${pkgdir}"
+}
+
+package_gnome-vfs-sharp() {
+ pkgdesc="Mono bindings for GNOME-VFS"
+ depends=('gtk-sharp-2' 'gnome-vfs')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make -C gnomevfs install DESTDIR="${pkgdir}"
}
diff --git a/extra/gnome-shell/PKGBUILD b/extra/gnome-shell/PKGBUILD
new file mode 100644
index 000000000..847a2570b
--- /dev/null
+++ b/extra/gnome-shell/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id: PKGBUILD 120693 2011-04-25 23:29:13Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Flamelab <panosfilip@gmail.com
+
+pkgname=gnome-shell
+pkgver=3.0.1
+pkgrel=1
+pkgdesc="The next generation GNOME Shell"
+arch=('i686' 'x86_64')
+url="http://live.gnome.org/GnomeShell"
+license=('GPL2')
+depends=('mutter' 'gconf' 'dconf' 'gjs' 'gnome-menus' 'gnome-desktop' 'libcroco' 'libcanberra' 'libpulse' 'telepathy-glib' 'polkit-gnome'
+ 'gobject-introspection' 'evolution-data-server' 'gnome-bluetooth' 'gstreamer0.10' 'telepathy-logger')
+makedepends=('intltool' 'gnome-doc-utils')
+optdepends=('network-manager-applet: shell integration for networkmanager'
+ 'gnome-power-manager: shell integration for power management')
+options=('!libtool' '!emptydirs')
+install=gnome-shell.install
+groups=(gnome)
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2
+ arch.patch)
+sha256sums=('01f7ae942ba9687a5e67d62423843ed404d77b35f74acc212a5f391beed8e079'
+ 'a35d5e5f9f781728070aecae3bfe329f49dadcd50ca2984e0fbdd2219825a0db')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ patch -Np1 -i "${srcdir}/arch.patch"
+
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/gnome-shell \
+ --localstatedir=/var --disable-static \
+ --disable-schemas-compile
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+
+ install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-shell ${pkgdir}/etc/gconf/schemas/*.schemas
+ rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+}
diff --git a/extra/gnome-shell/arch.patch b/extra/gnome-shell/arch.patch
new file mode 100644
index 000000000..67baefdcb
--- /dev/null
+++ b/extra/gnome-shell/arch.patch
@@ -0,0 +1,12 @@
+diff -Nur gnome-shell.orig/data/org.gnome.shell.gschema.xml.in gnome-shell/data/org.gnome.shell.gschema.xml.in
+--- gnome-shell.orig/data/org.gnome.shell.gschema.xml.in 2011-04-06 08:47:58.638600793 -0700
++++ gnome-shell/data/org.gnome.shell.gschema.xml.in 2011-04-06 08:49:17.035274675 -0700
+@@ -30,7 +30,7 @@
+ </_description>
+ </key>
+ <key name="favorite-apps" type="as">
+- <default>[ 'mozilla-firefox.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'openoffice.org-writer.desktop', 'nautilus.desktop' ]</default>
++ <default>[ 'firefox.desktop', 'evolution.desktop', 'empathy.desktop', 'rhythmbox.desktop', 'shotwell.desktop', 'writer.desktop', 'nautilus.desktop' ]</default>
+ <_summary>List of desktop file IDs for favorite applications</_summary>
+ <_description>
+ The applications corresponding to these identifiers
diff --git a/extra/gnome-shell/gnome-shell.install b/extra/gnome-shell/gnome-shell.install
new file mode 100644
index 000000000..a07105c24
--- /dev/null
+++ b/extra/gnome-shell/gnome-shell.install
@@ -0,0 +1,22 @@
+pkgname=gnome-shell
+
+post_install() {
+ glib-compile-schemas usr/share/glib-2.0/schemas
+ usr/sbin/gconfpkg --install ${pkgname}
+}
+
+pre_upgrade() {
+ pre_remove $1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+}
+
+post_remove() {
+ glib-compile-schemas usr/share/glib-2.0/schemas
+}
diff --git a/extra/gnome-system-monitor/PKGBUILD b/extra/gnome-system-monitor/PKGBUILD
index 632241283..b383bb180 100644
--- a/extra/gnome-system-monitor/PKGBUILD
+++ b/extra/gnome-system-monitor/PKGBUILD
@@ -1,29 +1,29 @@
-# $Id: PKGBUILD 92037 2010-09-28 17:18:42Z ibiru $
+# $Id: PKGBUILD 117833 2011-04-04 18:12:02Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-system-monitor
-pkgver=2.28.2
+pkgver=3.0.0
pkgrel=1
pkgdesc="A system monitor for GNOME"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('libgksu>=2.0.5' 'libwnck>=2.30.5' 'gconf>=2.32.0' 'libgtop>=2.28.2' 'gtkmm>=2.20.' 'librsvg>=2.32.0' 'gnome-icon-theme>=2.31.0')
-makedepends=('pkgconfig' 'gnome-doc-utils>=0.20.0' 'intltool')
+depends=('libwnck3' 'libgtop' 'gtkmm3' 'librsvg' 'gnome-icon-theme')
+makedepends=('pkgconfig' 'gnome-doc-utils' 'intltool')
options=(!emptydirs)
url="http://www.gnome.org"
groups=('gnome-extra')
install=gnome-system-monitor.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.28/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('b628edfd39e3a6b374ce133f367d3568475eb4e981a367f4f9d62a9784e5ae59')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('8d4b695ec165645c3d070f3296dc25cea4e3f1f4da7b4afa10ff1c166cc62d24')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-scrollkeeper
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" ${pkgdir}/etc/gconf/schemas/*.schemas || return 1
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/gnome-system-monitor/gnome-system-monitor.install b/extra/gnome-system-monitor/gnome-system-monitor.install
index b20f5f3b9..e2957a570 100644
--- a/extra/gnome-system-monitor/gnome-system-monitor.install
+++ b/extra/gnome-system-monitor/gnome-system-monitor.install
@@ -1,17 +1,19 @@
pkgname=gnome-system-monitor
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ glib-compile-schemas usr/share/glib-2.0/schemas
}
pre_upgrade() {
- pre_remove $1
+ if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+ fi
}
post_upgrade() {
- post_install $1
+ post_install $1
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+post_remove() {
+ post_install $1
}
diff --git a/extra/gnome-terminal/PKGBUILD b/extra/gnome-terminal/PKGBUILD
index 71907e069..af4f474be 100644
--- a/extra/gnome-terminal/PKGBUILD
+++ b/extra/gnome-terminal/PKGBUILD
@@ -1,26 +1,37 @@
-# $Id: PKGBUILD 99463 2010-11-14 19:45:28Z ibiru $
+# $Id: PKGBUILD 121328 2011-04-30 15:31:28Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-terminal
-pkgver=2.32.1
-pkgrel=1
+pkgver=3.0.1
+pkgrel=2
pkgdesc="The GNOME Terminal Emulator"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('gconf>=2.32.0' 'vte>=0.26.2' 'libgnome-data' 'libsm')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool')
+depends=('gconf' 'vte3' 'gsettings-desktop-schemas' 'libsm')
+makedepends=('gnome-doc-utils' 'gtk2' 'intltool')
+#gtk2 is needed for gtk-builder-convert
+#https://bugzilla.gnome.org/show_bug.cgi?id=588945
+#https://bugzilla.gnome.org/show_bug.cgi?id=588732
options=('!emptydirs')
url="http://www.gnome.org"
groups=('gnome')
install=gnome-terminal.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('7f41e4b185a2cf65ff417b89e429fc3b625c5e3f042ee1763bda6490fa4676fb')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2
+ exitcode.patch)
+sha256sums=('388eda40663566cb785e2d92180e0b584c2c89acc3e7bcd30605601710fddc48'
+ '263030e9905329d8e651421b575a80c37e30733373378896c94d2c6d6e0ee056')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -Np1 -i "${srcdir}/exitcode.patch"
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-scrollkeeper
+ --localstatedir=/var --disable-scrollkeeper \
+ --with-gtk=3.0
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/gnome-terminal/exitcode.patch b/extra/gnome-terminal/exitcode.patch
new file mode 100644
index 000000000..ded5e6dc0
--- /dev/null
+++ b/extra/gnome-terminal/exitcode.patch
@@ -0,0 +1,25 @@
+From 6eb49392fad8c76ade38fbd712509f0daa419a06 Mon Sep 17 00:00:00 2001
+From: Jan de Groot <jan@jgc.homeip.net>
+Date: Thu, 31 Mar 2011 12:27:37 +0200
+Subject: [PATCH] Initialize exit status with EXIT_SUCCESS instead of -1. When things go wrong, the exit status is set to something else anyways. Fixes bug #646317
+
+---
+ src/terminal.c | 2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/src/terminal.c b/src/terminal.c
+index 202b850..06de533 100644
+--- a/src/terminal.c
++++ b/src/terminal.c
+@@ -579,7 +579,7 @@ main (int argc, char **argv)
+ data = g_new (OwnData, 1);
+ data->factory_name = get_factory_name_for_display (display_name);
+ data->options = options;
+- data->exit_code = -1;
++ data->exit_code = EXIT_SUCCESS;
+ data->argv = argv_copy;
+ data->argc = argc_copy;
+
+--
+1.7.4.2
+
diff --git a/extra/gnome-themes-standard/PKGBUILD b/extra/gnome-themes-standard/PKGBUILD
new file mode 100644
index 000000000..0bc006cf1
--- /dev/null
+++ b/extra/gnome-themes-standard/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 120589 2011-04-25 17:43:37Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=gnome-themes-standard
+pkgver=3.0.1
+pkgrel=1
+pkgdesc="Default themes for the GNOME desktop"
+arch=('i686' 'x86_64')
+url="http://abattis.org/cantarell/"
+license=('GPL2')
+depends=('cantarell-fonts' 'gtk3' 'gtk-engines')
+makedepends=('intltool')
+groups=('gnome')
+replaces=('gnome-themes')
+conflicts=('gnome-themes')
+source=(http://download.gnome.org/sources/$pkgname/3.0/$pkgname-${pkgver}.tar.bz2)
+sha256sums=('9630b12c02d8a05a328cb0bef111bb776b86639c9c582475943f71666ab82677')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/gnome-user-share/PKGBUILD b/extra/gnome-user-share/PKGBUILD
index bd4b2e84a..82c43da59 100644
--- a/extra/gnome-user-share/PKGBUILD
+++ b/extra/gnome-user-share/PKGBUILD
@@ -1,29 +1,30 @@
-# $Id: PKGBUILD 112854 2011-03-07 09:18:18Z ibiru $
+# $Id: PKGBUILD 117703 2011-04-04 16:40:52Z ibiru $
# Maintainer: Roman Kyrylych <roman@archlinux.org>
pkgname=gnome-user-share
-pkgver=2.30.1
-pkgrel=2
+pkgver=3.0.0
+pkgrel=1
pkgdesc="Easy to use user-level file sharing for GNOME."
arch=('i686' 'x86_64' 'mips64el')
url="http://ftp.gnome.org/pub/GNOME/sources/gnome-user-share/"
license=('GPL')
-depends=('mod_dnssd>=0.6-3' 'gconf>=2.32.0' 'hicolor-icon-theme' 'libnotify>=0.7.1' 'gnome-bluetooth>=2.31.90' 'libcanberra>=0.25')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.1' 'nautilus')
+depends=('mod_dnssd' 'gconf' 'gtk3' 'hicolor-icon-theme' 'libnotify' 'gnome-bluetooth' 'libcanberra')
+makedepends=('intltool' 'gnome-doc-utils' 'nautilus')
options=('!emptydirs' '!libtool')
install=gnome-user-share.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2
- gnome-user-share-2.30.1-libnotify-0.7.patch)
-sha256sums=('30ba07420a495450f80b4be001601150453ddc3504ff23c486fd1541ff5a1bfe'
- '60fcfe4a7120b7a917e2aec227f3a40fe4993bc9c80f2722f856fbe4e6e4994e')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('1987d08ebb88bd3fecd7c76d2d9549dba2c7132a7c2b3cfe68fdc2a24260fafe')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/gnome-user-share-2.30.1-libnotify-0.7.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/gnome-user-share \
--localstatedir=/var
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/gnome-utils/PKGBUILD b/extra/gnome-utils/PKGBUILD
index 698923dee..bf6b99380 100644
--- a/extra/gnome-utils/PKGBUILD
+++ b/extra/gnome-utils/PKGBUILD
@@ -1,30 +1,35 @@
-# $Id: PKGBUILD 91827 2010-09-28 07:52:07Z jgc $
+# $Id: PKGBUILD 120619 2011-04-25 18:27:58Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-utils
-pkgver=2.32.0
+pkgver=3.0.1
pkgrel=1
pkgdesc="Common utilities for GNOME"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('libgtop>=2.28.1' 'libcanberra>=0.25' 'libsm' 'gconf>=2.32.0')
-makedepends=('gnome-doc-utils>=0.20.1' 'pkgconfig' 'intltool' 'gnome-panel-bonobo>=2.32.0.2')
-optdepends=('gnome-panel-bonobo: GDict panel applet')
+depends=('libgtop' 'libcanberra' 'libsm' 'gconf' 'gsettings-desktop-schemas' 'hicolor-icon-theme' 'desktop-file-utils')
+makedepends=('gnome-doc-utils' 'pkgconfig' 'intltool')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org"
groups=('gnome-extra')
install=gnome-utils.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('033a55cf442096b28ea6292043354feafe000d1e5f4ebb962a9b6d72eb9a93fa')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('7debe9ca4ba8b8852f67c1a359c613dbfa10e10abfaa2235261cbc2520daf218')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/gnome-utils \
--localstatedir=/var --disable-static \
- --disable-scrollkeeper
+ --disable-scrollkeeper \
+ --disable-schemas-compile \
+ --disable-schemas-install
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-utils-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
@@ -32,4 +37,5 @@ build() {
# remove it also from Xfce menu that ships its own thingy
sed -i -e "s/NotShowIn\=KDE\;/NotShowIn\=KDE\;XFCE\;/" ${pkgdir}/usr/share/applications/gnome-dictionary.desktop
+ sed -i -e "s/NotShowIn\=KDE\;/NotShowIn\=KDE\;XFCE\;/" ${pkgdir}/usr/share/applications/gnome-screenshot.desktop
}
diff --git a/extra/gnome-utils/gnome-utils.install b/extra/gnome-utils/gnome-utils.install
index 20d53f2b5..a04bda405 100644
--- a/extra/gnome-utils/gnome-utils.install
+++ b/extra/gnome-utils/gnome-utils.install
@@ -2,7 +2,9 @@ pkgname=gnome-utils
post_install() {
usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ update-desktop-database -q
}
pre_upgrade() {
@@ -18,5 +20,7 @@ pre_remove() {
}
post_remove() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ update-desktop-database -q
}
diff --git a/extra/gnome-vfs/PKGBUILD b/extra/gnome-vfs/PKGBUILD
index 7a081928e..9bffe9dec 100644
--- a/extra/gnome-vfs/PKGBUILD
+++ b/extra/gnome-vfs/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 92007 2010-09-28 16:42:58Z ibiru $
+# $Id: PKGBUILD 119776 2011-04-15 07:50:36Z jgc $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-vfs
pkgver=2.24.4
-pkgrel=1
+pkgrel=2
pkgdesc="The GNOME Virtual File System"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('fam' 'gconf>=2.32.0' 'hal>=0.5.13' 'bzip2' 'avahi>=0.6.27' 'smbclient>=3.5.5' 'gnome-mime-data>=2.18.0-2' 'heimdal>=1.3.3' 'gnutls>=2.8.6')
+depends=('fam' 'gconf' 'bzip2' 'avahi' 'smbclient' 'gnome-mime-data' 'heimdal' 'gnutls')
makedepends=('pkgconfig' 'intltool' 'gtk-doc' 'gnome-common')
options=('!libtool' '!emptydirs' '!makeflags')
conflicts=(gnome-vfs-samba)
@@ -16,17 +16,12 @@ replaces=(gnome-vfs-samba gnome-vfs-extras)
url="http://www.gnome.org"
install=gnome-vfs.install
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.24/gnome-vfs-${pkgver}.tar.bz2
- hal-show-volume-names.patch
gnutls-config.patch)
sha256sums=('62de64b5b804eb04104ff98fcd6a8b7276d510a49fbd9c0feb568f8996444faa'
- 'b38b86d6c966dcf64f9140d800aebe8a14845bb8ce7c045f52d4df483cacd23b'
'66c7cfb12995c0dd94a2caea95c7e3c55981993f05a79c585d60915ff131955d')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- #Archlinux patch (b.g.o #321498)
- patch -Np1 -i "${srcdir}/hal-show-volume-names.patch"
-
#Fix build with new gnutls
patch -Np1 -i "${srcdir}/gnutls-config.patch"
libtoolize --force
@@ -37,13 +32,13 @@ build() {
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
--libexecdir=/usr/lib/gnome-vfs-2.0 \
- --enable-samba --enable-hal \
+ --enable-samba --disable-hal \
--enable-avahi --disable-howl \
--disable-openssl --enable-gnutls
make
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -d -m755 "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-vfs-2.0 ${startdir}/pkg/etc/gconf/schemas/*.schemas
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-vfs-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
diff --git a/extra/gobject-introspection/PKGBUILD b/extra/gobject-introspection/PKGBUILD
index 991951467..a3471ac2c 100644
--- a/extra/gobject-introspection/PKGBUILD
+++ b/extra/gobject-introspection/PKGBUILD
@@ -1,19 +1,19 @@
-# $Id: PKGBUILD 104477 2011-01-03 16:00:03Z ibiru $
+# $Id: PKGBUILD 120263 2011-04-21 19:51:52Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gobject-introspection
-pkgver=0.9.12
+pkgver=0.10.8
pkgrel=1
pkgdesc="Introspection system for GObject-based libraries"
url="http://live.gnome.org/GObjectInstrospection"
arch=('x86_64' 'i686' 'mips64el')
license=('LGPL' 'GPL')
-depends=('libffi>=3.0.9' 'glib2>=2.26.0' 'python2')
+depends=('libffi' 'glib2' 'python2')
makedepends=('cairo')
conflicts=('gir-repository')
replaces=('gir-repository')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.9/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('9c0060d66d14a060057a1fc005be73675a1b8a00d4968ce8e78ff2d6b9f84e81')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.10/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('5b1387ff37f03db880a2b1cbd6c6b6dfb923a29468d4d8367c458abf7704c61e')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -25,6 +25,6 @@ package() {
cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
- sed -i "s|#!/usr/bin/env python|#!/usr/bin/env python2|" \
+ sed -i '1s|#!/usr/bin/env python$|&2|' \
"${pkgdir}"/usr/lib/gobject-introspection/giscanner/*.py
}
diff --git a/extra/gthumb/PKGBUILD b/extra/gthumb/PKGBUILD
index 99cec0532..22b63c6ba 100644
--- a/extra/gthumb/PKGBUILD
+++ b/extra/gthumb/PKGBUILD
@@ -1,27 +1,28 @@
-# $Id: PKGBUILD 110931 2011-02-23 07:45:35Z eric $
+# $Id: PKGBUILD 113327 2011-03-08 12:34:07Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Tobias Kieslich <tobias@justdreams.de>
pkgname=gthumb
-pkgver=2.12.2
-pkgrel=2
+pkgver=2.13.1
+pkgrel=1
pkgdesc="Image browser and viewer for the GNOME Desktop"
arch=(i686 x86_64 'mips64el')
license=('GPL')
url="http://gthumb.sourceforge.net/"
-depends=('desktop-file-utils' 'libunique>=1.1.2' 'gconf' 'exiv2' 'libsoup-gnome')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.1' 'libsm' 'gstreamer0.10-base' 'brasero')
+depends=('desktop-file-utils' 'libunique' 'gconf' 'exiv2' 'libsoup-gnome' 'clutter-gtk2')
+makedepends=('intltool' 'gnome-doc-utils' 'libsm' 'gstreamer0.10-base' 'brasero')
optdepends=('gstreamer0.10-base: video support')
options=('!libtool' '!emptydirs')
install=gthumb.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.12/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('bce8111e4d699620ae0399963798ff25929df8c8546f4949e2a871b330277091')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('3b124e1b3ae5a3496d9392c11052792e5168535b849756b53cefd9d7b1e8e7b9')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static
- make
+ --localstatedir=/var --disable-static \
+ --disable-libbrasero
+ make V=1
}
package() {
diff --git a/extra/gtk-vnc/PKGBUILD b/extra/gtk-vnc/PKGBUILD
index c47a5920c..a7e0372fb 100644
--- a/extra/gtk-vnc/PKGBUILD
+++ b/extra/gtk-vnc/PKGBUILD
@@ -1,30 +1,40 @@
-# $Id: PKGBUILD 103626 2010-12-22 00:02:22Z andrea $
+# $Id: PKGBUILD 110311 2011-02-18 20:01:10Z heftig $
# Maintainer:
# Contributor: Jan de Groot <jgc@archlinux.org>
# Contributor: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: lp76 <l.peduto@gmail.com>
pkgname=gtk-vnc
-pkgver=0.4.2
-pkgrel=2
+pkgver=0.4.3
+pkgrel=1
pkgdesc="A VNC viewer widget for GTK"
arch=('i686' 'x86_64' 'mips64el')
url="http://live.gnome.org/gtk-vnc"
license=('LGPL')
-depends=('gtk2' 'gobject-introspection')
-makedepends=('pkgconfig' 'intltool' 'pygtk' 'perl-text-csv')
-options=('!libtool' '!makeflags')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.4/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('96e948b62984a1a3a32fd83793fb645c493c1bc93b303eb831ecafee01a956d2')
+depends=('gtk3')
+optdepends=('gtk2: GTK2 widget')
+makedepends=('intltool' 'pygtk' 'pygobject-devel' 'gtk-doc' 'gtk2')
+options=('!libtool')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('b9870d923d636d2e7547267d01c8cafdc06ad5b5b4987003ea3cd567bfbb6377')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --with-python \
- --with-examples --disable-static
- make
+ cd "$srcdir"
+ cp -a $pkgname-$pkgver gtk3-build
+
+ ( cd $pkgname-$pkgver
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --with-python --disable-static --with-gtk=2.0
+ make )
+
+ ( cd gtk3-build
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --with-python --with-examples --disable-static --with-gtk=3.0
+ make )
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" install
+ cd "${srcdir}"
+ make -C $pkgname-$pkgver -j1 DESTDIR="${pkgdir}" install
+ make -C gtk3-build -j1 DESTDIR="${pkgdir}" install
}
diff --git a/extra/gtk2/PKGBUILD b/extra/gtk2/PKGBUILD
index 2e0cbada3..5fcc6a520 100644
--- a/extra/gtk2/PKGBUILD
+++ b/extra/gtk2/PKGBUILD
@@ -1,40 +1,50 @@
-# $Id: PKGBUILD 99604 2010-11-15 19:29:19Z ibiru $
+# $Id: PKGBUILD 117444 2011-04-02 06:12:32Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
-pkgname=gtk2
-pkgver=2.22.1
+pkgbase=gtk2
+pkgname=('gtk2' 'gtk-update-icon-cache')
+pkgver=2.24.4
pkgrel=1
-pkgdesc="The GTK+ Toolkit (v2)"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gtk.org/"
-install=gtk2.install
-depends=('atk>=1.30.0' 'pango>=1.28.0' 'libxcursor' 'libxinerama' 'libxrandr>=1.3.0' 'libxi>=1.3' 'libxcomposite' 'libxdamage' 'heimdal>=1.3.2' 'gnutls>=2.8.6' 'shared-mime-info' 'cairo>=1.10.0' 'libcups>=1.4.4' 'gdk-pixbuf2>=2.22.1')
-makedepends=('gtk-doc' 'gobject-introspection')
-replaces=('gtkprint-cups' 'gail')
-conflicts=('gtkprint-cups' 'gail')
-provides=('gail=1.22.3')
+makedepends=('atk' 'pango' 'libxcursor' 'libxinerama' 'libxrandr' 'libxi' 'libxcomposite' 'libxdamage' 'heimdal' 'gnutls'
+ 'shared-mime-info' 'cairo' 'libcups' 'gdk-pixbuf2' 'gobject-introspection')
options=('!libtool' '!docs')
-backup=(etc/gtk-2.0/gtkrc)
license=('LGPL')
-source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/2.22/gtk+-${pkgver}.tar.bz2
- xid-collision-debug.patch old-icon-symlinks.patch)
-sha256sums=('965bc124f0d25087c4cb2a64cbfd7e4f896e05be8d560fbba68dd8685ba24d07'
- 'd758bb93e59df15a4ea7732cf984d1c3c19dff67c94b957575efea132b8fe558'
- '1298e4103f71d0304378f1e7503011150f6f68398ae8ebae5522a48feaea7c0d')
+source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-${pkgver}.tar.bz2
+ xid-collision-debug.patch)
+sha256sums=('7d3033ad83647079977466d3e8f1a7533f47abd5cc693f01b8797ff43dd407a5'
+ 'd758bb93e59df15a4ea7732cf984d1c3c19dff67c94b957575efea132b8fe558')
build() {
- cd "${srcdir}/gtk+-${pkgver}"
- patch -Np1 -i "${srcdir}/xid-collision-debug.patch"
- patch -Np1 -i "${srcdir}/old-icon-symlinks.patch"
+ cd "${srcdir}/gtk+-${pkgver}"
+ patch -Np1 -i "${srcdir}/xid-collision-debug.patch"
- CXX=/bin/false ./configure --prefix=/usr \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --with-xinput=yes
- make
- make DESTDIR="${pkgdir}" install
+ CXX=/bin/false ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --with-xinput=yes
+ make
+}
+package_gtk2() {
+ pkgdesc="The GTK+ Toolkit (v2)"
+ install=gtk2.install
+ depends=('atk' 'pango' 'libxcursor' 'libxinerama' 'libxrandr' 'libxi' 'libxcomposite' 'libxdamage' 'heimdal' 'gnutls' 'shared-mime-info' 'cairo' 'libcups' 'gtk-update-icon-cache')
+ backup=(etc/gtk-2.0/gtkrc)
+
+ cd "${srcdir}/gtk+-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+ sed -i "s#env python#env python2#" $pkgdir/usr/bin/gtk-builder-convert
+ echo 'gtk-fallback-icon-theme = "gnome"' > "${pkgdir}/etc/gtk-2.0/gtkrc"
+ #split this out to use with gtk3 too
+ rm ${pkgdir}/usr/bin/gtk-update-icon-cache
+}
+package_gtk-update-icon-cache() {
+ pkgdesc="The GTK+ update icon cache tool"
+ depends=('gdk-pixbuf2')
- sed -i "s#env python#env python2#" $pkgdir/usr/bin/gtk-builder-convert
+ cd "${srcdir}/gtk+-${pkgver}/gtk"
- echo 'gtk-fallback-icon-theme = "gnome"' > "${pkgdir}/etc/gtk-2.0/gtkrc"
+ install -D -m755 gtk-update-icon-cache ${pkgdir}/usr/bin/gtk-update-icon-cache
}
diff --git a/extra/gtk3/PKGBUILD b/extra/gtk3/PKGBUILD
new file mode 100644
index 000000000..7c3a55dba
--- /dev/null
+++ b/extra/gtk3/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 119847 2011-04-15 22:42:57Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+
+pkgname=gtk3
+pkgver=3.0.9
+pkgrel=1
+pkgdesc="The GTK+ Toolkit (v3)"
+arch=('i686' 'x86_64')
+url="http://www.gtk.org/"
+install=gtk3.install
+depends=('atk' 'cairo' 'gtk-update-icon-cache' 'gnutls' 'heimdal' 'libcups' 'libxcursor' 'libxinerama' 'libxrandr' 'libxi' 'libxcomposite' 'libxdamage' 'pango' 'shared-mime-info')
+makedepends=('gobject-introspection')
+options=('!libtool' '!docs')
+backup=(etc/gtk-3.0/settings.ini)
+license=('LGPL')
+source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/3.0/gtk+-${pkgver}.tar.bz2
+ settings.ini)
+sha256sums=('88a9dda6f2a23155ac3d7aca6b414ca3b55e2817b46bcc87733f1a407e16678c'
+ 'c214d3dcdcadda3d642112287524ab3e526ad592b70895c9f3e3733c23701621')
+
+build() {
+ cd "${srcdir}/gtk+-${pkgver}"
+ CXX=/bin/false ./configure --prefix=/usr \
+ --sysconfdir=/etc \
+ --localstatedir=/var \
+ --enable-gtk2-dependency \
+ --disable-schemas-compile
+ make
+}
+
+package() {
+ cd "${srcdir}/gtk+-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ install -Dm644 "${srcdir}/settings.ini" "${pkgdir}/etc/gtk-3.0/settings.ini"
+}
diff --git a/extra/gtk3/gtk3.install b/extra/gtk3/gtk3.install
new file mode 100644
index 000000000..cd8965d1f
--- /dev/null
+++ b/extra/gtk3/gtk3.install
@@ -0,0 +1,15 @@
+post_install() {
+ usr/bin/gtk-query-immodules-3.0 --update-cache
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+}
+
+post_upgrade() {
+ post_install
+}
+
+pre_remove() {
+ rm -f usr/lib/gtk-3.0/3.0.0/immodules.cache
+}
+post_remove() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+}
diff --git a/extra/gtk3/settings.ini b/extra/gtk3/settings.ini
new file mode 100644
index 000000000..039000d38
--- /dev/null
+++ b/extra/gtk3/settings.ini
@@ -0,0 +1,2 @@
+[Settings]
+gtk-fallback-icon-theme = gnome
diff --git a/extra/gtkhtml4/PKGBUILD b/extra/gtkhtml4/PKGBUILD
new file mode 100644
index 000000000..9bb6bc140
--- /dev/null
+++ b/extra/gtkhtml4/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 120569 2011-04-25 17:16:30Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+
+pkgname=gtkhtml4
+_pkgbasename=gtkhtml
+pkgver=4.0.1
+pkgrel=1
+pkgdesc="A lightweight HTML renderer/editor widget for GTK3"
+arch=(i686 x86_64)
+license=('GPL')
+depends=('gconf' 'enchant' 'iso-codes' 'gnome-icon-theme' 'libsoup')
+makedepends=('intltool')
+url="http://www.gnome.org"
+options=('!libtool')
+source=(http://ftp.gnome.org/pub/gnome/sources/${_pkgbasename}/${pkgver%.*}/${_pkgbasename}-${pkgver}.tar.bz2)
+sha256sums=('13fd845ce2ebc837fd4771d2dd0c103bde20faad9f77f6c7a62ff7d8099557ff')
+
+build() {
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/gtkhtml4 \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/gtkmm/PKGBUILD b/extra/gtkmm/PKGBUILD
index 1378177db..babd7c197 100644
--- a/extra/gtkmm/PKGBUILD
+++ b/extra/gtkmm/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 100506 2010-11-23 19:11:38Z heftig $
+# $Id: PKGBUILD 109786 2011-02-12 18:59:28Z ibiru $
# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=gtkmm
pkgname=('gtkmm' 'gtkmm-docs')
-pkgver=2.22.0
+pkgver=2.24.0
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
-makedepends=('gtk2>=2.22.1' 'pangomm>=2.26.2' 'atkmm>=2.22.1' 'glibmm-docs>=2.24.2')
+makedepends=('gtk2' 'pangomm' 'atkmm' 'glibmm-docs')
license=('LGPL')
options=('!libtool' '!emptydirs')
url="http://gtkmm.sourceforge.net/"
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.22/${pkgbase}-${pkgver}.tar.bz2)
-sha256sums=('8478d80d8d4793c2e1c459a71bad6a767a43eaf2664da06a9bd65a2b98bb07b1')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.24/${pkgbase}-${pkgver}.tar.bz2)
+sha256sums=('8cbae7254746bc7df7cce882d9b9a916c4e00dba7bdacd1c50b5d096a484cf56')
build() {
cd "${srcdir}/${pkgbase}-${pkgver}"
@@ -22,7 +22,7 @@ build() {
package_gtkmm() {
pkgdesc="C++ bindings for gtk2"
- depends=('gtk2>=2.22.1' 'pangomm>=2.26.2' 'atkmm>=2.22.1')
+ depends=('gtk2' 'pangomm' 'atkmm')
cd "${srcdir}/${pkgbase}-${pkgver}"
sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile
@@ -31,7 +31,7 @@ package_gtkmm() {
}
package_gtkmm-docs() {
- pkgdesc="Developer documentation for gtkmm"
+ pkgdesc="Developer documentation for gtkmm v2"
cd "${srcdir}/${pkgbase}-${pkgver}"
make -C docs DESTDIR="${pkgdir}" install
diff --git a/extra/gtkmm3/PKGBUILD b/extra/gtkmm3/PKGBUILD
new file mode 100644
index 000000000..0238faccb
--- /dev/null
+++ b/extra/gtkmm3/PKGBUILD
@@ -0,0 +1,38 @@
+# $Id: PKGBUILD 118358 2011-04-06 12:31:04Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+
+pkgbase=gtkmm3
+_pkgbasename=gtkmm
+pkgname=('gtkmm3' 'gtkmm3-docs')
+pkgver=3.0.0
+pkgrel=1
+arch=('i686' 'x86_64')
+makedepends=('gtk3' 'pangomm' 'atkmm' 'glibmm-docs' 'mm-common')
+license=('LGPL')
+options=('!libtool' '!emptydirs')
+url="http://gtkmm.sourceforge.net/"
+source=(http://ftp.gnome.org/pub/GNOME/sources/${_pkgbasename}/3.0/${_pkgbasename}-${pkgver}.tar.bz2)
+sha256sums=('567582948d4c47c29aa751162adc714644f50958d3d3e427c7a8c3818cd643f9')
+
+build() {
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ ./configure --prefix=/usr
+ make
+}
+
+package_gtkmm3() {
+ pkgdesc="C++ bindings for gtk3"
+ depends=('gtk3' 'pangomm' 'atkmm')
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+
+ sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile
+
+ make DESTDIR="${pkgdir}" install
+}
+
+package_gtkmm3-docs() {
+ pkgdesc="Developer documentation for gtkmm v3"
+
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ make -C docs DESTDIR="${pkgdir}" install
+}
diff --git a/extra/gtksourceview3/PKGBUILD b/extra/gtksourceview3/PKGBUILD
new file mode 100644
index 000000000..fb98d197d
--- /dev/null
+++ b/extra/gtksourceview3/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 120698 2011-04-25 23:34:40Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+
+pkgname=gtksourceview3
+_pkgbasename=gtksourceview
+pkgver=3.0.1
+pkgrel=1
+pkgdesc="A text widget adding syntax highlighting and more to GNOME"
+arch=('i686' 'x86_64')
+license=('GPL')
+depends=('gtk3' 'libxml2')
+makedepends=('intltool' 'pkgconfig' 'gobject-introspection')
+options=('!libtool')
+url="http://www.gnome.org"
+source=(http://ftp.gnome.org/pub/gnome/sources/$_pkgbasename/${pkgver%.*}/$_pkgbasename-${pkgver}.tar.bz2)
+sha256sums=('4e76f037184d56767e09df909490f10ee417a5265febae8a4d23255a902ae20a')
+
+build() {
+ cd "${srcdir}/$_pkgbasename-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/$_pkgbasename-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/gucharmap/PKGBUILD b/extra/gucharmap/PKGBUILD
index 50d19df67..36882078c 100644
--- a/extra/gucharmap/PKGBUILD
+++ b/extra/gucharmap/PKGBUILD
@@ -1,27 +1,32 @@
-# $Id: PKGBUILD 99468 2010-11-14 19:46:42Z ibiru $
+# $Id: PKGBUILD 120594 2011-04-25 17:46:45Z ibiru $
# Maintainer: Jan De Groot <jgc@archlinux.org>
pkgname=gucharmap
-pkgver=2.32.1
+pkgver=3.0.1
pkgrel=1
pkgdesc="Gnome Unicode Charmap"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org"
-depends=('gconf>=2.32.0' 'hicolor-icon-theme')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool')
+depends=('gconf' 'hicolor-icon-theme')
+makedepends=('gtk-doc' 'intltool' 'gobject-introspection')
groups=('gnome-extra')
options=('!libtool' '!emptydirs')
install=gucharmap.install
-source=(http://ftp.gnome.org/pub/gnome/sources/gucharmap/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('fdef066f35f4301bc128b91f15a30d64a2459721cb50daa53f923789df315c28')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('948a376f13af98ffe6be29c73f1d89d2dbc201abd697bb6e85c717d8242dcf75')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
- --disable-scrollkeeper
+ --disable-scrollkeeper --with-gtk=3.0 \
+ --enable-introspection
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make -j1 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/gvfs/PKGBUILD b/extra/gvfs/PKGBUILD
index 5646b05f4..40322ce77 100644
--- a/extra/gvfs/PKGBUILD
+++ b/extra/gvfs/PKGBUILD
@@ -1,17 +1,19 @@
-# $Id: PKGBUILD 98674 2010-11-12 16:49:58Z ibiru $
+# $Id: PKGBUILD 120775 2011-04-26 14:51:23Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=gvfs
pkgname=('gvfs' 'gvfs-smb' 'gvfs-afc' 'gvfs-gphoto2' 'gvfs-obexftp')
-pkgver=1.6.6
+pkgver=1.8.1
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-makedepends=('libsoup-gnome>=2.32.0' 'libcdio>=0.82' 'fuse>=2.8.4' 'bluez>=4.77' 'smbclient>=3.5.5' 'libgphoto2>=2.4.10' 'libarchive>=2.8.4' 'gnome-disk-utility>=2.32.0' 'pkgconfig' 'intltool' 'libimobiledevice>=1.0.2')
+makedepends=('libsoup-gnome' 'libcdio' 'fuse' 'bluez' 'smbclient' 'libgphoto2'
+ 'libarchive' 'gnome-disk-utility' 'pkgconfig' 'intltool'
+ 'libimobiledevice')
url="http://www.gnome.org"
options=(!libtool)
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/1.6/${pkgbase}-${pkgver}.tar.bz2)
-sha256sums=('902890deb6a670f642180ea958406ebb02af1d5867a464c87e493d56f1dde7bd')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/${pkgver%.*}/${pkgbase}-${pkgver}.tar.bz2)
+sha256sums=('7d305320d881d914d88286a72a311587ea33fbe5075101729cb5766f01832ff7')
build() {
cd "${srcdir}/${pkgbase}-${pkgver}"
@@ -24,7 +26,7 @@ build() {
package_gvfs() {
pkgdesc="Userspace virtual filesystem implemented as a pluggable module for gio"
- depends=('libsoup-gnome>=2.32.0' 'gnome-disk-utility>=2.32.0' 'libcdio>=0.82' 'fuse>=2.8.4' 'libarchive>=2.8.4')
+ depends=('libsoup-gnome' 'gnome-disk-utility' 'libcdio' 'fuse' 'libarchive')
optdepends=('gvfs-afc: AFC (mobile devices) support'
'gvfs-smb: SMB/CIFS (Windows client) support'
'gvfs-gphoto2: gphoto2 (PTP camera/MTP media player) support'
@@ -36,15 +38,18 @@ package_gvfs() {
-e 's/^am__append_4/#am__append_4/' \
-i monitor/Makefile
make DESTDIR="${pkgdir}" install
+
cd "${pkgdir}"
- rm -f usr/lib/gvfs/gvfsd-{smb,smb-browse,afc,gphoto2,obexftp}
- rm -f usr/share/gvfs/mounts/{smb,smb-browse,afc,gphoto2,obexftp}.mount
+ rm usr/lib/gvfs/gvfsd-{smb,smb-browse,afc,gphoto2,obexftp}
+ rm usr/share/gvfs/mounts/{smb,smb-browse,afc,gphoto2,obexftp}.mount
+ rm usr/share/glib-2.0/schemas/org.gnome.system.smb.gschema.xml
+ rm usr/share/GConf/gsettings/gvfs-smb.convert
}
package_gvfs-smb() {
pkgdesc="SMB/CIFS (Windows client) backend for gvfs"
- depends=("gvfs=${pkgver}" 'smbclient>=3.5.5' 'libgnome-keyring>=2.32.0')
- install=gvfs-module.install
+ depends=("gvfs=${pkgver}" 'smbclient' 'libgnome-keyring')
+ install=gvfs-smb.install
cd "${srcdir}/${pkgbase}-${pkgver}/daemon"
install -m755 -d "${pkgdir}/usr/lib/gvfs"
@@ -52,19 +57,21 @@ package_gvfs-smb() {
install -m755 .libs/gvfsd-smb{,-browse} "${pkgdir}/usr/lib/gvfs/"
install -m644 smb{,-browse}.mount "${pkgdir}/usr/share/gvfs/mounts/"
+
+ install -Dm644 org.gnome.system.smb.gschema.xml \
+ "${pkgdir}/usr/share/glib-2.0/schemas/org.gnome.system.smb.gschema.xml"
+ install -Dm644 gvfs-smb.convert \
+ "${pkgdir}/usr/share/GConf/gsettings/gvfs-smb.convert"
}
package_gvfs-afc() {
pkgdesc="AFC (mobile devices) backend for gvfs"
- depends=("gvfs=${pkgver}" 'libimobiledevice>=1.0.2')
+ depends=("gvfs=${pkgver}" 'libimobiledevice')
install=gvfs-module.install
cd "${srcdir}/${pkgbase}-${pkgver}/daemon"
- install -m755 -d "${pkgdir}/usr/lib/gvfs"
- install -m755 -d "${pkgdir}/usr/share/gvfs/mounts"
-
- install -m755 .libs/gvfsd-afc "${pkgdir}/usr/lib/gvfs/"
- install -m644 afc.mount "${pkgdir}/usr/share/gvfs/mounts/"
+ install -D .libs/gvfsd-afc "${pkgdir}/usr/lib/gvfs/gvfsd-afc"
+ install -Dm644 afc.mount "${pkgdir}/usr/share/gvfs/mounts/afc.mount"
cd "${srcdir}/${pkgbase}-${pkgver}/monitor/afc"
make DESTDIR="${pkgdir}" install
@@ -72,15 +79,12 @@ package_gvfs-afc() {
package_gvfs-gphoto2() {
pkgdesc="gphoto2 (PTP camera/MTP media player) backend for gvfs"
- depends=("gvfs=${pkgver}" 'dbus-core>=1.4.0' 'libgphoto2>=2.4.10' 'udev>=163')
+ depends=("gvfs=${pkgver}" 'dbus-core' 'libgphoto2' 'udev')
install=gvfs-module.install
cd "${srcdir}/${pkgbase}-${pkgver}/daemon"
- install -m755 -d "${pkgdir}/usr/lib/gvfs"
- install -m755 -d "${pkgdir}/usr/share/gvfs/mounts"
-
- install -m755 .libs/gvfsd-gphoto2 "${pkgdir}/usr/lib/gvfs/"
- install -m644 gphoto2.mount "${pkgdir}/usr/share/gvfs/mounts/"
+ install -D .libs/gvfsd-gphoto2 "${pkgdir}/usr/lib/gvfs/gvfsd-gphoto2"
+ install -Dm644 gphoto2.mount "${pkgdir}/usr/share/gvfs/mounts/gphoto2.mount"
cd "${srcdir}/${pkgbase}-${pkgver}/monitor/gphoto2"
make DESTDIR="${pkgdir}" install
@@ -88,13 +92,10 @@ package_gvfs-gphoto2() {
package_gvfs-obexftp() {
pkgdesc="ObexFTP (bluetooth) backend for gvfs"
- depends=("gvfs=${pkgver}" 'dbus-glib>=0.86' 'bluez>=4.77' 'obex-data-server')
+ depends=("gvfs=${pkgver}" 'dbus-glib' 'bluez' 'obex-data-server')
install=gvfs-module.install
cd "${srcdir}/${pkgbase}-${pkgver}/daemon"
- install -m755 -d "${pkgdir}/usr/lib/gvfs"
- install -m755 -d "${pkgdir}/usr/share/gvfs/mounts"
-
- install -m755 .libs/gvfsd-obexftp "${pkgdir}/usr/lib/gvfs/"
- install -m644 obexftp.mount "${pkgdir}/usr/share/gvfs/mounts/"
+ install -D .libs/gvfsd-obexftp "${pkgdir}/usr/lib/gvfs/gvfsd-obexftp"
+ install -Dm644 obexftp.mount "${pkgdir}/usr/share/gvfs/mounts/obexftp.mount"
}
diff --git a/extra/gvfs/gvfs-smb.install b/extra/gvfs/gvfs-smb.install
new file mode 100644
index 000000000..0b8783c7b
--- /dev/null
+++ b/extra/gvfs/gvfs-smb.install
@@ -0,0 +1,12 @@
+post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ killall -USR1 gvfsd >&/dev/null || :
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+}
diff --git a/extra/gvfs/gvfs.install b/extra/gvfs/gvfs.install
index 5acc60f8f..9458b1513 100644
--- a/extra/gvfs/gvfs.install
+++ b/extra/gvfs/gvfs.install
@@ -1,5 +1,6 @@
post_install() {
usr/bin/gio-querymodules usr/lib/gio/modules
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
killall -USR1 gvfsd >&/dev/null || :
}
@@ -9,4 +10,5 @@ post_upgrade() {
post_remove() {
usr/bin/gio-querymodules usr/lib/gio/modules
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
}
diff --git a/extra/iptraf-ng/PKGBUILD b/extra/iptraf-ng/PKGBUILD
index c15932048..b47082e86 100644
--- a/extra/iptraf-ng/PKGBUILD
+++ b/extra/iptraf-ng/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 119065 2011-04-10 18:53:50Z ibiru $
+# $Id: PKGBUILD 121278 2011-04-30 08:10:51Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Maintainer: sh0 <mee@sh0.org>
pkgname=iptraf-ng
pkgver=1.0.2
-pkgrel=1
+pkgrel=2
pkgdesc="A console-based network monitoring utility (a fork of original iptraf)"
url="https://fedorahosted.org/iptraf-ng/"
arch=('i686' 'x86_64' 'mips64el')
@@ -25,6 +25,7 @@ build() {
package() {
cd "$srcdir/${pkgname}-${pkgver}"
make DESTDIR=$pkgdir install
+ install -dm755 "${pkgdir}/var/lib/iptraf"
}
# vim: ts=2: ft=sh
diff --git a/extra/k9copy/PKGBUILD b/extra/k9copy/PKGBUILD
index 0d3112dea..fccaa81b2 100644
--- a/extra/k9copy/PKGBUILD
+++ b/extra/k9copy/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 87453 2010-08-13 20:02:16Z giovanni $
+# $Id: PKGBUILD 120930 2011-04-27 13:07:03Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
# Contributor: Stefano Zamprogno <stefano.zamprogno@gmail.com>
pkgname=k9copy
-pkgver=2.3.6
+pkgver=2.3.7
pkgrel=1
pkgdesc="A small utility which allows the copy of DVD under Linux"
arch=('i686' 'x86_64' 'mips64el')
@@ -12,14 +12,19 @@ license=('GPL')
depends=('kdebase-runtime' 'libmpeg2' 'xine-lib' 'dvd+rw-tools' 'dvdauthor')
makedepends=('automoc4' 'cmake')
install=k9copy.install
-source=(http://downloads.sourceforge.net/project/${pkgname}/k9copy-kde4/${pkgver}/${pkgname}-${pkgver}-Source.tar.gz)
-md5sums=('c062dcb141a0320afe9dae0d36f87965')
+source=("http://downloads.sourceforge.net/project/${pkgname}/k9copy-kde4/${pkgver}/${pkgname}-${pkgver}-Source.tar.gz")
+md5sums=('bbfda2937f5027d31495df67dc29efa4')
build() {
cd "${srcdir}/${pkgname}-${pkgver}-Source"
sed -i -e "s:Name=k9copy:Name=K9copy:g" k9copy.desktop k9copy_assistant.desktop
- cmake -DCMAKE_INSTALL_PREFIX=/usr || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ cmake -DCMAKE_INSTALL_PREFIX=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}-Source"
+
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/kdeplasma-applets-networkmanagement/PKGBUILD b/extra/kdeplasma-applets-networkmanagement/PKGBUILD
index 2f12a6395..e59512436 100644
--- a/extra/kdeplasma-applets-networkmanagement/PKGBUILD
+++ b/extra/kdeplasma-applets-networkmanagement/PKGBUILD
@@ -4,8 +4,8 @@
pkgname=kdeplasma-applets-networkmanagement
pkgver=git20110418
-_commit=070512212cf01f05a43e4a6fff340994a9bfc290
-pkgrel=1
+_commit=545967db075ed65b0452def93e1c1588190cdc9a
+pkgrel=2
pkgdesc="KDE control panel and widget network connections"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.kde.org/"
@@ -15,7 +15,7 @@ makedepends=('cmake' 'python2' 'automoc4' 'mobile-broadband-provider-info')
optdepends=('mobile-broadband-provider-info: allow to add new mobile connection')
install=${pkgname}.install
source=("${pkgname}-${pkgver}.tar.gz"::"http://quickgit.kde.org/?p=networkmanagement.git&a=snapshot&h=${_commit}")
-md5sums=('fec76f032b94e06bb2fb7b53d00c944c')
+md5sums=('d7f50b4b6917d39c79332b868ad2d0cf')
build() {
cd "${srcdir}"
diff --git a/extra/kismet/PKGBUILD b/extra/kismet/PKGBUILD
index ef201db92..4c8f9ee0d 100644
--- a/extra/kismet/PKGBUILD
+++ b/extra/kismet/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 94735 2010-10-10 15:05:47Z guillaume $
+# $Id: PKGBUILD 119587 2011-04-12 15:18:27Z angvp $
# Contributer: Jason Chu <jason@archlinux.org>
# Maintainer: Juergen Hoetzel <jason@archlinux.org>
pkgname=kismet
-pkgver=2010_07_R1
+pkgver=2011_03_R2
_realver="${pkgver//_/-}"
pkgrel=1
pkgdesc="802.11b sniffing software"
@@ -15,24 +15,24 @@ url="http://www.kismetwireless.net/"
backup=('etc/kismet.conf' 'etc/kismet_drone.conf')
options=('!makeflags')
source=(http://www.kismetwireless.net/code/kismet-${pkgver//_/-}.tar.gz)
-md5sums=('85e59186eb529889118b5635f35cf57d')
+md5sums=('8bf077e8111e6dc8c12cadefdf40aadd')
build() {
cd "$srcdir/kismet-$_realver"
./configure --prefix=/usr \
--sysconfdir=/etc \
- --localstatedir=/var || return 1
+ --localstatedir=/var
- make dep || return 1
- make || return 1
- sed -i 's/prism2/wlanng/g' conf/kismet.conf || return 1
- make DESTDIR="$pkgdir" install || return 1
+ make dep
+ make
+ sed -i 's/prism2/wlanng/g' conf/kismet.conf
+ make DESTDIR="$pkgdir" install
chown root:root "$pkgdir"/usr/share/man/man{1,5}/*
install -D -m 644 "$srcdir/kismet-$_realver/README" "$pkgdir/usr/share/kismet/README"
# Fix the *.conf unexpanded ${prefix} problems
- sed -i 's%\${prefix}%/usr%' "$pkgdir"/etc/*.conf || return 1
+ sed -i 's%\${prefix}%/usr%' "$pkgdir"/etc/*.conf
}
diff --git a/extra/lcms2/PKGBUILD b/extra/lcms2/PKGBUILD
new file mode 100644
index 000000000..f33702fb4
--- /dev/null
+++ b/extra/lcms2/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 111439 2011-02-26 20:12:41Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: Lukas Jirkovsky <l.jirkovsky@gmail.com>
+
+pkgname=lcms2
+pkgver=2.1
+pkgrel=1
+pkgdesc="Small-footprint color management engine, version 2"
+arch=(i686 x86_64)
+license=('custom')
+depends=('libtiff>=3.9.4')
+url="http://www.littlecms.com"
+options=('!libtool')
+source=(http://downloads.sourceforge.net/sourceforge/lcms/$pkgname-$pkgver.tar.gz)
+md5sums=('08036edb115ad74456dfa20b1998b5f4')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+ install -Dm 644 COPYING \
+ "$pkgdir/usr/share/licenses/$pkgname/COPYING"
+}
diff --git a/extra/lftp/PKGBUILD b/extra/lftp/PKGBUILD
index bd9b5e692..a9200a714 100644
--- a/extra/lftp/PKGBUILD
+++ b/extra/lftp/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 119500 2011-04-11 19:32:01Z andyrtr $
+# $Id: PKGBUILD 121220 2011-04-29 15:00:49Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Aaron Griffin <aaron@archlinux.org>
pkgname=lftp
-pkgver=4.2.2
+pkgver=4.2.3
pkgrel=1
pkgdesc="Sophisticated command line based FTP client"
arch=('i686' 'x86_64' 'mips64el')
@@ -14,7 +14,7 @@ makedepends=('autoconf')
url="http://lftp.yar.ru/"
backup=('etc/lftp.conf')
source=(http://ftp.yars.free.net/pub/source/lftp/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('801d90de9def7fc0f88817bcc71295b7')
+md5sums=('4957f40d55e1bc6985e11244364b8938')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
diff --git a/extra/libcanberra/PKGBUILD b/extra/libcanberra/PKGBUILD
index bf7e65652..f5052b769 100644
--- a/extra/libcanberra/PKGBUILD
+++ b/extra/libcanberra/PKGBUILD
@@ -1,24 +1,26 @@
-# $Id: PKGBUILD 13455 2008-09-27 11:03:58Z jgc $
+# $Id: PKGBUILD 109949 2011-02-14 08:47:45Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=libcanberra
-pkgname=(libcanberra libcanberra-pulse)
+pkgname=(libcanberra libcanberra-pulse libcanberra-gstreamer)
pkgver=0.26
-pkgrel=3
+pkgrel=5
pkgdesc="A small and lightweight implementation of the XDG Sound Theme Specification"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('libvorbis>=1.3.1' 'gstreamer0.10>=0.10.30' 'libtool>=2.2.10' 'gtk2>=2.21.8' 'alsa-lib>=1.0.23' 'tdb>=1.2.1')
-makedepends=('gtk-doc' 'libpulse')
+depends=('libvorbis' 'libtool' 'alsa-lib' 'tdb')
+makedepends=('gtk-doc' 'libpulse' 'gstreamer0.10' 'gtk2' 'gtk3')
options=(!emptydirs)
url=http://0pointer.de/lennart/projects/libcanberra
source=(http://0pointer.de/lennart/projects/${pkgbase}/${pkgbase}-${pkgver}.tar.gz
- libcanberra-gtk-module.sh)
+ libcanberra-gtk-module.sh libcanberra-quit-add.patch)
md5sums=('ee2c66ada7c851a4e7b6eb1682285a24'
- 'a54799e624aac814b9343ab05f25c38b')
+ 'a54799e624aac814b9343ab05f25c38b'
+ 'a147bce8a7addcd40b21faaaf028819b')
build() {
cd "${srcdir}/${pkgbase}-${pkgver}"
+ patch -Np1 -i "${srcdir}/libcanberra-quit-add.patch"
./configure --sysconfdir=/etc --prefix=/usr --localstatedir=/var \
--disable-static --with-builtin=dso --enable-null --disable-oss \
--enable-alsa --enable-gstreamer --enable-pulse
@@ -27,11 +29,13 @@ build() {
package_libcanberra() {
install=libcanberra.install
+ optdepends=("$pkgbase-pulse: PulseAudio driver"
+ "$pkgbase-gstreamer: GStreamer driver")
cd "${srcdir}/${pkgbase}-${pkgver}"
make -j1 DESTDIR="${pkgdir}" install
- rm -f "${pkgdir}/usr/lib/libcanberra-gtk.la"
- rm -f "${pkgdir}/usr/lib/gtk-2.0/modules/"*.la
+ rm -f "${pkgdir}"/usr/lib/libcanberra-gtk*.la
+ rm -f "${pkgdir}"/usr/lib/gtk-{2,3}.0/modules/*.la
install -m755 -d "${pkgdir}/usr/share/gconf"
mv "${pkgdir}/etc/gconf/schemas" "${pkgdir}/usr/share/gconf/"
@@ -39,9 +43,11 @@ package_libcanberra() {
install -m755 -d "${pkgdir}/etc/X11/xinit/xinitrc.d"
install -m755 "${srcdir}/libcanberra-gtk-module.sh" "${pkgdir}/etc/X11/xinit/xinitrc.d/40-libcanberra-gtk-module"
- # Split libcanberra-pulse
- mkdir pulse-plugin
- mv "${pkgdir}"/usr/lib/${pkgbase}-${pkgver}/${pkgbase}-pulse.* pulse-plugin
+ # Split plugins
+ for _p in pulse gstreamer; do
+ mkdir $_p-plugin
+ mv "${pkgdir}"/usr/lib/${pkgbase}-${pkgver}/${pkgbase}-$_p.* $_p-plugin
+ done
}
package_libcanberra-pulse() {
@@ -55,3 +61,12 @@ package_libcanberra-pulse() {
mv pulse-plugin/* "${pkgdir}/usr/lib/${pkgbase}-${pkgver}"
}
+package_libcanberra-gstreamer() {
+ pkgdesc="GStreamer plugin for libcanberra"
+ depends=("$pkgbase=$pkgver-$pkgrel" 'gstreamer0.10')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+
+ mkdir -p "${pkgdir}/usr/lib/${pkgbase}-${pkgver}"
+ mv gstreamer-plugin/* "${pkgdir}/usr/lib/${pkgbase}-${pkgver}"
+}
diff --git a/extra/libcanberra/libcanberra-quit-add.patch b/extra/libcanberra/libcanberra-quit-add.patch
new file mode 100644
index 000000000..0094569ae
--- /dev/null
+++ b/extra/libcanberra/libcanberra-quit-add.patch
@@ -0,0 +1,24 @@
+diff -up libcanberra-0.26/src/canberra-gtk-module.c.quit-add libcanberra-0.26/src/canberra-gtk-module.c
+--- libcanberra-0.26/src/canberra-gtk-module.c.quit-add 2011-01-07 22:48:49.388992626 -0500
++++ libcanberra-0.26/src/canberra-gtk-module.c 2011-01-07 22:49:02.339995153 -0500
+@@ -932,11 +932,6 @@ static void connect_settings(void) {
+ connected = TRUE;
+ }
+
+-static gboolean quit_handler(gpointer data) {
+- dispatch_queue();
+- return FALSE;
+-}
+-
+ G_MODULE_EXPORT void gtk_module_init(gint *argc, gchar ***argv[]) {
+
+ /* This is the same quark libgnomeui uses! */
+@@ -963,8 +958,6 @@ G_MODULE_EXPORT void gtk_module_init(gin
+ install_hook(GTK_TYPE_WIDGET, "drag-drop", &signal_id_widget_drag_drop);
+ install_hook(GTK_TYPE_WIDGET, "drag-failed", &signal_id_widget_drag_failed);
+ install_hook(GTK_TYPE_EXPANDER, "activate", &signal_id_expander_activate);
+-
+- gtk_quit_add(1, quit_handler, NULL);
+ }
+
+ G_MODULE_EXPORT gchar* g_module_check_init(GModule *module);
diff --git a/extra/libchamplain/PKGBUILD b/extra/libchamplain/PKGBUILD
index 795bffe49..199654e11 100644
--- a/extra/libchamplain/PKGBUILD
+++ b/extra/libchamplain/PKGBUILD
@@ -1,24 +1,24 @@
-# $Id: PKGBUILD 106959 2011-01-19 21:31:11Z andyrtr $
+# $Id: PKGBUILD 117872 2011-04-04 20:57:39Z ibiru $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Michael Kanis <mkanis@gmx.de>
pkgname=libchamplain
-pkgver=0.8.1
-pkgrel=1
-pkgdesc="C library aimed to provide a Gtk+ widget to display rasterized maps"
+pkgver=0.10.0
+pkgrel=2
+pkgdesc="Gtk3 widget for displaying rasterized maps"
url="http://projects.gnome.org/libchamplain/"
license=('LGPL')
arch=('i686' 'x86_64' 'mips64el')
-replaces=('libchamplain-gtk')
options=('!libtool')
-depends=('clutter-gtk>=0.10.8' 'libsoup' 'cairo>=1.8' 'sqlite3')
-makedepends=('gobject-introspection')
-source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/0.8/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('4490dca0c099cac47ed93796d5bd79fd')
+depends=('clutter-gtk' 'libsoup-gnome' 'cairo' 'sqlite3')
+makedepends=('gobject-introspection' 'gtk-doc' 'vala')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('98700bb3f3ada5f9bd6b938486e55f90ea76ce4108a8b62928cf185ded49dbb1')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
- ./configure --prefix=/usr --disable-static
+ ./configure --prefix=/usr --disable-static --disable-debug \
+ --enable-vala
make
}
diff --git a/extra/libdmapsharing/PKGBUILD b/extra/libdmapsharing/PKGBUILD
index 75e9de812..2347fc4f7 100644
--- a/extra/libdmapsharing/PKGBUILD
+++ b/extra/libdmapsharing/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 97651 2010-10-31 21:55:53Z ibiru $
+# $Id: PKGBUILD 117405 2011-04-01 16:34:19Z ibiru $
#Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=libdmapsharing
-pkgver=2.1.8
+pkgver=2.9.7
pkgrel=1
pkgdesc="Libdmapsharing is a library you may use to access and share DMAP content"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.flyn.org/projects/libdmapsharing/index.html"
license=('LGPL2.1')
-depends=('libsoup>=2.32.0' 'avahi>=0.6.27' 'gstreamer0.10-base>=0.10.30' 'gdk-pixbuf2>=2.22')
-options=('!libtool' 'force')
+depends=('libsoup' 'avahi' 'gstreamer0.10-base' 'gdk-pixbuf2')
+options=('!libtool')
source=(http://www.flyn.org/projects/libdmapsharing/${pkgname}-${pkgver}.tar.gz)
-md5sums=('88583f0c6160142567e8b521f210443b')
+md5sums=('5eeded6d82ed2c2f6f310b9bd484798c')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/extra/libgda/PKGBUILD b/extra/libgda/PKGBUILD
index a14cb56e2..c24e4d6fb 100644
--- a/extra/libgda/PKGBUILD
+++ b/extra/libgda/PKGBUILD
@@ -1,24 +1,26 @@
-# $Id: PKGBUILD 115163 2011-03-17 10:00:41Z andrea $
+# $Id: PKGBUILD 120419 2011-04-23 21:33:28Z ibiru $
# Maintainer: tobias <tobias@archlinux.org>
# Contributor: Tobias Kieslich <tobias@justdreams.de>
pkgname=libgda
-pkgver=4.2.3
-pkgrel=3
-pkgdesc="data abstraction layer; with mysql, pgsql, xml, sqlite providers"
+pkgver=4.2.6
+pkgrel=1
+pkgdesc="Data abstraction layer with mysql, pgsql, xml, sqlite providers"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('glib2>=2.26.1' 'libxslt' 'db>=5.1.25' 'ncurses>=5.8'
- 'libsoup>=2.32.2' 'libmysqlclient>=5.5.10' 'postgresql-libs>=9.0.3')
-makedepends=('intltool')
-options=('!libtool' '!makeflags')
+depends=('gtksourceview2' 'libunique' 'libxslt' 'db' 'ncurses' 'libsoup'
+ 'libmysqlclient' 'postgresql-libs' 'python2' 'libgnome-keyring'
+ 'hicolor-icon-theme' 'desktop-file-utils')
+makedepends=('intltool' 'gobject-introspection' 'namcap')
+options=('!libtool')
url="http://www.gnome-db.org"
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/4.2/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('3da161f0dca5d080d0cb7bee7cce9bc918abd42e0e0d5683acff9dfe2e158cb5')
+install=libgda.install
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('141259e19ba163500963bd5bd512cfa4eb542b24c99f2fa14a2ef27643308cd3')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- sed -i -e 's/python/python2/' libgda-report/RML/trml*/trml*.py
+ sed -i '1s/python$/&2/' libgda-report/RML/trml*/trml*.py
./configure --prefix=/usr --sysconfdir=/etc \
--with-bdb=/usr --with-bdb-libdir-name=lib \
--disable-static
diff --git a/extra/libgda/libgda.install b/extra/libgda/libgda.install
new file mode 100644
index 000000000..c317fbaca
--- /dev/null
+++ b/extra/libgda/libgda.install
@@ -0,0 +1,12 @@
+post_install() {
+ update-desktop-database -q
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/extra/libgdata/PKGBUILD b/extra/libgdata/PKGBUILD
index 3ce97e1a3..a17561ee6 100644
--- a/extra/libgdata/PKGBUILD
+++ b/extra/libgdata/PKGBUILD
@@ -1,22 +1,26 @@
-# $Id: PKGBUILD 92480 2010-09-30 13:16:47Z jgc $
+# $Id: PKGBUILD 109662 2011-02-11 17:56:10Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libgdata
-pkgver=0.6.5
+pkgver=0.8.0
pkgrel=1
pkgdesc="GLib-based library for accessing online service APIs using the GData protocol"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libsoup-gnome>=2.32.0')
+depends=('libsoup-gnome')
makedepends=('pkgconfig' 'intltool' 'gobject-introspection')
url="http://www.gnome.org"
options=('!libtool')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/0.6/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('dcb82f7162d69549512444376da2cdea65650ee4dae4d00eed7fbbd3387ddf2c')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('1a816dda7de8ce162e00cc1c782a5ae25230a36d56c590a67d86848058797c9f')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --disable-static
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libgnome-keyring/PKGBUILD b/extra/libgnome-keyring/PKGBUILD
index baa000f4b..158699992 100644
--- a/extra/libgnome-keyring/PKGBUILD
+++ b/extra/libgnome-keyring/PKGBUILD
@@ -1,18 +1,18 @@
-#$Id: PKGBUILD 91799 2010-09-28 06:50:31Z jgc $
+#$Id: PKGBUILD 120579 2011-04-25 17:26:49Z ibiru $
#Maintainer: Jan De Groot <jgc@archlinux.org>
pkgname=libgnome-keyring
-pkgver=2.32.0
+pkgver=3.0.1
pkgrel=1
pkgdesc="GNOME keyring client library"
arch=(i686 x86_64 'mips64el')
license=('GPL' 'LGPL')
-depends=('dbus-core>=1.4.0' 'libgcrypt>=1.4.6' 'glib2>=2.26.0')
-makedepends=('intltool' 'pkgconfig' 'python2' 'gtk-doc')
+depends=('dbus-core' 'libgcrypt' 'glib2')
+makedepends=('intltool' 'pkgconfig')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('56388c0d81ddfdb57d30e4963c83ecc1c18498aab99395420e0fff69929a0f0c')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('9d748842dab86914488bef039ca2c25f8ff5510daae3815643e6e00a2f69cacb')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -20,5 +20,9 @@ build() {
--localstatedir=/var --disable-static \
--libexecdir=/usr/lib/gnome-keyring
make
- make -j1 DESTDIR="${pkgdir}" install
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libgnome-media-profiles/PKGBUILD b/extra/libgnome-media-profiles/PKGBUILD
new file mode 100644
index 000000000..93472debf
--- /dev/null
+++ b/extra/libgnome-media-profiles/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 117708 2011-04-04 16:55:18Z ibiru $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+pkgname=libgnome-media-profiles
+pkgver=3.0.0
+pkgrel=2
+pkgdesc=""
+arch=(i686 x86_64)
+url="http://www.gnome.org"
+license=('GPL2')
+depends=('gconf' 'gtk3' 'gstreamer0.10-base-plugins')
+makedepends=('intltool' 'gnome-doc-utils')
+options=('!emptydirs' '!libtool')
+install=libgnome-media-profiles.install
+source=(http://download.gnome.org/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('ab1288e53a8fccca3e8fa59757ef586901e236e09a737a1178eeb8d74428c061')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --disable-static -disable-scrollkeeper \
+ --disable-schemas-install
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-audio-profiles "${pkgdir}"/etc/gconf/schemas/*.schemas
+ rm -f "${pkgdir}"/etc/gconf/schemas/*.schemas
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/libgnome-media-profiles/libgnome-media-profiles.install b/extra/libgnome-media-profiles/libgnome-media-profiles.install
new file mode 100644
index 000000000..22b4c8f12
--- /dev/null
+++ b/extra/libgnome-media-profiles/libgnome-media-profiles.install
@@ -0,0 +1,17 @@
+pkgname=libgnome-media-profiles
+
+post_install(){
+ usr/sbin/gconfpkg --install ${pkgname}
+}
+
+pre_upgrade() {
+ pre_remove $1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+}
diff --git a/extra/libgnomekbd/PKGBUILD b/extra/libgnomekbd/PKGBUILD
index b1be76295..25b12329a 100644
--- a/extra/libgnomekbd/PKGBUILD
+++ b/extra/libgnomekbd/PKGBUILD
@@ -1,28 +1,28 @@
-# $Id: PKGBUILD 91776 2010-09-27 21:05:35Z ibiru $
+# $Id: PKGBUILD 118220 2011-04-06 06:15:37Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libgnomekbd
-pkgver=2.32.0
+pkgver=3.0.0.1
pkgrel=1
pkgdesc="Gnome keyboard library"
url="http://gswitchit.sourceforge.net"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('libxklavier>=5.0' 'gconf>=2.32.0')
-makedepends=('intltool' 'pkg-config')
+depends=('libxklavier>=5.1' 'gtk3' 'dconf')
+makedepends=('intltool' 'gobject-introspection')
options=('!libtool' '!emptydirs')
install=libgnomekbd.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('ddd52c4cc7d83ad7ef964a1bcb4db87407e65b00ffc3e70c088ca4ee7383d256')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('727293963847761b7942d9c5c195c317a5f5f18585ebc6d348147924242902e9')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static
+ --disable-schemas-compile
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain libgnomekbd ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libgnomekbd/libgnomekbd.install b/extra/libgnomekbd/libgnomekbd.install
index 9fc9f556e..2ef26aaa9 100644
--- a/extra/libgnomekbd/libgnomekbd.install
+++ b/extra/libgnomekbd/libgnomekbd.install
@@ -1,17 +1,11 @@
-pkgname=libgnomekbd
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
-}
-
-pre_upgrade() {
- pre_remove $1
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
}
post_upgrade() {
post_install $1
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+post_remove() {
+ post_install $1
}
diff --git a/extra/libgpod/PKGBUILD b/extra/libgpod/PKGBUILD
index f42d3e738..18556eefb 100644
--- a/extra/libgpod/PKGBUILD
+++ b/extra/libgpod/PKGBUILD
@@ -1,15 +1,15 @@
-# $Id: PKGBUILD 95175 2010-10-16 19:19:22Z remy $
+# $Id: PKGBUILD 117411 2011-04-01 17:02:09Z ibiru $
# Maintainer: Daniel Isenmann <daniel@archlinux.org>
# Contributor: William Rea <sillywilly@gmail.com>
pkgname=libgpod
pkgver=0.8.0
-pkgrel=1
+pkgrel=2
pkgdesc="A shared library to access the contents of an iPod"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('gtk2>=2.20.1' 'mutagen' 'sg3_utils>=1.27' 'libimobiledevice>=1.0.1')
-makedepends=('intltool' 'swig' 'docbook-xsl' 'pygobject' 'gtk-sharp-2')
+depends=('gtk2' 'mutagen' 'sg3_utils' 'libimobiledevice')
+makedepends=('intltool' 'swig' 'docbook-xsl' 'pygobject-devel' 'gtk-sharp-2')
optdepends=('gtk-sharp-2: Mono bindings')
url="http://www.gtkpod.org/libgpod/"
source=(http://downloads.sourceforge.net/sourceforge/gtkpod/${pkgname}-${pkgver}.tar.gz)
diff --git a/extra/libgtkhtml/PKGBUILD b/extra/libgtkhtml/PKGBUILD
index 6646b2785..6725257f8 100644
--- a/extra/libgtkhtml/PKGBUILD
+++ b/extra/libgtkhtml/PKGBUILD
@@ -1,13 +1,14 @@
-# $Id: PKGBUILD 18538 2008-11-06 23:27:45Z jgc $
+# $Id: PKGBUILD 121256 2011-04-29 21:48:54Z andyrtr $
# Maintainer: Jan de Groot <jgc@archlinux.org>
+
pkgname=libgtkhtml
pkgver=2.11.1
-pkgrel=2
+pkgrel=3
pkgdesc="An HTML library for GTK"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('gtk2>=2.14.4' 'libxml2>=2.6.32')
-makedepends=('perlxml' 'pkgconfig')
+depends=('gtk2>=2.22.1' 'libxml2>=2.7.8')
+makedepends=('perlxml')
options=('!libtool')
url="http://www.gnome.org"
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.11/${pkgname}-${pkgver}.tar.bz2)
@@ -16,7 +17,11 @@ md5sums=('a1d1a197dcff8c4571659deef5495e24')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libgtop/PKGBUILD b/extra/libgtop/PKGBUILD
index d4dbd043b..c6b2208c0 100644
--- a/extra/libgtop/PKGBUILD
+++ b/extra/libgtop/PKGBUILD
@@ -1,19 +1,19 @@
-# $Id: PKGBUILD 91991 2010-09-28 16:33:41Z ibiru $
+# $Id: PKGBUILD 120401 2011-04-23 20:45:46Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libgtop
-pkgver=2.28.2
+pkgver=2.28.3
pkgrel=1
pkgdesc="A library that read information about processes and the running system"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('glib2>=2.26' 'libxau' 'texinfo')
-makedepends=('intltool')
+depends=('glib2' 'libxau' 'texinfo')
+makedepends=('intltool' 'gobject-introspection')
install=libgtop.install
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.28/${pkgname}-${pkgver}.tar.bz2)
options=('!libtool')
url="http://www.gnome.org/"
-sha256sums=('49958d7da1f76b257bfd0d557d8ed2b218a5ab0d31b59fed1c32ddf2a1529f5d')
+sha256sums=('2c866bd14b3cd78f78504cfb65baa105d62b8085c90e433ab9db97e050efea42')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -21,5 +21,9 @@ build() {
--localstatedir=/var --disable-static \
--with-libgtop-smp
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libgweather/PKGBUILD b/extra/libgweather/PKGBUILD
index 3849cf993..9de18bb05 100644
--- a/extra/libgweather/PKGBUILD
+++ b/extra/libgweather/PKGBUILD
@@ -1,37 +1,40 @@
-# $Id: PKGBUILD 91597 2010-09-27 13:41:59Z ibiru $
+# $Id: PKGBUILD 117926 2011-04-04 21:33:29Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libgweather
-pkgver=2.30.3
+pkgver=3.0.0
pkgrel=1
pkgdesc="Provides access to weather information from the net"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('gconf>=2.31.91' 'libsoup-gnome>=2.31.92' 'gnome-icon-theme')
-makedepends=('pkgconfig' 'intltool' 'gtk-doc')
+depends=('gconf' 'libsoup-gnome' 'gnome-icon-theme')
+makedepends=('pkgconfig' 'intltool' 'gtk-doc' 'gobject-introspection')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org/"
install=libgweather.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2
- 01_gettext_not_xml.patch)
-sha256sums=('b835374661423f37c46aa8e37368ae24a68856f117b7c21e475a21efdba5264c'
- '64c181675714a411c2bc31d254cf5ad4a128fba539839b41783540e978a1de20')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
+ gettext-not-xml.patch)
+sha256sums=('f13eb69c6ec8c4db08a78ffe980a5dd0e194894d411691a6821a068c650d1545'
+ 'f21d55ab7916a50cad10d1c0bb3785a262e8ad8f35b9fb4c02ae23f1b0783727')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/01_gettext_not_xml.patch"
- libtoolize --force
- gtkdocize
- aclocal
- autoconf
- automake
- ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static \
- --enable-locations-compression
- make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+ cd "${srcdir}/${pkgname}-${pkgver}"
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain libgweather ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+ patch -Np1 -i "${srcdir}/gettext-not-xml.patch"
+ gtkdocize
+ autoreconf -fi
+
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static \
+ --enable-locations-compression
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+
+ install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain libgweather ${pkgdir}/etc/gconf/schemas/*.schemas
+ rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
}
diff --git a/extra/libgweather/gettext-not-xml.patch b/extra/libgweather/gettext-not-xml.patch
new file mode 100644
index 000000000..4fd2e3aa6
--- /dev/null
+++ b/extra/libgweather/gettext-not-xml.patch
@@ -0,0 +1,533 @@
+diff -up libgweather-2.91.0/configure.ac.gettext libgweather-2.91.0/configure.ac
+--- libgweather-2.91.0/configure.ac.gettext 2010-10-04 18:08:07.000000000 -0400
++++ libgweather-2.91.0/configure.ac 2011-01-30 13:51:19.615635059 -0500
+@@ -40,6 +40,10 @@ LIBXML_REQUIRED=2.6.0
+ AM_MAINTAINER_MODE
+ GNOME_MAINTAINER_MODE_DEFINES
+
++dnl IT_PROG_INTLTOOL does this for us in the case of the po/ subdir, but we're on our own for po-locations
++AC_OUTPUT_COMMANDS([sed -e "/POTFILES =/r po/POTFILES" po-locations/Makefile.in > po-locations/Makefile])
++IT_PO_SUBDIR([po-locations])
++
+ IT_PROG_INTLTOOL([0.40.3])
+ PKG_PROG_PKG_CONFIG([0.19])
+
+@@ -50,13 +54,6 @@ AC_STDC_HEADERS
+ AM_PROG_LIBTOOL
+ AC_PATH_PROG(GCONFTOOL, gconftool-2)
+
+-AC_ARG_ENABLE(all-translations-in-one-xml,
+- [AC_HELP_STRING([--enable-all-translations-in-one-xml],
+- [Put all translations in a big Locations.xml file (slow to parse)])],
+- [enable_big_xml=yes],
+- [enable_big_xml=no])
+-AM_CONDITIONAL(USE_ONE_BIG_XML, test "x$enable_big_xml" = "xyes")
+-
+ AC_ARG_ENABLE(locations-compression,
+ [AC_HELP_STRING([--enable-locations-compression],
+ [Compress Locations.xml files])],
+@@ -236,7 +233,7 @@ AC_OUTPUT([
+ Makefile
+ doc/Makefile
+ po/Makefile.in
+-po-locations/Makefile
++po-locations/Makefile.in
+ libgweather/Makefile
+ libgweather/gweather-3.0.pc
+ libgweather/gweather-3.0-uninstalled.pc
+@@ -244,12 +241,6 @@ data/Makefile
+ icons/Makefile
+ ])
+
+-if test "x$enable_big_xml" = "xyes"; then
+- LOCATIONS_XML_TRANSLATIONS="one big file"
+-else
+- LOCATIONS_XML_TRANSLATIONS="one file per translation"
+-fi
+-
+ dnl ***************************************************************************
+ dnl *** Display Summary ***
+ dnl ***************************************************************************
+@@ -260,6 +251,4 @@ libgweather-$VERSION configure summary:
+ Source code location: ${srcdir}
+ Compiler: ${CC}
+ Introspection support: ${found_introspection}
+- Locations.xml translations: ${LOCATIONS_XML_TRANSLATIONS}
+- Locations.xml compression: ${enable_locations_compression}
+ " >&2
+diff -up libgweather-2.91.0/data/Makefile.am.gettext libgweather-2.91.0/data/Makefile.am
+--- libgweather-2.91.0/data/Makefile.am.gettext 2010-10-04 18:07:31.000000000 -0400
++++ libgweather-2.91.0/data/Makefile.am 2011-01-30 13:53:12.581466339 -0500
+@@ -4,55 +4,23 @@ libgweatherdtd_DATA = locations.dtd
+ libgweatherlocationsdir = $(pkgdatadir)
+ libgweatherlocations_in_files = Locations.xml.in
+
+-if USE_ONE_BIG_XML
+-
+-LOCATIONS_STAMP =
+-
+-libgweatherlocations_DATA = $(libgweatherlocations_in_files:.xml.in=.xml$(COMPRESS_EXT))
+-
+-%.xml$(COMPRESS_EXT): %.xml.in $(wildcard $(top_srcdir)/po-locations/*.po)
+- $(AM_V_GEN)LC_ALL=C $(INTLTOOL_MERGE) -x -u -c $(top_builddir)/po-locations/.intltool-merge-cache $(top_srcdir)/po-locations $< `echo $@ | sed "s/.xml$(COMPRESS_EXT)/.xml/"` && \
+- if test "x$(COMPRESS_EXT)" = "x.gz"; then \
+- gzip --force `echo $@ | sed "s/.xml$(COMPRESS_EXT)/.xml/"`; \
+- fi
+-
+-else # USE_ONE_BIG_XML
+-
+ LOCATIONS_STAMP = stamp-Locations.xml
+
+-PO_LOCATIONS = $(shell if test -n "$(LINGUAS)"; then for lang in $(LINGUAS); do if test -f "$(top_srcdir)/po-locations/$$lang.po"; then echo "$(top_srcdir)/po-locations/$$lang.po "; fi; done; else for pofile in $(top_srcdir)/po-locations/*.po; do echo $$pofile; done; fi)
+-
+ # Helper variable
+-libgweatherlocations_data = $(libgweatherlocations_in_files:.xml.in=.xml)
+-
+-libgweatherlocations_DATA = $(shell echo $(PO_LOCATIONS) | sed "s|$(top_srcdir)/po-locations/|Locations.|g;s|\.po|.xml$(COMPRESS_EXT)|g") $(libgweatherlocations_data)$(COMPRESS_EXT)
++libgweatherlocations_DATA = $(libgweatherlocations_in_files:.xml.in=.xml)
+
+ # We need this step so that we merge all the make Locations.xy.xml destinations
+ # into one unique destination. This makes -j2 work. (Else, we end up with
+ # multiple and conflicting calls to intltool-merge)
+ $(libgweatherlocations_DATA): $(LOCATIONS_STAMP)
+
+-$(LOCATIONS_STAMP): $(libgweatherlocations_in_files) $(PO_LOCATIONS) Makefile
+- $(AM_V_at)LC_ALL=C $(INTLTOOL_MERGE) --multiple-output --xml-style --utf8 --cache=$(top_builddir)/po-locations/.intltool-merge-cache $(top_srcdir)/po-locations $< $(libgweatherlocations_data) && \
+- for pofile in $(PO_LOCATIONS); do \
+- locale=`echo $$pofile | sed "s;$(top_srcdir)/po-locations/\(.*\)\.po;\1;"`; \
+- xmllint --noblanks -o Locations.$$locale.xml $$locale/$(libgweatherlocations_data); \
+- rm -f $$locale/$(libgweatherlocations_data); \
+- test -d $$locale && rmdir $$locale; \
+- if test "x$(COMPRESS_EXT)" = "x.gz"; then \
+- gzip --force Locations.$$locale.xml; \
+- fi; \
+- done && \
+- xmllint --noblanks -o Locations.xml C/$(libgweatherlocations_data) && \
+- rm -f C/$(libgweatherlocations_data) && \
+- test -d C && rmdir C && \
+- if test "x$(COMPRESS_EXT)" = "x.gz"; then \
+- gzip --force Locations.xml; \
+- fi && \
++$(LOCATIONS_STAMP): $(libgweatherlocations_in_files) Makefile
++ LC_ALL=C $(INTLTOOL_MERGE) --multiple-output --xml-style --utf8 --cache=$(top_builddir)/po-locations/.intltool-merge-cache /dev/null $< $(libgweatherlocations_DATA)
++ xmllint --noblanks -o Locations.xml C/$(libgweatherlocations_DATA)
++ rm -f C/$(libgweatherlocations_DATA)
++ test -d C && rmdir C
+ touch $@
+
+-endif # USE_ONE_BIG_XML
+-
+ ### Locations.xml.in rebuild
+ rebuild-locations: locationdb.sqlite update-locations.py
+ $(AM_V_GEN)($(srcdir)/update-locations.py > Locations.xml.in.new && mv Locations.xml.in.new Locations.xml.in) || rm -f Locations.xml.in.new
+diff -up libgweather-2.91.0/libgweather/gweather-location.c.gettext libgweather-2.91.0/libgweather/gweather-location.c
+--- libgweather-2.91.0/libgweather/gweather-location.c.gettext 2010-02-09 07:28:03.000000000 -0500
++++ libgweather-2.91.0/libgweather/gweather-location.c 2011-01-30 13:51:19.616635049 -0500
+@@ -22,11 +22,14 @@
+ #include <config.h>
+ #endif
+
++#include "config.h"
++
+ #include <string.h>
+ #include <math.h>
+ #include <locale.h>
+ #include <gtk/gtk.h>
+ #include <libxml/xmlreader.h>
++#include <libintl.h>
+
+ #define GWEATHER_I_KNOW_THIS_IS_UNSTABLE
+ #include "gweather-location.h"
+@@ -184,10 +187,20 @@ location_new_from_xml (GWeatherParser *p
+
+ tagname = (const char *) xmlTextReaderConstName (parser->xml);
+ if (!strcmp (tagname, "name") && !loc->name) {
+- value = gweather_parser_get_localized_value (parser);
++ char *context = NULL;
++ context = xmlTextReaderGetAttribute(parser->xml,"msgctxt");
++
++ value = gweather_parser_get_value (parser);
+ if (!value)
+ goto error_out;
+- loc->name = g_strdup (value);
++
++ if (context != NULL) {
++ loc->name = g_strdup (g_dpgettext2(GETTEXT_PACKAGE "-locations", context, value));
++ xmlFree (context);
++ }
++ else
++ loc->name = g_strdup (dgettext(GETTEXT_PACKAGE "-locations",value));
++
+ xmlFree (value);
+ normalized = g_utf8_normalize (loc->name, -1, G_NORMALIZE_ALL);
+ loc->sort_name = g_utf8_casefold (normalized, -1);
+diff -up libgweather-2.91.0/libgweather/gweather-timezone.c.gettext libgweather-2.91.0/libgweather/gweather-timezone.c
+--- libgweather-2.91.0/libgweather/gweather-timezone.c.gettext 2010-02-09 07:28:03.000000000 -0500
++++ libgweather-2.91.0/libgweather/gweather-timezone.c 2011-01-30 13:51:19.617635039 -0500
+@@ -23,6 +23,7 @@
+ #endif
+
+ #include <string.h>
++#include <libintl.h>
+
+ #define GWEATHER_I_KNOW_THIS_IS_UNSTABLE
+ #include "gweather-timezone.h"
+@@ -152,7 +153,7 @@ static GWeatherTimezone *
+ parse_timezone (GWeatherParser *parser)
+ {
+ GWeatherTimezone *zone = NULL;
+- char *id = NULL, *name = NULL;
++ char *id = NULL, *name = NULL, *context = NULL;
+ int offset = 0, dst_offset = 0;
+ gboolean has_dst = FALSE;
+
+@@ -175,27 +176,34 @@ parse_timezone (GWeatherParser *parser)
+ continue;
+ }
+
+- if (!strcmp ((const char *) xmlTextReaderConstName (parser->xml), "name"))
+- name = gweather_parser_get_localized_value (parser);
++ if (!strcmp ((const char *) xmlTextReaderConstName (parser->xml), "name")) {
++ context = xmlTextReaderGetAttribute(parser->xml,"msgctxt");
++ name = gweather_parser_get_value (parser);
++ }
+ else {
+ if (xmlTextReaderNext (parser->xml) != 1)
+ break;
+ }
+ }
+ }
+-
++
+ if (parse_tzdata (id, parser->year_start, parser->year_end,
+ &offset, &has_dst, &dst_offset)) {
+ zone = g_slice_new0 (GWeatherTimezone);
+ zone->ref_count = 1;
+ zone->id = g_strdup (id);
+- zone->name = g_strdup (name);
++ if (context != NULL)
++ zone->name = g_strdup (g_dpgettext2(GETTEXT_PACKAGE "-locations", context, name));
++ else
++ zone->name = g_strdup (dgettext(GETTEXT_PACKAGE "-locations",name));
+ zone->offset = offset;
+ zone->has_dst = has_dst;
+ zone->dst_offset = dst_offset;
+ }
+
+ xmlFree (id);
++ if (context)
++ xmlFree (context);
+ if (name)
+ xmlFree (name);
+
+diff -up libgweather-2.91.0/po-locations/LINGUAS.gettext libgweather-2.91.0/po-locations/LINGUAS
+--- libgweather-2.91.0/po-locations/LINGUAS.gettext 2011-01-30 13:51:19.617635039 -0500
++++ libgweather-2.91.0/po-locations/LINGUAS 2011-01-30 13:51:19.617635039 -0500
+@@ -0,0 +1,78 @@
++ang
++ar
++as
++az
++be
++be@latin
++bg
++bn_IN
++bn
++bs
++ca
++cs
++cy
++da
++de
++dz
++el
++en_CA
++en_GB
++es
++et
++eu
++fa
++fi
++fr
++ga
++gl
++gu
++he
++hi
++hr
++hu
++id
++it
++ja
++ka
++kn
++ko
++ku
++ky
++lt
++lv
++mai
++mg
++mk
++ml
++mn
++mr
++ms
++nb
++ne
++nl
++nn
++oc
++or
++pa
++pl
++pt_BR
++pt
++ro
++ru
++rw
++si
++sk
++sl
++sq
++sr@latin
++sr
++sv
++ta
++te
++th
++tr
++uk
++vi
++zh_CN
++zh_HK
++zh_TW
+diff -up libgweather-2.91.0/po-locations/Makefile.in.in.gettext libgweather-2.91.0/po-locations/Makefile.in.in
+--- libgweather-2.91.0/po-locations/Makefile.in.in.gettext 2011-01-30 13:51:19.618635028 -0500
++++ libgweather-2.91.0/po-locations/Makefile.in.in 2011-01-30 13:51:19.618635028 -0500
+@@ -0,0 +1,217 @@
++# Makefile for program source directory in GNU NLS utilities package.
++# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu>
++# Copyright (C) 2004-2008 Rodney Dawes <dobey.pwns@gmail.com>
++#
++# This file may be copied and used freely without restrictions. It may
++# be used in projects which are not available under a GNU Public License,
++# but which still want to provide support for the GNU gettext functionality.
++#
++# - Modified by Owen Taylor <otaylor@redhat.com> to use GETTEXT_PACKAGE
++# instead of PACKAGE and to look for po2tbl in ./ not in intl/
++#
++# - Modified by jacob berkman <jacob@ximian.com> to install
++# Makefile.in.in and po2tbl.sed.in for use with glib-gettextize
++#
++# - Modified by Rodney Dawes <dobey.pwns@gmail.com> for use with intltool
++#
++# We have the following line for use by intltoolize:
++# INTLTOOL_MAKEFILE
++
++GETTEXT_PACKAGE = @GETTEXT_PACKAGE@-locations
++PACKAGE = @PACKAGE@
++VERSION = @VERSION@
++
++SHELL = /bin/sh
++
++srcdir = @srcdir@
++top_srcdir = @top_srcdir@
++top_builddir = @top_builddir@
++VPATH = @srcdir@
++
++prefix = @prefix@
++exec_prefix = @exec_prefix@
++datadir = @datadir@
++datarootdir = @datarootdir@
++libdir = @libdir@
++DATADIRNAME = @DATADIRNAME@
++itlocaledir = $(prefix)/$(DATADIRNAME)/locale
++subdir = po-locations
++install_sh = @install_sh@
++# Automake >= 1.8 provides @mkdir_p@.
++# Until it can be supposed, use the safe fallback:
++mkdir_p = $(install_sh) -d
++
++INSTALL = @INSTALL@
++INSTALL_DATA = @INSTALL_DATA@
++
++GMSGFMT = @GMSGFMT@
++MSGFMT = @MSGFMT@
++XGETTEXT = @XGETTEXT@
++INTLTOOL_UPDATE = @INTLTOOL_UPDATE@
++INTLTOOL_EXTRACT = @INTLTOOL_EXTRACT@
++MSGMERGE = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --dist
++GENPOT = INTLTOOL_EXTRACT=$(INTLTOOL_EXTRACT) srcdir=$(srcdir) $(INTLTOOL_UPDATE) --gettext-package $(GETTEXT_PACKAGE) --pot
++
++ALL_LINGUAS = @ALL_LINGUAS@
++
++PO_LINGUAS=$(shell if test -r $(srcdir)/LINGUAS; then grep -v "^\#" $(srcdir)/LINGUAS; fi)
++
++USER_LINGUAS=$(shell if test -n "$(LINGUAS)"; then LLINGUAS="$(LINGUAS)"; ALINGUAS="$(ALL_LINGUAS)"; for lang in $$LLINGUAS; do if test -n "`grep ^$$lang$$ $(srcdir)/LINGUAS 2>/dev/null`" -o -n "`echo $$ALINGUAS|tr ' ' '\n'|grep ^$$lang$$`"; then printf "$$lang "; fi; done; fi)
++
++USE_LINGUAS=$(shell if test -n "$(USER_LINGUAS)" -o -n "$(LINGUAS)"; then LLINGUAS="$(USER_LINGUAS)"; else if test -n "$(PO_LINGUAS)"; then LLINGUAS="$(PO_LINGUAS)"; else LLINGUAS="$(ALL_LINGUAS)"; fi; fi; for lang in $$LLINGUAS; do printf "$$lang "; done)
++
++POFILES=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.po "; done)
++
++DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(POFILES)
++EXTRA_DISTFILES = POTFILES.skip Makevars LINGUAS
++
++POTFILES = \
++# This comment gets stripped out
++
++CATALOGS=$(shell LINGUAS="$(USE_LINGUAS)"; for lang in $$LINGUAS; do printf "$$lang.gmo "; done)
++
++.SUFFIXES:
++.SUFFIXES: .po .pox .gmo .mo .msg .cat
++
++.po.pox:
++ $(MAKE) $(GETTEXT_PACKAGE).pot
++ $(MSGMERGE) $< $(GETTEXT_PACKAGE).pot -o $*.pox
++
++.po.mo:
++ $(MSGFMT) -o $@ $<
++
++.po.gmo:
++ file=`echo $* | sed 's,.*/,,'`.gmo \
++ && rm -f $$file && $(GMSGFMT) -o $$file $<
++
++.po.cat:
++ sed -f ../intl/po2msg.sed < $< > $*.msg \
++ && rm -f $@ && gencat $@ $*.msg
++
++
++all: all-@USE_NLS@
++
++all-yes: $(CATALOGS)
++all-no:
++
++$(GETTEXT_PACKAGE).pot: $(POTFILES)
++ $(GENPOT)
++
++install: install-data
++install-data: install-data-@USE_NLS@
++install-data-no: all
++install-data-yes: all
++ linguas="$(USE_LINGUAS)"; \
++ for lang in $$linguas; do \
++ dir=$(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES; \
++ $(mkdir_p) $$dir; \
++ if test -r $$lang.gmo; then \
++ $(INSTALL_DATA) $$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
++ echo "installing $$lang.gmo as $$dir/$(GETTEXT_PACKAGE).mo"; \
++ else \
++ $(INSTALL_DATA) $(srcdir)/$$lang.gmo $$dir/$(GETTEXT_PACKAGE).mo; \
++ echo "installing $(srcdir)/$$lang.gmo as" \
++ "$$dir/$(GETTEXT_PACKAGE).mo"; \
++ fi; \
++ if test -r $$lang.gmo.m; then \
++ $(INSTALL_DATA) $$lang.gmo.m $$dir/$(GETTEXT_PACKAGE).mo.m; \
++ echo "installing $$lang.gmo.m as $$dir/$(GETTEXT_PACKAGE).mo.m"; \
++ else \
++ if test -r $(srcdir)/$$lang.gmo.m ; then \
++ $(INSTALL_DATA) $(srcdir)/$$lang.gmo.m \
++ $$dir/$(GETTEXT_PACKAGE).mo.m; \
++ echo "installing $(srcdir)/$$lang.gmo.m as" \
++ "$$dir/$(GETTEXT_PACKAGE).mo.m"; \
++ else \
++ true; \
++ fi; \
++ fi; \
++ done
++
++# Empty stubs to satisfy archaic automake needs
++dvi info tags TAGS ID:
++
++# Define this as empty until I found a useful application.
++install-exec installcheck:
++
++uninstall:
++ linguas="$(USE_LINGUAS)"; \
++ for lang in $$linguas; do \
++ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo; \
++ rm -f $(DESTDIR)$(itlocaledir)/$$lang/LC_MESSAGES/$(GETTEXT_PACKAGE).mo.m; \
++ done
++
++check: all $(GETTEXT_PACKAGE).pot
++ rm -f missing notexist
++ srcdir=$(srcdir) $(INTLTOOL_UPDATE) -m
++ if [ -r missing -o -r notexist ]; then \
++ exit 1; \
++ fi
++
++mostlyclean:
++ rm -f *.pox $(GETTEXT_PACKAGE).pot *.old.po cat-id-tbl.tmp
++ rm -f .intltool-merge-cache
++
++clean: mostlyclean
++
++distclean: clean
++ rm -f Makefile Makefile.in POTFILES stamp-it
++ rm -f *.mo *.msg *.cat *.cat.m *.gmo
++
++maintainer-clean: distclean
++ @echo "This command is intended for maintainers to use;"
++ @echo "it deletes files that may require special tools to rebuild."
++ rm -f Makefile.in.in
++
++distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
++dist distdir: $(DISTFILES)
++ dists="$(DISTFILES)"; \
++ extra_dists="$(EXTRA_DISTFILES)"; \
++ for file in $$extra_dists; do \
++ test -f $(srcdir)/$$file && dists="$$dists $(srcdir)/$$file"; \
++ done; \
++ for file in $$dists; do \
++ test -f $$file || file="$(srcdir)/$$file"; \
++ ln $$file $(distdir) 2> /dev/null \
++ || cp -p $$file $(distdir); \
++ done
++
++update-po: Makefile
++ $(MAKE) $(GETTEXT_PACKAGE).pot
++ tmpdir=`pwd`; \
++ linguas="$(USE_LINGUAS)"; \
++ for lang in $$linguas; do \
++ echo "$$lang:"; \
++ result="`$(MSGMERGE) -o $$tmpdir/$$lang.new.po $$lang`"; \
++ if $$result; then \
++ if cmp $(srcdir)/$$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
++ rm -f $$tmpdir/$$lang.new.po; \
++ else \
++ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
++ :; \
++ else \
++ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
++ rm -f $$tmpdir/$$lang.new.po; \
++ exit 1; \
++ fi; \
++ fi; \
++ else \
++ echo "msgmerge for $$lang.gmo failed!"; \
++ rm -f $$tmpdir/$$lang.new.po; \
++ fi; \
++ done
++
++Makefile POTFILES: stamp-it
++ @if test ! -f $@; then \
++ rm -f stamp-it; \
++ $(MAKE) stamp-it; \
++ fi
++
++stamp-it: Makefile.in.in $(top_builddir)/config.status POTFILES.in
++ cd $(top_builddir) \
++ && CONFIG_FILES=$(subdir)/Makefile.in CONFIG_HEADERS= CONFIG_LINKS= \
++ $(SHELL) ./config.status
++
++# Tell versions [3.59,3.63) of GNU make not to export all variables.
++# Otherwise a system limit (for SysV at least) may be exceeded.
++.NOEXPORT:
+diff -up libgweather-2.91.0/po-locations/POTFILES.in.gettext libgweather-2.91.0/po-locations/POTFILES.in
+--- libgweather-2.91.0/po-locations/POTFILES.in.gettext 2011-01-30 13:51:19.618635028 -0500
++++ libgweather-2.91.0/po-locations/POTFILES.in 2011-01-30 13:51:19.618635028 -0500
+@@ -0,0 +1,4 @@
++# This list should contain *only* data/Locations.xml.in.
++# Everything else should be in POTFILES.skip.
++[encoding:UTF-8]
++data/Locations.xml.in
diff --git a/extra/libimobiledevice/PKGBUILD b/extra/libimobiledevice/PKGBUILD
index 27257379b..d49c92fc7 100644
--- a/extra/libimobiledevice/PKGBUILD
+++ b/extra/libimobiledevice/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 101292 2010-11-28 20:11:58Z ibiru $
+# $Id: PKGBUILD 109895 2011-02-13 16:49:33Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Gabriel Martinez < reitaka at gmail dot com >
pkgname=libimobiledevice
-pkgver=1.0.4
+pkgver=1.1.0
pkgrel=1
pkgdesc="Is a software library that talks the protocols to support iPhone and iPod Touch devices on Linux"
url="http://libimobiledevice.org/"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL2' 'LGPL2.1')
-depends=('gnutls' 'glib2' 'libplist>=1.3' 'usbmuxd>=1.0.6')
+depends=('gnutls' 'glib2' 'libplist' 'usbmuxd')
makedepends=('swig' 'python2')
options=('!libtool')
source=(http://libimobiledevice.org/downloads/${pkgname}-${pkgver}.tar.bz2
swig-version-check.patch)
-md5sums=('dbf62f2fddaa87558b6f1ebc76abb549'
+md5sums=('b38bb70a41538a2ad593b0779651a636'
'8bb215e36fe0e08a72332c108c7842cc')
build() {
diff --git a/extra/liblrdf/PKGBUILD b/extra/liblrdf/PKGBUILD
index 2a091c6df..0bd976da0 100644
--- a/extra/liblrdf/PKGBUILD
+++ b/extra/liblrdf/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 68012 2010-02-10 13:47:57Z giovanni $
+# $Id: PKGBUILD 110602 2011-02-20 15:55:20Z andyrtr $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
pkgname=liblrdf
pkgver=0.4.0
-pkgrel=6
+pkgrel=7
pkgdesc="A library for the manipulation of RDF file in LADSPA plugins"
arch=('i686' 'x86_64' 'mips64el')
url="http://sourceforge.net/projects/lrdf"
-depends=('raptor>=1.4.15-2' 'ladspa')
+depends=('raptor1' 'ladspa')
makedepends=('pkgconfig')
license=('GPL')
options=('!libtool')
@@ -19,9 +19,12 @@ md5sums=('327a5674f671c4b360c6353800226877'
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -Np1 -i "${srcdir}/md5.patch"
+ ./configure --prefix=/usr
+ make
+}
- patch -Np1 -i "${srcdir}/md5.patch" || return 1
- ./configure --prefix=/usr || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libnice/PKGBUILD b/extra/libnice/PKGBUILD
index f4984e7fb..97e10f729 100644
--- a/extra/libnice/PKGBUILD
+++ b/extra/libnice/PKGBUILD
@@ -3,8 +3,8 @@
# Contributor: William Díaz <wdiaz@archlinux.us>
pkgname=libnice
-pkgver=0.0.13
-pkgrel=3
+pkgver=0.1.0
+pkgrel=1
pkgdesc="An implementation of the IETF's draft ICE (for p2p UDP data streams)"
arch=('i686' 'x86_64' 'mips64el')
url="http://nice.freedesktop.org"
@@ -12,7 +12,7 @@ license=('LGPL')
depends=('gstreamer0.10')
options=('!libtool')
source=(http://nice.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz)
-md5sums=('e5b9f799a57cb939ea2658ec35253ab9')
+md5sums=('c077e2aa74c9afb4b4e157efc8a6ad9d')
build() {
# export CFLAGS="$CFLAGS -fno-strict-aliasing"
@@ -20,7 +20,9 @@ build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --disable-static
make
- #make sure that all tests pass
-# make check
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR=${pkgdir} install
}
diff --git a/extra/libnotify/PKGBUILD b/extra/libnotify/PKGBUILD
index 08d4d0e0f..e67352204 100644
--- a/extra/libnotify/PKGBUILD
+++ b/extra/libnotify/PKGBUILD
@@ -1,25 +1,21 @@
-# $Id: PKGBUILD 112734 2011-03-06 12:38:58Z ibiru $
+# $Id: PKGBUILD 115920 2011-03-22 14:03:02Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libnotify
-pkgver=0.7.1
-pkgrel=1.1
+pkgver=0.7.2
+pkgrel=1
pkgdesc="Desktop notification library"
arch=('i686' 'x86_64' 'mips64el')
url="http://library.gnome.org/devel/notification-spec/"
license=('LGPL')
depends=('gdk-pixbuf2')
-makedepends=('gobject-introspection')
+makedepends=('gtk3' 'gobject-introspection')
options=('!libtool')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2
- libnotify-0.7.1-gtk3-tests.patch)
-sha256sums=('84dc2a77defb25521d2f1cb7ac34b4d23b55254ba361442658430efb928536c8'
- 'd9ee539a58a30ccd213b9857003c2ba04a0cf343763ed566ca0d769cbfc34664')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('9b6a8459401e4af3da9cbc9e35a58d1a977273d3fe898d4a00a888f4191b85d6')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/libnotify-0.7.1-gtk3-tests.patch"
- autoreconf -fi
./configure --prefix=/usr --disable-static
make
}
diff --git a/extra/libotr/PKGBUILD b/extra/libotr/PKGBUILD
index 50f115603..853b2751e 100644
--- a/extra/libotr/PKGBUILD
+++ b/extra/libotr/PKGBUILD
@@ -1,11 +1,11 @@
-# $ Id: $
+# $Id: PKGBUILD 121299 2011-04-30 13:17:51Z andrea $
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
# Contributor: Bug <Bug2000@gmail.com>
pkgname=libotr
pkgver=3.2.0
-pkgrel=1
-pkgdesc='Off-the-Record Messaging Library and Toolkit.'
+pkgrel=2
+pkgdesc='Off-the-Record Messaging Library and Toolkit'
arch=('i686' 'x86_64' 'mips64el')
url='http://www.cypherpunks.ca/otr/'
license=('GPL' 'LGPL')
@@ -15,8 +15,12 @@ source=("http://www.cypherpunks.ca/otr/${pkgname}-${pkgver}.tar.gz")
md5sums=('faba02e60f64e492838929be2272f839')
build() {
- cd $srcdir/$pkgname-$pkgver
+ cd "$srcdir/$pkgname-$pkgver"
./configure --prefix=/usr --mandir=/usr/share/man
- make || return 1
- make DESTDIR=$pkgdir install
-} \ No newline at end of file
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/extra/libpeas/PKGBUILD b/extra/libpeas/PKGBUILD
new file mode 100644
index 000000000..3cacf3bba
--- /dev/null
+++ b/extra/libpeas/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 117856 2011-04-04 20:18:31Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=libpeas
+pkgver=1.0.0
+pkgrel=1
+pkgdesc="A GObject-based plugins engine"
+arch=('i686' 'x86_64')
+url="http://www.gtk.org/"
+license=('GPL2')
+depends=('gtk3' 'hicolor-icon-theme' 'pygobject' 'gobject-introspection')
+makedepends=('gtk-doc' 'intltool' 'pygobject-devel')
+options=('!libtool')
+install=libpeas.install
+source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-${pkgver}.tar.bz2)
+sha256sums=('b1482690565241baf3870311a77efb3f89a4335f48cb4ca31e8b8405220a8d99')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --sysconfdir=/etc --localstatedir=/var
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/libpeas/libpeas.install b/extra/libpeas/libpeas.install
new file mode 100644
index 000000000..1a05f573e
--- /dev/null
+++ b/extra/libpeas/libpeas.install
@@ -0,0 +1,11 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/extra/librsvg/PKGBUILD b/extra/librsvg/PKGBUILD
index 01c3f81b2..ddc574aa9 100644
--- a/extra/librsvg/PKGBUILD
+++ b/extra/librsvg/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 111164 2011-02-24 15:09:19Z ibiru $
+# $Id: PKGBUILD 117525 2011-04-04 10:15:22Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=librsvg
-pkgver=2.32.1
-pkgrel=2
+pkgver=2.34.0
+pkgrel=1
pkgdesc="SAX-based renderer for SVG files into a GdkPixbuf"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
@@ -13,8 +13,8 @@ optdepends=('python2: rsvg commandline utility')
options=('!libtool' '!emptydirs')
url="http://librsvg.sourceforge.net/"
install=librsvg.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('91b98051f352fab8a6257688d6b2fd665b4648ed66144861f2f853ccf876d334')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.34/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('9d2111e086dcffd12466f48ab1ca088654011684c499a4cc4676da918290f3cd')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/extra/libsocialweb/PKGBUILD b/extra/libsocialweb/PKGBUILD
new file mode 100644
index 000000000..b0a66654b
--- /dev/null
+++ b/extra/libsocialweb/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 120409 2011-04-23 20:56:42Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=libsocialweb
+pkgver=0.25.16
+pkgrel=1
+pkgdesc="A personal social data server"
+arch=('i686' 'x86_64')
+url="http://www.gtk.org/"
+license=('GPL2')
+depends=('glib2' 'gconf' 'libsoup-gnome' 'rest' 'dbus-glib' 'libgnome-keyring'
+ 'json-glib')
+makedepends=('intltool' 'gtk-doc')
+options=('!libtool')
+source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-${pkgver}.tar.bz2)
+sha256sums=('2726c29c5e334294df81d2d57c750ed86866c64a6b0e14eae7f8c7cc7b033064')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --libexecdir=/usr/lib/libsocialweb \
+ --enable-all-services=yes \
+ --with-online=always
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/libsoup/PKGBUILD b/extra/libsoup/PKGBUILD
index 40b2e2349..901438de5 100644
--- a/extra/libsoup/PKGBUILD
+++ b/extra/libsoup/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id: PKGBUILD 101648 2010-11-29 23:33:18Z ibiru $
+# $Id: PKGBUILD 120683 2011-04-25 23:06:22Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=libsoup
pkgname=('libsoup' 'libsoup-gnome')
-pkgver=2.32.2
+pkgver=2.34.1
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-makedepends=('glib2>=2.26.1' 'gnutls>=2.8.6' 'libxml2>=2.7.8' 'libproxy>=0.4.6' 'sqlite3>=3.7.2' 'gconf>=2.32.0' 'libgnome-keyring>=2.32.0' 'intltool' 'gobject-introspection>=0.9.12')
+makedepends=('glib2' 'libxml2' 'sqlite3' 'libgnome-keyring' 'intltool' 'gobject-introspection' 'glib-networking')
url="http://www.gnome.org"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2)
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/${pkgver%.*}/${pkgbase}-${pkgver}.tar.bz2)
options=('!libtool' '!emptydirs')
-sha256sums=('96e6973c8b7459523c0f44e7aec69528ff2fbd388e8ddc415f91bcc42f50777f')
+sha256sums=('a2f846af2c4c08e15eacc9879c8c9be4d85f8105f960f96a9ba3dbabd9ee517b')
build() {
cd "${srcdir}/${pkgbase}-${pkgver}"
@@ -22,10 +22,11 @@ build() {
package_libsoup() {
pkgdesc="GNOME HTTP Library - base library"
- depends=('glib2>=2.26.1' 'libxml2>=2.7.8' 'gnutls>=2.8.6')
+ depends=('glib2' 'libxml2' 'glib-networking')
cd "${srcdir}/${pkgbase}-${pkgver}"
make DESTDIR="${pkgdir}" install
+
rm -f "${pkgdir}"/usr/lib/libsoup-gnome-2.4.*
rm -f "${pkgdir}/usr/lib/pkgconfig/libsoup-gnome-2.4.pc"
rm -rf "${pkgdir}/usr/include/libsoup-gnome-2.4"
@@ -34,10 +35,11 @@ package_libsoup() {
package_libsoup-gnome() {
pkgdesc="GNOME HTTP Library - GNOME libraries"
- depends=("libsoup=${pkgver}" 'libproxy>=0.4.6' 'libgnome-keyring>=2.32.0' 'gconf>=2.32.0')
+ depends=("libsoup=${pkgver}" 'libgnome-keyring')
cd "${srcdir}/${pkgbase}-${pkgver}"
- make DESTDIR="${pkgdir}" install
+ make DESTDIR="${pkgdir}" install
+
rm -f "${pkgdir}"/usr/lib/libsoup-2.4.*
rm -f "${pkgdir}/usr/lib/pkgconfig/libsoup-2.4.pc"
rm -rf "${pkgdir}/usr/include/libsoup-2.4"
diff --git a/extra/libunique/PKGBUILD b/extra/libunique/PKGBUILD
index 1e14fca6e..a03262a99 100644
--- a/extra/libunique/PKGBUILD
+++ b/extra/libunique/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 90706 2010-09-15 13:49:39Z jgc $
+# $Id: PKGBUILD 109868 2011-02-13 14:14:02Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libunique
pkgver=1.1.6
-pkgrel=3
+pkgrel=4
pkgdesc="Library for writing single instance applications"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('gtk2>=2.21.8')
-makedepends=('pkgconfig' 'gobject-introspection>=0.9.5')
+depends=('gtk2')
+makedepends=('gtk-doc' 'gobject-introspection')
options=('!libtool')
url="http://live.gnome.org/LibUnique"
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/1.1/${pkgname}-${pkgver}.tar.bz2
@@ -23,5 +23,12 @@ build() {
--localstatedir=/var --disable-static \
--disable-dbus
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
+
+ # Remove documentation, provided by libunique3
+ rm -r "$pkgdir/usr/share/gtk-doc"
}
diff --git a/extra/libunique3/PKGBUILD b/extra/libunique3/PKGBUILD
new file mode 100644
index 000000000..87f7a09b9
--- /dev/null
+++ b/extra/libunique3/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 117940 2011-04-04 22:13:19Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=libunique3
+pkgver=3.0.0
+pkgrel=1
+pkgdesc="Library for writing single instance applications for GTK3"
+arch=('i686' 'x86_64')
+license=('LGPL')
+depends=('gtk3')
+makedepends=('gtk-doc' 'gobject-introspection')
+options=('!libtool')
+url="http://live.gnome.org/LibUnique"
+source=(http://ftp.gnome.org/pub/gnome/sources/libunique/${pkgver%.*}/libunique-${pkgver}.tar.bz2)
+sha256sums=('e945ff3d3bb7d4085ed73b5418f2935097bb0afc07287739c8f0d6fc049202e1')
+
+build() {
+ cd "${srcdir}/libunique-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static \
+ --disable-dbus
+ make
+}
+
+package() {
+ cd "${srcdir}/libunique-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/libvncserver/PKGBUILD b/extra/libvncserver/PKGBUILD
index d1303dc44..18d101959 100644
--- a/extra/libvncserver/PKGBUILD
+++ b/extra/libvncserver/PKGBUILD
@@ -1,22 +1,26 @@
-# $Id: PKGBUILD 63372 2010-01-17 12:51:49Z andrea $
+# $Id: PKGBUILD 120955 2011-04-27 19:24:20Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=libvncserver
-pkgver=0.9.7
-pkgrel=3
-pkgdesc="The vnc library"
+pkgver=0.9.8
+pkgrel=1
+pkgdesc="A cross-platform C libraries that allow you to easily implement VNC server"
arch=('i686' 'x86_64' 'mips64el')
url="http://libvncserver.sourceforge.net/"
license=('GPL')
-depends=('libjpeg>=8' 'zlib')
+depends=('libjpeg' 'zlib')
options=('!libtool')
-source=(http://downloads.sourceforge.net/${pkgname}/LibVNCServer-${pkgver}.tar.gz)
-md5sums=('14af5bdae461df4666c18e5f83c150c4')
+source=("http://downloads.sourceforge.net/${pkgname}/LibVNCServer-${pkgver}.tar.gz")
+md5sums=('dda9e75a1d5d7c37bb57d90ead7b32b3')
build() {
- cd $srcdir/LibVNCServer-$pkgver
- ./configure --prefix=/usr || return 1
- make || return 1
- make DESTDIR=$pkgdir install || return 1
+ cd "${srcdir}/LibVNCServer-${pkgver}"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/LibVNCServer-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libwebkit/PKGBUILD b/extra/libwebkit/PKGBUILD
index 22783b700..d2b541f1e 100644
--- a/extra/libwebkit/PKGBUILD
+++ b/extra/libwebkit/PKGBUILD
@@ -1,39 +1,57 @@
-# $Id: PKGBUILD 109463 2011-02-09 20:43:10Z andyrtr $
+# $Id: PKGBUILD 121025 2011-04-27 21:44:28Z ibiru $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
-pkgname=libwebkit
-pkgver=1.2.7
+pkgbase=libwebkit
+pkgname=(libwebkit libwebkit3)
+pkgver=1.4.0
pkgrel=1
-pkgdesc="an opensource web content engine, derived from KHTML and KJS from KDE"
+pkgdesc="An opensource web content engine"
arch=('i686' 'x86_64' 'mips64el')
url="http://webkitgtk.org/"
license=('custom')
-depends=('libxt' 'libxslt' 'sqlite3' 'gtk2' 'icu>=4.6' 'gstreamer0.10-base' 'libsoup' 'enchant')
-makedepends=('gperf' 'gtk-doc' 'gobject-introspection')
-provides=('webkitgtk-svn')
-conflicts=('webkitgtk-svn')
-replaces=('webkitgtk-svn')
+depends=('libxt' 'libxslt' 'sqlite3' 'icu' 'gstreamer0.10-base' 'libsoup' 'enchant')
+makedepends=('gperf' 'gtk-doc' 'gobject-introspection' 'python2' 'gtk2' 'gtk3')
options=('!libtool')
-source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz
- introspection.patch)
-md5sums=('25c7e548b65aeb6d83c0182c32ef0927'
- 'e7e83312618cb30cc9a1567a21cd0e06')
-
+install=libwebkit.install
+source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz gcc46.patch)
+md5sums=('10c969db3b5484c71df1aa9a338377ff'
+ '970a2fa91b9827dff8e9b9edb4867701')
build() {
cd "${srcdir}/webkit-${pkgver}"
- patch -Np0 -i "${srcdir}/introspection.patch"
-
- ./configure --prefix=/usr \
- --enable-video --enable-introspection \
- --with-font-backend=freetype --enable-gtk-doc \
- --enable-jit --with-unicode-backend=icu
- #disable makeflags if parallel building fails
- make ${MAKEFLAGS}
+ patch -Np1 -i "${srcdir}/gcc46.patch"
+ mkdir build-gtk{2,3}
+
+ ( cd build-gtk2 && _build --with-gtk=2.0 )
+ ( cd build-gtk3 && _build --with-gtk=3.0 )
}
-package() {
- cd "${srcdir}/webkit-${pkgver}"
+_build() {
+ PYTHON=/usr/bin/python2 ../configure --prefix=/usr \
+ --enable-introspection \
+ --with-font-backend=freetype --enable-gtk-doc \
+ --with-unicode-backend=icu \
+ --enable-spellcheck "$@"
+ make all stamp-po
+}
+
+package_libwebkit() {
+ pkgdesc+=" (for GTK2)"
+ depends+=(gtk2)
+ provides=('webkitgtk-svn')
+ conflicts=('webkitgtk-svn')
+ replaces=('webkitgtk-svn')
+
+ cd "$srcdir/webkit-$pkgver/build-gtk2"
+ make DESTDIR="${pkgdir}" install
+ install -Dm644 ../Source/WebKit/LICENSE "${pkgdir}/usr/share/licenses/libwebkit/LICENSE"
+}
+
+package_libwebkit3() {
+ pkgdesc+=" (for GTK3)"
+ depends+=(gtk3)
+
+ cd "${srcdir}/webkit-${pkgver}/build-gtk3"
make DESTDIR="${pkgdir}" install
- install -Dm644 WebKit/LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+ install -Dm644 ../Source/WebKit/LICENSE "${pkgdir}/usr/share/licenses/libwebkit3/LICENSE"
}
diff --git a/extra/libwebkit/gcc46.patch b/extra/libwebkit/gcc46.patch
new file mode 100644
index 000000000..befd892d4
--- /dev/null
+++ b/extra/libwebkit/gcc46.patch
@@ -0,0 +1,11 @@
+Index: trunk/Source/WebCore/dom/make_names.pl
+===================================================================
+--- trunk/Source/WebCore/dom/make_names.pl (revision 73989)
++++ trunk/Source/WebCore/dom/make_names.pl (revision 84123)
+@@ -66,5 +66,5 @@
+ $gccLocation = "/usr/bin/gcc";
+ }
+-my $preprocessor = $gccLocation . " -E -P -x c++";
++my $preprocessor = $gccLocation . " -E -x c++";
+
+ GetOptions(
diff --git a/extra/libwebkit/libwebkit.install b/extra/libwebkit/libwebkit.install
new file mode 100644
index 000000000..24072f316
--- /dev/null
+++ b/extra/libwebkit/libwebkit.install
@@ -0,0 +1,11 @@
+post_install() {
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/extra/libwnck/PKGBUILD b/extra/libwnck/PKGBUILD
index b39766262..dd3fa4a1e 100644
--- a/extra/libwnck/PKGBUILD
+++ b/extra/libwnck/PKGBUILD
@@ -1,22 +1,30 @@
-# $Id: PKGBUILD 99757 2010-11-17 12:00:58Z ibiru $
+# $Id: PKGBUILD 109642 2011-02-11 16:58:51Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=libwnck
pkgver=2.30.6
-pkgrel=1
+pkgrel=2
pkgdesc="Window Navigator Construction Kit"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('gtk2>=2.22.0' 'startup-notification>=0.10' 'libxres')
-makedepends=('libxt>=1.0.6' 'intltool' 'gobject-introspection')
+depends=('gtk2' 'startup-notification' 'libxres')
+makedepends=('libxt' 'intltool' 'gobject-introspection')
options=('!libtool')
url="http://www.gnome.org/"
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2)
sha256sums=('4d25984ed5cfe215eb650f960de634300a6cafc9d98bbc7caea8043b7cd96cc5')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var --disable-static
- make
- make DESTDIR="${pkgdir}" install
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ #The binaries are shipped in libwnck3
+ rm -f ${pkgdir}/usr/bin/wnckprop
+ rm -f ${pkgdir}/usr/bin/wnck-urgency-monitor
}
diff --git a/extra/libwnck3/PKGBUILD b/extra/libwnck3/PKGBUILD
new file mode 100644
index 000000000..c9395bec3
--- /dev/null
+++ b/extra/libwnck3/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 117893 2011-04-04 21:09:31Z heftig $
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+pkgname=libwnck3
+_pkgbasename=libwnck
+pkgver=3.0.0
+pkgrel=1
+pkgdesc="Window Navigator Construction Kit (GTK+3)"
+arch=('i686' 'x86_64')
+license=('LGPL')
+depends=('gtk3' 'startup-notification' 'libxres')
+makedepends=('intltool' 'gobject-introspection')
+options=('!libtool')
+url="http://www.gnome.org/"
+source=(http://ftp.gnome.org/pub/gnome/sources/${_pkgbasename}/${pkgver%.*}/${_pkgbasename}-${pkgver}.tar.bz2)
+sha256sums=('bc34093ad185bb5086e97226f36157a6dd205623d32bdef71261a8b248a41f15')
+
+build() {
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/${_pkgbasename}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/libxklavier/PKGBUILD b/extra/libxklavier/PKGBUILD
index fc28f41a8..1779f53c5 100644
--- a/extra/libxklavier/PKGBUILD
+++ b/extra/libxklavier/PKGBUILD
@@ -1,24 +1,28 @@
-# $Id: PKGBUILD 68544 2010-02-13 09:51:41Z jgc $
+# $Id: PKGBUILD 109917 2011-02-13 20:31:57Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Arjan Timmerman <arjan@archlinux.org>
pkgname=libxklavier
-pkgver=5.0
+pkgver=5.1
pkgrel=1
pkgdesc="High-level API for X Keyboard Extension"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('libxkbfile>=1.0.5' 'libxml2>=2.7.6' 'glib2>=2.22.3' 'xkeyboard-config>=1.6' 'libxi>=1.2.1' 'iso-codes>=3.10.1')
+depends=('glib2' 'libxkbfile' 'libxml2' 'xkeyboard-config' 'libxi' 'iso-codes')
makedepends=('pkgconfig')
options=('!libtool' '!emptydirs')
url="http://gswitchit.sourceforge.net"
source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('dfd94b17a752b2839281764f0a16af2b338024c8867c10fba7015f276dec4db0')
+sha256sums=('1d7e8a6ed842d415d2f95b827e7d04ecf515ed5be2aaee262a8dd1c5cbe10ff1')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr \
- --with-xkb-base=/usr/share/X11/xkb --disable-static || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ --with-xkb-base=/usr/share/X11/xkb --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/libxml++/PKGBUILD b/extra/libxml++/PKGBUILD
index efce45615..5f860c6c5 100644
--- a/extra/libxml++/PKGBUILD
+++ b/extra/libxml++/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id: PKGBUILD 100758 2010-11-25 19:14:49Z ibiru $
+# $Id: PKGBUILD 120095 2011-04-19 21:39:40Z ibiru $
# Maintainer: damir <damir@archlinux.org>
pkgbase=libxml++
pkgname=('libxml++' 'libxml++-docs')
-pkgver=2.32.0
+pkgver=2.34.1
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
url="http://libxmlplusplus.sourceforge.net/"
-makedepends=('pkgconfig' 'glibmm-docs' 'libxml2>=2.7.7' 'glibmm>=2.24.2')
+makedepends=('pkgconfig' 'glibmm-docs' 'libxml2' 'glibmm')
options=('!libtool' '!emptydirs')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.32/${pkgbase}-${pkgver}.tar.bz2)
-sha256sums=('7989e285ca6fe63379121a2afea8dd4806abef6ecf1cb84f4fc4e9de18b43c25')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgbase}/2.34/${pkgbase}-${pkgver}.tar.bz2)
+sha256sums=('664f3636c425554bf5e7d1b60253244e2d723899be8a971fc54332148bfce040')
build() {
cd "${srcdir}/${pkgbase}-${pkgver}"
@@ -21,7 +21,7 @@ build() {
package_libxml++() {
pkgdesc="C++ bindings to libxml2"
- depends=('libxml2>=2.7.7' 'glibmm>=2.24.2')
+ depends=('libxml2' 'glibmm')
replaces=('libxml++2')
provides=("libxml++2=${pkgver}")
conflicts=('libxml++2')
diff --git a/extra/liferea/PKGBUILD b/extra/liferea/PKGBUILD
index b9bde496a..d0c7602c7 100644
--- a/extra/liferea/PKGBUILD
+++ b/extra/liferea/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 112823 2011-03-07 01:00:08Z eric $
-# Maintainer: Eric Belanger <eric@archlinux.org>
+# $Id: PKGBUILD 118815 2011-04-08 03:03:14Z eric $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
pkgname=liferea
pkgver=1.6.5
-pkgrel=2
+pkgrel=3
pkgdesc="A desktop news aggregator for online news feeds and weblogs"
arch=('i686' 'x86_64' 'mips64el')
url="http://liferea.sourceforge.net/"
@@ -14,7 +14,6 @@ optdepends=('lua: for lua scripting support'
'libnotify: for notification support')
options=('!libtool' '!emptydirs')
install=liferea.install
-changelog=ChangeLog
source=(http://downloads.sourceforge.net/sourceforge/liferea/liferea-${pkgver}.tar.gz
libnotify-0.7.patch)
md5sums=('b5a2c0803eec5d0aff0b9ca4114eaf16'
diff --git a/extra/lighttpd/PKGBUILD b/extra/lighttpd/PKGBUILD
index f8ef5459b..537b1c591 100644
--- a/extra/lighttpd/PKGBUILD
+++ b/extra/lighttpd/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 118904 2011-04-09 11:33:06Z pierre $
+# $Id: PKGBUILD 120925 2011-04-27 13:05:01Z pierre $
# Maintainer: Pierre Schmitz <pierre@archlinux.de>
pkgname=lighttpd
pkgver=1.4.28
-pkgrel=5
+pkgrel=6
pkgdesc='a secure, fast, compliant and very flexible web-server'
license=('custom')
arch=('i686' 'x86_64' 'mips64el')
@@ -19,7 +19,7 @@ options=('!libtool' 'emptydirs')
source=("http://download.lighttpd.net/lighttpd/releases-1.4.x/lighttpd-${pkgver}.tar.bz2"
'lighttpd.rc.d' 'lighttpd.logrotate.d' 'lighttpd.conf')
md5sums=('586eb535d31ac299652495b058dd87c4'
- 'eadffcda24d0d996032f8555ce9623c2'
+ '369f2eea6231342b514ca4777bf395c8'
'913e2157fa78d990c32146f387d44c2b'
'2803a9ee7f20409c69f1566d2d90720e')
diff --git a/extra/lighttpd/lighttpd.rc.d b/extra/lighttpd/lighttpd.rc.d
index 32fdd0d08..345e889ae 100644
--- a/extra/lighttpd/lighttpd.rc.d
+++ b/extra/lighttpd/lighttpd.rc.d
@@ -44,7 +44,7 @@ test_config() {
fi
local piddir=$(dirname "$(get_pid_file)")
- if [ ! -d "{$piddir}" ]; then
+ if [ ! -d "${piddir}" ]; then
install -d -m755 -o http -g http "${piddir}"
fi
diff --git a/extra/llvm/PKGBUILD b/extra/llvm/PKGBUILD
new file mode 100644
index 000000000..3587a7775
--- /dev/null
+++ b/extra/llvm/PKGBUILD
@@ -0,0 +1,225 @@
+# $Id: PKGBUILD 121057 2011-04-28 21:09:26Z heftig $
+# Maintainer: Evangelos Foutras <foutrelis@gmail.com>
+# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: Sebastian Nowicki <sebnow@gmail.com>
+# Contributor: Devin Cofer <ranguvar{AT]archlinux[DOT}us>
+# Contributor: Tobias Kieslich <tobias@justdreams.de>
+# Contributor: Geoffroy Carrier <geoffroy.carrier@aur.archlinux.org>
+# Contributor: Tomas Lindquist Olsen <tomas@famolsen.dk>
+# Contributor: Roberto Alsina <ralsina@kde.org>
+# Contributor: Gerardo Exequiel Pozzi <vmlinuz386@yahoo.com.ar>
+
+pkgname=('llvm' 'llvm-ocaml' 'clang' 'clang-analyzer')
+pkgver=2.9
+_gcc_ver=4.6.0
+pkgrel=4
+arch=('i686' 'x86_64')
+url="http://llvm.org/"
+license=('custom:University of Illinois/NCSA Open Source License')
+makedepends=('gcc-libs' 'libffi' 'python2' 'ocaml' "gcc=$_gcc_ver")
+source=(http://llvm.org/releases/$pkgver/$pkgname-$pkgver.tgz
+ http://llvm.org/releases/$pkgver/clang-$pkgver.tgz
+ ftp://ftp.archlinux.org/other/community/clang/gcc-headers-4.5.2.tar.xz
+ clang-plugin-loader-registry.patch
+ cindexer-clang-path.patch
+ clang-toolchains-gcc-versions.patch
+ clang-pure64.patch
+ enable-lto.patch)
+md5sums=('793138412d2af2c7c7f54615f8943771'
+ '634de18d04b7a4ded19ec4c17d23cfca'
+ '70e23a3dc2b38ecb2bb4d2c48f47295d'
+ '02c23b4aaca3445b8bf39fddb2f9906e'
+ '87a7162dbe99e9ffce6c40bd09f5f4f0'
+ '8da236120a9a287a977b575b8b905c93'
+ '225ee6b531f8327f34f344a18cb4ec81'
+ '8f7582d7440e4a8342c3aea9ec714fb4')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # At the present, clang must reside inside the LLVM source code tree to build
+ # See http://llvm.org/bugs/show_bug.cgi?id=4840
+ rm -rf tools/clang
+ cp -r "$srcdir/clang-$pkgver" tools/clang
+
+ # Fix symbolic links from OCaml bindings to LLVM libraries
+ sed -i 's:\$(PROJ_libdir):/usr/lib/llvm:' bindings/ocaml/Makefile.ocaml
+
+ # Fix installation directories, ./configure doesn't seem to set them right
+ sed -i -e 's:\$(PROJ_prefix)/etc/llvm:/etc/llvm:' \
+ -e 's:\$(PROJ_prefix)/lib:$(PROJ_prefix)/lib/llvm:' \
+ -e 's:\$(PROJ_prefix)/docs/llvm:$(PROJ_prefix)/share/doc/llvm:' \
+ Makefile.config.in
+
+ # Fix insecure rpath (http://bugs.archlinux.org/task/14017)
+ sed -i 's:$(RPATH) -Wl,$(\(ToolDir\|LibDir\|ExmplDir\))::g' Makefile.rules
+
+ # Get the correct list of symbols to export
+ # See http://lists.cs.uiuc.edu/pipermail/cfe-dev/2010-April/008559.html
+ patch -Np1 -i "$srcdir/clang-plugin-loader-registry.patch"
+
+ # Fix clang path in CIndexer.cpp (https://bugs.archlinux.org/task/22799)
+ patch -d tools/clang -Np0 -i "$srcdir/cindexer-clang-path.patch"
+
+ # Add GCC 4.6.0 to GccVersions (FS#23631)
+ patch -d tools/clang -Np1 -i "$srcdir/clang-toolchains-gcc-versions.patch"
+
+ if [[ $CARCH == x86_64 ]]; then
+ # Adjust lib paths
+ patch -d tools/clang -Np0 -i "$srcdir/clang-pure64.patch"
+ fi
+
+ # Make -flto work
+ # Use gold instead of default linker, and always use the plugin
+ patch -d tools/clang -Np0 -i "$srcdir/enable-lto.patch"
+
+ # Apply strip option to configure
+ _optimized_switch="enable"
+ [[ $(check_option strip) == n ]] && _optimized_switch="disable"
+
+ # Include location of libffi headers in CPPFLAGS
+ export CPPFLAGS="$CPPFLAGS $(pkg-config --cflags libffi)"
+
+ # TODO: Uncomment when clang works with GCC 4.6+
+ #_cxx_headers="/usr/include/c++/$_gcc_ver"
+ #if [[ ! -d $_cxx_headers ]]; then
+ # error "Couldn't find the C++ headers, PKGBUILD needs fixing!"
+ # return 1
+ #fi
+ _cxx_headers="/usr/include/c++/clang-$pkgver"
+
+ _32bit_headers=""
+ if [[ $CARCH == x86_64 ]]; then
+ # Important for multilib
+ _32bit_headers="32"
+ fi
+
+ ./configure \
+ --prefix=/usr \
+ --libdir=/usr/lib/llvm \
+ --sysconfdir=/etc \
+ --enable-shared \
+ --enable-libffi \
+ --enable-targets=all \
+ --disable-expensive-checks \
+ --disable-debug-runtime \
+ --disable-assertions \
+ --with-binutils-include=/usr/include \
+ --with-cxx-include-root=$_cxx_headers \
+ --with-cxx-include-arch=$CHOST \
+ --with-cxx-include-32bit-dir=$_32bit_headers \
+ --$_optimized_switch-optimized
+
+ make REQUIRES_RTTI=1
+}
+
+package_llvm() {
+ pkgdesc="Low Level Virtual Machine"
+ depends=('perl' 'libffi')
+
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # We move the clang directory out of the tree so it won't get installed and
+ # then we bring it back in for the clang package
+ mv tools/clang "$srcdir"
+ # -j1 is due to race conditions during the installation of the OCaml bindings
+ make -j1 DESTDIR="$pkgdir" install
+ mv "$srcdir/clang" tools
+
+ # OCaml bindings go to a separate package
+ rm -rf "$srcdir"/{ocaml,ocamldoc}
+ mv "$pkgdir"/usr/{lib/ocaml,share/doc/llvm/ocamldoc} "$srcdir"
+
+ # Remove duplicate files installed by the OCaml bindings
+ rm "$pkgdir"/usr/{lib/llvm/libllvm*,share/doc/llvm/ocamldoc.tar.gz}
+
+ # Fix permissions of static libs
+ chmod -x "$pkgdir"/usr/lib/llvm/*.a
+
+ # Fix libdir in llvm-config (http://bugs.archlinux.org/task/14487)
+ sed -i 's:\(ABS_RUN_DIR/lib\):\1/llvm:' "$pkgdir/usr/bin/llvm-config"
+
+ # Get rid of example Hello transformation
+ rm "$pkgdir"/usr/lib/llvm/*LLVMHello.*
+
+ # Symlink the gold plugin where clang expects it
+ ln -s llvm/LLVMgold.so "$pkgdir/usr/lib/LLVMgold.so"
+
+ # Add ld.so.conf.d entry
+ install -d "$pkgdir/etc/ld.so.conf.d"
+ echo /usr/lib/llvm >"$pkgdir/etc/ld.so.conf.d/llvm.conf"
+
+ install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+}
+
+package_llvm-ocaml() {
+ pkgdesc="OCaml bindings for LLVM"
+ depends=("llvm=$pkgver-$pkgrel" 'ocaml')
+
+ cd "$srcdir/llvm-$pkgver"
+
+ install -d "$pkgdir"/{usr/lib,usr/share/doc/llvm}
+ cp -r "$srcdir/ocaml" "$pkgdir/usr/lib"
+ cp -r "$srcdir/ocamldoc" "$pkgdir/usr/share/doc/llvm"
+
+ # Remove execute bit from static libraries
+ chmod -x "$pkgdir"/usr/lib/ocaml/libllvm*.a
+
+ install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/llvm-ocaml/LICENSE"
+}
+
+package_clang() {
+ pkgdesc="C language family frontend for LLVM"
+ url="http://clang.llvm.org/"
+ # It looks like clang still needs GCC to assemble and link object files
+ # See http://old.nabble.com/%22clang--v%22-shows-a-GCC-call-td28378453.html
+ depends=("llvm=$pkgver-$pkgrel" "gcc=$_gcc_ver")
+
+ # Fix installation path for clang docs
+ sed -i 's:$(PROJ_prefix)/share/doc/llvm:$(PROJ_prefix)/share/doc/clang:' \
+ "$srcdir/llvm-$pkgver/Makefile.config"
+
+ cd "$srcdir/llvm-$pkgver/tools/clang"
+ make DESTDIR="$pkgdir" install
+
+ # Fix permissions of static libs
+ chmod -x "$pkgdir"/usr/lib/llvm/*.a
+
+ # Revert the path change in case we want to do a repackage later
+ sed -i 's:$(PROJ_prefix)/share/doc/clang:$(PROJ_prefix)/share/doc/llvm:' \
+ "$srcdir/llvm-$pkgver/Makefile.config"
+
+ # Install old libstdc++ headers. Contains combined headers from
+ # gcc 4.5.2-6-i686 and gcc-multilib-4.5.2-6-x86_64
+ install -d "$pkgdir/usr/include/c++"
+ cp -rd "$srcdir/gcc-headers-4.5.2" "$pkgdir/usr/include/c++/clang-$pkgver"
+
+ install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/clang/LICENSE"
+}
+
+package_clang-analyzer() {
+ pkgdesc="A source code analysis framework"
+ url="http://clang-analyzer.llvm.org/"
+ depends=("clang=$pkgver-$pkgrel" 'python2')
+
+ cd "$srcdir/llvm-$pkgver/tools/clang"
+
+ install -d "$pkgdir"/usr/{bin,lib/clang-analyzer}
+ for _tool in scan-{build,view}; do
+ cp -r tools/$_tool "$pkgdir/usr/lib/clang-analyzer/"
+ ln -s /usr/lib/clang-analyzer/$_tool/$_tool "$pkgdir/usr/bin/"
+ done
+
+ # Use Python 2
+ sed -i 's/env python$/\02/' \
+ "$pkgdir/usr/lib/clang-analyzer/scan-view/scan-view" \
+ "$pkgdir/usr/lib/clang-analyzer/scan-build/set-xcode-analyzer"
+
+ # Compile Python scripts
+ python2 -m compileall "$pkgdir/usr/lib/clang-analyzer"
+ python2 -O -m compileall "$pkgdir/usr/lib/clang-analyzer"
+
+ install -Dm644 LICENSE.TXT "$pkgdir/usr/share/licenses/clang-analyzer/LICENSE"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/llvm/cindexer-clang-path.patch b/extra/llvm/cindexer-clang-path.patch
new file mode 100644
index 000000000..ddaab690e
--- /dev/null
+++ b/extra/llvm/cindexer-clang-path.patch
@@ -0,0 +1,10 @@
+--- tools/libclang/CIndexer.cpp.orig 2011-04-07 13:08:24.000000000 +0300
++++ tools/libclang/CIndexer.cpp 2011-04-07 13:11:52.224884642 +0300
+@@ -80,6 +80,7 @@ std::string CIndexer::getClangResourcesP
+
+ // We now have the CIndex directory, locate clang relative to it.
+ LibClangPath.eraseComponent();
++ LibClangPath.eraseComponent();
+ #endif
+
+ LibClangPath.appendComponent("clang");
diff --git a/extra/llvm/clang-plugin-loader-registry.patch b/extra/llvm/clang-plugin-loader-registry.patch
new file mode 100644
index 000000000..f46eb9fce
--- /dev/null
+++ b/extra/llvm/clang-plugin-loader-registry.patch
@@ -0,0 +1,11 @@
+diff -upr llvm-2.7.orig/autoconf/ExportMap.map llvm-2.7/autoconf/ExportMap.map
+--- llvm-2.7.orig/autoconf/ExportMap.map 2010-02-25 00:33:41.000000000 +0200
++++ llvm-2.7/autoconf/ExportMap.map 2010-05-10 14:14:22.000000000 +0300
+@@ -2,6 +2,7 @@
+ global: main;
+ __progname;
+ environ;
++ _ZN4llvm8RegistryIN5clang14FrontendActionENS_14RegistryTraitsIS2_EEE4HeadE;
+
+ local: *;
+ };
diff --git a/extra/llvm/clang-pure64.patch b/extra/llvm/clang-pure64.patch
new file mode 100644
index 000000000..da6178519
--- /dev/null
+++ b/extra/llvm/clang-pure64.patch
@@ -0,0 +1,38 @@
+Index: lib/Driver/Tools.cpp
+===================================================================
+--- lib/Driver/Tools.cpp (revision 123373)
++++ lib/Driver/Tools.cpp (working copy)
+@@ -3306,7 +3306,7 @@
+ else if (ToolChain.getArch() == llvm::Triple::arm)
+ CmdArgs.push_back("/lib/ld-linux.so.3");
+ else
+- CmdArgs.push_back("/lib64/ld-linux-x86-64.so.2");
++ CmdArgs.push_back("/lib/ld-linux-x86-64.so.2");
+ }
+
+ CmdArgs.push_back("-o");
+Index: lib/Driver/ToolChains.cpp
+===================================================================
+--- lib/Driver/ToolChains.cpp (revision 123373)
++++ lib/Driver/ToolChains.cpp (working copy)
+@@ -1317,18 +1317,10 @@
+ if (Arch == llvm::Triple::x86)
+ Suffix64 = "/64";
+
+- std::string Lib32 = "lib";
+-
+- bool Exists;
+- if (!llvm::sys::fs::exists("/lib32", Exists) && Exists)
+- Lib32 = "lib32";
+-
++ std::string Lib32 = "lib32";
+ std::string Lib64 = "lib";
+- bool Symlink;
+- if (!llvm::sys::fs::exists("/lib64", Exists) && Exists &&
+- (llvm::sys::fs::is_symlink("/lib64", Symlink) || !Symlink))
+- Lib64 = "lib64";
+
++ bool Exists;
+ std::string GccTriple = "";
+ if (Arch == llvm::Triple::arm) {
+ if (!llvm::sys::fs::exists("/usr/lib/gcc/arm-linux-gnueabi", Exists) &&
diff --git a/extra/llvm/clang-toolchains-gcc-versions.patch b/extra/llvm/clang-toolchains-gcc-versions.patch
new file mode 100644
index 000000000..2e527300d
--- /dev/null
+++ b/extra/llvm/clang-toolchains-gcc-versions.patch
@@ -0,0 +1,12 @@
+diff -upr clang-2.9.orig/lib/Driver/ToolChains.cpp clang-2.9/lib/Driver/ToolChains.cpp
+--- clang-2.9.orig/lib/Driver/ToolChains.cpp 2011-03-21 23:29:27.000000000 +0200
++++ clang-2.9/lib/Driver/ToolChains.cpp 2011-04-08 00:03:34.000000000 +0300
+@@ -1449,7 +1449,7 @@ Linux::Linux(const HostInfo &Host, const
+ GccTriple = "i586-suse-linux";
+ }
+
+- const char* GccVersions[] = {"4.5.2", "4.5.1", "4.5", "4.4.5", "4.4.4",
++ const char* GccVersions[] = {"4.6.0", "4.5.2", "4.5.1", "4.5", "4.4.5", "4.4.4",
+ "4.4.3", "4.4", "4.3.4", "4.3.3", "4.3.2",
+ "4.3", "4.2.4", "4.2.3", "4.2.2", "4.2.1",
+ "4.2"};
diff --git a/extra/llvm/enable-lto.patch b/extra/llvm/enable-lto.patch
new file mode 100644
index 000000000..40d93104a
--- /dev/null
+++ b/extra/llvm/enable-lto.patch
@@ -0,0 +1,36 @@
+Index: lib/Driver/ToolChains.cpp
+===================================================================
+--- lib/Driver/ToolChains.cpp (revision 123373)
++++ lib/Driver/ToolChains.cpp (working copy)
+@@ -1398,11 +1398,11 @@
+ Lib = Lib64;
+ }
+
+- llvm::sys::Path LinkerPath(Base + "/../../../../" + GccTriple + "/bin/ld");
++ llvm::sys::Path LinkerPath(Base + "/../../../../" + GccTriple + "/bin/ld.gold");
+ if (!llvm::sys::fs::exists(LinkerPath.str(), Exists) && Exists)
+ Linker = LinkerPath.str();
+ else
+- Linker = GetProgramPath("ld");
++ Linker = GetProgramPath("ld.gold");
+
+ LinuxDistro Distro = DetectLinuxDistro(Arch);
+
+Index: lib/Driver/Tools.cpp
+===================================================================
+--- lib/Driver/Tools.cpp (revision 123373)
++++ lib/Driver/Tools.cpp (working copy)
+@@ -3412,11 +3412,11 @@
+ }
+ }
+
+- if (Args.hasArg(options::OPT_use_gold_plugin)) {
++ // if (Args.hasArg(options::OPT_use_gold_plugin)) {
+ CmdArgs.push_back("-plugin");
+ std::string Plugin = ToolChain.getDriver().Dir + "/../lib/LLVMgold.so";
+ CmdArgs.push_back(Args.MakeArgString(Plugin));
+- }
++ // }
+
+ C.addCommand(new Command(JA, *this, ToolChain.Linker.c_str(), CmdArgs));
+ }
diff --git a/extra/mail-notification/PKGBUILD b/extra/mail-notification/PKGBUILD
index 5852c3de7..f4a978457 100644
--- a/extra/mail-notification/PKGBUILD
+++ b/extra/mail-notification/PKGBUILD
@@ -1,53 +1,81 @@
-# $Id: PKGBUILD 112858 2011-03-07 09:46:50Z ibiru $
+# $Id: PKGBUILD 119734 2011-04-14 10:44:43Z jgc $
# Maintainer: Roman Kyrylych <roman@archlinux.org>
pkgname=mail-notification
pkgver=5.4
-pkgrel=7
+pkgrel=8
pkgdesc="Tray icon application that informs you if you have new mail"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.nongnu.org/mailnotify/"
license=('GPL3' 'FDL')
-depends=('cyrus-sasl-plugins' 'gmime' 'libnotify>=0.7.1' 'gnome-keyring' 'hicolor-icon-theme' 'notification-daemon' 'libgnomeui')
+depends=('cyrus-sasl-plugins' 'gmime' 'libnotify>=0.7.1' 'gnome-keyring' 'hicolor-icon-theme' 'notification-daemon' 'libgnome')
makedepends=('gob2' 'intltool' 'evolution' 'gnome-doc-utils')
options=('!libtool' '!emptydirs')
install=mail-notification.install
source=(http://savannah.nongnu.org/download/mailnotify/${pkgname}-${pkgver}.tar.bz2
dont-update-cache.patch
remove-ubuntu-special-case.patch
+ mail-notification-5.4-evolution.patch
gmime-2.4.patch
- evolution-gtkhtml.patch
- evolution.patch
+ mail-notification-5.4-sasl_encode64.patch
+ mail-notification-5.4-evolution-gtkhtml.patch
+ mail-notification-5.4-camel_headers.patch
mail-notification-5.4-icons.patch
- mail-notification-5.4-camel_headers.patch)
+ mail-notification-5.4-weak.patch
+ mail-notification-5.4-popup-attach.patch
+ mail-notification-5.4-kde-trayicon.patch
+ mail-notification-5.4-evolution-3-0-support.patch
+ mail-notification-5.4-gtk3-support.patch
+ mail-notification-5.4-add-fallback-icon.patch)
md5sums=('c8dc33a61251acb5474e56eab6b18f43'
'6007bc30e789dab0a8282038e0335eb9'
'9cadd61bbd9c324b2916ec980231e0f2'
+ 'aa6f80820899f904c25988772f70ade9'
'447cc20f035b9cf1a391027684ce1297'
- '500b2e42fbc5078e61407923a07b6e94'
- '46568640b7f97ab9ab7b54d49bee7e8e'
- '8f602891a694ceaa91f845d97ae51b39'
- 'f79939f593b2e8659e302df72c2b54b1')
+ '125513ed059f62469377eb0ab794dbed'
+ 'c595a3962ab13a65be24a941e28faa9c'
+ 'f79939f593b2e8659e302df72c2b54b1'
+ '244b7ef2aec7656e8df390be87c10e2b'
+ '31bde95dfd39449959d8b3316f91429c'
+ 'cdead6a88d1779f69a5f40dc75d5cb84'
+ 'c7991b831834724eddc1c6802c3e06a6'
+ '49fe910f68393b0f6a1f1bcb7a8bdcd3'
+ '55ed1aeb56ca053cc1a0a6062761c2b4'
+ '09df61b4dc29c676ac81ff9054e840ac')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
patch -Np0 -i "${srcdir}/dont-update-cache.patch"
patch -Np0 -i "${srcdir}/remove-ubuntu-special-case.patch"
+ patch -Np1 -i "${srcdir}/mail-notification-5.4-evolution.patch"
patch -Np1 -i "${srcdir}/gmime-2.4.patch"
- patch -Np1 -i "${srcdir}/evolution-gtkhtml.patch"
- patch -Np0 -i "${srcdir}/evolution.patch"
- patch -Np0 -i "${srcdir}/mail-notification-5.4-icons.patch"
+ patch -Np1 -i "${srcdir}/mail-notification-5.4-sasl_encode64.patch"
+ patch -Np1 -i "${srcdir}/mail-notification-5.4-evolution-gtkhtml.patch"
patch -Np1 -i "${srcdir}/mail-notification-5.4-camel_headers.patch"
+ patch -Np1 -i "${srcdir}/mail-notification-5.4-icons.patch"
+ patch -Np1 -i "${srcdir}/mail-notification-5.4-weak.patch"
+ patch -Np1 -i "${srcdir}/mail-notification-5.4-popup-attach.patch"
+ patch -Np1 -i "${srcdir}/mail-notification-5.4-kde-trayicon.patch"
+ patch -Np0 -i "${srcdir}/mail-notification-5.4-evolution-3-0-support.patch"
+ patch -Np0 -i "${srcdir}/mail-notification-5.4-gtk3-support.patch"
+ patch -Np0 -i "${srcdir}/mail-notification-5.4-add-fallback-icon.patch"
+
+ gtk-builder-convert ui/mailbox-properties-dialog.glade ui/mailbox-properties-dialog.ui
+ gtk-builder-convert ui/properties-dialog.glade ui/properties-dialog.ui
./jb configure prefix=/usr sysconfdir=/etc \
localstatedir=/var destdir="${pkgdir}" \
- gconf-schemas-dir=/etc/gconf/schemas install-gconf-schemas=yes \
+ gconf-schemas-dir=/etc/gconf/schemas install-gconf-schemas=no \
cflags="${CFLAGS}" cppflags="${CXXFLAGS}" ldflags="${LDFLAGS}" \
library-mode=0755
./jb build
GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 ./jb install
+ rm -f "${pkgdir}/usr/share/mail-notification/"*.glade
+ install -m644 ui/mailbox-properties-dialog.ui "${pkgdir}/usr/share/mail-notification/"
+ install -m644 ui/properties-dialog.ui "${pkgdir}/usr/share/mail-notification/"
+
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema ${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas --domain mail-notification ${pkgdir}/etc/gconf/schemas/*.schemas
rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
diff --git a/extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch b/extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch
new file mode 100644
index 000000000..41c28e870
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-add-fallback-icon.patch
@@ -0,0 +1,16 @@
+--- src/mn-stock.c.orig 2011-02-17 17:42:39.886767087 +0100
++++ src/mn-stock.c 2011-02-17 17:49:37.415541177 +0100
+@@ -86,6 +86,13 @@
+ gtk_icon_source_set_icon_name(icon_source, icons[i].icon_name);
+ gtk_icon_set_add_source(icon_set, icon_source);
+ gtk_icon_source_free(icon_source);
++
++ /* Add a fallback icon */
++ icon_source = gtk_icon_source_new();
++ gtk_icon_source_set_icon_name(icon_source, "mail-notification");
++ gtk_icon_source_set_state_wildcarded(icon_source, TRUE);
++ gtk_icon_set_add_source(icon_set, icon_source);
++ gtk_icon_source_free(icon_source);
+ }
+ else if (icons[i].source_stock_id)
+ {
diff --git a/extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch b/extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch
new file mode 100644
index 000000000..51a0eb519
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-evolution-3-0-support.patch
@@ -0,0 +1,70 @@
+--- jbsrc/lib/src/extras/jb-evolution-plugin.c.evolution30 2011-02-02 00:09:33.945696868 +0100
++++ jbsrc/lib/src/extras/jb-evolution-plugin.c 2011-02-02 00:28:09.096275028 +0100
+@@ -41,7 +41,7 @@
+ if (! minversion)
+ minversion = "2.12";
+
+- packages = g_strdup_printf("evolution-plugin >= %s libgtkhtml-3.15 gtkhtml-editor-3.14", minversion);
++ packages = g_strdup_printf("evolution-plugin-3.0 >= %s libgtkhtml-4.0 gtkhtml-editor-4.0", minversion);
+ result = jb_check_packages("Evolution", "evolution-plugin", packages);
+ g_free(packages);
+
+@@ -53,7 +53,7 @@
+ char *plugindir;
+
+ jb_message_checking("for the Evolution plugin directory");
+- plugindir = jb_get_package_variable("evolution-plugin", "plugindir");
++ plugindir = jb_get_package_variable("evolution-plugin-3.0", "plugindir");
+ jb_message_result_string(plugindir ? plugindir : "not found");
+
+ if (! plugindir)
+--- src/mn-evolution-plugin.c.orig 2011-02-09 00:07:37.422002566 +0100
++++ src/mn-evolution-plugin.c 2011-02-09 00:12:43.652678682 +0100
+@@ -25,6 +25,7 @@
+ #include <dbus/dbus-glib-lowlevel.h>
+ #include <dbus/dbus-glib-bindings.h>
+ #include <camel/camel.h>
++#include <libedataserver/eds-version.h>
+ #include <mail/em-event.h>
+ #include <mail/mail-tools.h>
+ #include "mn-evolution.h"
+@@ -249,10 +250,16 @@
+ {
+ if (evo_server)
+ {
+- char *url;
++#if EDS_CHECK_VERSION(2,91,0)
++ const char *url = camel_folder_get_uri(message->folder);
++#else
++ char *url = mail_tools_folder_to_url(message->folder);
++#endif
+
+- url = mail_tools_folder_to_url(message->folder);
+ mn_evolution_server_message_reading(evo_server, url);
++
++#if !EDS_CHECK_VERSION(2,91,0)
+ g_free(url);
++#endif
+ }
+ }
+--- build/src/mn-evolution-server.c.orig 2011-02-09 00:17:38.850944227 +0100
++++ build/src/mn-evolution-server.c 2011-02-09 22:21:54.155346478 +0100
+@@ -496,11 +496,15 @@
+
+ if (! folder)
+ {
+- folder = mail_tool_uri_to_folder(uri, 0,
+ #if EDS_CHECK_VERSION(2,91,0)
+- NULL,
++ static EMailSession * session = NULL;
++ if (!session)
++ session = e_mail_session_new();
++
++ folder = e_mail_session_uri_to_folder_sync(session, uri, 0, NULL, NULL);
++#else
++ folder = mail_tool_uri_to_folder(uri, 0, NULL);
+ #endif
+- NULL);
+ if (folder)
+ self_cache_folder(uri, folder);
+ else
diff --git a/extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch b/extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch
new file mode 100644
index 000000000..283ef36d6
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-evolution-gtkhtml.patch
@@ -0,0 +1,12 @@
+diff -Nrbu mail-notification-5.4/jbsrc/lib/src/extras/jb-evolution-plugin.c mail-notification-5.4-OK/jbsrc/lib/src/extras/jb-evolution-plugin.c
+--- mail-notification-5.4/jbsrc/lib/src/extras/jb-evolution-plugin.c 2008-04-27 18:47:43.000000000 +0400
++++ mail-notification-5.4-OK/jbsrc/lib/src/extras/jb-evolution-plugin.c 2009-08-21 19:48:22.000000000 +0400
+@@ -41,7 +41,7 @@
+ if (! minversion)
+ minversion = "2.12";
+
+- packages = g_strdup_printf("evolution-plugin >= %s", minversion);
++ packages = g_strdup_printf("evolution-plugin >= %s libgtkhtml-3.15 gtkhtml-editor-3.14", minversion);
+ result = jb_check_packages("Evolution", "evolution-plugin", packages);
+ g_free(packages);
+
diff --git a/extra/mail-notification/mail-notification-5.4-evolution.patch b/extra/mail-notification/mail-notification-5.4-evolution.patch
new file mode 100644
index 000000000..87514c22d
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-evolution.patch
@@ -0,0 +1,244 @@
+diff -Nrbu mail-notification-5.4/build/src/mn-evolution-folder-tree-server.c mail-notification-5.4-OK/build/src/mn-evolution-folder-tree-server.c
+--- mail-notification-5.4/build/src/mn-evolution-folder-tree-server.c 2008-05-22 19:47:48.000000000 +0400
++++ mail-notification-5.4-OK/build/src/mn-evolution-folder-tree-server.c 2010-10-12 16:50:15.000000000 +0400
+@@ -25,7 +25,10 @@
+ #line 24 "src/mn-evolution-folder-tree-server.gob"
+
+ #include <dbus/dbus.h>
++#include <libedataserver/eds-version.h>
++#if !EDS_CHECK_VERSION(2,29,0)
+ #include <mail/mail-component.h>
++#endif
+ #include <mail/em-folder-tree.h>
+ #include "mn-evolution-plugin.h"
+ #include "mn-evolution.h"
+@@ -441,10 +444,17 @@
+ {
+ #line 61 "src/mn-evolution-folder-tree-server.gob"
+
++#if EDS_CHECK_VERSION(2,91,0)
++ selfp->session = e_mail_session_new();
++ selfp->tree = em_folder_tree_new(selfp->session);
++#elif EDS_CHECK_VERSION(2,29,0)
++ selfp->tree = em_folder_tree_new();
++#else
+ EMFolderTreeModel *model;
+
+ model = mail_component_peek_tree_model(mail_component_peek());
+ selfp->tree = em_folder_tree_new_with_model(model);
++#endif
+
+ selfp->plug = gtk_plug_new((GdkNativeWindow) selfp->id);
+ gtk_container_add(GTK_CONTAINER(selfp->plug), selfp->tree);
+@@ -469,6 +479,10 @@
+ {
+ #line 80 "src/mn-evolution-folder-tree-server.gob"
+
++#if EDS_CHECK_VERSION(2,91,0)
++ g_object_unref(selfp->session);
++ selfp->session = NULL;
++#endif
+ g_signal_handlers_disconnect_by_func(selfp->plug, self_plug_destroy_h, self);
+ }}
+ #line 475 "mn-evolution-folder-tree-server.c"
+diff -Nrbu mail-notification-5.4/build/src/mn-evolution-server.c mail-notification-5.4-OK/build/src/mn-evolution-server.c
+--- mail-notification-5.4/build/src/mn-evolution-server.c 2008-05-22 19:47:48.000000000 +0400
++++ mail-notification-5.4-OK/build/src/mn-evolution-server.c 2010-10-12 16:50:40.000000000 +0400
+@@ -27,12 +27,22 @@
+ #include <stdio.h>
+ #include <libintl.h>
+ #include <gobject/gvaluecollector.h>
++#include <libedataserver/eds-version.h>
+ #include <camel/camel-folder.h>
++#if EDS_CHECK_VERSION(2,29,0)
++#include <shell/e-shell.h>
++#include <mail/e-mail-browser.h>
++#else
+ #include <mail/em-folder-view.h>
+ #include <mail/em-format.h>
+ #include <mail/em-message-browser.h>
++#endif
+ #include <mail/em-utils.h>
++#if EDS_CHECK_VERSION(2,91,0)
++#include <mail/e-mail-session.h>
++#else
+ #include <mail/mail-session.h>
++#endif
+ #include <mail/mail-tools.h>
+ #include "mn-evolution.h"
+ #include "mn-evolution-folder-tree-server.h"
+@@ -391,10 +397,18 @@
+ info = g_new0(FolderInfo, 1);
+ info->uri = g_strdup(uri);
+ info->folder = folder;
++#if EDS_CHECK_VERSION(2,31,0)
++ g_object_ref(folder);
++#else
+ camel_object_ref(folder);
++#endif
+
+ /* uncache the folder when it is deleted */
++#if EDS_CHECK_VERSION(2,31,0)
++ g_signal_connect(folder, "deleted", G_CALLBACK(self_folder_deleted_cb), info);
++#else
+ camel_object_hook_event(folder, "deleted", self_folder_deleted_cb, info);
++#endif
+
+ g_hash_table_replace(folders, info->uri, info);
+ }}
+@@ -413,8 +427,13 @@
+ {
+ #line 105 "src/mn-evolution-server.gob"
+
++#if EDS_CHECK_VERSION(2,31,0)
++ g_signal_handlers_disconnect_by_func(info->folder, self_folder_deleted_cb, info);
++ g_object_unref(info->folder);
++#else
+ camel_object_unhook_event(info->folder, "deleted", self_folder_deleted_cb, info);
+ camel_object_unref(info->folder);
++#endif
+ g_free(info->uri);
+ g_free(info);
+ }}
+@@ -461,7 +480,11 @@
+ if (info)
+ {
+ folder = info->folder;
++#if EDS_CHECK_VERSION(2,31,0)
++ g_object_ref(folder);
++#else
+ camel_object_ref(folder);
++#endif
+ }
+ }
+ else
+@@ -469,7 +492,11 @@
+
+ if (! folder)
+ {
+- folder = mail_tool_uri_to_folder(uri, 0, NULL);
++ folder = mail_tool_uri_to_folder(uri, 0,
++#if EDS_CHECK_VERSION(2,91,0)
++ NULL,
++#endif
++ NULL);
+ if (folder)
+ self_cache_folder(uri, folder);
+ else
+@@ -595,14 +622,23 @@
+
+ for (i = 0; i < summary->len; i++)
+ {
++#if EDS_CHECK_VERSION(2,23,5)
++ char *uid = summary->pdata[i];
++ CamelMessageInfo *info = camel_folder_get_message_info(folder, uid);
++#else
+ CamelMessageInfo *info = summary->pdata[i];
++#endif
+
+ if ((camel_message_info_flags(info) & CAMEL_MESSAGE_SEEN) == 0)
+ g_ptr_array_add(*ret, self_camel_message_info_to_dbus_struct(info));
+ }
+
+ camel_folder_free_summary(folder, summary);
++#if EDS_CHECK_VERSION(2,31,0)
++ g_object_unref(folder);
++#else
+ camel_object_unref(folder);
++#endif
+ }
+
+ GDK_THREADS_LEAVE();
+@@ -638,7 +674,11 @@
+ if (folder)
+ {
+ *ret = g_strdup(camel_folder_get_name(folder));
++#if EDS_CHECK_VERSION(2,31,0)
++ g_object_unref(folder);
++#else
+ camel_object_unref(folder);
++#endif
+ }
+
+ GDK_THREADS_LEAVE();
+@@ -673,6 +713,19 @@
+ folder = self_lookup_folder(folder_uri, err);
+ if (folder)
+ {
++#if EDS_CHECK_VERSION(2,29,0)
++ EShell *shell;
++ EShellBackend *shell_backend;
++ GtkWidget *browser;
++
++ shell = e_shell_get_default ();
++ shell_backend = e_shell_get_backend_by_name (shell, "mail");
++
++ browser = e_mail_browser_new (shell_backend);
++ e_mail_reader_set_folder (E_MAIL_READER (browser), folder, folder_uri);
++ e_mail_reader_set_message (E_MAIL_READER (browser), message_uid);
++ gtk_widget_show (browser);
++#else
+ GtkWidget *browser;
+
+ /* modelled after Evolution's handleuri_got_folder() */
+@@ -683,8 +736,13 @@
+ em_folder_view_set_folder((EMFolderView *) browser, folder, folder_uri);
+ em_folder_view_set_message((EMFolderView *) browser, message_uid, FALSE);
+ gtk_widget_show(((EMMessageBrowser *) browser)->window);
++#endif
+
++#if EDS_CHECK_VERSION(2,31,0)
++ g_object_unref(folder);
++#else
+ camel_object_unref(folder);
++#endif
+ }
+
+ GDK_THREADS_LEAVE();
+@@ -721,7 +779,11 @@
+ if (folder)
+ {
+ status = camel_folder_set_message_flags(folder, message_uid, flags, flags);
++#if EDS_CHECK_VERSION(2,31,0)
++ g_object_unref(folder);
++#else
+ camel_object_unref(folder);
++#endif
+
+ if (! status)
+ g_set_error(err,
+diff -Nrbu mail-notification-5.4/src/mn-evolution-plugin.c mail-notification-5.4-OK/src/mn-evolution-plugin.c
+--- mail-notification-5.4/src/mn-evolution-plugin.c 2008-05-22 19:45:35.000000000 +0400
++++ mail-notification-5.4-OK/src/mn-evolution-plugin.c 2010-10-12 16:50:15.000000000 +0400
+@@ -204,7 +204,7 @@
+ }
+
+ int
+-e_plugin_lib_enable (EPluginLib *ep, int enable)
++e_plugin_lib_enable (EPlugin *ep, int enable)
+ {
+ static gboolean enabled = FALSE;
+ GError *err = NULL;
+--- mail-notification-5.4/build/src/mn-evolution-folder-tree-server-private.h.orig 2010-11-13 13:55:01.571934066 +0100
++++ mail-notification-5.4/build/src/mn-evolution-folder-tree-server-private.h 2010-11-13 13:56:07.019487418 +0100
+@@ -4,6 +4,10 @@
+ #define __MN_EVOLUTION_FOLDER_TREE_SERVER_PRIVATE_H__
+
+ #include "mn-evolution-folder-tree-server.h"
++#include <libedataserver/eds-version.h>
++#if EDS_CHECK_VERSION(2,91,0)
++#include <mail/e-mail-session.h>
++#endif
+
+ #ifdef __cplusplus
+ extern "C" {
+@@ -23,6 +23,9 @@
+ #line 41 "src/mn-evolution-folder-tree-server.gob"
+ GtkWidget * tree;
+ #line 26 "mn-evolution-folder-tree-server-private.h"
++#if EDS_CHECK_VERSION(2,91,0)
++ EMailSession * session;
++#endif
+ };
+
+ #ifdef __cplusplus
diff --git a/extra/mail-notification/mail-notification-5.4-gtk3-support.patch b/extra/mail-notification/mail-notification-5.4-gtk3-support.patch
new file mode 100644
index 000000000..cd19c2e84
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-gtk3-support.patch
@@ -0,0 +1,1382 @@
+--- build/src/mn-dialog.c.orig 2011-02-02 23:08:09.816659245 +0100
++++ build/src/mn-dialog.c 2011-02-02 23:09:16.988113774 +0100
+@@ -106,8 +106,7 @@
+ #line 27 "src/mn-dialog.gob"
+
+ gtk_container_set_border_width(GTK_CONTAINER(self), 5);
+- gtk_dialog_set_has_separator(GTK_DIALOG(self), FALSE);
+- gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(self)->vbox), 2);
++ gtk_box_set_spacing(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(self))), 2);
+
+ #line 113 "mn-dialog.c"
+ }
+--- jbsrc/jb.c.orig 2011-02-02 23:40:33.567924712 +0100
++++ jbsrc/jb.c 2011-02-02 23:39:39.680803618 +0100
+@@ -163,7 +163,7 @@
+ {
+ jb_check_glibc();
+
+- jb_require_packages("GNOME", "gnome", "glib-2.0 >= 2.14 gthread-2.0 gconf-2.0 >= 2.4.0 gtk+-2.0 >= 2.12 libgnomeui-2.0 >= 2.14.0 gnome-vfs-2.0 libglade-2.0 libxml-2.0 libnotify >= 0.4.1");
++ jb_require_packages("GNOME", "gnome", "glib-2.0 >= 2.14 gthread-2.0 gconf-2.0 >= 2.4.0 gtk+-3.0 libgnome-2.0 >= 2.14.0 gnome-vfs-2.0 libxml-2.0 libnotify >= 0.4.1");
+ jb_require_packages("D-Bus", "dbus", "dbus-glib-1");
+
+ jb_check_packages_for_options("GMime", "gmime", "gmime-2.4",
+--- build/src/mn-file-chooser-button.c.orig 2011-02-02 23:38:01.503049512 +0100
++++ build/src/mn-file-chooser-button.c 2011-02-02 23:38:16.988222034 +0100
+@@ -358,7 +358,7 @@
+ g_signal_connect(selfp->dialog, "response", G_CALLBACK(self_response_h), self);
+ }
+
+- if (! GTK_WIDGET_VISIBLE(selfp->dialog))
++ if (! gtk_widget_get_visible(selfp->dialog))
+ {
+ GtkWindow *parent;
+
+--- build/src/mn-sound-player.c.orig 2011-02-02 23:55:02.436500397 +0100
++++ build/src/mn-sound-player.c 2011-02-02 23:55:09.125141055 +0100
+@@ -27,7 +27,7 @@
+ #include <sys/types.h>
+ #include <signal.h>
+ #include <glib/gi18n.h>
+-#include <gnome.h>
++#include <libgnome/libgnome.h>
+ #include "mn-conf.h"
+ #include "mn-locked-callback.h"
+ #include "mn-util.h"
+--- build/src/mn-file-chooser-button.c.orig 2011-02-02 23:55:21.857457045 +0100
++++ build/src/mn-file-chooser-button.c 2011-02-02 23:55:30.422996901 +0100
+@@ -25,7 +25,7 @@
+ #line 39 "src/mn-file-chooser-button.gob"
+
+ #include <glib/gi18n.h>
+-#include <gnome.h>
++#include <libgnome/libgnome.h>
+ #include "mn-util.h"
+
+ #line 32 "mn-file-chooser-button.c"
+--- build/src/mn-message.c.orig 2011-02-02 23:55:41.160420099 +0100
++++ build/src/mn-message.c 2011-02-02 23:55:47.755065850 +0100
+@@ -26,7 +26,7 @@
+
+ #include <errno.h>
+ #include <glib/gi18n.h>
+-#include <gnome.h>
++#include <libgnome/libgnome.h>
+ #include <libgnomevfs/gnome-vfs.h>
+ #include "mn-conf.h"
+ #include "mn-util.h"
+--- build/src/mn-file-chooser-button.c.orig 2011-02-03 00:15:16.178407712 +0100
++++ build/src/mn-file-chooser-button.c 2011-02-03 00:18:17.865681563 +0100
+@@ -463,6 +463,7 @@
+
+ GDK_THREADS_ENTER();
+
++#if 0
+ if (results)
+ {
+ GnomeVFSGetFileInfoResult *result = results->data;
+@@ -494,6 +495,7 @@
+ }
+ }
+ }
++#endif
+
+ selfp->async_handle = NULL;
+ g_object_unref(self);
+--- build/src/mn-evolution-folder-tree-server.c.orig 2011-02-07 20:17:09.574274620 +0100
++++ build/src/mn-evolution-folder-tree-server.c 2011-02-07 20:23:25.196053994 +0100
+@@ -25,6 +25,7 @@
+ #line 24 "src/mn-evolution-folder-tree-server.gob"
+
+ #include <dbus/dbus.h>
++#include <gtk/gtkx.h>
+ #include <libedataserver/eds-version.h>
+ #if !EDS_CHECK_VERSION(2,29,0)
+ #include <mail/mail-component.h>
+@@ -71,7 +72,7 @@
+ static void mn_evolution_folder_tree_server_finalize (MNEvolutionFolderTreeServer * self);
+ #line 70 "mn-evolution-folder-tree-server.c"
+ #line 84 "src/mn-evolution-folder-tree-server.gob"
+-static void mn_evolution_folder_tree_server_plug_destroy_h (GtkObject * object, gpointer user_data);
++static void mn_evolution_folder_tree_server_plug_destroy_h (GtkWidget * object, gpointer user_data);
+ #line 73 "mn-evolution-folder-tree-server.c"
+ #line 104 "src/mn-evolution-folder-tree-server.gob"
+ static void mn_evolution_folder_tree_server_selected_h (EMFolderTree * tree, const char * full_name, const char * uri, guint32 flags, gpointer user_data);
+@@ -456,7 +457,7 @@
+ selfp->tree = em_folder_tree_new_with_model(model);
+ #endif
+
+- selfp->plug = gtk_plug_new((GdkNativeWindow) selfp->id);
++ selfp->plug = gtk_plug_new((Window) selfp->id);
+ gtk_container_add(GTK_CONTAINER(selfp->plug), selfp->tree);
+ gtk_widget_show_all(selfp->plug);
+
+@@ -490,7 +491,7 @@
+
+ #line 84 "src/mn-evolution-folder-tree-server.gob"
+ static void
+-mn_evolution_folder_tree_server_plug_destroy_h (GtkObject * object, gpointer user_data)
++mn_evolution_folder_tree_server_plug_destroy_h (GtkWidget * object, gpointer user_data)
+ {
+ #line 482 "mn-evolution-folder-tree-server.c"
+ #define __GOB_FUNCTION__ "MN:Evolution:Folder:Tree:Server::plug_destroy_h"
+--- src/eggtrayicon.h.orig 2011-02-07 20:25:26.352057350 +0100
++++ src/eggtrayicon.h 2011-02-07 20:27:54.495032920 +0100
+@@ -23,10 +23,9 @@
+ #ifndef __EGG_TRAY_ICON_H__
+ #define __EGG_TRAY_ICON_H__
+
+-#include <gtk/gtkplug.h>
+-#ifdef GDK_WINDOWING_X11
++#include <gtk/gtk.h>
++#include <gtk/gtkx.h>
+ #include <gdk/gdkx.h>
+-#endif
+
+ G_BEGIN_DECLS
+
+--- build/src/mn-mail-icon.c.orig 2011-02-07 20:24:58.971663075 +0100
++++ build/src/mn-mail-icon.c 2011-02-07 20:30:33.714401306 +0100
+@@ -833,11 +833,13 @@
+ #line 239 "src/mn-mail-icon.gob"
+
+ GtkWidget *widget = user_data;
++ GtkAllocation allocation;
+
+- gdk_window_get_origin(widget->window, x, y);
++ gdk_window_get_origin(gtk_widget_get_window(widget), x, y);
++ gtk_widget_get_allocation(widget, &allocation);
+
+- *x += widget->allocation.x;
+- *y += widget->allocation.y;
++ *x += allocation.x;
++ *y += allocation.y;
+
+ if (*y > gdk_screen_get_height(gtk_widget_get_screen(widget)) / 2)
+ {
+@@ -847,7 +849,7 @@
+ *y -= req.height;
+ }
+ else
+- *y += widget->allocation.height;
++ *y += allocation.height;
+
+ *push_in = TRUE;
+ }}
+--- build/src/mn-mail-icon-widget.c.orig 2011-02-07 20:31:19.475816763 +0100
++++ build/src/mn-mail-icon-widget.c 2011-02-07 21:53:48.858814715 +0100
+@@ -64,9 +64,13 @@
+ #line 65 "mn-mail-icon-widget.c"
+ #line 110 "src/mn-mail-icon-widget.gob"
+ static void ___7_mn_mail_icon_widget_size_request (GtkWidget * widget, GtkRequisition * requisition);
++static void
++mn_mail_icon_widget_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width);
++static void
++mn_mail_icon_widget_get_preferred_height(GtkWidget *widget, gint *minimal_height, gint *natural_height);
+ #line 68 "mn-mail-icon-widget.c"
+ #line 132 "src/mn-mail-icon-widget.gob"
+-static gboolean ___8_mn_mail_icon_widget_expose_event (GtkWidget * widget, GdkEventExpose * event);
++static gboolean ___8_mn_mail_icon_widget_draw (GtkWidget * widget, cairo_t *cr);
+ #line 71 "mn-mail-icon-widget.c"
+ #line 244 "src/mn-mail-icon-widget.gob"
+ static GdkPixbuf * mn_mail_icon_widget_render_icon (MNMailIconWidget * self);
+@@ -187,9 +191,10 @@
+ parent_class = g_type_class_ref (GTK_TYPE_WIDGET);
+
+ #line 110 "src/mn-mail-icon-widget.gob"
+- gtk_widget_class->size_request = ___7_mn_mail_icon_widget_size_request;
++ gtk_widget_class->get_preferred_width = mn_mail_icon_widget_get_preferred_width;
++ gtk_widget_class->get_preferred_height = mn_mail_icon_widget_get_preferred_height;
+ #line 132 "src/mn-mail-icon-widget.gob"
+- gtk_widget_class->expose_event = ___8_mn_mail_icon_widget_expose_event;
++ gtk_widget_class->draw = ___8_mn_mail_icon_widget_draw;
+ #line 194 "mn-mail-icon-widget.c"
+ g_object_class->dispose = ___dispose;
+ g_object_class->finalize = ___finalize;
+@@ -234,7 +239,7 @@
+ {
+ #line 93 "src/mn-mail-icon-widget.gob"
+
+- GTK_WIDGET_SET_FLAGS(self, GTK_NO_WINDOW);
++ gtk_widget_set_has_window(GTK_WIDGET(self), FALSE);
+
+ gtk_widget_set_name(GTK_WIDGET(self), "mn-mail-icon");
+
+@@ -457,9 +462,28 @@
+ #undef __GOB_FUNCTION__
+ #undef PARENT_HANDLER
+
++static void
++mn_mail_icon_widget_get_preferred_width(GtkWidget *widget, gint *minimal_width, gint *natural_width)
++{
++ GtkRequisition requisition;
++
++ ___7_mn_mail_icon_widget_size_request (widget, &requisition);
++ *minimal_width = *natural_width = requisition.width;
++}
++
++static void
++mn_mail_icon_widget_get_preferred_height(GtkWidget *widget, gint *minimal_height, gint *natural_height)
++{
++ GtkRequisition requisition;
++
++ ___7_mn_mail_icon_widget_size_request (widget, &requisition);
++
++ *minimal_height = *natural_height = requisition.height;
++}
++
+ #line 132 "src/mn-mail-icon-widget.gob"
+ static gboolean
+-___8_mn_mail_icon_widget_expose_event (GtkWidget * widget G_GNUC_UNUSED, GdkEventExpose * event)
++___8_mn_mail_icon_widget_draw (GtkWidget * widget G_GNUC_UNUSED, cairo_t *cr)
+ #line 464 "mn-mail-icon-widget.c"
+ #define PARENT_HANDLER(___widget,___event) \
+ ((GTK_WIDGET_CLASS(parent_class)->expose_event)? \
+@@ -472,7 +496,7 @@
+
+ Self *self = SELF(widget);
+
+- if (! GTK_WIDGET_DRAWABLE(widget) || ! selfp->stock_id)
++ if (! gtk_widget_is_drawable(widget) || ! selfp->stock_id)
+ return FALSE;
+
+ if (selfp->is_on)
+@@ -480,23 +504,34 @@
+ int x;
+ int y;
+ GdkRectangle image_area;
++ GtkAllocation allocation;
++ GtkRequisition requisition;
+
+ /* note: widget->requisition is the pixbuf size, see size_request() */
+
+- x = floor(widget->allocation.x + ((widget->allocation.width - widget->requisition.width) * ICON_XALIGN));
+- y = floor(widget->allocation.y + ((widget->allocation.height - widget->requisition.height) * ICON_YALIGN));
++ gtk_widget_get_allocation(widget, &allocation);
++ gtk_widget_get_requisition(widget, &requisition);
++
++ x = floor(allocation.x + ((allocation.width - requisition.width) * ICON_XALIGN));
++ y = floor(allocation.y + ((allocation.height - requisition.height) * ICON_YALIGN));
+
+ image_area.x = x;
+ image_area.y = y;
+- image_area.width = widget->requisition.width;
+- image_area.height = widget->requisition.height;
++ image_area.width = requisition.width;
++ image_area.height = requisition.height;
+
++#if 0
+ if (gdk_rectangle_intersect(&event->area, &image_area, &image_area))
++#endif
+ {
+ GdkPixbuf *pixbuf;
+
+ pixbuf = self_render_icon(self);
++ gdk_cairo_set_source_pixbuf(cr, pixbuf, image_area.x, image_area.y);
++ cairo_move_to(cr, image_area.x - x, image_area.y - y);
++ cairo_paint(cr);
+
++#if 0
+ gdk_draw_pixbuf(widget->window,
+ NULL,
+ pixbuf,
+@@ -509,6 +544,7 @@
+ GDK_RGB_DITHER_NORMAL,
+ 0,
+ 0);
++#endif
+
+ g_object_unref(pixbuf);
+ }
+@@ -523,13 +559,16 @@
+ int box_y;
+ int box_width;
+ int box_height;
++ GtkAllocation allocation;
++
++ gtk_widget_get_allocation(widget, &allocation);
+
+ if (! selfp->count_layout)
+ {
+ const char *size;
+ char *markup;
+
+- if (widget->allocation.height < 32)
++ if (allocation.height < 32)
+ size = "small";
+ else
+ size = "medium";
+@@ -546,17 +585,16 @@
+ box_width = count_rect.width + COUNT_BOX_XPAD * 2;
+ box_height = count_rect.height + COUNT_BOX_YPAD * 2;
+
+- box_x = widget->allocation.x + widget->allocation.width - box_width - COUNT_BOX_XMARGIN;
+- box_y = widget->allocation.y + widget->allocation.height - box_height - COUNT_BOX_YMARGIN;
++ box_x = allocation.x + allocation.width - box_width - COUNT_BOX_XMARGIN;
++ box_y = allocation.y + allocation.height - box_height - COUNT_BOX_YMARGIN;
+
+ count_x = box_x - count_rect.x + COUNT_BOX_XPAD;
+ count_y = box_y - count_rect.y + COUNT_BOX_YPAD;
+
+- gtk_paint_box(widget->style,
+- widget->window,
+- GTK_WIDGET_STATE(widget),
++ gtk_paint_box(gtk_widget_get_style(widget),
++ cr,
++ gtk_widget_get_state_flags(widget),
+ GTK_SHADOW_OUT,
+- &event->area,
+ widget,
+ NULL,
+ box_x,
+@@ -564,11 +602,10 @@
+ box_width,
+ box_height);
+
+- gtk_paint_layout(widget->style,
+- widget->window,
+- GTK_WIDGET_STATE(widget),
++ gtk_paint_layout(gtk_widget_get_style(widget),
++ cr,
++ gtk_widget_get_state_flags(widget),
+ FALSE,
+- &event->area,
+ widget,
+ NULL,
+ count_x,
+--- build/src/mn-mailbox-properties-dialog.c.orig 2011-02-07 21:57:31.257251776 +0100
++++ build/src/mn-mailbox-properties-dialog.c 2011-02-07 21:56:56.989854854 +0100
+@@ -456,7 +456,7 @@
+ MNMailboxProperties *properties;
+
+ mn_container_create_interface(GTK_CONTAINER(self),
+- PKGDATADIR G_DIR_SEPARATOR_S "mailbox-properties-dialog.glade",
++ PKGDATADIR G_DIR_SEPARATOR_S "mailbox-properties-dialog.ui",
+ "notebook",
+ "mn_mailbox_properties_dialog_",
+ "notebook", &self->notebook,
+@@ -1290,7 +1290,7 @@
+ {
+ #line 686 "src/mn-mailbox-properties-dialog.gob"
+
+- if (GTK_WIDGET_IS_SENSITIVE(GTK_WINDOW(self)->default_widget))
++ if (gtk_widget_is_sensitive(gtk_window_get_default_widget(GTK_WINDOW(self))))
+ gtk_window_activate_default(GTK_WINDOW(self));
+ else
+ {
+@@ -1313,9 +1313,9 @@
+ if (elem->data == entry)
+ break;
+
+- if (GTK_WIDGET_MAPPED(elem->data)
+- && GTK_WIDGET_VISIBLE(elem->data)
+- && GTK_WIDGET_SENSITIVE(elem->data))
++ if (gtk_widget_get_mapped(elem->data)
++ && gtk_widget_get_visible(elem->data)
++ && gtk_widget_get_sensitive(elem->data))
+ next = elem->data;
+ }
+ while (! next);
+--- build/src/mn-mailbox-view.c.orig 2011-02-07 22:18:49.962462920 +0100
++++ build/src/mn-mailbox-view.c 2011-02-07 23:01:39.990363248 +0100
+@@ -412,23 +412,23 @@
+ binding_set = gtk_binding_set_by_class(class);
+
+ /* Delete removes a row */
+- gtk_binding_entry_add_signal(binding_set, GDK_Delete, 0, "activate-remove", 0);
+- gtk_binding_entry_add_signal(binding_set, GDK_KP_Delete, 0, "activate-remove", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Delete, 0, "activate-remove", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_KP_Delete, 0, "activate-remove", 0);
+
+ /* HIG 2.0 cut/copy/paste shortcuts */
+- gtk_binding_entry_add_signal(binding_set, GDK_x, GDK_CONTROL_MASK, "activate-cut", 0);
+- gtk_binding_entry_add_signal(binding_set, GDK_c, GDK_CONTROL_MASK, "activate-copy", 0);
+- gtk_binding_entry_add_signal(binding_set, GDK_v, GDK_CONTROL_MASK, "activate-paste", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_x, GDK_CONTROL_MASK, "activate-cut", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_c, GDK_CONTROL_MASK, "activate-copy", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_v, GDK_CONTROL_MASK, "activate-paste", 0);
+
+ /* cut/copy/paste shortcuts taken from gtkentry.c */
+- gtk_binding_entry_add_signal(binding_set, GDK_Delete, GDK_SHIFT_MASK, "activate-cut", 0);
+- gtk_binding_entry_add_signal(binding_set, GDK_Insert, GDK_CONTROL_MASK, "activate-copy", 0);
+- gtk_binding_entry_add_signal(binding_set, GDK_Insert, GDK_SHIFT_MASK, "activate-paste", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Delete, GDK_SHIFT_MASK, "activate-cut", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Insert, GDK_CONTROL_MASK, "activate-copy", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Insert, GDK_SHIFT_MASK, "activate-paste", 0);
+
+ /* HIG 2.0 properties */
+- gtk_binding_entry_add_signal(binding_set, GDK_Return, GDK_MOD1_MASK, "activate-properties", 0);
+- gtk_binding_entry_add_signal(binding_set, GDK_ISO_Enter, GDK_MOD1_MASK, "activate-properties", 0);
+- gtk_binding_entry_add_signal(binding_set, GDK_KP_Enter, GDK_MOD1_MASK, "activate-properties", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_Return, GDK_MOD1_MASK, "activate-properties", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_ISO_Enter, GDK_MOD1_MASK, "activate-properties", 0);
++ gtk_binding_entry_add_signal(binding_set, GDK_KEY_KP_Enter, GDK_MOD1_MASK, "activate-properties", 0);
+
+ #line 434 "mn-mailbox-view.c"
+ }
+@@ -934,14 +934,13 @@
+ #line 183 "src/mn-mailbox-view.gob"
+
+ GtkSelectionData *data;
+-
+ data = gtk_clipboard_wait_for_contents(global_clipboard, clipboard_info[TARGET_MAILBOXES].atom);
+ if (data)
+ {
+ GSList *configurations;
+ GSList *l;
+
+- memcpy(&configurations, data->data, data->length);
++ memcpy(&configurations, gtk_selection_data_get_data(data), gtk_selection_data_get_length(data));
+
+ MN_LIST_FOREACH(l, configurations)
+ {
+@@ -962,14 +961,14 @@
+ data = gtk_clipboard_wait_for_contents(global_clipboard, clipboard_info[TARGET_GNOME_COPIED_FILES].atom);
+ if (data)
+ {
+- if (data->format == 8 && data->length > 0)
++ if (gtk_selection_data_get_format(data) == 8 && gtk_selection_data_get_length(data) > 0)
+ {
+ char *gnome_copied_files;
+ gboolean status;
+ MNGnomeCopiedFilesType type;
+ GSList *uri_list;
+
+- gnome_copied_files = g_strndup(data->data, data->length);
++ gnome_copied_files = g_strndup(gtk_selection_data_get_data(data), gtk_selection_data_get_length(data));
+ status = mn_parse_gnome_copied_files(gnome_copied_files, &type, &uri_list);
+ g_free(gnome_copied_files);
+
+--- build/src/mn-shell.c.orig 2011-02-07 23:02:17.852293679 +0100
++++ build/src/mn-shell.c 2011-02-07 23:04:39.223548403 +0100
+@@ -158,7 +158,7 @@
+ static void mn_shell_icon_activate_about_h (MNMailIcon * icon, gpointer user_data);
+ #line 160 "mn-shell.c"
+ #line 499 "src/mn-shell.gob"
+-static void mn_shell_icon_destroy_h (GtkObject * object, gpointer user_data);
++static void mn_shell_icon_destroy_h (GtkWidget * object, gpointer user_data);
+ #line 163 "mn-shell.c"
+ #line 508 "src/mn-shell.gob"
+ static void mn_shell_update_sensitivity (MNShell * self);
+@@ -1006,7 +1006,7 @@
+
+ #line 499 "src/mn-shell.gob"
+ static void
+-mn_shell_icon_destroy_h (GtkObject * object, gpointer user_data)
++mn_shell_icon_destroy_h (GtkWidget * object, gpointer user_data)
+ {
+ #line 1004 "mn-shell.c"
+ #define __GOB_FUNCTION__ "MN:Shell::icon_destroy_h"
+--- build/src/mn-text-table.c.orig 2011-02-07 23:05:08.799927792 +0100
++++ build/src/mn-text-table.c 2011-02-07 23:18:06.480056895 +0100
+@@ -69,9 +69,11 @@
+ #line 70 "mn-text-table.c"
+ #line 104 "src/mn-text-table.gob"
+ static void ___4_mn_text_table_size_request (GtkWidget * widget, GtkRequisition * requisition);
++static void mn_text_table_get_preferred_width (GtkWidget * widget, gint * minimal_width, gint * natural_width);
++static void mn_text_table_get_preferred_height (GtkWidget * widget, gint * minimal_height, gint * natural_height);
+ #line 73 "mn-text-table.c"
+ #line 115 "src/mn-text-table.gob"
+-static gboolean ___5_mn_text_table_expose_event (GtkWidget * widget, GdkEventExpose * event);
++static gboolean ___5_mn_text_table_draw (GtkWidget * widget, cairo_t *cr);
+ #line 76 "mn-text-table.c"
+ #line 165 "src/mn-text-table.gob"
+ static void mn_text_table_set_dirty (MNTextTable * self);
+@@ -188,9 +190,10 @@
+ parent_class = g_type_class_ref (GTK_TYPE_WIDGET);
+
+ #line 104 "src/mn-text-table.gob"
+- gtk_widget_class->size_request = ___4_mn_text_table_size_request;
++ gtk_widget_class->get_preferred_width = mn_text_table_get_preferred_width;
++ gtk_widget_class->get_preferred_height = mn_text_table_get_preferred_height;
+ #line 115 "src/mn-text-table.gob"
+- gtk_widget_class->expose_event = ___5_mn_text_table_expose_event;
++ gtk_widget_class->draw = ___5_mn_text_table_draw;
+ #line 257 "src/mn-text-table.gob"
+ c->clear = ___real_mn_text_table_clear;
+ #line 197 "mn-text-table.c"
+@@ -216,7 +219,7 @@
+ {
+ #line 80 "src/mn-text-table.gob"
+
+- GTK_WIDGET_SET_FLAGS(self, GTK_NO_WINDOW);
++ gtk_widget_set_has_window(GTK_WIDGET(self), FALSE);
+
+ g_object_connect(self,
+ "swapped-signal::style-set", self_context_changed, self,
+@@ -290,9 +293,29 @@
+ #undef __GOB_FUNCTION__
+ #undef PARENT_HANDLER
+
++static void
++mn_text_table_get_preferred_width (GtkWidget * widget, gint * minimal_width, gint * natural_width)
++{
++ GtkRequisition requisition;
++
++ ___4_mn_text_table_size_request (widget, &requisition);
++
++ *minimal_width = *natural_width = requisition.width;
++}
++
++static void
++mn_text_table_get_preferred_height (GtkWidget * widget, gint * minimal_height, gint * natural_height)
++{
++ GtkRequisition requisition;
++
++ ___4_mn_text_table_size_request (widget, &requisition);
++
++ *minimal_height = *natural_height = requisition.height;
++}
++
+ #line 115 "src/mn-text-table.gob"
+ static gboolean
+-___5_mn_text_table_expose_event (GtkWidget * widget G_GNUC_UNUSED, GdkEventExpose * event)
++___5_mn_text_table_draw (GtkWidget * widget G_GNUC_UNUSED, cairo_t *cr)
+ #line 297 "mn-text-table.c"
+ #define PARENT_HANDLER(___widget,___event) \
+ ((GTK_WIDGET_CLASS(parent_class)->expose_event)? \
+@@ -304,10 +327,14 @@
+ #line 117 "src/mn-text-table.gob"
+
+ Self *self = SELF(widget);
++ GtkAllocation allocation;
+ int i;
+- int y = widget->allocation.y;
++ int y;
++
++ gtk_widget_get_allocation(widget, &allocation);
++ y = allocation.y;
+
+- if (! GTK_WIDGET_DRAWABLE(widget))
++ if (! gtk_widget_is_drawable(widget))
+ return FALSE;
+
+ self_relayout(self);
+@@ -316,7 +343,7 @@
+ {
+ Row *row = g_ptr_array_index(selfp->rows, i);
+ int j;
+- int x = widget->allocation.x;
++ int x = allocation.x;
+ int column = 0;
+
+ MN_ARRAY_FOREACH(j, row->cells)
+@@ -324,11 +351,10 @@
+ MNTextTableCell *cell = g_ptr_array_index(row->cells, j);
+
+ if (cell->layout)
+- gtk_paint_layout(widget->style,
+- widget->window,
+- GTK_WIDGET_STATE(widget),
++ gtk_paint_layout(gtk_widget_get_style(widget),
++ cr,
++ gtk_widget_get_state_flags(widget),
+ FALSE,
+- &event->area,
+ widget,
+ NULL,
+ x,
+--- build/src/mn-tooltips.c.orig 2011-02-07 23:19:05.903761972 +0100
++++ build/src/mn-tooltips.c 2011-02-07 23:41:19.368621912 +0100
+@@ -104,7 +104,7 @@
+ static void mn_tooltips_set_tip_widget_real (MNTooltips * self, GtkWidget * widget, GtkWidget * tip_widget, int border_width);
+ #line 106 "mn-tooltips.c"
+ #line 287 "src/mn-tooltips.gob"
+-static gboolean mn_tooltips_paint_window (MNTooltips * self);
++static gboolean mn_tooltips_paint_window (MNTooltips * self, cairo_t *cr);
+ #line 109 "mn-tooltips.c"
+ #line 308 "src/mn-tooltips.gob"
+ static void mn_tooltips_draw_tips (MNTooltips * self);
+@@ -430,7 +430,7 @@
+ gtk_container_set_border_width(GTK_CONTAINER(selfp->window), selfp->border_width);
+
+ g_signal_connect_swapped(selfp->window,
+- "expose-event",
++ "draw",
+ G_CALLBACK(self_paint_window),
+ self);
+
+@@ -490,7 +490,7 @@
+
+ if (selfp->active_data
+ && selfp->active_data->widget == widget
+- && GTK_WIDGET_DRAWABLE(selfp->active_data->widget))
++ && gtk_widget_is_drawable(selfp->active_data->widget))
+ {
+ if (data->tip_widget)
+ g_object_unref(data->tip_widget);
+@@ -594,7 +594,7 @@
+
+ #line 287 "src/mn-tooltips.gob"
+ static gboolean
+-mn_tooltips_paint_window (MNTooltips * self)
++mn_tooltips_paint_window (MNTooltips * self, cairo_t *cr)
+ {
+ #line 600 "mn-tooltips.c"
+ #define __GOB_FUNCTION__ "MN:Tooltips::paint_window"
+@@ -608,13 +608,12 @@
+
+ GtkRequisition req;
+
+- gtk_widget_size_request(selfp->window, &req);
+- gtk_paint_flat_box(selfp->window->style,
+- selfp->window->window,
++ gtk_widget_size_request(GTK_WIDGET(selfp), &req);
++ gtk_paint_flat_box(gtk_widget_get_style(GTK_WIDGET(selfp)),
++ cr,
+ GTK_STATE_NORMAL,
+ GTK_SHADOW_OUT,
+ NULL,
+- selfp->window,
+ "tooltip",
+ 0,
+ 0,
+@@ -651,10 +650,11 @@
+ gint monitor_num, px, py;
+ GdkRectangle monitor;
+ int screen_width;
++ GtkAllocation allocation;
+
+ if (! selfp->window)
+ self_force_window(self);
+- else if (GTK_WIDGET_VISIBLE(selfp->window))
++ else if (gtk_widget_get_visible(selfp->window))
+ g_get_current_time(&selfp->last_popdown);
+
+ gtk_widget_ensure_style(selfp->window);
+@@ -670,7 +670,7 @@
+
+ data = selfp->active_data;
+
+- child = GTK_BIN(selfp->window)->child;
++ child = gtk_bin_get_child(GTK_BIN(selfp->window));
+ if (child)
+ gtk_container_remove(GTK_CONTAINER(selfp->window), child);
+
+@@ -684,14 +684,16 @@
+ w = requisition.width;
+ h = requisition.height;
+
+- gdk_window_get_origin(widget->window, &x, &y);
+- if (GTK_WIDGET_NO_WINDOW(widget))
++ gtk_widget_get_allocation(selfp->window, &allocation);
++
++ gdk_window_get_origin(gtk_widget_get_window(widget), &x, &y);
++ if (! gtk_widget_get_has_window(widget))
+ {
+- x += widget->allocation.x;
+- y += widget->allocation.y;
++ x += allocation.x;
++ y += allocation.y;
+ }
+
+- x += widget->allocation.width / 2;
++ x += allocation.width / 2;
+
+ if (! keyboard_mode)
+ gdk_window_get_pointer(gdk_screen_get_root_window(screen), &x, NULL, NULL);
+@@ -712,11 +714,11 @@
+ else if (x < monitor.x)
+ x = monitor.x;
+
+- if ((y + h + widget->allocation.height + 4) > monitor.y + monitor.height
++ if ((y + h + allocation.height + 4) > monitor.y + monitor.height
+ && (y - 4) > monitor.y)
+ y = y - h - 4;
+ else
+- y = y + widget->allocation.height + 4;
++ y = y + allocation.height + 4;
+
+ /*
+ * The following block is not part of GTK+ and has been added to
+@@ -760,7 +762,7 @@
+
+ Self *self = SELF(data);
+
+- if (selfp->active_data && GTK_WIDGET_DRAWABLE(selfp->active_data->widget))
++ if (selfp->active_data && gtk_widget_is_drawable(selfp->active_data->widget))
+ self_draw_tips(self);
+
+ selfp->timeout_id = 0;
+@@ -785,7 +787,7 @@
+
+ if (selfp->window)
+ {
+- if (GTK_WIDGET_VISIBLE(selfp->window))
++ if (gtk_widget_get_visible(selfp->window))
+ g_get_current_time(&selfp->last_popdown);
+ gtk_widget_hide(selfp->window);
+ }
+@@ -802,7 +804,7 @@
+ {
+ TooltipsData *data = l->data;
+
+- if (data->widget == widget && GTK_WIDGET_DRAWABLE(widget))
++ if (data->widget == widget && gtk_widget_is_drawable(widget))
+ {
+ selfp->active_data = data;
+ break;
+@@ -937,7 +939,7 @@
+
+ if (GTK_IS_WINDOW(toplevel))
+ {
+- GtkWidget *focus = GTK_WINDOW(toplevel)->focus_widget;
++ GtkWidget *focus = gtk_window_get_focus(GTK_WINDOW(toplevel));
+
+ g_object_set_data(G_OBJECT(toplevel), TOOLTIPS_KEYBOARD_MODE, GINT_TO_POINTER(TRUE));
+
+@@ -966,7 +968,7 @@
+
+ if (GTK_IS_WINDOW(toplevel))
+ {
+- GtkWidget *focus = GTK_WINDOW(toplevel)->focus_widget;
++ GtkWidget *focus = gtk_window_get_focus(GTK_WINDOW(toplevel));
+
+ if (focus)
+ self_hide_tip(focus);
+@@ -1057,24 +1059,24 @@
+ break;
+
+ case GDK_ENTER_NOTIFY:
+- if (! (GTK_IS_MENU_ITEM(widget) && GTK_MENU_ITEM(widget)->submenu))
++ if (! (GTK_IS_MENU_ITEM(widget) && gtk_menu_item_get_submenu(GTK_MENU_ITEM(widget))))
+ self_start_delay(self, widget);
+ break;
+
+ case GDK_LEAVE_NOTIFY:
+ self_set_active_widget(self, NULL);
+- selfp->use_sticky_delay = selfp->window && GTK_WIDGET_VISIBLE(selfp->window);
++ selfp->use_sticky_delay = selfp->window && gtk_widget_get_visible(selfp->window);
+ break;
+
+ case GDK_MOTION_NOTIFY:
+ /* Handle menu items specially ... pend popup for each motion
+ * on other widgets, we ignore motion.
+ */
+- if (GTK_IS_MENU_ITEM(widget) && ! GTK_MENU_ITEM(widget)->submenu)
++ if (GTK_IS_MENU_ITEM(widget) && ! gtk_menu_item_get_submenu(GTK_MENU_ITEM(widget)))
+ {
+ /* Completely evil hack to make sure we get the LEAVE_NOTIFY
+ */
+- GTK_PRIVATE_SET_FLAG(widget, GTK_LEAVE_PENDING);
++ //GTK_PRIVATE_SET_FLAG(widget, GTK_LEAVE_PENDING);
+ self_set_active_widget(self, NULL);
+ self_start_delay(self, widget);
+ break;
+--- src/nautilus-cell-renderer-pixbuf-emblem.c.orig 2011-02-08 00:16:43.847831409 +0100
++++ src/nautilus-cell-renderer-pixbuf-emblem.c 2011-02-08 00:32:59.128682767 +0100
+@@ -39,17 +39,16 @@
+ GtkWidget *widget);
+ static void nautilus_cell_renderer_pixbuf_emblem_get_size (GtkCellRenderer *cell,
+ GtkWidget *widget,
+- GdkRectangle *rectangle,
++ const GdkRectangle *rectangle,
+ gint *x_offset,
+ gint *y_offset,
+ gint *width,
+ gint *height);
+ static void nautilus_cell_renderer_pixbuf_emblem_render (GtkCellRenderer *cell,
+- GdkWindow *window,
++ cairo_t *cr,
+ GtkWidget *widget,
+- GdkRectangle *background_area,
+- GdkRectangle *cell_area,
+- GdkRectangle *expose_area,
++ const GdkRectangle *background_area,
++ const GdkRectangle *cell_area,
+ GtkCellRendererState flags);
+
+ enum {
+@@ -356,7 +355,7 @@
+ static void
+ nautilus_cell_renderer_pixbuf_emblem_get_size (GtkCellRenderer *cell,
+ GtkWidget *widget,
+- GdkRectangle *cell_area,
++ const GdkRectangle *cell_area,
+ gint *x_offset,
+ gint *y_offset,
+ gint *width,
+@@ -368,6 +367,10 @@
+ gint pixbuf_height = 0;
+ gint calc_width;
+ gint calc_height;
++ int xpad;
++ int ypad;
++ gfloat xalign;
++ gfloat yalign;
+
+ if (!cellpixbuf->pixbuf && cellinfo->stock_id)
+ nautilus_cell_renderer_pixbuf_emblem_create_stock_pixbuf (cellpixbuf, widget);
+@@ -385,8 +388,11 @@
+ pixbuf_height = MAX (pixbuf_height, gdk_pixbuf_get_height (cellpixbuf->pixbuf_expander_closed));
+ }
+
+- calc_width = (gint) cell->xpad * 2 + pixbuf_width;
+- calc_height = (gint) cell->ypad * 2 + pixbuf_height;
++ gtk_cell_renderer_get_padding(cell, &xpad, &ypad);
++ gtk_cell_renderer_get_alignment(cell, &xalign, &yalign);
++
++ calc_width = (gint) xpad * 2 + pixbuf_width;
++ calc_height = (gint) ypad * 2 + pixbuf_height;
+
+ if (x_offset) *x_offset = 0;
+ if (y_offset) *y_offset = 0;
+@@ -394,14 +400,14 @@
+ if (cell_area && pixbuf_width > 0 && pixbuf_height > 0) {
+ if (x_offset) {
+ *x_offset = (((gtk_widget_get_direction (widget) == GTK_TEXT_DIR_RTL) ?
+- 1.0 - cell->xalign : cell->xalign) *
+- (cell_area->width - calc_width - 2 * cell->xpad));
+- *x_offset = MAX (*x_offset, 0) + cell->xpad;
++ 1.0 - xalign : xalign) *
++ (cell_area->width - calc_width - 2 * xpad));
++ *x_offset = MAX (*x_offset, 0) + xpad;
+ }
+ if (y_offset) {
+- *y_offset = (cell->yalign *
+- (cell_area->height - calc_height - 2 * cell->ypad));
+- *y_offset = MAX (*y_offset, 0) + cell->ypad;
++ *y_offset = (yalign *
++ (cell_area->height - calc_height - 2 * ypad));
++ *y_offset = MAX (*y_offset, 0) + ypad;
+ }
+ }
+
+@@ -414,11 +420,10 @@
+
+ static void
+ nautilus_cell_renderer_pixbuf_emblem_render (GtkCellRenderer *cell,
+- GdkWindow *window,
++ cairo_t *cr,
+ GtkWidget *widget,
+- GdkRectangle *background_area,
+- GdkRectangle *cell_area,
+- GdkRectangle *expose_area,
++ const GdkRectangle *background_area,
++ const GdkRectangle *cell_area,
+ GtkCellRendererState flags)
+
+ {
+@@ -429,13 +434,19 @@
+ GdkRectangle pix_emblem_rect;
+ GdkRectangle draw_rect;
+ gboolean stock_pixbuf = FALSE;
++ gboolean is_expander = FALSE;
++ gboolean is_expanded = FALSE;
++ int xpad;
++ int ypad;
++
++ g_object_get(cell, "is-expander", &is_expander, "is-expanded", &is_expanded, NULL);
+
+ pixbuf = cellpixbuf->pixbuf;
+- if (cell->is_expander) {
+- if (cell->is_expanded &&
++ if (is_expander) {
++ if (is_expanded &&
+ cellpixbuf->pixbuf_expander_open != NULL) {
+ pixbuf = cellpixbuf->pixbuf_expander_open;
+- } else if (!cell->is_expanded &&
++ } else if (!is_expanded &&
+ cellpixbuf->pixbuf_expander_closed != NULL) {
+ pixbuf = cellpixbuf->pixbuf_expander_closed;
+ }
+@@ -456,15 +467,20 @@
+ if (stock_pixbuf)
+ pixbuf = cellpixbuf->pixbuf;
+
++ gtk_cell_renderer_get_padding(cell, &xpad, &ypad);
++
+ pix_rect.x += cell_area->x;
+ pix_rect.y += cell_area->y;
+- pix_rect.width -= cell->xpad * 2;
+- pix_rect.height -= cell->ypad * 2;
++ pix_rect.width -= xpad * 2;
++ pix_rect.height -= ypad * 2;
+
++ if (gdk_rectangle_intersect (cell_area, &pix_rect, &draw_rect)) {
++#if 0
+ if (gdk_rectangle_intersect (cell_area, &pix_rect, &draw_rect) &&
+ gdk_rectangle_intersect (expose_area, &draw_rect, &draw_rect)) {
++
+ gdk_draw_pixbuf (window,
+- widget->style->black_gc,
++ gtk_widget_get_style(widget)->black_gc,
+ pixbuf,
+ /* pixbuf 0, 0 is at pix_rect.x, pix_rect.y */
+ draw_rect.x - pix_rect.x,
+@@ -475,6 +491,11 @@
+ draw_rect.height,
+ GDK_RGB_DITHER_NORMAL,
+ 0, 0);
++#endif
++
++ cairo_move_to (cr, draw_rect.x - pix_rect.x, draw_rect.y - pix_rect.y);
++ gdk_cairo_set_source_pixbuf (cr, pixbuf, draw_rect.x, draw_rect.y);
++ cairo_paint (cr);
+ }
+
+ if (cellpixbuf->pixbuf_emblem) {
+@@ -482,8 +503,11 @@
+ pix_emblem_rect.height = gdk_pixbuf_get_height (cellpixbuf->pixbuf_emblem);
+ pix_emblem_rect.x = pix_rect.x;
+ pix_emblem_rect.y = pix_rect.y + pix_rect.height - pix_emblem_rect.height;
++ if (gdk_rectangle_intersect (cell_area, &pix_emblem_rect, &draw_rect)) {
++#if 0
+ if (gdk_rectangle_intersect (cell_area, &pix_emblem_rect, &draw_rect) &&
+ gdk_rectangle_intersect (expose_area, &draw_rect, &draw_rect)) {
++
+ gdk_draw_pixbuf (window,
+ widget->style->black_gc,
+ cellpixbuf->pixbuf_emblem,
+@@ -496,6 +520,11 @@
+ draw_rect.height,
+ GDK_RGB_DITHER_NORMAL,
+ 0, 0);
++#endif
++
++ cairo_move_to (cr, draw_rect.x - pix_emblem_rect.x, draw_rect.y - pix_emblem_rect.y);
++ gdk_cairo_set_source_pixbuf (cr, cellpixbuf->pixbuf_emblem, draw_rect.x, draw_rect.y);
++ cairo_paint (cr);
+ }
+ }
+ }
+--- src/nautilus-cell-renderer-pixbuf-emblem.h.orig 2011-02-07 22:18:12.336471764 +0100
++++ src/nautilus-cell-renderer-pixbuf-emblem.h 2011-02-08 00:20:30.461758697 +0100
+@@ -25,18 +25,18 @@
+ #ifndef NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_H
+ #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_H
+
+-#include <gtk/gtkcellrenderer.h>
++#include <gtk/gtk.h>
+
+ #define NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM \
+ (nautilus_cell_renderer_pixbuf_emblem_get_type ())
+ #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM(obj) \
+- (GTK_CHECK_CAST ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblem))
++ (G_TYPE_CHECK_INSTANCE_CAST ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblem))
+ #define NAUTILUS_CELL_RENDERER_PIXBUF_EMBLEM_CLASS(klass) \
+- (GTK_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblemClass))
++ (G_TYPE_CHECK_CLASS_CAST ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM, NautilusCellRendererPixbufEmblemClass))
+ #define NAUTILUS_IS_CELL_RENDERER_PIXBUF_EMBLEM(obj) \
+- (GTK_CHECK_TYPE ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
++ (G_TYPE_CHECK_INSTANCE_TYPE ((obj), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
+ #define NAUTILUS_IS_CELL_RENDERER_PIXBUF_EMBLEM_CLASS(klass) \
+- (GTK_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
++ (G_TYPE_CHECK_CLASS_TYPE ((klass), NAUTILUS_TYPE_CELL_RENDERER_PIXBUF_EMBLEM))
+
+ typedef struct _NautilusCellRendererPixbufEmblem NautilusCellRendererPixbufEmblem;
+ typedef struct _NautilusCellRendererPixbufEmblemClass NautilusCellRendererPixbufEmblemClass;
+--- build/src/mn-authenticated-mailbox.c.orig 2011-02-08 00:34:16.332610802 +0100
++++ build/src/mn-authenticated-mailbox.c 2011-02-08 00:36:23.706936717 +0100
+@@ -25,7 +25,7 @@
+ #line 29 "src/mn-authenticated-mailbox.gob"
+
+ #include <glib/gi18n.h>
+-#include <gnome.h>
++#include <libgnome/libgnome.h>
+ #include "mn-mailbox-private.h"
+ #include "mn-shell.h"
+ #include "mn-util.h"
+@@ -859,6 +859,7 @@
+
+ /* keep the title in sync with gnome-authentication-manager */
+
++#if 0
+ /* translators: header capitalization */
+ selfp->auth_dialog = gnome_password_dialog_new(_("Authentication Required"),
+ message,
+@@ -891,6 +892,9 @@
+ gtk_widget_destroy(selfp->auth_dialog);
+
+ return ok;
++#else
++ return FALSE;
++#endif
+ }}
+ #line 896 "mn-authenticated-mailbox.c"
+ #undef __GOB_FUNCTION__
+--- build/src/mn-about-dialog.c.orig 2011-02-08 22:20:54.469841262 +0100
++++ build/src/mn-about-dialog.c 2011-02-08 22:21:13.309839037 +0100
+@@ -111,9 +111,11 @@
+ {
+ #line 32 "src/mn-about-dialog.gob"
+
++#if 0
+ gtk_about_dialog_set_email_hook(self_activate_link_cb, "mailto:", NULL);
+ gtk_about_dialog_set_url_hook(self_activate_link_cb, NULL, NULL);
+-
++#endif
++
+ #line 118 "mn-about-dialog.c"
+ }
+ }
+--- build/src/mn-autodetect-mailbox-properties.c.orig 2011-02-08 22:21:58.639427345 +0100
++++ build/src/mn-autodetect-mailbox-properties.c 2011-02-08 22:22:43.564035901 +0100
+@@ -355,10 +355,9 @@
+
+ toplevel = gtk_widget_get_toplevel(GTK_WIDGET(button));
+ /* translators: header capitalization */
+- selfp->chooser = gtk_file_chooser_dialog_new_with_backend(_("Select a File or Folder"),
++ selfp->chooser = gtk_file_chooser_dialog_new(_("Select a File or Folder"),
+ GTK_WINDOW(toplevel),
+ GTK_FILE_CHOOSER_ACTION_OPEN,
+- "gnome-vfs",
+ GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL,
+ GTK_STOCK_OPEN, 1,
+ NULL);
+--- build/src/mn-pi-mailbox-properties.c.orig 2011-02-08 22:30:08.051375715 +0100
++++ build/src/mn-pi-mailbox-properties.c 2011-02-08 22:30:21.398665261 +0100
+@@ -415,7 +415,7 @@
+ int i;
+
+ for (i = 0; i < MN_PI_MAILBOX_N_CONNECTION_TYPES; i++)
+- gtk_widget_set_sensitive(self->port_spin[i], GTK_WIDGET_SENSITIVE(self->conn_radio[i]) && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self->conn_radio[i])));
++ gtk_widget_set_sensitive(self->port_spin[i], gtk_widget_get_sensitive(self->conn_radio[i]) && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(self->conn_radio[i])));
+
+ g_object_notify(G_OBJECT(self), "complete");
+ }}
+--- src/eggtrayicon.c.orig 2011-02-07 23:42:30.405791829 +0100
++++ src/eggtrayicon.c 2011-02-08 23:06:16.092968325 +0100
+@@ -25,7 +25,7 @@
+
+ #include "eggtrayicon.h"
+
+-#include <gdkconfig.h>
++#include <gdk/gdk.h>
+ #if defined (GDK_WINDOWING_X11)
+ #include <gdk/gdkx.h>
+ #include <X11/Xatom.h>
+@@ -258,7 +258,7 @@
+ {
+ GdkWindow *gdkwin;
+
+- gdkwin = gdk_window_lookup_for_display (gtk_widget_get_display (widget),
++ gdkwin = gdk_x11_window_lookup_for_display (gtk_widget_get_display (widget),
+ icon->manager_window);
+
+ gdk_window_remove_filter (gdkwin, egg_tray_icon_manager_filter, icon);
+@@ -290,7 +290,7 @@
+ ev.window = window;
+ ev.message_type = icon->system_tray_opcode_atom;
+ ev.format = 32;
+- ev.data.l[0] = gdk_x11_get_server_time (GTK_WIDGET (icon)->window);
++ ev.data.l[0] = gdk_x11_get_server_time (gtk_widget_get_window(GTK_WIDGET (icon)));
+ ev.data.l[1] = message;
+ ev.data.l[2] = data1;
+ ev.data.l[3] = data2;
+@@ -342,12 +342,12 @@
+ {
+ GdkWindow *gdkwin;
+
+- gdkwin = gdk_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
++ gdkwin = gdk_x11_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
+ icon->manager_window);
+
+ gdk_window_add_filter (gdkwin, egg_tray_icon_manager_filter, icon);
+
+- if (dock_if_realized && GTK_WIDGET_REALIZED (icon))
++ if (dock_if_realized && gtk_widget_get_realized (GTK_WIDGET(icon)))
+ egg_tray_icon_send_dock_request (icon);
+
+ egg_tray_icon_get_orientation_property (icon);
+@@ -355,10 +355,16 @@
+ }
+
+ static gboolean
+-transparent_expose_event (GtkWidget *widget, GdkEventExpose *event, gpointer user_data)
++transparent_draw (GtkWidget *widget, cairo_t *cr, gpointer user_data)
+ {
+- gdk_window_clear_area (widget->window, event->area.x, event->area.y,
++#if 0
++ gdk_window_clear_area (gtk_widget_get_window(widget), event->area.x, event->area.y,
+ event->area.width, event->area.height);
++#endif
++ cairo_set_operator (cr, CAIRO_OPERATOR_CLEAR);
++ //gdk_cairo_region (cr, event->region);
++ cairo_fill (cr);
++
+ return FALSE;
+ }
+
+@@ -366,20 +372,20 @@
+ make_transparent_again (GtkWidget *widget, GtkStyle *previous_style,
+ gpointer user_data)
+ {
+- gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
++ //gdk_window_set_back_pixmap (gtk_widget_get_window(widget), NULL, TRUE);
+ }
+
+ static void
+ make_transparent (GtkWidget *widget, gpointer user_data)
+ {
+- if (GTK_WIDGET_NO_WINDOW (widget) || GTK_WIDGET_APP_PAINTABLE (widget))
++ if (! gtk_widget_get_has_window (widget) || gtk_widget_get_app_paintable (widget))
+ return;
+
+ gtk_widget_set_app_paintable (widget, TRUE);
+ gtk_widget_set_double_buffered (widget, FALSE);
+- gdk_window_set_back_pixmap (widget->window, NULL, TRUE);
+- g_signal_connect (widget, "expose_event",
+- G_CALLBACK (transparent_expose_event), NULL);
++ //gdk_window_set_back_pixmap (gtk_widget_get_window(widget), NULL, TRUE);
++ g_signal_connect (widget, "draw",
++ G_CALLBACK (transparent_draw), NULL);
+ g_signal_connect_after (widget, "style_set",
+ G_CALLBACK (make_transparent_again), NULL);
+ }
+@@ -391,7 +397,7 @@
+
+ g_return_if_fail (icon->manager_window != None);
+
+- gdkwin = gdk_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
++ gdkwin = gdk_x11_window_lookup_for_display (gtk_widget_get_display (GTK_WIDGET (icon)),
+ icon->manager_window);
+
+ gdk_window_remove_filter (gdkwin, egg_tray_icon_manager_filter, icon);
+--- build/src/mn-properties-dialog.c.orig 2011-02-08 23:37:12.605200174 +0100
++++ build/src/mn-properties-dialog.c 2011-02-08 23:37:18.601881191 +0100
+@@ -183,7 +183,7 @@
+ GtkTreeSelection *selection;
+
+ mn_container_create_interface(GTK_CONTAINER(self),
+- PKGDATADIR G_DIR_SEPARATOR_S "properties-dialog.glade",
++ PKGDATADIR G_DIR_SEPARATOR_S "properties-dialog.ui",
+ "main_vbox",
+ "mn_properties_dialog_",
+ "notebook", &selfp->notebook,
+--- src/mn-util.c.orig 2011-02-08 00:01:25.167207512 +0100
++++ src/mn-util.c 2011-02-09 00:01:35.718285446 +0100
+@@ -26,8 +26,7 @@
+ #include <gmodule.h>
+ #include <glib/gi18n.h>
+ #include <gobject/gvaluecollector.h>
+-#include <gnome.h>
+-#include <glade/glade.h>
++#include <libgnome/libgnome.h>
+ #include "mn-util.h"
+ #include "mn-mailboxes.h"
+ #include "mn-shell.h"
+@@ -303,49 +302,55 @@
+ return pixbuf;
+ }
+
+-static GladeXML *
++static GtkBuilder *
+ mn_glade_xml_new (const char *filename, const char *root, const char *domain)
+ {
+- GladeXML *xml;
++ GtkBuilder *builder;
++ GError *err = NULL;
+
+ g_return_val_if_fail(filename != NULL, NULL);
+
+- xml = glade_xml_new(filename, root, domain);
+- if (! xml)
+- mn_show_fatal_error_dialog(NULL, "Unable to load interface \"%s\".", filename);
++ builder = gtk_builder_new();
++ gtk_builder_set_translation_domain(builder, domain);
++ if (! gtk_builder_add_from_file(builder, filename, &err)) {
++ mn_show_fatal_error_dialog(NULL, "Unable to load interface \"%s\": %s.", filename, err->message);
++ g_error_free(err);
++ g_object_unref(builder);
++ return NULL;
++ }
+
+- return xml;
++ return builder;
+ }
+
+ static GtkWidget *
+-mn_glade_xml_get_widget (GladeXML *xml, const char *widget_name)
++mn_glade_xml_get_widget (GtkBuilder *builder, const char *widget_name)
+ {
+ GtkWidget *widget;
+
+- g_return_val_if_fail(GLADE_IS_XML(xml), NULL);
++ g_return_val_if_fail(GTK_IS_BUILDER(builder), NULL);
+ g_return_val_if_fail(widget_name != NULL, NULL);
+
+- widget = glade_xml_get_widget(xml, widget_name);
++ widget = GTK_WIDGET(gtk_builder_get_object(builder, widget_name));
+ if (! widget)
+- mn_show_fatal_error_dialog(NULL, "Widget \"%s\" not found in interface \"%s\".", widget_name, xml->filename);
++ mn_show_fatal_error_dialog(NULL, "Widget \"%s\" not found in interface.", widget_name);
+
+ return widget;
+ }
+
+ static void
+-create_interface_connect_cb (const char *handler_name,
++create_interface_connect_cb (GtkBuilder *builder,
+ GObject *object,
+ const char *signal_name,
+- const char *signal_data,
++ const char *handler_name,
+ GObject *connect_object,
+- gboolean after,
++ GConnectFlags flags,
+ gpointer user_data)
+ {
+ static GModule *module = NULL;
+ ContainerCreateInterfaceConnectInfo *info = user_data;
+ char *cb_name;
+ GCallback cb;
+- GConnectFlags flags;
++ GConnectFlags cflags;
+
+ if (! module)
+ {
+@@ -359,11 +364,9 @@
+ mn_show_fatal_error_dialog(NULL, "Signal handler \"%s\" not found.", cb_name);
+ g_free(cb_name);
+
+- flags = G_CONNECT_SWAPPED;
+- if (after)
+- flags |= G_CONNECT_AFTER;
++ cflags = G_CONNECT_SWAPPED;
+
+- g_signal_connect_data(object, signal_name, cb, info->container, NULL, flags);
++ g_signal_connect_data(object, signal_name, cb, info->container, NULL, cflags);
+ }
+
+ void
+@@ -373,7 +376,7 @@
+ const char *callback_prefix,
+ ...)
+ {
+- GladeXML *xml;
++ GtkBuilder *xml;
+ GtkWidget *child;
+ ContainerCreateInterfaceConnectInfo info;
+ va_list args;
+@@ -387,14 +390,16 @@
+ xml = mn_glade_xml_new(filename, child_name, NULL);
+ child = mn_glade_xml_get_widget(xml, child_name);
+
+- if (GTK_IS_DIALOG(container))
+- gtk_box_pack_start(GTK_BOX(GTK_DIALOG(container)->vbox), child, TRUE, TRUE, 0);
+- else
++ if (GTK_IS_DIALOG(container)) {
++ gtk_widget_unparent(child);
++ gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(container))), child, TRUE, TRUE, 0);
++ } else {
+ gtk_container_add(container, child);
++ }
+
+ info.container = container;
+ info.callback_prefix = callback_prefix;
+- glade_xml_signal_autoconnect_full(xml, create_interface_connect_cb, &info);
++ gtk_builder_connect_signals_full(xml, create_interface_connect_cb, &info);
+
+ va_start(args, callback_prefix);
+
+@@ -422,7 +427,7 @@
+
+ toplevel = gtk_widget_get_toplevel(widget);
+
+- return GTK_WIDGET_TOPLEVEL(toplevel) ? GTK_WINDOW(toplevel) : NULL;
++ return gtk_widget_get_toplevel(toplevel) ? GTK_WINDOW(toplevel) : NULL;
+ }
+
+ static void
+@@ -493,9 +498,11 @@
+ gpointer user_data)
+ {
+ GtkAdjustment *adjustment;
++ GtkAllocation allocation;
+
++ gtk_widget_get_allocation(widget, &allocation);
+ adjustment = gtk_scrolled_window_get_vadjustment(GTK_SCROLLED_WINDOW(widget));
+- gtk_adjustment_set_value(adjustment, (double) y / (widget->allocation.height - 2) * (adjustment->upper - adjustment->page_size));
++ gtk_adjustment_set_value(adjustment, (double) y / (allocation.height - 2) * (gtk_adjustment_get_upper(adjustment) - gtk_adjustment_get_page_size(adjustment)));
+
+ return TRUE; /* we're forcibly in a drop zone */
+ }
+@@ -562,7 +569,7 @@
+ MNMailbox *mailbox;
+
+ /* text/x-moz-url is encoded in UCS-2 but in format 8: broken */
+- if (selection_data->format != 8 || selection_data->length <= 0 || (selection_data->length % 2) != 0)
++ if (gtk_selection_data_get_format(selection_data) != 8 || gtk_selection_data_get_length(selection_data) <= 0 || (gtk_selection_data_get_length(selection_data) % 2) != 0)
+ {
+ mn_show_error_dialog(mn_widget_get_parent_window(widget),
+ _("A drag and drop error has occurred"),
+@@ -570,8 +577,8 @@
+ return;
+ }
+
+- char_data = (const guint16 *) selection_data->data;
+- char_len = selection_data->length / 2;
++ char_data = (const guint16 *) gtk_selection_data_get_data(selection_data);
++ char_len = gtk_selection_data_get_length(selection_data) / 2;
+
+ url = g_string_new(NULL);
+ for (i = 0; i < char_len && char_data[i] != '\n'; i++)
+@@ -1322,7 +1329,7 @@
+ }
+
+ static void
+-dialog_run_nonmodal_destroy_h (GtkObject *object, gpointer user_data)
++dialog_run_nonmodal_destroy_h (GtkWidget *object, gpointer user_data)
+ {
+ RunNonmodalInfo *info = user_data;
+
+@@ -1375,7 +1382,7 @@
+
+ g_object_ref(dialog);
+
+- if (! GTK_WIDGET_VISIBLE(dialog))
++ if (! gtk_widget_get_visible(dialog))
+ gtk_widget_show(GTK_WIDGET(dialog));
+
+ g_object_connect(dialog,
+--- src/mn-main.c.gtk3 2008-05-22 17:45:35.000000000 +0200
++++ src/mn-main.c 2011-02-08 23:32:33.800030659 +0100
+@@ -21,7 +21,7 @@
+ #include <stdlib.h>
+ #include <signal.h>
+ #include <glib/gi18n.h>
+-#include <gnome.h>
++#include <libgnome/libgnome.h>
+ #include <libgnomevfs/gnome-vfs.h>
+ #include <libnotify/notify.h>
+ #include <dbus/dbus-glib-lowlevel.h>
+@@ -452,7 +452,7 @@
+
+ gnome_program_init(PACKAGE,
+ VERSION,
+- LIBGNOMEUI_MODULE,
++ LIBGNOME_MODULE,
+ argc,
+ argv,
+ GNOME_PARAM_HUMAN_READABLE_NAME, _("Mail Notification"),
+@@ -460,6 +460,8 @@
+ GNOME_PARAM_GOPTION_CONTEXT, option_context,
+ NULL);
+
++ gtk_init(&argc, &argv);
++
+ if (arg_version)
+ {
+ print_version();
+@@ -497,7 +499,9 @@
+ if (! gnome_vfs_init())
+ mn_show_fatal_error_dialog(NULL, _("Unable to initialize the GnomeVFS library."));
+
++#if 0
+ gnome_authentication_manager_init();
++#endif
+
+ /* must be called before init_gmime() */
+ mn_conf_init();
+--- src/mn-conf.c.gtk3 2008-05-22 17:45:35.000000000 +0200
++++ src/mn-conf.c 2011-02-07 20:07:01.630580132 +0100
+@@ -23,7 +23,7 @@
+ #include <errno.h>
+ #include <stdarg.h>
+ #include <glib/gi18n.h>
+-#include <gnome.h>
++#include <libgnome/libgnome.h>
+ #include "mn-util.h"
+ #include "mn-conf.h"
+ #include "mn-shell.h"
diff --git a/extra/mail-notification/mail-notification-5.4-icons.patch b/extra/mail-notification/mail-notification-5.4-icons.patch
index 66e09b2aa..48d54742a 100644
--- a/extra/mail-notification/mail-notification-5.4-icons.patch
+++ b/extra/mail-notification/mail-notification-5.4-icons.patch
@@ -1,35 +1,38 @@
-Patch by Fedora to use icons that are available in Gnome 2.30+
-
-https://bugzilla.redhat.com/show_bug.cgi?id=573809
-
---- src/mn-stock.c.icons 2008-05-22 16:45:35.000000000 +0100
-+++ src/mn-stock.c 2010-05-20 21:53:20.306859177 +0100
+diff -Nrbu mail-notification-5.4/src/mn-stock.c mail-notification-5.4-OK/src/mn-stock.c
+--- mail-notification-5.4/src/mn-stock.c 2008-05-22 19:45:35.000000000 +0400
++++ mail-notification-5.4-OK/src/mn-stock.c 2010-05-24 19:36:03.000000000 +0400
@@ -32,11 +32,11 @@
const char *icon_name;
const char *source_stock_id;
} icons[] = {
- { MN_STOCK_MAIL, NULL, "stock_mail" },
- { MN_STOCK_NO_MAIL, NULL, "stock_inbox" },
-+ { MN_STOCK_MAIL, NULL, "mail-notification" },
-+ { MN_STOCK_NO_MAIL, NULL, "mail-notification" },
- { MN_STOCK_LOCAL, NULL, "stock_folder" },
- { MN_STOCK_REMOTE, NULL, "stock_internet" },
+- { MN_STOCK_LOCAL, NULL, "stock_folder" },
+- { MN_STOCK_REMOTE, NULL, "stock_internet" },
- { MN_STOCK_UNKNOWN, NULL, "stock_unknown" },
-+ { MN_STOCK_UNKNOWN, NULL, "unknown" },
++ { MN_STOCK_MAIL, NULL, "mail-message-new" },
++ { MN_STOCK_NO_MAIL, NULL, "mail-notification" },
++ { MN_STOCK_LOCAL, NULL, "folder" },
++ { MN_STOCK_REMOTE, NULL, "applications-internet" },
++ { MN_STOCK_UNKNOWN, NULL, "dialog-question" },
{ MN_STOCK_ERROR, NULL, NULL, GTK_STOCK_DIALOG_ERROR },
#if WITH_GMAIL
{ MN_STOCK_GMAIL, PKGDATADIR G_DIR_SEPARATOR_S "gmail.png" },
-@@ -51,11 +51,11 @@
- { MN_STOCK_SYSTEM_MAILBOX, NULL, "system" },
+@@ -48,14 +48,14 @@
+ { MN_STOCK_HOTMAIL, PKGDATADIR G_DIR_SEPARATOR_S "hotmail.png" },
+ #endif
+ #if WITH_MBOX || WITH_MOZILLA || WITH_MH || WITH_MAILDIR || WITH_SYLPHEED
+- { MN_STOCK_SYSTEM_MAILBOX, NULL, "system" },
++ { MN_STOCK_SYSTEM_MAILBOX, NULL, "applications-system" },
#endif
#if WITH_EVOLUTION
-- { MN_STOCK_EVOLUTION_MAILBOX, NULL, "evolution" },
-+ { MN_STOCK_EVOLUTION_MAILBOX, NULL, "stock_mail-unread" },
+ { MN_STOCK_EVOLUTION_MAILBOX, NULL, "evolution" },
#endif
- { MN_STOCK_MAIL_READER, NULL, "stock_mail-handling" },
-+ { MN_STOCK_MAIL_READER, NULL, "stock_mail-compose" },
- { MN_STOCK_OPEN_MESSAGE, NULL, "stock_mail-open" },
+- { MN_STOCK_OPEN_MESSAGE, NULL, "stock_mail-open" },
- { MN_STOCK_CONSIDER_NEW_MAIL_AS_READ, NULL, "stock_mark" }
++ { MN_STOCK_MAIL_READER, NULL, "mail-unread" },
++ { MN_STOCK_OPEN_MESSAGE, NULL, "mail-read" },
+ { MN_STOCK_CONSIDER_NEW_MAIL_AS_READ, NULL, "mail-mark-read" }
};
GtkIconFactory *factory;
diff --git a/extra/mail-notification/mail-notification-5.4-kde-trayicon.patch b/extra/mail-notification/mail-notification-5.4-kde-trayicon.patch
new file mode 100644
index 000000000..a3bdc8372
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-kde-trayicon.patch
@@ -0,0 +1,72 @@
+diff -Nrbu mail-notification-5.4/build/src/mn-shell.c mail-notification-5.4-OK/build/src/mn-shell.c
+--- mail-notification-5.4/build/src/mn-shell.c 2010-10-11 17:45:23.000000000 +0400
++++ mail-notification-5.4-OK/build/src/mn-shell.c 2010-10-11 17:45:48.000000000 +0400
+@@ -313,6 +313,29 @@
+ #undef __GOB_FUNCTION__
+
+ static void
++mn_shell_init_icon_base (MNShell * self)
++{
++ g_return_if_fail (self != NULL);
++ g_return_if_fail (MN_IS_SHELL (self));
++
++ self->icon = MN_MAIL_ICON(mn_mail_icon_new());
++ mn_add_weak_pointer(&self->icon);
++
++ g_object_connect(self->icon,
++ "signal::activate", self_icon_activate_h, self,
++ "signal::activate-mail-reader", self_icon_activate_mail_reader_h, self,
++ "signal::activate-open-latest-message", self_icon_activate_open_latest_message_h, self,
++ "swapped-signal::activate-consider-new-mail-as-read", self_consider_new_mail_as_read, self,
++ "swapped-signal::activate-update", self_update, self,
++ "signal::activate-properties", self_icon_activate_properties_h, self,
++ "signal::activate-help", self_icon_activate_help_h, self,
++ "signal::activate-about", self_icon_activate_about_h, self,
++ "swapped-signal::activate-remove", self_quit, self,
++ "signal::destroy", self_icon_destroy_h, self,
++ NULL);
++}
++
++static void
+ mn_shell_init (MNShell * o G_GNUC_UNUSED)
+ {
+ #define __GOB_FUNCTION__ "MN:Shell::init"
+@@ -793,22 +816,7 @@
+ {
+ #line 360 "src/mn-shell.gob"
+
+- self->icon = MN_MAIL_ICON(mn_mail_icon_new());
+- mn_add_weak_pointer(&self->icon);
+-
+- g_object_connect(self->icon,
+- "signal::activate", self_icon_activate_h, self,
+- "signal::activate-mail-reader", self_icon_activate_mail_reader_h, self,
+- "signal::activate-open-latest-message", self_icon_activate_open_latest_message_h, self,
+- "swapped-signal::activate-consider-new-mail-as-read", self_consider_new_mail_as_read, self,
+- "swapped-signal::activate-update", self_update, self,
+- "signal::activate-properties", self_icon_activate_properties_h, self,
+- "signal::activate-help", self_icon_activate_help_h, self,
+- "signal::activate-about", self_icon_activate_about_h, self,
+- "swapped-signal::activate-remove", self_quit, self,
+- "signal::destroy", self_icon_destroy_h, self,
+- NULL);
+-
++ mn_shell_init_icon_base(self);
+ self_update_sensitivity(self);
+ self_update_tooltip(self);
+ self_update_icon(self);
+@@ -1094,7 +1102,13 @@
+ }
+ else
+ {
+- gtk_widget_hide(GTK_WIDGET(self->icon));
++ /* Re-create the icon as a regular gtk_widget_hide causes the
++ * icon to remain visible on non-GNOME environments. We can't
++ * use the callback self_icon_destroy_h here as it can cause an
++ * endless recursion */
++ g_signal_handlers_disconnect_by_func(self->icon, self_icon_destroy_h, self);
++ gtk_widget_destroy(GTK_WIDGET(self->icon));
++ mn_shell_init_icon_base(self);
+ mn_mail_icon_set_blinking(self->icon, FALSE);
+ }
+ }}
diff --git a/extra/mail-notification/mail-notification-5.4-popup-attach.patch b/extra/mail-notification/mail-notification-5.4-popup-attach.patch
new file mode 100644
index 000000000..b8d5f6a09
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-popup-attach.patch
@@ -0,0 +1,45 @@
+diff -Nrbu mail-notification-5.4/build/src/mn-popup.c mail-notification-5.4-OK/build/src/mn-popup.c
+--- mail-notification-5.4/build/src/mn-popup.c 2008-05-22 19:47:49.000000000 +0400
++++ mail-notification-5.4-OK/build/src/mn-popup.c 2010-10-11 17:42:32.000000000 +0400
+@@ -177,6 +177,29 @@
+ #undef __GOB_FUNCTION__
+
+ static void
++mn_popup_wait_for_icon_to_become_ready (void)
++{
++ int x, y;
++ int count = 0;
++
++ /* When the tray icon is created, it can still take some time before
++ * it has arrived at the correct position. This is especially the case
++ * on KDE environments. To work around this, add a little delay of at
++ * most 2 seconds before showing a popup which is attached to the notification */
++ do {
++ gdk_window_get_origin (gtk_widget_get_window (mn_shell->icon), &x, &y);
++
++ if (x != 0 || y != 0) {
++ break;
++ }
++
++ g_usleep(G_USEC_PER_SEC / 10);
++ count++;
++ } while (count < 20);
++}
++
++
++static void
+ mn_popup_init (MNPopup * o G_GNUC_UNUSED)
+ {
+ #define __GOB_FUNCTION__ "MN:Popup::init"
+@@ -299,8 +322,10 @@
+ "icon-name", "stock_mail",
+ NULL);
+
+- if (mn_conf_get_enum_value(MN_TYPE_POPUP_POSITION, MN_CONF_POPUPS_POSITION) == MN_POPUP_POSITION_ATTACHED)
++ if (mn_conf_get_enum_value(MN_TYPE_POPUP_POSITION, MN_CONF_POPUPS_POSITION) == MN_POPUP_POSITION_ATTACHED) {
++ mn_popup_wait_for_icon_to_become_ready();
+ g_object_set(self, "attach-widget", mn_shell->icon, NULL);
++ }
+
+ g_string_free(body, TRUE);
+
diff --git a/extra/mail-notification/mail-notification-5.4-sasl_encode64.patch b/extra/mail-notification/mail-notification-5.4-sasl_encode64.patch
new file mode 100644
index 000000000..80a7304d1
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-sasl_encode64.patch
@@ -0,0 +1,24 @@
+diff -up mail-notification-5.4/build/src/mn-pop3-mailbox.c mail-notification-5.4-OK/build/src/mn-pop3-mailbox.c
+--- mail-notification-5.4/build/src/mn-pop3-mailbox.c 2009-05-19 10:29:58.448201837 +0200
++++ mail-notification-5.4-OK/build/src/mn-pop3-mailbox.c 2009-05-19 10:23:29.356204287 +0200
+@@ -619,7 +619,7 @@ mn_pop3_mailbox_enter_auth_cb (MNClientS
+
+ if (initial_clientoutlen > 0)
+ {
+- char buf64[initial_clientoutlen * 2]; /* Base64 is 33% larger than the data it encodes */
++ char buf64[initial_clientoutlen * 2 + 1]; /* Base64 is 33% larger than the data it encodes */
+ unsigned int outlen;
+ int result;
+ char *str;
+diff -up mail-notification-5.4/src/mn-client-session.c mail-notification-5.4-OK/src/mn-client-session.c
+--- mail-notification-5.4/src/mn-client-session.c 2008-05-22 17:45:35.000000000 +0200
++++ mail-notification-5.4-OK/src/mn-client-session.c 2009-05-19 10:29:09.112211055 +0200
+@@ -1030,7 +1030,7 @@ mn_client_session_write (MNClientSession
+ static int
+ write_base64 (MNClientSession *session, const char *buf, unsigned int len)
+ {
+- char buf64[len * 2]; /* Base64 is 33% larger than the data it encodes */
++ char buf64[len * 2 + 1]; /* Base64 is 33% larger than the data it encodes */
+ unsigned int outlen;
+ int result;
+ char *str;
diff --git a/extra/mail-notification/mail-notification-5.4-weak.patch b/extra/mail-notification/mail-notification-5.4-weak.patch
new file mode 100644
index 000000000..2e2a233aa
--- /dev/null
+++ b/extra/mail-notification/mail-notification-5.4-weak.patch
@@ -0,0 +1,11 @@
+diff -Nrbu mail-notification-5.4/build/src/mn-shell.c mail-notification-5.4-OK/build/src/mn-shell.c
+--- mail-notification-5.4/build/src/mn-shell.c 2008-05-22 19:47:49.000000000 +0400
++++ mail-notification-5.4-OK/build/src/mn-shell.c 2010-05-24 19:39:48.000000000 +0400
+@@ -1008,6 +1008,7 @@
+ Self *self = user_data;
+
+ /* The Notification Area applet has been terminated. Recreate the icon. */
++ mn_remove_weak_pointer(&self->icon);
+ self_init_icon(self);
+ }}
+ #line 1014 "mn-shell.c"
diff --git a/extra/metacity/PKGBUILD b/extra/metacity/PKGBUILD
index 42221233d..e72415fec 100644
--- a/extra/metacity/PKGBUILD
+++ b/extra/metacity/PKGBUILD
@@ -1,26 +1,23 @@
-# $Id: PKGBUILD 116879 2011-03-25 23:00:58Z ibiru $
+# $Id: PKGBUILD 118084 2011-04-05 11:18:53Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=metacity
-pkgver=2.30.3
-pkgrel=2
+pkgver=2.34.0
+pkgrel=1
pkgdesc="A window manager for GNOME2"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('startup-notification' 'gconf' 'zenity' 'libcanberra' 'libgtop' 'libwnck')
-makedepends=('intltool' 'pkgconfig' 'gnome-doc-utils')
+depends=('startup-notification' 'gconf' 'zenity' 'libcanberra' 'libgtop' 'libwnck' 'libsm')
+makedepends=('intltool' 'pkgconfig' 'gnome-doc-utils' 'gnome-common')
url="http://www.gnome.org"
groups=('gnome')
options=('!libtool' '!emptydirs')
install=metacity.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.30/${pkgname}-${pkgver}.tar.bz2
- metacity-restartstyle.patch)
-sha256sums=('08f887018fa5e447cf184d03bae3fe2c05fdb7583bed6768e3b4d66392fc18dd'
- '3a7e484ec2eb97e7b7f1baaa33e5d925e67a35c84e49c5abe6c32cf2c25f16eb')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('e316beff76658c98e21ddf4e7eaba12cd761b35002dc38701441db6740a6d698')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/metacity-restartstyle.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/metacity \
--localstatedir=/var --disable-static
diff --git a/extra/midori/PKGBUILD b/extra/midori/PKGBUILD
index 0ca190c37..00c16135b 100644
--- a/extra/midori/PKGBUILD
+++ b/extra/midori/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 114718 2011-03-15 18:18:12Z andyrtr $
+# $Id: PKGBUILD 118802 2011-04-07 20:14:30Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: rabyte <rabyte.at.gmail.dot.com>
# Contributor: Johannes Krampf <wuischke.at.amule.dot.org>
@@ -6,13 +6,13 @@
pkgname=midori
#_gitdate=20090306
pkgver=0.3.3 #_git${_gitdate}
-pkgrel=1
+pkgrel=2
pkgdesc="A lightweight web browser based on Gtk WebKit"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.twotoasts.de/index.php?/pages/midori_summary.html"
license=('LGPL2.1')
install=midori.install
-depends=('libwebkit' 'libunique' 'hicolor-icon-theme' 'desktop-file-utils' 'libnotify>=0.7.1' 'libxss' 'sqlite3' 'glib2')
+depends=('libwebkit>=1.3.13' 'libunique' 'hicolor-icon-theme' 'desktop-file-utils' 'libnotify>=0.7.1' 'libxss' 'sqlite3' 'glib2')
makedepends=('libxml2' 'intltool' 'gtk-doc' 'librsvg' 'python2>=2.7.1' 'vala') # 'git'
optdepends=('vala: for use in extensions')
source=(http://archive.xfce.org/src/apps/$pkgname/0.3/$pkgname-$pkgver.tar.bz2
diff --git a/extra/miro/PKGBUILD b/extra/miro/PKGBUILD
index 243b30916..026f4fabf 100644
--- a/extra/miro/PKGBUILD
+++ b/extra/miro/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 107236 2011-01-22 19:02:29Z ronald $
+# $Id: PKGBUILD 119004 2011-04-10 11:32:39Z eric $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
pkgname=miro
pkgver=3.5.1
-pkgrel=1
+pkgrel=2
pkgdesc="The free and open source internet TV platform"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.getmiro.com"
@@ -13,7 +13,7 @@ depends=('dbus-python' 'pyrex' 'pygtk' 'gstreamer0.10' 'python2-gconf'
'desktop-file-utils' 'gstreamer0.10' 'hicolor-icon-theme'
'gstreamer0.10-python' 'python-notify' 'libtorrent-rasterbar'
'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'python-pycurl')
-makedepends=('pkgconfig')
+makedepends=('pkg-config')
install=miro.install
source=(http://ftp.osuosl.org/pub/pculture.org/${pkgname}/src/${pkgname}-${pkgver}.tar.gz)
sha1sums=('0f5c2a307e7040c9c2895ee9a2d1c3ff99d34e9e')
@@ -21,9 +21,9 @@ sha1sums=('0f5c2a307e7040c9c2895ee9a2d1c3ff99d34e9e')
build() {
cd "${srcdir}/${pkgname}-${pkgver}/linux"
- python2 setup.py install --root=${pkgdir}
+ python2 setup.py install --root="${pkgdir}"
# fix miro startup script so --debug works with python2
- sed -i "s|which python|which python2|" ${pkgdir}/usr/bin/miro
- sed -i "s|./miro.real|/usr/bin/miro.real|" ${pkgdir}/usr/bin/miro
+ sed -i "s|which python|which python2|" "${pkgdir}/usr/bin/miro"
+ sed -i "s|./miro.real|/usr/bin/miro.real|" "${pkgdir}/usr/bin/miro"
}
diff --git a/extra/mono/PKGBUILD b/extra/mono/PKGBUILD
index 3e38dcea1..390b89b75 100644
--- a/extra/mono/PKGBUILD
+++ b/extra/mono/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 112872 2011-03-07 12:41:38Z daniel $
+# $Id: PKGBUILD 120910 2011-04-27 09:25:47Z daniel $
# Maintainer: Daniel Isenmann <daniel@archlinux.org>
# Contributor: Brice Carpentier <brice@dlfp.org>
pkgname=mono
-pkgver=2.10.1
-pkgrel=2
+pkgver=2.10.2
+pkgrel=1
pkgdesc="Free implementation of the .NET platform including runtime and compiler"
arch=(i686 x86_64 'mips64el')
license=('GPL' 'LGPL2' 'MPL' 'custom:MITX11')
@@ -16,7 +16,7 @@ provides=('monodoc')
conflicts=('monodoc')
source=(http://ftp.novell.com/pub/mono/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2
mono.rc.d)
-md5sums=('ae8d1875447527599e68dd6c1d82bc11'
+md5sums=('bff057dc3e56b8841bbb1abe053858bb'
'8315e46c6a6e9625502521fc0ad1a322')
build() {
diff --git a/extra/mousetweaks/PKGBUILD b/extra/mousetweaks/PKGBUILD
index d1ad086cb..0d71b3962 100644
--- a/extra/mousetweaks/PKGBUILD
+++ b/extra/mousetweaks/PKGBUILD
@@ -2,28 +2,28 @@
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=mousetweaks
-pkgver=2.32.1
+pkgver=3.0.0
pkgrel=1
pkgdesc="Mouse accessibility enhancements for the GNOME desktop"
arch=(i686 x86_64 'mips64el')
license=('GPL3' 'FDL')
-depends=('gnome-panel-bonobo>=2.32.0' 'libxtst')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool')
+depends=('libxtst' 'gtk3' 'gsettings-desktop-schemas')
+makedepends=('gnome-doc-utils' 'intltool')
groups=('gnome-extra')
options=('!libtool' '!emptydirs')
url="http://www.gnome.org"
install=mousetweaks.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('70d2e8ba0f5021a9e70fecab2ea5cb5f2c03941e676607bec37f2304d9b86d08')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('780c6349aa331635d15abc1f119d4f35de1534f1250e1921ec5f05efa098d242')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-scrollkeeper
make
- make -j1 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain mousetweaks ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/mousetweaks/mousetweaks.install b/extra/mousetweaks/mousetweaks.install
index 05aba9b73..1ae919322 100644
--- a/extra/mousetweaks/mousetweaks.install
+++ b/extra/mousetweaks/mousetweaks.install
@@ -1,17 +1,17 @@
-pkgname=mousetweaks
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall mousetweaks
+ fi
}
post_upgrade() {
- post_install $1
+ post_install
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+post_remove() {
+ post_install
}
diff --git a/extra/mpd/PKGBUILD b/extra/mpd/PKGBUILD
index 13106b460..5d5972060 100644
--- a/extra/mpd/PKGBUILD
+++ b/extra/mpd/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 116395 2011-03-23 05:22:12Z angvp $
+# $Id: PKGBUILD 119766 2011-04-14 20:23:04Z schiv $
# Maintainer: Angel Velasquez <angvp@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
@@ -6,13 +6,13 @@
pkgname=mpd
pkgver=0.16.2
-pkgrel=1
+pkgrel=3
pkgdesc="Music daemon that plays MP3, FLAC, and Ogg Vorbis files"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://mpd.wikia.com/wiki/Server"
depends=('libao' 'ffmpeg' 'libmodplug' 'audiofile' 'libshout' 'libmad' 'curl' 'faad2'
- 'sqlite3' 'libsamplerate' 'libmms' 'wavpack' 'libmpcdec' 'avahi' 'libid3tag'
+ 'sqlite3' 'jack' 'libmms' 'wavpack' 'libmpcdec' 'avahi' 'libid3tag'
'libpulse')
makedepends=('pkgconfig' 'doxygen')
install=${pkgname}.install
@@ -26,6 +26,7 @@ build() {
./configure --prefix=/usr \
--sysconfdir=/etc \
--enable-lastfm \
+ --enable-jack \
--enable-pulse \
--enable-documentation \
--disable-libwrap \
diff --git a/extra/mutter/PKGBUILD b/extra/mutter/PKGBUILD
new file mode 100644
index 000000000..4add473fa
--- /dev/null
+++ b/extra/mutter/PKGBUILD
@@ -0,0 +1,36 @@
+# $Id: PKGBUILD 120688 2011-04-25 23:12:25Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Maintainer: Ionut Biru <ibiru@archlinux.org>
+# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
+
+pkgname=mutter
+pkgver=3.0.1
+pkgrel=1
+pkgdesc="A window manager for GNOME3"
+arch=(i686 x86_64)
+license=('GPL')
+depends=('startup-notification' 'gconf' 'zenity' 'libcanberra' 'clutter' 'gobject-introspection')
+makedepends=('intltool' 'gtk-doc')
+url="http://www.gnome.org"
+groups=('gnome')
+options=('!libtool' '!emptydirs')
+install=mutter.install
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('6c3190789f935a2c982e78447726e87cf1d4b7af2f0b407cb6d6aca636e3d708')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/mutter \
+ --localstatedir=/var --disable-static
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+
+ install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
+ gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain mutter ${pkgdir}/etc/gconf/schemas/*.schemas
+ rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+}
diff --git a/extra/mutter/mutter.install b/extra/mutter/mutter.install
new file mode 100644
index 000000000..199f12584
--- /dev/null
+++ b/extra/mutter/mutter.install
@@ -0,0 +1,17 @@
+pkgname=mutter
+
+post_install() {
+ usr/sbin/gconfpkg --install ${pkgname}
+}
+
+pre_upgrade() {
+ pre_remove $1
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+}
diff --git a/extra/mx/PKGBUILD b/extra/mx/PKGBUILD
new file mode 100644
index 000000000..2132d1e56
--- /dev/null
+++ b/extra/mx/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 116756 2011-03-25 20:20:57Z ibiru $
+# Contributor: Andrea Scarpino <andrea@archlinux.org>
+# Contributor: Guenther Wutz <admin@wutzara.de>
+
+pkgname=mx
+pkgver=1.0.4
+pkgrel=1
+pkgdesc="A widget toolkit using Clutter"
+arch=('i686' 'x86_64')
+url="http://www.clutter-project.org"
+license=('LGPL')
+depends=('clutter' 'libxrandr' 'dbus-glib' 'gtk2' 'startup-notification')
+makedepends=('intltool' 'gobject-introspection')
+options=('!libtool')
+source=("http://source.clutter-project.org/sources/$pkgname/1.0/$pkgname-$pkgver.tar.bz2")
+sha256sums=('b0ed87865eff2280b0aad43d30ca68c829fd20f9fcc5ba961d16b9f8d1a784e2')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/nautilus-open-terminal/PKGBUILD b/extra/nautilus-open-terminal/PKGBUILD
index b39030b7e..2e53a5bef 100644
--- a/extra/nautilus-open-terminal/PKGBUILD
+++ b/extra/nautilus-open-terminal/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 114747 2011-03-15 20:56:03Z ibiru $
+# $Id: PKGBUILD 114750 2011-03-15 21:17:26Z ibiru $
# Maintainer : Biru Ionut <ionut@archlinux.ro>
# Contributor: Roman Kyrylych <Roman.Kyrylych@gmail.com>
# Contributor: William Rea <sillywilly@gmail.com>
pkgname=nautilus-open-terminal
-pkgver=0.18
-pkgrel=2
+pkgver=0.19
+pkgrel=1
pkgdesc="A nautilus plugin for opening terminals in arbitrary local paths"
arch=('i686' 'x86_64' 'mips64el')
url="http://ftp.gnome.org/pub/GNOME/sources/nautilus-open-terminal"
@@ -12,20 +12,22 @@ license=('GPL')
depends=('nautilus')
makedepends=('pkgconfig' 'gettext' 'intltool')
install=nautilus-open-terminal.install
-source=(ftp://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.gz)
+source=(ftp://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver}/${pkgname}-${pkgver}.tar.bz2)
options=('!libtool')
-md5sums=('c0718d28e6d9984c0bdf92c30ff72d49')
+sha256sums=('4760f3a5a862ba9239ea92690a42ecee2c68fad413b023dd06505bdb3ee1f6af')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
-
./configure --prefix=/usr --sysconfdir=/etc --disable-static
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -dm755 "${pkgdir}/usr/share/gconf/schemas"
gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain ${pkgname} "${pkgdir}"/etc/gconf/schemas/*.schemas
rm -rf "${pkgdir}"/etc/gconf/schemas
}
-
diff --git a/extra/nautilus-sendto/PKGBUILD b/extra/nautilus-sendto/PKGBUILD
index e0ada31d4..f6a431c28 100644
--- a/extra/nautilus-sendto/PKGBUILD
+++ b/extra/nautilus-sendto/PKGBUILD
@@ -1,29 +1,31 @@
-# $Id: PKGBUILD 91946 2010-09-28 15:01:54Z ibiru $
+# $Id: PKGBUILD 117738 2011-04-04 17:38:24Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Eduardo Romero <eduardo@archlinux.org>
# Contributor: Tor Krill <tor@krill.nu>
pkgname=nautilus-sendto
-pkgver=2.32.0
+pkgver=3.0.0
pkgrel=1
pkgdesc="Nautilus context menu for sending files."
arch=('i686' 'x86_64' 'mips64el')
url="http://download.gnome.org/sources/nautilus-sendto/"
license=('GPL')
groups=('gnome-extra')
-depends=('evolution-data-server>=2.32.0' 'nautilus>=2.32.0' 'dconf')
+depends=('evolution-data-server' 'nautilus' 'dconf')
makedepends=('pidgin' 'gajim' 'gettext' 'intltool')
options=('!libtool' '!emptydirs')
install=nautilus-sendto.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/nautilus-sendto/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('890090b24381d91f079610d5454cb786a3ecefc91fa06649b2222be9bb02269a')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('8821c6aab186ff3aa852438b4f2b64dce9f68e264908ce009e331bac74969e21')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-schemas-compile
make
- make DESTDIR="${pkgdir}" install
+}
- rm -f "${pkgdir}//usr/lib/nautilus-sendto/plugins/libnstbluetooth.so"
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/nautilus/PKGBUILD b/extra/nautilus/PKGBUILD
index 554ef4633..992e93e7a 100644
--- a/extra/nautilus/PKGBUILD
+++ b/extra/nautilus/PKGBUILD
@@ -1,36 +1,41 @@
-# $Id: PKGBUILD 104094 2010-12-28 19:26:26Z ibiru $
+# $Id: PKGBUILD 121317 2011-04-30 15:08:05Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=nautilus
-pkgver=2.32.2.1
-pkgrel=1
+pkgver=3.0.1
+pkgrel=2
pkgdesc="The GNOME shell and file manager"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libexif>=0.6.19' 'gnome-desktop>=2.32.1' 'exempi>=2.1.1' 'libunique>=1.1.6' 'hicolor-icon-theme' 'gvfs>=1.6.6' 'desktop-file-utils')
-makedepends=('intltool' 'gobject-introspection' 'namcap')
+depends=('libexif' 'gnome-desktop' 'exempi' 'gtk3' 'hicolor-icon-theme' 'gvfs' 'desktop-file-utils' 'gsettings-desktop-schemas' 'shared-mime-info')
+makedepends=('intltool' 'gobject-introspection')
replaces=('gnome-volume-manager')
url="http://www.gnome.org"
groups=('gnome')
options=('!libtool' '!emptydirs')
install=nautilus.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- nautilus-condrestart.patch)
-sha256sums=('802dacc98c697afea2e6201dab1c8c800809f235fff39857983efb4340ecc303'
- 'f825292ef26274d3044272ca9f25095391cc49d30fb0056e7ed7346a1b4d106c')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2
+ places-sidebar.patch progress-ui-handler.patch)
+sha256sums=('f759d615c880caebf84290bc00c354488266bd7292479d88b8811a9c4f3106e8'
+ 'ddf020bf8c5ede07fb737b37561d0e557b105c2b96dfa56d9a9f5110ecfbc041'
+ '5b6f911b1d3e0317c370c674bc52f6521bdd785647087863d33d3b60ddf00433')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/nautilus-condrestart.patch"
+ #fixed for 3.0.2
+ patch -Np1 -i "${srcdir}/places-sidebar.patch"
+ patch -Np1 -i "${srcdir}/progress-ui-handler.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
--libexecdir=/usr/lib/nautilus \
+ --disable-nst-extension \
--disable-update-mimedb \
- --disable-packagekit
+ --disable-packagekit \
+ --disable-schemas-compile
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain nautilus ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/nautilus/nautilus.install b/extra/nautilus/nautilus.install
index 1d818c955..631e38649 100644
--- a/extra/nautilus/nautilus.install
+++ b/extra/nautilus/nautilus.install
@@ -1,26 +1,20 @@
-pkgname=nautilus
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
update-desktop-database -q
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
update-mime-database usr/share/mime > /dev/null
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall nautilus
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
- update-mime-database usr/share/mime > /dev/null
+ post_install
}
diff --git a/extra/nautilus/places-sidebar.patch b/extra/nautilus/places-sidebar.patch
new file mode 100644
index 000000000..e6c3f6327
--- /dev/null
+++ b/extra/nautilus/places-sidebar.patch
@@ -0,0 +1,36 @@
+From cd5a1e5cf95a165c66e7a097530058864dc3a38f Mon Sep 17 00:00:00 2001
+From: Cosimo Cecchi <cosimoc@gnome.org>
+Date: Thu, 28 Apr 2011 18:05:07 +0000
+Subject: places-sidebar: make sure to return if we click inside empty space
+
+https://bugzilla.gnome.org/show_bug.cgi?id=648872
+---
+diff --git a/src/nautilus-places-sidebar.c b/src/nautilus-places-sidebar.c
+index 6e49a4c..56216ab 100644
+--- a/src/nautilus-places-sidebar.c
++++ b/src/nautilus-places-sidebar.c
+@@ -2685,6 +2685,7 @@ bookmarks_button_release_event_cb (GtkWidget *widget,
+ GtkTreeIter iter;
+ GtkTreeModel *model;
+ GtkTreeView *tree_view;
++ gboolean res;
+
+ path = NULL;
+
+@@ -2708,8 +2709,12 @@ bookmarks_button_release_event_cb (GtkWidget *widget,
+ return FALSE;
+ }
+
+- gtk_tree_view_get_path_at_pos (tree_view, (int) event->x, (int) event->y,
+- &path, NULL, NULL, NULL);
++ res = gtk_tree_view_get_path_at_pos (tree_view, (int) event->x, (int) event->y,
++ &path, NULL, NULL, NULL);
++
++ if (!res) {
++ return FALSE;
++ }
+
+ gtk_tree_model_get_iter (model, &iter, path);
+
+--
+cgit v0.9
diff --git a/extra/nautilus/progress-ui-handler.patch b/extra/nautilus/progress-ui-handler.patch
new file mode 100644
index 000000000..231ea64bc
--- /dev/null
+++ b/extra/nautilus/progress-ui-handler.patch
@@ -0,0 +1,28 @@
+From fdcc2f36f549a18ea6f587fb9e9bad97f0114c59 Mon Sep 17 00:00:00 2001
+From: Cosimo Cecchi <cosimoc@gnome.org>
+Date: Thu, 28 Apr 2011 18:25:15 +0000
+Subject: progress-ui-handler: don't add progress infos to the window twice
+
+We were adding them twice in case there was already one operation
+running.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=648857
+---
+diff --git a/src/nautilus-progress-ui-handler.c b/src/nautilus-progress-ui-handler.c
+index 2479682..fe295b2 100644
+--- a/src/nautilus-progress-ui-handler.c
++++ b/src/nautilus-progress-ui-handler.c
+@@ -315,10 +315,10 @@ handle_new_progress_info (NautilusProgressUIHandler *self,
+ G_CALLBACK (progress_info_finished_cb), self);
+
+ self->priv->active_infos++;
+- progress_ui_handler_add_to_window (self, info);
+
+ if (self->priv->active_infos == 1) {
+ /* this is the only active operation, present the window */
++ progress_ui_handler_add_to_window (self, info);
+ gtk_window_present (GTK_WINDOW (self->priv->progress_window));
+ } else {
+ if (gtk_widget_get_visible (self->priv->progress_window)) {
+--
+cgit v0.9
diff --git a/extra/network-manager-applet/PKGBUILD b/extra/network-manager-applet/PKGBUILD
index a7dd9d513..50dafbad6 100644
--- a/extra/network-manager-applet/PKGBUILD
+++ b/extra/network-manager-applet/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 112864 2011-03-07 11:16:19Z ibiru $
+# $Id: PKGBUILD 118020 2011-04-05 06:52:04Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Arjan Timmerman <arjan@archlinux.org>
# Contributor: Wael Nasreddine <gandalf@siemens-mobiles.org>
@@ -6,31 +6,35 @@
# Contributor: Will Rea <sillywilly@gmail.com>
pkgname=network-manager-applet
-pkgver=0.8.2
-pkgrel=4
+pkgver=0.8.998
+pkgrel=1
pkgdesc="GNOME frontends to NetWorkmanager"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org/projects/NetworkManager/"
-depends=('networkmanager>=0.8.2' 'libglade' 'libgnome-keyring' 'polkit-gnome' 'notification-daemon' 'libnotify' 'gnome-icon-theme' 'mobile-broadband-provider-info' 'gconf')
+depends=('networkmanager' 'libgnome-keyring' 'polkit-gnome' 'gtk3'
+ 'notification-daemon' 'libnotify' 'gnome-icon-theme'
+ 'mobile-broadband-provider-info' 'gconf')
makedepends=('intltool' 'gnome-bluetooth')
optdepends=('gnome-bluetooth: for PAN/DUN support')
options=('!libtool')
install=network-manager-applet.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/network-manager-applet/0.8/network-manager-applet-${pkgver}.tar.bz2
- nm-applet-0.8.2-libnotify-0.7.patch)
-sha256sums=('c6f8723031092bd1c7db452df5578ec9ca8e9f98c2ea493dba7d40dbe0e02391'
- '542e0c3a5f851f72e5672f982c7e86c45b79868f3d16500b930d58cf8f039b5d')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('0a16e2ae00312062d4cd140d811227b84ac69e7d9487f6a84810f3d461894a82')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/nm-applet-0.8.2-libnotify-0.7.patch"
+
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var \
--libexecdir=/usr/lib/networkmanager \
--disable-static \
--disable-maintainer-mode
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/networkmanager-openvpn/PKGBUILD b/extra/networkmanager-openvpn/PKGBUILD
index 3af1c2472..05bc1d322 100644
--- a/extra/networkmanager-openvpn/PKGBUILD
+++ b/extra/networkmanager-openvpn/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 98204 2010-11-04 21:17:08Z ibiru $
+# $Id: PKGBUILD 118022 2011-04-05 06:52:18Z heftig $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=networkmanager-openvpn
-pkgver=0.8.2
+pkgver=0.8.998
pkgrel=1
pkgdesc="NetworkManager VPN plugin for OpenVPN"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org/projects/NetworkManager/"
depends=("networkmanager>=${pkgver}" 'openvpn')
-makedepends=('intltool' 'gtk2' 'libglade' 'gconf' 'libgnome-keyring')
+makedepends=('intltool' 'gtk3' 'gconf' 'libgnome-keyring')
optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager')
install=networkmanager-openvpn.install
options=('!libtool')
source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-openvpn/0.8/NetworkManager-openvpn-${pkgver}.tar.bz2)
-sha256sums=('21d540b7e7cd88cff3173bb3574a88d4dd76da564fccc58dc436a68476d6d6fe')
+sha256sums=('8c95cf23b5f6abc07f3b7383bb47a4be32d6232046b2a89d5259cc96e9c25d3c')
build() {
cd "${srcdir}/NetworkManager-openvpn-${pkgver}"
@@ -23,5 +23,9 @@ build() {
--libexecdir=/usr/lib/networkmanager \
--disable-static
make
+}
+
+package() {
+ cd "${srcdir}/NetworkManager-openvpn-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/networkmanager-pptp/PKGBUILD b/extra/networkmanager-pptp/PKGBUILD
index 007d5e919..579bfb7f6 100644
--- a/extra/networkmanager-pptp/PKGBUILD
+++ b/extra/networkmanager-pptp/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 98212 2010-11-04 21:20:04Z ibiru $
+# $Id: PKGBUILD 118030 2011-04-05 06:53:52Z heftig $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=networkmanager-pptp
-pkgver=0.8.2
+pkgver=0.8.998
pkgrel=1
pkgdesc="NetworkManager VPN plugin for pptp "
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org/projects/NetworkManager/"
depends=("networkmanager>=${pkgver}" 'pptpclient')
-makedepends=('intltool' 'gtk2' 'libglade' 'gconf' 'libgnome-keyring')
+makedepends=('intltool' 'gtk3' 'gconf' 'libgnome-keyring')
optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager')
options=('!libtool')
install=networkmanager-pptp.install
source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-pptp/0.8/NetworkManager-pptp-${pkgver}.tar.bz2)
-sha256sums=('c90172273d6b29a5f3fec138cc474d6a7003edf35918602f3b7283ddd05d87e6')
+sha256sums=('2cc2093dd2d81b0c4f82d44a8589f8c867c6b88ef0d8801631bd417f8480b9b9')
build() {
cd "${srcdir}/NetworkManager-pptp-${pkgver}"
@@ -23,5 +23,9 @@ build() {
--libexecdir=/usr/lib/networkmanager \
--disable-static
make
+}
+
+package() {
+ cd "${srcdir}/NetworkManager-pptp-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/networkmanager-vpnc/PKGBUILD b/extra/networkmanager-vpnc/PKGBUILD
index 9243a1706..9c2dbf41f 100644
--- a/extra/networkmanager-vpnc/PKGBUILD
+++ b/extra/networkmanager-vpnc/PKGBUILD
@@ -1,20 +1,21 @@
-# $Id: PKGBUILD 98207 2010-11-04 21:19:02Z ibiru $
+# $Id: PKGBUILD 118033 2011-04-05 06:54:12Z heftig $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=networkmanager-vpnc
-pkgver=0.8.2
+pkgver=0.8.998
pkgrel=1
pkgdesc="NetworkManager VPN plugin for vpnc"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org/projects/NetworkManager/"
-depends=("networkmanager>=${pkgver}" 'vpnc')
-makedepends=('intltool' 'gtk2' 'libglade' 'gconf' 'libgnome-keyring')
+depends=("networkmanager>=${pkgver}" 'vpnc' 'hicolor-icon-theme'
+ 'gtk-update-icon-cache')
+makedepends=('intltool' 'gtk3' 'gconf' 'libgnome-keyring')
optdepends=('network-manager-applet: GNOME frontends to NetWorkmanager')
options=('!libtool')
install=networkmanager-vpnc.install
source=(http://ftp.gnome.org/pub/GNOME/sources/NetworkManager-vpnc/0.8/NetworkManager-vpnc-${pkgver}.tar.bz2)
-sha256sums=('c37cf921c223f226d16e659321bb372e33278bf642362b7a92cb665d27950011')
+sha256sums=('996ae3b504ad49433955baa6467f828fd161a7fbe16c7080fdcab7f7c5b92fc6')
build() {
cd "${srcdir}/NetworkManager-vpnc-${pkgver}"
@@ -23,5 +24,9 @@ build() {
--libexecdir=/usr/lib/networkmanager \
--disable-static
make
+}
+
+package() {
+ cd "${srcdir}/NetworkManager-vpnc-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/networkmanager/PKGBUILD b/extra/networkmanager/PKGBUILD
index 3f0ac83ad..dca1a2365 100644
--- a/extra/networkmanager/PKGBUILD
+++ b/extra/networkmanager/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 105867 2011-01-13 19:51:11Z ibiru $
+# $Id: PKGBUILD 119010 2011-04-10 13:15:03Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinxu.org>
# Contri-butor: Wael Nasreddine <gandalf@siemens-mobiles.org>
# Contributor: Tor Krill <tor@krill.nu>
@@ -6,14 +6,14 @@
# Contributor: Valentine Sinitsyn <e_val@inbox.ru>
pkgname=networkmanager
-pkgver=0.8.3
-pkgrel=0.20110113
+pkgver=0.8.998
+pkgrel=2
pkgdesc="Network Management daemon"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org/projects/NetworkManager/"
depends=('dbus-glib' 'iproute2' 'libnl' 'nss' 'polkit' 'udev' 'wireless_tools' 'wpa_supplicant' 'ppp' 'dhcpcd')
-makedepends=('intltool' 'dhclient' 'iptables')
+makedepends=('intltool' 'dhclient' 'iptables' 'gobject-introspection')
optdepends=('modemmanager: for modem management service'
'dhclient: alternative DHCP/DHCPv6 client'
'iptables: Connection sharing'
@@ -22,12 +22,11 @@ optdepends=('modemmanager: for modem management service'
options=('!libtool')
backup=('etc/NetworkManager/NetworkManager.conf')
install=networkmanager.install
-#source=(http://ftp.gnome.org/pub/gnome/sources/NetworkManager/0.8/NetworkManager-${pkgver}.tar.bz2
-source=(http://mirrors.kernel.org/archlinux/other/networkmanager/NetworkManager-$pkgver-$pkgrel.tar.bz2
+source=(http://ftp.gnome.org/pub/gnome/sources/NetworkManager/0.8/NetworkManager-${pkgver}.tar.bz2
NetworkManager.conf disable_set_hostname.patch)
-md5sums=('bdcdd1060e17e9373e60edcdad7d076e'
- '1653159d6634fb62d3a5c548b7a56151'
- 'b7deda5bb47b3df0eb42782eabbaefe7')
+sha256sums=('239271e7cd93272776bb9297bfc5214ab910d3d9a7c1862b2625b90719014a82'
+ '44b048804c7c0b8b3b0c29b8632b6ad613c397d0a1635ec918e10c0fbcdadf21'
+ '1e4586991bc96ef004dc520c794047a336c54433e0bd4edc3879fb6e7ab0e553')
build() {
cd "${srcdir}/NetworkManager-${pkgver}"
@@ -45,7 +44,8 @@ build() {
--with-dhcpcd=/sbin/dhcpcd \
--with-iptables=/usr/sbin/iptables \
--disable-static \
- --enable-more-warnings=no
+ --enable-more-warnings=no \
+ --disable-wimax
make
}
@@ -55,4 +55,6 @@ package() {
make DESTDIR="${pkgdir}" install
install -m644 "${srcdir}/NetworkManager.conf" "${pkgdir}/etc/NetworkManager/"
+
+ rm -rf "${pkgdir}/var/run/"
}
diff --git a/extra/notification-daemon/PKGBUILD b/extra/notification-daemon/PKGBUILD
index 641f8b639..c57033abc 100644
--- a/extra/notification-daemon/PKGBUILD
+++ b/extra/notification-daemon/PKGBUILD
@@ -1,34 +1,30 @@
-# $Id: PKGBUILD 112866 2011-03-07 11:32:09Z ibiru $
+# $Id: PKGBUILD 110126 2011-02-16 17:22:45Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Mark Rosenstand <mark@borkware.net>
pkgname=notification-daemon
-pkgver=0.4.0
-pkgrel=5
+pkgver=0.7.1
+pkgrel=1
pkgdesc="Notification daemon for the desktop notifications framework"
arch=(i686 x86_64 'mips64el')
license=('GPL')
url="http://www.galago-project.org/specs/notification/"
-depends=('libsexy>=0.1.11' 'libwnck>=2.28.0' 'gconf>=2.28.0' 'gstreamer0.10-base>=0.10.25' 'libnotify>=0.7.1' 'libglade>=2.6.4' 'hicolor-icon-theme')
+depends=('gtk3' 'libcanberra')
groups=('gnome')
-makedepends=('pkgconfig' 'intltool')
+makedepends=('pkgconfig' 'intltool' 'dbus-glib')
options=('!libtool' '!emptydirs')
-install=notification-daemon.install
-source=(http://www.galago-project.org/files/releases/source/${pkgname}/${pkgname}-${pkgver}.tar.bz2
- notification-daemon-0.4.0-libnotify-0.7.patch)
-md5sums=('e61eff9782551d81045bb53e8a801d58'
- '1708e98353cab38a7c057b4385826c04')
+source=(http://download.gnome.org/sources/${pkgname}/0.7/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('d26bf9021b3ae708d36e55437642a89d6b81693fe39d27c5d1ec869e22697b8b')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np1 -i "${srcdir}/notification-daemon-0.4.0-libnotify-0.7.patch"
- ./configure --prefix=/usr --sysconfdir=/etc \
- --libexecdir=/usr/lib/notification-daemon-1.0 \
- --localstatedir=/var --disable-static
- make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/notification-daemon-1.0 \
+ --localstatedir=/var --disable-static
+ make
+}
- install -d -m755 "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain notification-daemon ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR=${pkgdir} install
}
diff --git a/extra/ntfs-3g_ntfsprogs/25-ntfs-config-write-policy.fdi b/extra/ntfs-3g_ntfsprogs/25-ntfs-config-write-policy.fdi
new file mode 100644
index 000000000..54195d8b3
--- /dev/null
+++ b/extra/ntfs-3g_ntfsprogs/25-ntfs-config-write-policy.fdi
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<deviceinfo version="0.2">
+ <device>
+ <match key="volume.fstype" string="ntfs">
+ <append key="volume.fstype.alternative" type="copy_property">volume.fstype</append>
+ <merge key="volume.mount.ntfs.valid_options" type="copy_property">volume.mount.valid_options</merge>
+ <merge key="volume.unmount.ntfs.valid_options" type="copy_property">volume.unmount.valid_options</merge>
+ <merge key="volume.fstype" type="string">ntfs-3g</merge>
+ <merge key="volume.mount.valid_options" type="strlist">ro</merge>
+ <append key="volume.mount.valid_options" type="strlist">atime</append>
+ <append key="volume.mount.valid_options" type="strlist">noatime</append>
+ <append key="volume.mount.valid_options" type="strlist">relatime</append>
+ <append key="volume.mount.valid_options" type="strlist">fake_rw</append>
+ <append key="volume.mount.valid_options" type="strlist">no_def_opts</append>
+ <append key="volume.mount.valid_options" type="strlist">default_permissions</append>
+ <append key="volume.mount.valid_options" type="strlist">umask=</append>
+ <append key="volume.mount.valid_options" type="strlist">fmask=</append>
+ <append key="volume.mount.valid_options" type="strlist">dmask=</append>
+ <append key="volume.mount.valid_options" type="strlist">uid=</append>
+ <append key="volume.mount.valid_options" type="strlist">gid=</append>
+ <append key="volume.mount.valid_options" type="strlist">show_sys_files</append>
+ <append key="volume.mount.valid_options" type="strlist">silent</append>
+ <append key="volume.mount.valid_options" type="strlist">force</append>
+ <append key="volume.mount.valid_options" type="strlist">remove_hiberfile</append>
+ <append key="volume.mount.valid_options" type="strlist">locale=</append>
+ <append key="volume.mount.valid_options" type="strlist">streams_interface=</append>
+ <append key="volume.mount.valid_options" type="strlist">debug</append>
+ <append key="volume.mount.valid_options" type="strlist">no_detatch</append>
+ <append key="volume.mount.valid_options" type="strlist">sync</append>
+ <append key="volume.mount.valid_options" type="strlist">dirsync</append>
+ <append key="volume.mount.valid_options" type="strlist">nodiratime</append>
+ <append key="volume.mount.valid_options" type="strlist">noexec</append>
+ <append key="volume.mount.valid_options" type="strlist">quiet</append>
+ <append key="volume.mount.valid_options" type="strlist">remount</append>
+ <append key="volume.mount.valid_options" type="strlist">exec</append>
+ <append key="volume.mount.valid_options" type="strlist">recover</append>
+ <append key="volume.mount.valid_options" type="strlist">norecover</append>
+ <merge key="volume.unmount.valid_options" type="strlist">lazy</merge>
+ <merge key="volume.policy.mount_filesystem" type="string">ntfs-3g</merge>
+ </match>
+ </device>
+</deviceinfo>
diff --git a/extra/ntfs-3g_ntfsprogs/PKGBUILD b/extra/ntfs-3g_ntfsprogs/PKGBUILD
new file mode 100644
index 000000000..d9968d181
--- /dev/null
+++ b/extra/ntfs-3g_ntfsprogs/PKGBUILD
@@ -0,0 +1,47 @@
+# $Id: PKGBUILD 120898 2011-04-27 08:00:36Z ronald $
+# Maintainer: Ronald van Haren <ronald.archlinux.org>
+# Contributor: Thomas Bächler <thomas.archlinux.org>
+
+pkgbase=ntfs-3g_ntfsprogs
+pkgname=('ntfs-3g' 'ntfsprogs')
+pkgver=2011.4.12
+pkgrel=1
+url="http://www.tuxera.com"
+arch=('i686' 'x86_64')
+license=('GPL2')
+depends=('glibc' 'fuse')
+makedepends=('pkgconfig')
+options=('!libtool')
+source=(http://tuxera.com/opensource/${pkgbase}-${pkgver}.tgz
+ 25-ntfs-config-write-policy.fdi)
+sha1sums=('a4340ae611a3f26089f7d5601a86a5847517bff7'
+ '200029f2999a2c284fd30ae25734abf6459c3501')
+
+build() {
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ ac_cv_path_LDCONFIG=/bin/true ./configure --prefix=/usr \
+ --with-fuse=external --disable-static --disable-gnome-vfs \
+ --mandir=/usr/share/man
+ make
+}
+
+package_ntfs-3g() {
+ pkgdesc="Stable read and write NTFS driver"
+
+ for DIR in src libntfs-3g include; do
+ cd "${srcdir}/${pkgbase}-${pkgver}/${DIR}"
+ make DESTDIR="${pkgdir}" install
+ done
+
+ ln -s /bin/ntfs-3g "${pkgdir}/sbin/mount.ntfs"
+ install -m755 -d "${pkgdir}/usr/share/hal/fdi/policy/10osvendor"
+ install -m644 "${srcdir}/25-ntfs-config-write-policy.fdi" "${pkgdir}/usr/share/hal/fdi/policy/10osvendor/"
+}
+
+package_ntfsprogs() {
+ pkgdesc="NTFS filesystem utilities"
+ depends=('util-linux' 'ntfs-3g')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}/ntfsprogs"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/octave/PKGBUILD b/extra/octave/PKGBUILD
index 0c921a15f..59f6d7e5d 100644
--- a/extra/octave/PKGBUILD
+++ b/extra/octave/PKGBUILD
@@ -1,42 +1,38 @@
-# $Id: PKGBUILD 103149 2010-12-15 21:12:17Z ronald $
+# $Id: PKGBUILD 120945 2011-04-27 18:09:04Z ronald $
# Maintainer: Ronald van Haren <ronald.archlinux.org>
# Contributor : shining <shiningxc.at.gmail.com>
# Contributor : cyberdune <cyberdune@gmail.com>
pkgname=octave
-pkgver=3.2.4
+pkgver=3.4.0
pkgrel=2
pkgdesc="A high-level language, primarily intended for numerical computations."
arch=('i686' 'x86_64' 'mips64el')
url="http://www.octave.org"
license=('GPL')
-depends=('fftw' 'pcre' 'curl' 'lapack' 'libx11' 'graphicsmagick' 'glpk' 'hdf5' 'gcc-libs')
+depends=('fftw' 'pcre' 'curl' 'lapack' 'libx11' 'graphicsmagick' 'glpk' 'hdf5' 'gcc-libs' 'qhull')
makedepends=('texinfo' 'graphicsmagick' 'gcc-fortran' 'umfpack')
optdepends=('texinfo: for help-support in octave'
'gnuplot: alternative plotting'
'umfpack: LU decomposition of some large sparse matrices')
-source=("ftp://ftp.octave.org/pub/octave/octave-$pkgver.tar.bz2"
- 'octave-3.2.0_as_needed.patch' 'octave-3.2.0_parallel_make.patch' 'imread.patch')
+source=("ftp://ftp.gnu.org/gnu/octave/octave-$pkgver.tar.bz2"
+ octave-3.4.0-gcc46.patch)
options=('!emptydirs')
-install=octave.install
-md5sums=('608196657f4fa010420227b77333bb71'
- '33c8886cd908ace40f8b60334df1c34f'
- 'd59d783a8d7e8d8306caed4b2b8671a4'
- '72d33ba1a862244f970cf259923815d9')
+#install=octave.install
+sha1sums=('936a8fc962abd96e7568fb5909ec2a4d7997a1a8'
+ '791c905a80510783e5f9c556c12f02400887fbec')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
- # gentoo patches
- patch -Np1 -i ${srcdir}/octave-3.2.0_as_needed.patch
- patch -Np1 -i ${srcdir}/octave-3.2.0_parallel_make.patch
- patch -Np0 -i ${srcdir}/imread.patch
-
+ # fedora gcc46 patch
+ patch -Np1 -i ${srcdir}/octave-3.4.0-gcc46.patch
+
# http://www.nabble.com/Random-rounding-errors-td16010966.html
FFLAGS="-O -ffloat-store" \
./configure --prefix=/usr --libexecdir=/usr/lib \
- --enable-shared --disable-static
+ --enable-shared --disable-static --disable-docs
make
}
@@ -45,5 +41,4 @@ package(){
cd ${srcdir}/${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
-
}
diff --git a/extra/octave/octave-3.4.0-gcc46.patch b/extra/octave/octave-3.4.0-gcc46.patch
new file mode 100644
index 000000000..c174204ac
--- /dev/null
+++ b/extra/octave/octave-3.4.0-gcc46.patch
@@ -0,0 +1,24 @@
+diff -up octave-3.4.0/liboctave/oct-alloc.h.gcc46 octave-3.4.0/liboctave/oct-alloc.h
+--- octave-3.4.0/liboctave/oct-alloc.h.gcc46 2011-02-08 03:00:51.000000000 -0700
++++ octave-3.4.0/liboctave/oct-alloc.h 2011-02-08 09:41:23.984081687 -0700
+@@ -23,6 +23,8 @@ along with Octave; see the file COPYING.
+ #if !defined (octave_oct_alloc_h)
+ #define octave_oct_alloc_h 1
+
++#include <cstddef>
++
+ class
+ OCTAVE_API
+ octave_allocator
+diff -up octave-3.4.0/src/pr-output.cc.gcc46 octave-3.4.0/src/pr-output.cc
+--- octave-3.4.0/src/pr-output.cc.gcc46 2011-02-08 03:00:52.000000000 -0700
++++ octave-3.4.0/src/pr-output.cc 2011-02-08 09:55:16.149662744 -0700
+@@ -3024,7 +3024,7 @@ abs (T x)
+ }
+
+ #define INSTANTIATE_ABS(T) \
+- template /* static */ inline T abs (T)
++ template /* static */ T abs (T)
+
+ INSTANTIATE_ABS(signed char);
+ INSTANTIATE_ABS(short);
diff --git a/extra/opal/PKGBUILD b/extra/opal/PKGBUILD
index ab8f415d8..2b7321e6c 100644
--- a/extra/opal/PKGBUILD
+++ b/extra/opal/PKGBUILD
@@ -1,22 +1,26 @@
-# $Id: PKGBUILD 81960 2010-06-07 12:39:19Z jgc $
+# $Id: PKGBUILD 111695 2011-02-28 18:26:03Z heftig $
# Maintainer: Jan de Groot <jan@archlinux.org>
# Contributor: Tom K <tomk@runbox.com>
pkgname=opal
-pkgver=3.6.8
+pkgver=3.8.3
pkgrel=1
pkgdesc="Open Phone Abstraction Library"
arch=(i686 x86_64 'mips64el')
url="http://www.ekiga.org"
license=('GPL')
-depends=('ptlib=2.6.7' 'libtheora>=1.1.1' 'x264>=20100524' 'speex>=1.2rc1')
+depends=('ptlib' 'libtheora' 'x264' 'speex')
makedepends=('ffmpeg')
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/3.6/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('8cbfabb33e5c5563fdafacf1adde536c78638d6d020fae496a52e19e2be6a90c')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('d775626d786028357a8535fb2ff8f04bce9c1bff51db0e962f0939c2b988767f')
build() {
cd "${srcdir}/opal-${pkgver}"
CFLAGS="$CFLAGS -D__STDC_CONSTANT_MACROS" \
- ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var
+ make
+}
+
+package() {
+ cd "${srcdir}/opal-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/openmpi/PKGBUILD b/extra/openmpi/PKGBUILD
index 80f51118d..677f8cb56 100644
--- a/extra/openmpi/PKGBUILD
+++ b/extra/openmpi/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 115803 2011-03-21 16:10:23Z stephane $
+# $Id: PKGBUILD 121049 2011-04-28 16:03:46Z stephane $
# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
pkgname=openmpi
pkgver=1.5.3
-pkgrel=2
+pkgrel=3
pkgdesc="High performance message passing library (MPI)"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.open-mpi.org"
diff --git a/extra/orc/PKGBUILD b/extra/orc/PKGBUILD
index 1e0b644e0..902cf3a98 100644
--- a/extra/orc/PKGBUILD
+++ b/extra/orc/PKGBUILD
@@ -1,7 +1,7 @@
-# $Id: PKGBUILD 120120 2011-04-20 11:12:16Z ibiru $
+# $Id: PKGBUILD 121322 2011-04-30 15:14:10Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=orc
-pkgver=0.4.13
+pkgver=0.4.14
pkgrel=1
pkgdesc="The Oild Runtime Compiler"
arch=('i686' 'x86_64' 'mips64el')
@@ -10,7 +10,7 @@ url="http://code.entropywave.com/projects/orc/"
depends=('glibc')
options=('!libtool')
source=(http://code.entropywave.com/download/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-md5sums=('f6d0aed003f67c91933c22d9e5f1696a')
+md5sums=('6b3ff209e9763ebe40e152538884bd71')
build () {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/extra/pangomm/PKGBUILD b/extra/pangomm/PKGBUILD
index 593381056..e8f39abfc 100644
--- a/extra/pangomm/PKGBUILD
+++ b/extra/pangomm/PKGBUILD
@@ -1,18 +1,17 @@
-# $Id: PKGBUILD 5595 2008-07-18 21:58:26Z jgc $
+# $Id: PKGBUILD 116819 2011-03-25 21:50:27Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=pangomm
pkgname=('pangomm' 'pangomm-docs')
-pkgver=2.26.3
+pkgver=2.28.1
pkgrel=1
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-makedepends=('pango>=1.28.0' 'glibmm>=2.24.2' 'glibmm-docs>=2.24.2' 'cairomm>=1.8.2' 'pkgconfig')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.26/${pkgname}-${pkgver}.tar.bz2)
-conflicts=('gtkmm<2.13.0')
+makedepends=('pango' 'glibmm' 'glibmm-docs' 'cairomm' 'pkgconfig')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.28/${pkgname}-${pkgver}.tar.bz2)
options=('!libtool')
url="http://gtkmm.sourceforge.net/"
-md5sums=('1f2712d53918cfb4745c291a67b86156')
+sha256sums=('2c89b4460f88f8ece0e94a3332a804ca4858a3594abd84043b2898b61ab21c1b')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -21,7 +20,7 @@ build() {
}
package_pangomm() {
pkgdesc="C++ bindings for pango"
- depends=('pango>=1.28.0' 'glibmm>=2.24.2' 'cairomm>=1.8.2')
+ depends=('pango' 'glibmm' 'cairomm')
cd "${srcdir}/${pkgbase}-${pkgver}"
sed -i -e 's/^doc_subdirs/#doc_subdirs/' Makefile
make DESTDIR="${pkgdir}" install
diff --git a/extra/pidgin/PKGBUILD b/extra/pidgin/PKGBUILD
index 0a469fa3c..868e0937c 100644
--- a/extra/pidgin/PKGBUILD
+++ b/extra/pidgin/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 114233 2011-03-11 11:07:24Z ibiru $
+# $Id: PKGBUILD 114320 2011-03-12 12:41:32Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Alexander Fehr <pizzapunk gmail com>
@@ -7,7 +7,7 @@
pkgbase=('pidgin')
pkgname=('libpurple' 'pidgin' 'finch')
pkgver=2.7.11
-pkgrel=1
+pkgrel=2
arch=('i686' 'x86_64' 'mips64el')
url="http://pidgin.im/"
license=('GPL')
diff --git a/extra/pmount/PKGBUILD b/extra/pmount/PKGBUILD
index dce36d685..908d7acdd 100644
--- a/extra/pmount/PKGBUILD
+++ b/extra/pmount/PKGBUILD
@@ -1,23 +1,22 @@
-# $Id: PKGBUILD 84000 2010-06-25 09:22:24Z tpowa $
+# $Id: PKGBUILD 119797 2011-04-15 09:29:18Z jgc $
# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
pkgname=pmount
pkgver=0.9.23
-pkgrel=1
+pkgrel=2
pkgdesc="mount removable devices as normal user"
arch=(i686 x86_64 'mips64el')
license=('GPL2')
url="http://pmount.alioth.debian.org/"
backup=('etc/pmount.allow')
depends=('sysfsutils>=2.0.0-1' 'bash')
-optdepends=('hal: needed for pmount-hal')
-makedepends=('intltool' 'hal')
+makedepends=('intltool')
source=(https://alioth.debian.org/frs/download.php/3310/pmount-0.9.23.tar.bz2)
+md5sums=('db19f5bf3151b1b41705ec7bafa439d3')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- ./configure --prefix=/usr --with-cryptsetup-prog=/sbin/cryptsetup || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ ./configure --prefix=/usr --disable-hal
+ make
+ make DESTDIR="${pkgdir}" install
}
-md5sums=('db19f5bf3151b1b41705ec7bafa439d3')
diff --git a/extra/polkit-gnome/PKGBUILD b/extra/polkit-gnome/PKGBUILD
index 565773877..bb6bd296d 100644
--- a/extra/polkit-gnome/PKGBUILD
+++ b/extra/polkit-gnome/PKGBUILD
@@ -1,26 +1,33 @@
+# $Id: PKGBUILD 117304 2011-03-30 19:38:26Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: onestep_ua <onestep@ukr.net>
pkgname=polkit-gnome
-pkgver=0.99
-pkgrel=1
+pkgver=0.101
+pkgrel=2
pkgdesc="PolicyKit integration for the GNOME desktop"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.freedesktop.org/wiki/Software/PolicyKit"
license=('LGPL')
-depends=('polkit>=0.99' 'gtk2>=2.22.0')
+depends=('polkit>=0.101' 'gtk3')
makedepends=('intltool' 'gobject-introspection')
-replaces=('policykit-gnome')
-options=(!libtool !makeflags)
-source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('f1a2565083266bc8c05c60aa7d8a0f6a')
+options=(!libtool)
+source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.bz2
+ polkit-gnome-authentication-agent-1.desktop)
+md5sums=('da6aaff473ed80f8958fd6f67a59defe'
+ '5668cffbfd031452c86db8adceba79b5')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- sed -i -e 's/OnlyShowIn=GNOME/NotShowIn=KDE/' src/polkit-gnome-authentication-agent-1.desktop.in.in
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --libexecdir=/usr/lib/polkit-gnome \
- --disable-static --disable-introspection
+ --disable-static --with-gtk=3.0
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ install -Dm644 "${srcdir}/polkit-gnome-authentication-agent-1.desktop" \
+ "${pkgdir}/etc/xdg/autostart/polkit-gnome-authentication-agent-1.desktop"
}
diff --git a/extra/polkit-gnome/polkit-gnome-authentication-agent-1.desktop b/extra/polkit-gnome/polkit-gnome-authentication-agent-1.desktop
new file mode 100644
index 000000000..2016294e9
--- /dev/null
+++ b/extra/polkit-gnome/polkit-gnome-authentication-agent-1.desktop
@@ -0,0 +1,88 @@
+[Desktop Entry]
+Name=PolicyKit Authentication Agent
+Name[ar]=مدير الاستيثاق PolicyKit
+Name[be]=PolicyKit - аґент аўтÑнтыфікацыі
+Name[bn_IN]=PolicyKit অনà§à¦®à§‹à¦¦à¦¨à§‡à¦° à¦à¦œà§‡à¦¨à§à¦Ÿ
+Name[ca]=Agent d'autenticació del PolicyKit
+Name[cs]=Ověřovací agent PolicyKit
+Name[da]=Godkendelsesprogrammet PolicyKit
+Name[de]=Legitimationsdienst von PolicyKit
+Name[el]=ΠÏάκτοÏας πιστοποίησης PolicyKit
+Name[en_GB]=PolicyKit Authentication Agent
+Name[es]=Agente de autenticación de PolicyKit
+Name[eu]=PolicyKit autentifikatzeko agentea
+Name[fi]=PolicytKit-tunnistautumisohjelma
+Name[fr]=Agent d'authentification de PolicyKit
+Name[gl]=Axente de autenticación PolicyKit
+Name[gu]=PolicyKit સતà«àª¤àª¾àª§àª¿àª•àª°àª£ àªàªœàª¨à«àªŸ
+Name[hi]=PolicyKit पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ पà¥à¤°à¤¤à¤¿à¤¨à¤¿à¤§à¤¿
+Name[hu]=PolicyKit hitelesítési ügynök
+Name[it]=Agente di autenticazione per PolicyKit
+Name[ja]=PolicyKit èªè¨¼ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆ
+Name[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧà³à²¯à²µà²°à³à²¤à²¿
+Name[lt]=PolicyKit tapatybÄ—s nustatymo agentas
+Name[ml]=പോളിസികàµà´•à´¿à´±àµà´±àµ ഓഥനàµà´±à´¿à´•àµà´•àµ‡à´·à´¨àµâ€ à´à´œà´¨àµà´±àµ
+Name[mr]=PolicyKit ऑथेंटीकेशन à¤à¤œà¥‡à¤‚ट
+Name[or]=PolicyKit ବୈଧିକରଣ ସଦସà­à­Ÿ
+Name[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ à¨à¨œà©°à¨Ÿ
+Name[pl]=Agent uwierzytelniania PolicyKit
+Name[pt]=Agente de Autenticação PolicyKit
+Name[pt_BR]=Agente de autenticação PolicyKit
+Name[ro]=Agent de autentificare PolicyKit
+Name[sk]=Agent PolicyKit na overovanie totožnosti
+Name[sl]=PolicyKit program overjanja
+Name[sv]=Autentiseringsagent för PolicyKit
+Name[ta]=PolicyKit à®…à®™à¯à®•à¯€à®•à®¾à®° à®®à¯à®•à®µà®°à¯
+Name[te]=పాలసీకిటౠధృవీకరణ à°ªà±à°°à°¤à°¿à°¨à°¿à°§à°¿
+Name[th]=ตัวà¸à¸¥à¸²à¸‡à¸ªà¸³à¸«à¸£à¸±à¸šà¸¢à¸·à¸™à¸¢à¸±à¸™à¸•à¸±à¸§à¸šà¸¸à¸„คล PolicyKit
+Name[uk]=Ðгент автентифікації PolicyKit
+Name[zh_CN]=PolicyKit 认è¯ä»£ç†
+Name[zh_HK]=PolicyKit 驗證代ç†ç¨‹å¼
+Name[zh_TW]=PolicyKit 驗證代ç†ç¨‹å¼
+Comment=PolicyKit Authentication Agent
+Comment[ar]=مدير الاستيثاق PolicyKit
+Comment[be]=PolicyKit - аґент аўтÑнтыфікацыі
+Comment[bn_IN]=PolicyKit অনà§à¦®à§‹à¦¦à¦¨à§‡à¦° à¦à¦œà§‡à¦¨à§à¦Ÿ
+Comment[ca]=Agent d'autenticació del PolicyKit
+Comment[cs]=Ověřovací agent PolicyKit
+Comment[da]=Godkendelsesprogrammet PolicyKit
+Comment[de]=Legitimationsdienst von PolicyKit
+Comment[el]=ΠÏάκτοÏας πιστοποίησης PolicyKit
+Comment[en_GB]=PolicyKit Authentication Agent
+Comment[es]=Agente de autenticación de PolicyKit
+Comment[eu]=PolicyKit autentifikatzeko agentea
+Comment[fi]=PolicytKit-tunnistautumisohjelma
+Comment[fr]=Agent d'authentification de PolicyKit
+Comment[gl]=Axente de autenticación PolicyKit
+Comment[gu]=PolicyKit સતà«àª¤àª¾àª§àª¿àª•àª°àª£ àªàªœàª¨à«àªŸ
+Comment[hi]=PolicyKit पà¥à¤°à¤®à¤¾à¤£à¥€à¤•à¤°à¤£ पà¥à¤°à¤¤à¤¿à¤¨à¤¿à¤§à¤¿
+Comment[hu]=PolicyKit hitelesítési ügynök
+Comment[it]=Agente di autenticazione per PolicyKit
+Comment[ja]=PolicyKit èªè¨¼ã‚¨ãƒ¼ã‚¸ã‚§ãƒ³ãƒˆ
+Comment[kn]=PolicyKit ದೃಢೀಕರಣ ಮಧà³à²¯à²µà²°à³à²¤à²¿
+Comment[lt]=PolicyKit tapatybÄ—s nustatymo agentas
+Comment[ml]=പോളിസികàµà´•à´¿à´±àµà´±àµ ഓഥനàµà´±à´¿à´•àµà´•àµ‡à´·à´¨àµâ€ à´à´œà´¨àµà´±àµ
+Comment[mr]=PolicyKit ऑथेंटीकेशन à¤à¤œà¥‡à¤‚ट
+Comment[or]=PolicyKit ବୈଧିକରଣ ସଦସà­à­Ÿ
+Comment[pa]=ਪਾਲਸੀਕਿੱਟ ਪਰਮਾਣਕਿਤਾ à¨à¨œà©°à¨Ÿ
+Comment[pl]=Agent uwierzytelniania PolicyKit
+Comment[pt]=Agente de Autenticação PolicyKit
+Comment[pt_BR]=Agente de autenticação PolicyKit
+Comment[ro]=Agent de autentificare PolicyKit
+Comment[sk]=Agent PolicyKit na overovanie totožnosti
+Comment[sl]=PolicyKit program overjanja
+Comment[sv]=Autentiseringsagent för PolicyKit
+Comment[ta]=PolicyKit à®…à®™à¯à®•à¯€à®•à®¾à®° à®®à¯à®•à®µà®°à¯
+Comment[te]=పాలసీకిటౠధృవీకరణ à°ªà±à°°à°¤à°¿à°¨à°¿à°§à°¿
+Comment[th]=ตัวà¸à¸¥à¸²à¸‡à¸ªà¸³à¸«à¸£à¸±à¸šà¸¢à¸·à¸™à¸¢à¸±à¸™à¸•à¸±à¸§à¸šà¸¸à¸„คล PolicyKit
+Comment[uk]=Ðгент автентифікації PolicyKit
+Comment[zh_CN]=PolicyKit 认è¯ä»£ç†
+Comment[zh_HK]=PolicyKit 驗證代ç†ç¨‹å¼
+Comment[zh_TW]=PolicyKit 驗證代ç†ç¨‹å¼
+Exec=/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
+Terminal=false
+Type=Application
+Categories=
+NoDisplay=true
+NotShowIn=KDE;
+AutostartCondition=GNOME3 if-session gnome-fallback
diff --git a/extra/polkit/CVE-2011-1485.patch b/extra/polkit/CVE-2011-1485.patch
new file mode 100644
index 000000000..f7054a63a
--- /dev/null
+++ b/extra/polkit/CVE-2011-1485.patch
@@ -0,0 +1,908 @@
+From dd848a42a64a3b22a0cc60f6657b56ce9b6010ae Mon Sep 17 00:00:00 2001
+From: David Zeuthen <davidz@redhat.com>
+Date: Thu, 31 Mar 2011 16:59:09 +0000
+Subject: PolkitUnixProcess: Clarify that the real uid is returned, not the effective one
+
+On Linux, also switch to parsing /proc/<pid>/status instead of relying
+on the st_uid returned by stat(2) to be the uid we want.
+
+This was pointed out by Neel Mehta <nmehta@google.com>. Thanks!
+
+Signed-off-by: David Zeuthen <davidz@redhat.com>
+---
+diff --git a/src/polkit/polkitunixprocess.c b/src/polkit/polkitunixprocess.c
+index d95a1d4..876da69 100644
+--- a/src/polkit/polkitunixprocess.c
++++ b/src/polkit/polkitunixprocess.c
+@@ -24,9 +24,7 @@
+ #endif
+
+ #include <sys/types.h>
+-#ifndef HAVE_FREEBSD
+-#include <sys/stat.h>
+-#else
++#ifdef HAVE_FREEBSD
+ #include <sys/param.h>
+ #include <sys/sysctl.h>
+ #include <sys/user.h>
+@@ -34,6 +32,7 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <errno.h>
++#include <stdio.h>
+
+ #include "polkitunixprocess.h"
+ #include "polkitsubject.h"
+@@ -208,6 +207,8 @@ polkit_unix_process_get_pid (PolkitUnixProcess *process)
+ *
+ * Gets the uid of the owner of @process.
+ *
++ * Note that this returns the real user-id (not the effective user-id) of @process.
++ *
+ * Returns: The UNIX user id of the owner for @process or 0 if @error is set.
+ **/
+ gint
+@@ -215,17 +216,21 @@ polkit_unix_process_get_owner (PolkitUnixProcess *process,
+ GError **error)
+ {
+ gint result;
++ gchar *contents;
++ gchar **lines;
+ #ifdef HAVE_FREEBSD
+ struct kinfo_proc p;
+ #else
+- struct stat statbuf;
+- char procbuf[32];
++ gchar filename[64];
++ guint n;
+ #endif
+
+ g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0);
+ g_return_val_if_fail (error == NULL || *error == NULL, 0);
+
+ result = 0;
++ lines = NULL;
++ contents = NULL;
+
+ #ifdef HAVE_FREEBSD
+ if (get_kinfo_proc (process->pid, &p) == 0)
+@@ -241,23 +246,52 @@ polkit_unix_process_get_owner (PolkitUnixProcess *process,
+
+ result = p.ki_uid;
+ #else
+- g_snprintf (procbuf, sizeof procbuf, "/proc/%d", process->pid);
+- if (stat (procbuf, &statbuf) != 0)
++
++ /* see 'man proc' for layout of the status file
++ *
++ * Uid, Gid: Real, effective, saved set, and file system UIDs (GIDs).
++ */
++ g_snprintf (filename, sizeof filename, "/proc/%d/status", process->pid);
++ if (!g_file_get_contents (filename,
++ &contents,
++ NULL,
++ error))
+ {
+- g_set_error (error,
+- POLKIT_ERROR,
+- POLKIT_ERROR_FAILED,
+- "stat() failed for /proc/%d: %s",
+- process->pid,
+- g_strerror (errno));
+ goto out;
+ }
++ lines = g_strsplit (contents, "\n", -1);
++ for (n = 0; lines != NULL && lines[n] != NULL; n++)
++ {
++ gint real_uid, effective_uid;
++ if (!g_str_has_prefix (lines[n], "Uid:"))
++ continue;
++ if (sscanf (lines[n] + 4, "%d %d", &real_uid, &effective_uid) != 2)
++ {
++ g_set_error (error,
++ POLKIT_ERROR,
++ POLKIT_ERROR_FAILED,
++ "Unexpected line `%s' in file %s",
++ lines[n],
++ filename);
++ goto out;
++ }
++ else
++ {
++ result = real_uid;
++ goto out;
++ }
++ }
+
+- result = statbuf.st_uid;
++ g_set_error (error,
++ POLKIT_ERROR,
++ POLKIT_ERROR_FAILED,
++ "Didn't find any line starting with `Uid:' in file %s",
++ filename);
+ #endif
+
+- out:
+-
++out:
++ g_strfreev (lines);
++ g_free (contents);
+ return result;
+ }
+
+--
+cgit v0.8.3-6-g21f6
+From 129b6223a19e7fb2753f8cad7957ac5402394076 Mon Sep 17 00:00:00 2001
+From: David Zeuthen <davidz@redhat.com>
+Date: Fri, 01 Apr 2011 16:09:45 +0000
+Subject: Make PolkitUnixProcess also record the uid of the process
+
+This is needed to avoid possible TOCTTOU issues since a process can
+change both its real uid and effective uid.
+
+Signed-off-by: David Zeuthen <davidz@redhat.com>
+---
+diff --git a/docs/polkit/polkit-1-sections.txt b/docs/polkit/polkit-1-sections.txt
+index 12141e3..9f4fcf8 100644
+--- a/docs/polkit/polkit-1-sections.txt
++++ b/docs/polkit/polkit-1-sections.txt
+@@ -145,10 +145,13 @@ POLKIT_UNIX_SESSION_GET_CLASS
+ PolkitUnixProcess
+ polkit_unix_process_new
+ polkit_unix_process_new_full
++polkit_unix_process_new_for_owner
++polkit_unix_process_set_pid
+ polkit_unix_process_get_pid
++polkit_unix_process_set_start_time
+ polkit_unix_process_get_start_time
+-polkit_unix_process_set_pid
+-polkit_unix_process_get_owner
++polkit_unix_process_set_uid
++polkit_unix_process_get_uid
+ <SUBSECTION Standard>
+ PolkitUnixProcessClass
+ POLKIT_UNIX_PROCESS
+diff --git a/src/polkit/polkitsubject.c b/src/polkit/polkitsubject.c
+index 577afec..d2c4c20 100644
+--- a/src/polkit/polkitsubject.c
++++ b/src/polkit/polkitsubject.c
+@@ -238,13 +238,18 @@ polkit_subject_from_string (const gchar *str,
+ {
+ gint scanned_pid;
+ guint64 scanned_starttime;
+- if (sscanf (str, "unix-process:%d:%" G_GUINT64_FORMAT, &scanned_pid, &scanned_starttime) == 2)
++ gint scanned_uid;
++ if (sscanf (str, "unix-process:%d:%" G_GUINT64_FORMAT ":%d", &scanned_pid, &scanned_starttime, &scanned_uid) == 3)
++ {
++ subject = polkit_unix_process_new_for_owner (scanned_pid, scanned_starttime, scanned_uid);
++ }
++ else if (sscanf (str, "unix-process:%d:%" G_GUINT64_FORMAT, &scanned_pid, &scanned_starttime) == 2)
+ {
+ subject = polkit_unix_process_new_full (scanned_pid, scanned_starttime);
+ }
+ else if (sscanf (str, "unix-process:%d", &scanned_pid) == 1)
+ {
+- subject = polkit_unix_process_new_full (scanned_pid, 0);
++ subject = polkit_unix_process_new (scanned_pid);
+ if (polkit_unix_process_get_start_time (POLKIT_UNIX_PROCESS (subject)) == 0)
+ {
+ g_object_unref (subject);
+@@ -297,6 +302,8 @@ polkit_subject_to_gvariant (PolkitSubject *subject)
+ g_variant_new_uint32 (polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject))));
+ g_variant_builder_add (&builder, "{sv}", "start-time",
+ g_variant_new_uint64 (polkit_unix_process_get_start_time (POLKIT_UNIX_PROCESS (subject))));
++ g_variant_builder_add (&builder, "{sv}", "uid",
++ g_variant_new_int32 (polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject))));
+ }
+ else if (POLKIT_IS_UNIX_SESSION (subject))
+ {
+@@ -395,6 +402,7 @@ polkit_subject_new_for_gvariant (GVariant *variant,
+ GVariant *v;
+ guint32 pid;
+ guint64 start_time;
++ gint32 uid;
+
+ v = lookup_asv (details_gvariant, "pid", G_VARIANT_TYPE_UINT32, error);
+ if (v == NULL)
+@@ -414,7 +422,18 @@ polkit_subject_new_for_gvariant (GVariant *variant,
+ start_time = g_variant_get_uint64 (v);
+ g_variant_unref (v);
+
+- ret = polkit_unix_process_new_full (pid, start_time);
++ v = lookup_asv (details_gvariant, "uid", G_VARIANT_TYPE_INT32, error);
++ if (v != NULL)
++ {
++ uid = g_variant_get_int32 (v);
++ g_variant_unref (v);
++ }
++ else
++ {
++ uid = -1;
++ }
++
++ ret = polkit_unix_process_new_for_owner (pid, start_time, uid);
+ }
+ else if (g_strcmp0 (kind, "unix-session") == 0)
+ {
+diff --git a/src/polkit/polkitunixprocess.c b/src/polkit/polkitunixprocess.c
+index 876da69..913be3a 100644
+--- a/src/polkit/polkitunixprocess.c
++++ b/src/polkit/polkitunixprocess.c
+@@ -62,6 +62,7 @@ struct _PolkitUnixProcess
+
+ gint pid;
+ guint64 start_time;
++ gint uid;
+ };
+
+ struct _PolkitUnixProcessClass
+@@ -74,6 +75,7 @@ enum
+ PROP_0,
+ PROP_PID,
+ PROP_START_TIME,
++ PROP_UID
+ };
+
+ static void subject_iface_init (PolkitSubjectIface *subject_iface);
+@@ -81,6 +83,9 @@ static void subject_iface_init (PolkitSubjectIface *subject_iface);
+ static guint64 get_start_time_for_pid (gint pid,
+ GError **error);
+
++static gint _polkit_unix_process_get_owner (PolkitUnixProcess *process,
++ GError **error);
++
+ #ifdef HAVE_FREEBSD
+ static gboolean get_kinfo_proc (gint pid, struct kinfo_proc *p);
+ #endif
+@@ -92,6 +97,7 @@ G_DEFINE_TYPE_WITH_CODE (PolkitUnixProcess, polkit_unix_process, G_TYPE_OBJECT,
+ static void
+ polkit_unix_process_init (PolkitUnixProcess *unix_process)
+ {
++ unix_process->uid = -1;
+ }
+
+ static void
+@@ -108,6 +114,10 @@ polkit_unix_process_get_property (GObject *object,
+ g_value_set_int (value, unix_process->pid);
+ break;
+
++ case PROP_UID:
++ g_value_set_int (value, unix_process->uid);
++ break;
++
+ case PROP_START_TIME:
+ g_value_set_uint64 (value, unix_process->start_time);
+ break;
+@@ -132,6 +142,14 @@ polkit_unix_process_set_property (GObject *object,
+ polkit_unix_process_set_pid (unix_process, g_value_get_int (value));
+ break;
+
++ case PROP_UID:
++ polkit_unix_process_set_uid (unix_process, g_value_get_int (value));
++ break;
++
++ case PROP_START_TIME:
++ polkit_unix_process_set_start_time (unix_process, g_value_get_uint64 (value));
++ break;
++
+ default:
+ G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
+ break;
+@@ -139,12 +157,39 @@ polkit_unix_process_set_property (GObject *object,
+ }
+
+ static void
++polkit_unix_process_constructed (GObject *object)
++{
++ PolkitUnixProcess *process = POLKIT_UNIX_PROCESS (object);
++
++ /* sets start_time and uid in case they are unset */
++
++ if (process->start_time == 0)
++ process->start_time = get_start_time_for_pid (process->pid, NULL);
++
++ if (process->uid == -1)
++ {
++ GError *error;
++ error = NULL;
++ process->uid = _polkit_unix_process_get_owner (process, &error);
++ if (error != NULL)
++ {
++ process->uid = -1;
++ g_error_free (error);
++ }
++ }
++
++ if (G_OBJECT_CLASS (polkit_unix_process_parent_class)->constructed != NULL)
++ G_OBJECT_CLASS (polkit_unix_process_parent_class)->constructed (object);
++}
++
++static void
+ polkit_unix_process_class_init (PolkitUnixProcessClass *klass)
+ {
+ GObjectClass *gobject_class = G_OBJECT_CLASS (klass);
+
+ gobject_class->get_property = polkit_unix_process_get_property;
+ gobject_class->set_property = polkit_unix_process_set_property;
++ gobject_class->constructed = polkit_unix_process_constructed;
+
+ /**
+ * PolkitUnixProcess:pid:
+@@ -156,7 +201,7 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass)
+ g_param_spec_int ("pid",
+ "Process ID",
+ "The UNIX process ID",
+- -1,
++ 0,
+ G_MAXINT,
+ 0,
+ G_PARAM_CONSTRUCT |
+@@ -166,6 +211,27 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass)
+ G_PARAM_STATIC_NICK));
+
+ /**
++ * PolkitUnixProcess:uid:
++ *
++ * The UNIX user id of the process or -1 if unknown.
++ *
++ * Note that this is the real user-id, not the effective user-id.
++ */
++ g_object_class_install_property (gobject_class,
++ PROP_UID,
++ g_param_spec_int ("uid",
++ "User ID",
++ "The UNIX user ID",
++ -1,
++ G_MAXINT,
++ -1,
++ G_PARAM_CONSTRUCT |
++ G_PARAM_READWRITE |
++ G_PARAM_STATIC_NAME |
++ G_PARAM_STATIC_BLURB |
++ G_PARAM_STATIC_NICK));
++
++ /**
+ * PolkitUnixProcess:start-time:
+ *
+ * The start time of the process.
+@@ -178,7 +244,8 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass)
+ 0,
+ G_MAXUINT64,
+ 0,
+- G_PARAM_READABLE |
++ G_PARAM_CONSTRUCT |
++ G_PARAM_READWRITE |
+ G_PARAM_STATIC_NAME |
+ G_PARAM_STATIC_BLURB |
+ G_PARAM_STATIC_NICK));
+@@ -186,113 +253,50 @@ polkit_unix_process_class_init (PolkitUnixProcessClass *klass)
+ }
+
+ /**
+- * polkit_unix_process_get_pid:
++ * polkit_unix_process_get_uid:
+ * @process: A #PolkitUnixProcess.
+ *
+- * Gets the process id for @process.
++ * Gets the user id for @process. Note that this is the real user-id,
++ * not the effective user-id.
+ *
+- * Returns: The process id for @process.
++ * Returns: The user id for @process or -1 if unknown.
+ */
+ gint
+-polkit_unix_process_get_pid (PolkitUnixProcess *process)
++polkit_unix_process_get_uid (PolkitUnixProcess *process)
+ {
+- g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0);
+- return process->pid;
++ g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), -1);
++ return process->uid;
+ }
+
+ /**
+- * polkit_unix_process_get_owner:
++ * polkit_unix_process_set_uid:
+ * @process: A #PolkitUnixProcess.
+- * @error: (allow-none): Return location for error or %NULL.
++ * @uid: The user id to set for @process or -1 to unset it.
+ *
+- * Gets the uid of the owner of @process.
++ * Sets the (real, not effective) user id for @process.
++ */
++void
++polkit_unix_process_set_uid (PolkitUnixProcess *process,
++ gint uid)
++{
++ g_return_if_fail (POLKIT_IS_UNIX_PROCESS (process));
++ g_return_if_fail (uid >= -1);
++ process->uid = uid;
++}
++
++/**
++ * polkit_unix_process_get_pid:
++ * @process: A #PolkitUnixProcess.
+ *
+- * Note that this returns the real user-id (not the effective user-id) of @process.
++ * Gets the process id for @process.
+ *
+- * Returns: The UNIX user id of the owner for @process or 0 if @error is set.
+- **/
++ * Returns: The process id for @process.
++ */
+ gint
+-polkit_unix_process_get_owner (PolkitUnixProcess *process,
+- GError **error)
++polkit_unix_process_get_pid (PolkitUnixProcess *process)
+ {
+- gint result;
+- gchar *contents;
+- gchar **lines;
+-#ifdef HAVE_FREEBSD
+- struct kinfo_proc p;
+-#else
+- gchar filename[64];
+- guint n;
+-#endif
+-
+ g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0);
+- g_return_val_if_fail (error == NULL || *error == NULL, 0);
+-
+- result = 0;
+- lines = NULL;
+- contents = NULL;
+-
+-#ifdef HAVE_FREEBSD
+- if (get_kinfo_proc (process->pid, &p) == 0)
+- {
+- g_set_error (error,
+- POLKIT_ERROR,
+- POLKIT_ERROR_FAILED,
+- "get_kinfo_proc() failed for pid %d: %s",
+- process->pid,
+- g_strerror (errno));
+- goto out;
+- }
+-
+- result = p.ki_uid;
+-#else
+-
+- /* see 'man proc' for layout of the status file
+- *
+- * Uid, Gid: Real, effective, saved set, and file system UIDs (GIDs).
+- */
+- g_snprintf (filename, sizeof filename, "/proc/%d/status", process->pid);
+- if (!g_file_get_contents (filename,
+- &contents,
+- NULL,
+- error))
+- {
+- goto out;
+- }
+- lines = g_strsplit (contents, "\n", -1);
+- for (n = 0; lines != NULL && lines[n] != NULL; n++)
+- {
+- gint real_uid, effective_uid;
+- if (!g_str_has_prefix (lines[n], "Uid:"))
+- continue;
+- if (sscanf (lines[n] + 4, "%d %d", &real_uid, &effective_uid) != 2)
+- {
+- g_set_error (error,
+- POLKIT_ERROR,
+- POLKIT_ERROR_FAILED,
+- "Unexpected line `%s' in file %s",
+- lines[n],
+- filename);
+- goto out;
+- }
+- else
+- {
+- result = real_uid;
+- goto out;
+- }
+- }
+-
+- g_set_error (error,
+- POLKIT_ERROR,
+- POLKIT_ERROR_FAILED,
+- "Didn't find any line starting with `Uid:' in file %s",
+- filename);
+-#endif
+-
+-out:
+- g_strfreev (lines);
+- g_free (contents);
+- return result;
++ return process->pid;
+ }
+
+ /**
+@@ -311,6 +315,21 @@ polkit_unix_process_get_start_time (PolkitUnixProcess *process)
+ }
+
+ /**
++ * polkit_unix_process_set_start_time:
++ * @process: A #PolkitUnixProcess.
++ * @start_time: The start time for @pid.
++ *
++ * Set the start time of @process.
++ */
++void
++polkit_unix_process_set_start_time (PolkitUnixProcess *process,
++ guint64 start_time)
++{
++ g_return_if_fail (POLKIT_IS_UNIX_PROCESS (process));
++ process->start_time = start_time;
++}
++
++/**
+ * polkit_unix_process_set_pid:
+ * @process: A #PolkitUnixProcess.
+ * @pid: A process id.
+@@ -323,18 +342,17 @@ polkit_unix_process_set_pid (PolkitUnixProcess *process,
+ {
+ g_return_if_fail (POLKIT_IS_UNIX_PROCESS (process));
+ process->pid = pid;
+- if (pid != (gint) -1)
+- process->start_time = get_start_time_for_pid (pid, NULL);
+ }
+
+ /**
+ * polkit_unix_process_new:
+ * @pid: The process id.
+ *
+- * Creates a new #PolkitUnixProcess for @pid. The start time of the
+- * process will be looked up in using e.g. the
+- * <filename>/proc</filename> filesystem depending on the platform in
+- * use.
++ * Creates a new #PolkitUnixProcess for @pid.
++ *
++ * The uid and start time of the process will be looked up in using
++ * e.g. the <filename>/proc</filename> filesystem depending on the
++ * platform in use.
+ *
+ * Returns: (transfer full): A #PolkitSubject. Free with g_object_unref().
+ */
+@@ -353,22 +371,42 @@ polkit_unix_process_new (gint pid)
+ *
+ * Creates a new #PolkitUnixProcess object for @pid and @start_time.
+ *
++ * The uid of the process will be looked up in using e.g. the
++ * <filename>/proc</filename> filesystem depending on the platform in
++ * use.
++ *
+ * Returns: (transfer full): A #PolkitSubject. Free with g_object_unref().
+ */
+ PolkitSubject *
+ polkit_unix_process_new_full (gint pid,
+ guint64 start_time)
+ {
+- PolkitUnixProcess *process;
+-
+- process = POLKIT_UNIX_PROCESS (polkit_unix_process_new ((gint) -1));
+- process->pid = pid;
+- if (start_time != 0)
+- process->start_time = start_time;
+- else
+- process->start_time = get_start_time_for_pid (pid, NULL);
++ return POLKIT_SUBJECT (g_object_new (POLKIT_TYPE_UNIX_PROCESS,
++ "pid", pid,
++ "start_time", start_time,
++ NULL));
++}
+
+- return POLKIT_SUBJECT (process);
++/**
++ * polkit_unix_process_new_for_owner:
++ * @pid: The process id.
++ * @start_time: The start time for @pid or 0 to look it up in e.g. <filename>/proc</filename>.
++ * @uid: The (real, not effective) uid of the owner of @pid or -1 to look it up in e.g. <filename>/proc</filename>.
++ *
++ * Creates a new #PolkitUnixProcess object for @pid, @start_time and @uid.
++ *
++ * Returns: (transfer full): A #PolkitSubject. Free with g_object_unref().
++ */
++PolkitSubject *
++polkit_unix_process_new_for_owner (gint pid,
++ guint64 start_time,
++ gint uid)
++{
++ return POLKIT_SUBJECT (g_object_new (POLKIT_TYPE_UNIX_PROCESS,
++ "pid", pid,
++ "start_time", start_time,
++ "uid", uid,
++ NULL));
+ }
+
+ static guint
+@@ -616,3 +654,95 @@ out:
+
+ return start_time;
+ }
++
++static gint
++_polkit_unix_process_get_owner (PolkitUnixProcess *process,
++ GError **error)
++{
++ gint result;
++ gchar *contents;
++ gchar **lines;
++#ifdef HAVE_FREEBSD
++ struct kinfo_proc p;
++#else
++ gchar filename[64];
++ guint n;
++#endif
++
++ g_return_val_if_fail (POLKIT_IS_UNIX_PROCESS (process), 0);
++ g_return_val_if_fail (error == NULL || *error == NULL, 0);
++
++ result = 0;
++ lines = NULL;
++ contents = NULL;
++
++#ifdef HAVE_FREEBSD
++ if (get_kinfo_proc (process->pid, &p) == 0)
++ {
++ g_set_error (error,
++ POLKIT_ERROR,
++ POLKIT_ERROR_FAILED,
++ "get_kinfo_proc() failed for pid %d: %s",
++ process->pid,
++ g_strerror (errno));
++ goto out;
++ }
++
++ result = p.ki_uid;
++#else
++
++ /* see 'man proc' for layout of the status file
++ *
++ * Uid, Gid: Real, effective, saved set, and file system UIDs (GIDs).
++ */
++ g_snprintf (filename, sizeof filename, "/proc/%d/status", process->pid);
++ if (!g_file_get_contents (filename,
++ &contents,
++ NULL,
++ error))
++ {
++ goto out;
++ }
++ lines = g_strsplit (contents, "\n", -1);
++ for (n = 0; lines != NULL && lines[n] != NULL; n++)
++ {
++ gint real_uid, effective_uid;
++ if (!g_str_has_prefix (lines[n], "Uid:"))
++ continue;
++ if (sscanf (lines[n] + 4, "%d %d", &real_uid, &effective_uid) != 2)
++ {
++ g_set_error (error,
++ POLKIT_ERROR,
++ POLKIT_ERROR_FAILED,
++ "Unexpected line `%s' in file %s",
++ lines[n],
++ filename);
++ goto out;
++ }
++ else
++ {
++ result = real_uid;
++ goto out;
++ }
++ }
++
++ g_set_error (error,
++ POLKIT_ERROR,
++ POLKIT_ERROR_FAILED,
++ "Didn't find any line starting with `Uid:' in file %s",
++ filename);
++#endif
++
++out:
++ g_strfreev (lines);
++ g_free (contents);
++ return result;
++}
++
++/* deprecated public method */
++gint
++polkit_unix_process_get_owner (PolkitUnixProcess *process,
++ GError **error)
++{
++ return _polkit_unix_process_get_owner (process, error);
++}
+diff --git a/src/polkit/polkitunixprocess.h b/src/polkit/polkitunixprocess.h
+index b88cd03..531a57d 100644
+--- a/src/polkit/polkitunixprocess.h
++++ b/src/polkit/polkitunixprocess.h
+@@ -47,16 +47,24 @@ typedef struct _PolkitUnixProcess PolkitUnixProcess;
+ typedef struct _PolkitUnixProcessClass PolkitUnixProcessClass;
+
+ GType polkit_unix_process_get_type (void) G_GNUC_CONST;
+-PolkitSubject *polkit_unix_process_new (gint pid);
+-PolkitSubject *polkit_unix_process_new_full (gint pid,
+- guint64 start_time);
+-
++PolkitSubject *polkit_unix_process_new (gint pid);
++PolkitSubject *polkit_unix_process_new_full (gint pid,
++ guint64 start_time);
++PolkitSubject *polkit_unix_process_new_for_owner (gint pid,
++ guint64 start_time,
++ gint uid);
+ gint polkit_unix_process_get_pid (PolkitUnixProcess *process);
+ guint64 polkit_unix_process_get_start_time (PolkitUnixProcess *process);
++gint polkit_unix_process_get_uid (PolkitUnixProcess *process);
+ void polkit_unix_process_set_pid (PolkitUnixProcess *process,
+ gint pid);
++void polkit_unix_process_set_uid (PolkitUnixProcess *process,
++ gint uid);
++void polkit_unix_process_set_start_time (PolkitUnixProcess *process,
++ guint64 start_time);
++
+ gint polkit_unix_process_get_owner (PolkitUnixProcess *process,
+- GError **error);
++ GError **error) G_GNUC_DEPRECATED_FOR (polkit_unix_process_get_uid);
+
+ G_END_DECLS
+
+--
+cgit v0.8.3-6-g21f6
+From c23d74447c7615dc74dae259f0fc3688ec988867 Mon Sep 17 00:00:00 2001
+From: David Zeuthen <davidz@redhat.com>
+Date: Fri, 01 Apr 2011 16:12:27 +0000
+Subject: Use polkit_unix_process_get_uid() to get the owner of a process
+
+This avoids a TOCTTOU problem.
+
+Signed-off-by: David Zeuthen <davidz@redhat.com>
+---
+diff --git a/src/polkitbackend/polkitbackendsessionmonitor.c b/src/polkitbackend/polkitbackendsessionmonitor.c
+index 495f752..9c331b6 100644
+--- a/src/polkitbackend/polkitbackendsessionmonitor.c
++++ b/src/polkitbackend/polkitbackendsessionmonitor.c
+@@ -293,14 +293,15 @@ polkit_backend_session_monitor_get_user_for_subject (PolkitBackendSessionMonitor
+
+ if (POLKIT_IS_UNIX_PROCESS (subject))
+ {
+- local_error = NULL;
+- uid = polkit_unix_process_get_owner (POLKIT_UNIX_PROCESS (subject), &local_error);
+- if (local_error != NULL)
++ uid = polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject));
++ if ((gint) uid == -1)
+ {
+- g_propagate_prefixed_error (error, local_error, "Error getting user for process: ");
++ g_set_error (error,
++ POLKIT_ERROR,
++ POLKIT_ERROR_FAILED,
++ "Unix process subject does not have uid set");
+ goto out;
+ }
+-
+ ret = polkit_unix_user_new (uid);
+ }
+ else if (POLKIT_IS_SYSTEM_BUS_NAME (subject))
+--
+cgit v0.8.3-6-g21f6
+From 3b12cfac29dddd27f1f166a7574d8374cc1dccf2 Mon Sep 17 00:00:00 2001
+From: David Zeuthen <davidz@redhat.com>
+Date: Fri, 01 Apr 2011 16:13:15 +0000
+Subject: pkexec: Avoid TOCTTOU problems with parent process
+
+In a nutshell, the parent process may change its uid (either real- or
+effective uid) after launching pkexec. It can do this by exec()'ing
+e.g. a setuid root program.
+
+To avoid this problem, just use the uid the parent process had when it
+executed pkexec. This happens to be the same uid of the pkexec process
+itself.
+
+Additionally, remove some dubious code that allowed pkexec to continue
+when the parent process died as there is no reason to support
+something like that. Also ensure that the pkexec process is killed if
+the parent process dies.
+
+This problem was pointed out by Neel Mehta <nmehta@google.com>.
+
+Signed-off-by: David Zeuthen <davidz@redhat.com>
+---
+diff --git a/src/programs/pkexec.c b/src/programs/pkexec.c
+index 9217954..3e656be 100644
+--- a/src/programs/pkexec.c
++++ b/src/programs/pkexec.c
+@@ -35,6 +35,10 @@
+ #include <pwd.h>
+ #include <errno.h>
+
++#ifdef __linux__
++#include <sys/prctl.h>
++#endif
++
+ #include <glib/gi18n.h>
+
+ #ifdef POLKIT_AUTHFW_PAM
+@@ -423,7 +427,6 @@ main (int argc, char *argv[])
+ GPtrArray *saved_env;
+ gchar *opt_user;
+ pid_t pid_of_caller;
+- uid_t uid_of_caller;
+ gpointer local_agent_handle;
+
+ ret = 127;
+@@ -598,40 +601,49 @@ main (int argc, char *argv[])
+ */
+ g_type_init ();
+
+- /* now check if the program that invoked us is authorized */
++ /* make sure we are nuked if the parent process dies */
++#ifdef __linux__
++ if (prctl (PR_SET_PDEATHSIG, SIGTERM) != 0)
++ {
++ g_printerr ("prctl(PR_SET_PDEATHSIG, SIGTERM) failed: %s\n", g_strerror (errno));
++ goto out;
++ }
++#else
++#warning "Please add OS specific code to catch when the parent dies"
++#endif
++
++ /* Figure out the parent process */
+ pid_of_caller = getppid ();
+ if (pid_of_caller == 1)
+ {
+ /* getppid() can return 1 if the parent died (meaning that we are reaped
+- * by /sbin/init); get process group leader instead - for example, this
+- * happens when launching via gnome-panel (alt+f2, then 'pkexec gedit').
++ * by /sbin/init); In that case we simpy bail.
+ */
+- pid_of_caller = getpgrp ();
+- }
+-
+- subject = polkit_unix_process_new (pid_of_caller);
+- if (subject == NULL)
+- {
+- g_printerr ("No such process for pid %d: %s\n", (gint) pid_of_caller, error->message);
+- g_error_free (error);
++ g_printerr ("Refusing to render service to dead parents.\n");
+ goto out;
+ }
+
+- /* paranoia: check that the uid of pid_of_caller matches getuid() */
+- error = NULL;
+- uid_of_caller = polkit_unix_process_get_owner (POLKIT_UNIX_PROCESS (subject),
+- &error);
+- if (error != NULL)
+- {
+- g_printerr ("Error determing pid of caller (pid %d): %s\n", (gint) pid_of_caller, error->message);
+- g_error_free (error);
+- goto out;
+- }
+- if (uid_of_caller != getuid ())
+- {
+- g_printerr ("User of caller (%d) does not match our uid (%d)\n", uid_of_caller, getuid ());
+- goto out;
+- }
++ /* This process we want to check an authorization for is the process
++ * that launched us - our parent process.
++ *
++ * At the time the parent process fork()'ed and exec()'ed us, the
++ * process had the same real-uid that we have now. So we use this
++ * real-uid instead of of looking it up to avoid TOCTTOU issues
++ * (consider the parent process exec()'ing a setuid helper).
++ *
++ * On the other hand, the monotonic process start-time is guaranteed
++ * to never change so it's safe to look that up given only the PID
++ * since we are guaranteed to be nuked if the parent goes away
++ * (cf. the prctl(2) call above).
++ */
++ subject = polkit_unix_process_new_for_owner (pid_of_caller,
++ 0, /* 0 means "look up start-time in /proc" */
++ getuid ());
++ /* really double-check the invariants guaranteed by the PolkitUnixProcess class */
++ g_assert (subject != NULL);
++ g_assert (polkit_unix_process_get_pid (POLKIT_UNIX_PROCESS (subject)) == pid_of_caller);
++ g_assert (polkit_unix_process_get_uid (POLKIT_UNIX_PROCESS (subject)) >= 0);
++ g_assert (polkit_unix_process_get_start_time (POLKIT_UNIX_PROCESS (subject)) > 0);
+
+ error = NULL;
+ authority = polkit_authority_get_sync (NULL /* GCancellable* */, &error);
+--
+cgit v0.8.3-6-g21f6
diff --git a/extra/polkit/PKGBUILD b/extra/polkit/PKGBUILD
index 51b95feb5..fadb173be 100644
--- a/extra/polkit/PKGBUILD
+++ b/extra/polkit/PKGBUILD
@@ -1,24 +1,27 @@
-# $Id: PKGBUILD 102286 2010-12-07 09:10:30Z jgc $
+# $Id: PKGBUILD 120110 2011-04-20 09:34:59Z jgc $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=polkit
-pkgver=0.99
-pkgrel=1
+pkgver=0.101
+pkgrel=2
pkgdesc="Application development toolkit for controlling system-wide privileges"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
url="http://www.freedesktop.org/wiki/Software/PolicyKit"
-depends=('glib2>=2.26.0' 'pam' 'expat>=2.0.1')
-makedepends=('intltool>=0.41.1' 'gtk-doc>=1.15' 'gobject-introspection>=0.9.5')
+depends=('glib2' 'pam' 'expat')
+makedepends=('intltool' 'gtk-doc' 'gobject-introspection')
replaces=('policykit')
options=('!libtool')
source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz
+ CVE-2011-1485.patch
polkit.pam)
-md5sums=('fcc4d7b19c08ad54d3ce0eae0ab12398'
+md5sums=('f925ac93aba3c072977370c1e27feb7f'
+ '4d858b8ab602614d7db2bc8574f6fd29'
'6564f95878297b954f0572bc1610dd15')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -Np1 -i "${srcdir}/CVE-2011-1485.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --libexecdir=/usr/lib/polkit-1 \
--disable-static --enable-gtk-doc
diff --git a/extra/ptlib/PKGBUILD b/extra/ptlib/PKGBUILD
index fcca1694a..863d7c4d2 100644
--- a/extra/ptlib/PKGBUILD
+++ b/extra/ptlib/PKGBUILD
@@ -1,18 +1,18 @@
-# $Id: PKGBUILD 81955 2010-06-07 12:18:47Z jgc $
+# $Id: PKGBUILD 111692 2011-02-28 18:24:37Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=ptlib
-pkgver=2.6.7
+pkgver=2.8.3
pkgrel=1
pkgdesc="Portable Windows Library"
arch=(i686 x86_64 'mips64el')
url="http://www.ekiga.org/"
license=('GPL')
-depends=('gcc-libs>=4.5.0' 'openssl' 'alsa-lib>=1.0.21.a' 'sdl>=1.2.14' 'libv4l>=0.6.4' 'expat>=2.0.1')
+depends=('gcc-libs' 'openssl' 'alsa-lib' 'sdl' 'expat' 'libpulse' 'v4l-utils')
replaces=('pwlib')
conflicts=('pwlib')
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/2.6/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('7dd28225fedd21154d34899b21ee4b6d27c88eb1a9f9931c8e6ced28e8f3b97f')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('076afde4e53e5fd0989adc344c3741aea8342b105c3e879e2f4f9a42ef36793e')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -23,7 +23,11 @@ build() {
--disable-avc --enable-sdl \
--enable-ipv6 --enable-v4l \
--enable-dc --disable-odbc \
- --enable-expat --enable-httpforms || return 1
- make || return 1
- make DESTDIR="${pkgdir}" install || return 1
+ --enable-expat --enable-httpforms
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/pygobject/PKGBUILD b/extra/pygobject/PKGBUILD
index 389e502ea..243834e80 100644
--- a/extra/pygobject/PKGBUILD
+++ b/extra/pygobject/PKGBUILD
@@ -1,28 +1,75 @@
-# $Id: PKGBUILD 104901 2011-01-05 14:19:02Z ibiru $
+# $Id: PKGBUILD 120090 2011-04-19 21:33:57Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
-pkgname=pygobject
-pkgver=2.26.0
-pkgrel=2
-pkgdesc="Python bindings for GObject"
+pkgbase=pygobject
+pkgname=(pygobject py3gobject pygobject-devel)
+pkgver=2.28.4
+pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('python2' 'glib2>=2.26.0' 'pycairo>=1.8.10' 'gobject-introspection>=0.9.6')
-source=(http://ftp.gnome.org/pub/gnome/sources/pygobject/2.26/${pkgname}-${pkgver}.tar.bz2)
+depends=('glib2' 'gobject-introspection')
+makedepends=(python python2 python-cairo python2-cairo)
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/${pkgver%.*}/${pkgbase}-${pkgver}.tar.bz2)
options=('!libtool')
url="http://www.pygtk.org/"
-sha256sums=('5554acff9c27b647144143b0459359864e4a6f2ff62c7ba21cf310ad755cf7c7')
+sha256sums=('70e3a05dd5f688e68b5dafa2412cd4fdbc0af83792a5752ef6353c4accf2022c')
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- PYTHON=python2 ./configure --prefix=/usr
- make
+ cd "${srcdir}"
+ cp -a "${pkgbase}-${pkgver}" python2-build
+ mkdir devel
+
+ (
+ cd python2-build
+ export PYTHON=/usr/bin/python2
+ ./configure --prefix=/usr
+ make
+ )
+
+ (
+ cd "${pkgbase}-${pkgver}"
+ ./configure --prefix=/usr
+ make
+ )
}
-package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+package_pygobject() {
+ pkgdesc="Python 2 bindings for GObject"
+ depends+=('python2' 'python2-cairo' 'pygobject-devel')
+
+ cd "${srcdir}/python2-build"
make DESTDIR="${pkgdir}" install
find "$pkgdir"/usr/share/pygobject -name '*.py' | \
xargs sed -i "s|#![ ]*/usr/bin/env python$|#!/usr/bin/env python2|"
+
+ # Split devel stuff
+ mv "$pkgdir"/usr/{bin,include,lib/pkgconfig,share/{gtk-doc,pygobject/{2.0/codegen,xsl}}} \
+ "$srcdir/devel/"
+}
+
+package_py3gobject() {
+ pkgdesc="Python 3 bindings for GObject"
+ depends+=('python' 'python-cairo' 'pygobject-devel')
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ # Delete devel stuff
+ rm -r "$pkgdir"/usr/{bin,include,lib/pkgconfig,share/{gtk-doc,pygobject/{2.0/codegen,xsl}}}
+}
+
+package_pygobject-devel() {
+ pkgdesc="Development files for the pygobject bindings"
+ depends=(python2)
+
+ cd "${srcdir}/devel"
+ mkdir -p "$pkgdir"/usr/{include,lib,share/pygobject/2.0}
+
+ mv bin "$pkgdir/usr/"
+ mv include "$pkgdir/usr/"
+ mv pkgconfig "$pkgdir/usr/lib/"
+ mv gtk-doc "$pkgdir/usr/share/"
+ mv codegen "$pkgdir/usr/share/pygobject/2.0/"
+ mv xsl "$pkgdir/usr/share/pygobject/"
}
diff --git a/extra/pygtk/PKGBUILD b/extra/pygtk/PKGBUILD
index 2d635a4bf..a099c4521 100644
--- a/extra/pygtk/PKGBUILD
+++ b/extra/pygtk/PKGBUILD
@@ -1,27 +1,29 @@
-# $Id: PKGBUILD 101297 2010-11-28 20:54:23Z ibiru $
+# $Id: PKGBUILD 117387 2011-04-01 12:58:54Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Sarah Hay <sarahhay@mb.sympatico.ca>
pkgname=pygtk
-pkgver=2.22.0
-pkgrel=3
+pkgver=2.24.0
+pkgrel=1
pkgdesc="Python bindings for the GTK widget set"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('libglade>=2.6.4' 'pycairo>=1.8.10' 'pygobject>=2.21.5')
-makedepends=('python-numpy')
+depends=('libglade' 'python2-cairo' 'pygobject')
+makedepends=('python-numpy' 'pygobject-devel')
optdepends=('python-numpy')
options=('!libtool')
url="http://www.pygtk.org/"
-source=(http://ftp.gnome.org/pub/gnome/sources/pygtk/2.22/${pkgname}-${pkgver}.tar.bz2
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2
python27.patch)
-sha256sums=('4acf0ef2bde8574913c40ee4a43d9c4f43bb77b577b67147271b534501a54cc8'
+sha256sums=('cd1c1ea265bd63ff669e92a2d3c2a88eb26bcd9e5363e0f82c896e649f206912'
'39a30456cba055a452bb55c74ef1ff2f5f7bfaad22855b4dd569ab009b56b682')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+
#https://bugzilla.gnome.org/show_bug.cgi?id=623965
patch -Np1 -i "${srcdir}/python27.patch"
+
PYTHON=python2 ./configure --prefix=/usr
make
}
@@ -29,6 +31,7 @@ build() {
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
- sed -i -e 's#env python$#env python2#' "${pkgdir}"/usr/lib/pygtk/2.0/{,demos/}*.py
install -m644 gtk/gtk-extrafuncs.defs "${pkgdir}/usr/share/pygtk/2.0/defs/"
+
+ sed -i -e 's#env python$#env python2#' "${pkgdir}"/usr/lib/pygtk/2.0/{,demos/}*.py
}
diff --git a/extra/python-cairo/PKGBUILD b/extra/python-cairo/PKGBUILD
index ad19c9cc4..116763cc8 100644
--- a/extra/python-cairo/PKGBUILD
+++ b/extra/python-cairo/PKGBUILD
@@ -1,20 +1,19 @@
-# $Id: PKGBUILD 110756 2011-02-22 02:50:48Z stephane $
+# $Id: PKGBUILD 121116 2011-04-29 03:02:02Z angvp $
+# Maintainer: Angel Velasquez <angvp@archlinux.org>
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=python-cairo
-pkgver=1.8.10
-pkgrel=2
+pkgver=1.10.0
+pkgrel=1
pkgdesc="Python bindings for the cairo graphics library"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL3')
depends=('python' 'cairo')
makedepends=('pkg-config')
options=('!libtool')
-source=(http://cairographics.org/releases/pycairo-${pkgver}.tar.bz2
- pycairo-1.8.10-pypath.patch)
+source=(http://cairographics.org/releases/pycairo-${pkgver}.tar.bz2)
url="http://www.cairographics.org/pycairo"
-md5sums=('ddc544943d791e3c22ca8f019e10e1e3'
- '047cfe0a98cfa73a156cd70e70082325')
+md5sums=('e6fd3f2f1e6a72e0db0868c4985669c5')
build() {
cd "${srcdir}/pycairo-${pkgver}"
@@ -31,7 +30,6 @@ build() {
# Patch the unpacked version of waf:
pushd .waf3*
- patch -Np0 -i ../../pycairo-1.8.10-pypath.patch
popd
./waf configure --prefix=/usr
diff --git a/extra/pywebkitgtk/PKGBUILD b/extra/pywebkitgtk/PKGBUILD
index d74f297ae..6acf5f0b5 100644
--- a/extra/pywebkitgtk/PKGBUILD
+++ b/extra/pywebkitgtk/PKGBUILD
@@ -3,7 +3,7 @@
pkgname=pywebkitgtk
pkgver=1.1.7
-pkgrel=4
+pkgrel=5
pkgdesc="Python bindings to the WebKit GTK+ port"
arch=('i686' 'x86_64' 'mips64el')
url="http://code.google.com/p/pywebkitgtk/"
diff --git a/extra/qhull/PKGBUILD b/extra/qhull/PKGBUILD
new file mode 100644
index 000000000..ebd94380f
--- /dev/null
+++ b/extra/qhull/PKGBUILD
@@ -0,0 +1,49 @@
+# $Id: PKGBUILD 120895 2011-04-27 06:52:39Z ronald $
+# Maintainer: Ronald van Haren <ronald@archlinux.org>
+# Contributor: Stefan Husmann <stefan-husmann@t-online.de>
+# Contributor: Jason Taylor <jftaylor21@gmail.com>
+# Contributor: Darwin Bautista <djclue917@gmail.com>
+
+pkgname=qhull
+pkgver=2010.1
+pkgrel=1
+pkgdesc="A general dimension code for computing convex hulls and related structures"
+arch=('i686' 'x86_64')
+url="http://www.qhull.org/"
+license=('custom')
+depends=('glibc')
+makedepends=('cmake')
+source=(http://www.qhull.org/download/$pkgname-$pkgver-src.tgz
+ qhull-2010.1-cmake-install.patch
+ qhull-2010.1-overflows.patch)
+options=('!libtool')
+sha1sums=('ed480912e03efdd767195c06c7e8c252c78112b1'
+ '0a7747eb13c2e07c25882c1f0f5c0dfb4ef1c8c0'
+ '21295d57af2f8cdfc775512fa44fe90f49d89c41')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ # gentoo patches
+ patch -Np1 -i ${srcdir}/qhull-2010.1-cmake-install.patch
+ patch -Np1 -i ${srcdir}/qhull-2010.1-overflows.patch
+
+ [ -d build ] || mkdir build
+ cd build
+ cmake -DCMAKE_INSTALL_PREFIX=/usr -DDOC_INSTALL_DIR=/usr/share/doc \
+ -DLIB_INSTALL_DIR=/usr/lib ..
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver/build"
+
+ make DESTDIR=$pkgdir install
+
+ # install manpages
+ install -Dm644 $srcdir/$pkgname-$pkgver/html/rbox.man $pkgdir/usr/share/man/man1/rbox.1
+ install -Dm644 $srcdir/$pkgname-$pkgver/html/qhull.man $pkgdir/usr/share/man/man1/qhull.1
+
+ # Install license
+ install -Dm644 $srcdir/$pkgname-$pkgver/COPYING.txt "$pkgdir/usr/share/licenses/$pkgname/license.txt"
+}
diff --git a/extra/qhull/qhull-2010.1-cmake-install.patch b/extra/qhull/qhull-2010.1-cmake-install.patch
new file mode 100644
index 000000000..9e1914d13
--- /dev/null
+++ b/extra/qhull/qhull-2010.1-cmake-install.patch
@@ -0,0 +1,98 @@
+diff -Nur qhull-2010.1.orig/CMakeLists.txt qhull-2010.1/CMakeLists.txt
+--- qhull-2010.1.orig/CMakeLists.txt 2010-10-03 23:04:04.000000000 +0100
++++ qhull-2010.1/CMakeLists.txt 2010-10-03 23:26:54.000000000 +0100
+@@ -1,8 +1,44 @@
+ project(qhull)
+-cmake_minimum_required(VERSION 2.4)
+-if(COMMAND cmake_policy)
+- cmake_policy(SET CMP0003 NEW)
+-endif(COMMAND cmake_policy)
++cmake_minimum_required(VERSION 2.6)
++
++
++set(QHULL_VERSION "2010.1")
++
++if(INCLUDE_INSTALL_DIR)
++else()
++set(INCLUDE_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/include)
++endif()
++if(LIB_INSTALL_DIR)
++else()
++set(LIB_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/lib)
++endif()
++if(BIN_INSTALL_DIR)
++else()
++set(BIN_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/bin)
++endif()
++if(DOC_INSTALL_DIR)
++else()
++set(DOC_INSTALL_DIR ${CMAKE_INSTALL_PREFIX}/share/doc/qhull)
++endif()
++
++message(STATUS)
++message(STATUS "========== qhull Build Information ==========")
++message(STATUS "Build Version: ${QHULL_VERSION}")
++message(STATUS "Install Prefix (CMAKE_INSTALL_PREFIX): ${CMAKE_INSTALL_PREFIX}")
++message(STATUS "Binary Directory (BIN_INSTALL_DIR): ${BIN_INSTALL_DIR}")
++message(STATUS "Library Directory (LIB_INSTALL_DIR): ${LIB_INSTALL_DIR}")
++message(STATUS "Include Directory (INCLUDE_INSTALL_DIR): ${INCLUDE_INSTALL_DIR}")
++message(STATUS "Documentation Directory (DOC_INSTALL_DIR): ${DOC_INSTALL_DIR}")
++message(STATUS)
++message(STATUS "To change any of these options, override them using -D{OPTION_NAME} on the commandline.")
++message(STATUS "To build and install qhull, run \"make\" and \"make install\"")
++message(STATUS)
++
+
+ add_subdirectory(src)
++option(WITH_STATIC_LIBS "Build with a static library" OFF)
++option(WITH_DOCS "Install HTML documentation" OFF)
+
++if (WITH_DOCS)
++install(DIRECTORY html/ DESTINATION ${DOC_INSTALL_DIR})
++endif (WITH_DOCS)
+diff -Nur qhull-2010.1.orig/src/CMakeLists.txt qhull-2010.1/src/CMakeLists.txt
+--- qhull-2010.1.orig/src/CMakeLists.txt 2010-10-03 23:04:04.000000000 +0100
++++ qhull-2010.1/src/CMakeLists.txt 2010-10-04 00:23:47.000000000 +0100
+@@ -23,8 +23,25 @@
+
+ file(GLOB qhull_hdr *.h)
+
+-add_library(qhull ${qhull_src})
++add_library(qhull SHARED ${qhull_src})
+ target_link_libraries(qhull m)
++if(UNIX)
++ if(APPLE)
++ set_target_properties(qhull PROPERTIES
++ INSTALL_NAME_DIR "${LIB_INSTALL_DIR}")
++ else(APPLE)
++ set_target_properties(qhull PROPERTIES
++ INSTALL_RPATH "${LIB_INSTALL_DIR}"
++ INSTALL_RPATH_USE_LINK_PATH TRUE
++ BUILD_WITH_INSTALL_RPATH FALSE)
++ endif(APPLE)
++endif(UNIX)
++
++if(WITH_STATIC_LIBS)
++ add_library(qhullstatic STATIC ${qhull_src})
++ set_property(TARGET qhullstatic PROPERTY OUTPUT_NAME "qhull")
++ install(TARGETS qhullstatic ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
++endif(WITH_STATIC_LIBS)
+
+ set(qhullcmd_SOURCES unix.c)
+ set(rbox_SOURCES rbox.c)
+@@ -36,6 +53,7 @@
+
+ add_executable(qhullcmd ${qhullcmd_SOURCES})
+ target_link_libraries(qhullcmd qhull)
++set_property(TARGET qhullcmd PROPERTY OUTPUT_NAME "qhull")
+
+ add_executable(rbox ${rbox_SOURCES})
+ target_link_libraries(rbox qhull)
+@@ -52,3 +70,7 @@
+ add_executable(qhalf ${qhalf_SOURCES})
+ target_link_libraries(qhalf qhull)
+
++install(TARGETS qhull qhullcmd rbox qconvex qdelaunay qvoronoi qhalf
++ RUNTIME DESTINATION ${BIN_INSTALL_DIR}
++ LIBRARY DESTINATION ${LIB_INSTALL_DIR})
++install(FILES ${qhull_hdr} DESTINATION ${INCLUDE_INSTALL_DIR}/qhull)
diff --git a/extra/qhull/qhull-2010.1-overflows.patch b/extra/qhull/qhull-2010.1-overflows.patch
new file mode 100644
index 000000000..df4aa3da1
--- /dev/null
+++ b/extra/qhull/qhull-2010.1-overflows.patch
@@ -0,0 +1,50 @@
+From 176c01851026125f574a8223ad49ec58b2b58ec0 Mon Sep 17 00:00:00 2001
+From: Johannes Obermayr <johannesobermayr@gmx.de>
+Date: Fri, 23 Jul 2010 20:02:19 +0200
+Subject: [PATCH] Fix some serious compiler warnings causing build breakage on openSUSE.
+
+---
+ src/global.c | 2 +-
+ src/rboxlib.c | 6 +++---
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git a/src/global.c b/src/global.c
+index 3c6141a..4c9f56c 100644
+--- a/src/global.c
++++ b/src/global.c
+@@ -614,7 +614,7 @@ void qh_initflags(char *command) {
+ if (command <= &qh qhull_command[0] || command > &qh qhull_command[0] + sizeof(qh qhull_command)) {
+ if (command != &qh qhull_command[0]) {
+ *qh qhull_command= '\0';
+- strncat( qh qhull_command, command, sizeof( qh qhull_command));
++ strncat(qh qhull_command, command, sizeof(qh qhull_command)-strlen(qh qhull_command)-1);
+ }
+ while (*s && !isspace(*s)) /* skip program name */
+ s++;
+diff --git a/src/rboxlib.c b/src/rboxlib.c
+index 4f11d22..17d01ac 100644
+--- a/src/rboxlib.c
++++ b/src/rboxlib.c
+@@ -124,7 +124,7 @@ int qh_rboxpoints(FILE* fout, FILE* ferr, char* rbox_command) {
+ }
+
+ *command= '\0';
+- strncat(command, rbox_command, sizeof(command));
++ strncat(command, rbox_command, sizeof(command)-strlen(command)-1);
+
+ while (*s && !isspace(*s)) /* skip program name */
+ s++;
+@@ -346,8 +346,8 @@ int qh_rboxpoints(FILE* fout, FILE* ferr, char* rbox_command) {
+ }
+ }else if (israndom) {
+ seed= (int)time(&timedata);
+- sprintf(seedbuf, " t%d", seed); /* appends an extra t, not worth removing */
+- strncat(command, seedbuf, sizeof(command));
++ printf(seedbuf, " t%d", seed); /* appends an extra t, not worth removing */
++ strncat(command, seedbuf, sizeof(command)-strlen(command)-1);
+ t= strstr(command, " t ");
+ if (t)
+ strcpy(t+1, t+3); /* remove " t " */
+--
+1.6.1
+
diff --git a/extra/raptor/PKGBUILD b/extra/raptor/PKGBUILD
index 1d96722b3..c41f00a3f 100644
--- a/extra/raptor/PKGBUILD
+++ b/extra/raptor/PKGBUILD
@@ -1,27 +1,27 @@
-# $Id: PKGBUILD 102988 2010-12-13 20:32:09Z andyrtr $
+# $Id: PKGBUILD 115794 2011-03-21 16:03:23Z andyrtr $
# Maintainer: Andreas Radke <andyrtr at archlinux.org>
# Contributor: eric <eric@archlinux.org>
# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
pkgname=raptor
-pkgver=1.4.21
-pkgrel=2
+pkgver=2.0.2
+pkgrel=1
pkgdesc="A C library that parses RDF/XML/N-Triples into RDF triples"
arch=('i686' 'x86_64' 'mips64el')
url="http://librdf.org/raptor"
depends=('libxml2>=2.7.8' 'curl>=7.21.2' 'zlib>=1.2.5' 'libxslt>=1.1.26')
license=('LGPL')
options=('!libtool')
-source=(http://librdf.org/dist/source/$pkgname-$pkgver.tar.gz)
-md5sums=('992061488af7a9e2d933df6b694bb876')
+source=(http://librdf.org/dist/source/raptor2-$pkgver.tar.gz)
+md5sums=('b0f874c200c4b3214b5bf4806ae82353')
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/raptor2-${pkgver}
./configure --prefix=/usr --disable-static
make
}
package() {
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/raptor2-${pkgver}
make prefix=${pkgdir}/usr install
}
diff --git a/extra/raptor1/PKGBUILD b/extra/raptor1/PKGBUILD
new file mode 100644
index 000000000..c50886bde
--- /dev/null
+++ b/extra/raptor1/PKGBUILD
@@ -0,0 +1,30 @@
+# $Id: PKGBUILD 110599 2011-02-20 15:52:07Z andyrtr $
+# Maintainer: Andreas Radke <andyrtr at archlinux.org>
+# Contributor: eric <eric@archlinux.org>
+# Contributor: Damir Perisa <damir.perisa@bluewin.ch>
+
+pkgname=raptor1
+pkgver=1.4.21
+pkgrel=3
+pkgdesc="A C library that parses RDF/XML/N-Triples into RDF triples - old V1 api for compatibility"
+arch=('i686' 'x86_64')
+url="http://librdf.org/raptor"
+depends=('libxml2' 'curl' 'zlib' 'libxslt')
+license=('LGPL')
+options=('!libtool' '!docs')
+source=(http://librdf.org/dist/source/raptor-$pkgver.tar.gz)
+md5sums=('992061488af7a9e2d933df6b694bb876')
+
+build() {
+ cd ${srcdir}/raptor-${pkgver}
+ ./configure --prefix=/usr --disable-static
+ make
+}
+
+package() {
+ cd ${srcdir}/raptor-${pkgver}
+ make prefix=${pkgdir}/usr install
+
+ mv ${pkgdir}/usr/bin/rapper ${pkgdir}/usr/bin/rapperV1
+ rm -f ${pkgdir}/usr/share/man/man1/rapper.1
+}
diff --git a/extra/rasqal/PKGBUILD b/extra/rasqal/PKGBUILD
index b7d631f3c..5ada50032 100644
--- a/extra/rasqal/PKGBUILD
+++ b/extra/rasqal/PKGBUILD
@@ -1,16 +1,19 @@
-# $Id: PKGBUILD 102968 2010-12-13 19:43:14Z andyrtr $
+# $Id: PKGBUILD 120960 2011-04-27 19:27:24Z andrea $
# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Contributor: Lawrence Lee <valheru@facticius.net>
pkgname=rasqal
+epoch=1
pkgver=0.9.21
pkgrel=1
-pkgdesc="a free C library that handles Resource Description Framework (RDF) query syntaxes, query construction and query execution returning result bindings"
+pkgdesc="A free C library that handles Resource Description Framework (RDF) query syntaxes, query construction and query execution returning result bindings"
url="http://librdf.org/rasqal"
license=('GPL' 'LGPL')
arch=('i686' 'x86_64' 'mips64el')
-depends=('raptor>=1.4.21' 'mpfr')
+depends=('raptor1' 'mpfr')
options=('!libtool')
+replaces=('rasqal-compat')
+conflicts=('rasqal-compat')
source=(http://download.librdf.org/source/${pkgname}-${pkgver}.tar.gz)
md5sums=('55b67ec92a059ef8979d46486b00a032')
@@ -18,8 +21,7 @@ build() {
cd ${srcdir}/${pkgname}-${pkgver}
./configure --prefix=/usr \
--disable-static \
- --enable-release \
- --with-raptor=system
+ --enable-release
make
}
diff --git a/extra/redland/PKGBUILD b/extra/redland/PKGBUILD
index 3233cd6ab..02ae91e1b 100644
--- a/extra/redland/PKGBUILD
+++ b/extra/redland/PKGBUILD
@@ -1,18 +1,19 @@
-# $Id: PKGBUILD 115186 2011-03-17 11:09:01Z andrea $
+# $Id: PKGBUILD 120965 2011-04-27 19:29:40Z andrea $
# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Contributor: Francois Charette <francois.archlinux.org>
pkgbase=redland
+epoch=1
pkgname=('redland' 'redland-storage-mysql' 'redland-storage-postgresql' 'redland-storage-virtuoso' 'redland-storage-sqlite')
pkgver=1.0.12
-pkgrel=6
+pkgrel=1
url="http://librdf.org/"
license=("GPL")
arch=('i686' 'x86_64' 'mips64el')
-makedepends=('rasqal>=0.9.21' 'raptor>=1.4.21' 'db>=5.1' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3')
+makedepends=('rasqal>=0.9.21' 'raptor1' 'db>=5.1' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3')
options=('!libtool')
source=(http://download.librdf.org/source/$pkgname-$pkgver.tar.gz
- rpath.diff)
+ rpath.diff)
md5sums=('40f37a5ad97fdfbf984f78dcea0c6115'
'acc85e784f01a656bd56777f95880787')
@@ -33,9 +34,11 @@ build() {
package_redland() {
pkgdesc="Library that provides a high-level interface to RDF data"
- depends=('rasqal>=0.9.21' 'raptor>=1.4.21' 'libtool')
+ depends=('rasqal>=0.9.21' 'raptor1' 'libtool')
+ replaces=('redland-compat' 'redland-compat-devel')
+ conflicts=('redland-compat' 'redland-compat-devel')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
make DESTDIR=${pkgdir} install
rm -rf ${pkgdir}/usr/lib/redland
}
@@ -44,7 +47,7 @@ package_redland-storage-mysql() {
pkgdesc="MySQL storage support for Redland"
depends=('redland' 'libmysqlclient')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_mysql.so ${pkgdir}/usr/lib/redland/librdf_storage_mysql.so
}
@@ -53,7 +56,7 @@ package_redland-storage-postgresql() {
pkgdesc="PostgreSQL storage support for Redland"
depends=('redland' 'postgresql-libs')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_postgresql.so ${pkgdir}/usr/lib/redland/
}
@@ -62,7 +65,7 @@ package_redland-storage-virtuoso() {
pkgdesc="Virtuoso storage support for Redland"
depends=('redland' 'unixodbc' 'db')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_virtuoso.so ${pkgdir}/usr/lib/redland/
}
@@ -71,7 +74,7 @@ package_redland-storage-sqlite() {
pkgdesc="SQLite storage support for Redland"
depends=('redland' 'sqlite3' 'db')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_sqlite.so ${pkgdir}/usr/lib/redland/
}
diff --git a/extra/rest/PKGBUILD b/extra/rest/PKGBUILD
new file mode 100644
index 000000000..dd780e748
--- /dev/null
+++ b/extra/rest/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 120404 2011-04-23 20:50:45Z ibiru $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+pkgname=rest
+pkgver=0.7.10
+pkgrel=1
+pkgdesc="rest"
+arch=('i686' 'x86_64')
+url="http://www.gtk.org/"
+license=('GPL2')
+depends=('glib2' 'libxml2' 'libsoup-gnome')
+makedepends=('gobject-introspection' 'gtk-doc')
+options=('!libtool')
+source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*}/$pkgname-${pkgver}.tar.bz2)
+sha256sums=('2908f974ae6cc71af1152d419209f307bcce8ca2dfe0b4b55b3fad8ba4a646a5')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make DESTDIR="${pkgdir}" install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/extra/rhythmbox/PKGBUILD b/extra/rhythmbox/PKGBUILD
index 8f1cb052c..a2a7721cf 100644
--- a/extra/rhythmbox/PKGBUILD
+++ b/extra/rhythmbox/PKGBUILD
@@ -1,39 +1,43 @@
-# $Id: PKGBUILD 112869 2011-03-07 11:45:31Z ibiru $
+# $Id: PKGBUILD 121957 2011-04-30 20:53:21Z eric $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
pkgname=rhythmbox
-pkgver=0.13.3
-pkgrel=2
+pkgver=2.90.1
+pkgrel=3
pkgdesc="An iTunes-like music player/libary"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.rhythmbox.org"
-depends=('libgpod' 'libsoup-gnome' 'gnome-media' 'totem-plparser' 'libmusicbrainz3' 'libmtp' 'libnotify' 'lirc-utils' 'desktop-file-utils'
- 'gstreamer0.10-python' 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'pygtk' 'gvfs-afc' 'hicolor-icon-theme' 'pywebkitgtk'
- 'python-mako' 'libdmapsharing' 'json-glib' 'python2-gconf' 'python2-libgnome' 'python-gnomekeyring' 'media-player-info')
-makedepends=('pkgconfig' 'gnome-doc-utils>=0.20.1' 'intltool' 'brasero')
+depends=('libgpod' 'gvfs-afc' 'libgnome-media-profiles' 'totem-plparser' 'libsoup-gnome' 'gtk3' 'libmusicbrainz3' 'libmtp' 'libnotify'
+ 'lirc-utils' 'libwebkit3' 'libdmapsharing' 'media-player-info' 'pygobject' 'gstreamer0.10-python' 'python-gnomekeyring' 'gstreamer0.10-base-plugins'
+ 'gstreamer0.10-good-plugins' 'json-glib' 'desktop-file-utils' 'libpeas' 'python-mako')
+makedepends=('pkgconfig' 'gnome-doc-utils>=0.20.1' 'intltool' 'brasero' 'gnome-common' 'gtk-doc' 'gobject-introspection')
optdepends=('gstreamer0.10-ugly-plugins: Extra media codecs'
'gstreamer0.10-bad-plugins: Extra media codecs'
'gstreamer0.10-ffmpeg: Extra media codecs'
'brasero: cd burning')
-options=('!libtool' '!emptydirs')
+options=('!libtool' '!emptydirs' '!strip')
install=rhythmbox.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.13/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('ad6532864bb4df30f1014ec81ddc0d2d3f69241235627f46abe5578cf629052a')
+#source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/0.13/${pkgname}-${pkgver}.tar.bz2)
+source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}-20110426.tar.xz)
+sha256sums=('513cfa653cf68a05b1fe5f6e41744af4baed0d0fff169000b3153effa232e23d')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- PYTHON=python2 ./configure --prefix=/usr --sysconfdir=/etc \
+ export CFLAGS="$CFLAGS -g -O1"
+ export CXXFLAGS="$CXXFLAGS -g -O1"
+ PYTHON=/usr/bin/python2 ./autogen.sh
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/rhythmbox \
--localstatedir=/var --disable-static \
--enable-daap --enable-python \
--with-mdns=avahi --disable-scrollkeeper
-
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain rhythmbox ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/rhythmbox/rhythmbox.install b/extra/rhythmbox/rhythmbox.install
index 10c4f2229..cbea0e6b3 100644
--- a/extra/rhythmbox/rhythmbox.install
+++ b/extra/rhythmbox/rhythmbox.install
@@ -1,24 +1,22 @@
pkgname=rhythmbox
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
- update-desktop-database -q
- gtk-update-icon-cache -f -q -t usr/share/icons/hicolor
+ glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
+ gtk-update-icon-cache -f -q -t usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove
+ if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+ fi
}
post_upgrade() {
- post_install $1
+ post_install $1
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
-}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -f -q -t usr/share/icons/hicolor
+ post_install $1
}
diff --git a/extra/seahorse/PKGBUILD b/extra/seahorse/PKGBUILD
index 3b93d5f4a..c235a694d 100644
--- a/extra/seahorse/PKGBUILD
+++ b/extra/seahorse/PKGBUILD
@@ -1,33 +1,34 @@
-# $Id: PKGBUILD 112875 2011-03-07 12:51:47Z ibiru $
+# $Id: PKGBUILD 120604 2011-04-25 18:04:11Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Michel Brabants <michel.linux@tiscali.be>
pkgname=seahorse
-pkgver=2.32.0
-pkgrel=2
+pkgver=3.0.1
+pkgrel=1
pkgdesc="GNOME application for managing PGP keys."
arch=(i686 x86_64 'mips64el')
license=('GPL')
url="http://projects.gnome.org/seahorse/"
-depends=('libgnome-keyring>=2.32.0' 'avahi>=0.6.27' 'libnotify>=0.7.1' 'libsoup>=2.32.0' 'gpgme>=1.2.0' 'desktop-file-utils' 'hicolor-icon-theme' 'gconf>=2.32.0' 'gnome-keyring')
-makedepends=('gettext' 'libldap' 'intltool' 'pkgconfig' 'gnome-doc-utils>=0.20.1' 'openssh' 'libsm')
+depends=('gtk3' 'gconf' 'libgnome-keyring' 'gnome-keyring' 'libnotify' 'libsoup' 'gpgme' 'desktop-file-utils' 'hicolor-icon-theme')
+makedepends=('gettext' 'libldap' 'intltool' 'pkgconfig' 'gnome-doc-utils' 'gobject-introspection' 'openssh' 'libsm')
options=('!libtool' '!emptydirs')
groups=('gnome-extra')
install=seahorse.install
-source=(http://ftp.gnome.org/pub/GNOME/sources/seahorse/2.32/seahorse-${pkgver}.tar.bz2
- seahorse-2.32.0-libnotify-0.7.patch)
-sha256sums=('f55468237246a485317d59e2fbc1b1ef5f5bd4c5a7b9ff6f40c3d921af0ed52d'
- '8f7b2fc0ad1cb572de3c31ed694e5131e8ec6373e9f3e202d98858a12902c467')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('79efc22f9fe7db3d53a02be8bcf910be25aef0e321a49ec87a3a709f8aaaa912')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/seahorse-2.32.0-libnotify-0.7.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-static \
--enable-ldap --enable-hkp \
- --enable-libnotify \
- --disable-scrollkeeper --disable-update-mime-database
+ --disable-scrollkeeper \
+ --disable-update-mime-database
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/seed/PKGBUILD b/extra/seed/PKGBUILD
new file mode 100644
index 000000000..daa22e565
--- /dev/null
+++ b/extra/seed/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 120380 2011-04-23 09:20:16Z ibiru $
+#Maintainer : Ionut Biru <ibiru@archlinux.org>
+#Contributor: Jan de Groot <jgc@archlinux.org>
+
+pkgname=seed
+pkgver=3.0.0
+pkgrel=1
+pkgdesc="Library and interpreter for JavaScript with GObject type system bindings."
+arch=('i686' 'x86_64')
+url="http://live.gnome.org/Seed/"
+license=('LGPL')
+options=('!libtool')
+depends=('mpfr' 'libwebkit3' 'gnome-js-common' 'gobject-introspection')
+makedepends=('intltool')
+source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('c7ef8e0c7cfe633c6bf9bfc13ab56458f053dfb12b784c75cc50dfa7cf828be6')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/extra/slim/PKGBUILD b/extra/slim/PKGBUILD
index a5c2bb0f6..806359df7 100644
--- a/extra/slim/PKGBUILD
+++ b/extra/slim/PKGBUILD
@@ -1,58 +1,62 @@
-# $Id: PKGBUILD 108522 2011-01-31 22:56:10Z bisson $
-# Maintainer: Thayer Williams <thayer@archlinux.org>
+# $Id: PKGBUILD 121225 2011-04-29 15:13:05Z bisson $
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+# Contributor: Thayer Williams <thayer@archlinux.org>
# Contributor: Alexander Fehr <pizzapunk gmail com>
# Contributor: Hugo Ideler <hugoideler@dse.nl>
pkgname=slim
pkgver=1.3.2
-pkgrel=3
+pkgrel=4
pkgdesc='Desktop-independent graphical login manager for X11'
arch=('i686' 'x86_64' 'mips64el')
url='http://slim.berlios.de/'
license=('GPL2')
depends=('pam' 'libxmu' 'libpng' 'libjpeg' 'libxft')
backup=('etc/slim.conf' 'etc/logrotate.d/slim' 'etc/pam.d/slim')
-install=slim.install
source=("http://download.berlios.de/${pkgname}/${pkgname}-${pkgver}.tar.gz"
- 'slim'
- 'slim.logrotate'
- 'slim.pam'
+ 'rc.d'
+ 'pam.d'
+ 'logrotate'
'gcc44.patch'
- 'tty-slowness.patch'
+ 'no-host.patch'
'restart.patch'
- 'no-host.patch')
+ 'sigterm.patch'
+ 'tty-slowness.patch')
sha1sums=('e421d5487732c8317f8f591906661e014b036358'
'6fe0ba83509af634bce47be34e30995965bffc79'
- 'b969cc902c1d9915a5609141a652c77b2732407b'
'a0e991ef0ac5120465a3be014a26e70ba073b6ae'
+ 'b969cc902c1d9915a5609141a652c77b2732407b'
'51121d451116c768d0fc027ff1ea70aaaef036e7'
- '213fefe8533c845ea8c40585b6a8097820d5e5d2'
+ 'b86eddd083fb9f6259e46c735f55ebe76c655bd3'
'2d526bc0c498bf307ee50e2d22b4f53ffa0c4435'
- 'b86eddd083fb9f6259e46c735f55ebe76c655bd3')
+ '0b35048723c527fb824c5e0f9b9064f751871785'
+ '213fefe8533c845ea8c40585b6a8097820d5e5d2')
+
+install=install
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
-
- sed -i -e 's/png12/png14/g' Makefile
- patch -p1 -i ../gcc44.patch
+ cd "${srcdir}/${pkgname}-${pkgver}"
- patch -p1 -i ../tty-slowness.patch # fix sluggish tty after slim start
- patch -p1 -i ../restart.patch # restart X server if killed
- patch -p1 -i ../no-host.patch # do not set PAM host
+ sed -i -e 's/png12/png14/g' Makefile
+ patch -p1 -i ../gcc44.patch
+ patch -p1 -i ../no-host.patch # do not set PAM host
+ patch -p1 -i ../restart.patch # restart X server if killed
+ patch -p1 -i ../sigterm.patch # do not wait for user input when SIGTERM'd
+ patch -p1 -i ../tty-slowness.patch # fix sluggish TTY after slim start
- make USE_PAM=1
+ make USE_PAM=1
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}"
+ cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR="${pkgdir}" MANDIR=/usr/share/man install
+ make DESTDIR="${pkgdir}" MANDIR=/usr/share/man install
- install -D -m755 ../slim "${pkgdir}/etc/rc.d/slim"
- install -D -m644 ../slim.logrotate "${pkgdir}/etc/logrotate.d/slim"
- install -D -m644 ../slim.pam "${pkgdir}/etc/pam.d/slim"
+ install -D -m755 ../rc.d "${pkgdir}"/etc/rc.d/slim
+ install -D -m644 ../pam.d "${pkgdir}"/etc/pam.d/slim
+ install -D -m644 ../logrotate "${pkgdir}"/etc/logrotate.d/slim
- # Provide sane defaults
- sed -i 's|#xserver_arguments.*|xserver_arguments -nolisten tcp vt07|' "${pkgdir}/etc/slim.conf"
- sed -i 's|/var/run/slim.lock|/var/lock/slim.lock|' "${pkgdir}/etc/slim.conf"
+ # Provide sane defaults
+ sed -i 's|#xserver_arguments.*|xserver_arguments -nolisten tcp vt07|' "${pkgdir}"/etc/slim.conf
+ sed -i 's|/var/run/slim.lock|/var/lock/slim.lock|' "${pkgdir}"/etc/slim.conf
}
diff --git a/extra/slim/install b/extra/slim/install
new file mode 100644
index 000000000..65aa77d72
--- /dev/null
+++ b/extra/slim/install
@@ -0,0 +1,7 @@
+post_install() {
+ cat <<EOF
+
+==> Add slim to the DAEMONS array in /etc/rc.conf or update /etc/inittab.
+
+EOF
+}
diff --git a/extra/slim/logrotate b/extra/slim/logrotate
new file mode 100644
index 000000000..26ec3b0f4
--- /dev/null
+++ b/extra/slim/logrotate
@@ -0,0 +1,9 @@
+/var/log/slim.log {
+ compress
+ rotate 1
+ size 1024k
+ notifempty
+ missingok
+ copytruncate
+ noolddir
+}
diff --git a/extra/slim/pam.d b/extra/slim/pam.d
new file mode 100644
index 000000000..78a981f74
--- /dev/null
+++ b/extra/slim/pam.d
@@ -0,0 +1,10 @@
+#%PAM-1.0
+auth requisite pam_nologin.so
+auth required pam_env.so
+auth required pam_unix.so
+account required pam_unix.so
+password required pam_unix.so
+session required pam_limits.so
+session required pam_unix.so
+session optional pam_loginuid.so
+session optional pam_ck_connector.so
diff --git a/extra/slim/rc.d b/extra/slim/rc.d
new file mode 100755
index 000000000..b0be7ffc5
--- /dev/null
+++ b/extra/slim/rc.d
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/bin/slim`
+case "$1" in
+ start)
+ stat_busy "Starting Simple Login Manager"
+ [ -z "$PID" ] && /usr/bin/slim -d &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon slim
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Simple Login Manager"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon slim
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 3
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/extra/slim/sigterm.patch b/extra/slim/sigterm.patch
new file mode 100644
index 000000000..fbaeb7116
--- /dev/null
+++ b/extra/slim/sigterm.patch
@@ -0,0 +1,45 @@
+diff -aur old/panel.cpp new/panel.cpp
+--- old/panel.cpp 2011-04-29 15:15:57.210134850 +0200
++++ new/panel.cpp 2011-04-29 15:16:17.260285407 +0200
+@@ -10,6 +10,7 @@
+ */
+
+ #include <sstream>
++#include <poll.h>
+ #include "panel.h"
+
+ using namespace std;
+@@ -288,16 +289,24 @@
+ field=curfield;
+ bool loop = true;
+ OnExpose();
++
++ struct pollfd x11_pfd = {0};
++ x11_pfd.fd = ConnectionNumber(Dpy);
++ x11_pfd.events = POLLIN;
+ while(loop) {
+- XNextEvent(Dpy, &event);
+- switch(event.type) {
+- case Expose:
+- OnExpose();
+- break;
+-
+- case KeyPress:
+- loop=OnKeyPress(event);
+- break;
++ if(XPending(Dpy) || poll(&x11_pfd, 1, -1) > 0) {
++ while(XPending(Dpy)) {
++ XNextEvent(Dpy, &event);
++ switch(event.type) {
++ case Expose:
++ OnExpose();
++ break;
++
++ case KeyPress:
++ loop=OnKeyPress(event);
++ break;
++ }
++ }
+ }
+ }
+
diff --git a/extra/slv2/PKGBUILD b/extra/slv2/PKGBUILD
index e5d83539c..4b01c3dae 100644
--- a/extra/slv2/PKGBUILD
+++ b/extra/slv2/PKGBUILD
@@ -1,15 +1,15 @@
-# $Id: PKGBUILD 100618 2010-11-24 17:48:28Z schiv $
+# $Id: PKGBUILD 120979 2011-04-27 19:40:32Z andrea $
# Maintainer: Ray Rashif <schiv@archlinux.org>
# Contributor: Leslie P. Polzer <polzer@stardawn.org>
pkgname=slv2
pkgver=0.6.6
-pkgrel=2
+pkgrel=4
pkgdesc="Library for LV2 hosts"
arch=('i686' 'x86_64' 'mips64el')
url="http://drobilla.net/software/slv2"
license=('GPL')
-depends=('redland' 'lv2core' 'jack')
+depends=('redland>=1.0.12' 'lv2core' 'jack')
makedepends=('python2')
install=$pkgname.install
changelog=$pkgname.changelog
diff --git a/extra/slv2/slv2.changelog b/extra/slv2/slv2.changelog
index e5be06200..f394a5067 100644
--- a/extra/slv2/slv2.changelog
+++ b/extra/slv2/slv2.changelog
@@ -1,3 +1,8 @@
+22 Feb 2011 (GMT+8) Ray Rashif <schiv@archlinux.org>
+
+ * 0.6.6-3:
+ raptor rebuild
+
24 Nov 2010 (GMT+8) Ray Rashif <schiv@archlinux.org>
* PKGBUILD :
diff --git a/extra/soprano/PKGBUILD b/extra/soprano/PKGBUILD
index f8b44a966..c7d5e19a1 100644
--- a/extra/soprano/PKGBUILD
+++ b/extra/soprano/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 108617 2011-02-01 23:20:16Z andrea $
+# $Id: PKGBUILD 121190 2011-04-29 09:24:01Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=soprano
pkgver=2.6.0
-pkgrel=1
+pkgrel=5
pkgdesc='A library which provides a highly usable object-oriented C++/Qt4 framework for RDF data'
arch=('i686' 'x86_64' 'mips64el')
url='http://soprano.sourceforge.net/'
license=('GPL' 'LGPL')
-depends=('qt' 'clucene' 'redland' 'libiodbc' 'virtuoso')
-makedepends=('cmake' 'openjdk6' 'postgresql-libs' 'libmysqlclient' 'unixodbc')
+depends=('qt' 'clucene' 'redland-storage-virtuoso' 'libiodbc' 'virtuoso')
+makedepends=('cmake' 'openjdk6' 'doxygen')
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2")
md5sums=('03ae49e87c6ec99e57d0433c2650846f')
diff --git a/extra/sound-juicer/PKGBUILD b/extra/sound-juicer/PKGBUILD
index 2a2d49705..491a676b8 100644
--- a/extra/sound-juicer/PKGBUILD
+++ b/extra/sound-juicer/PKGBUILD
@@ -1,28 +1,34 @@
-# $Id: PKGBUILD 110458 2011-02-19 15:59:30Z ibiru $
+# $Id: PKGBUILD 118432 2011-04-06 20:04:46Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributer: Ben <contrasutra@myrealbox.com>
pkgname=sound-juicer
-pkgver=2.32.0
-pkgrel=2
+pkgver=2.32.1
+pkgrel=1
pkgdesc="A cd ripper application"
arch=(i686 x86_64 'mips64el')
license=('GPL')
-depends=('libmusicbrainz3>=3.0.3' 'gnome-media>=2.32.0' 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'brasero>=2.32.0' 'hicolor-icon-theme')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.0' 'pkgconfig')
+depends=('libmusicbrainz3' 'libgnome-media-profiles' 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'brasero' 'hicolor-icon-theme')
+makedepends=('intltool' 'gnome-doc-utils>=0.20.0' 'pkgconfig' 'gnome-common' 'gtk-doc')
options=(!emptydirs)
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
+#source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
+source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.xz)
groups=('gnome-extra')
install=sound-juicer.install
url="http://www.burtonini.com/blog/computers/sound-juicer"
-sha256sums=('f6040e19e50094daff9699dea3e9884ce3226a61f28acbe9ad3a0458975a305a')
+sha256sums=('09fd7ebaa24b20a98be82bc10a9733f2e8d45bb31fb95a12535672d85272d8c2')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ ./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var \
--disable-scrollkeeper
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/telepathy-farsight/PKGBUILD b/extra/telepathy-farsight/PKGBUILD
index 06d8fc12a..44902b1fc 100644
--- a/extra/telepathy-farsight/PKGBUILD
+++ b/extra/telepathy-farsight/PKGBUILD
@@ -1,20 +1,19 @@
-# $Id: PKGBUILD 91084 2010-09-22 10:08:21Z ibiru $
+# $Id: PKGBUILD 120813 2011-04-26 16:12:15Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: Ju Liu <liuju86 at gmail dot com>
# Contributor: Denis Zawada <deno@rootnode.net>
pkgname=telepathy-farsight
-pkgver=0.0.15
-pkgrel=2
+pkgver=0.0.17
+pkgrel=1
pkgdesc="A telepathy-backend to use stream engine."
arch=('i686' 'x86_64' 'mips64el')
url="http://telepathy.freedesktop.org"
license=('GPL')
-depends=('telepathy-glib>=0.10.6' 'farsight2>=0.0.17' 'gstreamer0.10-base')
+depends=('telepathy-glib' 'farsight2' 'gstreamer0.10-base')
makedepends=('libxslt' 'python2')
-groups=('telepathy')
options=('!libtool')
source=(http://telepathy.freedesktop.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-md5sums=('8a15bad987579656be38df237d302610')
+md5sums=('f98377802d38333924f6f1a955a2d42a')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -22,5 +21,9 @@ build() {
--libexecdir=/usr/lib/telepathy \
--enable-static=no
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/telepathy-gabble/PKGBUILD b/extra/telepathy-gabble/PKGBUILD
index 72c020328..47e5961f1 100644
--- a/extra/telepathy-gabble/PKGBUILD
+++ b/extra/telepathy-gabble/PKGBUILD
@@ -1,26 +1,30 @@
-# $Id: PKGBUILD 110136 2011-02-16 17:45:07Z ibiru $
+# $Id: PKGBUILD 120355 2011-04-22 18:03:17Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Daniel Balieiro <daniel@balieiro.com>
# Contributor: Rodrigo L. M. Flores <mail@rodrigoflores.org>
pkgname=telepathy-gabble
-pkgver=0.10.5
-pkgrel=1
+pkgver=0.12.0
+pkgrel=2
pkgdesc="A Jabber/XMPP connection manager for Telepathy"
arch=('i686' 'x86_64' 'mips64el')
url="http://telepathy.freedesktop.org"
groups=('telepathy')
license=('LGPL2.1')
-depends=('telepathy-glib>=0.12.2' 'libsoup>=2.32' 'libnice' 'util-linux-ng' 'sqlite3')
+depends=('telepathy-glib' 'libsoup' 'libnice' 'util-linux' 'sqlite3')
makedepends=('libxslt' 'python2')
options=('!libtool')
source=(http://telepathy.freedesktop.org/releases/telepathy-gabble/${pkgname}-${pkgver}.tar.gz)
install=telepathy-gabble.install
-md5sums=('6d3e07354fb6d3ea5f8375e7cf776a27')
+md5sums=('89e47b131911a969cc2a2ccefa1fc015')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
./configure --prefix=/usr \
- --libexecdir=/usr/lib/telepathy
+ --libexecdir=/usr/lib/telepathy --with-tls=openssl
make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
make DESTDIR=${pkgdir} install
}
diff --git a/extra/telepathy-glib/PKGBUILD b/extra/telepathy-glib/PKGBUILD
index de205da25..cbb00a4c0 100644
--- a/extra/telepathy-glib/PKGBUILD
+++ b/extra/telepathy-glib/PKGBUILD
@@ -1,26 +1,31 @@
-# $Id: PKGBUILD 103588 2010-12-21 23:15:02Z ibiru $
+# $Id: PKGBUILD 120253 2011-04-21 18:20:55Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: Kessia 'even' Pinheiro <kessiapinheiro at gmail.com
# Contributor: Bjorn Lindeijer <bjorn lindeijer nl>
pkgname=telepathy-glib
-pkgver=0.12.7
+pkgver=0.14.5
pkgrel=1
pkgdesc="GLib bindings for the Telepathy D-Bus protocol"
arch=('i686' 'x86_64' 'mips64el')
url="http://telepathy.freedesktop.org"
groups=('telepathy')
license=('LGPL2.1')
-options=('!libtool')
-depends=('dbus-glib>=0.92')
+options=('!libtool' '!emptydirs')
+depends=('dbus-glib')
makedepends=('libxslt' 'vala' 'gobject-introspection')
source=("http://telepathy.freedesktop.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz")
-md5sums=('a3b5f526e2c831472395352685aba3fe')
+md5sums=('2911d33b45744cdc41774c91f6b837c2')
build() {
- cd ${srcdir}/${pkgname}-${pkgver}
- ./configure --prefix=/usr \
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ PYTHON=/usr/bin/python2 ./configure --prefix=/usr \
+ --libexecdir=/usr/lib/telepathy \
--enable-vala-bindings \
--enable-static=no
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR=${pkgdir} install
}
diff --git a/extra/telepathy-idle/PKGBUILD b/extra/telepathy-idle/PKGBUILD
index b4b8e84dc..aff371792 100644
--- a/extra/telepathy-idle/PKGBUILD
+++ b/extra/telepathy-idle/PKGBUILD
@@ -1,21 +1,21 @@
-# $Id: PKGBUILD 102391 2010-12-07 17:47:06Z ibiru $
+# $Id: PKGBUILD 120807 2011-04-26 15:59:24Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: Bjorn Lindeijer <bjorn lindeijer nl>
# Contributor: Samuel Mendes <heka.lok@gmail.com>
pkgname=telepathy-idle
-pkgver=0.1.7
+pkgver=0.1.9
pkgrel=1
pkgdesc="An IRC connection manager for Telepathy"
arch=('i686' 'x86_64' 'mips64el')
url="http://telepathy.freedesktop.org"
groups=('telepathy')
license=('LGPL')
-depends=('telepathy-glib>=0.12.5' 'openssl')
+depends=('telepathy-glib' 'openssl')
makedepends=('libxslt' 'python2')
install=telepathy-idle.install
-source=(http://telepathy.freedesktop.org/releases/telepathy-idle/${pkgname}-${pkgver}.tar.gz
+source=(http://telepathy.freedesktop.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz
python27.patch)
-md5sums=('5ee3aa5c6e1112922b11711e6a209331'
+md5sums=('423f2cc0481bdb32facb850eaf586ff2'
'03661efde8f768417e224720e1346d7b')
build() {
@@ -25,5 +25,9 @@ build() {
./configure --prefix=/usr \
--libexecdir=/usr/lib/telepathy
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/telepathy-logger/PKGBUILD b/extra/telepathy-logger/PKGBUILD
index 328ee692c..caa9dabe8 100644
--- a/extra/telepathy-logger/PKGBUILD
+++ b/extra/telepathy-logger/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id: PKGBUILD 101587 2010-11-29 17:14:18Z ibiru $
+# $Id: PKGBUILD 117598 2011-04-04 12:33:45Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=telepathy-logger
-pkgver=0.1.7
+pkgver=0.2.8
pkgrel=1
pkgdesc="Telepathy framework logging daemon"
arch=(i686 x86_64 'mips64el')
url="http://telepathy.freedesktop.org/wiki/Logger"
license=('LGPL2.1')
-depends=('telepathy-glib>=0.12.5' 'sqlite3' 'libxml2>=2.7.8' 'dconf')
-makedepends=('intltool' 'gnome-doc-utils')
+depends=('telepathy-glib' 'sqlite3' 'libxml2' 'dconf')
+makedepends=('intltool' 'gnome-doc-utils' 'gobject-introspection')
options=('!libtool')
source=(http://telepathy.freedesktop.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.bz2)
-md5sums=('92fdf8bd2ced40831b3c1198ed1b88d2')
+md5sums=('755e6dcaa6a9ccf47f2fe73f3d4d888b')
build() {
cd "$srcdir/$pkgname-$pkgver"
@@ -22,8 +22,11 @@ build() {
--disable-static \
--disable-scrollkeeper \
--disable-schemas-compile
-
make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir/" install
}
diff --git a/extra/telepathy-mission-control/PKGBUILD b/extra/telepathy-mission-control/PKGBUILD
index 036ae6dc4..2f910c3ed 100644
--- a/extra/telepathy-mission-control/PKGBUILD
+++ b/extra/telepathy-mission-control/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 99782 2010-11-17 16:36:42Z ibiru $
+# $Id: PKGBUILD 120802 2011-04-26 15:50:07Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: Ju Liu <liuju86 at gmail dot com>
# Contributor: Bjorn Lindeijer <bjorn lindeijer nl>
# Contributor: Andreas Zwinkau <beza1e1@web.de>
pkgname=telepathy-mission-control
-pkgver=5.6.1
+pkgver=5.7.9
pkgrel=1
pkgdesc="A Telepathy component providing abstraction of some of the details of connection managers."
arch=('i686' 'x86_64' 'mips64el')
url="http://mission-control.sourceforge.net/"
license=('LGPL2.1')
-depends=('telepathy-glib>=0.12.4' 'libgnome-keyring>=2.32.0')
+depends=('telepathy-glib' 'libgnome-keyring')
makedepends=('libxslt' 'python2')
options=('!libtool')
source=(http://telepathy.freedesktop.org/releases/telepathy-mission-control/$pkgname-$pkgver.tar.gz)
-md5sums=('0627423bfdf1f5616a4250205ec35b70')
+md5sums=('df7e63d857676fab9ec2261cffe5eb4a')
build() {
cd "$srcdir/$pkgname-$pkgver"
@@ -22,5 +22,9 @@ build() {
--libexecdir=/usr/lib/telepathy \
--enable-gnome-keyring
make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
make DESTDIR="$pkgdir" install
}
diff --git a/extra/telepathy-qt4/PKGBUILD b/extra/telepathy-qt4/PKGBUILD
index d4e499de2..c35b76559 100644
--- a/extra/telepathy-qt4/PKGBUILD
+++ b/extra/telepathy-qt4/PKGBUILD
@@ -1,18 +1,17 @@
-# $Id: PKGBUILD 104722 2011-01-04 19:45:22Z ibiru $
+# $Id: PKGBUILD 120824 2011-04-26 16:25:58Z ibiru $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
pkgname=telepathy-qt4
-pkgver=0.4.2
+pkgver=0.5.15
pkgrel=1
pkgdesc="A library for Qt-based Telepathy clients."
arch=('i686' 'x86_64' 'mips64el')
url="http://telepathy.freedesktop.org"
-groups=('telepathy')
license=('LGPL')
options=('!libtool')
depends=('qt' 'telepathy-farsight')
makedepends=('libxslt' 'python2' 'cmake')
source=(http://telepathy.freedesktop.org/releases/$pkgname/$pkgname-$pkgver.tar.gz)
-md5sums=('d014e49b11fcbb4dc87aa1757d209a3a')
+md5sums=('2066d447a46ca3d767ff82ca562244a0')
build() {
cd "${srcdir}"
@@ -21,8 +20,7 @@ build() {
cd build
cmake ../${pkgname}-${pkgver} \
-DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DHAVE_QDBUSVARIANT_OPERATOR_EQUAL=1
+ -DCMAKE_INSTALL_PREFIX=/usr
make
}
diff --git a/extra/telepathy-sofiasip/PKGBUILD b/extra/telepathy-sofiasip/PKGBUILD
index 73936b339..4205fee4a 100644
--- a/extra/telepathy-sofiasip/PKGBUILD
+++ b/extra/telepathy-sofiasip/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 108673 2011-02-02 13:28:13Z ibiru $
+# $Id: PKGBUILD 120816 2011-04-26 16:16:06Z ibiru $
# Maintainer : Ionut Biru <ibiru@archlinux.org>
# Contributor: Timm Preetz <timm@preetz.us>
pkgname=telepathy-sofiasip
-pkgver=0.6.6
+pkgver=0.7.1
pkgrel=1
pkgdesc="a SIP-protocol connection manager for the Telepathy framework based on SofiaSIP-stack."
arch=('i686' 'x86_64' 'mips64el')
@@ -13,11 +13,15 @@ makedepends=('libxslt' 'python2')
install=telepathy-sofiasip.install
groups=('telepathy')
source=(http://telepathy.freedesktop.org/releases/${pkgname}/${pkgname}-${pkgver}.tar.gz)
-md5sums=('aebdadeb92db02b0da916fd077fa8c7e')
+md5sums=('4139027790aae97d8a18260e09a747c6')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --libexecdir=/usr/lib/telepathy
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/tomboy/PKGBUILD b/extra/tomboy/PKGBUILD
index 34c0ff1ac..ae5b3290f 100644
--- a/extra/tomboy/PKGBUILD
+++ b/extra/tomboy/PKGBUILD
@@ -1,21 +1,20 @@
-# $Id: PKGBUILD 103907 2010-12-23 17:41:14Z ibiru $
+# $Id: PKGBUILD 120780 2011-04-26 15:03:27Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=tomboy
-pkgver=1.4.2
+pkgver=1.6.1
pkgrel=1
pkgdesc="Desktop note-taking application for Linux and Unix"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org/projects/tomboy/"
-depends=('gtkspell' 'gmime>=2.4.21' 'ndesk-dbus-glib>=0.4.1' 'gnome-sharp>=2.24.1' 'mono-addins>=0.5' 'libsm' 'gnome-desktop-sharp>=2.26.0' 'hicolor-icon-theme')
-makedepends=('intltool' 'pkgconfig' 'gnome-panel-bonobo' 'gnome-doc-utils>=0.20.0')
-optdepends=('gnome-panel-bonobo: applet support')
+depends=('gtk2' 'gtkspell' 'ndesk-dbus-glib' 'mono-addins' 'gnome-sharp')
+makedepends=('intltool' 'pkgconfig' 'gnome-doc-utils')
options=('!libtool' '!emptydirs' '!makeflags')
groups=('gnome-extra')
install=tomboy.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/1.4/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('823270473c819d6592074a0dcd41c29fd857b29a0318061aaabfa38fff3cc7e7')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/1.6/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('4c0b5e0103682711e1cd620c9c617716a33b3520d62c22a2f6ab7bab2a54e61c')
build() {
export MONO_SHARED_DIR="${srcdir}/.wabi"
@@ -24,8 +23,12 @@ build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-scrollkeeper \
- --disable-update-mimedb --enable-panel-applet
+ --disable-update-mimedb
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 install
install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
diff --git a/extra/totem-plparser/PKGBUILD b/extra/totem-plparser/PKGBUILD
index 090f5dbff..4c0943fa1 100644
--- a/extra/totem-plparser/PKGBUILD
+++ b/extra/totem-plparser/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 111264 2011-02-25 14:59:26Z ibiru $
+# $Id: PKGBUILD 116067 2011-03-22 18:11:16Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=totem-plparser
-pkgver=2.32.3
+pkgver=2.32.4
pkgrel=1
url="http://www.hadess.net/totem.php3"
pkgdesc="Totem playlist parser library"
@@ -12,7 +12,7 @@ depends=('gmime' 'libsoup-gnome')
makedepends=('intltool' 'pkgconfig' 'gobject-introspection')
options=('!libtool')
source=(http://ftp.gnome.org/pub/gnome/sources/totem-pl-parser/2.32/totem-pl-parser-${pkgver}.tar.bz2)
-sha256sums=('c15149650c5420426e7becd6eb4298e898d1975cb7c9ff534cc0785d350916e2')
+sha256sums=('349006c8c26a7bee6775c2f48cb158be15c92608f444598c67ca820c205213d6')
build() {
cd "${srcdir}/totem-pl-parser-${pkgver}"
diff --git a/extra/totem/PKGBUILD b/extra/totem/PKGBUILD
index af0d60d24..ff9fb8a51 100644
--- a/extra/totem/PKGBUILD
+++ b/extra/totem/PKGBUILD
@@ -1,18 +1,19 @@
-# $Id: PKGBUILD 96293 2010-10-19 20:31:32Z ibiru $
+# $Id: PKGBUILD 120757 2011-04-26 11:04:01Z heftig $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgbase=totem
pkgname=('totem' 'totem-plugin')
-pkgver=2.32.0
-pkgrel=3
+pkgver=3.0.1
+pkgrel=1
url="http://www.hadess.net/totem.php3"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL2' 'custom')
-makedepends=('gstreamer0.10-base-plugins>=0.10.30' 'gstreamer0.10-good-plugins>=0.10.22' 'totem-plparser>=2.32.0' 'libxxf86vm' 'libxtst' 'desktop-file-utils' 'iso-codes>=3.10.1' 'libepc>=0.3.10' 'python2' 'libgdata>=0.6.4' 'nautilus>=2.32.0' 'xulrunner>=1.9.2' 'pkgconfig' 'bluez>=4.64' 'lirc-utils' 'gnome-doc-utils>=0.20.1' 'gnome-control-center>=2.32.0' 'intltool' 'pygtk>=2.22.0')
-
+makedepends=('intltool' 'gnome-doc-utils' 'gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'totem-plparser'
+ 'libpeas' 'pygobject' 'pygobject-devel' 'nautilus' 'libxxf86vm' 'libxtst' 'desktop-file-utils' 'iso-codes' 'libgdata'
+ 'xulrunner' 'lirc-utils' 'libepc' 'bluez' 'vala')
options=('!libtool' '!emptydirs')
-source=(http://ftp.gnome.org/pub/gnome/sources/totem/2.32/${pkgbase}-${pkgver}.tar.bz2)
-sha256sums=('982d6aaeca3e4844694fc0a2540d792bea753e24b55cf33203188b32b5914f47')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgbase}/${pkgver%.*}/${pkgbase}-${pkgver}.tar.bz2)
+sha256sums=('013b6cfedac6ff264aa27de7346597d0b8da7f4ed1f91b2c966a13d3fdff679a')
build() {
cd "${srcdir}/${pkgbase}-${pkgver}"
@@ -25,56 +26,41 @@ build() {
}
package_totem() {
- pkgdesc="A GNOME2 integrated movie player based on Gstreamer."
- depends=('gstreamer0.10-base-plugins>=0.10.30' 'gstreamer0.10-good-plugins>=0.10.22' 'totem-plparser>=2.32.0' 'libxxf86vm' 'libxtst' 'desktop-file-utils' 'iso-codes>=3.10.1' 'python2' 'libunique>=1.1.6')
+ pkgdesc="A GNOME3 integrated movie player based on Gstreamer."
+ depends=('gstreamer0.10-base-plugins' 'gstreamer0.10-good-plugins' 'totem-plparser' 'libxxf86vm' 'libxtst' 'desktop-file-utils' 'iso-codes' 'python2' 'libpeas' 'hicolor-icon-theme' 'gnome-icon-theme-symbolic' 'gsettings-desktop-schemas')
groups=('gnome-extra')
install=totem.install
optdepends=('gstreamer0.10-ugly-plugins: Extra media codecs'
'gstreamer0.10-bad-plugins: Extra media codecs'
'gstreamer0.10-ffmpeg: Extra media codecs'
- 'httplib2: BBC iPlayer plugin'
- 'python-feedparser: BBC iPlayer plugin'
- 'beautiful-soup: BBC iPlayer plugin'
- 'coherence: Coherence DLNA/UPnP Client plugin'
- 'dbus-python: D-Bus Service plugin'
- 'gromit: Gromit Annotations plugin'
'lirc-utils: Infrared Remote Control plugin'
'libepc: Publish Playlist plugin'
- 'pyxdg: Subtitle Downloader plugin'
'libgdata: YouTube Browser plugin'
- 'gnome-python: Subtitle plugin')
- conflicts=('totem-xine')
- replaces=('totem-xine')
+ 'bluez: Bemused plugin')
cd "${srcdir}/${pkgbase}-${pkgver}"
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
-
- rm -f ${pkgdir}/usr/share/totem/vanity.*
- rm -f "${pkgdir}/usr/share/pixmaps/vanity.png"
+ make DESTDIR="${pkgdir}" install
rm -rf "${pkgdir}/usr/lib/mozilla"
rm -f "${pkgdir}/usr/lib/totem/totem-plugin-viewer"
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain totem ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
-
sed -i "s|#!/usr/bin/python$|#!/usr/bin/python2|" \
$pkgdir/usr/lib/totem/{totem/totem-bugreport.py,plugins/iplayer/iplayer2.py}
- install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}"
- install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/"
+ install -Dm644 COPYING "${pkgdir}/usr/share/licenses/totem/COPYING"
}
package_totem-plugin() {
pkgdesc="Totem mozilla/firefox plugin"
- depends="totem=${pkgver}"
+ depends=("totem=${pkgver}")
- cd "${srcdir}/${pkgbase}-${pkgver}/browser-plugin"
- make plugindir=/usr/lib/mozilla/plugins \
- xptdir=/usr/lib/mozilla/plugins \
- DESTDIR="${pkgdir}" install
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ make -C browser-plugin \
+ plugindir=/usr/lib/mozilla/plugins \
+ xptdir=/usr/lib/mozilla/plugins \
+ DESTDIR="${pkgdir}" install
rm -rf "${pkgdir}/usr/share"
-}
+ install -Dm644 COPYING "${pkgdir}/usr/share/licenses/totem-plugin/COPYING"
+}
diff --git a/extra/totem/totem.install b/extra/totem/totem.install
index 98dabd71a..07cb42dcb 100644
--- a/extra/totem/totem.install
+++ b/extra/totem/totem.install
@@ -1,24 +1,19 @@
-pkgname=totem
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
update-desktop-database -q
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.91.91) < 0 )); then
+ usr/sbin/gconfpkg --uninstall totem
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/udisks/01-mkfs-tempdir.patch b/extra/udisks/01-mkfs-tempdir.patch
new file mode 100644
index 000000000..976108264
--- /dev/null
+++ b/extra/udisks/01-mkfs-tempdir.patch
@@ -0,0 +1,17 @@
+# Description: Daemon does not create /var/run/udisks/, so mkfs jobs fail.
+# Just create the directory in /tmp, this is what /tmp is for, after all.
+# Upstream: https://bugs.freedesktop.org/show_bug.cgi?id=24265
+
+Index: udisks/src/helpers/job-mkfs.c
+===================================================================
+--- udisks.orig/src/helpers/job-mkfs.c 2010-12-05 23:08:54.587881164 +0100
++++ udisks/src/helpers/job-mkfs.c 2010-12-05 23:09:12.399889312 +0100
+@@ -546,7 +546,7 @@
+ /* take ownership of the device if requested */
+ if (take_ownership_uid != 0 || take_ownership_gid != 0)
+ {
+- char dir[256] = PACKAGE_LOCALSTATE_DIR "/run/udisks/job-mkfs-XXXXXX";
++ char dir[256] = "/tmp/job-mkfs-XXXXXX";
+
+ if (mkdtemp (dir) == NULL)
+ {
diff --git a/extra/udisks/PKGBUILD b/extra/udisks/PKGBUILD
index 3cef8553c..300232975 100644
--- a/extra/udisks/PKGBUILD
+++ b/extra/udisks/PKGBUILD
@@ -1,28 +1,37 @@
-# $Id: PKGBUILD 106693 2011-01-17 23:18:27Z jgc $
+# $Id: PKGBUILD 119537 2011-04-11 22:26:25Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=udisks
-pkgver=1.0.2
-pkgrel=2
+pkgver=1.0.3
+pkgrel=1
pkgdesc="Disk Management Service"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.freedesktop.org/wiki/Software/udisks"
license=('GPL')
-depends=('udev>=164' 'sg3_utils>=1.29' 'glib2>=2.26.1' 'dbus-glib>=0.92' 'polkit>=0.98' 'parted>=2.3' 'device-mapper>=2.02.77' 'libatasmart>=0.17' 'lsof' 'lvm2>=2.02.77' 'eject')
-makedepends=('intltool' 'docbook-xsl')
+depends=('udev' 'sg3_utils' 'glib2' 'dbus-glib' 'polkit' 'parted' 'device-mapper' 'libatasmart' 'lsof' 'lvm2' 'eject')
+makedepends=('intltool' 'docbook-xsl' 'gtk-doc')
options=(!libtool)
-replaces=('devicekit-disks')
-source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz)
-sha256sums=('7dc1a150a6a31b2727144603fa5a8f9852696fc5bdc4a11917b9b0f1b8e3dcf1')
+#source=(http://hal.freedesktop.org/releases/${pkgname}-${pkgver}.tar.gz)
+source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.xz
+ 01-mkfs-tempdir.patch)
+sha256sums=('a4d18b2de59c1567df5342f26960c6c3e70a0320f7bafe42893f2708c9b57dd5'
+ '786c0adb1a37e16b351c906527e3cbd17193bb51d8c1dd0889f216556c419c6c')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
-
+ patch -Np1 -i "${srcdir}/01-mkfs-tempdir.patch"
+ ./autogen.sh
./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
--libexecdir=/usr/lib/udisks --disable-static
#fix location for bash_completion helper
sed -i -e 's|profile.d|bash_completion.d|' tools/Makefile
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
+
+ rm -rf "${pkgdir}/var/run"
}
diff --git a/extra/upower/PKGBUILD b/extra/upower/PKGBUILD
index ef0f566c5..8c9201da2 100644
--- a/extra/upower/PKGBUILD
+++ b/extra/upower/PKGBUILD
@@ -1,19 +1,19 @@
-# $Id: PKGBUILD 107049 2011-01-20 21:06:41Z ibiru $
+# $Id: PKGBUILD 116154 2011-03-22 19:35:44Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=upower
-pkgver=0.9.8
-pkgrel=2
+pkgver=0.9.9
+pkgrel=1
pkgdesc="Abstraction for enumerating power devices, listening to device events and querying history and statistics"
arch=('i686' 'x86_64' 'mips64el')
url="http://upower.freedesktop.org"
license=('GPL')
-depends=('udev>=165' 'libusb>=1.0.8' 'polkit>=0.99' 'pm-utils' 'dbus-glib>=0.92')
-makedepends=('pkg-config' 'intltool' 'docbook-xsl')
+depends=('udev' 'libusb' 'polkit' 'pm-utils' 'dbus-glib')
+makedepends=('pkg-config' 'intltool' 'docbook-xsl' 'gobject-introspection')
replaces=('devicekit-power')
options=('!libtool')
source=($url/releases/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('7afaec3cb10ebbc898308c7abd250c27fd58e10379a42e80444d7a4b32f2eb91')
+sha256sums=('39e19bab2c776000477d6d0ddb4bc508808954f63867a2da2be40eaf341214e2')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
diff --git a/extra/vinagre/PKGBUILD b/extra/vinagre/PKGBUILD
index 35ef1981a..1801cb940 100644
--- a/extra/vinagre/PKGBUILD
+++ b/extra/vinagre/PKGBUILD
@@ -1,32 +1,33 @@
-# $Id: PKGBUILD 94920 2010-10-12 14:39:07Z jgc $
+# $Id: PKGBUILD 120639 2011-04-25 18:49:25Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer: Allan McRae <mcrae_allan@hotmail.com>
# Contributor: lp76 <l.peduto@gmail.com>
pkgname=vinagre
-pkgver=2.30.3
+pkgver=3.0.1
pkgrel=1
pkgdesc="A VNC Client for the GNOME Desktop"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
url="http://www.gnome.org/projects/vinagre/"
install=vinagre.install
-depends=('libgnome-keyring>=2.32.0' 'gtk-vnc>=0.3.10' 'avahi>=0.6.27' 'desktop-file-utils' 'hicolor-icon-theme' 'telepathy-glib>=0.12.0' 'gconf>=2.32.0')
-makedepends=('gnome-doc-utils>=0.20.1' 'intltool' 'gnome-panel-bonobo')
-optdepends=('gnome-panel-bonobo: Remote desktop viewer applet')
+depends=('libgnome-keyring' 'gtk-vnc' 'avahi' 'desktop-file-utils' 'hicolor-icon-theme' 'telepathy-glib' 'dconf' 'libpeas' 'shared-mime-info' 'gnome-icon-theme')
+optdepends=('rdesktop: RDP plugin')
+makedepends=('gtk-doc' 'intltool' 'rdesktop')
groups=('gnome-extra')
options=('!emptydirs' '!libtool')
-source=(http://ftp.gnome.org/pub/GNOME/sources/vinagre/2.30/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('28bfc70a816bc3f1e71ada82e260c39ee2dac693cb7859323b06c8b1452a39f4')
+source=(http://ftp.gnome.org/pub/GNOME/sources/$pkgname/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('a4c2ec5935c0cea0da1958e7f27a925a03867854cdcaf904ce8c7e405ebe2e5b')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
+ # Disable Spice until someone cares (file a bug!)
./configure --prefix=/usr --sysconfdir=/etc --disable-scrollkeeper \
- --libexecdir=/usr/lib/vinagre
+ --libexecdir=/usr/lib/vinagre --enable-rdp --disable-spice
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -d -m755 "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain vinagre ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/vinagre/vinagre.install b/extra/vinagre/vinagre.install
index ffccf65d5..68158ac80 100644
--- a/extra/vinagre/vinagre.install
+++ b/extra/vinagre/vinagre.install
@@ -1,26 +1,20 @@
-pkgname=vinagre
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
update-desktop-database -q
gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
update-mime-database usr/share/mime > /dev/null
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.91.91-2) < 0 )); then
+ usr/sbin/gconfpkg --uninstall vinagre
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- update-desktop-database -q
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
- update-mime-database usr/share/mime > /dev/null
+ post_install
}
diff --git a/extra/vino/PKGBUILD b/extra/vino/PKGBUILD
index 366435c2f..cfbed0f8e 100644
--- a/extra/vino/PKGBUILD
+++ b/extra/vino/PKGBUILD
@@ -1,21 +1,20 @@
-# $Id: PKGBUILD 112935 2011-03-07 19:28:46Z ibiru $
+# $Id: PKGBUILD 120634 2011-04-25 18:44:11Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=vino
-pkgver=2.32.1
+pkgver=3.0.1
pkgrel=1
pkgdesc="a VNC server for the GNOME desktop"
arch=('i686' 'x86_64' 'mips64el')
license=('GPL')
-depends=('libnotify>=0.7.1' 'libxtst' 'libunique>=1.1.6' 'libsm' 'gconf>=2.32.0' 'libsoup>=2.32.1' 'telepathy-glib>=0.12.4' 'gtk2>=2.22.1'
- 'libgnome-keyring>=2.32' 'avahi>=0.6.27')
+depends=('libnotify' 'libxtst' 'libsm' 'libsoup' 'telepathy-glib' 'gtk3' 'libgnome-keyring' 'avahi' 'desktop-file-utils')
makedepends=('intltool' 'networkmanager')
groups=('gnome-extra')
url="http://www.gnome.org"
options=(!emptydirs)
install=vino.install
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('8ec3cb84216323660d6301e02f5853f928789c20be68ded538dd849eafac4087')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('d2111f1f8dbcb78005cce3d28ea42b5deabe5ced83eb11030e4a74874fdfdfca')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -25,9 +24,9 @@ build() {
--enable-gnome-keyring \
--enable-avahi
make
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain vino ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/vino/vino.install b/extra/vino/vino.install
index 3bc7d3917..469266843 100644
--- a/extra/vino/vino.install
+++ b/extra/vino/vino.install
@@ -1,17 +1,18 @@
-pkgname=vino
-
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ update-desktop-database -q
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall vino
+ fi
}
post_upgrade() {
- post_install $1
+ post_install
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+post_remove() {
+ post_install
}
diff --git a/extra/vte/PKGBUILD b/extra/vte/PKGBUILD
index d93f2148a..90e371e2b 100644
--- a/extra/vte/PKGBUILD
+++ b/extra/vte/PKGBUILD
@@ -1,24 +1,66 @@
-# $Id: PKGBUILD 101302 2010-11-28 20:55:38Z ibiru $
+# $Id: PKGBUILD 117622 2011-04-04 13:08:29Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
-pkgname=vte
-pkgver=0.26.2
+pkgbase=vte
+pkgname=(vte vte3 vte-common)
+pkgver=0.28.0
pkgrel=1
-pkgdesc="Virtual Terminal Emulator library"
+pkgdesc="Virtual Terminal Emulator widget for use with"
arch=('i686' 'x86_64' 'mips64el')
license=('LGPL')
-depends=('gtk2>=2.22.0')
-options=('!libtool')
-makedepends=('pygtk>=2.22.0' 'intltool' 'gobject-introspection')
+options=('!libtool' '!emptydirs')
+makedepends=('pygtk' 'intltool' 'gobject-introspection' 'gtk2' 'gtk3' 'pygobject-devel' 'gtk-doc')
url="http://www.gnome.org"
-source=(http://ftp.gnome.org/pub/GNOME/sources/vte/0.26/vte-${pkgver}.tar.bz2)
-sha256sums=('f02c350340266c9515a98b8f69c72b4bdc53b352cd053624a63a7cb97ddec9bd')
+source=(http://ftp.gnome.org/pub/GNOME/sources/vte/0.28/vte-${pkgver}.tar.bz2)
+sha256sums=('1467c566aa9e55c1e33aa1dfea3f14dd4c8a4a63ff0005b254bd8c2c375d952e')
+
build() {
- cd "${srcdir}/${pkgname}-${pkgver}"
- PYTHON=python2 ./configure --prefix=/usr --sysconfdir=/etc \
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ #warning: type-punning to incomplete type might break strict-aliasing rules
+ export CFLAGS="$CFLAGS -fno-strict-aliasing"
+
+ mkdir build-gtk2
+ pushd build-gtk2
+ PYTHON=python2 ../configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/vte \
+ --localstatedir=/var --disable-static \
+ --enable-introspection --with-gtk=2.0 \
+ --enable-gtk-doc
+ make
+ popd
+
+ mkdir build-gtk3
+ pushd build-gtk3
+ PYTHON=python2 ../configure --prefix=/usr --sysconfdir=/etc \
--libexecdir=/usr/lib/vte \
--localstatedir=/var --disable-static \
- --enable-introspection
+ --enable-introspection --with-gtk=3.0 \
+ --enable-gtk-doc
make
+ popd
+}
+
+package_vte(){
+ pkgdesc+=" GTK2"
+ depends=('gtk2' 'vte-common')
+ cd "${srcdir}/${pkgbase}-${pkgver}"/build-gtk2
make DESTDIR="${pkgdir}" install
+
+ rm "${pkgdir}"/usr/lib/vte/gnome-pty-helper
+}
+
+package_vte3(){
+ pkgdesc+=" GTK3"
+ depends=('gtk3' 'vte-common')
+ cd "${srcdir}/${pkgbase}-${pkgver}"/build-gtk3
+ make DESTDIR="${pkgdir}" install
+
+ rm "${pkgdir}"/usr/lib/vte/gnome-pty-helper
+}
+
+package_vte-common() {
+ pkgdesc="Common files used by vte and vte3"
+ cd "${srcdir}/${pkgbase}-${pkgver}"/build-gtk3
+
+ make -C gnome-pty-helper DESTDIR="${pkgdir}" install
}
diff --git a/extra/xarchiver/PKGBUILD b/extra/xarchiver/PKGBUILD
index 55756f589..33e3a3146 100644
--- a/extra/xarchiver/PKGBUILD
+++ b/extra/xarchiver/PKGBUILD
@@ -1,13 +1,13 @@
-# $Id: PKGBUILD 20752 2008-12-06 14:28:02Z alexanderf $
+# $Id: PKGBUILD 121261 2011-04-29 22:06:13Z andyrtr $
# Maintainer: Alexander Fehr <pizzapunk gmail com>
# Contributor: Andrew Simmons <andrew.simmons@gmail.com>
pkgname=xarchiver
pkgver=0.5.2
-pkgrel=1
+pkgrel=2
pkgdesc="GTK+ frontend to various command line archivers"
arch=('i686' 'x86_64' 'mips64el')
-url="http://xarchiver.xfce.org/"
+url="http://xarchiver.sourceforge.net"
license=('GPL')
groups=('xfce4-goodies')
depends=('gtk2' 'desktop-file-utils' 'hicolor-icon-theme')
@@ -30,8 +30,11 @@ md5sums=('2bc7f06403cc6582dd4a8029ec9d038d')
build() {
cd "$srcdir/xarchiver-$pkgver"
+ ./configure --prefix=/usr --libexecdir=/usr/lib/xfce4
+ make
+}
- ./configure --prefix=/usr --libexecdir=/usr/lib/xfce4 || return 1
- make || return 1
- make DESTDIR="$pkgdir" install || return 1
+package() {
+ cd "$srcdir/xarchiver-$pkgver"
+ make DESTDIR="$pkgdir" install
}
diff --git a/extra/xchm/PKGBUILD b/extra/xchm/PKGBUILD
index f27edb09f..d870cc608 100644
--- a/extra/xchm/PKGBUILD
+++ b/extra/xchm/PKGBUILD
@@ -1,8 +1,8 @@
-# $Id: PKGBUILD 108735 2011-02-02 18:31:26Z giovanni $
+# $Id: PKGBUILD 120950 2011-04-27 19:00:34Z giovanni $
# Maintainer: Giovanni Scafora <giovanni@archlinux.org>
pkgname=xchm
-pkgver=1.18
+pkgver=1.19
pkgrel=1
pkgdesc="A cross-platform GUI front-end to chmlib"
arch=('i686' 'x86_64' 'mips64el')
@@ -13,7 +13,7 @@ install=xchm.install
source=(http://downloads.sourceforge.net/sourceforge/xchm/${pkgname}-${pkgver}.tar.gz
xchm.desktop
xchm.xml)
-md5sums=('07d7a910b3216301a002be5630c71866'
+md5sums=('c9d65971801e044d51476f57e91909fc'
'31fb9692b9ee9f2a205f58b9ff4bc4fe'
'4102b0a393f5c60236143cc034664dd0')
@@ -21,12 +21,12 @@ build() {
cd "${srcdir}/${pkgname}-${pkgver}"
export CXXFLAGS="${CXXFLAGS} -fno-strict-aliasing"
./configure --prefix=/usr
- make || return 1
+ make
}
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
- make DESTDIR=${pkgdir} install || return 1
- install -D -m644 ${srcdir}/xchm.desktop "${pkgdir}/usr/share/applications/xchm.desktop" || return 1
- install -D -m644 ${srcdir}/xchm.xml "${pkgdir}/usr/share/mime/packages/xchm.xml" || return 1
+ make DESTDIR=${pkgdir} install
+ install -D -m644 ${srcdir}/xchm.desktop "${pkgdir}/usr/share/applications/xchm.desktop"
+ install -D -m644 ${srcdir}/xchm.xml "${pkgdir}/usr/share/mime/packages/xchm.xml"
}
diff --git a/extra/xsp/PKGBUILD b/extra/xsp/PKGBUILD
index b468d0b9d..3e0a1b614 100644
--- a/extra/xsp/PKGBUILD
+++ b/extra/xsp/PKGBUILD
@@ -1,20 +1,20 @@
-# $Id: PKGBUILD 111514 2011-02-27 11:35:42Z daniel $
+# $Id: PKGBUILD 120915 2011-04-27 09:28:00Z daniel $
# Maintainer: Daniel Isenmann <daniel@archlinux.org>
# Contributor: Tobias Kieslich <tobias@justdreams.de>
pkgname=xsp
-pkgver=2.10
+pkgver=2.10.2
pkgrel=1
pkgdesc="A simple webserver based on mono - provides ASP.NET support"
arch=(i686 x86_64 'mips64el')
license=('custom')
url="http://www.go-mono.com"
-depends=('mono>=2.10.1' 'sqlite3')
+depends=('mono>=2.10.2' 'sqlite3')
options=(!makeflags)
install=${pkgname}.install
source=(http://ftp.novell.com/pub/mono/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2 \
${pkgname}.rc.d ${pkgname}.conf.d ${pkgname}.webapp)
-md5sums=('aec9369a00a9728801ea2587a1a8fd9c'
+md5sums=('4fe62fc95ad5dc136d8a7f3299d523b6'
'9575bd7d6f64d51ba05bdd6370665858'
'35d921df0fefc30f47a438c95d420efc'
'c917c07f68b945691506c29750db482f')
diff --git a/extra/xulrunner/PKGBUILD b/extra/xulrunner/PKGBUILD
index 0fe853d23..3fb4ccab2 100644
--- a/extra/xulrunner/PKGBUILD
+++ b/extra/xulrunner/PKGBUILD
@@ -1,9 +1,9 @@
-# $Id: PKGBUILD 115811 2011-03-21 17:44:12Z ibiru $
+# $Id: PKGBUILD 121212 2011-04-29 14:12:33Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Contributor: Alexander Baldeck <alexander@archlinux.org>
pkgname=xulrunner
-pkgver=2.0
-_ffoxver=4.0
+pkgver=2.0.1
+_ffoxver=4.0.1
pkgrel=1
pkgdesc="Mozilla Runtime Environment"
arch=('i686' 'x86_64' 'mips64el')
@@ -18,11 +18,11 @@ source=(http://releases.mozilla.org/pub/mozilla.org/firefox/releases/${_ffoxver}
xulrunner-omnijar.patch
port_gnomevfs_to_gio.patch)
options=('!emptydirs')
-md5sums=('3468a2c463b4fc2788ba621e4b511c30'
+md5sums=('9abda7d23151e97913c8555a64c13f34'
'2358a2ddd35bcdd62ff42442dfe548d9'
'639ea80e823543dd415b90c0ee804186'
'a0236f6c3e55f60b7888d8cf137ff209'
- 'dea8c2a57a588bf5f6198ce7b4155655'
+ '0bf82bc6677e3ce57fd20a147fe8d7b1'
'42f83468b296452fb754a81a4317ca64')
build() {
cd "${srcdir}/mozilla-2.0"
@@ -43,6 +43,8 @@ build() {
unset CFLAGS
unset CXXFLAGS
+ export CXXFLAGS="-fpermissive"
+
make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS"
}
diff --git a/extra/xulrunner/xulrunner-omnijar.patch b/extra/xulrunner/xulrunner-omnijar.patch
index 05b665afd..66ec5206c 100644
--- a/extra/xulrunner/xulrunner-omnijar.patch
+++ b/extra/xulrunner/xulrunner-omnijar.patch
@@ -468,11 +468,11 @@ diff --git a/js/src/xpconnect/loader/mozJSComponentLoader.cpp b/js/src/xpconnect
diff --git a/modules/libjar/nsJAR.cpp b/modules/libjar/nsJAR.cpp
--- a/modules/libjar/nsJAR.cpp
+++ b/modules/libjar/nsJAR.cpp
-@@ -170,26 +170,23 @@ nsJAR::Open(nsIFile* zipFile)
- NS_ENSURE_ARG_POINTER(zipFile);
+@@ -171,26 +171,23 @@ nsJAR::Open(nsIFile* zipFile)
if (mLock) return NS_ERROR_FAILURE; // Already open!
mZipFile = zipFile;
+ mOuterZipEntry.Truncate();
mLock = PR_NewLock();
NS_ENSURE_TRUE(mLock, NS_ERROR_OUT_OF_MEMORY);
@@ -499,13 +499,13 @@ diff --git a/modules/libjar/nsJAR.cpp b/modules/libjar/nsJAR.cpp
NS_ENSURE_ARG_POINTER(aZipReader);
NS_ENSURE_ARG_POINTER(aZipEntry);
@@ -234,23 +231,22 @@ nsJAR::Close()
+ mLock = nsnull;
}
mParsedManifest = PR_FALSE;
mManifestData.Reset();
mGlobalStatus = JAR_MANIFEST_NOT_PARSED;
mTotalItemsInManifest = 0;
- mOuterZipEntry.Truncate(0);
-#ifdef MOZ_OMNIJAR
- if (mZip == mozilla::OmnijarReader()) {
diff --git a/extra/yelp/PKGBUILD b/extra/yelp/PKGBUILD
index 9c2df9cd6..c68a296b4 100644
--- a/extra/yelp/PKGBUILD
+++ b/extra/yelp/PKGBUILD
@@ -1,32 +1,30 @@
-# $Id: PKGBUILD 115826 2011-03-21 19:45:05Z ibiru $
+# $Id: PKGBUILD 120703 2011-04-26 05:18:34Z jgc $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=yelp
-pkgver=2.30.1
-pkgrel=2
+pkgver=3.0.2
+pkgrel=1
pkgdesc="A help browser for GNOME"
arch=('i686' 'x86_64' 'mips64el')
-depends=('libwebkit' 'gnome-doc-utils>=0.20.2' 'startup-notification>=0.10' 'libxslt' 'hicolor-icon-theme' 'rarian>=0.8.1' 'gconf>=2.28.1')
-makedepends=('intltool' 'pkgconfig')
+depends=('libwebkit3' 'yelp-xsl' 'libxslt' 'hicolor-icon-theme' 'dbus-glib'
+ 'xz' 'bzip2' 'desktop-file-utils' 'dconf')
+makedepends=('intltool' 'gtk-doc')
groups=('gnome')
license=('GPL')
-options=('!emptydirs')
+options=('!emptydirs' '!libtool')
url="http://www.gnome.org"
install=yelp.install
-options=(force)
-#source=(http://ftp.gnome.org/pub/gnome/sources/yelp/2.30/yelp-${pkgver}.tar.bz2)
-source=(http://ftp.de.debian.org/debian/pool/main/y/yelp/yelp_${pkgver}+webkit.orig.tar.gz)
-sha256sums=('2f450ca32f3057de4a7be0f9a8408314b47ba6f157bcdb416a333fe4e5f7a44b')
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2)
+sha256sums=('6de6c45439b21a3042236d5d836de9dd44d59c2d4c324982c316b4b6834ce0a4')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
./configure --prefix=/usr --sysconfdir=/etc \
- --localstatedir=/var \
- --with-search=basic
+ --localstatedir=/var --disable-static
make
- make -j1 GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
+}
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain yelp ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
}
diff --git a/extra/yelp/yelp.install b/extra/yelp/yelp.install
index 3a893b043..f3bf19a93 100644
--- a/extra/yelp/yelp.install
+++ b/extra/yelp/yelp.install
@@ -1,22 +1,19 @@
-pkgname=yelp
-
post_install() {
- gconfpkg --install ${pkgname}
- gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor
+ usr/bin/glib-compile-schemas usr/share/glib-2.0/schemas
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ update-desktop-database -q
}
pre_upgrade() {
- pre_remove $1
+ if (( $(vercmp $2 2.90.0) < 0 )); then
+ usr/sbin/gconfpkg --uninstall yelp
+ fi
}
post_upgrade() {
- post_install $1
-}
-
-pre_remove() {
- gconfpkg --uninstall ${pkgname}
+ post_install
}
post_remove() {
- gtk-update-icon-cache -q -t -f /usr/share/icons/hicolor
+ post_install
}
diff --git a/extra/zenity/PKGBUILD b/extra/zenity/PKGBUILD
index 84ac3b876..202f80ecd 100644
--- a/extra/zenity/PKGBUILD
+++ b/extra/zenity/PKGBUILD
@@ -1,26 +1,26 @@
-# $Id: PKGBUILD 112936 2011-03-07 19:37:34Z ibiru $
+# $Id: PKGBUILD 118440 2011-04-06 21:18:58Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=zenity
-pkgver=2.32.1
+pkgver=3.0.0
pkgrel=2
pkgdesc="Display graphical dialog boxes from shell scripts"
arch=(i686 x86_64 'mips64el')
license=('LGPL')
-depends=('libnotify>=0.7.1' 'gtk2')
-makedepends=('intltool' 'gnome-doc-utils>=0.20.2')
-groups=('gnome-extra')
+depends=('gtk3' 'libnotify')
+makedepends=('intltool' 'gtk-doc')
url="http://www.gnome.org"
-source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/2.32/${pkgname}-${pkgver}.tar.bz2
- zenity-2.32.1-libnotify-0.7.patch)
-sha256sums=('8838be041a07364b62a4281c971392e4a09bb01bb3237a836ec0457ec0ea18ac'
- '98bf6ca77f0fef14a5f0b8788595710b7eb88db121103a72c4a38bb912038431')
+source=(http://ftp.gnome.org/pub/gnome/sources/${pkgname}/${pkgver%.*}/${pkgname}-${pkgver}.tar.bz2)
+sha256sums=('b1965b6704e80665c551261b9895a06322aba3f9776f8e5dd8141c7e8aca5131')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
- patch -Np0 -i "${srcdir}/zenity-2.32.1-libnotify-0.7.patch"
./configure --prefix=/usr --sysconfdir=/etc \
--localstatedir=/var --disable-scrollkeeper
make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
make DESTDIR="${pkgdir}" install
}
diff --git a/extra/zip/PKGBUILD b/extra/zip/PKGBUILD
index 97b4882da..ecf3e02a5 100644
--- a/extra/zip/PKGBUILD
+++ b/extra/zip/PKGBUILD
@@ -1,22 +1,28 @@
-# $Id: PKGBUILD 8433 2008-08-11 03:21:13Z eric $
-# Maintainer: dorphell <dorphell@archlinux.org>
+# $Id: PKGBUILD 121305 2011-04-30 13:24:04Z andrea $
+# Maintainer:
+# Contributor: dorphell <dorphell@archlinux.org>
pkgname=zip
pkgver=3.0
-pkgrel=1
+_pkgver=30
+pkgrel=2
pkgdesc="Creates PKZIP-compatible .zip files"
arch=(i686 x86_64 'mips64el')
url="http://www.info-zip.org/pub/infozip/Zip.html"
license=('BSD')
-depends=('glibc' 'bzip2')
-makedepends=('unzip')
+depends=('bzip2')
options=('!makeflags')
-source=(ftp://ftp.info-zip.org/pub/infozip/src/zip30.zip)
+source=("ftp://ftp.info-zip.org/pub/infozip/src/${pkgname}${_pkgver}.zip")
md5sums=('e88492c8abd68fa9cfba72bc08757dba')
build() {
- cd $startdir/src/${pkgname}30
- make -f unix/Makefile LOCAL_ZIP="$CFLAGS" prefix=/usr generic_gcc || return 1
- make -f unix/Makefile INSTALL=`which install` prefix=$startdir/pkg/usr MANDIR=$startdir/pkg/usr/share/man/man1 install
- install -D -m644 LICENSE $startdir/pkg/usr/share/licenses/$pkgname/LICENSE.txt
+ cd "${srcdir}/${pkgname}${_pkgver}"
+ make -f unix/Makefile LOCAL_ZIP="$CFLAGS" prefix=/usr generic_gcc
+}
+
+package() {
+ cd "${srcdir}/${pkgname}${_pkgver}"
+ make -f unix/Makefile INSTALL=/bin/install prefix=${pkgdir}/usr \
+ MANDIR=${pkgdir}/usr/share/man/man1 install
+ install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/$pkgname/LICENSE
}
diff --git a/kde-unstable/kdepim-runtime/PKGBUILD b/kde-unstable/kdepim-runtime/PKGBUILD
index ee02398ee..a6deb8923 100644
--- a/kde-unstable/kdepim-runtime/PKGBUILD
+++ b/kde-unstable/kdepim-runtime/PKGBUILD
@@ -13,7 +13,7 @@ depends=('kdepimlibs' 'kdebase-runtime')
makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost')
install=${pkgname}.install
#source=("http://download.kde.org/unstable/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2")
-source=("http://download.kde.org/unstable/kdepim/${pkgver}/src/${pkgname}-${pkgver}.tar.bz2"
+source=("http://download.kde.org/unstable/kdepim/${pkgver}/${pkgname}-${pkgver}.tar.bz2"
'disable-l10n.patch')
sha1sums=('0607224f725ee161d16d41a44bd02bacb8245434'
'991d81435205185dcb2285a6e728f7756ae92b0d')
diff --git a/kde-unstable/kdepim/PKGBUILD b/kde-unstable/kdepim/PKGBUILD
index 24cc2f899..e1b35c94e 100644
--- a/kde-unstable/kdepim/PKGBUILD
+++ b/kde-unstable/kdepim/PKGBUILD
@@ -1,4 +1,4 @@
-# $Id: PKGBUILD 119654 2011-04-13 08:39:02Z andrea $
+# $Id: PKGBUILD 121977 2011-05-01 00:22:38Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Pierre Schmitz <pierre@archlinux.de>
@@ -29,7 +29,7 @@ groups=('kde' 'kdepim')
makedepends=('pkgconfig' 'cmake' 'automoc4' 'boost' 'kdepim-runtime' 'libxss'
'pilot-link' 'kde-agent' 'docbook-xsl')
#source=("http://download.kde.org/unstable/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2")
-source=("http://download.kde.org/unstable/${pkgbase}/${pkgver}/src/${pkgbase}-${pkgver}.tar.bz2"
+source=("http://download.kde.org/unstable/${pkgbase}/${pkgver}/${pkgbase}-${pkgver}.tar.bz2"
'disable-l10n.patch')
sha1sums=('5227ac466247f043643bb9eaa7568e8b936edafe'
'25e36f160ced051268e59fad6ed2de33a9c7657a')
diff --git a/libre/aufs2-libre/PKGBUILD b/libre/aufs2-libre/PKGBUILD
index e17c24024..f12df73ae 100644
--- a/libre/aufs2-libre/PKGBUILD
+++ b/libre/aufs2-libre/PKGBUILD
@@ -2,22 +2,23 @@
# Maintainer: Paul Mattal <pjmattal@elys.com>
pkgname=aufs2-libre
-pkgver=2.6.37_20110124
-pkgrel=3
+pkgver=2.6.38_20110314
+pkgrel=4
#_kernver=${pkgver%_*}-LIBRE
-_kernver=2.6.37-LIBRE
+_kernver=2.6.38-LIBRE
pkgdesc="Another Unionfs Implementation for the Linux-Libre kernel"
arch=('i686' 'x86_64' 'mips64el')
url="http://aufs.sourceforge.net/"
license=('GPL2')
-depends=('kernel26-libre>=2.6.37.3' 'kernel26-libre<2.6.38')
-makedepends=('kernel26-libre-headers>=2.6.37' 'kernel26-libre-headers<2.6.38')
+depends=('kernel26-libre>=2.6.38' 'kernel26-libre<2.6.39')
+makedepends=('kernel26-libre-headers>=2.6.38' 'kernel26-libre-headers<2.6.39')
replaces=('aufs' 'aufs2')
conflicts=('aufs2')
provides=("aufs2=$pkgver")
install=${pkgname}.install
source=("ftp://ftp.archlinux.org/other/aufs2/${pkgname%-libre}-${pkgver}.tar.gz")
-options=('!makeflags')
+options=('!makeflags' '!strip')
+md5sums=('60649fa47d3f499dfbb4b68a2afde47c')
build() {
cd ${srcdir}/${pkgname%-libre}-${pkgver}
@@ -61,7 +62,3 @@ package() {
# gzip -9 all modules to safe 100MB
find "$pkgdir" -name '*.ko' -exec gzip -9 {} \;
}
-
-md5sums=('fa64d7893490ef9c82310ebd5f730443')
-
-md5sums=('fa64d7893490ef9c82310ebd5f730443')
diff --git a/libre/aufs2-libre/aufs2-libre.install b/libre/aufs2-libre/aufs2-libre.install
index 4c95ad76e..883882a54 100644
--- a/libre/aufs2-libre/aufs2-libre.install
+++ b/libre/aufs2-libre/aufs2-libre.install
@@ -1,5 +1,5 @@
post_install() {
- KERNEL_VERSION=2.6.37-ARCH
+ KERNEL_VERSION=2.6.38-LIBRE
depmod $KERNEL_VERSION
}
diff --git a/libre/aufs2-libre/create-tarball.sh b/libre/aufs2-libre/create-tarball.sh
index a460a8b3b..6801f00bd 100644
--- a/libre/aufs2-libre/create-tarball.sh
+++ b/libre/aufs2-libre/create-tarball.sh
@@ -1,12 +1,12 @@
#!/bin/sh
-AUFS2VERSION="-37"
-KERNELVERSION=2.6.37
-GITSNAPSHOT=20110124
+AUFS2VERSION="-38"
+KERNELVERSION=2.6.38
+GITSNAPSHOT=20110314
# aufs2 (no -xx) for the latest -rc version.
git clone http://git.c3sl.ufpr.br/pub/scm/aufs/aufs2-standalone.git aufs2-standalone.git
cd aufs2-standalone.git
-git checkout origin/aufs2.1${AUFS2VERSION}
-#git checkout origin/aufs2.1
+#git checkout origin/aufs2.1${AUFS2VERSION}
+git checkout origin/aufs2.1
#*** apply "aufs2-base.patch" and "aufs2-standalone.patch" to your kernel source files.
cd ..
rm -rf aufs2-${KERNELVERSION}_${GITSNAPSHOT}
diff --git a/libre/kernel26-libre-lts/PKGBUILD b/libre/kernel26-libre-lts/PKGBUILD
index 901cfc071..ce48f4625 100644
--- a/libre/kernel26-libre-lts/PKGBUILD
+++ b/libre/kernel26-libre-lts/PKGBUILD
@@ -7,7 +7,7 @@ pkgname=('kernel26-libre-lts' 'kernel26-libre-lts-headers') # Build stock -lts k
_kernelname=${pkgname#kernel26-libre}
_basekernel=2.6.32
_preset=kernel26-lts.preset
-pkgver=${_basekernel}.36
+pkgver=${_basekernel}.39
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
license=('GPL2')
@@ -18,7 +18,8 @@ source=(http://www.fsfla.org/svnwiki/selibre/linux-libre/download/releases/${pkg
config.i686 config.x86_64
# standard config files for mkinitcpio ramdisk
${_preset}
- ${pkgname}.install)
+ ${pkgname}.install
+ buildfix-gcc46.diff)
options=(!strip)
build() {
@@ -27,8 +28,10 @@ build() {
# fix 22343 udev crashes
patch -Np1 -i ${srcdir}/libata-alignment.patch
- cat ../config.$CARCH >./.config
+ # fix build with gcc46 - http://git.kernel.org/?p=linux/kernel/git/stable/linux-2.6.38.y.git;a=commitdiff;h=b1d670f1#patch1
+ patch -Np1 -i ${srcdir}/buildfix-gcc46.diff
+ cat ../config.$CARCH >./.config
if [ "${_kernelname}" != "" ]; then
sed -i "s|CONFIG_LOCALVERSION=.*|CONFIG_LOCALVERSION=\"${_kernelname}\"|g" ./.config
fi
@@ -118,7 +121,7 @@ package_kernel26-libre-lts-headers() {
${pkgdir}/usr/src/linux-${_kernver}/.config
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/include
- for i in acpi asm-{generic,x86} config linux math-emu media net pcmcia scsi sound trace video; do
+ for i in acpi asm-{generic,x86} config crypto drm linux math-emu media net pcmcia scsi sound trace video; do
cp -a include/$i ${pkgdir}/usr/src/linux-${_kernver}/include/
done
@@ -189,20 +192,7 @@ package_kernel26-libre-lts-headers() {
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/fs/xfs
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/mm
cp fs/xfs/xfs_sb.h ${pkgdir}/usr/src/linux-${_kernver}/fs/xfs/xfs_sb.h
- # add headers vor virtualbox
- # in reference to:
- # http://bugs.archlinux.org/task/14568
- cp -a include/drm $pkgdir/usr/src/linux-${_kernver}/include/
- # add headers for broadcom wl
- # in reference to:
- # http://bugs.archlinux.org/task/14568
- cp -a include/trace $pkgdir/usr/src/linux-${_kernver}/include/
- # add headers for crypto modules
- # in reference to:
- # http://bugs.archlinux.org/task/22081
- cp -a include/crypto $pkgdir/usr/src/linux-${_kernver}/include/
-
# copy in Kconfig files
for i in `find . -name "Kconfig*"`; do
mkdir -p ${pkgdir}/usr/src/linux-${_kernver}/`echo $i | sed 's|/Kconfig.*||'`
@@ -229,10 +219,10 @@ package_kernel26-libre-lts-headers() {
# remove unneeded architectures
rm -rf ${pkgdir}/usr/src/linux-${_kernver}/arch/{alpha,arm,arm26,avr32,blackfin,cris,frv,h8300,ia64,m32r,m68k,m68knommu,mips,microblaze,mn10300,parisc,powerpc,ppc,s390,sh,sh64,sparc,sparc64,um,v850,xtensa}
}
-
-md5sums=('44f553d98efbab305ec490334560b097'
+md5sums=('9502a2248b2024da4f30a5d52a90322d'
'30851deee235a7486bd408cbe8eb2d71'
- 'c0bd6a068a32636e52bf4d887bb2b722'
- 'a5a3af2b95f9a8b3c43d1a74fa5fd82c'
+ '3298f542840c52a8b8abc1b3795e455b'
+ 'cd1a62e81eb9e910779f3eb18a6e28c6'
'2cbfeb3e2a18d45f82f613e97fc23355'
- 'fbfc7a1af3208c7b729055d91e1c149a')
+ 'fbfc7a1af3208c7b729055d91e1c149a'
+ 'bb7410d7b740dfad0385a07b66e6621f')
diff --git a/libre/kernel26-libre-lts/config.i686 b/libre/kernel26-libre-lts/config.i686
index d2bba6bee..2865c58fa 100644
--- a/libre/kernel26-libre-lts/config.i686
+++ b/libre/kernel26-libre-lts/config.i686
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.32
-# Fri Feb 18 17:22:19 2011
+# Mon Apr 18 12:31:05 2011
#
# CONFIG_64BIT is not set
CONFIG_X86_32=y
@@ -2308,9 +2308,9 @@ CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
CONFIG_TOUCHSCREEN_TOUCHWIN=m
CONFIG_TOUCHSCREEN_UCB1400=m
CONFIG_TOUCHSCREEN_WM97XX=m
-# CONFIG_TOUCHSCREEN_WM9705 is not set
-# CONFIG_TOUCHSCREEN_WM9712 is not set
-# CONFIG_TOUCHSCREEN_WM9713 is not set
+CONFIG_TOUCHSCREEN_WM9705=y
+CONFIG_TOUCHSCREEN_WM9712=y
+CONFIG_TOUCHSCREEN_WM9713=y
CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
CONFIG_TOUCHSCREEN_USB_EGALAX=y
CONFIG_TOUCHSCREEN_USB_PANJIT=y
@@ -2324,10 +2324,10 @@ CONFIG_TOUCHSCREEN_USB_IDEALTEK=y
CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
CONFIG_TOUCHSCREEN_USB_GOTOP=y
CONFIG_TOUCHSCREEN_USB_JASTEC=y
-# CONFIG_TOUCHSCREEN_USB_E2I is not set
+CONFIG_TOUCHSCREEN_USB_E2I=y
CONFIG_TOUCHSCREEN_TOUCHIT213=m
CONFIG_TOUCHSCREEN_TSC2007=m
-# CONFIG_TOUCHSCREEN_PCAP is not set
+CONFIG_TOUCHSCREEN_PCAP=m
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=m
CONFIG_INPUT_APANEL=m
@@ -4457,7 +4457,7 @@ CONFIG_DLM=m
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-# CONFIG_PRINTK_TIME is not set
+CONFIG_PRINTK_TIME=y
CONFIG_ENABLE_WARN_DEPRECATED=y
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_FRAME_WARN=1024
diff --git a/libre/kernel26-libre-lts/config.x86_64 b/libre/kernel26-libre-lts/config.x86_64
index 494bb3eff..30cc5aefa 100644
--- a/libre/kernel26-libre-lts/config.x86_64
+++ b/libre/kernel26-libre-lts/config.x86_64
@@ -1,7 +1,7 @@
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.32
-# Mon Mar 21 12:20:44 2011
+# Mon Apr 18 14:25:56 2011
#
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
@@ -2188,9 +2188,9 @@ CONFIG_TOUCHSCREEN_TOUCHRIGHT=m
CONFIG_TOUCHSCREEN_TOUCHWIN=m
CONFIG_TOUCHSCREEN_UCB1400=m
CONFIG_TOUCHSCREEN_WM97XX=m
-# CONFIG_TOUCHSCREEN_WM9705 is not set
-# CONFIG_TOUCHSCREEN_WM9712 is not set
-# CONFIG_TOUCHSCREEN_WM9713 is not set
+CONFIG_TOUCHSCREEN_WM9705=y
+CONFIG_TOUCHSCREEN_WM9712=y
+CONFIG_TOUCHSCREEN_WM9713=y
CONFIG_TOUCHSCREEN_USB_COMPOSITE=m
CONFIG_TOUCHSCREEN_USB_EGALAX=y
CONFIG_TOUCHSCREEN_USB_PANJIT=y
@@ -2204,10 +2204,10 @@ CONFIG_TOUCHSCREEN_USB_IDEALTEK=y
CONFIG_TOUCHSCREEN_USB_GENERAL_TOUCH=y
CONFIG_TOUCHSCREEN_USB_GOTOP=y
CONFIG_TOUCHSCREEN_USB_JASTEC=y
-# CONFIG_TOUCHSCREEN_USB_E2I is not set
+CONFIG_TOUCHSCREEN_USB_E2I=y
CONFIG_TOUCHSCREEN_TOUCHIT213=m
CONFIG_TOUCHSCREEN_TSC2007=m
-# CONFIG_TOUCHSCREEN_PCAP is not set
+CONFIG_TOUCHSCREEN_PCAP=m
CONFIG_INPUT_MISC=y
CONFIG_INPUT_PCSPKR=m
CONFIG_INPUT_APANEL=m
@@ -4270,7 +4270,7 @@ CONFIG_DLM=m
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
-# CONFIG_PRINTK_TIME is not set
+CONFIG_PRINTK_TIME=y
CONFIG_ENABLE_WARN_DEPRECATED=y
# CONFIG_ENABLE_MUST_CHECK is not set
CONFIG_FRAME_WARN=2048
diff --git a/libre/libretools/PKGBUILD b/libre/libretools/PKGBUILD
index 59eee7f1b..a0d3f1497 100644
--- a/libre/libretools/PKGBUILD
+++ b/libre/libretools/PKGBUILD
@@ -54,6 +54,7 @@ package() {
install -m755 ${_gitname}/librestage ${pkgdir}/usr/bin/
install -m755 ${_gitname}/mipsrelease ${pkgdir}/usr/bin
install -m755 ${_gitname}/pkgbuild-check-nonfree ${pkgdir}/usr/bin/
+ install -m755 ${_gitname}/toru ${pkgdir}/usr/bin
install -m755 ${_gitname}/updateabslibre ${pkgdir}/usr/bin
} \ No newline at end of file
diff --git a/multilib/lib32-gdk-pixbuf2/PKGBUILD b/multilib/lib32-gdk-pixbuf2/PKGBUILD
index 5fa1dca14..d78f9ed83 100644
--- a/multilib/lib32-gdk-pixbuf2/PKGBUILD
+++ b/multilib/lib32-gdk-pixbuf2/PKGBUILD
@@ -2,7 +2,7 @@
# Maintainer: Ionut Biru <ibiru@archlinux.org>
_pkgbasename=gdk-pixbuf2
pkgname=lib32-$_pkgbasename
-pkgver=2.22.1
+pkgver=2.23.3
pkgrel=1
pkgdesc="An image loading library for gtk2 (32-bit)"
arch=('i686' 'x86_64' 'mips64el')
@@ -14,8 +14,8 @@ depends=('lib32-glib2>=2.25.15'
makedepends=(gcc-multilib)
options=('!libtool' '!docs')
install=gdk-pixbuf2.install
-source=(http://download.gnome.org/sources/gdk-pixbuf/2.22/gdk-pixbuf-${pkgver}.tar.bz2)
-sha256sums=('6ce87eda24af9362307b2593c154d0b660f4e26d0abf2e71d46d0ddd55fd953d')
+source=(http://download.gnome.org/sources/gdk-pixbuf/2.23/gdk-pixbuf-${pkgver}.tar.bz2)
+sha256sums=('9faba780151c02e13cb2029d512c975e9c41b98cd72de6d2cc50e4af10a5e76a')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-glib2/PKGBUILD b/multilib/lib32-glib2/PKGBUILD
index 65c31becf..9208fc109 100644
--- a/multilib/lib32-glib2/PKGBUILD
+++ b/multilib/lib32-glib2/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 36638 2011-01-05 16:58:45Z heftig $
+# $Id: PKGBUILD 45657 2011-04-26 16:44:11Z svenstaro $
# Maintainer: Ionut Biru <ibiru@archlinux.org>
# Contributor: Pierre Schmitz <pierre@archlinux.de>
# Contributor: Mikko Seppälä <t-r-a-y@mbnet.fi>
_pkgbasename=glib2
pkgname=lib32-$_pkgbasename
-pkgver=2.26.1
-pkgrel=2
+pkgver=2.28.6
+pkgrel=1
pkgdesc="Common C routines used by GTK+ 2.4 and other libs (32-bit)"
url="http://www.gtk.org/"
arch=('x86_64' 'mips64el')
@@ -13,8 +13,8 @@ license=('LGPL')
depends=('lib32-pcre' 'lib32-zlib' 'lib32-dbus-core' $_pkgbasename)
makedepends=('gcc-multilib')
options=('!libtool' '!docs')
-source=(http://ftp.gnome.org/pub/GNOME/sources/glib/2.26/glib-${pkgver}.tar.bz2)
-sha256sums=('7a74ff12b6b9dee1f2d0e520b56b68b621920c4f4250bdf23468e515625c28d5')
+source=(http://ftp.gnome.org/pub/GNOME/sources/glib/2.28/glib-${pkgver}.tar.bz2)
+sha256sums=('557fb7c39d21b9359fbac51fd6b0b883bc97a2561c0166eef993a4078312f578')
build() {
export CC="gcc -m32"
diff --git a/multilib/lib32-gtk2/PKGBUILD b/multilib/lib32-gtk2/PKGBUILD
index c55bdd730..b1b41044b 100644
--- a/multilib/lib32-gtk2/PKGBUILD
+++ b/multilib/lib32-gtk2/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 33371 2010-11-24 00:05:20Z lcarlier $
+# $Id: PKGBUILD 45659 2011-04-26 16:47:39Z svenstaro $
# Maintainer: Ionut Biru <ibiru@archlinux.org
# Contributor: Pierre Schmitz <pierre@archlinux.de>
# Contributor: Mikko Seppälä <t-r-a-y@mbnet.fi>
_pkgbasename=gtk2
pkgname=lib32-$_pkgbasename
-pkgver=2.22.1
-pkgrel=2
+pkgver=2.24.4
+pkgrel=1
pkgdesc="The GTK+ Toolkit (v2) (32-bit)"
arch=('x86_64' 'mips64el')
url="http://www.gtk.org/"
@@ -17,10 +17,10 @@ depends=(lib32-{'atk>=1.30.0','pango>=1.28.0','cairo>=1.10.0','heimdal>=1.3.2','
makedepends=('pkgconfig' 'gcc-multilib')
options=('!libtool' '!docs')
license=('LGPL')
-source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/2.22/gtk+-${pkgver}.tar.bz2
+source=(http://ftp.gnome.org/pub/gnome/sources/gtk+/2.24/gtk+-${pkgver}.tar.bz2
xid-collision-debug.patch
gtk-modules-32.patch)
-sha256sums=('965bc124f0d25087c4cb2a64cbfd7e4f896e05be8d560fbba68dd8685ba24d07'
+sha256sums=('7d3033ad83647079977466d3e8f1a7533f47abd5cc693f01b8797ff43dd407a5'
'd758bb93e59df15a4ea7732cf984d1c3c19dff67c94b957575efea132b8fe558'
'2effb13404442ae266d4c663347e88cd1ca19e9a83b452da1743bac16af9c7b0')
diff --git a/multilib/wine/PKGBUILD b/multilib/wine/PKGBUILD
index b452aceba..33cfd7574 100644
--- a/multilib/wine/PKGBUILD
+++ b/multilib/wine/PKGBUILD
@@ -1,17 +1,17 @@
-# $Id: PKGBUILD 45066 2011-04-15 20:30:34Z svenstaro $
+# $Id: PKGBUILD 45826 2011-04-29 19:49:25Z svenstaro $
# Maintainer: Sven-Hendrik Haase <sh@lutzhaase.com>
# Contributor: Jan "heftig" Steffens <jan.steffens@gmail.com>
# Contributor: Eduardo Romero <eduardo@archlinux.org>
# Contributor: Giovanni Scafora <giovanni@archlinux.org>
pkgname=wine
-pkgver=1.3.18
+pkgver=1.3.19
pkgrel=1
_pkgbasever=${pkgver/rc/-rc}
source=(http://ibiblio.org/pub/linux/system/emulators/$pkgname/$pkgname-$_pkgbasever.tar.bz2)
-md5sums=('17fb6334af12af17feb843f68272b070')
+md5sums=('6975269be6e86d7d9da519ed6f3b40a4')
pkgdesc="A compatibility layer for running Windows programs"
url="http://www.winehq.com"
diff --git a/staging/alpine/2.00-lpam.patch b/staging/alpine/2.00-lpam.patch
new file mode 100644
index 000000000..69e66d7ef
--- /dev/null
+++ b/staging/alpine/2.00-lpam.patch
@@ -0,0 +1,13 @@
+--- alpine-2.00.orig/alpine/Makefile.in
++++ alpine-2.00/alpine/Makefile.in
+@@ -169,7 +169,7 @@
+ LIBICONV = @LIBICONV@
+ LIBINTL = @LIBINTL@
+ LIBOBJS = @LIBOBJS@
+-LIBS = @LIBS@
++LIBS = @LIBS@ -lpam
+ LIBTOOL = @LIBTOOL@
+ LN = @LN@
+ LN_S = @LN_S@
+ LTLIBICONV = @LTLIBICONV@
+ LTLIBINTL = @LTLIBINTL@
diff --git a/staging/alpine/CVE-2008-5514.patch b/staging/alpine/CVE-2008-5514.patch
new file mode 100644
index 000000000..594bea0b2
--- /dev/null
+++ b/staging/alpine/CVE-2008-5514.patch
@@ -0,0 +1,20 @@
+--- alpine-2.00/imap/src/c-client/rfc822.c
++++ alpine-2.00/imap/src/c-client/rfc822.c
+@@ -1351,6 +1351,7 @@
+
+ static long rfc822_output_char (RFC822BUFFER *buf,int c)
+ {
++ if ((buf->cur == buf->end) && !rfc822_output_flush (buf)) return NIL;
+ *buf->cur++ = c; /* add character, soutr buffer if full */
+ return (buf->cur == buf->end) ? rfc822_output_flush (buf) : LONGT;
+ }
+@@ -1374,7 +1375,8 @@
+ len -= i;
+ }
+ /* soutr buffer now if full */
+- if (len && !rfc822_output_flush (buf)) return NIL;
++ if ((len || (buf->cur == buf->end)) && !rfc822_output_flush (buf))
++ return NIL;
+ }
+ return LONGT;
+ }
diff --git a/staging/alpine/PKGBUILD b/staging/alpine/PKGBUILD
new file mode 100644
index 000000000..6b2f9ee73
--- /dev/null
+++ b/staging/alpine/PKGBUILD
@@ -0,0 +1,44 @@
+# $Id: PKGBUILD 121113 2011-04-29 02:56:31Z eric $
+# Maintainer: Eric Bélanger <eric@archlinux.org>
+
+pkgname=alpine
+pkgver=2.00
+pkgrel=13
+_patchlevel=79
+pkgdesc="The Apache-licensed PINE (a tool for reading, sending, and managing electronic messages)"
+arch=('i686' 'x86_64')
+url="http://www.washington.edu/alpine/"
+license=('APACHE')
+depends=('libldap' 'krb5' 'gettext')
+optdepends=('aspell: for spell-checking support')
+provides=('pine')
+conflicts=('pine')
+replaces=('pine')
+options=('!makeflags')
+source=(ftp://ftp.cac.washington.edu/${pkgname}/${pkgname}.tar.bz2 \
+ http://staff.washington.edu/chappa/alpine/patches/alpine-${pkgver}/all_${_patchlevel}.patch.gz \
+ 2.00-lpam.patch CVE-2008-5514.patch)
+md5sums=('84e44cbf71ed674800a5d57eed9c1c52'
+ 'd7dffd121c9a1cac4c458c0ff71df1ce'
+ 'cd3911c16fc6a072e853c0ccfc35857c'
+ '1b52a54a656979116c09fb1d948a4325')
+sha1sums=('dcbd3c5419954f484ccf706feaba31ce48cdebc4'
+ 'd3acbf0e46c50feb2e822ef3bdc0a0f43c007294'
+ '1b39525f91ebd5a9de5a1e04f5554f6fa5f58ae3'
+ 'bc61d76a237ff42b00b3f60f2e6fc5c45e261dbb')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 < ../all_${_patchlevel}.patch
+ patch -p1 < ../2.00-lpam.patch
+ patch -p1 < ../CVE-2008-5514.patch
+ ./configure --prefix=/usr --without-passfile --without-tcl \
+ --disable-shared --with-system-pinerc=/etc/alpine.d/pine.conf \
+ --with-system-fixed-pinerc=/etc/alpine.d/pine.conf.fixed
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/staging/cups/PKGBUILD b/staging/cups/PKGBUILD
new file mode 100644
index 000000000..64ab5d109
--- /dev/null
+++ b/staging/cups/PKGBUILD
@@ -0,0 +1,110 @@
+# $Id: PKGBUILD 121078 2011-04-29 00:03:07Z stephane $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+
+pkgbase="cups"
+pkgname=('libcups' 'cups')
+pkgver=1.4.6
+pkgrel=2
+arch=('i686' 'x86_64')
+license=('GPL')
+url="http://www.cups.org/"
+makedepends=('libtiff>=3.9.2-2' 'libpng>=1.4.0' 'acl' 'openslp' 'pam' 'xdg-utils' 'krb5' 'gnutls>=2.8.3' 'poppler>=0.12.3'
+ 'xinetd' 'gzip' 'autoconf' 'php' 'libusb-compat' 'dbus-core' 'avahi' 'hicolor-icon-theme')
+source=(ftp://ftp.easysw.com/pub/cups/${pkgver}/cups-${pkgver}-source.tar.bz2
+ cups-avahi.patch
+ cups cups.logrotate cups.pam)
+#options=('!emptydirs')
+md5sums=('de8fb5a29c36554925c0c6a6e2c0dae1'
+ '8ebd390197501ffd709f0ee546937fd5'
+ '5c85b7d8d2ddd02c2c64955cebbf55ea'
+ 'f861b18f4446c43918c8643dcbbd7f6d'
+ '96f82c38f3f540b53f3e5144900acf17')
+
+# move client.conf man page for next update to the client pkg.
+
+build() {
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ # Avahi support in the dnssd backend. patch from Fedora
+ patch -Np1 -i ${srcdir}/cups-avahi.patch || return 1
+
+ # Rebuild configure script for --enable-avahi.
+ aclocal -I config-scripts
+ autoconf -I config-scripts
+
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --with-logdir=/var/log/cups -with-docdir=/usr/share/cups/doc \
+ --with-cups-user=daemon --with-cups-group=lp --enable-pam=yes \
+ --disable-ldap --libdir=/usr/lib --enable-raw-printing \
+ --enable-dbus --with-dbusdir=/etc/dbus-1 --enable-ssl=yes --enable-gnutls --disable-threads --enable-avahi\
+ --with-php=/usr/bin/php-cgi --with-pdftops=pdftops --with-optim="$CFLAGS"
+ make || return 1
+}
+
+package_libcups() {
+pkgdesc="The CUPS Printing System - client libraries and headers"
+depends=('gnutls>=2.8.3' 'libtiff>=3.9.2-2' 'libpng>=1.4.0' 'krb5' 'avahi')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ make BUILDROOT=${pkgdir} install-headers install-libs || return 1
+ # put this into the libs pkg to make other software find the libs(no pkg-config file included)
+ mkdir -p ${pkgdir}/usr/bin
+ install -m755 ${srcdir}/${pkgbase}-${pkgver}/cups-config ${pkgdir}/usr/bin/cups-config
+}
+
+package_cups() {
+pkgdesc="The CUPS Printing System - deamon package"
+install=cups.install
+backup=(etc/cups/cupsd.conf
+ etc/cups/mime.convs
+ etc/cups/mime.types
+ etc/cups/snmp.conf
+ etc/cups/printers.conf
+ etc/cups/classes.conf
+ etc/cups/client.conf
+ etc/cups/subscriptions.conf
+ etc/dbus-1/system.d/cups.conf
+ etc/logrotate.d/cups
+ etc/pam.d/cups
+ etc/xinetd.d/cups-lpd)
+depends=('acl' 'openslp' 'pam' "libcups>=${pkgver}" 'xdg-utils' 'poppler>=0.12.3' 'libusb-compat' 'dbus-core' 'hicolor-icon-theme')
+optdepends=('php: for included phpcups.so module')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ make BUILDROOT=${pkgdir} install-data install-exec || return 1
+
+ # this one we ship in the libcups pkg
+ rm -f ${pkgdir}/usr/bin/cups-config
+
+ # kill the sysv stuff
+ rm -rf ${pkgdir}/etc/rc*.d
+ rm -rf ${pkgdir}/etc/init.d
+ install -D -m755 ../cups ${pkgdir}/etc/rc.d/cups
+ install -D -m644 ../cups.logrotate ${pkgdir}/etc/logrotate.d/cups
+ install -D -m644 ../cups.pam ${pkgdir}/etc/pam.d/cups
+
+ # fix perms on /var/spool and /etc
+ chmod 755 ${pkgdir}/var/spool
+ chmod 755 ${pkgdir}/etc
+
+ # serial backend needs to run as root (http://bugs.archlinux.org/task/20396)
+ chmod 700 ${pkgdir}/usr/lib/cups/backend/serial
+
+ # install ssl directory where to store the certs, solves some samba issues
+ install -dm700 -g lp ${pkgdir}/etc/cups/ssl
+ install -dm511 -g lp ${pkgdir}/var/run/cups/certs
+
+ # install some more configuration files that will get filled by cupsd
+ touch ${pkgdir}/etc/cups/printers.conf
+ touch ${pkgdir}/etc/cups/classes.conf
+ touch ${pkgdir}/etc/cups/client.conf
+ echo "# see 'man client.conf'" >> ${pkgdir}/etc/cups/client.conf
+ echo "ServerName /var/run/cups/cups.sock # alternative: ServerName hostname-or-ip-address[:port] of a remote server" >> ${pkgdir}/etc/cups/client.conf
+ touch ${pkgdir}/etc/cups/subscriptions.conf
+ chgrp lp ${pkgdir}/etc/cups/{printers.conf,classes.conf,client.conf,subscriptions.conf}
+
+ # fix .desktop file
+ sed -i 's|^Exec=htmlview http://localhost:631/|Exec=xdg-open http://localhost:631/|g' ${pkgdir}/usr/share/applications/cups.desktop
+
+ # compress some driver files, adopted from Fedora
+ find ${pkgdir}/usr/share/cups/model -name "*.ppd" | xargs gzip -n9f
+}
diff --git a/staging/cups/cups b/staging/cups/cups
new file mode 100755
index 000000000..4afaf5a7c
--- /dev/null
+++ b/staging/cups/cups
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/cupsd`
+case "$1" in
+ start)
+ stat_busy "Starting CUPS Daemon"
+ [ -z "$PID" ] && /usr/sbin/cupsd
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ echo $(pidof -o %PPID -x /usr/sbin/cupsd) > /var/run/cups.pid
+ add_daemon cups
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping CUPS Daemon"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm /var/run/cups.pid
+ rm_daemon cups
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/staging/cups/cups-avahi.patch b/staging/cups/cups-avahi.patch
new file mode 100644
index 000000000..cf1056a75
--- /dev/null
+++ b/staging/cups/cups-avahi.patch
@@ -0,0 +1,1089 @@
+diff -up cups-1.4.5/backend/dnssd.c.avahi cups-1.4.5/backend/dnssd.c
+--- cups-1.4.5/backend/dnssd.c.avahi 2009-08-08 00:27:12.000000000 +0200
++++ cups-1.4.5/backend/dnssd.c 2010-11-12 13:13:31.000000000 +0100
+@@ -22,6 +22,7 @@
+ * exec_backend() - Execute the backend that corresponds to the
+ * resolved service name.
+ * get_device() - Create or update a device.
++* find_device()
+ * query_callback() - Process query data.
+ * sigterm_handler() - Handle termination signals...
+ * unquote() - Unquote a name string.
+@@ -33,7 +34,18 @@
+
+ #include "backend-private.h"
+ #include <cups/array.h>
+-#include <dns_sd.h>
++#ifdef HAVE_DNSSD
++# include <dns_sd.h>
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++# include <avahi-client/client.h>
++# include <avahi-client/lookup.h>
++# include <avahi-common/simple-watch.h>
++# include <avahi-common/domain.h>
++# include <avahi-common/error.h>
++# include <avahi-common/malloc.h>
++#define kDNSServiceMaxDomainName AVAHI_DOMAIN_NAME_MAX
++#endif /* HAVE_AVAHI */
+
+
+ /*
+@@ -52,7 +64,12 @@ typedef enum
+
+ typedef struct
+ {
++#ifdef HAVE_DNSSD
+ DNSServiceRef ref; /* Service reference for resolve */
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++ int resolved; /* Did we resolve the device? */
++#endif /* HAVE_AVAHI */
+ char *name, /* Service name */
+ *domain, /* Domain name */
+ *fullName, /* Full name */
+@@ -64,6 +81,20 @@ typedef struct
+ sent; /* Did we list the device? */
+ } cups_device_t;
+
++typedef struct
++{
++ char key[256];
++ char value[256];
++
++#ifdef HAVE_DNSSD
++ const uint8_t *data;
++ const uint8_t *datanext;
++ const uint8_t *dataend;
++#else /* HAVE_AVAHI */
++ AvahiStringList *txt;
++#endif /* HAVE_DNSSD */
++} cups_txt_records_t;
++
+
+ /*
+ * Local globals...
+@@ -77,6 +108,7 @@ static int job_canceled = 0;
+ * Local functions...
+ */
+
++#ifdef HAVE_DNSSD
+ static void browse_callback(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+@@ -92,12 +124,6 @@ static void browse_local_callback(DNSSe
+ const char *regtype,
+ const char *replyDomain,
+ void *context);
+-static int compare_devices(cups_device_t *a, cups_device_t *b);
+-static void exec_backend(char **argv);
+-static cups_device_t *get_device(cups_array_t *devices,
+- const char *serviceName,
+- const char *regtype,
+- const char *replyDomain);
+ static void query_callback(DNSServiceRef sdRef,
+ DNSServiceFlags flags,
+ uint32_t interfaceIndex,
+@@ -106,9 +132,111 @@ static void query_callback(DNSServiceRe
+ uint16_t rrclass, uint16_t rdlen,
+ const void *rdata, uint32_t ttl,
+ void *context);
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++static void avahi_client_callback (AvahiClient *client,
++ AvahiClientState state,
++ void *context);
++static void avahi_browse_callback (AvahiServiceBrowser *browser,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiBrowserEvent event,
++ const char *serviceName,
++ const char *regtype,
++ const char *replyDomain,
++ AvahiLookupResultFlags flags,
++ void *context);
++#endif /* HAVE_AVAHI */
++
++static cups_device_t * find_device (cups_array_t *devices,
++ cups_txt_records_t *txt,
++ cups_device_t *dkey);
++static int compare_devices(cups_device_t *a, cups_device_t *b);
++static void exec_backend(char **argv);
++static cups_device_t *get_device(cups_array_t *devices,
++ const char *serviceName,
++ const char *regtype,
++ const char *replyDomain);
+ static void sigterm_handler(int sig);
+ static void unquote(char *dst, const char *src, size_t dstsize);
+
++#ifdef HAVE_AVAHI
++static AvahiSimplePoll *simple_poll = NULL;
++static int avahi_got_callback;
++#endif /* HAVE_AVAHI */
++
++
++/*
++ * cups_txt_records_t access functions
++ */
++static cups_txt_records_t *
++next_txt_record (cups_txt_records_t *txt)
++{
++#ifdef HAVE_DNSSD
++ txt->data = txt->datanext;
++#else /* HAVE_AVAHI */
++ txt->txt = avahi_string_list_get_next (txt->txt);
++ if (txt->txt == NULL)
++ return NULL;
++#endif /* HAVE_DNSSD */
++
++ return txt;
++}
++
++static int
++parse_txt_record_pair (cups_txt_records_t *txt)
++{
++#ifdef HAVE_DNSSD
++ uint8_t datalen;
++ uint8_t *data = txt->data;
++ char *ptr;
++
++ /*
++ * Read a key/value pair starting with an 8-bit length. Since the
++ * length is 8 bits and the size of the key/value buffers is 256, we
++ * don't need to check for overflow...
++ */
++
++ datalen = *data++;
++ if (!datalen || (data + datalen) >= txt->dataend)
++ return NULL;
++ txt->datanext = data + datalen;
++
++ for (ptr = txt->key; data < txt->datanext && *data != '='; data ++)
++ *ptr++ = *data;
++ *ptr = '\0';
++
++ if (data < txt->datanext && *data == '=')
++ {
++ data++;
++
++ if (data < datanext)
++ memcpy (txt->value, data, txt->datanext - data);
++ value[txt->datanext - data] = '\0';
++ }
++ else
++ return 1;
++#else /* HAVE_AVAHI */
++ char *key, *value;
++ size_t len;
++ avahi_string_list_get_pair (txt->txt, &key, &value, &len);
++ if (len > sizeof (txt->value) - 1)
++ len = sizeof (txt->value) - 1;
++
++ memcpy (txt->value, value, len);
++ txt->value[len] = '\0';
++ len = strlen (key);
++ if (len > sizeof (txt->key) - 1)
++ len = sizeof (txt->key) - 1;
++
++ memcpy (txt->key, key, len);
++ txt->key[len] = '\0';
++ avahi_free (key);
++ avahi_free (value);
++#endif /* HAVE_AVAHI */
++
++ return 0;
++}
+
+ /*
+ * 'main()' - Browse for printers.
+@@ -119,6 +247,13 @@ main(int argc, /* I - Number of comm
+ char *argv[]) /* I - Command-line arguments */
+ {
+ const char *name; /* Backend name */
++ cups_array_t *devices; /* Device array */
++ cups_device_t *device; /* Current device */
++ char uriName[1024]; /* Unquoted fullName for URI */
++#ifdef HAVE_DNSSD
++ int fd; /* Main file descriptor */
++ fd_set input; /* Input set for select() */
++ struct timeval timeout; /* Timeout for select() */
+ DNSServiceRef main_ref, /* Main service reference */
+ fax_ipp_ref, /* IPP fax service reference */
+ ipp_ref, /* IPP service reference */
+@@ -130,12 +265,11 @@ main(int argc, /* I - Number of comm
+ pdl_datastream_ref, /* AppSocket service reference */
+ printer_ref, /* LPD service reference */
+ riousbprint_ref; /* Remote IO service reference */
+- int fd; /* Main file descriptor */
+- fd_set input; /* Input set for select() */
+- struct timeval timeout; /* Timeout for select() */
+- cups_array_t *devices; /* Device array */
+- cups_device_t *device; /* Current device */
+- char uriName[1024]; /* Unquoted fullName for URI */
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++ AvahiClient *client;
++ int error;
++#endif /* HAVE_AVAHI */
+ #if defined(HAVE_SIGACTION) && !defined(HAVE_SIGSET)
+ struct sigaction action; /* Actions for POSIX signals */
+ #endif /* HAVE_SIGACTION && !HAVE_SIGSET */
+@@ -194,6 +328,49 @@ main(int argc, /* I - Number of comm
+ * Browse for different kinds of printers...
+ */
+
++#ifdef HAVE_AVAHI
++ if ((simple_poll = avahi_simple_poll_new ()) == NULL)
++ {
++ perror ("ERROR: Unable to create avahi simple poll object");
++ return (1);
++ }
++
++ client = avahi_client_new (avahi_simple_poll_get (simple_poll),
++ 0, avahi_client_callback, NULL, &error);
++ if (!client)
++ {
++ perror ("ERROR: Unable to create avahi client");
++ return (1);
++ }
++
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_fax-ipp._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_ipp._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_ipp-tls._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_pdl-datastream._tcp",
++ NULL, 0,
++ avahi_browse_callback,
++ devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_printer._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++ avahi_service_browser_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC,
++ "_riousbprint._tcp", NULL, 0,
++ avahi_browse_callback, devices);
++#endif /* HAVE_AVAHI */
++#ifdef HAVE_DNSSD
+ if (DNSServiceCreateConnection(&main_ref) != kDNSServiceErr_NoError)
+ {
+ perror("ERROR: Unable to create service connection");
+@@ -245,6 +422,7 @@ main(int argc, /* I - Number of comm
+ riousbprint_ref = main_ref;
+ DNSServiceBrowse(&riousbprint_ref, kDNSServiceFlagsShareConnection, 0,
+ "_riousbprint._tcp", NULL, browse_callback, devices);
++#endif /* HAVE_DNSSD */
+
+ /*
+ * Loop until we are killed...
+@@ -252,6 +430,9 @@ main(int argc, /* I - Number of comm
+
+ while (!job_canceled)
+ {
++ int announce = 0;
++
++#ifdef HAVE_DNSSD
+ FD_ZERO(&input);
+ FD_SET(fd, &input);
+
+@@ -271,11 +452,35 @@ main(int argc, /* I - Number of comm
+ }
+ else
+ {
++ announce = 1;
++ }
++#else /* HAVE_AVAHI */
++ int r;
++ avahi_got_callback = 0;
++ r = avahi_simple_poll_iterate (simple_poll, 1);
++ if (r != 0 && r != EINTR)
++ {
++ /*
++ * We've been told to exit the loop. Perhaps the connection to
++ * avahi failed.
++ */
++
++ break;
++ }
++
++ if (avahi_got_callback)
++ announce = 1;
++#endif /* HAVE_DNSSD */
++
++ if (announce)
++ {
+ /*
+ * Announce any devices we've found...
+ */
+
++#ifdef HAVE_DNSSD
+ DNSServiceErrorType status; /* DNS query status */
++#endif /* HAVE_DNSSD */
+ cups_device_t *best; /* Best matching device */
+ char device_uri[1024]; /* Device URI */
+ int count; /* Number of queries */
+@@ -285,6 +490,7 @@ main(int argc, /* I - Number of comm
+ best = NULL, count = 0;
+ device;
+ device = (cups_device_t *)cupsArrayNext(devices))
++#ifdef HAVE_DNSSD
+ if (!device->ref && !device->sent)
+ {
+ /*
+@@ -313,14 +519,23 @@ main(int argc, /* I - Number of comm
+ count ++;
+ }
+ }
+- else if (!device->sent)
++ else
++#endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++ if (!device->resolved)
++ continue;
++ else
++#endif /* HAVE_AVAHI */
++ if (!device->sent)
+ {
++#ifdef HAVE_DNSSD
+ /*
+ * Got the TXT records, now report the device...
+ */
+
+ DNSServiceRefDeallocate(device->ref);
+ device->ref = 0;
++#endif /* HAVE_DNSSD */
+
+ if (!best)
+ best = device;
+@@ -372,6 +587,7 @@ main(int argc, /* I - Number of comm
+ * 'browse_callback()' - Browse devices.
+ */
+
++#ifdef HAVE_DNSSD
+ static void
+ browse_callback(
+ DNSServiceRef sdRef, /* I - Service reference */
+@@ -405,12 +621,14 @@ browse_callback(
+
+ get_device((cups_array_t *)context, serviceName, regtype, replyDomain);
+ }
++#endif /* HAVE_DNSSD */
+
+
+ /*
+ * 'browse_local_callback()' - Browse local devices.
+ */
+
++#ifdef HAVE_DNSSD
+ static void
+ browse_local_callback(
+ DNSServiceRef sdRef, /* I - Service reference */
+@@ -456,6 +674,7 @@ browse_local_callback(
+ device->fullName);
+ device->sent = 1;
+ }
++#endif /* HAVE_DNSSD */
+
+
+ /*
+@@ -528,6 +747,32 @@ exec_backend(char **argv) /* I - Comman
+ exit(CUPS_BACKEND_STOP);
+ }
+
++static int
++device_type (const char *regtype)
++{
++#ifdef HAVE_AVAHI
++ if (!strcmp(regtype, "_ipp._tcp") ||
++ !strcmp(regtype, "_ipp-tls._tcp"))
++ return (CUPS_DEVICE_IPP);
++ else if (!strcmp(regtype, "_fax-ipp._tcp"))
++ return (CUPS_DEVICE_FAX_IPP);
++ else if (!strcmp(regtype, "_printer._tcp"))
++ return (CUPS_DEVICE_PDL_DATASTREAM);
++#else
++ if (!strcmp(regtype, "_ipp._tcp.") ||
++ !strcmp(regtype, "_ipp-tls._tcp."))
++ return (CUPS_DEVICE_IPP);
++ else if (!strcmp(regtype, "_fax-ipp._tcp."))
++ return (CUPS_DEVICE_FAX_IPP);
++ else if (!strcmp(regtype, "_printer._tcp."))
++ return (CUPS_DEVICE_PRINTER);
++ else if (!strcmp(regtype, "_pdl-datastream._tcp."))
++ return (CUPS_DEVICE_PDL_DATASTREAM);
++#endif /* HAVE_AVAHI */
++
++ return (CUPS_DEVICE_RIOUSBPRINT);
++}
++
+
+ /*
+ * 'get_device()' - Create or update a device.
+@@ -550,18 +795,7 @@ get_device(cups_array_t *devices, /* I -
+ */
+
+ key.name = (char *)serviceName;
+-
+- if (!strcmp(regtype, "_ipp._tcp.") ||
+- !strcmp(regtype, "_ipp-tls._tcp."))
+- key.type = CUPS_DEVICE_IPP;
+- else if (!strcmp(regtype, "_fax-ipp._tcp."))
+- key.type = CUPS_DEVICE_FAX_IPP;
+- else if (!strcmp(regtype, "_printer._tcp."))
+- key.type = CUPS_DEVICE_PRINTER;
+- else if (!strcmp(regtype, "_pdl-datastream._tcp."))
+- key.type = CUPS_DEVICE_PDL_DATASTREAM;
+- else
+- key.type = CUPS_DEVICE_RIOUSBPRINT;
++ key.type = device_type (regtype);
+
+ for (device = cupsArrayFind(devices, &key);
+ device;
+@@ -581,8 +815,14 @@ get_device(cups_array_t *devices, /* I -
+ free(device->domain);
+ device->domain = strdup(replyDomain);
+
++#ifdef HAVE_DNSSD
+ DNSServiceConstructFullName(fullName, device->name, regtype,
+ replyDomain);
++#else /* HAVE_AVAHI */
++ avahi_service_name_join (fullName, kDNSServiceMaxDomainName,
++ serviceName, regtype, replyDomain);
++#endif /* HAVE_DNSSD */
++
+ free(device->fullName);
+ device->fullName = strdup(fullName);
+ }
+@@ -602,6 +842,9 @@ get_device(cups_array_t *devices, /* I -
+ device->domain = strdup(replyDomain);
+ device->type = key.type;
+ device->priority = 50;
++#ifdef HAVE_AVAHI
++ device->resolved = 0;
++#endif /* HAVE_AVAHI */
+
+ cupsArrayAdd(devices, device);
+
+@@ -609,7 +852,13 @@ get_device(cups_array_t *devices, /* I -
+ * Set the "full name" of this service, which is used for queries...
+ */
+
++#ifdef HAVE_DNSSD
+ DNSServiceConstructFullName(fullName, serviceName, regtype, replyDomain);
++#else /* HAVE_AVAHI */
++ avahi_service_name_join (fullName, kDNSServiceMaxDomainName,
++ serviceName, regtype, replyDomain);
++#endif /* HAVE_DNSSD */
++
+ device->fullName = strdup(fullName);
+
+ return (device);
+@@ -620,6 +869,7 @@ get_device(cups_array_t *devices, /* I -
+ * 'query_callback()' - Process query data.
+ */
+
++#ifdef HAVE_DNSSD
+ static void
+ query_callback(
+ DNSServiceRef sdRef, /* I - Service reference */
+@@ -639,7 +889,7 @@ query_callback(
+ *ptr; /* Pointer into string */
+ cups_device_t dkey, /* Search key */
+ *device; /* Device */
+-
++ cups_txt_records_t txt;
+
+ fprintf(stderr, "DEBUG2: query_callback(sdRef=%p, flags=%x, "
+ "interfaceIndex=%d, errorCode=%d, fullName=\"%s\", "
+@@ -673,84 +923,212 @@ query_callback(
+ if ((ptr = strstr(name, "._")) != NULL)
+ *ptr = '\0';
+
+- if (strstr(fullName, "_ipp._tcp.") ||
+- strstr(fullName, "_ipp-tls._tcp."))
+- dkey.type = CUPS_DEVICE_IPP;
+- else if (strstr(fullName, "_fax-ipp._tcp."))
+- dkey.type = CUPS_DEVICE_FAX_IPP;
+- else if (strstr(fullName, "_printer._tcp."))
+- dkey.type = CUPS_DEVICE_PRINTER;
+- else if (strstr(fullName, "_pdl-datastream._tcp."))
+- dkey.type = CUPS_DEVICE_PDL_DATASTREAM;
++ dkey.type = device_type (fullName);
++
++ txt.data = rdata;
++ txt.dataend = rdata + rdlen;
++ device = find_device ((cups_array_t *) context, &txt, &dkey);
++ if (!device)
++ fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName);
++}
++#endif /* HAVE_DNSSD */
++
++#ifdef HAVE_AVAHI
++static void
++avahi_client_callback(AvahiClient *client,
++ AvahiClientState state,
++ void *context)
++{
++ /*
++ * If the connection drops, quit.
++ */
++
++ if (state == AVAHI_CLIENT_FAILURE)
++ {
++ fprintf (stderr, "ERROR: Avahi connection failed\n");
++ avahi_simple_poll_quit (simple_poll);
++ }
++}
++
++static void
++avahi_query_callback(AvahiServiceResolver *resolver,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiResolverEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ const char *host_name,
++ const AvahiAddress *address,
++ uint16_t port,
++ AvahiStringList *txt,
++ AvahiLookupResultFlags flags,
++ void *context)
++{
++ AvahiClient *client;
++ cups_device_t key,
++ *device;
++ char uqname[1024],
++ *ptr;
++ cups_txt_records_t txtr;
++
++ client = avahi_service_resolver_get_client (resolver);
++ if (event != AVAHI_RESOLVER_FOUND)
++ {
++ if (event == AVAHI_RESOLVER_FAILURE)
++ {
++ fprintf (stderr, "ERROR: %s\n",
++ avahi_strerror (avahi_client_errno (client)));
++ }
++
++ avahi_service_resolver_free (resolver);
++ return;
++ }
++
++ /*
++ * Set search key for device.
++ */
++
++ key.name = uqname;
++ unquote (uqname, name, sizeof (uqname));
++ if ((ptr = strstr(name, "._")) != NULL)
++ *ptr = '\0';
++
++ key.domain = (char *) domain;
++ key.type = device_type (type);
++
++ /*
++ * Find the device and the the TXT information.
++ */
++
++ txtr.txt = txt;
++ device = find_device ((cups_array_t *) context, &txtr, &key);
++ if (device)
++ {
++ /*
++ * Let the main loop know to announce the device.
++ */
++
++ device->resolved = 1;
++ avahi_got_callback = 1;
++ }
+ else
+- dkey.type = CUPS_DEVICE_RIOUSBPRINT;
++ fprintf (stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", name);
++
++ avahi_service_resolver_free (resolver);
++}
++
++static void
++avahi_browse_callback(AvahiServiceBrowser *browser,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiBrowserEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ AvahiLookupResultFlags flags,
++ void *context)
++{
++ AvahiClient *client = avahi_service_browser_get_client (browser);
++
++ switch (event)
++ {
++ case AVAHI_BROWSER_FAILURE:
++ fprintf (stderr, "ERROR: %s\n",
++ avahi_strerror (avahi_client_errno (client)));
++ avahi_simple_poll_quit (simple_poll);
++ return;
++
++ case AVAHI_BROWSER_NEW:
++ /*
++ * This object is new on the network.
++ */
++
++ if (flags & AVAHI_LOOKUP_RESULT_LOCAL)
++ {
++ /*
++ * This comes from the local machine so ignore it.
++ */
++
++ fprintf (stderr, "DEBUG: ignoring local service %s\n", name);
++ }
++ else
++ {
++ /*
++ * Create a device entry for it if it doesn't yet exist.
++ */
++
++ get_device ((cups_array_t *)context, name, type, domain);
++
++ /*
++ * Now look for a TXT entry.
++ */
++
++ if (avahi_service_resolver_new (client, interface, protocol,
++ name, type, domain,
++ AVAHI_PROTO_UNSPEC, 0,
++ avahi_query_callback, context) == NULL)
++ {
++ fprintf (stderr, "ERROR: failed to resolve service %s: %s\n",
++ name, avahi_strerror (avahi_client_errno (client)));
++ }
++ }
++
++ break;
+
+- for (device = cupsArrayFind(devices, &dkey);
++ case AVAHI_BROWSER_REMOVE:
++ case AVAHI_BROWSER_ALL_FOR_NOW:
++ case AVAHI_BROWSER_CACHE_EXHAUSTED:
++ break;
++ }
++}
++#endif /* HAVE_AVAHI */
++
++static cups_device_t *
++find_device (cups_array_t *devices,
++ cups_txt_records_t *txt,
++ cups_device_t *dkey)
++{
++ cups_device_t *device;
++ char *ptr;
++
++ for (device = cupsArrayFind(devices, dkey);
+ device;
+ device = cupsArrayNext(devices))
+ {
+- if (strcasecmp(device->name, dkey.name) ||
+- strcasecmp(device->domain, dkey.domain))
++ if (strcasecmp(device->name, dkey->name) ||
++ strcasecmp(device->domain, dkey->domain))
+ {
+ device = NULL;
+ break;
+ }
+- else if (device->type == dkey.type)
++ else if (device->type == dkey->type)
+ {
+ /*
+ * Found it, pull out the priority and make and model from the TXT
+ * record and save it...
+ */
+
+- const uint8_t *data, /* Pointer into data */
+- *datanext, /* Next key/value pair */
+- *dataend; /* End of entire TXT record */
+- uint8_t datalen; /* Length of current key/value pair */
+- char key[256], /* Key string */
+- value[256], /* Value string */
+- make_and_model[512],
++ char make_and_model[512],
+ /* Manufacturer and model */
+ model[256], /* Model */
+- device_id[2048];/* 1284 device ID */
+-
++ device_id[2048]; /* 1284 device ID */
+
+ device_id[0] = '\0';
+ make_and_model[0] = '\0';
+
+ strcpy(model, "Unknown");
+
+- for (data = rdata, dataend = data + rdlen;
+- data < dataend;
+- data = datanext)
++ for (;;)
+ {
+- /*
+- * Read a key/value pair starting with an 8-bit length. Since the
+- * length is 8 bits and the size of the key/value buffers is 256, we
+- * don't need to check for overflow...
+- */
+-
+- datalen = *data++;
+-
+- if (!datalen || (data + datalen) >= dataend)
+- break;
+-
+- datanext = data + datalen;
++ char *key;
++ char *value;
+
+- for (ptr = key; data < datanext && *data != '='; data ++)
+- *ptr++ = *data;
+- *ptr = '\0';
+-
+- if (data < datanext && *data == '=')
+- {
+- data ++;
+-
+- if (data < datanext)
+- memcpy(value, data, datanext - data);
+- value[datanext - data] = '\0';
+- }
+- else
+- continue;
++ if (parse_txt_record_pair (txt))
++ goto next;
+
++ key = txt->key;
++ value = txt->value;
+ if (!strncasecmp(key, "usb_", 4))
+ {
+ /*
+@@ -805,6 +1183,10 @@ query_callback(
+ if (device->type == CUPS_DEVICE_PRINTER)
+ device->sent = 1;
+ }
++
++ next:
++ if (next_txt_record (txt) == NULL)
++ break;
+ }
+
+ if (device->device_id)
+@@ -854,11 +1236,9 @@ query_callback(
+ }
+ }
+
+- if (!device)
+- fprintf(stderr, "DEBUG: Ignoring TXT record for \"%s\"...\n", fullName);
++ return device;
+ }
+
+-
+ /*
+ * 'sigterm_handler()' - Handle termination signals...
+ */
+diff -up cups-1.4.5/config.h.in.avahi cups-1.4.5/config.h.in
+--- cups-1.4.5/config.h.in.avahi 2010-08-13 06:11:46.000000000 +0200
++++ cups-1.4.5/config.h.in 2010-11-12 13:13:31.000000000 +0100
+@@ -344,6 +344,13 @@
+
+
+ /*
++ * Do we have Avahi for DNS Service Discovery?
++ */
++
++#undef HAVE_AVAHI
++
++
++/*
+ * Do we have <sys/ioctl.h>?
+ */
+
+diff -up cups-1.4.5/config-scripts/cups-dnssd.m4.avahi cups-1.4.5/config-scripts/cups-dnssd.m4
+--- cups-1.4.5/config-scripts/cups-dnssd.m4.avahi 2009-08-29 00:54:34.000000000 +0200
++++ cups-1.4.5/config-scripts/cups-dnssd.m4 2010-11-12 13:13:31.000000000 +0100
+@@ -27,6 +27,21 @@ AC_ARG_WITH(dnssd-includes, [ --with-dn
+ DNSSDLIBS=""
+ DNSSD_BACKEND=""
+
++AC_ARG_ENABLE(avahi, [ --enable-avahi turn on DNS Service Discovery support, default=no],
++ [if test x$enable_avahi = xyes; then
++ AC_MSG_CHECKING(for Avahi)
++ if $PKGCONFIG --exists avahi-client; then
++ AC_MSG_RESULT(yes)
++ CFLAGS="$CFLAGS `$PKGCONFIG --cflags avahi-client`"
++ DNSSDLIBS="`$PKGCONFIG --libs avahi-client`"
++ DNSSD_BACKEND="dnssd"
++ AC_DEFINE(HAVE_AVAHI)
++ enable_dnssd=no
++ else
++ AC_MSG_RESULT(no)
++ fi
++ fi])
++
+ if test x$enable_dnssd != xno; then
+ AC_CHECK_HEADER(dns_sd.h, [
+ case "$uname" in
+diff -up cups-1.4.5/cups/http-support.c.avahi cups-1.4.5/cups/http-support.c
+--- cups-1.4.5/cups/http-support.c.avahi 2010-10-02 00:40:38.000000000 +0200
++++ cups-1.4.5/cups/http-support.c 2010-11-12 13:28:45.000000000 +0100
+@@ -55,6 +55,11 @@
+ # include <dns_sd.h>
+ # include <poll.h>
+ #endif /* HAVE_DNSSD */
++#ifdef HAVE_AVAHI
++# include <avahi-client/client.h>
++# include <avahi-client/lookup.h>
++# include <avahi-common/simple-watch.h>
++#endif /* HAVE_AVAHI */
+
+
+ /*
+@@ -121,6 +126,24 @@ static void resolve_callback(DNSService
+ void *context);
+ #endif /* HAVE_DNSSD */
+
++#ifdef HAVE_AVAHI
++static void avahi_resolve_uri_client_cb(AvahiClient *client,
++ AvahiClientState state,
++ void *simple_poll);
++static void avahi_resolve_uri_resolver_cb(AvahiServiceResolver *resolver,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiResolverEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ const char *host_name,
++ const AvahiAddress *address,
++ uint16_t port,
++ AvahiStringList *txt,
++ AvahiLookupResultFlags flags,
++ void *context);
++#endif /* HAVE_AVAHI */
+
+ /*
+ * 'httpAssembleURI()' - Assemble a uniform resource identifier from its
+@@ -1351,16 +1374,27 @@ _httpResolveURI(
+
+ if (strstr(hostname, "._tcp"))
+ {
++#if defined(HAVE_DNSSD) || defined(HAVE_AVAHI)
++ char *regtype, /* Pointer to type in hostname */
++ *domain; /* Pointer to domain in hostname */
+ #ifdef HAVE_DNSSD
+ DNSServiceRef ref, /* DNS-SD master service reference */
+ domainref, /* DNS-SD service reference for domain */
+ localref; /* DNS-SD service reference for .local */
+ int domainsent = 0, /* Send the domain resolve? */
+ offline = 0; /* offline-report state set? */
+- char *regtype, /* Pointer to type in hostname */
+- *domain; /* Pointer to domain in hostname */
+ _http_uribuf_t uribuf; /* URI buffer */
+ struct pollfd polldata; /* Polling data */
++#else /* HAVE_AVAHI */
++ AvahiSimplePoll *simple_poll;
++ AvahiClient *client;
++ int error;
++ struct
++ {
++ AvahiSimplePoll *poll;
++ _http_uribuf_t uribuf;
++ } user_data;
++#endif /* HAVE_DNSSD */
+
+
+ if (logit)
+@@ -1398,8 +1432,13 @@ _httpResolveURI(
+ if (domain)
+ *domain++ = '\0';
+
++#ifdef HAVE_DNSSD
+ uribuf.buffer = resolved_uri;
+ uribuf.bufsize = resolved_size;
++#else
++ user_data.uribuf.buffer = resolved_uri;
++ user_data.uribuf.bufsize = resolved_size;
++#endif
+
+ resolved_uri[0] = '\0';
+
+@@ -1414,6 +1453,7 @@ _httpResolveURI(
+
+ uri = NULL;
+
++#ifdef HAVE_DNSSD
+ if (DNSServiceCreateConnection(&ref) == kDNSServiceErr_NoError)
+ {
+ localref = ref;
+@@ -1500,6 +1540,36 @@ _httpResolveURI(
+
+ DNSServiceRefDeallocate(ref);
+ }
++#else /* HAVE_AVAHI */
++ if ((simple_poll = avahi_simple_poll_new ()) != NULL)
++ {
++ if ((client = avahi_client_new (avahi_simple_poll_get (simple_poll),
++ 0, avahi_resolve_uri_client_cb,
++ &simple_poll, &error)) != NULL)
++ {
++ user_data.poll = simple_poll;
++ if (avahi_service_resolver_new (client, AVAHI_IF_UNSPEC,
++ AVAHI_PROTO_UNSPEC, hostname,
++ regtype, domain, AVAHI_PROTO_UNSPEC, 0,
++ avahi_resolve_uri_resolver_cb,
++ &user_data) != NULL)
++ {
++ avahi_simple_poll_loop (simple_poll);
++
++ /*
++ * Collect the result.
++ */
++
++ if (resolved_uri[0])
++ uri = resolved_uri;
++ }
++
++ avahi_client_free (client);
++ }
++
++ avahi_simple_poll_free (simple_poll);
++ }
++#endif /* HAVE_DNSSD */
+
+ if (logit)
+ {
+@@ -1511,13 +1581,13 @@ _httpResolveURI(
+ fputs("STATE: -connecting-to-device,offline-report\n", stderr);
+ }
+
+-#else
++#else /* HAVE_DNSSD || HAVE_AVAHI */
+ /*
+ * No DNS-SD support...
+ */
+
+ uri = NULL;
+-#endif /* HAVE_DNSSD */
++#endif /* HAVE_DNSSD || HAVE_AVAHI */
+
+ if (logit && !uri)
+ _cupsLangPuts(stderr, _("Unable to find printer!\n"));
+@@ -1722,6 +1792,105 @@ resolve_callback(
+ }
+ #endif /* HAVE_DNSSD */
+
++#ifdef HAVE_AVAHI
++static void
++avahi_resolve_uri_client_cb (AvahiClient *client,
++ AvahiClientState state,
++ void *simple_poll)
++{
++ DEBUG_printf(("avahi_resolve_uri_client_callback(client=%p, state=%d, "
++ "simple_poll=%p)\n", client, state, simple_poll));
++
++ /*
++ * If the connection drops, quit.
++ */
++
++ if (state == AVAHI_CLIENT_FAILURE)
++ avahi_simple_poll_quit (simple_poll);
++}
++
++static void
++avahi_resolve_uri_resolver_cb (AvahiServiceResolver *resolver,
++ AvahiIfIndex interface,
++ AvahiProtocol protocol,
++ AvahiResolverEvent event,
++ const char *name,
++ const char *type,
++ const char *domain,
++ const char *host_name,
++ const AvahiAddress *address,
++ uint16_t port,
++ AvahiStringList *txt,
++ AvahiLookupResultFlags flags,
++ void *context)
++{
++ const char *scheme; /* URI scheme */
++ char rp[256]; /* Remote printer */
++ AvahiStringList *pair;
++ char *value;
++ size_t valueLen = 0;
++ char addr[AVAHI_ADDRESS_STR_MAX];
++ struct
++ {
++ AvahiSimplePoll *poll;
++ _http_uribuf_t uribuf;
++ } *poll_uribuf = context;
++
++ DEBUG_printf(("avahi_resolve_uri_resolver_callback(resolver=%p, "
++ "interface=%d, protocol=%d, event=%d, name=\"%s\", "
++ "type=\"%s\", domain=\"%s\", host_name=\"%s\", address=%p, "
++ "port=%d, txt=%p, flags=%d, context=%p)\n",
++ resolver, interface, protocol, event, name, type, domain,
++ host_name, address, port, txt, flags, context));
++
++ if (event != AVAHI_RESOLVER_FOUND)
++ {
++ avahi_service_resolver_free (resolver);
++ avahi_simple_poll_quit (poll_uribuf->poll);
++ return;
++ }
++
++ /*
++ * Figure out the scheme from the full name...
++ */
++
++ if (strstr(type, "_ipp."))
++ scheme = "ipp";
++ else if (strstr(type, "_printer."))
++ scheme = "lpd";
++ else if (strstr(type, "_pdl-datastream."))
++ scheme = "socket";
++ else
++ scheme = "riousbprint";
++
++ /*
++ * Extract the "remote printer key from the TXT record...
++ */
++
++ if ((pair = avahi_string_list_find (txt, "rp")) != NULL)
++ {
++ avahi_string_list_get_pair (pair, NULL, &value, &valueLen);
++ rp[0] = '/';
++ memcpy (rp + 1, value, valueLen);
++ rp[valueLen + 1] = '\0';
++ }
++ else
++ rp[0] = '\0';
++
++ /*
++ * Assemble the final device URI...
++ */
++
++ avahi_address_snprint (addr, AVAHI_ADDRESS_STR_MAX, address);
++ httpAssembleURI(HTTP_URI_CODING_ALL, poll_uribuf->uribuf.buffer,
++ poll_uribuf->uribuf.bufsize, scheme, NULL,
++ addr, port, rp);
++ DEBUG_printf(("avahi_resolve_uri_resolver_callback: Resolved URI is \"%s\"\n",
++ poll_uribuf->uribuf.buffer));
++ avahi_simple_poll_quit (poll_uribuf->poll);
++}
++#endif /* HAVE_AVAHI */
++
+
+ /*
+ * End of "$Id: http-support.c 9322 2010-10-01 22:40:38Z mike $".
diff --git a/staging/cups/cups.install b/staging/cups/cups.install
new file mode 100644
index 000000000..e92e17ed3
--- /dev/null
+++ b/staging/cups/cups.install
@@ -0,0 +1,15 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor 2> /dev/null
+ echo ">> If you use an HTTPS connection to CUPS, the first time you access"
+ echo ">> the interface it may take a very long time before the site comes up."
+ echo ">> This is because the first request triggers the generation of the CUPS"
+ echo ">> SSL certificates which can be a very time-consuming job."
+}
+
+post_upgrade() {
+ xdg-icon-resource forceupdate --theme hicolor 2> /dev/null
+}
+
+post_remove() {
+ xdg-icon-resource forceupdate --theme hicolor 2> /dev/null
+}
diff --git a/staging/cups/cups.logrotate b/staging/cups/cups.logrotate
new file mode 100644
index 000000000..9c49bbdaf
--- /dev/null
+++ b/staging/cups/cups.logrotate
@@ -0,0 +1,8 @@
+/var/log/cups/*log {
+ missingok
+ notifempty
+ delaycompress
+ postrotate
+ /bin/kill -HUP `cat /var/run/cups.pid 2>/dev/null` 2>/dev/null || true
+ endscript
+}
diff --git a/staging/cups/cups.pam b/staging/cups/cups.pam
new file mode 100644
index 000000000..53724d1f8
--- /dev/null
+++ b/staging/cups/cups.pam
@@ -0,0 +1,3 @@
+auth required pam_unix.so
+account required pam_unix.so
+session required pam_unix.so
diff --git a/staging/cvs/PKGBUILD b/staging/cvs/PKGBUILD
new file mode 100644
index 000000000..76f71a2a1
--- /dev/null
+++ b/staging/cvs/PKGBUILD
@@ -0,0 +1,39 @@
+# $Id: PKGBUILD 121072 2011-04-28 22:54:58Z stephane $
+# Contributor: dorphell <dorphell@archlinux.org>
+
+pkgname=cvs
+pkgver=1.11.23
+pkgrel=7
+pkgdesc="Concurrent Versions System - a source control system"
+arch=(i686 x86_64)
+url="http://cvs.nongnu.org"
+license=('GPL')
+depends=('krb5')
+optdepends=('openssh: for using cvs over ssh' 'inetutils: for using cvs over rsh')
+install=cvs.install
+source=(ftp://ftp.gnu.org/non-gnu/cvs/source/stable/${pkgver}/${pkgname}-${pkgver}.tar.bz2
+ cvs-1.11.23-getline64.patch
+ cvs-1.11.23-cve-2010-3846.patch)
+sha256sums=('400f51b59d85116e79b844f2d5dbbad4759442a789b401a94aa5052c3d7a4aa9'
+ '9126d7992ace943980ad8a10d5a09aeb6f1eeeb9b921fc796fe31de7b1c220cf'
+ 'c6506d0a5efc7b0cab6415f26e070ec214fb9781fac8d295506f4d0825431a8f')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ unset EDITOR VISUAL
+
+ patch -Np1 -i ../cvs-1.11.23-getline64.patch
+
+ # CVE-2010-3864, see https://www.redhat.com/security/data/cve/CVE-2010-3846.html
+ patch -Np1 -i ../cvs-1.11.23-cve-2010-3846.patch
+
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+ rm "${pkgdir}"/usr/share/info/dir
+}
diff --git a/staging/cvs/cvs-1.11.23-cve-2010-3846.patch b/staging/cvs/cvs-1.11.23-cve-2010-3846.patch
new file mode 100644
index 000000000..e1560cef8
--- /dev/null
+++ b/staging/cvs/cvs-1.11.23-cve-2010-3846.patch
@@ -0,0 +1,167 @@
+From b122edcb68ff05bb6eb22f6e50423e7f1050841b Mon Sep 17 00:00:00 2001
+From: Larry Jones <lawrence.jones@siemens.com>
+Date: Thu, 21 Oct 2010 10:08:16 +0200
+Subject: [PATCH] Fix for CVE-2010-3846
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Mallformed RCS revision (delete after the end of input file, or overlayed
+deleted regions) screws output file image size computation. This leads to
+write attempt after the allocated memory opening hiden memory corruption
+driven by CVS server.
+
+Signed-off-by: Petr Písař <ppisar@redhat.com>
+---
+ src/rcs.c | 52 +++++++++++++++++++++++++++++-----------------------
+ 1 files changed, 29 insertions(+), 23 deletions(-)
+
+diff --git a/src/rcs.c b/src/rcs.c
+index 7d0d078..2f88f85 100644
+--- a/src/rcs.c
++++ b/src/rcs.c
+@@ -7128,7 +7128,7 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ struct deltafrag *dfhead;
+ struct deltafrag **dftail;
+ struct deltafrag *df;
+- unsigned long numlines, lastmodline, offset;
++ unsigned long numlines, offset;
+ struct linevector lines;
+ int err;
+
+@@ -7202,12 +7202,12 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+
+ /* New temp data structure to hold new org before
+ copy back into original structure. */
+- lines.nlines = lines.lines_alloced = numlines;
++ lines.lines_alloced = numlines;
+ lines.vector = xmalloc (numlines * sizeof *lines.vector);
+
+ /* We changed the list order to first to last -- so the
+ list never gets larger than the size numlines. */
+- lastmodline = 0;
++ lines.nlines = 0;
+
+ /* offset created when adding/removing lines
+ between new and original structure */
+@@ -7216,25 +7216,24 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ for (df = dfhead; df != NULL; )
+ {
+ unsigned int ln;
+- unsigned long deltaend;
++ unsigned long newpos = df->pos - offset;
+
+- if (df->pos > orig_lines->nlines)
++ if (newpos < lines.nlines || newpos > numlines)
+ err = 1;
+
+ /* On error, just free the rest of the list. */
+ if (!err)
+ {
+- /* Here we need to get to the line where the next insert will
++ /* Here we need to get to the line where the next change will
+ begin, which is DF->pos in ORIG_LINES. We will fill up to
+ DF->pos - OFFSET in LINES with original items. */
+- for (deltaend = df->pos - offset;
+- lastmodline < deltaend;
+- lastmodline++)
++ while (lines.nlines < newpos)
+ {
+ /* we need to copy from the orig structure into new one */
+- lines.vector[lastmodline] =
+- orig_lines->vector[lastmodline + offset];
+- lines.vector[lastmodline]->refcount++;
++ lines.vector[lines.nlines] =
++ orig_lines->vector[lines.nlines + offset];
++ lines.vector[lines.nlines]->refcount++;
++ lines.nlines++;
+ }
+
+ switch (df->type)
+@@ -7246,7 +7245,12 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ struct line *q;
+ int nextline_newline;
+ size_t nextline_len;
+-
++
++ if (newpos + df->nlines > numlines)
++ {
++ err = 1;
++ break;
++ }
+ textend = df->new_lines + df->len;
+ nextline_newline = 0;
+ nextline_text = df->new_lines;
+@@ -7271,8 +7275,7 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ q->has_newline = nextline_newline;
+ q->refcount = 1;
+ memcpy (q->text, nextline_text, nextline_len);
+- lines.vector[lastmodline++] = q;
+- offset--;
++ lines.vector[lines.nlines++] = q;
+
+ nextline_text = (char *)p + 1;
+ nextline_newline = 0;
+@@ -7286,11 +7289,11 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ q->has_newline = nextline_newline;
+ q->refcount = 1;
+ memcpy (q->text, nextline_text, nextline_len);
+- lines.vector[lastmodline++] = q;
++ lines.vector[lines.nlines++] = q;
+
+ /* For each line we add the offset between the #'s
+ decreases. */
+- offset--;
++ offset -= df->nlines;
+ break;
+ }
+
+@@ -7301,7 +7304,9 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ if (df->pos + df->nlines > orig_lines->nlines)
+ err = 1;
+ else if (delvers)
++ {
+ for (ln = df->pos; ln < df->pos + df->nlines; ++ln)
++ {
+ if (orig_lines->vector[ln]->refcount > 1)
+ /* Annotate needs this but, since the original
+ * vector is disposed of before returning from
+@@ -7309,6 +7314,8 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ * there are multiple references.
+ */
+ orig_lines->vector[ln]->vers = delvers;
++ }
++ }
+ break;
+ }
+ }
+@@ -7328,21 +7335,20 @@ apply_rcs_changes (orig_lines, diffbuf, difflen, name, addvers, delvers)
+ else
+ {
+ /* add the rest of the remaining lines to the data vector */
+- for (; lastmodline < numlines; lastmodline++)
++ while (lines.nlines < numlines)
+ {
+ /* we need to copy from the orig structure into new one */
+- lines.vector[lastmodline] = orig_lines->vector[lastmodline
++ lines.vector[lines.nlines] = orig_lines->vector[lines.nlines
+ + offset];
+- lines.vector[lastmodline]->refcount++;
++ lines.vector[lines.nlines]->refcount++;
++ lines.nlines++;
+ }
+
+ /* Move the lines vector to the original structure for output,
+ * first deleting the old.
+ */
+ linevector_free (orig_lines);
+- orig_lines->vector = lines.vector;
+- orig_lines->lines_alloced = numlines;
+- orig_lines->nlines = lines.nlines;
++ *orig_lines = lines;
+ }
+
+ return !err;
+--
+1.7.2.3
+
diff --git a/staging/cvs/cvs-1.11.23-getline64.patch b/staging/cvs/cvs-1.11.23-getline64.patch
new file mode 100644
index 000000000..99942e058
--- /dev/null
+++ b/staging/cvs/cvs-1.11.23-getline64.patch
@@ -0,0 +1,34 @@
+--- cvs-1.11.23/lib/getline.c 2005-04-04 22:46:05.000000000 +0200
++++ cvs-1.11.23/lib/getline.c.old 2008-06-03 19:06:25.000000000 +0200
+@@ -154,7 +154,7 @@
+ return ret;
+ }
+
+-int
++ssize_t
+ getline (lineptr, n, stream)
+ char **lineptr;
+ size_t *n;
+@@ -163,7 +163,7 @@
+ return getstr (lineptr, n, stream, '\n', 0, GETLINE_NO_LIMIT);
+ }
+
+-int
++ssize_t
+ getline_safe (lineptr, n, stream, limit)
+ char **lineptr;
+ size_t *n;
+--- cvs-1.11.23/lib/getline.h 2005-04-04 22:46:05.000000000 +0200
++++ cvs-1.11.23/lib/getline.h.old 2008-06-03 19:06:27.000000000 +0200
+@@ -11,9 +11,9 @@
+
+ #define GETLINE_NO_LIMIT -1
+
+-int
++ssize_t
+ getline __PROTO ((char **_lineptr, size_t *_n, FILE *_stream));
+-int
++ssize_t
+ getline_safe __PROTO ((char **_lineptr, size_t *_n, FILE *_stream,
+ int limit));
+ int
diff --git a/staging/cvs/cvs.install b/staging/cvs/cvs.install
new file mode 100644
index 000000000..f1cdd1f3e
--- /dev/null
+++ b/staging/cvs/cvs.install
@@ -0,0 +1,20 @@
+infodir=/usr/share/info
+filelist=(cvs.info cvs-info-1 cvs-info-2 cvsclient.info)
+
+post_install() {
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file $infodir/dir 2> /dev/null
+ done
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/staging/dovecot/PKGBUILD b/staging/dovecot/PKGBUILD
new file mode 100644
index 000000000..7b9a0304c
--- /dev/null
+++ b/staging/dovecot/PKGBUILD
@@ -0,0 +1,74 @@
+# $Id: PKGBUILD 121982 2011-05-01 01:05:24Z stephane $
+# Contributor: Paul Mattal <paul@mattal.com>
+# Contributor: Federico Quagliata (quaqo) <quaqo@despammed.com>
+# Contributor: GARETTE Emmanuel <gnunux at laposte dot net>
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+
+pkgname=dovecot
+pkgver=2.0.12
+pkgrel=2
+pkgdesc="An IMAP and POP3 server written with security primarily in mind"
+arch=('i686' 'x86_64')
+url="http://dovecot.org/"
+license=("LGPL")
+depends=('krb5' 'openssl' 'sqlite3>=3.7.5' 'libmysqlclient>=5.5.10'
+ 'postgresql-libs>=9.0.3' 'bzip2' 'expat' 'curl')
+makedepends=('pam>=1.1.1' 'libcap>=2.19' 'libldap>=2.4.22')
+optdepends=('libldap: ldap plugin')
+provides=('imap-server' 'pop3-server')
+options=('!libtool')
+backup=(etc/dovecot/dovecot.conf
+ etc/dovecot/conf.d/{10-auth,10-director,10-logging,10-mail,10-master,10-ssl}.conf
+ etc/dovecot/conf.d/{15-lda,20-imap,20-lmtp,20-pop3}.conf
+ etc/dovecot/conf.d/{90-acl,90-plugin,90-quota}.conf
+ etc/dovecot/conf.d/auth-{checkpassword,deny,ldap,master,passwdfile,sql,static,system,vpopmail}.conf.ext
+ etc/ssl/dovecot-openssl.cnf)
+install=$pkgname.install
+source=(http://dovecot.org/releases/2.0/${pkgname}-${pkgver}.tar.gz dovecot.sh)
+md5sums=('689e1a8863d4fb2fd252e1a6121dd181'
+ 'd020d43eab4ded6fb379dadc570a9490')
+
+build() {
+ cd ${srcdir}/$pkgname-$pkgver
+
+ # configure with openssl, mysql, and postgresql support
+ ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var \
+ --libexecdir=/usr/lib --with-moduledir=/usr/lib/dovecot/modules \
+ --disable-static \
+ --with-nss \
+ --with-pam \
+ --with-mysql \
+ --with-pgsql \
+ --with-sqlite \
+ --with-ssl=openssl --with-ssldir=/etc/dovecot/ssl \
+ --with-gssapi \
+ --with-ldap=plugin \
+ --with-zlib --with-bzlib \
+ --with-libcap \
+ --with-solr \
+ --with-docs
+ make
+}
+
+package() {
+ cd ${srcdir}/$pkgname-$pkgver
+ make DESTDIR=${pkgdir} install
+
+ # install the launch script
+ install -D -m755 ${srcdir}/$pkgname.sh ${pkgdir}/etc/rc.d/$pkgname
+
+ # install example conf files and ssl.conf
+ install -d -m755 ${pkgdir}/etc/dovecot/conf.d
+ install -m 644 ${pkgdir}/usr/share/doc/dovecot/example-config/conf.d/*.conf ${pkgdir}/etc/dovecot/conf.d
+ install -m 644 ${pkgdir}/usr/share/doc/dovecot/example-config/conf.d/*.conf.ext ${pkgdir}/etc/dovecot/conf.d
+ install -m 644 ${pkgdir}/usr/share/doc/dovecot/example-config/dovecot.conf ${pkgdir}/etc/dovecot/
+ install -d -m755 ${pkgdir}/etc/ssl
+ install -m 644 ${srcdir}/$pkgname-$pkgver/doc/dovecot-openssl.cnf ${pkgdir}/etc/ssl/
+
+ rm ${pkgdir}/etc/dovecot/README
+
+ # install dovecot userdir - https://bugs.archlinux.org/task/20533
+ install -d -m755 ${pkgdir}/var/run/dovecot/{login,empty}
+ chmod 755 ${pkgdir}/var/run/dovecot
+ chmod 750 ${pkgdir}/var/run/dovecot/login
+}
diff --git a/staging/dovecot/dovecot.install b/staging/dovecot/dovecot.install
new file mode 100644
index 000000000..51d1509ee
--- /dev/null
+++ b/staging/dovecot/dovecot.install
@@ -0,0 +1,57 @@
+# arg 1: the new package version
+post_install() {
+
+ # Make sure the group and user "dovecot"+"dovenull exists on this system and have the correct values
+
+ # dovecot
+ if grep -q "^dovecot:" /etc/group &> /dev/null ; then
+ groupmod -g 76 -n dovecot dovecot &> /dev/null
+ else
+ groupadd -g 76 dovecot &> /dev/null
+ fi
+
+ if grep -q "^dovecot:" /etc/passwd 2> /dev/null ; then
+ usermod -s /sbin/nologin -c "Dovecot user" -d /var/run/dovecot/login -u 76 -g dovecot dovecot &> /dev/null
+ else
+ useradd -s /sbin/nologin -c "Dovecot user" -d /var/run/dovecot/login -u 76 -g dovecot -m -r dovecot &> /dev/null
+ fi
+
+ # dovenull
+ if grep -q "^dovenull:" /etc/group &> /dev/null ; then
+ groupmod -g 74 -n dovenull dovenull &> /dev/null
+ else
+ groupadd -g 74 dovenull &> /dev/null
+ fi
+
+ if grep -q "^dovenull:" /etc/passwd 2> /dev/null ; then
+ usermod -s /sbin/nologin -c "Dovecot user for completely untrustworthy processes" -d /var/run/dovecot/login -u 74 -g dovenull dovenull &> /dev/null
+ else
+ useradd -s /sbin/nologin -c "Dovecot user for completely untrustworthy processes" -d /var/run/dovecot/login -u 74 -g dovenull -m -r dovenull &> /dev/null
+ fi
+
+ # harden some permissions
+ chgrp dovenull /var/run/dovecot/login
+}
+
+# arg 1: the new package version
+# arg 2: the old package version
+post_upgrade() {
+ post_install $1
+ if [ "`vercmp $2 2.0.0`" -lt 0 ]; then
+ # important upgrade notice
+ echo "> IMPORTANT DOVECOT 2.0 UPGRADE NOTICE"
+ echo "> ------------------------------------"
+ echo "> see http://wiki2.dovecot.org/Upgrading/2.0"
+ echo "> make sure, you convert the dovecot.conf file"
+ fi
+
+}
+
+# arg 1: the old package version
+pre_remove() {
+ userdel dovecot &> /dev/null
+ userdel dovenull &> /dev/null
+ groupdel dovecot &> /dev/null || /bin/true
+ groupdel dovenull &> /dev/null || /bin/true
+ rm -rf /var/run/dovecot/ &> /dev/null || /bin/true
+}
diff --git a/staging/dovecot/dovecot.sh b/staging/dovecot/dovecot.sh
new file mode 100755
index 000000000..b7555fe50
--- /dev/null
+++ b/staging/dovecot/dovecot.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/dovecot`
+case "$1" in
+ start)
+ stat_busy "Starting Dovecot"
+ [ -z "$PID" ] && /usr/sbin/dovecot
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon dovecot
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Dovecot"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon dovecot
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 2
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/staging/krb5/CVE-2010-4022.patch b/staging/krb5/CVE-2010-4022.patch
new file mode 100644
index 000000000..30ebf9638
--- /dev/null
+++ b/staging/krb5/CVE-2010-4022.patch
@@ -0,0 +1,19 @@
+diff -up krb5/src/slave/kpropd.c krb5/src/slave/kpropd.c
+--- krb5/src/slave/kpropd.c 2010-12-17 11:14:26.000000000 -0500
++++ krb5/src/slave/kpropd.c 2010-12-17 11:41:19.000000000 -0500
+@@ -404,11 +404,11 @@ retry:
+ }
+
+ close(s);
+- if (iproprole == IPROP_SLAVE)
++ if (iproprole == IPROP_SLAVE) {
+ close(finet);
+-
+- if ((ret = WEXITSTATUS(status)) != 0)
+- return (ret);
++ if ((ret = WEXITSTATUS(status)) != 0)
++ return (ret);
++ }
+ }
+ if (iproprole == IPROP_SLAVE)
+ break;
diff --git a/staging/krb5/CVE-2011-0281.0282.0283.patch b/staging/krb5/CVE-2011-0281.0282.0283.patch
new file mode 100644
index 000000000..e4623e910
--- /dev/null
+++ b/staging/krb5/CVE-2011-0281.0282.0283.patch
@@ -0,0 +1,126 @@
+diff --git a/src/kdc/dispatch.c b/src/kdc/dispatch.c
+index 63ff3b3..b4a90bb 100644
+--- a/src/kdc/dispatch.c
++++ b/src/kdc/dispatch.c
+@@ -115,7 +115,8 @@ dispatch(void *cb, struct sockaddr *local_saddr, const krb5_fulladdr *from,
+ kdc_insert_lookaside(pkt, *response);
+ #endif
+
+- if (is_tcp == 0 && (*response)->length > max_dgram_reply_size) {
++ if (is_tcp == 0 && *response != NULL &&
++ (*response)->length > max_dgram_reply_size) {
+ too_big_for_udp:
+ krb5_free_data(kdc_context, *response);
+ retval = make_too_big_error(response);
+diff --git a/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap.h b/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap.h
+index d677bb2..a356907 100644
+--- a/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap.h
++++ b/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap.h
+@@ -102,14 +102,18 @@ extern void prepend_err_str (krb5_context ctx, const char *s, krb5_error_code er
+ #define LDAP_SEARCH(base, scope, filter, attrs) LDAP_SEARCH_1(base, scope, filter, attrs, CHECK_STATUS)
+
+ #define LDAP_SEARCH_1(base, scope, filter, attrs, status_check) \
+- do { \
+- st = ldap_search_ext_s(ld, base, scope, filter, attrs, 0, NULL, NULL, &timelimit, LDAP_NO_LIMIT, &result); \
+- if (translate_ldap_error(st, OP_SEARCH) == KRB5_KDB_ACCESS_ERROR) { \
+- tempst = krb5_ldap_rebind(ldap_context, &ldap_server_handle); \
+- if (ldap_server_handle) \
+- ld = ldap_server_handle->ldap_handle; \
+- } \
+- }while (translate_ldap_error(st, OP_SEARCH) == KRB5_KDB_ACCESS_ERROR && tempst == 0); \
++ tempst = 0; \
++ st = ldap_search_ext_s(ld, base, scope, filter, attrs, 0, NULL, \
++ NULL, &timelimit, LDAP_NO_LIMIT, &result); \
++ if (translate_ldap_error(st, OP_SEARCH) == KRB5_KDB_ACCESS_ERROR) { \
++ tempst = krb5_ldap_rebind(ldap_context, &ldap_server_handle); \
++ if (ldap_server_handle) \
++ ld = ldap_server_handle->ldap_handle; \
++ if (tempst == 0) \
++ st = ldap_search_ext_s(ld, base, scope, filter, attrs, 0, \
++ NULL, NULL, &timelimit, \
++ LDAP_NO_LIMIT, &result); \
++ } \
+ \
+ if (status_check != IGNORE_STATUS) { \
+ if (tempst != 0) { \
+diff --git a/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap_conn.c b/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap_conn.c
+index 82b0333..84e80ee 100644
+--- a/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap_conn.c
++++ b/src/plugins/kdb/ldap/libkdb_ldap/kdb_ldap_conn.c
+@@ -302,6 +302,7 @@ krb5_ldap_rebind(krb5_ldap_context *ldap_context,
+ {
+ krb5_ldap_server_handle *handle = *ldap_server_handle;
+
++ ldap_unbind_ext_s(handle->ldap_handle, NULL, NULL);
+ if ((ldap_initialize(&handle->ldap_handle, handle->server_info->server_name) != LDAP_SUCCESS)
+ || (krb5_ldap_bind(ldap_context, handle) != LDAP_SUCCESS))
+ return krb5_ldap_request_next_handle_from_pool(ldap_context, ldap_server_handle);
+diff --git a/src/plugins/kdb/ldap/libkdb_ldap/ldap_misc.c b/src/plugins/kdb/ldap/libkdb_ldap/ldap_misc.c
+index 86fa4d1..0f49c86 100644
+--- a/src/plugins/kdb/ldap/libkdb_ldap/ldap_misc.c
++++ b/src/plugins/kdb/ldap/libkdb_ldap/ldap_misc.c
+@@ -487,12 +487,11 @@ is_principal_in_realm(krb5_ldap_context *ldap_context,
+ * portion, then the first portion of the principal name SHOULD be
+ * "krbtgt". All this check is done in the immediate block.
+ */
+- if (searchfor->length == 2)
+- if ((strncasecmp(searchfor->data[0].data, "krbtgt",
+- FIND_MAX(searchfor->data[0].length, strlen("krbtgt"))) == 0) &&
+- (strncasecmp(searchfor->data[1].data, defrealm,
+- FIND_MAX(searchfor->data[1].length, defrealmlen)) == 0))
++ if (searchfor->length == 2) {
++ if (data_eq_string(searchfor->data[0], "krbtgt") &&
++ data_eq_string(searchfor->data[1], defrealm))
+ return 0;
++ }
+
+ /* first check the length, if they are not equal, then they are not same */
+ if (strlen(defrealm) != searchfor->realm.length)
+diff --git a/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c b/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c
+index 140db1a..552e39a 100644
+--- a/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c
++++ b/src/plugins/kdb/ldap/libkdb_ldap/ldap_principal2.c
+@@ -78,10 +78,10 @@ krb5_error_code
+ krb5_ldap_get_principal(krb5_context context, krb5_const_principal searchfor,
+ unsigned int flags, krb5_db_entry **entry_ptr)
+ {
+- char *user=NULL, *filter=NULL, **subtree=NULL;
++ char *user=NULL, *filter=NULL, *filtuser=NULL;
+ unsigned int tree=0, ntrees=1, princlen=0;
+ krb5_error_code tempst=0, st=0;
+- char **values=NULL, *cname=NULL;
++ char **values=NULL, **subtree=NULL, *cname=NULL;
+ LDAP *ld=NULL;
+ LDAPMessage *result=NULL, *ent=NULL;
+ krb5_ldap_context *ldap_context=NULL;
+@@ -115,12 +115,18 @@ krb5_ldap_get_principal(krb5_context context, krb5_const_principal searchfor,
+ if ((st=krb5_ldap_unparse_principal_name(user)) != 0)
+ goto cleanup;
+
+- princlen = strlen(FILTER) + strlen(user) + 2 + 1; /* 2 for closing brackets */
++ filtuser = ldap_filter_correct(user);
++ if (filtuser == NULL) {
++ st = ENOMEM;
++ goto cleanup;
++ }
++
++ princlen = strlen(FILTER) + strlen(filtuser) + 2 + 1; /* 2 for closing brackets */
+ if ((filter = malloc(princlen)) == NULL) {
+ st = ENOMEM;
+ goto cleanup;
+ }
+- snprintf(filter, princlen, FILTER"%s))", user);
++ snprintf(filter, princlen, FILTER"%s))", filtuser);
+
+ if ((st = krb5_get_subtree_info(ldap_context, &subtree, &ntrees)) != 0)
+ goto cleanup;
+@@ -207,6 +213,9 @@ cleanup:
+ if (user)
+ free(user);
+
++ if (filtuser)
++ free(filtuser);
++
+ if (cname)
+ free(cname);
+
diff --git a/staging/krb5/CVE-2011-0284.patch b/staging/krb5/CVE-2011-0284.patch
new file mode 100644
index 000000000..c97727568
--- /dev/null
+++ b/staging/krb5/CVE-2011-0284.patch
@@ -0,0 +1,13 @@
+diff --git a/src/kdc/do_as_req.c b/src/kdc/do_as_req.c
+index 46b5fa1..464cb6e 100644
+--- a/src/kdc/do_as_req.c
++++ b/src/kdc/do_as_req.c
+@@ -741,6 +741,8 @@ prepare_error_as (struct kdc_request_state *rstate, krb5_kdc_req *request,
+ pad->contents = td[size]->data;
+ pad->length = td[size]->length;
+ pa[size] = pad;
++ td[size]->data = NULL;
++ td[size]->length = 0;
+ }
+ krb5_free_typed_data(kdc_context, td);
+ }
diff --git a/staging/krb5/CVE-2011-0285.patch b/staging/krb5/CVE-2011-0285.patch
new file mode 100644
index 000000000..61039113f
--- /dev/null
+++ b/staging/krb5/CVE-2011-0285.patch
@@ -0,0 +1,39 @@
+diff --git a/src/kadmin/server/schpw.c b/src/kadmin/server/schpw.c
+index 1124445..0056885 100644
+--- a/src/kadmin/server/schpw.c
++++ b/src/kadmin/server/schpw.c
+@@ -52,6 +52,7 @@ process_chpw_request(context, server_handle, realm, keytab,
+
+ ret = 0;
+ rep->length = 0;
++ rep->data = NULL;
+
+ auth_context = NULL;
+ changepw = NULL;
+@@ -76,8 +77,13 @@ process_chpw_request(context, server_handle, realm, keytab,
+ plen = (*ptr++ & 0xff);
+ plen = (plen<<8) | (*ptr++ & 0xff);
+
+- if (plen != req->length)
+- return(KRB5KRB_AP_ERR_MODIFIED);
++ if (plen != req->length) {
++ ret = KRB5KRB_AP_ERR_MODIFIED;
++ numresult = KRB5_KPASSWD_MALFORMED;
++ strlcpy(strresult, "Request length was inconsistent",
++ sizeof(strresult));
++ goto chpwfail;
++ }
+
+ /* verify version number */
+
+@@ -531,6 +537,10 @@ cleanup:
+ if (local_kaddrs != NULL)
+ krb5_free_addresses(server_handle->context, local_kaddrs);
+
++ if ((*response)->data == NULL) {
++ free(*response);
++ *response = NULL;
++ }
+ krb5_kt_close(server_handle->context, kt);
+
+ return ret;
diff --git a/staging/krb5/PKGBUILD b/staging/krb5/PKGBUILD
new file mode 100644
index 000000000..ace8000d4
--- /dev/null
+++ b/staging/krb5/PKGBUILD
@@ -0,0 +1,77 @@
+# $Id: PKGBUILD 121067 2011-04-28 21:24:40Z stephane $
+# Maintainer: Stéphane Gaudreault <stephane@archlinux.org>
+
+pkgname=krb5
+pkgver=1.9
+pkgrel=2
+pkgdesc="The Kerberos network authentication system"
+arch=('i686' 'x86_64')
+url="http://web.mit.edu/kerberos/"
+license=('custom')
+depends=('e2fsprogs' 'libldap' 'keyutils')
+makedepends=('perl')
+provides=('heimdal')
+replaces=('heimdal')
+conflicts=('heimdal')
+backup=('etc/krb5/krb5.conf' 'etc/krb5/kdc.conf')
+source=(http://web.mit.edu/kerberos/dist/${pkgname}/${pkgver}/${pkgname}-${pkgver}-signed.tar
+ kadmind.rc
+ krb5-kdc.rc
+ CVE-2010-4022.patch
+ CVE-2011-0281.0282.0283.patch
+ CVE-2011-0284.patch
+ CVE-2011-0285.patch)
+sha1sums=('a7ad1b4ed37bff4b9087f6c4561b2b222208d779'
+ '640e3046c6558313d2be81cf2252afc8622892b0'
+ '77d2312ecd8bf12a6e72cc8fd871a8ac93b23393'
+ '79ece8b1c140deb2c01bfb64af575636b9bc7704'
+ 'fb2486168ce128cb1a2866bd0df8cd7c4bcd7824'
+ '1c72390c5d629eee592e5cb0c2b600b376e2fdc5'
+ 'b6ae716616ecd5e92f32ec8203a1ab51b5726184')
+options=('!emptydirs')
+
+build() {
+ tar zxvf ${pkgname}-${pkgver}.tar.gz
+ cd "${srcdir}/${pkgname}-${pkgver}/src"
+
+ patch -Np2 -i ../../CVE-2010-4022.patch
+ patch -Np2 -i ../../CVE-2011-0281.0282.0283.patch
+ patch -Np2 -i ../../CVE-2011-0284.patch
+ patch -Np2 -i ../../CVE-2011-0285.patch
+
+ export CFLAGS+=" -fPIC -fno-strict-aliasing -fstack-protector-all"
+ export CPPFLAGS+=" -I/usr/include/et"
+ ./configure --prefix=/usr \
+ --sysconfdir=/etc/krb5 \
+ --mandir=/usr/share/man \
+ --localstatedir=/var/lib \
+ --enable-shared \
+ --with-system-et \
+ --with-system-ss \
+ --disable-rpath \
+ --without-tcl \
+ --enable-dns-for-realm \
+ --with-ldap
+
+ make
+}
+
+check() {
+ # We can't do this in the build directory.
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make -C src check
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}/src"
+ make DESTDIR="${pkgdir}" EXAMPLEDIR="/usr/share/doc/${pkgname}/examples" install
+
+ install -D -m 644 config-files/kdc.conf "${pkgdir}"/etc/krb5/kdc.conf
+ install -D -m 644 config-files/krb5.conf "${pkgdir}"/etc/krb5/krb5.conf
+
+ install -d -m 755 "${pkgdir}"/etc/rc.d
+ install -m 755 ../../krb5-kdc.rc "${pkgdir}"/etc/rc.d
+ install -m 755 ../../kadmind.rc "${pkgdir}"/etc/rc.d
+
+ install -Dm644 "${srcdir}"/${pkgname}-${pkgver}/NOTICE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE
+}
diff --git a/staging/krb5/kadmind.rc b/staging/krb5/kadmind.rc
new file mode 100644
index 000000000..45835e35b
--- /dev/null
+++ b/staging/krb5/kadmind.rc
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/kadmind`
+case "$1" in
+ start)
+ stat_busy "Starting Kerberos Admin Daemon"
+ if [ -z "$PID" ]; then
+ /usr/sbin/kadmind
+ fi
+ if [ ! -z "$PID" -o $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon kadmind
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Kerberos Admin Daemon"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon kadmind
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+ ;;
+esac
+exit 0
diff --git a/staging/krb5/krb5-kdc.rc b/staging/krb5/krb5-kdc.rc
new file mode 100644
index 000000000..05a03411e
--- /dev/null
+++ b/staging/krb5/krb5-kdc.rc
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+# general config
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+PID=`pidof -o %PPID /usr/sbin/krb5kdc`
+case "$1" in
+ start)
+ stat_busy "Starting Kerberos Authentication"
+ if [ -z "$PID" ]; then
+ /usr/sbin/krb5kdc
+ fi
+ if [ ! -z "$PID" -o $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon krb5-kdc
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Kerberos Authentication"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon krb5-kdc
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+ ;;
+esac
+exit 0
diff --git a/staging/librpcsecgss/PKGBUILD b/staging/librpcsecgss/PKGBUILD
new file mode 100644
index 000000000..c16ea175b
--- /dev/null
+++ b/staging/librpcsecgss/PKGBUILD
@@ -0,0 +1,27 @@
+# $Id: PKGBUILD 121187 2011-04-29 07:12:44Z stephane $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+# Contributor: Andrew Krawchyk <krawch_a@denison.edu>, Marco Lima <cipparello gmail com>
+
+pkgname=librpcsecgss
+pkgver=0.19
+pkgrel=5
+pkgdesc="Library for RPCSECGSS support"
+arch=('i686' 'x86_64')
+url="http://www.citi.umich.edu/projects/nfsv4/linux/"
+license=('GPL')
+depends=('glibc' 'krb5' 'libgssglue')
+makedepends=('pkg-config' 'autoconf')
+options=('!libtool')
+source=("http://www.citi.umich.edu/projects/nfsv4/linux/${pkgname}/${pkgname}-${pkgver}.tar.gz")
+md5sums=('b45ed565bdc3099023aa35830ec92997')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure --prefix=/usr
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="$pkgdir/" install
+}
diff --git a/staging/librpcsecgss/librpcsecgss-0.18-heimdal.patch b/staging/librpcsecgss/librpcsecgss-0.18-heimdal.patch
new file mode 100644
index 000000000..deb039123
--- /dev/null
+++ b/staging/librpcsecgss/librpcsecgss-0.18-heimdal.patch
@@ -0,0 +1,33 @@
+diff -NaurwB librpcsecgss-0.18.orig/configure.in librpcsecgss-0.18/configure.in
+--- librpcsecgss-0.18.orig/configure.in 2008-04-09 00:05:40.000000000 +0200
++++ librpcsecgss-0.18/configure.in 2008-06-12 19:05:51.000000000 +0200
+@@ -12,10 +12,15 @@
+ AC_PROG_RANLIB
+
+ # Checks for libraries.
+-PKG_CHECK_MODULES([GSSGLUE], [libgssglue >= 0.1], [],
++PKG_CHECK_MODULES([GSSGLUE], [libgssglue >= 0.1],
++ [echo GSSGLUE found; GSSAPI_IMPLEMENTATION=libgssglue],
++ [PKG_CHECK_MODULES([GSSGLUE], [heimdal-gssapi],
++ [echo HEIMDAL found; GSSAPI_IMPLEMENTATION=heimdal-gssapi],
+ [AC_MSG_ERROR([Unable to locate information required to use libgssglue.
+ If you have pkgconfig installed, you might try setting environment
+- variable PKG_CONFIG_PATH to /usr/local/lib/pkgconfig])])
++ variable PKG_CONFIG_PATH to /usr/local/lib/pkgconfig])])])
++
++AC_SUBST([GSSAPI_IMPLEMENTATION])
+
+ # Checks for header files.
+ AC_HEADER_STDC
+diff -NaurwB librpcsecgss-0.18.orig/librpcsecgss.pc.in librpcsecgss-0.18/librpcsecgss.pc.in
+--- librpcsecgss-0.18.orig/librpcsecgss.pc.in 2007-09-06 17:39:04.000000000 +0200
++++ librpcsecgss-0.18/librpcsecgss.pc.in 2008-06-12 19:06:40.000000000 +0200
+@@ -5,7 +5,7 @@
+
+ Name: librpcsecgss
+ Description: Library that implements rpcsec_gss interface.
+-Requires: libgssglue
++Requires: @GSSAPI_IMPLEMENTATION@
+ Version: @PACKAGE_VERSION@
+ Libs: -L@libdir@ -lrpcsecgss
+ Cflags: -I@includedir@/rpcsecgss
diff --git a/staging/libtirpc/PKGBUILD b/staging/libtirpc/PKGBUILD
new file mode 100644
index 000000000..b222249ff
--- /dev/null
+++ b/staging/libtirpc/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 121179 2011-04-29 06:50:46Z stephane $
+# Maintainer: Tobias Powalowski <tpowa@archlinux.org>
+pkgname=libtirpc
+pkgver=0.2.1
+pkgrel=3
+pkgdesc="Transport Independent RPC library (SunRPC replacement)"
+arch=(i686 x86_64)
+depends=('glibc' 'libgssglue' 'krb5')
+url="http://libtirpc.sourceforge.net/"
+license=('GPL2')
+source=(http://downloads.sourceforge.net/sourceforge/libtirpc/${pkgname}-${pkgver}.tar.bz2
+ libtirpc-0.2.1-fortify.patch)
+backup=('etc/netconfig')
+options=(!libtool)
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ # fix http://bugs.gentoo.org/293593
+ # https://bugs.archlinux.org/task/20082
+ patch -Np1 -i ../libtirpc-0.2.1-fortify.patch
+ ./configure --prefix=/usr --enable-gss
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+ # install netconfig
+ install -D -m644 doc/etc_netconfig "${pkgdir}"/etc/netconfig
+}
+md5sums=('d77eb15f464bf9d6e66259eaf78b2a4e'
+ '2e5c067f1651469dfbbdc91d3c9c60e8')
diff --git a/staging/libtirpc/libtirpc-0.2.1-fortify.patch b/staging/libtirpc/libtirpc-0.2.1-fortify.patch
new file mode 100644
index 000000000..7375bf83e
--- /dev/null
+++ b/staging/libtirpc/libtirpc-0.2.1-fortify.patch
@@ -0,0 +1,18 @@
+Index: libtirpc-0.2.1/src/getrpcport.c
+===================================================================
+--- libtirpc-0.2.1.orig/src/getrpcport.c
++++ libtirpc-0.2.1/src/getrpcport.c
+@@ -54,11 +54,11 @@ getrpcport(host, prognum, versnum, proto
+
+ if ((hp = gethostbyname(host)) == NULL)
+ return (0);
++ if (hp->h_length != sizeof(addr.sin_addr.s_addr))
++ return (0);
+ memset(&addr, 0, sizeof(addr));
+ addr.sin_family = AF_INET;
+ addr.sin_port = 0;
+- if (hp->h_length > sizeof(addr))
+- hp->h_length = sizeof(addr);
+ memcpy(&addr.sin_addr.s_addr, hp->h_addr, (size_t)hp->h_length);
+ /* Inconsistent interfaces need casts! :-( */
+ return (pmap_getport(&addr, (u_long)prognum, (u_long)versnum,
diff --git a/staging/mutt/PKGBUILD b/staging/mutt/PKGBUILD
new file mode 100644
index 000000000..9a940857c
--- /dev/null
+++ b/staging/mutt/PKGBUILD
@@ -0,0 +1,47 @@
+# $Id: PKGBUILD 121107 2011-04-29 00:34:05Z stephane $
+# Contributor: tobias [tobias [at] archlinux.org]
+# Maintainer: Gaetan Bisson <bisson@archlinux.org>
+
+pkgname=mutt
+pkgver=1.5.21
+pkgrel=5
+pkgdesc='Small but very powerful text-based mail client'
+url='http://www.mutt.org/'
+license=('GPL')
+backup=('etc/Muttrc')
+arch=('i686' 'x86_64')
+depends=('gpgme' 'ncurses' 'openssl' 'libsasl' 'gdbm' 'libidn' 'mime-types' 'krb5')
+source=("ftp://ftp.mutt.org/mutt/devel/${pkgname}-${pkgver}.tar.gz")
+sha1sums=('a8475f2618ce5d5d33bff85c0affdf21ab1d76b9')
+
+install=install
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --enable-gpgme \
+ --enable-pop \
+ --enable-imap \
+ --enable-smtp \
+ --enable-hcache \
+ --with-curses=/usr \
+ --with-regex \
+ --with-gss=/usr \
+ --with-ssl=/usr \
+ --with-sasl \
+ --with-idn \
+
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ rm "${pkgdir}"/usr/bin/{flea,muttbug}
+ rm "${pkgdir}"/usr/share/man/man1/{flea,muttbug}.1
+ rm "${pkgdir}"/etc/mime.types{,.dist}
+ install -Dm644 contrib/gpg.rc "${pkgdir}"/etc/Muttrc.gpg.dist
+}
diff --git a/staging/mutt/install b/staging/mutt/install
new file mode 100644
index 000000000..d65675c06
--- /dev/null
+++ b/staging/mutt/install
@@ -0,0 +1,8 @@
+post_install() {
+ cat <<EOF
+
+==> For GPG support, add the following to your muttrc:
+==> source /etc/Muttrc.gpg.dist
+
+EOF
+}
diff --git a/staging/neon/PKGBUILD b/staging/neon/PKGBUILD
new file mode 100644
index 000000000..c0fe650cf
--- /dev/null
+++ b/staging/neon/PKGBUILD
@@ -0,0 +1,29 @@
+# $Id: PKGBUILD 121086 2011-04-29 00:26:05Z stephane $
+# Contributor: Tom Newsom <Jeepster@gmx.co.uk>
+# Maintainer: Juergen Hoetzel <juergen@archlinux.org>
+
+# KEEP LIBTOOL FILES!
+pkgname=neon
+pkgver=0.29.3
+pkgrel=3
+pkgdesc="HTTP and WebDAV client library with a C interface"
+arch=('i686' 'x86_64')
+license=('GPL' 'LGPL')
+depends=('krb5' 'expat' 'ca-certificates')
+url="http://www.webdav.org/neon/"
+source=("http://www.webdav.org/neon/${pkgname}-${pkgver}.tar.gz")
+md5sums=('ba1015b59c112d44d7797b62fe7bee51')
+options=('libtool')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr \
+ --with-expat --enable-shared --disable-static \
+ --with-ssl=openssl --with-ca-bundle=/etc/ssl/certs/ca-certificates.crt
+ make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+}
diff --git a/staging/nss_ldap/PKGBUILD b/staging/nss_ldap/PKGBUILD
new file mode 100644
index 000000000..0a1f93d38
--- /dev/null
+++ b/staging/nss_ldap/PKGBUILD
@@ -0,0 +1,33 @@
+# $Id: PKGBUILD 121171 2011-04-29 06:45:19Z stephane $
+# Maintainer: Paul Mattal <paul@archlinux.org>
+# Contributor: Comete <la_comete@tiscali.fr>
+
+pkgname=nss_ldap
+pkgver=265
+pkgrel=2
+pkgdesc="The nss_ldap module provides the means for Linux and Solaris workstations to resolve the entities defined in RFC 2307 from LDAP directories."
+arch=(i686 x86_64)
+url="http://www.padl.com/OSS/nss_ldap.html"
+license=('LGPL')
+depends=('libldap>=2.4.18' 'krb5')
+backup=("etc/nss_ldap.conf")
+source=(http://www.padl.com/download/${pkgname}-${pkgver}.tar.gz)
+md5sums=('c1cb02d1a85538cf16bca6f6a562abe4')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ ./configure \
+ --with-ldap-conf-file=/etc/nss_ldap.conf \
+ --with-ldap=openldap \
+ --libdir=/lib \
+ --mandir=/usr/share/man \
+ --enable-schema-mapping \
+ --enable-rfc2307bis \
+ --enable-configurable-krb5-ccname-gssapi
+ env PATH=`pwd`:"$PATH" make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+}
diff --git a/staging/openssh/PKGBUILD b/staging/openssh/PKGBUILD
new file mode 100644
index 000000000..42443afc2
--- /dev/null
+++ b/staging/openssh/PKGBUILD
@@ -0,0 +1,55 @@
+# $Id: PKGBUILD 121075 2011-04-28 23:41:59Z stephane $
+# Maintainer: Aaron Griffin <aaron@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
+
+pkgname=openssh
+pkgver=5.8p1
+pkgrel=2
+pkgdesc='Free version of the SSH connectivity tools'
+arch=('i686' 'x86_64')
+license=('custom:BSD')
+url='http://www.openssh.org/portable.html'
+backup=('etc/ssh/ssh_config' 'etc/ssh/sshd_config' 'etc/pam.d/sshd' 'etc/conf.d/sshd')
+depends=('tcp_wrappers' 'krb5' 'libedit')
+source=("ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz"
+ 'sshd.confd'
+ 'sshd.pam'
+ 'sshd')
+sha1sums=('adebb2faa9aba2a3a3c8b401b2b19677ab53f0de'
+ 'ec102deb69cad7d14f406289d2fc11fee6eddbdd'
+ '660092c57bde28bed82078f74011f95fc51c2293'
+ '6b7f8ebf0c1cc37137a7d9a53447ac8a0ee6a2b5')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+ ./configure --prefix=/usr --libexecdir=/usr/lib/ssh \
+ --sysconfdir=/etc/ssh --with-tcp-wrappers --with-privsep-user=nobody \
+ --with-md5-passwords --with-pam --with-mantype=man --mandir=/usr/share/man \
+ --with-xauth=/usr/bin/xauth --with-kerberos5=/usr --with-ssl-engine \
+ --with-libedit=/usr/lib --disable-strip # stripping is done by makepkg
+ make
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}" install
+
+ install -Dm755 ../sshd "${pkgdir}"/etc/rc.d/sshd
+ install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd
+ install -Dm644 ../sshd.confd "${pkgdir}"/etc/conf.d/sshd
+ install -Dm644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENCE"
+
+ rm "${pkgdir}"/usr/share/man/man1/slogin.1
+ ln -sf ssh.1.gz "${pkgdir}"/usr/share/man/man1/slogin.1.gz
+
+ # additional contrib scripts that we like
+ install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/findssl.sh
+ install -Dm755 contrib/ssh-copy-id "${pkgdir}"/usr/bin/ssh-copy-id
+ install -Dm644 contrib/ssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1
+
+ # PAM is a common, standard feature to have
+ sed -i -e '/^#ChallengeResponseAuthentication yes$/c ChallengeResponseAuthentication no' \
+ -e '/^#UsePAM no$/c UsePAM yes' \
+ "$pkgdir"/etc/ssh/sshd_config
+}
diff --git a/staging/openssh/sshd b/staging/openssh/sshd
new file mode 100755
index 000000000..2ee1091f0
--- /dev/null
+++ b/staging/openssh/sshd
@@ -0,0 +1,48 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/sshd
+
+PIDFILE=/var/run/sshd.pid
+PID=$(cat $PIDFILE 2>/dev/null)
+if ! readlink -q /proc/$PID/exe | grep -q '^/usr/sbin/sshd'; then
+ PID=
+ rm $PIDFILE 2>/dev/null
+fi
+
+case "$1" in
+ start)
+ stat_busy "Starting Secure Shell Daemon"
+ [ -f /etc/ssh/ssh_host_key ] || { /usr/bin/ssh-keygen -t rsa1 -N "" -f /etc/ssh/ssh_host_key >/dev/null; }
+ [ -f /etc/ssh/ssh_host_rsa_key ] || { /usr/bin/ssh-keygen -t rsa -N "" -f /etc/ssh/ssh_host_rsa_key >/dev/null; }
+ [ -f /etc/ssh/ssh_host_dsa_key ] || { /usr/bin/ssh-keygen -t dsa -N "" -f /etc/ssh/ssh_host_dsa_key >/dev/null; }
+ [ -f /etc/ssh/ssh_host_ecdsa_key ] || { /usr/bin/ssh-keygen -t ecdsa -N "" -f /etc/ssh/ssh_host_ecdsa_key >/dev/null; }
+ [ -d /var/empty ] || mkdir -p /var/empty
+ [ -z "$PID" ] && /usr/sbin/sshd $SSHD_ARGS
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon sshd
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping Secure Shell Daemon"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon sshd
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
+exit 0
diff --git a/staging/openssh/sshd.confd b/staging/openssh/sshd.confd
new file mode 100644
index 000000000..5ce7c0079
--- /dev/null
+++ b/staging/openssh/sshd.confd
@@ -0,0 +1,4 @@
+#
+# Parameters to be passed to sshd
+#
+SSHD_ARGS=""
diff --git a/staging/openssh/sshd.pam b/staging/openssh/sshd.pam
new file mode 100644
index 000000000..ae028ceb5
--- /dev/null
+++ b/staging/openssh/sshd.pam
@@ -0,0 +1,10 @@
+#%PAM-1.0
+#auth required pam_securetty.so #Disable remote root
+auth required pam_unix.so
+auth required pam_env.so
+account required pam_nologin.so
+account required pam_unix.so
+account required pam_time.so
+password required pam_unix.so
+session required pam_unix_session.so
+session required pam_limits.so
diff --git a/staging/rasqal/PKGBUILD b/staging/rasqal/PKGBUILD
new file mode 100644
index 000000000..c246d1528
--- /dev/null
+++ b/staging/rasqal/PKGBUILD
@@ -0,0 +1,28 @@
+# $Id: PKGBUILD 121005 2011-04-27 20:12:19Z andrea $
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
+# Contributor: Lawrence Lee <valheru@facticius.net>
+
+pkgname=rasqal
+pkgver=0.9.25
+pkgrel=2
+pkgdesc="A free C library that handles Resource Description Framework (RDF) query syntaxes, query construction and query execution returning result bindings"
+url="http://librdf.org/rasqal"
+license=('GPL' 'LGPL')
+arch=('i686' 'x86_64')
+depends=('raptor>=2.0.2' 'mpfr')
+options=('!libtool')
+source=(http://download.librdf.org/source/${pkgname}-${pkgver}.tar.gz)
+md5sums=('ee12d7ad59c581eb65db89c851672c0a')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr \
+ --disable-static \
+ --enable-release
+ make
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+}
diff --git a/staging/redland/PKGBUILD b/staging/redland/PKGBUILD
new file mode 100644
index 000000000..f8b337c91
--- /dev/null
+++ b/staging/redland/PKGBUILD
@@ -0,0 +1,77 @@
+# $Id: PKGBUILD 121010 2011-04-27 20:14:39Z andrea $
+# Maintainer: AndyRTR <andyrtr@archlinux.org>
+# Contributor: Francois Charette <francois.archlinux.org>
+
+pkgbase=redland
+pkgname=('redland' 'redland-storage-mysql' 'redland-storage-postgresql' 'redland-storage-virtuoso' 'redland-storage-sqlite')
+pkgver=1.0.13
+pkgrel=2
+url="http://librdf.org/"
+license=("GPL")
+arch=('i686' 'x86_64')
+makedepends=('rasqal>=0.9.25' 'raptor>=2.0.2' 'db>=5.1' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3')
+options=('!libtool')
+source=(http://download.librdf.org/source/$pkgname-$pkgver.tar.gz
+ rpath.diff)
+md5sums=('96c15f36f842ad7e1c9d225e4ca97b68'
+ 'acc85e784f01a656bd56777f95880787')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr \
+ --enable-release \
+ --disable-static \
+ --with-raptor=system \
+ --with-rasqal=system \
+ --with-sqlite=3
+
+ # nuke rpath
+ patch -Np0 -i ${srcdir}/rpath.diff
+
+ make
+}
+
+package_redland() {
+ pkgdesc="Library that provides a high-level interface to RDF data"
+ depends=('rasqal>=0.9.25' 'raptor>=2.0.2' 'libtool')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ make DESTDIR=${pkgdir} install
+ rm -rf ${pkgdir}/usr/lib/redland
+}
+
+package_redland-storage-mysql() {
+ pkgdesc="MySQL storage support for Redland"
+ depends=('redland' 'libmysqlclient')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ install -dm755 ${pkgdir}/usr/lib/redland
+ install -m755 src/.libs/librdf_storage_mysql.so ${pkgdir}/usr/lib/redland/librdf_storage_mysql.so
+}
+
+package_redland-storage-postgresql() {
+ pkgdesc="PostgreSQL storage support for Redland"
+ depends=('redland' 'postgresql-libs')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ install -dm755 ${pkgdir}/usr/lib/redland
+ install -m755 src/.libs/librdf_storage_postgresql.so ${pkgdir}/usr/lib/redland/
+}
+
+package_redland-storage-virtuoso() {
+ pkgdesc="Virtuoso storage support for Redland"
+ depends=('redland' 'unixodbc' 'db')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ install -dm755 ${pkgdir}/usr/lib/redland
+ install -m755 src/.libs/librdf_storage_virtuoso.so ${pkgdir}/usr/lib/redland/
+}
+
+package_redland-storage-sqlite() {
+ pkgdesc="SQLite storage support for Redland"
+ depends=('redland' 'sqlite3' 'db')
+
+ cd ${srcdir}/${pkgbase}-${pkgver}
+ install -dm755 ${pkgdir}/usr/lib/redland
+ install -m755 src/.libs/librdf_storage_sqlite.so ${pkgdir}/usr/lib/redland/
+}
diff --git a/staging/redland/rpath.diff b/staging/redland/rpath.diff
new file mode 100644
index 000000000..831bc80ed
--- /dev/null
+++ b/staging/redland/rpath.diff
@@ -0,0 +1,11 @@
+--- libtool 2011-02-20 10:46:47.000000000 +0100
++++ libtool.new 2011-02-20 10:52:58.285764909 +0100
+@@ -324,7 +324,7 @@
+
+ # Flag to hardcode $libdir into a binary during linking.
+ # This must work even if $libdir does not exist
+-hardcode_libdir_flag_spec="\${wl}-rpath \${wl}\$libdir"
++hardcode_libdir_flag_spec=" "
+
+ # If ld is used when linking, flag to hardcode $libdir into a binary
+ # during linking. This must work even if $libdir does not exist.
diff --git a/staging/slv2/PKGBUILD b/staging/slv2/PKGBUILD
new file mode 100644
index 000000000..bc8c1b69a
--- /dev/null
+++ b/staging/slv2/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 120997 2011-04-27 20:04:54Z andrea $
+# Maintainer: Ray Rashif <schiv@archlinux.org>
+# Contributor: Leslie P. Polzer <polzer@stardawn.org>
+
+pkgname=slv2
+pkgver=0.6.6
+pkgrel=5
+pkgdesc="Library for LV2 hosts"
+arch=('i686' 'x86_64')
+url="http://drobilla.net/software/slv2"
+license=('GPL')
+depends=('redland>=1.0.13' 'lv2core' 'jack')
+makedepends=('python2')
+install=$pkgname.install
+changelog=$pkgname.changelog
+source=(http://download.drobilla.net/$pkgname-$pkgver.tar.bz2)
+md5sums=('b8e8e0e82dd04324fcd533e8acd1ce85')
+
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ python2 waf configure --prefix=/usr
+ python2 waf build $MAKEFLAGS
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+
+ python2 waf install --destdir="$pkgdir/"
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/staging/slv2/slv2.changelog b/staging/slv2/slv2.changelog
new file mode 100644
index 000000000..f394a5067
--- /dev/null
+++ b/staging/slv2/slv2.changelog
@@ -0,0 +1,23 @@
+22 Feb 2011 (GMT+8) Ray Rashif <schiv@archlinux.org>
+
+ * 0.6.6-3:
+ raptor rebuild
+
+24 Nov 2010 (GMT+8) Ray Rashif <schiv@archlinux.org>
+
+ * PKGBUILD :
+ Get rid of sed and use python2 directly for waf.
+ waf fix for python transition already included previously (unlogged).
+ Release only (no need binary update; no runtime python requirement).
+
+9 Aug 2010 (GMT+8) Ray Rashif <schiv@archlinux.org>
+
+ * 0.6.6-2 :
+ Brought into extra from community for ardour
+ - adds "LV2" plug-ins support
+
+ * PKGBUILD :
+ Minor cosmetic ammendments.
+
+ * slv2.changelog :
+ Added this changelog.
diff --git a/staging/slv2/slv2.install b/staging/slv2/slv2.install
new file mode 100644
index 000000000..c980ddfab
--- /dev/null
+++ b/staging/slv2/slv2.install
@@ -0,0 +1,14 @@
+post_install() {
+ echo "Updating Shared Library Links"
+ /sbin/ldconfig
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
+
+# vim:set ts=2 sw=2 et:
diff --git a/staging/subversion/PKGBUILD b/staging/subversion/PKGBUILD
new file mode 100644
index 000000000..0f9c0a70a
--- /dev/null
+++ b/staging/subversion/PKGBUILD
@@ -0,0 +1,92 @@
+# $Id: PKGBUILD 121110 2011-04-29 01:29:30Z stephane $
+# Maintainer: Paul Mattal <paul@archlinux.org>
+# Contributor: Jason Chu <jason@archlinux.org>
+
+pkgname=subversion
+pkgver=1.6.15
+pkgrel=2
+pkgdesc="Replacement for CVS, another versioning system (SVN)"
+arch=('i686' 'x86_64')
+license=('apache' 'bsd')
+depends=('neon' 'apr-util')
+makedepends=('krb5' 'apache' 'python2' 'perl' 'swig' 'ruby' 'java-runtime'
+ 'autoconf' 'sqlite3' 'db' 'e2fsprogs' 'libgnome-keyring' 'kdelibs')
+source=(http://subversion.tigris.org/downloads/$pkgname-$pkgver.tar.bz2
+ svnserve svn svnserve.conf svnmerge.py
+ subversion.rpath.fix.patch
+ subversion.suppress.deprecation.warnings.patch)
+
+backup=('etc/xinetd.d/svn' 'etc/conf.d/svnserve')
+url="http://subversion.apache.org/"
+provides=('svn')
+options=('!makeflags' '!libtool')
+optdepends=('libgnome-keyring' 'kdeutils-kwallet' 'bash-completion: for svn bash completion')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+
+ export PYTHON=/usr/bin/python2
+
+ # apply patches
+ patch -p0 < $srcdir/subversion.rpath.fix.patch
+ patch -p1 -i $srcdir/subversion.suppress.deprecation.warnings.patch
+
+ # configure
+ autoreconf
+ ./configure --prefix=/usr --with-apr=/usr --with-apr-util=/usr \
+ --with-zlib=/usr --with-neon=/usr --with-apxs \
+ --with-sqlite=/usr --with-berkeley-db=:/usr/include/:/usr/lib:db-5.1 \
+ --enable-javahl --with-gnome-keyring --with-kwallet
+
+ # build
+ (make external-all && make LT_LDFLAGS="-L$Fdestdir/usr/lib" local-all )
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+
+ # install
+ export LD_LIBRARY_PATH=${pkgdir}/usr/lib:$LD_LIBRARY_PATH
+ make DESTDIR=${pkgdir} install
+
+ make DESTDIR=${pkgdir} swig-py
+ make install-swig-py DESTDIR=${pkgdir}
+
+ install -d ${pkgdir}/usr/lib/python2.7
+ mv ${pkgdir}/usr/lib/svn-python/ ${pkgdir}/usr/lib/python2.7/site-packages
+
+ install -d ${pkgdir}/usr/share/subversion
+ install -d -m 755 tools/hook-scripts ${pkgdir}/usr/share/subversion/
+ rm -f ${pkgdir}/usr/share/subversion/hook-scripts/*.in
+
+ make DESTDIR=${pkgdir} swig-pl
+ make install-swig-pl DESTDIR=${pkgdir} INSTALLDIRS=vendor
+ rm -f ${pkgdir}/usr/lib/perl5/vendor_perl/auto/SVN/_Core/.packlist
+ rm -rf ${pkgdir}/usr/lib/perl5/core_perl
+
+ make DESTDIR=${pkgdir} swig-rb
+ make install-swig-rb DESTDIR=${pkgdir}
+
+ make DESTDIR=${pkgdir} javahl
+ make DESTDIR=${pkgdir} install-javahl
+
+ install -d ${pkgdir}/etc/{rc.d,xinetd.d,conf.d}
+
+ install -m 755 ${srcdir}/svnserve ${pkgdir}/etc/rc.d
+ install -m 644 ${srcdir}/svn ${pkgdir}/etc/xinetd.d
+ install -m 644 ${srcdir}/svnserve.conf ${pkgdir}/etc/conf.d/svnserve
+ install -m 755 ${srcdir}/svnmerge.py ${pkgdir}/usr/bin/svnmerge
+ install -D -m 644 ${srcdir}/subversion-$pkgver/COPYING \
+ ${pkgdir}/usr/share/licenses/$pkgname/LICENSE
+
+ # bash completion
+ install -Dm 644 ${srcdir}/${pkgname}-${pkgver}/tools/client-side/bash_completion \
+ ${pkgdir}/etc/bash_completion.d/subversion
+}
+md5sums=('113fca1d9e4aa389d7dc2b210010fa69'
+ 'a2b029e8385007ffb99b437b30521c90'
+ 'a0db6dd43af33952739b6ec089852630'
+ 'c459e299192552f61578f3438abf0664'
+ 'a6371baeda7e224504629ecdda2749b4'
+ '6b4340ba9d8845cd8497e013ae01be3f'
+ '1166f3b7413d7e7450299b3525680bbe')
diff --git a/staging/subversion/subversion.rpath.fix.patch b/staging/subversion/subversion.rpath.fix.patch
new file mode 100644
index 000000000..ba6ee9e4e
--- /dev/null
+++ b/staging/subversion/subversion.rpath.fix.patch
@@ -0,0 +1,10 @@
+--- Makefile.in.orig 2009-02-16 14:10:48.000000000 -0200
++++ Makefile.in 2009-06-04 00:56:29.000000000 -0300
+@@ -678,6 +678,7 @@
+
+ $(SWIG_PL_DIR)/native/Makefile: $(SWIG_PL_DIR)/native/Makefile.PL
+ cd $(SWIG_PL_DIR)/native; $(PERL) Makefile.PL
++ cd $(SWIG_PL_DIR)/native; sed -i 's|LD_RUN_PATH|DIE_RPATH_DIE|g' Makefile{,.{client,delta,fs,ra,repos,wc}}
+
+ swig-pl_DEPS = autogen-swig-pl libsvn_swig_perl \
+ $(SWIG_PL_DIR)/native/Makefile
diff --git a/staging/subversion/subversion.suppress.deprecation.warnings.patch b/staging/subversion/subversion.suppress.deprecation.warnings.patch
new file mode 100644
index 000000000..94ce89b18
--- /dev/null
+++ b/staging/subversion/subversion.suppress.deprecation.warnings.patch
@@ -0,0 +1,22 @@
+diff -urN subversion-1.6.9/subversion/bindings/swig/python/svn/core.py subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py
+--- subversion-1.6.9/subversion/bindings/swig/python/svn/core.py 2009-02-13 11:22:26.000000000 -0500
++++ subversion-1.6.9-fixed/subversion/bindings/swig/python/svn/core.py 2010-02-08 07:46:29.000000000 -0500
+@@ -19,6 +19,7 @@
+ from libsvn.core import *
+ import libsvn.core as _libsvncore
+ import atexit as _atexit
++import warnings
+
+ class SubversionException(Exception):
+ def __init__(self, message=None, apr_err=None, child=None,
+@@ -44,7 +45,9 @@
+ Exception.__init__(self, *args)
+
+ self.apr_err = apr_err
+- self.message = message
++ with warnings.catch_warnings():
++ warnings.simplefilter("ignore", DeprecationWarning)
++ self.message = message
+ self.child = child
+ self.file = file
+ self.line = line
diff --git a/staging/subversion/svn b/staging/subversion/svn
new file mode 100644
index 000000000..8988aaf63
--- /dev/null
+++ b/staging/subversion/svn
@@ -0,0 +1,11 @@
+service svn
+{
+ flags = REUSE
+ socket_type = stream
+ wait = no
+ user = root
+ server = /usr/bin/svnserve
+ server_args = -i
+ log_on_failure += USERID
+ disable = yes
+}
diff --git a/staging/subversion/svnmerge.py b/staging/subversion/svnmerge.py
new file mode 100644
index 000000000..d8931648f
--- /dev/null
+++ b/staging/subversion/svnmerge.py
@@ -0,0 +1,2370 @@
+#!/usr/bin/env python2
+# -*- coding: utf-8 -*-
+# Copyright (c) 2005, Giovanni Bajo
+# Copyright (c) 2004-2005, Awarix, Inc.
+# All rights reserved.
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
+#
+# Author: Archie Cobbs <archie at awarix dot com>
+# Rewritten in Python by: Giovanni Bajo <rasky at develer dot com>
+#
+# Acknowledgments:
+# John Belmonte <john at neggie dot net> - metadata and usability
+# improvements
+# Blair Zajac <blair at orcaware dot com> - random improvements
+# Raman Gupta <rocketraman at fastmail dot fm> - bidirectional and transitive
+# merging support
+# Dustin J. Mitchell <dustin at zmanda dot com> - support for multiple
+# location identifier formats
+#
+# $HeadURL$
+# $LastChangedDate$
+# $LastChangedBy$
+# $LastChangedRevision$
+#
+# Requisites:
+# svnmerge.py has been tested with all SVN major versions since 1.1 (both
+# client and server). It is unknown if it works with previous versions.
+#
+# Differences from svnmerge.sh:
+# - More portable: tested as working in FreeBSD and OS/2.
+# - Add double-verbose mode, which shows every svn command executed (-v -v).
+# - "svnmerge avail" now only shows commits in source, not also commits in
+# other parts of the repository.
+# - Add "svnmerge block" to flag some revisions as blocked, so that
+# they will not show up anymore in the available list. Added also
+# the complementary "svnmerge unblock".
+# - "svnmerge avail" has grown two new options:
+# -B to display a list of the blocked revisions
+# -A to display both the blocked and the available revisions.
+# - Improved generated commit message to make it machine parsable even when
+# merging commits which are themselves merges.
+# - Add --force option to skip working copy check
+# - Add --record-only option to "svnmerge merge" to avoid performing
+# an actual merge, yet record that a merge happened.
+# - Can use a variety of location-identifier formats
+#
+# TODO:
+# - Add "svnmerge avail -R": show logs in reverse order
+#
+# Information for Hackers:
+#
+# Identifiers for branches:
+# A branch is identified in three ways within this source:
+# - as a working copy (variable name usually includes 'dir')
+# - as a fully qualified URL
+# - as a path identifier (an opaque string indicating a particular path
+# in a particular repository; variable name includes 'pathid')
+# A "target" is generally user-specified, and may be a working copy or
+# a URL.
+
+import sys, os, getopt, re, types, tempfile, time, locale
+from bisect import bisect
+from xml.dom import pulldom
+
+NAME = "svnmerge"
+if not hasattr(sys, "version_info") or sys.version_info < (2, 0):
+ error("requires Python 2.0 or newer")
+
+# Set up the separator used to separate individual log messages from
+# each revision merged into the target location. Also, create a
+# regular expression that will find this same separator in already
+# committed log messages, so that the separator used for this run of
+# svnmerge.py will have one more LOG_SEPARATOR appended to the longest
+# separator found in all the commits.
+LOG_SEPARATOR = 8 * '.'
+LOG_SEPARATOR_RE = re.compile('^((%s)+)' % re.escape(LOG_SEPARATOR),
+ re.MULTILINE)
+
+# Each line of the embedded log messages will be prefixed by LOG_LINE_PREFIX.
+LOG_LINE_PREFIX = 2 * ' '
+
+# Set python to the default locale as per environment settings, same as svn
+# TODO we should really parse config and if log-encoding is specified, set
+# the locale to match that encoding
+locale.setlocale(locale.LC_ALL, '')
+
+# We want the svn output (such as svn info) to be non-localized
+# Using LC_MESSAGES should not affect localized output of svn log, for example
+if os.environ.has_key("LC_ALL"):
+ del os.environ["LC_ALL"]
+os.environ["LC_MESSAGES"] = "C"
+
+###############################################################################
+# Support for older Python versions
+###############################################################################
+
+# True/False constants are Python 2.2+
+try:
+ True, False
+except NameError:
+ True, False = 1, 0
+
+def lstrip(s, ch):
+ """Replacement for str.lstrip (support for arbitrary chars to strip was
+ added in Python 2.2.2)."""
+ i = 0
+ try:
+ while s[i] == ch:
+ i = i+1
+ return s[i:]
+ except IndexError:
+ return ""
+
+def rstrip(s, ch):
+ """Replacement for str.rstrip (support for arbitrary chars to strip was
+ added in Python 2.2.2)."""
+ try:
+ if s[-1] != ch:
+ return s
+ i = -2
+ while s[i] == ch:
+ i = i-1
+ return s[:i+1]
+ except IndexError:
+ return ""
+
+def strip(s, ch):
+ """Replacement for str.strip (support for arbitrary chars to strip was
+ added in Python 2.2.2)."""
+ return lstrip(rstrip(s, ch), ch)
+
+def rsplit(s, sep, maxsplits=0):
+ """Like str.rsplit, which is Python 2.4+ only."""
+ L = s.split(sep)
+ if not 0 < maxsplits <= len(L):
+ return L
+ return [sep.join(L[0:-maxsplits])] + L[-maxsplits:]
+
+###############################################################################
+
+def kwextract(s):
+ """Extract info from a svn keyword string."""
+ try:
+ return strip(s, "$").strip().split(": ")[1]
+ except IndexError:
+ return "<unknown>"
+
+__revision__ = kwextract('$Rev$')
+__date__ = kwextract('$Date$')
+
+# Additional options, not (yet?) mapped to command line flags
+default_opts = {
+ "svn": "svn",
+ "prop": NAME + "-integrated",
+ "block-prop": NAME + "-blocked",
+ "commit-verbose": True,
+ "verbose": 0,
+}
+logs = {}
+
+def console_width():
+ """Get the width of the console screen (if any)."""
+ try:
+ return int(os.environ["COLUMNS"])
+ except (KeyError, ValueError):
+ pass
+
+ try:
+ # Call the Windows API (requires ctypes library)
+ from ctypes import windll, create_string_buffer
+ h = windll.kernel32.GetStdHandle(-11)
+ csbi = create_string_buffer(22)
+ res = windll.kernel32.GetConsoleScreenBufferInfo(h, csbi)
+ if res:
+ import struct
+ (bufx, bufy,
+ curx, cury, wattr,
+ left, top, right, bottom,
+ maxx, maxy) = struct.unpack("hhhhHhhhhhh", csbi.raw)
+ return right - left + 1
+ except ImportError:
+ pass
+
+ # Parse the output of stty -a
+ if os.isatty(1):
+ out = os.popen("stty -a").read()
+ m = re.search(r"columns (\d+);", out)
+ if m:
+ return int(m.group(1))
+
+ # sensible default
+ return 80
+
+def error(s):
+ """Subroutine to output an error and bail."""
+ print >> sys.stderr, "%s: %s" % (NAME, s)
+ sys.exit(1)
+
+def report(s):
+ """Subroutine to output progress message, unless in quiet mode."""
+ if opts["verbose"]:
+ print "%s: %s" % (NAME, s)
+
+def prefix_lines(prefix, lines):
+ """Given a string representing one or more lines of text, insert the
+ specified prefix at the beginning of each line, and return the result.
+ The input must be terminated by a newline."""
+ assert lines[-1] == "\n"
+ return prefix + lines[:-1].replace("\n", "\n"+prefix) + "\n"
+
+def recode_stdout_to_file(s):
+ if locale.getdefaultlocale()[1] is None or not hasattr(sys.stdout, "encoding") \
+ or sys.stdout.encoding is None:
+ return s
+ u = s.decode(sys.stdout.encoding)
+ return u.encode(locale.getdefaultlocale()[1])
+
+class LaunchError(Exception):
+ """Signal a failure in execution of an external command. Parameters are the
+ exit code of the process, the original command line, and the output of the
+ command."""
+
+try:
+ """Launch a sub-process. Return its output (both stdout and stderr),
+ optionally split by lines (if split_lines is True). Raise a LaunchError
+ exception if the exit code of the process is non-zero (failure).
+
+ This function has two implementations, one based on subprocess (preferred),
+ and one based on popen (for compatibility).
+ """
+ import subprocess
+ import shlex
+
+ def launch(cmd, split_lines=True):
+ # Requiring python 2.4 or higher, on some platforms we get
+ # much faster performance from the subprocess module (where python
+ # doesn't try to close an exhorbitant number of file descriptors)
+ stdout = ""
+ stderr = ""
+ try:
+ if os.name == 'nt':
+ p = subprocess.Popen(cmd, stdout=subprocess.PIPE, \
+ close_fds=False, stderr=subprocess.PIPE)
+ else:
+ # Use shlex to break up the parameters intelligently,
+ # respecting quotes. shlex can't handle unicode.
+ args = shlex.split(cmd.encode('ascii'))
+ p = subprocess.Popen(args, stdout=subprocess.PIPE, \
+ close_fds=False, stderr=subprocess.PIPE)
+ stdoutAndErr = p.communicate()
+ stdout = stdoutAndErr[0]
+ stderr = stdoutAndErr[1]
+ except OSError, inst:
+ # Using 1 as failure code; should get actual number somehow? For
+ # examples see svnmerge_test.py's TestCase_launch.test_failure and
+ # TestCase_launch.test_failurecode.
+ raise LaunchError(1, cmd, stdout + " " + stderr + ": " + str(inst))
+
+ if p.returncode == 0:
+ if split_lines:
+ # Setting keepends=True for compatibility with previous logic
+ # (where file.readlines() preserves newlines)
+ return stdout.splitlines(True)
+ else:
+ return stdout
+ else:
+ raise LaunchError(p.returncode, cmd, stdout + stderr)
+except ImportError:
+ # support versions of python before 2.4 (slower on some systems)
+ def launch(cmd, split_lines=True):
+ if os.name not in ['nt', 'os2']:
+ import popen2
+ p = popen2.Popen4(cmd)
+ p.tochild.close()
+ if split_lines:
+ out = p.fromchild.readlines()
+ else:
+ out = p.fromchild.read()
+ ret = p.wait()
+ if ret == 0:
+ ret = None
+ else:
+ ret >>= 8
+ else:
+ i,k = os.popen4(cmd)
+ i.close()
+ if split_lines:
+ out = k.readlines()
+ else:
+ out = k.read()
+ ret = k.close()
+
+ if ret is None:
+ return out
+ raise LaunchError(ret, cmd, out)
+
+def launchsvn(s, show=False, pretend=False, **kwargs):
+ """Launch SVN and grab its output."""
+ username = password = configdir = ""
+ if opts.get("username", None):
+ username = "--username=" + opts["username"]
+ if opts.get("password", None):
+ password = "--password=" + opts["password"]
+ if opts.get("config-dir", None):
+ configdir = "--config-dir=" + opts["config-dir"]
+ cmd = ' '.join(filter(None, [opts["svn"], "--non-interactive",
+ username, password, configdir, s]))
+ if show or opts["verbose"] >= 2:
+ print cmd
+ if pretend:
+ return None
+ return launch(cmd, **kwargs)
+
+def svn_command(s):
+ """Do (or pretend to do) an SVN command."""
+ out = launchsvn(s, show=opts["show-changes"] or opts["dry-run"],
+ pretend=opts["dry-run"],
+ split_lines=False)
+ if not opts["dry-run"]:
+ print out
+
+def check_dir_clean(dir):
+ """Check the current status of dir for local mods."""
+ if opts["force"]:
+ report('skipping status check because of --force')
+ return
+ report('checking status of "%s"' % dir)
+
+ # Checking with -q does not show unversioned files or external
+ # directories. Though it displays a debug message for external
+ # directories, after a blank line. So, practically, the first line
+ # matters: if it's non-empty there is a modification.
+ out = launchsvn("status -q %s" % dir)
+ if out and out[0].strip():
+ error('"%s" has local modifications; it must be clean' % dir)
+
+class PathIdentifier:
+ """Abstraction for a path identifier, so that we can start talking
+ about it before we know the form that it takes in the properties (its
+ external_form). Objects are referenced in the class variable 'locobjs',
+ keyed by all known forms."""
+
+ # a map of UUID (or None) to repository root URL.
+ repo_hints = {}
+
+ # a map from any known string form to the corresponding PathIdentifier
+ locobjs = {}
+
+ def __init__(self, repo_relative_path, uuid=None, url=None, external_form=None):
+ self.repo_relative_path = repo_relative_path
+ self.uuid = uuid
+ self.url = url
+ self.external_form = external_form
+
+ def __repr__(self):
+ return "<PathIdentifier " + ', '.join('%s=%r' % i for i in self.__dict__.items()) + '>'
+
+ def __str__(self):
+ """Return a printable string representation"""
+ if self.external_form:
+ return self.external_form
+ if self.url:
+ return self.format('url')
+ if self.uuid:
+ return self.format('uuid')
+ return self.format('path')
+
+ def from_pathid(pathid_str):
+ """convert pathid_str to a PathIdentifier"""
+ if not PathIdentifier.locobjs.has_key(pathid_str):
+ if is_url(pathid_str):
+ # we can determine every form; PathIdentifier.hint knows how to do that
+ PathIdentifier.hint(pathid_str)
+ elif pathid_str[:7] == 'uuid://':
+ mo = re.match('uuid://([^/]*)(.*)', pathid_str)
+ if not mo:
+ error("Invalid path identifier '%s'" % pathid_str)
+ uuid, repo_relative_path = mo.groups()
+ pathid = PathIdentifier(repo_relative_path, uuid=uuid)
+ # we can cache this by uuid:// pathid and by repo-relative path
+ PathIdentifier.locobjs[pathid_str] = PathIdentifier.locobjs[repo_relative_path] = pathid
+ elif pathid_str and pathid_str[0] == '/':
+ # strip any trailing slashes
+ pathid_str = pathid_str.rstrip('/')
+ pathid = PathIdentifier(repo_relative_path=pathid_str)
+ # we can only cache this by repo-relative path
+ PathIdentifier.locobjs[pathid_str] = pathid
+ else:
+ error("Invalid path identifier '%s'" % pathid_str)
+ return PathIdentifier.locobjs[pathid_str]
+ from_pathid = staticmethod(from_pathid)
+
+ def from_target(target):
+ """Convert a target (either a working copy path or an URL) into a
+ path identifier."""
+ # prime the cache first if we don't know about this target yet
+ if not PathIdentifier.locobjs.has_key(target):
+ PathIdentifier.hint(target)
+
+ try:
+ return PathIdentifier.locobjs[target]
+ except KeyError:
+ error("Could not recognize path identifier '%s'" % target)
+ from_target = staticmethod(from_target)
+
+ def hint(target):
+ """Cache some information about target, as it may be referenced by
+ repo-relative path in subversion properties; the cache can help to
+ expand such a relative path to a full path identifier."""
+ if PathIdentifier.locobjs.has_key(target): return
+ if not is_url(target) and not is_wc(target): return
+
+ url = target_to_url(target)
+
+ root = get_repo_root(url)
+ assert root[-1] != "/"
+ assert url[:len(root)] == root, "url=%r, root=%r" % (url, root)
+ repo_relative_path = url[len(root):]
+
+ try:
+ uuid = get_svninfo(target)['Repository UUID']
+ uuid_pathid = 'uuid://%s%s' % (uuid, repo_relative_path)
+ except KeyError:
+ uuid = None
+ uuid_pathid = None
+
+ locobj = PathIdentifier.locobjs.get(url) or \
+ (uuid_pathid and PathIdentifier.locobjs.get(uuid_pathid))
+ if not locobj:
+ locobj = PathIdentifier(repo_relative_path, uuid=uuid, url=url)
+
+ PathIdentifier.repo_hints[uuid] = root # (uuid may be None)
+
+ PathIdentifier.locobjs[target] = locobj
+ PathIdentifier.locobjs[url] = locobj
+ if uuid_pathid:
+ PathIdentifier.locobjs[uuid_pathid] = locobj
+ if not PathIdentifier.locobjs.has_key(repo_relative_path):
+ PathIdentifier.locobjs[repo_relative_path] = locobj
+ hint = staticmethod(hint)
+
+ def format(self, fmt):
+ if fmt == 'path':
+ return self.repo_relative_path
+ elif fmt == 'uuid':
+ return "uuid://%s%s" % (self.uuid, self.repo_relative_path)
+ elif fmt == 'url':
+ return self.url
+ else:
+ error("Unkonwn path type '%s'" % fmt)
+
+ def match_substring(self, str):
+ """Test whether str is a substring of any representation of this
+ PathIdentifier."""
+ if self.repo_relative_path.find(str) >= 0:
+ return True
+
+ if self.uuid:
+ if ("uuid://%s%s" % (self.uuid, self.repo_relative_path)).find(str) >= 0:
+ return True
+
+ if self.url:
+ if (self.url + self.repo_relative_path).find(str) >= 0:
+ return True
+
+ return False
+
+ def get_url(self):
+ """Convert a pathid into a URL. If this is not possible, error out."""
+ if self.url:
+ return self.url
+ # if we have a uuid and happen to know the URL for it, use that
+ elif self.uuid and PathIdentifier.repo_hints.has_key(self.uuid):
+ self.url = PathIdentifier.repo_hints[self.uuid] + self.repo_relative_path
+ PathIdentifier.locobjs[self.url] = self
+ return self.url
+ # if we've only seen one rep, use that (a guess, but an educated one)
+ elif not self.uuid and len(PathIdentifier.repo_hints) == 1:
+ uuid, root = PathIdentifier.repo_hints.items()[0]
+ if uuid:
+ self.uuid = uuid
+ PathIdentifier.locobjs['uuid://%s%s' % (uuid, self.repo_relative_path)] = self
+ self.url = root + self.repo_relative_path
+ PathIdentifier.locobjs[self.url] = self
+ report("Guessing that '%s' refers to '%s'" % (self, self.url))
+ return self.url
+ else:
+ error("Cannot determine URL for '%s'; " % self +
+ "Explicit source argument (-S/--source) required.\n")
+
+class RevisionLog:
+ """
+ A log of the revisions which affected a given URL between two
+ revisions.
+ """
+
+ def __init__(self, url, begin, end, find_propchanges=False):
+ """
+ Create a new RevisionLog object, which stores, in self.revs, a list
+ of the revisions which affected the specified URL between begin and
+ end. If find_propchanges is True, self.propchange_revs will contain a
+ list of the revisions which changed properties directly on the
+ specified URL. URL must be the URL for a directory in the repository.
+ """
+ self.url = url
+
+ # Setup the log options (--quiet, so we don't show log messages)
+ log_opts = '--xml --quiet -r%s:%s "%s"' % (begin, end, url)
+ if find_propchanges:
+ # The --verbose flag lets us grab merge tracking information
+ # by looking at propchanges
+ log_opts = "--verbose " + log_opts
+
+ # Read the log to look for revision numbers and merge-tracking info
+ self.revs = []
+ self.propchange_revs = []
+ repos_pathid = PathIdentifier.from_target(url)
+ for chg in SvnLogParser(launchsvn("log %s" % log_opts,
+ split_lines=False)):
+ self.revs.append(chg.revision())
+ for p in chg.paths():
+ if p.action() == 'M' and p.pathid() == repos_pathid.repo_relative_path:
+ self.propchange_revs.append(chg.revision())
+
+ # Save the range of the log
+ self.begin = int(begin)
+ if end == "HEAD":
+ # If end is not provided, we do not know which is the latest
+ # revision in the repository. So we set 'end' to the latest
+ # known revision.
+ self.end = self.revs[-1]
+ else:
+ self.end = int(end)
+
+ self._merges = None
+ self._blocks = None
+
+ def merge_metadata(self):
+ """
+ Return a VersionedProperty object, with a cached view of the merge
+ metadata in the range of this log.
+ """
+
+ # Load merge metadata if necessary
+ if not self._merges:
+ self._merges = VersionedProperty(self.url, opts["prop"])
+ self._merges.load(self)
+
+ return self._merges
+
+ def block_metadata(self):
+ if not self._blocks:
+ self._blocks = VersionedProperty(self.url, opts["block-prop"])
+ self._blocks.load(self)
+
+ return self._blocks
+
+
+class VersionedProperty:
+ """
+ A read-only, cached view of a versioned property.
+
+ self.revs contains a list of the revisions in which the property changes.
+ self.values stores the new values at each corresponding revision. If the
+ value of the property is unknown, it is set to None.
+
+ Initially, we set self.revs to [0] and self.values to [None]. This
+ indicates that, as of revision zero, we know nothing about the value of
+ the property.
+
+ Later, if you run self.load(log), we cache the value of this property over
+ the entire range of the log by noting each revision in which the property
+ was changed. At the end of the range of the log, we invalidate our cache
+ by adding the value "None" to our cache for any revisions which fall out
+ of the range of our log.
+
+ Once self.revs and self.values are filled, we can find the value of the
+ property at any arbitrary revision using a binary search on self.revs.
+ Once we find the last revision during which the property was changed,
+ we can lookup the associated value in self.values. (If the associated
+ value is None, the associated value was not cached and we have to do
+ a full propget.)
+
+ An example: We know that the 'svnmerge' property was added in r10, and
+ changed in r21. We gathered log info up until r40.
+
+ revs = [0, 10, 21, 40]
+ values = [None, "val1", "val2", None]
+
+ What these values say:
+ - From r0 to r9, we know nothing about the property.
+ - In r10, the property was set to "val1". This property stayed the same
+ until r21, when it was changed to "val2".
+ - We don't know what happened after r40.
+ """
+
+ def __init__(self, url, name):
+ """View the history of a versioned property at URL with name"""
+ self.url = url
+ self.name = name
+
+ # We know nothing about the value of the property. Setup revs
+ # and values to indicate as such.
+ self.revs = [0]
+ self.values = [None]
+
+ # We don't have any revisions cached
+ self._initial_value = None
+ self._changed_revs = []
+ self._changed_values = []
+
+ def load(self, log):
+ """
+ Load the history of property changes from the specified
+ RevisionLog object.
+ """
+
+ # Get the property value before the range of the log
+ if log.begin > 1:
+ self.revs.append(log.begin-1)
+ try:
+ self._initial_value = self.raw_get(log.begin-1)
+ except LaunchError:
+ # The specified URL might not exist before the
+ # range of the log. If so, we can safely assume
+ # that the property was empty at that time.
+ self._initial_value = { }
+ self.values.append(self._initial_value)
+ else:
+ self._initial_value = { }
+ self.values[0] = self._initial_value
+
+ # Cache the property values in the log range
+ old_value = self._initial_value
+ for rev in log.propchange_revs:
+ new_value = self.raw_get(rev)
+ if new_value != old_value:
+ self._changed_revs.append(rev)
+ self._changed_values.append(new_value)
+ self.revs.append(rev)
+ self.values.append(new_value)
+ old_value = new_value
+
+ # Indicate that we know nothing about the value of the property
+ # after the range of the log.
+ if log.revs:
+ self.revs.append(log.end+1)
+ self.values.append(None)
+
+ def raw_get(self, rev=None):
+ """
+ Get the property at revision REV. If rev is not specified, get
+ the property at revision HEAD.
+ """
+ return get_revlist_prop(self.url, self.name, rev)
+
+ def get(self, rev=None):
+ """
+ Get the property at revision REV. If rev is not specified, get
+ the property at revision HEAD.
+ """
+
+ if rev is not None:
+
+ # Find the index using a binary search
+ i = bisect(self.revs, rev) - 1
+
+ # Return the value of the property, if it was cached
+ if self.values[i] is not None:
+ return self.values[i]
+
+ # Get the current value of the property
+ return self.raw_get(rev)
+
+ def changed_revs(self, key=None):
+ """
+ Get a list of the revisions in which the specified dictionary
+ key was changed in this property. If key is not specified,
+ return a list of revisions in which any key was changed.
+ """
+ if key is None:
+ return self._changed_revs
+ else:
+ changed_revs = []
+ old_val = self._initial_value
+ for rev, val in zip(self._changed_revs, self._changed_values):
+ if val.get(key) != old_val.get(key):
+ changed_revs.append(rev)
+ old_val = val
+ return changed_revs
+
+ def initialized_revs(self):
+ """
+ Get a list of the revisions in which keys were added or
+ removed in this property.
+ """
+ initialized_revs = []
+ old_len = len(self._initial_value)
+ for rev, val in zip(self._changed_revs, self._changed_values):
+ if len(val) != old_len:
+ initialized_revs.append(rev)
+ old_len = len(val)
+ return initialized_revs
+
+class RevisionSet:
+ """
+ A set of revisions, held in dictionary form for easy manipulation. If we
+ were to rewrite this script for Python 2.3+, we would subclass this from
+ set (or UserSet). As this class does not include branch
+ information, it's assumed that one instance will be used per
+ branch.
+ """
+ def __init__(self, parm):
+ """Constructs a RevisionSet from a string in property form, or from
+ a dictionary whose keys are the revisions. Raises ValueError if the
+ input string is invalid."""
+
+ self._revs = {}
+
+ revision_range_split_re = re.compile('[-:]')
+
+ if isinstance(parm, types.DictType):
+ self._revs = parm.copy()
+ elif isinstance(parm, types.ListType):
+ for R in parm:
+ self._revs[int(R)] = 1
+ else:
+ parm = parm.strip()
+ if parm:
+ for R in parm.split(","):
+ rev_or_revs = re.split(revision_range_split_re, R)
+ if len(rev_or_revs) == 1:
+ self._revs[int(rev_or_revs[0])] = 1
+ elif len(rev_or_revs) == 2:
+ for rev in range(int(rev_or_revs[0]),
+ int(rev_or_revs[1])+1):
+ self._revs[rev] = 1
+ else:
+ raise ValueError, 'Ill formatted revision range: ' + R
+
+ def sorted(self):
+ revnums = self._revs.keys()
+ revnums.sort()
+ return revnums
+
+ def normalized(self):
+ """Returns a normalized version of the revision set, which is an
+ ordered list of couples (start,end), with the minimum number of
+ intervals."""
+ revnums = self.sorted()
+ revnums.reverse()
+ ret = []
+ while revnums:
+ s = e = revnums.pop()
+ while revnums and revnums[-1] in (e, e+1):
+ e = revnums.pop()
+ ret.append((s, e))
+ return ret
+
+ def __str__(self):
+ """Convert the revision set to a string, using its normalized form."""
+ L = []
+ for s,e in self.normalized():
+ if s == e:
+ L.append(str(s))
+ else:
+ L.append(str(s) + "-" + str(e))
+ return ",".join(L)
+
+ def __contains__(self, rev):
+ return self._revs.has_key(rev)
+
+ def __sub__(self, rs):
+ """Compute subtraction as in sets."""
+ revs = {}
+ for r in self._revs.keys():
+ if r not in rs:
+ revs[r] = 1
+ return RevisionSet(revs)
+
+ def __and__(self, rs):
+ """Compute intersections as in sets."""
+ revs = {}
+ for r in self._revs.keys():
+ if r in rs:
+ revs[r] = 1
+ return RevisionSet(revs)
+
+ def __nonzero__(self):
+ return len(self._revs) != 0
+
+ def __len__(self):
+ """Return the number of revisions in the set."""
+ return len(self._revs)
+
+ def __iter__(self):
+ return iter(self.sorted())
+
+ def __or__(self, rs):
+ """Compute set union."""
+ revs = self._revs.copy()
+ revs.update(rs._revs)
+ return RevisionSet(revs)
+
+def merge_props_to_revision_set(merge_props, pathid):
+ """A converter which returns a RevisionSet instance containing the
+ revisions from PATH as known to BRANCH_PROPS. BRANCH_PROPS is a
+ dictionary of pathid -> revision set branch integration information
+ (as returned by get_merge_props())."""
+ if not merge_props.has_key(pathid):
+ error('no integration info available for path "%s"' % pathid)
+ return RevisionSet(merge_props[pathid])
+
+def dict_from_revlist_prop(propvalue):
+ """Given a property value as a string containing per-source revision
+ lists, return a dictionary whose key is a source path identifier
+ and whose value is the revisions for that source."""
+ prop = {}
+
+ # Multiple sources are separated by any whitespace.
+ for L in propvalue.split():
+ # We use rsplit to play safe and allow colons in pathids.
+ pathid_str, revs = rsplit(L.strip(), ":", 1)
+
+ pathid = PathIdentifier.from_pathid(pathid_str)
+
+ # cache the "external" form we saw
+ pathid.external_form = pathid_str
+
+ prop[pathid] = revs
+ return prop
+
+def get_revlist_prop(url_or_dir, propname, rev=None):
+ """Given a repository URL or working copy path and a property
+ name, extract the values of the property which store per-source
+ revision lists and return a dictionary whose key is a source path
+ identifier, and whose value is the revisions for that source."""
+
+ # Note that propget does not return an error if the property does
+ # not exist, it simply does not output anything. So we do not need
+ # to check for LaunchError here.
+ args = '--strict "%s" "%s"' % (propname, url_or_dir)
+ if rev:
+ args = '-r %s %s' % (rev, args)
+ out = launchsvn('propget %s' % args, split_lines=False)
+
+ return dict_from_revlist_prop(out)
+
+def get_merge_props(dir):
+ """Extract the merged revisions."""
+ return get_revlist_prop(dir, opts["prop"])
+
+def get_block_props(dir):
+ """Extract the blocked revisions."""
+ return get_revlist_prop(dir, opts["block-prop"])
+
+def get_blocked_revs(dir, source_pathid):
+ p = get_block_props(dir)
+ if p.has_key(source_pathid):
+ return RevisionSet(p[source_pathid])
+ return RevisionSet("")
+
+def format_merge_props(props, sep=" "):
+ """Formats the hash PROPS as a string suitable for use as a
+ Subversion property value."""
+ assert sep in ["\t", "\n", " "] # must be a whitespace
+ props = props.items()
+ props.sort()
+ L = []
+ for h, r in props:
+ L.append("%s:%s" % (h, r))
+ return sep.join(L)
+
+def _run_propset(dir, prop, value):
+ """Set the property 'prop' of directory 'dir' to value 'value'. We go
+ through a temporary file to not run into command line length limits."""
+ try:
+ fd, fname = tempfile.mkstemp()
+ f = os.fdopen(fd, "wb")
+ except AttributeError:
+ # Fallback for Python <= 2.3 which does not have mkstemp (mktemp
+ # suffers from race conditions. Not that we care...)
+ fname = tempfile.mktemp()
+ f = open(fname, "wb")
+
+ try:
+ f.write(value)
+ f.close()
+ report("property data written to temp file: %s" % value)
+ svn_command('propset "%s" -F "%s" "%s"' % (prop, fname, dir))
+ finally:
+ os.remove(fname)
+
+def set_props(dir, name, props):
+ props = format_merge_props(props)
+ if props:
+ _run_propset(dir, name, props)
+ else:
+ # Check if NAME exists on DIR before trying to delete it.
+ # As of 1.6 propdel no longer supports deleting a
+ # non-existent property.
+ out = launchsvn('propget "%s" "%s"' % (name, dir))
+ if out:
+ svn_command('propdel "%s" "%s"' % (name, dir))
+
+def set_merge_props(dir, props):
+ set_props(dir, opts["prop"], props)
+
+def set_block_props(dir, props):
+ set_props(dir, opts["block-prop"], props)
+
+def set_blocked_revs(dir, source_pathid, revs):
+ props = get_block_props(dir)
+ if revs:
+ props[source_pathid] = str(revs)
+ elif props.has_key(source_pathid):
+ del props[source_pathid]
+ set_block_props(dir, props)
+
+def is_url(url):
+ """Check if url looks like a valid url."""
+ return re.search(r"^[a-zA-Z][-+\.\w]*://[^\s]+$", url) is not None and url[:4] != 'uuid'
+
+def check_url(url):
+ """Similar to is_url, but actually invoke get_svninfo to find out"""
+ return get_svninfo(url) != {}
+
+def is_pathid(pathid):
+ return isinstance(pathid, PathIdentifier)
+
+def is_wc(dir):
+ """Check if a directory is a working copy."""
+ return os.path.isdir(os.path.join(dir, ".svn")) or \
+ os.path.isdir(os.path.join(dir, "_svn"))
+
+_cache_svninfo = {}
+def get_svninfo(target):
+ """Extract the subversion information for a target (through 'svn info').
+ This function uses an internal cache to let clients query information
+ many times."""
+ if _cache_svninfo.has_key(target):
+ return _cache_svninfo[target]
+ info = {}
+ for L in launchsvn('info "%s"' % target):
+ L = L.strip()
+ if not L:
+ continue
+ key, value = L.split(": ", 1)
+ info[key] = value.strip()
+ _cache_svninfo[target] = info
+ return info
+
+def target_to_url(target):
+ """Convert working copy path or repos URL to a repos URL."""
+ if is_wc(target):
+ info = get_svninfo(target)
+ return info["URL"]
+ return target
+
+_cache_reporoot = {}
+def get_repo_root(target):
+ """Compute the root repos URL given a working-copy path, or a URL."""
+ # Try using "svn info WCDIR". This works only on SVN clients >= 1.3
+ if not is_url(target):
+ try:
+ info = get_svninfo(target)
+ root = info["Repository Root"]
+ _cache_reporoot[root] = None
+ return root
+ except KeyError:
+ pass
+ url = target_to_url(target)
+ assert url[-1] != '/'
+ else:
+ url = target
+
+ # Go through the cache of the repository roots. This avoids extra
+ # server round-trips if we are asking the root of different URLs
+ # in the same repository (the cache in get_svninfo() cannot detect
+ # that of course and would issue a remote command).
+ assert is_url(url)
+ for r in _cache_reporoot:
+ if url.startswith(r):
+ return r
+
+ # Try using "svn info URL". This works only on SVN clients >= 1.2
+ try:
+ info = get_svninfo(url)
+ # info may be {}, in which case we'll see KeyError here
+ root = info["Repository Root"]
+ _cache_reporoot[root] = None
+ return root
+ except (KeyError, LaunchError):
+ pass
+
+ # Constrained to older svn clients, we are stuck with this ugly
+ # trial-and-error implementation. It could be made faster with a
+ # binary search.
+ while url:
+ temp = os.path.dirname(url)
+ try:
+ launchsvn('proplist "%s"' % temp)
+ except LaunchError:
+ _cache_reporoot[url] = None
+ return rstrip(url, "/")
+ url = temp
+
+ error("svn repos root of %s not found" % target)
+
+class SvnLogParser:
+ """
+ Parse the "svn log", going through the XML output and using pulldom (which
+ would even allow streaming the command output).
+ """
+ def __init__(self, xml):
+ self._events = pulldom.parseString(xml)
+ def __getitem__(self, idx):
+ for event, node in self._events:
+ if event == pulldom.START_ELEMENT and node.tagName == "logentry":
+ self._events.expandNode(node)
+ return self.SvnLogRevision(node)
+ raise IndexError, "Could not find 'logentry' tag in xml"
+
+ class SvnLogRevision:
+ def __init__(self, xmlnode):
+ self.n = xmlnode
+ def revision(self):
+ return int(self.n.getAttribute("revision"))
+ def author(self):
+ return self.n.getElementsByTagName("author")[0].firstChild.data
+ def paths(self):
+ return [self.SvnLogPath(n)
+ for n in self.n.getElementsByTagName("path")]
+
+ class SvnLogPath:
+ def __init__(self, xmlnode):
+ self.n = xmlnode
+ def action(self):
+ return self.n.getAttribute("action")
+ def pathid(self):
+ return self.n.firstChild.data
+ def copyfrom_rev(self):
+ try: return self.n.getAttribute("copyfrom-rev")
+ except KeyError: return None
+ def copyfrom_pathid(self):
+ try: return self.n.getAttribute("copyfrom-path")
+ except KeyError: return None
+
+def get_copyfrom(target):
+ """Get copyfrom info for a given target (it represents the
+ repository-relative path from where it was branched). NOTE:
+ repos root has no copyfrom info. In this case None is returned.
+
+ Returns the:
+ - source file or directory from which the copy was made
+ - revision from which that source was copied
+ - revision in which the copy was committed
+ """
+ repos_path = PathIdentifier.from_target(target).repo_relative_path
+ for chg in SvnLogParser(launchsvn('log -v --xml --stop-on-copy "%s"'
+ % target, split_lines=False)):
+ for p in chg.paths():
+ if p.action() == 'A' and p.pathid() == repos_path:
+ # These values will be None if the corresponding elements are
+ # not found in the log.
+ return p.copyfrom_pathid(), p.copyfrom_rev(), chg.revision()
+ return None,None,None
+
+def get_latest_rev(url):
+ """Get the latest revision of the repository of which URL is part."""
+ try:
+ info = get_svninfo(url)
+ if not info.has_key("Revision"):
+ error("Not a valid URL: %s" % url)
+ return info["Revision"]
+ except LaunchError:
+ # Alternative method for latest revision checking (for svn < 1.2)
+ report('checking latest revision of "%s"' % url)
+ L = launchsvn('proplist --revprop -r HEAD "%s"' % opts["source-url"])[0]
+ rev = re.search("revision (\d+)", L).group(1)
+ report('latest revision of "%s" is %s' % (url, rev))
+ return rev
+
+def get_created_rev(url):
+ """Lookup the revision at which the path identified by the
+ provided URL was first created."""
+ oldest_rev = -1
+ report('determining oldest revision for URL "%s"' % url)
+ ### TODO: Refactor this to use a modified RevisionLog class.
+ lines = None
+ cmd = "log -r1:HEAD --stop-on-copy -q " + url
+ try:
+ lines = launchsvn(cmd + " --limit=1")
+ except LaunchError:
+ # Assume that --limit isn't supported by the installed 'svn'.
+ lines = launchsvn(cmd)
+ if lines and len(lines) > 1:
+ i = lines[1].find(" ")
+ if i != -1:
+ oldest_rev = int(lines[1][1:i])
+ if oldest_rev == -1:
+ error('unable to determine oldest revision for URL "%s"' % url)
+ return oldest_rev
+
+def get_commit_log(url, revnum):
+ """Return the log message for a specific integer revision
+ number."""
+ out = launchsvn("log --incremental -r%d %s" % (revnum, url))
+ return recode_stdout_to_file("".join(out[1:]))
+
+def construct_merged_log_message(url, revnums):
+ """Return a commit log message containing all the commit messages
+ in the specified revisions at the given URL. The separator used
+ in this log message is determined by searching for the longest
+ svnmerge separator existing in the commit log messages and
+ extending it by one more separator. This results in a new commit
+ log message that is clearer in describing merges that contain
+ other merges. Trailing newlines are removed from the embedded
+ log messages."""
+ messages = ['']
+ longest_sep = ''
+ for r in revnums.sorted():
+ message = get_commit_log(url, r)
+ if message:
+ message = re.sub(r'(\r\n|\r|\n)', "\n", message)
+ message = rstrip(message, "\n") + "\n"
+ messages.append(prefix_lines(LOG_LINE_PREFIX, message))
+ for match in LOG_SEPARATOR_RE.findall(message):
+ sep = match[1]
+ if len(sep) > len(longest_sep):
+ longest_sep = sep
+
+ longest_sep += LOG_SEPARATOR + "\n"
+ messages.append('')
+ return longest_sep.join(messages)
+
+def get_default_source(branch_target, branch_props):
+ """Return the default source for branch_target (given its branch_props).
+ Error out if there is ambiguity."""
+ if not branch_props:
+ error("no integration info available")
+
+ props = branch_props.copy()
+ pathid = PathIdentifier.from_target(branch_target)
+
+ # To make bidirectional merges easier, find the target's
+ # repository local path so it can be removed from the list of
+ # possible integration sources.
+ if props.has_key(pathid):
+ del props[pathid]
+
+ if len(props) > 1:
+ err_msg = "multiple sources found. "
+ err_msg += "Explicit source argument (-S/--source) required.\n"
+ err_msg += "The merge sources available are:"
+ for prop in props:
+ err_msg += "\n " + str(prop)
+ error(err_msg)
+
+ return props.keys()[0]
+
+def should_find_reflected(branch_dir):
+ should_find_reflected = opts["bidirectional"]
+
+ # If the source has integration info for the target, set find_reflected
+ # even if --bidirectional wasn't specified
+ if not should_find_reflected:
+ source_props = get_merge_props(opts["source-url"])
+ should_find_reflected = source_props.has_key(PathIdentifier.from_target(branch_dir))
+
+ return should_find_reflected
+
+def analyze_revs(target_pathid, url, begin=1, end=None,
+ find_reflected=False):
+ """For the source of the merges in the source URL being merged into
+ target_pathid, analyze the revisions in the interval begin-end (which
+ defaults to 1-HEAD), to find out which revisions are changes in
+ the url, which are changes elsewhere (so-called 'phantom'
+ revisions), optionally which are reflected changes (to avoid
+ conflicts that can occur when doing bidirectional merging between
+ branches), and which revisions initialize merge tracking against other
+ branches. Return a tuple of four RevisionSet's:
+ (real_revs, phantom_revs, reflected_revs, initialized_revs).
+
+ NOTE: To maximize speed, if "end" is not provided, the function is
+ not able to find phantom revisions following the last real
+ revision in the URL.
+ """
+
+ begin = str(begin)
+ if end is None:
+ end = "HEAD"
+ else:
+ end = str(end)
+ if long(begin) > long(end):
+ return RevisionSet(""), RevisionSet(""), \
+ RevisionSet(""), RevisionSet("")
+
+ logs[url] = RevisionLog(url, begin, end, find_reflected)
+ revs = RevisionSet(logs[url].revs)
+
+ if end == "HEAD":
+ # If end is not provided, we do not know which is the latest revision
+ # in the repository. So return the phantom revision set only up to
+ # the latest known revision.
+ end = str(list(revs)[-1])
+
+ phantom_revs = RevisionSet("%s-%s" % (begin, end)) - revs
+
+ if find_reflected:
+ reflected_revs = logs[url].merge_metadata().changed_revs(target_pathid)
+ reflected_revs += logs[url].block_metadata().changed_revs(target_pathid)
+ else:
+ reflected_revs = []
+
+ initialized_revs = RevisionSet(logs[url].merge_metadata().initialized_revs())
+ reflected_revs = RevisionSet(reflected_revs)
+
+ return revs, phantom_revs, reflected_revs, initialized_revs
+
+def analyze_source_revs(branch_target, source_url, **kwargs):
+ """For the given branch and source, extract the real and phantom
+ source revisions."""
+ branch_url = target_to_url(branch_target)
+ branch_pathid = PathIdentifier.from_target(branch_target)
+
+ # Extract the latest repository revision from the URL of the branch
+ # directory (which is already cached at this point).
+ end_rev = get_latest_rev(source_url)
+
+ # Calculate the base of analysis. If there is a "1-XX" interval in the
+ # merged_revs, we do not need to check those.
+ base = 1
+ r = opts["merged-revs"].normalized()
+ if r and r[0][0] == 1:
+ base = r[0][1] + 1
+
+ # See if the user filtered the revision set. If so, we are not
+ # interested in something outside that range.
+ if opts["revision"]:
+ revs = RevisionSet(opts["revision"]).sorted()
+ if base < revs[0]:
+ base = revs[0]
+ if end_rev > revs[-1]:
+ end_rev = revs[-1]
+
+ return analyze_revs(branch_pathid, source_url, base, end_rev, **kwargs)
+
+def minimal_merge_intervals(revs, phantom_revs):
+ """Produce the smallest number of intervals suitable for merging. revs
+ is the RevisionSet which we want to merge, and phantom_revs are phantom
+ revisions which can be used to concatenate intervals, thus minimizing the
+ number of operations."""
+ revnums = revs.normalized()
+ ret = []
+
+ cur = revnums.pop()
+ while revnums:
+ next = revnums.pop()
+ assert next[1] < cur[0] # otherwise it is not ordered
+ assert cur[0] - next[1] > 1 # otherwise it is not normalized
+ for i in range(next[1]+1, cur[0]):
+ if i not in phantom_revs:
+ ret.append(cur)
+ cur = next
+ break
+ else:
+ cur = (next[0], cur[1])
+
+ ret.append(cur)
+ ret.reverse()
+ return ret
+
+def display_revisions(revs, display_style, revisions_msg, source_url):
+ """Show REVS as dictated by DISPLAY_STYLE, either numerically, in
+ log format, or as diffs. When displaying revisions numerically,
+ prefix output with REVISIONS_MSG when in verbose mode. Otherwise,
+ request logs or diffs using SOURCE_URL."""
+ if display_style == "revisions":
+ if revs:
+ report(revisions_msg)
+ print revs
+ elif display_style == "logs":
+ for start,end in revs.normalized():
+ svn_command('log --incremental -v -r %d:%d %s' % \
+ (start, end, source_url))
+ elif display_style in ("diffs", "summarize"):
+ if display_style == 'summarize':
+ summarize = '--summarize '
+ else:
+ summarize = ''
+
+ for start, end in revs.normalized():
+ print
+ if start == end:
+ print "%s: changes in revision %d follow" % (NAME, start)
+ else:
+ print "%s: changes in revisions %d-%d follow" % (NAME,
+ start, end)
+ print
+
+ # Note: the starting revision number to 'svn diff' is
+ # NOT inclusive so we have to subtract one from ${START}.
+ svn_command("diff -r %d:%d %s %s" % (start - 1, end, summarize,
+ source_url))
+ else:
+ assert False, "unhandled display style: %s" % display_style
+
+def action_init(target_dir, target_props):
+ """Initialize for merges."""
+ # Check that directory is ready for being modified
+ check_dir_clean(target_dir)
+
+ target_pathid = PathIdentifier.from_target(target_dir)
+ source_pathid = opts['source-pathid']
+ if source_pathid == target_pathid:
+ error("cannot init integration source path '%s'\nIts path identifier does not "
+ "differ from the path identifier of the current directory, '%s'."
+ % (source_pathid, target_pathid))
+
+ source_url = opts['source-url']
+
+ # If the user hasn't specified the revisions to use, see if the
+ # "source" is a copy from the current tree and if so, we can use
+ # the version data obtained from it.
+ revision_range = opts["revision"]
+ if not revision_range:
+ # If source was originally copied from target, and we are merging
+ # changes from source to target (the copy target is the merge source,
+ # and the copy source is the merge target), then we want to mark as
+ # integrated up to the rev in which the copy was committed which
+ # created the merge source:
+ cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(source_url)
+
+ cf_pathid = None
+ if cf_source:
+ cf_url = get_repo_root(source_url) + cf_source
+ if is_url(cf_url) and check_url(cf_url):
+ cf_pathid = PathIdentifier.from_target(cf_url)
+
+ if target_pathid == cf_pathid:
+ report('the source "%s" was copied from "%s" in rev %s and committed in rev %s' %
+ (source_url, target_dir, cf_rev, copy_committed_in_rev))
+ revision_range = "1-" + str(copy_committed_in_rev)
+
+ if not revision_range:
+ # If the reverse is true: copy source is the merge source, and
+ # the copy target is the merge target, then we want to mark as
+ # integrated up to the specific rev of the merge target from
+ # which the merge source was copied. (Longer discussion at:
+ # http://subversion.tigris.org/issues/show_bug.cgi?id=2810 )
+ cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(target_dir)
+
+ cf_pathid = None
+ if cf_source:
+ cf_url = get_repo_root(target_dir) + cf_source
+ if is_url(cf_url) and check_url(cf_url):
+ cf_pathid = PathIdentifier.from_target(cf_url)
+
+ source_pathid = PathIdentifier.from_target(source_url)
+ if source_pathid == cf_pathid:
+ report('the target "%s" was copied the source "%s" in rev %s and committed in rev %s' %
+ (target_dir, source_url, cf_rev, copy_committed_in_rev))
+ revision_range = "1-" + cf_rev
+
+ # When neither the merge source nor target is a copy of the other, and
+ # the user did not specify a revision range, then choose a default which is
+ # the current revision; saying, in effect, "everything has been merged, so
+ # mark as integrated up to the latest rev on source url).
+ if not revision_range:
+ revision_range = "1-" + get_latest_rev(source_url)
+
+ revs = RevisionSet(revision_range)
+
+ report('marking "%s" as already containing revisions "%s" of "%s"' %
+ (target_dir, revs, source_url))
+
+ revs = str(revs)
+ # If the local svnmerge-integrated property already has an entry
+ # for the source-pathid, simply error out.
+ if not opts["force"] and target_props.has_key(source_pathid):
+ error('Repository-relative path %s has already been initialized at %s\n'
+ 'Use --force to re-initialize' % (source_pathid, target_dir))
+ # set the pathid's external_form based on the user's options
+ source_pathid.external_form = source_pathid.format(opts['location-type'])
+
+ revs = str(revs)
+ target_props[source_pathid] = revs
+
+ # Set property
+ set_merge_props(target_dir, target_props)
+
+ # Write out commit message if desired
+ if opts["commit-file"]:
+ f = open(opts["commit-file"], "w")
+ print >>f, 'Initialized merge tracking via "%s" with revisions "%s" from ' \
+ % (NAME, revs)
+ print >>f, '%s' % source_url
+ f.close()
+ report('wrote commit message to "%s"' % opts["commit-file"])
+
+def action_avail(branch_dir, branch_props):
+ """Show commits available for merges."""
+ source_revs, phantom_revs, reflected_revs, initialized_revs = \
+ analyze_source_revs(branch_dir, opts["source-url"],
+ find_reflected=
+ should_find_reflected(branch_dir))
+ report('skipping phantom revisions: %s' % phantom_revs)
+ if reflected_revs:
+ report('skipping reflected revisions: %s' % reflected_revs)
+ report('skipping initialized revisions: %s' % initialized_revs)
+
+ blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"])
+ avail_revs = source_revs - opts["merged-revs"] - blocked_revs - \
+ reflected_revs - initialized_revs
+
+ # Compose the set of revisions to show
+ revs = RevisionSet("")
+ report_msg = "revisions available to be merged are:"
+ if "avail" in opts["avail-showwhat"]:
+ revs |= avail_revs
+ if "blocked" in opts["avail-showwhat"]:
+ revs |= blocked_revs
+ report_msg = "revisions blocked are:"
+
+ # Limit to revisions specified by -r (if any)
+ if opts["revision"]:
+ revs = revs & RevisionSet(opts["revision"])
+
+ display_revisions(revs, opts["avail-display"],
+ report_msg,
+ opts["source-url"])
+
+def action_integrated(branch_dir, branch_props):
+ """Show change sets already merged. This set of revisions is
+ calculated from taking svnmerge-integrated property from the
+ branch, and subtracting any revision older than the branch
+ creation revision."""
+ # Extract the integration info for the branch_dir
+ branch_props = get_merge_props(branch_dir)
+ revs = merge_props_to_revision_set(branch_props, opts["source-pathid"])
+
+ # Lookup the oldest revision on the branch path.
+ oldest_src_rev = get_created_rev(opts["source-url"])
+
+ # Subtract any revisions which pre-date the branch.
+ report("subtracting revisions which pre-date the source URL (%d)" %
+ oldest_src_rev)
+ revs = revs - RevisionSet(range(1, oldest_src_rev))
+
+ # Limit to revisions specified by -r (if any)
+ if opts["revision"]:
+ revs = revs & RevisionSet(opts["revision"])
+
+ display_revisions(revs, opts["integrated-display"],
+ "revisions already integrated are:", opts["source-url"])
+
+def action_merge(branch_dir, branch_props):
+ """Record merge meta data, and do the actual merge (if not
+ requested otherwise via --record-only)."""
+ # Check branch directory is ready for being modified
+ check_dir_clean(branch_dir)
+
+ source_revs, phantom_revs, reflected_revs, initialized_revs = \
+ analyze_source_revs(branch_dir, opts["source-url"],
+ find_reflected=
+ should_find_reflected(branch_dir))
+
+ if opts["revision"]:
+ revs = RevisionSet(opts["revision"])
+ else:
+ revs = source_revs
+
+ blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"])
+ merged_revs = opts["merged-revs"]
+
+ # Show what we're doing
+ if opts["verbose"]: # just to avoid useless calculations
+ if merged_revs & revs:
+ report('"%s" already contains revisions %s' % (branch_dir,
+ merged_revs & revs))
+ if phantom_revs:
+ report('memorizing phantom revision(s): %s' % phantom_revs)
+ if reflected_revs:
+ report('memorizing reflected revision(s): %s' % reflected_revs)
+ if blocked_revs & revs:
+ report('skipping blocked revisions(s): %s' % (blocked_revs & revs))
+ if initialized_revs:
+ report('skipping initialized revision(s): %s' % initialized_revs)
+
+ # Compute final merge set.
+ revs = revs - merged_revs - blocked_revs - reflected_revs - \
+ phantom_revs - initialized_revs
+ if not revs:
+ report('no revisions to merge, exiting')
+ return
+
+ # When manually marking revisions as merged, we only update the
+ # integration meta data, and don't perform an actual merge.
+ record_only = opts["record-only"]
+
+ if record_only:
+ report('recording merge of revision(s) %s from "%s"' %
+ (revs, opts["source-url"]))
+ else:
+ report('merging in revision(s) %s from "%s"' %
+ (revs, opts["source-url"]))
+
+ # Do the merge(s). Note: the starting revision number to 'svn merge'
+ # is NOT inclusive so we have to subtract one from start.
+ # We try to keep the number of merge operations as low as possible,
+ # because it is faster and reduces the number of conflicts.
+ old_block_props = get_block_props(branch_dir)
+ merge_metadata = logs[opts["source-url"]].merge_metadata()
+ block_metadata = logs[opts["source-url"]].block_metadata()
+ for start,end in minimal_merge_intervals(revs, phantom_revs):
+ if not record_only:
+ # Preset merge/blocked properties to the source value at
+ # the start rev to avoid spurious property conflicts
+ set_merge_props(branch_dir, merge_metadata.get(start - 1))
+ set_block_props(branch_dir, block_metadata.get(start - 1))
+ # Do the merge
+ svn_command("merge --force -r %d:%d %s %s" % \
+ (start - 1, end, opts["source-url"], branch_dir))
+ # TODO: to support graph merging, add logic to merge the property
+ # meta-data manually
+
+ # Update the set of merged revisions.
+ merged_revs = merged_revs | revs | reflected_revs | phantom_revs | initialized_revs
+ branch_props[opts["source-pathid"]] = str(merged_revs)
+ set_merge_props(branch_dir, branch_props)
+ # Reset the blocked revs
+ set_block_props(branch_dir, old_block_props)
+
+ # Write out commit message if desired
+ if opts["commit-file"]:
+ f = open(opts["commit-file"], "w")
+ if record_only:
+ print >>f, 'Recorded merge of revisions %s via %s from ' % \
+ (revs, NAME)
+ else:
+ print >>f, 'Merged revisions %s via %s from ' % \
+ (revs, NAME)
+ print >>f, '%s' % opts["source-url"]
+ if opts["commit-verbose"]:
+ print >>f
+ print >>f, construct_merged_log_message(opts["source-url"], revs),
+
+ f.close()
+ report('wrote commit message to "%s"' % opts["commit-file"])
+
+def action_block(branch_dir, branch_props):
+ """Block revisions."""
+ # Check branch directory is ready for being modified
+ check_dir_clean(branch_dir)
+
+ source_revs, phantom_revs, reflected_revs, initialized_revs = \
+ analyze_source_revs(branch_dir, opts["source-url"])
+ revs_to_block = source_revs - opts["merged-revs"]
+
+ # Limit to revisions specified by -r (if any)
+ if opts["revision"]:
+ revs_to_block = RevisionSet(opts["revision"]) & revs_to_block
+
+ if not revs_to_block:
+ error('no available revisions to block')
+
+ # Change blocked information
+ blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"])
+ blocked_revs = blocked_revs | revs_to_block
+ set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs)
+
+ # Write out commit message if desired
+ if opts["commit-file"]:
+ f = open(opts["commit-file"], "w")
+ print >>f, 'Blocked revisions %s via %s' % (revs_to_block, NAME)
+ if opts["commit-verbose"]:
+ print >>f
+ print >>f, construct_merged_log_message(opts["source-url"],
+ revs_to_block),
+
+ f.close()
+ report('wrote commit message to "%s"' % opts["commit-file"])
+
+def action_unblock(branch_dir, branch_props):
+ """Unblock revisions."""
+ # Check branch directory is ready for being modified
+ check_dir_clean(branch_dir)
+
+ blocked_revs = get_blocked_revs(branch_dir, opts["source-pathid"])
+ revs_to_unblock = blocked_revs
+
+ # Limit to revisions specified by -r (if any)
+ if opts["revision"]:
+ revs_to_unblock = revs_to_unblock & RevisionSet(opts["revision"])
+
+ if not revs_to_unblock:
+ error('no available revisions to unblock')
+
+ # Change blocked information
+ blocked_revs = blocked_revs - revs_to_unblock
+ set_blocked_revs(branch_dir, opts["source-pathid"], blocked_revs)
+
+ # Write out commit message if desired
+ if opts["commit-file"]:
+ f = open(opts["commit-file"], "w")
+ print >>f, 'Unblocked revisions %s via %s' % (revs_to_unblock, NAME)
+ if opts["commit-verbose"]:
+ print >>f
+ print >>f, construct_merged_log_message(opts["source-url"],
+ revs_to_unblock),
+ f.close()
+ report('wrote commit message to "%s"' % opts["commit-file"])
+
+def action_rollback(branch_dir, branch_props):
+ """Rollback previously integrated revisions."""
+
+ # Make sure the revision arguments are present
+ if not opts["revision"]:
+ error("The '-r' option is mandatory for rollback")
+
+ # Check branch directory is ready for being modified
+ check_dir_clean(branch_dir)
+
+ # Extract the integration info for the branch_dir
+ branch_props = get_merge_props(branch_dir)
+ # Get the list of all revisions already merged into this source-pathid.
+ merged_revs = merge_props_to_revision_set(branch_props,
+ opts["source-pathid"])
+
+ # At which revision was the src created?
+ oldest_src_rev = get_created_rev(opts["source-url"])
+ src_pre_exist_range = RevisionSet("1-%d" % oldest_src_rev)
+
+ # Limit to revisions specified by -r (if any)
+ revs = merged_revs & RevisionSet(opts["revision"])
+
+ # make sure there's some revision to rollback
+ if not revs:
+ report("Nothing to rollback in revision range r%s" % opts["revision"])
+ return
+
+ # If even one specified revision lies outside the lifetime of the
+ # merge source, error out.
+ if revs & src_pre_exist_range:
+ err_str = "Specified revision range falls out of the rollback range.\n"
+ err_str += "%s was created at r%d" % (opts["source-pathid"],
+ oldest_src_rev)
+ error(err_str)
+
+ record_only = opts["record-only"]
+
+ if record_only:
+ report('recording rollback of revision(s) %s from "%s"' %
+ (revs, opts["source-url"]))
+ else:
+ report('rollback of revision(s) %s from "%s"' %
+ (revs, opts["source-url"]))
+
+ # Do the reverse merge(s). Note: the starting revision number
+ # to 'svn merge' is NOT inclusive so we have to subtract one from start.
+ # We try to keep the number of merge operations as low as possible,
+ # because it is faster and reduces the number of conflicts.
+ rollback_intervals = minimal_merge_intervals(revs, [])
+ # rollback in the reverse order of merge
+ rollback_intervals.reverse()
+ for start, end in rollback_intervals:
+ if not record_only:
+ # Do the merge
+ svn_command("merge --force -r %d:%d %s %s" % \
+ (end, start - 1, opts["source-url"], branch_dir))
+
+ # Write out commit message if desired
+ # calculate the phantom revs first
+ if opts["commit-file"]:
+ f = open(opts["commit-file"], "w")
+ if record_only:
+ print >>f, 'Recorded rollback of revisions %s via %s from ' % \
+ (revs , NAME)
+ else:
+ print >>f, 'Rolled back revisions %s via %s from ' % \
+ (revs , NAME)
+ print >>f, '%s' % opts["source-url"]
+
+ f.close()
+ report('wrote commit message to "%s"' % opts["commit-file"])
+
+ # Update the set of merged revisions.
+ merged_revs = merged_revs - revs
+ branch_props[opts["source-pathid"]] = str(merged_revs)
+ set_merge_props(branch_dir, branch_props)
+
+def action_uninit(branch_dir, branch_props):
+ """Uninit SOURCE URL."""
+ # Check branch directory is ready for being modified
+ check_dir_clean(branch_dir)
+
+ # If the source-pathid does not have an entry in the svnmerge-integrated
+ # property, simply error out.
+ if not branch_props.has_key(opts["source-pathid"]):
+ error('Repository-relative path "%s" does not contain merge '
+ 'tracking information for "%s"' \
+ % (opts["source-pathid"], branch_dir))
+
+ del branch_props[opts["source-pathid"]]
+
+ # Set merge property with the selected source deleted
+ set_merge_props(branch_dir, branch_props)
+
+ # Set blocked revisions for the selected source to None
+ set_blocked_revs(branch_dir, opts["source-pathid"], None)
+
+ # Write out commit message if desired
+ if opts["commit-file"]:
+ f = open(opts["commit-file"], "w")
+ print >>f, 'Removed merge tracking for "%s" for ' % NAME
+ print >>f, '%s' % opts["source-url"]
+ f.close()
+ report('wrote commit message to "%s"' % opts["commit-file"])
+
+###############################################################################
+# Command line parsing -- options and commands management
+###############################################################################
+
+class OptBase:
+ def __init__(self, *args, **kwargs):
+ self.help = kwargs["help"]
+ del kwargs["help"]
+ self.lflags = []
+ self.sflags = []
+ for a in args:
+ if a.startswith("--"): self.lflags.append(a)
+ elif a.startswith("-"): self.sflags.append(a)
+ else:
+ raise TypeError, "invalid flag name: %s" % a
+ if kwargs.has_key("dest"):
+ self.dest = kwargs["dest"]
+ del kwargs["dest"]
+ else:
+ if not self.lflags:
+ raise TypeError, "cannot deduce dest name without long options"
+ self.dest = self.lflags[0][2:]
+ if kwargs:
+ raise TypeError, "invalid keyword arguments: %r" % kwargs.keys()
+ def repr_flags(self):
+ f = self.sflags + self.lflags
+ r = f[0]
+ for fl in f[1:]:
+ r += " [%s]" % fl
+ return r
+
+class Option(OptBase):
+ def __init__(self, *args, **kwargs):
+ self.default = kwargs.setdefault("default", 0)
+ del kwargs["default"]
+ self.value = kwargs.setdefault("value", None)
+ del kwargs["value"]
+ OptBase.__init__(self, *args, **kwargs)
+ def apply(self, state, value):
+ assert value == ""
+ if self.value is not None:
+ state[self.dest] = self.value
+ else:
+ state[self.dest] += 1
+
+class OptionArg(OptBase):
+ def __init__(self, *args, **kwargs):
+ self.default = kwargs["default"]
+ del kwargs["default"]
+ self.metavar = kwargs.setdefault("metavar", None)
+ del kwargs["metavar"]
+ OptBase.__init__(self, *args, **kwargs)
+
+ if self.metavar is None:
+ if self.dest is not None:
+ self.metavar = self.dest.upper()
+ else:
+ self.metavar = "arg"
+ if self.default:
+ self.help += " (default: %s)" % self.default
+ def apply(self, state, value):
+ assert value is not None
+ state[self.dest] = value
+ def repr_flags(self):
+ r = OptBase.repr_flags(self)
+ return r + " " + self.metavar
+
+class CommandOpts:
+ class Cmd:
+ def __init__(self, *args):
+ self.name, self.func, self.usage, self.help, self.opts = args
+ def short_help(self):
+ return self.help.split(".")[0]
+ def __str__(self):
+ return self.name
+ def __call__(self, *args, **kwargs):
+ return self.func(*args, **kwargs)
+
+ def __init__(self, global_opts, common_opts, command_table, version=None):
+ self.progname = NAME
+ self.version = version.replace("%prog", self.progname)
+ self.cwidth = console_width() - 2
+ self.ctable = command_table.copy()
+ self.gopts = global_opts[:]
+ self.copts = common_opts[:]
+ self._add_builtins()
+ for k in self.ctable.keys():
+ cmd = self.Cmd(k, *self.ctable[k])
+ opts = []
+ for o in cmd.opts:
+ if isinstance(o, types.StringType) or \
+ isinstance(o, types.UnicodeType):
+ o = self._find_common(o)
+ opts.append(o)
+ cmd.opts = opts
+ self.ctable[k] = cmd
+
+ def _add_builtins(self):
+ self.gopts.append(
+ Option("-h", "--help", help="show help for this command and exit"))
+ if self.version is not None:
+ self.gopts.append(
+ Option("-V", "--version", help="show version info and exit"))
+ self.ctable["help"] = (self._cmd_help,
+ "help [COMMAND]",
+ "Display help for a specific command. If COMMAND is omitted, "
+ "display brief command description.",
+ [])
+
+ def _cmd_help(self, cmd=None, *args):
+ if args:
+ self.error("wrong number of arguments", "help")
+ if cmd is not None:
+ cmd = self._command(cmd)
+ self.print_command_help(cmd)
+ else:
+ self.print_command_list()
+
+ def _paragraph(self, text, width=78):
+ chunks = re.split("\s+", text.strip())
+ chunks.reverse()
+ lines = []
+ while chunks:
+ L = chunks.pop()
+ while chunks and len(L) + len(chunks[-1]) + 1 <= width:
+ L += " " + chunks.pop()
+ lines.append(L)
+ return lines
+
+ def _paragraphs(self, text, *args, **kwargs):
+ pars = text.split("\n\n")
+ lines = self._paragraph(pars[0], *args, **kwargs)
+ for p in pars[1:]:
+ lines.append("")
+ lines.extend(self._paragraph(p, *args, **kwargs))
+ return lines
+
+ def _print_wrapped(self, text, indent=0):
+ text = self._paragraphs(text, self.cwidth - indent)
+ print text.pop(0)
+ for t in text:
+ print " " * indent + t
+
+ def _find_common(self, fl):
+ for o in self.copts:
+ if fl in o.lflags+o.sflags:
+ return o
+ assert False, fl
+
+ def _compute_flags(self, opts, check_conflicts=True):
+ back = {}
+ sfl = ""
+ lfl = []
+ for o in opts:
+ sapp = lapp = ""
+ if isinstance(o, OptionArg):
+ sapp, lapp = ":", "="
+ for s in o.sflags:
+ if check_conflicts and back.has_key(s):
+ raise RuntimeError, "option conflict: %s" % s
+ back[s] = o
+ sfl += s[1:] + sapp
+ for l in o.lflags:
+ if check_conflicts and back.has_key(l):
+ raise RuntimeError, "option conflict: %s" % l
+ back[l] = o
+ lfl.append(l[2:] + lapp)
+ return sfl, lfl, back
+
+ def _extract_command(self, args):
+ """
+ Try to extract the command name from the argument list. This is
+ non-trivial because we want to allow command-specific options even
+ before the command itself.
+ """
+ opts = self.gopts[:]
+ for cmd in self.ctable.values():
+ opts.extend(cmd.opts)
+ sfl, lfl, _ = self._compute_flags(opts, check_conflicts=False)
+
+ lopts,largs = getopt.getopt(args, sfl, lfl)
+ if not largs:
+ return None
+ return self._command(largs[0])
+
+ def _fancy_getopt(self, args, opts, state=None):
+ if state is None:
+ state= {}
+ for o in opts:
+ if not state.has_key(o.dest):
+ state[o.dest] = o.default
+
+ sfl, lfl, back = self._compute_flags(opts)
+ try:
+ lopts,args = getopt.gnu_getopt(args, sfl, lfl)
+ except AttributeError:
+ # Before Python 2.3, there was no gnu_getopt support.
+ # So we can't parse intermixed positional arguments
+ # and options.
+ lopts,args = getopt.getopt(args, sfl, lfl)
+
+ for o,v in lopts:
+ back[o].apply(state, v)
+ return state, args
+
+ def _command(self, cmd):
+ if not self.ctable.has_key(cmd):
+ self.error("unknown command: '%s'" % cmd)
+ return self.ctable[cmd]
+
+ def parse(self, args):
+ if not args:
+ self.print_small_help()
+ sys.exit(0)
+
+ cmd = None
+ try:
+ cmd = self._extract_command(args)
+ opts = self.gopts[:]
+ if cmd:
+ opts.extend(cmd.opts)
+ args.remove(cmd.name)
+ state, args = self._fancy_getopt(args, opts)
+ except getopt.GetoptError, e:
+ self.error(e, cmd)
+
+ # Handle builtins
+ if self.version is not None and state["version"]:
+ self.print_version()
+ sys.exit(0)
+ if state["help"]: # special case for --help
+ if cmd:
+ self.print_command_help(cmd)
+ sys.exit(0)
+ cmd = self.ctable["help"]
+ else:
+ if cmd is None:
+ self.error("command argument required")
+ if str(cmd) == "help":
+ cmd(*args)
+ sys.exit(0)
+ return cmd, args, state
+
+ def error(self, s, cmd=None):
+ print >>sys.stderr, "%s: %s" % (self.progname, s)
+ if cmd is not None:
+ self.print_command_help(cmd)
+ else:
+ self.print_small_help()
+ sys.exit(1)
+ def print_small_help(self):
+ print "Type '%s help' for usage" % self.progname
+ def print_usage_line(self):
+ print "usage: %s <subcommand> [options...] [args...]\n" % self.progname
+ def print_command_list(self):
+ print "Available commands (use '%s help COMMAND' for more details):\n" \
+ % self.progname
+ cmds = self.ctable.keys()
+ cmds.sort()
+ indent = max(map(len, cmds))
+ for c in cmds:
+ h = self.ctable[c].short_help()
+ print " %-*s " % (indent, c),
+ self._print_wrapped(h, indent+6)
+ def print_command_help(self, cmd):
+ cmd = self.ctable[str(cmd)]
+ print 'usage: %s %s\n' % (self.progname, cmd.usage)
+ self._print_wrapped(cmd.help)
+ def print_opts(opts, self=self):
+ if not opts: return
+ flags = [o.repr_flags() for o in opts]
+ indent = max(map(len, flags))
+ for f,o in zip(flags, opts):
+ print " %-*s :" % (indent, f),
+ self._print_wrapped(o.help, indent+5)
+ print '\nCommand options:'
+ print_opts(cmd.opts)
+ print '\nGlobal options:'
+ print_opts(self.gopts)
+
+ def print_version(self):
+ print self.version
+
+###############################################################################
+# Options and Commands description
+###############################################################################
+
+global_opts = [
+ Option("-F", "--force",
+ help="force operation even if the working copy is not clean, or "
+ "there are pending updates"),
+ Option("-n", "--dry-run",
+ help="don't actually change anything, just pretend; "
+ "implies --show-changes"),
+ Option("-s", "--show-changes",
+ help="show subversion commands that make changes"),
+ Option("-v", "--verbose",
+ help="verbose mode: output more information about progress"),
+ OptionArg("-u", "--username",
+ default=None,
+ help="invoke subversion commands with the supplied username"),
+ OptionArg("-p", "--password",
+ default=None,
+ help="invoke subversion commands with the supplied password"),
+ OptionArg("-c", "--config-dir", metavar="DIR",
+ default=None,
+ help="cause subversion commands to consult runtime config directory DIR"),
+]
+
+common_opts = [
+ Option("-b", "--bidirectional",
+ value=True,
+ default=False,
+ help="remove reflected and initialized revisions from merge candidates. "
+ "Not required but may be specified to speed things up slightly"),
+ OptionArg("-f", "--commit-file", metavar="FILE",
+ default="svnmerge-commit-message.txt",
+ help="set the name of the file where the suggested log message "
+ "is written to"),
+ Option("-M", "--record-only",
+ value=True,
+ default=False,
+ help="do not perform an actual merge of the changes, yet record "
+ "that a merge happened"),
+ OptionArg("-r", "--revision",
+ metavar="REVLIST",
+ default="",
+ help="specify a revision list, consisting of revision numbers "
+ 'and ranges separated by commas, e.g., "534,537-539,540"'),
+ OptionArg("-S", "--source", "--head",
+ default=None,
+ help="specify a merge source for this branch. It can be either "
+ "a working directory path, a full URL, or an unambiguous "
+ "substring of one of the locations for which merge tracking was "
+ "already initialized. Needed only to disambiguate in case of "
+ "multiple merge sources"),
+]
+
+command_table = {
+ "init": (action_init,
+ "init [OPTION...] [SOURCE]",
+ """Initialize merge tracking from SOURCE on the current working
+ directory.
+
+ If SOURCE is specified, all the revisions in SOURCE are marked as already
+ merged; if this is not correct, you can use --revision to specify the
+ exact list of already-merged revisions.
+
+ If SOURCE is omitted, then it is computed from the "svn cp" history of the
+ current working directory (searching back for the branch point); in this
+ case, %s assumes that no revision has been integrated yet since
+ the branch point (unless you teach it with --revision).""" % NAME,
+ [
+ "-f", "-r", # import common opts
+ OptionArg("-L", "--location-type",
+ dest="location-type",
+ default="path",
+ help="Use this type of location identifier in the new " +
+ "Subversion properties; 'uuid', 'url', or 'path' " +
+ "(default)"),
+ ]),
+
+ "avail": (action_avail,
+ "avail [OPTION...] [PATH]",
+ """Show unmerged revisions available for PATH as a revision list.
+ If --revision is given, the revisions shown will be limited to those
+ also specified in the option.
+
+ When svnmerge is used to bidirectionally merge changes between a
+ branch and its source, it is necessary to not merge the same changes
+ forth and back: e.g., if you committed a merge of a certain
+ revision of the branch into the source, you do not want that commit
+ to appear as available to merged into the branch (as the code
+ originated in the branch itself!). svnmerge will automatically
+ exclude these so-called "reflected" revisions.""",
+ [
+ Option("-A", "--all",
+ dest="avail-showwhat",
+ value=["blocked", "avail"],
+ default=["avail"],
+ help="show both available and blocked revisions (aka ignore "
+ "blocked revisions)"),
+ "-b",
+ Option("-B", "--blocked",
+ dest="avail-showwhat",
+ value=["blocked"],
+ help="show the blocked revision list (see '%s block')" % NAME),
+ Option("-d", "--diff",
+ dest="avail-display",
+ value="diffs",
+ default="revisions",
+ help="show corresponding diff instead of revision list"),
+ Option("--summarize",
+ dest="avail-display",
+ value="summarize",
+ help="show summarized diff instead of revision list"),
+ Option("-l", "--log",
+ dest="avail-display",
+ value="logs",
+ help="show corresponding log history instead of revision list"),
+ "-r",
+ "-S",
+ ]),
+
+ "integrated": (action_integrated,
+ "integrated [OPTION...] [PATH]",
+ """Show merged revisions available for PATH as a revision list.
+ If --revision is given, the revisions shown will be limited to
+ those also specified in the option.""",
+ [
+ Option("-d", "--diff",
+ dest="integrated-display",
+ value="diffs",
+ default="revisions",
+ help="show corresponding diff instead of revision list"),
+ Option("-l", "--log",
+ dest="integrated-display",
+ value="logs",
+ help="show corresponding log history instead of revision list"),
+ "-r",
+ "-S",
+ ]),
+
+ "rollback": (action_rollback,
+ "rollback [OPTION...] [PATH]",
+ """Rollback previously merged in revisions from PATH. The
+ --revision option is mandatory, and specifies which revisions
+ will be rolled back. Only the previously integrated merges
+ will be rolled back.
+
+ When manually rolling back changes, --record-only can be used to
+ instruct %s that a manual rollback of a certain revision
+ already happened, so that it can record it and offer that
+ revision for merge henceforth.""" % (NAME),
+ [
+ "-f", "-r", "-S", "-M", # import common opts
+ ]),
+
+ "merge": (action_merge,
+ "merge [OPTION...] [PATH]",
+ """Merge in revisions into PATH from its source. If --revision is omitted,
+ all the available revisions will be merged. In any case, already merged-in
+ revisions will NOT be merged again.
+
+ When svnmerge is used to bidirectionally merge changes between a
+ branch and its source, it is necessary to not merge the same changes
+ forth and back: e.g., if you committed a merge of a certain
+ revision of the branch into the source, you do not want that commit
+ to appear as available to merged into the branch (as the code
+ originated in the branch itself!). svnmerge will automatically
+ exclude these so-called "reflected" revisions.
+
+ When manually merging changes across branches, --record-only can
+ be used to instruct %s that a manual merge of a certain revision
+ already happened, so that it can record it and not offer that
+ revision for merge anymore. Conversely, when there are revisions
+ which should not be merged, use '%s block'.""" % (NAME, NAME),
+ [
+ "-b", "-f", "-r", "-S", "-M", # import common opts
+ ]),
+
+ "block": (action_block,
+ "block [OPTION...] [PATH]",
+ """Block revisions within PATH so that they disappear from the available
+ list. This is useful to hide revisions which will not be integrated.
+ If --revision is omitted, it defaults to all the available revisions.
+
+ Do not use this option to hide revisions that were manually merged
+ into the branch. Instead, use '%s merge --record-only', which
+ records that a merge happened (as opposed to a merge which should
+ not happen).""" % NAME,
+ [
+ "-f", "-r", "-S", # import common opts
+ ]),
+
+ "unblock": (action_unblock,
+ "unblock [OPTION...] [PATH]",
+ """Revert the effect of '%s block'. If --revision is omitted, all the
+ blocked revisions are unblocked""" % NAME,
+ [
+ "-f", "-r", "-S", # import common opts
+ ]),
+
+ "uninit": (action_uninit,
+ "uninit [OPTION...] [PATH]",
+ """Remove merge tracking information from PATH. It cleans any kind of merge
+ tracking information (including the list of blocked revisions). If there
+ are multiple sources, use --source to indicate which source you want to
+ forget about.""",
+ [
+ "-f", "-S", # import common opts
+ ]),
+}
+
+
+def main(args):
+ global opts
+
+ # Initialize default options
+ opts = default_opts.copy()
+ logs.clear()
+
+ optsparser = CommandOpts(global_opts, common_opts, command_table,
+ version="%%prog r%s\n modified: %s\n\n"
+ "Copyright (C) 2004,2005 Awarix Inc.\n"
+ "Copyright (C) 2005, Giovanni Bajo"
+ % (__revision__, __date__))
+
+ cmd, args, state = optsparser.parse(args)
+ opts.update(state)
+
+ source = opts.get("source", None)
+ branch_dir = "."
+
+ if str(cmd) == "init":
+ if len(args) == 1:
+ source = args[0]
+ elif len(args) > 1:
+ optsparser.error("wrong number of parameters", cmd)
+ elif str(cmd) in command_table.keys():
+ if len(args) == 1:
+ branch_dir = args[0]
+ elif len(args) > 1:
+ optsparser.error("wrong number of parameters", cmd)
+ else:
+ assert False, "command not handled: %s" % cmd
+
+ # Validate branch_dir
+ if not is_wc(branch_dir):
+ if str(cmd) == "avail":
+ info = None
+ # it should be noted here that svn info does not error exit
+ # if an invalid target is specified to it (as is
+ # intuitive). so the try, except code is not absolutely
+ # necessary. but, I retain it to indicate the intuitive
+ # handling.
+ try:
+ info = get_svninfo(branch_dir)
+ except LaunchError:
+ pass
+ # test that we definitely targeted a subversion directory,
+ # mirroring the purpose of the earlier is_wc() call
+ if info is None or not info.has_key("Node Kind") or info["Node Kind"] != "directory":
+ error('"%s" is neither a valid URL, nor a working directory' % branch_dir)
+ else:
+ error('"%s" is not a subversion working directory' % branch_dir)
+
+ # give out some hints as to potential pathids
+ PathIdentifier.hint(branch_dir)
+ if source: PathIdentifier.hint(source)
+
+ # Extract the integration info for the branch_dir
+ branch_props = get_merge_props(branch_dir)
+
+ # Calculate source_url and source_path
+ report("calculate source path for the branch")
+ if not source:
+ if str(cmd) == "init":
+ cf_source, cf_rev, copy_committed_in_rev = get_copyfrom(branch_dir)
+ if not cf_source:
+ error('no copyfrom info available. '
+ 'Explicit source argument (-S/--source) required.')
+ opts["source-url"] = get_repo_root(branch_dir) + cf_source
+ opts["source-pathid"] = PathIdentifier.from_target(opts["source-url"])
+
+ if not opts["revision"]:
+ opts["revision"] = "1-" + cf_rev
+ else:
+ opts["source-pathid"] = get_default_source(branch_dir, branch_props)
+ opts["source-url"] = opts["source-pathid"].get_url()
+
+ assert is_pathid(opts["source-pathid"])
+ assert is_url(opts["source-url"])
+ else:
+ # The source was given as a command line argument and is stored in
+ # SOURCE. Ensure that the specified source does not end in a /,
+ # otherwise it's easy to have the same source path listed more
+ # than once in the integrated version properties, with and without
+ # trailing /'s.
+ source = rstrip(source, "/")
+ if not is_wc(source) and not is_url(source):
+ # Check if it is a substring of a pathid recorded
+ # within the branch properties.
+ found = []
+ for pathid in branch_props.keys():
+ if pathid.match_substring(source):
+ found.append(pathid)
+ if len(found) == 1:
+ # (assumes pathid is a repository-relative-path)
+ source_pathid = found[0]
+ source = source_pathid.get_url()
+ else:
+ error('"%s" is neither a valid URL, nor an unambiguous '
+ 'substring of a repository path, nor a working directory'
+ % source)
+ else:
+ source_pathid = PathIdentifier.from_target(source)
+
+ source_pathid = PathIdentifier.from_target(source)
+ if str(cmd) == "init" and \
+ source_pathid == PathIdentifier.from_target("."):
+ error("cannot init integration source path '%s'\n"
+ "Its repository-relative path must differ from the "
+ "repository-relative path of the current directory."
+ % source_pathid)
+ opts["source-pathid"] = source_pathid
+ opts["source-url"] = target_to_url(source)
+
+ # Sanity check source_url
+ assert is_url(opts["source-url"])
+ # SVN does not support non-normalized URL (and we should not
+ # have created them)
+ assert opts["source-url"].find("/..") < 0
+
+ report('source is "%s"' % opts["source-url"])
+
+ # Get previously merged revisions (except when command is init)
+ if str(cmd) != "init":
+ opts["merged-revs"] = merge_props_to_revision_set(branch_props,
+ opts["source-pathid"])
+
+ # Perform the action
+ cmd(branch_dir, branch_props)
+
+
+if __name__ == "__main__":
+ try:
+ main(sys.argv[1:])
+ except LaunchError, (ret, cmd, out):
+ err_msg = "command execution failed (exit code: %d)\n" % ret
+ err_msg += cmd + "\n"
+ err_msg += "".join(out)
+ error(err_msg)
+ except KeyboardInterrupt:
+ # Avoid traceback on CTRL+C
+ print "aborted by user"
+ sys.exit(1)
diff --git a/staging/subversion/svnserve b/staging/subversion/svnserve
new file mode 100755
index 000000000..670fee742
--- /dev/null
+++ b/staging/subversion/svnserve
@@ -0,0 +1,42 @@
+#!/bin/bash
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+. /etc/conf.d/svnserve
+
+PID=`pidof -o %PPID /usr/bin/svnserve`
+case "$1" in
+ start)
+ stat_busy "Starting svnserve"
+ if [ -z "$PID" ]; then
+ if [ -n "$SVNSERVE_USER" ]; then
+ su -s '/bin/sh' $SVNSERVE_USER -c "/usr/bin/svnserve -d $SVNSERVE_ARGS" &
+ else
+ /usr/bin/svnserve -d $SVNSERVE_ARGS &
+ fi
+ fi
+ if [ ! -z "$PID" -o $? -gt 0 ]; then
+ stat_fail
+ else
+ add_daemon svnserve
+ stat_done
+ fi
+ ;;
+ stop)
+ stat_busy "Stopping svnserve"
+ [ ! -z "$PID" ] && kill $PID &> /dev/null
+ if [ $? -gt 0 ]; then
+ stat_fail
+ else
+ rm_daemon svnserve
+ stat_done
+ fi
+ ;;
+ restart)
+ $0 stop
+ sleep 1
+ $0 start
+ ;;
+ *)
+ echo "usage: $0 {start|stop|restart}"
+esac
diff --git a/staging/subversion/svnserve.conf b/staging/subversion/svnserve.conf
new file mode 100644
index 000000000..37fb7ea10
--- /dev/null
+++ b/staging/subversion/svnserve.conf
@@ -0,0 +1,7 @@
+#
+# Parameters to be passed to svnserve
+#
+#SVNSERVE_ARGS="-r /path/to/some/repos"
+SVNSERVE_ARGS=""
+
+#SVNSERVE_USER="svn"
diff --git a/staging/wireshark/PKGBUILD b/staging/wireshark/PKGBUILD
new file mode 100644
index 000000000..a83355164
--- /dev/null
+++ b/staging/wireshark/PKGBUILD
@@ -0,0 +1,54 @@
+# $Id: PKGBUILD 121168 2011-04-29 06:39:53Z stephane $
+# Maintainer: Guillaume ALAUX <guillaume at alaux dot net>
+# Contributor: Florian Pritz <bluewind at jabber dot ccc dot de>
+pkgname=(wireshark-cli wireshark-gtk)
+pkgbase=wireshark
+pkgver=1.4.6
+pkgrel=2
+arch=('i686' 'x86_64')
+license=('GPL2')
+makedepends=('bison' 'flex' 'gtk2' 'krb5' 'libpcap' 'bash' 'gnutls' 'libcap')
+url="http://www.wireshark.org/"
+options=(!libtool)
+source=(http://www.wireshark.org/download/src/${pkgbase}-${pkgver}.tar.bz2)
+md5sums=('fd301004ebc5fac8e56c2f0d4ef6173f')
+
+build() {
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+ export CFLAGS="-fno-unit-at-a-time ${CFLAGS}"
+
+ ./configure --prefix=/usr --with-ssl --with-zlib=no
+ make all
+}
+
+package_wireshark-cli() {
+ pkgdesc="A free network protocol analyzer for Unix/Linux and Windows - CLI version"
+ depends=('krb5' 'libpcap' 'bash' 'gnutls' 'libcap' 'glib2')
+ install=wireshark.install
+ conflicts=(wireshark)
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+
+ make DESTDIR="${pkgdir}" install
+
+ #wireshark uid group is 150
+ chgrp 150 "${pkgdir}/usr/bin/dumpcap"
+ chmod 754 "${pkgdir}/usr/bin/dumpcap"
+ rm "$pkgdir/usr/bin/wireshark"
+}
+
+package_wireshark-gtk() {
+ pkgdesc="A free network protocol analyzer for Unix/Linux and Windows - GTK frontend"
+ depends=('gtk2' 'wireshark-cli')
+ install=wireshark-gtk.install
+ replaces=(wireshark)
+ conflicts=(wireshark)
+
+ cd "${srcdir}/${pkgbase}-${pkgver}"
+
+ install -Dm755 .libs/wireshark "$pkgdir/usr/bin/wireshark"
+ for d in 16 32 48; do
+ install -Dm644 image/hi${d}-app-wireshark.png ${pkgdir}/usr/share/icons/hicolor/${d}x${d}/apps/wireshark.png
+ done
+ install -Dm644 wireshark.desktop ${pkgdir}/usr/share/applications/wireshark.desktop
+}
diff --git a/staging/wireshark/wireshark-gtk.install b/staging/wireshark/wireshark-gtk.install
new file mode 100644
index 000000000..6b1b64bdd
--- /dev/null
+++ b/staging/wireshark/wireshark-gtk.install
@@ -0,0 +1,11 @@
+post_install() {
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
diff --git a/staging/wireshark/wireshark.install b/staging/wireshark/wireshark.install
new file mode 100644
index 000000000..6585ba272
--- /dev/null
+++ b/staging/wireshark/wireshark.install
@@ -0,0 +1,18 @@
+post_install() {
+ getent group wireshark >/dev/null 2>&1 || usr/sbin/groupadd -g 150 wireshark &>/dev/null
+
+ setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap
+ echo "NOTE: To run wireshark as normal user you have to add yourself into wireshark group"
+}
+
+post_upgrade() {
+ getent group wireshark >/dev/null 2>&1 || usr/sbin/groupadd -g 150 wireshark &>/dev/null
+
+ setcap 'CAP_NET_RAW+eip CAP_NET_ADMIN+eip' usr/bin/dumpcap
+}
+
+post_remove() {
+ if getent group wireshark >/dev/null 2>&1; then
+ groupdel wireshark
+ fi
+}
diff --git a/testing/binutils/PKGBUILD b/testing/binutils/PKGBUILD
new file mode 100644
index 000000000..40416653c
--- /dev/null
+++ b/testing/binutils/PKGBUILD
@@ -0,0 +1,83 @@
+# $Id: PKGBUILD 121290 2011-04-30 08:22:29Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+
+# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
+
+pkgname=binutils
+pkgver=2.21
+pkgrel=7
+_date=20110430
+pkgdesc="A set of programs to assemble and manipulate binary and object files"
+arch=('i686' 'x86_64')
+url="http://www.gnu.org/software/binutils/"
+license=('GPL')
+groups=('base')
+depends=('glibc>=2.13' 'zlib')
+makedepends=('dejagnu')
+options=('!libtool' '!distcc' '!ccache')
+install=binutils.install
+source=(ftp://ftp.archlinux.org/other/${pkgname}/${pkgname}-${pkgver}_${_date}.tar.bz2)
+md5sums=('7b3e28fb35cb8bb371cc47291e1c6dec')
+
+mksource() {
+ mkdir ${pkgname}-${_date}
+ cd ${pkgname}-${_date}
+ export _TAG=binutils-2_21-branch
+ export 'CVSROOT=:pserver:anoncvs@sourceware.org:/cvs/src'
+ cvs -z9 co -r $_TAG binutils || return 1
+ mv src binutils
+ tar -cvjf ../binutils-${pkgver}_${_date}.tar.bz2 binutils/*
+}
+
+build() {
+ cd ${srcdir}
+ mkdir binutils-build && cd binutils-build
+
+ [[ $CARCH == "x86_64" ]] && CONFIGFLAG="--enable-64-bit-bfd --disable-multilib"
+
+ ${srcdir}/binutils/configure --prefix=/usr \
+ --enable-ld=default --enable-gold \
+ --enable-plugins --enable-threads \
+ --enable-shared $CONFIGFLAG
+
+ # This checks the host environment and makes sure all the necessary tools are available to compile Binutils.
+ make configure-host
+
+ make tooldir=${pkgdir}/usr
+}
+
+check() {
+ cd ${srcdir}/binutils-build
+
+ # do not abort on errors - manually check log files
+ make -k -j1 check || true
+}
+
+package() {
+ cd ${srcdir}/binutils-build
+ make prefix=${pkgdir}/usr tooldir=${pkgdir}/usr install
+
+ # Add some useful headers
+ install -m644 ${srcdir}/binutils/include/libiberty.h ${pkgdir}/usr/include
+ install -m644 ${srcdir}/binutils/include/demangle.h ${pkgdir}/usr/include
+
+ # Rebuild libiberty.a with -fPIC
+ make -C libiberty clean
+ make CFLAGS="$CFLAGS -fPIC" -C libiberty
+ install -m644 libiberty/libiberty.a ${pkgdir}/usr/lib
+
+ # Rebuild libbfd.a with -fPIC
+ make -C bfd clean
+ # hidden visability prevent 3rd party shared libraries exporting bfd non-stable API
+ make CFLAGS="$CFLAGS -fPIC -fvisibility=hidden" -C bfd
+ install -m644 bfd/libbfd.a ${pkgdir}/usr/lib
+
+ # Remove Windows/Novell specific man pages
+ rm -f ${pkgdir}/usr/share/man/man1/{dlltool,nlmconv,windres,windmc}*
+
+ # Remove these symlinks, they are not ABI stable.
+ # Programs should compile static to the .a file.
+ rm -f ${pkgdir}/usr/lib/lib{bfd,opcodes}.so
+ echo "INPUT ( /usr/lib/libbfd.a -liberty -lz )" >${pkgdir}/usr/lib/libbfd.so
+ echo "INPUT ( /usr/lib/libopcodes.a -lbfd )" >${pkgdir}/usr/lib/libopcodes.so
+}
diff --git a/testing/binutils/binutils.install b/testing/binutils/binutils.install
new file mode 100644
index 000000000..8bf9f3a47
--- /dev/null
+++ b/testing/binutils/binutils.install
@@ -0,0 +1,17 @@
+infodir=usr/share/info
+filelist=(as.info bfd.info binutils.info configure.info gprof.info ld.info standards.info)
+
+post_upgrade() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
diff --git a/testing/blender/PKGBUILD b/testing/blender/PKGBUILD
index 152dc77bf..68688bc51 100644
--- a/testing/blender/PKGBUILD
+++ b/testing/blender/PKGBUILD
@@ -1,18 +1,20 @@
-# $Id: PKGBUILD 119990 2011-04-18 02:49:47Z eric $
+# $Id: PKGBUILD 121081 2011-04-29 00:16:23Z eric $
# Contributor: John Sowiak <john@archlinux.org>
# Maintainer: tobias <tobias@archlinux.org>
# Apparently, the blender guys refuse to release source tarballs for
# intermediate releases that deal mainly with binaries but incorporate tiny
-# minor changes from cvs. Since I'm sick and tired of the urges of users that
-# look for release numbers only we make a messy PKGBUILD that can checkout cvs
-# tags if necessary.
-#_cvs=true
-_cvs=false
+# minor changes from svn. Since I'm sick and tired of the urges of users that
+# look for release numbers only we make a messy PKGBUILD that can checkout svn
+# release if necessary.
+
+_svn=true
+#_svn=false
pkgname=blender
-pkgver=2.57
-pkgrel=1
+pkgver=2.57b
+pkgrel=2
+epoch=1
pkgdesc="A fully integrated 3D graphics creation suite"
arch=('i686' 'x86_64')
license=('GPL')
@@ -20,30 +22,36 @@ url="http://www.blender.org"
depends=('libjpeg' 'libpng' 'openjpeg' 'libtiff' 'openexr' 'sdl' 'python' 'desktop-file-utils' \
'shared-mime-info' 'hicolor-icon-theme' 'xdg-utils' 'gettext' 'libxi' 'libxmu' 'mesa' \
'freetype2' 'openal' 'libsndfile' 'libsamplerate' 'ffmpeg')
-makedepends=('cmake' 'cvs')
+makedepends=('cmake') # 'subversion'
install=blender.install
-if [ ! $_cvs -o $_cvs = false ]; then
- makedepends=('cmake')
+if [ $_svn = false ]; then
source=(http://download.blender.org/source/$pkgname-$pkgver.tar.gz)
md5sums=('e6cb5523323a71c070051e6fe6efe497')
+else
+ source=(ftp://ftp.archlinux.org/other/${pkgname}/$pkgname-$pkgver.tar.xz)
+ md5sums=('59e344d4ec48750a86e4ef079c3acbfc')
fi
-build() {
- if [ $_cvs = true ]; then
- cd "$srcdir/"
- #cvs -d:pserver:anonymous@cvs.blender.org:/cvsroot/bf-blender login
- cvs -z3 -d:pserver:anonymous@cvs.blender.org:/cvsroot/bf-blender checkout $pkgname
- _cvsrel=$pkgname-$(echo $pkgver | sed 's/\./-/')-release
- cvs -d:pserver:anonymous@cvs.blender.org:/cvsroot/bf-blender update -r $_cvsrel
- find $pkgname/{bin,release/scripts} -name 'CVS' -exec rm -rf {} \; 2> /dev/null
- cd $pkgname
- else
- cd "$srcdir/$pkgname-$pkgver"
- fi
+# source PKGBUILD && mksource
+mksource() {
+ _svnver=36339
+ _svntrunk="https://svn.blender.org/svnroot/bf-blender/trunk/blender"
+ _svnmod="$pkgname-$pkgver"
+ mkdir ${pkgname}-$pkgver
+ pushd ${pkgname}-$pkgver
+ svn co $_svntrunk --config-dir ./ -r $_svnver $_svnmod
+ find . -depth -type d -name .svn -exec rm -rf {} \;
+ tar -cJf ../${pkgname}-$pkgver.tar.xz ${pkgname}-$pkgver/*
+ popd
+}
+build() {
+ cd "$srcdir/$pkgname-$pkgver"
mkdir build
cd build
+ [[ $CARCH == i686 ]] && ENABLESSE2="-DSUPPORT_SSE2_BUILD:BOOL=OFF"
+
cmake .. \
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
-DCMAKE_BUILD_TYPE:STRING=Release \
@@ -55,27 +63,27 @@ build() {
-DPYTHON_VERSION:STRING=3.2 \
-DPYTHON_LIBPATH:STRING=/usr/lib \
-DPYTHON_LIBRARY:STRING=python3.2mu \
- -DPYTHON_INCLUDE_DIRS:STRING=/usr/include/python3.2mu
+ -DPYTHON_INCLUDE_DIRS:STRING=/usr/include/python3.2mu \
+ $ENABLESSE2
make $MAKEFLAGS
+
+ cp -rf "$srcdir"/${pkgname}-$pkgver/release/plugins/* \
+ "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi/
+ cd "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi
+ chmod 755 bmake
+ make
}
package() {
- if [ $_cvs = true ]; then
- cd "$srcdir/$pkgname"
- else
- cd "$srcdir/$pkgname-$pkgver"
- fi
-
- cd build
+ cd "$srcdir/$pkgname-$pkgver/build"
make DESTDIR="${pkgdir}" install
python -m compileall "${pkgdir}/usr/share/blender"
- for i in 128 16 192 22 32 48 64 96 ; do
- install -D -m644 ../release/freedesktop/icons/${i}x${i}/blender.png \
- "${pkgdir}/usr/share/icons/hicolor/${i}x${i}/apps/blender.png"
- done
-
- install -D -m644 ../release/freedesktop/icons/scalable/blender.svg \
- "${pkgdir}/usr/share/icons/hicolor/scalable/apps/blender.svg"
+# install plugins
+ install -d -m755 "$pkgdir"/usr/share/blender/${pkgver%[a-z]}/plugins/{sequence,texture}
+ cp "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi/sequence/*.so \
+ "$pkgdir"/usr/share/blender/${pkgver%[a-z]}/plugins/sequence/
+ cp "$srcdir"/${pkgname}-$pkgver/source/blender/blenpluginapi/texture/*.so \
+ "$pkgdir"/usr/share/blender/${pkgver%[a-z]}/plugins/texture/
}
diff --git a/testing/claws-mail-extra-plugins/PKGBUILD b/testing/claws-mail-extra-plugins/PKGBUILD
index 520ca37c3..b1cd6cbc9 100644
--- a/testing/claws-mail-extra-plugins/PKGBUILD
+++ b/testing/claws-mail-extra-plugins/PKGBUILD
@@ -1,10 +1,10 @@
-# $Id: PKGBUILD 119030 2011-04-10 14:07:06Z andyrtr $
+# $Id: PKGBUILD 121174 2011-04-29 06:49:28Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
# Contributor: Mildred <mildred593 at online dot fr>
pkgname=claws-mail-extra-plugins
pkgver=3.7.9
-pkgrel=2
+pkgrel=3
pkgdesc="Extra plugins for claws-mail"
url="http://www.claws-mail.org/plugins.php?branch=EXT"
license=('GPL3')
@@ -30,11 +30,11 @@ conflicts=('claws-gtkhtml2_viewer' 'claws-mail-acpinotifier-plugin'
'sylpheed-claws-extra-plugins' 'claws-tnef-plugin'
'claws-webkit-plugin-svn' 'claws-mayflower-plugin-svn')
replaces=('sylpheed-claws-extra-plugins')
-options=('!libtool')
+options=('!libtool' '!strip')
source=(http://downloads.sourceforge.net/project/sylpheed-claws/extra%20plugins/$pkgver/claws-mail-extra-plugins-$pkgver.tar.bz2
claws-mail-notification-0.26-libnotify-0.7.patch)
md5sums=('3d1ebc48f686ab10702380c776b5d5d0'
- 'b76e1cdbff7af46d6594c34646c06fd0')
+ 'a02be84594ebd28b18811ccc358509be')
build() {
cd "$srcdir/claws-mail-extra-plugins-$pkgver"
@@ -47,7 +47,7 @@ build() {
cd $dir
[[ $dir == notification_plugin-* ]] &&
- patch -Np0 -i "$srcdir/claws-mail-notification-0.26-libnotify-0.7.patch"
+ patch -Np2 -i "$srcdir/claws-mail-notification-0.26-libnotify-0.7.patch"
./configure --prefix=/usr --disable-static
make
diff --git a/testing/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch b/testing/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch
index 6159d139c..efc06a472 100644
--- a/testing/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch
+++ b/testing/claws-mail-extra-plugins/claws-mail-notification-0.26-libnotify-0.7.patch
@@ -1,50 +1,25 @@
---- src/notification_popup.c
-+++ src/notification_popup.c
-@@ -339,7 +339,16 @@
+diff -Nur claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_popup.c claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_popup.c
+--- claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_popup.c 2009-04-26 03:05:05.000000000 +0200
++++ claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_popup.c 2010-11-12 13:39:02.363909583 +0100
+@@ -339,7 +339,7 @@
break;
}
-+#ifdef NOTIFY_CHECK_VERSION
-+#if NOTIFY_CHECK_VERSION (0, 7, 0)
+- ppopup->notification = notify_notification_new(summary, utf8_str, NULL, NULL);
+ ppopup->notification = notify_notification_new(summary, utf8_str, NULL);
-+#else
- ppopup->notification = notify_notification_new(summary, utf8_str, NULL, NULL);
-+#endif
-+#else
-+ ppopup->notification = notify_notification_new(summary, utf8_str, NULL, NULL);
-+#endif
-+
g_free(utf8_str);
if(ppopup->notification == NULL) {
debug_print("Notification Plugin: Failed to create a new "
---- src/notification_trayicon.c
-+++ src/notification_trayicon.c
-@@ -61,6 +61,10 @@
- #ifdef HAVE_LIBNOTIFY
- #include <libnotify/notify.h>
-
-+#ifndef NOTIFY_CHECK_VERSION
-+#define NOTIFY_CHECK_VERSION(x,y,z) 0
-+#endif
-+
- typedef struct {
- gint count;
- gint num_mail;
-@@ -601,8 +605,17 @@
+diff -Nur claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_trayicon.c claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_trayicon.c
+--- claws-mail-extra-plugins-3.7.6-orig/notification_plugin-0.25/src/notification_trayicon.c 2010-03-25 09:56:34.000000000 +0100
++++ claws-mail-extra-plugins-3.7.6/notification_plugin-0.25/src/notification_trayicon.c 2010-11-12 13:38:30.809340907 +0100
+@@ -589,8 +589,7 @@
summary = notification_trayicon_popup_assemble_summary();
utf8_str = notification_trayicon_popup_assemble_body(msginfo);
-+#if NOTIFY_CHECK_VERSION (0, 7, 0)
+- popup.notification = notify_notification_new(summary, utf8_str, NULL, NULL);
+- notify_notification_attach_to_status_icon(popup.notification, trayicon);
+ popup.notification = notify_notification_new(summary, utf8_str, NULL);
-+#else
- popup.notification = notify_notification_new(summary, utf8_str, NULL, NULL);
-+#endif
-+
-+#if NOTIFY_CHECK_VERSION (0, 7, 0)
-+ /* notify_notification_attach_to_status_icon function was removed */
-+#else
- notify_notification_attach_to_status_icon(popup.notification, trayicon);
-+#endif
g_free(summary);
g_free(utf8_str);
diff --git a/testing/coreutils/PKGBUILD b/testing/coreutils/PKGBUILD
new file mode 100644
index 000000000..e63b4f02f
--- /dev/null
+++ b/testing/coreutils/PKGBUILD
@@ -0,0 +1,69 @@
+# $Id: PKGBUILD 120920 2011-04-27 11:05:23Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
+
+pkgname=coreutils
+pkgver=8.12
+pkgrel=1
+pkgdesc="The basic file, shell and text manipulation utilities of the GNU operating system"
+arch=('i686' 'x86_64')
+license=('GPL3')
+url="http://www.gnu.org/software/coreutils"
+groups=('base')
+depends=('glibc' 'shadow' 'pam' 'acl' 'gmp' 'libcap')
+replaces=('mktemp')
+backup=('etc/pam.d/su')
+install=${pkgname}.install
+options=('!emptydirs')
+source=(ftp://ftp.gnu.org/gnu/$pkgname/$pkgname-$pkgver.tar.xz
+ coreutils-uname.patch
+ coreutils-pam.patch
+ su.pam)
+md5sums=('0f7d43c2d2e24314b43a6c6267e25b90'
+ 'c4fcca138b6abf6d443d48a6f0cd8833'
+ 'aad79a2aa6d566c375d7bdd1b0767278'
+ 'fa85e5cce5d723275b14365ba71a8aad')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+
+ # added su wheel group pam patch (from fedora git)
+ patch -Np1 -i ${srcdir}/coreutils-pam.patch
+
+ # linux specific uname improvement (from gentoo portage)
+ patch -Np1 -i ${srcdir}/coreutils-uname.patch
+
+ autoreconf -v
+ ./configure --prefix=/usr \
+ --enable-install-program=su \
+ --enable-no-install-program=groups,hostname,kill,uptime \
+ --enable-pam
+ make
+}
+
+check() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make RUN_EXPENSIVE_TESTS=yes check
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+
+ cd ${pkgdir}/usr/bin
+ install -dm755 ${pkgdir}/{bin,usr/sbin}
+
+ # binaries required by FHS
+ _fhs="cat chgrp chmod chown cp date dd df echo false ln ls \
+ mkdir mknod mv pwd rm rmdir stty su sync true uname"
+ mv ${_fhs} ${pkgdir}/bin
+
+ # binaries required by various Arch scripts
+ _bin="cut dir dircolors du install mkfifo readlink shred \
+ sleep touch tr vdir"
+ mv ${_bin} ${pkgdir}/bin
+ ln -sf /bin/sleep ${pkgdir}/usr/bin/sleep
+
+ mv chroot ${pkgdir}/usr/sbin
+ install -Dm644 ${srcdir}/su.pam ${pkgdir}/etc/pam.d/su
+}
diff --git a/testing/coreutils/coreutils-pam.patch b/testing/coreutils/coreutils-pam.patch
new file mode 100644
index 000000000..e61908f3f
--- /dev/null
+++ b/testing/coreutils/coreutils-pam.patch
@@ -0,0 +1,428 @@
+diff -urNp coreutils-8.4-orig/configure.ac coreutils-8.4/configure.ac
+--- coreutils-8.4-orig/configure.ac 2010-01-11 18:20:42.000000000 +0100
++++ coreutils-8.4/configure.ac 2010-02-12 10:17:46.000000000 +0100
+@@ -126,6 +126,13 @@ if test "$gl_gcc_warnings" = yes; then
+ AC_SUBST([GNULIB_WARN_CFLAGS])
+ fi
+
++dnl Give the chance to enable PAM
++AC_ARG_ENABLE(pam, dnl
++[ --enable-pam Enable use of the PAM libraries],
++[AC_DEFINE(USE_PAM, 1, [Define if you want to use PAM])
++LIB_PAM="-ldl -lpam -lpam_misc"
++AC_SUBST(LIB_PAM)])
++
+ AC_FUNC_FORK
+
+ optional_bin_progs=
+diff -urNp coreutils-8.4-orig/doc/coreutils.texi coreutils-8.4/doc/coreutils.texi
+--- coreutils-8.4-orig/doc/coreutils.texi 2010-01-03 18:06:20.000000000 +0100
++++ coreutils-8.4/doc/coreutils.texi 2010-02-12 10:17:46.000000000 +0100
+@@ -15081,8 +15081,11 @@ to certain shells, etc.).
+ @findex syslog
+ @command{su} can optionally be compiled to use @code{syslog} to report
+ failed, and optionally successful, @command{su} attempts. (If the system
+-supports @code{syslog}.) However, GNU @command{su} does not check if the
+-user is a member of the @code{wheel} group; see below.
++supports @code{syslog}.)
++
++This version of @command{su} has support for using PAM for
++authentication. You can edit @file{/etc/pam.d/su} to customize its
++behaviour.
+
+ The program accepts the following options. Also see @ref{Common options}.
+
+@@ -15124,6 +15127,8 @@ environment variables except @env{TERM},
+ @env{PATH} to a compiled-in default value. Change to @var{user}'s home
+ directory. Prepend @samp{-} to the shell's name, intended to make it
+ read its login startup file(s).
++Additionaly @env{DISPLAY} and @env{XAUTHORITY} environment variables
++are preserved as well for PAM functionality.
+
+ @item -m
+ @itemx -p
+@@ -15163,33 +15168,6 @@ Exit status:
+ the exit status of the subshell otherwise
+ @end display
+
+-@cindex wheel group, not supported
+-@cindex group wheel, not supported
+-@cindex fascism
+-@subsection Why GNU @command{su} does not support the @samp{wheel} group
+-
+-(This section is by Richard Stallman.)
+-
+-@cindex Twenex
+-@cindex MIT AI lab
+-Sometimes a few of the users try to hold total power over all the
+-rest. For example, in 1984, a few users at the MIT AI lab decided to
+-seize power by changing the operator password on the Twenex system and
+-keeping it secret from everyone else. (I was able to thwart this coup
+-and give power back to the users by patching the kernel, but I
+-wouldn't know how to do that in Unix.)
+-
+-However, occasionally the rulers do tell someone. Under the usual
+-@command{su} mechanism, once someone learns the root password who
+-sympathizes with the ordinary users, he or she can tell the rest. The
+-``wheel group'' feature would make this impossible, and thus cement the
+-power of the rulers.
+-
+-I'm on the side of the masses, not that of the rulers. If you are
+-used to supporting the bosses and sysadmins in whatever they do, you
+-might find this idea strange at first.
+-
+-
+ @node timeout invocation
+ @section @command{timeout}: Run a command with a time limit
+
+diff -urNp coreutils-8.4-orig/src/Makefile.am coreutils-8.4/src/Makefile.am
+--- coreutils-8.4-orig/src/Makefile.am 2010-01-03 18:06:20.000000000 +0100
++++ coreutils-8.4/src/Makefile.am 2010-02-12 10:17:46.000000000 +0100
+@@ -361,7 +361,7 @@ factor_LDADD += $(LIB_GMP)
+ uptime_LDADD += $(GETLOADAVG_LIBS)
+
+ # for crypt
+-su_LDADD += $(LIB_CRYPT)
++su_LDADD += $(LIB_CRYPT) @LIB_PAM@
+
+ # for various ACL functions
+ copy_LDADD += $(LIB_ACL)
+diff -urNp coreutils-8.4-orig/src/su.c coreutils-8.4/src/su.c
+--- coreutils-8.4-orig/src/su.c 2010-02-12 10:15:15.000000000 +0100
++++ coreutils-8.4/src/su.c 2010-02-12 10:24:29.000000000 +0100
+@@ -37,6 +37,16 @@
+ restricts who can su to UID 0 accounts. RMS considers that to
+ be fascist.
+
++#ifdef USE_PAM
++
++ Actually, with PAM, su has nothing to do with whether or not a
++ wheel group is enforced by su. RMS tries to restrict your access
++ to a su which implements the wheel group, but PAM considers that
++ to be fascist, and gives the user/sysadmin the opportunity to
++ enforce a wheel group by proper editing of /etc/pam.conf
++
++#endif
++
+ Compile-time options:
+ -DSYSLOG_SUCCESS Log successful su's (by default, to root) with syslog.
+ -DSYSLOG_FAILURE Log failed su's (by default, to root) with syslog.
+@@ -53,6 +63,15 @@
+ #include <pwd.h>
+ #include <grp.h>
+
++#ifdef USE_PAM
++# include <signal.h>
++# include <sys/wait.h>
++# include <sys/fsuid.h>
++# include <unistd.h>
++# include <security/pam_appl.h>
++# include <security/pam_misc.h>
++#endif /* USE_PAM */
++
+ #include "system.h"
+ #include "getpass.h"
+
+@@ -120,10 +139,17 @@
+ /* The user to become if none is specified. */
+ #define DEFAULT_USER "root"
+
++#ifndef USE_PAM
+ char *crypt (char const *key, char const *salt);
++#endif
+
+-static void run_shell (char const *, char const *, char **, size_t)
++static void run_shell (char const *, char const *, char **, size_t,
++ const struct passwd *)
++#ifdef USE_PAM
++ ;
++#else
+ ATTRIBUTE_NORETURN;
++#endif
+
+ /* If true, pass the `-f' option to the subshell. */
+ static bool fast_startup;
+@@ -209,7 +235,26 @@ log_su (struct passwd const *pw, bool su
+ }
+ #endif
+
++#ifdef USE_PAM
++static pam_handle_t *pamh = NULL;
++static int retval;
++static struct pam_conv conv = {
++ misc_conv,
++ NULL
++};
++
++#define PAM_BAIL_P if (retval) { \
++ pam_end(pamh, PAM_SUCCESS); \
++ return 0; \
++}
++#define PAM_BAIL_P_VOID if (retval) { \
++ pam_end(pamh, PAM_SUCCESS); \
++return; \
++}
++#endif
++
+ /* Ask the user for a password.
++ If PAM is in use, let PAM ask for the password if necessary.
+ Return true if the user gives the correct password for entry PW,
+ false if not. Return true without asking for a password if run by UID 0
+ or if PW has an empty password. */
+@@ -217,6 +262,44 @@ log_su (struct passwd const *pw, bool su
+ static bool
+ correct_password (const struct passwd *pw)
+ {
++#ifdef USE_PAM
++ struct passwd *caller;
++ char *tty_name, *ttyn;
++ retval = pam_start(PROGRAM_NAME, pw->pw_name, &conv, &pamh);
++ PAM_BAIL_P;
++
++ if (getuid() != 0 && !isatty(0)) {
++ fprintf(stderr, "standard in must be a tty\n");
++ exit(1);
++ }
++
++ caller = getpwuid(getuid());
++ if(caller != NULL && caller->pw_name != NULL) {
++ retval = pam_set_item(pamh, PAM_RUSER, caller->pw_name);
++ PAM_BAIL_P;
++ }
++
++ ttyn = ttyname(0);
++ if (ttyn) {
++ if (strncmp(ttyn, "/dev/", 5) == 0)
++ tty_name = ttyn+5;
++ else
++ tty_name = ttyn;
++ retval = pam_set_item(pamh, PAM_TTY, tty_name);
++ PAM_BAIL_P;
++ }
++ retval = pam_authenticate(pamh, 0);
++ PAM_BAIL_P;
++ retval = pam_acct_mgmt(pamh, 0);
++ if (retval == PAM_NEW_AUTHTOK_REQD) {
++ /* password has expired. Offer option to change it. */
++ retval = pam_chauthtok(pamh, PAM_CHANGE_EXPIRED_AUTHTOK);
++ PAM_BAIL_P;
++ }
++ PAM_BAIL_P;
++ /* must be authenticated if this point was reached */
++ return 1;
++#else /* !USE_PAM */
+ char *unencrypted, *encrypted, *correct;
+ #if HAVE_GETSPNAM && HAVE_STRUCT_SPWD_SP_PWDP
+ /* Shadow passwd stuff for SVR3 and maybe other systems. */
+@@ -241,6 +324,7 @@ correct_password (const struct passwd *p
+ encrypted = crypt (unencrypted, correct);
+ memset (unencrypted, 0, strlen (unencrypted));
+ return STREQ (encrypted, correct);
++#endif /* !USE_PAM */
+ }
+
+ /* Update `environ' for the new shell based on PW, with SHELL being
+@@ -254,12 +338,18 @@ modify_environment (const struct passwd
+ /* Leave TERM unchanged. Set HOME, SHELL, USER, LOGNAME, PATH.
+ Unset all other environment variables. */
+ char const *term = getenv ("TERM");
++ char const *display = getenv ("DISPLAY");
++ char const *xauthority = getenv ("XAUTHORITY");
+ if (term)
+ term = xstrdup (term);
+ environ = xmalloc ((6 + !!term) * sizeof (char *));
+ environ[0] = NULL;
+ if (term)
+ xsetenv ("TERM", term);
++ if (display)
++ xsetenv ("DISPLAY", display);
++ if (xauthority)
++ xsetenv ("XAUTHORITY", xauthority);
+ xsetenv ("HOME", pw->pw_dir);
+ xsetenv ("SHELL", shell);
+ xsetenv ("USER", pw->pw_name);
+@@ -292,8 +382,13 @@ change_identity (const struct passwd *pw
+ {
+ #ifdef HAVE_INITGROUPS
+ errno = 0;
+- if (initgroups (pw->pw_name, pw->pw_gid) == -1)
++ if (initgroups (pw->pw_name, pw->pw_gid) == -1) {
++#ifdef USE_PAM
++ pam_close_session(pamh, 0);
++ pam_end(pamh, PAM_ABORT);
++#endif
+ error (EXIT_CANCELED, errno, _("cannot set groups"));
++ }
+ endgrent ();
+ #endif
+ if (setgid (pw->pw_gid))
+@@ -302,6 +397,31 @@ change_identity (const struct passwd *pw
+ error (EXIT_CANCELED, errno, _("cannot set user id"));
+ }
+
++#ifdef USE_PAM
++static int caught=0;
++/* Signal handler for parent process later */
++static void su_catch_sig(int sig)
++{
++ ++caught;
++}
++
++int
++pam_copyenv (pam_handle_t *pamh)
++{
++ char **env;
++
++ env = pam_getenvlist(pamh);
++ if(env) {
++ while(*env) {
++ if (putenv (*env))
++ xalloc_die ();
++ env++;
++ }
++ }
++ return(0);
++}
++#endif
++
+ /* Run SHELL, or DEFAULT_SHELL if SHELL is empty.
+ If COMMAND is nonzero, pass it to the shell with the -c option.
+ Pass ADDITIONAL_ARGS to the shell as more arguments; there
+@@ -309,17 +429,49 @@ change_identity (const struct passwd *pw
+
+ static void
+ run_shell (char const *shell, char const *command, char **additional_args,
+- size_t n_additional_args)
++ size_t n_additional_args, const struct passwd *pw)
+ {
+ size_t n_args = 1 + fast_startup + 2 * !!command + n_additional_args + 1;
+ char const **args = xnmalloc (n_args, sizeof *args);
+ size_t argno = 1;
++#ifdef USE_PAM
++ int child;
++ sigset_t ourset;
++ int status;
++
++ retval = pam_open_session(pamh,0);
++ if (retval != PAM_SUCCESS) {
++ fprintf (stderr, "could not open session\n");
++ exit (1);
++ }
++
++/* do this at the last possible moment, because environment variables may
++ be passed even in the session phase
++*/
++ if(pam_copyenv(pamh) != PAM_SUCCESS)
++ fprintf (stderr, "error copying PAM environment\n");
++
++ /* Credentials should be set in the parent */
++ if (pam_setcred(pamh, PAM_ESTABLISH_CRED) != PAM_SUCCESS) {
++ pam_close_session(pamh, 0);
++ fprintf(stderr, "could not set PAM credentials\n");
++ exit(1);
++ }
++
++ child = fork();
++ if (child == 0) { /* child shell */
++ change_identity (pw);
++ pam_end(pamh, 0);
++#endif
+
+ if (simulate_login)
+ {
+ char *arg0;
+ char *shell_basename;
+
++ if(chdir(pw->pw_dir))
++ error(0, errno, _("warning: cannot change directory to %s"), pw->pw_dir);
++
+ shell_basename = last_component (shell);
+ arg0 = xmalloc (strlen (shell_basename) + 2);
+ arg0[0] = '-';
+@@ -344,6 +496,67 @@ run_shell (char const *shell, char const
+ error (0, errno, "%s", shell);
+ exit (exit_status);
+ }
++#ifdef USE_PAM
++ } else if (child == -1) {
++ fprintf(stderr, "can not fork user shell: %s", strerror(errno));
++ pam_setcred(pamh, PAM_DELETE_CRED | PAM_SILENT);
++ pam_close_session(pamh, 0);
++ pam_end(pamh, PAM_ABORT);
++ exit(1);
++ }
++ /* parent only */
++ sigfillset(&ourset);
++ if (sigprocmask(SIG_BLOCK, &ourset, NULL)) {
++ fprintf(stderr, "%s: signal malfunction\n", PROGRAM_NAME);
++ caught = 1;
++ }
++ if (!caught) {
++ struct sigaction action;
++ action.sa_handler = su_catch_sig;
++ sigemptyset(&action.sa_mask);
++ action.sa_flags = 0;
++ sigemptyset(&ourset);
++ if (sigaddset(&ourset, SIGTERM)
++ || sigaddset(&ourset, SIGALRM)
++ || sigaction(SIGTERM, &action, NULL)
++ || sigprocmask(SIG_UNBLOCK, &ourset, NULL)) {
++ fprintf(stderr, "%s: signal masking malfunction\n", PROGRAM_NAME);
++ caught = 1;
++ }
++ }
++ if (!caught) {
++ do {
++ int pid;
++
++ pid = waitpid(-1, &status, WUNTRACED);
++
++ if (((pid_t)-1 != pid) && (0 != WIFSTOPPED (status))) {
++ kill(getpid(), WSTOPSIG(status));
++ /* once we get here, we must have resumed */
++ kill(pid, SIGCONT);
++ }
++ } while (0 != WIFSTOPPED(status));
++ }
++
++ if (caught) {
++ fprintf(stderr, "\nSession terminated, killing shell...");
++ kill (child, SIGTERM);
++ }
++ /* Not checking retval on this because we need to call close session */
++ pam_setcred(pamh, PAM_DELETE_CRED | PAM_SILENT);
++ retval = pam_close_session(pamh, 0);
++ PAM_BAIL_P_VOID;
++ retval = pam_end(pamh, PAM_SUCCESS);
++ PAM_BAIL_P_VOID;
++ if (caught) {
++ sleep(2);
++ kill(child, SIGKILL);
++ fprintf(stderr, " ...killed.\n");
++ exit(-1);
++ }
++ exit ((0 != WIFEXITED (status)) ? WEXITSTATUS (status)
++ : WTERMSIG (status) + 128);
++#endif /* USE_PAM */
+ }
+
+ /* Return true if SHELL is a restricted shell (one not returned by
+@@ -511,9 +724,9 @@ main (int argc, char **argv)
+ shell = xstrdup (shell ? shell : pw->pw_shell);
+ modify_environment (pw, shell);
+
++#ifndef USE_PAM
+ change_identity (pw);
+- if (simulate_login && chdir (pw->pw_dir) != 0)
+- error (0, errno, _("warning: cannot change directory to %s"), pw->pw_dir);
++#endif
+
+ /* error() flushes stderr, but does not check for write failure.
+ Normally, we would catch this via our atexit() hook of
+@@ -523,5 +736,5 @@ main (int argc, char **argv)
+ if (ferror (stderr))
+ exit (EXIT_CANCELED);
+
+- run_shell (shell, command, argv + optind, MAX (0, argc - optind));
++ run_shell (shell, command, argv + optind, MAX (0, argc - optind), pw);
+ }
diff --git a/testing/coreutils/coreutils-uname.patch b/testing/coreutils/coreutils-uname.patch
new file mode 100644
index 000000000..b458abeba
--- /dev/null
+++ b/testing/coreutils/coreutils-uname.patch
@@ -0,0 +1,173 @@
+On linux platforms, grok /proc/cpuinfo for the CPU/vendor info.
+
+Prob not suitable for upstream seeing as how it's 100% linux-specific
+http://lists.gnu.org/archive/html/bug-coreutils/2005-09/msg00063.html
+
+Patch originally by Carlos E. Gorges <carlos@techlinux.com.br>, but
+heavily reworked to suck less.
+
+To add support for additional platforms, check out the show_cpuinfo()
+func in the linux/arch/<ARCH>/ source tree of the kernel.
+
+--- coreutils/src/uname.c
++++ coreutils/src/uname.c
+@@ -50,6 +50,11 @@
+ # include <mach-o/arch.h>
+ #endif
+
++#if defined(__linux__)
++# define USE_PROCINFO
++# define UNAME_HARDWARE_PLATFORM
++#endif
++
+ #include "system.h"
+ #include "error.h"
+ #include "quote.h"
+@@ -138,6 +143,117 @@
+ exit (status);
+ }
+
++#if defined(USE_PROCINFO)
++
++# if defined(__s390__) || defined(__s390x__)
++# define CPUINFO_FILE "/proc/sysinfo"
++# define CPUINFO_FORMAT "%64[^\t :]%*[ :]%256[^\n]%c"
++# else
++# define CPUINFO_FILE "/proc/cpuinfo"
++# define CPUINFO_FORMAT "%64[^\t:]\t:%256[^\n]%c"
++# endif
++
++# define PROCINFO_PROCESSOR 0
++# define PROCINFO_HARDWARE_PLATFORM 1
++
++static void __eat_cpuinfo_space(char *buf)
++{
++ /* first eat trailing space */
++ char *tmp = buf + strlen(buf) - 1;
++ while (tmp > buf && isspace(*tmp))
++ *tmp-- = '\0';
++ /* then eat leading space */
++ tmp = buf;
++ while (*tmp && isspace(*tmp))
++ tmp++;
++ if (tmp != buf)
++ memmove(buf, tmp, strlen(tmp)+1);
++ /* finally collapse whitespace */
++ tmp = buf;
++ while (tmp[0] && tmp[1]) {
++ if (isspace(tmp[0]) && isspace(tmp[1])) {
++ memmove(tmp, tmp+1, strlen(tmp));
++ continue;
++ }
++ ++tmp;
++ }
++}
++
++static int __linux_procinfo(int x, char *fstr, size_t s)
++{
++ FILE *fp;
++
++ char *procinfo_keys[] = {
++ /* --processor --hardware-platform */
++ #if defined(__alpha__)
++ "cpu model", "system type"
++ #elif defined(__arm__)
++ "Processor", "Hardware"
++ #elif defined(__avr32__)
++ "processor", "cpu family"
++ #elif defined(__bfin__)
++ "CPU", "BOARD Name"
++ #elif defined(__cris__)
++ "cpu", "cpu model"
++ #elif defined(__frv__)
++ "CPU-Core", "System"
++ #elif defined(__i386__) || defined(__x86_64__)
++ "model name", "vendor_id"
++ #elif defined(__ia64__)
++ "family", "vendor"
++ #elif defined(__hppa__)
++ "cpu", "model"
++ #elif defined(__m68k__)
++ "CPU", "MMU"
++ #elif defined(__mips__)
++ "cpu model", "system type"
++ #elif defined(__powerpc__) || defined(__powerpc64__)
++ "cpu", "machine"
++ #elif defined(__s390__) || defined(__s390x__)
++ "Type", "Manufacturer"
++ #elif defined(__sh__)
++ "cpu type", "machine"
++ #elif defined(sparc) || defined(__sparc__)
++ "type", "cpu"
++ #elif defined(__vax__)
++ "cpu type", "cpu"
++ #else
++ "unknown", "unknown"
++ #endif
++ };
++
++ if ((fp = fopen(CPUINFO_FILE, "r")) != NULL) {
++ char key[65], value[257], eol, *ret = NULL;
++
++ while (fscanf(fp, CPUINFO_FORMAT, key, value, &eol) != EOF) {
++ __eat_cpuinfo_space(key);
++ if (!strcmp(key, procinfo_keys[x])) {
++ __eat_cpuinfo_space(value);
++ ret = value;
++ break;
++ }
++ if (eol != '\n') {
++ /* we need two fscanf's here in case the previous
++ * length limit caused us to read right up to the
++ * newline ... doing "%*[^\n]\n" wont eat the newline
++ */
++ fscanf(fp, "%*[^\n]");
++ fscanf(fp, "\n");
++ }
++ }
++ fclose(fp);
++
++ if (ret) {
++ strncpy(fstr, ret, s);
++ return 0;
++ }
++ }
++
++ return -1;
++}
++
++#endif
++
+ /* Print ELEMENT, preceded by a space if something has already been
+ printed. */
+
+@@ -250,10 +344,14 @@ main (int argc, char **argv)
+ if (toprint & PRINT_PROCESSOR)
+ {
+ char const *element = unknown;
+-#if HAVE_SYSINFO && defined SI_ARCHITECTURE
++#if ( HAVE_SYSINFO && defined SI_ARCHITECTURE ) || defined(USE_PROCINFO)
+ {
+ static char processor[257];
++#if defined(USE_PROCINFO)
++ if (0 <= __linux_procinfo (PROCINFO_PROCESSOR, processor, sizeof processor))
++#else
+ if (0 <= sysinfo (SI_ARCHITECTURE, processor, sizeof processor))
++#endif
+ element = processor;
+ }
+ #endif
+@@ -306,9 +404,13 @@ main (int argc, char **argv)
+ if (element == unknown)
+ {
+ static char hardware_platform[257];
++#if defined(USE_PROCINFO)
++ if (0 <= __linux_procinfo (PROCINFO_HARDWARE_PLATFORM, hardware_platform, sizeof hardware_platform))
++#else
+ size_t s = sizeof hardware_platform;
+ static int mib[] = { CTL_HW, UNAME_HARDWARE_PLATFORM };
+ if (sysctl (mib, 2, hardware_platform, &s, 0, 0) >= 0)
++#endif
+ element = hardware_platform;
+ }
+ #endif
diff --git a/testing/coreutils/coreutils.install b/testing/coreutils/coreutils.install
new file mode 100644
index 000000000..8caae6686
--- /dev/null
+++ b/testing/coreutils/coreutils.install
@@ -0,0 +1,21 @@
+infodir=usr/share/info
+filelist=(coreutils.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ usr/bin/install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ usr/bin/install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
diff --git a/testing/coreutils/su.pam b/testing/coreutils/su.pam
new file mode 100644
index 000000000..cf15f40f1
--- /dev/null
+++ b/testing/coreutils/su.pam
@@ -0,0 +1,9 @@
+#%PAM-1.0
+auth sufficient pam_rootok.so
+# Uncomment the following line to implicitly trust users in the "wheel" group.
+#auth sufficient pam_wheel.so trust use_uid
+# Uncomment the following line to require a user to be in the "wheel" group.
+#auth required pam_wheel.so use_uid
+auth required pam_unix.so
+account required pam_unix.so
+session required pam_unix.so
diff --git a/testing/cronie/PKGBUILD b/testing/cronie/PKGBUILD
index 6ae8c0714..13b1ef8fa 100644
--- a/testing/cronie/PKGBUILD
+++ b/testing/cronie/PKGBUILD
@@ -3,7 +3,7 @@
pkgname='cronie'
pkgver=1.4.7
-pkgrel=5
+pkgrel=6
pkgdesc='Daemon that runs specified programs at scheduled times and related tools'
url='https://fedorahosted.org/cronie/'
license=('custom:BSD')
@@ -11,13 +11,18 @@ arch=('i686' 'x86_64')
depends=('pam' 'bash' 'run-parts')
source=("https://fedorahosted.org/releases/c/r/${pkgname}/${pkgname}-${pkgver}.tar.gz"
+ 'cron.deny'
+ 'crontab'
'pam.d'
'rc.d')
sha1sums=('c6644ba0e58bcb14e0bb3f925e3e8cc3f0d47a7f'
+ '0f279b8fb820340267d578dc85511c980715f91e'
+ '4059bc4ccb75f08b0d4970940799e5d9722b339f'
'6d8aef6880935b3dcc3e28481111d036544eeae5'
'c08c040ed5cb12bc4fd15639a5242d31ec247ef5')
-backup=('etc/anacrontab'
+backup=('etc/crontab'
+ 'etc/anacrontab'
'etc/conf.d/crond'
'etc/pam.d/crond'
'etc/cron.deny')
@@ -52,11 +57,12 @@ package() {
install -Dm755 ../rc.d "${pkgdir}"/etc/rc.d/crond
install -Dm644 ../pam.d "${pkgdir}"/etc/pam.d/crond
+ install -Dm644 ../crontab "${pkgdir}"/etc/crontab
+ install -Dm644 ../cron.deny "${pkgdir}"/etc/cron.deny
install -Dm644 crond.sysconfig "${pkgdir}"/etc/conf.d/crond
install -Dm644 contrib/0hourly "${pkgdir}"/etc/cron.d/0hourly
install -Dm755 contrib/0anacron "${pkgdir}"/etc/cron.hourly/0anacron
install -Dm644 contrib/anacrontab "${pkgdir}"/etc/anacrontab
- touch "${pkgdir}"/etc/cron.deny
install -Dm644 COPYING "${pkgdir}"/usr/share/licenses/cronie/COPYING
}
diff --git a/testing/cronie/cron.deny b/testing/cronie/cron.deny
new file mode 100644
index 000000000..06e685cc8
--- /dev/null
+++ b/testing/cronie/cron.deny
@@ -0,0 +1 @@
+# without this file, only users listed in /etc/cron.allow can use crontab
diff --git a/testing/cronie/crontab b/testing/cronie/crontab
new file mode 100644
index 000000000..f2ce71030
--- /dev/null
+++ b/testing/cronie/crontab
@@ -0,0 +1 @@
+# without this file, crond disables inotify support at startup
diff --git a/testing/gcc/PKGBUILD b/testing/gcc/PKGBUILD
new file mode 100644
index 000000000..939c84053
--- /dev/null
+++ b/testing/gcc/PKGBUILD
@@ -0,0 +1,255 @@
+# $Id: PKGBUILD 121304 2011-04-30 13:23:58Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+
+# toolchain build order: linux-api-headers->glibc->binutils->gcc->binutils->glibc
+# NOTE: libtool requires rebuilt with each new gcc version
+
+pkgname=('gcc' 'gcc-libs' 'gcc-fortran' 'gcc-objc' 'gcc-ada' 'gcc-go')
+pkgver=4.6.0
+pkgrel=4
+_snapshot=4.6-20110429
+_libstdcppmanver=20110201 # Note: check source directory name when updating this
+pkgdesc="The GNU Compiler Collection"
+arch=('i686' 'x86_64')
+license=('GPL' 'LGPL' 'FDL' 'custom')
+url="http://gcc.gnu.org"
+makedepends=('binutils>=2.21' 'libmpc' 'cloog' 'ppl' 'gcc-ada' 'dejagnu')
+options=('!libtool' '!emptydirs')
+source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-{core,g++,fortran,objc,ada,go,testsuite}-${pkgver}.tar.bz2
+ ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-{core,g++,fortran,objc,ada,go,testsuite}-${_snapshot}.tar.bz2
+ ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api.${_libstdcppmanver}.man.tar.bz2
+ gcc_pure64.patch
+ gcc-hash-style-both.patch)
+md5sums=('fa586a5634ae3b462c5fb2d55160b14f'
+ '2591b1fad977f7bd6136c9ac1298ef04'
+ '366f93c1867f35c8860b42965efde955'
+ '21779792ef7e0ed7abef611160b0099c'
+ 'cf518c56b968925a2eca3aa2b4cdbd7b'
+ 'f66ef8597b99961eda7573df505ea354'
+ '3d89dd233ceb6a837d14ee6b940a43ed'
+ '1e9fd2eaf0ee47ea64e82c48998f1999'
+ '4030ee1c08dd1e843c0225b772360e76'
+ '4df25b623799b148a0703eaeec8fdf3f')
+
+if [ -n "${_snapshot}" ]; then
+ _basedir="${srcdir}/gcc-${_snapshot}"
+else
+ _basedir="${srcdir}/gcc-${pkgver}"
+fi
+
+build() {
+ cd ${_basedir}
+
+ # Do not install libiberty
+ sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in
+
+ # Do not run fixincludes
+ sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
+
+ if [ "${CARCH}" = "x86_64" ]; then
+ patch -Np1 -i ${srcdir}/gcc_pure64.patch
+ fi
+ patch -Np0 -i ${srcdir}/gcc-hash-style-both.patch
+
+ echo ${pkgver} > gcc/BASE-VER
+
+ cd ${srcdir}
+ mkdir gcc-build && cd gcc-build
+
+ ${_basedir}/configure --prefix=/usr \
+ --libdir=/usr/lib --libexecdir=/usr/lib \
+ --mandir=/usr/share/man --infodir=/usr/share/info \
+ --with-bugurl=https://bugs.archlinux.org/ \
+ --enable-languages=c,c++,ada,fortran,go,lto,objc,obj-c++ \
+ --enable-shared --enable-threads=posix \
+ --with-system-zlib --enable-__cxa_atexit \
+ --disable-libunwind-exceptions --enable-clocale=gnu \
+ --enable-gnu-unique-object --enable-linker-build-id \
+ --with-ppl --enable-cloog-backend=isl \
+ --enable-lto --enable-gold --enable-ld=default \
+ --enable-plugin --with-plugin-ld=ld.gold \
+ --disable-multilib --disable-libstdcxx-pch \
+ --enable-checking=release
+ make
+}
+
+check() {
+ cd gcc-build
+
+ # increase stack size to prevent test failures
+ # http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31827
+ ulimit -s 32768
+
+ # do not abort on error as some are "expected"
+ make -k check || true
+ ${_basedir}/contrib/test_summary
+}
+
+package_gcc-libs()
+{
+ pkgdesc="Runtime libraries shipped by GCC"
+ groups=('base')
+ depends=('glibc>=2.11.1-2')
+ install=gcc-libs.install
+
+ cd gcc-build
+ make -j1 -C $CHOST/libgcc DESTDIR=${pkgdir} install-shared
+ for lib in libmudflap libgomp libssp libstdc++-v3/src; do
+ make -j1 -C $CHOST/$lib DESTDIR=${pkgdir} install-toolexeclibLTLIBRARIES
+ done
+ make -j1 -C $CHOST/libstdc++-v3/po DESTDIR=${pkgdir} install
+ make -j1 -C $CHOST/libgomp DESTDIR=${pkgdir} install-info
+
+ make -j1 DESTDIR=${pkgdir} install-target-libquadmath
+ make -j1 DESTDIR=${pkgdir} install-target-libgfortran
+ make -j1 DESTDIR=${pkgdir} install-target-libobjc
+
+ # remove unnecessary files installed by install-target-{libquadmath,libgfortran,libobjc}
+ rm -rf ${pkgdir}/usr/lib/{gcc/,libgfortran.spec}
+
+ # remove static libraries
+ find ${pkgdir} -name *.a -delete
+
+ # Install Runtime Library Exception
+ install -Dm644 ${_basedir}/COPYING.RUNTIME \
+ ${pkgdir}/usr/share/licenses/gcc-libs/RUNTIME.LIBRARY.EXCEPTION
+}
+
+package_gcc()
+{
+ pkgdesc="The GNU Compiler Collection - C and C++ frontends"
+ depends=('binutils>=2.20.1' 'libmpc>=0.8.1-2' 'cloog' 'ppl')
+ groups=('base-devel')
+ install=gcc.install
+
+ cd gcc-build
+
+ # unfortunately it is much, much easier to install the lot and clean-up the mess...
+ make -j1 DESTDIR=${pkgdir} install
+ rm $pkgdir/usr/bin/{{$CHOST-,}gfortran,{$CHOST-,}gccgo,gnat*}
+ rm $pkgdir/usr/lib/*.so*
+ rm $pkgdir/usr/lib/lib{ffi,gfortran,go{,begin},objc,quadmath}.a
+ rm $pkgdir/usr/lib/libgfortran.spec
+ rm -r $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{ada{include,lib},finclude,include/objc}
+ rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/include/{ffi{,target}.h,quadmath{,_weak}.h}
+ rm $pkgdir/usr/lib/gcc/$CHOST/${pkgver}/{cc1obj{,plus},f951,gnat1,go1,libgfortranbegin.a}
+ rm -r $pkgdir/usr/lib/go
+ rm $pkgdir/usr/share/info/{gccgo,gfortran,gnat*,libgomp,libquadmath}.info
+ rm $pkgdir/usr/share/locale/{de,fr}/LC_MESSAGES/libstdc++.mo
+ rm $pkgdir/usr/share/man/man1/{gccgo,gfortran}.1
+ rm $pkgdir/usr/share/man/man3/ffi*
+
+ # many packages require these symlinks
+ install -dm755 ${pkgdir}/lib
+ ln -sf /usr/bin/cpp ${pkgdir}/lib/cpp
+ ln -sf gcc ${pkgdir}/usr/bin/cc
+ ln -sf g++ ${pkgdir}/usr/bin/c++
+
+ # POSIX conformance launcher scripts for c89 and c99
+ cat > $pkgdir/usr/bin/c89 <<"EOF"
+#!/bin/sh
+fl="-std=c89"
+for opt; do
+ case "$opt" in
+ -ansi|-std=c89|-std=iso9899:1990) fl="";;
+ -std=*) echo "`basename $0` called with non ANSI/ISO C option $opt" >&2
+ exit 1;;
+ esac
+done
+exec gcc $fl ${1+"$@"}
+EOF
+
+ cat > $pkgdir/usr/bin/c99 <<"EOF"
+#!/bin/sh
+fl="-std=c99"
+for opt; do
+ case "$opt" in
+ -std=c99|-std=iso9899:1999) fl="";;
+ -std=*) echo "`basename $0` called with non ISO C99 option $opt" >&2
+ exit 1;;
+ esac
+done
+exec gcc $fl ${1+"$@"}
+EOF
+
+ chmod 755 $pkgdir/usr/bin/c{8,9}9
+
+ # install the libstdc++ man pages
+ install -dm755 ${pkgdir}/usr/share/man/man3
+ install -m644 ${srcdir}/man/man3/* ${pkgdir}/usr/share/man/man3/
+
+ # Install Runtime Library Exception
+ install -Dm644 ${_basedir}/COPYING.RUNTIME \
+ ${pkgdir}/usr/share/licenses/gcc/RUNTIME.LIBRARY.EXCEPTION
+}
+
+package_gcc-fortran()
+{
+ pkgdesc="Fortran front-end for GCC"
+ depends=("gcc=$pkgver-$pkgrel")
+ install=gcc-fortran.install
+
+ cd gcc-build
+ make -j1 DESTDIR=${pkgdir} install-target-libquadmath
+ make -j1 DESTDIR=$pkgdir install-target-libgfortran
+ make -j1 -C $CHOST/libgomp DESTDIR=$pkgdir install-nodist_fincludeHEADERS
+ make -j1 -C gcc DESTDIR=$pkgdir fortran.install-{common,man,info}
+ install -Dm755 gcc/f951 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/f951
+
+ # remove libraries included in gcc-libs
+ rm ${pkgdir}/usr/lib/lib{gfortran,quadmath}.so*
+ rm ${pkgdir}/usr/share/info/libquadmath.info
+
+ # Install Runtime Library Exception
+ install -Dm644 ${_basedir}/COPYING.RUNTIME \
+ ${pkgdir}/usr/share/licenses/gcc-fortran/RUNTIME.LIBRARY.EXCEPTION
+}
+
+package_gcc-objc()
+{
+ pkgdesc="Objective-C front-end for GCC"
+ depends=("gcc=$pkgver-$pkgrel")
+
+ cd gcc-build
+ make -j1 DESTDIR=$pkgdir install-target-libobjc
+ install -dm755 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/
+ install -m755 gcc/cc1obj{,plus} $pkgdir/usr/lib/gcc/$CHOST/$pkgver/
+
+ # remove libraries included in gcc-libs
+ rm ${pkgdir}/usr/lib/libobjc.so*
+
+ # Install Runtime Library Exception
+ install -Dm644 ${_basedir}/COPYING.RUNTIME \
+ ${pkgdir}/usr/share/licenses/gcc-objc/RUNTIME.LIBRARY.EXCEPTION
+}
+
+package_gcc-ada()
+{
+ pkgdesc="Ada front-end for GCC (GNAT)"
+ depends=("gcc=$pkgver-$pkgrel")
+ install=gcc-ada.install
+
+ cd gcc-build/gcc
+ make -j1 DESTDIR=$pkgdir ada.install-{common,info}
+ install -m755 gnat1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver
+
+ # Install Runtime Library Exception
+ install -Dm644 ${_basedir}/COPYING.RUNTIME \
+ ${pkgdir}/usr/share/licenses/gcc-ada/RUNTIME.LIBRARY.EXCEPTION
+}
+
+package_gcc-go()
+{
+ pkgdesc="Go front-end for GCC"
+ depends=("gcc=$pkgver-$pkgrel")
+ install=gcc-go.install
+
+ cd gcc-build
+ make -j1 DESTDIR=$pkgdir install-target-libgo
+ make -j1 -C gcc DESTDIR=$pkgdir go.install-{common,man,info}
+ install -Dm755 gcc/go1 $pkgdir/usr/lib/gcc/$CHOST/$pkgver/go1
+
+ # Install Runtime Library Exception
+ install -Dm644 ${_basedir}/COPYING.RUNTIME \
+ ${pkgdir}/usr/share/licenses/gcc-go/RUNTIME.LIBRARY.EXCEPTION
+}
diff --git a/testing/gcc/gcc-ada.install b/testing/gcc/gcc-ada.install
new file mode 100644
index 000000000..df0553a4f
--- /dev/null
+++ b/testing/gcc/gcc-ada.install
@@ -0,0 +1,20 @@
+infodir=usr/share/info
+filelist=(gnat-style.info gnat_rm.info gnat_ugn.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
diff --git a/testing/gcc/gcc-fortran.install b/testing/gcc/gcc-fortran.install
new file mode 100644
index 000000000..b15d89a97
--- /dev/null
+++ b/testing/gcc/gcc-fortran.install
@@ -0,0 +1,16 @@
+infodir=usr/share/info
+file="gfortran.info"
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+}
diff --git a/testing/gcc/gcc-go.install b/testing/gcc/gcc-go.install
new file mode 100644
index 000000000..7dc50dee5
--- /dev/null
+++ b/testing/gcc/gcc-go.install
@@ -0,0 +1,20 @@
+infodir=usr/share/info
+filelist=(gccgo.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
diff --git a/testing/gcc/gcc-hash-style-both.patch b/testing/gcc/gcc-hash-style-both.patch
new file mode 100644
index 000000000..8b59f4535
--- /dev/null
+++ b/testing/gcc/gcc-hash-style-both.patch
@@ -0,0 +1,122 @@
+--- gcc/config/alpha/linux-elf.h.orig 2010-12-09 23:27:07.000000000 +1000
++++ gcc/config/alpha/linux-elf.h 2011-03-11 10:01:47.770000457 +1000
+@@ -41,7 +41,7 @@
+
+ #define ELF_DYNAMIC_LINKER LINUX_DYNAMIC_LINKER
+
+-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
++#define LINK_SPEC "-m elf64alpha --hash-style=both %{G*} %{relax:-relax} \
+ %{O*:-O3} %{!O*:-O1} \
+ %{shared:-shared} \
+ %{!shared: \
+--- gcc/config/i386/linux64.h.orig 2011-03-03 08:35:36.000000000 +1000
++++ gcc/config/i386/linux64.h 2011-03-11 10:01:47.770000457 +1000
+@@ -78,7 +78,7 @@
+ %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}}"
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} \
++#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} --hash-style=both \
+ %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+--- gcc/config/i386/linux.h.orig 2011-01-15 04:45:06.000000000 +1000
++++ gcc/config/i386/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -104,7 +104,7 @@
+ { "dynamic_linker", LINUX_DYNAMIC_LINKER }
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
++#define LINK_SPEC "-m %(link_emulation) --hash-style=both %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+--- gcc/config/ia64/linux.h.orig 2010-12-09 23:27:07.000000000 +1000
++++ gcc/config/ia64/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -64,7 +64,7 @@
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "\
++#define LINK_SPEC "--hash-style=both \
+ %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+--- gcc/config/rs6000/linux64.h.orig 2011-02-11 03:30:10.000000000 +1000
++++ gcc/config/rs6000/linux64.h 2011-03-11 10:03:34.280000457 +1000
+@@ -389,11 +389,11 @@
+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64)
+
+
+-#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+ -dynamic-linker " LINUX_DYNAMIC_LINKER32 "}}"
+
+-#define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC64 "-m elf64ppc --hash-style=both %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+ -dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}"
+
+--- gcc/config/rs6000/sysv4.h.orig 2011-01-28 04:36:03.000000000 +1000
++++ gcc/config/rs6000/sysv4.h 2011-03-11 10:01:47.773333792 +1000
+@@ -830,7 +830,7 @@
+ #define LINUX_DYNAMIC_LINKER \
+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
+
+-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+ -dynamic-linker " LINUX_DYNAMIC_LINKER "}}"
+
+--- gcc/config/s390/linux.h.orig 2010-12-09 23:27:07.000000000 +1000
++++ gcc/config/s390/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -77,7 +77,7 @@
+
+ #undef LINK_SPEC
+ #define LINK_SPEC \
+- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
++ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --hash-style=both \
+ %{shared:-shared} \
+ %{!shared: \
+ %{static:-static} \
+--- gcc/config/sparc/linux64.h.orig 2011-02-17 23:57:21.000000000 +1000
++++ gcc/config/sparc/linux64.h 2011-03-11 10:01:47.770000457 +1000
+@@ -113,7 +113,7 @@
+ { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
+ { "link_arch", LINK_ARCH_SPEC },
+
+-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,%R/usr/lib %{shared:-shared} \
++#define LINK_ARCH32_SPEC "-m elf32_sparc --hash-style=both -Y P,%R/usr/lib %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+@@ -121,7 +121,7 @@
+ %{static:-static}} \
+ "
+
+-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \
++#define LINK_ARCH64_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+@@ -193,7 +193,7 @@
+ #else /* !SPARC_BI_ARCH */
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \
++#define LINK_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+--- gcc/config/sparc/linux.h.orig 2011-01-27 06:30:12.000000000 +1000
++++ gcc/config/sparc/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -74,7 +74,7 @@
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_SPEC "-m elf32_sparc --hash-style=both -Y P,/usr/lib %{shared:-shared} \
+ %{!mno-relax:%{!r:-relax}} \
+ %{!shared: \
+ %{!static: \
diff --git a/testing/gcc/gcc-libs.install b/testing/gcc/gcc-libs.install
new file mode 100644
index 000000000..23553b8f0
--- /dev/null
+++ b/testing/gcc/gcc-libs.install
@@ -0,0 +1,16 @@
+infodir=usr/share/info
+filelist=(libgomp.info libquadmath.info)
+
+post_upgrade() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
diff --git a/testing/gcc/gcc.install b/testing/gcc/gcc.install
new file mode 100644
index 000000000..3407a5e1f
--- /dev/null
+++ b/testing/gcc/gcc.install
@@ -0,0 +1,20 @@
+infodir=usr/share/info
+filelist=(cpp.info cppinternals.info gcc.info gccinstall.info gccint.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
diff --git a/testing/gcc/gcc_pure64.patch b/testing/gcc/gcc_pure64.patch
new file mode 100644
index 000000000..8c0baf8e2
--- /dev/null
+++ b/testing/gcc/gcc_pure64.patch
@@ -0,0 +1,26 @@
+diff -Naur gcc-4.2.0.orig/gcc/config/i386/linux64.h gcc-4.2.0/gcc/config/i386/linux64.h
+--- gcc-4.2.0.orig/gcc/config/i386/linux64.h 2007-05-16 19:21:19.000000000 -0400
++++ gcc-4.2.0/gcc/config/i386/linux64.h 2007-05-18 17:04:05.000000000 -0400
+@@ -49,8 +49,8 @@
+ When the -shared link option is used a final link is not being
+ done. */
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
++#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2"
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "%{!m32:-m elf_x86_64} %{m32:-m elf_i386} \
+diff -Naur gcc-4.2.0.orig/gcc/config/i386/t-linux64 gcc-4.2.0/gcc/config/i386/t-linux64
+--- gcc-4.2.0.orig/gcc/config/i386/t-linux64 2007-05-16 19:21:19.000000000 -0400
++++ gcc-4.2.0/gcc/config/i386/t-linux64 2007-05-18 17:04:36.000000000 -0400
+@@ -6,7 +6,7 @@
+
+ MULTILIB_OPTIONS = m64/m32
+ MULTILIB_DIRNAMES = 64 32
+-MULTILIB_OSDIRNAMES = ../lib64 $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
++MULTILIB_OSDIRNAMES = ../lib ../lib32
+
+ LIBGCC = stmp-multilib
+ INSTALL_LIBGCC = install-multilib
diff --git a/testing/glib-networking/PKGBUILD b/testing/glib-networking/PKGBUILD
index ec2c907fa..f7c87770a 100644
--- a/testing/glib-networking/PKGBUILD
+++ b/testing/glib-networking/PKGBUILD
@@ -1,14 +1,14 @@
-# $Id: PKGBUILD 120846 2011-04-26 21:09:53Z ibiru $
+# $Id: PKGBUILD 121199 2011-04-29 10:51:43Z ibiru $
# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
pkgname=glib-networking
pkgver=2.28.6.1
-pkgrel=1
+pkgrel=2
pkgdesc="Network-related giomodules for glib"
arch=('i686' 'x86_64' 'mips64el')
url="http://www.gtk.org/"
license=('GPL2')
-depends=('glib2' 'libproxy' 'gnutls' 'ca-certificates')
-makedepends=('intltool' 'gsettings-desktop-schemas')
+depends=('glib2' 'libproxy' 'gnutls' 'ca-certificates' 'gsettings-desktop-schemas')
+makedepends=('intltool')
options=('!libtool')
install=glib-networking.install
source=(http://download.gnome.org/sources/$pkgname/${pkgver%.*.*}/$pkgname-${pkgver}.tar.bz2)
diff --git a/testing/gnome-control-center/PKGBUILD b/testing/gnome-control-center/PKGBUILD
index f8482fb93..1a694aff9 100644
--- a/testing/gnome-control-center/PKGBUILD
+++ b/testing/gnome-control-center/PKGBUILD
@@ -1,12 +1,12 @@
-# $Id: PKGBUILD 120752 2011-04-26 11:03:14Z heftig $
+# $Id: PKGBUILD 120905 2011-04-27 08:37:19Z ibiru $
# Maintainer: Jan de Groot <jgc@archlinux.org>
pkgname=gnome-control-center
-pkgver=3.0.1
+pkgver=3.0.1.1
pkgrel=1
pkgdesc="The Control Center for GNOME"
arch=('i686' 'x86_64' 'mips64el')
-depends=('gtk3' 'gsettings-desktop-schemas' 'gconf' 'gnome-menus' 'gnome-desktop' 'gnome-settings-daemon' 'upower' 'libgtop' 'cups-pk-helper' 'accountsservice')
+depends=('gtk3' 'gsettings-desktop-schemas' 'gnome-menus' 'gnome-desktop' 'gnome-settings-daemon' 'upower' 'libgtop' 'cups-pk-helper' 'accountsservice' 'sound-theme-freedesktop')
optdepends=('mesa-demos: provides glxinfo for graphics information'
'apg: adds password generation for user accounts')
makedepends=('gnome-doc-utils' 'intltool' 'networkmanager')
@@ -16,7 +16,7 @@ install=gnome-control-center.install
license=('GPL')
options=('!libtool' '!emptydirs')
source=(http://ftp.gnome.org/pub/GNOME/sources/${pkgname}/3.0/${pkgname}-${pkgver}.tar.bz2)
-sha256sums=('90dde4b3db8b7a9c973f71e15601fd176ad6746cfef63c818fbdfd2254a8e99f')
+sha256sums=('b191991d3932b363154e6cf2b5055bc711272065397daee2163b6fb04402ad79')
build() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -29,10 +29,6 @@ build() {
package() {
cd "${srcdir}/${pkgname}-${pkgver}"
- make GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 DESTDIR="${pkgdir}" install
-
- install -m755 -d "${pkgdir}/usr/share/gconf/schemas"
- gconf-merge-schema "${pkgdir}/usr/share/gconf/schemas/${pkgname}.schemas" --domain gnome-control-center-2.0 ${pkgdir}/etc/gconf/schemas/*.schemas
- rm -f ${pkgdir}/etc/gconf/schemas/*.schemas
+ make DESTDIR="${pkgdir}" install
}
diff --git a/testing/gnome-control-center/gnome-control-center.install b/testing/gnome-control-center/gnome-control-center.install
index 8f0bc46fb..eb703319f 100644
--- a/testing/gnome-control-center/gnome-control-center.install
+++ b/testing/gnome-control-center/gnome-control-center.install
@@ -1,18 +1,19 @@
pkgname=gnome-control-center
post_install() {
- usr/sbin/gconfpkg --install ${pkgname}
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
}
pre_upgrade() {
- pre_remove $1
+ if [ -f usr/share/gconf/schemas/${pkgname}.schemas ]; then
+ usr/sbin/gconfpkg --uninstall ${pkgname}
+ fi
}
-pre_remove() {
- usr/sbin/gconfpkg --uninstall ${pkgname}
+post_upgrade() {
+ post_install $1
}
post_remove() {
- gtk-update-icon-cache -q -t -f usr/share/icons/hicolor
+ post_install $1
}
diff --git a/testing/gnome-desktop-sharp/PKGBUILD b/testing/gnome-desktop-sharp/PKGBUILD
new file mode 100644
index 000000000..0ca1779fb
--- /dev/null
+++ b/testing/gnome-desktop-sharp/PKGBUILD
@@ -0,0 +1,35 @@
+# $Id: PKGBUILD 121043 2011-04-28 09:15:35Z heftig $
+# Maintainer: Jan de Groot <jgc@archlinux.org>
+
+pkgname=gnome-desktop-sharp
+pkgver=2.26.0
+pkgrel=6
+pkgdesc="GNOME desktop bindings for C#"
+arch=('i686' 'x86_64')
+license=(LGPL)
+url="http://gtk-sharp.sourceforge.net"
+depends=('gnome-sharp' 'gnome-desktop2' 'vte' 'librsvg' 'libwnck' 'gtkhtml' 'gtksourceview2')
+makedepends=('monodoc' 'libgnomeprintui')
+optdepends=('libgnomeprintui')
+options=('!libtool')
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver%.*}/$pkgname-$pkgver.tar.bz2
+ gnome-desktop-sharp-lib-target.patch)
+md5sums=('4bc990900bb318b2ba0b0e7998bb47d1'
+ '980cd3adf5e745f4caee0a172a51dcc3')
+
+build() {
+ # get rid of that .wapi errors; thanks to brice
+ export MONO_SHARED_DIR="$srcdir/wapi"
+ mkdir -p "$MONO_SHARED_DIR"
+
+ cd "$srcdir/$pkgname-$pkgver"
+ patch -Np1 -i $srcdir/gnome-desktop-sharp-lib-target.patch
+ ./configure --prefix=/usr --sysconfdir=/etc
+ make
+}
+
+package() {
+ cd "$srcdir/$pkgname-$pkgver"
+ make GACUTIL="/usr/bin/gacutil /root ${pkgdir}/usr/lib" \
+ DESTDIR="$pkgdir" install
+}
diff --git a/testing/gnome-desktop-sharp/gnome-desktop-sharp-lib-target.patch b/testing/gnome-desktop-sharp/gnome-desktop-sharp-lib-target.patch
new file mode 100644
index 000000000..3f0ea4933
--- /dev/null
+++ b/testing/gnome-desktop-sharp/gnome-desktop-sharp-lib-target.patch
@@ -0,0 +1,9 @@
+--- gnome-desktop-sharp-2.26.0/gnomedesktop/gnomedesktop-sharp.dll.config.in.false 2009-02-23 19:01:27.000000000 +0100
++++ gnome-desktop-sharp-2.26.0/gnomedesktop/gnomedesktop-sharp.dll.config.in 2010-02-11 15:59:36.000000000 +0100
+@@ -3,5 +3,5 @@
+ <dllmap dll="libgobject-2.0-0.dll" target="libgobject-2.0@LIB_PREFIX@.0@LIB_SUFFIX@"/>
+ <dllmap dll="libgthread-2.0-0.dll" target="libgthread-2.0@LIB_PREFIX@.0@LIB_SUFFIX@"/>
+ <dllmap dll="libgtk-win32-2.0-0.dll" target="libgtk-x11-2.0@LIB_PREFIX@.0@LIB_SUFFIX@"/>
+- <dllmap dll="gnome-desktop-2" target="libgnome-desktop-2@LIB_PREFIX@.11@LIB_SUFFIX@"/>
++ <dllmap dll="gnome-desktop-2" target="libgnome-desktop-2@LIB_PREFIX@.17@LIB_SUFFIX@"/>
+ </configuration>
diff --git a/testing/gnome-desktop2/PKGBUILD b/testing/gnome-desktop2/PKGBUILD
new file mode 100644
index 000000000..3829d54f7
--- /dev/null
+++ b/testing/gnome-desktop2/PKGBUILD
@@ -0,0 +1,32 @@
+# $Id: PKGBUILD 121039 2011-04-28 07:31:32Z heftig $
+# Maintainer: Jan "heftig" Steffens <jan.steffens@gmail.com>
+# Contributor: Jan de Groot <jan@archlinux.org>
+
+_pkgname=gnome-desktop
+pkgname=${_pkgname}2
+pkgver=2.32.1
+pkgrel=1
+pkgdesc="The GNOME Desktop"
+arch=(i686 x86_64)
+license=(GPL LGPL)
+depends=(gconf gtk2 startup-notification)
+makedepends=(gnome-doc-utils intltool)
+url="http://www.gnome.org"
+options=(!libtool !emptydirs)
+source=(http://ftp.gnome.org/pub/gnome/sources/$_pkgname/${pkgver%.*}/$_pkgname-$pkgver.tar.bz2)
+sha256sums=('55cbecf67efe1fa1e57ac966520a7c46d799c8ba3c652a1219f60cafccb3739d')
+
+build() {
+ cd "$srcdir/$_pkgname-$pkgver"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --localstatedir=/var --disable-static \
+ --with-gnome-distributor="Archlinux" \
+ --disable-scrollkeeper \
+ --disable-gnome-about --disable-desktop-docs
+ make
+}
+
+package() {
+ cd "$srcdir/$_pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
diff --git a/testing/libgcrypt/PKGBUILD b/testing/libgcrypt/PKGBUILD
new file mode 100644
index 000000000..2ccdf36fd
--- /dev/null
+++ b/testing/libgcrypt/PKGBUILD
@@ -0,0 +1,40 @@
+# $Id: PKGBUILD 121250 2011-04-29 21:23:37Z andyrtr $
+# Maintainer: Andreas Radke <andyrtr@archlinux.org>
+
+pkgname=libgcrypt
+pkgver=1.4.6
+pkgrel=3
+pkgdesc="a general purpose crypto library based on the code used"
+arch=(i686 x86_64)
+url="http://www.gnupg.org"
+license=('LGPL')
+depends=('libgpg-error>=1.9')
+options=('!libtool' '!emptydirs')
+install=$pkgname.install
+source=(ftp://ftp.gnupg.org/gcrypt/${pkgname}/${pkgname}-${pkgver}.tar.bz2
+ #ftp://ftp.franken.de/pub/crypt/mirror/ftp.gnupg.org/gcrypt/libgcrypt/${pkgname}-${pkgver}.tar.bz2
+)
+md5sums=('dbf99425a4fe9217c84ce3a35d938634')
+
+build() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ ./configure --prefix=/usr \
+ --disable-static \
+ --disable-padlock-support
+ make
+}
+
+check() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make check
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-${pkgver}
+ make DESTDIR=${pkgdir} install
+
+ # Move dynamic libraries to /lib
+ install -d -m755 "${pkgdir}"/lib/
+ mv "${pkgdir}"/usr/lib/libgcrypt.so* "${pkgdir}"/lib/
+ ln -sf /lib/libgcrypt.so "${pkgdir}"/usr/lib/libgcrypt.so
+}
diff --git a/testing/libgcrypt/libgcrypt.install b/testing/libgcrypt/libgcrypt.install
new file mode 100644
index 000000000..83e0dcb27
--- /dev/null
+++ b/testing/libgcrypt/libgcrypt.install
@@ -0,0 +1,20 @@
+infodir=/usr/share/info
+filelist=(gcrypt.info.gz)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file $infodir/dir 2> /dev/null
+ done
+}
diff --git a/testing/libwebkit/PKGBUILD b/testing/libwebkit/PKGBUILD
index 6f01c2174..d2b541f1e 100644
--- a/testing/libwebkit/PKGBUILD
+++ b/testing/libwebkit/PKGBUILD
@@ -1,23 +1,25 @@
-# $Id: PKGBUILD 116332 2011-03-22 22:04:47Z ibiru $
+# $Id: PKGBUILD 121025 2011-04-27 21:44:28Z ibiru $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase=libwebkit
pkgname=(libwebkit libwebkit3)
-pkgver=1.3.13
+pkgver=1.4.0
pkgrel=1
pkgdesc="An opensource web content engine"
arch=('i686' 'x86_64' 'mips64el')
url="http://webkitgtk.org/"
license=('custom')
-depends=('libxt' 'libxslt' 'sqlite3' 'icu>=4.6' 'gstreamer0.10-base' 'libsoup' 'enchant')
+depends=('libxt' 'libxslt' 'sqlite3' 'icu' 'gstreamer0.10-base' 'libsoup' 'enchant')
makedepends=('gperf' 'gtk-doc' 'gobject-introspection' 'python2' 'gtk2' 'gtk3')
options=('!libtool')
install=libwebkit.install
-source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz)
-md5sums=('984adaafac545a89c24351fd4dbd743c')
+source=(http://webkitgtk.org/webkit-${pkgver}.tar.gz gcc46.patch)
+md5sums=('10c969db3b5484c71df1aa9a338377ff'
+ '970a2fa91b9827dff8e9b9edb4867701')
build() {
cd "${srcdir}/webkit-${pkgver}"
+ patch -Np1 -i "${srcdir}/gcc46.patch"
mkdir build-gtk{2,3}
( cd build-gtk2 && _build --with-gtk=2.0 )
@@ -26,10 +28,9 @@ build() {
_build() {
PYTHON=/usr/bin/python2 ../configure --prefix=/usr \
- --enable-video --enable-introspection \
+ --enable-introspection \
--with-font-backend=freetype --enable-gtk-doc \
- --enable-jit --with-unicode-backend=icu \
- --enable-3d-transforms --enable-mathml \
+ --with-unicode-backend=icu \
--enable-spellcheck "$@"
make all stamp-po
}
diff --git a/testing/libwebkit/gcc46.patch b/testing/libwebkit/gcc46.patch
new file mode 100644
index 000000000..befd892d4
--- /dev/null
+++ b/testing/libwebkit/gcc46.patch
@@ -0,0 +1,11 @@
+Index: trunk/Source/WebCore/dom/make_names.pl
+===================================================================
+--- trunk/Source/WebCore/dom/make_names.pl (revision 73989)
++++ trunk/Source/WebCore/dom/make_names.pl (revision 84123)
+@@ -66,5 +66,5 @@
+ $gccLocation = "/usr/bin/gcc";
+ }
+-my $preprocessor = $gccLocation . " -E -P -x c++";
++my $preprocessor = $gccLocation . " -E -x c++";
+
+ GetOptions(
diff --git a/testing/mesa/PKGBUILD b/testing/mesa/PKGBUILD
index b9ddd753a..b2c0db5bd 100644
--- a/testing/mesa/PKGBUILD
+++ b/testing/mesa/PKGBUILD
@@ -1,37 +1,32 @@
-# $Id: PKGBUILD 119610 2011-04-12 16:23:12Z andyrtr $
+# $Id: PKGBUILD 121126 2011-04-29 05:00:59Z andyrtr $
# Maintainer: Jan de Groot <jgc@archlinux.org>
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgbase=mesa
-pkgname=('mesa' 'libgl' 'libgles' 'libegl' 'sis-dri')
+pkgname=('mesa' 'libgl' 'libgles' 'libegl' 'sis-dri') # 'llvm-dri')
_git=true
#_git=false
if [ "${_git}" = "true" ]; then
- pkgver=7.10.99.git20110412
+ pkgver=7.10.99.git20110429
else
pkgver=7.10.2
fi
pkgrel=1
arch=('i686' 'x86_64' 'mips64el')
makedepends=('glproto>=1.4.12' 'pkgconfig' 'libdrm>=2.4.25' 'libxxf86vm>=1.1.1' 'libxdamage>=1.1.3' 'expat>=2.0.1' 'libx11>=1.4.3' 'libxt>=1.1.1'
- 'gcc-libs>=4.5' 'dri2proto=2.3' 'python2' 'libxml2' 'imake')
+ 'gcc-libs>=4.5' 'dri2proto=2.3' 'python2' 'libxml2' 'imake' 'llvm')
url="http://mesa3d.sourceforge.net"
license=('custom')
source=(LICENSE gnome-shell-shader-fix.patch nouveau-fix-header.patch mesa-7.5-mips-wmb.patch)
if [ "${_git}" = "true" ]; then
- # mesa git shot from 7.11 branch - see for state: http://cgit.freedesktop.org/mesa/mesa/commit/?id=f05751aa2af1a8ec83c2d110385aab1b7e735238
- source=(${source[@]} 'ftp://ftp.archlinux.org/other/mesa/mesa-f05751aa2af1a8ec83c2d110385aab1b7e735238.tar.bz2')
+ # mesa git shot from 7.11 branch - see for state: http://cgit.freedesktop.org/mesa/mesa/commit/?id=608a4a17feea9fba2812d4e5c01dd6dbadc5d6e0
+ source=(${source[@]} 'ftp://ftp.archlinux.org/other/mesa/mesa-608a4a17feea9fba2812d4e5c01dd6dbadc5d6e0.tar.bz2')
else
source=(${source[@]} "ftp://ftp.freedesktop.org/pub/mesa/${pkgver}/MesaLib-${pkgver}.tar.bz2"
)
fi
-md5sums=('5c65a0fe315dd347e09b1f2826a1df5a'
- '3ec78f340f9387abd7a37b195e764cbf'
- '67c87b77cc2236b52a3b47dad3fbb5d4'
- '56d8862d1155f7e8054f9aa7f93ebebc'
- 'efe8da4d80c2a5d32a800770b8ce5dfa')
build() {
if [ "${_git}" = "true" ]; then
@@ -55,15 +50,22 @@ if [ "${_git}" = "true" ]; then
./autogen.sh --prefix=/usr \
--with-dri-driverdir=/usr/lib/xorg/modules/dri \
--with-dri-drivers=sis \
+ --enable-gallium-llvm \
--enable-glx-tls \
--with-driver=dri \
--enable-xcb \
- --with-state-trackers=dri,glx \
+ --with-state-trackers=dri,glx,egl \
--disable-glut \
--enable-gles1 \
--enable-gles2 \
- --enable-egl \
- --disable-gallium-egl
+ --enable-egl
+ # --enable-gallium-svga \
+
+ # --enable-texture-float (enable floating-point textures and renderbuffers) - http://www.phoronix.com/scan.php?page=news_item&px=OTMzMg
+ #The source code to implement ARB_texture_float extension is included and can be toggled on at compile time only by those who purchased a license from SGI, or are in a country where the patent does not apply.
+
+ #--enable-shared-dricore - http://bugs.gentoo.org/show_bug.cgi?id=357177
+
else
./configure --prefix=/usr \
--with-dri-driverdir=/usr/lib/xorg/modules/dri \
@@ -140,7 +142,8 @@ package_libegl() {
pkgdesc="Mesa libEGL libraries and headers"
if [ "${_git}" = "true" ]; then
- cd ${srcdir}/mesa-*
+ cd ${srcdir}/mesa-*
+ make -C src/gallium/targets/egl DESTDIR="${pkgdir}" install
else
cd "${srcdir}/Mesa-${pkgver}"
fi
@@ -166,6 +169,7 @@ fi
install -m755 -d "${pkgdir}/usr/share/licenses/libegl"
install -m644 "${srcdir}/LICENSE" "${pkgdir}/usr/share/licenses/libegl/"
}
+
package_mesa() {
depends=('libgl' 'libx11>=1.4.3' 'libxt>=1.1.1' 'gcc-libs>=4.5' 'dri2proto=2.3' 'libdrm>=2.4.25' 'glproto>=1.4.12')
optdepends=('opengl-man-pages: for the OpenGL API man pages')
@@ -206,3 +210,22 @@ if [ "${_git}" = "true" ]; then
fi
make -C sis DESTDIR="${pkgdir}" install
}
+
+#package_llvm-dri() {
+# depends=("libgl=${pkgver}")
+# pkgdesc="Mesa common LLVM support"
+
+#if [ "${_git}" = "true" ]; then
+# cd ${srcdir}/mesa-*/src/gallium
+# else
+# cd "${srcdir}/Mesa-${pkgver}/src/gallium"
+#fi
+
+ # gallium llvmpipe
+#if [ "${_git}" = "true" ]; then
+# make -C drivers/llvmpipe DESTDIR="${pkgdir}" install
+# #make -C targets/dri-swrast DESTDIR="${pkgdir}" install
+# else
+# make -C ${srcdir}/Mesa-${pkgver}/src/gallium/targets/dri-nouveau DESTDIR="${pkgdir}" install
+#fi
+#}
diff --git a/testing/rasqal/PKGBUILD b/testing/rasqal/PKGBUILD
index d4b8915a8..5ada50032 100644
--- a/testing/rasqal/PKGBUILD
+++ b/testing/rasqal/PKGBUILD
@@ -1,25 +1,27 @@
-# $Id: PKGBUILD 110912 2011-02-23 06:19:55Z andyrtr $
+# $Id: PKGBUILD 120960 2011-04-27 19:27:24Z andrea $
# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Contributor: Lawrence Lee <valheru@facticius.net>
pkgname=rasqal
-pkgver=0.9.25
+epoch=1
+pkgver=0.9.21
pkgrel=1
-pkgdesc="a free C library that handles Resource Description Framework (RDF) query syntaxes, query construction and query execution returning result bindings"
+pkgdesc="A free C library that handles Resource Description Framework (RDF) query syntaxes, query construction and query execution returning result bindings"
url="http://librdf.org/rasqal"
license=('GPL' 'LGPL')
arch=('i686' 'x86_64' 'mips64el')
-depends=('raptor>=2.0.0' 'mpfr')
+depends=('raptor1' 'mpfr')
options=('!libtool')
+replaces=('rasqal-compat')
+conflicts=('rasqal-compat')
source=(http://download.librdf.org/source/${pkgname}-${pkgver}.tar.gz)
-md5sums=('ee12d7ad59c581eb65db89c851672c0a')
+md5sums=('55b67ec92a059ef8979d46486b00a032')
build() {
cd ${srcdir}/${pkgname}-${pkgver}
./configure --prefix=/usr \
--disable-static \
- --enable-release \
- --with-raptor=system
+ --enable-release
make
}
diff --git a/testing/redland/PKGBUILD b/testing/redland/PKGBUILD
index 97add6534..02ae91e1b 100644
--- a/testing/redland/PKGBUILD
+++ b/testing/redland/PKGBUILD
@@ -1,19 +1,20 @@
-# $Id: PKGBUILD 110595 2011-02-20 10:39:16Z andyrtr $
+# $Id: PKGBUILD 120965 2011-04-27 19:29:40Z andrea $
# Maintainer: AndyRTR <andyrtr@archlinux.org>
# Contributor: Francois Charette <francois.archlinux.org>
pkgbase=redland
+epoch=1
pkgname=('redland' 'redland-storage-mysql' 'redland-storage-postgresql' 'redland-storage-virtuoso' 'redland-storage-sqlite')
-pkgver=1.0.13
+pkgver=1.0.12
pkgrel=1
url="http://librdf.org/"
license=("GPL")
arch=('i686' 'x86_64' 'mips64el')
-makedepends=('rasqal>=0.9.24' 'raptor>=2.0.0' 'db>=5.1' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3')
+makedepends=('rasqal>=0.9.21' 'raptor1' 'db>=5.1' 'postgresql-libs' 'libmysqlclient' 'unixodbc' 'sqlite3')
options=('!libtool')
source=(http://download.librdf.org/source/$pkgname-$pkgver.tar.gz
- rpath.diff)
-md5sums=('96c15f36f842ad7e1c9d225e4ca97b68'
+ rpath.diff)
+md5sums=('40f37a5ad97fdfbf984f78dcea0c6115'
'acc85e784f01a656bd56777f95880787')
build() {
@@ -33,9 +34,11 @@ build() {
package_redland() {
pkgdesc="Library that provides a high-level interface to RDF data"
- depends=('rasqal>=0.9.24' 'raptor>=2.0.0' 'libtool')
+ depends=('rasqal>=0.9.21' 'raptor1' 'libtool')
+ replaces=('redland-compat' 'redland-compat-devel')
+ conflicts=('redland-compat' 'redland-compat-devel')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
make DESTDIR=${pkgdir} install
rm -rf ${pkgdir}/usr/lib/redland
}
@@ -44,7 +47,7 @@ package_redland-storage-mysql() {
pkgdesc="MySQL storage support for Redland"
depends=('redland' 'libmysqlclient')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_mysql.so ${pkgdir}/usr/lib/redland/librdf_storage_mysql.so
}
@@ -53,7 +56,7 @@ package_redland-storage-postgresql() {
pkgdesc="PostgreSQL storage support for Redland"
depends=('redland' 'postgresql-libs')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_postgresql.so ${pkgdir}/usr/lib/redland/
}
@@ -62,7 +65,7 @@ package_redland-storage-virtuoso() {
pkgdesc="Virtuoso storage support for Redland"
depends=('redland' 'unixodbc' 'db')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_virtuoso.so ${pkgdir}/usr/lib/redland/
}
@@ -71,7 +74,7 @@ package_redland-storage-sqlite() {
pkgdesc="SQLite storage support for Redland"
depends=('redland' 'sqlite3' 'db')
- cd ${srcdir}/${pkgname}-${pkgver}
+ cd ${srcdir}/${pkgbase}-${pkgver}
install -dm755 ${pkgdir}/usr/lib/redland
install -m755 src/.libs/librdf_storage_sqlite.so ${pkgdir}/usr/lib/redland/
}
diff --git a/testing/slv2/PKGBUILD b/testing/slv2/PKGBUILD
index 571d39503..4b01c3dae 100644
--- a/testing/slv2/PKGBUILD
+++ b/testing/slv2/PKGBUILD
@@ -1,15 +1,15 @@
-# $Id: PKGBUILD 110735 2011-02-21 22:14:42Z schiv $
+# $Id: PKGBUILD 120979 2011-04-27 19:40:32Z andrea $
# Maintainer: Ray Rashif <schiv@archlinux.org>
# Contributor: Leslie P. Polzer <polzer@stardawn.org>
pkgname=slv2
pkgver=0.6.6
-pkgrel=3
+pkgrel=4
pkgdesc="Library for LV2 hosts"
arch=('i686' 'x86_64' 'mips64el')
url="http://drobilla.net/software/slv2"
license=('GPL')
-depends=('redland>=1.0.13' 'lv2core' 'jack')
+depends=('redland>=1.0.12' 'lv2core' 'jack')
makedepends=('python2')
install=$pkgname.install
changelog=$pkgname.changelog
diff --git a/testing/soprano/PKGBUILD b/testing/soprano/PKGBUILD
index a3fd9aa39..01ab62317 100644
--- a/testing/soprano/PKGBUILD
+++ b/testing/soprano/PKGBUILD
@@ -1,16 +1,16 @@
-# $Id: PKGBUILD 120527 2011-04-24 17:41:42Z andyrtr $
+# $Id: PKGBUILD 120970 2011-04-27 19:34:01Z andrea $
# Maintainer: Andrea Scarpino <andrea@archlinux.org>
# Contributor: Tobias Powalowski <tpowa@archlinux.org>
pkgname=soprano
pkgver=2.6.0
-pkgrel=3
+pkgrel=4
pkgdesc='A library which provides a highly usable object-oriented C++/Qt4 framework for RDF data'
arch=('i686' 'x86_64' 'mips64el')
url='http://soprano.sourceforge.net/'
license=('GPL' 'LGPL')
-depends=('qt' 'clucene' 'redland-compat' 'libiodbc' 'raptor1')
-makedepends=('cmake' 'openjdk6' 'doxygen' 'redland-compat-devel>=>=1.0.12-3' 'rasqal-compat-devel>=>=0.9.21-2')
+depends=('qt' 'clucene' 'redland-storage-virtuoso' 'libiodbc')
+makedepends=('cmake' 'openjdk6' 'doxygen')
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-${pkgver}.tar.bz2")
md5sums=('03ae49e87c6ec99e57d0433c2650846f')
diff --git a/testing/tzdata/PKGBUILD b/testing/tzdata/PKGBUILD
index c4f0f1267..b09c6c637 100644
--- a/testing/tzdata/PKGBUILD
+++ b/testing/tzdata/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 120332 2011-04-22 11:15:12Z andyrtr $
+# $Id: PKGBUILD 121182 2011-04-29 06:58:28Z andyrtr $
# Maintainer: Andreas Radke <andyrtr@archlinux.org>
pkgname=tzdata
-pkgver=2011f
+pkgver=2011g
pkgrel=1
-_tzcode=2011e
-_tzdata=2011f
+_tzcode=2011g
+_tzdata=2011g
pkgdesc="Sources for time zone and daylight saving time data"
arch=('i686' 'x86_64')
url="http://www.twinsun.com/tz/tz-link.htm"
@@ -17,8 +17,8 @@ options=('!emptydirs')
source=(ftp://elsie.nci.nih.gov/pub/tzcode${_tzcode}.tar.gz \
ftp://elsie.nci.nih.gov/pub/${pkgname}${_tzdata}.tar.gz \
Makefile.patch)
-md5sums=('fbfc05dbf9ebcfe7c4bba18549870173'
- 'cc8136284ae1e6c720a18e0f080242e0'
+md5sums=('ecb564279b28c5b184421c525d997d6c'
+ 'a068c27e7e426fdb12ab0c88506df20d'
'a64ed97d1fc03c66ee8612c0d9f40507')
build() {