Yt2md Converter YouTube to Markdown

 

Yt2md Converter YouTube to Markdown

 

Nel corso dello sviluppo di vari progetti open source, mi sono spesso trovato nella necessità di integrare video tutorial nei file README e nella documentazione tecnica. Il processo manuale di creazione dei link Markdown con thumbnail cliccabili richiedeva tempo e attenzione ai dettagli. Per risolvere questo problema in modo efficiente, ho sviluppato Yt2md Converter (YouTube to Markdown Converter), una suite completa di strumenti in bash che automatizza la conversione di link YouTube in codice Markdown formattato, pronto per l’inserimento in README di GitHub, documentazione tecnica e blog.

Problema e Soluzione

Il Problema

L’integrazione di video YouTube nella documentazione richiede tipicamente:
1. Estrazione del Video ID dall’URL
2. Costruzione dell’URL della thumbnail
3. Scrittura manuale della sintassi Markdown
4. Verifica della correttezza del codice generato

Questo processo, ripetuto per ogni video, diventa rapidamente tedioso e soggetto ad errori.

La Soluzione

Yt2md automatizza completamente questo workflow, offrendo:
– Conversione istantanea da Video ID a Markdown
– Supporto per multipli formati di output
– Interfaccia CLI per automazione
– Interfaccia GUI per utenti non tecnici
– Modalità batch per conversioni multiple
– Zero dipendenze per le versioni CLI base

Installazione Base

Clone repository

git clone https://github.com/fconidi/Yt2md-Converter
cd yt2md
bash yt2md.sh --help
Installazione Sistema (Opzionale)

Copia in /usr/local/bin

sudo cp yt2md.sh /usr/local/bin/yt2md
sudo chmod +x /usr/local/bin/yt2md

Dipendenze GUI

Ubuntu/Debian

sudo apt install zenity xclip

Architettura del Progetto

Il progetto è strutturato in quattro componenti principali:

1. yt2md.sh – CLI Semplificato

La versione consigliata per uso quotidiano. Sintassi minimalista:

bash yt2md.sh VIDEO_ID "TITOLO" "AUTORE"

 

**Caratteristiche tecniche:**

– Parsing robusto degli ID video da URL multipli formati
– Costruzione dinamica degli URL thumbnail
– Nessuna dipendenza esterna
– Output su stdout o file
– Supporto per 4 formati di output

 

**Esempio di utilizzo:**
bash yt2md.sh dQw4w9WgXcQ "Tutorial Linux Base" "TechChannel"

 

