Autor |
Nachricht |
R41zW4z
Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich
|
Verfasst am:
Do Mai 01, 2025 12:43 |
  |
Hallo zusammen,
viele haben sich sicherlich schon nach einem solchen tollen Programm für Linux gesehnt.
Ich mich auch
Am Laufen habe ich es bei mir schon sehr lange unter verschiedenen Linux-Versionen. Ein Alles-In-Der-Cloud-Fan bin ich nämlich wirklich nicht.
Außerdem bietet dieses Programm ein paar nette Features.
Heute teile ich einfach mal mit der Community mein Machwerk.
Wer mit Linux arbeitet, egal ob Neuling oder Erfahrener sollte zumindest wissen, was ein Bash-Skript ist, und wie man es ausführbar macht.
Ich habe extra kein Programm kompiliert, denn so lässt es sich für jeden einsehen und verstehen... naja verstehen vielleicht nicht unbedingt, aber es tut nicht weh.
Dieses Herumgefrickel mit PlayOnLinux usw. stört Euch sicherlich auch.
Ich hoffe mal, dass es hier keine Zeichenbegrenzung gibt, denn zum Upload einer Datei kann ich hier nichts entdecken.
Vorab ein paar Infos und die Vorgehensweise.
Die Setup-Datei von MyPhoneExplorer sollte bereits heruntergeladen sein.
Es ist eine ganz normale Installation wie unter Windows auch.
Bitte sicherstellen, dass Wine und Winetricks installiert sind.
Per USB-Verbindung geht das Ganze auch, aber das würde hier jetzt den Rahmen sprengen. Es soll ja keine Google-ADB-Schulung werden.
Von daher gibt es hier die WLAN-Variante. Sie funktioniert mit vielen Linux Distributionen und Versionen sowie Wine in vielen Geschmacksrichtungen.
Wer nicht weiß, was eine Linux Distribution ist, kann hier schon aufhören weiterzulesen. Falscher Film
Und Wine ist nichts zum Trinken.
Wer Linux will, muss also auch ein bisschen Linux leben wollen. Und das hier ist nicht weniger als das, was die Windows-Jünger mit Batch, VBscript, Powershell und Python machen, wenn sie es denn können.
Copy/Paste kann wohl jeder von Euch.
Es ist wie schon erwähnt ein Bash--Skript.
1. alles in einer Textdatei speichern -> mpe.sh
2. Datei ausführbar machen -> chmod +x mpe.sh
3. Terminal öffnen und Skript starten -> bash script.sh
Bin mal gespannt, ob das hier reingeht...
Edit: 03.045.2025 16:25 Uhr
1. neueste Version von MyPhoneExplorer wird wenn geünscht vom Skript heruntergeladen (aktuell: MyPhoneExplorer_Setup_2.2.exe)
3. mein Skript vollständig kopieren und in einen Texteditor einfügen (COPY/PASTE oder per Maus) - nur bitte keine Textverarbeitung wie Libre Writer oder MS Word verwenden - das gibt unter Umständen Probleme mit unsichtbaren Sonderzeichen)
4. Datei speichern z.B. als "mpe.sh" der Einfachheit halber im selben Ordner in dem das Setup-Programm von MyPhoneExplorer gespeichert ist
kurze Zusammenfassung
- Für die jetzt und hier folgenden Schritte muss die "mpe.sh" nicht unbedingt ausführbar gemacht werden.
- Jetzt muss ein beliebiges Terminal/ Konsole geöffnet werden.
- anschließend bitte in das Verzeichnis der beiden Dateien wechseln (bei mir ~/Downloads)
Befehl: "cd ~/Downloads" (ohne Anführungszeichen)
- zur Kontrolle prüfen, ob und dass beide Dateien angezeigt werden
Befehl: "ls" oder "dir" (ohne Anführungszeichen)
- und jetzt kommt der Trommelwirbel (Skript ausführen):
Befehl: "bash mpe.sh" (am besten Leerzeichen im Dateinamen vermeiden)
- Achso: Enter/ Return drücken, wenn man den Befehl eingegeben hat
Während das Skript läuft sollten - soweit es mir möglich war querzudenken und mir Probleme vorzustellen - ziemlich viele Eventualitäten und Möglichkeiten abgedeckt sein.
Wer dennoch an einer Stelle meint, dass gleich etwas Böses passieren könnte, kann das Skript mit "STRG + C" zu jeder Zeit beenden.
Ggf. erscheint noch ein kleines Fenster für die Installation eines Microsoft-Pakets - das ist notwendig und muss wie nicht gelesene AGBs einfach installiert werden
- wenn noch nicht geschehen, die passende App zu der verwendeten MyPhoneExplorer Version auf dem SmartPhone installieren (bei den meisten vermutlich die neueste Version)
- die App starten und dafür sorgen, dass eine WLAN-Verbindung besteht (das wird in der App angezeigt, und die App wartet dann auf eine Verbindung zum Computerprogramm von MyPhoneExplorer
- im jetzt hoffentlich installierten Programm über das Dateimenü versuchen, eine WLAN-Verbindung herzustellen
Ich habe einfach ein paar Sekunden gewartet, und Tadaaa, das Smartphone wurde gefunden. Was der QR macht, weil ich nicht, weil mein Smartphone nicht mit Google spricht
Ich vermute aber, dass nichts anderes getan wird, als was Ihr mit meiner Anleitung bereits getan habt -> die App installieren und starten
Zusammen mit dieser Anleitung, dem Quelltext (für die, die ihn verstehen) und den Abschlusshinweisen am Ende des Skriptdurchlaufs sollte es den meisten gelingen, das Ding zum Fliegen zu bekommen. Und das ganz ohne Zusatzsoftware und Exportieren aus irgendwelchen Wine-Umgebungen (Präfixes), die an allen möglichen Stellen liegen können, wenn man mal den Computer wechselt. Einfach den Ordner, den man bei der Installation angegeben hat kopieren, und den Befehl, der am Ende angezeigt wird für den neuen Computer und/ oder Speicherort anpassen.
Übrigens arbeite ich gerade an der USB-Variante unter Linux.
PS: bei Firewall oder sonstigen Problemen - einfach in der Apotheke, dem Friseur oder jemanden, den Ihr nicht mögt, nachfragen
In diesem Sinne
Rainman aka R41zW4z
Code: |
#!/bin/bash
LOGFILE="${HOME}/.mpe_setup.log"
export LOGFILE
clear
# === Farben für Terminalausgabe ===
RED="\e[31m"
GREEN="\e[32m"
YELLOW="\e[33m"
BOLD="\e[1m"
RESET="\e[0m"
# === Logdateien vorbereiten ===
script_dir="$(cd "$(dirname "$0")" && pwd)"
timestamp="$(date +%Y-%m-%d_%H-%M-%S)"
mkdir -p "$script_dir/log"
logfile="$script_dir/log/MyPhoneExplorer_Install-Log_$timestamp.log"
winelog="$script_dir/log/MyPhoneExplorer_Install-Wine-Log_$timestamp.log"
backup_file=""
# --- Logfunktion mit Timestamp ---
log() {
local ts
ts=$(date '+%Y-%m-%d %H:%M:%S')
echo "[$ts] $*" >> "$logfile"
}
# --- Menüausgaben auf Terminal und Log ---
menu_echo() {
echo -e "$@" >&3
# Für Log: Entferne ANSI-Farbcodes vor dem Speichern
clean_line=$(echo -e "$@" | sed -r 's/\x1B\[[0-9;]*[mK]//g')
log "$clean_line"
}
# --- 0. Wine und Winetricks prüfen ---
check_cmd() { command -v "$1" >/dev/null 2>&1; }
log "Skript gestartet."
fehlende=""
if ! check_cmd wine; then
fehlende="Wine"
fi
if ! check_cmd winetricks; then
if [ -z "$fehlende" ]; then
fehlende="Winetricks"
else
fehlende="$fehlende und Winetricks"
fi
fi
if [ -n "$fehlende" ]; then
echo -e "${RED}Es fehlen Komponenten ($fehlende) für die Durchführung der Installation von MyPhoneExplorer.${RESET}"
echo
echo " 1) Ja, automatisch installieren"
echo " 2) Fehlende Komponenten selbst installieren und Skript später erneut ausführen"
echo
read -p "Bitte wähle eine Option [1-2]: " installopt
installopt=${installopt:-2}
case "$installopt" in
1)
echo
echo -e "${YELLOW}Alle fehlenden Komponenten werden aus den eigenen Quellen des Betriebssystem installiert.${RESET}"
echo -e "${YELLOW}Achtung: Die Installation der fehlenden Komponenten erfolgt auf eigene Gefahr!${RESET}"
echo -e "${YELLOW}Für eventuelle Probleme oder Schäden wird keine Haftung übernommen.${RESET}"
echo
echo "Möchtest Du wirklich fortfahren?"
echo " 1) Ja, fortfahren"
echo " 2) Abbrechen"
read -p "Bitte wähle eine Option [1-2]: " warnopt
warnopt=${warnopt:-2}
case "$warnopt" in
1)
pm=""
if [ -f /etc/os-release ]; then
. /etc/os-release
case "$ID" in
ubuntu|debian|linuxmint)
pm="sudo dpkg --add-architecture i386 && sudo apt update && sudo apt install wine wine32 winetricks -y"
;;
fedora)
pm="sudo dnf install wine wine-win32 winetricks"
;;
opensuse*)
pm="sudo zypper install wine wine-32bit winetricks"
;;
arch|manjaro)
pm="sudo pacman -S wine winetricks"
;;
*)
pm="Bitte installiere wine und winetricks über Deinen Paketmanager."
;;
esac
fi
echo "Installiere Wine und Winetricks z.B. mit:"
echo "$pm"
if [[ "$pm" == Bitte* ]]; then
log "Unbekannte Distribution, Installation nicht automatisch möglich."
exit 1
fi
eval "$pm"
;;
*)
echo -e "${YELLOW}Skript wird beendet.${RESET}"
log "Benutzer hat die automatische Installation abgelehnt. Skript beendet."
exit 1
;;
esac
;;
*)
echo -e "${YELLOW}Bitte installiere die fehlenden Komponenten und starte das Skript erneut.${RESET}"
log "Benutzer will Komponenten selbst installieren. Skript beendet."
exit 1
;;
esac
fi
WINETRICKS=$(type -P winetricks)
# === Laufende Wine-Prozesse anzeigen ===
running_wine_processes=()
while read -r pid cmd; do
# Versuche das Prefix zu ermitteln (optional, klappt nicht immer)
prefix=$(tr '\0' '\n' < /proc/$pid/environ 2>/dev/null | grep '^WINEPREFIX=' | cut -d= -f2-)
[ -z "$prefix" ] && prefix="(unbekannt oder Standard)"
running_wine_processes+=("PID: \"$pid\" -> $cmd -> Prefix: \"$prefix\"")
done < <(ps -eo pid,cmd | grep -E '[w]ine|[w]inedevice|[w]ineserver')
if [ ${#running_wine_processes[@]} -gt 0 ]; then
echo -e "${YELLOW}Achtung: Es laufen aktuell folgende Wine-Prozesse (Windows-Programme):${RESET}"
log "Achtung: Es laufen aktuell folgende Wine-Prozesse (Windows-Programme):"
for entry in "${running_wine_processes[@]}"; do
echo " $entry"
log " $entry"
done
echo -e "${YELLOW}Bitte beende ggf. laufende Wine-Anwendungen, um Konflikte zu vermeiden! (Dies kann zu Datenverlust für die laufenden Programme führen.)${RESET}"
log "Bitte beende ggf. laufende Wine-Anwendungen, um Konflikte zu vermeiden!"
echo
# Dick und rot markierter Prompt
echo -en "${RED}${BOLD}Es werden alle laufenden Wine-Prozesse (Windows-Programme) beendet. Trotzdem fortfahren? [j/N]: ${RESET}"
read weiter
weiter=${weiter,,}
if [[ "$weiter" != "j" && "$weiter" != "ja" ]]; then
echo "Manuell vom Benutzer abgebrochen."
log "Vom Benutzer wegen laufender Wine-Prozesse abgebrochen."
exit 1
fi
echo -e "${YELLOW}Beende alle laufenden Wine-Prozesse (pkill -9 -f wine)...${RESET}"
log "Alle laufenden Wine-Prozesse werden hart beendet (pkill -9 -f wine)."
pkill -9 -u "$USER" -f wine
fi
# === 1. Disclaimer mit j/n ===
clear
printf "%b\n" "${YELLOW}DISCLAIMER:${RESET}" # Farbige Überschrift
cat <<EOF
Dieses Skript ist kein Bestandteil des Programmes MyPhoneExplorer und wird offiziell nicht von "Franz Josef Wechselberger" unterstützt.
Die Verwendung geschieht auf eigene Gefahr und die Haftung liegt bei Dir selbst. Ich Empfehle, die Installation in einer virtuellen Maschine oder bei jemanden, den Du nicht magst, zu testen.
EOF
echo
read -p "Bist Du mit dem Disclaimer einverstanden? [j/n]: " disclaimer_accept
disclaimer_accept=${disclaimer_accept,,}
log "Disclaimer Zustimmung: $disclaimer_accept"
if [[ "$disclaimer_accept" != "j" ]]; then
echo -e "${RED}Tja, wer nicht will...${RESET}"
log "Nutzer hat Disclaimer abgelehnt, Skript beendet."
exit 1
fi
# === 1a. Hauptmenü nach Disclaimer ===
while true; do
echo
echo -e "${YELLOW}Was möchtest Du tun?${RESET}"
echo " 1) Installation starten"
echo " 2) Installationsverzeichnis anzeigen"
echo " 3) Hilfe anzeigen"
echo " 4) Beenden (oder STRG + C)"
read -p "Bitte wähle eine Option [1-4]: " main_choice
main_choice=${main_choice,,}
case "$main_choice" in
1)
log "Menüauswahl: Installation starten"
break
;;
2)
echo "Das Installationsverzeichnis wird später im Skript ausgewählt."
log "Menüauswahl: Installationsverzeichnis anzeigen (noch nicht implementiert)"
;;
3)
echo
echo "Hilfe: Dieses Skript installiert MyPhoneExplorer in einem Wine-Präfix. Folge den Anweisungen im Terminal."
log "Menüauswahl: Hilfe anzeigen"
;;
4)
echo -e "${RED}Beendet auf Wunsch des Nutzers.${RESET}"
log "Menüauswahl: Beenden, Skript beendet."
exit 0
;;
"")
echo -e "${RED}Es wurde keine Auswahl getroffen. Bitte erneut versuchen.${RESET}"
;;
*)
echo -e "${RED}Ungültige Eingabe. Bitte wähle 1, 2, 3 oder 4.${RESET}"
;;
esac
done
# === 2. Umleitung der Ausgaben (außer Menü) in Log ===
exec 3>&1 4>&2
exec > >(tee -a "$logfile") 2>&1
# === 3. Installationspfad auswählen und prüfen ===
while true; do
menu_echo
menu_echo -e "${YELLOW}Bitte wähle einen Installationspfad für MyPhoneExplorer:${RESET}"
menu_echo " 1) $HOME/MyPhoneExplorer [Standard]"
menu_echo " 2) eigenen Pfad auswählen"
menu_echo " 3) Beenden"
echo
read -p "Auswahl [1]: " auswahl <&3
auswahl=${auswahl:-1}
case "$auswahl" in
1)
pfad=~/MyPhoneExplorer
;;
2)
echo
menu_echo "Bitte gib den gewünschten Pfad ein."
menu_echo "${RED}Hinweis: Falls der Pfad Leerzeichen enthält, bitte in Anführungszeichen setzen!${RESET}"
menu_echo "Beispiel: \"/home/$USER/Downloads\""
read -e -p "Installationspfad: " pfad <&3
pfad="${pfad/#~/$HOME}"
log "Benutzerdefinierter Pfad eingegeben: $pfad"
;;
3)
menu_echo "${YELLOW}Skript wird beendet.${RESET}"
log "Benutzer hat das Skript beendet."
exit 0
;;
*)
menu_echo "${RED}Ungültige Auswahl.${RESET}"
continue
;;
esac
log "Installationspfad Auswahl: $auswahl ($pfad)"
# Existiert der Ordner?
if [ -d "$pfad" ]; then
# Ist der Ordner leer?
if [ -z "$(ls -A "$pfad")" ]; then
menu_echo "${YELLOW}Der ausgewählte Ordner \"$pfad\" existiert bereits, ist aber leer.${RESET}"
menu_echo " 1) Ordner löschen und neuen Pfad wählen"
menu_echo " 2) Anderen Pfad wählen"
menu_echo " 3) Beenden"
read -p "Auswahl [2]: " leerauswahl <&3
leerauswahl=${leerauswahl:-2}
case "$leerauswahl" in
1)
rm -rf "$pfad"
menu_echo "${GREEN}Ordner gelöscht.${RESET}"
log "Leerer Ordner gelöscht: $pfad"
continue
;;
2)
continue
;;
3)
menu_echo "${YELLOW}Skript wird beendet.${RESET}"
log "Benutzer hat das Skript beendet."
exit 0
;;
*)
menu_echo "${RED}Ungültige Auswahl.${RESET}"
continue
;;
esac
else
# Prüfen, ob Wine-Präfix
if [ -f "$pfad/system.reg" ] && [ -f "$pfad/user.reg" ] && [ -f "$pfad/userdef.reg" ] && [ -d "$pfad/drive_c" ]; then
# Architektur feststellen
arch="win32"
if grep -q "arch=win64" "$pfad/system.reg"; then
arch="win64"
fi
menu_echo
menu_echo "${YELLOW}Im gewählten Ordner befindet sich bereits ein ${arch}-Wine-Präfix, in dem ggf. Windows Programme installiert sind.${RESET}"
menu_echo "${RED}Warnung: Eine Installation in ein bestehendes Präfix kann zu Konflikten mit anderen Programmen führen!${RESET}"
menu_echo "${RED}Es können Daten überschrieben oder beschädigt werden.${RESET}"
menu_echo
menu_echo " 1) In dieses Präfix installieren"
menu_echo " 2) Präfix löschen und fortsetzen"
menu_echo " 3) Anderen Pfad wählen"
menu_echo " 4) Beenden"
echo
read -p "Auswahl [3]: " praefixauswahl <&3
praefixauswahl=${praefixauswahl:-3}
case "$praefixauswahl" in
1)
log "Installation erfolgt im bestehenden Präfix ($pfad, $arch)"
# Hier folgt die normale Installationslogik
break
;;
2)
menu_echo "${RED}Das Präfix \"$pfad\" wird jetzt unwiderruflich gelöscht!${RESET}"
rm -rf "$pfad"
menu_echo "${GREEN}Präfix wurde gelöscht. Ein neues Präfix wird angelegt und die Installation fortgesetzt.${RESET}"
log "Präfix gelöscht: $pfad"
mkdir -p "$pfad"
# Hier ggf. weitere Initialisierung für ein neues Präfix
WINEARCH=win32 WINEPREFIX="$pfad" wineboot
break
;;
3)
continue
;;
4)
menu_echo "${YELLOW}Skript wird beendet.${RESET}"
log "Benutzer hat das Skript beendet."
exit 0
;;
*)
menu_echo "${RED}Ungültige Auswahl.${RESET}"
continue
;;
esac
else
# Ordner ist befüllt, aber KEIN Wine-Präfix
menu_echo "${RED}Warnung: Im gewählten Ordner befinden sich bereits Daten, aber kein vollständiges Wine-Präfix!${RESET}"
menu_echo " 1) Trotzdem verwenden (Achtung: Dateien könnten überschrieben werden!)"
menu_echo " 2) Anderen Pfad wählen"
menu_echo " 3) Beenden"
read -p "Auswahl [2]: " befuelltauswahl <&3
befuelltauswahl=${befuelltauswahl:-2}
case "$befuelltauswahl" in
1)
log "Installation erfolgt im bestehenden, aber nicht leeren Ordner: $pfad"
break
;;
2)
continue
;;
3)
menu_echo "${YELLOW}Skript wird beendet.${RESET}"
log "Benutzer hat das Skript beendet."
exit 0
;;
*)
menu_echo "${RED}Ungültige Auswahl.${RESET}"
continue
;;
esac
fi
fi
else
# Ordner existiert nicht, anlegen
mkdir -p "$pfad"
if [ $? -eq 0 ]; then
menu_echo "${GREEN}Ordner \"$pfad\" wurde angelegt.${RESET}"
log "Ordner wurde neu angelegt: $pfad"
else
menu_echo "${RED}Fehler: Ordner \"$pfad\" konnte nicht angelegt werden.${RESET}"
log "Fehler beim Anlegen des Ordners: $pfad"
continue
fi
# wineboot separat prüfen und Fehler ggf. anders behandeln
echo "DEBUG: LOGFILE='$LOGFILE'" >&2
WINEARCH=win32 WINEPREFIX="$pfad" wineboot 2>>"$LOGFILE"
if [ $? -ne 0 ]; then
menu_echo "${YELLOW}Warnung: wineboot für \"$pfad\" war nicht erfolgreich. Prüfe Logfile.${RESET}"
log "Warnung: wineboot für \"$pfad\" war nicht erfolgreich."
# Optional: continue oder abbrechen, je nach gewünschtem Verhalten
fi
fi
done
menu_echo "${GREEN}Installationspfad gewählt: $pfad${RESET}"
log "Installationspfad gewählt: $pfad"
menu_echo
# === 4. Wine-Versionen sammeln und auswählen ===
extract_version() {
local ver="$1"
if [[ "$ver" =~ ([0-9]+\.[0-9]+) ]]; then
echo "${BASH_REMATCH[1]}"
else
echo "$ver"
fi
}
collect_wine_versions() {
local base_dir="$1"
local origin="$2"
local -n versions_ref=$3
local -n paths_ref=$4
[ ! -d "$base_dir" ] && return
while IFS= read -r wine_bin; do
ver_raw=$("$wine_bin" --version 2>/dev/null)
if [[ "$ver_raw" == wine* ]]; then
ver=$(extract_version "$ver_raw")
name=$(basename "$(dirname "$wine_bin")")
# Nur aufnehmen, wenn Pfad noch nicht enthalten ist
if [[ ! " ${paths_ref[@]} " =~ " $wine_bin " ]]; then
versions_ref+=("$name|$ver|$origin")
paths_ref+=("$wine_bin")
fi
fi
done < <(find "$base_dir" -type f -name "wine" -executable 2>/dev/null)
}
collect_system_wines() {
local -n versions_ref=$1
local -n paths_ref=$2
# Suche nach allen typischen wine-Befehlen, inkl. "wine" selbst!
mapfile -t bins < <(compgen -c | grep -E '^wine($|64|-(stable|devel|staging|ge|[0-9]+))$' | sort -u)
for bin in "${bins[@]}"; do
path=$(which "$bin" 2>/dev/null)
if [ -x "$path" ]; then
ver_raw=$("$path" --version 2>/dev/null)
if [[ "$ver_raw" == wine* ]]; then
ver=$(extract_version "$ver_raw")
name="$bin"
# Nur aufnehmen, wenn Pfad noch nicht enthalten ist
if [[ ! " ${paths_ref[@]} " =~ " $path " ]]; then
versions_ref+=("$name|$ver")
paths_ref+=("$path")
fi
fi
fi
done
}
is_stable() {
[[ "$1" =~ stable ]] && return 0 || return 1
}
sort_versions_desc() {
printf "%s\n" "${!1}" | sort -t'|' -k2 -V -r
}
declare -a system_versions system_paths
# Nur systemweite Wine-Versionen sammeln
collect_system_wines system_versions system_paths
system_versions_sorted=($(sort_versions_desc system_versions[@]))
# Debug-Ausgabe
menu_echo "Gefundene systemweite Wine-Versionen:"
for i in "${!system_versions[@]}"; do
name="${system_versions[$i]%%|*}"
ver="${system_versions[$i]#*|}"; ver="${ver%%|*}"
path="${system_paths[$i]}"
menu_echo " $name $ver -> $path"
done
if (( ${#system_versions_sorted[@]} == 0 )); then
menu_echo
menu_echo "${RED}Keine systemweite Wine-Installation gefunden! Bitte installiere Wine über Deinen Paketmanager.${RESET}"
menu_echo
log "Abbruch: Keine systemweite Wine-Installation gefunden."
exit 1
fi
# Standardauswahl bestimmen
find_default() {
local -n versions=$1
for i in "${!versions[@]}"; do
name="${versions[i]%%|*}"
if is_stable "$name"; then
echo "$i"
return
fi
done
echo -1
}
default_system=$(find_default system_versions_sorted)
default_idx=$default_system
(( default_idx < 0 )) && default_idx=0
# Auswahlmenü anzeigen (ohne Pfadangabe, nur Name und Version)
# Anzahl der gefundenen Wine-Versionen
wine_count=${#system_versions_sorted[@]}
if (( wine_count > 1 )); then
menu_echo
menu_echo "Es wurden mehrere Wine-Versionen gefunden."
for i in "${!system_versions_sorted[@]}"; do
version="${system_versions_sorted[$i]}"
name="${version%%|*}"
ver="${version#*|}"; ver="${ver%%|*}"
menu_echo " $((i+1))) $name $ver"
done
menu_echo ""
menu_echo "Bitte eine Wine-Version auswählen, die für die Installation von MyPhoneExplorer verwendet werden soll:"
read -p "Auswahl [$(($default_idx + 1))]: " auswahl <&3
auswahl=${auswahl:-$((default_idx + 1))}
log "Wine-Version Auswahl: $auswahl"
if ! [[ "$auswahl" =~ ^[0-9]+$ ]] || (( auswahl < 1 || auswahl > wine_count )); then
menu_echo "${RED}Ungültige Auswahl.${RESET}"
log "Ungültige Wine-Version Auswahl: $auswahl"
exit 1
fi
index=$((auswahl - 1))
selected_version="${system_versions_sorted[index]}"
selected_path="${system_paths[index]}"
elif (( wine_count == 1 )); then
version="${system_versions_sorted[0]}"
name="${version%%|*}"
ver="${version#*|}"; ver="${ver%%|*}"
menu_echo
menu_echo "Es wurde nur eine Wine-Version gefunden:"
menu_echo " $name $ver"
menu_echo ""
while true; do
read -p "Soll diese für die Installation von MyPhoneExplorer verwendet werden? [ja, nein, abbrechen]: " antwort <&3
antwort=${antwort,,}
log "Wine-Version Einzel-Auswahl: $antwort"
case "$antwort" in
ja|j)
selected_version="$version"
selected_path="${system_paths[0]}"
break
;;
nein|n)
menu_echo
menu_echo "${YELLOW}Bitte installiere eine andere Wine-Version und starte das Skript neu.${RESET}"
menu_echo
log "Nutzer möchte andere Wine-Version, Skript beendet."
exit 1
;;
abbrechen|a|exit|quit)
menu_echo "${RED}Abgebrochen.${RESET}"
log "Nutzer hat abgebrochen."
exit 1
;;
*)
menu_echo "${YELLOW}Bitte 'ja', 'nein' oder 'abbrechen' eingeben.${RESET}"
;;
esac
done
else
menu_echo
menu_echo "${RED}Keine systemweite Wine-Installation gefunden! Bitte installiere Wine über Deinen Paketmanager.${RESET}"
menu_echo
log "Abbruch: Keine systemweite Wine-Installation gefunden."
exit 1
fi
menu_echo
menu_echo "Gewählt: $selected_version"
menu_echo "Pfad: $selected_path"
log "Gewählte Wine-Version: $selected_version, Pfad: $selected_path"
# === 5. Setup.exe auswählen und prüfen ===
menu_echo
menu_echo "${YELLOW}Wie möchtest Du das Installationsprogramm auswählen?${RESET}"
menu_echo "1) Neueste Version von MyPhoneExplorer herunterladen"
menu_echo "2) Bereits vorhandene Setup.exe verwenden"
read -p "Bitte Option wählen [1-2]: " setup_option
case "$setup_option" in
1)
skript_ordner="$(dirname "$(readlink -f "$0")")"
# Dateinamen aus HTTP-Header extrahieren
setup_name=$(curl -sI -L "https://sourceforge.net/projects/myphoneexplorer/files/latest/download" | \
grep -i 'content-disposition' | \
sed -n 's/.*filename="\?\([^"]*\)".*/\1/p')
[ -z "$setup_name" ] && setup_name="MyPhoneExplorer_Setup.exe"
setup_path="$skript_ordner/$setup_name"
menu_echo "Lade neueste MyPhoneExplorer-Version herunter..."
curl -L -o "$setup_path" "https://sourceforge.net/projects/myphoneexplorer/files/latest/download"
menu_echo "Download abgeschlossen: $setup_path"
;;
2|*)
menu_echo "${YELLOW}Bitte gib den vollständigen Pfad zur Setup.exe an.${RESET}"
menu_echo "${RED}Hinweis: Falls der Pfad Leerzeichen enthält, bitte in Anführungszeichen setzen!${RESET}"
menu_echo "Beispiel: \"/home/$USER/Downloads/My Phone Explorer Setup.exe\""
read -e -p "Pfad zur Setup-Datei: " setup_path <&3
setup_path="${setup_path/#~/$HOME}"
;;
esac
# Nur die reine Eingabe loggen!
log "Setup.exe Pfad (User-Auswahl): $setup_path"
if [ ! -f "$setup_path" ]; then
menu_echo "${RED}Fehler: Datei '$setup_path' existiert nicht!${RESET}"
log "Fehler: Setup.exe nicht gefunden: $setup_path"
exit 1
fi
menu_echo
menu_echo "pack ma's..."
log "Setup wird gestartet: $setup_path"
# === 6. Installation ===
menu_echo "Installiere vb6run im Prefix..."
log "Starte winetricks vb6run und Setup.exe"
{
WINEPREFIX="$pfad" "$WINETRICKS" -q vb6run
WINEPREFIX="$pfad" "$selected_path" "$setup_path" /S
} &> "$winelog"
install_exitcode=$?
exec 1>&3 2>&4
echo
if [ $install_exitcode -eq 0 ]; then
echo -e "${GREEN}Die Installation war erfolgreich!${RESET}"
log "Installation erfolgreich."
else
echo -e "${RED}Es sind Fehler aufgetreten, bitte prüfe die Logdateien.${RESET}"
log "Installation fehlgeschlagen."
fi
echo
echo "Logdateien:"
echo "Installationslog: $(realpath "$logfile")"
echo "Wine-Log: $(realpath "$winelog")"
if [ -n "$backup_file" ]; then
echo "Backup: $(realpath "$backup_file")"
fi
if [ -f "$pfad/drive_c/Program Files (x86)/MyPhoneExplorer/install.log" ]; then
echo "MyPhoneExplorer-Install-Log: $(realpath "$pfad/drive_c/Program Files (x86)/MyPhoneExplorer/install.log")"
fi
# --- Desktop-Verknüpfung ---
DESKTOP_DIR="$(xdg-user-dir DESKTOP 2>/dev/null || echo "$HOME/Desktop")"
# Architektur und Pfad bestimmen
if grep -q 'arch=win64' "$pfad/system.reg" 2>/dev/null; then
mpe_exe="$pfad/drive_c/Program Files (x86)/MyPhoneExplorer/MyPhoneExplorer.exe"
else
mpe_exe="$pfad/drive_c/Program Files/MyPhoneExplorer/MyPhoneExplorer.exe"
fi
if [ -d "$DESKTOP_DIR" ]; then
cat > "$DESKTOP_DIR/MyPhoneExplorer.desktop" <<EOF
[Desktop Entry]
Name=MyPhoneExplorer
Exec=env WINEPREFIX="$pfad" "$selected_path" "$mpe_exe"
Type=Application
Icon=wine
Terminal=false
Categories=Utility;
EOF
chmod +x "$DESKTOP_DIR/MyPhoneExplorer.desktop"
echo "Desktop-Verknüpfung erstellt: $DESKTOP_DIR/MyPhoneExplorer.desktop"
log "Desktop-Verknüpfung erstellt: $DESKTOP_DIR/MyPhoneExplorer.desktop"
else
echo "Desktop-Verzeichnis nicht gefunden, keine Verknüpfung erstellt."
log "Desktop-Verzeichnis nicht gefunden, keine Verknüpfung erstellt."
fi
echo
echo -e "${BOLD}Alternativ zur Desktop-Verknüpfung kann MyPhoneExplorer auch mit folgendem Befehl gestartet werden:${RESET}"
echo -e "${YELLOW}WINEPREFIX=\"$pfad\" \"$selected_path\" \"$mpe_exe\"${RESET}"
echo
echo -e "${YELLOW}${BOLD}Verwendung"
echo -e "----------${RESET}"
echo -e "1. MyPhoneExplorer-App auf dem Smartphone installieren und starten."
echo -e "2. Im MyPhoneExplorer eine Verbindung per WLAN aufbauen: Menü ${YELLOW}${BOLD}\"Datei\" - \"Verbinden\"${RESET} oder ${YELLOW}${BOLD}F1${RESET} drücken."
echo
echo -e "${RED}${BOLD}WICHTIG: Darauf achten, dass in der MyExplorerApp eine IP-Adresse angezeigt wird.\nGgf. die App noch einmal neu starten.${RESET}"
echo
echo " --- Das Smartphone sollte automatisch erkannt werden. ---"
echo
echo "Der Rest ist wie unter Windows auch. Siehe Handbuch."
echo
echo "Viel Spaß, falls alles läuft. Ansonsten noch mehr Spaß beim Entkäfern ;-)"
echo
echo
echo
|
Viel Spaß |
Zuletzt bearbeitet von R41zW4z am Sa Mai 03, 2025 16:24, insgesamt 6-mal bearbeitet |
|
  |
 |
