[devel] apt-python
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Пт Май 23 17:05:21 MSD 2008
On Fri, May 23, 2008 at 03:47:35PM +0400, Alexey Shabalin wrote:
> 23 мая 2008 г. 15:23 пользователь Alexey Tourbin написал:
> > Я также посмотрел код PackageKit, и у меня сложилось предварительное
> > мнение, что даже если эти байндинги в текущем их виде починить, то
> > PackageKit всё равно не заработает.
>
> Жаль. Хотелось бы его видеть в сизифе работающим.
backends/apt/helpers/aptBackend.py:
449 def install_files (self, inst_files):
450 '''
451 Implement the {backend}-install_files functionality
452 Install the package containing the inst_file file
453 '''
454 if not exists(inst_file):
455 self.error(ERROR_PACKAGE_NOT_FOUND,"Can't find %s"%inst_file)
456 return
457 deb = DebPackage(inst_file)
458 deps = {}
459 for k in ["Depends","Recommends"]:
460 if not deb._sections.has_key(k):
461 continue
462 for items in apt_pkg.ParseDepends(deb[k]):
463 assert len(items) == 1,"Can't handle or deps properly yet"
464 (pkg,ver,comp) = items[0]
465 if not deps.has_key(pkg):
466 deps[pkg] = []
467 deps[pkg].append((ver,comp))
468 for n in deps.keys():
469 p = Package(self,self._apt_cache[n],version=deps[n])
470 if not p.isInstalled:
471 p.markInstall()
472 assert self._apt_cache.getChanges()==[],"Don't handle install changes yet"
473 # FIXME: nasty hack. Need a better way in
474 ret = system("dpkg -i %s"%inst_file)
475 if ret!=0:
476 self.error(ERROR_UNKNOWN,"Can't install package")
В каждом шкафу есть свой скелет.
Есть вообще сомнения, что этот код работает (даже с дебиановским аптом).
Обратите внимание на разницу между inst_files в аргументе и inst_file
в теле функции. Просто питон отвалит в момент вызова этого кода и всё.
Впрочем, можно надеяться, что этот код будет вызываться не всякий раз.
Чего, так сказать, Вам желаю.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 197 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20080523/ff462b11/attachment-0002.bin>
Подробная информация о списке рассылки Devel