Come si creano le app Android — Linux Day 2016

Il 22 ottobre si è svolto il Linux Day 2016 in tutta Italia. Come ormai faccio da anni, ho partecipato all’organizzazione di quello di Bassano del Grappa (VI) assieme a GrappaLUG.

Il Linux Day è un evento fantastico per vari motivi: è gratuito, si trova in decine di città in tutto il paese, e consente alle persone di avvicinarsi a Linux e conoscere varie tematiche relative al mondo del software libero.

Quest’anno ho deciso di proporre un talk basato essenzialmente sul mio lavoro, parlando dello sviluppo di app per Android, il quale è un sistema operativo basato su Linux, perciò eravamo pienamente in tema. 🙂

Di seguito potete vedere la registrazione del talk e le slide su SlideShare. Se volete scaricarle, le trovate sul sito del GrappaLUG. Naturalmente fatemi sapere se avete qualche domanda o dubbio. Buona visione!

Annunci

Sbloccare i siti di streaming legale senza VPN con UnoTelly

Mi è stato proposto di provare UnoTelly, un servizio di SmartDNS e VPN commerciale. In particolare, questo articolo riporta la mia opinione obiettiva e imparziale sui due servizi. Mi sono focalizzato soprattutto sul servizio UnoDNS e un po’ meno su UnoVPN.

Accesso senza VPN con UnoDNS

UnoDNS è un servizio che permette di accedere ai siti web bypassando le restrizioni geografiche. Permette quindi di collegarsi a dei siti web di streaming legale specialmente in lingua inglese: Hulu, BBC iPlayer, CBS, e molti altri. A questi si aggiungono i siti di varie emittenti di varie nazioni, come ad esempio Italia, Francia, Germania, Danimarca, eccetera.

Essendo basato sugli SmartDNS, il servizio consente di sbloccare contemporaneamente tutti i siti supportati, indipendentemente dal paese per cui sono abilitati. I server DNS di UnoTelly si occupano di farci apparire come navigatori del paese più adeguato il minimo indispensabile per accedere al sito, mentre il resto del traffico non viene dirottato.

Hulu_UnoTelly
Accesso immediato ad Hulu.com tramite UnoDNS

Questo tipo di scelta ha due vantaggi rispetto alle “classiche” VPN. Il primo riguarda la velocità di navigazione: i servizi VPN non sempre sono efficienti e possono rallentare la velocità. Questo è un problema specialmente per i video. L’altro vantaggio riguarda il supporto a diversi dispositivi: qualsiasi apparecchio collegato a Internet consente di impostare dei server DNS, quindi non è necessario che supporti le VPN.

Impostando i DNS nel router, inoltre, si attivano automaticamente tutti i dispositivi della rete di casa. Questo significa sbloccare computer, smartphone, tablet, console, set-top box con Android e molto altro.

Una funzione particolare di UnoDNS è chiamata Dynamo: permette di scegliere quale nazione preferire per alcuni servizi. Un esempio molto conosciuto è Netflix, che è disponibile (con programmi diversi) in diverse nazioni. Dato che Netflix consente ai clienti di viaggiare usando lo stesso account, è possibile abbonarsi a Netflix con account USA e poi impostare Dynamo per sbloccare i programmi nel Regno Unito, cambiando la scelta ogni volta lo si desideri.

La mia valutazione

Ho provato UnoDNS con diversi siti. L’attivazione è molto semplice e il sito di UnoTelly contiene un wizard che spiega i semplici passi da eseguire. Si tratta solo di attivare i DNS e, se si ha un IP dinamico, periodicamente è necessario premere il pulsante Update IP sul sito di UnoTelly. È possibile anche configurare l’aggiornamento automatico dell’IP.

Ho verificato il perfetto funzionamento del servizio su Hulu, BBC iPlayer e CBS.

Poi ho testato un canale francese, France 3, e il risultato non è stato ugualmente soddisfacente. Il servizio infatti non è riuscito a consentire l’accesso, anche se il canale risulta tra gli oltre 350 siti supportati:

Errore di accesso sul sito di France 3
Errore di accesso sul sito di France 3

Va detto, per correttezza, che il sito contiene una sezione dedicata alla richiesta di aggiunta di nuovi canali e sicuramente è possibile segnalare questo tipo di problemi.

Complessivamente ho avuto comunque un’impressione molto positiva, specialmente per le caratteristiche del servizio DNS (velocità e compatibilità) e l’opzione Dynamo. Pertanto, considerando diversi fattori, si ottiene questo risultato:

  • Facilità d’uso: 9/10
  • Velocità: 10/10
  • Compatibilità con i dispositivi: 10/10
  • Supporto ai canali: 8/10
  • Totale: 9/10