HKaufmann
Anmeldedatum: 22.01.2017
Beiträge: 13
|
Verfasst am:
Do Mai 01, 2025 13:09 |
  |
R41zW4z hat Folgendes geschrieben: | Hallo zusammen,
viele haben sich sicherlich schon nach einem solchen tollen Programm für Linux gesehnt.
Ich mich auch
Am Laufen habe ich es bei mir schon sehr lange unter verschiedenen Linux-Versionen. Ein In-Der-Cloud-Speicher-Fan bin ich nämlich wirklich nicht.
Außerdem bietet dieses Programm ein paar nette Features.
Heute teile ich einfach mal mit der Community mein Machwerk.
Wer mit Linux arbeitet, egal ob Neuling oder Erfahrener sollte zumindest wissen, was ein Bash-Skript ist, und wie man es ausführbar macht.
Ich habe extra kein Programm kompiliert, denn so lässt es sich für jeden einsehen und verstehen... naja verstehen vielleicht nicht unbedingt, aber es tut nicht weh.
Dieses Herumgefrickel mit PlayOnLinux usw. stört Euch sicherlich auch.
Ich hoffe mal, dass es hier keine Zeichenbegrenzung gibt, denn zum Upload einer Datei kann ich hier nichts entdecken.
Vorab ein paar Infos und die Vorgehensweise.
Die Setup-Datei von MyPhoneExplorer sollte bereits heruntergeladen sein.
Es ist eine ganz normale Installation wie unter Windows auch.
Bitte sicherstellen, dass Wine und Winetricks installiert sind.
Per USB-Verbindung geht das Ganze auch, aber das würde hier jetzt den Rahmen sprengen. Es soll ja keine Google-ADB-Schulung werden.
Von daher gibt es hier die WLAN-Variante. Sie funktioniert mit vielen Linux Distributionen und Versionen sowie Wine in vielen Geschmacksrichtungen.
Wer nicht weiß, was eine Linux Distribution ist, kann hier schon aufhören weiterzulesen. Falscher Film
Und Wine ist nichts zum Trinken.
Wer Linux will, muss also auch ein bisschen Linux leben wollen. Und das hier ist nicht weniger als das, was die Windows-Jünger mit Batch, VBscript, Powershell und Python machen, wenn sie es denn können.
Copy/Paste kann wohl jeder von Euch.
Es ist wie schon erwähnt ein Bash--Skript.
1. alles in einer Textdatei speichern -> mpe.sh
2. Datei ausführbar machen -> chmod +x mpe.sh
3. Terminal öffnen und Skript starten -> sh script.sh
Bin mal gespannt, ob das hier reingeht...
|
Hallo R41zW4z,
verwende Bottles um Windows Programme unter Linux zum laufen zu bekommen. Finde es ist einfacher als Wine bzw PlayÓnLinux 4.
Habe kein Ahnung vom Programmieren.
Leider habe ich MPE noch nicht richtig zum laufen gebracht.
Gruß Holger |
|
|
  |
 |
