From 6098078f0651737a40f8e78f6520985cd5fe903d Mon Sep 17 00:00:00 2001 From: Timothy Redaelli Date: Sun, 22 Jan 2012 12:09:12 +0000 Subject: [PATCH] updated on Sun Jan 22 12:09:12 UTC 2012 --- amaya/PKGBUILD | 32 +-- amaya/amaya-fix-amaya-wxfile.patch | 13 - amaya/amaya-fix-thotlib-wxfile.patch | 16 -- amok-exif-sorter/PKGBUILD | 30 ++ amok-exif-sorter/amok-exif-sorter.desktop | 12 + amok-exif-sorter/amok-exif-sorter.png | Bin 0 -> 43961 bytes conkygooglecalendar-bzr/PKGBUILD | 6 +- gnash-git/PKGBUILD | 32 +-- gnash-git/gnash-git.install | 4 + gtk-youtube-viewer/PKGBUILD | 2 +- libreoffice-extension-lightproof-ru/Lightproof_.py | 314 +++++++++++++++++++++ .../OptionsDialog.xcu | 40 +++ libreoffice-extension-lightproof-ru/PKGBUILD | 24 +- .../lightproof_ru_RU.py | 1 + .../ru_RU_ru_RU.properties | 15 + melted-git/PKGBUILD | 55 ++++ ntm/PKGBUILD | 22 +- ntm/ntm.sh | 4 + pan-git/PKGBUILD | 8 +- perl-class-load-xs/PKGBUILD | 40 ++- perl-eval-closure/PKGBUILD | 36 ++- python-aosd/PKGBUILD | 26 ++ python2-libquvi-git/PKGBUILD | 2 +- qmidiarp/PKGBUILD | 6 +- reprepro/PKGBUILD | 6 +- ruby-childprocess/PKGBUILD | 19 ++ ruby-journey/PKGBUILD | 20 ++ ruby-json-1.5/PKGBUILD | 29 ++ ruby-log4r/PKGBUILD | 19 ++ ruby-net-ssh-2.2/PKGBUILD | 20 ++ soundcli/PKGBUILD | 8 +- tragtor/PKGBUILD | 17 +- vagrant/PKGBUILD | 15 +- wmfs2-git/PKGBUILD | 2 +- 34 files changed, 767 insertions(+), 128 deletions(-) delete mode 100644 amaya/amaya-fix-amaya-wxfile.patch delete mode 100644 amaya/amaya-fix-thotlib-wxfile.patch create mode 100644 amok-exif-sorter/PKGBUILD create mode 100644 amok-exif-sorter/amok-exif-sorter.desktop create mode 100644 amok-exif-sorter/amok-exif-sorter.png create mode 100644 gnash-git/gnash-git.install create mode 100644 libreoffice-extension-lightproof-ru/Lightproof_.py create mode 100644 libreoffice-extension-lightproof-ru/OptionsDialog.xcu create mode 100644 libreoffice-extension-lightproof-ru/lightproof_ru_RU.py create mode 100644 libreoffice-extension-lightproof-ru/ru_RU_ru_RU.properties create mode 100644 melted-git/PKGBUILD create mode 100644 ntm/ntm.sh create mode 100644 python-aosd/PKGBUILD create mode 100644 ruby-childprocess/PKGBUILD create mode 100644 ruby-journey/PKGBUILD create mode 100644 ruby-json-1.5/PKGBUILD create mode 100644 ruby-log4r/PKGBUILD create mode 100644 ruby-net-ssh-2.2/PKGBUILD diff --git a/amaya/PKGBUILD b/amaya/PKGBUILD index a7342bcc8..a89a6b286 100644 --- a/amaya/PKGBUILD +++ b/amaya/PKGBUILD @@ -3,8 +3,8 @@ # Contributor: Dalius # Contributor: Sergej Pupykin pkgname=amaya -pkgver=11.3.1 -pkgrel=13 +pkgver=11.4.4 +pkgrel=1 pkgdesc="W3C's WYSIWYG HTML Editor" arch=('i686' 'x86_64') url="http://www.w3.org/Amaya/" @@ -12,31 +12,24 @@ license=('W3C') depends=('wxgtk' 'mesa' 'raptor1') options=('!makeflags') install=$pkgname.install -source=(amaya-fix-amaya-wxfile.patch \ - amaya-fix-thotlib-png14.patch \ - amaya-fix-thotlib-wxfile.patch \ - amaya-splitmode.patch \ +source=(amaya-fix-thotlib-png14.patch \ amaya-wakeupidle.patch \ + amaya-splitmode.patch \ amaya-wxyield.patch \ explicite_linking.patch \ - http://www.w3.org/Amaya/Distribution/$pkgname-sources-$pkgver.tgz) -md5sums=('4e79692553e88de93a3f56c40dd442dc' - '0418f3a614e6d0a8e27ae038c78d8c4d' - '6501c87f7ab45e6c1a3ef214a6ed583e' - 'bc42d4b3ff7b43c8d0f7955dd1498b01' + ftp://ftp.w3.org/pub/$pkgname/$pkgname-sources-$pkgver.tgz) +md5sums=('0418f3a614e6d0a8e27ae038c78d8c4d' '32347b32aded742b705a2038416f74de' + 'bc42d4b3ff7b43c8d0f7955dd1498b01' 'c42175f9cc9e90277547828b9cf6a92a' '55687c985a1cab4a5d83f5aae9d06e34' - '4a92b4e043fbd1add5b1e17fb7ed8755') + 'e8072c7b1d06b983951c56e9f51fbacf') build() { cd $srcdir/Amaya$pkgver - - patch -p1 < $srcdir/amaya-fix-amaya-wxfile.patch - patch -p1 < $srcdir/amaya-fix-thotlib-png14.patch - patch -p1 < $srcdir/amaya-fix-thotlib-wxfile.patch + patch -p1 < $srcdir/amaya-fix-thotlib-png14.patch + patch -p1 < $srcdir/amaya-wakeupidle.patch patch -p1 < $srcdir/amaya-splitmode.patch - patch -p1 < $srcdir/amaya-wakeupidle.patch patch -p1 < $srcdir/amaya-wxyield.patch patch -p1 < $srcdir/explicite_linking.patch @@ -55,9 +48,8 @@ build() { package() { cd $srcdir/Amaya$pkgver/Amaya/WX - install -d $pkgdir/usr/share/Amaya/resources/{svg,icons/16x16} + install -d $pkgdir/usr/share/Amaya/resources/{svg,icons} make prefix=$pkgdir/usr/share install install -Dm755 $pkgdir/usr/share/Amaya/wx/bin/amaya $pkgdir/usr/bin/amaya rm $pkgdir/usr/share/Amaya/wx/bin/amaya - - } +} diff --git a/amaya/amaya-fix-amaya-wxfile.patch b/amaya/amaya-fix-amaya-wxfile.patch deleted file mode 100644 index 6f5b0cf5f..000000000 --- a/amaya/amaya-fix-amaya-wxfile.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -aur Amaya11.3.1/Amaya/amaya/HTMLedit.c Amaya11.3.1.new/Amaya/amaya/HTMLedit.c ---- Amaya11.3.1/Amaya/amaya/HTMLedit.c 2009-12-09 11:11:22.000000000 +0100 -+++ Amaya11.3.1.new/Amaya/amaya/HTMLedit.c 2010-08-17 21:39:23.696495709 +0200 -@@ -1689,7 +1689,7 @@ - { - #ifdef _WX - wxString tmpFile = TtaConvMessageToWX(tempURL); -- wxFile::wxFile (tmpFile, wxFile::write); -+ wxFile (tmpFile, wxFile::write); - #endif /* _WX */ - } - } - diff --git a/amaya/amaya-fix-thotlib-wxfile.patch b/amaya/amaya-fix-thotlib-wxfile.patch deleted file mode 100644 index 537419040..000000000 --- a/amaya/amaya-fix-thotlib-wxfile.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff -aur Amaya11.3.1/Amaya/thotlib/base/platform.c Amaya11.3.1.new/Amaya/thotlib/base/platform.c ---- Amaya11.3.1/Amaya/thotlib/base/platform.c 2009-12-02 12:23:07.000000000 +0100 -+++ Amaya11.3.1.new/Amaya/thotlib/base/platform.c 2010-08-17 21:37:25.699840595 +0200 -@@ -329,9 +329,9 @@ - { - tmp = (char *)TtaGetMemory (strlen(targetFileName)+10); - sprintf (tmp, "%s.tmp", targetFileName); -- wxFile::wxFile (targetFile, wxFile::write); -+ wxFile (targetFile, wxFile::write); - tmpFile = TtaConvMessageToWX(tmp); -- wxFile::wxFile (tmpFile, wxFile::write); -+ wxFile (tmpFile, wxFile::write); - result = wxFile::Exists(targetFile); - if (result) - result = wxConcatFiles (tmpFile, sourceFile, targetFile); - diff --git a/amok-exif-sorter/PKGBUILD b/amok-exif-sorter/PKGBUILD new file mode 100644 index 000000000..1209092b0 --- /dev/null +++ b/amok-exif-sorter/PKGBUILD @@ -0,0 +1,30 @@ +# Author: Andreas Krist +# Contributor: Xi0N +pkgname=amok-exif-sorter +pkgver=2.56 +pkgrel=1 +pkgdesc="AmoK Exif Sorter is the easy but powerful solution for renaming your photos using EXIF data" +arch=(i686 x86_64) +url="http://www.amok.am/en/freeware/amok_exif_sorter/" +license=(FREEWARE) +depends=('java-runtime') +noextract=(${source[@]##*/}) + +_source_arch="32Bit" +[ "$CARCH" = "x86_64" ] && _source_arch="64Bit" + +md5sums=('144f34d48eedf82e93b42426a5c01e50' + '75dfb58bc9a737255e313de70b8326bf' + 'cbae880ef6fce7d00f1a928679c3d252') +[ "$CARCH" = "x86_64" ] && md5sums[0]='084587577652e01835fcc306f3a55773' + +source=("http://www.amok.am/files/releases/AmoK_Exif_Sorter_v${pkgver}_(Linux_${_source_arch}).tar.bz2" + "amok-exif-sorter.desktop" + "amok-exif-sorter.png") + +build() { + mkdir -p $pkgdir/opt/AmokExifSorter/ + install -D amok-exif-sorter.png $pkgdir/opt/AmokExifSorter/ + install -D amok-exif-sorter.desktop $pkgdir/usr/share/applications/amok-exif-sorter.desktop + cp -rp $srcdir/* $pkgdir/opt/AmokExifSorter/ +} diff --git a/amok-exif-sorter/amok-exif-sorter.desktop b/amok-exif-sorter/amok-exif-sorter.desktop new file mode 100644 index 000000000..0348b4900 --- /dev/null +++ b/amok-exif-sorter/amok-exif-sorter.desktop @@ -0,0 +1,12 @@ +#!/usr/bin/env xdg-open + +[Desktop Entry] +Encoding=UTF-8 +Version=1.0 +Type=Application +Terminal=false +Path=/opt/AmokExifSorter/ +Exec="/opt/AmokExifSorter/Exifsorter.sh" +Name=Amok Exif Sorter +Icon=/opt/AmokExifSorter/amok-exif-sorter.png +Categories=Application;Graphics; diff --git a/amok-exif-sorter/amok-exif-sorter.png b/amok-exif-sorter/amok-exif-sorter.png new file mode 100644 index 0000000000000000000000000000000000000000..e7a90552d923a6eb4a5f62059e4f08d1d73b4123 GIT binary patch literal 43961 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
rO|z7 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 literal 0 HcwPel00001 diff --git a/conkygooglecalendar-bzr/PKGBUILD b/conkygooglecalendar-bzr/PKGBUILD index a1de32152..ae073a86b 100644 --- a/conkygooglecalendar-bzr/PKGBUILD +++ b/conkygooglecalendar-bzr/PKGBUILD @@ -7,7 +7,7 @@ pkgdesc="Provides Google calendar info, for use in Conky." arch=('i686' 'x86_64') url="https://code.launchpad.net/~conky-companions/+junk/conkygooglecalendar" license=('GPL3') -depends=('python2' 'python-gdata' 'python-keyring' 'python-dateutil') +depends=('python2' 'python-gdata' 'python-keyring' 'python2-dateutil') makedepends=('bzr') install=$pkgname.install source=() @@ -28,8 +28,8 @@ build() { cp -r ./${_bzrmod} ./${_bzrmod}-build cd ./${_bzrmod}-build - python setup.py build || return 1 - python setup.py install --root=$pkgdir || return 1 + python2 setup.py build || return 1 + python2 setup.py install --root=$pkgdir || return 1 install -D -m644 README $pkgdir/usr/share/conkygooglecalendar/README || return 1 } diff --git a/gnash-git/PKGBUILD b/gnash-git/PKGBUILD index 5db5aa7d4..98efcecfe 100644 --- a/gnash-git/PKGBUILD +++ b/gnash-git/PKGBUILD @@ -1,28 +1,27 @@ -# Contributor: Matthew Bauer +# Maintainer: Christoph Vigano +# Contributor: Matthew Bauer # Contributor: flamelab -# Contributor: Bernardo Barros +# Contributor: Bernardo Barros pkgname=gnash-git -pkgver=20110526 +pkgver=20120122 pkgrel=1 -pkgdesc="Gnash is an open source flashplayer." +pkgdesc="An open source flashplayer - git version" arch=('i686' 'x86_64') url="http://www.gnu.org/software/gnash/" license=('GPL3') -depends=('agg' 'atk' 'libxml2' 'curl' 'libtool' 'ffmpeg' 'boost' 'pango' 'libxi' 'libva' 'libdca' 'speex' 'gstreamer0.10-base' 'gstreamer0.10-base boost-libs' 'gtk2') -#ffmpeg-svn libdc1394 -makedepends=(libldap sdl libjpeg libpng - fontconfig libva libxinerama - libldap xulrunner git) -provides=(gnash-common gnash-gtk) -conflicts=(gnash-common gnash-gtk gnash-bzr) -replaces=(gnash-common gnash-gtk) +depends=('agg' 'atk' 'libxml2' 'curl' 'libtool' 'ffmpeg' 'pango' 'libxi' 'libva' 'libdca' 'speex' 'gstreamer0.10-base' 'boost-libs' 'gtk2' 'giflib' 'hicolor-icon-theme' 'desktop-file-utils') +makedepends=('libldap' 'sdl' 'libjpeg' 'libpng' + 'fontconfig' 'libva' 'libxinerama' + 'libldap' 'xulrunner' 'git') +provides=('gnash-common' 'gnash-gtk') +conflicts=('gnash-common' 'gnash-gtk' 'gnash-bzr') +install='gnash-git.install' _gitroot='git://git.savannah.gnu.org/gnash.git' _gitname='gnash' build() { - cd "$srcdir" msg "Connecting to GIT server...." if [ -d $_gitname ] ; then @@ -35,9 +34,10 @@ build() { msg "GIT checkout done or server timeout" msg "Starting make..." - rm -rf "$srcdir/$_gitname-build" - git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build" - cd "$srcdir/$_gitname-build" + rm -rf "$srcdir"/$_gitname-build + mkdir "$srcdir"/$_gitname-build + cd "$srcdir/"$_gitname && ls -A1 --indicator-style=none | grep -v "^.git" | xargs -d '\n' cp -r -t ../$_gitname-build # do not copy over the .git folder + cd "$srcdir"/$_gitname-build sh autogen.sh diff --git a/gnash-git/gnash-git.install b/gnash-git/gnash-git.install new file mode 100644 index 000000000..ab821864d --- /dev/null +++ b/gnash-git/gnash-git.install @@ -0,0 +1,4 @@ +post_install() { + update-desktop-database + gtk-update-icon-cache +} diff --git a/gtk-youtube-viewer/PKGBUILD b/gtk-youtube-viewer/PKGBUILD index 0f234f9fd..6bb8a3b5d 100644 --- a/gtk-youtube-viewer/PKGBUILD +++ b/gtk-youtube-viewer/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Trizen pkgname=gtk-youtube-viewer -pkgver=20120113 +pkgver=20120122 pkgrel=1 pkgdesc="Gtk2 interface for YouTube-Viewer ( http://aur.archlinux.org/packages.php?ID=37779 )" diff --git a/libreoffice-extension-lightproof-ru/Lightproof_.py b/libreoffice-extension-lightproof-ru/Lightproof_.py new file mode 100644 index 000000000..320d778b3 --- /dev/null +++ b/libreoffice-extension-lightproof-ru/Lightproof_.py @@ -0,0 +1,314 @@ +# -*- encoding: UTF-8 -*- +# Lightproof grammar checker for LibreOffice and OpenOffice.org +# http://launchpad.net/lightproof +# version 1.4.3 (2011-12-05) +# +# 2009-2011 (c) László Németh (nemeth at numbertext org), license: MPL 1.1 / GPLv3+ / LGPLv3+ + +import uno, unohelper, sys, traceback, re +from lightproof_impl_ru_RU import locales +from lightproof_impl_ru_RU import pkg +import lightproof_handler_ru_RU +from string import join + +from com.sun.star.linguistic2 import XProofreader, XSupportedLocales +from com.sun.star.linguistic2 import ProofreadingResult, SingleProofreadingError +from com.sun.star.lang import XServiceInfo, XServiceName, XServiceDisplayName +from com.sun.star.lang import Locale +from com.sun.star.text.TextMarkupType import PROOFREADING + +# loaded rules +langrule = {} +# ignored rules +ignore = {} + +# cache for morphogical analyses +analyses = {} +stems = {} +suggestions = {} + +# assign Calc functions +calcfunc = None + +# check settings +def option(lang, opt): + return lightproof_handler_ru_RU.get_option(lang.Language + "_" + lang.Country, opt) + +# filtering affix fields (ds, is, ts etc.) +def onlymorph(st): + if st != None: + st = re.sub(r"^.*(st:|po:)", r"\1", st) # keep last word part + st = re.sub(r"\b(?=[dit][sp]:)","@", st) # and its affixes + st = re.sub(r"(?" + word + "", rLoc, ()) + if not x: + return None + t = x.getAlternatives() + if not t: + t = [""] + analyses[word] = t[0] + a = analyses[word].split("")[:-1] + result = None + p = re.compile(pattern) + for i in a: + if onlyaffix: + i = onlymorph(i) + result = p.search(i) + if result: + result = result.group(0) + if not all: + return result + elif all: + return None + return result + +def morph(rLoc, word, pattern, all=True): + return _morph(rLoc, word, pattern, all, False) + +def affix(rLoc, word, pattern, all=True): + return _morph(rLoc, word, pattern, all, True) + +def spell(rLoc, word): + if word == None: + return None + return spellchecker.isValid(word, rLoc, ()) + +# get the tuple of the stem of the word or an empty array +def stem(rLoc, word): + global stems + if word == None: + return [] + if not word in stems: + x = spellchecker.spell(u"" + word + "", rLoc, ()) + if not x: + return [] + t = x.getAlternatives() + if not t: + t = [] + stems[word] = list(t) + return stems[word] + +# get the tuple of the morphological generation of a word or an empty array +def generate(rLoc, word, example): + if word == None: + return [] + x = spellchecker.spell(u"" + word + "" + example + "", rLoc, ()) + if not x: + return [] + t = x.getAlternatives() + if not t: + t = [] + return list(t) + +# get suggestions +def suggest(rLoc, word): + global suggestions + if word == None: + return word + if word not in suggestions: + x = spellchecker.spell("_" + word, rLoc, ()) + if not x: + return word + t = x.getAlternatives() + suggestions[word] = join(t, "\n") + return suggestions[word] + +# get the nth word of the input string or None +def word(s, n): + a = re.match("(?u)( [-.\w%]+){" + str(n-1) + "}( [-.\w%]+)", s) + if not a: + return None + return a.group(2)[1:] + +# get the (-)nth word of the input string or None +def wordmin(s, n): + a = re.search("(?u)([-.\w%]+ )([-.\w%]+ ){" + str(n-1) + "}$", s) + if not a: + return None + return a.group(1)[:-1] + +def calc(funcname, par): + global calcfunc + global SMGR + if calcfunc == None: + calcfunc = SMGR.createInstance( "com.sun.star.sheet.FunctionAccess") + if calcfunc == None: + return None + return calcfunc.callFunction(funcname, par) + +def proofread( nDocId, TEXT, LOCALE, nStartOfSentencePos, nSuggestedSentenceEndPos, rProperties ): + global ignore + aErrs = [] + s = TEXT[nStartOfSentencePos:nSuggestedSentenceEndPos] + for i in get_rule(LOCALE): + if i[0] and not str(i[0]) in ignore: + for m in i[0].finditer(s): + if not i[3] or eval(i[3]): + aErr = uno.createUnoStruct( "com.sun.star.linguistic2.SingleProofreadingError" ) + aErr.nErrorStart = nStartOfSentencePos + m.start(0) # nStartOfSentencePos + aErr.nErrorLength = m.end(0) - m.start(0) + aErr.nErrorType = PROOFREADING + aErr.aRuleIdentifier = str(i[0]) + iscap = (i[4] and m.group(0)[0:1].isupper()) + if i[1][0:1] == "=": + aErr.aSuggestions = tuple(cap(eval(i[1][1:]).split("\n"), iscap, LOCALE)) + else: + aErr.aSuggestions = tuple(cap(m.expand(i[1]).split("\n"), iscap, LOCALE)) + comment = i[2] + if comment[0:1] == "=": + comment = eval(comment[1:]) + aErr.aShortComment = comment.split("\n")[0] + aErr.aFullComment = comment.split("\n")[-1] + aErr.aProperties = () + aErrs = aErrs + [aErr] + return tuple(aErrs) + +def cap(a, iscap, rLoc): + if iscap: + for i in range(0, len(a)): + if a[i][0:1] == "i": + if rLoc.Language == "tr" or rLoc.Language == "az": + a[i] = u"\u0130" + a[i][1:] + elif a[i][1:2] == "j" and rLoc.Language == "nl": + a[i] = "IJ" + a[i][2:] + else: + a[i] = "I" + a[i][1:] + else: + a[i] = a[i].capitalize() + return a + +def get_rule(rLocale): + module = rLocale.Language + if rLocale.Country != "": + module = module + "_" + rLocale.Country + try: + return langrule[module] + except: + try: + module = rLocale.Language + return langrule[module] + except: + try: + d = __import__("lightproof_" + pkg) + except: + print "Error: missing language data: " + module + return None + # compile regular expressions + for i in d.dic: + try: + if re.compile("[(][?]iu[)]").match(i[0]): + i += [True] + i[0] = re.sub("[(][?]iu[)]", "(?u)", i[0]) + else: + i += [False] + i[0] = re.compile(i[0]) + except: + print "Lightproof: bad rule -- ", i[0] + i[0] = None + langrule[module] = d.dic + return langrule[module] + +class Lightproof( unohelper.Base, XProofreader, XServiceInfo, XServiceName, XServiceDisplayName, XSupportedLocales): + + def __init__( self, ctx, *args ): + global spellchecker + global SMGR + self.ctx = ctx + self.ServiceName = "com.sun.star.linguistic2.Proofreader" + self.ImplementationName = "org.openoffice.comp.pyuno.Lightproof." + pkg + self.SupportedServiceNames = (self.ServiceName, ) + self.locales = [] + for i in locales: + l = locales[i] + self.locales += [Locale(l[0], l[1], l[2])] + self.locales = tuple(self.locales) + currentContext = uno.getComponentContext() + SMGR = currentContext.ServiceManager + spellchecker = SMGR.createInstanceWithContext("com.sun.star.linguistic2.SpellChecker", currentContext) + lightproof_handler_ru_RU.load(currentContext) + + # XServiceName method implementations + def getServiceName(self): + return self.ImplementationName + + # XServiceInfo method implementations + def getImplementationName (self): + return self.ImplementationName + + def supportsService(self, ServiceName): + return (ServiceName in self.SupportedServiceNames) + + def getSupportedServiceNames (self): + return self.SupportedServiceNames + + # XSupportedLocales + def hasLocale(self, aLocale): + if aLocale in self.locales: + return True + for i in self.locales: + if (i.Country == aLocale.Country or i.Country == "") and aLocale.Language == i.Language: + return True + return False + + def getLocales(self): + return self.locales + + # XProofreader + def isSpellChecker(self): + return False + + def doProofreading(self, nDocId, rText, rLocale, nStartOfSentencePos, \ + nSuggestedSentenceEndPos, rProperties): + aRes = uno.createUnoStruct( "com.sun.star.linguistic2.ProofreadingResult" ) + aRes.aDocumentIdentifier = nDocId + aRes.aText = rText + aRes.aLocale = rLocale + aRes.nStartOfSentencePosition = nStartOfSentencePos + aRes.nStartOfNextSentencePosition = nSuggestedSentenceEndPos + l = rText[nSuggestedSentenceEndPos:nSuggestedSentenceEndPos+1] + while l == " ": + aRes.nStartOfNextSentencePosition = aRes.nStartOfNextSentencePosition + 1 + l = rText[aRes.nStartOfNextSentencePosition:aRes.nStartOfNextSentencePosition+1] + if aRes.nStartOfNextSentencePosition == nSuggestedSentenceEndPos and l!="": + aRes.nStartOfNextSentencePosition = nSuggestedSentenceEndPos + 1 + aRes.nBehindEndOfSentencePosition = aRes.nStartOfNextSentencePosition + + try: + aRes.aErrors = proofread( nDocId, rText, rLocale, \ + nStartOfSentencePos, aRes.nBehindEndOfSentencePosition, rProperties) + except: + traceback.print_exc(file=sys.stdout) + aRes.aErrors = () + aRes.aProperties = () + aRes.xProofreader = self + return aRes + + def ignoreRule(self, rid, aLocale): + global ignore + ignore[rid] = 1 + + def resetIgnoreRules(self): + global ignore + ignore = {} + + # XServiceDisplayName + def getServiceDisplayName(self, aLocale): + return "Lightproof Grammar Checker (" + pkg + ")" + +g_ImplementationHelper = unohelper.ImplementationHelper() +g_ImplementationHelper.addImplementation( Lightproof, \ + "org.openoffice.comp.pyuno.Lightproof." + pkg, + ("com.sun.star.linguistic2.Proofreader",),) + +g_ImplementationHelper.addImplementation( lightproof_handler_ru_RU.LightproofOptionsEventHandler, \ + "org.openoffice.comp.pyuno.LightproofOptionsEventHandler." + pkg, + ("com.sun.star.awt.XContainerWindowEventHandler",),) diff --git a/libreoffice-extension-lightproof-ru/OptionsDialog.xcu b/libreoffice-extension-lightproof-ru/OptionsDialog.xcu new file mode 100644 index 000000000..9032e09e5 --- /dev/null +++ b/libreoffice-extension-lightproof-ru/OptionsDialog.xcu @@ -0,0 +1,40 @@ + + + + + + + Dictionaries + Szótárak + Словари + + + + + + + org.openoffice.comp.pyuno.lightproof.oxt.ru_RU + + + + + Grammar checking (Russian) + + Проверка грамматики (Русский язык) + + + + + %origin%/ru_RU.xdl + + + + org.openoffice.comp.pyuno.LightproofOptionsEventHandler.ru_RU + + + + + + + + diff --git a/libreoffice-extension-lightproof-ru/PKGBUILD b/libreoffice-extension-lightproof-ru/PKGBUILD index e73f3b612..33787b0b6 100644 --- a/libreoffice-extension-lightproof-ru/PKGBUILD +++ b/libreoffice-extension-lightproof-ru/PKGBUILD @@ -2,7 +2,7 @@ pkgname=libreoffice-extension-lightproof-ru _pkgname=lightproof-ru_RU pkgver=0.3 -pkgrel=1 +pkgrel=4 pkgdesc="Russian grammar checker extension for LibreOffice" arch=('any') url="http://launchpad.net/lightproof" @@ -10,11 +10,27 @@ license=('LGPL') groups=('libreoffice-extensions') depends=('libreoffice-common' 'python2') makedepends=('unzip') -source=(http://www.numbertext.org/lightproof/${_pkgname}-$pkgver.oxt) -md5sums=('59aecb185ae837dd89729f22fe38144f') +source=(http://www.numbertext.org/lightproof/${_pkgname}-$pkgver.oxt + ru_RU_ru_RU.properties OptionsDialog.xcu lightproof_ru_RU.py Lightproof_.py) + +md5sums=('59aecb185ae837dd89729f22fe38144f' + '285d027c5744f5c57494d434cd084a6d' + '12ddcbb5f76efe95fe855110ae0c802b' + '2a671640b562f57c20e9fb6e3c4dca1c' + '5de5822aa694ac8ff1f54ff5708fee32') package() { - mkdir -p "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/" + install -d -m755 "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/pythonpath" + install -d -m755 "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/dialog" + install -d -m755 "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/META-INF" cp -R "$srcdir"/* "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/" + install -m 644 $srcdir/ru_RU_ru_RU.properties $pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/dialog/ru_RU_ru_RU.properties + install -m 644 $srcdir/OptionsDialog.xcu $pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/dialog/OptionsDialog.xcu + install -m 644 $srcdir/lightproof_ru_RU.py $pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/pythonpath/lightproof_ru_RU.py + install -m 644 $srcdir/Lightproof_.py $pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/Lightproof.py rm "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/${_pkgname}-$pkgver.oxt" + rm "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/OptionsDialog.xcu" + rm "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/ru_RU_ru_RU.properties" + rm "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/lightproof_ru_RU.py" + rm "$pkgdir/usr/lib/libreoffice/share/extensions/$_pkgname/Lightproof_.py" } diff --git a/libreoffice-extension-lightproof-ru/lightproof_ru_RU.py b/libreoffice-extension-lightproof-ru/lightproof_ru_RU.py new file mode 100644 index 000000000..2cd24c526 --- /dev/null +++ b/libreoffice-extension-lightproof-ru/lightproof_ru_RU.py @@ -0,0 +1 @@ +dic = [[u'(?iu)(?[a-zA-ZA-Z\u0430-\u044f\u0410-\u042f\u0410-\u042f]+)(?P[?!,:;%\u2030\u2031\u02da\u201c\u201d\u2018\u201e])(?P[a-zA-ZA-Z\u0430-\u044f\u0410-\u042f\u0410-\u042f]+)(?![-\\w\u2013\xad])', u'\\g\\g \\g', u'\u041f\u0440\u043e\u043f\u0443\u0449\u0435\u043d \u043f\u0440\u043e\u0431\u0435\u043b?', u'option(LOCALE,"space")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)[.](?P[A-Z\u0410-\u042f]+)(?![-\\w\u2013\xad])', u'\\g. \\g', u'\u041f\u0440\u043e\u043f\u0443\u0449\u0435\u043d \u043f\u0440\u043e\u0431\u0435\u043b?', u'option(LOCALE,"space")'], [u'(?iu)(?[\u041c\u043c][\u041c\u043c]|[\u0421\u0441][\u041c\u043c]|[\u041a\u043a][\u041c\u043c]|[\u0414\u0434][\u041c\u043c]|[\u0420\u0440][\u0423\u0443][\u0411\u0431]|[\u041a\u043a][\u041e\u043e][\u041f\u043f]|[\u0413\u0433][\u0420\u0440][\u041d\u043d]|[\u0422\u0442][\u042b\u044b][\u0421\u0441]|[\u0423\u0443][\u041b\u043b]|[\u041a\u043a][\u0412\u0432]|[\u041f\u043f][\u041e\u043e][\u0421\u0441]|[\u0421\u0441][\u0422\u0442]|[\u041f\u043f][\u0420\u0440]|[\u041f\u043f][\u0420\u0440][\u041e\u043e][\u0421\u0441][\u041f\u043f]|[\u0415\u0435][\u0414\u0434]|[\u042d\u044d][\u041a\u043a][\u0417\u0437]|[\u0422\u0442][\u0415\u0435][\u041b\u043b]|[\u0418\u0438][\u0421\u0441][\u041f\u043f])[ ](?![-\\w\u2013\xad])', u' \\g. ', u'\u0422\u043e\u0447\u043a\u0430 \u043f\u043e\u0441\u043b\u0435 \u0441\u043e\u043a\u0440\u0430\u0449\u0435\u043d\u0438\u0439.', u'option(LOCALE,"abbreviation")'], [u'(?iu)(?[?!,:;%\u2030\u2031\u02da\u201c\u201d\u2018\u201e])|[.]) {2,3}(\\b|$)(?![-\\w\u2013\xad])', u'\\1 ', u'\u041b\u0438\u0448\u043d\u0438\u0439 \u043f\u0440\u043e\u0431\u0435\u043b.', u'option(LOCALE,"space")'], [u'(?iu)(?[a-zA-ZA-Z\u0430-\u044f\u0410-\u042f\u0410-\u042f]+)'(?P\\w*)(?![-\\w\u2013\xad])", u'\\g\u2019\\g', u'\u0410\u043f\u043e\u0441\u0442\u0440\u043e\u0444.', u'option(LOCALE,"quotation")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)[ ][\u0410\u0430][ ](?![-\\w\u2013\xad])', u'\\g, \u0430 ', u'\u041f\u0440\u043e\u043f\u0443\u0449\u0435\u043d\u0430 \u0437\u0430\u043f\u044f\u0442\u0430\u044f \u043f\u0435\u0440\u0435\u0434 \u0430.', u'option(LOCALE,"comma")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)[ ][\u041d\u043d][\u041e\u043e][ ](?![-\\w\u2013\xad])', u'\\g, \u043d\u043e ', u'\u041f\u0440\u043e\u043f\u0443\u0449\u0435\u043d\u0430 \u0437\u0430\u043f\u044f\u0442\u0430\u044f \u043f\u0435\u0440\u0435\u0434 \u043d\u043e.', u'option(LOCALE,"comma")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+), (?P[\u0410\u0430][\u0412\u0432][\u041e\u043e][\u0421\u0441][\u042c\u044c]|[\u0411\u0431][\u0423\u0443][\u041a\u043a][\u0412\u0432][\u0410\u0430][\u041b\u043b][\u042c\u044c][\u041d\u043d][\u041e\u043e]|[\u0411\u0431][\u0423\u0443][\u0414\u0434][\u0422\u0442][\u041e\u043e]|[\u0412\u0432][\u0414\u0434][\u041e\u043e][\u0411\u0431][\u0410\u0430][\u0412\u0432][\u041e\u043e][\u041a\u043a]|[\u0412\u0432][\u0414\u0434][\u0420\u0440][\u0423\u0443][\u0413\u0433]|[\u0412\u0432][\u0415\u0435][\u0414\u0434][\u042c\u044c]|[\u0412\u0432][\u041e\u043e][\u0422\u0442]|[\u0414\u0434][\u0410\u0430][\u0416\u0436][\u0415\u0435]|[\u0418\u0438][\u0421\u0441][\u041a\u043a][\u041b\u043b][\u042e\u044e][\u0427\u0447][\u0418\u0438][\u0422\u0442][\u0415\u0435][\u041b\u043b][\u042c\u044c][\u041d\u043d][\u041e\u043e]|[\u0418\u0438][\u041c\u043c][\u0415\u0435][\u041d\u043d][\u041d\u043d][\u041e\u043e]|[\u041d\u043d][\u0415\u0435][\u0411\u0431][\u041e\u043e][\u0421\u0441][\u042c\u044c]|[\u041f\u043f][\u0420\u0440][\u0418\u0438][\u0411\u0431][\u041b\u043b][\u0418\u0438][\u0417\u0437][\u0418\u0438][\u0422\u0442][\u0415\u0435][\u041b\u043b][\u042c\u044c][\u041d\u043d][\u041e\u043e]|[\u041f\u043f][\u0420\u0440][\u0418\u0438][\u041c\u043c][\u0415\u0435][\u0420\u0440][\u041d\u043d][\u041e\u043e]|[\u041f\u043f][\u0420\u0440][\u0418\u0438][\u0422\u0442][\u041e\u043e][\u041c\u043c]|[\u041f\u043f][\u041e\u043e][\u0427\u0447][\u0422\u0442][\u0418\u0438]|[\u041f\u043f][\u041e\u043e][\u042d\u044d][\u0422\u0442][\u041e\u043e][\u041c\u043c][\u0423\u0443]|[\u041f\u043f][\u0420\u0440][\u041e\u043e][\u0421\u0441][\u0422\u0442][\u041e\u043e]|[\u0420\u0440][\u0415\u0435][\u0428\u0448][\u0418\u0438][\u0422\u0442][\u0415\u0435][\u041b\u043b][\u042c\u044c][\u041d\u043d][\u041e\u043e]|[\u0421\u0441][\u041b\u043b][\u041e\u043e][\u0412\u0432][\u041d\u043d][\u041e\u043e]|[\u042f\u044f][\u041a\u043a][\u041e\u043e][\u0411\u0431][\u042b\u044b]|[\u0412\u0432] [\u0414\u0434][\u041e\u043e][\u0412\u0432][\u0415\u0435][\u0420\u0440][\u0428\u0448][\u0415\u0435][\u041d\u043d][\u0418\u0438][\u0415\u0435]|[\u0412\u0432] [\u041a\u043a][\u041e\u043e][\u041d\u043d][\u0415\u0435][\u0427\u0447][\u041d\u043d][\u041e\u043e][\u041c\u043c] [\u0421\u0441][\u0427\u0447][\u0415\u0435][\u0422\u0442][\u0415\u0435]|[\u0412\u0432][\u0420\u0440][\u042f\u044f][\u0414\u0434] [\u041b\u043b][\u0418\u0438]|[\u0412\u0432][\u0421\u0441][\u0415\u0435]-[\u0422\u0442][\u0410\u0430][\u041a\u043a][\u0418\u0438]|[\u041a\u043a][\u0410\u0430][\u041a\u043a] [\u0411\u0431][\u0423\u0443][\u0414\u0434][\u0422\u0442][\u041e\u043e]|[\u041a\u043a][\u0410\u0430][\u041a\u043a] [\u0411\u0431][\u042b\u044b]|[\u041a\u043a][\u0410\u0430][\u041a\u043a] [\u0420\u0440][\u0410\u0430][\u0417\u0437]|[\u041a\u043a] [\u0422\u0442][\u041e\u043e][\u041c\u043c][\u0423\u0443] [\u0416\u0436][\u0415\u0435]|[\u041c\u043c][\u0415\u0435][\u0416\u0436][\u0414\u0434][\u0423\u0443] [\u0422\u0442][\u0415\u0435][\u041c\u043c]|[\u041f\u043f][\u041e\u043e] [\u041f\u043f][\u0420\u0440][\u0415\u0435][\u0414\u0434][\u041b\u043b][\u041e\u043e][\u0416\u0436][\u0415\u0435][\u041d\u043d][\u0418\u0438][\u042e\u044e]|[\u041f\u043f][\u041e\u043e] [\u041f\u043f][\u041e\u043e][\u0421\u0441][\u0422\u0442][\u0410\u0430][\u041d\u043d][\u041e\u043e][\u0412\u0432][\u041b\u043b][\u0415\u0435][\u041d\u043d][\u0418\u0438][\u042e\u044e]|[\u041f\u043f][\u041e\u043e] [\u0420\u0440][\u0415\u0435][\u0428\u0448][\u0415\u0435][\u041d\u043d][\u0418\u0438][\u042e\u044e]),(?![-\\w\u2013\xad])', u'\\g \\g', u'\u0421\u043b\u043e\u0432\u0430, \u043d\u0435 \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0435\u0441\u044f \u0432\u0432\u043e\u0434\u043d\u044b\u043c\u0438.', u'option(LOCALE,"comma")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+) (?P[\u0418\u0438][\u0422\u0442][\u0410\u0430][\u041a\u043a]|[\u0421\u0441][\u041b\u043b][\u0415\u0435][\u0414\u0434][\u041e\u043e][\u0412\u0432][\u0410\u0430][\u0422\u0442][\u0415\u0435][\u041b\u043b][\u042c\u044c][\u041d\u043d][\u041e\u043e]|[\u0412\u0432][\u041e\u043e]-[\u041f\u043f][\u0415\u0435][\u0420\u0440][\u0412\u0432][\u042b\u044b][\u0425\u0445]|[\u0412\u0432][\u041e\u043e]-[\u0412\u0432][\u0422\u0442][\u041e\u043e][\u0420\u0440][\u042b\u044b][\u0425\u0445]|[\u0412\u0432]-[\u0422\u0442][\u0420\u0440][\u0415\u0435][\u0422\u0442][\u042c\u044c][\u0418\u0438][\u0425\u0445]|[\u0412\u0432]-[\u0427\u0447][\u0415\u0435][\u0422\u0442][\u0412\u0432][\u0415\u0435][\u0420\u0440][\u0422\u0442][\u042b\u044b][\u0425\u0445]|[\u0412\u0432]-[\u041f\u043f][\u042f\u044f][\u0422\u0442][\u042b\u044b][\u0425\u0445]|[\u041f\u043f][\u041e\u043e][\u0416\u0436][\u0410\u0430][\u041b\u043b][\u0423\u0443][\u0419\u0439][\u0421\u0441][\u0422\u0442][\u0410\u0430]|[\u041a\u043a][\u0410\u0430][\u041a\u043a] [\u041d\u043d][\u0410\u0430][\u0420\u0440][\u041e\u043e][\u0427\u0447][\u041d\u043d][\u041e\u043e]|[\u041a\u043a][\u0410\u0430][\u041a\u043a] [\u0418\u0438][\u0421\u0441][\u041a\u043a][\u041b\u043b][\u042e\u044e][\u0427\u0447][\u0415\u0435][\u041d\u043d][\u0418\u0438][\u0415\u0435]|[\u041a\u043a][\u0410\u0430][\u041a\u043a] [\u041f\u043f][\u0420\u0440][\u0410\u0430][\u0412\u0432][\u0418\u0438][\u041b\u043b][\u041e\u043e])(?![-\\w\u2013\xad])', u'\\g, \\g,', u'\u0421\u043b\u043e\u0432\u0430, \u044f\u0432\u043b\u044f\u044e\u0449\u0438\u0435\u0441\u044f \u0432\u0432\u043e\u0434\u043d\u044b\u043c\u0438, \u0432\u044b\u0434\u0435\u043b\u044f\u044e\u0442\u0441\u044f \u0437\u0430\u043f\u044f\u0442\u044b\u043c\u0438.', u'option(LOCALE,"comma")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)\\b(?![-\\w\u2013\xad])', u'\u0438\u0445', u'\u041f\u0440\u0438\u0442\u044f\u0436\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e\u0438\u043c\u0435\u043d\u0438\u0435 \u043d\u0435 \u0441\u043a\u043b\u043e\u043d\u044f\u0435\u0442\u0441\u044f', u'option(LOCALE,"common")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)\\b(?![-\\w\u2013\xad])', u'\u0441\u0435\u0432\u0435\u0440\u043e-\u0437\u0430\u043f\u0430\u0434\u043d\\g\\n\u0441\u0435\u0432\u0435\u0440\u043e\u0437\u0430\u043f\u0430\u0434\u043d\\g', u'\u0414\u0435\u0444\u0438\u0441?', u'option(LOCALE,"hyphen")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)\\b(?![-\\w\u2013\xad])', u'\u044e\u0433\u043e-\u0437\u0430\u043f\u0430\u0434\u043d\\g\\n\u044e\u0433\u043e\u0437\u0430\u043f\u0430\u0434\u043d\\g', u'\u0414\u0435\u0444\u0438\u0441?', u'option(LOCALE,"hyphen")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)\\b(?![-\\w\u2013\xad])', u'\u0441\u0435\u0432\u0435\u0440\u043e-\u0432\u043e\u0441\u0442\u043e\u0447\u043d\\g\\n\u0441\u0435\u0432\u0435\u0440\u043e\u0432\u043e\u0441\u0442\u043e\u0447\u043d\\g', u'\u0414\u0435\u0444\u0438\u0441?', u'option(LOCALE,"hyphen")'], [u'(?iu)(?[a-zA-Z\u0430-\u044f\u0410-\u042f]+)\\b(?![-\\w\u2013\xad])', u'\u044e\u0433\u043e-\u0432\u043e\u0441\u0442\u043e\u0447\u043d\\g\\n\u044e\u0433\u043e\u0432\u043e\u0441\u0442\u043e\u0447\u043d\\g', u'\u0414\u0435\u0444\u0438\u0441?', u'option(LOCALE,"hyphen")'], [u'(?iu)(?[\u041a\u043a][\u0422\u0442][\u041e\u043e]|[\u0427\u0447][\u0422\u0442][\u041e\u043e]|[\u0413\u0433][\u0414\u0434][\u0415\u0435]|[\u0417\u0437][\u0410\u0430][\u0427\u0447][\u0415\u0435][\u041c\u043c]|[\u041a\u043a][\u041e\u043e][\u0415\u0435]) [\u041d\u043d][\u0418\u0438][\u0411\u0431][\u0423\u0443][\u0414\u0434][\u042c\u044c]\\b(?![-\\w\u2013\xad])', u'\\g-\u043d\u0438\u0431\u0443\u0434\u044c', u'\u0414\u0435\u0444\u0438\u0441?', u'option(LOCALE,"hyphen")'], [u'(?iu)(?[\u041a\u043a][\u0422\u0442][\u041e\u043e]|[\u0427\u0447][\u0422\u0442][\u041e\u043e]|[\u0413\u0433][\u0414\u0434][\u0415\u0435]|[\u0417\u0437][\u0410\u0430][\u0427\u0447][\u0415\u0435][\u041c\u043c]|[\u041a\u043a][\u041e\u043e][\u0415\u0435]) [\u041b\u043b][\u0418\u0438][\u0411\u0431][\u041e\u043e]\\b(?![-\\w\u2013\xad])', u'\\g-\u043b\u0438\u0431\u043e', u'\u0414\u0435\u0444\u0438\u0441?', u'option(LOCALE,"hyphen")'], [u'(?iu)(?[\u041a\u043a][\u0422\u0442][\u041e\u043e]|[\u0427\u0447][\u0422\u0442][\u041e\u043e]|[\u0413\u0433][\u0414\u0434][\u0415\u0435]|[\u0417\u0437][\u0410\u0430][\u0427\u0447][\u0415\u0435][\u041c\u043c]|[\u041a\u043a][\u041e\u043e][\u0415\u0435]) [\u0422\u0442][\u041e\u043e]\\b(?![-\\w\u2013\xad])', u'\\g-\u0442\u043e', u'\u0414\u0435\u0444\u0438\u0441?', u'option(LOCALE,"hyphen")'], [u'(?iu)(?\\d\\d)(?P\\d\\d\\d)\\b(?![-\\w\u2013\xad])', u'\\g\xa0\\g', u'\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432 (ISO)?', u'option(LOCALE,"numsep")'], [u'(?iu)(?\\d|\\d\\d|\\d\\d\\d)(?P\\d\\d\\d)(?P\\d\\d\\d)\\b(?![-\\w\u2013\xad])', u'\\g\xa0\\g\xa0\\g', u'\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432 (ISO)?', u'option(LOCALE,"numsep")'], [u'(?iu)(?\\d|\\d\\d|\\d\\d\\d)(?P\\d\\d\\d)(?P\\d\\d\\d)(?P\\d\\d\\d)\\b(?![-\\w\u2013\xad])', u'\\g\xa0\\g\xa0\\g\xa0\\g', u'\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u044c \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432 (ISO)?', u'option(LOCALE,"numsep")'], [u'(?iu)(?[-\\w]{3,})(?: [-\u2013\\w\u201c\u201d]+)* \\1(?![-\\w\u2013\xad])', u'\\g', u'\u041f\u043e\u0432\u0442\u043e\u0440 \u0441\u043b\u043e\u0432\u0430?', u'option(LOCALE,"dup")'], [u'(?iu)(?[-\\w]{3,})[;,:]?(?: [-\u2013\\w\u201c\u201d]+[;,:]?)* \\1(?![-\\w\u2013\xad])', u'\\g', u'\u041f\u043e\u0432\u0442\u043e\u0440 \u0441\u043b\u043e\u0432\u0430?', u'option(LOCALE,"dup2")']] \ No newline at end of file diff --git a/libreoffice-extension-lightproof-ru/ru_RU_ru_RU.properties b/libreoffice-extension-lightproof-ru/ru_RU_ru_RU.properties new file mode 100644 index 000000000..d7df8470c --- /dev/null +++ b/libreoffice-extension-lightproof-ru/ru_RU_ru_RU.properties @@ -0,0 +1,15 @@ +abbreviation=\u0410\u0431\u0431\u0440\u0435\u0432\u0438\u0430\u0442\u0443\u0440\u044b +grammar=\u0413\u0440\u0430\u043c\u043c\u0430\u0442\u0438\u043a\u0430 +hyphen=\u0414\u0435\u0444\u0438\u0441 +comma=\u041f\u0443\u043d\u043a\u0442\u0443\u0430\u0446\u0438\u044f +common=\u041e\u0431\u0449\u0438\u0435 \u043e\u0448\u0438\u0431\u043a\u0438 +multiword=\u0421\u043b\u043e\u0432\u043e\u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u044f +together=\u0421\u043b\u0438\u0442\u043d\u043e/\u0440\u0430\u0437\u0434\u0435\u043b\u044c\u043d\u043e +proofreading=\u0421\u0442\u0438\u043b\u0438\u0441\u0442\u0438\u043a\u0430 +space=\u041f\u0440\u043e\u0431\u0435\u043b +typographica=\u0422\u0438\u043f\u043e\u0433\u0440\u0430\u0444\u0438\u043a\u0430 +dup=\u041f\u043e\u0432\u0442\u043e\u0440 \u0441\u043b\u043e\u0432 \u0432 \u0441\u043b\u043e\u0432\u043e\u0441\u043e\u0447\u0435\u0442\u0430\u043d\u0438\u044f\u0445 +dup2=\u041f\u043e\u0432\u0442\u043e\u0440 \u0441\u043b\u043e\u0432 \u0432 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u0445 +others=\u041f\u0440\u043e\u0447\u0435\u0435 +numsep=\u0420\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435\u043b\u0438 \u0433\u0440\u0443\u043f\u043f \u0440\u0430\u0437\u0440\u044f\u0434\u043e\u0432 (ISO) \u0434\u043b\u044f \u0447\u0438\u0441\u0435\u043b +quotation=\u041a\u0430\u0432\u044b\u0447\u043a\u0438 diff --git a/melted-git/PKGBUILD b/melted-git/PKGBUILD new file mode 100644 index 000000000..30876247b --- /dev/null +++ b/melted-git/PKGBUILD @@ -0,0 +1,55 @@ +# Maintainer: James Harrison +pkgname=melted-git +pkgver=20120122 +pkgrel=1 +pkgdesc="A video playout server aimed at broadcast automation" +arch=('i686' 'x86_64') +url="http://mltframework.org/" +license=('LGPL') +groups=() +depends=() +makedepends=('git') +provides=() +conflicts=() +replaces=() +backup=() +options=() +install= +source=() +noextract=() +md5sums=() + +_gitroot="http://mltframework.org/melted.git" +_gitname="melted" + +build() { + cd "$srcdir" + msg "Connecting to GIT server...." + + if [[ -d "$_gitname" ]]; then + cd "$_gitname" && git pull origin + msg "The local files are updated." + else + git clone "$_gitroot" "$_gitname" + fi + + msg "GIT checkout done or server timeout" + msg "Starting build..." + + rm -rf "$srcdir/$_gitname-build" + git clone "$srcdir/$_gitname" "$srcdir/$_gitname-build" + cd "$srcdir/$_gitname-build" + + # + # BUILD HERE + # + #./autogen.sh + ./configure --prefix=/usr --enable-gpl + make +} + +package() { + cd "$srcdir/$_gitname-build" + make DESTDIR="$pkgdir/" install +} + diff --git a/ntm/PKGBUILD b/ntm/PKGBUILD index 545dbee27..68d63bae8 100644 --- a/ntm/PKGBUILD +++ b/ntm/PKGBUILD @@ -1,21 +1,23 @@ #Maintainer: Mamut Ghiunhan pkgname='ntm' -pkgver='1.2.4' +pkgver='1.3' pkgrel='1' pkgdesc="Monitor of the network and internet traffic" arch=('i686' 'x86_64') license=('GPL') -depends=('pywebkitgtk' 'python-notify' 'lsb-release' 'networkmanager') -makedepends=('') +depends=('pywebkitgtk' 'python-notify' 'lsb-release' 'networkmanager' 'dbus-python') url=('http://netramon.sourceforge.net/eng/index.html') -source=('http://freefr.dl.sourceforge.net/project/netramon/NTM/ntm-1.x/ntm-1.2.4.deb') -md5sums=('abffcfa1a40f72afe6e90fbb5709f363') +source=("http://sourceforge.net/projects/netramon/files/NTM/ntm-1.x/$pkgname-$pkgver.tar.gz" "ntm.sh") build() { - cd "$srcdir" + cd "$srcdir/src" + install -dm755 "$pkgdir/usr/share/ntm" + cp -r * "$pkgdir/usr/share/ntm" - # Extracting deb - ar -x ntm-*.deb - tar zxvf $srcdir/data.tar.gz -C $pkgdir - sed -i "s|python|python2|g" $pkgdir/usr/share/ntm/run_ntm.sh + find $srcdir -name ntm.mo -exec chmod 644 {} \; + + cp -r "$srcdir/i18n/locale" "$pkgdir/usr/share" + install -Dm755 "$srcdir/ntm.sh" "$pkgdir/usr/bin/ntm" } +md5sums=('1a5ceabf21c3fe39945a6fc0c93851c8' + '54f50a5cac85426330a19086a107f1d4') diff --git a/ntm/ntm.sh b/ntm/ntm.sh new file mode 100644 index 000000000..d4067ea3a --- /dev/null +++ b/ntm/ntm.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +cd /usr/share/ntm +python2 ntm.py diff --git a/pan-git/PKGBUILD b/pan-git/PKGBUILD index e75f9fe60..22331e9dd 100644 --- a/pan-git/PKGBUILD +++ b/pan-git/PKGBUILD @@ -3,14 +3,14 @@ pkgname=pan-git _gitname="pan2" -pkgver=20120119 -pkgrel=1 +pkgver=20120122 +pkgrel=2 pkgdesc="Pan is a Usenet newsreader that's good at both text and binaries. Testing repo by Heinrich Müeller." url="http://git.gnome.org/browse/pan2" _gitroot="git://git.gnome.org/pan2" arch=('i686' 'x86_64') license=('GPL') -depends=( 'autoconf' 'automake' 'gmime' 'gtkspell' 'gnome-common' 'gtk3' 'gnome-doc-utils') +depends=('autoconf' 'automake' 'gmime' 'gtkspell' 'gnome-common' 'gtk3' 'gnome-doc-utils' 'libgnome-keyring' 'libnotify') makedepends=('git' 'intltool') conflicts=('pan' 'pan-gtk3') @@ -33,7 +33,7 @@ build() { git clone ${_gitname} ${_gitname}-build cd ${srcdir}/$_gitname-build - ./autogen.sh --prefix=/usr --with-openssl --with-gtk-spell --enable-libnotify --without-gnome-doc-help + ./autogen.sh --prefix=/usr --enable-libnotify --with-gtkspell --with-gtk3 --with-gnutls make make prefix=${pkgdir}/usr install } diff --git a/perl-class-load-xs/PKGBUILD b/perl-class-load-xs/PKGBUILD index 6e40925ed..0769f1fa1 100644 --- a/perl-class-load-xs/PKGBUILD +++ b/perl-class-load-xs/PKGBUILD @@ -4,25 +4,51 @@ pkgname=perl-class-load-xs _lastauthor=D/DR/DROLSKY _pkgname=Class-Load-XS pkgver=0.03 -pkgrel=1 +pkgrel=2 pkgdesc="XS implementation of parts of Class::Load" arch=('i686' 'x86_64') license=('PerlArtistic2') options=('!emptydirs') depends=('perl-class-load') -url="http://search.cpan.org/dist/${_pkgname}/" +url='http://search.cpan.org/dist/B-Flags/' source=(http://search.cpan.org/CPAN/authors/id/${_lastauthor}/${_pkgname}-${pkgver}.tar.gz) sha256sums=('28a7f950cf7d2a419468cb9f263410427774e8b94740fc0aad1b9a4faa736ecc') build() { cd "${srcdir}/${_pkgname}-${pkgver}" - export PERL_MM_USE_DEFAULT=1 - export PERL_AUTOINSTALL='--skipdeps' - perl Build.PL installdirs=vendor destdir="$pkgdir/" - perl Build + + export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL="--skipdeps" \ + PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \ + PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \ + MODULEBUILDRC=/dev/null + + if [ -f "Build.PL" ]; then + perl Build.PL + perl Build + elif [ -f "Makefile.PL" ]; then + perl Makefile.PL + make + else + return 1 + fi +} +check() { + cd "${srcdir}/${_pkgname}-${pkgver}" + + if [ -f "Build.PL" ]; then + perl Build test + elif [ -f "Makefile.PL" ]; then + make test + fi } package() { cd "${srcdir}/${_pkgname}-${pkgver}" - perl Build install + + if [ -f "Build.PL" ]; then + perl Build install + elif [ -f "Makefile.PL" ]; then + make install + fi + find "${pkgdir}" -name .packlist -o -name perllocal.pod -delete } diff --git a/perl-eval-closure/PKGBUILD b/perl-eval-closure/PKGBUILD index 9eb6e2b6b..e52594a45 100644 --- a/perl-eval-closure/PKGBUILD +++ b/perl-eval-closure/PKGBUILD @@ -4,7 +4,7 @@ pkgname=perl-eval-closure _lastauthor=D/DO/DOY _pkgname=Eval-Closure pkgver=0.06 -pkgrel=1 +pkgrel=2 pkgdesc="safely and cleanly create closures via string eval" arch=('any') license=('PerlArtistic' 'GPL') @@ -16,17 +16,39 @@ sha256sums=('2c425b6189c30dd0782c22f86e16c578b508ab78c3398edc8fbc8f7cda8b4e62') build() { cd "${srcdir}/${_pkgname}-${pkgver}" - export PERL_MM_USE_DEFAULT=1 - export PERL_AUTOINSTALL='--skipdeps' - perl Makefile.PL INSTALLDIRS=vendor - make + + export PERL_MM_USE_DEFAULT=1 PERL_AUTOINSTALL="--skipdeps" \ + PERL_MM_OPT="INSTALLDIRS=vendor DESTDIR='$pkgdir'" \ + PERL_MB_OPT="--installdirs vendor --destdir '$pkgdir'" \ + MODULEBUILDRC=/dev/null + + if [ -f "Build.PL" ]; then + perl Build.PL + perl Build + elif [ -f "Makefile.PL" ]; then + perl Makefile.PL + make + else + return 1 + fi } check() { cd "${srcdir}/${_pkgname}-${pkgver}" - make test + + if [ -f "Build.PL" ]; then + perl Build test + elif [ -f "Makefile.PL" ]; then + make test + fi } package() { cd "${srcdir}/${_pkgname}-${pkgver}" - make DESTDIR="${pkgdir}" install + + if [ -f "Build.PL" ]; then + perl Build install + elif [ -f "Makefile.PL" ]; then + make install + fi + find "${pkgdir}" -name .packlist -o -name perllocal.pod -delete } diff --git a/python-aosd/PKGBUILD b/python-aosd/PKGBUILD new file mode 100644 index 000000000..83fe42286 --- /dev/null +++ b/python-aosd/PKGBUILD @@ -0,0 +1,26 @@ +# Maintainer: NSB + +pkgname=python-aosd +pkgver=0.2.2 +pkgrel=1 +pkgdesc="Python bindings for libaosd" +arch=(any) +url="http://code.google.com/p/python-aosd/" +license=('MIT') +depends=('libaosd' 'python2-cairo') +makedepends=('cython2') +provides=() +conflicts=() +replaces=() +backup=() +options=(!emptydirs) +install= + +source=(http://$pkgname.googlecode.com/files/$pkgname-$pkgver.tar.gz) +md5sums=('45c757fe4c171a0b778c7e73d3839ef5') + +package() { + cd "$srcdir/$pkgname-$pkgver" + python2 setup.py install --root="$pkgdir/" --optimize=1 + install -D -m644 "$srcdir/$pkgname-$pkgver/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} diff --git a/python2-libquvi-git/PKGBUILD b/python2-libquvi-git/PKGBUILD index 668b9bd40..0c3f0f947 100644 --- a/python2-libquvi-git/PKGBUILD +++ b/python2-libquvi-git/PKGBUILD @@ -7,7 +7,7 @@ arch=(any) url="https://github.com/metal3d/python-libquvi" license=('GPL') depends=('python2' 'libquvi') -makedepends=('git') +makedepends=('git' 'cython2') options=(!emptydirs) _gitroot=git://github.com/metal3d/python-libquvi.git diff --git a/qmidiarp/PKGBUILD b/qmidiarp/PKGBUILD index 5645a0c55..1454c8dbd 100644 --- a/qmidiarp/PKGBUILD +++ b/qmidiarp/PKGBUILD @@ -2,7 +2,7 @@ # Contributor: Shinlun Hsieh pkgname=qmidiarp -pkgver=0.4.4 +pkgver=0.4.5 pkgrel=1 pkgdesc="A MIDI arpeggiator, phrase generator and controller LFO for the ALSA sequencer." arch=(i686 x86_64) @@ -10,8 +10,8 @@ url="http://sourceforge.net/projects/qmidiarp/" license=('GPL') depends=('qt' 'jack') install="$pkgname.install" -source=("http://download.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tar.bz2") -md5sums=('da458bb21e48682577339cbb2308b8be') +source=("http://downloads.sourceforge.net/project/$pkgname/$pkgname/$pkgver/$pkgname-$pkgver.tar.bz2") +md5sums=('e6bf315ea128b0fedacb6348d68a22a0') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/reprepro/PKGBUILD b/reprepro/PKGBUILD index a3e5c3170..018641b81 100644 --- a/reprepro/PKGBUILD +++ b/reprepro/PKGBUILD @@ -1,15 +1,15 @@ # Maintainer: Jochen Schalanda # Contributor: Andre Klitzing pkgname=reprepro -pkgver=4.7.0 +pkgver=4.8.2 pkgrel=1 -pkgdesc="A tool to handle local repositories of debian packages" +pkgdesc="A tool to handle local repositories of Debian packages" arch=('i686' 'x86_64') url="http://mirrorer.alioth.debian.org" license=('GPL') depends=('db' 'gpgme' 'zlib' 'bzip2' 'libarchive') source=(http://ftp.debian.org/debian/pool/main/r/$pkgname/${pkgname}_$pkgver.orig.tar.gz) -md5sums=('7fe67d656fdb91b6cfd16534d5120a22') +md5sums=('b270358c8875a3bdacba26b572e19cc0') build() { cd "$srcdir/$pkgname-$pkgver" diff --git a/ruby-childprocess/PKGBUILD b/ruby-childprocess/PKGBUILD new file mode 100644 index 000000000..efe1c2077 --- /dev/null +++ b/ruby-childprocess/PKGBUILD @@ -0,0 +1,19 @@ +# Maintainer: Jochen Schalanda +pkgname=ruby-childprocess +pkgver=0.3.0 +_realname='childprocess' +pkgrel=1 +pkgdesc='Childprocess: A simple and reliable solution for controlling external programs running in the background' +arch=(any) +url='http://gemcutter.org/gems/childprocess' +license=("GPL") +depends=('ruby' 'ruby-ffi') +source=(http://gems.rubyforge.org/gems/childprocess-$pkgver.gem) +noextract=(childprocess-$pkgver.gem) + +build() { + cd $srcdir + local _gemdir="$(ruby -rubygems -e'puts Gem.default_dir')" + gem install --ignore-dependencies -i "$pkgdir$_gemdir" ${_realname}-$pkgver.gem +} +md5sums=('ac3e641311fa1194a80ff621e6b9da85') diff --git a/ruby-journey/PKGBUILD b/ruby-journey/PKGBUILD new file mode 100644 index 000000000..1b72e2a3d --- /dev/null +++ b/ruby-journey/PKGBUILD @@ -0,0 +1,20 @@ +# Contributor: Alexsandr Pavlov +pkgname=ruby-journey +_gemname=${pkgname#ruby-} +pkgver=1.0.0 +pkgrel=1 +pkgdesc="Journey is a router. It routes requests." +arch=('any') +url="http://github.com/tenderlove/journey" +license=('MIT') +depends=('ruby' 'rubygems') +source=(http://rubygems.org/downloads/${_gemname}-${pkgver}.gem) +noextract=(${_gemname}-${pkgver}.gem) +md5sums=('6d09fd2ad13e06080d3e9e33cf3d2fd8') + +build() { + cd "${srcdir}" + export HOME=/tmp + local _gemdir="$(ruby -rubygems -e'puts Gem.default_dir')" + gem install --ignore-dependencies -i "${pkgdir}${_gemdir}" ${_gemname}-${pkgver}.gem +} diff --git a/ruby-json-1.5/PKGBUILD b/ruby-json-1.5/PKGBUILD new file mode 100644 index 000000000..152f7143b --- /dev/null +++ b/ruby-json-1.5/PKGBUILD @@ -0,0 +1,29 @@ +# Maintainer: Jochen Schalanda +# Contributor: Alexander Rødseth +# Contributor: Hyacinthe Cartiaux +# Contributor: Daenyth +pkgname=ruby-json-1.5 +pkgver=1.5.4 +pkgrel=1 +pkgdesc="JSON implementation as a Ruby extension in C" +arch=('x86_64' 'i686') +url="http://flori.github.com/json/" +license=('GPL') +depends=('ruby') +makedepends=('rubygems') +optdepends=('jruby' 'java-environment') +source=("http://rubygems.org/downloads/json-$pkgver.gem") +noextract=("json-$pkgver.gem") +md5sums=('5913a79367fc49d3ef3c1c078a32ec51') + +build() { + gem install -i "$pkgdir$(ruby -rubygems -e'puts Gem.default_dir')" \ + "json-$pkgver.gem" +} + +package() { + # Removing files with references to $pkgdir + find "$pkgdir" -depth -type f -name "Makefile*" -exec rm {} \; +} + +# vim:set ts=2 sw=2 et: diff --git a/ruby-log4r/PKGBUILD b/ruby-log4r/PKGBUILD new file mode 100644 index 000000000..035615ee9 --- /dev/null +++ b/ruby-log4r/PKGBUILD @@ -0,0 +1,19 @@ +# Maintainer: Jochen Schalanda +pkgname=ruby-log4r +pkgver=1.1.10 +_realname='log4r' +pkgrel=1 +pkgdesc='Log4r: A comprehensive and flexible logging library for use in Ruby programs.' +arch=(any) +url='http://gemcutter.org/gems/log4r' +license=("GPL") +depends=('ruby') +source=(http://gems.rubyforge.org/gems/log4r-$pkgver.gem) +noextract=(log4r-$pkgver.gem) + +build() { + cd $srcdir + local _gemdir="$(ruby -rubygems -e'puts Gem.default_dir')" + gem install --ignore-dependencies -i "$pkgdir$_gemdir" ${_realname}-$pkgver.gem +} +md5sums=('8d54b52c97f9fc17cc20a5277af20402') diff --git a/ruby-net-ssh-2.2/PKGBUILD b/ruby-net-ssh-2.2/PKGBUILD new file mode 100644 index 000000000..bad5448a6 --- /dev/null +++ b/ruby-net-ssh-2.2/PKGBUILD @@ -0,0 +1,20 @@ +# Contributor: gem2arch 0.1 +pkgname=ruby-net-ssh-2.2 +pkgver=2.2.2 +_realname="net-ssh" +pkgrel=1 +pkgdesc="Net::SSH: a pure-Ruby implementation of the SSH2 client protocol." +arch=(any) +url="http://gemcutter.org/gems/net-ssh" +license=("GPL") +depends=('ruby') +provides=('ruby-net-ssh') +source=(http://gems.rubyforge.org/gems/net-ssh-$pkgver.gem) +noextract=(net-ssh-$pkgver.gem) + +build() { + cd $srcdir + local _gemdir="$(ruby -rubygems -e'puts Gem.default_dir')" + gem install --ignore-dependencies -i "$pkgdir$_gemdir" ${_realname}-$pkgver.gem +} +md5sums=('d85cd9fc47ada2b9adef9cb389c7d0f1') diff --git a/soundcli/PKGBUILD b/soundcli/PKGBUILD index 31b130b67..8aa547c04 100644 --- a/soundcli/PKGBUILD +++ b/soundcli/PKGBUILD @@ -1,7 +1,7 @@ # Maintainer: Ricardo Wurmus pkgname=soundcli -pkgver=0.0.2 -pkgrel=3 +pkgver=0.0.5 +pkgrel=1 pkgdesc="Command line interface to stream/download songs from soundcloud.com" url="http://soundcli.elephly.net" arch=('x86_64' 'i686') @@ -9,11 +9,11 @@ license=('GPLv3') depends=('ruby' 'ruby-gstreamer' 'ruby-curb' 'ruby-json' 'gstreamer0.10-good') makedepends=(rubygems) source=(https://github.com/rekado/soundCLI/tarball/$pkgver) -md5sums=('962fa775fafc079dee5988fd583509a7') +md5sums=('1422280932a7e30fa3545e0a00947d99') build() { # github names the directory in a funny way... - cd $srcdir/rekado-soundCLI-e88129f + cd $srcdir/rekado-soundCLI-1575db9 msg "Running setup.rb..." diff --git a/tragtor/PKGBUILD b/tragtor/PKGBUILD index 4347cd6e1..5de039d2a 100644 --- a/tragtor/PKGBUILD +++ b/tragtor/PKGBUILD @@ -2,8 +2,8 @@ # Contributor: Adrian Holfter pkgname=tragtor -pkgver=0.8.44 -pkgrel=1 +pkgver=0.8.45 +pkgrel=2 pkgdesc="A graphical user interface for ffmpeg" arch=('i686' 'x86_64') url="http://mein-neues-blog.de/tragtor-gui-for-FFmpeg/" @@ -12,15 +12,16 @@ depends=('python2' 'pygtk>=2.6' 'ffmpeg' 'id3v2') source=(http://repository.mein-neues-blog.de:9000/archive/${pkgname}-${pkgver}_all.tar.gz) -md5sums=('7665f503d55d1184275dcf0c3d6166e5') +md5sums=('c01040626f0fabf0a4ceff75de77260a') build() { - echo Patch traGtor to python2... # Patch: Force traGtor to use python2 instead of the new python3 because of compatibility issues - sed s/python\ /python2\ / usr/bin/tragtor > usr/bin/tragtor.fix || return 1 - cp usr/bin/tragtor.fix usr/bin/tragtor || return 1 - rm usr/bin/tragtor.fix || return 1 + sed s/python\ /python2\ / $srcdir/usr/bin/tragtor > $srcdir/usr/bin/tragtor.fix || return 1 + mv $srcdir/usr/bin/tragtor.fix $srcdir/usr/bin/tragtor || return 1 - echo Copying files... + # Fix chmod + chmod a+x $srcdir/usr/bin/tragtor + + # Copy files cp -R $srcdir/usr $pkgdir/usr || return 1 } diff --git a/vagrant/PKGBUILD b/vagrant/PKGBUILD index 838c119a1..a990112f9 100644 --- a/vagrant/PKGBUILD +++ b/vagrant/PKGBUILD @@ -1,22 +1,23 @@ +# Maintainer: Jochen Schalanda # Contributor: Mathieu Clabaut -# Contributor: Jochen Schalanda # Last version visible on http://rubygems.org/gems/vagrant pkgname=vagrant -pkgver=0.8.7 +pkgver=0.9.0 pkgrel=1 pkgdesc="Tool for building and distributing virtualized development environments" arch=(any) url="http://vagrantup.com/" license=('MIT') -makedepends=('rubygems') -depends=('ruby' 'virtualbox>=4.1' 'ruby-archive-tar-minitar' 'ruby-net-ssh' 'ruby-net-scp' 'ruby-erubis' 'ruby-json' 'ruby-i18n' 'ruby-thor' 'ruby-virtualbox') +makedepends=('rubygems' 'rake') +depends=('ruby' 'virtualbox>=4.0' 'ruby-archive-tar-minitar' 'ruby-net-ssh-2.2' \ + 'ruby-net-scp' 'ruby-erubis' 'ruby-json-1.5' 'ruby-i18n' \ + 'ruby-log4r' 'ruby-childprocess') source=(http://rubygems.org/downloads/${pkgname}-${pkgver}.gem) noextract=($pkgname-$pkgver.gem) -md5sums=('2adca779345564bd88d3991d3091bf6f') +md5sums=('4acb78803f387d213f652416dc178904') build() { cd $srcdir local _gemdir="$(ruby -rubygems -e'puts Gem.default_dir')" - gem install --ignore-dependencies -i "$pkgdir$_gemdir" ${pkgname}-$pkgver.gem - gem install --ignore-dependencies --verbose -i "$pkgdir$_gemdir" -n "$pkgdir"/usr/bin $pkgname-$pkgver.gem + gem install --ignore-dependencies -i "$pkgdir$_gemdir" -n "$pkgdir"/usr/bin $pkgname-$pkgver.gem } diff --git a/wmfs2-git/PKGBUILD b/wmfs2-git/PKGBUILD index 6ea5e0f2c..225fd77a8 100644 --- a/wmfs2-git/PKGBUILD +++ b/wmfs2-git/PKGBUILD @@ -1,7 +1,7 @@ # Contributor: Erufu / Sébastien Lacroix pkgname=wmfs2-git -pkgver=20120121 +pkgver=20120122 pkgrel=1 pkgdesc="A lightweight and highly configurable tiling window manager for X" arch=('i686' 'x86_64') -- 2.11.4.GIT