Update calculate-lib for work with util-linux 2.19.1

atratsevskiy
Mike Hiretsky 13 years ago
parent 7650738429
commit 89ffeb0dcb

@ -2,6 +2,13 @@
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
*calculate-lib-2.2.14-r2 (13 May 2011)
13 May 2011; Mike Hiretsky (mhiretskiy) <mh@calculate.ru>
+calculate-lib-2.2.14-r2.ebuild,
+files/calculate-lib-2.2.14-fix_root_type_detect.patch:
Update for bugfix.
*calculate-lib-2.2.14 (20 Apr 2011)
20 Apr 2011; Mike Hiretsky (mhiretskiy) <mh@calculate.ru>

@ -1,4 +1,5 @@
AUX calculate-lib-2.2.14-backport.patch 3577 RMD160 89315ee122c012411a11c02c1546f266c12d2c55 SHA1 0df662895aecbd7bce7ce104c8cec19fe49d9cdd SHA256 f7c5994e6b0cb2bc4913d2287570c2172eb3f901c27d521b14ccf3d6130ac4c0
AUX calculate-lib-2.2.14-fix_root_type_detect.patch 6398 RMD160 acc25d01099f4bc00cff4e8aaf118da883501913 SHA1 966dc33d3991756d14b5e48e45f2b72475f526b5 SHA256 3b23da15ce78a479c1558ddd1912f0340ef714b6147843329b44b9933d0c078d
AUX calculate-lib-2.2.8-file.patch 747 RMD160 8a1f90c822eaefac69b67aa6999a1dc8c2b51b9f SHA1 aeded1b0587785145f4e62f3e81a2726e7c4312d SHA256 45ce03a248d8bec22bbdf006ce607809761304d255467e687242f9423c8413a4
AUX lib_i18n_path.patch 1114 RMD160 6e561c46e91105f4e7686678771da21e8f3685a2 SHA1 b58e8906104b4b9d1a1bd8ecb6959767cad2d329 SHA256 2913821d3c069612485e6dd7fb0e71bc06e5061054309ad9ed6bac29eee732f2
DIST calculate-lib-2.1.8.tar.bz2 61178 RMD160 4a4ed063a9b4d3b82723f5f6eb046c97ad9fcda1 SHA1 93eb20057afff6e98c409388e1259a3ad078bb7a SHA256 ef8e315001663da7a45e69b82dc7c158fb0e10bd567efa95bf8a654ed441144a
@ -7,8 +8,9 @@ DIST calculate-lib-2.2.14.tar.bz2 108601 RMD160 e45e12b5eac886f31e6fd75d3ebe8538
EBUILD calculate-lib-2.1.8-r1.ebuild 730 RMD160 a207fbb024eaedeff679eb052b6ca04f289f914f SHA1 68c72562dc796958dd83dc4c59b2444678180b52 SHA256 b6a343b0f4d9e557ca42f5505c56c2373c04d1fa98191cf03b15cd0cdd0bb603
EBUILD calculate-lib-2.2.13.ebuild 620 RMD160 c6b655288e00b8225c87a7c0aee27df1602978bf SHA1 8effba1ef6dec2caf6c75162ced40d8d9c571702 SHA256 733ddccc79c4df5fac82a50a8c94b1494033ed7fb89f4df6ec95d5e8e10ab1d7
EBUILD calculate-lib-2.2.14-r1.ebuild 737 RMD160 2d18284f46a7a1960fc526ee38afe2f2a761e04c SHA1 8de7ec1b07543bf6046ccea0c40bcb794aa23e9a SHA256 d0fb8cff5aefd3f15b5c6a1ee4bc4a311c977d01e11a28f8426153edd44b63a9
EBUILD calculate-lib-2.2.14-r2.ebuild 832 RMD160 08bbdb3221fc9202d0de4b770993804a90a4069a SHA1 52309b3871a7d3e02b0ef03f522a990d6f704d56 SHA256 336c4324092b6e335cbf8c87e803b21ba1d80d21c1da5e38f9e126daa63c95a2
EBUILD calculate-lib-2.2.14.ebuild 620 RMD160 c6b655288e00b8225c87a7c0aee27df1602978bf SHA1 8effba1ef6dec2caf6c75162ced40d8d9c571702 SHA256 733ddccc79c4df5fac82a50a8c94b1494033ed7fb89f4df6ec95d5e8e10ab1d7
EBUILD calculate-lib-2.2.9999.ebuild 726 RMD160 6dce718f317825c712f7c9595a3e712ef6222cf9 SHA1 42e1607a36e826310ef5ed317d717c5aa8acc2bf SHA256 dce73aafa346ea1fd88b6e99d8f6184a562de56e3eb871c1b5849890b13c34c2
EBUILD calculate-lib-9999.ebuild 476 RMD160 3df165f011b324fa8dc37d0443e941263943dd61 SHA1 069ab864dc83f32c69c4349d807d25e1196756ee SHA256 07a628ede4f47849908dd543f879ab8b40a5ca887b892fa0f5cf6c1ef2a24cab
MISC ChangeLog 19454 RMD160 bb8be097c4e36069d0313d5991505ae9c2bd159e SHA1 60b5002286604057b4dccd4997646a041d382c3a SHA256 8530f69ec54a0e3f29c3fc5263de94ff1d958a3ddedb6a9459e5dfed58cd1be8
MISC ChangeLog 19669 RMD160 95eaef9f727cf4fddebf79ecd29ddb2dbb8f9006 SHA1 35f4c71bcd57f02638964c1c3e415a8598ba4022 SHA256 64c870d9530243e13c17f62525a81245a8365e24f8ff32b5123608fdb9e45dbe
MISC metadata.xml 303 RMD160 774b65ed76939d6878496ad6ef6451849bdced05 SHA1 7d08569697a290ede98c88ab59db3cdc3037bd15 SHA256 181519d9679fd9aee9a7a9806733a50728d3da0b1e0ad54f31499200f7f5c6ec