K.Achim
Anmeldedatum: 01.11.2020
Beiträge: 189
|
Verfasst am:
Do Mai 01, 2025 13:34 |
  |
Danke für Deine Mühe, R41zW4z!
Erkenne ich das richtig, dass das Script letztlich eine automatisierte Installation von MPE via Wine durchführt?
Habe bereits versucht MPE mit Wine (32 und 64 bit Prefix) nanuell zu installieren, läuft beides leider nicht.
Macht Dein Script etwas Besonderes? Habe Deine Anleitung befolgt, passieren tut leider nichts.
Wahrscheinlich aber mangels meiner Kenntnis.
Schritt 3 von Dir, ausgeführt per Terminal im Pfad der Datei, ergibt "No such file", daher den Schritt abgewandelt in "sh mpe.sh" (auch mit vorangestelltem sudo)
Fehlermeldung dann: "mpe.sh: 19: local : not in a function
Aber mal abwarten, was Andere sagen, bin jetzt unterwegs und kann keine weiteren Versuche starten.
Gruß und schönen Feiertag
Achim
PS: auch Schritt 2, chmod..., habe ich dabei mit vorangestelltem sudo probiert
PPS: Linux Mint Mate 22.1 XIA |
_________________ Stand 01.03.25:
Desktop Windows 10 Pro/64-22H2, MPE v2.2-debug/14.02.25, Betterbird v102.15.1-bb41 (64bit), AddOn 4.7, Cardbook 86.4
Laptop Windows 10 Pro/64-22H2, MPE v2.2-debug/140225, Betterbird v102.15.1-bb41 (64bit), Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose |
|
  |
 |
