Posts

Useful aliases

alias ll="ls -lah" alias branch="git branch" alias checkout="git checkout" add() { # Colors GREEN="\033[32m" RED="\033[31m" YELLOW="\033[33m" BLUE="\033[34m" RESET="\033[0m" # Arrays for summary added_files=() skipped_files=() # Get changed files (including renamed, deleted, etc.) mapfile -t files commit() { echo "Enter commit message (Ctrl+D to finish):" msg=$(cat) git commit -m "$msg" } git_push() { # Colors RED="\033[0;31m" GREEN="\033[0;32m" CYAN="\033[0;36m" YELLOW="\033[1;33m" NC="\033[0m" CURRENT_BRANCH="$(git rev-parse --abbrev-ref HEAD)" git fetch origin "$CURRENT_BRANCH" >/dev/null 2>&1 echo -e "${CYAN}Commits to push on $CURRENT_BRANCH:${NC}" git log origin/$CURRENT_BRANCH..$CURRENT_BRANCH --oneline || echo "No upstream ...

Start all Docker containers

To start (bring up) all existing Docker containers , use this: docker start $(docker ps -aq) Explanation docker ps -aq → lists all containers (running or stopped) docker start → starts stopped containers If you are using Docker Compose From the directory with docker-compose.yml: docker compose up -d Or for multiple compose projects (containers already created): docker compose start Useful checks See all containers and their status: docker ps -a See only running containers: docker ps Common gotcha (based on your recent Docker issues) If you see access forbidden , it means: Image not pulled (private registry) Not logged in Login first: docker login Then retry: docker start $(docker ps -aq)  

Back up from Android to OneDrive with rclone

Backing up your Android device to OneDrive is easy using rclone . Even if your OneDrive account has two-factor authentication (2FA) , rclone works perfectly by authorizing once through a web browser. Step 1 — Install rclone in Termux pkg install rclone Step 2 — Configure OneDrive Run the following command: rclone config Answer the prompts as follows: New remote: n Name: onedrive Storage: OneDrive Client ID: press Enter Client Secret: press Enter Edit advanced config? n Use auto config? n (important on Android) After choosing No for auto config, rclone will show a long URL. Copy the URL Open it in your Android web browser Sign in to OneDrive and approve access Copy the verification code Paste it back into Termux Two-factor authentication works normally during this step. Step 3 — Test the OneDrive Connection rclone lsd onedrive: If your OneDrive folders appear, the setup is complete. Step 4 — Backup Using ...

Using NextDNS to block ad on Android

Here’s a full guide to understanding NextDNS — what it does, how to set it up on your Android device (and elsewhere), and tips to get the most out of it. What is NextDNS? NextDNS is a cloud-based DNS filtering and security service. According to its website, it: Blocks ads, trackers, malicious domains, phishing, cryptojacking and more. Works across all devices and networks (WiFi, mobile, public hotspots) Supports modern DNS encryption protocols (DNS-over-TLS, DNS-over-HTTPS) for better privacy. Provides customization: blocklists, allow-lists, content categories, parental controls, logging & analytics. In short: it works like a “smart hosts file + firewall” but at the DNS level, meaning you don’t need root or filesystem hacks. How to set up NextDNS on Android STEP 1 — Create your NextDNS profile Go to: https://my.nextdns.io Create an account (free) You will see a profile ID like: abcd12.dns.nextdns.io This ...

Run termux script using macrodroid

Running a Termux script from MacroDroid is best done using the Termux:Tasker plugin. Despite the name, this plugin works perfectly with MacroDroid. Prerequisite: The "F-Droid" Rule Critical: You must install both Termux and the Termux:Tasker plugin from F-Droid . If you installed Termux from the Google Play Store, it will not work because the Play Store version is outdated. Action: Uninstall the Play Store version and install the latest versions from F-Droid. Step 1: Set up the Termux Environment Open Termux. Create the mandatory folder for external scripts: mkdir -p ~/.termux/tasker Move your script to this folder (or create a new one there). Example: nano ~/.termux/tasker/myscript.sh Important: Make the script executable. chmod +x ~/.termux/ta...

Disable accessibilty and Developer mode to run app

APP="com.banking.app" # Turn OFF Developer Options (UI only, does not reset settings) ~/rish/rish -c "settings put global development_settings_enabled 0" # Backup the current accessibility services ORIGINAL=$(~/rish/rish -c "settings get secure enabled_accessibility_services") echo "Original accessibility services:" echo "$ORIGINAL" echo "Disabling all accessibility services..." ~/rish/rish -c "settings put secure enabled_accessibility_services \"\"" ~/rish/rish -c "settings put secure accessibility_enabled 0" echo "Launching $APP..." ~/rish/rish -c "monkey -p $APP -c android.intent.category.LAUNCHER 1 >/dev/null 2>&1" echo "Waiting for $APP to close..." while true; do     TOP=$(~/rish/rish -c "dumpsys activity activities | grep mResumedActivity | grep $APP")     if [ -z "$TOP" ]; then         break     fi     sleep 1 done echo "$APP...

Archive and Unarchive app using rish

Archive and Unarchive App Using Rish To archive: ~/rish/rish -c 'pm archive --user 0 com.example.app' To unarchive: ~/rish/rish -c 'pm request-unarchive --user 0 com.example.app' This will unarchive from Play Store. To backup and restore locally: Archive and backup: # Create backup folder ~/rish/rish -c "mkdir -p /data/local/tmp/com.example.app" # Delete old backup ~/rish/rish -c "rm -f /data/local/tmp/com.example.app/*" # Copy all APK files for p in $(~/rish/rish -c "pm path com.example.app" | cut -d: -f2); do ~/rish/rish -c "cp "$p" /data/local/tmp/com.example.app/" done # Archive ~/rish/rish -c "pm archive --user 0 com.example.app" exit Restore: PACKAGE="com.example.app" APK_DIR="/data/local/tmp/com.example.app" # Install / unarchive with Play Store as installer SESSION=$(~/rish/rish -c "pm install-create -i com.android.vending" | awk -F'[][]...