Android apps
46 subscribers
6 photos
1 video
2 files
126 links
Mostly Foss android apps I daily use and love but also many that are usefull but not necessary currently use.
Suggest apps at @favandroidappschat
Download Telegram
Neutrinote

#setup

Backup:

- Enable mirror ,it can be a webdav Mount from davx5 or a nextcloud Mount. Both mounts support mtls.

- Backup updata before export data.

- Default to markdown view instead of edit on not new notes :
Enable "show hidden" and add com.appmindlab.nano.pref_preview_mode|true to ~neutrinote_settings_data

- Change the number of backups to keep (default is 10) : com.appmindlab.nano.pref_max_backup_count|2

Available flags :
https://appml.github.io/nano/#hacks
Microg location provider

#maps

https://positon.xyz/
Came across some interesting password managers that are great but lack some features.

#passwords

Keypass

https://github.com/yogeshpaliyal/KeyPass

Has a great ui but lacks the ability to directly import from bitwarden and more importantly died not act as an auto fill service.

Both are planned


Keygo

https://github.com/OffRange/KeyGo

Also looks amazing but lacks the ability for periodic backups atm but it is planned.

Keeping an eye on them.
Export the blacklisted apps list from Aurora store

#termux

just copy

/data/user/0/com.aurora.store/shared_prefs/com.aurora.store_preferences.xml

Source
https://gitlab.com/AuroraOSS/AuroraStore/-/issues/1057#note_1812754092
Nophonespam

Unmaintained for years but it has a unique feature that only allows calls from contacts . Useful for minors devices that needs some parental control.

https://gitlab.com/bitfireAT/NoPhoneSpam

#calls
It prints a list of installed apps by ap name.and package name categorized by install source.

Save scipt and bash script.sh > list.txt if you want the list saved to a file

#termux

#!/bin/bash

# Define a temporary file to hold the raw data
temp_file=$(mktemp)

# Extract APK file paths, package names, and installation methods
pm list packages -3 -f -i | sed -n 's|package:\(/data/app/[^/]\+/[^/]\+/base.apk\)=\([^ ]\+\) installer=\([^ ]\+\)|\1 \2 \3|p' | while read apk package installer; do
# Extract application name using aapt
app_name=$(aapt dump badging "$apk" 2>/dev/null | grep 'application: label=' | awk -F"'" '{print $2}')

# Format application name based on word count
if [ $(echo "$app_name" | awk '{print NF}') -le 1 ]; then
short_name="$app_name"
else
short_name=$(echo "$app_name" | awk '{print $1 "_" $2}')
fi

# Print application name, package name, and installer to the temporary file
echo "$short_name $package $installer" >> "$temp_file"
done

# Define function to print section with separator
print_section() {
local section_title="$1"
local installer_filter="$2"

echo "===================================="
echo "$section_title:"
echo "------------------------------------"
grep "$installer_filter" "$temp_file" | awk '{print $1, $2}'
echo
}

# Print sections with visual separators
print_section "Aurora/Play Store Apps (com.android.vending)" 'com.android.vending'
print_section "Aurora Droid Apps (com.aurora.adroid)" 'com.aurora.adroid'
print_section "Obtainium Apps (dev.imranr.obtainium)" 'dev.imranr.obtainium'
print_section "APK Installs (com.android.packageinstaller)" 'com.android.packageinstaller'

# Print unknown category with proper handling
echo "===================================="
echo "Unknown (null):"
echo "------------------------------------"
grep -v 'com.android.vending\|com.aurora.adroid\|dev.imranr.obtainium\|com.android.packageinstaller' "$temp_file" | awk '{print $1, $2}'

# Clean up temporary file
rm "$temp_file"
Revised script that also prints the fdroid link of the apps and fallback to a playstore link if there is no valid fdroid one.

#termux

#!/bin/bash

# Create a temporary file to hold the raw data
temp_file=$(mktemp)

