Repository 32bit  Forum
Repository 64bit  Wiki

rifinitura SlackBuild.

Postate qui se avete consigli per migliorare i pacchetti disponibili in questo sito o se avete problemi con installazione, funzionamento o altro.

Moderatore: Staff

Regole del forum
1) Citare in modo preciso il nome del pacchetto.
2) Specificare se discussione/suggerimento o richiesta d'aiuto.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

rifinitura SlackBuild.

Messaggioda Cenni » mer giu 29, 2011 23:07

Ciao a tutti,
Uso Xfce, ma non mi piace Mixer, che trovo poco responsivo, ho quindi preparato il pacchetto di RetroVol, funziona alla perfezione, ma mi serve aiuto per la rifinitura dello Slackbuild.
primo problema che non so cosa comporti: se faccio partire il programma con il comando:
Codice: Seleziona tutto
retrovol -hide

funziona ma compare la scritta:
Codice: Seleziona tutto
Error: could not create /var/run/retrovol.pid

credo sia un problema di permessi o di gruppi infatti non compare se lancio da root.
mi piacerebbe risolvere
secondo problema per automatizzare l'avvio, la prima volta ho dovuto inserire manualmente da MENU>IMPOSTAZIONI>SESSIONE E AVVIO, nel TAB avvio automatico aggiungere e poi inserire il comando:
Codice: Seleziona tutto
retrovol -hide

c'è un modo per inserire questo passaggio nello slackbuild o nel doinst.sh?

grazie..

lo SlackBuild:
Codice: Seleziona tutto
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

set -e


#### Remove all un-needed comments please!
#### See http://www.slacky.eu/wikislack/index.php?title=Linee_guida_per_pacchettizzatori for details

# Basic information.
PKGNAME=retrovol
VERSION=${VERSION:-0.10}
BUILD=${BUILD:-1}
TAG=${TAG:-cen}
ARCH=${ARCH:-i486}
SOURCE="http://www.browserloadofcoolness.com/software/puppy/PETget/${PKGNAME}-${VERSION}.tar.gz"
TAR=      # empty = auto
DIR=      # empty = auto

# If EULA
if [ -e EULA.TXT ];then
  more EULA.TXT
  echo "Do you accept terms? (yes/[no])"
  read ACCEPT
  if [ "$ACCEPT" != "yes" ];then
    echo; echo "SlackBuild Aborted!!"
    exit 1
  fi
fi

# Does not touch following if not needed
CWD=$(pwd)
TMP=${TMP:-/tmp/buildpkgs/$PKGNAME}
PKG=$TMP/package-$PKGNAME
OUTPUT=${OUTPUT:-$CWD}
TAR=${TAR:-$(basename $SOURCE)}
DIR=${DIR:-$(echo "$TAR"|sed -r 's/(\.tar|)(.gz|.bz2|)$//')}

if [ ! -e $CWD/$TAR ];then
  wget $SOURCE
fi

CHOST="i486"
if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i586" ]; then
  SLKCFLAGS="-O2 -march=i586 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
  SLKCFLAGS="-O2 -march=i686 -mtune=i686"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O2 -fPIC"
  LIBDIRSUFFIX="64"
  CHOST="x86_64"
fi

### Preparing Source
rm -rf $TMP
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
tar xvf $CWD/$TAR
cd $DIR

# patch -p1 < $CWD/some_patch.diff
# zcat $CWD/compressed_patch.diff.gz |patch -p1

chown -R root:root .
chmod -R u+w,go+r-w,a-s .

# Customize as you need
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib$LIBDIRSUFFIX \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --build=$CHOST-slackware-linux
make $MAKEOPTS
make install DESTDIR=$PKG

## Do special operations

# cat $CWD/rc.application.sh > $PKG/etc/rc.d/rc.application.new
# cat $PKG/etc/init.d/initscript >> $PKG/etc/rc.d/rc.program.new
# rm $PKG/etc/init.d/initscript
# mv $PKG/etc/appl.conf $PKG/etc/appl.conf.new

# Documentations
mkdir -p $PKG/usr/doc/$PKGNAME-$VERSION
cp -r \
AUTHORS COPYING INSTALL NEWS TODO README \
  $PKG/usr/doc/$PKGNAME-$VERSION
cat $CWD/$PKGNAME.SlackBuild > $PKG/usr/doc/$PKGNAME-$VERSION/$PKGNAME.SlackBuild
cat $CWD/slack-desc > $PKG/usr/doc/$PKGNAME-$VERSION/slack-desc
cat $CWD/slack-required > $PKG/usr/doc/$PKGNAME-$VERSION/slack-required

if [ -d $PKG/usr/man ]; then
    ( 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
    )
fi

( cd $PKG
  find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs -r strip --strip-unneeded 2> /dev/null || true
  find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs -r strip --strip-unneeded 2> /dev/null || true
  find . | xargs file | grep "current ar archive" | cut -f 1 -d : | xargs -r strip --strip-unneeded 2> /dev/null || true
)

mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/slack-required > $PKG/install/slack-required
[ -e $CWD/doinst.sh ] && cat $CWD/doinst.sh > $PKG/install/doinst.sh

cd $PKG
chown -R root:root $PKG

#if [ -x "$(which requiredbuilder 2>/dev/null)" ];then
  #requiredbuilder -y -v -s $CWD $PKG   # add "-c -b" if you have binary files in /usr/share
#~ fi

/sbin/makepkg -l y -c n $OUTPUT/$PKGNAME-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-txz}

if [ "$1" = "--cleanup" ]; then
  rm -rf $TMP
fi


slack-desc:
Codice: Seleziona tutto
# 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------------------------------------------------------|
retrovol: retrovol (a volume setting program)
retrovol:
retrovol: It adds an icon to the tray that can be scrolled on to change
retrovol: the volume. It can be middle-clicked to mute/unmute. It can be
retrovol: right-clicked to get a menu with an option to display the main
retrovol: window, which lists all the volume controls it can detect on
retrovol: your system.
retrovol:
retrovol: http://puppylinux.svn.sourceforge.net/viewvc/puppylinux/retrovol/
retrovol: http://www.murga-linux.com/puppy/viewtopic.php?t=50744
retrovol:
Avatar utente
Cenni
Linux 2.0
Linux 2.0
 
Messaggi: 104
Iscritto il: mar feb 27, 2007 15:12
Località: Torino
Nome Cognome: Cenni
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: XFCE
Distribuzione: salix e puppeee

Re: rifinitura SlackBuild.

Messaggioda hashbang » dom lug 03, 2011 19:22

dando un ls -l /var noto che:
Codice: Seleziona tutto
drwxr-xr-x 15 root root 4096 lug  3 17:34 run


Dovrebbe equivalere a 751 (se sbaglio mi correggerete (cit.)), ovvero permessi totali a root, lettura ed esecuzione ai membri del gruppo root e sola esecuzione agli altri.
Per risolvere dovrebbe bastare un chmod -R 757 /var/run (equivalente a quello predefinito, se non per il fatto che il tuo utente avrà privilegi maggiori sulla directory) o un chmod -R 777 /var/run (permessi maggiori sia al proprietario, sia al suo gruppo, sia agli altri).

Per integrarlo nello SlackBuild, puoi mettere il comando in un doinst.sh o direttamente un
chmod -R 757 (o 777, scegli quello che più ti aggrada) $PKG/var/run
Adoro il pragmatismo della lingua giapponese, è l'unica in cui per dire ad una ragazza che la ami le dici "suki". (cit.)
Avatar utente
hashbang
Packager
Packager
 
Messaggi: 1842
Iscritto il: ven giu 04, 2010 9:27
Località: Lecce
Nome Cognome: Luca De Pandis
Distribuzione: Windows 8.1 Pro

Re: rifinitura SlackBuild.

Messaggioda Cenni » mar lug 05, 2011 19:51

Ciao,
grazie Atomix per il suggerimento, ma ho testato questo controllo volume ormai una settimana su 3 diversi pc, e non ostante l'errore segnalato sembra non comprometterne l'uso, quindi preferisco lasciare /var/run/ con i permessi originali di sistema. aggiungo lo slack-required che non avevo messo così se qualcuno volesse provarlo...
ciao

Codice: Seleziona tutto
alsa-lib >= 1.0.24.1-i486-1
atk >= 1.32.0-i486-1
cairo >= 1.10.2-i486-2
cxxlibs >= 6.0.14-i486-1 | gcc-g++ >= 4.5.2-i486-2
expat >= 2.0.1-i486-2
fontconfig >= 2.8.0-i486-1
freetype >= 2.4.4-i486-1
gcc >= 4.5.2-i486-2
gdk-pixbuf2 >= 2.23.3-i486-1
glib2 >= 2.28.6-i486-1
gtk+2 >= 2.24.4-i486-1
libX11 >= 1.4.3-i486-2
libXau >= 1.0.6-i486-1
libXcomposite >= 0.4.3-i486-1
libXcursor >= 1.1.11-i486-1
libXdamage >= 1.1.3-i486-1
libXdmcp >= 1.1.0-i486-1
libXext >= 1.2.0-i486-1
libXfixes >= 5.0-i486-1
libXi >= 1.4.2-i486-1
libXinerama >= 1.1.1-i486-1
libXrandr >= 1.3.1-i486-1
libXrender >= 0.9.6-i486-1
libpng >= 1.4.5-i486-1
libxcb >= 1.7-i486-1
pango >= 1.28.4-i486-1
pixman >= 0.20.2-i486-1
zlib >= 1.2.5-i486-4
Avatar utente
Cenni
Linux 2.0
Linux 2.0
 
Messaggi: 104
Iscritto il: mar feb 27, 2007 15:12
Località: Torino
Nome Cognome: Cenni
Slackware: 13.37
Kernel: 2.6.37.6
Desktop: XFCE
Distribuzione: salix e puppeee


Torna a Packages

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite

cron