Active Oldest Votes. Improve this answer. Ross Patterson Ross Patterson 5, 18 18 silver badges 35 35 bronze badges. Very very very useful, thank you! That was indeed the way to go at least for me. Thank you again, answer accepted.
CzarekTomczak, maybe this will help. Is there a way to make stdeb use it? Show 1 more comment. This is the short Description. Here you put the long description, indented by one space.
This solution was exactly what I needed after hitting a road block trying to use stdeb to build a python3 package that required pyqt5. Mucho thanks to Rafael. Also I apologize for accidentally clicking the down vote button on this solution -- I can't seem to change my vote. I just tried clicking on the downvote again and also the upvote and I receive the following message: You last voted on this answer Nov 17 at Your vode is now locked in unless the answer is edited. Perhaps if you edited the answer I could change my vote?
Again thanks rsm for your answer. It helped me to create a DEB package for manuskript. You are completely free of using any path that you want. Add a comment. I found these two guides quite good: Hitchhiker's Guide to Packaging Distribute documentation. Oh, thanks! Although, they both just cover only the very bare basics of distutils. The Distribute documentation has a bit more details and is the recommended solution at the time of writing this comment.
Barry's blog was updated and recommends the wiki. Sep 1, Jun 10, Jan 17, Aug 19, Feb 17, Sep 24, Sep 9, Jun 19, Nov 25, Oct 3, May 24, Jump to navigation. It builds a. On my Debian-based system, I entered:. While the devscripts package is not required, it will simplify doing the subsequent operations. Now, create a directory to keep the sources. Next, let's create some files inside myhttp to provide metadata to the Debian build system.
So what is all this information about? As the Debian documentation puts it:. Lines 9—13 are the control information for the binary package. Next, create the changelog to tell package users what has changed since the last release.
The easiest way is to use dch --create to create a template and then fill in the values. In general, the loose requirements file will only contain direct dependencies of your project and will specify minimum versions if needed. It is not always necessary to specify the minimum versions: the tools are usually biased towards tightening the dependencies towards "latest version possible".
Existing Python 2 libraries must not be dropped before the last reverse dependency is removed. New Python 2 libraries must not be introduced. Starting with the Debian 11 release bullseye , the binary packages python , python-minimal , python-dev , python-dbg and python-doc are removed.
No package in the archive must use any of these packages as build dependencies, dependencies, recommendations or suggestions. These package are not installed by default for new installations, but only for upgrades from the Debian 10 release buster.
These packages should be removed after an upgrade. These packages will not be part of the Debian 12 release bookworm. These packages can be installed by developers and users to use the unversioned commands.
NOTE: Locally installed software not yet ported to Python3 is likely to break when installing these packages. The packages python-is-python3 , python-dev-is-python3 , python-is-python2 and python-dev-is-python2 must not be used as build dependencies, dependencies, recommendations or suggestions. At any given time, the binary package python3 will represent the current default Debian Python 3 version; the binary package python will represent the current default Debian Python 2 version, for as long as it exists.
As far as is reasonable, Python 3 and Python 2 should be treated as separate runtime systems with minimal interdependencies. In some cases, Python policy explicitly references Python helper tools. For Debian Stretch, the dh-python package provides the only such tools; earlier helpers have been removed from Debian.
It is a design goal to fully specify required interfaces and functions in policy for Python 3 and to avoid enshrining specific implementation details in policy. Except as noted, policy for Python 2 is the same as Python 3 with the exception of the different major version number as needed to distinguish them. The default Debian Python version, for each of Python 3 and Python 2, should always be the latest stable upstream version that can be fully integrated in Debian.
There may be newer supported or unsupported versions included in Debian if they are not fully integrated for a particular release. Apart from the default version, legacy versions of Python or beta releases of future upstream versions may be included as well in Debian, as long as they are needed by other packages, or as long as it seems reasonable to provide them.
Note: For the scope of this document, a Python version is synonymous with all micro versions within that minor version. Python 3. For any version, the main binary package must be called python X. These files are in Python configparser format. The set of interpreter names currently supported and for which modules should be built and byte-compiled.
This includes default-version. The set of interpreter names which might still be on the system but for which modules should not be built. The set of interpreter names which should not be supported at all, that is modules should not be built or byte-compiled for these.
This includes is a superset of old-versions. Newer versions might also appear in unsupported-versions before being moved to supported-versions. For every Python version provided in Debian, the binary package python X. Y shall provide a complete distribution for deployment of Python scripts and applications. Y is provided. Installation of python X. Y shall provide the modules of the upstream Python distribution with some exceptions. Excluded are modules that cannot be included for licensing reasons, for dependency tracking purposes for example the GPL-licensed gdbm module , or that should not be included for packaging reasons for example the tk module which depends on Xorg and the venv module which depends on wheels to bootstrap pip.
Modules that would interfere with system package management for example ensurepip , when used outside virtual environments are modified to print a message explaining the problem and recommending alternatives. Excluded are modules that cannot be included for licensing reasons for example the profile module , for dependency tracking purposes for example the GPL-licensed gdbm module , or that should not be included for packaging reasons for example the tk module which depends on Xorg.
Some tools and files for the development of Python modules are split off in a separate binary package python X. Y -dev. Modules only used for building of Python modules e. The python3-venv binary package depends on these. Y executable. The package must depend on the python3. Y package that installs the executable. A python3-full binary package must ensure that the entire Python standard library is available, including all modules split into separate packages but excluding modules excluded from Debian for licensing reasons.
This package exists for the convenience of python developers, and must not be used in dependencies, recommendations and build dependencies by python module or application packages. The version of the python3 package must be greater than or equal to 3. Y and lower than 3. The python and python-dbg binary packages are to be removed for Bullseye. If any Python 2 packages remain in Bullseye, these must depend on python2 or python2-dbg.
The python2 package must depend on the python2. The version of the python2 package must be greater than or equal to 2. Y and lower than 2. The package must depend on the python2. See PEP for details. The version of the python package must be greater than or equal to 2. Y -minimal might exist and should not be depended upon by other packages except the Python runtime packages themselves.
The different Python major versions require different interpreters see Main packages. Python scripts that require the default Python 3 version should specify python3 as the interpreter name.
Python scripts that require the default Python 2 version should specify python2 as the interpreter name for as long as this remains supported. Python scripts should not specify python as the interpreter name even if they do not require any particular version of Python as the script would stop working upon removal of the Python 2 stack. Python scripts that only work with a specific Python minor version must explicitly use the versioned interpreter name python X.
Python scripts should specify the Debian Python interpreter, to ensure that the Debian Python installation is used and all dependencies on additional Python modules are met. Y if it requires Python 3. Y if it requires Python 2. For all supported Debian releases, sys.
Directories with private Python modules must be absent from the sys.
0コメント