Bug 23667 - Прошу собрать python-apt
Summary: Прошу собрать python-apt
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: apt (show other bugs)
Version: unstable
Hardware: all Linux
: P3 normal
Assignee: placeholder@altlinux.org
QA Contact: qa-sisyphus
URL:
Keywords: distro-blocker
Depends on:
Blocks: 23155
  Show dependency tree
 
Reported: 2010-06-25 19:35 MSD by Andrey Cherepanov
Modified: 2010-10-26 15:31 MSD (History)
8 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrey Cherepanov 2010-06-25 19:35:05 MSD
Требуются биндинги для Python для работы с apt.
Comment 1 real@altlinux.org 2010-08-10 15:17:37 MSD
Для начала нужно в libapt-devel добавить %_libdir/libapt-pkg-libc6.9-6.so

Иначе при запуске идёт ругань на недолинковку (нужные символы находятся в libapt-pkg-libc6.9-6.so.2).

Когда будет devel-библиотека, в apt/python/Makefile нужно будет добавить линковку.

А пока даже проверить не получается. Сборка модуля просто так не получается, я вытянул с Mandrake 10.X нужный файл, после чего и сборка, и установка выполняются:

http://git.altlinux.org/people/real/packages/apt.git?p=apt.git;a=commit;h=379ad80df1dc19cb06438e0f49edf4127dc4a0b8

Добавил в спек поддержку модуля Python:

http://git.altlinux.org/people/real/packages/apt.git?p=apt.git;a=commit;h=38766f936cf453278afd12c73e4662a90fdd94ae
Comment 2 Dmitry V. Levin 2010-08-10 16:15:29 MSD
(In reply to comment #1)
> Для начала нужно в libapt-devel добавить %_libdir/libapt-pkg-libc6.9-6.so

%_libdir/libapt-pkg.so должно быть достаточно.
Comment 3 real@altlinux.org 2010-08-11 06:02:40 MSD
Понял. Проблема в --as-needed. Добавил -Wl,--no-as-needed в apt/python/Makefile.

Копаю дальше, там, похоже, и в apt/python/apt.py что-то не так...
Comment 4 real@altlinux.org 2010-08-11 11:29:18 MSD
http://git.altlinux.org/people/real/packages/apt.git

Осталось в спеке сделать нужный релиз и поправить %changelog

Скрипт для проверки:

#!/usr/bin/python

import apt

apt.pkgInit()
cache = apt.pkgCacheFile()
cache.Open(apt.OpTextProgress(), 0)

pkg = cache.FindPkg('zsh')
print "Pkg: " + pkg.Name()

Кстати, неплохо было бы ещё парочку файлов добавить:

http://apt-rpm.org/python/
Comment 5 real@altlinux.org 2010-08-11 13:21:55 MSD
Впрочем, в надобности apt-download лично я не очень уверен :)

А apt-get.py можно, например, и так:
http://git.altlinux.org/people/real/packages/apt.git?p=apt.git;a=commit;h=839f04a4367ab41234fd5a86bb20ca4d2cdd6aa2
Comment 6 Repository Robot 2010-08-13 10:55:51 MSD
python-module-apt-0.5.15cnc6-alt1 -> sisyphus:

* Thu Aug 12 2010 Eugeny A. Rostovtsev (REAL) <real at altlinux> 0.5.15cnc6-alt1
- Initial build for Sisyphus (ALT #23667)