Arch Linux: .bashrc

alias bashrc

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? 😊


Iscriviti ai Feed dei commentirss small icon


Vedi anche:


Commenti

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *


go to top (svg)