Navigazione protetta con UnoVPN

UnoTelly propone anche un piano comprensivo sia di UnoDNS che di accesso VPN, ovviamente a un prezzo più alto. Le località VPN consentite sono: Stati Uniti, Regno Unito, Paesi Bassi, Canada e Germania.

Come ho già scritto in passato, le VPN sono un modo ormai “classico” e funzionale per accedere a siti web con restrizioni geografiche. Nella pratica, ci si collega a un server posizionato in un determinato paese e tutto il traffico web viene dirottato lì, “uscendo” su Internet con un indirizzo IP situato nella nazione in cui si trova il server.

Oltre al fatto di essere dirottato, il traffico viene anche criptato, diventando illeggibile a chi si trova tra il nostro computer e il server della VPN. Questo è leggermente meno comodo per vedere video su siti di diversi paesi, in quanto bisogna connettersi alla VPN giusta di volta in volta. Tuttavia ha un grande vantaggio in termini di privacy.

Con una buona VPN, è possibile navigare tranquillamente senza temere intercettazioni illegali o registrazioni del traffico da parte di malintenzionati o governi oppressivi. Questo vale anche in luoghi con un livello di sicurezza bassissimo, per esempio quando si usa il Wi-Fi gratuito all’interno di un locale pubblico.

Quando si sceglie un provider VPN, specialmente per questioni di privacy, è importante verificare quale sia la policy riguardo ai log (registrazioni) del traffico effettuato e la giurisdizione in cui si trova. Per motivi che sono noti a tutti, andrebbero evitati i provider basati negli Stati Uniti. UnoTelly è fornito da Unovation Inc., un’azienda che si trova in Canada e ha una privacy policy abbastanza buona.

Bisogna considerare anche i protocolli offerti. Le informazioni fornite su UnoVPN consigliano agli utenti di usare PPTP. Se lo scopo è avere più velocità per i video può anche andare, ma se l’obiettivo è la privacy non ci siamo. Molto meglio OpenVPN, il quale viene offerto ma in modalità “sperimentale”:

If our regular PPTP VPN works for you, please continue to use that instead. OpenVPN is still in BETA and we are still ironing out the wrinkles. PPTP VPN is also generally faster than OpenVPN.

La mia valutazione

A prima vista, ero convinto che anche il servizio UnoVPN fosse orientato a sbloccare l’accesso dei video online. Purtroppo però mi sono dovuto ricredere. Usando il server USA non sono riuscito a sbloccare neppure Hulu:

Malfunzionamento di Hulu con la VPN statunitense
Malfunzionamento di Hulu con la VPN statunitense

Per il resto, UnoVPN si comporta come molte altre VPN, senza meriti speciali. Ovviamente i fattori da considerare sono un po’ diversi rispetto ai DNS, e il risultato è:

  • Facilità d’uso: 8/10
  • Protocolli supportati: 4/10
  • Supporto canali e nazioni: 2/10
  • Giurisdizione canadese: 7/10
  • Totale: 5/10

Conclusione

I servizi di SmartDNS sono un valido strumento per accedere ai servizi di streaming legale, indipendentemente dalla nazione di provenienza. UnoDNS è un’ottima scelta sia per la facilità d’uso che per l’interessante funzione Dynamo. Ci sono problemi con qualche canale ma sono convinto che siano risolvibili.

Dato che i prezzi variano col tempo, non ho voluto entrare nei dettagli ma vi rimando al sito ufficiale. I piani di breve durata sono un pochino più costosi, mentre quelli annuali sono più convenienti. Ritengo comunque che sia un servizio assolutamente adeguato per chi ama film e serie TV e fa un uso intenso e regolare di questi siti.

Per gli utenti che hanno esigenze ridotte e poco frequenti, è possibile cavarsela anche con opzioni gratuite, come VPNGate, con le limitazioni del caso. In particolare la maggiore difficoltà ad attivare dispositivi “da salotto” come set-top box e smart TV.

Riguardo a UnoVPN, non ritengo che sia un servizio particolarmente utile per sbloccare i siti web che sono già attivati senza sforzo da UnoDNS. Come strumento per proteggere la privacy nelle reti poco sicure lo reputo sufficiente, senza troppi fronzoli. Ci sono comunque altri servizi che offrono un numero maggiore di nazioni.

