Skip to content

CLI utility to package source files into common distribution formats

Notifications You must be signed in to change notification settings

pombredanne/packager

 
 

Repository files navigation

Packager Build Status

A yaml based source-code to package bundler.

Supported formats

Format Host Status
.deb Ubuntu/Debian (apt, dpkg) Active
.rpm RHEL, Yum TODO
.tar.gz, .tar.xz ArchLinux/Pacman TODO

Features

  • Create multiple package formats from your source code through a single command
  • packager log tightly integrated with git history and CHANGELOG -- Coming soon!
  • Publish your packages via CLI -- Coming soon!

Installation

Clone the repository and install using pip installer. This project requires Python 3.x.

$ pip install .

Usage

Initialize packager in your project repository.

$ packager init

This creates a .packager folder and a config.yml inside. Update the config.yml with required settings. Below is an example config.yml.

package:
    name: example-deb
    version: 1.0.0
    description: "An example packager config for a debian package"
    build: cmake
    authors:
        - Harish Navnit <harishnavnit@gmail.com>
    targets:
        - debian

Check if the config.yml is valid.

$ packager validate .packager/config.yml

Config file at .packager/config.yml is valid

Build the package

$ packager build .packager/config.yml

dpkg-deb: building package 'example-deb' in '/tmp/deb-pkg-tools-build-5ef82tfb/example-deb_1.0.0_all.deb'.
Lintian is not installed, skipping sanity check.

About

CLI utility to package source files into common distribution formats

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 98.5%
  • Dockerfile 1.5%