**Output generato:**
[![Tutorial Linux Base](https://img.youtube.com/vi/dQw4w9WgXcQ/hqdefault.jpg)](https://www.youtube.com/watch?v=dQw4w9WgXcQ)
2. yt2md-gui.sh – Interfaccia Grafica (Consigliato)

Implementazione basata su Zenity per utenti che preferiscono un’interfaccia visuale.

**Funzionalità:**

– Dialog guidati step-by-step
– Validazione input in tempo reale
– Progress bar per feedback visuale
– Integrazione clipboard (xclip)
– Conversione batch con formato strutturato
– Menu help integrato

**Dipendenze:**

– zenity
– xclip (opzionale, per clipboard)

**Workflow conversione singola:**

1. Input Video ID o URL completo
2. Input titolo (validato, obbligatorio)
3. Input autore (opzionale, default fornito)
4. Selezione formato output
5. Selezione qualità thumbnail
6. Opzioni risultato: clipboard, file, visualizzazione

**Conversione batch:**

Formato input strutturato:

VIDEO_ID | TITOLO | AUTORE

Supporta:
– Parsing automatico con rimozione spazi
– Commenti (linee che iniziano con )
– Progress bar per ogni elemento
– Report errori e successi

3. yt2md-offline.sh – CLI con Opzioni

Versione con sintassi più tradizionale per utenti abituati agli strumenti Unix standard.

bash yt2md-offline.sh -t "TITOLO" -a "AUTORE" VIDEO_ID
4. yt2md-cli.sh – CLI Avanzato

Versione completa con tutte le opzioni disponibili:

bash yt2md-cli.sh --offline --title "TITOLO" --author "AUTORE" VIDEO_ID

Supporta:
– Modalità offline esplicita
– Opzioni estese
– Help dettagliato
– Gestione errori avanzata

Formati Output Supportati

Standard Format
Il formato predefinito, ottimale per README di GitHub:

[![TITOLO](THUMBNAIL_URL)](VIDEO_URL)

Simple Format
Link testuale senza thumbnail:

[TITOLO](VIDEO_URL)

Table Format
Per liste strutturate:

| [![TITOLO](THUMB)](URL) | AUTORE |

Embed Format
Codice HTML completo con iframe:

<a href="VIDEO_URL">
<img src="THUMBNAIL" alt="TITOLO" width="480">
</a>
<iframe width="560" height="315" src="EMBED_URL"></iframe>

Il sistema supporta multipli formati di URL YouTube:

Supporta:
– URL standard: `youtube.com/watch?v=ID`
– URL brevi: `youtu.be/ID`
– Shorts: `youtube.com/shorts/ID`
– ID diretti: `ID` (11 caratteri)

Costruzione URL Thumbnail

YouTube fornisce thumbnail a diverse risoluzioni:

case "$size" in
default) thumb="https://img.youtube.com/vi/${id}/default.jpg" 120x90
medium) thumb="https://img.youtube.com/vi/${id}/mqdefault.jpg" 320x180
high) thumb="https://img.youtube.com/vi/${id}/hqdefault.jpg" 480x360
maxres) thumb="https://img.youtube.com/vi/${id}/maxresdefault.jpg" 1280x720
esac

Default consigliato: `high` (480×360) per bilanciamento qualità/peso.

Limitazioni Attuali

1. **Modalità Offline:**
– Titolo e autore devono essere forniti manualmente
– Nessuna verifica esistenza video

2. **Metadata:**
– Non recupera durata video
– Non recupera conteggio visualizzazioni
– Non recupera data pubblicazione

3. **Thumbnail:**
– URL fissi (nessuna verifica disponibilità)
– MaxRes potrebbe non esistere per video vecchi

4. **Playlist:**
– Nessun supporto diretto per playlist
– Richiede estrazione manuale ID

Conclusioni

Yt2md Converter rappresenta una soluzione completa per l’integrazione di contenuti YouTube in documentazione tecnica. La sua architettura modulare, la varietà di interfacce disponibili e l’assenza di dipendenze per le versioni base lo rendono adatto a scenari d’uso diversificati.Il progetto è completamente open source (licenza MIT) e accetta contributi dalla community. Il codice è disponibile su GitHub.

Yt2md Converter YouTube to Markdown

enjoy 😉

 

P-AI Desktop: Client Linux per Perplexity AI

 

P-AI Desktop: Client Linux per Perplexity AI

P-AI Desktop: Client Linux non ufficiale per Perplexity AI

 

P-AI Desktop: Client Linux per Perplexity AI. Presento P-AI Desktop, un client desktop per Linux che porta l’interfaccia di Perplexity AI direttamente sul vostro ambiente di lavoro. Si tratta di un progetto open source, sviluppato come wrapper Electron, che risponde all’esigenza di avere un’applicazione nativa per un servizio attualmente disponibile solo via browser su piattaforme Linux. Recandomi sul sito di Perplexity ho visto che sono presenti le App per Windows, OSX, Android ed iphone, quindi mancava solo quella per Linux. Ho deciso di portarla su Linux, sia come paccheto deb per Debian/SysLinuxOS/Ubuntu che direttamente come Appimage.

Caratteristiche tecniche

Il progetto è costruito interamente su Electron e Node.js, offrendo un’integrazione pulita con l’ecosistema desktop Linux. L’applicazione carica direttamente l’interfaccia web ufficiale di Perplexity mantenendo la piena funzionalità del servizio.