Estrarre la rubrica da un BlackBerry con software danneggiato

Un’amica mi ha sottoposto un dispositivo BlackBerry 9780 per un’analisi. Lo scopo era quello di recuperare il contenuto integrale della rubrica contatti, in quanto il software di sistema era pesantemente danneggiato e il dispositivo faticava ad accendersi. Dopo alcuni minuti di inattività, crashava improvvisamente con un messaggio di tipo App Error.

La prima cosa da fare, in questo caso, è rimuovere la batteria e reinserirla, per effettuare un reset. Dopo diversi tentativi in cui il dispositivo sembrava bloccato all’avvio, ho verificato che effettivamente il sistema si avviava, mettendoci però 11 minuti. Alla fine del caricamento, comparivano numerosi messaggi di errore relativi al software basato su Java.

Schermata di caricamento ed errori del software
Schermata di caricamento ed errori del software

In questi casi è possibile premere ripetutamente OK per raggiungere il menu del telefono. Dopo aver effettuato questa operazione, sono iniziate le difficoltà reali:

  • la rubrica mostrava la lista dei contatti (nomi) ma non era possibile aprirli per visualizzare i numeri
  • le impostazioni di sistema non erano accessibili e facevano crashare il dispositivo
  • non si riusciva ad effettuare un accoppiamento via bluetooth
  • il programma BlackBerry Desktop Manager, oltre a essere solo per Windows o Mac, non riusciva a connettersi al dispositivo

Il fatto di non poter aprire le impostazioni di sistema significava non potersi collegare al Wi-Fi per tentare di esportare i contatti tramite qualche app. I problemi col bluetooth lasciavano il collegamento USB come unica speranza.

Il mio piano infatti era quello di effettuare un backup con il software ufficiale di BlackBerry e poi esportare la rubrica. Dopotutto è possibile usare Windows in macchina virtuale (come quelle fornite da Microsoft sul sito Modern.ie) oppure creare una USB avviabile tramite le varie Release Candidate per sviluppatori. Peccato solo per l’errore nefasto restituito da BlackBerry Desktop Manager per Windows:

BlackBerry® Desktop Manager non è in grado di comunicare con il dispositivo BlackBerry connesso. Se il dispositivo si sta riavviando oppure la batteria è completamente scarica, fare clic su Riprova per tentare di ristabilire la connessione una volta completato il riavvio. In caso contrario, per risolvere il problema potrebbe essere necessario aggiornare BlackBerry® Device Software.

Come spesso accade, mi sono reso poi conto che Linux poteva venire in aiuto e salvare la situazione. Per evitare di installare troppo software sul mio portatile, ho creato una chiavetta USB avviabile con Xubuntu 14.10, assicurandomi di attivare la persistenza per poter salvare i dati recuperati. Ad ogni modo, qualsiasi distribuzione dovrebbe andare bene.

Per evitare problemi, ho effettuato nuovamente il reset del BlackBerry. Nel frattempo ho fatto partire Xubuntu. Una volta avviato il sistema, ho installato Barry, un software open source per gestire i dispositivi BlackBerry:

sudo apt-get install barrydesktop

Ho collegato il BlackBerry col cavo USB e ho avviato il programma con i permessi di amministratore, per evitare errori di accesso negato:

sudo barrydesktop

Barry ha individuato il dispositivo senza batter ciglio e mi ha chiesto di dargli un nome. Ho cliccato su Config… e poi sul primo tasto Configure… (quello relativo al backup) per selezionare tutti i campi disponibili. In realtà era di fondamentale importanza recuperare soltanto la rubrica, ma ero curioso di vedere quanto si potesse effettivamente estrarre.

Selezione degli elementi da estrarre
Selezione degli elementi da estrarre

Dopo aver salvato le mie scelte, ho dovuto solo premere il tasto Backup nella finestra principale:

Barry durante l'operazione di backup
Barry durante l’operazione di backup

Il processo si è interrotto “brutalmente” al 42%, probabilmente a causa degli errori software. Barry ha mostrato un messaggio di errore indicando quali campi non erano stati estratti. Ha quindi provveduto a salvare quello che era stato recuperato, incluso il contenuto integrale della rubrica. Il BlackBerry è poi crashato nuovamente.

Dato che il processo era stato avviato come amministratore, è stato necessario copiare i file dalla cartella dei backup alla home dell’utente che stavo utilizzando:

sudo cp /root/.barry/backup ~
sudo chmod a+r ~/backup

