Gentoo Archives: gentoo-commits

From: "José María Alonso" <nimiux@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/lisp:master commit in: x11-wm/stumpwm/
Date: Wed, 02 Mar 2016 14:05:05
Message-Id: 1456927731.d56f500d8ccce7abfe3f3865ed95e7d5294abe18.nimiux@gentoo
1 commit: d56f500d8ccce7abfe3f3865ed95e7d5294abe18
2 Author: Chema Alonso Josa <nimiux <AT> gentoo <DOT> org>
3 AuthorDate: Wed Mar 2 14:08:51 2016 +0000
4 Commit: José María Alonso <nimiux <AT> gentoo <DOT> org>
5 CommitDate: Wed Mar 2 14:08:51 2016 +0000
6 URL: https://gitweb.gentoo.org/proj/lisp.git/commit/?id=d56f500d
7
8 x11-wm/stumpwm: Add metadata and contrib modules
9
10 x11-wm/stumpwm/metadata.xml | 61 +++++++++++++++++++++++++++++++++++++
11 x11-wm/stumpwm/stumpwm-0.9.9.ebuild | 57 ++++++++++++++++++++++++++--------
12 2 files changed, 106 insertions(+), 12 deletions(-)
13
14 diff --git a/x11-wm/stumpwm/metadata.xml b/x11-wm/stumpwm/metadata.xml
15 new file mode 100644
16 index 0000000..578e246
17 --- /dev/null
18 +++ b/x11-wm/stumpwm/metadata.xml
19 @@ -0,0 +1,61 @@
20 +<?xml version="1.0" encoding="UTF-8"?>
21 +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
22 +<pkgmetadata>
23 + <maintainer type="person">
24 + <email>nimiux@g.o</email>
25 + <name>Chema Alonso</name>
26 + </maintainer>
27 + <longdescription lang="en">
28 + Stumpwm is a tiling, keyboard driven X11 Window Manager written entirely in
29 + Common Lisp.
30 +
31 + If you're tired of flipping through themes like channel-surfing, and going
32 + from one perfect-except-for-just-one-thing window manager to another
33 + even-more-broken-in-some-other-way then perhaps Stumpwm can help.
34 +
35 + Stumpwm attempts to be customizable yet visually minimal. There are no
36 + window decorations, no icons, and no buttons.
37 + It does have various hooks to attach your personal customizations, and
38 + variables to tweak.
39 +
40 + * Hack the good hack
41 + * debug your good hack
42 + * customize your window manager
43 +
44 + while it's running. That's right. With a 100% Common Lisp window manager
45 + there's no stopping the hacks. Just re-eval and GO!
46 + </longdescription>
47 + <longdescription lang="es">
48 + Stumpwm es un gestor de ventanas estilo mosaico gestionado por teclado
49 + escrito completamente en Common Lisp.
50 +
51 + Si está cansado de cambiar de temas como navegación por canales y vagar
52 + de un gestor de ventanas perfecto excepto por esa pequeña característica
53 + a otro incluso más roto de alguna otra forma, entonces quizá Stumpwm
54 + pueda ser de ayuda.
55 +
56 + Stumpwm persigue ser personalizable a la vez que mínimo. No hay
57 + decoración en las ventanas, ni iconos ni botones.
58 + Dispone de varios enganches para realizar nuestras propias configuraciones
59 + personales y variables que podemos ajustar a nuestras necesidades para:
60 +
61 + * Cacharrear de forma correcta
62 + * Depurar nuestro propio cacharreo
63 + * Personalizar nuestro gestor de ventanas
64 +
65 + mientras está corriendo. Eso está bien. Con un gestor de ventanas escrito
66 + al 100% en Common Lisp no hay forma de detener el cacharreo. ¡Simplemente
67 + reevalúe y CONTINÚE!
68 + </longdescription>
69 + <use>
70 + <flag name="contrib">Install contrib modules</flag>
71 + <flag name="doc">Include documentation</flag>
72 + <flag name="emacs">Add support for GNU Emacs</flag>
73 + <flag name="clisp">Use CLISP for the runtime</flag>
74 + <flag name="ecl">Use SCL for the runtime</flag>
75 + <flag name="sbcl">Use SBCL for the runtime</flag>
76 + </use>
77 + <upstream>
78 + <remote-id type="github">stumpwm/stumpwm</remote-id>
79 + </upstream>
80 +</pkgmetadata>
81
82 diff --git a/x11-wm/stumpwm/stumpwm-0.9.9.ebuild b/x11-wm/stumpwm/stumpwm-0.9.9.ebuild
83 index 4ec18be..8fade26 100644
84 --- a/x11-wm/stumpwm/stumpwm-0.9.9.ebuild
85 +++ b/x11-wm/stumpwm/stumpwm-0.9.9.ebuild
86 @@ -4,47 +4,76 @@
87
88 EAPI=5
89
90 -inherit common-lisp-3 glo-utils eutils elisp-common autotools
91 +inherit common-lisp-3 eutils elisp-common autotools
92
93 DESCRIPTION="Stumpwm is a Window Manager written entirely in Common Lisp."
94 HOMEPAGE="http://www.nongnu.org/stumpwm/"
95 -SRC_URI="http://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
96 +SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
97
98 LICENSE="GPL-2"
99 SLOT="0"
100 -KEYWORDS="~amd64 ~ppc ~sparc ~x86"
101 -IUSE="doc clisp ecl +sbcl emacs"
102 +KEYWORDS="~amd64 ~x86"
103 +IUSE="contrib doc emacs clisp ecl +sbcl"
104
105 RESTRICT="strip mirror"
106
107 RDEPEND="dev-lisp/cl-ppcre
108 - sbcl? ( >=dev-lisp/clx-0.7.3_p20081030 )
109 + sbcl? ( >=dev-lisp/sbcl-1.0.32 )
110 + sbcl? ( >=dev-lisp/clx-0.7.4 )
111 !sbcl? ( !clisp? ( !ecl? ( >=dev-lisp/sbcl-1.0.32 ) ) )
112 !sbcl? ( !clisp? ( ecl? ( >=dev-lisp/ecls-10.4.1 ) ) )
113 !sbcl? ( clisp? ( >=dev-lisp/clisp-2.44[X,new-clx] ) )
114 - sbcl? ( >=dev-lisp/sbcl-1.0.32 )
115 emacs? ( virtual/emacs app-emacs/slime )"
116 DEPEND="${RDEPEND}
117 sys-apps/texinfo
118 doc? ( virtual/texi2dvi )"
119
120 SITEFILE=70${PN}-gentoo.el
121 +CLPKGDIR="${CLSOURCEROOT}/${CLPACKAGE}"
122 +CONTRIBDIR="${CLPKGDIR}/contrib"
123 +
124 +get_lisp() {
125 + local lisp
126 +
127 + for lisp in "$@" ; do
128 + use ${lisp} && echo ${lisp} && return
129 + done
130 +}
131
132 do_doc() {
133 local pdffile="${PN}.pdf"
134
135 - texi2pdf -o "${pdffile}" "${PN}.texi.in" && dodoc "${pdffile}" || die
136 - cp "${FILESDIR}"/README.Gentoo . && sed -i "s:@VERSION@:${PV}:" README.Gentoo
137 + texi2pdf -o "${pdffile}" "${PN}.texi" && dodoc "${pdffile}" || die
138 + cp "${FILESDIR}/README.Gentoo" . && sed -i "s:@VERSION@:${PV}:" README.Gentoo || die
139 dodoc AUTHORS NEWS README.md README.Gentoo
140 - doinfo ${PN}.info
141 + doinfo "${PN}.info"
142 docinto examples ; dodoc sample-stumpwmrc.lisp
143 }
144
145 +do_contrib() {
146 + emake install-modules
147 + rm -r "${D}${CONTRIBDIR}"/.git* || die
148 +}
149 +
150 src_prepare() {
151 # Upstream didn't change the version before packaging
152 - sed -i "${S}/${PN}.asd" -e 's/:version "0.9.8"/:version "0.9.9"/' || die
153 + sed -i -e 's/:version "0.9.8"/:version "0.9.9"/' "${PN}.asd" || die
154 + # Bug 534592. Does not build with asdf:oos, using require to load the package
155 + sed -i "load-${PN}.lisp.in" -e "s/asdf:oos 'asdf:load-op/require/" || die
156 + if use contrib ; then
157 + # Fix contrib directory
158 + sed -i -e "s|@CONTRIB_DIR@|@MODULE_DIR@|" make-image.lisp.in || die
159 + sed -i -e "s|\~\/.${CLPACKAGE}\.d/modules|${D}${CONTRIBDIR}|" Makefile.in || die
160 + sed -i -e "s|\${HOME}/\.${CLPACKAGE}\.d/modules|${CONTRIBDIR}|" configure.ac || die
161 + fi
162 eautoreconf
163 - econf --with-lisp=$(glo_best_flag sbcl clisp ecl)
164 +}
165 +
166 +src_configure() {
167 + local moduleconfig
168 +
169 + use contrib && moduleconfig="--with-module-dir=${CONTRIBDIR}/contrib"
170 + econf --with-lisp=$(get_lisp sbcl clisp ecl) "${moduleconfig}"
171 }
172
173 src_compile() {
174 @@ -52,13 +81,17 @@ src_compile() {
175 }
176
177 src_install() {
178 - common-lisp-export-impl-args $(glo_best_flag sbcl clisp ecl)
179 + common-lisp-export-impl-args $(get_lisp sbcl clisp ecl)
180 dobin stumpwm
181 make_session_desktop StumpWM /usr/bin/stumpwm
182
183 common-lisp-install-sources *.lisp
184 common-lisp-install-asdf ${PN}.asd
185 + # Fix ASDF dir
186 + sed -i -e "/(:directory/c\ (:directory \"${CLPKGDIR}\")" \
187 + "${D}${CLPKGDIR}/load-stumpwm.lisp" || die
188 use doc && do_doc
189 + use contrib && do_contrib
190 }
191
192 pkg_postinst() {