NuGet für SPS-Libraries
Twinpack ist ein Open-Source-Paketmanager für TwinCAT-SPS-Libraries - ähnlich wie NuGet, aber für SPSen gebaut. Er integriert sich direkt in TcXaeShell und Visual Studio, sodass Sie Abhängigkeiten über den References-Knoten Ihres SPS-Projekts verwalten. Kein manuelles Kopieren von .library-Dateien, kein Suchen der richtigen Version auf einem gemeinsamen Laufwerk.
Twinpack ist kostenlos. Es wird von Zeugwerk entwickelt und ist der Standardweg zum Installieren und Aktualisieren von Zeugwerk-Framework-Libraries - funktioniert aber für jede TwinCAT-Library von beliebigen Herausgebern.
Was es unterstützt
Drei Package-Quellen in einem Tool:
- Twinpack-Server - Zeugwerk hostet Open-Source-Libraries kostenlos. Enterprise-Kunden erhalten zusätzliche Funktionen: privates Package-Hosting, Feature-Branches und höhere CI-Build-Kontingente.
- NuGet-Server - Twinpack auf einen eigenen NuGet-kompatiblen Server zeigen lassen - für privates oder On-Premises-Library-Hosting.
- Beckhoff Library Repository - Seit TwinCAT 4026 stellt Beckhoff ein öffentliches Library-Repository bereit. Twinpack integriert es nahtlos neben Community-Libraries.
Ein Package verwenden

Ein Rechtsklick öffnet den Katalog
Rechtsklick auf den References-Knoten eines SPS-Projekts und „Twinpack Catalog…" wählen - Libraries direkt aus der IDE suchen, durchstöbern und installieren.

Den Katalog durchsuchen
Über alle konfigurierten Package-Quellen suchen. Package-Details, Versionshistorie und Lizenzinformationen vor der Installation ansehen. Twinpack löst alle transitiven Abhängigkeiten automatisch auf und installiert sie.

Aktualisieren und Wiederherstellen
Auf Updates prüfen, auf eine bestimmte Version pinnen oder alle Abhängigkeiten in einem frischen Arbeitsverzeichnis wiederherstellen, alles aus demselben Kontextmenü. Kein manuelles Library-Management.

Eigene Libraries veröffentlichen
Library direkt aus der IDE mit der Community teilen. Distributor, Version und Metadaten setzen - Twinpack validiert und lädt sie in die Registry hoch. Zukünftige Versionen informieren bestehende Nutzer automatisch über Updates.
Ein Package veröffentlichen
Drei Wege zur Veröffentlichung - je nach Ihrem Workflow:
Über die Twinpack Registry (empfohlen für GitHub-Projekte)
Repository in die repositories.txt-Datei per Pull Request eintragen. Ein Workflow in der Registry lädt die Libraries aus Ihrem letzten GitHub-Release automatisch hoch. Keine CI-Credentials nötig.
Über GitHub Actions
Die twinpack-action in Ihrer CI-Pipeline nutzen, um bei jedem Release zu veröffentlichen. Passt gut zu zkbuild für einen vollständig automatisierten Workflow aus Build, Test und Veröffentlichung.
Manuell aus der IDE Rechtsklick auf das SPS-Item → Twinpack → Publish. Distributor-Name und Version eingeben, Publish klicken. Twinpack validiert und lädt das Package hoch. Folgeversionen können genauso veröffentlicht werden.
Für die Community
Die Twinpack Registry ist offen. Jede TwinCAT-Library kann veröffentlicht werden - nicht nur Zeugwerk-Libraries. Teams sind eingeladen, eigene Bausteine zu teilen und zum Ökosystem beizutragen. Je mehr Libraries verfügbar sind, desto mehr Wert bekommt jedes TwinCAT-Projekt von Anfang an.
