Giter Club home page Giter Club logo

dbd's Introduction

Helper scripts for building DEB packages

The package provides nothing special but some sugar for people (especially me :) ) who do not want to keep in mind various command line options for tools like dpkg-source, pbuilder and reprepro. But the main goal is to achieve a fully functional environment for building DEB packages in a clean chrooted environment by installing a single package.

Includes:

  • dbd-build - script to build DEB package in a chrooted environment;
  • dbd-login - unpack and chroot into a base root FS. After logout all changes will be saved;
  • dbd-upgrade - upgrade chroot to latest software;
  • dbd-login-nosave - unpack and chroot into a base root FS. No changes will be saved after a logout;
  • dbd-include - include built binary package into an APT repository;
  • dbd-remove - remove package from the APT repository.

Directory layout

The main configuration file is /etc/dbd/dbd.conf.

Binary DEB package will be saved in the current dir.

The APT repository base directory is /var/www/dbd-apt. The repo have its own configuration files located in /etc/dbd/apt directory.

Configuration

To make able a particular user to call the scripts the user must be added into a special system group dbd.

To create signed APT repo you have to set SignWith option in the /etc/dbd/apt/distributions file to point to a valid PGP key. As far as operations with the APT repository is done with superuser privileges, the PGP key must be owned by root.

If you want to publish the APT repository via HTTP/FTP, just configure your Web/FTP/... server to look to the /var/www/dbd-apt dir.

Short usage example

Create source package from directory somepkg-0.1.0:

$ dpkg-source -b somepkg-0.1.0

Build binary package in a chrooted environment:

$ dbd-build somepkg_0.1.0-1.dsc

Add binary package into the APT repository:

$ dbd-include somepkg_0.1.0-1_amd64.changes

More examples

Add some changes in the base root FS tarball

$ dbd-login

In a root shell appeared make all essential changes and logout. All changes made will be saved into a base root FS tarball for future use.

Test something in a clean chrooted environment without saving changes

$ dbd-login-nosave

After logout the chroot will be destroyed.

Remove package from the APT repository

$ dbd-remove $package_name

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.