unofficial mirror of guile-user@gnu.org 
 help / color / mirror / Atom feed
From: Dan Kegel <dank@kegel.com>
To: Craig Maloney <craig@decafbad.net>
Cc: guile-user@gnu.org
Subject: Re: Ubuntu 14.04 build for Guile?
Date: Fri, 29 Dec 2017 15:48:34 -0800	[thread overview]
Message-ID: <CAPF-yOaZjLcnkOH+3EukcUZ9QD5=Tt==Jp8HvBtYbBvmNuN8Cg@mail.gmail.com> (raw)
In-Reply-To: <151457143101.32472.6841010602282989126.launchpad@wampee.canonical.com>

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 ubuntu@trusty.lxc

## 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="dank@kegel.com"
$ 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



           reply	other threads:[~2017-12-29 23:48 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <151457143101.32472.6841010602282989126.launchpad@wampee.canonical.com>]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/guile/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAPF-yOaZjLcnkOH+3EukcUZ9QD5=Tt==Jp8HvBtYbBvmNuN8Cg@mail.gmail.com' \
    --to=dank@kegel.com \
    --cc=craig@decafbad.net \
    --cc=guile-user@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).