L’obiettivo finale era esportare i contatti in un formato “universale” che si potesse agevolmente aprire e magari importare su Gmail. Dato che Barry effettua il backup in un formato proprietario, ho utilizzato un comodo script chiamato BlackBerry-Address-Book-to-CSV.

È sufficiente scaricare il file ZIP, estrarlo ed eseguirlo sul file di backup. Si tratta solo di dare pochi comandi:

wget https://github.com/mintern/BlackBerry-Address-Book-to-CSV/archive/master.zip
unzip master.zip
cd BlackBerry-Address-Book-to-CSV-master
./bbab2csv ~/backup/[PIN]/[NOME].tar.gz

Al posto di [PIN] e [NOME] vanno inseriti il PIN del dispositivo e il nome dell’archivio creato da Barry, che varia di volta in volta. L’output in formato CSV viene mostrato nel terminale, se volete salvarlo su un file potete ripetere l’ultimo comando ridirezionando l’output:

./bbab2csv ~/backup/[PIN]/[NOME].tar.gz > ~/contatti_BB.csv

Il file risultante si trova nella home e si può aprire tranquillamente con LibreOffice oppure importare in un account Gmail, per sincronizzarlo con un dispositivo Android. Ovviamente va salvato in un posto sicuro, specialmente se si sta usando Linux su una live USB.

Il procedimento di recupero con Linux, alla fine, è stato molto veloce. La maggior parte del tempo è stata persa nei vari riavvii del dispositivo e tentando di far funzionare il software ufficiale di BlackBerry, che non è stato di alcun aiuto per estrarre i dati.

Tuttavia, BlackBerry Desktop Manager si è rivelato utile perlomeno per far tornare funzionante il telefono. Una volta collegato il cavo USB e ricevuto il messaggio di errore, ho cliccato su Aggiorna. Alla proposta di fare un backup ho risposto di no (altrimenti si sarebbe bloccato di nuovo) e ho confermato di voler formattare il dispositivo.

Alla fine del processo, il BlackBerry era perfettamente funzionante e tristemente vuoto. Avviando di nuovo Linux, con Barry ho potuto ripristinare la rubrica di cui era stato fatto il backup in precedenza.

La morale che si può trarre da questa esperienza è che da un BlackBerry con software danneggiato a volte si possono recuperare dei dati. Inoltre, non sempre l’applicazione ufficiale è la scelta migliore. Anzi, Barry consente di accedere almeno a una parte delle informazioni in casi in cui BlackBerry Desktop Manager non è in grado di collegarsi al dispositivo, con l’ulteriore vantaggio di non essere costretti a usare Windows.

Ridurre l’alto consumo di CPU di Spotify

A molti utenti è capitato di riscontrare un massiccio consumo di CPU da parte di Spotify, la migliore applicazione per ascoltare musica in modo legale, anche in situazioni apparentemente “tranquille”. Per esempio, ecco come si comportava sul mio portatile con una canzone in pausa:

Massiccio consumo di risorse di due processi di Spotify
Massiccio consumo di risorse di due processi di Spotify

Il problema, almeno nel mio caso, deriva da alcuni elementi dell’interfaccia grafica che richiedono una considerevole potenza di calcolo per essere disegnati. L’interfaccia di Spotify è basata su Webkit, un componente che troviamo anche all’interno di alcuni browser (come Chromium), tuttavia non è molto performante.

Ho trovato la soluzione al problema ispirandomi a un messaggio trovato sul forum ufficiale. Si tratta solo di disattivare due opzioni. 🙂 Andate su Visualizza e togliete le spunte da Feed attività e Illustrazione grande brano in riproduzione. Ecco fatto!

Il risultato dopo la cura è il seguente:

Una situazione molto più tranquilla
Una situazione molto più tranquilla

Aggiornamento: poco dopo aver scritto questo post, ho notato che anche la pagina principale (intitolata Naviga) contribuisce ad appesantire la CPU. Pertanto vi consiglio di tenere aperta un’altra pagina, per esempio Album mentre ascoltate la musica. 😉

Ordinare script ed eseguibili su Linux con una comoda directory

I sistemi operativi Linux sono eccellenti e versatili. Hanno una lista talmente lunga di pregi e vantaggi che qualcuno ci ha addirittura fatto un sito web. Elencarli tutti risulterebbe impossibile, tuttavia uno dei miei preferiti è la capacità di personalizzazione.

