All Projects → hoffa → debpack

hoffa / debpack

Licence: MIT license
Super simple Debian packages

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to debpack

Goreleaser
Deliver Go binaries as fast and easily as possible
Stars: ✭ 9,290 (+15917.24%)
Mutual labels:  deb
Docker Ce Packaging
Packaging scripts for Docker CE
Stars: ✭ 111 (+91.38%)
Mutual labels:  deb
Tensorflow Build
A set of scripts to (cross-)build the Tensorflow C lib for various architectures / OS
Stars: ✭ 177 (+205.17%)
Mutual labels:  deb
Nfpm
NFPM is Not FPM - a simple deb, rpm and apk packager written in Go
Stars: ✭ 1,088 (+1775.86%)
Mutual labels:  deb
Localslackirc
IRC gateway for slack, running on localhost for one user
Stars: ✭ 84 (+44.83%)
Mutual labels:  deb
Electron Builder
A complete solution to package and build a ready for distribution Electron app with “auto update” support out of the box
Stars: ✭ 11,653 (+19991.38%)
Mutual labels:  deb
Open Build Service
Build and distribute Linux packages from sources in an automatic, consistent and reproducible way #obs
Stars: ✭ 599 (+932.76%)
Mutual labels:  deb
ppa-packaging
Semi-automated script to create binary packages for (multiple versions of) Ubuntu
Stars: ✭ 15 (-74.14%)
Mutual labels:  deb
Sbt Native Packager
sbt Native Packager
Stars: ✭ 1,480 (+2451.72%)
Mutual labels:  deb
Termux Create Package
Python script to create Termux packages easily.
Stars: ✭ 155 (+167.24%)
Mutual labels:  deb
Debreate
A utility for creating Debian packages.
Stars: ✭ 70 (+20.69%)
Mutual labels:  deb
Fpm Within Docker
Leverage fpm inside pre-baked docker images in order to build and test native DEB and RPM packages.
Stars: ✭ 80 (+37.93%)
Mutual labels:  deb
App Outlet
A Universal linux app store
Stars: ✭ 131 (+125.86%)
Mutual labels:  deb
Rakudo Pkg
Pre-compiled OS packages for Rakudo
Stars: ✭ 55 (-5.17%)
Mutual labels:  deb
Dcrm
Darwin Cydia Repo Manager - v4 redesigned in Django.
Stars: ✭ 188 (+224.14%)
Mutual labels:  deb
Fileshare
Debian/Ubuntu applet for screenshots and images sharing using popular online services
Stars: ✭ 35 (-39.66%)
Mutual labels:  deb
Redishappy
Redis Sentinel high availabillity daemon
Stars: ✭ 111 (+91.38%)
Mutual labels:  deb
spotify-deb-install
MOVED: https://gitlab.com/q3aql/spotify-deb-install
Stars: ✭ 15 (-74.14%)
Mutual labels:  deb
Drill
Search files without indexing, but clever crawling
Stars: ✭ 224 (+286.21%)
Mutual labels:  deb
Aliddns
aliyun ddns for golang【阿里云DDNS服务,用来将自己的动态IP同步到自己的域名解析服务器,安装方便,配置简单,默认支持Linux和MacOS以后台服务方式持续运行】
Stars: ✭ 136 (+134.48%)
Mutual labels:  deb

📦 debpack

Super simple Debian packages.

Aims to keep Lintian happy and adhere to the Debian Policy Manual where reasonable, without bogging you down with needless ceremony.

Only depends on Bash and dpkg tools.

Installation

curl -Lo /usr/local/bin/debpack https://raw.githubusercontent.com/hoffa/debpack/master/debpack
chmod +x /usr/local/bin/debpack

You'll also need dpkg-dev:

apt-get install dpkg-dev

Or, if you want to build on macOS:

brew install dpkg fakeroot

Usage

debpack

Package control file fields can be easily modified at build-time:

debpack Version:1.2.3

Example

First, let's create a program called hello that outputs world:

echo 'echo world' > hello
chmod +x hello

The package will need some metadata. Debian packages keep their metadata in a package control file, located in debian/control:

mkdir debian
cat > debian/control << EOF
Package: hello
Description: writes world to stdout
Maintainer: Jane Doe <[email protected]>
Architecture: all
Version: 1.0.0
EOF

Note: you can also add maintainer scripts (such as postinst, which will execute after installation) to the debian directory.

We then create a Debpackfile that specifies where to copy the files when installing the package:

echo -e 'hello\t/usr/bin/' > Debpackfile

Finally, build the package:

debpack

Debpackfile format

  • Each line has a source and destination path, separated by a tab character
  • Wildcards are allowed in the source path
  • Empty lines and lines that start with # are ignored
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].