diff options
author | rhatto <rhatto@18ef50b8-d735-4ccd-97c1-689132df3dd9> | 2008-04-22 19:32:24 +0000 |
---|---|---|
committer | rhatto <rhatto@18ef50b8-d735-4ccd-97c1-689132df3dd9> | 2008-04-22 19:32:24 +0000 |
commit | a867f3c0c1caac0f94d6ea4a764bde256d430c90 (patch) | |
tree | 2838e6495e900c512bb5ce1ab6b9257129eb727f /app/shells/rssh-chroot/rssh-chroot.mkbuild | |
parent | fca455c6743b47ba27079a84aa66e28ef8c51a2d (diff) | |
download | mkbuilds-a867f3c0c1caac0f94d6ea4a764bde256d430c90.tar.gz mkbuilds-a867f3c0c1caac0f94d6ea4a764bde256d430c90.tar.bz2 |
rssh-chroot: updated
git-svn-id: svn+slack://slack.fluxo.info/var/svn/mkbuilds@107 18ef50b8-d735-4ccd-97c1-689132df3dd9
Diffstat (limited to 'app/shells/rssh-chroot/rssh-chroot.mkbuild')
-rw-r--r-- | app/shells/rssh-chroot/rssh-chroot.mkbuild | 138 |
1 files changed, 138 insertions, 0 deletions
diff --git a/app/shells/rssh-chroot/rssh-chroot.mkbuild b/app/shells/rssh-chroot/rssh-chroot.mkbuild new file mode 100644 index 0000000..44709e7 --- /dev/null +++ b/app/shells/rssh-chroot/rssh-chroot.mkbuild @@ -0,0 +1,138 @@ +# +# This mkbuild is free software; you can redistribute it and/or modify it under the +# terms of the GNU General Public License as published by the Free Software +# Foundation; either version 2 of the License, or any later version. +# +# This mkbuild is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR +# A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along with +# this program; if not, write to the Free Software Foundation, Inc., 59 Temple +# Place - Suite 330, Boston, MA 02111-1307, USA +# + +#-------------------- +# Personal variables +#-------------------- +# Author name +[[SLACKBUILD AUTHOR]]="Silvio Rhatto" + +# Initials author name +[[SLACKBUILD AUTHOR INITIALS]]="rha" + +#------------------------ +# Construction Variables +#------------------------ +# Dependency list input +[[SLACK REQUIRED]]="rssh" + +# SlackBuild model +[[SLACKBUILD MODEL]]="generic.mkSlackBuild" + +# SlackBuild PATH in Slack.Sarava tree +[[SLACKBUILD PATH]]="app/shells/rssh-chroot" + +[[REST OF DOINST.SH]]="( echo Please check if $CHROOT_BASE/dev/null was correctly created )" + +# TODO: remove this when mkbuild became able to run without it +[[DOWNLOAD FOLDER URL]]="http://downloads.sourceforge.net/rssh/rssh-2.3.2.tar.gz" +[[PACKAGE NAME]]="rssh-chroot" + +#--------------------- +# SlackBuild Sections +#--------------------- +# Default sections: +# head, set_variables, slkflags, start_structure, untar_source, +# make_package, install_package, build_package +# Warning: don't remove '#>>' and "#<<" tags. +#>> Start SlackBuild Sections: + on: head + on: slackbuildrc + on: set_variables +off: slkflags + on: error_codes + on: start_structure +off: create_build_user_and_group +off: download_source +off: md5sum_download_and_check_0 +off: md5sum_download_and_check_1 +off: gpg_signature_check +off: untar_source +off: patch_source +off: configure + on: make_package +off: install_package +off: strip_binaries +off: compress_manpages +off: compress_info_files +off: install_documentation + on: slackdesc +off: move_config_files + on: postinstall_script + on: build_package + on: clean_builds +#<< End SlackBuild Sections + +#------------------ +# Sections changes +#------------------ +#>slackdesc +rssh-chroot: rssh-chroot: a chroot jail to use with rssh restricted secure shell +rssh-chroot: +rssh-chroot: +rssh-chroot: +rssh-chroot: +rssh-chroot: +rssh-chroot: +rssh-chroot: +rssh-chroot: +rssh-chroot: +rssh-chroot: +#<slackdesc + +#>make_package +# Adjust to where your rssh chroot system will be located +CHROOT_BASE="/var/users" +mkdir -p $PKG/$CHROOT_BASE/{bin,etc,lib,lib/tls,usr/lib,usr/libexec,usr/bin,usr/doc,home,dev} + +if [ "$ARCH" == "x86_64" ]; then + mkdir -p $PKG/$CHROOT_BASE/{lib64/tls,usr/lib64} +fi + +for ldfile in ld.so.cache ld.so.conf ld.so.preload; do + if [ -f "/etc/$ldfile" ]; then + cp /etc/$ldfile $PKG/$CHROOT_BASE/etc + fi +done + +# Inspired by http://www.howtoforge.com/chrooted_ssh_howto_debian_p2 +APPS="/usr/bin/rssh /usr/bin/scp /usr/libexec/sftp-server /usr/libexec/rssh_chroot_helper" +for app in $APPS; do + cp $app $PKG/$CHROOT_BASE/$app + + # Get a list of related libraries + ldd $app > /dev/null + if [ "$?" = 0 ] ; then + libs="`ldd $app | sed -e 's/=>//' -e 's/(.*)//' | awk '{ print $1 "\n" $2 }'`" + for lib in $libs; do + if [ -a "$lib" ]; then + mkdir -p $PKG/$CHROOT_BASE/`dirname $lib` > /dev/null 2>&1 + cp $lib $PKG/$CHROOT_BASE/$lib + fi + done + fi +done + +# Might not work inside vservers +echo "Trying to create /dev/null inside this jail..." +echo "May not work if you're creating this package inside a vserver" +mknod -m 666 $PKG/$CHROOT_BASE/dev/null c 1 3 || exit $ERROR_INSTALL + +mkdir -p $PKG/usr/doc/$PACKAGE-$VERSION +cp $CWD/COPYING* $PKG/usr/doc/$PACKAGE-$VERSION/ + +chmod 755 $PKG/$CHROOT_BASE/{bin,etc,lib,lib/tls,usr/lib,usr/libexec,usr/bin,usr/doc,dev} +chmod 111 $PKG/$CHROOT_BASE/home +#<make_package + |