We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Package software for any distribution with upt

Formal Metadata

Title
Package software for any distribution with upt
Title of Series
Number of Parts
561
Author
License
CC Attribution 2.0 Belgium:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
In this talk, we will introduce the Universal Packaging Tool (upt), a modular tool meant to help packagers in their daily tasks. We will show how it is an improvement over similar existing tools, which upt means to replace. This will be especially interesting for distribution developers that have had to deal with upstream platforms such as PyPI, CPAN or RubyGems. Nowadays, most languages come with a package manager (such as pip or gem) that can install packages from an upstream package archive (such as pypi.org or rubygems.org). Traditional distributions (such as Debian, Fedora or OpenBSD) still package these same pieces of software, making them available through their own package manager (such as apt, dnf or the OpenBSD ports). Over the years, multiple scripts have been written in order to automate part of the packaging process. Tools like pypi2deb (which turns a package from PyPI into a Debian package) or gem2rpm (which turns a package from RubyGems into an RPM package) make the work of packagers much easier. There are a lot of these tools, and they all behave a bit differently, expose a different interface to their users, and duplicate a lot of code. In this presentation, I will introduce the Univesal Packaging Tool (upt), a modular program that allows packagers to create packages from any language-specific upstream archive to any GNU/Linux or *BSD distribution. We will show how this is done without any code duplication, and how any improvement to this tool will benefit developers from all distributions.