Python distutils - er det noen som vet hvordan de skal bruke det?

stemmer
23

Jeg skrev en rask program i python å legge et GTK GUI til en cli program. Jeg lurte på hvordan jeg kan lage et installasjons hjelp distutils. Siden det er bare en GUI frontend for en kommandolinje app det fungerer bare i * nix uansett så jeg er ikke bekymret for at det er kryss-plattform.

mitt hovedmål er å skape en .deb pakke for Debian / Ubuntu-brukere, men jeg forstår ikke gjør / konfigurere filer. Jeg har først og fremst vært en webutvikler til nå.

Takk for hjelpen!

Edit : Er det noen som vet om et prosjekt som bruker distutils så jeg kunne se den i aksjon, og du vet, faktisk prøve å bygge den?

Her er noen nyttige linker

  • Emballasje Guide Ubuntu Python

    Denne guiden er veldig nyttig. Jeg vet ikke hvordan jeg savnet det under mitt første bølgen av gooling. Det leder deg selv gjennom emballasjen opp en eksisterende python program

  • Ubuntu MOTU-prosjektet

    Dette er den offisielle pakken opprettholde prosjektet på ubuntu. Alle kan delta, og det er mange tutorials og info om å lage pakker, av alle typer, som inkluderer over 'python emballasje guide'.

  • Python distutils til deb? - Ars Technica Forum diskusjon

    Ifølge denne samtalen, kan du ikke bare bruke distutils. Det følger ikke debian emballasje format (eller noe sånt). Jeg antar det er grunnen til at du trenger dh_make sett i Ubuntu Emballasje Guide

  • En bdist_deb kommando for distutils

    Denne har noen interessant diskusjon (det er også hvordan jeg fant ubuntu guide) om å sette sammen en zip-fil og en shell script for å lage en slags universell kjørbar (noe med python og bash som er). merkelig. Gi meg beskjed hvis noen finner mer informasjon om denne praksisen, fordi jeg aldri har hørt om det.

  • Beskrivelse av deb format og hvordan distutils passe på - python postliste

Publisert på 27/08/2008 klokken 05:03
kilden bruker
På andre språk...                            


5 svar

stemmer
13

Se distutils enkelt eksempel . Det er stort sett hva det er, bortsett fra real installere skript inneholder vanligvis litt mer informasjon. Jeg har ikke sett noen som er fundamentalt mer komplisert, skjønt. I hovedsak, du bare gi det en liste over hva som må installeres. Noen ganger må du gi det noen kartlegging dicts siden kilden og installerte trær ikke kan være den samme.

Her er en real-life (anonymisert) eksempel:

#!/usr/bin/python 

from distutils.core import setup 

setup (name = 'Initech Package 3', 
          description = "Services and libraries ABC, DEF", 
          author = "That Guy, Initech Ltd", 
          author_email = "that.guy@initech.com", 
          version = '1.0.5', 
          package_dir = {'Package3' : 'site-packages/Package3'}, 
          packages = ['Package3', 'Package3.Queries'], 
          data_files = [ 
                       ('/etc/Package3', ['etc/Package3/ExternalResources.conf']) 
          ])
Svarte 27/08/2008 kl. 05:12
kilden bruker

stemmer
6

apt-get install python-stdeb

Python til Debian kilde pakke konverteringsressurs

Denne pakken gir noen verktøy for å produsere Debian pakker fra Python-pakker via en ny distutils kommando, sdist_dsc. Automatiske mislighold er gitt for Debian-pakke, men mange aspekter av den resulterende pakken kan tilpasses via en konfigurasjonsfil.

  • PyPI installere vil spørre Python Package Index (PyPI) for en pakke, laste den ned, opprette en .deb fra det, og deretter installere .deb.
  • py2dsc vil konvertere en distutils-bygget kilde tarball inn en Debian kilde pakke.
Svarte 17/01/2011 kl. 19:00
kilden bruker

stemmer
2

Jeg fant følgende tutorial for å være svært nyttig. Det er kortere enn distutils dokumentasjon og forklarer hvordan du setter opp et typisk prosjekt trinnvis.

Svarte 15/11/2010 kl. 21:57
kilden bruker

stemmer
2

De fleste Python-programmer vil bruke distutils. Django er en en - se http://code.djangoproject.com/svn/django/trunk/setup.py

Du bør også lese dokumentasjonen , som det er svært omfattende og har noen gode eksempler.

Svarte 27/08/2008 kl. 10:04
kilden bruker

stemmer
1

distutils er egentlig ikke så vanskelig når du først får taket på det. Det er egentlig bare et spørsmål om å sette i noen meta-informasjon (programnavn, forfatter, versjon, etc) og deretter velge hvilke filer du vil inkludere. For eksempel, her er et eksempel distutils setup.py modul fra en skikkelig komplisert python bibliotek:

Kamaelia setup.py

Merk at dette ikke håndtere eventuelle datafiler eller eller whatnot, så YMMV.

På et annet merke, jeg er enig i at distutils dokumentasjon er sannsynligvis noen av python verste dokumentasjon. Det er svært inkluderende i enkelte områder, men forsømmer noen virkelig viktig informasjon i andre.

Svarte 27/08/2008 kl. 20:42
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more