## Cloned from: https://wiki.debian.org/Diaspora/Packaging #language en ~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: none-~ ---- ||<>|| = Building with gem2deb = Note: Always verify the command has finished successfully and make sure there is no error before proceeding to next command. == Setup your environment == Add the following variables in your ~/.bashrc file. DEBEMAIL and DEBFULLNAME variables are used by debian tools to set your name and email. {{{ export DEBEMAIL=your@email.domain export DEBFULLNAME='Your Name' alias lintian='lintian -iIEcv --pedantic --color auto' alias git-import-dsc='git-import-dsc --author-is-committer --pristine-tar' alias clean='fakeroot debian/rules clean' }}} Note: You can also use {{{debclean}}} command instead of setting alias for {{{clean}}}. and update your current environment by running {{{ $ source ~/.bashrc }}} == Build the package == First you need install gem2deb {{{ apt-get install gem2deb }}} Create a build directory and go there {{{ mkdir -p ~/build/rails-6 && cd $_ }}} and then clone the ruby-bootsnap repository {{{ git clone https://salsa.debian.org/jmkim-guest/ruby-bootsnap cd ruby-bootsnap }}} We need three branches: {{{upstream}}}, {{{pristine-tar}}}, and {{{master}}}. {{{ git checkout upstream git checkout pristine-tar git checkout master }}} Once that is done build the package with {{{ dpkg-buildpackage -us -uc }}} {{{-us}}} means do not sign the package, and {{{-uc}}} means do not sign the {{{.changes}}} file. When it has finished check for lintian errors: {{{ lintian }}} If you get errors, you have to correct them. Then run dpkg-buildpackage again and test with lintian again. === Error case 1: Unmet build dependencies === If you get errors with {{{Unmet build dependencies}}}, install them and run dpkg-buildpackage again. {{{ apt install rake-compiler rubocop ruby-mocha ruby-msgpack }}} === Error case 2: dpkg-source: error: can't build with source format ... === Try {{{origtarz}}} and run dpkg-buildpackage again. {{{ origtarz }}}