@ -0,0 +1,35 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI="3"
inherit distutils eutils
SRC_URI="ftp://ftp.calculate.ru/pub/calculate/calculate2/${PN}/${P}.tar.bz2"
DESCRIPTION="The library for Calculate 2"
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
LICENSE="Apache-2.0"
SLOT="2.2"
KEYWORDS="amd64 x86"
IUSE="minimal"
DEPEND="!<sys-apps/calculate-lib-2.1.8-r1
!=sys-apps/calculate-lib-2.1.9
!=sys-apps/calculate-lib-2.1.10
!minimal? ( dev-python/py-smbpasswd )
>=dev-python/pyxml-0.8
sys-apps/file[python]"
RDEPEND="${DEPEND}"
src_unpack() {
unpack "${A}"
cd "${S}"
# back port
epatch "${FILESDIR}/calculate-lib-2.2.14-backport.patch"
# fix detect root type
epatch "${FILESDIR}/calculate-lib-2.2.14-fix_root_type_detect.patch"
}

@ -0,0 +1,150 @@
commit 44395261d8d44561228572e4ce8039960eb80465
Author: Mike Hiretsky <mh@calculate.ru>
Date: Fri May 13 11:58:43 2011 +0400
Fix detect root device.
diff --git a/pym/cl_fill.py b/pym/cl_fill.py
index 0f53c65..172b861 100644
--- a/pym/cl_fill.py
+++ b/pym/cl_fill.py
@@ -23,7 +23,8 @@ import cl_overriding
from cl_vars_share import varsShare, clLocale
from os.path import exists as pathexists
from os import path
-from cl_utils import isMount, genpassword, getAvailableX11Drivers
+from cl_utils import isMount, genpassword, getAvailableX11Drivers, \
+ listDirectory
from encrypt import getHash
class fillVars(varsShare):
@@ -206,80 +207,59 @@ class fillVars(varsShare):
def get_os_root_dev(self):
"""Root filesystem device"""
- for record in open('/proc/cmdline','rb').readlines():
- re_res=re.search('(?:^|\s)root=(\S+)(\s|$)',record.strip())
- if re_res:
- rootparam=re_res.group(1)
- # check root for /dev/sd view
- if re.match("^\/dev\/[a-z]+[0-9]$",rootparam):
- return rootparam
- # check root set by uuid
- uuidpath = '/dev/disk/by-uuid'
- if os.access(uuidpath,os.R_OK):
- uuidDevs = filter(path.islink,
- map(lambda x: path.join(uuidpath,x),
- os.listdir(uuidpath)))
- mapUuidDev = dict(map(lambda x:(path.basename(x),
- path.normpath(path.join(uuidpath,
- os.readlink(x)))), uuidDevs))
- else:
- mapUuidDev = {}
- if re.match("^UUID=.*$",rootparam):
- uuid = rootparam[5:]
- if uuid in mapUuidDev:
- return mapUuidDev[uuid]
- mountLunes = self._runos("mount")
- if not mountLunes:
- return ""
- if type(mountLunes) == types.ListType:
- root_dev = mountLunes[0].split("on / type")[0].strip()
- if root_dev:
- return root_dev
+ record = open('/proc/cmdline','rb').read().strip()
+ re_resRealRoot=re.search('(?:^|\s)real_root=(\S+)(\s|$)',record)
+ re_resFakeRoot=re.search('(?:^|\s)root=(\S+)(\s|$)',record)
+ # param real_root priority that root
+ re_res = re_resRealRoot or re_resFakeRoot
+ if re_res:
+ rootparam=re_res.group(1)
+ # check root for /dev/sd view
+ if re.match("^\/dev\/[a-z]+.*$", rootparam):
+ return rootparam
+ # check root set by uuid
+ uuidpath = '/dev/disk/by-uuid'
+ if os.access(uuidpath,os.R_OK):
+ uuidDevs = filter(path.islink,
+ map(lambda x: path.join(uuidpath,x),
+ os.listdir(uuidpath)))
+ mapUuidDev = dict(map(lambda x:(path.basename(x),
+ path.normpath(path.join(uuidpath,
+ os.readlink(x)))), uuidDevs))
+ else:
+ mapUuidDev = {}
+ if re.match("^UUID=.*$",rootparam):
+ uuid = rootparam[5:]
+ if uuid in mapUuidDev:
+ return mapUuidDev[uuid]
+ # get device mounted to root
+ dfLines = self._runos("LANG=C df /")
+ if not dfLines:
return ""
+ if type(dfLines) == types.ListType and len(dfLines)>1:
+ root_dev = dfLines[1].split(" ")[0].strip()
+ if root_dev:
+ return {'none':'/dev/ram0'}.get(root_dev,root_dev)
+ return ""
def get_os_root_type(self):
"""Root device type (ram, hdd, livecd)"""
- mountLunes = self._runos("mount")
- if not mountLunes:
- return ""
- rootType = "hdd"
- if type(mountLunes) == types.ListType:
- flagCD = False
- for line in mountLunes:
- if "/dev/loop0 on / type" in line:
- rootType = "ram"
- break
- elif "/dev/loop0 on /newroot/mnt/livecd type" in line:
- rootType = "ram"
- flagCD = True
- break
- if rootType == "ram":
- if path.exists("/mnt/livecd") or flagCD:
- rootType = "livecd"
- return rootType
- rootDev = self.Get("os_root_dev")
- if rootType != "ram" and rootDev:
- slpRootDev = rootDev.split("/dev/")
- if len(slpRootDev) == 2:
- rDev = slpRootDev[1]
- if os.path.exists('/dev/disk/by-id'):
- devLines = os.listdir("/dev/disk/by-id")
- for name in devLines:
- pathname = path.join("/dev/disk/by-id", name)
- if path.islink(pathname):
- if rDev in os.readlink(pathname) and \
- "usb-" in name:
- rootType = "usb-hdd"
- break
- else:
- devLines = None
- if not devLines:
- return ""
- if rootType == "ram":
- rootType = "hdd"
- return rootType
- else:
- return ""
+ def link2pair(linkfile):
+ """Return pair (target,link) from link"""
+ basedir = os.path.dirname(linkfile)
+ targetfile = os.readlink(linkfile)
+ return (path.normpath(os.path.join(basedir,targetfile)),linkfile)
+ rootDev = self.Get("os_root_dev")
+ if rootDev:
+ if "/dev/ram" in rootDev:
+ return "livecd"
+ idDict = dict(map(link2pair,
+ filter(lambda x:path.islink(x),
+ map(lambda x:path.join('/dev/disk/by-id',x),
+ listDirectory('/dev/disk/by-id')))))
+ if "usb-" in idDict.get(rootDev,""):
+ return "usb-hdd"
+ return "hdd"
def get_hr_cdrom_set(self):
"""Cdrom variable"""

