Skip to content

Latest commit

 

History

History
 
 

debian

Debian Packaging Guide
----------------------
https://www.debian.org/doc/manuals/maint-guide/first.en.html


===============================================================================
                               Bash.rc
===============================================================================
# Assume usename 'user' running this, otherwise
# /home/user/.bashrc
cat >>~/.bashrc <<'EOF'
DEBMAIL="[email protected]"
DEBFULLNAME="Qubes Builder"
export DEBMAIL DEBFULLNAME

alias dquilt="quilt --quiltrc=${HOME}/.quiltrc-dpkg"
complete -F _quilt_completion $_quilt_complete_opt dquilt
EOF


===============================================================================
                              Quilt RC
===============================================================================
cat >>~/.quiltrc-dpkg <<'EOF'
d=. ; while [ ! -d $d/debian -a `readlink -e $d` != / ]; do d=$d/..; done
if [ -d $d/debian ] && [ -z $QUILT_PATCHES ]; then
    # if in Debian packaging tree with unset $QUILT_PATCHES
    QUILT_PATCHES="debian/patches"
    QUILT_PATCH_OPTS="--reject-format=unified"
    QUILT_DIFF_ARGS="-p ab --no-timestamps --no-index --color=auto"
    QUILT_REFRESH_ARGS="-p ab --no-timestamps --no-index"
    QUILT_COLORS="diff_hdr=1;32:diff_add=1;34:diff_rem=1;31:diff_hunk=1;33:diff_ctx=35:diff_cctx=33"
    if ! [ -d $d/debian/patches ]; then mkdir $d/debian/patches; fi
fi
EOF

===============================================================================
                  Create a fresh Debian configuration
===============================================================================
apt-get dh-make

# Example
$ cd ~/gentoo
$ wget http://example.org/gentoo-0.9.12.tar.gz
$ tar -xvzf gentoo-0.9.12.tar.gz
$ cd gentoo-0.9.12
$ dh_make -f ../gentoo-0.9.12.tar.gz


===============================================================================
                              Adding Patches
===============================================================================
https://www.debian.org/doc/manuals/maint-guide/modify.en.html

# When anyone (including yourself) provides a patch foo.patch to the source 
# later, modifying a 3.0 (quilt) source package is quite simple:
$ dpkg-source -x gentoo_0.9.12.dsc
$ cd gentoo-0.9.12
$ dquilt import ../foo.patch
$ dquilt push
$ dquilt refresh
$ dquilt header -e
... describe patch


===============================================================================
                           Creating New Patches
===============================================================================
mkdir debian/patches
dquilt new new-patch-name.patch
dquilt add file_to_patch

# Edit and make required changes to the file_to_patch...

# Ask dquilt to generate the patch to create debian/patches/new-patch-name.patch
# and add its description following DEP-3: Patch Tagging Guidelines
dquilt refresh
dquilt header -e
... describe patch

# Revert patch (restore original file back to original state)
dquilt pop


===============================================================================
                                   Other
===============================================================================
# To list all dh_ modules...
man -k dh_

# To indicate what build-depends are required!
dpkg-depcheck -d ./configure

# Test build (unsigned)
dpkg-buildpackage -us -uc