Autore Topic: CCR e ccr  (Letto 1693 volte)

Offline andreazube

  • *
  • Post: 1595
  • Reputazione: 64
  • I AM THE INTERSECT
    • Mostra profilo
    • Lupo mannaro
CCR e ccr
« il: 18 Marzo 2013 ore 12:33 »

Scopo:
Conoscere CCR e far usare al meglio il tool ccr
Prerequisiti: ccr, base-devel (installati di default)
Tempo necessario: 10 minuti


Cos'è CCR

CCR è un repository (una specie di "archivio" virtuale) della comunità, gestito dagli utenti, come indica il nome stesso: CCR sta per Chakra Community Repoository.

I repository di Chakra sono molto grandi, ma purtroppo non contengono proprio tutto, per esempio non contengono (per scelta) programmi scritti in GTK (le librerie di GNOME). È stato quindi creato un repository, CCR che viene gestito dagli utenti, dove gli utenti caricano qualsiasi software desiderino (anche i programmi in GTK).
Bisogna ricordare, però che i software presenti su CCR non sono ufficialmente supportati, quindi installateli a vostro rischio e pericolo.

Come vengono gestiti i CCR

Quando un utente carica un pacchetto su CCR, non carica un eseguibile, ma un speciale file .src.tar.xz e diventa il manteiner di questo pacchetto, che deve quindi "mantenere" per assicurare che sia sempre aggiornato e che funzioni correttamente su Chakra. Da questo derivano due cose:
  •   L'utente che installa un CCR, non può semplicemente scaricare il pacchetto .pkg.tar.xz, come avviene nei repository normali, ma deve compilare il pacchetto. Ha quindi la possibilità di modificare uno speciale file chiamato PKGBUILD, che contiene le istruzioni per la compilazione
  • Se un manteiner abbandona un pacchetto, questo diventa "orfano", e quindi non viene più aggiornato finchè non trova un nuovo manteiner che lo "adotta". Chiunque sia registrato sul sito di CCR, può adottare un pacchetto.

Questa è solo una breve e generale introduzione. Per altre informazioni su CCR, consiglio di visitare questa guida, che spiega come caricare pacchetti su CCR. Nello stesso blog, troverete anche una guida per mantenere un pacchetto su CCR.

Ma quello che mi interessa maggiormente, è spiegare come installare i pacchetti presenti su CCR

Come installare pacchetti da CCR

Installare pacchetti da CCR è molto semplice, e non c'è bisogno di aprire un browser: basta il terminale e un comodo tool chiamato ccr (in minuscolo)

La sintassi è molto semplice:

Codice: [Seleziona]
ccr [operazione] [opzione] pacchetto
[operazione]
Ci sono varie possibili operazioni, ma le più importanti sono 3: S, Syu e Si

L'operazione-S (ccr -S nome_pacchetto) serve per dire al tool di installare il pacchetto che segue. Attenzione al nome del pacchetto, che deve essere esatto.

L'operazione -Syu (ccr -Syu) aggiorna tutti i pacchetti, prima quelli disponibili nei repository ufficiali e successivamente i pacchetti presenti su CCR. Personalmente consiglio comunque di aggiornare i pacchetti presenti nei repository ufficiali con pacman, dando quindi prima sudo pacman -Syu e poi ccr -Syu. È anche possibile aggiornare solamente i pacchetti presenti in CCR tramite l'opzione --ccronly (descritta sotto)

L'operazione -Si, (ccr -Si nome_pacchetto) infine, serve per visualizzare informazioni su un pacchetto. Prendiamo per esempio "firefox".  Dando ccr -Si firefox, otteniamo
Codice: [Seleziona]
Repository     : ccr
Name           : firefox
Version        : 19.0.2-1
URL            : http://www.mozilla.org/projects/firefox
Licenses       : MPL GPL LGPL
Groups         : None
Provides       : firefox=19.0.2
Depends On     : gtk2 libnotify alsa-lib gstreamer0.10 gstreamer0.10-base libxt
Make Depends   :
Optional Deps  : None
Conflicts With : firefox
Replaces       : None
Architecture   : x86_64
Description    : Standalone web browser from mozilla.org


Se non si mette nessuna operazione (ccr nome_pacchetto), ccr eseguirà in automatico una ricerca, e permetterà anche di installare uno o più pacchetti. Prendendo sempre come esempio Firefox, basta dare ccr firefox per ottenere

Codice: [Seleziona]
0 apps/kdeplasma-addons-runners-browsefirefoxbookmarks 0.2.1-2
      A Plasma Runner that matches Firefox's bookmarks.
1 ccr/firefox-beta 20.0b5-1
    Standalone web browser from mozilla.org, beta build binaries.
2 ccr/icecat 12.0-1
    GNU version of the Firefox browser
3 ccr/mozplugger 1.14.6-1
    A Mozilla & Firefox multimedia plugin.
4 ccr/netflix-desktop 0.6.2-1
    An automated script for viewing Netflix through Firefox and patched WINE
5 ccr/sandfox 1.0.10-1
    Runs Firefox and other apps in a sandbox with limited access to the filesystem
6 ccr/firefox-raismth 3.0.3-1
    Rai.tv live channels, vod and replay contents w/o *light (Silverlight/Moonlight)
7 ccr/appmenu-firefox-bzr 20130226-1
    Global dbusmenu/appmenu extension for Firefox/Thunderbird
8 ccr/appmenu-firefox 3.7.1-1
    Provides appmenu support for Firefox.
9 ccr/dockmanager-kde_and_extra 0.9.14-1
    Dockmanager scripts for: dolphin, konsole, firefox, kopete, akonadi, krdc, kate, clementine, amarok, rekonq, konqueror, chromium, chrome and last.fm
