FJ Software Foren-Übersicht  
 Homepage   •  Suchen   •  FAQ   •  Mitgliederliste   •  Registrieren   •  Login
 myphoneexplorer für linux? Nächstes Thema anzeigen
Vorheriges Thema anzeigen
Neues Thema eröffnenNeue Antwort erstellen
Autor Nachricht
Werusch



Anmeldedatum: 21.12.2024
Beiträge: 4
Wohnort: Wien

BeitragVerfasst am: Sa Dez 21, 2024 22:10 Antworten mit ZitatNach oben

Windows 11 kommt bei mir nicht mehr.
Sondern Linux Mint.
Ist angedacht, myphoneexplorer auch für linux zu programmieren?
oder läuft es auf Wine unter Linux?
Benutzer-Profile anzeigenPrivate Nachricht senden
Rolf der Erste



Anmeldedatum: 08.01.2017
Beiträge: 47
Wohnort: München

BeitragVerfasst am: Sa Dez 21, 2024 22:32 Antworten mit ZitatNach oben

Werusch hat Folgendes geschrieben:
Windows 11 kommt bei mir nicht mehr.
Sondern Linux Mint.
Ist angedacht, myphoneexplorer auch für linux zu programmieren?
oder läuft es auf Wine unter Linux?

Versuche es mal mit PlayOnLinux:
https://www.movetolinux.de/anwendungen/dienstprogramme/32-myphoneexplorer

Funktioniert bei mir sehr gut.

_________________
Samsung Galaxy Note20 mit Android 13
PC mit LINUX-ubuntu
Benutzer-Profile anzeigenPrivate Nachricht senden
Werusch



Anmeldedatum: 21.12.2024
Beiträge: 4
Wohnort: Wien

BeitragVerfasst am: Sa Dez 21, 2024 23:37 Antworten mit ZitatNach oben

Danke für den tollen Tipp.
Benutzer-Profile anzeigenPrivate Nachricht senden
eck-m



Anmeldedatum: 09.01.2017
Beiträge: 441
Wohnort: Berlin

BeitragVerfasst am: So Dez 22, 2024 10:50 Antworten mit ZitatNach oben

Werusch hat Folgendes geschrieben:
Ist angedacht, myphoneexplorer auch für linux zu programmieren?
FJ hat in früheren Posts wie diesem auf die verwendete (etwas inzwischen angejahrte) Programmierplatform verwiesen und eine Neuerstellung ausgeschlossen, woraus man schließen kann, dass es auch keine Linux-Version geben wird. Von daher wird man sich auf Tips wie den von Rolf stützen müssen.
Benutzer-Profile anzeigenPrivate Nachricht senden
Rolf der Erste



Anmeldedatum: 08.01.2017
Beiträge: 47
Wohnort: München

BeitragVerfasst am: So Dez 22, 2024 11:36 Antworten mit ZitatNach oben

eck-m hat Folgendes geschrieben:
FJ hat in früheren Posts wie diesem auf die verwendete (etwas inzwischen angejahrte) Programmierplatform verwiesen und eine Neuerstellung ausgeschlossen

Das ist natürlich sehr schade für die Zukunft von MPE, denn infolge der Spionagepolitik von Microsoft (die scannen jede Minute jeden PC!) werden immer mehr User auf Linux ausweichen. Aber mit PlayOnLinux funktionert MPE wenigstens einwandfrei unter Linux.

_________________
Samsung Galaxy Note20 mit Android 13
PC mit LINUX-ubuntu
Benutzer-Profile anzeigenPrivate Nachricht senden
K.Achim



Anmeldedatum: 01.11.2020
Beiträge: 199

BeitragVerfasst am: So Dez 22, 2024 13:32 Antworten mit ZitatNach oben

Vielleicht hilft eine Spendenmarathon? Motto "FREE MPE!" Very Happy

_________________
Stand 16.03.26:
Desktop W10 Pro/64-22H2, MPE v2.3-debug/12.03.26, Betterbird v102.15.1-bb41 (64bit), AddOn 4.10, Cardbook 86.4
Laptop Wi10 Pro/64-22H2, MPE v2.3-debug/15.01.26, Betterbird v102.15.1-bb41 (64bit), AddOn 4.10, Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.10b7, DAVx5 v4.5.10-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.10b7, DAVx5 v4.5.10-ose
Benutzer-Profile anzeigenPrivate Nachricht senden
bemanet



