Closed fpietrosanti closed 12 years ago
The standard setuptools installation is fine.
python setup.py install
Setup from python is something useful for developer but not for end-user of a Linux system.
A Desktop application for Ubuntu user need to be build as Deb, to let the user install easily from a UI with standard package manager interface, be advised of new update from within the package management graphical subsystem.
A Server application for ubuntu server need to be build as Deb, to let system administrator maintain the software inventory of the system and most important upgrade easily with a standard command (apt-get) and with automatic secure digital signature verification (deb package signature).
Extended evaluation on why it's bad to deploy python software with "setup.py" is available on:
Python Application Deployment with Native Packages http://hynek.me/articles/python-app-deployment-with-native-packages/ Why you should not use Python's easy_install carelessly on Debian http://workaround.org/easy-install-debian
Some useful information on packaging a Python application as Debian:
http://ghantoos.org/2008/10/19/creating-a-deb-package-from-a-python-setuppy/ https://wiki.ubuntu.com/PackagingGuide/Python http://showmedo.com/videotutorials/video?name=linuxJensMakingDeb
From an APAF perspective we should abstract / provide an easy way to package the core APAF element.
I would suggest to focus on a specific Deb based system widely used within Tor community, maybe an Ubuntu LTS system?
It maybe useful to evaluate if stdeb (python package to debian conversion utility) it's useful http://pypi.python.org/pypi/stdeb/0.5.1 to implement this feature?
I agree that we must have a system that builds .deb packages. Installing with setuptools is something super useful for a developer, but not something that a sys admin can do from apt-get or a user can do from synaptic.
An important question is about which version of Tor we want to use as a dependency:
Imho we have enough dependencies so that i would suggest to use "our own tor version" and not the Debian/Ubuntu one, so that we can keep everything self-contained in it's own directory?
When possible I would like to keep dependencies inside of separate packages. Not having to build our own Tor, distributes the effort to other people.
I think the official tpo bundle will be much better at keeping the version of Tor up to date and patched.
Added link to later document how to setup build system for Ubuntu/Debian for development on https://github.com/mmaker/APAF/wiki/Build-System-HowTo .
I am wondering if the Deb build system should be integrated or not with Launchpad in order to "drive" application developers to use a server-side build system for Debian, or keep it handled manually?
Done with packaging a .deb
in 944a429761169ac48379ac5828fb3467ef431b5d
The Apaf build system should provided a guided way to create packages and automate installation dependencies/configurations for Debian/Ubuntu systems.
The build should support automation of all the steps on a specific LTS version of Ubuntu.