diff --git a/README.md b/README.md index 7381b5c8..98856dc8 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ Windows-Anwendung zur bidirektionalen Synchronisation von Kontakten zwischen Mic ## Voraussetzungen - Windows 10/11 -- .NET Framework 4.8 (in Windows 10/11 bereits enthalten) +- .NET 8 Desktop Runtime (Setup prueft und verlinkt die Download-Seite falls noetig) - Microsoft Outlook (Classic oder Neu, beliebige Version) - Starface Telefonanlage ab Version 6.7 (REST-API) @@ -49,19 +49,72 @@ Benutzerdaten (Profile, Mappings) werden mit entfernt. ## Entwicklung +### Voraussetzungen (Build) + +- .NET 8 SDK (laeuft auf Windows, Linux und macOS) +- Fuer den Installer: Inno Setup 6 (Windows) oder Docker (Linux) + +### .NET SDK installieren + +**Windows:** +``` +winget install Microsoft.DotNet.SDK.8 +``` + +**Debian/Ubuntu:** +```bash +# Ueber das offizielle Install-Script: +wget https://dot.net/v1/dotnet-install.sh -O dotnet-install.sh +chmod +x dotnet-install.sh +./dotnet-install.sh --channel 8.0 +export PATH="$HOME/.dotnet:$PATH" +``` + ### Bauen +Das Projekt kann sowohl unter Windows als auch unter Linux gebaut werden. +Die fertige EXE laeuft nur auf Windows (WinForms + COM Interop). + ```bash -# In Visual Studio oeffnen und bauen, oder: +# Release-Build dotnet build src/StarfaceOutlookSync/StarfaceOutlookSync.csproj -c Release + +# Oder publish (mit allen Abhaengigkeiten): +dotnet publish src/StarfaceOutlookSync/StarfaceOutlookSync.csproj -c Release ``` +Build-Ausgabe: `src/StarfaceOutlookSync/bin/Release/net8.0-windows/win-x64/` + ### Installer erstellen +Die Setup-EXE wird mit Inno Setup 6 erstellt. Das geht auf Windows nativ +oder auf Linux via Docker. + +**Windows:** 1. [Inno Setup 6](https://jrsoftware.org/isinfo.php) installieren -2. Release-Build erstellen -3. `installer/setup.iss` in Inno Setup oeffnen und kompilieren -4. Setup-EXE wird in `dist/` erstellt +2. `installer/setup.iss` oeffnen und kompilieren +3. Setup-EXE wird in `dist/` erstellt + +**Linux (Docker):** +```bash +# Release bauen +dotnet build src/StarfaceOutlookSync/StarfaceOutlookSync.csproj -c Release + +# Installer mit Docker erstellen +docker run --rm -v "$PWD:/work" amake/innosetup installer/setup.iss +``` + +**Linux (Wine):** +```bash +# Inno Setup in Wine installieren (einmalig) +apt install wine +wine ~/Downloads/innosetup-6.x.exe + +# Kompilieren +wine "$HOME/.wine/drive_c/Program Files (x86)/Inno Setup 6/ISCC.exe" installer/setup.iss +``` + +Die fertige Setup-EXE liegt danach in `dist/`. ## Projektstruktur