Linux Mind Italia

  • Lunedì 19 Novembre 2018, 10:50:41
  • Benvenuto, Visitatore
Effettua l'accesso o una nuova registrazione.

Inserisci il nome utente, la password e la durata della sessione.
Ricerca avanzata

News:

Canale Telegram di linuxminditalia !? Leggi qui !!!

collapse

* Canale Telegram

Canale informativo di riserva:
Linuxminditalia
https://t.me/linuxmind

* Mind-chat

Refresh History
  • nessuno: :ciao:
    Ieri alle 09:39:29
  • Pope: :ciao:
    Venerdì 16 Novembre 2018, 15:42:05
  • Pope: :ciao:
    Venerdì 16 Novembre 2018, 15:41:56
  • cuzzo: bau
    Giovedì 15 Novembre 2018, 17:27:26
  • bobol: :ok:
    Giovedì 15 Novembre 2018, 13:02:55
  • Tony: [link]
    Giovedì 15 Novembre 2018, 08:42:37
  • cuzzo: noche
    Mercoledì 14 Novembre 2018, 22:28:10
  • cuzzo: aloa
    Mercoledì 14 Novembre 2018, 18:45:56
  • Tony: :ciao:
    Mercoledì 14 Novembre 2018, 15:38:05
  • bobol: :ciao:
    Mercoledì 14 Novembre 2018, 15:32:16
  • Cavaleri Omar: :sigh: :sigh: :sigh:
    Lunedì 12 Novembre 2018, 20:53:06
  • mtj-mint: [link]    sigh, addio caro Stan. Peter Parker è orfano :(
    Lunedì 12 Novembre 2018, 20:17:06
  • bobol: :ciao:
    Sabato 10 Novembre 2018, 22:43:43
  • SupertuxKart: Senza lo spazio non appare l'emoticon, ciao a tutti comunque.
    Sabato 10 Novembre 2018, 22:28:48
  • SupertuxKart: :ciao: bob
    Sabato 10 Novembre 2018, 22:28:12
  • SupertuxKart: :ciao:bob
    Sabato 10 Novembre 2018, 22:27:33
  • bobol: :ciao:
    Sabato 10 Novembre 2018, 10:42:30
  • mtj-mint: E i vari Asterix e Lucky Luke e i vari Grinch, Scrooge, Babbo Bastardo, il segreto del Natale etc etc...
    Venerdì 09 Novembre 2018, 22:52:04
  • mtj-mint: Ah no spè.. c'è anche The Bliues Brothers
    Venerdì 09 Novembre 2018, 22:50:36
  • mtj-mint: E dopo 6 giorni tocca a Frankeinstein Jr e The Rocky Horror Picture Show :D
    Venerdì 09 Novembre 2018, 22:50:10
  • Cavaleri Omar: ... il Natale si avvicina..
    Venerdì 09 Novembre 2018, 15:14:41
  • Cavaleri Omar: Mancano meno di 50 giorni a "Una poltrona per due"...
    Venerdì 09 Novembre 2018, 15:11:59
  • nessuno: :ciao:
    Venerdì 09 Novembre 2018, 11:25:05
  • Cavaleri Omar: Può darsi... :rofl:
    Sabato 03 Novembre 2018, 11:32:18
  • nessuno: ... Perché è cicciottello e in una poltrona per uno ci va stretto?  :grin:
    Venerdì 02 Novembre 2018, 21:59:19
  • bobol: ;D
    Venerdì 02 Novembre 2018, 19:34:36
  • mtj-mint: Bè è come dire che a Natale non nasce Gesù Bambino se non trasmettono Una poltrona per due :D
    Venerdì 02 Novembre 2018, 19:19:23
  • bobol: :ciao:
    Venerdì 02 Novembre 2018, 07:23:07
  • Cavaleri Omar: Che primo novembre sarebbe se un TV non danno di fila i due "La Famiglia Addams"?
    Giovedì 01 Novembre 2018, 18:26:26
  • TheBaron: :ciao:
    Giovedì 01 Novembre 2018, 02:29:00

* Utenti On Line

  • Dot Visitatori: 22
  • Dot Nascosti: 0
  • Dot Utenti: 1
  • Dot Utenti Online:

Autore Topic: La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]  (Letto 6780 volte)

nessuno

  • Jr. Mind
  • **
  • Offline Offline
  • Post: 239
  • Distro: Slackware 14.2 Xfce; Arch KDE
  • Nick
Re:La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]
« Risposta #75 il: Domenica 28 Ottobre 2018, 13:35:24 »

Codice: [Seleziona]
slackpkg info "nomepacchetto"
Codice: [Seleziona]
slackpkg search ...
Codice: [Seleziona]
slackpkg file search ...
Codice: [Seleziona]
slackpkg install ...
Codice: [Seleziona]
slackpkg remove

