Autore Topic: [PSEUDOGUIDA] Aggiornare l'intero sistema  (Letto 1691 volte)

Offline barondem

  • *
  • Post: 75
  • Reputazione: 2
    • Mostra profilo
[PSEUDOGUIDA] Aggiornare l'intero sistema
« il: 30 Aprile 2014 ore 19:07 »
Ciao a tutti!
Per la prima volta (sperando di non fare più danni che bene  ;D) provo a dare il mio contributo alla community di chakra condividendo con voi un insulso scriptino per aggiornare con un solo clic (sa troppo di promessa da rappresentante di aspirapolvere? ;D) che mi sono scritto or ora... Non si sa mai che qualcuno (in attesa di Akabei, se e quando mai arriverà) prenda l'idea e ne tiri fuori qualcosa di fatto bene e completo (magari da mettere in ccr) invece di questa mezza str...amberia che ho fatto io  :)
Chiedo venia in anticipo se ci dovesse essere qualcosa di scorretto dato che la mia conoscenza di scripting bash è pressoché nulla! :-[

Ora veniamo a noi!
system-update
GUIDA
1) Scaricare i due file in allegato
2) Spostare il file "system-update" in /usr/bin e impostare i permessi rwxr-xr-x
3) Spostare il file "system-update.desktop" in /usr/share/applications e impostare i permessi rw-r--r--
4) Uscire e rientrare dalla sessione utente (non so se è necessario, ma se senza farlo il punto dopo non funziona, dovrebbe bastare fare questo)
5) Lanciare dal menu o da dove pare e piace l'applicazione "Aggiornamento del sistema" (si trova in "Sisterma")
6) Mettere la password a seconda della richiesta (dell'utente o di root) e andare a prendere un numero variabile di caffé a seconda del tempo da cui non si aggiorna il sistema

DESCRIZIONE
Lo script è composto di due file: lo script vero e proprio e un file .desktop per mostrare l'applicazione tra quelle installate.
Lo script molto semplicemente crea una cartella temporanea nascosta nella cartella utente (per evitare che si saturi la ram e la compilazione di ccr fallisca) e aggiorna sia i pacchetti di pacman sia quelli di ccr con il comando "ccr -Syu" usando la cartella temporanea creata prima per i file temporanei. Alla fine dell'aggiornamento, rimuove la cartella ed il suo contenuto (dovrebbe farlo anche se si interrompe l'aggiornamento con CTRL-C).
Cosa ci ho guadagnato? Non dover cercare ogni volta dalla cronologia di comandi il comando di ccr con le varie opzioni e una soluzione ancora più comoda e pigra di un alias in .bashrc dato che basta usare il mouse! ;D

Correzioni, suggerimenti, miglioramenti e riutilizzi sono benvenuti!  ;)
« Ultima modifica: 01 Maggio 2014 ore 17:54 da barondem »

Offline andreazube

  • *
  • Post: 1595
  • Reputazione: 64
  • I AM THE INTERSECT
    • Mostra profilo
    • Lupo mannaro
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #1 il: 30 Aprile 2014 ore 23:03 »
Purtroppo credo che questo script non sia utilizzabile, non tanto per il codice in se, ma proprio per "l'essenza", ti spiego perchè¹

Chakra ha un tipo di rilascio semi-rolling, cosa che le causa aggiornamenti molto frequenti.
Essendo una distro adatta anche ad utenti medi e non solo a quelli avanzati, normalmente gli aggiornamenti sono del tutto automatici, basta lanciare un comando.
Tuttavia, a volte non è proprio cosi. A volte capita che sia necessario dare un comando differente, per esempio può essere necessario aggiungere l'opzione --force, pena il mancato avvio del sistema al successivo boot. Per questo, abbiamo una sezione "notizie", che dovrebbe essere visitata periodicamente dagli utenti, dove vengono notificati gli aggiornamenti particolari e viene spiegato come eseguirli.

Il tuo script non contempla questi casi, e non può farlo, perlomeno non in modo semplice. Potrebbe andare bene e rendere un poco più comoda la situazione per un certo periodo di tempo, ma prima o poi potrebbe causare un malfunzionamento, quindi sconsiglio di usarlo.
Inoltre, si dovrebbe sempre verificare cosa si sta aggiornando, e controllare se ci sono errori o avverimenti alla fine dell'operazione, cosa che il tuo script non permette.

[spoiler]Per la cronaca, varie volte i dev hanno provato a preinstallare e/o inserire nei repository gestori grafici dei pacchetti, e ci sono sempre state polemiche proprio per questi motivi. Per un lunghissimo periodo, chakra poteva essere aggiornata solo da terminale, solo recentemente è arrivato oktopi, e anche lui non è stato accolto bene da tutti. Diciamo che la questione è un po' più complessa di quanto probabilmente pensavi  ;D[/spoiler]

¹ Al netto delle dispute via grafica/terminale


