SlackBuild per Thunderbird 3 x86_64

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.
Rispondi
Avatar utente
hal9000
Linux 2.x
Linux 2.x
Messaggi: 236
Iscritto il: dom 7 gen 2007, 21:24
Nome Cognome: Alessandro Zamori
Slackware: 64 14.2
Kernel: huge-4.4.75
Desktop: xfce
Località: Roma

SlackBuild per Thunderbird 3 x86_64

Messaggio da hal9000 »

Ho creato lo script per Thunderbird 3.0.4 modificando quello presente nel repository ma anche se tutto sembra andare a buon fine il programma non parte e lanciandolo da console da un errore : /usr/lib64/thunderbird-bin file not found ma con ls -l vedo il file ed è eseguibile da tutti. Ecco lo script modificato:

Codice: Seleziona tutto

!/bin/sh
# Heavily based on the Slackware 13.0 SlackBuild
# 
# This is not a source build script.  Rather, it builds a Slackware
# package from the official binary tarball available from mozilla.org.
# Using the official binaries seems like the most direct way to satify
# the Mozilla project's concerns about quality control (and thus to
# provide the most quality-certified package possible), and therefore
# be able to use the official trademarks and logos.
#
# Thanks to the folks at the Mozilla Foundation for permission to
# distribute this, and for all the great work!  :-)

CWD=`pwd`
TMP=${TMP:-/tmp/txz}
NAME=thunderbird
PKG=$TMP/package/$NAME
VERSION=3.0.4
ARCH=x86_64
BUILD=1az

if [ "$ARCH" = "x86_64" ]; then
  LIBDIRSUFFIX="64"
   fi
 
if [ ! -d $TMP ]; then
  mkdir -p $TMP
fi
rm -rf $PKG
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}
( cd $PKG/usr/lib${LIBDIRSUFFIX}
  tar xjvf $CWD/$NAME-$VERSION.tar.bz2 || exit 1
  chown -R root:root .
  mv thunderbird thunderbird-$VERSION
  ln -sf thunderbird-$VERSION thunderbird
  cd thunderbird-$VERSION
    if [ ! $? = 0 ]; then
    exit 1
  fi
  )
if [ ! $? = 0 ]; then
  exit 1
fi
mkdir -p $PKG/usr/bin
( cd $PKG/usr/bin
  ln -sf /usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION/thunderbird .
)
mkdir -p $PKG/usr/share/applications
cat $CWD/mozilla-thunderbird.desktop > $PKG/usr/share/applications/mozilla-thunderbird.desktop
mkdir -p $PKG/usr/share/pixmaps
cat $CWD/thunderbird.png > $PKG/usr/share/pixmaps/thunderbird.png

# These files/directories are usually created if Thunderbird is run as root, which on many
# systems might (and possibly should) be never.  Therefore, if we don't see them we'll
# put stubs in place to prevent startup errors.
( cd $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION
  if [ -d chrome ]; then
    if [ ! -r chrome/app-chrome.manifest ]; then
      echo > chrome/app-chrome.manifest
    fi
  fi
  if [ ! -d updates ]; then
    mkdir -p updates/0
  fi
)

mkdir $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
makepkg -l y -c n $CWD/mozilla-thunderbird-it-$VERSION-$ARCH-$BUILD.txz

if [ "$1" = "--cleanup" ]; then
 rm -rf $TMP/mozilla-thunderbird-it-$VERSION
 rm -rf $PKG
fi
Il .tar.bz2 l' ho scaricato direttamente dal sito di Mozilla. Nessuna idea di dove sbaglio?

Avatar utente
phobos3576
Staff
Staff
Messaggi: 2980
Iscritto il: dom 17 apr 2005, 0:00
Slackware: 13.1
Kernel: 2.6.37-smp
Desktop: KDE 4.5.3

Re: SlackBuild per Thunderbird 3 x86_64

Messaggio da phobos3576 »

Se la tua intenzione era quella di ricompilare da sorgente, tieni presente che lo SlackBuild che hai usato in realtà non fa altro che prendere il file binario di Thunderbird e trasformarlo in un package.

Avatar utente
hal9000
Linux 2.x
Linux 2.x
Messaggi: 236
Iscritto il: dom 7 gen 2007, 21:24
Nome Cognome: Alessandro Zamori
Slackware: 64 14.2
Kernel: huge-4.4.75
Desktop: xfce
Località: Roma

Re: SlackBuild per Thunderbird 3 x86_64

Messaggio da hal9000 »

Ho provato anche ad usare quello di Pat per la Current ma la compilazione si blocca su Cairo che nella mia 13.0 è regolarmente installato ma sicuramente è diverso da quello della Current. Dato che non dorebbero esserci problemi nell' installare Thunderbird 3.0.4 anche sulla 13.0 come pensi mi conviene procedere?

Avatar utente
phobos3576
Staff
Staff
Messaggi: 2980
Iscritto il: dom 17 apr 2005, 0:00
Slackware: 13.1
Kernel: 2.6.37-smp
Desktop: KDE 4.5.3

Re: SlackBuild per Thunderbird 3 x86_64

Messaggio da phobos3576 »

Cairo è stata aggiornata da Pat alla versione 1.8.8 anche sulla 13.
Per la 64 bit la trovi in un qualunque repository ufficiale nel ramo patches/packages; ad esempio, puoi prelevarla da:

ftp://ftp.slackware.at/slackware64-13.0 ... /packages/

E' importante che l'installazione di Cairo avvenga dalla modalità testo; altrimenti, rischi di mandare in crash KDE.

Per ricompilare Thunderbird a 64 bit preleva l'intera directory mozilla-thunderbird dal ramo source/xap della current64; ad esempio:

ftp://ftp.slackware.at/slackware64-current/source/xap/

Se vuoi la localizzazione in italiano, devi modificare lo SlackBuild; questa è la versione modificata da me:

Codice: Seleziona tutto

#!/bin/sh

# Copyright 2008, 2009  Patrick J. Volkerding, Sebeka, Minnesota, USA
# All rights reserved.
#
# 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.

# Thanks to the folks at the Mozilla Foundation for permission to
# distribute this, and for all the great work!  :-)

# This is a source build script. Unfortunately, there is no official
# binary tarball available for x86_64

# SlackBuild mirror

# ftp://ftp.heanet.ie/mirrors/ftp.slackware.com/pub/slackware/slackware64-current/source/xap/

# Thunderbird source

# http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases

# Thunderbird language

# http://hg.mozilla.org/releases/l10n-mozilla-1.9.1/it/

#set -e

LOCTAG=it
LOCNAME=it-196fb5feda7c
LOCFILE=it-196fb5feda7c.tar.bz2

VERSION=$(basename $(ls thunderbird-*.tar.bz2 | cut -d - -f 2 | rev | cut -f 3- -d . | rev) .source)

# Automatically determine the architecture we're building on:
if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) export ARCH=i486 ;;
    arm*) export ARCH=arm ;;
    # Unless $ARCH is already set, use uname -m for all other archs:
       *) export ARCH=$( uname -m ) ;;
  esac
fi
BUILD=${BUILD:-1}

MOZVERS=${MOZVERS:-1.9.1}

NUMJOBS=${NUMJOBS:-" -j2 "}

# Try to be gentle to the compiler, no optimizations:
if [ "$ARCH" = "i486" ]; then
  SLKCFLAGS="-O"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
  SLKCFLAGS="-O"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
  SLKCFLAGS="-O -fPIC"
  LIBDIRSUFFIX="64"
elif [ "$ARCH" = "arm" ]; then
  SLKCFLAGS="-O2 -march=armv4 -mtune=xscale"
  LIBDIRSUFFIX=""
elif [ "$ARCH" = "armel" ]; then
  SLKCFLAGS="-O2 -march=armv4t"
  LIBDIRSUFFIX=""
fi

CWD=$(pwd)
TMP=${TMP:-/tmp}
PKG=$TMP/package-mozilla-thunderbird

rm -rf $PKG
mkdir -p $TMP $PKG/usr/lib${LIBDIRSUFFIX}

cd $TMP
rm -rf comm-$MOZVERS
tar xvf $CWD/thunderbird-$VERSION.source.tar.bz2 || exit 1
cd comm-$MOZVERS || exit 1

mkdir l10n
cd l10n
tar xvf $CWD/$LOCFILE
mv $LOCNAME $LOCTAG
cd ..

# Fix a long standing bug that's prevented staying current on GTK+.
# Thanks to the BLFS folks.  :-)
cat << EOF >> layout/build/Makefile.in

ifdef MOZ_ENABLE_CANVAS
EXTRA_DSO_LDOPTS += \$(XLDFLAGS) -lX11 -lXrender
endif

EOF

chown -R root:root .
find . \
  \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
  -exec chmod 755 {} \; -o \
  \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
  -exec chmod 644 {} \;

