diff options
-rw-r--r-- | .SRCINFO | 32 | ||||
-rw-r--r-- | PKGBUILD | 69 | ||||
-rw-r--r-- | rstudio-server-git.install | 23 | ||||
-rw-r--r-- | rstudio-server.service | 11 |
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 |