Questa è sostanzialmente la "parte" di cui parlavo.

Riguardo a Slurp io ci tengo moltissimo che rimanga così semplice, non a caso l'ho definito "slackpkg updates manager" (guarda il logo nella mia firma), il suo compito son gli updates . Per questo non ho neanche tentato di inserirci altro all'epoca.
L'idea era già allora quella di fare un secondo script/programma.

Tu però sentiti libero di modificare slurp a tuo piacimento, è sufficiente che lo chiami con un altro nome (possibilmente completamente diverso) per non confonderlo con l'originale. A me certamente non dispiace.

In ogni caso Slackpkg Kommander nascerà con questo nome e farà le operazioni che ho elencato più su,  anche se mi riservo di consultare prima le pagine man di slackpkg.

L'unica incognita è se tu vuoi farne parte, oppure no. Nel primo caso mi fa molto piacere, nel secondo me ne farò una ragione (...e lo farò da solo).

E' tutto più chiaro adesso?..  ;)

 :ciao:
Connesso
  

trigg

  • Sr. Mind
  • ****
  • Offline Offline
  • Post: 944
  • Distro: *Gentoo Xfce* ___ *Arch-Linux Mate* ___ *Slackware Kde* ___ *Mint Cinnamon64/Xfce32* ___ *CLD Plasma*
  • il sapere rende liberi
Re:La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]
« Risposta #76 il: Domenica 28 Ottobre 2018, 14:26:26 »

 1) Aggiorna Sistema ---->(comandi ,slackpkg update gpg ,slackpkg check-updates, slackpkg update , slackpkg upgrade-all )
 2) Configura slackpkg ----> (comandi , Configura slackpkplus ,Seleziona un Mirror, Edita la blacklist di slackpkg)
 3) Gestione Pacchetti ----> (comandi , slackpkg info ..., slackpkg search ..., slackpkg file-search ..., slackpkg install/remove .... , upgradepkg --install-new ...)
 4) Deb to txz
 5) Esci

fare un menu principale con i sub-menu dei comandi




Connesso
se hai paura di far domande...
                                             ...hai paura d'imparare
     ... non si finisce mai d'imparare...

nessuno

  • Jr. Mind
  • **
  • Offline Offline
  • Post: 239
  • Distro: Slackware 14.2 Xfce; Arch KDE
  • Nick
Re:La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]
« Risposta #77 il: Domenica 28 Ottobre 2018, 14:53:52 »


...Va bene. Ho capito. Lo farò da solo.

Riguardo a debtotxz già esiste: https://slackbuilds.org/repository/14.2/misc/deb2tgz/

Personalmente solo una volta ho convertito un deb in tgz, in genere preferisco compilarlo dai sorgenti, comunque è ritenuta una pratica sconsigliabile.
In ogni caso, quando anche io ne facessi un uso tale da dovermi preoccupare di velocizzare il procedimento, farei un'azione di thunar, che è molto più semplice e comoda da usare.

Aspetto di vedere lo script che c'è dietro la schermata che hai postato prima

P.S.

deb2tgz è anche lui basato su uno script, questo:

Codice: [Seleziona]
#!/bin/sh
# Copyright 2016 Vitor Borrego, Corroios, Portugal
# Heavily based on deb2tgz (https://code.google.com/archive/p/deb2tgz/) created by Marcos Henrique Esteves Barbosa
# 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.
#
CURRDIR=$(pwd)

if [ "$1" = "" ]; then
    echo "$0:  Converts DEB format to standard GNU tar + (GZ/XZ/LZ/BZ) format."
    echo "    (view converted packages with \"less\", install and remove"
    echo "    with \"installpkg\", \"removepkg\", \"pkgtool\", or manually"
    echo "    with \"tar\")"
    echo
    echo "Usage:    $0 <file.deb>"
    echo "    (Outputs \"file.t*z\")"
    exit 1;
fi

# Create a new temporary directory with a secure filename:
make_temp_dir()
{
    if [ -x "$(which mcookie)" ]; then
        tempd=/tmp/tmp.$(mcookie)
        mkdir -p -m 0755 $tempd
    elif [ -x "$(which openssl)" ]; then
        tempd=/tmp/tmp.$(dd if=/dev/urandom bs=1k count=1 2> /dev/null | openssl dgst -md5)
        mkdir -p -m 0755 $tempd
    elif [ -x "$(which md5)" ]; then
        tempd=/tmp/tmp.$(dd if=/dev/urandom bs=1k count=1 2> /dev/null | md5)
        mkdir -p -m 0755 $tempd
    elif [ -x "$(which mktemp)" ]; then
        tempd=$(mktemp -d)
        chmod 755 $tempd
    fi

    if [ -d $tempd ]; then # success, return the name of the directory:
        echo $tempd
    else
        echo "ERROR:  Could not find mcookie, openssl, or md5."
        echo "        Exiting since a secure temporary directory could not be made."
       exit 1
    fi
}

