Come creare un pacchetto partendo da un mio programma?
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.
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.
-
- Linux 0.x
- Messaggi: 30
- Iscritto il: ven mar 30, 2012 18:13
- Slackware: 13.37
- Kernel: 3.0.4
- Desktop: XFCE4
Come creare un pacchetto partendo da un mio programma?
Ciao a tutti, in questi giorni avrò letto si e no una decine di guide che parlano di come creare un pacchetto *.txz installabile tramite il tool di slackware installpkg e volevo cimentarmi anche io provando a crearne uno solamente che queste guide parlano di scompattare, compilare, strippare... e non so proprio da dove dovrei cominciare. Praticamente io vorrei creare un pacchetto txz partendo dal mio programma scritto in C già compilato, come faccio ?
-
- Packager
- Messaggi: 1969
- Iscritto il: ven giu 04, 2010 10:27
- Nome Cognome: Luca De Pandis
- Distribuzione: macOS
- Località: Lecce / Bergamo / Milano
- Contatta:
Re: Come creare un pacchetto partendo da un mio programma?
Per gli eseguibili:
Per tutto il resto (come le pagine di man):
Copia la documentazione (se ne hai scritta), come la licenza:
*Do per scontato che usi /usr come prefix. Qualora così non fosse, adatta il comando al path desiderato.
Strip dei binari (se lo hai già fatto, puoi anche evitare)
Copia lo slack-desc (non è obbligatorio. Se non lo farai, però, non avrai la descrizione del pacchetto durante la sua installazione)
Setta il proprietario e crea il pacchetto
*Se stai creando il pacchetto per la prima volta, il NumeroCompilazioni settalo ad 1, come Tag inserisci le tue iniziali o il tuo alias.
Questo è quanto.
Se vuoi invece usare lo SlackBuild (che altro non è che uno script che racchiude i comandi da me dati), puoi guardare qui, dove troverai anche un template per lo slack-desc, qualora lo volessi creare.
Codice: Seleziona tutto
# mkdir -p pkg
# install -Dm 755 eseguibile pkg/path/che/ti/serve
Per tutto il resto (come le pagine di man):
Codice: Seleziona tutto
# install -Dm 644 file pkg/path/che/ti/serve
Copia la documentazione (se ne hai scritta), come la licenza:
Codice: Seleziona tutto
mkdir -p pkg/usr/doc/nomeapplicazione-versione
cp -a TXT1 TXT2... pkg/*usr/doc/nomeapplicazione-version
*Do per scontato che usi /usr come prefix. Qualora così non fosse, adatta il comando al path desiderato.
Strip dei binari (se lo hai già fatto, puoi anche evitare)
Codice: Seleziona tutto
strip pkg/percorso/dei/binari/*
Copia lo slack-desc (non è obbligatorio. Se non lo farai, però, non avrai la descrizione del pacchetto durante la sua installazione)
Codice: Seleziona tutto
mkdir -p pkg/install
cp slack-desc pkg/install
Setta il proprietario e crea il pacchetto
Codice: Seleziona tutto
cd pkg
chown -R root:root .
makepkg -l y -c n /path/che/vuoi/nomepacchetto-versione-architettura-*NumeroCompilazioniTag.txz
*Se stai creando il pacchetto per la prima volta, il NumeroCompilazioni settalo ad 1, come Tag inserisci le tue iniziali o il tuo alias.
Questo è quanto.
Se vuoi invece usare lo SlackBuild (che altro non è che uno script che racchiude i comandi da me dati), puoi guardare qui, dove troverai anche un template per lo slack-desc, qualora lo volessi creare.
-
- Linux 0.x
- Messaggi: 30
- Iscritto il: ven mar 30, 2012 18:13
- Slackware: 13.37
- Kernel: 3.0.4
- Desktop: XFCE4
Re: Come creare un pacchetto partendo da un mio programma?
hashbang ha scritto:Per gli eseguibili:Codice: Seleziona tutto
# mkdir -p pkg
# install -Dm 755 eseguibile pkg/path/che/ti/serve
Per tutto il resto (come le pagine di man):Codice: Seleziona tutto
# install -Dm 644 file pkg/path/che/ti/serve
Copia la documentazione (se ne hai scritta), come la licenza:Codice: Seleziona tutto
mkdir -p pkg/usr/doc/nomeapplicazione-versione
cp -a TXT1 TXT2... pkg/*usr/doc/nomeapplicazione-version
*Do per scontato che usi /usr come prefix. Qualora così non fosse, adatta il comando al path desiderato.
Strip dei binari (se lo hai già fatto, puoi anche evitare)Codice: Seleziona tutto
strip pkg/percorso/dei/binari/*
Copia lo slack-desc (non è obbligatorio. Se non lo farai, però, non avrai la descrizione del pacchetto durante la sua installazione)Codice: Seleziona tutto
mkdir -p pkg/install
cp slack-desc pkg/install
Setta il proprietario e crea il pacchettoCodice: Seleziona tutto
cd pkg
chown -R root:root .
makepkg -l y -c n /path/che/vuoi/nomepacchetto-versione-architettura-*NumeroCompilazioniTag.txz
Da dove arriva questo txz? E' proprio questo che mi serve ! Grazie comunque per la spiegazione dettagliata.
*Se stai creando il pacchetto per la prima volta, il NumeroCompilazioni settalo ad 1, come Tag inserisci le tue iniziali o il tuo alias.
Questo è quanto.
Se vuoi invece usare lo SlackBuild (che altro non è che uno script che racchiude i comandi da me dati), puoi guardare qui, dove troverai anche un template per lo slack-desc, qualora lo volessi creare.
-
- Linux 4.x
- Messaggi: 1197
- Iscritto il: ven ott 09, 2009 19:25
- Slackware: 13.37
- Kernel: 3.0.7
- Desktop: kde
Re: Come creare un pacchetto partendo da un mio programma?
mi pare che il "make" faccia il lavoro....
-
- Linux 0.x
- Messaggi: 30
- Iscritto il: ven mar 30, 2012 18:13
- Slackware: 13.37
- Kernel: 3.0.4
- Desktop: XFCE4
Re: Come creare un pacchetto partendo da un mio programma?
erio ha scritto:mi pare che il "make" faccia il lavoro....
In che modo ?
- d4z_c0nf
- Packager
- Messaggi: 1296
- Iscritto il: mar mar 14, 2006 18:07
- Nome Cognome: Rocco Aliberti
- Slackware: 14.2-current64
- Kernel: 4.14.73
- Desktop: awesomeWM
- Località: Pinerolo
Re: Come creare un pacchetto partendo da un mio programma?
Scusa in che modo cosa?
makepkg crea il pacchetto, vuoi sapere come fa?
makepkg crea il pacchetto, vuoi sapere come fa?
-
- Packager
- Messaggi: 1969
- Iscritto il: ven giu 04, 2010 10:27
- Nome Cognome: Luca De Pandis
- Distribuzione: macOS
- Località: Lecce / Bergamo / Milano
- Contatta:
Re: Come creare un pacchetto partendo da un mio programma?
il txz è l'estensione del pacchetto.mandrago ha scritto:[color=#FF0000]Da dove arriva questo txz? E' proprio questo che mi serve ! Grazie comunque per la spiegazione dettagliata
È una forma ridotta dell'estensione tar.xz.
makepkg(8) altro non è che una versione più avanzata di GNU tar(1). È uno script che oltre a richiamare tar(1) per la compressione, gestisce anche i link simbolici e tutto il necessario per la pacchettizzazione del software su Slackware.
Per info più dettagliate, rimando ai man:
makepkg(8)
tar(1)
xz(1)
-
- Linux 0.x
- Messaggi: 30
- Iscritto il: ven mar 30, 2012 18:13
- Slackware: 13.37
- Kernel: 3.0.4
- Desktop: XFCE4
Re: Come creare un pacchetto partendo da un mio programma?
Non ho ancora capito
Mi piacerebbe sapere come si procede per la creazione di un paccheto txz passo per passo da un semplice programma compilato in C che stampo hello world tutto qua, non mi serve altro.

Mi piacerebbe sapere come si procede per la creazione di un paccheto txz passo per passo da un semplice programma compilato in C che stampo hello world tutto qua, non mi serve altro.
-
- Packager
- Messaggi: 1969
- Iscritto il: ven giu 04, 2010 10:27
- Nome Cognome: Luca De Pandis
- Distribuzione: macOS
- Località: Lecce / Bergamo / Milano
- Contatta:
Re: Come creare un pacchetto partendo da un mio programma?
Perdonami, ma sono io che non capisco.mandrago ha scritto:Non ho ancora capito![]()
Vuoi sapere come si costruisce un pacchetto passo per passo? Te l'ho scritto al mio primo post e ti ho linkato la nostra guida.
Vuoi sapere cos'è la stringa txz? Te l'ho spiegato al mio secondo post dove ti ho detto che è una forma ridotta dell'estensione completa "tar.xz".
Oltre a ciò che ti ho scritto al mio primo post, non devi fare altro.Mi piacerebbe sapere come si procede per la creazione di un paccheto txz passo per passo da un semplice programma compilato in C che stampo hello world tutto qua, non mi serve altro.
- d4z_c0nf
- Packager
- Messaggi: 1296
- Iscritto il: mar mar 14, 2006 18:07
- Nome Cognome: Rocco Aliberti
- Slackware: 14.2-current64
- Kernel: 4.14.73
- Desktop: awesomeWM
- Località: Pinerolo
Re: Come creare un pacchetto partendo da un mio programma?
Ma cosa ti manca? E' difficile capirlo. Ad intuito, penso che ti sfugga come sia strutturato il contenuto di un pacchetto.
A parte la directory "install" che potrai creare o meno, devi ricreare una struttura ad albero che ricalchi la /, per le directory utili.
Per esempio hello_world.c compilato produrrà un hello_world binario (o comunque lo vorrai chiamare), che presumibilmente tu vorrai che sia installato nella directory degli eseguibili della tua distro, tipo /bin /sbin /usr/bin ecc. Vedi tu.
A quel punto, mettiamo tu scelga /usr/bin, la struttura da craere sarà:
dir_padre(nome qualsiasi che scegli tu)
|_ usr
|_ bin
E all'interno di bin mettere l'eseguibile. Questo è per un caso semplice con un eseguibile.
All'interno della dir padre devi dare il makepkg come ti è stato suggerito, e ti viene creato il pacchetto.
A parte la directory "install" che potrai creare o meno, devi ricreare una struttura ad albero che ricalchi la /, per le directory utili.
Per esempio hello_world.c compilato produrrà un hello_world binario (o comunque lo vorrai chiamare), che presumibilmente tu vorrai che sia installato nella directory degli eseguibili della tua distro, tipo /bin /sbin /usr/bin ecc. Vedi tu.
A quel punto, mettiamo tu scelga /usr/bin, la struttura da craere sarà:
dir_padre(nome qualsiasi che scegli tu)
|_ usr
|_ bin
E all'interno di bin mettere l'eseguibile. Questo è per un caso semplice con un eseguibile.
All'interno della dir padre devi dare il makepkg come ti è stato suggerito, e ti viene creato il pacchetto.
-
- Linux 0.x
- Messaggi: 30
- Iscritto il: ven mar 30, 2012 18:13
- Slackware: 13.37
- Kernel: 3.0.4
- Desktop: XFCE4
Re: Come creare un pacchetto partendo da un mio programma?
hashbang ha scritto:Per gli eseguibili:Codice: Seleziona tutto
# mkdir -p pkg
# install -Dm 755 eseguibile pkg/path/che/ti/serve
Per tutto il resto (come le pagine di man):Codice: Seleziona tutto
# install -Dm 644 file pkg/path/che/ti/serve
Copia la documentazione (se ne hai scritta), come la licenza:Codice: Seleziona tutto
mkdir -p pkg/usr/doc/nomeapplicazione-versione
cp -a TXT1 TXT2... pkg/*usr/doc/nomeapplicazione-version
*Do per scontato che usi /usr come prefix. Qualora così non fosse, adatta il comando al path desiderato.
Strip dei binari (se lo hai già fatto, puoi anche evitare)Codice: Seleziona tutto
strip pkg/percorso/dei/binari/*
Copia lo slack-desc (non è obbligatorio. Se non lo farai, però, non avrai la descrizione del pacchetto durante la sua installazione)Codice: Seleziona tutto
mkdir -p pkg/install
cp slack-desc pkg/install
Setta il proprietario e crea il pacchettoCodice: Seleziona tutto
cd pkg
chown -R root:root .
makepkg -l y -c n /path/che/vuoi/nomepacchetto-versione-architettura-*NumeroCompilazioniTag.txz
*Se stai creando il pacchetto per la prima volta, il NumeroCompilazioni settalo ad 1, come Tag inserisci le tue iniziali o il tuo alias.
Questo è quanto.
Se vuoi invece usare lo SlackBuild (che altro non è che uno script che racchiude i comandi da me dati), puoi guardare qui, dove troverai anche un template per lo slack-desc, qualora lo volessi creare.
Ho fatto come hai detto nel primo passaggio ma non ha scaturito alcun txz ! Se non fosse ancora chiaro io quello che voglio fare è partire da un eseguibile ed arrivare ad un pacchetto txz installabile con installpkg !
Poi non ho capito da dove prendi il file "slack-desc".
Codice: Seleziona tutto
makepkg -l y -c n /path/che/vuoi/nomepacchetto-versione-architettura-*NumeroCompilazioniTag.txz
e questo passaggio, da dove lo prendi quel txz?
- d4z_c0nf
- Packager
- Messaggi: 1296
- Iscritto il: mar mar 14, 2006 18:07
- Nome Cognome: Rocco Aliberti
- Slackware: 14.2-current64
- Kernel: 4.14.73
- Desktop: awesomeWM
- Località: Pinerolo
Re: Come creare un pacchetto partendo da un mio programma?
Non lo prendi LO CREI (!) con makepkg. Quel comando serve appunto a creare un pacchetto txz.
Edit.
Dici che non capisci dove prende slack-desc. Forse hai pensato che "il non obbligatario" era riferito al copiarlo, invece è riferito proprio al file.
Quando installi un pacchetto tipico della slackware ti stampa una descrizione del pacchetto, quella descrizione è contenuta nello slack-desc.
Tra le varie guide nel wiki di questo sito trovi anche delle linee guida sulla realizzazione dello slack-desc.
Edit.
Dici che non capisci dove prende slack-desc. Forse hai pensato che "il non obbligatario" era riferito al copiarlo, invece è riferito proprio al file.
Quando installi un pacchetto tipico della slackware ti stampa una descrizione del pacchetto, quella descrizione è contenuta nello slack-desc.
Tra le varie guide nel wiki di questo sito trovi anche delle linee guida sulla realizzazione dello slack-desc.
Ultima modifica di d4z_c0nf il mar apr 03, 2012 14:30, modificato 1 volta in totale.
-
- Linux 0.x
- Messaggi: 30
- Iscritto il: ven mar 30, 2012 18:13
- Slackware: 13.37
- Kernel: 3.0.4
- Desktop: XFCE4
Re: Come creare un pacchetto partendo da un mio programma?
Ringrazio tutti finalmente ci sto "capendo" qualcosa ! 