R41zW4z
Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich
|
Verfasst am:
Do Mai 01, 2025 22:11 |
  |
K.Achim hat Folgendes geschrieben: | Danke für Deine Mühe, R41zW4z!
Erkenne ich das richtig, dass das Script letztlich eine automatisierte Installation von MPE via Wine durchführt?
Habe bereits versucht MPE mit Wine (32 und 64 bit Prefix) nanuell zu installieren, läuft beides leider nicht.
Macht Dein Script etwas Besonderes? Habe Deine Anleitung befolgt, passieren tut leider nichts.
Wahrscheinlich aber mangels meiner Kenntnis.
Schritt 3 von Dir, ausgeführt per Terminal im Pfad der Datei, ergibt "No such file", daher den Schritt abgewandelt in "sh mpe.sh" (auch mit vorangestelltem sudo)
Fehlermeldung dann: "mpe.sh: 19: local : not in a function
Aber mal abwarten, was Andere sagen, bin jetzt unterwegs und kann keine weiteren Versuche starten.
Gruß und schönen Feiertag
Achim
PS: auch Schritt 2, chmod..., habe ich dabei mit vorangestelltem sudo probiert
PPS: Linux Mint Mate 22.1 XIA |
Hallo Achim,
ja das siehst Du richtig.
Das Skript führt ohne PlayOnLinux, Lutris, Heroic oder sonstige Launcher ein vollständiges Setup durch.
Das Skript habe ich übrigens noch einmal angepasst. Es war nur ein Schönheits-/ Anzeigefehler - keine funktionale Sache.
Bevor ich gleich doch mal eine Schritt-für-Schritt-Anleitung gebe, habe ich da mal ne Frage
Ich habe keine Ahnung, wie ich das Forum hier so richtig richtig verwende.
Ein bisschen strange ist die Bedienung schon. Es gibt keinen "Abbrechen"-Button nur "Vorschau" und "Absenden", WYSIWYG ist hier auch nicht drin, naja, ich weiß.... mecker mecker mecker
Jedenfalls frage ich mich, wie ich meinen Eintrag vielleicht so positioniere, damit man es leichter findet und nicht erst irgendwo mitten eines Threads, oder wie auch immer es hier heißen mag.
Um hierhin zu gelangen, bin habe ich einfach die Suche bemüht und den nächstbesten, halbwegs aktuellen und passenden Eintrag genommen.
Deswegen hierzu meine Fragen:
- Sollte ich vielleicht einen neuen Thread erstellen?
- Wie werde ich benachrichtigt, wenn jemand auf einen Beitrag von mir antwortet? (ich habe das heute wirklich nur per Zufall gesehen, weil ich noch etwas ändern wollte - sonst wäre ich vermutlich erst wieder in ein paaar Wochen oder Monaten hier gewesen)
- Kann man hier Bilder oder Dateien hochladen- und wenn ja wie? Das würde einiges vereinfachen.
Holger alias (HKaufmann) vom vorherigen Post und Du, Ihr seid jetzt die ersten, die mit schreibt, aber ob alle danach auch sämtliche Einträge durchlesen und sehen, wenn ich Anpassungen vorgenommen habe, ist fraglich. Also auch, ob dann jemand bei so einem langen Skript überhaupt liest, was ich dazu geschrieben habe.
Wenn alles für Dich funktioniert, dann kannst Du ja auch auf diesen Thread verweisen.
Nun zur Anleitung. Du sollst ja nicht länger warten
Ach, während ich das hier so schreibe, fällt mir ein, dass ich die Anleitung wohl besser in meinem initialen Post einfüge. Dann haben alle etwas an der richtigen Stelle davon.
Aber vielleicht kannst Du mir meine beiden Fragen von oben noch beantworten. Ich möchte mir nicht das ganze Forum-Gedöns (Anleitung usw.) reinziehen müssen...
Also Anleitung = oben in meinem Beitrag
VG |
|
|
  |
 |