for debfile in $* ; do
    # Create a temporary directory:
    TMPDIR=$(make_temp_dir)

    # Extract the DEB:
    # Extract the file data.* from package $debfile
    cp $debfile $TMPDIR
    cd $TMPDIR
    ar x $debfile 2> /dev/null
    # echo $TMPDIR
    # ls $TMPDIR
    #mv $DATAFILE $TMPDIR
    if [ ! $? = 0 ]; then
        echo "ERROR:  ar failed. (maybe $debfile is not an DEB?)"
        rm -rf $TMPDIR
        continue
    fi

    # Repack the files in the right archive:
    if [ "`basename $0`" = "deb2tgz" ]; then
        if [ -f "$TMPDIR/data.tar.gz" ]
        then
          mv $TMPDIR/data.tar.gz $CURRDIR/$(basename $debfile .deb).tgz
        fi

        if [ -f "$TMPDIR/data.tar.xz" ]
        then
          mv $TMPDIR/data.tar.xz $CURRDIR/$(basename $debfile .deb).txz
        fi
 
        if [ -f "$TMPDIR/data.tar.bz2" ]
        then
          mv $TMPDIR/data.tar.bz2 $CURRDIR/$(basename $debfile .deb).tbz
        fi

        if [ -f "$TMPDIR/data.tar.lzma" ]
        then
          mv $TMPDIR/data.tar.lzma $CURRDIR/$(basename $debfile .deb).tlz
        fi
    fi

    # Remove temporary directory:
    rm -rf $TMPDIR
done
cd $CURRDIR

Connesso
  

trigg

  • Sr. Mind
  • ****
  • Offline Offline
  • Post: 944
  • Distro: *Gentoo Xfce* ___ *Arch-Linux Mate* ___ *Slackware Kde* ___ *Mint Cinnamon64/Xfce32* ___ *CLD Plasma*
  • il sapere rende liberi
Re:La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]
« Risposta #78 il: Lunedì 29 Ottobre 2018, 09:52:07 »

questa è la bozza dello script è solo da completare
seguendo i passaggi del ***************** Sub AS********************

Codice: [Seleziona]
#!/bin/bash
clear

# Controllo dei permessi di chi esegue lo script
#if [ "$EUID" -ne 0 ]
 # then echo "Eseguire lo script con i permessi di amministratore (su o sudo)"
  #exit
#fi

############## Opzioni per il menu ##########################

options=("Aggiorna Sistema" "Configura Slackpkg+" "Gestione Pacchetti" "Deb to Txz" "Esci")

################### subAS ######################

AS () {
echo "Seleziona il numero della tua scelta"
 AS=("Menu" "slackpkg update gpg " "slackpkg check-updates " "slackpkg update " "slackpkg install-new" "slackpkg upgrade-all "  )
PS3="> "
 select mopt in "${AS[@]}"
 do
     case $mopt in
"${AS[0]}") echo "Menu Principale"
break
    ;;
         "${AS[1]}") echo "slackpkg update gpg "
  slackpkg update gpg
REPLY=
        ;;
         "${AS[2]}")  echo "slackpkg check-updates "
  slackpkg check-updates
REPLY=
              ;;
         "${AS[3]}")  echo "slackpkg update "
  slackpkg update
REPLY=
              ;;
         "${AS[4]}")  echo "slackpkg install-new "
  slackpkg install-new
REPLY=
              ;;
         "${AS[5]}")  echo "slackpkg upgrade-all "
  slackpkg upgrade-all
REPLY=
              ;;


*) REPLY=
;;
     esac
 done
}

###################################### Sub CSP ############################

CSP () {
echo "Seleziona il numero della tua scelta"
 CSP=("Menu" )
PS3="> "
select mopt in "${CSP[@]}"
 do
     case $mopt in
"${CSP[0]}") echo echo "Menu Principale"
break
    ;;
*) REPLY=
;;
     esac
 done
}

########################### Gestione GP #################################

GP () {
echo "Seleziona il numero della tua scelta"
         GP=("Menu" )
PS3="> "
  select mopt in "${GP[@]}"
  do
     case $mopt in

"${GP[0]}") echo echo "Menu Principale"
break
    ;;
*) REPLY=
;;
     esac
 done
}

######################################### DTT ###############################

DTT () {
echo "Seleziona il numero della tua scelta"
         DTT=("Menu" )
PS3="> "
  select mopt in "${DTT[@]}"
  do
     case $mopt in

"${DTT[0]}") echo echo "Menu Principale"
break
    ;;
