Typically one takes all the non-comment lines originally put in their /etc/apt/sources.list, and replaces the hostname with mirror.csclub.uwaterloo.ca and adds the resulting lines at the front. Typiclally it appears that the release is specified explictly, e.g. lucid, precise, trusty, xenial (or non-LTS versions). However, a release of "stable" is allowed, which would appear to dynamically change the release considered over time.
The following claims to be for installing packages not in Ubuntu repositories. It ends up showing how to set up a "local mini-repository".
deb file:/usr/local/mydebs![]() |
In particular, see...
man dpkg-scanpackages |
We have also observed the "trusty-backports" elements being put in more recent 14.04 installations, and think this is related to those installations running version 4 kernels while older more established hosts do not so automatically upgrade.
really that belongs in one of the software-specific wikis.
Apparently https://en.wikipedia.org/wiki/Wikipedia:WikiProject_Computer_science is sufficiently respected that this page has not got all sorts of "too technical", "too much like a manual entry" flags.
arpepper@cscfpcXX:/tmp/tztmp$ man -k deb- deb-control (5) - Debian packages' master control file format deb-extra-override (5) - Debian archive extra override file deb-old (5) - old style Debian binary package format deb-override (5) - Debian archive override file deb-shlibs (5) - Debian shared library information file deb-split (5) - Debian multi-part binary package format deb-src-control (5) - Debian source packages' master control file format deb-substvars (5) - Debian source substitution variables deb-symbols (5) - Debian's extended shared library information file deb-triggers (5) - package triggers deb-version (5) - Debian package version number format arpepper@cscfpcXX:/tmp/tztmp$
arpepper@cscfpcXX:~$ man -k dpkg- dh_makeshlibs (1) - automatically create shlibs file and call dpkg-gensymbols dpkg-architecture (1) - set and determine the architecture for package building dpkg-buildflags (1) - returns build flags to use during package build dpkg-buildpackage (1) - build binary or source packages from sources dpkg-checkbuilddeps (1) - check build dependencies and conflicts dpkg-deb (1) - Debian package archive (.deb) manipulation tool dpkg-distaddfile (1) - add entries to debian/files dpkg-divert (8) - override a package's version of a file dpkg-genchanges (1) - generate Debian .changes files dpkg-gencontrol (1) - generate Debian control files dpkg-gensymbols (1) - generate symbols files (shared library dependency info... dpkg-maintscript-helper (1) - works around known dpkg limitations in maintain... dpkg-mergechangelogs (1) - 3-way merge of debian/changelog files dpkg-name (1) - rename Debian packages to full package names dpkg-parsechangelog (1) - parse Debian changelog files dpkg-preconfigure (8) - let packages ask questions prior to their installation dpkg-query (1) - a tool to query the dpkg database dpkg-reconfigure (8) - reconfigure an already installed package dpkg-scanpackages (1) - create Packages index files dpkg-scansources (1) - create Sources index files dpkg-shlibdeps (1) - generate shared library substvar dependencies dpkg-source (1) - Debian source package (.dsc) manipulation tool dpkg-split (1) - Debian package archive split/join tool dpkg-statoverride (8) - override ownership and mode of files dpkg-trigger (1) - a package trigger utility dpkg-vendor (1) - queries information about distribution vendors Dpkg::Changelog::Parse (3) - generic changelog parser for dpkg-parsechangelog Dpkg::Control::Changelog (3) - represent info fields output by dpkg-parsechan... Dpkg::Version (3) - handling and comparing dpkg-style version numbers arpepper@cscfpcXX:~$
After a while you realize the dh_
set of commands are fundamental to Debian packaging. But there are rather too many to usefully list here.
arpepper@cscfpcXX:~$ man -k dh_ | wc 91 799 5991 arpepper@cscfpcXX:~$ man -k dh_ | grep '^dh_' | wc 74 666 4980 arpepper@cscfpcXX:~$
One command, dh_make
command, creates a mockup of a debian
(small letters)
directory, which can be used as the basis for a source package. This is
related to the DEBIAN
directory needed for the dpkg-deb -b
command, but
different in many ways. For instance, the control
file contains a superset
of the information needed for the control
file in the DEBIAN
directory.
(Notably, comments, and Build-Depends:
).
I find dh_make
confusingly named, because it does not do anything like
the make
compilation process. A confusing aspect of Debian source packaging
is that whatever makefiles you would logically have seem to disappear
into the source package file debian/rules
.
Note that an architecture-independent package consisting of only interpreted
scripts is still considered a binary package
. (= "indep binary" =).
Similarly sloppiness seems to apply in the various commands to "build packages".
dpkg-buildpackage (1) - build binary or source packages from sources debuild (1) - build a Debian package
dpkg-deb -b
Perhaps also see:
-- AdrianPepper - 2016-05-30