Anmeldedatum: 19.02.2011
Beiträge: 437

BeitragVerfasst am: So Dez 22, 2024 14:33 Antworten mit ZitatNach oben

Glaubst du wirklich, dass MPE keine Zukunft unter Windows haben wird... Very Happy
Hier kannst du mal die Nutzungszahlen von Windows zu Linux vergleichen. Laughing

_________________
Samsung Galaxy Tab S10+ / Android 16
OnePlus 5 / Android 15
Pixel 8 / Android 17
Benutzer-Profile anzeigenPrivate Nachricht senden
FJ
Site Admin


Anmeldedatum: 15.02.2006
Beiträge: 32078
Wohnort: Tirol

BeitragVerfasst am: So Dez 22, 2024 16:29 Antworten mit ZitatNach oben

Zitat:
Vielleicht hilft eine Spendenmarathon? Motto "FREE MPE!" Very Happy

Ihr könnt gerne spenden, aber bitte nicht für eine Linux-Version - die wirds von mir nicht geben. Es liegt nicht am Geld und man kann mich damit auch nicht ködern. Ich habe das Projekt neben meinem regulären Job alleine hochgezogen und halte es am Laufen. Eine Neuentwicklung für Linux ist einfach kapazitätsmäßig nichtmehr drin - ich habe alle Hände voll zu tun dass ich das Projekt so am Laufen halten kann.

Aber wenn sich jemand findet der sich daran versuchen will gerne, ich hab auch kein Problem damit wenn derjenige den bestehenden MyPhoneExplorer Client am Handy nutzt, das würde schon einen großen Teil der Entwicklungsarbeit abnehmen.

_________________
Ich bitte um Verständnis daß ich aufgrund des hohen Aufkommens im Forum und meines zeitlichen Rahmens nichtmehr jeden Thread im Forum persönlich lesen bzw. beantworten kann.

Bitte benutzt auch die Forum-Suche bzw. die FAQ
Benutzer-Profile anzeigenPrivate Nachricht sendenE-Mail sendenICQ-Nummer
Bernhard Stenzl



Anmeldedatum: 12.02.2025
Beiträge: 2

BeitragVerfasst am: Mi Feb 12, 2025 11:34 Antworten mit ZitatNach oben

Rolf der Erste hat Folgendes geschrieben:

Versuche es mal mit PlayOnLinux:
https://www.movetolinux.de/anwendungen/dienstprogramme/32-myphoneexplorer

Funktioniert bei mir sehr gut.

Hallo, Rolf,

auf https://www.movetolinux.de/linux-basics/wine-windows-emulator wird auf bottles verwiesen. Ich hab' das probiert, es geht aber auf Linux Mint 21.3 mit bottles nicht (läßt sich nicht installieren).

Mach' ich da etwas falsch?
Benutzer-Profile anzeigenPrivate Nachricht senden
Rolf der Erste



Anmeldedatum: 08.01.2017
Beiträge: 47
Wohnort: München

BeitragVerfasst am: Fr Feb 14, 2025 20:09 Antworten mit ZitatNach oben

Bernhard Stenzl hat Folgendes geschrieben:
Rolf der Erste hat Folgendes geschrieben:

Versuche es mal mit PlayOnLinux:
https://www.movetolinux.de/anwendungen/dienstprogramme/32-myphoneexplorer

Funktioniert bei mir sehr gut.

Hallo, Rolf,

auf https://www.movetolinux.de/linux-basics/wine-windows-emulator wird auf bottles verwiesen. Ich hab' das probiert, es geht aber auf Linux Mint 21.3 mit bottles nicht (läßt sich nicht installieren).

Mach' ich da etwas falsch?

Hallo Bernhard,
tut mir leid, 'bottles' gibt es nicht für ubuntu, so dass ich nicht testen kann, wie das laufen muss. Auch wenn PlayOnLinux nicht weiterentwickelt wird, funktioniert die gegenwärtige Version (bei mir) ausgezeichnet. Was läuft denn bei dir mit PlayOnLinux nicht? Vielleicht kann ich dir da weiterhelfen.
Vielleicht gibt es auch in Eurem Linux-Mint-Forum Leute, die Dir helfen können.
Gruß
Rolf