Tra le funzionalità implementate:

  • Scorciatoia globale da tastiera (Ctrl+Shift+P) per richiamare rapidamente la finestra da qualsiasi workspace

  • Gestione intelligente dei link esterni: gli URL non appartenenti al dominio Perplexity vengono aperti automaticamente nel browser di sistema, garantendo una separazione netta tra applicazione e navigazione web

  • Integrazione completa con il desktop environment attraverso file .desktop e icona personalizzata

  • Packaging nativo per distribuzioni Debian-based (.deb) e formato universale AppImage

Stack tecnologico

  • Runtime: Electron 28+

  • Build system: electron-builder per la generazione automatica dei pacchetti

  • Formato distribuzione: .deb (Debian/Ubuntu) e AppImage (universale)

Note legali e licenza

È importante sottolineare che P-AI Desktop è un progetto indipendente, non affiliato né approvato da Perplexity AI. Il nome, i marchi e il logo di Perplexity sono proprietà dei rispettivi titolari. L’icona dell’applicazione è stata progettata specificamente per evitare qualsiasi confusione con il brand ufficiale.

Il progetto è rilasciato con licenza MIT, garantendo massima libertà di utilizzo, modifica e distribuzione del codice sorgente.

Installazione

L’installazione è immediata attraverso i pacchetti precompilati. Per sistemi Debian/Ubuntu:

sudo dpkg -i p-ai-desktop_1.0.0_amd64.deb

Per distribuzioni generiche, il formato AppImage garantisce compatibilità universale:

chmod +x P-AI-Desktop-1.0.0.AppImage
./P-AI-Desktop-1.0.0.AppImage

Installazione da sorgente

 

Prerequisiti
  • Node.js 18+
  • npm
Istruzioni
git clone https://github.com/fconidi/P-AI-Desktop.git
cd P-AI-Desktop
npm install
npm run build

i pacchetti saranno generati nella cartella /dist.

Sviluppo futuro

Il progetto è nelle fasi iniziali e sono già pianificate diverse estensioni: integrazione con system tray, supporto per configurazioni personalizzate delle scorciatoie, packaging Flatpak e Snap per una distribuzione ancora più capillare.

Il codice sorgente è disponibile su GitHub, dove contributi e segnalazioni sono benvenuti dalla community.


Disclaimer: P-AI Desktop è un progetto community-driven non ufficiale. Per il servizio ufficiale Perplexity AI, si rimanda al sito www.perplexity.ai

P-AI Desktop: Client Linux non ufficiale per Perplexity AI

 

enjoy 😉

 

RCU – Rename Comics Universal

 

RCU – Rename Comics Universal

RCU – Rename Comics Universal. Hai una collezione di fumetti digitali in disordine? Rename Comics Universal (RCU) è uno script universale che automatizza la rinominazione di file PDF, CBR, CBZ ed EPUB, estraendo intestazioni comuni (come “Zagor”, “Spider-Man” o “Dylan Dog”), numeri di albo e titoli, per ottenere nomi puliti e standardizzati. Immagina di avere centinaia di files pdf, cbr, cbz, epub, da rinominare, e tutto questo lavoro viene eseguito in un paio di secondi, e non in ore ed ore. Bene, a questo serve RCU.

RCU – Rename Comics Universal

Video/Screencast Linux

Video/Screencast Windows

Aggiunto interfaccia grafica per Windows

 RCU – Rename Comics Universal

Caratteristiche Tecniche Principali

  • Riconoscimento Formati: Analizza PDF, CBR, CBZ, EPUB in una directory specifica, ignorando sottodirectory
  • Estrazione Intelligente: Regex per isolare numeri (es. “033”, “N.33”) e titoli, rimuovendo token come “ScanBy”, “by”, “edit” con sed -E e tr
  • Pulizia Automatica: Funzioni clean_title e title_case per Title Case, eliminazione di parentesi, spazi multipli e caratteri speciali; padding numerico a 3 cifre (es. “Zagor 033 – Titolo pulito.cbz”)
  • Header Detection: Cerca il nome del fumetto e seleziona quello principale o quello più comune, si può modificare tramite Zenity GUI
  • Output Colorato: ANSI colors (GREEN per successi, YELLOW per skip), summary finale con contatori