Sconsiglio a te o a chiunque altro di usare questo script, ma voglio comunque darti qualche suggerimento, magari per scrivere altri script (certo, io stesso sono un nabbo assurdo quindi i miei consigli forse non valgono molto  ;D )

- Hai messo una descrizione, ma non un titolo allo script. Il nome è fondamentale, anche per creare un pacchetto, ogni software deve avere un nome, anche provvisorio.

- Quando metti il tuo nome, dovresti aggiungere almeno un modo per contattarti, preferibilmente un indirizzo email, altrimenti serve a poco  ;)

- Anche se lo script è molto piccolo, prendi in considerazione l'idea di commentare qualcosa

- Ti consiglio di aggiornare separatamente sistema standart (pacman -Syu) e CCR (ccr -Syu).

- Dovresti fare eseguire tutto in un emulatore di terminale (konsole) senza farlo chiudere, in modo che l'utente possa vedere eventuali messaggi di avvertimento od errore o comunque controllare cosa è stato aggiornato.

- Abbiamo uno strumento chiamato "mirror-check" che aiuta a rende più sicuri gli aggiornamenti. Dovresti usarlo prima di aggiornare il tuo sistema.

Nota: non ho visto il file .desktop e non ho eseguito lo script, ma solo letto.

Ciao  :)
« Ultima modifica: 30 Aprile 2014 ore 23:06 da andreazube »

Offline UnderTheGun

  • *
  • Post: 716
  • Reputazione: 69
  • [ Official Packager ]
    • Mostra profilo
    • kernel-CK repository
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #2 il: 01 Maggio 2014 ore 03:29 »
+1 per aver condiviso con noi ;)
e
+1 per il contributo :)

ma...detto ciò...SCONSIGLIO un pò a tutti di usarlo se non per fare dei test o capire come funziona uno script....e mica perchè non funziona!...ma perchè, come già detto da Andrea (io ho meno tempo - sarò più diretto, spero mi perdonerai) è SEMPRE BENE SEGUIRE OGNI AGGIORNAMENTO!  Vedere cosa si installa o per lo meno leggere eventuali output che richiedono l'intervento manuale da parte dell'utente.
Non volermi male :P

Io avrei un idea: se ti piace fare script, perchè non farlo per operazioni meno "complesse" e/o importanti?
Ad esempio: potrebbe far comodo uno script per pulire il sistema: file temporanei + cache di pacman (tenendo però l'ultima versione dei pacchetti installata) + etc etc....Mmmmh, che ne pensi?

Grazie ancora comunque per aver trovato il tempo di condividere questo tuo lavoro!

« Ultima modifica: 01 Maggio 2014 ore 03:37 da UnderTheGun »

Kernel ottimizzati per Chakra
*Kernel CK - Kernel PF*

Offline barondem

  • *
  • Post: 75
  • Reputazione: 2
    • Mostra profilo
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #3 il: 01 Maggio 2014 ore 17:52 »
Ehm forse dalla descrizione sembra un po' pompato, ma in realtà lo script non fa altro che aprire una Konsole e digitare
Codice: [Seleziona]
ccr -Syu --noedit --noconfirmquindi buona parte delle criticità dovrebbero essere risolte... E comunque io l'ho scritto (e ho intenzione di usarlo) per gli aggiornamenti "facili", quelli senza grande intervento manuale, tutt'al più qualche richiesta di sostituzione dei pacchetti, quindi resta sottinteso che uno deve andarsi a leggere se ci sono interventi particolari e bla bla bla... La sua utilità sarebbe quella di non dover scrivere il comando a mano, oltre al fatto che crea e imposta da solo una directory temporanea e la elimina alla fine (non in /tmp dato che se si compilano pacchetti pesanti la mezza ram di default può non bastare) e non ho creato un alias perché se no con il lanciatore bisticciava un po'...
Quindi vorrebbe essere tutt'altro che un sostituto del cervello e della lettura... E comunque il terminale lo apre e mostra tutto, come fa oktopi...
Io penso che lo userò quando non ci sono problemi particolari, ad esempio l'ho usato ieri per aggiornare da KDE 4.12.4 a 4.13.0 e non mi sembra ci siano stati problemi...
Diciamo che per gli altri script ci penserò quando avrò un po' di tempo, cioè non ne ho la più pallida idea  ;D
In ogni caso se ne dovesse uscire fuori qualcosa ve lo farò sapere!  :)
« Ultima modifica: 01 Maggio 2014 ore 17:55 da barondem »

Offline andreazube

  • *
  • Post: 1595
  • Reputazione: 64
  • I AM THE INTERSECT
    • Mostra profilo
    • Lupo mannaro
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #4 il: 01 Maggio 2014 ore 18:15 »
Ehm forse dalla descrizione sembra un po' pompato, ma in realtà lo script non fa altro che aprire una Konsole e digitare
Codice: [Seleziona]
ccr -Syu --noedit --noconfirmquindi buona parte delle criticità dovrebbero essere risolte...

Fin li c'erano arrivati tutti  ;D Ed infatti ti avevo consigliato di aggiornare separatamente sistema normale e pacchetti presi da CCR.
Ma... criticità risolte? quali?

