Di default il .bashrc su Arch Linux è piuttosto scarno .
Io, ovviamente, me lo sono personalizzato un po’ aggiungendo comodi alias e persino una funzione per ridurre i video sfruttando ffmpeg (usata spesso, non ha mai fallito, e l’ultimo file su cui ho usato questo comando è passato da 130 MB a soli 14 MB!!!)
#
# ~/.bashrc
#
# If not running interactively, don't do anything
[[ $- != *i* ]] && return #PS1='[\u@\h \W]\$ ' ## default
PS1='\[\033[1;36m\]\u\[\033[1;31m\]@\[\033[1;32m\]\h:\[\033[1;35m\]\w\[\033[1;31m\]\$\[\033[0m\] '
# Default
alias ls='ls --color=auto'
alias grep='grep --color=auto'
# Utils
alias ..='cd ..'
alias fstab='cat /etc/fstab'
alias please='sudo $(fc -ln -1)'
alias logout='qdbus org.kde.Shutdown /Shutdown logout '
alias reboot='qdbus org.kde.Shutdown /Shutdown logoutAndReboot'
alias shutdown='qdbus org.kde.Shutdown /Shutdown logoutAndShutdown'
# Pacman Alias
alias pac='sudo pacman -S' # install
alias pacu='sudo pacman -Syu' # update
alias pacr='sudo pacman -Rs' # remove
alias pacs='pacman -Ss' # search
alias paci='pacman -Si' # info
alias paclo='pacman -Qdt' # list orphans
alias pacro='paclo && sudo pacman -Rns $(pacman -Qtdq)' # remove orphans
alias pacc='sudo pacman -Scc' # clean cache
alias paclf='pacman -Ql' # list files
# ffmpeg tool
riducivideo() { ffmpeg -i "$1" -c:v libx265 -crf 28 -c:a aac -b:a 128k "ridotto_$1"; }
# Lista i file AUR
aurlist() { (echo -e "~\nQuesti i pacchetti aur Installati:\n~"; pacman -Qm; echo "~") }
# Installa pacchetto AUR
aurinstall() {
cd "$HOME" && mkdir -p "$HOME/AurBuild/"
(
cd "$HOME/AurBuild/"
# Controlla se l'utente ha passato un argomento
if [ $# -eq 0 ]; then
echo -e "~\nErrore: specificare l'URL del pacchetto AUR da installare.\n~"
else
# Verifica se la directory di destinazione esiste già
package_dir="$(basename "$1" .git)"
if [ -d "$package_dir" ]; then
echo -e "~\nErrore: La directory '$package_dir' esiste già e non è vuota.\n~\nUsare 'aurupdate $package_dir'\n~"
else
# Clona il repository AUR e installa il pacchetto
git clone "$1" && cd "$package_dir"
if [[ -f PKGBUILD ]]; then
(echo -e "~\nLeggi il PKGBUILD prima di continuare!!!\n~"; cat PKGBUILD; echo -e "~\nSe hai letto il PKGBUILD e vuoi procedere, premi 'q'\n~") | less
makepkg -si
else
echo -e "~\nErrore: Il repository AUR clonato non contiene un file PKGBUILD.\n~"
fi
fi
fi
)
}
# Aggiornare gli AUR
aurupdate() {
cd "$HOME" && mkdir -p "$HOME/AurBuild/"
(
cd "$HOME/AurBuild/"
# Se non ci sono argomenti, aggiorna tutti i pacchetti
if [ $# -eq 0 ]; then
echo "Aggiorno tutti i pacchetti AUR presenti!"
for package_dir in */; do
echo "Aggiornamento del pacchetto: $package_dir"
cd "$package_dir" || continue
git pull
(echo -e "~\nLeggi il PKGBUILD prima di continuare!!!\n~"; cat PKGBUILD; echo -e "~\nSe hai letto il PKGBUILD e vuoi procedere, premi 'q'\n~") | less
makepkg -si
cd ..
done
else
# Altrimenti, aggiorna solo i pacchetti specificati
for package_name in "$@"; do
if [ -d "$package_name" ]; then
echo "Aggiornamento del pacchetto: $package_name"
cd "$package_name" || continue
git pull
(echo -e "~\nLeggiaur_dir il PKGBUILD prima di continuare!!!\n~"; cat PKGBUILD; echo -e "~\nSe hai letto il PKGBUILD e vuoi procedere, premi 'q'\n~") | less
makepkg -si
cd ..
else
echo -e "~\nIl pacchetto $package_name non esiste in '$HOME/AurBuild/'\n~"
fi
done
fi
)
}
# Run fastfetch
fastfetch # -c custom
Voi lo avete mai modificato? Usate gli alias? 😊