@ -2,6 +2,12 @@
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
# $Header: $
*calculate-utilities-2.2.14-r9 (13 May 2011)
13 May 2011; Mike Hiretsky (mhiretskiy) <mh@calculate.ru>
+calculate-utilities-2.2.14-r9.ebuild:
Update for calculate-lib.
*calculate-utilities-2.2.14-r8 (10 May 2011)
10 May 2011; Mike Hiretsky (mhiretskiy) <mh@calculate.ru>

@ -8,6 +8,7 @@ EBUILD calculate-utilities-2.2.14-r5.ebuild 840 RMD160 8e65da0cc97d58ff745d96f0d
EBUILD calculate-utilities-2.2.14-r6.ebuild 840 RMD160 57fa4d2c9f584231b0cc0de80a8c042bb1558be4 SHA1 13ac883058bcbaa93818bd66284f1858dd2f17ed SHA256 443fae617e813cf8e60ac4a9768af28c8ece1ad37ee9ce0f4a0fd3246f679002
EBUILD calculate-utilities-2.2.14-r7.ebuild 840 RMD160 458ccc8bdbbfa8dab41deeb4b77b85c31b36ac98 SHA1 594a5c6e10132eb0366ec6ebd8866e04d9b6436f SHA256 7c884c712de0c269284e834f50cf2501c42d490bd41a90513770ef24f909b496
EBUILD calculate-utilities-2.2.14-r8.ebuild 843 RMD160 10e072d6179f4bb6cf59a7e532fb4585b914ba0f SHA1 c8db0270a9efec7a4e25beccc1abaa853f9cdc6c SHA256 97e5ed30d29895e4112556828ab7c9589d20fcbc68f204f8aabaf91785099aaa
EBUILD calculate-utilities-2.2.14-r9.ebuild 843 RMD160 93f568a0c485d5650fa6fa1574f170353516100c SHA1 5a9bda01e59d99fb1a4a21969c64fecc2a429dd4 SHA256 33678f9e86dfd1a2873d74f262edd27c5601169a1d1b4fc8a2cc2e0e45f2b5f4
EBUILD calculate-utilities-2.2.14.ebuild 829 RMD160 ca16f926dbac23f8a83595b70723e07b362a3c06 SHA1 e952c7e4909082540bbf3ca1bc745a223880116a SHA256 8ce1c42a0a19e39d7db7b4e944f59b867d9f3c44c71df6ea3573dae9de83a7d5
EBUILD calculate-utilities-2.2.9999.ebuild 840 RMD160 0c7324a9ed480118ac19f62b162c9ee62c25f964 SHA1 7dadab1430ed147334ed7e9b4fcc86dc99e25d56 SHA256 f3ee28f9f765e7302c83eb4a15a09bdf066f09e6b40e34f6d52157a946df5e66
MISC ChangeLog 8058 RMD160 db7f1d4020ef6e02d16f36e57202dd6948aa371c SHA1 3403de2e8cf7fe095ab4c6f9b405a76ce76f872c SHA256 9d4364d8648751d4bb17aaaad1cf026413626c641f6c8df857e2c084ccfa5165
MISC ChangeLog 8234 RMD160 c79e9d27146173f229725ecd763b6815277a0d88 SHA1 77ea3d77758b1269e6acd092f01eab3822a1004d SHA256 4354a30dbc3e5671b0fef49ba816bc35e5e0065dd107ad808654243fe1ad2764

@ -0,0 +1,35 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
EAPI=3
DESCRIPTION="Calculate Utilities meta package"
HOMEPAGE="http://www.calculate-linux.org/main/en/calculate2"
SRC_URI=""
LICENSE="Apache-2.0"
SLOT="0"
KEYWORDS="amd64 x86"
IUSE="
cl_assemble
cl_builder
cl_client
cl_desktop
cl_installgui
cl_server
"
RDEPEND="${RDEPEND}
=sys-apps/calculate-install-2.2.14-r4
=sys-apps/calculate-templates-2.2.14-r3
=sys-apps/calculate-lib-2.2.14-r2
cl_assemble? ( =sys-apps/calculate-assemble-2.2.14-r1 )
cl_builder? ( =sys-apps/calculate-builder-2.2.14-r3 )
cl_client? ( =sys-apps/calculate-client-2.2.14 )
cl_desktop? ( =sys-apps/calculate-desktop-2.2.14 )
cl_installgui? ( =app-misc/calculate-install-gui-2.2.14 )
cl_server? ( =sys-apps/calculate-server-2.1.13-r1 )
"
Loading…
Cancel
Save