См. Простой пример distutils . Это в основном то, на что это похоже, за исключением того, что реальные скрипты установки обычно содержат немного больше информации. Однако я не видел ничего более сложного. По сути, вы просто даете ему список того, что должно быть установлено. Иногда вам нужно указать некоторые параметры отображения, поскольку исходное и установленное деревья могут не совпадать.
Вот реальный (анонимный) пример:
#!/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'])
])