Interesting bug fixes, new features and better distribution. Hoping to reach 1k stargazers soon.
:star2: Highlights
You might be wondering why I took this long to release another version of guiscrcpy, or maybe, what happened to the previous releases? Here is the answer!
:vibration_mode: New mapper!
The `guiscrcpy` mapper API got a cool upgrade. It was always very hard, to get mapper working on guiscrcpy, especially for people who are not used to the command line. `guiscrcpy` v4.5+ features a new mapper interface which allows you to configure and initialize the mapper directly from the GUI. This is experimental, but I hope that would work!
:arrows_counterclockwise: Command line interface
`guiscrcpy` got a new command line interface. Built with the features of the famous python library, `click`, guiscrcpy now offers a flexible CLI for users, and it makes resetting the configuration files easier
You can now access the mapper by typing
bash
guiscrcpy mapper
Or to see your configuration files?
bash
guiscrcpy config
To view the help for each subcommand, you can just append `–help` to the command.
:slightly_smiling_face: Better `adb` and `scrcpy` interfacing
It was very hard to synchronize the users version of `adb` to the `adb` packaged within, but now you can directly run `adb` or `scrcpy` using the command like
bash
guiscrcpy adb
To get an interactive terminal on your device
bash
guiscrcpy adb shell
guiscrcpy adb devices
guiscrcpy adb devices -- -l
Note, `–` between the `devices` and `-l` . This helps guiscrcpy to distinguish between its own commands to those of `adb`'s
:arrow_down: AppImage (:penguin:)
guiscrcpy offers pre-built binaries (for those users who are not interested in installing Python, or for those users who do not have a package offered by their system, you can use this pre-built binaries.
If you already have [`zap`](https://github.com/srevinsaju/zap), you can just do:
bash
zap install guiscrcpy
We also provide Delta Updates (only download the parts which have been changed since the last release) by
bash
zap update guiscrcpy
Or alternatively, just download the AppImage from the releases, give it `+x` execute permission, double click, and run!
Two types of AppImages are offered.
* `guiscrcpy*.r.*.AppImage`
* `guiscrcpy-min-*.m.*.AppImage`
The `min` appimage is a minimal guiscrcpy AppImage, which does not have scrcpy and adb bundled along with it. If you do need `scrcpy`, you might like to download the non-minimal (full) version
:computer: Better Qt support
Previously, we sticked onto `PyQt5` a Python library which provides Qt Bindings in python. We have now moved to `qtpy` which helps you to decide if you would like to install `PySide2` or `PyQt5` . PyQt5 is less liberal (in terms of licensing) as compared to PySIde2. PySide2 comes from the Qt Company. For Windows, I have offered two versions, `guiscrcpy.exe` (PyQt5) and `guiscrcpy-pyside2.exe` (PySide2). Both of them are the base binaries of guiscrcpy (without scrcpy), but I wonder why the PyQt5 AppImage is bigger. If you do know, please let me know :smile:
For Linux distributions, you are likely to have PySide2 on your distro. For Arch Linux, we have a PySide2 library which is smaller than the PyQt5 library, and you might be benefited by the low size. Some Linux distros, (normally KDE Plasma based distros) already have PySide2 pre-installed!
Safer Errors
guiscrcpy doesn't crash all of a sudden now. guiscrcpy now reports the error to you with the traceback. This helps to make debugging easier. Now it prints both to the stdout and shows the error in a dialog box
![image](https://user-images.githubusercontent.com/48695438/93099765-13cbf780-f6b1-11ea-919c-cd60ba75c870.png)
Commits