Hi! Please find attached torque-1.1.0-r5.ebuild Torque is a freely downloadable and enhanced version of OpenPBS that can be easily coupled with mpiexec and maui-scheduler. It resides in sys-cluster/torque Dusan
Created attachment 46033 [details] torque-1.1.0-r5.ebuild (New ebuild) Attached ebuild introduces new version of torque and also introduces new options in the ebuild, not handled in the previos version. Now, ebuild properly installs all options, depending on "USE" (particularly xpbs and xpbsmon when USE="X" specified). version 1.1.0-r5 introduces new patches that improfe performance and scalability of this queuing system.
Comment on attachment 46033 [details] torque-1.1.0-r5.ebuild (New ebuild) # Copyright 1999-2004 Gentoo Technologies, Inc. # Distributed under the terms of the GNU General Public License v2 S=${WORKDIR}/`echo ${A} | sed -e 's/\.tar\.gz//g'` DESCRIPTION="Improved cluster resource manager and queuing system based on OpenPBS" HOMEPAGE="http://www.supercluster.org/torque/" SRC_URI="http://supercluster.org/downloads/torque/torque-1.1.0p5.tar.gz" LICENSE="openpbs" SLOT="0" KEYWORDS="x86 amd64" IUSE="X tcltk debug" DEPEND="virtual/libc X? ( virtual/x11 ) tcltk? ( dev-lang/tk )" RDEPEND="net-misc/openssh" src_unpack() { cd ${WORKDIR} unpack ${A} cd ${S} # this thing doesn't use standard "make install", but rather it's own install script # fix it here so the install dirs are set to the ${D} directory cd buildutils mv pbs_mkdirs.in pbs_mkdirs.in-orig sed -e "s|prefix=@prefix@|prefix=\${D}@prefix@| ; \ s|PBS_SERVER_HOME=@PBS_SERVER_HOME@|PBS_SERVER_HOME=\${D}@PBS_SERVER_HOME@| ; \ s|PBS_DEFAULT_FILE=@PBS_DEFAULT_FILE@|PBS_DEFAULT_FILE=\${D}@PBS_DEFAULT_FILE@| ; \ s|PBS_ENVIRON=@PBS_ENVIRON@|PBS_ENVIRON=\${D}@PBS_ENVIRON@|" \ pbs_mkdirs.in-orig > pbs_mkdirs.in } src_compile() { local myconf # set default parameters myconf="--prefix=/usr" myconf="${myconf} --mandir=/usr/share/man" myconf="${myconf} --enable-docs" myconf="${myconf} --enable-server" myconf="${myconf} --enable-mom" myconf="${myconf} --enable-clients" myconf="${myconf} --enable-syslog" myconf="${myconf} --set-server-home=/usr/spool/PBS" myconf="${myconf} --set-environ=/etc/pbs_environment" # check if GUI (xpbs & xpbsmon) will be installed if use X && use tcltk then myconf="${myconf} --enable-gui" else myconf="${myconf} --disable-gui" fi # add additional options depending on USE variable use tcltk && myconf="${myconf} --with-tcl --enable-tcl-qstat" use debug && myconf="${myconf} --enable-debug" # do the configuration ./configure ${myconf} || die "./configure failed" # compile emake || die "emake failed" } src_install() { make prefix=${D}/usr \ mandir=${D}/usr/share/man \ PBS_SERVER_HOME=${D}/usr/spool/PBS \ install || die "make install failed" dodoc INSTALL PBS_License.txt README.torque Release_Notes CHANGELOG exeinto /etc/init.d ; newexe ${FILESDIR}/pbs.rc pbs } pkg_postinst() { # Since we introduced changes in installation, gui version doesn't # work properly, since "make install" puts bad paths in certain files # This affects xpbs & xpbsmon functioning. # only perform this if GUI was enabled during installation if use X && use tcltk then # xpbs - remove wrong paths from related files sed -e "s|${D}||g" /usr/bin/xpbs > /usr/bin/xpbs.new mv /usr/bin/xpbs.new /usr/bin/xpbs cd /usr/lib/xpbs && rm tclIndex && ./buildindex /usr/lib/xpbs # xpbsmon - remove wrong paths from related files sed -e "s|${D}||g" /usr/bin/xpbsmon > /usr/bin/xpbsmon.new mv /usr/bin/xpbsmon.new /usr/bin/xpbsmon cd /usr/lib/xpbsmon && rm tclIndex && ./buildindex /usr/lib/xpbsmon # change permissions chmod 755 /usr/bin/xpbs* fi # print some info on the screen einfo einfo "####################################################################" einfo " 1. configuring torque as server:" einfo " - edit \"/usr/spool/PBS/server_name\" and put name of the" einfo " PBS server (if local host is not the server)" einfo " - edit \"/usr/spool/PBS/server_priv/nodes\" and put names of" einfo " the nodes" einfo einfo " 2. configuring torque as client (node):" einfo " - edit \"/usr/spool/PBS/mom_priv/config\" and set \"\$clienthost\"" einfo " variable" einfo einfo " 3. running torque:" einfo " - use \"/etc/init.d/pbs\" script to start/stop" einfo " (i.e. add it to default runlevel \"rc-update add pbs default\")" einfo einfo "NOTE: for handling of MPI jobs, torque perform best with " einfo " \"sys-cluster/mpich\" and \"sys-cluster/mpiexec\"" einfo " (instead of starting MPI jobs with mpirun, you use mpiexec)" einfo "####################################################################" einfo "check documentation: http://www.clusterresources.com/products/torque" einfo "####################################################################" einfo }
Created attachment 46196 [details] sys-cluster/torque-1.1.0-r5.ebuild (New Ebuild) Updated ebuild that handles installation on amd64 and x86 platforms. portage location: sys-cluster/torque *Dusan
Created attachment 46197 [details] sys-cluster/torque-1.1.0-r5.ebuild (New Ebuild) if installed for the first time, two folders are missing from the installation, so ebuild now checks for the existance of those two folders, and creates them if necessary. ebuild checked on: 1) amd64, x86 2) new installation, re-installation, update from previos version it works in all cases
Created attachment 46200 [details] sys-cluster/torque-1.1.0-r5.ebuild (New Ebuild) When updating from previos version, if service is running, one of the missing directories is not inserted. This has now been fixed, so update is possible even when service is working.
Could you, please, add this ebuild to portage tree (sys-cluster/torque)
Added 1.2.0_p1, which should obsolete this. I also cleaned up the ebuild a bit. Sorry about the delay.
This might be considered a problem, dunno... If you're reinstalling torque (1.2.0_p1) over itself, and say, haven't configured it yet the first time, nearly all of the directories in /usr/spool/PBS (btw, why isn't it in /var/spool like everything else??) get wiped out at the end of the emerge process.. We need a number of '.keep' files to be generated on installation so this doesn't happen.