R41zW4z
Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich
|
Verfasst am:
Sa Mai 03, 2025 16:35 |
  |
HKaufmann hat Folgendes geschrieben: | R41zW4z hat Folgendes geschrieben: | Hallo zusammen,
viele haben sich sicherlich schon nach einem solchen tollen Programm für Linux gesehnt.
Ich mich auch
Am Laufen habe ich es bei mir schon sehr lange unter verschiedenen Linux-Versionen. Ein In-Der-Cloud-Speicher-Fan bin ich nämlich wirklich nicht.
Außerdem bietet dieses Programm ein paar nette Features.
Heute teile ich einfach mal mit der Community mein Machwerk.
Wer mit Linux arbeitet, egal ob Neuling oder Erfahrener sollte zumindest wissen, was ein Bash-Skript ist, und wie man es ausführbar macht.
Ich habe extra kein Programm kompiliert, denn so lässt es sich für jeden einsehen und verstehen... naja verstehen vielleicht nicht unbedingt, aber es tut nicht weh.
Dieses Herumgefrickel mit PlayOnLinux usw. stört Euch sicherlich auch.
Ich hoffe mal, dass es hier keine Zeichenbegrenzung gibt, denn zum Upload einer Datei kann ich hier nichts entdecken.
Vorab ein paar Infos und die Vorgehensweise.
Die Setup-Datei von MyPhoneExplorer sollte bereits heruntergeladen sein.
Es ist eine ganz normale Installation wie unter Windows auch.
Bitte sicherstellen, dass Wine und Winetricks installiert sind.
Per USB-Verbindung geht das Ganze auch, aber das würde hier jetzt den Rahmen sprengen. Es soll ja keine Google-ADB-Schulung werden.
Von daher gibt es hier die WLAN-Variante. Sie funktioniert mit vielen Linux Distributionen und Versionen sowie Wine in vielen Geschmacksrichtungen.
Wer nicht weiß, was eine Linux Distribution ist, kann hier schon aufhören weiterzulesen. Falscher Film
Und Wine ist nichts zum Trinken.
Wer Linux will, muss also auch ein bisschen Linux leben wollen. Und das hier ist nicht weniger als das, was die Windows-Jünger mit Batch, VBscript, Powershell und Python machen, wenn sie es denn können.
Copy/Paste kann wohl jeder von Euch.
Es ist wie schon erwähnt ein Bash--Skript.
1. alles in einer Textdatei speichern -> mpe.sh
2. Datei ausführbar machen -> chmod +x mpe.sh
3. Terminal öffnen und Skript starten -> sh script.sh
Bin mal gespannt, ob das hier reingeht...
|
Hallo R41zW4z,
verwende Bottles um Windows Programme unter Linux zum laufen zu bekommen. Finde es ist einfacher als Wine bzw PlayÓnLinux 4.
Habe kein Ahnung vom Programmieren.
Leider habe ich MPE noch nicht richtig zum laufen gebracht.
Gruß Holger |
Hallo Holger,
ich habe mein Skript jetzt mehrfach angepasst und in meinem ursprünglichen Post oben eingetragen.
Jetzt werden ziemlich viele Eventualitäen mit Menüs abgegriffen.
Und mein Skript kann MyPhoneExplorer sogar automatisch herunterladen, wenn man das im Menü auswählt.
PlayOnLinux, Bottles, Lutris, Heroic usw. sind auch nur Launcher und verwenden letztlich alle Wine.
Ein Fan bin ich von den Launchern auch nur, wenn sie funktionieren.
Mit diesem Skript habe ich halt die volle Kontrolle und keine versteckten Dateien innerhalb der Verzeichnisse vom jeweiligen Launcher.
Der Installationspfad wid beim Ausführen vom Skript abgefragt.
Voreingestellt ist ~/MyPhoneExplorer (also Dein Home-Dir).
Alle Log-Dateien und der Download der aktuellsten Version von MyPhoneExplorer befinden sich im Ordner, in dem Du das Skript gespeichert hast.
Aufräumarbeiten wenn nötig:
- Dekstop-Verknüpfung löschen
- Installationsordner löschen (wie geschrieben: Standard "~/MyPhoneExplorer"
- Skriptordner mit allem Inhalt löschen
Und schon ist's, als hättest Du nie mit meinem Skript Berührung gehabt.
Wir sind ja nicht unter Windoof, wo alles in der Systemregistrierung landet.
In diesem Sinne.
Hab' ein schönes Wochenende und viel Spaß mit dem Skript  |
|
|
  |
 |
K.Achim
Anmeldedatum: 01.11.2020
Beiträge: 189
|
Verfasst am:
So Mai 04, 2025 13:31 |
  |
@R41zW4z
Leider kein Erfolg. Nach Eingabe von "bash mpe.sh" (im Terminal im Speicherpfad der mpe.sh ausgeführt) kommen Fehlermeldungen...
(Linux Mint Mate 22.1 XIA)
 |
_________________ Stand 01.03.25:
Desktop Windows 10 Pro/64-22H2, MPE v2.2-debug/14.02.25, Betterbird v102.15.1-bb41 (64bit), AddOn 4.7, Cardbook 86.4
Laptop Windows 10 Pro/64-22H2, MPE v2.2-debug/140225, Betterbird v102.15.1-bb41 (64bit), Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose |
|
  |
 |
Seepferd
Anmeldedatum: 05.05.2025
Beiträge: 1
|
Verfasst am:
Mo Mai 05, 2025 12:30 |
  |
Super Arbeit, Danke für das Script!
Hallo R41zW4z
In der Überschrift steht ja schon alles. Mein "erwachsener" Laptop hat es mit seinen 18 Jahren dank deines Scripts problemlos geschafft den MyPhoneExplorer 2.2 in Linux Mint 21.3 zu installieren. Die Verbindung funktionierte einwandfrei über WLAN nach Eingabe des Passwortes aus der App vom Handy.
Beste Grüße Burkhard
An K.Achim: Du musst den Text von R41zW4z kopieren und so speichern, wie er es schrieb, als mpe.sh. Und dann erst funktioniert der Aufruf des Scripts. |
|
|
  |
 |
K.Achim
Anmeldedatum: 01.11.2020
Beiträge: 189
|
Verfasst am:
Mo Mai 05, 2025 13:14 |
  |
1. Versuch: Code in eine mit Notepad++ erstellte UTF-8 codierte txt-Datei kopiert. diese anschließend in eine mpe.sh umbenannt.
2. Versuch: Code in Notepad++ kopiert, UTF-8 voreingestellt, aber als mpe.bash gespeichert (gibt Notepad++ für .sh so vor).
3. Versuch: wie 2., allerdings mpe.bash in mpe.sh umbenannt.
Alle 3 Versuche erzeugen die gleichen Fehlermeldung, siehe oben, wobei die Dateien allerdings alle jeweils auf einem Windows Rechner erstellt wurden.
??? |
_________________ Stand 01.03.25:
Desktop Windows 10 Pro/64-22H2, MPE v2.2-debug/14.02.25, Betterbird v102.15.1-bb41 (64bit), AddOn 4.7, Cardbook 86.4
Laptop Windows 10 Pro/64-22H2, MPE v2.2-debug/140225, Betterbird v102.15.1-bb41 (64bit), Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose |
|
  |
 |
K.Achim
Anmeldedatum: 01.11.2020
Beiträge: 189
|
Verfasst am:
Mo Mai 05, 2025 13:35 |
  |
4. Versuch: Datei mit Linux und dessen Textverarbeitung erstellt und als mpe.sh gespeichert.
Das Script start nun, wie es soll, hänge jetzt aber an einer Warnung, dass sich im gewählten Ordner (Standard ausgewählt) bereits ein win32-wine-Prefix befindet und es Konflikte mit anderen Programmen geben könnte.
Was ist jetzt sinnvoll, ohne bereits andere Wine-Installationen zu gefähren (habe ja schon verschiedene Programme mit 32 und 64 Prefix installiert?
1) in dieses Präfix installieren
2) Präfix löschen und fortsetzen
... |
_________________ Stand 01.03.25:
Desktop Windows 10 Pro/64-22H2, MPE v2.2-debug/14.02.25, Betterbird v102.15.1-bb41 (64bit), AddOn 4.7, Cardbook 86.4
Laptop Windows 10 Pro/64-22H2, MPE v2.2-debug/140225, Betterbird v102.15.1-bb41 (64bit), Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose |
|
  |
 |