Come Funziona

  1. Seleziona cartella via CLI o Zenity
  2. Detect header: Scansiona file, estrae potenziali header (pre-numero), sceglie il più frequente
  3. Rename files: Per ogni file, estrae numero + titolo, applica pulizia, formatta nuovo nome e rinomina (con check duplicati)

Lo script analizza tutti i file supportati nella cartella e cerca di capire:

  • Qual è il “nome serie” più usato (es. “Zagor”, “Dylan Dog”)
  • Dove si trova il numero dell’albo nel nome del file
  • Se dopo il numero è presente un titolo da ripulire

Per ogni file costruisce un nuovo nome del tipo:

  • “Serie 001 – Titolo pulito.cbz” se esiste un titolo
  • “Serie 001.cbz” se non c’è titolo recuperabile

Cosa Sistema Automaticamente

✅ Toglie scritte inutili come “scan by…”, “edited”, “colori”, tag di gruppi, ecc.
✅ Sistema maiuscole/minuscole: articoli e preposizioni rimangono in minuscolo, le parole importanti hanno l’iniziale maiuscola
✅ Elimina parentesi e contenuto dentro le parentesi quando sono solo note tecniche o ripetizioni del titolo
✅ Evita di creare doppioni: se esiste già un file con il nuovo nome, salta quel fumetto

Vantaggi

  • Ideale per collezioni italiane (Zagor, Tex Willer) o USA (Marvel/DC)
  • Gestisce varianti underscore/spazi, normalizza zeri iniziali
  • Evita sovrascritture con error handling robusto
  • Personalizzabile per nuovi formati estendendo il loop
  • Script leggero (13KB), zero dipendenze oltre bash/zenity (opzionale)

Dove si trova:

Si trova anche su Github, dove c’è un file readme, changelog, licenza, ed i link da dove scaricare lo zip per Linux o per Windows.

Download per Linux

👉 https://buymeacoffee.com/fconidi/e/487102

 RCU – Rename Comics Universal

Download per Windows

👉 https://buymeacoffee.com/fconidi/e/485941

 RCU – Rename Comics Universal

 

Come Si Usa

Linux Terminal

chmod +x rename_comics_universal.sh
./rename_comics_universal.sh
Oppure Installare il Pacchetto .deb
sudo dpkg -i rename-comics-universal_2.7.deb
rename_comics_universal

In alternativa puoi lanciarlo senza parametri e inserire il percorso quando richiesto, oppure confermare/modificare l’intestazione proposta (il nome della serie).

Windows basta solo drag and drop da powershell

 

Perché è Utile per i Collezionisti

 

  • Risparmia tempo: Invece di rinominare centinaia di file a mano, basta un comando
  • Migliora la ricerca: Con nomi coerenti è più facile trovare un numero specifico o sfogliare l’intera serie
  • Pensato per fumetti italiani ed americani: Gestisce scansioni “reali” dove i nomi dei file spesso includono un sacco di informazioni superflue
  • Altamente configurabile: Aggiungendo eventuali nomi da rimuovere all’interno dello script.
  • Assistenza:  Richieste tramite Github, o mail l’aggiunta di altri pattern da rimuovere o modifiche.
RCU – Rename Comics Universal

enjoy 😉

 

Convertire cbr cbz pdf con Comics Converter

 

Convertire cbr cbz pdf con Comics Converter

Convertire cbr cbz pdf con Comics Converter

Questo mio script Bash, denominato Comics Converter, è progettato per convertire file di fumetti digitali nei formati PDF. Files CBZ (ZIP) e CBR (RAR) in file PDF unificati, con le immagini interne convertite in formato JPEG. Utilizza strumenti da riga di comando comuni e la GUI Zenity per l’interazione con l’utente e la segnalazione di errori/avvisi. Questo programma è l’evoluzione di AllCbrztoPdf, creato da me qualche tempo fa, ma aveva dei limiti. Infatti a volte il programma falliva, per una serie di motivi voluti e non voluti dal creatore del file stesso, di seguito alcuni esempi:

  1. Il nome del file estratto era troppo lungo, quindi lo script falliva.
  2. Le immagini erano in jpeg, ma un paio o più erano con estensioni diverse.
  3. Alcuni files cbr erano stati rinominati (intenzionalmente a mio parere) da cbr a cbz e viceversa.
  4. Nei nomi oltre la lunghezza c’era il problema di alcuni caratteri.
  5. La sequenza nome/numero file jpg/png generava problemi di impaginazione durante la conversione.

Comics Converter risolve i problemi sopra, partendo proprio dalla base, e cioè dalla numerazione progressiva partendo da 001, ed eliminando quella iniziale. Risolve il problema della fake estensione andando a verificarla e nel caso servisse a rinominarla correttamente. Mantiene solo il nome del file originale. Comics Converter lo sto utilizzando e testando da almeno sei mesi e non ha mai fallito una conversione. Pronto a condividerlo con gli amanti dei comics 🙂

Prerequisiti

Prima di eseguire lo script, devi assicurarti di avere installato i seguenti strumenti di sistema, poiché sono richiesti dallo script:

  • pdfimages: Parte del pacchetto Poppler, utilizzato per estrarre immagini dai PDF.
  • convert: Parte di ImageMagick, utilizzato per convertire formati di immagine in JPEG.
  • img2pdf: Utilizzato per convertire le singole immagini in PDF.
  • pdftk (o equivalente se non disponibile): Utilizzato per unire i PDF delle singole pagine.
  • unzip: Utilizzato per estrarre archivi CBZ (ZIP).
  • zenity: Utilizzato per finestre di dialogo grafiche (selezione directory, errori, avvisi, info).
  • head: Utilizzato per leggere l’inizio dei file per i magic bytes.
  • xxd: Utilizzato per visualizzare i magic bytes in esadecimale.
  • unrar O 7z (p7zip): Necessari per estrarre archivi CBR (RAR).

Lo script ad ogni modo controllerà la presenza dei requisiti sopra e se mancano, avviserà l’utente tramite Zenity e uscirà.

Download
git clone https://github.com/fconidi/comics-converter.git
cd comics-converter/
chmod +x comics_converter.sh
./comics_converter.sh

SCREENCAST

enjoy 😉

 

Edge Browser su Debian 12

 

Edge Browser su Debian 12

Edge Browser su Debian 12

 

Microsoft Edge è un browser web basato su Chromium, sviluppato da Microsoft. Su SysLinuxOS è già presente di default, ma per installarlo su Debian 12 seguire i passi successivi.

Prerequisiti
$ sudo apt update && sudo apt upgrade
$ sudo apt install software-properties-common apt-transport-https ca-certificates curl -y
Download GPG Keys
$ curl -fSsL https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /usr/share/keyrings/microsoft-edge.gpg > /dev/null
Aggiungere repo
$ echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/microsoft-edge.gpg] https://packages.microsoft.com/repos/edge stable main' | sudo tee /etc/apt/sources.list.d/microsoft-edge.list
Installazione
$ sudo apt update
$ sudo apt install microsoft-edge-stable

 

Edge Browser su Debian 12

enjoy 😉

Teamviewer su Debian 12

 

Teamviewer su Debian 12

 

Teamviewer su Debian 12

 

TeamViewer è un software di accesso remoto e condivisione dello schermo che consente agli utenti di connettersi a un altro computer da remoto. È uno dei software di accesso remoto multi piattaforma più popolari al mondo, con oltre 1 miliardo di download. Alla pari di AnyDesk è installato di default su SysLinuxOS, mentre per Debian 12 seguire i passi successivi.

Prerequisiti
$ sudo apt update
$ sudo apt upgrade
$ sudo apt install curl apt-transport-https
Download GPG Keys
$ curl -fSsL https://download.teamviewer.com/download/linux/signature/TeamViewer2017.asc | sudo gpg --dearmor | sudo tee /usr/share/keyrings/teamview.gpg > /dev/null
Aggiungere repo
$ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/teamview.gpg] http://linux.teamviewer.com/deb stable main" | sudo tee /etc/apt/sources.list.d/teamviewer.list
Installazione
$ sudo apt update
$ sudo apt install teamviewer

 

