summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /sci-mathematics/rstudio
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'sci-mathematics/rstudio')
-rw-r--r--sci-mathematics/rstudio/Manifest20
-rw-r--r--sci-mathematics/rstudio/files/rsession.conf26
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.318-linker_flags.patch18
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.318-paths.patch110
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.318-prefs.patch24
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.336-boost-1.53.patch64
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.336-linker_flags.patch18
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.336-paths.patch112
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.336-prefs.patch24
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.551-boost-1.53.patch64
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.551-linker_flags.patch18
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.551-paths.patch112
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.97.551-prefs.patch24
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.98.1091-boost-1.57.patch60
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.98.1091-pandoc.patch26
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.98.490-linker_flags.patch18
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.98.490-paths.patch120
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.98.490-prefs.patch24
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.98.932-pandoc.patch25
-rw-r--r--sci-mathematics/rstudio/files/rstudio-0.98.932-paths.patch140
-rw-r--r--sci-mathematics/rstudio/files/rstudio-server.conf35
-rw-r--r--sci-mathematics/rstudio/files/rstudio-server.initd15
-rw-r--r--sci-mathematics/rstudio/metadata.xml18
-rw-r--r--sci-mathematics/rstudio/rstudio-0.97.336.ebuild141
-rw-r--r--sci-mathematics/rstudio/rstudio-0.97.551.ebuild141
-rw-r--r--sci-mathematics/rstudio/rstudio-0.98.1028.ebuild162
-rw-r--r--sci-mathematics/rstudio/rstudio-0.98.1091.ebuild196
-rw-r--r--sci-mathematics/rstudio/rstudio-0.98.490-r1.ebuild127
-rw-r--r--sci-mathematics/rstudio/rstudio-0.98.490.ebuild140
-rw-r--r--sci-mathematics/rstudio/rstudio-0.98.932.ebuild172
-rw-r--r--sci-mathematics/rstudio/rstudio-0.98.953.ebuild173
31 files changed, 2367 insertions, 0 deletions
diff --git a/sci-mathematics/rstudio/Manifest b/sci-mathematics/rstudio/Manifest
new file mode 100644
index 00000000000..69be18ad615
--- /dev/null
+++ b/sci-mathematics/rstudio/Manifest
@@ -0,0 +1,20 @@
+DIST chromedriver-linux 19303552 SHA256 1ff3e9fc17e456571c440ab160f25ee451b2a4d36e61c8e297737cff7433f48c SHA512 18774ede961dec222058dd0e3f128d63732cd444ee310136b44d5bf508a4f2f2c164a2c8d195d80bce8b5fb6303559e167f82f384e4a58e30f48b151a4206ee8 WHIRLPOOL 06534c131d3a8ade4fb12ad94955f430f23d86654342357d223e78e210cc401416361a847934bccb3957702bbe8fc8a6dd7f18416461edf486145bde96c7091e
+DIST core-dictionaries.zip 876339 SHA256 4341a9630efb9dcf7f215c324136407f3b3d6003e1c96f2e5e1f9f14d5787494 SHA512 9c5830cc9fed575e223f1c61f02e48c5aea6801bb0cd2586f02437c17fdffdb1d36c396d5a8ecbe02ba01196e73458304345b1f6b92c052bc7a7d05961fac2c9 WHIRLPOOL 316dced8ac46e4216613b0b850c33d4c1e10ef0ecd954d786eb131ea80b34e66ba3d39a0ef25b45230b64ded415737ddabef8f7d68f4d42caea98679cff44ee0
+DIST gin-1.5.zip 1055663 SHA256 f561f4eb5d5fe1cff95c881e6aed53a86e9f0de8a52863295a8600375f96ab94 SHA512 3f6649565f9600daaca6ddf3fb431925b5a1ce1ada38e6389de64cef617abba9d3f49c555d0a20053fb06f17ccbe4e1141b39966fbe4b2975d7b120377504897 WHIRLPOOL e66d348ed275eb20518369c39592a5a03ee4257422e2947520385377939de65a54d131332818362a47597392026db48ed1332f11ae218e336798498ae5d5b196
+DIST gwt-2.5.0.rc1.zip 104156555 SHA256 83a6dec583d1b7f3bf3fd2e321d89c1d95881eed1f81c7ea4056201fc105258b SHA512 c0c4f502b4ca191537eada53eb0458c0d33282661423f6d2648e6107ed8e38465b189377fcd0d9babcbf2c688e16080d33cbd7165ed20dafda7fedc39a74e163 WHIRLPOOL b37f12d1937b6479b97e274a59a1856dcf0c5cc3b767b6a19f65d7807e1f32cc2483358f1414c4c9e427d890eb1e0617fe8af84c6f0dca4a9ded64ae5ffde129
+DIST gwt-2.5.1.zip 111070580 SHA256 c457df45a3eed582452c5784ed11746685df494c0ffe4a8ae4de52945916593a SHA512 845c6bc6ce5ade57eeddd8b40cc3458f5e7d40d881cb4017615897eebd5349bfecfef8cd3e3b05a09b33ecf9ee0262d4a84700b0965a27b40cb60d701457a7ea WHIRLPOOL 9d820026e97f96402fc6b69a06f24d2f79df830a0afdba808ab98f14a32312bc999692ad5822005acf6fdcd1b4261918a318f9f20980c640cf32292d5df83a05
+DIST gwt-2.6.0.zip 108819959 SHA256 bd4c13a5d1078446d519a742ee233971e55c447d1b87ffd5b1f90e54dd876b9a SHA512 40690f83f6271ab58abf0ccbf2da1045ea142867ed88accdce91f65a70e39ecf48070696caffcab3f797523ee69b0431b67155b7f04c2856cd95856a7e20d2fb WHIRLPOOL d59ce0f9b13a9956b07905479b394397020fcbc85ac3aabff9ebd74d39b7e660c862e7fe1adb32160e82186d83db10d1254121846e1a9bdafacc38efc55a38fd
+DIST packrat-0.98.1000.tar.gz 97677 SHA256 c2da99ea6b62fd460f36b76f6c9b91865c42851545d61817c181bf6109e2df6b SHA512 2290c768ecf27a037e73c3f8336b9fd71c68ff19d071b4a8fbc469550d29007cacacdb75f854f73b5db2139a5104f129b85a3612e2ee47bd6118ee13f7d103a6 WHIRLPOOL a2d0c3c3e04cbc496f59abbf1065fcd0b7ae25433ce0b7ca8e75ab59362f320508537b2a62ed1028dd5baad6cbab5ef2e91dd9d3af327bbd04c08a96c57d80f4
+DIST packrat_0.3.0.tar.gz 79974 SHA256 5ea35b6cb964188f4ffe58a3c9cf2c1f5a436569117c218d097e0fa66d032ebb SHA512 7f964e94e62193466e9bc880fea2c2fef8a0996061d9b971789e4e33a2d1e6327033f03236327545aa73e1112e2bea730c3fc0984729ecdec6f1582855c1b249 WHIRLPOOL 7ff4c3f3681300d402e8738b1aceac7ee2dbd55edb36966e3b7453b1b90182093979436d2c1193d460418251bc370ab222f61142311d8fe1a5a42527c5869aa3
+DIST rmarkdown-0.98.1000.tar.gz 1423820 SHA256 56e9f964f805627f6d6face9bf09e6435be4cc48321447ad4041fee86d6f88b4 SHA512 df3540c24c87930fe55bff2ffe67c86c219800cb00ed72ba9451ecd0d0cad411548a78c1a04b9a2e301e853616dcb77e09129c4e48ade6f16d3f14b7ea7e4852 WHIRLPOOL 51098cd48a12a61da312fc1cc96927626db4a19cc069c88f615dd20abe40f52a7b1ac1325b52b1922110ffa76a7f255d9ff2a75cd05d3de01d1b96f0c8286790
+DIST rmarkdown_0.2.49.tar.gz 3846795 SHA256 56b9a032b07d62c6af2a4a2d04007cccf379a9c8e91426c59f265c8b7fd992ee SHA512 46d15c354c9a90ae75a7dc3660b1ea82d097aaceb3dd220a4a8c6f4b22751ad2d63fd5ef3d56821160716ab6552529cef6513b5cd7043368d13513f537511fef WHIRLPOOL d658a091d1b4508ea38fbf2f3691517dc2b814aa3ffaec25483263266106756a89712d7c8a2ec3de8d6d45234d5f8b11340c287509bd836be5875527077f7fcd
+DIST rstudio-0.97.336.tar.gz 12598580 SHA256 e6c24d6a865827d3a39e64508976a825bba705efe0921eb06f9a95ba58aefcd1 SHA512 bfaf6218cb400e83a97a320cf633e4656f1552e27bb9843fda1837945a3823fb0df20a2c86e0b6d76608d98806b0acf163aaba10783c923ef900b3eaf03b7569 WHIRLPOOL eca7b837ccff6cc6595298c3137f8663c0754256763a1d049e44a11e10daf53914234c426e004cc1f0158d7b4a38319f61653f78785c7189a64413fc196848c2
+DIST rstudio-0.97.551.tar.gz 12602738 SHA256 caed5f6b6ec57139ddf550dc2f51c1f9a74b39b81b878863b97e1a12edecf498 SHA512 f855a5ba3a86e44c870a4843e94678a1f6eeedc49934d8ad42f202815f93d282913a0be739435be63e510a6ec81b7a1436e4c911acbff955f5fb28b78b00fd10 WHIRLPOOL d8cd3d2978b690fc8c83696cb2017748e74b38309174ac85d6d35d5a1dd91d8e0d8ea06177b349754b3be9eb5e78e04b1d23b82f9e7940d062b262c1eb7eb58e
+DIST rstudio-0.98.1028.tar.gz 15555649 SHA256 19827c3d05b4817530fb07f235fe38ec5e391324acd1d5d8ab6711d0db4757ef SHA512 db1be9f91263386ad0fb8addc80421434695d2c8dd53101af268e878fd59c59b9349cc9456d7096d2c660ee2681cd0172d8f4d8432ccf7322a1a2b473ce291fd WHIRLPOOL ab2974d2e529fea03fe641569d4b74a6eb1d86179be47de46531a970d5f70624824e08573835d531a5033d20f800117174926b83aee290f784ac31f7a9627d7d
+DIST rstudio-0.98.1091.tar.gz 15551758 SHA256 61745708096b5feb3d88befab65adf67dd386262cde1ef2b351f56695f5b9ac2 SHA512 6b2fcd7418118b8845266dc12ff4680623a68a8fdfda2bdc523e8cd30139e99fa29063438fbb441f23d04e57715eec1ee21763baf0ab77d313b763d8b3d9e3a0 WHIRLPOOL 356297217bdc70954b79695755fb873127e9b7c5a8ff2be18e237b559638aa1ec3c0349d8606598bd81e4057914e518748c236dc4a701d9a1f27805c2a4c7327
+DIST rstudio-0.98.490.tar.gz 14989329 SHA256 e38296a10b12c9e769a8be0545c36745999b9ba90942f7ffb6d27f05192a7f93 SHA512 b167083eb4adf1203da63299e61c9e3f40b8aeb4728d25c9d840f8a22659aad8de442dbba3a68e7d11f6157680d3a3636f6d5fecbabab82fd8d1a8278e3f1cb1 WHIRLPOOL d7c07aea3aef424aa9fa05f74b8222cae69b9ce287ba67d80591dc2a433471e7127d975119667560bf6667190d128b0ffcf82f641792075dacf826f4d76df568
+DIST rstudio-0.98.932.tar.gz 15515025 SHA256 e4a69a2f746cb7cfcacd3811f15e41a9d156175607da334f412614cc4cb70728 SHA512 beeb8c035d4f8524bd3e497162e3a218e92fbd1c1704ff3bc99a70a1248244155e3998272a6aa985b59cfa67c640adec877465f5d50acb9e47abca2657f2a06f WHIRLPOOL e422a2cef857aa9d094dd11e62b6c762a2a7477e7d84fd66456152c6521aebd94d4c365980ed6c06fc1c90d5a62426376d978de0ed23186d4732c0b148cc62bc
+DIST rstudio-0.98.953.tar.gz 15518231 SHA256 944f5882a0d61f551cd6f6cbe7882b5a5ea5be12d2c6d5ec9e79cee65869dbb7 SHA512 38a17d1abf91f4e775c4d735152fe6c8030b2df771bd7333fb3c9408fe14ac0b6180d7eaad7ac09ce2d50e5dcaa5a3b828909b30f507fd7c35fe27f7bd96866c WHIRLPOOL e2135f425b48b952282d8c44bd121517098521715c70537a6ac1a3be1732928666c5cb40fbc20b9f394a606e0e116723190790a202cbf62986ffbca528646058
+DIST selenium-java-2.37.0.zip 24625928 SHA256 0eebba65d8edb01c1f46e462907c58f5d6e1cb0ddf63660a9985c8432bdffbb7 SHA512 68624e82dbc751a25c50fad72702a98eb30d77fd4337d2a969f8e06bcc49e5f8c835cd27ec53772f3375014ddde1d5636936e966b75f3594a9f86aa18ba4e779 WHIRLPOOL eb6659aae26f3c78b6f998546b23d0636c9d00ed8a7f985db1463ac4bd483ccb3e643d84e2ca0f59e0636a8de79eb552ff1d68eb6f9c06907029f7552d8f7777
+DIST selenium-server-standalone-2.37.0.jar 34730734 SHA256 97bc8c699037fb6e99ba7af570fb60dbb1b7ce30cde2448287a44ef65b13023e SHA512 b215446d42d2d1f69664349b6ae6dc53a532d3624c91254f0f4183d0ad764648792e5cc1126a55a1e60d9687d55200fed01d6d2f46cc3d853b1fa6ee38111018 WHIRLPOOL 20640591534f31f24825a9ed139589b182e8b60d86541bf0be104d3cc0280983f6566bd0459f2253ac3875b48a2798b205bac8f815a119fff6db625ce9bbc29e
+DIST shinyapps-0.98.1000.tar.gz 910095 SHA256 b95c512ae0a0fb4335878d9cfcf9073e2cb3ccfed73543abe27ea8878ed36d57 SHA512 3162317c4c20cfc1497e952a8235867084d629ae88407e6c465b3e208adb1dc97abfe6b9922e0374ddf4c8e38a76e112942bd312c54a66f74e6f2a3fe4c0a07c WHIRLPOOL ecc2bce78387cb42e9989163d8fca29220e66f085acde3323417058aebb624dafa8c0e1873c7d79e67324cbd5aad250ef9fcdbbc8f659d64482233b95d898a15
diff --git a/sci-mathematics/rstudio/files/rsession.conf b/sci-mathematics/rstudio/files/rsession.conf
new file mode 100644
index 00000000000..645bfa46b20
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rsession.conf
@@ -0,0 +1,26 @@
+######rsession.conf############
+# Session Timeouts
+# By default if a user hasn't issued a command for 2 hours
+# RStudio will suspend that user's R session to disk so
+# they are no longer consuming server resources (the next
+# time the user attempts to access the server their session
+# will be restored). You can change the timeout (including
+# disabling it by specifying a value of 0) using the
+# session-timeout-minutes setting
+#session-timeout-minutes=30
+
+# By default RStudio sets the R_LIBS_USER environment
+# variable to ~/R/library. This ensures that packages
+# installed by end users do not have R version numbers
+# encoded in the path (which is the default behavior).
+# This in turn enables administrators to upgrade the version
+# of R on the server without reseting users installed packages
+# (which would occur if the installed packages were in an
+# R-version derived directory).
+# If you wish to override this behavior you can do so using
+# the r-libs-user settings
+#r-libs-user=~/R/packages
+
+# You can set the default CRAN repository for the server
+# using the r-cran-repos setting
+#r-cran-repos=http://cran.case.edu/
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.318-linker_flags.patch b/sci-mathematics/rstudio/files/rstudio-0.97.318-linker_flags.patch
new file mode 100644
index 00000000000..a336fccbc98
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.318-linker_flags.patch
@@ -0,0 +1,18 @@
+Some gcc hardening options were added, however since we add
+"-Wl,--as-needed" we end up with "-Wl,--as-needed;-Wl,-z,relro" which
+leads to linker errors about unknown options, if we make it so the
+as-needed option is the last option on the line, everything is fine.
+
+diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt
+index 0589ca0..fe5bd5f 100644
+--- a/src/cpp/CMakeLists.txt
++++ b/src/cpp/CMakeLists.txt
+@@ -57,7 +57,7 @@ if(UNIX)
+ add_definitions(-D_FORTIFY_SOURCE=2)
+ add_definitions(-fstack-protector --param ssp-buffer-size=4)
+ add_definitions(-pie -fPIE)
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,relro,-z,now")
++ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-z,relro,-z,now ${CMAKE_EXE_LINKER_FLAGS}")
+ endif()
+
+ # Win32 specific global directives
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.318-paths.patch b/sci-mathematics/rstudio/files/rstudio-0.97.318-paths.patch
new file mode 100644
index 00000000000..26f11f5bfac
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.318-paths.patch
@@ -0,0 +1,110 @@
+change the install path, as by default everything is dumped right under
+the prefix. After fixing install paths, now fix the source so the
+program can find the moved resources.
+
+diff --git a/CMakeGlobals.txt b/CMakeGlobals.txt
+index da74970..1537bff 100644
+--- a/CMakeGlobals.txt
++++ b/CMakeGlobals.txt
+@@ -103,7 +103,7 @@ else()
+ else()
+ set(RSTUDIO_INSTALL_BIN bin)
+ endif()
+- set(RSTUDIO_INSTALL_SUPPORTING .)
++ set(RSTUDIO_INSTALL_SUPPORTING ${DISTRO_SHARE})
+ endif()
+
+ # if the install prefix is /usr/local then tweak as appropriate
+diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt
+index af4db1c..96b767e 100644
+--- a/src/cpp/server/CMakeLists.txt
++++ b/src/cpp/server/CMakeLists.txt
+@@ -142,7 +142,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}
+- DESTINATION ${RSERVER_INITD_DEBIAN_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_DEBIAN_DIR})
+
+ # install configured redhat init.d script
+ set(RSERVER_INITD_REDHAT_DIR "extras/init.d/redhat")
+@@ -150,7 +150,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}
+- DESTINATION ${RSERVER_INITD_REDHAT_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_REDHAT_DIR})
+
+ # install configured suse init.d script
+ set(RSERVER_INITD_SUSE_DIR "extras/init.d/suse")
+@@ -158,13 +158,13 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_SUSE_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT}
+- DESTINATION ${RSERVER_INITD_SUSE_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_SUSE_DIR})
+
+ # install pam profile
+ set(RSERVER_PAM_DIR "extras/pam")
+ set(RSERVER_PAM_PROFILE "${RSERVER_PAM_DIR}/rstudio")
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_PAM_PROFILE}
+- DESTINATION ${RSERVER_PAM_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_PAM_DIR})
+
+ # install configured apparmor profile
+ set(RSERVER_APPARMOR_DIR "extras/apparmor")
+@@ -172,9 +172,9 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE}
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+ install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_DIR}/apparmor-profile-load
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+
+ # install configured upstart profile
+ set(RSERVER_UPSTART_DIR "extras/upstart")
+@@ -182,6 +182,6 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE}
+- DESTINATION ${RSERVER_UPSTART_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR})
+
+ endif()
+diff --git a/src/cpp/server/ServerOptions.cpp b/src/cpp/server/ServerOptions.cpp
+index 77a63f1..f0d25f0 100644
+--- a/src/cpp/server/ServerOptions.cpp
++++ b/src/cpp/server/ServerOptions.cpp
+@@ -201,7 +201,7 @@ ProgramStatus Options::read(int argc, char * const argv[])
+
+ // convert relative paths by completing from the system installation
+ // path (this allows us to be relocatable)
+- resolvePath(installPath, &wwwLocalPath_);
++ resolvePath(installPath.childPath(DISTRO_SHARE), &wwwLocalPath_);
+ resolvePath(installPath, &authPamHelperPath_);
+ resolvePath(installPath, &rsessionPath_);
+ resolvePath(installPath, &rldpathPath_);
+diff --git a/src/cpp/session/SessionOptions.cpp b/src/cpp/session/SessionOptions.cpp
+index 0df1081..777cc6a 100644
+--- a/src/cpp/session/SessionOptions.cpp
++++ b/src/cpp/session/SessionOptions.cpp
+@@ -314,12 +314,12 @@ core::ProgramStatus Options::read(int argc, char * const argv[])
+ }
+
+ // convert relative paths by completing from the app resource path
+- resolvePath(resourcePath, &rResourcesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &rResourcesPath_);
+ resolvePath(resourcePath, &agreementFilePath_);
+- resolvePath(resourcePath, &wwwLocalPath_);
+- resolvePath(resourcePath, &coreRSourcePath_);
+- resolvePath(resourcePath, &modulesRSourcePath_);
+- resolvePath(resourcePath, &sessionPackagesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &coreRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &modulesRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionPackagesPath_);
+ resolvePostbackPath(resourcePath, &rpostbackPath_);
+ #ifdef _WIN32
+ resolvePath(resourcePath, &consoleIoPath_);
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.318-prefs.patch b/sci-mathematics/rstudio/files/rstudio-0.97.318-prefs.patch
new file mode 100644
index 00000000000..3175d47235a
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.318-prefs.patch
@@ -0,0 +1,24 @@
+And now we fix src/gwt/build.xml since java's user preference class is
+braindead and insists on writing where it is not allowed.
+much thanks to http://www.allaboutbalance.com/articles/disableprefs/
+
+diff --git a/src/gwt/build.xml b/src/gwt/build.xml
+index e7d2418..ae3a331 100644
+--- a/src/gwt/build.xml
++++ b/src/gwt/build.xml
+@@ -25,6 +25,7 @@
+ <property name="gwt.extra.args" value=""/>
+ <property name="gwt.main.module" value="org.rstudio.studio.RStudio"/>
+ <property name="ace.bin" value="src/org/rstudio/studio/client/workbench/views/source/editors/text/ace"/>
++ <property environment="env"/>
+
+ <path id="project.class.path">
+ <pathelement location="bin"/>
+@@ -109,6 +110,7 @@
+ </classpath>
+ <!-- add jvmarg -Xss16M or similar if you see a StackOverflowError -->
+ <jvmarg value="-Xmx1024M"/>
++ <jvmarg value="-Djava.util.prefs.userRoot=${env.T}"/>
+ <arg value="-war"/>
+ <arg value="www"/>
+ <arg value="-localWorkers"/>
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.336-boost-1.53.patch b/sci-mathematics/rstudio/files/rstudio-0.97.336-boost-1.53.patch
new file mode 100644
index 00000000000..38bb63a8ab6
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.336-boost-1.53.patch
@@ -0,0 +1,64 @@
+=== modified file 'src/cpp/core/include/core/http/AsyncServer.hpp'
+--- src/cpp/core/include/core/http/AsyncServer.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/AsyncServer.hpp 2013-07-09 12:03:34 +0000
+@@ -264,7 +264,7 @@
+
+ // convert to cannonical HttpConnection
+ boost::shared_ptr<AsyncConnection> pAsyncConnection =
+- boost::shared_static_cast<AsyncConnection>(pConnection);
++ boost::static_pointer_cast<AsyncConnection>(pConnection);
+
+ // call the appropriate handler to generate a response
+ std::string uri = pRequest->uri();
+
+=== modified file 'src/cpp/core/include/core/http/LocalStreamAsyncClient.hpp'
+--- src/cpp/core/include/core/http/LocalStreamAsyncClient.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/LocalStreamAsyncClient.hpp 2013-07-09 12:03:36 +0000
+@@ -87,7 +87,7 @@
+ boost::shared_ptr<AsyncClient<boost::asio::local::stream_protocol::socket> >
+ ptrShared = shared_from_this();
+
+- return boost::shared_static_cast<LocalStreamAsyncClient>(ptrShared);
++ return boost::static_pointer_cast<LocalStreamAsyncClient>(ptrShared);
+ }
+
+ private:
+
+=== modified file 'src/cpp/core/include/core/http/TcpIpAsyncClient.hpp'
+--- src/cpp/core/include/core/http/TcpIpAsyncClient.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/TcpIpAsyncClient.hpp 2013-07-09 12:03:32 +0000
+@@ -74,7 +74,7 @@
+ boost::shared_ptr<AsyncClient<boost::asio::ip::tcp::socket> > ptrShared
+ = shared_from_this();
+
+- return boost::shared_static_cast<TcpIpAsyncClient>(ptrShared);
++ return boost::static_pointer_cast<TcpIpAsyncClient>(ptrShared);
+ }
+
+ private:
+
+=== modified file 'src/cpp/core/include/core/http/TcpIpAsyncClientSsl.hpp'
+--- src/cpp/core/include/core/http/TcpIpAsyncClientSsl.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/TcpIpAsyncClientSsl.hpp 2013-07-09 12:03:39 +0000
+@@ -109,7 +109,7 @@
+ boost::shared_ptr<AsyncClient<boost::asio::ssl::stream<boost::asio::ip::tcp::socket> > > ptrShared
+ = shared_from_this();
+
+- return boost::shared_static_cast<TcpIpAsyncClientSsl>(ptrShared);
++ return boost::static_pointer_cast<TcpIpAsyncClientSsl>(ptrShared);
+ }
+
+ virtual bool isShutdownError(const boost::system::error_code& ec)
+
+=== modified file 'src/cpp/session/http/SessionHttpConnectionListenerImpl.hpp'
+--- src/cpp/session/http/SessionHttpConnectionListenerImpl.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/session/http/SessionHttpConnectionListenerImpl.hpp 2013-07-09 12:03:29 +0000
+@@ -256,7 +256,7 @@
+ {
+ // convert to cannonical HttpConnection
+ boost::shared_ptr<HttpConnection> ptrHttpConnection =
+- boost::shared_static_cast<HttpConnection>(ptrConnection);
++ boost::static_pointer_cast<HttpConnection>(ptrConnection);
+
+ if (!authenticate(ptrHttpConnection))
+ {
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.336-linker_flags.patch b/sci-mathematics/rstudio/files/rstudio-0.97.336-linker_flags.patch
new file mode 100644
index 00000000000..a336fccbc98
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.336-linker_flags.patch
@@ -0,0 +1,18 @@
+Some gcc hardening options were added, however since we add
+"-Wl,--as-needed" we end up with "-Wl,--as-needed;-Wl,-z,relro" which
+leads to linker errors about unknown options, if we make it so the
+as-needed option is the last option on the line, everything is fine.
+
+diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt
+index 0589ca0..fe5bd5f 100644
+--- a/src/cpp/CMakeLists.txt
++++ b/src/cpp/CMakeLists.txt
+@@ -57,7 +57,7 @@ if(UNIX)
+ add_definitions(-D_FORTIFY_SOURCE=2)
+ add_definitions(-fstack-protector --param ssp-buffer-size=4)
+ add_definitions(-pie -fPIE)
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,relro,-z,now")
++ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-z,relro,-z,now ${CMAKE_EXE_LINKER_FLAGS}")
+ endif()
+
+ # Win32 specific global directives
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.336-paths.patch b/sci-mathematics/rstudio/files/rstudio-0.97.336-paths.patch
new file mode 100644
index 00000000000..7b44374a72d
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.336-paths.patch
@@ -0,0 +1,112 @@
+change the install path, as by default everything is dumped right under
+the prefix. After fixing install paths, now fix the source so the
+program can find the moved resources.
+
+diff --git a/CMakeGlobals.txt b/CMakeGlobals.txt
+index da74970..1537bff 100644
+--- a/CMakeGlobals.txt
++++ b/CMakeGlobals.txt
+@@ -103,7 +103,7 @@ else()
+ else()
+ set(RSTUDIO_INSTALL_BIN bin)
+ endif()
+- set(RSTUDIO_INSTALL_SUPPORTING .)
++ set(RSTUDIO_INSTALL_SUPPORTING ${DISTRO_SHARE})
+ endif()
+
+ # if the install prefix is /usr/local then tweak as appropriate
+diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt
+index af4db1c..96b767e 100644
+--- a/src/cpp/server/CMakeLists.txt
++++ b/src/cpp/server/CMakeLists.txt
+@@ -142,7 +142,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}
+- DESTINATION ${RSERVER_INITD_DEBIAN_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_DEBIAN_DIR})
+
+ # install configured redhat init.d script
+ set(RSERVER_INITD_REDHAT_DIR "extras/init.d/redhat")
+@@ -150,7 +150,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}
+- DESTINATION ${RSERVER_INITD_REDHAT_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_REDHAT_DIR})
+
+ # install configured suse init.d script
+ set(RSERVER_INITD_SUSE_DIR "extras/init.d/suse")
+@@ -158,13 +158,13 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_SUSE_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT}
+- DESTINATION ${RSERVER_INITD_SUSE_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_SUSE_DIR})
+
+ # install pam profile
+ set(RSERVER_PAM_DIR "extras/pam")
+ set(RSERVER_PAM_PROFILE "${RSERVER_PAM_DIR}/rstudio")
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_PAM_PROFILE}
+- DESTINATION ${RSERVER_PAM_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_PAM_DIR})
+
+ # install configured apparmor profile
+ set(RSERVER_APPARMOR_DIR "extras/apparmor")
+@@ -172,9 +172,9 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE}
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+ install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_DIR}/apparmor-profile-load
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+
+ # install configured upstart profile
+ set(RSERVER_UPSTART_DIR "extras/upstart")
+@@ -182,6 +182,6 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE}
+- DESTINATION ${RSERVER_UPSTART_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR})
+
+ endif()
+diff --git a/src/cpp/server/ServerOptions.cpp b/src/cpp/server/ServerOptions.cpp
+index 77a63f1..f0d25f0 100644
+--- a/src/cpp/server/ServerOptions.cpp
++++ b/src/cpp/server/ServerOptions.cpp
+@@ -201,7 +201,7 @@ ProgramStatus Options::read(int argc, char * const argv[])
+
+ // convert relative paths by completing from the system installation
+ // path (this allows us to be relocatable)
+- resolvePath(installPath, &wwwLocalPath_);
++ resolvePath(installPath.childPath(DISTRO_SHARE), &wwwLocalPath_);
+ resolvePath(installPath, &authPamHelperPath_);
+ resolvePath(installPath, &rsessionPath_);
+ resolvePath(installPath, &rldpathPath_);
+diff --git a/src/cpp/session/SessionOptions.cpp b/src/cpp/session/SessionOptions.cpp
+index 0df1081..777cc6a 100644
+--- a/src/cpp/session/SessionOptions.cpp
++++ b/src/cpp/session/SessionOptions.cpp
+@@ -333,12 +333,12 @@ core::ProgramStatus Options::read(int argc, char * const argv[])
+
+ // convert relative paths by completing from the app resource path
+- resolvePath(resourcePath, &rResourcesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &rResourcesPath_);
+ resolvePath(resourcePath, &agreementFilePath_);
+- resolvePath(resourcePath, &wwwLocalPath_);
+- resolvePath(resourcePath, &coreRSourcePath_);
+- resolvePath(resourcePath, &modulesRSourcePath_);
+- resolvePath(resourcePath, &sessionLibraryPath_);
+- resolvePath(resourcePath, &sessionPackagesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &coreRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &modulesRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionLibraryPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionPackagesPath_);
+ resolvePostbackPath(resourcePath, &rpostbackPath_);
+ #ifdef _WIN32
+ resolvePath(resourcePath, &consoleIoPath_);
+
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.336-prefs.patch b/sci-mathematics/rstudio/files/rstudio-0.97.336-prefs.patch
new file mode 100644
index 00000000000..3175d47235a
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.336-prefs.patch
@@ -0,0 +1,24 @@
+And now we fix src/gwt/build.xml since java's user preference class is
+braindead and insists on writing where it is not allowed.
+much thanks to http://www.allaboutbalance.com/articles/disableprefs/
+
+diff --git a/src/gwt/build.xml b/src/gwt/build.xml
+index e7d2418..ae3a331 100644
+--- a/src/gwt/build.xml
++++ b/src/gwt/build.xml
+@@ -25,6 +25,7 @@
+ <property name="gwt.extra.args" value=""/>
+ <property name="gwt.main.module" value="org.rstudio.studio.RStudio"/>
+ <property name="ace.bin" value="src/org/rstudio/studio/client/workbench/views/source/editors/text/ace"/>
++ <property environment="env"/>
+
+ <path id="project.class.path">
+ <pathelement location="bin"/>
+@@ -109,6 +110,7 @@
+ </classpath>
+ <!-- add jvmarg -Xss16M or similar if you see a StackOverflowError -->
+ <jvmarg value="-Xmx1024M"/>
++ <jvmarg value="-Djava.util.prefs.userRoot=${env.T}"/>
+ <arg value="-war"/>
+ <arg value="www"/>
+ <arg value="-localWorkers"/>
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.551-boost-1.53.patch b/sci-mathematics/rstudio/files/rstudio-0.97.551-boost-1.53.patch
new file mode 100644
index 00000000000..38bb63a8ab6
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.551-boost-1.53.patch
@@ -0,0 +1,64 @@
+=== modified file 'src/cpp/core/include/core/http/AsyncServer.hpp'
+--- src/cpp/core/include/core/http/AsyncServer.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/AsyncServer.hpp 2013-07-09 12:03:34 +0000
+@@ -264,7 +264,7 @@
+
+ // convert to cannonical HttpConnection
+ boost::shared_ptr<AsyncConnection> pAsyncConnection =
+- boost::shared_static_cast<AsyncConnection>(pConnection);
++ boost::static_pointer_cast<AsyncConnection>(pConnection);
+
+ // call the appropriate handler to generate a response
+ std::string uri = pRequest->uri();
+
+=== modified file 'src/cpp/core/include/core/http/LocalStreamAsyncClient.hpp'
+--- src/cpp/core/include/core/http/LocalStreamAsyncClient.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/LocalStreamAsyncClient.hpp 2013-07-09 12:03:36 +0000
+@@ -87,7 +87,7 @@
+ boost::shared_ptr<AsyncClient<boost::asio::local::stream_protocol::socket> >
+ ptrShared = shared_from_this();
+
+- return boost::shared_static_cast<LocalStreamAsyncClient>(ptrShared);
++ return boost::static_pointer_cast<LocalStreamAsyncClient>(ptrShared);
+ }
+
+ private:
+
+=== modified file 'src/cpp/core/include/core/http/TcpIpAsyncClient.hpp'
+--- src/cpp/core/include/core/http/TcpIpAsyncClient.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/TcpIpAsyncClient.hpp 2013-07-09 12:03:32 +0000
+@@ -74,7 +74,7 @@
+ boost::shared_ptr<AsyncClient<boost::asio::ip::tcp::socket> > ptrShared
+ = shared_from_this();
+
+- return boost::shared_static_cast<TcpIpAsyncClient>(ptrShared);
++ return boost::static_pointer_cast<TcpIpAsyncClient>(ptrShared);
+ }
+
+ private:
+
+=== modified file 'src/cpp/core/include/core/http/TcpIpAsyncClientSsl.hpp'
+--- src/cpp/core/include/core/http/TcpIpAsyncClientSsl.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/core/include/core/http/TcpIpAsyncClientSsl.hpp 2013-07-09 12:03:39 +0000
+@@ -109,7 +109,7 @@
+ boost::shared_ptr<AsyncClient<boost::asio::ssl::stream<boost::asio::ip::tcp::socket> > > ptrShared
+ = shared_from_this();
+
+- return boost::shared_static_cast<TcpIpAsyncClientSsl>(ptrShared);
++ return boost::static_pointer_cast<TcpIpAsyncClientSsl>(ptrShared);
+ }
+
+ virtual bool isShutdownError(const boost::system::error_code& ec)
+
+=== modified file 'src/cpp/session/http/SessionHttpConnectionListenerImpl.hpp'
+--- src/cpp/session/http/SessionHttpConnectionListenerImpl.hpp 2013-07-09 12:02:58 +0000
++++ src/cpp/session/http/SessionHttpConnectionListenerImpl.hpp 2013-07-09 12:03:29 +0000
+@@ -256,7 +256,7 @@
+ {
+ // convert to cannonical HttpConnection
+ boost::shared_ptr<HttpConnection> ptrHttpConnection =
+- boost::shared_static_cast<HttpConnection>(ptrConnection);
++ boost::static_pointer_cast<HttpConnection>(ptrConnection);
+
+ if (!authenticate(ptrHttpConnection))
+ {
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.551-linker_flags.patch b/sci-mathematics/rstudio/files/rstudio-0.97.551-linker_flags.patch
new file mode 100644
index 00000000000..a336fccbc98
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.551-linker_flags.patch
@@ -0,0 +1,18 @@
+Some gcc hardening options were added, however since we add
+"-Wl,--as-needed" we end up with "-Wl,--as-needed;-Wl,-z,relro" which
+leads to linker errors about unknown options, if we make it so the
+as-needed option is the last option on the line, everything is fine.
+
+diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt
+index 0589ca0..fe5bd5f 100644
+--- a/src/cpp/CMakeLists.txt
++++ b/src/cpp/CMakeLists.txt
+@@ -57,7 +57,7 @@ if(UNIX)
+ add_definitions(-D_FORTIFY_SOURCE=2)
+ add_definitions(-fstack-protector --param ssp-buffer-size=4)
+ add_definitions(-pie -fPIE)
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,relro,-z,now")
++ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-z,relro,-z,now ${CMAKE_EXE_LINKER_FLAGS}")
+ endif()
+
+ # Win32 specific global directives
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.551-paths.patch b/sci-mathematics/rstudio/files/rstudio-0.97.551-paths.patch
new file mode 100644
index 00000000000..7b44374a72d
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.551-paths.patch
@@ -0,0 +1,112 @@
+change the install path, as by default everything is dumped right under
+the prefix. After fixing install paths, now fix the source so the
+program can find the moved resources.
+
+diff --git a/CMakeGlobals.txt b/CMakeGlobals.txt
+index da74970..1537bff 100644
+--- a/CMakeGlobals.txt
++++ b/CMakeGlobals.txt
+@@ -103,7 +103,7 @@ else()
+ else()
+ set(RSTUDIO_INSTALL_BIN bin)
+ endif()
+- set(RSTUDIO_INSTALL_SUPPORTING .)
++ set(RSTUDIO_INSTALL_SUPPORTING ${DISTRO_SHARE})
+ endif()
+
+ # if the install prefix is /usr/local then tweak as appropriate
+diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt
+index af4db1c..96b767e 100644
+--- a/src/cpp/server/CMakeLists.txt
++++ b/src/cpp/server/CMakeLists.txt
+@@ -142,7 +142,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}
+- DESTINATION ${RSERVER_INITD_DEBIAN_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_DEBIAN_DIR})
+
+ # install configured redhat init.d script
+ set(RSERVER_INITD_REDHAT_DIR "extras/init.d/redhat")
+@@ -150,7 +150,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}
+- DESTINATION ${RSERVER_INITD_REDHAT_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_REDHAT_DIR})
+
+ # install configured suse init.d script
+ set(RSERVER_INITD_SUSE_DIR "extras/init.d/suse")
+@@ -158,13 +158,13 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_SUSE_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT}
+- DESTINATION ${RSERVER_INITD_SUSE_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_SUSE_DIR})
+
+ # install pam profile
+ set(RSERVER_PAM_DIR "extras/pam")
+ set(RSERVER_PAM_PROFILE "${RSERVER_PAM_DIR}/rstudio")
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_PAM_PROFILE}
+- DESTINATION ${RSERVER_PAM_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_PAM_DIR})
+
+ # install configured apparmor profile
+ set(RSERVER_APPARMOR_DIR "extras/apparmor")
+@@ -172,9 +172,9 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE}
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+ install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_DIR}/apparmor-profile-load
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+
+ # install configured upstart profile
+ set(RSERVER_UPSTART_DIR "extras/upstart")
+@@ -182,6 +182,6 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE}
+- DESTINATION ${RSERVER_UPSTART_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR})
+
+ endif()
+diff --git a/src/cpp/server/ServerOptions.cpp b/src/cpp/server/ServerOptions.cpp
+index 77a63f1..f0d25f0 100644
+--- a/src/cpp/server/ServerOptions.cpp
++++ b/src/cpp/server/ServerOptions.cpp
+@@ -201,7 +201,7 @@ ProgramStatus Options::read(int argc, char * const argv[])
+
+ // convert relative paths by completing from the system installation
+ // path (this allows us to be relocatable)
+- resolvePath(installPath, &wwwLocalPath_);
++ resolvePath(installPath.childPath(DISTRO_SHARE), &wwwLocalPath_);
+ resolvePath(installPath, &authPamHelperPath_);
+ resolvePath(installPath, &rsessionPath_);
+ resolvePath(installPath, &rldpathPath_);
+diff --git a/src/cpp/session/SessionOptions.cpp b/src/cpp/session/SessionOptions.cpp
+index 0df1081..777cc6a 100644
+--- a/src/cpp/session/SessionOptions.cpp
++++ b/src/cpp/session/SessionOptions.cpp
+@@ -333,12 +333,12 @@ core::ProgramStatus Options::read(int argc, char * const argv[])
+
+ // convert relative paths by completing from the app resource path
+- resolvePath(resourcePath, &rResourcesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &rResourcesPath_);
+ resolvePath(resourcePath, &agreementFilePath_);
+- resolvePath(resourcePath, &wwwLocalPath_);
+- resolvePath(resourcePath, &coreRSourcePath_);
+- resolvePath(resourcePath, &modulesRSourcePath_);
+- resolvePath(resourcePath, &sessionLibraryPath_);
+- resolvePath(resourcePath, &sessionPackagesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &coreRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &modulesRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionLibraryPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionPackagesPath_);
+ resolvePostbackPath(resourcePath, &rpostbackPath_);
+ #ifdef _WIN32
+ resolvePath(resourcePath, &consoleIoPath_);
+
diff --git a/sci-mathematics/rstudio/files/rstudio-0.97.551-prefs.patch b/sci-mathematics/rstudio/files/rstudio-0.97.551-prefs.patch
new file mode 100644
index 00000000000..3175d47235a
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.97.551-prefs.patch
@@ -0,0 +1,24 @@
+And now we fix src/gwt/build.xml since java's user preference class is
+braindead and insists on writing where it is not allowed.
+much thanks to http://www.allaboutbalance.com/articles/disableprefs/
+
+diff --git a/src/gwt/build.xml b/src/gwt/build.xml
+index e7d2418..ae3a331 100644
+--- a/src/gwt/build.xml
++++ b/src/gwt/build.xml
+@@ -25,6 +25,7 @@
+ <property name="gwt.extra.args" value=""/>
+ <property name="gwt.main.module" value="org.rstudio.studio.RStudio"/>
+ <property name="ace.bin" value="src/org/rstudio/studio/client/workbench/views/source/editors/text/ace"/>
++ <property environment="env"/>
+
+ <path id="project.class.path">
+ <pathelement location="bin"/>
+@@ -109,6 +110,7 @@
+ </classpath>
+ <!-- add jvmarg -Xss16M or similar if you see a StackOverflowError -->
+ <jvmarg value="-Xmx1024M"/>
++ <jvmarg value="-Djava.util.prefs.userRoot=${env.T}"/>
+ <arg value="-war"/>
+ <arg value="www"/>
+ <arg value="-localWorkers"/>
diff --git a/sci-mathematics/rstudio/files/rstudio-0.98.1091-boost-1.57.patch b/sci-mathematics/rstudio/files/rstudio-0.98.1091-boost-1.57.patch
new file mode 100644
index 00000000000..3a157183c22
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.98.1091-boost-1.57.patch
@@ -0,0 +1,60 @@
+--- rstudio-0.98.1091-orig/src/cpp/desktop/DesktopApplicationLaunch.hpp 2014-11-06 23:15:47.000000000 +1100
++++ rstudio-0.98.1091/src/cpp/desktop/DesktopApplicationLaunch.hpp 2015-02-28 14:01:51.970672316 +1100
+@@ -19,7 +19,10 @@
+ #include <QObject>
+ #include <QWidget>
+ #include <QApplication>
++// see https://bugreports.qt-project.org/browse/QTBUG-22829
++#ifndef Q_MOC_RUN
+ #include <boost/scoped_ptr.hpp>
++#endif
+
+ namespace desktop {
+
+--- rstudio-0.98.1091-orig/src/cpp/desktop/DesktopSessionLauncher.hpp 2014-11-06 23:15:47.000000000 +1100
++++ rstudio-0.98.1091/src/cpp/desktop/DesktopSessionLauncher.hpp 2015-02-28 14:01:51.972672316 +1100
+@@ -18,7 +18,10 @@
+
+ #include <string>
+
++// see https://bugreports.qt-project.org/browse/QTBUG-22829
++#ifndef Q_MOC_RUN
+ #include <boost/utility.hpp>
++#endif
+
+ #include <core/Error.hpp>
+ #include <core/FilePath.hpp>
+--- rstudio-0.98.1091-orig/src/cpp/core/include/core/FilePath.hpp 2014-11-06 23:15:47.000000000 +1100
++++ rstudio-0.98.1091/src/cpp/core/include/core/FilePath.hpp 2015-02-28 14:01:51.984672314 +1100
+@@ -23,11 +23,14 @@
+ #include <vector>
+ #include <iosfwd>
+
++// see https://bugreports.qt-project.org/browse/QTBUG-22829
++#ifndef Q_MOC_RUN
+ #include <boost/shared_ptr.hpp>
+ #include <boost/scoped_ptr.hpp>
+ #include <boost/function.hpp>
+
+ #include <boost/utility.hpp>
++#endif
+
+ #include <core/Error.hpp>
+ #include <core/Log.hpp>
+--- rstudio-0.98.1091-orig/src/cpp/core/include/core/Error.hpp 2014-11-06 23:15:47.000000000 +1100
++++ rstudio-0.98.1091/src/cpp/core/include/core/Error.hpp 2015-02-28 14:01:51.977672315 +1100
+@@ -20,11 +20,14 @@
+ #include <string>
+ #include <vector>
+
++// see https://bugreports.qt-project.org/browse/QTBUG-22829
++#ifndef Q_MOC_RUN
+ #include <boost/shared_ptr.hpp>
+
+ #include <boost/system/error_code.hpp>
+
+ #include <boost/current_function.hpp>
++#endif
+
+ namespace core {
+
diff --git a/sci-mathematics/rstudio/files/rstudio-0.98.1091-pandoc.patch b/sci-mathematics/rstudio/files/rstudio-0.98.1091-pandoc.patch
new file mode 100644
index 00000000000..3df8d1a986a
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.98.1091-pandoc.patch
@@ -0,0 +1,26 @@
+--- rstudio-0.98.1091-orig/src/cpp/session/CMakeLists.txt 2014-11-06 23:15:47.000000000 +1100
++++ rstudio-0.98.1091/src/cpp/session/CMakeLists.txt 2014-11-26 17:12:42.699712510 +1100
+@@ -25,9 +25,6 @@
+ if(NOT EXISTS "${RSTUDIO_DEPENDENCIES_DIR}/common/mathjax-23")
+ message(FATAL_ERROR "Mathjax 2.3 not found (re-run install-dependencies script to install)")
+ endif()
+-if(NOT EXISTS "${RSTUDIO_DEPENDENCIES_DIR}/common/pandoc")
+- message(FATAL_ERROR "pandoc not found (re-run install-dependencies script to install)")
+-endif()
+ if(NOT EXISTS "${RSTUDIO_DEPENDENCIES_DIR}/common/rmarkdown")
+ message(FATAL_ERROR "rmarkdown package not found (re-run install-dependencies script to install)")
+ endif()
+@@ -343,13 +340,6 @@
+ install(DIRECTORY "${RSTUDIO_DEPENDENCIES_DIR}/common/mathjax-23"
+ DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources")
+
+- # install pandoc
+- set(PANDOC_BIN "${RSTUDIO_DEPENDENCIES_DIR}/common/pandoc/1.12.4.2")
+- file(GLOB PANDOC_FILES "${PANDOC_BIN}/pandoc*")
+- install(FILES ${PANDOC_FILES}
+- PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
+- DESTINATION ${RSTUDIO_INSTALL_BIN}/pandoc)
+-
+ # install rmarkdown package
+ file(GLOB RMARKDOWN_PACKAGE "${RSTUDIO_DEPENDENCIES_DIR}/common/rmarkdown*.tar.gz")
+ install(FILES ${RMARKDOWN_PACKAGE}
diff --git a/sci-mathematics/rstudio/files/rstudio-0.98.490-linker_flags.patch b/sci-mathematics/rstudio/files/rstudio-0.98.490-linker_flags.patch
new file mode 100644
index 00000000000..a336fccbc98
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.98.490-linker_flags.patch
@@ -0,0 +1,18 @@
+Some gcc hardening options were added, however since we add
+"-Wl,--as-needed" we end up with "-Wl,--as-needed;-Wl,-z,relro" which
+leads to linker errors about unknown options, if we make it so the
+as-needed option is the last option on the line, everything is fine.
+
+diff --git a/src/cpp/CMakeLists.txt b/src/cpp/CMakeLists.txt
+index 0589ca0..fe5bd5f 100644
+--- a/src/cpp/CMakeLists.txt
++++ b/src/cpp/CMakeLists.txt
+@@ -57,7 +57,7 @@ if(UNIX)
+ add_definitions(-D_FORTIFY_SOURCE=2)
+ add_definitions(-fstack-protector --param ssp-buffer-size=4)
+ add_definitions(-pie -fPIE)
+- set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -Wl,-z,relro,-z,now")
++ set(CMAKE_EXE_LINKER_FLAGS "-Wl,-z,relro,-z,now ${CMAKE_EXE_LINKER_FLAGS}")
+ endif()
+
+ # Win32 specific global directives
diff --git a/sci-mathematics/rstudio/files/rstudio-0.98.490-paths.patch b/sci-mathematics/rstudio/files/rstudio-0.98.490-paths.patch
new file mode 100644
index 00000000000..d28ad5cb075
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.98.490-paths.patch
@@ -0,0 +1,120 @@
+diff --git a/CMakeGlobals.txt b/CMakeGlobals.txt
+index cc10191..f75b85a 100644
+--- a/CMakeGlobals.txt
++++ b/CMakeGlobals.txt
+@@ -105,7 +105,7 @@ else()
+ else()
+ set(RSTUDIO_INSTALL_BIN bin)
+ endif()
+- set(RSTUDIO_INSTALL_SUPPORTING .)
++ set(RSTUDIO_INSTALL_SUPPORTING ${DISTRO_SHARE})
+ endif()
+
+ # if the install prefix is /usr/local then tweak as appropriate
+diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt
+index 184e514..d09aac5 100644
+--- a/src/cpp/server/CMakeLists.txt
++++ b/src/cpp/server/CMakeLists.txt
+@@ -145,7 +145,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}
+- DESTINATION ${RSERVER_INITD_DEBIAN_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_DEBIAN_DIR})
+
+ # install configured redhat init.d script
+ set(RSERVER_INITD_REDHAT_DIR "extras/init.d/redhat")
+@@ -153,7 +153,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}
+- DESTINATION ${RSERVER_INITD_REDHAT_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_REDHAT_DIR})
+
+ # install configured suse init.d script
+ set(RSERVER_INITD_SUSE_DIR "extras/init.d/suse")
+@@ -161,13 +161,13 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_SUSE_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT}
+- DESTINATION ${RSERVER_INITD_SUSE_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_SUSE_DIR})
+
+ # install pam profile
+ set(RSERVER_PAM_DIR "extras/pam")
+ set(RSERVER_PAM_PROFILE "${RSERVER_PAM_DIR}/rstudio")
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_PAM_PROFILE}
+- DESTINATION ${RSERVER_PAM_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_PAM_DIR})
+
+ # install configured apparmor profile
+ set(RSERVER_APPARMOR_DIR "extras/apparmor")
+@@ -175,9 +175,9 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE}
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+ install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_DIR}/apparmor-profile-load
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+
+ # install configured upstart profile
+ set(RSERVER_UPSTART_DIR "extras/upstart")
+@@ -185,12 +185,12 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE}
+- DESTINATION ${RSERVER_UPSTART_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR})
+ set(RSERVER_UPSTART_PROFILE_REDHAT "${RSERVER_UPSTART_DIR}/rstudio-server.redhat.conf")
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE_REDHAT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE_REDHAT})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE_REDHAT}
+- DESTINATION ${RSERVER_UPSTART_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR})
+
+ endif()
+
+diff --git a/src/cpp/server/ServerOptions.cpp b/src/cpp/server/ServerOptions.cpp
+index 1eaf7c0..4b25fa1 100644
+--- a/src/cpp/server/ServerOptions.cpp
++++ b/src/cpp/server/ServerOptions.cpp
+@@ -307,8 +307,8 @@ ProgramStatus Options::read(int argc,
+
+ // convert relative paths by completing from the system installation
+ // path (this allows us to be relocatable)
+- resolvePath(resourcePath, &wwwLocalPath_);
+- resolvePath(resourcePath, &wwwSymbolMapsPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwSymbolMapsPath_);
+ resolvePath(binaryPath, &authPamHelperPath_);
+ resolvePath(binaryPath, &rsessionPath_);
+ resolvePath(binaryPath, &rldpathPath_);
+diff --git a/src/cpp/session/SessionOptions.cpp b/src/cpp/session/SessionOptions.cpp
+index 44b3d55..a48cdb6 100644
+--- a/src/cpp/session/SessionOptions.cpp
++++ b/src/cpp/session/SessionOptions.cpp
+@@ -357,14 +357,14 @@ core::ProgramStatus Options::read(int argc, char * const argv[])
+ timeoutMinutes_ = 0;
+
+ // convert relative paths by completing from the app resource path
+- resolvePath(resourcePath, &rResourcesPath_);
+- resolvePath(resourcePath, &agreementFilePath_);
+- resolvePath(resourcePath, &wwwLocalPath_);
+- resolvePath(resourcePath, &wwwSymbolMapsPath_);
+- resolvePath(resourcePath, &coreRSourcePath_);
+- resolvePath(resourcePath, &modulesRSourcePath_);
+- resolvePath(resourcePath, &sessionLibraryPath_);
+- resolvePath(resourcePath, &sessionPackagesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &rResourcesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &agreementFilePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &coreRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &modulesRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionLibraryPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionPackagesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwSymbolMapsPath_);
+ resolvePostbackPath(resourcePath, &rpostbackPath_);
+ #ifdef _WIN32
+ resolvePath(resourcePath, &consoleIoPath_);
diff --git a/sci-mathematics/rstudio/files/rstudio-0.98.490-prefs.patch b/sci-mathematics/rstudio/files/rstudio-0.98.490-prefs.patch
new file mode 100644
index 00000000000..3175d47235a
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.98.490-prefs.patch
@@ -0,0 +1,24 @@
+And now we fix src/gwt/build.xml since java's user preference class is
+braindead and insists on writing where it is not allowed.
+much thanks to http://www.allaboutbalance.com/articles/disableprefs/
+
+diff --git a/src/gwt/build.xml b/src/gwt/build.xml
+index e7d2418..ae3a331 100644
+--- a/src/gwt/build.xml
++++ b/src/gwt/build.xml
+@@ -25,6 +25,7 @@
+ <property name="gwt.extra.args" value=""/>
+ <property name="gwt.main.module" value="org.rstudio.studio.RStudio"/>
+ <property name="ace.bin" value="src/org/rstudio/studio/client/workbench/views/source/editors/text/ace"/>
++ <property environment="env"/>
+
+ <path id="project.class.path">
+ <pathelement location="bin"/>
+@@ -109,6 +110,7 @@
+ </classpath>
+ <!-- add jvmarg -Xss16M or similar if you see a StackOverflowError -->
+ <jvmarg value="-Xmx1024M"/>
++ <jvmarg value="-Djava.util.prefs.userRoot=${env.T}"/>
+ <arg value="-war"/>
+ <arg value="www"/>
+ <arg value="-localWorkers"/>
diff --git a/sci-mathematics/rstudio/files/rstudio-0.98.932-pandoc.patch b/sci-mathematics/rstudio/files/rstudio-0.98.932-pandoc.patch
new file mode 100644
index 00000000000..d2b6911eabb
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.98.932-pandoc.patch
@@ -0,0 +1,25 @@
+--- a/src/cpp/session/CMakeLists.txt
++++ b/src/cpp/session/CMakeLists.txt
+@@ -25,9 +25,6 @@
+ if(NOT EXISTS "${RSTUDIO_DEPENDENCIES_DIR}/common/mathjax")
+ message(FATAL_ERROR "Mathjax not found (re-run install-dependencies script to install)")
+ endif()
+-if(NOT EXISTS "${RSTUDIO_DEPENDENCIES_DIR}/common/pandoc")
+- message(FATAL_ERROR "pandoc not found (re-run install-dependencies script to install)")
+-endif()
+ if(NOT EXISTS "${RSTUDIO_DEPENDENCIES_DIR}/common/rmarkdown")
+ message(FATAL_ERROR "rmarkdown package not found (re-run install-dependencies script to install)")
+ endif()
+@@ -337,12 +334,6 @@
+ install(DIRECTORY "${RSTUDIO_DEPENDENCIES_DIR}/common/mathjax"
+ DESTINATION "${RSTUDIO_INSTALL_SUPPORTING}/resources")
+
+- # install pandoc
+- set(PANDOC_BIN "${RSTUDIO_DEPENDENCIES_DIR}/common/pandoc/1.12.3")
+- file(GLOB PANDOC_FILES "${PANDOC_BIN}/pandoc*")
+- install(PROGRAMS ${PANDOC_FILES}
+- DESTINATION ${RSTUDIO_INSTALL_BIN}/pandoc)
+-
+ # install rmarkdown package
+ file(GLOB RMARKDOWN_PACKAGE "${RSTUDIO_DEPENDENCIES_DIR}/common/rmarkdown*.tar.gz")
+ install(FILES ${RMARKDOWN_PACKAGE}
diff --git a/sci-mathematics/rstudio/files/rstudio-0.98.932-paths.patch b/sci-mathematics/rstudio/files/rstudio-0.98.932-paths.patch
new file mode 100644
index 00000000000..d4bb4249f1a
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-0.98.932-paths.patch
@@ -0,0 +1,140 @@
+diff --git a/CMakeGlobals.txt b/CMakeGlobals.txt
+index cc10191..f75b85a 100644
+--- a/CMakeGlobals.txt
++++ b/CMakeGlobals.txt
+@@ -105,7 +105,7 @@ else()
+ else()
+ set(RSTUDIO_INSTALL_BIN bin)
+ endif()
+- set(RSTUDIO_INSTALL_SUPPORTING .)
++ set(RSTUDIO_INSTALL_SUPPORTING ${DISTRO_SHARE})
+ endif()
+
+ # if the install prefix is /usr/local then tweak as appropriate
+diff --git a/src/cpp/server/CMakeLists.txt b/src/cpp/server/CMakeLists.txt
+index 184e514..d09aac5 100644
+--- a/src/cpp/server/CMakeLists.txt
++++ b/src/cpp/server/CMakeLists.txt
+@@ -145,7 +145,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_DEBIAN_SCRIPT}
+- DESTINATION ${RSERVER_INITD_DEBIAN_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_DEBIAN_DIR})
+
+ # install configured redhat init.d script
+ set(RSERVER_INITD_REDHAT_DIR "extras/init.d/redhat")
+@@ -153,7 +153,7 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_REDHAT_SCRIPT}
+- DESTINATION ${RSERVER_INITD_REDHAT_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_REDHAT_DIR})
+
+ # install configured suse init.d script
+ set(RSERVER_INITD_SUSE_DIR "extras/init.d/suse")
+@@ -161,13 +161,13 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_INITD_SUSE_SCRIPT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT})
+ install(PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_INITD_SUSE_SCRIPT}
+- DESTINATION ${RSERVER_INITD_SUSE_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_INITD_SUSE_DIR})
+
+ # install pam profile
+ set(RSERVER_PAM_DIR "extras/pam")
+ set(RSERVER_PAM_PROFILE "${RSERVER_PAM_DIR}/rstudio")
+ install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_PAM_PROFILE}
+- DESTINATION ${RSERVER_PAM_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_PAM_DIR})
+
+ # install configured apparmor profile
+ set(RSERVER_APPARMOR_DIR "extras/apparmor")
+@@ -175,9 +175,9 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_APPARMOR_PROFILE}
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+ install(PROGRAMS ${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_APPARMOR_DIR}/apparmor-profile-load
+- DESTINATION ${RSERVER_APPARMOR_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_APPARMOR_DIR})
+
+ # install configured upstart profile
+ set(RSERVER_UPSTART_DIR "extras/upstart")
+@@ -185,12 +185,12 @@ if (UNIX AND NOT APPLE)
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE}
+- DESTINATION ${RSERVER_UPSTART_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR})
+ set(RSERVER_UPSTART_PROFILE_REDHAT "${RSERVER_UPSTART_DIR}/rstudio-server.redhat.conf")
+ configure_file(${CMAKE_CURRENT_SOURCE_DIR}/${RSERVER_UPSTART_PROFILE_REDHAT}.in
+ ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE_REDHAT})
+ install(FILES ${CMAKE_CURRENT_BINARY_DIR}/${RSERVER_UPSTART_PROFILE_REDHAT}
+- DESTINATION ${RSERVER_UPSTART_DIR})
++ DESTINATION ${DISTRO_SHARE}/${RSERVER_UPSTART_DIR})
+
+ endif()
+
+diff --git a/src/cpp/server/ServerOptions.cpp b/src/cpp/server/ServerOptions.cpp
+index 1eaf7c0..4b25fa1 100644
+--- a/src/cpp/server/ServerOptions.cpp
++++ b/src/cpp/server/ServerOptions.cpp
+@@ -307,8 +307,8 @@ ProgramStatus Options::read(int argc,
+
+ // convert relative paths by completing from the system installation
+ // path (this allows us to be relocatable)
+- resolvePath(resourcePath, &wwwLocalPath_);
+- resolvePath(resourcePath, &wwwSymbolMapsPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwSymbolMapsPath_);
+ resolvePath(binaryPath, &authPamHelperPath_);
+ resolvePath(binaryPath, &rsessionPath_);
+ resolvePath(binaryPath, &rldpathPath_);
+diff --git a/src/cpp/session/SessionOptions.cpp b/src/cpp/session/SessionOptions.cpp
+index 44b3d55..a48cdb6 100644
+--- a/src/cpp/session/SessionOptions.cpp
++++ b/src/cpp/session/SessionOptions.cpp
+@@ -40,7 +40,7 @@
+ namespace session {
+
+ namespace {
+-const char* const kDefaultPandocPath = "bin/pandoc";
++const char* const kDefaultPandocPath = "bin";
+ const char* const kDefaultPostbackPath = "bin/postback/rpostback";
+ } // anonymous namespace
+
+@@ -392,15 +392,15 @@
+ }
+
+ // convert relative paths by completing from the app resource path
+- resolvePath(resourcePath, &rResourcesPath_);
+- resolvePath(resourcePath, &agreementFilePath_);
+- resolvePath(resourcePath, &wwwLocalPath_);
+- resolvePath(resourcePath, &wwwSymbolMapsPath_);
+- resolvePath(resourcePath, &coreRSourcePath_);
+- resolvePath(resourcePath, &modulesRSourcePath_);
+- resolvePath(resourcePath, &sessionLibraryPath_);
+- resolvePath(resourcePath, &sessionPackagesPath_);
+- resolvePath(resourcePath, &sessionPackageArchivesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &rResourcesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &agreementFilePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwLocalPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &coreRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &modulesRSourcePath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionLibraryPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionPackagesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &sessionPackageArchivesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &wwwSymbolMapsPath_);
+ resolvePostbackPath(resourcePath, &rpostbackPath_);
+ #ifdef _WIN32
+ resolvePath(resourcePath, &consoleIoPath_);
+@@ -409,7 +409,7 @@
+ resolvePath(resourcePath, &msysSshPath_);
+ resolvePath(resourcePath, &sumatraPath_);
+ #endif
+- resolvePath(resourcePath, &hunspellDictionariesPath_);
++ resolvePath(resourcePath.childPath(DISTRO_SHARE), &hunspellDictionariesPath_);
+ resolvePath(resourcePath, &mathjaxPath_);
+ resolvePandocPath(resourcePath, &pandocPath_);
+
diff --git a/sci-mathematics/rstudio/files/rstudio-server.conf b/sci-mathematics/rstudio/files/rstudio-server.conf
new file mode 100644
index 00000000000..ebf1a164916
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-server.conf
@@ -0,0 +1,35 @@
+###########rstudio-server.conf#############
+
+# www-port entry corresponding to the port you want RStudio to listen on
+#www-port=80
+
+
+# By default RStudio binds to address 0.0.0.0 (accepting connections
+# from any remote IP). You can modify this behavior using the
+# www-address entry.
+#www-address=127.0.0.1
+
+
+# You can add elements to the default LD_LIBRARY_PATH for R
+# sessions (as determined by the R ldpaths script) by adding
+# an rsession-ld-library-path entry to the server config file.
+# This might be useful for ensuring that packages can
+# locate external library dependencies that aren't installed
+# in the system standard library paths
+#rsession-ld-library-path=/opt/local/lib:/opt/local/someapp/lib
+
+
+#By default RStudio Server runs against the version of R which
+# is found on the system PATH (using which R). You can override
+# which version of R is used via the rsession-which-r setting
+# in the server config file. For example, if you have two
+# versions of R installed on the server and want to make sure
+# the one at /usr/local/bin/R is used by RStudio then you would use:
+rsession-which-r=/usr/bin/R
+
+########ADDITIONALAL#########
+
+# To limit the users who can login to RStudio to the members
+# of a specific group, you use the auth-required-user-group
+# setting
+auth-required-user-group=rstudio_users
diff --git a/sci-mathematics/rstudio/files/rstudio-server.initd b/sci-mathematics/rstudio/files/rstudio-server.initd
new file mode 100644
index 00000000000..e6ca6b942bb
--- /dev/null
+++ b/sci-mathematics/rstudio/files/rstudio-server.initd
@@ -0,0 +1,15 @@
+#!/sbin/runscript
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+start() {
+ ebegin "Starting RStudio Server"
+ start-stop-daemon --start --quiet --exec /usr/bin/rserver
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping RStudio Server"
+ start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --name /usr/bin/rserver
+ eend $?
+}
diff --git a/sci-mathematics/rstudio/metadata.xml b/sci-mathematics/rstudio/metadata.xml
new file mode 100644
index 00000000000..ba90cdbe1e8
--- /dev/null
+++ b/sci-mathematics/rstudio/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>gienah@gentoo.org</email>
+ <name>Mark Wright</name>
+ </maintainer>
+ <longdescription lang="en">
+ RStudio is an integrated development environment (IDE) for R. It can
+ run it on a desktop or even over the web using RStudio Server.
+</longdescription>
+ <use>
+ <flag name="server">Build and install the RStudio server</flag>
+ </use>
+ <upstream>
+ <remote-id type="github">rstudio/rstudio</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/sci-mathematics/rstudio/rstudio-0.97.336.ebuild b/sci-mathematics/rstudio/rstudio-0.97.336.ebuild
new file mode 100644
index 00000000000..f473f63dd0f
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.97.336.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils user cmake-utils gnome2-utils pam versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+# * fix the about/help/menu and get rid of license
+
+GWTVER=2.5.0.rc1
+GINVER=1.5
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="dedicated server"
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND=">=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50:=
+ dev-libs/mathjax
+ dev-libs/openssl:0
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ !dedicated? (
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}
+ server? ( virtual/pam )
+ )
+ dedicated? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} dependencies/common/dictionaries || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries "${DISTDIR}"/core-dictionaries.zip || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${P}-prefs.patch \
+ "${FILESDIR}"/${P}-paths.patch \
+ "${FILESDIR}"/${P}-linker_flags.patch \
+ "${FILESDIR}"/${P}-boost-1.53.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ $(cmake-utils_use !dedicated RSTUDIO_INSTALL_FREEDESKTOP)
+ -DRSTUDIO_TARGET=$(usex dedicated "Server" "$(usex server "All" "Desktop")")
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+ if use dedicated || use server; then
+ dopamd src/cpp/server/extras/pam/rstudio
+ newinitd "${FILESDIR}"/rstudio-server.initd rstudio-server
+ fi
+}
+
+pkg_preinst() {
+ use dedicated || gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+
+ if use dedicated || use server; then
+ enewgroup rstudio-server
+ enewuser rstudio-server -1 -1 -1 rstudio-server
+ fi
+}
+
+pkg_postrm() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+}
diff --git a/sci-mathematics/rstudio/rstudio-0.97.551.ebuild b/sci-mathematics/rstudio/rstudio-0.97.551.ebuild
new file mode 100644
index 00000000000..f473f63dd0f
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.97.551.ebuild
@@ -0,0 +1,141 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils user cmake-utils gnome2-utils pam versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+# * fix the about/help/menu and get rid of license
+
+GWTVER=2.5.0.rc1
+GINVER=1.5
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="dedicated server"
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND=">=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50:=
+ dev-libs/mathjax
+ dev-libs/openssl:0
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ !dedicated? (
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}
+ server? ( virtual/pam )
+ )
+ dedicated? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} dependencies/common/dictionaries || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries "${DISTDIR}"/core-dictionaries.zip || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${P}-prefs.patch \
+ "${FILESDIR}"/${P}-paths.patch \
+ "${FILESDIR}"/${P}-linker_flags.patch \
+ "${FILESDIR}"/${P}-boost-1.53.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ $(cmake-utils_use !dedicated RSTUDIO_INSTALL_FREEDESKTOP)
+ -DRSTUDIO_TARGET=$(usex dedicated "Server" "$(usex server "All" "Desktop")")
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+ if use dedicated || use server; then
+ dopamd src/cpp/server/extras/pam/rstudio
+ newinitd "${FILESDIR}"/rstudio-server.initd rstudio-server
+ fi
+}
+
+pkg_preinst() {
+ use dedicated || gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+
+ if use dedicated || use server; then
+ enewgroup rstudio-server
+ enewuser rstudio-server -1 -1 -1 rstudio-server
+ fi
+}
+
+pkg_postrm() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+}
diff --git a/sci-mathematics/rstudio/rstudio-0.98.1028.ebuild b/sci-mathematics/rstudio/rstudio-0.98.1028.ebuild
new file mode 100644
index 00000000000..d836f067336
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.98.1028.ebuild
@@ -0,0 +1,162 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils cmake-utils gnome2-utils versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+
+# update from scripts in dependencies/common
+GWTVER=2.6.0
+GINVER=1.5
+SELENIUMVER=2.37.0
+CHROMEDRIVER_VER=2.7
+PANDOC_VER=1.12.3
+PACKRAT_VER=0.3.0
+RMARKDOWN_VER=0.2.49
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org
+ https://github.com/rstudio/rstudio/"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-java-${SELENIUMVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-server-standalone-${SELENIUMVER}.jar
+ https://s3.amazonaws.com/rstudio-buildtools/chromedriver-linux
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip
+ http://dev.gentoo.org/~hasufell/distfiles/packrat_${PACKRAT_VER}.tar.gz
+ http://dev.gentoo.org/~hasufell/distfiles/rmarkdown_${RMARKDOWN_VER}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND="
+ app-text/pandoc
+ dev-haskell/pandoc-citeproc
+ >=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50
+ dev-libs/mathjax
+ dev-libs/openssl:0
+ sys-apps/util-linux
+ sys-libs/zlib
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} \
+ dependencies/common/dictionaries \
+ src/gwt/lib/selenium/${SELENIUMVER} \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER} || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} \
+ "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries \
+ "${DISTDIR}"/core-dictionaries.zip || die
+ unzip -qd src/gwt/lib/selenium/${SELENIUMVER} \
+ "${DISTDIR}"/selenium-java-${SELENIUMVER}.zip || die
+ cp "${DISTDIR}"/selenium-server-standalone-${SELENIUMVER}.jar \
+ src/gwt/lib/selenium/${SELENIUMVER}/ || die
+ cp "${DISTDIR}"/chromedriver-linux \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER}/ || die
+ cd dependencies/common || die
+ unpack packrat_${PACKRAT_VER}.tar.gz
+ unpack rmarkdown_${RMARKDOWN_VER}.tar.gz
+ cp "${DISTDIR}"/rmarkdown_${RMARKDOWN_VER}.tar.gz \
+ . || die
+ cp "${DISTDIR}"/packrat_${PACKRAT_VER}.tar.gz \
+ . || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${PN}-0.98.490-prefs.patch \
+ "${FILESDIR}"/${PN}-0.98.932-paths.patch \
+ "${FILESDIR}"/${PN}-0.98.932-pandoc.patch \
+ "${FILESDIR}"/${PN}-0.98.490-linker_flags.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ -DRSTUDIO_INSTALL_FREEDESKTOP=ON
+ -DRSTUDIO_TARGET=Desktop
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}
diff --git a/sci-mathematics/rstudio/rstudio-0.98.1091.ebuild b/sci-mathematics/rstudio/rstudio-0.98.1091.ebuild
new file mode 100644
index 00000000000..1c4e51b2235
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.98.1091.ebuild
@@ -0,0 +1,196 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils user cmake-utils gnome2-utils pam versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+
+# update from scripts in dependencies/common
+GWTVER=2.6.0
+GINVER=1.5
+SELENIUMVER=2.37.0
+CHROMEDRIVER_VER=2.7
+PANDOC_VER=1.12.4.2
+PACKRAT_VER=0.98.1000
+RMARKDOWN_VER=0.98.1000
+SHINYAPPS_VER=0.98.1000
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org
+ https://github.com/rstudio/rstudio/"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-java-${SELENIUMVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-server-standalone-${SELENIUMVER}.jar
+ https://s3.amazonaws.com/rstudio-buildtools/chromedriver-linux
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip
+ http://dev.gentoo.org/~gienah/distfiles/packrat-${PACKRAT_VER}.tar.gz
+ http://dev.gentoo.org/~gienah/distfiles/rmarkdown-${RMARKDOWN_VER}.tar.gz
+ http://dev.gentoo.org/~gienah/distfiles/shinyapps-${SHINYAPPS_VER}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="dedicated server"
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND="
+ app-text/pandoc
+ dev-haskell/pandoc-citeproc
+ >=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50:=
+ >=dev-libs/mathjax-2.3
+ dev-libs/openssl:0
+ sys-apps/util-linux
+ sys-libs/zlib
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ !dedicated? (
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}
+ server? ( virtual/pam )
+ )
+ dedicated? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} \
+ dependencies/common/dictionaries \
+ src/gwt/lib/selenium/${SELENIUMVER} \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER} || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} \
+ "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries \
+ "${DISTDIR}"/core-dictionaries.zip || die
+ unzip -qd src/gwt/lib/selenium/${SELENIUMVER} \
+ "${DISTDIR}"/selenium-java-${SELENIUMVER}.zip || die
+ cp "${DISTDIR}"/selenium-server-standalone-${SELENIUMVER}.jar \
+ src/gwt/lib/selenium/${SELENIUMVER}/ || die
+ cp "${DISTDIR}"/chromedriver-linux \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER}/ || die
+ cd dependencies/common || die
+ unpack packrat-${PACKRAT_VER}.tar.gz
+ unpack rmarkdown-${RMARKDOWN_VER}.tar.gz
+ unpack shinyapps-${RMARKDOWN_VER}.tar.gz
+ cp "${DISTDIR}"/rmarkdown-${RMARKDOWN_VER}.tar.gz \
+ . || die
+ cp "${DISTDIR}"/packrat-${PACKRAT_VER}.tar.gz \
+ . || die
+ cp "${DISTDIR}"/shinyapps-${SHINYAPPS_VER}.tar.gz \
+ . || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${PN}-0.98.490-prefs.patch \
+ "${FILESDIR}"/${PN}-0.98.932-paths.patch \
+ "${FILESDIR}"/${PN}-0.98.1091-pandoc.patch \
+ "${FILESDIR}"/${PN}-0.98.490-linker_flags.patch \
+ "${FILESDIR}"/${PN}-0.98.1091-boost-1.57.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax-23 || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+
+ # On Gentoo the rstudio-server configuration file is /etc/conf.d/rstudio-server.conf
+ sed -e "s@/etc/rstudio/rserver.conf@${EROOT}etc/conf.d/rstudio-server.conf@" \
+ -i src/cpp/server/ServerOptions.cpp \
+ || die
+
+ # Set the rsession.conf file location for Gentoo prefix
+ sed -e "s@/etc/rstudio/rsession.conf@${EROOT}etc/rstudio/rsession.conf@" \
+ -i src/cpp/session/SessionOptions.cpp \
+ || die
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ $(cmake-utils_use !dedicated RSTUDIO_INSTALL_FREEDESKTOP)
+ -DRSTUDIO_TARGET=$(usex dedicated "Server" "$(usex server "Development" "Desktop")")
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+ doconfd "${FILESDIR}"/rstudio-server.conf
+ dodir /etc/rstudio
+ insinto /etc/rstudio
+ doins "${FILESDIR}"/rsession.conf
+ dosym /etc/conf.d/rstudio-server.conf /etc/rstudio/rserver.conf
+ if use dedicated || use server; then
+ dopamd src/cpp/server/extras/pam/rstudio
+ newinitd "${FILESDIR}"/rstudio-server.initd rstudio-server
+ fi
+}
+
+pkg_preinst() {
+ use dedicated || gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+
+ if use dedicated || use server; then
+ enewgroup rstudio-server
+ enewuser rstudio-server -1 -1 -1 rstudio-server
+ fi
+}
+
+pkg_postrm() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+}
diff --git a/sci-mathematics/rstudio/rstudio-0.98.490-r1.ebuild b/sci-mathematics/rstudio/rstudio-0.98.490-r1.ebuild
new file mode 100644
index 00000000000..898d7bf1409
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.98.490-r1.ebuild
@@ -0,0 +1,127 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils cmake-utils gnome2-utils versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+
+GWTVER=2.5.1
+GINVER=1.5
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="amd64 x86 ~amd64-linux ~x86-linux"
+IUSE=""
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND=">=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50:=
+ dev-libs/mathjax
+ dev-libs/openssl:0
+ sys-libs/zlib
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} dependencies/common/dictionaries || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries "${DISTDIR}"/core-dictionaries.zip || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${P}-prefs.patch \
+ "${FILESDIR}"/${P}-paths.patch \
+ "${FILESDIR}"/${P}-linker_flags.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ -DRSTUDIO_INSTALL_FREEDESKTOP=ON
+ -DRSTUDIO_TARGET=Desktop
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+}
+
+pkg_preinst() {
+ gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}
+
+pkg_postrm() {
+ fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update
+}
diff --git a/sci-mathematics/rstudio/rstudio-0.98.490.ebuild b/sci-mathematics/rstudio/rstudio-0.98.490.ebuild
new file mode 100644
index 00000000000..7614e2491d8
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.98.490.ebuild
@@ -0,0 +1,140 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils user cmake-utils gnome2-utils pam versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+
+GWTVER=2.5.1
+GINVER=1.5
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 x86 ~amd64-linux ~x86-linux"
+IUSE="dedicated server"
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND=">=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50:=
+ dev-libs/mathjax
+ dev-libs/openssl:0
+ sys-libs/zlib
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ !dedicated? (
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}
+ server? ( virtual/pam )
+ )
+ dedicated? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} dependencies/common/dictionaries || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries "${DISTDIR}"/core-dictionaries.zip || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${P}-prefs.patch \
+ "${FILESDIR}"/${P}-paths.patch \
+ "${FILESDIR}"/${P}-linker_flags.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ $(cmake-utils_use !dedicated RSTUDIO_INSTALL_FREEDESKTOP)
+ -DRSTUDIO_TARGET=$(usex dedicated "Server" "$(usex server "Development" "Desktop")")
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+ if use dedicated || use server; then
+ dopamd src/cpp/server/extras/pam/rstudio
+ newinitd "${FILESDIR}"/rstudio-server.initd rstudio-server
+ fi
+}
+
+pkg_preinst() {
+ use dedicated || gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+
+ if use dedicated || use server; then
+ enewgroup rstudio-server
+ enewuser rstudio-server -1 -1 -1 rstudio-server
+ fi
+}
+
+pkg_postrm() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+}
diff --git a/sci-mathematics/rstudio/rstudio-0.98.932.ebuild b/sci-mathematics/rstudio/rstudio-0.98.932.ebuild
new file mode 100644
index 00000000000..0321cea7de7
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.98.932.ebuild
@@ -0,0 +1,172 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils user cmake-utils gnome2-utils pam versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+
+GWTVER=2.6.0
+GINVER=1.5
+SELENIUMVER=2.37.0
+CHROMEDRIVER_VER=2.7
+PANDOC_VER=1.12.3
+PACKRAT_VER=0.3.0
+RMARKDOWN_VER=0.2.49
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-java-${SELENIUMVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-server-standalone-${SELENIUMVER}.jar
+ https://s3.amazonaws.com/rstudio-buildtools/chromedriver-linux
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip
+ http://dev.gentoo.org/~hasufell/distfiles/packrat_${PACKRAT_VER}.tar.gz
+ http://dev.gentoo.org/~hasufell/distfiles/rmarkdown_${RMARKDOWN_VER}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="dedicated server"
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND="
+ app-text/pandoc
+ dev-haskell/pandoc-citeproc
+ >=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50:=
+ dev-libs/mathjax
+ dev-libs/openssl:0
+ sys-libs/zlib
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ !dedicated? (
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}
+ server? ( virtual/pam )
+ )
+ dedicated? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} \
+ dependencies/common/dictionaries \
+ src/gwt/lib/selenium/${SELENIUMVER} \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER} || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} \
+ "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries \
+ "${DISTDIR}"/core-dictionaries.zip || die
+ unzip -qd src/gwt/lib/selenium/${SELENIUMVER} \
+ "${DISTDIR}"/selenium-java-${SELENIUMVER}.zip || die
+ cp "${DISTDIR}"/selenium-server-standalone-${SELENIUMVER}.jar \
+ src/gwt/lib/selenium/${SELENIUMVER}/ || die
+ cp "${DISTDIR}"/chromedriver-linux \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER}/ || die
+ cd dependencies/common || die
+ unpack packrat_${PACKRAT_VER}.tar.gz
+ unpack rmarkdown_${RMARKDOWN_VER}.tar.gz
+ cp "${DISTDIR}"/rmarkdown_${RMARKDOWN_VER}.tar.gz \
+ . || die
+ cp "${DISTDIR}"/packrat_${PACKRAT_VER}.tar.gz \
+ . || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${PN}-0.98.490-prefs.patch \
+ "${FILESDIR}"/${P}-paths.patch \
+ "${FILESDIR}"/${P}-pandoc.patch \
+ "${FILESDIR}"/${PN}-0.98.490-linker_flags.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ $(cmake-utils_use !dedicated RSTUDIO_INSTALL_FREEDESKTOP)
+ -DRSTUDIO_TARGET=$(usex dedicated "Server" "$(usex server "Development" "Desktop")")
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+ if use dedicated || use server; then
+ dopamd src/cpp/server/extras/pam/rstudio
+ newinitd "${FILESDIR}"/rstudio-server.initd rstudio-server
+ fi
+}
+
+pkg_preinst() {
+ use dedicated || gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+
+ if use dedicated || use server; then
+ enewgroup rstudio-server
+ enewuser rstudio-server -1 -1 -1 rstudio-server
+ fi
+}
+
+pkg_postrm() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+}
diff --git a/sci-mathematics/rstudio/rstudio-0.98.953.ebuild b/sci-mathematics/rstudio/rstudio-0.98.953.ebuild
new file mode 100644
index 00000000000..60fe809b28f
--- /dev/null
+++ b/sci-mathematics/rstudio/rstudio-0.98.953.ebuild
@@ -0,0 +1,173 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils user cmake-utils gnome2-utils pam versionator fdo-mime java-pkg-2 pax-utils
+
+# TODO
+# * package gin and gwt
+# * use dict from tree, linguas
+# * do src_test (use junit from tree?)
+
+GWTVER=2.6.0
+GINVER=1.5
+SELENIUMVER=2.37.0
+CHROMEDRIVER_VER=2.7
+PANDOC_VER=1.12.3
+PACKRAT_VER=0.3.0
+RMARKDOWN_VER=0.2.49
+
+DESCRIPTION="IDE for the R language"
+HOMEPAGE="http://www.rstudio.org"
+SRC_URI="https://github.com/rstudio/rstudio/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://s3.amazonaws.com/rstudio-buildtools/gin-${GINVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/gwt-${GWTVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-java-${SELENIUMVER}.zip
+ https://s3.amazonaws.com/rstudio-buildtools/selenium-server-standalone-${SELENIUMVER}.jar
+ https://s3.amazonaws.com/rstudio-buildtools/chromedriver-linux
+ https://s3.amazonaws.com/rstudio-dictionaries/core-dictionaries.zip
+ http://dev.gentoo.org/~hasufell/distfiles/packrat_${PACKRAT_VER}.tar.gz
+ http://dev.gentoo.org/~hasufell/distfiles/rmarkdown_${RMARKDOWN_VER}.tar.gz"
+
+LICENSE="AGPL-3"
+SLOT="0"
+KEYWORDS="~amd64 ~x86 ~amd64-linux ~x86-linux"
+IUSE="dedicated server"
+
+QTVER=4.8
+QTSLOT=4
+RDEPEND="
+ app-text/pandoc
+ dev-haskell/pandoc-citeproc
+ >=dev-lang/R-2.11.1
+ >=dev-libs/boost-1.50:=
+ dev-libs/mathjax
+ dev-libs/openssl:0
+ sys-apps/util-linux
+ sys-libs/zlib
+ >=virtual/jre-1.5:=
+ x11-libs/pango
+ !dedicated? (
+ >=dev-qt/qtcore-${QTVER}:${QTSLOT}
+ >=dev-qt/qtdbus-${QTVER}:${QTSLOT}
+ >=dev-qt/qtgui-${QTVER}:${QTSLOT}
+ >=dev-qt/qtwebkit-${QTVER}:${QTSLOT}
+ >=dev-qt/qtxmlpatterns-${QTVER}:${QTSLOT}
+ server? ( virtual/pam )
+ )
+ dedicated? ( virtual/pam )"
+DEPEND="${RDEPEND}
+ app-arch/unzip
+ dev-java/ant-core
+ >=virtual/jdk-1.5
+ virtual/pkgconfig"
+# test? ( dev-java/junit:4 )
+
+src_unpack() {
+ unpack ${P}.tar.gz gwt-${GWTVER}.zip
+ cd "${S}" || die
+ mkdir -p src/gwt/lib/{gin,gwt} \
+ dependencies/common/dictionaries \
+ src/gwt/lib/selenium/${SELENIUMVER} \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER} || die
+ mv ../gwt-${GWTVER} src/gwt/lib/gwt/${GWTVER} || die
+ unzip -qd src/gwt/lib/gin/${GINVER} \
+ "${DISTDIR}"/gin-${GINVER}.zip || die
+ unzip -qd dependencies/common/dictionaries \
+ "${DISTDIR}"/core-dictionaries.zip || die
+ unzip -qd src/gwt/lib/selenium/${SELENIUMVER} \
+ "${DISTDIR}"/selenium-java-${SELENIUMVER}.zip || die
+ cp "${DISTDIR}"/selenium-server-standalone-${SELENIUMVER}.jar \
+ src/gwt/lib/selenium/${SELENIUMVER}/ || die
+ cp "${DISTDIR}"/chromedriver-linux \
+ src/gwt/lib/selenium/chromedriver/${CHROMEDRIVER_VER}/ || die
+ cd dependencies/common || die
+ unpack packrat_${PACKRAT_VER}.tar.gz
+ unpack rmarkdown_${RMARKDOWN_VER}.tar.gz
+ cp "${DISTDIR}"/rmarkdown_${RMARKDOWN_VER}.tar.gz \
+ . || die
+ cp "${DISTDIR}"/packrat_${PACKRAT_VER}.tar.gz \
+ . || die
+}
+
+src_prepare() {
+ java-pkg-2_src_prepare
+
+ find . -name .gitignore -delete || die
+
+ epatch "${FILESDIR}"/${PN}-0.98.490-prefs.patch \
+ "${FILESDIR}"/${PN}-0.98.932-paths.patch \
+ "${FILESDIR}"/${PN}-0.98.932-pandoc.patch \
+ "${FILESDIR}"/${PN}-0.98.490-linker_flags.patch
+
+ # Adding -DDISTRO_SHARE=... to append-flags breaks cmake so using
+ # this sed hack for now. ~RMH
+ sed -i \
+ -e "s|DISTRO_SHARE|\"share/${PN}\"|g" \
+ src/cpp/server/ServerOptions.cpp \
+ src/cpp/session/SessionOptions.cpp || die
+
+ # use mathjax from system
+ ln -sf "${EPREFIX}"/usr/share/mathjax dependencies/common/mathjax || die
+
+ # make sure icons and mime stuff are with prefix
+ sed -i \
+ -e "s:/usr:${EPREFIX}/usr:g" \
+ CMakeGlobals.txt src/cpp/desktop/CMakeLists.txt || die
+
+ # specify that namespace core the is in the global namespace and not
+ # relative to some other namespace (like its ::core not ::boost::core)
+ find . \( -name *.cpp -or -name *.hpp \) -exec sed \
+ -e 's@<core::@< ::core::@g' -e 's@\([^:]\)core::@\1::core::@g' -i {} \;
+}
+
+src_configure() {
+ export RSTUDIO_VERSION_MAJOR=$(get_version_component_range 1)
+ export RSTUDIO_VERSION_MINOR=$(get_version_component_range 2)
+ export RSTUDIO_VERSION_PATCH=$(get_version_component_range 3)
+
+ local mycmakeargs=(
+ -DDISTRO_SHARE=share/${PN}
+ $(cmake-utils_use !dedicated RSTUDIO_INSTALL_FREEDESKTOP)
+ -DRSTUDIO_TARGET=$(usex dedicated "Server" "$(usex server "Development" "Desktop")")
+ )
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile
+}
+
+src_install() {
+ cmake-utils_src_install
+ pax-mark m "${ED}usr/bin/rstudio"
+ if use dedicated || use server; then
+ dopamd src/cpp/server/extras/pam/rstudio
+ newinitd "${FILESDIR}"/rstudio-server.initd rstudio-server
+ fi
+}
+
+pkg_preinst() {
+ use dedicated || gnome2_icon_savelist
+ java-pkg-2_pkg_preinst
+}
+
+pkg_postinst() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+
+ if use dedicated || use server; then
+ enewgroup rstudio-server
+ enewuser rstudio-server -1 -1 -1 rstudio-server
+ fi
+}
+
+pkg_postrm() {
+ use dedicated || { fdo-mime_desktop_database_update
+ fdo-mime_mime_database_update
+ gnome2_icon_cache_update ;}
+}