eck-m
Anmeldedatum: 09.01.2017
Beiträge: 336
Wohnort: Berlin
|
Verfasst am:
Mo Mai 05, 2025 14:32 |
  |
K.Achim hat Folgendes geschrieben: | Alle 3 Versuche erzeugen die gleichen Fehlermeldung, siehe oben, wobei die Dateien allerdings alle jeweils auf einem Windows Rechner erstellt wurden. | Das angemeckerte Zeichen \r ist doch offensichtlich das Zeichen für das Zeilenende bzw. die Ersatzdarstellung für ein nicht druckbares Steuerzeichen. Wie das Zeilenende dargestellt wird, ist eine Betriebssystem-spezifische Angelegenheit und weil das unterschiedlich ist, gibt es oft Schwierigkeiten bei einem Betriebssystem-übergreifenden Datenaustausch.
https://de.wikipedia.org/wiki/Textdatei#Kennzeichnung_des_Zeilenendes
Die eigentliche Zeichenkodierung wie UTF-8 legt die Darstellung des Zeilenendes nicht fest. in dem eben erwähnten Notepad++ gibt es - anders als in den meisten anderen Texteditoren - die Möglichkeit, die Darstellung des Zeilenendes einzustellen mit Bearbeiten - Format Zeilenende und so in begrenztem Maße die Möglichkeit einer Anpassung. |
|
|
  |
 |
