See also [[debian-pkg]] All commands assume (unless otherwise noted) that PWD is the source dir of the upstream code, and that there is a `debian` repo in that directory. - build-directory - _____.orig.tar.gz - extracted-dir - source files ... - `debian` - _____-_____.{build,buildinfo,changes,deb,dsc} == debmake == Creates a new `debian` directory. Assumes that - that `$PWD` is `-` - than `$PWD/../_.orig.tar.gz` exists == debuild == Builds a pakage. Runs `debian/rules build` to build package {{{ sudo debuild --no-sign }}} == sections == https://packages.debian.org/stable/ == debian/watch == https://wiki.debian.org/debian/watch Specifies where to look for an newer version. By running `uscan`. It should download `../${PKG}-${NEW-VERSION}.tar.gz`, and sets up some symlinks for that debian might want. From there, extract and move the `debian` folder to the new directory. == Building == `debian/rules build` build the binaries, but not the package apt install debmake build-dep tree === Build dependencies === `mk-build-deps` :: Generarer ett paket från `debian/control`, vilket :: inte innehåller någonting, men beror på build-depends. `dpkg --fix-broken install ./-build-deps_-_all.deb` :: `apt install ./-build-deps_-_all.deb` :: :: Installerar det lokala paketet, med beroenden - # apt-get build-dep -build-deps_-_all.deb === Update changelog === ==== Creates new entry with verssion number ==== > dch --newversion -2.1 `-2` :: is debian package version, start at 2 to avoid lintian issue about [[https://wiki.debian.org/ITP|ITP]] `.1` :: Shows that this is an [[https://www.debian.org/doc/manuals/developers-reference/pkgs.html#nmus-and-debian-changelog|NMU]], since we aren't a Debian maintainer === Figure out runtime dependencies === `objdump -p | grep NEEDED` -------------------------------------------------- git-dch == Reprepro == Cutom repo === Deb === {{{sh reprepro -Vb /usr/net/repo/debian/ includedeb una }}} == Dsc == Also include relevant `.debian.tar.xz` and `.orig.tar.gz`. {{{sh reprepro -Vb /usr/net/repo/debian/ includedsc una }}} == Build from Source == *TODO* hur får man tag i filerna? `apt source `? Stå in en katalog med - *.debian.tar.xz - *.dsc - *.orig.tar.gz - Kör `dpkg-source -x *.dsc` - `cd ` - `debuild` == Om allting finns i repona == Se till att devscripts är installerat - apt build-dep - apt source - cd -version - debuild == licensecheck == Possibly checks the debian/copyright file == Other files == https://www.debian.org/doc/manuals/maint-guide/dother.en.html#install == All lintian errors == https://lintian.debian.org/tags == No signing == {{{ debuild -u -uc }}} builds without signing