_________________
Samsung Galaxy Note20 mit Android 13
PC mit LINUX-ubuntu
Benutzer-Profile anzeigenPrivate Nachricht senden
Bernhard Stenzl



Anmeldedatum: 12.02.2025
Beiträge: 2

BeitragVerfasst am: Sa Feb 15, 2025 09:16 Antworten mit ZitatNach oben

Gut.

Ich probier's mit PlayOnLinux.

Vielen Dank!
Benutzer-Profile anzeigenPrivate Nachricht senden
HKaufmann



Anmeldedatum: 22.01.2017
Beiträge: 13

BeitragVerfasst am: So März 02, 2025 13:18 Antworten mit ZitatNach oben

Rolf der Erste hat Folgendes geschrieben:
Bernhard Stenzl hat Folgendes geschrieben:
Rolf der Erste hat Folgendes geschrieben:

Versuche es mal mit PlayOnLinux:
https://www.movetolinux.de/anwendungen/dienstprogramme/32-myphoneexplorer

Funktioniert bei mir sehr gut.

Hallo, Rolf,

auf https://www.movetolinux.de/linux-basics/wine-windows-emulator wird auf bottles verwiesen. Ich hab' das probiert, es geht aber auf Linux Mint 21.3 mit bottles nicht (läßt sich nicht installieren).

Mach' ich da etwas falsch?

Hallo Bernhard,
tut mir leid, 'bottles' gibt es nicht für ubuntu, so dass ich nicht testen kann, wie das laufen muss. Auch wenn PlayOnLinux nicht weiterentwickelt wird, funktioniert die gegenwärtige Version (bei mir) ausgezeichnet. Was läuft denn bei dir mit PlayOnLinux nicht? Vielleicht kann ich dir da weiterhelfen.
Vielleicht gibt es auch in Eurem Linux-Mint-Forum Leute, die Dir helfen können.
Gruß
Rolf


Hallo Rolf,
habe es unter Linux Mint 21.3 mit Bolltes installiert.
Als Vorlage habe ich https://www.movetolinux.de/anwendungen/dienstprogramme/32-myphoneexplorer genommen.
Bekomme auch eine Verbindung mit meinem Handy. Nur wenn ich Daten runterladen will stürzt das MPE portabel ab.
Habe die Fehlermeldung abgespeichert. Vielleicht kann jemand damnit was anfangen.

Gruß Holger
Benutzer-Profile anzeigenPrivate Nachricht senden
Rolf der Erste



Anmeldedatum: 08.01.2017
Beiträge: 47
Wohnort: München

BeitragVerfasst am: So März 02, 2025 22:40 Antworten mit ZitatNach oben

HKaufmann hat Folgendes geschrieben:

Habe die Fehlermeldung abgespeichert. Vielleicht kann jemand damnit was anfangen.

Du solltest die Fehlermeldungen posten, sonst kann wirklich niemand - auch Franz Josef nicht - was damit anfangen. Wenn in diesem Forum Anlagen nicht erlaubt sind, kannst Du die Meldung als "Quote" hier im Text posten.

_________________
Samsung Galaxy Note20 mit Android 13
PC mit LINUX-ubuntu
Benutzer-Profile anzeigenPrivate Nachricht senden
HKaufmann



Anmeldedatum: 22.01.2017
Beiträge: 13

BeitragVerfasst am: Mo März 03, 2025 06:29 Antworten mit ZitatNach oben

Rolf der Erste hat Folgendes geschrieben:
HKaufmann hat Folgendes geschrieben:

Habe die Fehlermeldung abgespeichert. Vielleicht kann jemand damnit was anfangen.

Du solltest die Fehlermeldungen posten, sonst kann wirklich niemand - auch Franz Josef nicht - was damit anfangen. Wenn in diesem Forum Anlagen nicht erlaubt sind, kannst Du die Meldung als "Quote" hier im Text posten.


Hallo Rolf,
da man kein Anhang hier hinzufügen kann. Hier den Link von WeTransfer Daten liegen als zip vor:

