You are not logged in.
Hello, since recently I've started to use this program at school and would like to use it at home to, but there is no package for it. if someone could make a PKGBUILD for it, that would be much appreciated.
The Staden Package is a set of interactive tools for DNA sequence assembly and editing, as well as DNA and protein sequence analysis, the best known of which is "gap4"
The files can be found here: http://sourceforge.net/projects/staden/
and for cvs: http://staden.cvs.sourceforge.net/staden/
Last edited by Don-DiZzLe (2007-09-21 04:53:56)
Offline
Still no volunteers...
Offline
I've taken a look at the source , but the instructions for building it are very unclear.
Another porblem is that it only works with specific (older) versions of many libraries.
The linux binary they provide has no instructions on how to install it, maybe you could ask the admins at your school how they do it ?
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
pkgname=staden
pkgver=1.6.0
_pkgver=1-6-0
pkgrel=1
pkgdesc="A fully developed set of DNA sequence assembly (Gap4), editing and analysis tools (Spin)"
arch=('i686' 'x86_64')
url="http://staden.sourceforge.net/"
license=('custom')
depends=('tcl' 'tk')
makedepends=('gcc-fortran')
source=(http://downloads.sourceforge.net/sourceforge/staden/staden-src-$_pkgver.tar.gz)
build() {
export MACHINE=linux
export MAKEFLAGS="-j1"
cd "$startdir/src/staden-src-$_pkgver/sc"
export STADENROOT=`pwd`
. ../staden.profile
for i in `grep -R 8.4.6 * | awk '{print $1}' | cut -d':' -f1`
do sed -i -e 's|8.4.6|8.4.15|g' $i;
done
find . -name depend* -type f -exec sed -i -e 's|8.4.0|8.4.15|g' '{}' \;
sed -i -e 's|g77|gfortran|' -e 's|g2c|gfortran|' mk/linux.mk
echo 'INCLUDES_E += -I$(SRCROOT)/io_lib/sff' >> mk/linux.mk
sed -i -e 's|dependencies|../dependencies|' io_lib/progs/Makefile
sed -i -e 's|heanet.dl|downloads|g' Makefile.thirdparty
make tcl tk itcl itk -f Makefile.thirdparty || return 1
make || return 1
install -D -m 644 ../LICENCE.txt $startdir/pkg/usr/share/licenses/$pkgname/LICENCE.txt
}
# vim:set ts=2 sw=2 et:This is as far as I got. I suggest building it manually instead of using pkgbuild. seems to work better that way. I'm tired now.
Offline
Don-DiZzLe forwarded an email from the school admin to me (the mail is in dutch).
Buidling from source didn't work for them :
It appears the source has a symlink to a development folder that's not present in the tarball.
They were not succesfull in having Staden use the already installed tcl and tk libraries.
In the end they used the precompiled binaries, with the included libraries.
I'll check how it builds with tardo's pkgbuild this week.
Last edited by Lone_Wolf (2007-09-25 09:42:19)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
My pkgbuild will build the sources correctly, however I can't seem to properly locate the binaries and copy them over to $startdir/pkg. I did it once before, then it disappeared on me.
As for the devel libraries, Makefile.thirdparty contains those.
make tcl tk itcl itk -f Makefile.thirdparty || return 1This builds the devel libraries that the symlinks require. I would have modified the makefile to use already existing devel libraries but it seems that our tcl/tk pkgs don't provide the generic headers required for compiling.
Offline
So what do I need to run this manually, if I run ./spin or ./gap4 this is what I get;
stash: error while loading shared libraries: libcurl.so.3: cannot open shared object file: No such file or directorycurl is installed.
Offline
I got the same error and couldn't solve it.
I noticed that Trado had used 1-6-0 for the package and used his PKGBUILD for a start on a 1-7-0 version.
After encountering several problems, and trying the binary package without success i decided to do things manually and finally got gap4 running .
NOTE : all this is done as USER and in console / xterm .
1. download staden-src-1-7-0.tar.gz
2. extract it to your home folder, this will create the folder staden-src-1-7-0
3. rename the folder to staden
4. create a script called stadenbuild in the folder staden with these commands in it :
export MACHINE=linux
export MAKEFLAGS="-j1"
export STADENROOT=`pwd`
. staden.profile
cd src
sed -i -e 's|g77|gfortran|' -e 's|g2c|gfortran|' mk/linux.mk
echo 'INCLUDES_E += -I$(SRCROOT)/io_lib/sff' >> mk/linux.mk
sed -i -e 's|dependencies|../dependencies|' io_lib/progs/Makefile
sed -i -e 's|heanet.dl|downloads|g' Makefile.thirdparty
make -f Makefile.thirdparty
# compiling fails at iwidgets , and the error is in a makefile that is only present AFTER 'make -f Makefile.thirdparty'
# the next 2 lines are a DIRTY (but working) solution
sed -i -e 's|rm -f $(LIB_INSTALL_DIR)/iwidgets|rm -rf $(LIB_INSTALL_DIR)/iwidgets|g' iwidgets4.0.1/Makefile
make iwidgets -f Makefile.thirdparty
make || return 1
cd ..
./mklinks5. make the script executable
6. CD to the staden folder
7. execute stadenbuild (this will take some time)
8. execute export STADENROOT=`pwd`
9. execute . staden.profile
10. test gap4 and other staden commands , they should run now.
NOTE : steps 8 to 10 MUST be done in the SAME console/xterm.
Last edited by Lone_Wolf (2007-09-30 23:08:19)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
Well, i've made more progress and now have a partial pkgbuild
After running makepkg all necessary files including docs are in $startdir/src/staden-src-1-7-0/distrib/unix-rel-1-7-0 .
open a konsole/xterm , cd to that folder
execute export STADENROOT=`pwd` and . staden.profile
gap4 and spin start, let us know if it works and we can clean/finalize the pkgbuild
pkgname=staden
pkgver=1.7.0
_pkgver=1-7-0
pkgrel=1
pkgdesc="A fully developed set of DNA sequence assembly (Gap4), editing and analysis tools (Spin)"
arch=('i686' 'x86_64')
url="http://staden.sourceforge.net/"
license=('custom')
depends=('tcl' 'tk')
makedepends=('gcc-fortran' 'emacs')
source=(http://downloads.sourceforge.net/sourceforge/staden/staden-src-$_pkgver.tar.gz
http://downloads.sourceforge.net/sourceforge/libpng/zlib-1.2.2.tar.gz
http://downloads.sourceforge.net/sourceforge/libpng/libpng-1.2.7.tar.gz
http://downloads.sourceforge.net/sourceforge/tcl/tcl8.4.6-src.tar.gz
http://downloads.sourceforge.net/sourceforge/tcl/tk8.4.6-src.tar.gz
http://downloads.sourceforge.net/sourceforge/incrtcl/itcl3.3.tar.gz
http://downloads.sourceforge.net/sourceforge/incrtcl/itk3.3.tar.gz
http://downloads.sourceforge.net/sourceforge/incrtcl/iwidgets4.0.1.tar.gz)
noextract=(zlib-1.2.2.tar.gz
libpng-1.2.7.tar.gz
tcl8.4.6-src.tar.gz
tk8.4.6-src.tar.gz
itcl3.3.tar.gz
itk3.3.tar.gz
iwidgets4.0.1.tar.gz)
md5sums=('d5d3aa6910ada9f6b745f09d70206db3'
'68bd51aaa6558c3bc3fd4890e53413de'
'898871b38e92bb233cceee479a4c4b58'
'9009a92dc648775fb8a9b0789b995756'
'24b7774d54c1c568cabe16f3498ddccd'
'd958b3d1c52fa5336b5aacc1251b5ce3'
'a97c17f3cfa5e377f43073c653c501b5'
'0e9c140e81ea6015b56130127c7deb03')
# Although the Makefile.thirdparty has it's own download command,
# i felt it was better to put them in source array.
# there is one patch file needed for iwidgets that is NOT in source array,
# because it is overwritten by 'make iwidgets -f Makefile.thirdparty'
build() {
export MACHINE=linux
export MAKEFLAGS="-j1"
cd "$startdir/src/staden-src-$_pkgver/"
export STADENROOT=`pwd`
. staden.profile
cd src
# staden expects the thirdparty sourcefiles to be in staden-src-$_pkgver/src
ln -s $startdir/src/zlib-1.2.2.tar.gz
ln -s $startdir/src/libpng-1.2.7.tar.gz
ln -s $startdir/src/tcl8.4.6-src.tar.gz
ln -s $startdir/src/tk8.4.6-src.tar.gz
ln -s $startdir/src/itcl3.3.tar.gz
ln -s $startdir/src/itk3.3.tar.gz
ln -s $startdir/src/iwidgets4.0.1.tar.gz
#
sed -i -e 's|g77|gfortran|' -e 's|g2c|gfortran|' mk/linux.mk
echo 'INCLUDES_E += -I$(SRCROOT)/io_lib/sff' >> mk/linux.mk
sed -i -e 's|dependencies|../dependencies|' io_lib/progs/Makefile
sed -i -e 's|heanet.dl|downloads|g' Makefile.thirdparty
make zlib png tcl tk itcl itk -f Makefile.thirdparty || return 1
# An error in the iwidgets makefile means Makefile.thirdparty will abort
# this is a DIRTY solution
make iwidgets -f Makefile.thirdparty
sed -i -e 's|rm -f $(LIB_INSTALL_DIR)/iwidgets|rm -rf $(LIB_INSTALL_DIR)/iwidgets|g' Makefile
make iwidgets -f Makefile.thirdparty
# end of dirty solution
make || return 1
cd ..
make all
make distunix || return 1
# install -D -m 644 ../LICENCE.txt $startdir/pkg/usr/share/licenses/$pkgname/LICENCE.txt
echo 'all files necessary should be present in $startdir/src/staden-src-1-7-0/distrib/unix-rel-1-7-0'
echo 'aborting to avoid package creation for now'
return 1
}
# vim:set ts=2 sw=2 et:Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
Ok, after I did makepkg I went to $startdir/src/staden-src-1-7-0/distrib/unix-rel-1-7-0 and executed:
export STADENROOT=`pwd` and . staden.profile
After that I started ./gap4, ./pregap4, ./spin and ./trev, the primary tools I use,
and they worked perfectly!
So keep up the good work!
Offline
Any progress on this?
Offline
I started a new job last monday with long travel times and have little spare time atm.
I will finish the pkgbuild so it can be used with pacman, but there are some issues that may be hard to tackle :
- replacing the dirty hack now used for compiling iwidgets
- adding the iwidgets patch to the source array
(these 2 will probably require patching the makefile.thirdparty)
- to work correctly Staden adds the STADENROOT at the front of the search the search path and this can pose problems for other apps that need the current version of the staden thirdparty dependencies , NOT the static version used by Staden.
I'll probably install Staden in /opt and have to figure out a way to allow Staden commands to work WITHOUT compromising those other apps.
@ Don-Dizzle : I think your school uses a stadenstart script, could you post the contents of it ?
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
I've just sent an email to the school's IT-guy, waiting for reply...
Offline
Ok I got a reply back, so let me summarize it a bit what it said:
stadenstart and stadenstop are aliases:
alias stadenstart
alias stadenstart='. /share/etc/staden-start'
alias stadenstop
alias stadenstop='. /share/etc/staden-stop'stadenstart:
# emacs: -*- shell-script -*- mode
# Note this file is sourced into the user session
# bewaar originelen
SAVED_TCL_LIBRARY=$TCL_LIBRARY
SAVED_TK_LIBRARY=$TK_LIBRARY
SAVED_PATH=$PATH
test -n "$MANPATH" && export SAVED_MANPATH=$MANPATH
test -n "$LD_LIBRARY_PATH" && export SAVED_LD_LIBRARY_PATH="$LD_LIBRARY_PATH"
export STADENROOT=/opt/staden
# staden: alleen voor bin* pc's met gemounte stadenroot
if hostname | grep -q ^bin && test -f ${STADENROOT}/staden.profile
then
. ${STADENROOT}/staden.profile
fi
echo "staden omgeving ingeschakeld;"
echo "de staden omgeving geldt alleen voor deze terminal sessie;"
echo "gebruik stadenstop of beeeindig sessie om staden omgeving te stoppen".stadenstop:
# emacs: -*- shell-script -*- mode
# Note this file is sourced into the user session
export STADENROOT=
export STADENROOT_1_7=
export MACHINE=
export STADLIB=
export STADBIN=
export STADTABL=
# put back original variables, if non-empty
test -n "$SAVED_TCL_LIBRARY" && export TCL_LIBARY=$SAVED_TCL_LIBRARY && export SAVED_TCL_LIBRARY=
test -n "$SAVED_TK_LIBRARY" && export TK_LIBARY=$SAVED_TK_LIBRARY && export SAVED_TK_LIBRARY=
test -n "$SAVED_PATH" && export PATH=$SAVED_PATH && export SAVED_PATH=
test -n "$SAVED_MANPATH" && export MANPATH="$SAVED_MANPATH" && export SAVED_MANPATH=
if test -n "$SAVED_LD_LIBRARY_PATH"
then
export LD_LIBRARY_PATH="$SAVED_LD_LIBRARY_PATH"
export SAVED_LD_LIBRARY_PATH=
else
export LD_LIBRARY_PATH=
fi
echo "staden omgeving uitgeschakeld."Hope this helps.
Offline
yes , those scripts will help a lot solving the third issue.
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
I think this thread is exemplary for the right spirit of a software community! Two people work together to help a third one to make a piece of software they do not need temselves!
Good luck, guys, and thanks for your efforts!
Offline
How is it coming along?
Offline
I've spent several hours trying to clean the iwidgets part, but failed.
I've adapted the pkgbuild to create a package, now testing start/stop commands
Edited :
Test succesfull, while it still is a dirty package i feel it' s now far enough to put it in aur :
(also it needs 3 files besides PKGBUILD now)
Last edited by Lone_Wolf (2007-10-28 20:31:52)
Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.
clean chroot building not flexible enough ?
Try clean chroot manager by graysky
Offline
pkgbuild file has not been updated for a long time. the new version of staden and gap5 are out.
Offline
This thread is over two years old, you shouldn't post in things like this: http://wiki.archlinux.org/index.php/For … Bumping.27
You should flag it out of date and post to the relavent mailing list if nothing happens.
Last edited by jac (2010-01-06 10:23:46)
Offline