2011-09-01 1 views
14

How do I write a setup.py for a twistd/twisted plugin that works with setuptools, distribute, etc?의 후속 조치로 트위스트 플러그인 용 데비안 패키지를 만드는 방법은 무엇입니까?twisted/twisted 플러그인을위한 우분투/debian 패키지는 어떻게 만들 수 있습니까?

setup.py가 올바로 작성되었다고 가정하면 cdbs/python-central/dh_python2를 사용하면 올바르게 작동하지만 아직까지는별로 운이 없었습니다.

이러한 도구의 트릭은 기본적으로 'python setup.py install --root ='를 실행 한 다음 ''로 끝나는 패키지를 작성하기 때문에 이전 질문에 올바르게 대답하면이 질문이됩니다. 무트?

누구든지 여기에 debian 용 twisted plugin을 성공적으로 패키지 했습니까?

답변

1

아아, 나는 이것을 시도하고 실패했습니다. 나는 그것이 데비안/우분투 대상으로 할 출시에 따라 가능하다고 생각, 얼마나 많은 노력 당신은 넣어하려는

이 두 가지 방법이 있습니다.

  1. 포장이 twisted/plugins/에서 플러그인 파일을 고수 되세요 꼬인 나무에. 이것은 Twisted가 다른 릴리스 (Nutty IIRC의 Lucid와 dh_python2python-support)에서 서로 다른 방법을 사용하여 패키지화되어 있기 때문에 고통이며, 패키지는 Twisted와 동일한 방법으로 패키징해야합니다.
  2. twisted/plugins/ 디렉토리가 코드와 함께 설치되어 있어야합니다. 그런 다음 IIRC, 문제는 심볼릭 링크의 숲이 트위스티드 디렉토리 (패키지가 아닌)를 포함하도록 만들어지게됩니다.
+0

내가 정말 잘 이러한 옵션을 이해하지 않습니다. 패키지에 "꼬인 나무"에 플러그인 파일을 "꽂아 넣는"방법에 대한 기술적 세부 정보를 제공 할 수 있습니까? Twisted가 다른 릴리스에 의해 설치 될 수있는 다른 장소를 고려할 때, 꼬인 나무가 어디에 있는지 어떻게 알 수 있습니까? – Glyph

3

분명히 문제는 '비단뱀 지원'입니다.이 플러그인은 트위스트 플러그인 일 때 명백히 부러졌습니다.

This message from Ubuntu's Matthias Klose이 문제를 설명하고 솔루션 제공 : 파이썬 지원 트위스트 플러그인의

포장은 디자인에 의해 파괴됩니다. python 정책조차도 동일한 파이썬 네임 스페이스를 공유하는 패키지에 동일한 패키징 도우미를 사용해야 함을 명시 적으로 언급합니다.

dh_python2를 사용하거나, 'include-links'를 사용하여 dh_pycentral로 (비추천) 빌드를 사용해야합니다.

- 마티아스 클로제는

+2

첫 번째 문장은 다소 오해의 소지가 있습니다. Twisted 패키지는 dh_python2를 사용하기 때문에 python-support는 "twisted plugins에 관해서는 보통 문제"가 아니라, python-support의 본질적인 단점 때문이 아닙니다. 좀 더 일반적으로, 다른 패키지의 네임 스페이스에 파이썬 모듈을 설치하는 경우 패키지와 동일한 패키징 도우미를 사용해야합니다. 그렇지 않으면 파일이 올바른 위치에 저장되지 않습니다. – mithrandi

+0

우분투뿐만 아니라 데비안에서도 마찬가지입니까? 각각의 버전은 무엇입니까? – Glyph