10 ccr/firefox-nightly 22.0a1-1
    Standalone web browser from mozilla.org, nightly build
11 ccr/firefox-aurora 19.0a2-latest
    Firefox Aurora channel - Nightly build
12 ccr/kdeplasma-runners-firefoxbookmarks 0.2.4-2
    A runner that integrates mozilla firefox bookmarks into krunner
13 ccr/firefox 19.0.2-1
    Standalone web browser from mozilla.org
14 ccr/firefox-oxygen-kde 4.0_b2-1
    Complete add-on/theme bringing the Oxygen style for Firefox.
15 ccr/firefox-kde-opensuse 19.0.2-1
    Standalone web browser from mozilla.org with OpenSUSE patch, integrate better with KDE

Type numbers to install. Separate each number with a space.
Numbers:
Guardiamo un attimo come vengono presentati i risultati. Troviamo per prima cosa un  numero, poi il nome del repository, poi il nome del pacchetto col suo numero di versione, e infine, alla riga successiva, una breve descrizione del pacchetto.

Se ad esempio volessi installar i  pacchetti "firefox" e "sandfox", dovrei digitare il numero 5, lasciare uno spazio, il numero 13, in questo modo:

Codice: [Seleziona]
Type numbers to install. Separate each number with a space.
Numbers:  5 13

Se invece sapessi già che il pacchetto si chiama firefox, mi sarebbe bastato un semplice

Codice: [Seleziona]
ccr -S firefoxe l'installazione di firefox sarebbe partita subito.

Si noti che ccr può installare pacchetti sia da CCR che da repository ufficiali, e naturalmente si occupa anche delle dipendenze.
Inoltre, come accennato prima, installando da CCR si ha la possibilità di modificare i file di installazione dei pacchetti. Vediamo le prime righe mostrate a schermo quando tentiamo di installare con ccr, in questo esempio cercherò di installare un plugin per gimp.

Codice: [Seleziona]
ccr -S gimp-plugin-lqr

Ccr Targets    (1): gimp-plugin-lqr

Proceed with installation? [Y/n] y
uRL: http://chakra-linux.org/ccr/packages/gi/gimp-plugin-lqr/gimp-plugin-lqr.tar.gz
Edit gimp-plugin-lqr PKGBUILD with $EDITOR? [Y/n] n
==> Creazione del pacchetto: gimp-plugin-lqr 0.7.1-4 (lun 18 mar 2013, 11.48.06, CET)
==> Controllo delle dipendenze durante l'avvio in corso...
==> Controllo delle dipendenze durante la compilazione in corso...
==> Download dei sorgenti in corso...
  -> Download di gimp-lqr-plugin-0.7.1.tar.bz2 in corso...
...
Come potete vedere, verrà chiesta per prima cosa la conferma di voler installare, quindi ci verrà chiesto se desideriamo visionare o modificare il PKGBUILD: soltanto dopo partirà l'installazione vera e propria.

Ora, l'editor di testi predefinito per il nostro terminale è "vim", un editor molto potente ma di certo non molto intuitivo. Per modificare l'editor predefinito, basta modificare il file ~/.bashrc

È sufficente modificare questa riga
Codice: [Seleziona]
export EDITOR=vimmettendo un editor a scelta, ad esempio "nano" o "kate" al posti di "vim"

[opzione]

Mettere una o più opzioni non è obbligatorio, ma le opzioni permettono di migliorare il vostro uso di ccr.

Le opzioni più diffuse sono

--noconfirm, che permette di bypassare tutte le richieste di conferma.
--noedit, che permette di bypassare le richieste di conferma relative alla modifica dei file
--ccronly che limita l'uso di ccr solo a CCR e non anche ai repo ufficiali. È utile in combinazione con ccr -Syu, in modo da aggiornare solo i pacchetti presenti su CCR

Vediamo ora tre esempi, tutti con firefox

Codice: [Seleziona]
ccr -S firefox

Ccr Targets    (1): firefox

Proceed with installation? [Y/n] y
uRL: http://chakra-linux.org/ccr/packages/fi/firefox/firefox.tar.gz
Edit firefox PKGBUILD with $EDITOR? [Y/n] n
==> Creazione del pacchetto: firefox 19.0.2-1 (lun 18 mar 2013, 12.25.48, CET)
....
Come vedete, qui sopra non ho usato nessuna opzione, e mi è stata quindi data la possibilità di modificare il PKGBUILD. Inoltre, mi è stata chiesta la conferma per cominciare l'installazione.
Codice: [Seleziona]
ccr -S --noedit firefox

Ccr Targets    (1): firefox

Proceed with installation? [Y/n] y
==> Creazione del pacchetto: firefox 19.0.2-1 (lun 18 mar 2013, 12.27.12, CET)
...

Qui invece ho usato l'opzione --noedit, in questo modo il sistema mi ha chiesto la conferma per iniziare l'installazione ma non mi ha chiesto di modificare il PKGBUILD

Codice: [Seleziona]
ccr -S --noconfirm firefox

Ccr Targets    (1): firefox

Proceed with installation? [Y/n]
==> Creazione del pacchetto: firefox 19.0.2-1 (lun 18 mar 2013, 12.28.26, CET)
...

In questo ultimo esempio, infine, ho  usato l'opzione --noconfirm: di conseguenza (anche se quella richiesta di conferma "inattiva" possa confondere), non mi è stato chiesto niente, difatti l'installazione è partita subito dopo aver lanciato il comando.



Per ulteriori informazioni su ccr, consultate il relativo manuale tramite il comando
Codice: [Seleziona]
man ccroppure lanciate
Codice: [Seleziona]
ccr -h

 

Template by Homey | Sito ufficiale | Disclaimer