Обновление утилит

mhiretskiy
Mike khiretskiy 10 years ago
parent bd4ed130ed
commit 4391b84996

@ -2,6 +2,7 @@ AUX calculate-i18n-3.2.0_alpha10-r1.patch 239341 SHA256 237867da968f03263f7b7209
AUX calculate-i18n-3.2.0_alpha10-r2.patch 239633 SHA256 eb45bf3936c023a17b803f1ed21959f0f5855ff356b88c529006a7e416ecbe47 SHA512 06f1e2210cd1f64a342570af6a514cb7a439152dbf857515a352f6d8699e7ad34de6da43f9be40ac000e7eaf28d9fd94c66646681a6011e09a89c7484afd2d4b WHIRLPOOL fcdc8782b6ed2e0e3ade0225b298dc8c3132806351a2ee6193381bcea1a0435989ad7c1b36550907c3ab452e82522e3c836157a5db2c4493ed21d1e364c5edea
AUX calculate-i18n-3.2.0_alpha10-r3.patch 241985 SHA256 30f7b4e20b8843c8e09bf8364ccf875b5ec2465ee71de22f8edca95f0c61d382 SHA512 0057ff8751db2eeae8278661fc8930868f90ea6a23175df57068db23aaf747c6e5ec2be24db7c22b52af7380e54f33392ae4970c250e58824a771f5d153310e7 WHIRLPOOL 273f7261077a53560f5ce6ee0c61641be02b44cea6a2a29ba76d1ca5ea90c0b168671aa63e094f7336c5c409344a84fcbfd30092982ca7a23b04b537f1c8daf0
AUX calculate-i18n-3.2.0_alpha10-r4.patch 242367 SHA256 6de71fb7ac471000df0f0d37821aa582be104f1f67434a333381dd3baca4f398 SHA512 9b034476a5137fb57e418667e3afa8c0f3bafed311a35743107c9ae2276785c0e5fa7c1ae4bfb63515aed5720cc9cfc430d8ae478702dddbdb49fa0296a3bba7 WHIRLPOOL a1c6be2761ad14074d06d0e0b579346d6b44e1705e5ef956442ad99c533d8c5118e36cdaf8147670c65e536d38d74ae02f3fe27e2c5f8e82486a012312e116b9
AUX calculate-i18n-3.2.0_alpha10-r5.patch 242564 SHA256 c3e015935602ef3b850a878eb61611e4910f5126099e2a47bd86d3941621bd81 SHA512 38b699cc90defe91268d0edd89e5e86456d9096520db7309eeed2e4558160063ee8ecb1ebddbafde05ca3b05885b81d33badb2104d3fc51f1f4344f36897a340 WHIRLPOOL b00f9367d7d217a0f982138d38602ba4afb05dd1378fff3f3917f64d993af3805f91b2107073e34af450f89e3f520ccab1bdf13f8d811bcd10d61b238e428aaf
AUX calculate-i18n-3.2.0_alpha6-r1.patch 2028 SHA256 b9e8577bdd11aa5e37e276bfca165816456ac43407bd509043b23740cc5e4d60 SHA512 b66a449e3b6d2f44f91b920c33e3f69d12d9659eb9973653babe5a15e5fc7c4d6ff5774957c231fdbcb435faf7042b327deb5f7c968d0f75ae412cd5938da66d WHIRLPOOL 14fd8b210ef316b82e9993320e014a79c4f263b48124ff344c87cd22f72285070667063ea6a5a299191e50f38e2e378272f80daffa93e0075ab00d936274b775
DIST calculate-i18n-3.2.0_alpha10.tar.bz2 111001 SHA256 484c2135f361dfaaa326c2dc5c0f29cfc685f8a4dcf6fc363d8df72e3692b6c1 SHA512 c87e6e7d196c23012e6a1999ec93652a29d28ccef219702b85445237d3cce6a8fcad3929ef1ffeb5204747d025c3f79a6ae2f5fe1288f48e81144ca9479db5cf WHIRLPOOL 94614bd8c49cc0fa3636271dd43b91e24b193a00262837e7e17fa9aa02e475ba141e56fde566bd33f272818ac0dc6d915627b680c3ccc74fb642239fe6d869fc
DIST calculate-i18n-3.2.0_alpha6.tar.bz2 64584 SHA256 19a08288593778bb81df32c4c7d8ec6c2e3cfab3e98c778cc661d47a6d9c66e1 SHA512 b512ba91756af95ce7f388139280a9e8015a1a41c41b8101d56f5202df5cf42d1038d25dd3f97ab13542b5c85a6999eb303c338bf0aace7033cfb2987bfec660 WHIRLPOOL 80863dc1eeb451df069ca31e3b0cf5bbfdc56fcd838dd7047a9f494aaed1b0b4890dbc4fe812a6f46ad24b91606ec224380d5c5bc909a13965aa1defd907a364
@ -12,6 +13,7 @@ EBUILD calculate-i18n-3.2.0_alpha10-r1.ebuild 733 SHA256 27b827e75f6eb0d2e18c879
EBUILD calculate-i18n-3.2.0_alpha10-r2.ebuild 733 SHA256 c842ca44ca04de6645fce892658d62a7b26c43a35fd971f657c13d39fdd25c09 SHA512 50dc4cf0f67c122d4685dd826bf0e688692408ff6a0841095c23f8d7247675e728538284b48d24914b30b9ba84237e4821ede284a22d2eda605595329d05f56e WHIRLPOOL c3b78ec6c799587588ce6ba845b6a862fca26d767b9a1e4504164231aa4bf5a0454932239f990b42e456113ab714f50bb23af81b3ad14b97dd2a8edc7c4ca058
EBUILD calculate-i18n-3.2.0_alpha10-r3.ebuild 733 SHA256 504fcf519add1db10907ae7b795bb9f5b7471dba990f98b3564755bd33b044f2 SHA512 7c791af9c7e4df32ec4b3321d71f954e12789a3dd5d42536377347490395220f71de5491e761f3d365563e0598d106193c80746bb2e69454f6311f602f24c4de WHIRLPOOL ff1096e7ea788fc16f6b1847a35180c28dd34e5fea48d461d550af4a58afe3983a51641ceb2eb4ef1b73d1444c1a7f04a65a8bc0710cc547301faf9c89d7777a
EBUILD calculate-i18n-3.2.0_alpha10-r4.ebuild 733 SHA256 760e33a8fcbddce828fcb6cbaf864d7cb6cbb3b2a90ce2a63f6a7be524a430d2 SHA512 95501815c6a74b94f45ce71d7a736e65afd53674865404fe40263ef449468a7398b3100d09b435d241fb845051db92751c451cbc95a1e757b6a0567b16b481e9 WHIRLPOOL 6070e69be2d7ad9e7e5942eec7a2b483a5685c21572ce21d2737b1de739f4213733faab05bd3555822f63aa93c3124e4a94a9df91dca443c2f8cf093265d303a
EBUILD calculate-i18n-3.2.0_alpha10-r5.ebuild 733 SHA256 5efde9bfeacc5ef0c4affa2302c9e3b160946d791cac998a7a360383aadf0493 SHA512 79e2ea747626340d7850a78afacd786cfe974fd419ebe13dce8e3270983217a9286a93bdb762fd813e9e0bad4bfa8a7797f1430f0e8967a0fab50883b34f0472 WHIRLPOOL 77b35eff97421cfdef9895e8f5281cf193dfecd8d5f53fed91683beea1f728568cd84fbf3c3a7deb669ad6052581cb210807f6eec6ae872aa5a5082068e5ed3f
EBUILD calculate-i18n-3.2.0_alpha10.ebuild 590 SHA256 b14e52620a2230b40251a8111da01d0b6a460f880b55699099de644f73cbe275 SHA512 0e65611eea92c4d014f3f4ba8b5a16e1fd4a7f0df8e776c556d6852cf6d5c5352d101e5551bcd2d104869f1b4b652f37430640bc4bd43bf7144d69703bb8374f WHIRLPOOL ed98deedd644814000d1e4873feb4993f37950009e2a8b2b2e0dfb2d05159e5b56856b34871c1536c99845418c690c335770483145b25f35c2e1ae01234a653c
EBUILD calculate-i18n-3.2.0_alpha6-r1.ebuild 731 SHA256 be88afd34ad405aa054f0e2d571272005abcdb0fae565aee4831170cb8da2826 SHA512 f23bdf7f67ca241abcfc287a86d322119a9b34cbc733658b9f95d3836d669849eaed3b0704c2f22a50b43c14974bc33bc94837b4be60c073f54283d0a819f09b WHIRLPOOL 8bd173141576e8add3622d794175db07cd8edae447d6d95bff10fc6276c65db2c83f9dd4045feaffd019daf2d33d8055a108fd5ee39e57613753ffe328750369
EBUILD calculate-i18n-3.2.0_alpha6.ebuild 589 SHA256 4f8fa37f38584c2cf677381de4eb0b29d950e267092021b261646fc399c9ced0 SHA512 38ae5bd8627cef3b67177705f1f03d379161cca364de0adc8bcffb60616f234a45ffc1eb62b56966a4b4de39f75c6d7055b51bcaa05c4460e4bfbc546fc6fbf7 WHIRLPOOL ba058adfe7ce88bd7de4286e4cdeaa306cf4ccc560ffcc170f503e13e2bd10415b8325445ee4b7f975425142525030193802f2a6dddf18d5af9c8bd66768fd52

