Open Zedtho opened 1 week ago
Resolved Input/Output part in b6d2a84e49f7114d50237f024df11f319d496ec9
Resolved Release part in 0d0ade265e7b202003fbcd03dfa89881d65e5002 using github actions and PyInstaller (with icons). Not tested on Windows/Mac yet, though.
Edit: This did not in fact work as far as I can tell
Resolved GUI part (#2 ) as Qt Quick works everywhere. That said, pyinstaller is still struggling on MacOS and Windows, nor have I tested it there yet.
Why? Because almost everybody uses Windows/Mac.
A couple things would need to be made platform-agnostic: 1) Input/Output 2) GUI 3) Release
Input/Output
I suggest adding the following file structure for this ├── inputoutput/ │ ├── __init_\.py │ ├── windows_io.py │ ├── linux_io.py │ ├── mac_io.py
and then using conditional imports in __init__.py, finally giving a platform-agnostic API for smack.py
windows/mac_io.py can use PyGetWindow, which actually works more consistently than the kind of messy xdotool Linux implementation.
GUI
2 contains some requirements for this, so if we're lucky we could just use a platform-independent library from the get-go.
Release
Currently I'm using PyInstaller, but that's platform-specific. Presumably github actions is great for this. Some prep for this can be found in #1