On Fri, Dec 29, 2017 at 10:17 AM, Craig Maloney wrote: > Thank you so much for making the 16.04 builds available. > > I was wondering if you might be able to do a build for Ubuntu 14.04 as > that is what I'm currently running? > > If not would you be able to share what you did in order to get guile > packaged?
Hi Craig, All I did was follow https://www.debian.org/doc/manuals/maint-guide/ starting with https://packages.qa.debian.org/g/guile-2.2.html in a sid container. I don't have the exact commands handy. I plan to drop my stuff after Rob finishes the official packaging, but I might backport his stuff and upload it to my ppa. In the meantime, as practice, I just now backported my ppa's package to ubuntu 14.04 and reuploaded, so the ppa also has 14.04 packages for your testing pleasure via the usual commands, e.g. $ sudo add-apt-repository ppa:dank/guile-2.2 $ sudo apt-get update $ sudo apt-get install guile-2.2 $ guile scheme@(guile-user)> (display (version)) 2.2.3 Here are the steps I followed, with most mistakes edited out. This took about three hours of wall clock time, and it's nice to have the steps written down. ## Set up clean development system (starting from an ubuntu 16.04 host, ## and having previously exported my launchpad secret key to a text file) $ sudo lxc-create -n trusty -t download -- --dist ubuntu --release trusty --arch amd64 $ sudo lxc-start -n trusty $ sudo lxc-attach -n trusty apt install openssh-server build-essential devscripts xz-utils equivs $ sudo lxc-attach -n trusty passwd ubuntu $ scp dank-secret-key-ppa*.txt trusty.lxc: $ ssh [email protected] ## Grab the package to backport and unpack it $ wget https://launchpad.net/~dank/+archive/ubuntu/guile-2.2/+files/guile-2.2_2.2.3+2.orig.tar.gz $ wget https://launchpad.net/~dank/+archive/ubuntu/guile-2.2/+files/guile-2.2_2.2.3+2-1.debian.tar.xz $ tar -xf guile-2.2_2.2.3+2.orig.tar.gz $ cd guile-2.2.3 $ tar -xf ../guile-2.2_2.2.3+2-1.debian.tar.xz ## Four fixes to build on trusty, discovered from build failures on earlier runs: ## Change distro and version to placate dput; see also ## https://askubuntu.com/questions/30145/ppa-packaging-having-versions-of-packages-for-multiple-distros $ vi debian/changelog ## Comment out <cross> line to placate old tools and avoid ## "dpkg-gencontrol: warning: can't parse dependency guile-2.2:native <cross>" $ vi debian/control ## Change -S to --show-field to placate confused old tools and avoid ## "dpkg-parsechangelog: unknown option `-S'" $ vi debian/rules ## change guile*.info to *.info to avoid ## "dh_install: usr/share/info/r5rs.info exists in debian/tmp but is not installed" ## FIXME: does 'info r5rs' work on sid? $ vi debian/guile-doc.install ## Install build dependencies $ mk-build-deps $ sudo dpkg -i guile-2.2-build-deps_2.2.3+2-1_all.deb $ sudo apt install -f ## get gpg stuff right so dpkg-buildpackage doesn't explode when signing result $ gpg --import dank-secret-key-ppa.txt $ gpg --import-ownertrust dank-secret-key-ppa-trust.txt $ DEBEMAIL="[email protected]" $ DEBFULLNAME="Dan Kegel (ppa)" $ export DEBEMAIL DEBFULLNAME ## Do a check build $ dpkg-buildpackage -b -k"${DEBFULLNAME} <${DEBEMAIL}>" ## Build the source package and upload to ppa $ dpkg-buildpackage -S -k"${DEBFULLNAME} <${DEBEMAIL}>" $ dput ppa:dank/guile-2.2 guile-2.2_2.2.3+2-1~trusty_source.changes ## Result: https://launchpad.net/~dank/+archive/ubuntu/guile-2.2/ now also has ubuntu 14.04 packages