R41zW4z
Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich
|
Verfasst am:
Mo Mai 05, 2025 15:19 |
  |
Seepferd hat Folgendes geschrieben: | Super Arbeit, Danke für das Script!
Hallo R41zW4z
In der Überschrift steht ja schon alles. Mein "erwachsener" Laptop hat es mit seinen 18 Jahren dank deines Scripts problemlos geschafft den MyPhoneExplorer 2.2 in Linux Mint 21.3 zu installieren. Die Verbindung funktionierte einwandfrei über WLAN nach Eingabe des Passwortes aus der App vom Handy.
Beste Grüße Burkhard
An K.Achim: Du musst den Text von R41zW4z kopieren und so speichern, wie er es schrieb, als mpe.sh. Und dann erst funktioniert der Aufruf des Scripts. |
Hallo Burkhard,
danke für Dein Feedback. Ich arbeite gerade an eine ziemlich idiotensichere Version für mehrere Linux-Distributionen, weil es bei meiner letzten immer noch kleine Schwierigkeiten gibt, die selbst bei mir in einigen Versuchen aufgetreten sind.
Es kostet zwar im Moment mehr Zeit, als ich ursprünglich investieren wollte, aber Spaß macht's trotzdem
Viele Grüße
R41zW4z |
|
|
  |
 |