@ -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="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.2.0_alpha10"
DEPEND="sys-devel/gettext
${RDEPEND}"
src_unpack() {
unpack "${A}"
cd "${S}"
# apply revision changes
epatch "${FILESDIR}/calculate-i18n-3.2.0_alpha10-r5.patch"
}

@ -5,6 +5,7 @@ AUX calculate-update-3.2.0_alpha10-r4.patch 22930 SHA256 bb8d7fc90780ea99f38f083
AUX calculate-update-3.2.0_alpha10-r5.patch 22933 SHA256 3fedf2dca426d3e81cfb7855b1ae95fcc646d1c5c31de7606b7d9bc918612682 SHA512 85a5a6af470200fc49b482076fabeaf8f9c0cf33d03956b038fe267aa5c5694bdeea53e1377c5dd6e3a1f4559cc7412bbb9a14ddd8c6b3794799aeeb9181e4d2 WHIRLPOOL bef8e333249b4ae5937df0816b684d0962b928ae7737750442bd9ff188a5f28842f689c78b34cdce60f3405ebb260626dc5ca1f158c09e2834fb361af3e2bdbc
AUX calculate-update-3.2.0_alpha10-r6.patch 23842 SHA256 52ff1833754d7842317651b54141e3bbcbb021c6ae4ec0bb7477f5e9aab2a1b9 SHA512 63cba334d7e7c524d32ee527ef748e3e250685fecaa348bd9717568d66d64574c8bbf9434f53a70196b060375d091ee2d946774c1efb29354b022a2c7e85e0a7 WHIRLPOOL bbd6b7e65fd6b2b603b03f0246f6b47897392fb1b3e192933dee463195a87687e6f3d77a1a8530915ccbc7ae6dc1a2d6c41d9ce95eb9682117c29df24873df55
AUX calculate-update-3.2.0_alpha10-r7.patch 32191 SHA256 e1661fc5d4fa7ce0d4e9abddc5effe7090410cbb2a15305533af39cc136e9214 SHA512 6b72ec4919c43d7bcf4687e3359521860372d3951f58e2135f2a7accf8ccb8aa680a47dd7aaedf36388b25e0dbd3234143499b58076f277eefc9c11a0032bdfb WHIRLPOOL fa2196ba44ecec0752ee081549011739a449bb802c1a7e7d4fae4ade8b6a34f2a6fa52ce9cf7e1b57802a45c29a281963f1860171e9587abb1e034542f4ebd4e
AUX calculate-update-3.2.0_alpha10-r8.patch 34043 SHA256 a9415e815c112273782e45aa4cb28eadd9b9b4edba636f0a7e5ef86cb153ae80 SHA512 0dd7c9771191520aa735ea798308c3f1a7019c4d8756e352a20470c3edff14436496cb02a2843a191fbed1238162feef4c456ace47c249f9b6e9da3e188d2785 WHIRLPOOL 2fe00771581470748ecc9bf0dd88983091556667dda0807e4f744bdfbcdcba61e32da98fdd563e8c841c82b4edf28bffd9f3eb0e4596c0c6c169dc3282783c56
AUX calculate-update-3.2.0_alpha7-r1.patch 1086 SHA256 4de503ac11c623bae15c770e2d8a66679972dd3d358cb1852c34c553ebde77aa SHA512 eaa0e099441e4e55e0d98818c679590bdc421ac3029df4111ac280847921bb100fbc2af7886917e48582f3d1220e0b3e221d5537cf1a029265d790f1077b209a WHIRLPOOL 6b00347e85c4ee747a43e4cf0ad6dc411b9529d62c8296f0ed82291ccdd68823f45f110d3f23347a637e822f9a4407c57a3f3dd4aafbd0953ba83f935d4f3b1f
DIST calculate-update-3.2.0_alpha10.tar.bz2 25298 SHA256 8a20822ceea8fee9fc5cd9c790463f389f776ccb8cd80a9ddc56019913e48805 SHA512 ea66987e0e276f8050c218f863f6bb2b9c3fbc604c1427982f740a929a85a8dabe4fbdf1e776e61320642e47a117c301c5fe63b4f3ebc69d190dcd33bc00749f WHIRLPOOL 4910453edce2d21e020dbd7558e718983b1547efbce99e94f151980a0a8c09fd1bb8d4870d4f04c8e0d421696cb31977b422506a05249bff880d4b4c4b046135
DIST calculate-update-3.2.0_alpha6.tar.bz2 24918 SHA256 ba6c633330d68761bc426750dd5b3bb52d75843c1e5adc6f1ee41daa032e1e2e SHA512 c44e02e158758e5f1bfb26d1f1f276d27664e072df9aa3485840d4853320671a0323dc03ccfc31e78f1ae66003416d5723383967991fefbb5c427ec8447dccee WHIRLPOOL 14d5fbec32105e18f31304d7c70f1c57b98b4c3ffd83ca4bc209c622b71df218f2c63f006fb15b5804676c0421b86c05ac6ffef26651e1336a5cf820701900ff
@ -18,6 +19,7 @@ EBUILD calculate-update-3.2.0_alpha10-r4.ebuild 770 SHA256 e6c00b4eb44471c36d45f
EBUILD calculate-update-3.2.0_alpha10-r5.ebuild 770 SHA256 5058663bb7288a531948e1c6496e651b802c23337b1a1c065d1d5e602e29cfbe SHA512 ee3515729cda597e27da74acbcc9cb4fda0ba3780432bc78cbaf74fd9a1f053949739720f41698e22aa97b661a10e0e43aad91806a9ef40f0e5324075678b937 WHIRLPOOL e64bf4f8889fd308148fca5434677465e504125980039849de43f4f6bf646d0b970bd1d025121eb162c60bbd8e3a97c8af528337d14c890fdba173b32ad2bbdb
EBUILD calculate-update-3.2.0_alpha10-r6.ebuild 770 SHA256 2693e0a8c42a7d670b3d9e106425e446c6b4bb5796652041698e12ac5fd07208 SHA512 cf3c733e991efec51f7ea8d672a7172961c1a9245861b683841c45a290fe57681387b347be2c99030ce95aed04915bff1d10ce33aa380914a1855148350fa55e WHIRLPOOL 3338b38499d1b0a15afeda77b226f2a1f46bd8b9c64a373137dd510329326cfaf198f721cedf758f3dd71cd97a1b095b2b72953e4ede8956b561bbf7db3fe7ce
EBUILD calculate-update-3.2.0_alpha10-r7.ebuild 770 SHA256 8f3f8e6efa875b74dd51b0c172b5c274f9ea6118fcca6ce871cda06d42e1c2a8 SHA512 d90a16bc55591d0597e592d001f2f11ff5cdf3fd417d7a551ae8fc31e362569344f2e53d01e218d995a62ea6ae5167220f0d73c64a5ebb87b75325bce994fed8 WHIRLPOOL f532909219dcc0f6a13f5d5be2efbecff5b52ce3cff8778e6cdc604b37bec6841d36341df7a244099a608b707b8662249cdfc7f1023fd566e945a6ca79e28961
EBUILD calculate-update-3.2.0_alpha10-r8.ebuild 770 SHA256 f2a3f7c667bbb5bd97acc7ad5ca5c8e2c092cbdb75328db184bd56029c49d370 SHA512 c5bef0c7c04bae505751c5075ef2d2dc70097b19e9a9f6521aaa9bdbad278d78b1cb8635ca4fe19f3a80e3441632fb1e18b17267c538305510ba1fb90b988fe2 WHIRLPOOL 52ee2b36402ef7f9a72cf14ffdc4ea6822f06dae6ed0483e9b4f58b9b60943265429de15adfbc6955756c19532aedba315599507dd4d8362f017d7163d8650ec
EBUILD calculate-update-3.2.0_alpha10.ebuild 625 SHA256 fcf7c67110cd4b726c5acd91dbc121488261ee03fa02c1ce987cd1a552c3af74 SHA512 f0cdb147661c97907926db8a70c9dbd8142c91110b2a3caf56791dab5d7c53a821800ed777ea15765fbeea5e1c3e4b26fda614b4d9a1b1fcd48793185b440133 WHIRLPOOL d2323042d9d6db1d13f322877279cd2d39bee97a371ba393b8b8ed17df7fbcb3c141e26f02d1b3d9faf309d4b1458515fe277ff656cc5ff399ec416463c2e3f3
EBUILD calculate-update-3.2.0_alpha6.ebuild 613 SHA256 926d0feedb17e6ed88239296a28cc8113a9e81f3d2369d587f1647bb778bfb7b SHA512 141b324867ea1f744141a3facef0b87a33947085b53e8894387e402855dbab95bce203855f1923ea55c9ceae239227cae44cc840baeabca944ac07fd156a3720 WHIRLPOOL adf9914f598fc16f76c4a9b95115d22ff0a993f5e0c0823ff31e45395bfd9becf0f5dc23f41ff69a911a20673e7d3be45b08be1d7bf9cfc550ccdcc7c7515252
EBUILD calculate-update-3.2.0_alpha7-r1.ebuild 757 SHA256 b7991c8c837ea3be6ba82abe88fe80db1cdb1ab3b13daca86286884beb7dd06b SHA512 ba0604f395d14855146aa6a6fc1eab087789cb3379db7f7925fd13a3eed094459dcdcfc7fff7cfea99a398fe5dad307147711749c2d2eca308aca4e7d6eedd8d WHIRLPOOL d30db8bf3fe1ce41c12b49289be83801d5338970b06add9c63b49a6bf9d8b348f059cfb30025a1b5a56e44b983316a54e2a1ebc301fc3a42fa06a0210e2f37f8

