Commit graph

1783 commits

Author SHA1 Message Date
Dominik Riebeling
5efaa9ef80 rbutil: Use globalPos() for getting mouse position.
globalX() / globalY() are deprecated for Qt6. Use globalPos() instead,
which gives the same result.

Change-Id: Ie0b733b88107e971de9c3e8c42434d7d47a65b76
2020-10-11 18:05:21 +02:00
Dominik Riebeling
c8fa53050d rbutil: Add project file for building multiple binaries.
To use ipodpatcher and sansapatcher as external binaries (so we can do
proper permission elevation) we need to build them using qmake as part
of the main build. Add a subdirs template based project file to do that,
and project files for the patchers.

Move Linux appimage rules one level up, since it needs to include the
patchers as well.

Change-Id: I63ee59372668f4319402df65a77a6f04521d133b
2020-10-11 09:42:13 +02:00
Dominik Riebeling
cd192f239b rbutil: Fix encoding of turkish translation.
The file encoding was messed up long ago. Since the translation wasn't
updated since reimport the original patch (FS#8407).

Change-Id: I93e12fbde4f63926d18df382c0254465b11750cd
2020-10-11 09:42:13 +02:00
Dominik Riebeling
74258fca31 rbutil: Replace sysinfo filesystem cluster size with type.
The cluster size isn't too useful. Show the filesystem type instead,
since that makes it easier to identify a device not showing up because
of its filesystem type.

Change-Id: I8f58ea23ab90808ab0c37978b211a5470ed8bb8e
2020-10-04 11:31:30 +02:00
Dominik Riebeling
728299e322 rbutil: Fix unnecessary implicit cast.
Change-Id: Id05220a700eb826d38023575b02f568b1c1a7580
2020-09-30 21:12:50 +02:00
Dominik Riebeling
c8f79d31b1 rbutil: Add postinstall hint for rocker and xduoo player.
Change-Id: I4f679228a354019d830afbbd402db566abd743d3
2020-09-30 21:12:50 +02:00
Dominik Riebeling
201e9bcde8 rbutil: Fix some minor issues found by clazy.
Change-Id: I0e63df09caf959dcb325c6ad2297c4348388a831
2020-09-27 10:57:58 +02:00
Dominik Riebeling
f1f72ff8df rbutil: Code cleanup.
- Fix naming.
- Remove non-functional functionality to set cache folder.
- Use URL filename part when copying the file if target filename is not set.

Change-Id: Ic9af59300f06d4309c6a4c9542d4f6079dd841c3
2020-09-27 09:28:21 +02:00
Dominik Riebeling
9d8bcbeb2a sansapatcher: rework exit code handling.
- #define all exit codes and use them for indicating further errors.
- only enable interactive (i.e. wait for keypress before exiting) mode
  when built with bootloaders.

Change-Id: I6dcbc51226aadc4ab640bf260b6331ddbd4773cc
2020-09-27 09:28:15 +02:00
Dominik Riebeling
af76fa3e7a ipodpatcher: Rework exit codes.
- #define all exit codes used so they can be checked more easily.
- Use exit codes to indicate more error states.

Change-Id: I052962e3457a7cd5eca8b70256889d25b1b4b3aa
2020-09-27 09:28:10 +02:00
Dominik Riebeling
3806f57ed8 ipodpatcher: Fix some type warnings.
Change-Id: I66fa99db3f4913bafa17a1e976cbfd08e26349ce
2020-09-27 09:28:05 +02:00
Dominik Riebeling
0b5f0b9284 rbutil: Fix Xduoo bootloader installation.
- Don't try to unzip the bootloader file if we're actually looking for a
  zip file.
- Fix wrong bootloader file name for X3.
- There's no QThread::terminated() signal, don't connect it.

Change-Id: Iebfcc61d644c8443b60d9b37f4932d7b46098465
2020-08-23 16:55:28 +02:00
Dominik Riebeling
e0021744cf rbutil: Fix wrong fall-through.
Fortunately it didn't break anything.

Change-Id: Ie1f2bff73dbc61ec9f454ce7b61aaad74424fd06
2020-08-21 21:31:44 +02:00
Dominik Riebeling
2aecb3b9ea rbutil: Use a non-zero default value for status.
When resolving the status values downloaded from the server use a
negative value as default. Since 0 is the default in QSettings but now
considered as "retired" a missing status value would make that target
appear as retired instead of unknown status.

Change-Id: I23567413c5c3d5828fca7f9c5a29e2037e8614cf
2020-08-21 21:31:44 +02:00
Dominik Riebeling
94eb1df58b rbutil: Logger Qt6 fixes.
Fix various issues with building CuteLogger with Qt6.

Change-Id: Iceac8f8a19f6703868c5a41b725d3cd69c724239
2020-08-16 12:37:02 +02:00
Dominik Riebeling
cd352d9052 rbutil: QString::split() changed with Qt 5.14.
Avoid a deprecated warning, and make it compile with Qt6, which removes
the old version.

Change-Id: Iaad10660a0c8bda9d7aa52ee250489ed135bd8a8
2020-08-16 12:15:14 +02:00
Dominik Riebeling
d5820ff779 rbutil: Qt6: allow building without Multimedia module.
Qt6 beta doesn't include the Multimedia module. Allow building without,
and disable on Qt6 for now.

Change-Id: Ie2ad25c81d9c62c8c6e8efaf8309b3600afce1d0
2020-08-16 12:14:30 +02:00
Dominik Riebeling
7c9a7ed406 rbutil: Initial Qt6 support.
Qt6 replaces QTextStream::setCodec() with QTextStream::setEncoding().

Change-Id: I4cfa90d89f54ad49d061ad859585a2a74b5f9786
2020-08-16 12:14:02 +02:00
Dominik Riebeling
9cd37337de rbutil: Fix various warnings.
Replace use of deprecated APIs with their replacements, and fix some
other minor warnings.

Change-Id: I3f63e0bd91b96ce86ce39c087fe0040fc226d16d
2020-08-16 12:13:28 +02:00
Dominik Riebeling
b1332d974a rbutil: Fix compile warning in unit test.
Change-Id: Ieb97a6079a70095f7531a90d7117ddf7bfc50afd
2020-08-16 12:12:48 +02:00
Dominik Riebeling
48d2927ecc rbutil: Update CuteLogger to most recent upstream.
Update to the most recent git version.

This changes the folder structure and renames some classes to follow
upstream.

Restore MSVC static link fix, and fix wrong variable in qmake project file.

Change-Id: I874bb9ed60e37af09a841988e771fd341414d145
2020-08-08 10:01:42 +02:00
Dominik Riebeling
c425d4627e rbutil: Drop Qt4 support.
The last version of Qt4 was released in 2011, time to officially move to
Qt5.

Change-Id: I57d2261bfa44ec824ef4a406f60ce1bd9bc52589
2020-08-08 10:01:42 +02:00
Dominik Riebeling
d7bbf8a477 rbutil: Use QElapsedTimer for measuring time.
The timing functions in QTime are deprecated and have been removed for
Qt6. Use QElapsedTimer, which is the replacement for this.

Change-Id: Ib262753fe99aff83f1952337eb64cd44439cafdd
2020-08-07 22:18:41 +02:00
Dominik Riebeling
2fe046c380 rbutil: Drop support for libusb0.
libusb1 is maintained and stable since years. No need to keep the old
implementation around.

Change-Id: I25a4c5643fc9a88eaad3e8f2f7e1dd705be080e0
2020-08-07 22:18:41 +02:00
Dominik Riebeling
729b6e4f33 rbutil: Update libmspack to 0.10.1alpha.
Update to the most recent release. Fix name / include clashes, as has
been done before.

Change-Id: Ia712bb2b5f4b9018b65a46b8bdd04ba42363be8b
2020-08-07 22:18:41 +02:00
Dominik Riebeling
b0f22620a2 rbutil: Update quazip to release 0.9.1.
Update to latest quazip release.

Change-Id: I03189ceeadbe3110a9420153d84bd5d33d5b663f
2020-08-07 22:18:41 +02:00
Dominik Riebeling
04d289fe02 rbutil: Use SpinBox for Proxy port value.
No need to use a validator on a LineEdit, simply use a SpinBox and
disable the up / down icons.

Change-Id: Ie47c5929a071dc95ed9d6f28c2417fc6dd5323fe
2020-08-06 22:58:19 +02:00
Dominik Riebeling
feb028ac37 rbutil: Fix deprecation warnings.
Change-Id: Ia7e24a5fee2b6e858abcec318d13775ad23b4469
2020-08-06 20:50:52 +02:00
Dominik Riebeling
7c5b9a4049 rbutil: Fix Qt deprecated warnings.
Change-Id: I0a5c137704f07e8448c3a09624228a4f417e6634
2020-08-06 20:43:15 +02:00
Dominik Riebeling
82f98dea2b rbutil: Explicitly link bzip2 only on non-Windows.
When building for Windows (at least using mxe) bzip2 clashes with
existing symbols. This seems to be a similar issue as with zlib. Don't
link it explicitly, so the linker uses the existing symbols.

Fixes building for Windows.

Change-Id: I7a1e980542961f3e7f8febedd6c0b8f04a6f6ec0
2020-08-06 20:43:15 +02:00
Dominik Riebeling
b820c648c8 rbutil: Always use Qt Multimedia to play TTS preview.
We're using it on Windows and macOS, there's no reason to not do so on
Linux.

Change-Id: I6e4d9006eff22fd4bf6b882407a5497b2f8cdd2f
2020-07-26 15:12:17 +02:00
Dominik Riebeling
5640d0d3c7 rbutil: Call QLocale::setDefault() with QLocale.
QLocale::setDefault() shouldn't be called with a QString but a QLocale
instead. Calling it with a string doesn't work with Qt6 anymore.

Change-Id: I08826095cda8563e4ae9b83d08144da2d0d7f3c7
2020-07-26 11:10:26 +02:00
Dominik Riebeling
1e39619034 rbutil: Merge Troubleshoot submenu with Help menu.
Since people seem to have problems finding the troubleshoot items in a
submenu move them one level up. The submenu isn't too useful anyway.

Change-Id: Ic047f3913a8a13b038580d497260de55fe2e1298
2020-07-26 09:56:20 +02:00
Dominik Riebeling
46d06f71dc rbutil: Remove unnecessary (and implicit) type conversion. 2020-07-26 09:56:20 +02:00
Dominik Riebeling
1ed283de9c rbutil: Update translation stats script.
- Update to Python3.
- Change Qt tools to Qt5.
- Cleanup.

Change-Id: Icc9d9335518e8fba4a0c7a619527c8cdc087d59f
2020-07-26 09:56:20 +02:00
Solomon Peachy
5c30d57ad1 rbutil: Fix the X3ii's USB VID/PID
Change-Id: I009b19b922874b9cce04da3d2cdd7bd142510dc2
2020-07-20 19:30:57 +00:00
Solomon Peachy
f6060d62d9 rbutil: Add support for the xDuoo X3, X3ii, X20, and AGPTek Rocker.
* All include full bootloader installation!
 * X20 lack USB VID/PIDs so cannot be autodetected.
 * Benjie T6 (variant/OEM of the Rocker) USB VID/PID unknown.

Change-Id: Ia823de072c83506d36410ec436be15a0caf97151
2020-07-20 18:40:24 +00:00
Dominik Riebeling
561937f2f4 bspatch: Fix compiling on macOS.
u_char is a nonstandard type. On macOS this requires to explicitly
include sys/types.h.

Change-Id: I929ceafc12c7cbdcc96e85cdd05cce27d8aa6795
2020-07-20 20:38:32 +02:00
Solomon Peachy
6fa80604e3 rbutil: Add in missing voicefile languages
Change-Id: I6b38bc7ba1c9dc6f399297142d007fcd7736eb36
2020-07-19 21:39:08 +00:00
Solomon Peachy
fc4af2062b rbutil: Support 'espeak-ng' and 'mimic' TTS engines
Change-Id: Ibf6e46254f42b28800351fdb303539b2ec13d422
2020-07-19 19:32:43 +00:00
Solomon Peachy
66d7c21cde rbutil: Handle the new Retired target status.
It's considerd stable, but does not have dev builds any more

So don't display download options to get RC or dev builds.

Change-Id: I68ed6adc2dd72d54464d3ff8d8e8df28088f8020
2020-07-14 13:03:06 +00:00
Dominik Riebeling
3cfd129cd9 mac: Fix build rule for dmg.
Also add the version string to the folder used for creating the dmg,
since that will appear when mounting it.

Change-Id: Ibf5918bf51ae37082d7b2ca5baf919319f6e568d
2020-06-30 19:22:54 +02:00
Dominik Riebeling
82716bbe20 rbutil: Fix filename for additional rule to create dmg image on macOS. 2020-06-30 19:22:45 +02:00
Dominik Riebeling
7f3142fc5c rbutil: Fix compiling 32bit Rockbox Utility on 64bit Linux.
Pass the machine options for libs to the c++ compiler as well.

Change-Id: I56bfbbe4aca4b3a7b86bb0d5323a1f7d78d4f60c
2020-06-21 09:14:23 +02:00
Dominik Riebeling
b2749d0f77 rbutil: Add extra build rule on Linux to create AppImage.
Build the "appimage" target to create an AppImage file from the binary.
The needed linuxdeploy tools will be downloaded first.

Change-Id: Ia1e8977ea7689fb547c5d1a6abe6448a94f1b1af
2020-06-20 12:20:21 +02:00
Dominik Riebeling
35bdfd5ec5 rbutil: Add simple desktop file for Linux.
To be used by packagers, and eventually AppImage.
The logo file referenced is docs/logo/rockbox-clef.svg.

Change-Id: Id2606f6c699d0ef612caaf125aa2a5d0e88bdecc
2020-06-20 12:20:21 +02:00
Solomon Peachy
2434b6ca25 misc: Remove all 'twiki' references in favor of up-to-date 'wiki' links.
(This migration happened over a decade ago!)

Change-Id: Ib396414a16f2d763e549af49e3f3b03047dab49c
2020-06-07 01:38:55 +00:00
Solomon Peachy
84624e14f8 bspatch: Add a __cplusplus wrapper in the header so rbutil can use it
Change-Id: Iba4e173ec73bfb38144ebb83edf3ed8161d03ebd
2020-04-15 23:33:21 +02:00
Solomon Peachy
8d2d6f4ca5 rbutil: Add bspatch and libbzip2
This is to enable binary patching of Hiby-based firmware files

  Note that noting in rbutil uses this yet.

Change-Id: I03ac824dd7402d508eb4e857ad78f184eb0d0243
2020-04-09 02:24:49 +02:00
pavel
2ce000272d Rockbox Utility: updated Czech translation
fixed wrongly set writing direction and translated missing strings

Change-Id: I4d0fd8430f334317c05b9e827ba2b547017ed2cd
2020-03-29 01:02:34 +01:00