# Extract APK file paths, package names, and installation methods
pm list packages -3 -f -i | sed -n 's|package:\(/data/app/[^/]\+/[^/]\+/base.apk\)=\([^ ]\+\) installer=\([^ ]\+\)|\1 \2 \3|p' | while read apk package installer; do
# Extract application name using aapt
app_name=$(aapt dump badging "$apk" 2>/dev/null | grep 'application: label=' | awk -F"'" '{print $2}')

# Only proceed if both app_name and package are available
if [ -n "$app_name" ] && [ -n "$package" ]; then
# Format the application name based on word count
if [ $(echo "$app_name" | awk '{print NF}') -le 1 ]; then
short_name="$app_name"
else
short_name=$(echo "$app_name" | awk '{print $1 "_" $2}')
fi

# Generate F-Droid and Play Store links
fdroid_link="https://f-droid.org/en/packages/$package"
playstore_link="https://play.google.com/store/apps/details?id=$package"

# Validate the F-Droid link with wget --spider
if wget --spider "$fdroid_link" 2>/dev/null; then
link="$fdroid_link"
else
link="$playstore_link"
fi

# Write application name, package name, and valid link to the temporary file
echo "$short_name $package $link $installer" >> "$temp_file"
fi
done

# Define function to print section with separator
print_section() {
local section_title="$1"
local installer_filter="$2"

echo "===================================="
echo "$section_title:"
echo "------------------------------------"

# Filter based on installer and print app details
awk -v installer_filter="$installer_filter" '{
if ($4 == installer_filter) {
print "App Name: " $1;
print "Package: " $2;
print "Link: " $3;
print "---";
}
}' "$temp_file"
echo
}

# Print sections with visual separators and line breaks for each element
print_section "Aurora/Play Store Apps (com.android.vending)" 'com.android.vending'
print_section "Aurora Droid Apps (com.aurora.adroid)" 'com.aurora.adroid'
print_section "Obtainium Apps (dev.imranr.obtainium)" 'dev.imranr.obtainium'
print_section "APK Installs (com.android.packageinstaller)" 'com.android.packageinstaller'

# Print unknown category with proper handling
echo "===================================="
echo "Unknown (null):"
echo "------------------------------------"
awk '{
if ($4 != "com.android.vending" && $4 != "com.aurora.adroid" && $4 != "dev.imranr.obtainium" && $4 != "com.android.packageinstaller") {
print "App Name: " $1;
print "Package: " $2;
print "Link: " $3;
print "---";
}
}' "$temp_file"

# Clean up temporary file
rm "$temp_file"
Github search for repos that match a search query and contain apk releases.


- Parse search query as argument.
- Look for matches in repo names, descriptions, and read.me files.
- Perform search in repos started from the more recent ones.
- Return repos that contain apk releases.
- Github api limits query matches to 1000 so a max of 1000 matched repos will be checked for apk files.
- Checks for requirements and imstalls them if mossing.
- Show progress bar.
- Replace you github token under # Hardcoded GitHub personal access token
GITHUB_TOKEN = "your_github_access_token"
- Rate limit is 1000 repos per hour.

- Usage: save the script to file and run python script.py "search_query"

#termux


https://github.com/ippocratis/Termux-scripts/blob/main/GH_app_search.md
List connected devices on local network with IP MAC and hostnames

#termux

pkg install root-repo

pkg install arp-scan

su -c ../usr/bin/arp-scan --localnet
Mulch system webview

#divest
#module
#browser
#root

Compatible with recovery , magisk and KSU

Installs in system/product/overlay as required in a13+ and prioritizes overlay.

Flash module then install mulch webview apk https://gitlab.com/divested-mobile/mulch/-/raw/master/prebuilt/arm64/webview.apk

Enable mulch webview

su -c cmd webviewupdate set-webview-implementation us.spotco.mulch_wv

Verify with
su -c dumpsys webviewupdate

Modified fork of A4Alpha webview module already shared here.

https://github.com/lss4/mulch-webview-overlay/releases/tag/test-release2
Search recursively and case insensitive through a specified dir for matches to given multiple search terms in multiple file formats .doc, .docx, and .pdf.

#termux

