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 😉

 

Fix error Possible missing firmware /lib/firmware/i915

 

Fix error Possible missing firmware /lib/firmware/i915Fix error Possible missing firmware /lib/firmware/i915

 

Questi tipo di errori sono presente oramai da qualche anno e si presentano quando si lancia il comando:

sudo update-initramfs -u

questi errori segnalano che ci sono dei firmware mancanti e si riferiscono alle microarchitetture intel come:

Sky Lake, Broxton, Kaby Lake, Commet Lake, Ice Lake, Elkhart Lake, Tiger Lake, Gemini Lake, Alder Lake,Arc Alchemist.

Per risolvere il problema su Debian, SysLinuxOS ed altre distro, basta scaricare da GitHub il mio script bash, che si occuperà di scaricare tutti i firmware .bin, compararli con quelli già presenti, per poi copiare solamenti quelli mancanti in /lib/firmware/i915.

Per utilizzare fixi915.sh eseguire i seguenti comandi:

$ git clone https://github.com/fconidi/fix-firmware-i915.git
$ cd fix-firmware-i915/
$ chmod +x fixi915.sh
$ ./fixi915.sh

questo è tutto!

 

Di seguito lo script completo:

 

#!/bin/bash

# Source: https://francoconidi.it/fix-error-possible-missing/
# Source: https://syslinuxos.com

# Install curl, wget, lynx

sudo apt update; sudo apt install -y wget curl lynx

# folder creation
mkdir /home/$USER/i915; cd /home/$USER/i915

# Download the web page and use lynx to extract the HTTP/HTTPS links

lynx -dump "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/plain/i915/" | grep -o 'https\?://[^ ]*\.bin' > /home/$USER/i915/links.txt

# Download the .bin files from the list of links
while read -r line
do
# Extract the filename from the link
filename=$(basename "$line")

# Download the file from the link using curl
curl -OJL "$line"

# Rename the downloaded file to its original name
mv "$filename" "${filename%.*}.bin"
done < "links.txt"

# Two folders to compare
folder1="/home/$USER/i915"
folder2="/lib/firmware/i915/"

# Check folders
if [ ! -d "$folder1" ]; then
echo "Error: First folder does not exist."
exit 1
fi

if [ ! -d "$folder2" ]; then
echo "Error: Second folder does not exist."
exit 1
fi