Che si tratti di aggiungere temi, indicatori sulla barra di stato, software o anche piccoli comandi (script) per effettuare compiti ripetitivi, c’è solo l’imbarazzo della scelta. Il terminale fornisce una interfaccia a riga di comando che può tornare utile a principianti ed esperti. Ve ne avevo parlato in passato: alcuni comandi sono molto semplici e si imparano in fretta.

I programmi e gli script

La maggioranza dei programmi su Linux è disponibile in comodi pacchetti, scaricabili direttamente dal gestore pacchetti (o “centro software”, oppure altri nomi simili). Tuttavia esistono degli strumenti che vengono distribuiti come eseguibili da estrarre in una cartella e lanciare subito.

Alcuni sono software un po’ di nicchia, come ad esempio K2pdfopt. Si tratta di un eccellente programma open source in grado di reimpaginare completamente un PDF anche scannerizzato e ottimizzarlo per un lettore ebook o uno smartphone. Altri sono programmi molto più conosciuti e “grossi” come l’IDE Eclipse.

Esistono poi innumerevoli script sparsi in giro per il web. Queste vere e proprio gemme si trovano solitamente su siti e blog specializzati e possono essere sotto forma di script già pronti oppure di un elenco di comandi Linux. Nel secondo caso basta metterli in un file con estensione sh e renderli eseguibili per poterli richiamare ogni volta.

Per esempio, potreste essere interessati a un metodo per pulire le tracce di Wine. Cercando sul web trovate questo mio articolo e lanciate i 5 comandi. Per evitare di cercarli di nuovo e copiarli ogni volta, potete creare un semplice file chiamato cleanwine.sh con il seguente contenuto:

#!/bin/bash
rm -rf ~/.config/menus/applications-merged/wine-*
rm -rf ~/.local/share/applications/wine*
find ~/.local/share/icons/ -name "*wine*" | xargs rm -rf
rm -rf ~/.local/share/desktop-directories/wine-*
rm -rf ~/.wine*

In sintesi, dovete includere i comandi desiderati preceduti da una riga chiamata shebang, che specifica quale shell deve essere eseguita. Il file non ha ancora il permesso di essere eseguito. Ciò si può risolvere da terminale, dando:

chmod +x cleanwine.sh

Oppure cliccando col destro e accedendo alle proprietà del file, alla scheda permessi.

Questo lo potete fare con molti altri comandi che trovate in rete, per evitare di ricordare a memoria sequenze lunghissime e impossibili da ripetere senza errori. Esistono naturalmente anche esempi più complicati, come i comandi che richiedono parametri (se agiscono su file o altro). Il mio era solo un esempio, ci vorrebbe un altro articolo per trattare approfonditamente tutto ciò.

Lo stesso discorso vale per molti script in Python formati da un singolo file, come ad esempio il mio script per usare il servizio gratuito di VPNGate.

Lanciare i propri script o programmi

Quello che abbiamo visto finora è bello e interessante, sorge però un problema. Voi potete avere scaricato k2pdfopt o altri eseguibili, oppure potete aver scritto (o salvato dal web) qualche script come cleanwine.sh. Però il vostro sistema non sa che esistono. Intendo dire che, provando a lanciare un comando da terminale, otterrete un errore:

$ k2pdfopt
k2pdfopt: comando non trovato

Finché è uno solo, va bene anche richiamare il percorso completo, supponendo di aver dato i permessi di esecuzione:

/home/andrea/Scaricati/k2pdfopt # oppure ~/Scaricati/k2pdfopt

Questo però non è pulito. Immaginate di avere anche 4-5 script o eseguibili: intasereste qualche cartella adibita ad altro (per esempio Scaricati) e poi dovreste ricordare l’intero percorso ogni volta. Impraticabile.

La soluzione è creare una o più directory in cui mettere gli script e poi “informare” il vostro sistema della sua esistenza.

Organizzare tutto con una directory

Con questa guida intendo spiegarvi l’organizzazione che utilizzo io. Ovviamente potete variarla e adattarla alle vostre esigenze. Sul mio portatile, ho creato nella home una cartella chiamata bin, che contiene anche altre sottocartelle:

