Pagina 1 di 1

root-tail Slackbuild

Inviato: ven 5 gen 2007, 19:21
da Bart
Conoscete root-tail, è un comodissimo programma che ti permette di visualizzare i log sul desktop in modo tale da tenerli sempre sotto controllo. Nel repository non c'è e stavo cercando uno Slackbuild che facesse al caso nostro. Ho trovato questo qui:

Codice: Seleziona tutto

#!/bin/sh
# Licence: Domaine publique
#
 
## Variables à modifier ##
NAMESRC=${NAMESRC:-root-tail}
VERSION=${VERSION:-1.2}
EXT=${EXT:-tar.gz}
NAMETGZ=${NAMETGZ:-$NAMESRC}
BUILD=${BUILD:-1}
 
TMP=${TMP:-/tmp}
OUT=${OUT:-$TMP/build}
ARCH=${ARCH:-i486}
WGET=${WGET:-http://www.goof.com/pcg/marc/data/$NAMESRC-$VERSION.$EXT}
## Fin des variables à modifier ##
 
set -e
 
if [ ! -r $NAMESRC-$VERSION.$EXT ]; then
   wget "$WGET"
fi
 
 
CWD=`pwd`
PKG=$TMP/build/$NAMETGZ
NAME=`tar ft $NAMESRC-$VERSION.$EXT | head -1 | awk -F/ '{ print $1 }'`
TARGET=i486
 
if [ "$ARCH" = "i386" ]; then
   CPUOPT="-O2 -march=i386 -mtune=i686"
elif [ "$ARCH" = "i486" ]; then
   CPUOPT="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i586" ]; then
   CPUOPT="-O2 -march=i586 -mtune=i686"
elif [ "$ARCH" = "i686" ]; then
   CPUOPT="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "s390" ]; then
   CPUOPT="-O2"
elif [ "$ARCH" = "x86_64" ]; then
   CPUOPT="-O2"
fi
 
if [ $UID -eq 0 ]; then
   echo "Do not run this SlackBuild as ROOT !"
   exit 1
fi
 
if [ ! -d $TMP ]; then
   echo "$TMP doesn't exist or is not a directory !"
   exit 1
fi
 
# Compilation du programme
cd $TMP
echo "Building $NAMESRC-$VERSION.$EXT..."
tar xf $CWD/$NAMESRC-$VERSION.$EXT
cd $NAME
CFLAGS=$CPUOPT \
CXXFLAGS=$CPUOPT \
xmkmf -a
make
make install DESTDIR=$PKG
 
# Installation du slack-desc
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
 
# Installation du doinst.sh
if [ -r $CWD/doinst.sh ]; then
   cat $CWD/doinst.sh > $PKG/install/doinst.sh
fi
 
# Installation de la documentation
mkdir -p $PKG/usr/doc/$NAME
install -m 644 \
Changes \
README \
  $PKG/usr/doc/$NAME
 
# Compression des pages de man
mkdir -p $PKG/usr/X11R6/man/man1/
cp $TMP/$NAME/root-tail.man $PKG/usr/X11R6/man/man1/
find `find $PKG -type d -name man` -type f | xargs gzip -9 2> /dev/null || echo "No man pages to compress"

# "Striping" des binaires et des bibliothèques
find $PKG | xargs file | grep "ELF 32-bit LSB executable" | cut -f 1 -d : | xargs strip --strip-all 2> /dev/null || echo "No ELF 32-bit LSB executable to strip"
 
# Création du paquetage
cd $PKG
mkdir -p $OUT
PACKAGING="
chown root:root . -R
/sbin/makepkg -l y -c n $OUT/$NAMETGZ-$VERSION-$ARCH-$BUILD.tgz
rm -rf $PKG
rm -rf $TMP/$NAME
"
if type -p fakeroot ; then
   echo "$PACKAGING" | fakeroot
else
   su -c "$PACKAGING"
fi
L'ho avviato in /tmp solo che ad un certo punto mi chiede la password, probabilmente perché avviandolo non da root non riesce ad eseguire certi comandi. Unica cosa è che non va avviato da root. Cosa ne pensate? Consigli?

Inviato: ven 5 gen 2007, 19:36
da gohanz
Elimina la riga che fa il controllo se si è root e poi usalo da root stesso!

Codice: Seleziona tutto

  
if [ $UID -eq 0 ]; then 
   echo "Do not run this SlackBuild as ROOT !" 
   exit 1 
fi

Inviato: ven 5 gen 2007, 19:47
da Bart
gohanz ha scritto:Elimina la riga che fa il controllo se si è root e poi usalo da root stesso!

Codice: Seleziona tutto

  
if [ $UID -eq 0 ]; then 
   echo "Do not run this SlackBuild as ROOT !" 
   exit 1 
fi
Ma è corretto lanciare degli script del genere da root? Te gohanz da dove li lanci di solito? Lavori in /tmp?

Inviato: ven 5 gen 2007, 19:56
da gohanz
Allora per sicurezza cambia

TMP=${TMP:-/tmp}

in


TMP=${TMP:-/tmp/tgz}


e lo puoi lanciare tranquillamente da root

Inviato: ven 5 gen 2007, 20:56
da Bart

Codice: Seleziona tutto

Building root-tail-1.2.tar.gz...
imake -DUseInstalled -I/usr/X11R6/lib/X11/config
/usr/X11R6/bin/xmkmf: line 59: imake: command not found

Inviato: ven 5 gen 2007, 21:07
da syaochan

Codice: Seleziona tutto

locate imake
/usr/doc/tcsh-6.14.00/README.imake
/usr/X11R6/bin/imake
...
Forse non ce l'hai nel path? Fa parte del pacchetto di x

Inviato: ven 5 gen 2007, 21:09
da Loris
Bart ma il pacchetto che ti ho mandato per posta non funge ?

Inviato: ven 5 gen 2007, 21:13
da gohanz
Funziona bene, ho provato adesso! ;)

Inviato: ven 5 gen 2007, 22:58
da Bart
Loris ha scritto:Bart ma il pacchetto che ti ho mandato per posta non funge ?
Non l'avevo visto, appena ho un secondo lo provo. Grazie a tutti. ;)

Inviato: dom 7 gen 2007, 13:47
da l1q1d
Scusate la domanda ma se gli slackbuild nn vengono eseguti da root, nn si possono cambiare i permessi di owner....