Gentoo Archives: gentoo-commits

From: Mark Wright <gienah@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-mathematics/rstudio/
Date: Fri, 29 Jan 2016 06:27:12
Message-Id: 1454048688.dadef5966a7d346ab10d19bcc3af2f8f060172a3.gienah@gentoo
1 commit: dadef5966a7d346ab10d19bcc3af2f8f060172a3
2 Author: Mark Wright <gienah <AT> gentoo <DOT> org>
3 AuthorDate: Fri Jan 29 06:23:49 2016 +0000
4 Commit: Mark Wright <gienah <AT> gentoo <DOT> org>
5 CommitDate: Fri Jan 29 06:24:48 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dadef596
7
8 sci-mathematics/rstudio: Bump to 0.99.491
9
10 Package-Manager: portage-2.2.27
11
12 sci-mathematics/rstudio/Manifest | 1 +
13 sci-mathematics/rstudio/rstudio-0.99.491.ebuild | 249 ++++++++++++++++++++++++
14 2 files changed, 250 insertions(+)
15
16 diff --git a/sci-mathematics/rstudio/Manifest b/sci-mathematics/rstudio/Manifest
17 index 36cc28c..cc582ca 100644
18 --- a/sci-mathematics/rstudio/Manifest
19 +++ b/sci-mathematics/rstudio/Manifest
20 @@ -22,6 +22,7 @@ DIST rstudio-0.99.482.tar.gz 16992873 SHA256 1185d6ce5d3872e134f3255668d8f082370
21 DIST rstudio-0.99.483.tar.gz 16993049 SHA256 85ce1a2f40690e4ed0338b153a1b3279ce9564396d8c6d6201a0ad39297d4a9a SHA512 7d9cc8b471a4d799f286193da5f6f950f85e82949ede0f1ffe3626a429a49204878fb731250e5f54164a48e1d6e9cbb19a04a38ff83e35fd46c0ba05ef78a9bc WHIRLPOOL 0c5c1d86b0bafe9d5ca02397793f902b4dca7edc3f507a472b8b235f91965d8a769a7873cc87d834fbb121792b52eb6908018ce6579acdf3d285b6ec986abc20
22 DIST rstudio-0.99.484.tar.gz 16993033 SHA256 8ca4abccb9b554713077cf1057ac13abadfd7606f22ac3386b2a88a38ae8a427 SHA512 407f50747bca749ef2c512e727cbe062abdd99c1eb76af09761e6bdfb4208f30117e1ee55b485447f64f6cf249bc939ef1fb4f8ce0199595e241a3cc617b4b8b WHIRLPOOL 8cc16553ea2703f005908c69803b64da4172092cb0b3ff9015e7ec354340fcd1cfa82a218ac890adffafe3565ead94bee6f7bd239b1c56ee38cbeb5896f556b0
23 DIST rstudio-0.99.486.tar.gz 16992775 SHA256 4057195465e5032625bad0304bfbd9d123a78c3e4d6d5d41abcc6ef6ccd18a6f SHA512 bb88d12f8ae2f79779532371d03a698a2c2897c212c42c8438d5223c14e1033098dbd7c278a929958fa4bbc764a3ceb101abe03634f0e33192de44cf97128a1f WHIRLPOOL 13c35a69e525d90c6694d068526a2aede76a086427539294e46db67d0fc92759fb9cb0a1169cf88745ae1e121fdd7ba2e46bd2d2fb3fa17dc7fcc65848820941
24 +DIST rstudio-0.99.491.tar.gz 16992702 SHA256 e8c21e2262b610a7ccf39283b97d114bee33c6840a060067b8019404ff44b03f SHA512 2658694d6154f4b91b2dc07a7ec653edb7f593c4d9829a06a5e600e4db465ca6059418be6812d5ba2529fd6202dd136f0f58d74576f856fdcf6f81032d74f3c2 WHIRLPOOL e71650a07cc010ab3c25955c7fa9e90eee68577c1ef78e02a5f81a0160c688908ec5ec4fd89c89e5a9bc49b926623cd5de976fb249aa2d472354d23f5fad76de
25 DIST selenium-java-2.37.0.zip 24625928 SHA256 0eebba65d8edb01c1f46e462907c58f5d6e1cb0ddf63660a9985c8432bdffbb7 SHA512 68624e82dbc751a25c50fad72702a98eb30d77fd4337d2a969f8e06bcc49e5f8c835cd27ec53772f3375014ddde1d5636936e966b75f3594a9f86aa18ba4e779 WHIRLPOOL eb6659aae26f3c78b6f998546b23d0636c9d00ed8a7f985db1463ac4bd483ccb3e643d84e2ca0f59e0636a8de79eb552ff1d68eb6f9c06907029f7552d8f7777
26 DIST selenium-server-standalone-2.37.0.jar 34730734 SHA256 97bc8c699037fb6e99ba7af570fb60dbb1b7ce30cde2448287a44ef65b13023e SHA512 b215446d42d2d1f69664349b6ae6dc53a532d3624c91254f0f4183d0ad764648792e5cc1126a55a1e60d9687d55200fed01d6d2f46cc3d853b1fa6ee38111018 WHIRLPOOL 20640591534f31f24825a9ed139589b182e8b60d86541bf0be104d3cc0280983f6566bd0459f2253ac3875b48a2798b205bac8f815a119fff6db625ce9bbc29e
27 DIST shinyapps-0.98.1000.tar.gz 910095 SHA256 b95c512ae0a0fb4335878d9cfcf9073e2cb3ccfed73543abe27ea8878ed36d57 SHA512 3162317c4c20cfc1497e952a8235867084d629ae88407e6c465b3e208adb1dc97abfe6b9922e0374ddf4c8e38a76e112942bd312c54a66f74e6f2a3fe4c0a07c WHIRLPOOL ecc2bce78387cb42e9989163d8fca29220e66f085acde3323417058aebb624dafa8c0e1873c7d79e67324cbd5aad250ef9fcdbbc8f659d64482233b95d898a15
28
29 diff --git a/sci-mathematics/rstudio/rstudio-0.99.491.ebuild b/sci-mathematics/rstudio/rstudio-0.99.491.ebuild
30 new file mode 100644
31 index 0000000..764c9da
32 --- /dev/null
33 +++ b/sci-mathematics/rstudio/rstudio-0.99.491.ebuild
34 @@ -0,0 +1,249 @@
35 +# Copyright 1999-2016 Gentoo Foundation
36 +# Distributed under the terms of the GNU General Public License v2
37 +# $Id$
38 +
39 +EAPI=5
40 +
41 +inherit eutils user cmake-utils gnome2-utils pam versionator fdo-mime java-pkg-2 pax-utils
42 +
43 +# TODO
44 +# * package gin and gwt
45 +# * use dict from tree, linguas
46 +# * do src_test (use junit from tree?)
47 +
48 +# update from scripts in dependencies/common
49 +# egrep '(GWT_SDK_VER=|GIN_VER=|SELENIUM_VER=|CHROMEDRIVER_VER=)' dependencies/common/install-gwt
50 +GWT_VER=2.7.0
51 +GIN_VER=1.5
52 +SELENIUM_VER=2.37.0
53 +CHROMEDRIVER_VER=2.7
54 +# grep 'PANDOC_VERSION=' dependencies/common/update-pandoc
55 +PANDOC_VER=1.13.1
56 +# ls dependencies/common/*.tar.gz
57 +PACKRAT_VER=0.98.1000
58 +RMARKDOWN_VER=0.98.1000
59 +SHINYAPPS_VER=0.98.1000
60 +RSCONNECT_VER=0.4.1.4_fcac892a69817febd7b655b189bf57193260cda0
61 +
62 +DESCRIPTION="IDE for the R language"
63 +HOMEPAGE="
64 + http://www.rstudio.org
65 + https://github.com/rstudio/rstudio/"
66 +SRC_URI="
67 + https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
68 + https://s3.amazonaws.com/rstudio-buildtools/gin-${GIN_VER}.zip
69 + https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWT_VER}.zip
70 + https://s3.amazonaws.com/rstudio-buildtools/selenium-java-${SELENIUM_VER}.zip
71 + https://s3.amazonaws.com/rstudio-buildtools/selenium-server-standalone-${SELENIUM_VER}.jar
72 + https://s3.amazonaws.com/rstudio-buildtools/chromedriver-linux
73 + https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip
74 + https://dev.gentoo.org/~gienah/distfiles/packrat-${PACKRAT_VER}.tar.gz
75 + https://dev.gentoo.org/~gienah/distfiles/rmarkdown-${RMARKDOWN_VER}.tar.gz
76 + https://dev.gentoo.org/~gienah/distfiles/shinyapps-${SHINYAPPS_VER}.tar.gz
77 + https://dev.gentoo.org/~gienah/distfiles/rsconnect_${RSCONNECT_VER}.tar.gz
78 +"
79 +
80 +LICENSE="AGPL-3"
81 +SLOT="0"
82 +KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
83 +IUSE="dedicated server"
84 +
85 +QT_VER=5.4
86 +QT_SLOT=5
87 +RDEPEND="
88 + app-text/pandoc
89 + dev-haskell/pandoc-citeproc
90 + >=dev-lang/R-2.11.1
91 + >=dev-libs/boost-1.50:=
92 + >=dev-libs/mathjax-2.3
93 + dev-libs/openssl:0
94 + sys-apps/util-linux
95 + >=sys-devel/clang-3.5.0
96 + sys-libs/zlib
97 + || ( =virtual/jre-1.7*:= =virtual/jre-1.8*:= )
98 + x11-libs/pango
99 + !dedicated? (
100 + >=dev-qt/qtcore-${QT_VER}:${QT_SLOT}
101 + >=dev-qt/qtdeclarative-${QT_VER}:${QT_SLOT}
102 + >=dev-qt/qtdbus-${QT_VER}:${QT_SLOT}
103 + >=dev-qt/qtgui-${QT_VER}:${QT_SLOT}
104 + >=dev-qt/qtnetwork-${QT_VER}:${QT_SLOT}
105 + >=dev-qt/qtopengl-${QT_VER}:${QT_SLOT}
106 + >=dev-qt/qtpositioning-${QT_VER}:${QT_SLOT}
107 + >=dev-qt/qtprintsupport-${QT_VER}:${QT_SLOT}
108 + >=dev-qt/qtsingleapplication-2.6.1_p20150629[qt5]
109 + >=dev-qt/qtsensors-${QT_VER}:${QT_SLOT}
110 + >=dev-qt/qtsql-${QT_VER}:${QT_SLOT}
111 + >=dev-qt/qtsvg-${QT_VER}:${QT_SLOT}
112 + >=dev-qt/qtwebkit-${QT_VER}:${QT_SLOT}
113 + >=dev-qt/qtwidgets-${QT_VER}:${QT_SLOT}
114 + >=dev-qt/qtxml-${QT_VER}:${QT_SLOT}
115 + >=dev-qt/qtxmlpatterns-${QT_VER}:${QT_SLOT}
116 + server? ( virtual/pam )
117 + )
118 + dedicated? ( virtual/pam )"
119 +DEPEND="${RDEPEND}
120 + app-arch/unzip
121 + dev-java/ant-core
122 + || ( =virtual/jdk-1.7*:= =virtual/jdk-1.8*:= )
123 + virtual/pkgconfig"
124 +# test? ( dev-java/junit:4 )
125 +
126 +PATCHES=(
127 + "${FILESDIR}/${PN}-0.98.490-prefs.patch"
128 + "${FILESDIR}/${PN}-0.99.473-paths.patch"
129 + "${FILESDIR}/${PN}-0.99.473-clang-pandoc.patch"
130 + "${FILESDIR}/${PN}-0.98.490-linker_flags.patch"
131 + "${FILESDIR}/${PN}-0.98.1091-boost-1.57.patch"
132 + "${FILESDIR}/${PN}-0.99.473-qtsingleapplication.patch"
133 + "${FILESDIR}/${PN}-0.99.486-systemd.patch"
134 +)
135 +
136 +src_unpack() {
137 + unpack ${P}.tar.gz gwt-${GWT_VER}.zip
138 + cd "${S}" || die
139 + mkdir -p src/gwt/lib/{gin,gwt} \
140 + dependencies/common/dictionaries \
141 + src/gwt/lib/selenium/${SELENIUM_VER} \
142 + src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER} || die
143 + mv ../gwt-${GWT_VER} src/gwt/lib/gwt/${GWT_VER} || die
144 + unzip -qd src/gwt/lib/gin/${GIN_VER} \
145 + "${DISTDIR}"/gin-${GIN_VER}.zip || die
146 + unzip -qd dependencies/common/dictionaries \
147 + "${DISTDIR}"/core-dictionaries.zip || die
148 + unzip -qd src/gwt/lib/selenium/${SELENIUM_VER} \
149 + "${DISTDIR}"/selenium-java-${SELENIUM_VER}.zip || die
150 + cp "${DISTDIR}"/selenium-server-standalone-${SELENIUM_VER}.jar \
151 + src/gwt/lib/selenium/${SELENIUM_VER}/ || die
152 + cp "${DISTDIR}"/chromedriver-linux \
153 + src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER}/ || die
154 + cd dependencies/common || die
155 + unpack packrat-${PACKRAT_VER}.tar.gz
156 + unpack rmarkdown-${RMARKDOWN_VER}.tar.gz
157 + unpack shinyapps-${SHINYAPPS_VER}.tar.gz
158 + unpack rsconnect_${RSCONNECT_VER}.tar.gz
159 + cp "${DISTDIR}"/rmarkdown-${RMARKDOWN_VER}.tar.gz \
160 + . || die
161 + cp "${DISTDIR}"/packrat-${PACKRAT_VER}.tar.gz \
162 + . || die
163 + cp "${DISTDIR}"/shinyapps-${SHINYAPPS_VER}.tar.gz \
164 + . || die
165 + cp "${DISTDIR}"/rsconnect_${RSCONNECT_VER}.tar.gz \
166 + . || die
167 +}
168 +
169 +src_prepare() {
170 + java-pkg-2_src_prepare
171 +
172 + egit_clean
173 +
174 + epatch "${PATCHES[@]}"
175 +
176 + # Enable CMake to install our .service file for systemd usage
177 + mkdir -vp "${S}/src/cpp/server/lib/systemd/system" || die
178 + cp -v "${FILESDIR}/rstudio-server.service.in" "${S}/src/cpp/server/lib/systemd/system/" || die
179 +
180 + # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
181 + # this sed hack for now. ~RMH
182 + sed -i \
183 + -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
184 + src/cpp/server/ServerOptions.cpp \
185 + src/cpp/session/SessionOptions.cpp || die
186 +
187 + # use mathjax from system
188 + ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax-23 || die
189 +
190 + # make sure icons and mime stuff are with prefix
191 + sed -i \
192 + -e "s:/usr:${EPREFIX}/usr:g" \
193 + CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
194 +
195 + # On Gentoo the rstudio-server configuration file is /etc/conf.d/rstudio-server.conf
196 + sed -e "s@/etc/rstudio/rserver.conf@${EROOT}etc/conf.d/rstudio-server.conf@" \
197 + -i src/cpp/server/ServerOptions.cpp \
198 + || die
199 +
200 + # Set the rsession.conf file location for Gentoo prefix
201 + sed -e "s@/etc/rstudio/rsession.conf@${EROOT}etc/rstudio/rsession.conf@" \
202 + -i src/cpp/session/SessionOptions.cpp \
203 + || die
204 +
205 + # dev-qt/qtsingleapplication-2.6.1_p20150629 does not provide a cmake module.
206 + # It provides a library that has its version number appended to the end,
207 + # which is difficult to handle in cmake, as find_library does not support
208 + # searching for wildcard library names. So I find the library name from the
209 + # qmake spec, and then sed this into the patched src/cpp/desktop/CMakeLists.txt.
210 + rm -rf "${S}"/src/cpp/desktop/3rdparty || die
211 + local s=$(grep '\-lQt$${QT_MAJOR_VERSION}Solutions_SingleApplication' \
212 + "${EROOT}"/usr/lib64/qt5/mkspecs/features/qtsingleapplication.prf \
213 + | sed -e 's@\$\${QT_MAJOR_VERSION}@5@' \
214 + -e 's@LIBS \*= -l@@')
215 + sed -e "s@Qt5Solutions_SingleApplication-2.6@${s}@g" \
216 + -i "${S}"/src/cpp/desktop/CMakeLists.txt \
217 + || die
218 +
219 + # Avoid some of the oracle-jdk-bin-1.8.0.60 sandbox violations F: mkdir S: deny
220 + # P: /root/.oracle_jre_usage.
221 + sed -e 's@\(\s*\)\(</classpath>\)@\1\2\n\1\<jvmarg value="-Duser.home=${env.T}"/>@g' \
222 + -i "${S}"/src/gwt/build.xml \
223 + || die
224 +}
225 +
226 +src_configure() {
227 + export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
228 + export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
229 + export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
230 +
231 + local mycmakeargs=(
232 + -DDISTRO_SHARE=share/${PN}
233 + $(cmake-utils_use !dedicated RSTUDIO_INSTALL_FREEDESKTOP)
234 + -DRSTUDIO_TARGET=$(usex dedicated "Server" "$(usex server "Development" "Desktop")")
235 + -DQT_QMAKE_EXECUTABLE="${EROOT}"usr/lib64/qt5/bin/qmake
236 + )
237 +
238 + cmake-utils_src_configure
239 +}
240 +
241 +src_compile() {
242 + # Avoid the rest of the oracle-jdk-bin-1.8.0.60 sandbox violations F: mkdir S: deny
243 + # P: /root/.oracle_jre_usage.
244 + export ANT_OPTS="-Duser.home=${T}"
245 + cmake-utils_src_compile
246 +}
247 +
248 +src_install() {
249 + export ANT_OPTS="-Duser.home=${T}"
250 + cmake-utils_src_install
251 + pax-mark m "${ED}usr/bin/rstudio"
252 + doconfd "${FILESDIR}"/rstudio-server.conf
253 + dodir /etc/rstudio
254 + insinto /etc/rstudio
255 + doins "${FILESDIR}"/rsession.conf
256 + dosym /etc/conf.d/rstudio-server.conf /etc/rstudio/rserver.conf
257 + if use dedicated || use server; then
258 + dopamd src/cpp/server/extras/pam/rstudio
259 + newinitd "${FILESDIR}"/rstudio-server.initd rstudio-server
260 + fi
261 +}
262 +
263 +pkg_preinst() {
264 + use dedicated || gnome2_icon_savelist
265 + java-pkg-2_pkg_preinst
266 +}
267 +
268 +pkg_postinst() {
269 + use dedicated || { fdo-mime_desktop_database_update
270 + fdo-mime_mime_database_update
271 + gnome2_icon_cache_update ;}
272 +
273 + if use dedicated || use server; then
274 + enewgroup rstudio-server
275 + enewuser rstudio-server -1 -1 -1 rstudio-server
276 + fi
277 +}
278 +
279 +pkg_postrm() {
280 + use dedicated || { fdo-mime_desktop_database_update
281 + fdo-mime_mime_database_update
282 + gnome2_icon_cache_update ;}
283 +}