summaryrefslogtreecommitdiffstats
path: root/rbutil/rbutilqt
AgeCommit message (Collapse)AuthorFilesLines
2020-11-19rbutil: Modernize code to use C++11 nullptr.Dominik Riebeling58-111/+111
Change-Id: I112cf95122a896cdb30a823b4c1f49831273dc7e
2020-11-19rbutil: Convert ServerInfo to singleton.Dominik Riebeling7-31/+45
Change-Id: I29d94eb6bae084754e5e3f337c41de8354ba123c
2020-11-19rbutil: Rework server info data handling.Dominik Riebeling2-4/+0
Remove map that isn't used anymore. Change-Id: I771a98c9b64f3dac36e71041c566b89fbea51e06
2020-11-16update fwpatcher and rbutil checksums for iriver h1x0/h300 V8 bootloaderJames Buren3-28/+28
Change-Id: Icf6bc96889fbe682832a99882c5d66c832ffb2f7
2020-11-15rbutil: Rework server info data handling.Dominik Riebeling5-23/+21
Return status as int, not as string, and provide a separate function for converting to string. This allows to filter based on the actual status, not a (localized) status string, which is more robust. Fix a regression that made players with missing status value show up as retired. Change-Id: I15f83ae0df484199b1b3b5b95069db8b4d425987
2020-11-15rbutil: Fix style warnings.Dominik Riebeling1-4/+4
Change-Id: I1ddcff60488b2926206309c9ef62f5f9d330da33
2020-11-15rbutil: Rework server info data handling.Dominik Riebeling6-9/+14
Allow constructing release candidate URL from configuration the same way we construct the URL for releases. Note that the server path used does not exist, taken from old release candidate builds not available anymore. Change-Id: I7332f08df05ed39724b4900556aaa1f5e0ba463b
2020-11-15rbutil: Rework server info data handling.Dominik Riebeling2-9/+3
Allow extracting release candidate version even if no URL is present. Avoids a special case for version handling. Change-Id: If496d30059c3181899ab9337a35a07b39eaef52e
2020-11-15rbutil: Rework server info data handling.Dominik Riebeling4-160/+127
Don't create our own in-memory map with server data. Instead use the configuration file retrieved from the download server, and do the resolve / replacement on the fly. Simplifies things, and prepares for cleaner handling for different build types. Change-Id: Ifd027b21486e402fda3df9c2f7a30264651f733d
2020-11-15rbutil: Simplify manual download URL handling.Dominik Riebeling1-6/+1
- Don't construct the URL directly. The ServerInfo already has it, use that instead. - Don't manually construct the output filename. ZipInstaller will use the server filename automatically. Change-Id: Ib44616daf5efc95b238418b6e699ccd56c40b011
2020-11-15rbutil: Extend test for ServerInfo.Dominik Riebeling3-8/+78
- Further extend stubs, pull in less non-stubbed implementations. - Change some test URLs to make sure the code actually uses the correct ones. Change-Id: Iac1d683748b5834e61aa4974d1b893b77f90b517
2020-11-15rbutil: Extend test for ServerInfo.Dominik Riebeling3-12/+70
- Add tests for missing info values. - Extend stubs, pull in less non-stubbed implementations. Change-Id: I9a349f0eafe65811de37418c141fb581b6d9f59a
2020-11-15rbutil: Fix unit test.Dominik Riebeling1-1/+1
Change-Id: I0d1a33190d6590687d9e6eadd86a7ab8d8f877df
2020-11-14rbutil: Rework player configuration.Dominik Riebeling14-88/+84
Rename config entries and remove now unnecessary default value handling. Change-Id: I5c60ef9769fc01f45f45290dafffb80c1962e674
2020-11-14rbutil: Rework player configuration.Dominik Riebeling14-114/+107
- Split internal configuration into player specific and common parts. Always require passing the player for player specific data instead of implicitly assuming the currently selected one; only use the currently selected one if the player name is explicitly passed as empty. - Similarly adjust handling of server info data; prepare for splitting into build type specific values so the naming becomes cleaner. Change-Id: I894e694f83bd9fe2d22ad46b3f8f7df3e2c68033
2020-11-14rbutil: Show HTTP error string on download failure.Dominik Riebeling1-2/+3
Also show the error string, which usually is more helpful than just showing the HTTP error code. Change-Id: I0652d240147c0f64a7a9ea58765af9eb197a03b1
2020-11-07rbutil: Show the license of all libraries included.Dominik Riebeling3-15/+46
Replace the Speex license tab in the about dialog with one that lists all used libraries and their respective licenses, including Speex. Previously only Speex required including the license in binary distribution; the recently added bspatch also wants this. Show the license for all used libraries so we can more easily add new ones in the future. Change-Id: Ic8b403f8a2a05d0f1734ddf092782b85ddfa5ed9
2020-11-07rbutil: Modernize HttpGet implementation.Dominik Riebeling2-21/+25
- Change signal-slot connections to new style, and fix renamed signal for Qt6. - Make more use of RAII. Change-Id: I14e52eb6bfdbb89bccafb33e4988af25b5d82713
2020-11-07rbutil: Explicitly enable svg module.Dominik Riebeling1-2/+1
Since most icons are svg now we need this. Linux implicitly enables it, Windows doesn't. Change-Id: Idbc0610c9ca3c0ceddd48a2af7e71d5348ba10f6
2020-11-07rbutil: Enable HiDPI support on MacOS.Dominik Riebeling1-0/+4
Since we provide our own Info.plist file we need to enable HiDPI support here.
2020-11-07rbutil: Enable HiDPI support on recent Qt versions.Dominik Riebeling1-0/+4
Change-Id: Iafafacbac93304e1dd955dab0d8cba78a9622f6e
2020-11-07rbutil: Replace most icons with their svg variant.Dominik Riebeling64-97/+13293
Replace png icons with svg ones for better HiDPI support. Change-Id: Ifcd5e551dfb764f57324d27741598181ce3acce2
2020-11-06rbutil: Redo MacOS application icon.Dominik Riebeling1-0/+0
Don't use different icons depending on the display size and recreate properly including all scaled formats.
2020-11-06rbutil: Simplify qmake check.Dominik Riebeling1-1/+1
Change-Id: I68f2584ba246f120af8841d1a4141b71c9e3b5c0
2020-11-06rbutil: Enable use of libmp3lame on macOS.Dominik Riebeling1-5/+0
Since we're now automatically falling back to using the command line lame if we cannot load the library we can enable it on macOS as well. Change-Id: I0df1bb4a011d019a340fe54f1db6fc4645f9081b
2020-11-06rbutil: Command line fallback on libmp3lame failure.Dominik Riebeling3-10/+22
When loading libmp3lame fails fall back to using the command line lame. Avoids an unresolvable error when trying to create voice / talk files for Archos. Modernize code a bit. Change-Id: I2e8fd5786fda972cb24adbcb9ced531e08093b4f
2020-11-01rbutil: Remove unneeded includes.Dominik Riebeling2-9/+0
Change-Id: I20cde7201617481124905334e2adfb7f00f4fd21
2020-11-01rbutil: Simplify extenal encoder binary handling.Dominik Riebeling2-37/+19
We only use lame as external encoder for voice on the Archos targets. Simplify the implementation by removing (unused) handling of (potential) other encoders. Change-Id: I175cc21868fb7ef9524247d78cfb7bdf65e9e162
2020-10-31rbutil: Create more fancy dmg on macOS using dmgbuild.Dominik Riebeling1-0/+9
Add target to build a dmg containing Rockbox Utility, ipodpatcher and sansapatcher as single app bundle, and create a more fancy dmg using dmgbuild. Change-Id: Idb36776c05f820afc98efecf45a011dc75a13c31
2020-10-29rbutil: More Qt6 compatibility.Dominik Riebeling3-1/+5
Qt6 doesn't contain QTextCodec anymore but instead provides it in the optional core5compat module. Change-Id: Ia45985a32df3826faf041981b8935c839946e5c9
2020-10-29rbutil: Simplify search.Dominik Riebeling1-1/+1
No need to get keys from the map to search a key, we can check directly. Change-Id: Ia96286e441c3d03864bd7b152065576d26acad87
2020-10-29rbutil: More Qt6 compatibility.Dominik Riebeling1-1/+1
Replace QProcess::pid() which has been replaced with QProcess::processId() starting with Qt5.3 and removed from Qt6. Change-Id: I9b2d38f8e490e2e4c0afb5cbb409f6a17a98efbd
2020-10-29rbutil: Remove unused assignment.Dominik Riebeling1-1/+0
Change-Id: I6445e13472ae856acda1890056fd933d7d810bd5
2020-10-22rbutil: Rename libbzip2.a to libbz2.a.Dominik Riebeling2-9/+8
When cross compiling for Windows (at least mxe) links bz2, causing both our copy and the system one getting linked, resulting in symbol clashes. Make sure we use the same name as the system one, so the linker can pick one of both. Change-Id: I16213a20f48d4e192cd0b756931f9ccb449fd1c0
2020-10-21rbutil: Fix linking zlib on Windows.Dominik Riebeling1-4/+1
With Qt4 zlib was linked implicitly (and explicitly linking it caused errors). This was a Qt issue that has been resolved with (at least current) Qt5, now we need to explicitly link zlib on native Windows. Change-Id: Ia5a6bdc83a39f6f5629c34ed835d2272a887f161
2020-10-18rbutil: Pass isysroot to rbutil libs on macOS.Dominik Riebeling2-0/+7
On macOS we pass the full path to the compiler. On recent versions this causes the compiler to not find its SDK path, this needs to get passed via the isysroot option. Change-Id: Iea2820e1755cc80e12691119dfa31d70938ea511
2020-10-18sbtools: convert crypto to libtomcrypt.Dominik Riebeling2-5/+5
Replace the use of crypto++ with tomcrypt, which is much smaller and C. This gets rid of various build issues for systems that don't ship crypo++ (i.e. everything except Linux.) Change-Id: Ic0799e17b94935c71b14765cf9a2a7ea2b0adc7a
2020-10-16Fix configure target name for the erosq/k series.Solomon Peachy1-4/+4
Change-Id: Ic114d8d26209d37133ffa48d232ab278a0309dcd
2020-10-17rbutil: Add in the EROS Q / EROS K and clonesSolomon Peachy1-0/+80
Change-Id: I0b482542fc15af3abbaf7a132ee56414a2bd3231
2020-10-16rbutil: Fix incorrect USB IDs for the xDuoo X3ii and X20Solomon Peachy1-2/+2
Change-Id: I0d16189d236a8589ff51d93d1eeabed3cfe751da
2020-10-11rbutil: Use globalPos() for getting mouse position.Dominik Riebeling2-5/+4
globalX() / globalY() are deprecated for Qt6. Use globalPos() instead, which gives the same result. Change-Id: Ie0b733b88107e971de9c3e8c42434d7d47a65b76
2020-10-11rbutil: Add project file for building multiple binaries.Dominik Riebeling1-26/+0
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-11rbutil: Fix encoding of turkish translation.Dominik Riebeling1-1196/+2275
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-04rbutil: Replace sysinfo filesystem cluster size with type.Dominik Riebeling4-14/+52
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-09-30rbutil: Fix unnecessary implicit cast.Dominik Riebeling1-2/+2
Change-Id: Id05220a700eb826d38023575b02f568b1c1a7580
2020-09-30rbutil: Add postinstall hint for rocker and xduoo player.Dominik Riebeling1-2/+3
Change-Id: I4f679228a354019d830afbbd402db566abd743d3
2020-09-27rbutil: Fix some minor issues found by clazy.Dominik Riebeling6-8/+7
Change-Id: I0e63df09caf959dcb325c6ad2297c4348388a831
2020-09-27rbutil: Code cleanup.Dominik Riebeling2-25/+31
- 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-08-23rbutil: Fix Xduoo bootloader installation.Dominik Riebeling3-4/+12
- 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-21rbutil: Fix wrong fall-through.Dominik Riebeling1-0/+1
Fortunately it didn't break anything. Change-Id: Ie1f2bff73dbc61ec9f454ce7b61aaad74424fd06