Last active
June 24, 2025 17:36
-
-
Save danilogco/dd7c28c30bf08a6cfebc5ed21c58a147 to your computer and use it in GitHub Desktop.
zsh useful aliases
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Utils | |
alias upd='sudo apt update && sudo apt full-upgrade -y && flatpak upgrade -y' | |
alias cleanup='sudo apt autoremove -y && sudo apt autoclean -y && flatpak uninstall --unused -y' | |
alias please='sudo $(fc -ln -1)' | |
alias ip='ip -c a' | |
alias ports='sudo lsof -i -P -n | grep LISTEN' | |
# Zsh config helpers | |
alias zshconfig="nano ~/.zshrc" | |
alias zshaliases="nano ~/.zsh_aliases" | |
alias ohmyzsh="nano ~/.oh-my-zsh" | |
alias zsh_update='omz update && \ | |
git -C ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k pull && \ | |
git -C ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/zsh-autosuggestions pull && \ | |
git -C ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting pull' | |
pkg() { | |
local cmd="$1" | |
shift | |
case "$cmd" in | |
install) | |
local pm="" | |
local query="" | |
while [[ $# -gt 0 ]]; do | |
case "$1" in | |
--pm) | |
pm="$2" | |
shift 2 | |
;; | |
*) | |
query="$1" | |
shift | |
;; | |
esac | |
done | |
if [[ -z "$query" ]]; then | |
echo "Usage: pkg install [--pm flatpak|apt] <app-name>" | |
return 1 | |
fi | |
if [[ "$pm" == "flatpak" ]]; then | |
local app_id | |
app_id=$(flatpak search --columns=application,name "$query" | grep -i "$query" | awk 'NR==1 {print $1}') | |
if [[ -n "$app_id" ]]; then | |
echo "Installing $query as $app_id via Flatpak..." | |
flatpak install -y flathub "$app_id" | |
else | |
echo "Could not find '$query' in Flatpak." | |
return 1 | |
fi | |
elif [[ "$pm" == "apt" ]]; then | |
echo "Installing $query via APT..." | |
sudo apt install -y "$query" | |
else | |
local app_id | |
app_id=$(flatpak search --columns=application,name "$query" | grep -i "$query" | awk 'NR==1 {print $1}') | |
if [[ -n "$app_id" ]]; then | |
echo "Installing $query as $app_id via Flatpak..." | |
flatpak install -y flathub "$app_id" | |
else | |
echo "Flatpak not found. Installing $query via APT..." | |
sudo apt install -y "$query" | |
fi | |
fi | |
;; | |
uninstall) | |
local query="$1" | |
if [[ -z "$query" ]]; then | |
echo "Usage: pkg uninstall <app-name>" | |
return 1 | |
fi | |
local app_id | |
app_id=$(flatpak list --app --columns=application,name | grep -i "$query" | awk 'NR==1 {print $1}') | |
if [[ -n "$app_id" ]]; then | |
echo "Uninstalling $app_id via Flatpak..." | |
flatpak uninstall -y "$app_id" | |
else | |
echo "Flatpak app not found. Trying to remove $query via APT..." | |
sudo apt remove -y "$query" | |
fi | |
;; | |
update) | |
echo "Updating Flatpak packages..." | |
flatpak update -y | |
echo "Updating APT packages..." | |
sudo apt update | |
sudo apt upgrade -y | |
;; | |
clean) | |
echo "Running cleanup..." | |
sudo apt autoremove -y | |
sudo apt autoclean -y | |
flatpak uninstall --unused -y | |
;; | |
*) | |
echo "Usage:" | |
echo " pkg install [--pm flatpak|apt] <app-name>" | |
echo " pkg uninstall <app-name>" | |
echo " pkg update" | |
echo " pkg clean" | |
return 1 | |
;; | |
esac | |
} | |
# Show user-installed apps | |
alias flatpak-user-apps='flatpak list --app --columns=application,name' | |
alias apt-user-apps="comm -23 <(apt-mark showmanual | sort) <(gzip -dc /var/log/installer/initial-status.gz 2>/dev/null | awk '/^Package: / {print \$2}' | sort)" | |
alias user-apps='echo "--- Flatpak ---"; flatpak-user-apps; echo "\n--- APT ---"; apt-user-apps' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment