Am o aplicație MS Windows care necesită o nouă versiune de Wine. L-am instalat local în folderul de acasă folosind PlayOnLinux.
Sunt blocat să creez un script simplu bash/dash/sh pentru a lansa aplicația .exe în folderul său. Am incercat standard pushd/popd
, cd && exec
, (cd && exec)
abordare, dar nu a reușit.
Ceea ce am nevoie:
În prezent, sunt mulțumit de următorul cod Python pentru scriptul wrapper (care urmează să fie plasat în /usr/local/bin/wine32-wrapper):
#!/usr/bin/python3
import os
import sys
subproces de import
dacă len(sys.argv) >= 2:
cale = sys.argv[1]
wd = os.path.dirname(cale)
exec_path = ["/home/{}/.PlayOnLinux/wine/linux-x86/6.15/bin/wine".format(os.getenv('USER'), cale), "{}".format(cale)]
p = subprocess.run(exec_path, cwd=wd)
altceva:
print("\nUtilizarea {} cu un argument - calea completă a fișierului.".format(sys.argv[0]));
și .desktop-file (de plasat în ~/.local/share/applications/wine32.desktop), pentru aceasta:
#!/usr/bin/env xdg-open
[Intrare pe desktop]
Versiunea=1.0
Tip=Aplicație
Terminal=fals
Pictogramă=mate-panel-lansator
Exec=wine32-wrapper %f
Nume=Vin local32-6.15
apoi îmi asociez fișierele exe cu acest script de vin folosind Caja.
Este posibil să înlocuiți scriptul python de mai sus cu scriptul bash/dash/sh cu exact aceeași funcționalitate?