network/museek+: Added to 12.2 repository

This commit is contained in:
Iskar Enev 2010-05-12 23:32:32 +02:00 committed by Robby Workman
parent 8f9ea6c1ca
commit 27b6af93fd
6 changed files with 258 additions and 0 deletions

27
network/museek+/README Normal file
View file

@ -0,0 +1,27 @@
Museek+ is a file-sharing application for the Soulseek peer-to-peer network,
written in C++. It's an enhanced version of Hyriand's original Museek
(see http://museek.thegraveyard.org). It supports chat, transferring files,
searching, user-management, shares browsing and more. The new features are:
room searching, interests, buddy-only shares, banlists, icon themes, and
font/color selecting.
Museek+ consists of museekd (daemon), muscan (shares scanning tool), muscand
(automated shares scanning tool), musetup (command-line configuration script),
musetup-gtk (PyGTK configuration app), museeq (QT GUI client), mucous (curses
python client), murmur (PyGTK client) and museekcontrol (command-line python
client).
After installing museek+ follow these steps:
1) Configure your settings with musetup: server, username, password,
interface password, download directory, shared directories.
2) Run museekd.
3) Run museeq, mucous, or museekcontrol.
4) Login into museekd via the interface socket or host:port and the
interface password.
This requires qt4, scons, libsig++, libxml++, libevent, and swig.
QSA is an optional dependency, but it is not available at SlackBuilds.org.
An example init script (rc.museekd) for the museekd daemon is provided.
Feel free to modify it for your needs. Use it at your own risk.

26
network/museek+/doinst.sh Normal file
View file

@ -0,0 +1,26 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
# If there's no config file by that name, mv it over:
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
# toss the redundant copy
rm $NEW
fi
# Otherwise, we leave the .new copy for the admin to consider...
}
# Keep same perms on rc.museekd.new:
#if [ -e etc/rc.d/rc.museekd ]; then
# cp -a etc/rc.d/rc.museekd etc/rc.d/rc.museekd.new.incoming
# cat etc/rc.d/rc.museekd.new > etc/rc.d/rc.museekd.new.incoming
# mv etc/rc.d/rc.museekd.new.incoming etc/rc.d/rc.museekd.new
#fi
#
#config etc/rc.d/rc.museekd.new
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database usr/share/applications >/dev/null 2>&1
fi

View file

@ -0,0 +1,73 @@
#!/bin/sh
# Slackware build script for museek+
# Written by Iskar Enev <iskar.enev[@]gmail.com>
PRGNAM=museek+
VERSION=0.2
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
chmod -R u+w,go+r-w,a-s .
cmake \
-DPREFIX=/usr \
-DMANDIR=man \
-DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
-DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
-DSWIG_DIR:PATH=$(swig -swiglib) \
-DEVERYTHING=1 \
-DTRAYICON=1 \
-DBINRELOC=0
make VERBOSE=1
make install VERBOSE=1 DESTDIR=$PKG
( cd $PKG
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | \
xargs strip --strip-unneeded 2> /dev/null
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | \
xargs strip --strip-unneeded 2> /dev/null
)
( cd $PKG/usr/man
find . -type f -exec gzip -9 {} \;
for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
)
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a \
COPYING CREDITS FILES LICENSE README TODO INSTALL \
$PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/rc.museekd > $PKG/usr/doc/$PRGNAM-$VERSION/rc.museekd.sample
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz

View file

@ -0,0 +1,8 @@
PRGNAM="museek+"
VERSION="0.2"
HOMEPAGE="http://museek-plus.sourceforge.net/"
DOWNLOAD="http://downloads.sourceforge.net/museek-plus/museek+-0.2.tar.bz2"
MD5SUM="66d3eab341e1cd6642f83d329a18c3b5"
MAINTAINER="Iskar Enev"
EMAIL="iskar.enev@gmail.com"
APPROVED="rworkman"

105
network/museek+/rc.museekd Normal file
View file

@ -0,0 +1,105 @@
#!/bin/sh
#
# This shell script takes care of starting and stopping museekd.
MUSEEKD=/usr/bin/museekd
MUSETUP=/usr/bin/musetup
MUSCAN=/usr/bin/muscan
MUSOCKET=/tmp/museekd.root
PIDFILE=/var/run/museekd.pid
DBDIR=/var/museek
CONFIG=$DBDIR/museekd.xml
CHOWNSOCKET=YES
case "$1" in
start)
if [ ! -d $DBDIR ]; then
mkdir $DBDIR
fi
if [ ! -f $CONFIG ]; then
echo -n "Starting Museek Setup"
echo
if [ ! -d $DBDIR ]; then
mkdir $DBDIR
fi
$MUSETUP $CONFIG
echo
fi
if [ -f $PIDFILE ]; then
echo -n "Museek Daemon already running (or zombie pid file in /var/run/)"
echo
exit
fi
echo -n "Starting Museek Daemon"
$MUSEEKD -c $CONFIG &>/dev/null &
PID="$!"
sleep 2
if kill -0 $PID # pid check
then
if [ $CHOWNSOCKET = YES ];
then
if [ -e $MUSOCKET ]; then chmod 666 $MUSOCKET
# access the museekd socket from other users, may be a security risk on multiuser systems
fi
fi
echo $PID > $PIDFILE
echo
else
echo -n "Museekd isn't starting up properly. Check your Config file, \nor run 'museekd -c /var/museek/museekd.xml' for verbose messages."
echo
fi
;;
stop)
echo -n "Stopping Museek Daemon"
echo
if [ -f $PIDFILE ]; then
kill -15 $(cat $PIDFILE) &>/dev/null
rm $PIDFILE
else
echo -n "Museek Daemon not running"
echo
exit
fi
;;
reconnect)
if [ -f $PIDFILE ]; then
echo -n "Attempting to reconnect Museekd to the Server"
kill -ALRM $(cat $PIDFILE) &>/dev/null
echo
fi
;;
restart)
$0 stop
sleep 3
$0 start
;;
rescan)
echo -n "Starting Muscan, rescanning shared files"
echo
$MUSCAN -c $CONFIG -r -v
echo
$0 reload
;;
setup)
echo -n "Starting Museek Setup"
echo
if [ ! -d $DBDIR ]; then
mkdir $DBDIR
fi
$MUSETUP $CONFIG
echo
;;
reload)
if [ -f $PIDFILE ]; then
echo -n "Reloading Museek Daemon to update Shares"
kill -HUP $(cat $PIDFILE)
echo
else
echo -n "Museek Daemon not running, can't reload shares"
echo
fi
;;
*)
echo "usage: $0 {start|stop|restart|rescan|reconnect|setup|reload}"
echo -n
esac

View file

@ -0,0 +1,19 @@
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
# the right side marks the last column you can put a character in. You must make
# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler---------------------------------------------------------|
museek+: museek+ (file-sharing application)
museek+:
museek+: Museek+ is a file-sharing application for the Soulseek p2p network,
museek+: written in C++. It's an enhanced version of Hyriand's original Museek
museek+: (http://museek.thegraveyard.org). It supports chat, transferring files,
museek+: searching, user-management, sharing, banlists, interests and more.
museek+: Museek+ consists of museekd (daemon), muscan (shares scanning tool),
museek+: muscand (automated shares scanning tool), musetup (command-line
museek+: configuration script), musetup-gtk (PyGTK configuration app), museeq
museek+: (QT GUI client), mucous (curses python client), museekcontrol
museek+: (command-line python client) and murmur (PyGTK client).