Wine-systemwide (2)
21.12.2020 17:42
Postanowiłem przemodelować stary projekt, by wyeliminować kilka problemów. Jak to zwykle bywa, pojawiły się nowe, choć problemy uznane za konieczne do wyeliminowania zostały usunięte.
Wine-systemwide to rozwiązanie pozwalające wielu użytkownikom korzystać z tego samego prefiksu Wine. Nie pozwala natomiast na równoczesne korzystanie. Rozwiązanie dodaje własny wpis do sudoers i tworzy użytkownika, a także katalog domowy. Ponieważ jednak nie przemodelowałem jeszcze instalatora, a obecna wersja to jeszcze pre‑alfa, to należy korzystać z niego w terminalu.
Instalacja polega na przekopiowaniu trzech pliczków z katalogu Scripts do /usr/local/bin lub innego katalogu w zmiennej PATH. Kolejnym krokiem jest poczynienie odpowiednich wpisów w sudoers, jak również utworzenie pliczku /etc/wine-systemwide. Ostatnim jest dodanie allow_others do pliku konfiguracyjnego fuse.
Programy uruchamiamy tak:
wine-systemwide2 ścieżka_uniksowa_do_programu
Na czym polegają zmiany? Przemodelowałem rozwiązanie, by oddzielić od siebie dane różnych użytkowników. Teraz wine działa na prawach użytkownika, co uruchomił program. System plików typu fuse działa na prawach wine-systemwide i udostępnia dane z katalogu /home/wine-systemwide do /home/wine-public. System plików jest praktycznie zwyczajnym systemem oddelegowującym żądania do prawdziwego katalogu /home/wine-systemwide . Musiałem nanieść jednak pewne poprawki, by uniknąć problemów z wyczerpującym się limitem otwartych deskryptorów plików.
Nie wszystkie programy działają. Obecnie za sukces uznaję odpalenie programów dostarczanych wraz z Wine, czyli m.in notatnik czy edytor rejestru. Zachęcam do pomocy. Źródła wine-systemwide można znaleźć na sourceforge.net.