These are files I use for creating Ubuntu Packages. It's a semi automated system, including docker images for building the packages.
- My general directory for packaging is
/d1/development/packaging. - Each package has it's own directory, as an example I'll be using Dovecot.
- The directory
/d1/development/packagingcontains the filebuild_package. - In the directory
/d1/development/packaging/dovecot, there are three directoriesbin,source,upstream. - The
bindirectory contains the filesvars,update_branches,4_start_packaging. - The
sourcedirectory is a git repository. Each distro I build a package for has it's own branch, the master branch is the lastest upstream release. - The
upstreamdirectory contains the upstream files of the package and theorigfile for Ubuntu packaging will be created here as well. - Packages will be created in
/d3/packaging/where each distro has it's own directory. as an example I'll be usingzesty - Within the
/d3/packaging/zestydirectory are directories for each package build for that distro.
- Download the latest upstream release and unpack it.
- Merge the upstream release in the
masterbranch. - Tag with the upstream version.
- Update the file
vars. - In the
sourcedirectory run../bin/update_branches. - Checkout the latest distro branch.
- Using quilt, check all the patches, update, refresh them if needed.
- Pop all the quilt patches.
- If patches are refreshed commit them.
- Repeat the previous three steps for all distro branches.
- Run the file
../bin/4_start_packaging. Update thechangelogas needed during this process, correct the version. - Upload the packages to Launchpad for building.