https://we.tl/t-jpVAuC6GLY

Gruß Holger
Benutzer-Profile anzeigenPrivate Nachricht senden
Rolf der Erste



Anmeldedatum: 08.01.2017
Beiträge: 47
Wohnort: München

BeitragVerfasst am: Mo März 03, 2025 11:10 Antworten mit ZitatNach oben

HKaufmann hat Folgendes geschrieben:

da man kein Anhang hier hinzufügen kann. Hier den Link von WeTransfer Daten liegen als zip vor: https://we.tl/t-jpVAuC6GLY


Ich habe das backtrace mal mit meinem verglichen. Bei mir sind die Zeilen nach „Register dump:“, „Stack dump:“ und „Backtrace:“ nicht vorhanden. Die anderen Zeilen sind ähnlich. Vielleicht ist das der Grund für den Abbruch. Aber da bin ich überfordert. Eventuell kann Dir Franz Josef oder ein anderer Linux-Guru weiter helfen.

_________________
Samsung Galaxy Note20 mit Android 13
PC mit LINUX-ubuntu
Benutzer-Profile anzeigenPrivate Nachricht senden
R41zW4z



Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich

BeitragVerfasst am: Do Mai 01, 2025 11:43 Antworten mit ZitatNach oben

Hallo zusammen,

viele haben sich sicherlich schon nach einem solchen tollen Programm für Linux gesehnt.
Ich mich auch Confused Very Happy

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 Rolling Eyes 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 Question Arrow
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. Laughing

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 Very Happy

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 Wink
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 15:24, insgesamt 6-mal bearbeitet
Benutzer-Profile anzeigenPrivate Nachricht senden
HKaufmann



Anmeldedatum: 22.01.2017
Beiträge: 13

BeitragVerfasst am: Do Mai 01, 2025 12:09 Antworten mit ZitatNach oben

R41zW4z hat Folgendes geschrieben:
Hallo zusammen,

viele haben sich sicherlich schon nach einem solchen tollen Programm für Linux gesehnt.
Ich mich auch Confused Very Happy

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 Rolling Eyes 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 Question Arrow
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. Laughing

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
Benutzer-Profile anzeigenPrivate Nachricht senden
K.Achim



Anmeldedatum: 01.11.2020
Beiträge: 199

BeitragVerfasst am: Do Mai 01, 2025 12:34 Antworten mit ZitatNach oben

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 Smile
Achim

PS: auch Schritt 2, chmod..., habe ich dabei mit vorangestelltem sudo probiert
PPS: Linux Mint Mate 22.1 XIA

_________________
Stand 16.03.26:
Desktop W10 Pro/64-22H2, MPE v2.3-debug/12.03.26, Betterbird v102.15.1-bb41 (64bit), AddOn 4.10, Cardbook 86.4
Laptop Wi10 Pro/64-22H2, MPE v2.3-debug/15.01.26, Betterbird v102.15.1-bb41 (64bit), AddOn 4.10, Cardbook 86.4
Samsung A35 5G, Android 14/UI_6.1, de-bloated, rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.10b7, DAVx5 v4.5.10-ose
Samsung S6 Lite 2022, Android 14/UI_6.1, de-bloated rooted, Google-blocked, Ad-Away, AFWall+, MPE Client v4.10b7, DAVx5 v4.5.10-ose
Benutzer-Profile anzeigenPrivate Nachricht senden
R41zW4z



Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich

BeitragVerfasst am: Do Mai 01, 2025 21:11 Antworten mit ZitatNach oben

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 Smile
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 Wink

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 Wink

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 Wink

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
Benutzer-Profile anzeigenPrivate Nachricht senden
R41zW4z



Anmeldedatum: 01.05.2025
Beiträge: 5
Wohnort: Munich

BeitragVerfasst am: Sa Mai 03, 2025 15:35 Antworten mit ZitatNach oben

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 Confused Very Happy

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 Rolling Eyes 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 Question Arrow
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. Laughing

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 Smile
Benutzer-Profile anzeigenPrivate Nachricht senden
Beiträge der letzten Zeit anzeigen:      
Neues Thema eröffnenNeue Antwort erstellen


 Gehe zu:   



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