Teamviewer su Debian 12

enjoy 🙂

WineHQ 8 su Debian 12

 

WineHQ 8 su Debian 12

 

WineHQ 8 su Debian 12

 

Guida su come installare Winehq 8.19 su Debian 12. Wine è in grado di far girare alcune applicazioni native per Windows, sotto Linux, BSD, OSX. Su SysLinuxOS 12 winehq è installato di default.

Abilitare architettura 32bit
$ sudo dpkg --add-architecture i386
Download GPG Keys
$ sudo mkdir -pm755 /etc/apt/keyrings
$ sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key
Aggiungere repo
$ sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/debian/dists/bookworm/winehq-bookworm.sources
Installazione
$ sudo apt install --install-recommends winehq-stable
$ sudo apt install --install-recommends winehq-staging

 

WineHQ 8 su Debian 12

enjoy 😉

AnyDesk su Debian 12

 

AnyDesk su Debian 12

 

AnyDesk su Debian 12

 

Guida su come installare AnyDesk, su Debian 12 Bookworm. AnyDesk è un alternativa a Teamviewer, ed è uno strumento veloce ed affidabile per il controllo remoto. Su Debian 12 può essere installato via repository, mentre su SysLinuxOS 12 è installato di default.

Prerequisito
$ sudo apt update
$ sudo apt upgrade 
$ sudo apt install software-properties-common apt-transport-https dirmngr ca-certificates curl -y
Download GPG Keys
$ curl -fsSL https://keys.anydesk.com/repos/DEB-GPG-KEY | gpg --dearmor | sudo tee /usr/share/keyrings/anydesk.gpg > /dev/null
Aggiungere repo
$ echo 'deb [signed-by=/usr/share/keyrings/anydesk.gpg] http://deb.anydesk.com/ all main' | sudo tee /etc/apt/sources.list.d/anydesk.list
Installazione
$ sudo apt update
$ sudo apt install anydesk

 

AnyDesk su Debian 12

enjoy 🙂

Convertire Fumetti Cbr/Cbz in Pdf con AllCbrztoPdf

Convertire Fumetti Cbr/Cbz in PdfConvertire Fumetti Cbr/Cbz in Pdf con AllCbrztoPdf

Uno dei problemi più comuni che gli utenti devono affrontare è la conversione dei file di immagine di fumetti, come i file CBR e CBZ, in formato PDF. Per questo ho creato AllCbrztoPdf, uno script Bash che semplifica notevolmente questo processo. Lo script in questione è stato progettato per eseguire automaticamente la conversione di file CBR e CBZ in formato PDF, utilizzando una serie di comandi Bash standard, rendendo la conversione di grandi quantità di file una questione semplice e veloce.
L’esecuzione dello script è semplice. una volta eseguito scaricherà ed installerà i programmi che servono, per le distribuzioni come Debian based e SysLinuxOS,  poi chiederà all’utente di selezionare una cartella principale tramite Zenity e, successivamente, avvierà la conversione di tutti i file CBR e CBZ in formato PDF all’interno della cartella e delle sue sottocartelle.
Durante la conversione, lo script visualizzerà l’avanzamento tramite pv e creerà un unico file PDF combinato utilizzando pdftk. Infine, lo script salverà il file PDF risultante nella stessa cartella in cui si trovava il file originale. Di default lascerà solo i files PDF e cancellerà TUTTI i file CBR e CBZ.

Download ed utilizzo via GitHub

$ git clone https://github.com/fconidi/AllCbrztoPdf.git
$ cd AllCbrztoPdf/
$ chmod +x allcbrztopdf.sh
$ ./allcbrztopdf.sh

Download ed utilizzo anche via Sourceforge

AllCbrztoPdf script completo:

per le distribuzioni NON Debian based, si possono commentare/eliminare le stringhe con sudo, ed installare i pacchetti tramite il proprio gestore.

Se si volesse mantenere i file CBR/CBZ basta commentare la stringa in fondo rm “$file”