@ -0,0 +1,33 @@
# 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 update Calculate Linux"
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
LICENSE="Apache-2.0"
SLOT="3"
KEYWORDS="amd64 x86"
IUSE=""
DEPEND="~sys-apps/calculate-core-3.2.0_alpha10
~sys-apps/calculate-install-3.2.0_alpha10
dev-python/pexpect"
RDEPEND="${DEPEND}"
src_unpack() {
unpack "${A}"
cd "${S}"
# apply revision changes
epatch "${FILESDIR}/calculate-update-3.2.0_alpha10-r8.patch"
}

@ -0,0 +1,767 @@
diff --git update/emerge_parser.py update/emerge_parser.py
index 80d012b..d18f36d 100644
--- update/emerge_parser.py
+++ update/emerge_parser.py
@@ -32,6 +32,7 @@ from calculate.lib.utils.files import getProgPath, readLinesFile, listDirectory,
from calculate.lib.utils.colortext.output import XmlOutput
from calculate.lib.utils.colortext.converter import (ConsoleCodes256Converter,
XmlConverter)
+from calculate.lib.cl_log import log
from calculate.lib.cl_lang import setLocalTranslate, getLazyLocalTranslate, _
@@ -218,16 +219,24 @@ class UninstallPackagesBlock(EmergeInformationBlock):
Блок emerge содержащий список удаляемых пакетов
"""
list = PackageList([])
+ verbose_result = ""
_new_line = EmergeInformationBlock._new_line
_color_block = EmergeInformationBlock._color_block
- token = ["These are the packages that would be unmerged",
- "Calculating removal order"]
+ token = ["Calculating removal order",
+ "These are the packages that would be unmerged",]
end_token = re.compile("All selected packages:.*\n")
- re_block = re.compile(r"All selected packages: (.*?){nl}".
- format(nl=_new_line, c=_color_block), re.DOTALL)
+ re_block = re.compile(
+ r"(?:{token}).*?{nl}(.*){nl}All selected packages: (.*?){nl}".
+ format(token="|".join(token),
+ nl=_new_line, c=_color_block), re.DOTALL)
def get_data(self, match):
- super(UninstallPackagesBlock, self).get_data(match)
+ re_clean = re.compile(
+ "^.*?({token}).*?{c}{nl}".format(token="|".join(self.token),
+ nl=self._new_line,c=self._color_block),re.DOTALL)
+ verbose_result = re_clean.sub("", match.group(1))
+ self.verbose_result = self._get_text(verbose_result)
+ self.result = self._get_text(match.group(2))
list_block = XmlConverter().transform(self.result).split()
self.list = PackageList(map(EmergePackage, list_block))
@@ -403,6 +412,16 @@ class UnemergingPackage(NotifierInformationBlock):
observer(EmergePackage(groups[2]), num=groups[0], max_num=groups[1])
+class FetchingTarball(NotifierInformationBlock):
+ """
+ Происходит скачивание архивов
+ """
+ token = "Saving to:"
+ re_block = re.compile("Saving to:\s*(\S+)?")
+
+ def notify(self, observer, groups):
+ observer(groups[0])
+
class InstallingPackage(NotifierInformationBlock):
"""
Запуск устанавливаемого пакета
@@ -447,7 +466,7 @@ class EmergeingErrorBlock(EmergeInformationBlock):
return self.text_converter.transform(readFile(self.result))
def action(self, child):
- raise EmergeError(_("Emerge %s is failed") % self.package)
+ raise EmergeError(_("Failed to emerge %s") % self.package)
class RevdepPercentBlock(NotifierInformationBlock):
@@ -500,8 +519,10 @@ class EmergeParser(object):
self.installing = InstallingPackage(self)
self.uninstalling = UnemergingPackage(self)
self.emerging = EmergingPackage(self)
+ self.fetching = FetchingTarball(self)
self.emerging.add_observer(self.mark_binary)
+ self.emerging.add_observer(self.skip_fetching)
if run:
self.run()
@@ -509,6 +530,9 @@ class EmergeParser(object):
if binary:
self.installing.mark_binary(package)
+ def skip_fetching(self, *argv, **kw):
+ self.fetching.action = lambda child: None
+
def add_element(self, element):
if element.token:
if type(element.token) == list:
@@ -587,6 +611,9 @@ class EmergeCache(object):
'/etc/make.profile'),
Md5Checkvalue('/var/lib/portage/world',
'/var/lib/portage/world_sets')]
+ logger = log("emerge-cache",
+ filename="/var/log/calculate/emerge-cache.log",
+ formatter="%(asctime)s - %(levelname)s - %(message)s")
def __init__(self):
self.files_control_values = {}
@@ -602,14 +629,20 @@ class EmergeCache(object):
f.write('\n')
for pkg in package_list:
f.write("%s\n"% str(pkg))
+ self.logger.info("Setting cache (%d packages)"%len(package_list))
- def drop_cache(self):
+ def drop_cache(self, reason=None):
if path.exists(self.cache_file):
with ignore(OSError):
os.unlink(self.cache_file)
+ self.logger.info("Droping cache. Reason: %s"%reason)
+ else:
+ self.logger.info("Droping empty cache. Reason: %s"%reason)
def get_cached_package_list(self):
self.read_cache()
+ if not path.exists(self.cache_file):
+ self.logger.info("Requesting empty cache")
if self.check_actuality():
return self.pkg_list
return None
@@ -618,7 +651,20 @@ class EmergeCache(object):
"""
Кэш считается актуальным если ни один из файлов не менялся
"""
- return self.get_control_values() == self.files_control_values
+ if self.get_control_values() == self.files_control_values:
+ self.logger.info(
+ "Getting actuality cache (%d packages)" % len(self.pkg_list))
+ return True
+ else:
+ reason = "Unknown"
+ for k,v in self.get_control_values().items():
+ if k in self.files_control_values:
+ if v != self.files_control_values[k]:
+ reason = "%s was modified"%k
+ else:
+ reason = "Checksum of file %s is not exist" % k
+ self.logger.info("Failed to get cache. Reason: %s" % reason)
+ return False
def read_cache(self):
self.files_control_values = {}
diff --git update/package_tools.py update/package_tools.py
index dd86cbd..a99af36 100644
--- update/package_tools.py
+++ update/package_tools.py
@@ -29,6 +29,7 @@ from calculate.lib.utils.files import (getProgPath, STDOUT,
PercentProgress, process, readFile,
readLinesFile)
from calculate.lib.utils.common import cmpVersion
+from calculate.lib.utils.tools import ignore
from contextlib import closing
@@ -140,11 +141,11 @@ class Git:
if path.exists(rpath):
if not path.isdir(rpath):
raise GitError(
- _("Repository {path} is not directory").format(
+ _("Repository {path} is not a directory").format(
path=rpath))
if not path.isdir(self._gitDir(rpath)):
raise GitError(
- _("Repository {path} is not git").format(
+ _("Repository {path} is not Git").format(
path=rpath))
return True
return False
@@ -155,7 +156,7 @@ class Git:
"""
git = getProgPath("/usr/bin/git")
if not git:
- raise GitError(_("Git utility is not found"))
+ raise GitError(_("The Git tool is not found"))
return git
@staticmethod
@@ -191,9 +192,9 @@ class Git:
error = gitClone.read()
if "Remote branch %s not found" % branch in error:
raise GitError(
- _("Branch {branch} not found in {url} repository").format(
+ _("Branch {branch} not found in repository {url}").format(
branch=branch, url=url))
- raise GitError(_("Failed to clone {url} repository").format(
+ raise GitError(_("Failed to clone repository {url}").format(
url=url), error)
return True
@@ -272,7 +273,7 @@ class Git:
if command("get_rev_tag") or command("fetchshallow"):
if not command("has_branch"):
raise GitError(
- _("Branch {branch} not found in {url} repository"
+ _("Branch {branch} not found in repository {url}"
).format(branch=branch, url=url))
# если среди коммитов есть указанный коммит
if command("has_revision"):
@@ -281,7 +282,7 @@ class Git:
return True
elif command("checkout"):
return False
- raise GitError(_("Failed to clone {url} repository").format(
+ raise GitError(_("Failed to clone repository {url}").format(
url=url), error[-1])
def pullRepository(self, rpath, quiet_error=False, cb_progress=None):
@@ -294,7 +295,7 @@ class Git:
if not quiet_error:
error = gitPull.read()
raise GitError(
- _("Failed to update repository in {rpath}").format(
+ _("Failed to update the repository in {rpath}").format(
rpath=rpath), error)
return False
return True
@@ -316,7 +317,7 @@ class Git:
if gitFetch.failed():
error = gitFetch.read()
raise GitError(
- _("Failed to update repository in {rpath}").format(
+ _("Failed to update the repository in {rpath}").format(
rpath=rpath), error)
return True
@@ -332,7 +333,7 @@ class Git:
return not any(x.strip() for x in git_status)
else:
raise GitError(
- _("Wrong repository in {rpath} directory").format(
+ _("Wrong repository in the {rpath} directory").format(
rpath=rpath))
def parseStatusInfo(self, data):
@@ -376,8 +377,7 @@ class Git:
return git_show.read().strip()
else:
raise GitError(
- _("Failed to get status of repository in "
- "{rpath} directory").format(
+ _("Failed to get the repository status for {rpath}").format(
rpath=rpath))
def getStatusInfo(self, rpath):
@@ -395,13 +395,12 @@ class Git:
retDict = self.parseStatusInfo(git_status.read())
if not retDict:
raise GitError(
- _("Failed to get status of repository in "
- "{rpath} directory").format(
+ _("Failed to get the repository status for {rpath}").format(
rpath=rpath))
return retDict
else:
raise GitError(
- _("Wrong repository in {rpath} directory").format(
+ _("Wrong repository in the {rpath} directory").format(
rpath=rpath))
def resetRepository(self, rpath, to_origin=False, to_rev=None, info=None):
@@ -434,7 +433,7 @@ class Git:
rpath,
"clean", "-fd", stderr=STDOUT)
if git_reset.failed() or git_clean.failed():
- raise GitError(_("Failed to clean {rpath} repository").format(
+ raise GitError(_("Failed to clean the {rpath} repository").format(
rpath=rpath))
return True
@@ -456,11 +455,11 @@ class Git:
error = git_checkout.read()
if "pathspec '%s' did not match" % branch in error:
raise GitError(
- _("Branch {branch} not found in {rpath} repository").format(
+ _("Branch {branch} not found in repository {rpath}").format(
branch=branch, rpath=rpath))
raise GitError(
- _("Failed to change branch to {branch} in "
- "{rpath} repository").format(branch=branch,
+ _("Failed to change branch to {branch} in the {rpath} "
+ "repository").format(branch=branch,
rpath=rpath), error)
return True
@@ -600,16 +599,18 @@ class PackageInformation:
pkg_list = "|".join(
[x['CATEGORY/PN'].replace("+", r"\+") for x in self.query_packages])
output = pexpect.spawn(self.eix_cmd, ["--xml", pkg_list]).read()
- xml = ET.fromstring(output)
- for pkg in self.query_packages:
- cat_pn = pkg['CATEGORY/PN']
- if not cat_pn in self.information_cache:
- descr_node = xml.find(
- 'category[@name="%s"]/package[@name="%s"]/description'
- % (pkg['CATEGORY'], pkg['PN']))
- if descr_node is not None:
- self.information_cache[cat_pn]['DESCRIPTION'] = \
- descr_node.text
+ re_cut = re.compile("^.*?(?=<\?xml version)",re.S)
+ with ignore(ET.ParseError):
+ xml = ET.fromstring(re_cut.sub('',output))
+ for pkg in self.query_packages:
+ cat_pn = pkg['CATEGORY/PN']
+ if not cat_pn in self.information_cache:
+ descr_node = xml.find(
+ 'category[@name="%s"]/package[@name="%s"]/description'
+ % (pkg['CATEGORY'], pkg['PN']))
+ if descr_node is not None:
+ self.information_cache[cat_pn]['DESCRIPTION'] = \
+ descr_node.text
while self.query_packages:
self.query_packages.pop()
diff --git update/update.py update/update.py
index 2f867f4..03a9eef 100644
--- update/update.py
+++ update/update.py
@@ -36,6 +36,7 @@ from calculate.lib.utils.files import (getProgPath, STDOUT, removeDir,
from calculate.lib.cl_lang import (setLocalTranslate, getLazyLocalTranslate,
RegexpLocalization, _)
import emerge_parser
+import logging
from emerge_parser import EmergeParser, EmergeCommand, EmergeError, EmergeCache
setLocalTranslate('cl_update3', sys.modules[__name__])
@@ -56,6 +57,8 @@ class Update:
emerge_parser.CommandExecutor.logfile = commandLog
self.color_print = get_color_print()
self.emerge_cache = EmergeCache()
+ if self.clVars.Get('cl_env_debug_set') == 'off':
+ EmergeCache.logger.logger.setLevel(logging.WARNING)
self.emerge_cache.check_list = (
self.emerge_cache.check_list +
map(emerge_parser.GitCheckvalue,
@@ -116,7 +119,7 @@ class Update:
raise UpdateError(_("Update is already running. "
"Try to run later."))
else:
- self.startTask(_("Waiting for complete another update"))
+ self.startTask(_("Waiting for another update to be complete"))
while any(ifilter(lambda x: os.getpid() != x,
search_worked_process('update', dv))):
time.sleep(0.3)
@@ -133,8 +136,8 @@ class Update:
"cl_update_rep_rev", "cl_update_branch_name"],
where="cl_update_rep_name", eq=repname, limit=1))
if not url or not rpath:
- raise UpdateError(_("Variables with repositories settings "
- "is not configured"))
+ raise UpdateError(_("Configuration variables for repositories "
+ "are not setup"))
self.addProgress()
if clean_on_error:
try:
@@ -148,7 +151,7 @@ class Update:
self.printWARNING(str(e))
self.endTask(False)
self.startTask(
- _("Re-fetch {name} repository").format(name=repname))
+ _("Re-fetching the {name} repository").format(name=repname))
self.addProgress()
try:
rpath_new = "%s_new" % rpath
@@ -157,7 +160,7 @@ class Update:
removeDir(rpath)
os.rename(rpath_new, rpath)
except OSError:
- raise UpdateError(_("Permission denied to change "
+ raise UpdateError(_("Permission denied to modify the "
"{repname} repository").format(
repname=repname))
finally:
@@ -179,7 +182,7 @@ class Update:
"""
layman = getProgPath('/usr/bin/layman')
if not layman:
- raise UpdateError(_("Layman utility is not found"))
+ raise UpdateError(_("The Layman tool is not found"))
rpath = self.clVars.Select('cl_update_other_rep_path',
where='cl_update_other_rep_name', eq=repname,
limit=1)
@@ -193,7 +196,7 @@ class Update:
p = process(layman, "-s", repname, stderr=STDOUT)
if p.failed():
raise UpdateError(
- _("Failed to update repository {rname}").format(rname=repname),
+ _("Failed to update the {rname} repository").format(rname=repname),
addon=p.read())
return True
@@ -203,12 +206,12 @@ class Update:
"""
egenCache = getProgPath('/usr/bin/egencache')
if not egenCache:
- raise UpdateError(_("Portage utility is not found"))
+ raise UpdateError(_("The Portage tool is not found"))
cpu_num = self.clVars.Get('hr_cpu_num')
p = process(egenCache, "--repo=%s" % repname, "--update",
"--jobs=%s" % cpu_num, stderr=STDOUT)
if p.failed():
- raise UpdateError(_("Failed to update cache of {rname} "
+ raise UpdateError(_("Failed to update the cache of the {rname} "
"repository").format(rname=repname),
addon=p.read())
return True
@@ -219,7 +222,7 @@ class Update:
"""
emerge = getProgPath("/usr/bin/emerge")
if not emerge:
- raise UpdateError(_("Emerge utility is not found"))
+ raise UpdateError(_("The Emerge tool is not found"))
self.addProgress()
p = PercentProgress(emerge, "--metadata", part=1, atty=True)
for perc in p.progress():
@@ -238,7 +241,7 @@ class Update:
"""
eixupdate = getProgPath("/usr/bin/eix-update")
if not eixupdate:
- raise UpdateError(_("Eix utility is not found"))
+ raise UpdateError(_("The Eix tool is not found"))
self.addProgress()
excludeList = []
if self.clVars.Get('cl_update_eixupdate_force') == 'force':
@@ -284,12 +287,10 @@ class Update:
"""
self.endTask()
_print = self.color_print
- if max_num > 1:
- one = _print.foreground(Colors.YELLOW).bold("{0}", num)
- two = _print.foreground(Colors.YELLOW).bold("{0}", max_num)
- part = " (%s of %s)" % (one, two)
- else:
- part = ""
+ one = _print.bold("{0}", num)
+ two = _print.bold("{0}", max_num)
+ part = _(" ({current} of {maximum})").format(current=one,
+ maximum=two)
if self.is_binary_pkg(pkg,binary):
_print = _print.foreground(Colors.PURPLE)
else:
@@ -312,19 +313,24 @@ class Update:
self.startTask(_("Installing %s") %
_print(str(pkg)))
+ def _printFetching(self, fn):
+ """
+ Вывод сообщения о скачивании
+ """
+ self.endTask()
+ self.startTask(_("Fetching binary packages"))
+
+
def _printUninstallPackage(self, pkg, num=1, max_num=1):
"""
Вывод сообщения удаления пакета
"""
self.endTask()
_print = self.color_print
- if max_num > 1:
- one = _print.foreground(Colors.YELLOW).bold("{0}", num)
- two = _print.foreground(Colors.YELLOW).bold("{0}", max_num)
- part = _(" ({current} of {maximum})").format(current=one,
- maximum=two)
- else:
- part = ""
+ one = _print.bold("{0}", num)
+ two = _print.bold("{0}", max_num)
+ part = _(" ({current} of {maximum})").format(current=one,
+ maximum=two)
_print = _print.foreground(Colors.RED)
self.startTask(
@@ -337,7 +343,7 @@ class Update:
"""
cmd_path = getProgPath(cmd)
if not cmd_path:
- raise UpdateError(_("Failed to find %s command") % cmd)
+ raise UpdateError(_("Failed to find the %s command") % cmd)
with EmergeParser(
emerge_parser.CommandExecutor(cmd_path, params)) as emerge:
self._startEmerging(emerge)
@@ -349,7 +355,7 @@ class Update:
"""
cmd_path = getProgPath(cmd)
if not cmd_path:
- raise UpdateError(_("Failed to find %s command") % cmd)
+ raise UpdateError(_("Failed to find the %s command") % cmd)
with EmergeParser(
emerge_parser.CommandExecutor(cmd_path, params)) as emerge:
revdep = RevdepPercentBlock(emerge)
@@ -409,7 +415,7 @@ class Update:
self._display_pretty_package_list(pkglist)
if emerge.install_packages.remove_list:
self.printSUCCESS(_print(
- _("List removal packages")))
+ _("Listing packages for removal")))
self._display_pretty_package_list(
emerge.install_packages.remove_list, remove_list=True)
if str(emerge.download_size) != "0 kB":
@@ -422,12 +428,13 @@ class Update:
"""
# подробный список пакетов
if self.clVars.Get('cl_verbose_set') == 'on':
- self.printPre(str(emerge.uninstall_packages))
+ self.printPre(self._emerge_translate(
+ emerge.uninstall_packages.verbose_result))
else:
_print = self.color_print
pkglist = emerge.uninstall_packages.list
self.printSUCCESS(_print.bold(
- _("List removal packages")))
+ _("Listing packages for removal")))
self._display_pretty_package_list(pkglist, remove_list=True)
def getCacheOnWorld(self, params, packages, check=False):
@@ -439,7 +446,8 @@ class Update:
elog = EmergeLog(
EmergeLogNamedTask(ClUpdateAction.log_names['premerge']))
if check and (elog.list or elog.remove_list):
- self.emerge_cache.drop_cache()
+ self.emerge_cache.drop_cache(
+ "Some packages was installed or removed")
return params, packages
installed_pkgs = elog.list
new_packages = self.emerge_cache.get_cached_package_list()
@@ -475,7 +483,8 @@ class Update:
emerge.run()
if "@world" in packages:
if emerge.install_packages.remove_list:
- self.emerge_cache.drop_cache()
+ self.emerge_cache.drop_cache(
+ "List has packages for remove")
else:
self.updateCache(emerge.install_packages.list)
if not emerge.install_packages.list:
@@ -483,7 +492,7 @@ class Update:
return True
self._display_install_package(emerge)
except EmergeError:
- self.emerge_cache.drop_cache()
+ self.emerge_cache.drop_cache("Emerge error")
self.printPre(self._emerge_translate(emerge.prepare_error))
raise
if self.clVars.Get('cl_update_pretend_set') == 'on':
@@ -516,10 +525,11 @@ class Update:
emerge.emerging.add_observer(self._printEmergePackage)
emerge.installing.add_observer(self._printInstallPackage)
emerge.uninstalling.add_observer(self._printUninstallPackage)
+ emerge.fetching.add_observer(self._printFetching)
try:
emerge.run()
except EmergeError:
- self.emerge_cache.drop_cache()
+ self.emerge_cache.drop_cache("Emerge error")
if emerge.emerging_error:
self.printPre(
self._emerge_translate(emerge.emerging_error.log))
@@ -547,7 +557,7 @@ class Update:
if not emerge.install_packages.list:
return True
except EmergeError:
- self.emerge_cache.drop_cache()
+ self.emerge_cache.drop_cache("Emerge error")
self.printPre(self._emerge_translate(emerge.prepare_error))
raise
self._startEmerging(emerge)
diff --git update/utils/cl_update.py update/utils/cl_update.py
index 2ac2c36..a58c827 100644
--- update/utils/cl_update.py
+++ update/utils/cl_update.py
@@ -51,8 +51,7 @@ class ClUpdateAction(Action):
return func
def pkg_color(text):
- _print = get_color_print()
- return _print.bold.foreground(Colors.BLUE)(text)
+ return text
log_names = {'premerge': "check updates",
'python_updater': "update python modules",
@@ -151,7 +150,7 @@ class ClUpdateAction(Action):
]
},
{'name': 'update_other:depclean',
- 'group': __("Cleaning system from needless packages"),
+ 'group': __("Cleaning the system from needless packages"),
'tasks': [
{'name': 'update_other:update_depclean',
'message': __("Calculating dependencies"),
@@ -209,19 +208,19 @@ class ClUpdateAction(Action):
'tasks': [
{'name': 'sync_reps',
'foreach': 'cl_update_sync_rep',
- 'message': __("Syncing {eachvar:capitalize} repository"),
+ 'message': __("Syncing the {eachvar:capitalize} repository"),
'method': 'Update.syncRepositories(eachvar)',
'condition': lambda Get: Get('cl_update_sync_rep')
},
{'name': 'sync_other_reps',
'foreach': 'cl_update_other_rep_name',
- 'message': __("Syncing {eachvar:capitalize} repository"),
+ 'message': __("Syncing the {eachvar:capitalize} repository"),
'method': 'Update.syncLaymanRepository(eachvar)',
'condition': lambda Get: Get('cl_update_other_set') == 'on'
},
{'name': 'sync_reps:regen_cache',
'foreach': 'cl_update_sync_overlay_rep',
- 'message': __("Updating {eachvar:capitalize} repository cache"),
+ 'message': __("Updating the {eachvar:capitalize} repository cache"),
'essential': False,
'method': 'Update.regenCache(eachvar)',
'condition': (
@@ -231,12 +230,12 @@ class ClUpdateAction(Action):
},
{'name': 'sync_other_reps:regen_other_cache',
'foreach': 'cl_update_other_rep_name',
- 'message': __("Updating {eachvar:capitalize} repository cache"),
+ 'message': __("Updating the {eachvar:capitalize} repository cache"),
'method': 'Update.regenCache(eachvar)',
'essential': False,
},
{'name': 'emerge_metadata',
- 'message': __("Metadata trasfer"),
+ 'message': __("Metadata transfer"),
'method': 'Update.emergeMetadata()',
'condition': (
lambda Get: (Get('cl_update_outdate_set') == 'on' and
@@ -244,7 +243,7 @@ class ClUpdateAction(Action):
Get('cl_update_metadata_force') == 'force'))
},
{'name': 'eix_update',
- 'message': __("Updating eix cache"),
+ 'message': __("Updating the eix cache"),
'method': 'Update.eixUpdate()',
'condition': (
lambda Get: (Get('cl_update_outdate_set') == 'on' and
diff --git update/variables/update.py update/variables/update.py
index 01eedf8..1c22e5c 100644
--- update/variables/update.py
+++ update/variables/update.py
@@ -74,8 +74,8 @@ class VariableClUpdateRevSet(Variable):
"cl_update_eixupdate_force"]
def init(self):
- self.help = _("revision update")
- self.label = _("Revision update")
+ self.help = _("make a revision update")
+ self.label = _("Make a revision update")
class VariableClUpdateRep(Variable):
"""
@@ -122,7 +122,7 @@ class VariableClUpdateSystemProfile(ReadonlyVariable):
path.join(path.dirname(make_profile),
os.readlink(make_profile)))
except:
- raise VariableError(_("Failed to determine system profile"))
+ raise VariableError(_("Failed to determine the system profile"))
class VariableClUpdateLaymanStorage(ReadonlyVariable):
"""
@@ -239,8 +239,8 @@ class VariableClUpdateSyncRep(Variable):
untrusted = True
def init(self):
- self.help = _("synchronize repositories (all by default)")
- self.label = _("Synchronize repositories")
+ self.help = _("synchronized repositories (all by default)")
+ self.label = _("Synchronized repositories")
def set(self,value):
orderList = self.Get('cl_update_rep_name')
@@ -288,15 +288,15 @@ class VariableClUpdateMetadataForce(Variable):
#untrusted = True
def init(self):
- self.help = ("'force' - " + _("force update ebuilds metadata") +
- ",\n'skip' - " + _("skip update ebuilds metadata") +
- ",\n'auto' - " + _("update metadata if they are outdated"))
+ self.help = ("'force' - " + _("force the update ebuilds metadata") +
+ ",\n'skip' - " + _("skip the ebuild metadata update") +
+ ",\n'auto' - " + _("update metadata if it is outdated"))
self.label = _("Update metadata")
def choice(self):
return [("force", _("Force")),
("skip", _("Skip")),
- ("auto", _("By need"))]
+ ("auto", _("If needed"))]
class VariableClUpdateEixupdateForce(Variable):
"""
@@ -310,15 +310,16 @@ class VariableClUpdateEixupdateForce(Variable):
#untrusted = True
def init(self):
- self.help = ("'force' - " + _("force update eix cache") +
- ",\n'skip' - " + _("skip update eix cache") +
- ",\n'auto' - " + _("update eix cache if it is outdated"))
- self.label = _("Update eix cache")
+ self.help = ("'force' - " + _("force the eix cache update") +
+ ",\n'skip' - " + _("skip the eix cache update") +
+ ",\n'auto' - " + _("update the eix cache if it "
+ "is outdated"))
+ self.label = _("Update the eix cache")
def choice(self):
return [("force", _("Force")),
("skip", _("Skip")),
- ("auto", _("By need"))]
+ ("auto", _("If needed"))]
class VariableClUpdateOtherSet(Variable):
"""
@@ -389,9 +390,10 @@ class VariableClUpdatePretendSet(Variable):
opt = ["-p", "--pretend"]
def init(self):
- self.label = _("Pretend package update")
- self.help = _("instead of actually performing packages update, "
- "simply only display what have been installed")
+ self.label = _("Pretend a package update")
+ self.help = _("instead of actually performing the update, "
+ "simply display the list of packages that "
+ "will be installed")
class VariableClUpdateSyncOnlySet(Variable):
"""
@@ -399,7 +401,7 @@ class VariableClUpdateSyncOnlySet(Variable):
"""
type = "bool"
value = "off"
- opt = ["-s","--sync-only"]
+ opt = ["-s", "--sync"]
def init(self):
self.label = _("Only synchronize repositories")
@@ -423,5 +425,5 @@ class VariableClUpdateWaitAnotherSet(Variable):
opt = ["--wait-another-update"]
def init(self):
- self.label = _("Wait for complete another update")
- self.help = _("wait until the other updates or abort")
+ self.label = _("Wait for another update to be complete")
+ self.help = _("wait until the running update is finished")
diff --git update/wsdl_update.py update/wsdl_update.py
index 10ec376..9bd535e 100644
--- update/wsdl_update.py
+++ update/wsdl_update.py
@@ -39,7 +39,7 @@ class Wsdl(WsdlBase):
# категория метода
'category': __('Update'),
# заголовок метода
- 'title': __("Update System"),
+ 'title': __("Update the System"),
# иконка для графической консоли
'image': 'software-properties,preferences-desktop',
# метод присутствует в графической консоли
@@ -60,7 +60,7 @@ class Wsdl(WsdlBase):
'setvars': {'cl_action!': 'sync'},
# описание груп (список лямбда функций)
'groups': [
- lambda group: group(_("Update system"),
+ lambda group: group(_("Update the system"),
normal=(),
expert=(
'cl_rebuild_world_set', 'cl_update_rev_set',

@ -7,6 +7,7 @@ EBUILD calculate-utilities-3.2.0_alpha10-r15.ebuild 842 SHA256 dd78206b63c19f01f
EBUILD calculate-utilities-3.2.0_alpha10-r16.ebuild 842 SHA256 8e24ee93a1b2fa4a183b6e8ada0ed6b0175cf89b8c9cee2e95ae84b4949bcddd SHA512 1242da4816942ddbcaab7ac207888cd92057f70582b46196923c7d512a4fb196f7abcb3c7c42e97fb620347725cbfe1abac16fc69883c7c68aa6ed11ad067a9e WHIRLPOOL 372fc7c75e69676aa81ff9f8c884ad1497f9fef761a89220346c0ffb56051e16c2f6592cfedb0645ceb8306a3459eab76078a50a3afcfcbfa5be65e2f3dc0fd0
EBUILD calculate-utilities-3.2.0_alpha10-r17.ebuild 842 SHA256 a1dceee3faff64e7391901339da6b7c9abf9c8f23ccdb7b9602ea3de43058a0f SHA512 a295b7a39ca8bd33255a5e582a8f695e952ec713a36c0565b1b5994a441bbf8adb180b976c33026014de0802f2f3b2a7ef91840a2a2dabc5488520f77b2bf6c4 WHIRLPOOL 734ba2fec06be02f8de832b3e636e076c0cdb2fd728d3b002443bb03816a97d09b5766eda3f216f5665394720d1ff9d2635f56f859a6f30d90504ab8cdab17cd
EBUILD calculate-utilities-3.2.0_alpha10-r18.ebuild 842 SHA256 7ac4b442da77767d9d5886d14c99b63915f4b0a2d7353229de865f11027f78c4 SHA512 b1b8aec1df28e1f1ac29036e28f1a5026e1bcb75516323645d3f696ef9f7324582f6d0196959730855b92cfa7c77bd77c29852e7c052a6614102a12c62fb80d1 WHIRLPOOL 25e14f00d9fbf2149d1037e14ef6e8c36b53e9f7182106493411cffd612b695499c286171fc868957e19d9d700f846dce4c6b3fe169caf217ad605c384191e2e
EBUILD calculate-utilities-3.2.0_alpha10-r19.ebuild 842 SHA256 65e2ec134bfdf03bd25f6e4bfa921e7d3ec78314ab86587899c7766f15aaea9c SHA512 b2bb5b89019ed6d348b361593281f98de9ef4da71d7cce9bd7cf96a452f80d14c8657b0880d68824717da6c5ef55cf28effb2ad6aaadad4550eabe6e4874f27f WHIRLPOOL 9a2d4c5f3fd5422a9e91213863aee5f6ea06f73e90784f8c5d0f1d709f80f4e31e0d7b373b98a874a6a9888ed58a0c8df9a94349cea9a7f109d5d3c31f34d9f3
EBUILD calculate-utilities-3.2.0_alpha10-r2.ebuild 842 SHA256 62a6fa86d44b51242d08753510c382076378aeaaba1b927f322d06fa0b17bca0 SHA512 5a39b25013adfe53d1d50efa87354308b384e956aff0a3a2b7072345df7b9c67d2642666a9dae2ccd77406870161ff88c150cf07eedacd9a6b541631d11de940 WHIRLPOOL 66ecd6e470ad72a7643227deba42125baa8ee72bfa67c7e4fbed71b6095c10a51ea601045f66f8612404cef60cdeb77372eb63a6a0cf932cfab759fd5d09cd6e
EBUILD calculate-utilities-3.2.0_alpha10-r3.ebuild 842 SHA256 5e86b76bac016fb80d9e8ea2f87f2e3281b15e66f30db317dc0f4c13194df150 SHA512 37c86dd04ef452ac88ea65fb0c978a7ce71461d20bcd90d6f492f0a063f2535510f6f33cd3d7331961b6857b699b24e15264356ec38e2c6192fdd993d8328d66 WHIRLPOOL bd3ecf0452354e0e2bf27d3d169885ab2940d7a196a85551d71c2f9607e19177e7cc867324fed824c4ac0c7fb534fbf3a4d90a361de86162e2b82ee676f17d97
EBUILD calculate-utilities-3.2.0_alpha10-r4.ebuild 842 SHA256 784b3b5e67ff3615090ea96c8b85b558bd8dbef4d1fabdcba58d5d5ff1139d52 SHA512 2d93039b127c977541a955a69a22ebdc3cb965489c75e6e125f8356fcafc1e934c2a8cc21ffe8ad8f75db26971b79adac8e25c13007b39d5ebecaee2dde78115 WHIRLPOOL caff4b42d86c465e5271099f2adf3b7347a62868e8828465922b0e6b09189f6787dcf5f4ee6f262787650ee5ee76e7317b5f147909e59c6230fc7fb6394516ed

@ -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.2.0_alpha10-r3
=sys-apps/calculate-i18n-3.2.0_alpha10-r5
=sys-apps/calculate-lib-3.2.0_alpha10-r5
=sys-apps/calculate-core-3.2.0_alpha10-r9
=sys-apps/calculate-update-3.2.0_alpha10-r8
cl_client? ( =sys-apps/calculate-client-3.2.0_alpha10-r2 )
cl_desktop? ( =sys-apps/calculate-desktop-3.2.0_alpha10 )
cl_consolegui? ( =sys-apps/calculate-console-gui-3.2.0_alpha10 )
cl_console? ( =sys-apps/calculate-console-3.2.0_alpha10-r1 )
"
Loading…
Cancel
Save