*) REPLY=
;;
     esac
 done
}


### Scrivi le altre funzioni
###
### Fine delle funzioni


# Il menu
clear
PS3="Inserisci valore : "
select opt in "${options[@]}"
    do
        case $opt in
            "${options[0]}")
                    clear
                    # Richiama la funzione "cerca" dichiarata precedentemente
                    AS
                    REPLY=
            ;;
            "${options[1]}")
                   CSP
                    REPLY=
            ;;
            "${options[2]}")
                   GP
                    REPLY=
            ;;
            "${options[3]}")
                   DTT
                    REPLY=
    ;;
            # Continua con le altre funzioni
            #
            "${options[-1]}") 
                    clear
                    exit
            ;;
        esac
    done
Connesso
se hai paura di far domande...
                                             ...hai paura d'imparare
     ... non si finisce mai d'imparare...

nessuno

  • Jr. Mind
  • **
  • Offline Offline
  • Post: 239
  • Distro: Slackware 14.2 Xfce; Arch KDE
  • Nick
Re:La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]
« Risposta #79 il: Lunedì 29 Ottobre 2018, 11:33:50 »

Non mi sembra neanche male come idea, certo non è ancora completato, è ancora parecchio in disordine, ma si può riordinare.

Se lo script lo fai solo per il tuo uso personale fallo pure come vuoi, tanto lo usi solo tu.

Se lo fai anche per gli altri considera questo consiglio: evita di aggiungerci debtotxz.

A parte che è assolutamente inutile, e lo dico da utente Slackware, ma è anche potenzialmente pericoloso se usato da chi non ha le idee chiare su Slackware prima e su quello che sta per fare immediatamente dopo.

Capisco che ormai l'hai fatto e sei "preso", come successe con le scorciatoie da tastiera: con le quali pretendevi di risolvere qualsiasi cosa, come se fosse semplice ricordarsele tutte, e per le quali rifiutasti di prendere in considerazione soluzioni più semplici e immediate. Una sorta di panacea...

La necessità di convertire un deb in txz è una cosa che torna utile così raramente (anche mai) che inserirla in uno script del genere, a parte i rischi che comporta per il sistema, corre anche il rischio di sottrarre spazio e visibilità a cose molto più utili e importanti.

Le mie considerazioni e le mie critiche vogliono essere costruttive, se non è così che le vedi basta farmelo sapere e io farò a meno di parlare la prossima volta. ;)
Connesso
  

trigg

  • Sr. Mind
  • ****
  • Offline Offline
  • Post: 944
  • Distro: *Gentoo Xfce* ___ *Arch-Linux Mate* ___ *Slackware Kde* ___ *Mint Cinnamon64/Xfce32* ___ *CLD Plasma*
  • il sapere rende liberi
Re:La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]
« Risposta #80 il: Lunedì 29 Ottobre 2018, 13:50:04 »

lo script non è in disordine è solo impostato

bisogna solo completarlo ed è aperto ad ogni possibile personalizzazione

diciamo che è è come il marmo di michelangelo bisogna solo togliere l'eccesso per realiare l'opera

questa bozza la si può fare liberamente come si vuole  :ciao:
Connesso
se hai paura di far domande...
                                             ...hai paura d'imparare
     ... non si finisce mai d'imparare...

nessuno

  • Jr. Mind
  • **
  • Offline Offline
  • Post: 239
  • Distro: Slackware 14.2 Xfce; Arch KDE
  • Nick
Re:La Fucina di @trigg: uno script per tutti gli usi - [Laboratorio per dilettanti]
« Risposta #81 il: Lunedì 29 Ottobre 2018, 15:41:49 »

Per "in disordine" intendevo questo:

Codice: [Seleziona]
Seleziona il numero della tua scelta
1) Menu     4) slackpkg update
2) slackpkg update gpg     5) slackpkg install-new
3) slackpkg check-updates   6) slackpkg upgrade-all
>

Converrai con me che la sequenza dei comandi non segue certamente un ordine logico, neanche coerente.

Però, come già sottolineavi tu, è solo un accenno...

Comunque quello che avevo in mente io erano script distinti, ognuno con il suo compito, richiamabili con una voce apposita all'interno degli altri script, ma eseguibili singolarmente a seconda dell'esigenza del momento e,
grazie alla pacchettizzazione di Slackware. installabili con un unico pacchetto.
Tra questi pacchetti che compongono la suite anche  un mini-manuale che chiarisse, in modo conciso, le funzioni e lo scopo dei comandi richiamabili dal programma.

Questo perché ci tengo in modo particolare che il tutto sia strettamente fedele alla filosofia K.I.S.S. così come la intende Slackware.
Questa per me è una condicio sine qua non. Vale a dire che se non lo posso fare così non mi interessa farlo.
Connesso