parent
e063f879fa
commit
1875039b70
@ -0,0 +1,31 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: $
|
||||
|
||||
EAPI="3"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
PYTHON_DEPEND="2:2.7"
|
||||
RESTRICT_PYTHON_ABIS="2.4 2.5 2.6 3.*"
|
||||
|
||||
inherit distutils eutils
|
||||
|
||||
SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate3/${PN}/${P}.tar.bz2"
|
||||
|
||||
DESCRIPTION="Qt gui console client for WSDL Calculate 3"
|
||||
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="amd64 x86"
|
||||
|
||||
DEPEND="~sys-apps/calculate-core-3.1.3
|
||||
dev-python/dbus-python
|
||||
dev-python/imaging
|
||||
dev-python/pyside[script]"
|
||||
RDEPEND="${DEPEND}"
|
||||
src_unpack() {
|
||||
unpack "${A}"
|
||||
cd "${S}"
|
||||
|
||||
# apply revision changes
|
||||
epatch "${FILESDIR}/calculate-console-gui-3.1.3-r1.patch"
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
diff --git consolegui/application/mainframe.py consolegui/application/mainframe.py
|
||||
index cccd7e3..a37fe52 100755
|
||||
--- consolegui/application/mainframe.py
|
||||
+++ consolegui/application/mainframe.py
|
||||
@@ -182,7 +182,7 @@ class MainFrame(QtGui.QWidget):
|
||||
self.add_element_label (field, x, y)
|
||||
x += 1
|
||||
|
||||
- elif field.element in ['error','pwderror']:
|
||||
+ elif field.element in ['error','pwderror','commonerror']:
|
||||
error_lbl = ErrorLabel(self, field.label)
|
||||
error_lbl.setStyleSheet("QLabel {color: red;}")
|
||||
error_lbl.show()
|
||||
@@ -1206,7 +1206,7 @@ class MainFrame(QtGui.QWidget):
|
||||
for res in result[0]:
|
||||
meth_result.append(ReturnedMessage(res.type, res.field, \
|
||||
res.message, res.expert))
|
||||
- if res.type in ['error', 'pwderror']:
|
||||
+ if res.type in ['error', 'pwderror', 'commonerror']:
|
||||
error = True
|
||||
self.ClientObj.param_objects[self.method_name] \
|
||||
['error'] = meth_result
|
||||
@@ -1896,7 +1896,7 @@ class MainFrame(QtGui.QWidget):
|
||||
gb_layout.addWidget(label, x, y, 1, 2)
|
||||
x += 1
|
||||
|
||||
- elif field.element in ['error','pwderror']:
|
||||
+ elif field.element in ['error','pwderror','commonerror']:
|
||||
error_lbl = ErrorLabel(self, field.label)
|
||||
error_lbl.setStyleSheet("QLabel {color: red;}")
|
||||
error_lbl.show()
|
||||
@@ -2244,7 +2244,7 @@ class MainFrame(QtGui.QWidget):
|
||||
for res in meth_result_temp[0]:
|
||||
meth_result.append(ReturnedMessage(res.type, res.field, \
|
||||
res.message, res.expert))
|
||||
- if res.type == 'error' or res.type == 'pwderror':
|
||||
+ if res.type in ('error','pwderror','commonerror'):
|
||||
self.ClientObj.param_objects[self.method_name] \
|
||||
['error'] = meth_result
|
||||
error = True
|
@ -0,0 +1,49 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: $
|
||||
|
||||
EAPI="3"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
PYTHON_DEPEND="2:2.7"
|
||||
RESTRICT_PYTHON_ABIS="2.4 2.5 2.6 3.*"
|
||||
|
||||
inherit distutils eutils
|
||||
|
||||
SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate3/${PN}/${P}.tar.bz2"
|
||||
|
||||
DESCRIPTION="The WSDL core for Calculate 3"
|
||||
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="minimal"
|
||||
|
||||
DEPEND="~sys-apps/calculate-lib-3.1.3
|
||||
>=dev-python/soaplib-1.0
|
||||
!minimal? ( dev-python/sudsds
|
||||
net-libs/dslib
|
||||
dev-python/pyopenssl
|
||||
dev-libs/openssl
|
||||
dev-python/m2crypto
|
||||
dev-python/cherrypy )"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
pkg_preinst() {
|
||||
dosym /usr/sbin/cl-core /usr/sbin/cl-core-setup
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
einfo "For autoconfigure calculate-core for adminuser perform:"
|
||||
einfo " cl-core --bootstrap <username>"
|
||||
einfo "For run calculate-core perform:"
|
||||
einfo " /etc/init.d/calculate-core start"
|
||||
einfo "Add calcualte core to autorun:"
|
||||
einfo " rc-update add calculate-core boot"
|
||||
}
|
||||
src_unpack() {
|
||||
unpack "${A}"
|
||||
cd "${S}"
|
||||
|
||||
# apply revision changes
|
||||
epatch "${FILESDIR}/calculate-core-3.1.3-r1.patch"
|
||||
}
|
@ -0,0 +1,44 @@
|
||||
diff --git core/server/methods_func.py core/server/methods_func.py
|
||||
index d6d7556..1b11b8a 100644
|
||||
--- core/server/methods_func.py
|
||||
+++ core/server/methods_func.py
|
||||
@@ -345,22 +345,26 @@ def check_result_msg(method_result, view, input_error_dict = {}):
|
||||
continue
|
||||
|
||||
params_text = ''
|
||||
- for Group in groups:
|
||||
- if hasattr (Group.fields, 'Field'):
|
||||
- fields = Group.fields.Field
|
||||
- else:
|
||||
- fields = Group.fields
|
||||
- for field in fields:
|
||||
- if field.name == error.field:
|
||||
- if field.opt.shortopt or field.opt.longopt:
|
||||
- params_text += _('Wrong option ')
|
||||
- params_text += ' '+', '.join(filter(None,
|
||||
- [field.opt.shortopt, field.opt.longopt])) \
|
||||
- + '. '
|
||||
+ if error.type != "commonerror":
|
||||
+ for Group in groups:
|
||||
+ if hasattr (Group.fields, 'Field'):
|
||||
+ fields = Group.fields.Field
|
||||
+ else:
|
||||
+ fields = Group.fields
|
||||
+ for field in fields:
|
||||
+ if field.name == error.field:
|
||||
+ if field.opt.shortopt or field.opt.longopt:
|
||||
+ params_text += _('Wrong option ')
|
||||
+ params_text += ' '+', '.join(filter(None,
|
||||
+ [field.opt.shortopt, field.opt.longopt])) \
|
||||
+ + '. '
|
||||
|
||||
sys.stdout.write('\r')
|
||||
sys.stdout.flush()
|
||||
- colorPrint.printERROR(params_text + error.message)
|
||||
+ if error.type != "commonerror":
|
||||
+ colorPrint.printERROR(params_text + error.message)
|
||||
+ else:
|
||||
+ colorPrint.printWARNING(params_text + error.message)
|
||||
|
||||
if len(password_errors) < len(method_result):
|
||||
return None
|
@ -0,0 +1,30 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: $
|
||||
|
||||
EAPI="3"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
PYTHON_DEPEND="2:2.7"
|
||||
RESTRICT_PYTHON_ABIS="2.4 2.5 2.6 3.*"
|
||||
|
||||
inherit distutils eutils
|
||||
|
||||
SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate3/${PN}/${P}.tar.bz2"
|
||||
|
||||
DESCRIPTION="The utilities for assembling tasks of Calculate Linux"
|
||||
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="amd64 x86"
|
||||
|
||||
RDEPEND=">=sys-apps/calculate-lib-3.1.3"
|
||||
|
||||
DEPEND="sys-devel/gettext
|
||||
${DEPEND}"
|
||||
src_unpack() {
|
||||
unpack "${A}"
|
||||
cd "${S}"
|
||||
|
||||
# apply revision changes
|
||||
epatch "${FILESDIR}/calculate-i18n-3.1.3-r1.patch"
|
||||
}
|
@ -0,0 +1,40 @@
|
||||
diff --git fr/cl_install3.po fr/cl_install3.po
|
||||
index e0a4109..86c7039 100644
|
||||
--- fr/cl_install3.po
|
||||
+++ fr/cl_install3.po
|
||||
@@ -653,6 +653,15 @@ msgstr "par build"
|
||||
msgid "select the operation system by build"
|
||||
msgstr "trier par build pour choisir le système d'exploitation"
|
||||
|
||||
+msgid "Install newer images only"
|
||||
+msgstr ""
|
||||
+
|
||||
+msgid "install newer images only"
|
||||
+msgstr ""
|
||||
+
|
||||
+msgid "The image for update not found"
|
||||
+msgstr ""
|
||||
+
|
||||
msgid "The layout is not available with autopartitioning"
|
||||
msgstr "La mise en page n'est pas supportée pour l'autopartition"
|
||||
|
||||
diff --git ru/cl_install3.po ru/cl_install3.po
|
||||
index 276767d..19f6f34 100644
|
||||
--- ru/cl_install3.po
|
||||
+++ ru/cl_install3.po
|
||||
@@ -653,6 +653,15 @@ msgstr "по сборке"
|
||||
msgid "select the operation system by build"
|
||||
msgstr "выбрать операционную систему по сборке"
|
||||
|
||||
+msgid "Install newer images only"
|
||||
+msgstr "Установить только более новый образ"
|
||||
+
|
||||
+msgid "install newer images only"
|
||||
+msgstr "установить только более новый образ"
|
||||
+
|
||||
+msgid "The image for update not found"
|
||||
+msgstr "Нет образа для обновления"
|
||||
+
|
||||
msgid "The layout is not available with autopartitioning"
|
||||
msgstr "Разметка не доступна при авторазметке"
|
||||
|
@ -0,0 +1,45 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: $
|
||||
|
||||
EAPI="3"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
PYTHON_DEPEND="2:2.7"
|
||||
RESTRICT_PYTHON_ABIS="2.4 2.5 2.6 3.*"
|
||||
|
||||
inherit distutils eutils
|
||||
|
||||
SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate3/${PN}/${P}.tar.bz2"
|
||||
|
||||
DESCRIPTION="The program of installation Calculate Linux"
|
||||
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="pxe minimal"
|
||||
|
||||
DEPEND="~sys-apps/calculate-core-3.1.3
|
||||
!<sys-apps/calculate-install-2.2.29
|
||||
app-portage/layman
|
||||
>=sys-fs/udev-197
|
||||
!app-misc/livecd-tools
|
||||
sys-apps/iproute2[-minimal]
|
||||
!minimal? ( sys-boot/grub
|
||||
sys-apps/gptfdisk
|
||||
>=sys-apps/util-linux-2.19.1
|
||||
sys-fs/dosfstools
|
||||
sys-fs/squashfs-tools
|
||||
sys-block/parted )
|
||||
pxe? ( sys-apps/calculate-server
|
||||
net-ftp/tftp-hpa
|
||||
net-misc/dhcp
|
||||
net-fs/nfs-utils )"
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
src_unpack() {
|
||||
unpack "${A}"
|
||||
cd "${S}"
|
||||
|
||||
# apply revision changes
|
||||
epatch "${FILESDIR}/calculate-install-3.1.3-r3.patch"
|
||||
}
|
@ -0,0 +1,147 @@
|
||||
diff --git install/cl_install.py install/cl_install.py
|
||||
index f4a511b..a225a7a 100644
|
||||
--- install/cl_install.py
|
||||
+++ install/cl_install.py
|
||||
@@ -590,16 +590,14 @@ class Install(color_print):
|
||||
self.endTask()
|
||||
|
||||
self.startTask(_("Copying configuration files to the new system"))
|
||||
- fileMask = r"/etc/udev/rules\.d/70-persistent-net\.rules"
|
||||
if self.clVars.Get('os_root_type') != "livecd":
|
||||
fileMask = \
|
||||
- "(%s|/etc/ssh/ssh_host_.*|/root/.ssh/(id_.*|known_hosts))"% \
|
||||
- fileMask
|
||||
- fileCpy = otherfilesCopy(target=targetDistr.getDirectory(),
|
||||
- reTest=fileMask)
|
||||
- fileCpy.performCopy('/etc')
|
||||
- if path.exists('/root/.ssh'):
|
||||
- fileCpy.performCopy('/root/.ssh')
|
||||
+ "(/etc/ssh/ssh_host_.*|/root/.ssh/(id_.*|known_hosts))"
|
||||
+ fileCpy = otherfilesCopy(target=targetDistr.getDirectory(),
|
||||
+ reTest=fileMask)
|
||||
+ fileCpy.performCopy('/etc')
|
||||
+ if path.exists('/root/.ssh'):
|
||||
+ fileCpy.performCopy('/root/.ssh')
|
||||
self.endTask()
|
||||
|
||||
# optimize initrd
|
||||
diff --git install/cl_wsdl_install.py install/cl_wsdl_install.py
|
||||
index 390127f..0d0e7fb 100644
|
||||
--- install/cl_wsdl_install.py
|
||||
+++ install/cl_wsdl_install.py
|
||||
@@ -42,6 +42,7 @@ __ = getLazyLocalTranslate(_)
|
||||
class InstallInfo(CommonInfo):
|
||||
"""Parameters for method install"""
|
||||
cl_image_filename = String
|
||||
+ cl_image_new_only = Boolean
|
||||
cl_image_linux_shortname = String
|
||||
cl_image_arch_machine = String
|
||||
cl_image_linux_ver = String
|
||||
@@ -113,7 +114,7 @@ class Wsdl:
|
||||
normal=('os_install_locale_lang','os_install_clock_timezone'))
|
||||
dv.addGroup(_("Distribution"),
|
||||
normal=('cl_image_filename',),
|
||||
- expert=('cl_image_linux_shortname', 'cl_image_arch_machine'))
|
||||
+ expert=('cl_image_linux_shortname', 'cl_image_arch_machine','cl_image_new_only'))
|
||||
dv.addGroup(_("Allocate drive space"),
|
||||
normal=('cl_autopartition_set',),
|
||||
expert=('cl_autopartition_scheme','cl_autopartition_device',
|
||||
diff --git install/variables/distr.py install/variables/distr.py
|
||||
index eb12c9d..7f24231 100644
|
||||
--- install/variables/distr.py
|
||||
+++ install/variables/distr.py
|
||||
@@ -20,7 +20,8 @@ from os import path
|
||||
import re
|
||||
import operator
|
||||
from operator import itemgetter
|
||||
-from calculate.lib.datavars import Variable,VariableError,ReadonlyVariable
|
||||
+from calculate.lib.datavars import Variable,VariableError,ReadonlyVariable, \
|
||||
+ CommonVariableError
|
||||
from calculate.lib.utils.common import getSupportArch,getTupleVersion, \
|
||||
cmpVersion
|
||||
from calculate.lib.utils.files import readLinesFile, listDirectory
|
||||
@@ -294,6 +295,7 @@ class VariableClImageFilename(Variable,DistroRepository):
|
||||
if not("os_linux_shortname" in imageData and \
|
||||
imageData.get('os_linux_build','') and \
|
||||
"os_arch_machine" in imageData):
|
||||
+ print imageData,isoimage
|
||||
raise VariableError(_("Wrong image file"))
|
||||
|
||||
def humanImageName(self,distroinfo,filepath):
|
||||
@@ -514,3 +516,42 @@ class VariableClTarget(ReadonlyVariable):
|
||||
systemId=None,
|
||||
partitionTable='')
|
||||
return target
|
||||
+
|
||||
+class VariableClImageNewOnly(Variable):
|
||||
+ """
|
||||
+ Distributive image filename
|
||||
+ """
|
||||
+ type = 'bool'
|
||||
+ opt = ['-U','--update']
|
||||
+ value = "off"
|
||||
+
|
||||
+ def init(self):
|
||||
+ self.label = _("Install newer images only")
|
||||
+ self.help = _("install newer images only")
|
||||
+
|
||||
+ def installedBuild(self):
|
||||
+ """
|
||||
+ Get build already installed system
|
||||
+ Need for check update
|
||||
+ """
|
||||
+ imageData = None
|
||||
+ rootDev = self.Get('os_install_root_dev')
|
||||
+ if not rootDev:
|
||||
+ return ""
|
||||
+ try:
|
||||
+ imageData = Distributive().getInfo(rootDev)
|
||||
+ return imageData.get('os_linux_build','')
|
||||
+ except:
|
||||
+ pass
|
||||
+ return ""
|
||||
+
|
||||
+ def check(self,value):
|
||||
+ if value == 'on':
|
||||
+ try:
|
||||
+ imageData = Distributive().getInfo(self.Get('cl_image_filename'))
|
||||
+ except Exception as e:
|
||||
+ raise VariableError(_("Wrong image file"))
|
||||
+ if imageData.get('os_linux_build','') <= \
|
||||
+ self.Get('os_linux_build') or \
|
||||
+ imageData.get('os_linux_build','') <= self.installedBuild():
|
||||
+ raise CommonVariableError(_("The image for update not found"))
|
||||
diff --git install/variables/net.py install/variables/net.py
|
||||
index c8801c4..2213077 100644
|
||||
--- install/variables/net.py
|
||||
+++ install/variables/net.py
|
||||
@@ -28,11 +28,13 @@ from calculate.lib.utils.ip import (getInterfaces,getIp,getMask,getMac,
|
||||
cidrToMask,maskToCidr,getIpNet,isDhcpIp,checkIp,checkMask,
|
||||
getOperState)
|
||||
from calculate.lib.utils.device import lspci
|
||||
-from calculate.lib.utils.files import listDirectory,readLinesFile,process
|
||||
+from calculate.lib.utils.files import listDirectory,readLinesFile,process,\
|
||||
+ readFile
|
||||
from calculate.lib.utils import ip
|
||||
from calculate.lib.utils.portage import isPkgInstalled
|
||||
from operator import itemgetter
|
||||
from itertools import *
|
||||
+import hashlib
|
||||
|
||||
class NetHelper:
|
||||
"""
|
||||
@@ -95,8 +97,12 @@ class VariableOsInstallNetInterfacesOrig(NetHelper,ReadonlyVariable):
|
||||
'etc/udev/rules.d/70-persistent-net.rules')
|
||||
pathNewUdevNet = path.join(chrootPath,
|
||||
'etc/udev/rules.d/80-net-name-slot.rules')
|
||||
- for foundPath in ifilter(path.exists,(pathOldUdevNet,
|
||||
- pathNewUdevNet)):
|
||||
+ pathOrigUdevNet = path.join(chrootPath,
|
||||
+ 'lib/udev/rules.d/80-net-name-slot.rules')
|
||||
+ if path.exists(pathOldUdevNet) or \
|
||||
+ (path.exists(pathNewUdevNet) and
|
||||
+ hashlib.md5(readFile(pathNewUdevNet)).digest() != \
|
||||
+ hashlib.md5(readFile(pathOrigUdevNet)).digest()):
|
||||
return self.Get('os_install_net_interfaces')
|
||||
def getOrig(x):
|
||||
try:
|
@ -0,0 +1,35 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: $
|
||||
|
||||
EAPI="3"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
PYTHON_DEPEND="2:2.7"
|
||||
RESTRICT_PYTHON_ABIS="2.4 2.5 2.6 3.*"
|
||||
|
||||
inherit distutils eutils
|
||||
|
||||
SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate3/${PN}/${P}.tar.bz2"
|
||||
|
||||
DESCRIPTION="The library for Calculate 3"
|
||||
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="minimal"
|
||||
DEPEND="!minimal? ( dev-python/py-smbpasswd )
|
||||
>=dev-python/pyxml-0.8
|
||||
sys-apps/iproute2
|
||||
sys-apps/pciutils
|
||||
sys-fs/lvm2
|
||||
sys-fs/mdadm
|
||||
dev-python/pyinotify
|
||||
sys-apps/file[python]"
|
||||
RDEPEND="${DEPEND}"
|
||||
src_unpack() {
|
||||
unpack "${A}"
|
||||
cd "${S}"
|
||||
|
||||
# apply revision changes
|
||||
epatch "${FILESDIR}/calculate-lib-3.1.3-r2.patch"
|
||||
}
|
@ -0,0 +1,46 @@
|
||||
diff --git calculate/lib/cl_template.py calculate/lib/cl_template.py
|
||||
index c42dfbb..cda5c00 100644
|
||||
--- calculate/lib/cl_template.py
|
||||
+++ calculate/lib/cl_template.py
|
||||
@@ -5457,6 +5457,8 @@ gettext -d cl_template "$*"
|
||||
return ([], False)
|
||||
if not objHeadNew.body.strip():
|
||||
preReturn(pathProg)
|
||||
+ if "protected" in objHeadNew.params:
|
||||
+ self.protectedFiles += applyFiles
|
||||
return (applyFiles, False)
|
||||
else:
|
||||
applyFiles = [pathOldFile]
|
||||
diff --git calculate/lib/datavars.py calculate/lib/datavars.py
|
||||
index b8fcb3b..4b57578 100644
|
||||
--- calculate/lib/datavars.py
|
||||
+++ calculate/lib/datavars.py
|
||||
@@ -57,6 +57,9 @@ class VariableError(Exception):
|
||||
class PasswordError(VariableError):
|
||||
"""Exception of password change error"""
|
||||
|
||||
+class CommonVariableError(VariableError):
|
||||
+ """Exception for command line"""
|
||||
+
|
||||
import cl_template
|
||||
|
||||
def makePath(dirs,mode=755):
|
||||
@@ -1493,10 +1496,14 @@ class DataVars(SimpleDataVars):
|
||||
messages = e.message if type(e.message) == list \
|
||||
else [e]
|
||||
mess = "\n".join(map(lambda x:str(x),self.plainList(*messages)))
|
||||
- if isinstance(e,PasswordError) or \
|
||||
- type(e.message) == list and \
|
||||
- all(isinstance(x,PasswordError) for x in e.message):
|
||||
- typeError = 'pwderror'
|
||||
+ mapError = {PasswordError:'pwderror',
|
||||
+ CommonVariableError:'commonerror'}
|
||||
+ for k,v in mapError.items():
|
||||
+ if isinstance(e,k) or \
|
||||
+ type(e.message) == list and \
|
||||
+ all(isinstance(x,k) for x in e.message):
|
||||
+ typeError = v
|
||||
+ break
|
||||
else:
|
||||
typeError = 'error'
|
||||
errors.append({'type':typeError, 'field':var, 'message':mess})
|
@ -0,0 +1,26 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: $
|
||||
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="Calculate Utilities meta package"
|
||||
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
|
||||
SRC_URI=""
|
||||
|
||||
LICENSE="Apache-2.0"
|
||||
SLOT="3"
|
||||
KEYWORDS="amd64 x86"
|
||||
IUSE="cl_consolegui cl_client cl_desktop cl_console"
|
||||
|
||||
RDEPEND="${RDEPEND}
|
||||
=sys-apps/calculate-install-3.1.3-r3
|
||||
=sys-apps/calculate-i18n-3.1.3-r1
|
||||
=sys-apps/calculate-lib-3.1.3-r2
|
||||
=sys-apps/calculate-core-3.1.3-r1
|
||||
=sys-apps/calculate-update-3.1.3
|
||||
cl_client? ( =sys-apps/calculate-client-3.1.3 )
|
||||
cl_desktop? ( =sys-apps/calculate-desktop-3.1.3 )
|
||||
cl_consolegui? ( =sys-apps/calculate-console-gui-3.1.3-r1 )
|
||||
cl_console? ( =sys-apps/calculate-console-3.1.3 )
|
||||
"
|
Loading…
Reference in new issue