K.Achim
Anmeldedatum: 01.11.2020
Beiträge: 189
|
Verfasst am:
Mo Mai 05, 2025 15:19 |
  |
Danke Euch, das Script läuft jetzt. Habe mit Option 1 (in vorhandes Prefix inst.) keine Schwierigkeiten in Bezug auf andere Wine-Programme festgestellt, nur mit MPE passiert überhaupt nichts, es startet nichts.
Also dachte ich, mach alles MPE-Zeuch nochmal weg, vielleicht ist durch meine voherigen Versuche irgendwo was schief gelaufen. Da ich nichts zum Deinstallieren gefunden habe, habe ich also Desktop- und Startmenü-Verknüpfungen händisch entfernt, im root-Installationsordner MyPhoneexplorer gelöscht und irgendwo war noch eine Log-Datei, die ich ebenfalls gelöscht habe. PC neugestartet und das Script nochmal durchlaufen lassen, alles gut, bis auf die bekannte Warnung, dass es schon ein Prefix gibt.
Und nu? Es wurden keine neuen Startverknüpfungen erstellt, weder auf dem Desktop, noch im Startmenü.
Hm, Linux ist nix für Luschen  |
_________________ Stand 01.03.25:
Desktop Windows 10 Pro/64-22H2, MPE v2.2-debug/14.02.25, Betterbird v102.15.1-bb41 (64bit), AddOn 4.7, Cardbook 86.4
Laptop Windows 10 Pro/64-22H2, MPE v2.2-debug/140225, Betterbird v102.15.1-bb41 (64bit), Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose |
|
  |
 |
R41zW4z
Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich
|
Verfasst am:
Di Mai 06, 2025 21:52 |
  |
K.Achim hat Folgendes geschrieben: | Danke Euch, das Script läuft jetzt. Habe mit Option 1 (in vorhandes Prefix inst.) keine Schwierigkeiten in Bezug auf andere Wine-Programme festgestellt, nur mit MPE passiert überhaupt nichts, es startet nichts.
Also dachte ich, mach alles MPE-Zeuch nochmal weg, vielleicht ist durch meine voherigen Versuche irgendwo was schief gelaufen. Da ich nichts zum Deinstallieren gefunden habe, habe ich also Desktop- und Startmenü-Verknüpfungen händisch entfernt, im root-Installationsordner MyPhoneexplorer gelöscht und irgendwo war noch eine Log-Datei, die ich ebenfalls gelöscht habe. PC neugestartet und das Script nochmal durchlaufen lassen, alles gut, bis auf die bekannte Warnung, dass es schon ein Prefix gibt.
Und nu? Es wurden keine neuen Startverknüpfungen erstellt, weder auf dem Desktop, noch im Startmenü.
Hm, Linux ist nix für Luschen  |
Hallo Achim,
auch wenn Dich Frust gerade plagt, lasse ich das mit "Hm, Linux ist nix für Luschen" nicht so einfach stehen
Linux ist zwar anders, aber es ist oftmals alles nur eine Frage der Zeit oder halt der Eingewöhnung. Und Community-Suppot hat man genug.
Vielleicht ist das Problem auch einfach nur, dass da ein bisschen zu viel Windows in Deiner Signatur steht
Dich bekomme ich jedenfalls auch noch verarztet.
Wenn es Dich nämlich beruhigt: MyPhoneExplorer läuft jetzt bei mir mit Arch Linux und Linux Mint 22.1 (extra für Dich getestet) auch mit der USB-Verbindung problemlos. Damit kann man initial den MyPhoneExplorer Client (APK) auf das Gerät pushen und auch die Remote-Steuerung des Bildschirms funktioniert wunderbar. Der Client/ die Appk wird direkt aus dem Google Play Store heruntergeladen und installiert. Per WLAN musst Du wie mit dem MyPhoneExplorer unter Windows auch schon, den die App bereits auf dem Android-Gerät installiert haben.
Für den USB-Support benötigst Du nur die "Android Debug Bridge" (ADB) von Google. Einfach aus den Linux Mint Repositories mit "apt install adb" installieren. Bei mir lief das Ganze mit einem frisch installiertem Linux Mint 22.1 ohne irgendwelche Zusatzsoftware - außer natürlich wine und winetricks, was das Skript - wenn es denn läuft - selbstständig herunterlädt.
Ich halte Dich und die anderen hier auf dem Laufenden.
VG
R41zW4z aka Rainman |
|
|
  |
 |
K.Achim
Anmeldedatum: 01.11.2020
Beiträge: 189
|
Verfasst am:
Mi Mai 07, 2025 13:17 |
  |
@Rainman
Das wäre zu schön
Gut zu wissen, dass es grundsätzlich läuft.
Bin mit DOS und Windows aufgewachsen, von daher ist ein Sinneswandel nicht ganz so einfach, aber ich acker mich durch.
Hilfe kann ich dabei sicher brauchen und wäre sehr dankbar dafür
ADB ist schon in Action, brauchte eine Alternative für ADBAppControl, wofür ich erstmal AYA gewählt habe.
Dein Script lud bei mir eine "vb6run" nach, was eine händische Installation via Wine nicht tat, zumindest nicht bewußt.
Die Hoffnung war nun also größer. Da keine Start-Icons mehr erstellt werden, habe ich den Pfad, der im Script zum Starten angegeben wird,
im Terminal eingegeben. Immerhin will MPE so tatsächlich starten, tut das aber nur mit zig err-Meldungen und nur halbfertig.
Schließe ich das Terminal, schließt auch MPE.
Um den Schwierigkeitsgrad zu erhöhen, falls es eine Rolle spielt, bei mir gibt es u.A. kein Google, denen hab ich den Hahn abgedreht.
Privatsphäre ist oberstes Gebot in meiner digitalen Welt. =)
Wie auch immer, ich denke, ich müßte die vorhandene Installation erstmal restlos entfernen, da auch keine Start-Icons mehr erstellt
werden. Hab zwar alles gelöscht, was im Dateimanager diesbezüglich zu finden war, denke aber, dass es irgendwo auch noch irgendwelche System-Configs mit Resten
drin gibt, ähnlich einer Windows Registry. Da muss ich mal suchen.
Ich harre mal der Dinge, die da kommen, Danke und Gruß
Achim  |
_________________ Stand 01.03.25:
Desktop Windows 10 Pro/64-22H2, MPE v2.2-debug/14.02.25, Betterbird v102.15.1-bb41 (64bit), AddOn 4.7, Cardbook 86.4
Laptop Windows 10 Pro/64-22H2, MPE v2.2-debug/140225, Betterbird v102.15.1-bb41 (64bit), Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.1b11, DAVx5 v4.4.9-ose |
|
  |
 |
|
|
Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB
© 2001, 2002 phpBB Group :: FI Theme ::
Alle Zeiten sind GMT + 1 Stunde
Deutsche Übersetzung von phpBB.de
|