# Cycle through the files in the first folder
for file1 in "$folder1"/*.bin; do
# Extract the filename without the path
filename="$(basename "$file1")"
# Check if the file exists in the second folder
if [ ! -f "$folder2/$filename" ]; then
# Copy the missing file into the second folder
sudo cp "$file1" "$folder2"
echo "The file $filename has been copied to the second folder."
fi
done

echo "The check has been completed."

# Update initramfs
sudo update-initramfs -u

echo "Fix missing firmware has been completed."

 

Fix error Possible missing firmware /lib/firmware/i915

 

enjoy 😉

 

Aggiungere un logo Debian in tty1

 

 

 

 

# nano /etc/issue

 

per l'esempio sopra:

 

Debian GNU/Linux wheezy/sid \n \l

              █ █ █    █ █ █   █ █ █    █      █      █    █
              █    █   █       █    █   █     █ █     █ █  █
              █    █   █ █ █   █ █ █    █    █   █    █  █ █
              █    █   █       █    █   █   █ █ █ █   █   ██
              █ █ █    █ █ █   █ █ █    █  █       █  █    █

 

 

 

altri terminali personalizzati nell'apposita categoria.

 

enjoy 😉

Inviare mail VIP (false) su Debian e Gnu/Linux

 

 

 

$ sudo apt-get install postfix mime-construct

$ cd /bin

$ sudo nano falsamail.sh

ed inserire:

# Invio di mail con account falsi
cat vittime.txt | { while read; do
  mime-construct --header 'Sender: sharon_stone@hollywood.com' --header 'From: sharon_stone@hollywood.com' --to $REPLY --subject 'I am going' --file testofalso.txt
  sleep 2
done
}

 

 

$ sudo chmod +x falsamail.sh

$ sudo nano vittime.txt

 

quindi inserire la mail della vittima. Poi inserire il testo da inviare all'interno di:

 

$ sudo nano testofalso.txt

:

inviare:

 

$ ./falsamail.sh

 

enjoy 😉

Terminali personalizzati Debian

 

Terminali personalizzati Debian, gli altri si possono trovare quà e quà.

 

 

 

Requisiti: installare figlet e toilet
 

# Colori:

black='\e[0;30m'
blue='\e[0;34m'
green='\e[0;32m'
cyan='\e[0;36m'
red='\e[0;31m'
purple='\e[0;35m'
brown='\e[0;33m'
lightgray='\e[0;37m'
darkgray='\e[1;30m'
lightblue='\e[1;34m'
lightgreen='\e[1;32m'
lightcyan='\e[1;36m'
lightred='\e[1;31m'
lightpurple='\e[1;35m'
yellow='\e[1;33m'
white='\e[1;37m'
nc='\e[0m'

# Prompt:

PS1='\[\033[01;32m\]\u\[\033[01;34m\]-\[\033[01;31m\]\h\[\033[00;34m\]{\[\033[01;34m\]\w\[\033[00;34m\]}\[\033[01;32m\]:\[\033[00m\]'

# Informazioni di Sistema

clear
echo -e "${lightred}";toilet --gay -f pagga "          Debian Box           ";
echo
echo
echo -ne "${lightblue}Oggi è:\t\t${lightblue}" `date`; echo ""
echo -e "${lightblue}Kernel : \t${lightblue}" `uname -smr`
echo
echo -e "${lightred}Debian  GNU/Linux ${NC}" `cat /etc/debian_version`
echo -e "${lightblue}"; cal -A 1

 

 

# Colori:

black='\e[0;30m'
blue='\e[0;34m'
green='\e[0;32m'
cyan='\e[0;36m'
red='\e[0;31m'
purple='\e[0;35m'
brown='\e[0;33m'
lightgray='\e[0;37m'
darkgray='\e[1;30m'
lightblue='\e[1;34m'
lightgreen='\e[1;32m'
lightcyan='\e[1;36m'
lightred='\e[1;31m'
lightpurple='\e[1;35m'
yellow='\e[1;33m'
white='\e[1;37m'
nc='\e[0m'

# Prompt:

PS1='\[\033[01;32m\]\u\[\033[01;34m\]-\[\033[01;31m\]\h\[\033[00;34m\]{\[\033[01;34m\]\w\[\033[00;34m\]}\[\033[01;32m\]:\[\033[00m\]'

# Informazioni di Sistema:

clear
echo -e "";
echo -e "${red}              █ █ █    █ █ █   █ █ █    █      █      █    █";
echo -e "              █    █   █       █    █   █     █ █     █ █  █";
echo -e "              █    █   █ █ █   █ █ █    █    █   █    █  █ █";
echo -e "              █    █   █       █    █   █   █ █ █ █   █   ██";
echo -e "              █ █ █    █ █ █   █ █ █    █  █       █  █    █";
echo -e "";
echo -e "";
echo -ne "${lightblue}Oggi è:\t\t${lightblue}" `date`; echo ""
echo -e "${lightblue}Kernel : \t${lightblue}" `uname -smr`
echo
echo -e "${lightred}Debian  GNU/Linux ${NC}" `cat /etc/debian_version`
echo -e "${lightblue}"; cal -A1

 

 

PS1='\[\033[01;32m\]\u\[\033[01;34m\]-\[\033[01;31m\]\h\[\033[00;34m\]{\[\033[01;34m\]\w\[\033[00;34m\]}\[\033[01;32m\]:\[\033[00m\]'

rosso='\e[1;31m'
NC='\e[0m'

echo -e "";
echo -e "${rosso}              █ █ █    █ █ █   █ █ █    █      █      █    █";
echo -e "              █    █   █       █    █   █     █ █     █ █  █";
echo -e "              █    █   █ █ █   █ █ █    █    █   █    █  █ █";
echo -e "              █    █   █       █    █   █   █ █ █ █   █   ██";
echo -e "              █ █ █    █ █ █   █ █ █    █  █       █  █    █";
echo -e "";
echo -e "${rosso}Debian  GNU/Linux ${NC}" `cat /etc/debian_version`

 

 

enjoy 😉

Terminale personalizzato completo (quasi)

 

 

 

Tenendo sempre il terminale aperto, mi piace personalizzarlo, e dato che anche l'occhio vuole la sua parte, di tanto in tanto mi piace cambiargli il look. Quindi oggi dato che mi sento buono 🙂 lo condivido con i miei amici pinguini.

 

# apt-get install figlet

$ nano .bashrc

 

ed incollare alla fine:

 

# Colori:

black='\e[0;30m'
blue='\e[0;34m'
green='\e[0;32m'
cyan='\e[0;36m'
red='\e[0;31m'
purple='\e[0;35m'
brown='\e[0;33m'
lightgray='\e[0;37m'
darkgray='\e[1;30m'
lightblue='\e[1;34m'
lightgreen='\e[1;32m'
lightcyan='\e[1;36m'
lightred='\e[1;31m'
lightpurple='\e[1;35m'
yellow='\e[1;33m'
white='\e[1;37m'
nc='\e[0m'

# Prompt:

PS1='\[\033[01;32m\]\u\[\033[01;34m\]-\[\033[01;31m\]\h\[\033[00;34m\]{\[\033[01;34m\]\w\[\033[00;34m\]}\[\033[01;32m\]:\[\033[00m\]'

# Informazioni di Sistema:

clear
echo -e "${lightred}";figlet -c "DEBIAN     BOX";
echo -ne "${lightblue}Oggi è:\t\t${lightblue}" `date`; echo ""
echo -e "${lightblue}Kernel : \t${lightblue}" `uname -smr`
echo
echo -e "${lightred}Debian  GNU/Linux ${NC}" `cat /etc/debian_version`
echo -e "${lightblue}"; cal -A 1

 

questa è una buona base da cui partire per ottenere la propria shell personalizzata.

 

enjoy 😉

Pagina Man colorata

 

 

Per una buona visione di una pagina man, può risultare comodo installare un pager alternativo come most, che si trova nei repository di tutte le distro. Per visionare quindi la pagina man di most con le opzioni colorate, si può usare:

 

$ man --pager=most most

 

ma il comando sopra può risultare scomodo, per ovviare e rendere definitivo il tutto:

 

$ nano $HOME/.bashrc

 

ed incollare in fondo:

 

export MANPAGER="/usr/bin/most"

 

enjoy 😉