summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO32
-rw-r--r--PKGBUILD69
-rw-r--r--rstudio-server-git.install23
-rw-r--r--rstudio-server.service11
4 files changed, 135 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..31417c924a6e
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,32 @@
+pkgbase = rstudio-server-git
+ pkgdesc = A new integrated development environment (IDE) for R programming language
+ pkgver = v0.99.636.r9.gfc78d32
+ pkgrel = 1
+ url = http://www.rstudio.org/
+ install = rstudio-server-git.install
+ arch = i686
+ arch = x86_64
+ license = AGPL3
+ makedepends = git
+ makedepends = cmake>=2.8
+ makedepends = boost>=1.5
+ makedepends = java-runtime
+ makedepends = apache-ant
+ makedepends = unzip
+ makedepends = openssl
+ makedepends = bzip2
+ makedepends = pango
+ makedepends = pam
+ makedepends = zlib
+ depends = r>=2.11.1
+ depends = boost-libs>=1.5
+ depends = util-linux
+ depends = gcc-libs
+ conflicts = rstudio-server
+ source = git://github.com/rstudio/rstudio.git
+ source = rstudio-server.service
+ md5sums = SKIP
+ md5sums = eea28f7865720f6c8d5de12f3f631880
+
+pkgname = rstudio-server-git
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..a5466cc9f3c3
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,69 @@
+#
+# Maintainer: Carlos Familia <carlosfamilia@gmail.com>
+#
+# Note: Apache ant and java must be on the path for make to succeed.
+# If either was installed as a dependency during the build, you
+# will need to log out and then log back in for the changes to
+# your path and JAVA_HOME environment variable to take effect.
+#
+pkgname=rstudio-server-git
+_gitname="rstudio"
+pkgver=v0.99.636.r9.gfc78d32
+pkgrel=1
+pkgdesc="A new integrated development environment (IDE) for R programming language"
+arch=('i686' 'x86_64')
+url="http://www.rstudio.org/"
+license=('AGPL3')
+depends=('r>=2.11.1' 'boost-libs>=1.5' 'util-linux' 'gcc-libs')
+makedepends=('git' 'cmake>=2.8' 'boost>=1.5' 'java-runtime' 'apache-ant' 'unzip' 'openssl' 'bzip2' 'pango' 'pam' 'zlib')
+install="${pkgname}.install"
+conflicts=('rstudio-server')
+source=('git://github.com/rstudio/rstudio.git'
+ 'rstudio-server.service')
+md5sums=('SKIP'
+ 'eea28f7865720f6c8d5de12f3f631880')
+
+
+pkgver() {
+ cd "$srcdir/$_gitname"
+ git describe --long --tags | sed -r 's/([^-]*-g)/r\1/;s/-/./g'
+}
+
+build() {
+ cd "${srcdir}/$_gitname/dependencies/common"
+ msg "Downloading and installing dependencies"
+ ./install-gwt
+ ./install-dictionaries
+ ./install-mathjax
+ ./install-pandoc
+ ./install-libclang
+ ./install-packages
+
+ # Small hack
+ #sed -i 's/init.d/rc.d/' ${srcdir}/rstudio/src/cpp/#server/extras/admin/rstudio-server.in
+ # unset user Rprofile.r variable for building
+ if [ -n $R_PROFILE_USER ]; then
+ unset R_PROFILE_USER
+ fi
+ # Configure with cmake in a new buld directory as recommended in the rstudio INSTALL file
+ mkdir "${srcdir}/$_gitname/build"
+ cd "${srcdir}/$_gitname/build"
+ # Configure cmake
+ cmake -DRSTUDIO_TARGET=Server -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr/lib/rstudio-server -DCMAKE_DL_LIBRARIES=/usr/lib64/libdl.so -DCMAKE_LIBR_DOC_DIR=/usr/share/doc/R -DCMAKE_LIBR_EXECUTABLE=/usr/bin/R -DCMAKE_LIBR_HOME=/usr/lib64/R -DCMAKE_LIBR_INCLUDE_DIRS=/usr/include/R -DCMAKE_LIBR_CORE_LIBRARY=usr/lib64/R/lib/libR.so ..
+}
+
+
+package() {
+ msg "Starting make and install..."
+ cd "${srcdir}/$_gitname/build"
+ make DESTDIR="$pkgdir" install
+ msg "Install adittional files..."
+ install -d "${pkgdir}/etc/pam.d"
+ install -Dm 644 "${pkgdir}/usr/lib/rstudio-server/extras/pam/rstudio" "${pkgdir}/etc/pam.d/rstudio"
+ install -d "${pkgdir}/srv"
+ mv "${pkgdir}/usr/lib/rstudio-server/www" "${pkgdir}/srv/rstudio"
+ rm -rf "${pkgdir}/usr/lib/rstudio-server/extras"
+ install -d "${pkgdir}/etc/systemd/system"
+ install -Dm 644 "${srcdir}/rstudio-server.service" "${pkgdir}/etc/systemd/system/rstudio-server.service"
+ install -d "${pkgdir}/etc/rstudio"
+}
diff --git a/rstudio-server-git.install b/rstudio-server-git.install
new file mode 100644
index 000000000000..569dbf319fb8
--- /dev/null
+++ b/rstudio-server-git.install
@@ -0,0 +1,23 @@
+post_install() {
+ getent group "rstudio" &>/dev/null || groupadd -r rstudio 1>/dev/null
+ getent passwd "rstudio" &>/dev/null || useradd -r -g rstudio -d "/srv/rstudio" -s "/bin/sh" rstudio 1>/dev/null
+ chown rstudio:rstudio /srv/rstudio
+
+ ln -s /usr/lib/rstudio-server/bin/rserver /usr/bin/rserver
+ ln -s /usr/lib/rstudio-server/bin/rstudio-server /usr/sbin/rstudio-server
+
+ mkdir -p /var/run/rstudio-server
+ mkdir -p /var/lock/rstudio-server
+ mkdir -p /var/log/rstudio-server
+ mkdir -p /var/lib/rstudio-server
+}
+
+post_remove() {
+ if getent passwd "rstudio" >/dev/null; then
+ userdel rstudio >/dev/null
+ fi
+ if getent group "rstudio" >/dev/null; then
+ groupdel rstudio >/dev/null
+ fi
+ rm -f /usr/sbin/rstudio-server
+}
diff --git a/rstudio-server.service b/rstudio-server.service
new file mode 100644
index 000000000000..0e651c5e7af5
--- /dev/null
+++ b/rstudio-server.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=RStudio Server daemon
+After=syslog.target network.target
+
+[Service]
+ExecStart=/usr/bin/rserver --server-daemonize=0
+ExecStop=/bin/kill -HUP $MAINPID
+KillMode=process
+
+[Install]
+WantedBy=multi-user.target