2016-12-20 2 views
3

ich meine IDE Monodevelop 6 mit Flatpak, 16.04 LTS auf Ubuntu aktualisiert, von einer älteren Version 5.Serial Ports mit einer Anwendung Zugriff auf Runs in Flatpak

ich eine Anwendung, die mit seriellen Schnittstellen in Wechselwirkung tritt, die im Grunde sind ein USB/RS232 Adapter, der ein Gerät mit meinem Computer verbindet.

Ich habe kein Problem Zugriff auf USB-Anschluss (/ dev/ttyUSB0), wenn ich die Anwendung in Monodevelop5 debuggen. Allerdings ist das Geräteverzeichnis (/ dev /), auf das ich Zugriff habe, mit Monodevelop6 völlig anders als das, auf das ich unter Linux Zugriff habe, und in diesem Ordner gibt es kein ttyUSB0.

Ich glaube, das ist, weil Flatpak die Anwendung in Sandbox ausführt. Wenn das der Grund ist, wie kann ich dann auf eine serielle Schnittstelle zugreifen?

Danke.

Antwort

3

Wahrscheinlich liegt das daran, dass Flatpak den Zugriff auf das serielle Gerät blockiert.

Leider im Moment glaube ich nicht, dass es eine Möglichkeit, den Zugriff speziell auf die seriellen Geräte zu geben, so müssen Sie Zugang zu allen geben:

$ flatpak run --device=all com.xamarin.MonoDevelop 

Was das bedeutet ist im Wesentlichen montieren Der Host /dev in der Sandbox, so dass die App vollen Zugriff darauf hat.

Es ist ein ziemlich großes Loch in der Sandbox, aber manchmal wird es benötigt, bis die gesamte Erlaubnis Handhabung Zeug umgesetzt wird.

+0

Dank @Mathieu. Deine Lösung hat funktioniert. – Afshin

+0

Beachten Sie, dass der Entwickler dieses Flatpak-Builds alternativ das Argument 'device = all' finish im JSON-Manifest verwenden könnte, das standardmäßig diesen Zugriff gewähren würde. Aber das ist wahrscheinlich ein zu großes Loch in der Sandbox, um es standardmäßig zu tun. –

Verwandte Themen