Gentoo Archives: gentoo-lisp

From: Cyprien Nicolas <gentoo@×××××.fr>
To: gentoo-lisp@l.g.o
Cc: proxy-maint@g.o
Subject: [gentoo-lisp] dev-scheme/guile:2.0 status update and migration plan
Date: Mon, 15 Apr 2013 21:42:41
Message-Id: 20130415214228.GA3850@kubera.inria.fr
1 Hi all. Here is a tentative guide for explaining how to move all
2 guile stuff in the overlay to the tree, and hope avoiding
3 forthcoming bugs. This guide is written according to what
4 I recall for the year and a half since I started slotting guile.
5
6 I should have written this a year ago, I was waiting for some Lisp
7 Project dev to get enough time to dig into guile, but it has not
8 happened, and more and more packages require their attention. I did
9 not find the time to become myself a dev either, and time passes.
10
11
12 I CC proxy-maint@ here, as I volonteer to maintain guile for the time
13 being, and I think I'm currently the one using the lisp overlay having
14 the best knowledge in Gentoo's guile status.
15
16
17 Foreword
18 --------
19
20 I used SLOTted guile before I pushed it to the lisp overlay [1].
21 I had some issues regarding eselect-guile script that I fixed
22 since. I no longer have any Gentoo machine (my last and main laptop
23 died two weeks ago), I only have a Gentoo Alt/Prefix amd64-linux on my
24 work laptop, but I haven't really tested guile-2 on prefix yet. I am
25 confident with what I have done with guile, but it needs more
26 testing. Pushing it to the overlay with p.mask will benefit from
27 flameeyes' tinderbox.
28
29 1. http://git.overlays.gentoo.org/gitweb/?p=proj/lisp.git;a=commit;h=8409eb91bf10a18080d33cb0c69797335f5aeec9
30
31
32 Here is a short outline: first I list the new packages that need to be
33 added to the tree, then review the known issues, and propose
34 a migration plan.
35
36 New Ebuilds
37 ===========
38
39
40 dev-scheme/guile-1.8.8-r2
41 -------------------------
42
43 Same version as in-tree guile-1.8.8-r1, but not compatible with.
44 I wrote it long ago, and the tree version has been updated since, and
45 I didn't get it in sync with. Changes summary:
46
47 - Bump to EAPI4
48 - Add +readline in IUSE and sys-libs/readline conditionnal dependency
49 using a patch available in $FILESDIR
50 - It misses the ~arm-linux and ~x64-macos KEYWORDS
51 - R/Depends on app-admin/eselect-guile (see below)
52 - 3 configure changes --program-suffix, slotted --infodir and use_with
53 readline
54 - einstall --infodir (I don't remember why it is here, seems redundant
55 with configure's parameter)
56 - Rename the guile.m4 file to guile-1.8.m4
57 - Remove env file manipulation
58 - Add eselect guile update ifunset to src_post{inst,rm} phases.
59
60 dev-scheme/guile-2.0.9
61 ----------------------
62
63 The main change compared to guile-1.8 is the removal of emacs support,
64 no longer supported by upstream. All the rest of the ebuild seems
65 mostly trivial.
66
67
68 app-admin/eselect-guile
69 -----------------------
70
71 An eselect module for managing slotted guile versions, barely tested.
72 Explicit block on <dev-scheme/guile-1.8.8-r2 which is not
73 properly slotted.
74
75
76 2. Known Issues
77 ===============
78
79 app-text/texmacs
80 ----------------
81
82 See https://bugs.gentoo.org/show_bug.cgi?id=436400
83
84 Won't support guile-2, said grozin. I patched the texmacs build system
85 to explicitly change all `guile-config` calls to
86 `guile-config-1.8`. This patch is gentoo-specific and unlikely to be
87 merged upstream anytime soon, as guile-1.8 does not provide any
88 pkgconfig interface (guile-2.0 does).
89
90 See texmacs-1.0.7.16-r2 in the overlay, here are the differences:
91 - Change guile dependency to specify the correct slotted version
92 1.8.8-r2
93 - Add a patch (in FILESDIR) to force guile*-1.8 in the build system.
94
95 I haven't followed new texmacs releases (tree has 1.0.7.17 and
96 1.0.7.19).
97
98
99 dev-scheme/greg
100 ---------------
101
102 See https://bugs.gentoo.org/show_bug.cgi?id=351991
103
104 Almost used by nothing (only one package in sci- needs greg when
105 FEATURE=test). Needs a proper fix, like texmacs maybe.
106
107 Others
108 ------
109
110 I have not check all reverse deps, maybe there are more issue to
111 come. We won't find them until we get all guile stuff in the tree.
112
113
114 3. Migration Plan
115 =================
116
117 Here is how I would move all that, based on my experience, quizes and
118 documentation I read.
119
120 First push app-admin/eselect-guile, as nothing depends on it yet, and
121 won't block anything. Then push guile-1.8.8-r2, p.mask it, as it may
122 break several packages in ~arch. Maybe just drop keywords for testing
123 the slot system?. Then push guile-2.0.9, p.mask or w/o keywords, same
124 reasons.
125
126
127 This might mot be ideal, it will break texmacs and stuff, but I don't
128 know of a better way to achieve it yet. Some of you have more
129 experience here :-).
130
131
132 I hope this helps, feel free to ask any question regarding guile if
133 needed. I thank the one who volonteer to make this happen.
134
135 Oh, as a sidenote, guile upstream does not really support 1.8 anymore,
136 they don't have time to, and concentrate all efforts on 2.0, so moving
137 to guile-2.0 is getting more and more urgent day after day. I heard
138 remors that future autogen version will require guile-2.0. The earlier
139 we push guile-2.0, the more testing window we have.
140
141 Cheers,
142 --
143 Cyprien Nicolas (Fulax)
144 Gentoo Lisp project contrib

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies