<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://www.slacky.eu/wikislack/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="it">
		<id>http://www.slacky.eu/wikislack/index.php?title=Opkg&amp;feed=atom&amp;action=history</id>
		<title>Opkg - Cronologia</title>
		<link rel="self" type="application/atom+xml" href="http://www.slacky.eu/wikislack/index.php?title=Opkg&amp;feed=atom&amp;action=history"/>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Opkg&amp;action=history"/>
		<updated>2013-05-22T22:28:42Z</updated>
		<subtitle>Cronologia della pagina su questo sito</subtitle>
		<generator>MediaWiki 1.20.3</generator>

	<entry>
		<id>http://www.slacky.eu/wikislack/index.php?title=Opkg&amp;diff=2454&amp;oldid=prev</id>
		<title>L1q1d il 09:51, 12 set 2006</title>
		<link rel="alternate" type="text/html" href="http://www.slacky.eu/wikislack/index.php?title=Opkg&amp;diff=2454&amp;oldid=prev"/>
				<updated>2006-09-12T09:51:21Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nuova pagina&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[Category:Script]]&lt;br /&gt;
= Descrizione:= &lt;br /&gt;
Nuova versione di Opkg che sostituisce il precedente Oinstaller con una versione perfezionata. Riesce, grazie alle flags del gcc, a compilare un sorgente in maniera personalizzata, strippare i suoi binari e volendo le librerie, gzippare i man e utilizzare un vostro slack-desc personalizzato.&lt;br /&gt;
= Script =&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
# Opkg-0.3&lt;br /&gt;
#&lt;br /&gt;
# Programma di creazione pkg personalizzati per slackware&lt;br /&gt;
# Grazie a coloro che mi hanno aiutato in passato ;-)&lt;br /&gt;
# Settate i parametri prima di iniziare&lt;br /&gt;
&lt;br /&gt;
VEL=-O2                     # settare la velocità della -O&lt;br /&gt;
&lt;br /&gt;
echoz=&amp;quot;echo -e&amp;quot;&lt;br /&gt;
tmp=/tmp/pkg                # directory temporale di installazione sorgenti&lt;br /&gt;
USERHOME=`echo $HOME`&lt;br /&gt;
&lt;br /&gt;
function config() {&lt;br /&gt;
&lt;br /&gt;
CFLAGS=&amp;quot;$velocità -march=$marca -pipe -fomit-frame-pointer -mtune=`uname -m`&amp;quot;&lt;br /&gt;
CXXFLAGS=${CFLAGS}&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nHai intenzione di aggiungere altre opzioni di configurazione?[s/n]&amp;quot;&lt;br /&gt;
        read app&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$app&amp;quot; = s ]; then&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nInserisci l'opzione da passare al configure&amp;quot;&lt;br /&gt;
        read appz&lt;br /&gt;
        ./configure --prefix=$prefix CFLAGS=&amp;quot;$CFLAGS&amp;quot; CXXFLAGS=&amp;quot;${CFLAGS}&amp;quot; $appz&lt;br /&gt;