export MOZILLA_OFFICIAL="1" &&
export BUILD_OFFICIAL="1" &&
export MOZ_PHOENIX="1" &&
export CFLAGS="$SLKCFLAGS" &&
export CXXFLAGS="$SLKCFLAGS" &&
./configure \
  --enable-official-branding \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --with-default-mozilla-five-home=/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION \
  --with-system-zlib \
  --with-l10n-base=$TMP/comm-$MOZVERS/l10n \
  --enable-application=mail \
  --enable-default-toolkit=cairo-gtk2 \
  --enable-crypto \
  --enable-svg \
  --enable-canvas \
  --enable-xft \
  --enable-xinerama \
  --enable-optimize \
  --enable-reorder \
  --enable-static \
  --enable-strip \
  --enable-system-cairo \
  --enable-cpp-rtti \
  --enable-single-profile \
  --enable-ui-locale=it \
  --disable-ldap \
  --disable-accessibility \
  --disable-debug \
  --disable-tests \
  --disable-logging \
  --disable-pedantic \
  --disable-installer \
  --disable-profilesharing
  # Complains about missing APNG support in Slackware's libpng:
  #--with-system-png \

#make -f client.mk build MOZ_MAKE_FLAGS="$NUMJOBS" || exit 1
make MOZ_MAKE_FLAGS="$NUMJOBS" || exit 1
make install DESTDIR=$PKG || exit 1

# We don't need these (just symlinks anyway):
rm -rf $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-devel-$VERSION

# Nor these:
rm -rf $PKG/usr/include

( cd $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION
  cp -a defaults/profile/mimeTypes.rdf defaults/profile/mimeTypes.rdf.orig
  zcat $CWD/mimeTypes.rdf > defaults/profile/mimeTypes.rdf || exit 1
) || exit 1

mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
mkdir -p $PKG/usr/share/applications
cat $CWD/mozilla-thunderbird.desktop > $PKG/usr/share/applications/mozilla-thunderbird.desktop
mkdir -p $PKG/usr/share/pixmaps
cat $CWD/thunderbird.png > $PKG/usr/share/pixmaps/thunderbird.png

# These files/directories are usually created if Firefox is run as root,
# which on many systems might (and possibly should) be never.  Therefore, if we
# don't see them we'll put stubs in place to prevent startup errors.
( cd $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION
  if [ -d extensions/talkback\@mozilla.org ]; then
    if [ ! -r extensions/talkback\@mozilla.org/chrome.manifest ]; then
      echo > extensions/talkback\@mozilla.org/chrome.manifest
    fi
  fi
  if [ ! -d updates ]; then
    mkdir -p updates/0
  fi
)

# Need some default icons in the right place:
mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION/chrome/icons/default
install -m 644 other-licenses/branding/thunderbird/default16.png \
  $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION/icons/
install -m 644 other-licenses/branding/thunderbird/default16.png \
  $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION/chrome/icons/default/ 
( cd $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION
  install -m 644 icons/{default,mozicon50}.xpm chrome/icons/default/
)

# Copy over the LICENSE
install -p -c -m 644 LICENSE $PKG/usr/lib${LIBDIRSUFFIX}/thunderbird-$VERSION/

mkdir $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc

cd $PKG
/sbin/makepkg -l y -c n $TMP/mozilla-thunderbird-$VERSION-$ARCH-$BUILD.txz
Nello stesso SlackBuild sono indicati i siti da cui prelevare sorgenti e file di localizzazione (per il file di localizzazione, clicca su bz2); devi solo modificare le due variabili LOCNAME e LOCFILE in base al nome del file di localizzazione che hai scaricato.

E' importante che nella directory mozilla-thunderbird sia presente un unico file sorgente da compilare; lo script individua in automatico la versione e l'architettura 32/64 bit.

Il package viene creato in /tmp

Avatar utente
hal9000
Linux 2.x
Linux 2.x
Messaggi: 236
Iscritto il: dom 7 gen 2007, 21:24
Nome Cognome: Alessandro Zamori
Slackware: 64 14.2
Kernel: huge-4.4.75
Desktop: xfce
Località: Roma

Re: SlackBuild per Thunderbird 3 x86_64

Messaggio da hal9000 »

Grazie per l' aiuto, ora però il problema è un' altro. Durante la compilazione si blocca ed appare oò seguente messaggio:
./mozilla-thunderbird.SlackBuild: line 102: layout/build/Makefile.in: No such file or directory
e poi

Codice: Seleziona tutto

checking for gtk+-2.0 >= 2.10.0 gtk+-unix-print-2.0 glib-2.0 gobject-2.0 gdk-x11-2.0... Package renderproto was not found in the pkg-config search path. Perhaps you should add the directory containing `renderproto.pc' to the PKG_CONFIG_PATH environment variable Package 'renderproto', required by 'Xrender', not found
configure: error: Library requirements (gtk+-2.0 >= 2.10.0 gtk+-unix-print-2.0 glib-2.0 gobject-2.0 gdk-x11-2.0) not met; consider adjusting the PKG_CONFIG_PATH environment variable if your libraries are in a nonstandard prefix so pkg-config can find them.
make: *** No targets specified and no makefile found.  Stop.
Sia le GTK che le Glib sono quelle della 13.0 e sembrano nel percorso corretto. Anche con la 12.2 quando cercavo di compilare qualcosa da sorgente avevo lo stesso problema. Nessuna idea?

Avatar utente
phobos3576
Staff
Staff
Messaggi: 2980
Iscritto il: dom 17 apr 2005, 0:00
Slackware: 13.1
Kernel: 2.6.37-smp
Desktop: KDE 4.5.3

Re: SlackBuild per Thunderbird 3 x86_64

Messaggio da phobos3576 »

L'errore ./mozilla-thunderbird.SlackBuild: line 102: layout/build/Makefile.in: No such file or directory è ininfluente; probabilmente quella riga si riferisce al vecchio Thunderbird 2.x. Per evitare che la creazione del package si blocchi in quella riga, basta commentare l'opzione set -e (come si vede nel mio SlackBuild).

Il restante messaggio di errore sembra dire che la versione delle gtk+2 è inferiore al minimo richiesto (2.10); mi sembra strano visto che la Slackware 13 ha le 2.14

Avatar utente
hal9000
Linux 2.x
Linux 2.x
Messaggi: 236
Iscritto il: dom 7 gen 2007, 21:24
Nome Cognome: Alessandro Zamori
Slackware: 64 14.2
Kernel: huge-4.4.75
Desktop: xfce
Località: Roma

Re: SlackBuild per Thunderbird 3 x86_64

Messaggio da hal9000 »

Infatti ho le GTK+2-2.14.7 e ho anche installato le GTK+-1.2.10. Non è che in fase di compilazione il programma faccia confusione e cerchi le GTK+2 nel percorso della GTK+-1? Le GTK+-1.2.10 possono essere rimosse senza problemi per fare un tentativo?

Avatar utente
phobos3576
Staff
Staff
Messaggi: 2980
Iscritto il: dom 17 apr 2005, 0:00
Slackware: 13.1
Kernel: 2.6.37-smp
Desktop: KDE 4.5.3

Re: SlackBuild per Thunderbird 3 x86_64

Messaggio da phobos3576 »

Le GTK+1 non interferiscono con le +2 e sono necessarie entrambe visto che, oltre ai nuovi programmi che usano le +2, sopravvivono ancora vecchi programmi che si interfacciano con le +1.

Thunderbird3 usa solo le +2 e ignora completamente le +1.

Comunque, quello SlackBuild è stato scritto da Pat espressamente per la 13 e deve funzionare per forza.

Il messaggio di errore ti dice tra l'altro che non trova il package renderproto; eventualmente, per la 64 bit lo puoi prelevare dal solito repository:

ftp://ftp.slackware.at/slackware64-13.0/slackware64/x/

Mi sembra molto strano però che ti manchi un package fondamentale per la Slackware.

Avatar utente
hal9000
Linux 2.x
Linux 2.x
Messaggi: 236
Iscritto il: dom 7 gen 2007, 21:24
Nome Cognome: Alessandro Zamori
Slackware: 64 14.2
Kernel: huge-4.4.75
Desktop: xfce
Località: Roma

Re:[Risolto] SlackBuild per Thunderbird 3 x86_64

Messaggio da hal9000 »

Grazie per l' aiuto. Il problema non erano le GTK ma alcuni programmi della serie X che mancavano. Ora ho compilato e installato senza problemi. Per sapere: non è che hai anche un link per lo SlackBuild per skype?

Avatar utente
phobos3576
Staff
Staff
Messaggi: 2980
Iscritto il: dom 17 apr 2005, 0:00
Slackware: 13.1
Kernel: 2.6.37-smp
Desktop: KDE 4.5.3

Re: Re:[Risolto] SlackBuild per Thunderbird 3 x86_64

Messaggio da phobos3576 »

hal9000 ha scritto:Per sapere: non è che hai anche un link per lo SlackBuild per skype?
Non vorrei sbagliarmi ma, Skype è closed, per cui non esiste la possibilità di ricompilarlo.

Quelli di Skype hanno rilasciato un DEB per Ubuntu a 64 bit (solo CPU AMD64); se hai quel modello di CPU potresti provare allora a crearti un package per Slackware partendo dal file.DEB.

Rispondi