$ ls -1d ~/bin/*/
/home/andrea/bin/eclipse/
/home/andrea/bin/sage/
/home/andrea/bin/script/

In sintesi, ho una directory dove ho estratto l’ultima versione di Eclipse, una dove tengo installato Sage e una cartella dove tengo due dozzine di script di vario genere. Ho anche qualche altro software che non ho incluso nell’output, per evitare confusione.

L’idea di base è semplice: includere la maggior parte degli script (in Bash e in Python) dentro a script, alcuni eseguibili come k2pdfopt direttamente in bin e i programmi grossi nelle proprie directory. Qualunque eseguibile o script messo dentro a una di queste cartelle deve poter essere richiamato dal terminale scrivendone il nome.

Una volta organizzata la struttura di cartelle e inseriti i vari script o programmi, è il momento di rendere tutto ciò “visibile” dal terminale.

Aggiustare il PATH

La shell della vostra distribuzione Linux è in grado di riconoscere i comandi che digitate perché sa dove andarli a cercare. Per esempio, se digitate who e premete Invio, il sistema cercherà tutte le cartelle nel PATH fino a trovare un programma che si chiami esattamente così. Il programma (probabilmente /usr/bin/who) viene quindi eseguito.

Qui entra il gioco la personalizzazione: possiamo aggiungere le nostre directory e richiamare gli script e gli eseguibili scaricati. Per farlo, vi basta aprire il file .bashrc nella vostra cartella home.

Due cose a cui fare attenzione:

  • Sto supponendo che la vostra versione di Linux usi Bash come shell predefinita, se non siete sicuri al 99% è così. Gli utenti esperti possono modificare la propria shell e usarne una alternativa.
  • Il file da modificare è nascosto (inizia con un punto), perciò dovrete attivare la visualizzazione dei file nascosti per poterlo individuare. Su alcuni gestori di file, come quello di Ubuntu, si può fare anche premendo Ctrl+H mentre siete nella cartella home.
  • Queste modifiche valgono solo per il vostro utente. Gli altri utenti del sistema non noteranno differenze.

È necessario aggiungere alcune righe in fondo. Magari mettete anche un paio di righe bianche per separare il contenuto precedente da quello aggiunto da voi. In particolare sono una per directory:

# Percorsi aggiunti al PATH
export PATH=$PATH:~/bin
export PATH=$PATH:~/bin/script
export PATH=$PATH:~/bin/sage

Non ho aggiunto Eclipse perché non mi interessa richiamarlo da terminale, ma solo tenerlo in una cartella “in ordine”. Come potete vedere, stiamo ridefinendo il PATH aggiungendovi un separatore (due punti) e la directory desiderata. Ne mettiamo una alla volta per comodità.

Ricordate di modificare il mio esempio, non copiatelo così com’è. Un paio di osservazioni:

  • Se non usate Sage o se avete predisposto altre cartelle, adattate le righe di conseguenza.
  • La tilde serve a rappresentare il percorso della vostra cartella home.

Ora dovreste chiudere il terminale e riaprirlo. Qualsiasi script o eseguibile messo nella cartella bin o in un’altra di quelle che avete elencato potrà essere richiamato con il relativo nome.

Alcuni consigli

Aggiungendo altri programmi potrebbe capitarvi di creare altre sottodirectory, e queste non sono incluse nel PATH. Potete modificarlo ogni volta, oppure mettere un collegamento simbolico all’esegubile principale nella cartella bin: questo in genere funziona bene con i programmi in Java.

Un esempio è jPdf Tweak, un altro software per modificare i PDF. L’ho scaricato in questo percorso:

~/bin/jpdftweak-linux-x64-1.1

Poi però l’ho collegato nella directory principale, per evitare di dover modificare la mia configurazione:

cd ~/bin/
ln -s jpdftweak-linux-x64-1.1/jpdftweak.jar .

Ciò potrebbe non funzionare per alcuni software, provate caso per caso. Ecco come appare attualmente la mia directory per gli script e gli eseguibili:

Esempio di contenuto della directory predisposta
Esempio di contenuto della directory predisposta

Per quanto riguarda i programmi che hanno interfaccia grafica, può essere utile creare un’icona per il menu. Il lanciatore va inserito in:

~/.local/share/applications

Deve inoltre avere una estensione .desktop. Eccovi un esempio del contenuto del mio file jpdftweak.desktop:

[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Name=jPdf Tweak
Icon=/home/andrea/bin/jpdftweak-linux-x64-1.1/icons/icon256.png
Path=/home/andrea/bin/jpdftweak-linux-x64-1.1/
Exec=jpdftweak.jar

Ovviamente i campi vanno adattati al caso specifico.

Spero di aver fornito una spiegazione esauriente per creare una propria directory dove immagazzinare gli script e i file binari. Chiaramente queste istruzioni rispecchiano le mie personali preferenze, altri potrebbero usare metodi differenti.

Se avete dei suggerimenti a questo proposito o volete condividere la vostra organizzazione in questo ambito, lasciate un commento. 🙂