Citazione
E comunque io l'ho scritto (e ho intenzione di usarlo) per gli aggiornamenti "facili", quelli senza grande intervento manuale, tutt'al più qualche richiesta di sostituzione dei pacchetti, quindi resta sottinteso che uno deve andarsi a leggere se ci sono interventi particolari e bla bla bla... La sua utilità sarebbe quella di non dover scrivere il comando a mano, oltre al fatto che crea e imposta da solo una directory temporanea e la elimina alla fine (non in /tmp dato che se si compilano pacchetti pesanti la mezza ram di default può non bastare) e non ho creato un alias perché se no con il lanciatore bisticciava un po'...

Se intendi comunque controllare le notizie e usarlo solo per aggiornamenti standart... ok, anche se non ne vedo l'utilità (--noedit e --noconfirm sono due opzioni brevi a scrivere e facili da ricordare, e come dici tu stesso basta un alias).

Un alias che "bisticcia" col lanciatore?
Un alias lo esegui dal terminale, come fa ad interferire col lanciatore?


Tra parentesi, una cosa che mi è venuta in  mente: non uso oktopi, come si fa ad aggiornare? Perchè effettivamente se basta premere un tasto come succede in genere nei gestori grafici dei pacchetti, allora oktopi "incorpora" anche il tuo script  :)

Offline barondem

  • *
  • Post: 75
  • Reputazione: 2
    • Mostra profilo
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #5 il: 04 Maggio 2014 ore 14:12 »
Fin li c'erano arrivati tutti  ;D Ed infatti ti avevo consigliato di aggiornare separatamente sistema normale e pacchetti presi da CCR.
Ma... criticità risolte? quali?

Il fatto che non aprisse il terminale e non facesse vedere che succede XD

per l'alias mi dava problemi nel senso che io volevo fare un lanciatore che lanciasse il comando dell'alias ma non me lo rilevava (e poi non so se a un alias si può far corrispondere una serie di comandi) quindi per far prima ho fatto uno script...

Per oktopi, sì, ha un tasto per sincronizzare il database e se ci sono aggiornamenti, ne ha un altro per aggiornare tutto... Tutto tranne ccr, ecco perché lo script...
Per concludere, perché non è consigliabile aggiornare pacman e ccr tutto insieme? Perché esiste ccr -Syu allora?

giannifur

Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #6 il: 04 Maggio 2014 ore 20:28 »
Ciao non uso Chakra attualmente ma arch e per aggiornare non uso octopi ma bensì un alias:
alias aggiorna='sudo pacman -Syu && aurget -Syu'
In pratica è quello che usavo quando usavo Chakra tranne che usare aurget usavo ccr, le opzioni --noedit può anche andare bene così non mi serve rispondere alla richiesta di vedere il pkbuild del pacchetto ma il --noconfirm sai cosa può significare per il tuo sistema?Guardare il terminale che esegue una cosa che non hai controllato precedentemente,e non puoi neanche fermarlo!

Offline alex

  • *
  • Post: 192
  • Reputazione: 4
    • Mostra profilo
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #7 il: 05 Maggio 2014 ore 14:42 »
Credevo che non ci fosse differenza tra usare "sudo pacman -Syu" o "ccr -Syu", a parte chiaramente il fatto che ccr aggiorna anche i relativi pacchetti. Forse potrebbero esserci problemi causati dall'ordine degli aggiornamenti? tipo un pacchetto in ccr prima che siano stati aggiornati quelli standard?

Per lo scrivere il comando non è un gran problema, di solito basta qualche colpo di freccia per scorrere la cronologia  ;D ma io non uso poi molto il terminale e uso quasi sempre gli stessi comandi... 

Offline UnderTheGun

  • *
  • Post: 716
  • Reputazione: 69
  • [ Official Packager ]
    • Mostra profilo
    • kernel-CK repository
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #8 il: 06 Maggio 2014 ore 00:59 »
Ciao non uso Chakra attualmente ma arch e per aggiornare non uso octopi ma bensì un alias:
alias aggiorna='sudo pacman -Syu && aurget -Syu'
In pratica è quello che usavo quando usavo Chakra tranne che usare aurget usavo ccr, le opzioni --noedit può anche andare bene così non mi serve rispondere alla richiesta di vedere il pkbuild del pacchetto ma il --noconfirm sai cosa può significare per il tuo sistema?Guardare il terminale che esegue una cosa che non hai controllato precedentemente,e non puoi neanche fermarlo!

Quoto. Attenzione!

Kernel ottimizzati per Chakra
*Kernel CK - Kernel PF*

Offline barondem

  • *
  • Post: 75
  • Reputazione: 2
    • Mostra profilo
Re:[PSEUDOGUIDA] Aggiornare l'intero sistema
« Risposta #9 il: 17 Maggio 2014 ore 14:38 »
Beh, c'è sempre CTRL+C ;D

 

Template by Homey | Sito ufficiale | Disclaimer