#!/bin/bash
set -xev
sudo apt update
sudo apt upgrade -y
sudo apt install -y pv imagemagick pdftk img2pdf unrar-free rar unrar p7zip-full

# Select the root folder
folder=$(zenity --file-selection --directory --title="Select the root folder")

# Rename all files .cbr to .rar and .cbz to .zip (recursively)
find "$folder" -type f -name "*.cbr" -execdir rename 's/ /_/g' '{}' \;
find "$folder" -type f -name "*.cbr" -execdir mv '{}' '{}'.rar \;
find "$folder" -type f -name "*.cbz" -execdir rename 's/ /_/g' '{}' \;
find "$folder" -type f -name "*.cbz" -execdir mv '{}' '{}'.zip \;

# Convert all files .cbr and .cbz to PDF (recursively)
find "$folder" -type f \( -name "*.rar" -o -name "*.cbr" -o -name "*.zip" -o -name "*.cbz" \) |
while read file; do
ORIGINAL_FOLDER=$(dirname "$file")
TMP_FOLDER=$(mktemp -d)
cd "$TMP_FOLDER"
case "$file" in
*.rar|*.cbr)
unrar e "$file" "$TMP_FOLDER"
;;
*.zip|*.cbz)
unzip -j "$file" -d "$TMP_FOLDER"
;;
esac
ls -1 ./*jpg ./*jpeg ./*png | pv -lep -s $(ls -1 ./*jpg ./*jpeg ./*png | wc -l) | xargs -L1 -I {} img2pdf {} -o {}.pdf
pdftk *.pdf cat output combined.pdf
cp "$TMP_FOLDER/combined.pdf" "$ORIGINAL_FOLDER/$(basename "$file" .cbr | sed 's/.rar$//;s/.zip$//;s/.cbz$//').pdf"
rm -rf "$TMP_FOLDER"
rm "$file"
done

zenity --info --text="Conversion completed!"

PS: script aggiornato su GitHub o SourceForge

 

Convertire Fumetti Cbr/Cbz in Pdf con AllCbrztoPdf

Video:

 

enjoy 😉

 

Creare VLAN in Linux utilizzando il comando ip

 

Per creare VLAN in SysLinuxOS e Debian GNU/Linux utilizzando il comando ip, seguire questi passaggi:

sudo apt-get install vlan

Caricare il modulo del kernel 8021q utilizzando il comando modprobe:

sudo modprobe 8021q

verificare:

lsmod | grep 8021q

output:

edmond@syslinuxos:~$ lsmod | grep 8021q
8021q 40960 0
garp 16384 1 8021q
mrp 20480 1 8021q

Creare una sottointerfaccia VLAN per l’interfaccia di rete desiderata. Ad esempio, per creare una sottointerfaccia VLAN per eth0 con un ID VLAN 10, eseguire il comando:

sudo ip link add link eth0 name eth0.10 type vlan id 10

Assegnare un indirizzo IP alla nuova sottointerfaccia VLAN utilizzando il comando ip addr. Ad esempio, per assegnare l’indirizzo IP 192.168.10.1/24 alla nuova sottointerfaccia VLAN, eseguire il comando:

sudo ip addr add 192.168.10.1/24 dev eth0.10

Attivare la nuova sottointerfaccia VLAN utilizzando il comando ip link:

sudo ip link set dev eth0.10 up

Ripetere i passaggi precedenti per creare ulteriori sottointerfacce VLAN se necessario. Per rendere la configurazione VLAN persistente dopo il riavvio, aggiungere le seguenti righe al file /etc/network/interfaces:

sudo nano /etc/network/interfaces

aggiungere:

auto eth0.10
iface eth0.10 inet static
address 192.168.10.1
netmask 255.255.255.0

successivamente caricare permanentemente il modulo al boot:

sudo su -c 'echo "8021q" >> /etc/modules'

Riavviare il servizio di rete per applicare le modifiche:

sudo systemctl restart networking.service

Ecco fatto! Hai creato una sottointerfaccia VLAN in Linux utilizzando il comando ip.

enjoy 😉