Per gli anglofoni consiglio vivamente di andarsi guardare la documentazione ufficiale di python al riguardo: qui e qui.
Creare il file è molto semplice, basta creare un nuovo file chiamato setup.py e inserire le seguenti righe:
#!/usr/bin/env python
from distutils.core import setup
setup(name='Distutils',
version='1.0',
description='Python Distribution Utilities',
author='Greg Ward',
author_email='gward@python.net',
url='http://www.python.org/sigs/distutils-sig/',
packages=['distutils', 'distutils.command'],
)La prima riga permette l'esecuzione del file anche senza richiamarlo con il prefisso python nel terminale.
La seconda importa la funzione setup dal modulo distutils (che dovete quindi avere installato).
Infine si richiama la funzione setup con tutti i parametri necessari.
I campi importanti da considerare sono:
- name - nome dello script da installare
- version - versione dello script
- description - Una rapida descrizione dello script
- author - autore del programma
- author_email - email di contatto per l'autore
- url - eventuale sito da cui scaricare lo script
Questi erano i campi necessari per la descrizione del programma da installare, quello che segue sono i parametri leggermente più tecnici che servono al sistema per sapere cosa installare.
- packages - la lista dei packages che compongono lo script, per ogni package che viene aggiunto, ade esempio
packages=['packagename']setup presume l'esistenza di un filepackagename/__init__.pyrelativo alla cartella dove risiede lo script. - py_modules - se lo script non dovesse avere un set di packages, ma soltanto qualche modulo, magari nella stessa cartella dello script principale, vanno indicati usando questo parametro.
es. py_modules = ['mod1', 'pkg.mod2'] - scripts - indicano gli script (ovvero quei file che hanno un # e python nella prima riga del file) che vanno installati nella cartella
/usr/bindel sistema per essere eseguiti facilmente dalla riga di comando.es. scripts=['scripts/xmlproc_parse', 'scripts/xmlproc_val'] - package_data - se fosse necessario aggiungere altri file relativi a un package (ad esempio immagini o file di supporto), si utilizza questa funzione che richiede il nome del package a cui ci si sta riferendo e il percorso relativo al package dove trovare i dati necessari. I packages devono essere stati inclusi in precedenza con il parametro packages.
es. package_data={'mypkg': ['data/*.dat']} - data_files - se fosse necessario aggiungere altri file al programma, come ad esempio file di configurazione o di dati, si utilizza questa funzione che rihiede l'elenco delle coppie (cartella, file) dove la cartella indica il percorso dove installare e file la lista di file da installare nella cartella.
es. data_files=[('bitmaps', ['bm/b1.gif', 'bm/b2.gif']),
('config', ['cfg/data.cfg']),
('/etc/init.d', ['init-script'])]
Queste sono solo alcune delle opzioni disponibili per la creazione di un file di setup per python, a mio parere le più utili.
Per informazioni più approfondite e dettagliate vi invito a consultare le guide ufficiali.
Nessun commento:
Posta un commento