Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
executable file 71 lines (53 sloc) 1.95 KB
#! /bin/bash
# use the debian build from rstudio site (Ubuntu 18+/Debian 10+)
PKG=rstudio
VERSION=2022.02.3-492
VERSIONP=${VERSION/-/+} # just brilliant !
BUILD=0
PREFIX=/pkg/$PKG-$VERSION-$BUILD
if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi
set -xe
umask 022
BUILD_TMPDIR=/dev/shm/$PKG-$VERSION-$BUILD.$USER.build.tmp
test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR )
mkdir -p $BUILD_TMPDIR/home
export TMPDIR=$BUILD_TMPDIR
export HOME=$BUILD_TMPDIR/home
# mind the PATH ...
# ----------------------------
# it should work with:
# prun R4 rstudio
# xfce launcher
# own R on the path
mkdir -p $PREFIX
cat >$PREFIX/profile <<-EOF
PATH=$PREFIX/bin:\$PATH:/usr/local/package/bin
if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:}\$LD_LIBRARY_PATH ; fi
EOF
. $PREFIX/profile
BUILD=$PREFIX/build
mkdir -p $BUILD
cd $BUILD
# orig: https://download1.rstudio.org/desktop/bionic/amd64/rstudio-2022.02.3-492-amd64-debian.tar.gz
BEEHIVE=https://beehive.molgen.mpg.de/f68c6713864cc12967a7414ab6040e1f/rstudio-2022.02.3-492-amd64-debian.tar.gz
test -e rstudio-$VERSION-amd64-debian.tar.gz || wget -nv $BEEHIVE
test -d rstudio-$VERSIONP || tar -xf rstudio-$VERSION-amd64-debian.tar.gz
mv -v rstudio-$VERSIONP/* ..
cat >$PREFIX/bin/rstudio-nv <<-'EOF'
#! /bin/bash
# This allows using rstudio on a compute server, when the users machine
# has the nvidia driver loaded and rstudio gets confused.
# Drawback, this only works if not part of a ssh hopp along chain.
if [ -n "$SSH_CLIENT" ]; then
REMOTEIP=${SSH_CLIENT%% *}
MXGFX=$(ssh $REMOTEIP readlink -f /node/usr_share_mxgfx | grep nvidia)
if [ -n "$MXGFX" ]; then
echo "# offering $MXGFX to desktop client..."
LD_LIBRARY_PATH=$MXGFX/lib${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
fi
fi
exec rstudio "${@+$@}"
EOF
chmod +x $PREFIX/bin/rstudio-nv
exit