It summarizes the findings by displaying the file paths, match numbers, and page numbers in a color-coded format for easier readability.



Requires:
antiword: A tool to read .doc files.

pkg install antiword

pandoc: A universal document converter, used to read .docx files.

pkg install pandoc

pdfgrep: A tool for searching text in PDF files.

pkg install pdfgrep

Usage:

bash search_summary.sh "search_term1" "search_term2" /path/to/directory/

Reminder:

You need to run termux-setup-storage to grant shared storage access permission to read from /storage/emulated/0/ (or /sdcard/).

#!/bin/bash

# Color codes
RED='\033[0;31m' # Red for errors
GREEN='\033[0;32m' # Green for success messages
YELLOW='\033[0;33m' # Yellow for match numbers
CYAN='\033[0;36m' # Cyan for file names
NC='\033[0m' # No Color

# Check for the correct number of arguments
if [ "$#" -lt 2 ]; then
echo -e "${RED}Usage: $0 <search_term1> <search_term2> ... <search_termN> <directory>${NC}"
exit 1
fi

# Assign the last argument as the directory and the rest as search terms
directory="${@: -1}"
search_terms=("${@:1:$#-1}")

# Check if the directory exists
if [ ! -d "$directory" ]; then
echo -e "${RED}Directory not found: $directory${NC}"
exit 1
fi

# Loop through each search term
for search_term in "${search_terms[@]}"; do
echo -e "${GREEN}Searching for: $search_term${NC}"
match_count=0 # Initialize match count for each search term

# Search in .doc files
find "$directory" -type f -name "*.doc" | while read -r doc; do
matches=$(antiword "$doc" 2>/dev/null | grep -ni "$search_term")
if [ ! -z "$matches" ]; then
echo -e "${CYAN}Found in: $doc${NC}"
while read -r line; do
match_count=$((match_count + 1))
page_num=$(echo "$line" | cut -d: -f1) # Extract page number from match output
match_text=$(echo "$line" | cut -d: -f2-)
echo -e " ${YELLOW}Match #$match_count (Page $page_num): ${NC}$match_text"
done <<< "$matches"
fi
done

# Search in .docx files
find "$directory" -type f -name "*.docx" | while read -r docx; do
matches=$(pandoc -t plain "$docx" 2>/dev/null | grep -ni "$search_term")
if [ ! -z "$matches" ]; then
echo -e "${CYAN}Found in: $docx${NC}"
while read -r line; do
match_count=$((match_count + 1))
page_num=$(echo "$line" | cut -d: -f1) # Extract page number from match output
match_text=$(echo "$line" | cut -d: -f2-)
echo -e " ${YELLOW}Match #$match_count (Page $page_num): ${NC}$match_text"
done <<< "$matches"
fi
done

# Search in PDF files
find "$directory" -type f -name "*.pdf" | while read -r pdf; do
matches=$(pdfgrep -ni "$search_term" "$pdf" 2>/dev/null)
if [ ! -z "$matches" ]; then
echo -e "${CYAN}Found in: $pdf${NC}"
while read -r line; do
match_count=$((match_count + 1))
page_num=$(echo "$line" | cut -d: -f1) # Extract page number from match output
match_text=$(echo "$line" | cut -d: -f2-)
echo -e " ${YELLOW}Match #$match_count (Page $page_num): ${NC}$match_text"
done <<< "$matches"
fi
done
done
App list expended

#termux

- Retrieves a list of installed APKs and their details (name, package, links) using pm and aapt.
- Checks F-Droid and Play Store links for each app.
- Categorizes apps based on their installer into sections dynamically.
- Lists Magisk modules along with their update URLs from /data/adb/modules.
- Requires tput, aapt, wget, awk, and pkg. Checks if installed and installs if missing.

https://github.com/ippocratis/Termux-scripts/blob/main/app_list_X.md
NotallyX

#notes

Encrypted backups
Pin lock
Photo attachments
File attachments
Thumbnail view with previews

Under heavy development

Forked and extended from notally since it was stalled

https://github.com/PhilKes/NotallyX