else&lt;br /&gt;
        ./configure --prefix=$prefix CFLAGS=&amp;quot;$CFLAGS&amp;quot; CXXFLAGS=&amp;quot;${CFLAGS}&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$?&amp;quot; = 1 ]; then&lt;br /&gt;
        $echoz &amp;quot;\nATTENZIONE: Si è verificato un problema di configurazione\n&amp;quot;&lt;br /&gt;
        exit 0&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function slcdsc() {&lt;br /&gt;
&lt;br /&gt;
echo &amp;quot;$name: $name-$vers&lt;br /&gt;
$name:&lt;br /&gt;
$name:&lt;br /&gt;
$name: $name-$vers-$marca-1oi.tgz è stato creato con Opkg-0.3&lt;br /&gt;
$name:&lt;br /&gt;
$name: questo pkg È stato realizzato per un processore tipo $marca&lt;br /&gt;
$name: su di un computer con processore tipo `uname -m`&lt;br /&gt;
$name:&lt;br /&gt;
$name:&lt;br /&gt;
$name: ENJOY!&lt;br /&gt;
$name:&amp;quot; &amp;gt; $tmp/install/slack-desc&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function super() {&lt;br /&gt;
        su -c &amp;quot;cd $tmp &amp;amp;&amp;amp; makepkg -l y -c y \&lt;br /&gt;
        $name-$vers-$marca-1oi.tgz &amp;amp;&amp;amp; rm -rf install &amp;amp;&amp;amp; \&lt;br /&gt;
        mv $name-$vers-$marca-1oi.tgz $USERHOME &amp;amp;&amp;amp; rm -rf $tmp&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$UID&amp;quot; = 0 ]; then&lt;br /&gt;
        $echoz &amp;quot;\nBisogna essere user per avviare questo script&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;La configurazione da root di un sorgente non è&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;indicata sia per una installazione da sorgenti&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;che da una creazione di un package!\n&amp;quot;&lt;br /&gt;
        exit 0&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
if [ ! -e configure ]; then&lt;br /&gt;
	$echoz &amp;quot;\nIl configure non è presente nella directory\n&amp;quot;&lt;br /&gt;
	exit 0&lt;br /&gt;
&lt;br /&gt;
elif [ ! -x configure ]; then&lt;br /&gt;
	$echoz &amp;quot;\nIl configure non è eseguibile, rendetelo con il comando \&amp;quot;chmod +x configure\&amp;quot;\n&amp;quot;&lt;br /&gt;
	exit 0&lt;br /&gt;
&lt;br /&gt;
elif [ -e configure -a -x configure ]; then&lt;br /&gt;
&lt;br /&gt;
        velocità=$VEL&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nBenvenuti nel Opkg-0.3 :D&amp;quot;&lt;br /&gt;
$echoz &amp;quot;Per qualsiasi chiarimento o suggerimento ohiohiohi_ahiahiahi@katamail.com&amp;quot;&lt;br /&gt;
$echoz &amp;quot;\nInserisci ora il nome del programma che vuoi pacchettizzare&amp;quot;&lt;br /&gt;
        read name&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nInserisci ora la versione del programma da pacchettizzare&amp;quot;&lt;br /&gt;
        read vers&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;Seleziona il tipo di configurazione:&amp;quot;&lt;br /&gt;
$echoz &amp;quot;\n\&amp;quot;pers\&amp;quot; per una configurazione dei sorgenti in base al tipo di macchina&amp;quot;&lt;br /&gt;
$echoz &amp;quot;\&amp;quot;simple\&amp;quot; per una semplice configurazione con ./configure&amp;quot;&lt;br /&gt;
$echoz &amp;quot;\nATTENZIONE: L'opzione \&amp;quot;simple\&amp;quot; viene usata nel caso i sorgenti non&amp;quot;&lt;br /&gt;
$echoz &amp;quot;supportino le CFLAGS o parametri da passare al configure&amp;quot;&lt;br /&gt;
        read source&lt;br /&gt;
&lt;br /&gt;
until [ &amp;quot;$source&amp;quot; = simple -o &amp;quot;$source&amp;quot; = pers ]; do&lt;br /&gt;
        $echoz &amp;quot;\&amp;quot;$source\&amp;quot; non è una opzione valida[simple/pers]&amp;quot;&lt;br /&gt;
        read source&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nInserisci la PATH per il --prefix&amp;quot;&lt;br /&gt;
	read pathprefix&lt;br /&gt;
&lt;br /&gt;
until [ -e &amp;quot;$pathprefix&amp;quot; ]; do&lt;br /&gt;
	$echoz &amp;quot;\nNon ho ancora imparato a creare directory da solo!!&amp;quot;&lt;br /&gt;
	$echoz &amp;quot;Inseriscine una che esista per favore :D&amp;quot;&lt;br /&gt;
	read pathprefix&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$source&amp;quot; = simple ]; then&lt;br /&gt;
        marca=noarch&lt;br /&gt;
        ./configure --prefix=$pathprefix&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$1&amp;quot; = 1 ]; then&lt;br /&gt;
        $echoz &amp;quot;\nATTENZIONE: Si è verificato un errore di compilazione\n&amp;quot;&lt;br /&gt;
        exit 0&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
elif [ &amp;quot;$source&amp;quot; = pers ]; then&lt;br /&gt;
&lt;br /&gt;
        prefix=$pathprefix&lt;br /&gt;
&lt;br /&gt;
        $echoz &amp;quot;\nÈ necessario inserire ora la architettura per la quale bisogna&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;preparare il pacchetto. Questo è utilizzato per proforma&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;nel caso si volesse crearlo per altre architetture.&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;Scrivi \&amp;quot;my\&amp;quot; nel caso tu voglia creare un pkg con la tua&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;architettura, per inserirne una a scelta scrivi \&amp;quot;ath\&amp;quot;.&amp;quot;&lt;br /&gt;
        read marca1&lt;br /&gt;
&lt;br /&gt;
until [ &amp;quot;$marca1&amp;quot; = my -o &amp;quot;$marca1&amp;quot; = ath ]; do&lt;br /&gt;
        $echoz &amp;quot;\&amp;quot;$marca1\&amp;quot; non è una opzione valida[my/ath]&amp;quot;&lt;br /&gt;
        read marca1&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$marca1&amp;quot; = my ]; then&lt;br /&gt;
        marca=`uname -m`&lt;br /&gt;
        true&lt;br /&gt;
&lt;br /&gt;
elif [ &amp;quot;$marca1&amp;quot; = ath ]; then&lt;br /&gt;
        $echoz &amp;quot;Scrivi il tipo di processore(es. i486)&amp;quot;&lt;br /&gt;
        read marca&lt;br /&gt;
        true&lt;br /&gt;
fi&lt;br /&gt;
        config&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
if [ -e Makefile ]; then&lt;br /&gt;
        $echoz &amp;quot;\nIl Makefile è presente o è stato creato.&amp;quot;&lt;br /&gt;
        $echoz &amp;quot;Avvio lo script per la creazione del pkg&amp;quot;&lt;br /&gt;
&lt;br /&gt;
sleep 5&lt;br /&gt;
	make&lt;br /&gt;
        make install DESTDIR=$tmp&lt;br /&gt;
&lt;br /&gt;
mkdir $tmp/install&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nATTENZIONE: Se hai intenzione di usare il tuo slack-desc ricorda&amp;quot;&lt;br /&gt;
$echoz &amp;quot;di metterlo nella HOME, chiamarlo \&amp;quot;slack-desc\&amp;quot;&amp;quot;&lt;br /&gt;
$echoz &amp;quot;\nSe vuoi usare il tuo slackdesk digita \&amp;quot;s\&amp;quot;, per default \&amp;quot;n\&amp;quot;&amp;quot;&lt;br /&gt;
        read slackdesc&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$slackdesc&amp;quot; = s ]; then&lt;br /&gt;
&lt;br /&gt;
if [ -e ~/slack-desc ]; then&lt;br /&gt;
        mv ~/slack-desc $tmp/install/slack-desc&lt;br /&gt;
        true&lt;br /&gt;
else&lt;br /&gt;
        $echoz &amp;quot;File non trovato o nominato male, procederò con il slack-desc di default&amp;quot;&lt;br /&gt;
        slcdsc&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
        slcdsc&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
findbin=`find $tmp -name bin -print`&lt;br /&gt;
if [ &amp;quot;$findbin&amp;quot; != '' ]; then&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nHai intenzione di strippare i binari per occupare meno spazio?&amp;quot;&lt;br /&gt;
$echoz &amp;quot;(Questa opzione può causare alcuni problemi nell'utilizzo di&amp;quot;&lt;br /&gt;
$echoz &amp;quot;alcuni programmi in versione ancora non-stable). [s/n]&amp;quot;&lt;br /&gt;
        read bin&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$bin&amp;quot; = s ]; then&lt;br /&gt;
&lt;br /&gt;
find $tmp | xargs file | grep &amp;quot;executable&amp;quot; | grep ELF | \&lt;br /&gt;
cut -f 1 -d : | xargs strip --strip-unneeded 2&amp;gt; /dev/null&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
        true&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
        true&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
findlib=`find $tmp -name lib -print`&lt;br /&gt;
if [ &amp;quot;$findlib&amp;quot; != '' ]; then&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nAvete necessità di strippare anche le librerie? [s/n]&amp;quot;&lt;br /&gt;
$echoz &amp;quot;ATTENZIONE: Questa opzione non è molto consigliata&amp;quot;&lt;br /&gt;
        read lib&lt;br /&gt;
&lt;br /&gt;
if [ &amp;quot;$lib&amp;quot; = s ]; then&lt;br /&gt;
&lt;br /&gt;
find $tmp | xargs file | grep &amp;quot;shared object&amp;quot; | grep ELF | \&lt;br /&gt;
cut -f1 -d : | xargs strip --strip-unneeded 2&amp;gt; /dev/null&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
        true&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
        true&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
findman=`find $tmp -name man -print`&lt;br /&gt;
if [ &amp;quot;$findman&amp;quot; != '' ]; then&lt;br /&gt;
&lt;br /&gt;
find $tmp | xargs file | grep -i troff | grep man | \&lt;br /&gt;
cut -d : -f1 | xargs gzip -9&lt;br /&gt;
&lt;br /&gt;
else&lt;br /&gt;
        true&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nInserite ora la password di root per avviare la creazione del package\n&amp;quot;&lt;br /&gt;
	super&lt;br /&gt;
&lt;br /&gt;
until [ &amp;quot;$?&amp;quot; = 0 ]; do&lt;br /&gt;
        $echoz &amp;quot;\nNeanche  la password di root mi sai azzeccare?&amp;quot;&lt;br /&gt;
        super&lt;br /&gt;
done&lt;br /&gt;
&lt;br /&gt;
$echoz &amp;quot;\nCOMPLIMENTI!! hai creato il package $name-$vers-$marca-1oi.tgz&amp;quot;&lt;br /&gt;
$echoz &amp;quot;Lo troverete nella vostra HOME\n&amp;quot;&lt;br /&gt;
&lt;br /&gt;
cd ~&lt;br /&gt;
&lt;br /&gt;
fi&lt;br /&gt;
&lt;br /&gt;
fi&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Data:    	03 Jun 2006&lt;br /&gt;
* Autore:    	OhiAhiOhi&lt;br /&gt;
* Versione:    	0.3&lt;/div&gt;</summary>
		<author><name>L1q1d</name></author>	</entry>

	</feed>