diff --git a/minimal_test.json b/minimal_test.json deleted file mode 100644 index 75c3838..0000000 --- a/minimal_test.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "os_list": [ - { - "name": "Test OS 1", - "description": "A test OS for verifying functionality", - "icon": "icons/erase.png", - "url": "internal://format" - }, - { - "name": "Test OS 2", - "description": "Another test OS", - "icon": "icons/erase.png", - "url": "internal://format" - } - ] -} \ No newline at end of file diff --git a/os_list.json b/os_list.json deleted file mode 100644 index fedc395..0000000 --- a/os_list.json +++ /dev/null @@ -1,552 +0,0 @@ -{ - "os_list": [ - { - "name": "muOS 2410.1 Banana for RG35XX Plus", - "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XX Plus.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", - "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-PLUS-2410.1-BANANA-d1bae326.img.gz", - "release_date": "2024-10-12", - "image_download_size": 2151537628, - "extract_size": 4504682496, - "extract_sha256": "62c492047923e3e8709e0b015760b7f1e0db2ccab40e741fe067b49d96957624", - "devices": [ - "rg35xx_plus" - ] - }, - { - "name": "muOS 2410.1 Banana for RG28XX", - "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG28XX.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", - "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG28XX-2410.1-BANANA-d1bae326.img.gz", - "release_date": "2024-10-12", - "image_download_size": 2158432397, - "extract_size": 4504682496, - "extract_sha256": "62c492047923e3e8709e0b015760b7f1e0db2ccab40e741fe067b49d96957624", - "devices": [ - "rg28xx" - ] - }, - { - "name": "muOS 2410.1 Banana for RG35XXH", - "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XXH.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", - "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-H-2410.1-BANANA-a10951c4.img.gz", - "release_date": "2024-10-12", - "image_download_size": 2118435484, - "extract_size": 4504682496, - "extract_sha256": "a84a1386de3b046aea05c75a4ccc8da0fbc2ee42f89b7b78a720cf657f45d3d2", - "devices": [ - "rg35xxh" - ] - }, - { - "name": "muOS 2410.1 Banana for RG35XXSP", - "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XXSP.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", - "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-SP-2410.1-BANANA-d1bae326.img.gz", - "release_date": "2024-10-12", - "image_download_size": 2176694960, - "extract_size": 4504682496, - "extract_sha256": "9a529d2f089bba6616615026c6ec16e282d622adbc6ae97172b7ab73d32092c4", - "devices": [ - "rg35xx_sp" - ] - }, - { - "name": "muOS 2410.1 Banana for RG35XX24", - "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XX24.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", - "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-2024-2410.1-BANANA-d1bae326.img.gz", - "release_date": "2024-10-12", - "image_download_size": 2151137645, - "extract_size": 4504682496, - "extract_sha256": "fc0da5aa0dcda244be8dec28115210200fe259c374bb7b25d6d26f4db812d351", - "devices": [ - "rg35xx_2024" - ] - }, - { - "name": "muOS 2410.1 Banana for RG40XXH", - "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG40XXH.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", - "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG40XX-H-2410.1-BANANA-d1bae326.img.gz", - "release_date": "2024-10-12", - "image_download_size": 2132388103, - "extract_size": 4504682496, - "extract_sha256": "fe51f4f3a7f9e51c34eb78ef704a9a6af0233d6fdf87ccd070444034003afe5c", - "devices": [ - "rg40xxh" - ] - }, - { - "name": "muOS 2410.1 Banana for RG40XXV", - "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG40XXV.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", - "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG40XX-V-2410.1-BANANA-d1bae326.img.gz", - "release_date": "2024-10-12", - "image_download_size": 2132476961, - "extract_size": 4504682496, - "extract_sha256": "aa2cd35010e1414c62b0460d8f193d7a3c56ebcf3f59a220aebe995ab93bb051", - "devices": [ - "rg40xxv" - ] - }, - { - "name": "ROCKNIX 20241120 for Rockchip RK3326 devices, A image.", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3326 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3326.aarch64-20241120-a.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1348717111, - "extract_size": 2197815296, - "extract_sha256": "8cc28cca1d4d88464cf156691a540111385c5b94f30aa067456cc80fcd12b747", - "devices": [ - "rg351p", - "rg351m", - "rg351v", - "r33s", - "r35s", - "r36s", - "oga", - "ogs", - "xu10", - "v10", - "rgb10" - ] - }, - { - "name": "ROCKNIX 20241120 for Rockchip RK3326 devices, B image.", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3326 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3326.aarch64-20241120-b.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1348619756, - "extract_size": 2197815296, - "extract_sha256": "e43ed5ea9c8c93408a180e57409e9a07d7594ecb1ffe46f21024655f46ea9050", - "devices": [ - "xu_mini_m", - "rgb10x" - ] - }, - { - "name": "ROCKNIX 20241120 for Rockchip RK3399 devices", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3399 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3399.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1288581465, - "extract_size": 2198863872, - "extract_sha256": "53091696a540d693d99d515524816825a057823c0fe1f91a0b5e4837baeb24b9", - "devices": [ - "rg552" - ] - }, - { - "name": "ROCKNIX 20241120 for Rockchip RK3566 devices", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3566 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3566.aarch64-20241120-Generic.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1391749865, - "extract_size": 2198863872, - "extract_sha256": "4917f090e9364f47de5cf8663c0741eb79b8236c4b455a5ae4d3c8889744de27", - "devices": [ - "rg353p", - "rg353m", - "rg353v", - "rg353vs", - "rg353ps", - "rg503", - "rg_arc_d", - "rg_arc_s", - "rk2023", - "rgb10_max_3", - "rgb30", - "rgb20sx" - ] - }, - { - "name": "ROCKNIX 20241120 for Powkiddy X55 devices", - "description": "ROCKNIX 20241120 firmware optimized for Powkiddy X55 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3566.aarch64-20241120-Powkiddy_x55.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1391396234, - "extract_size": 2198863872, - "extract_sha256": "35391e0a49de413a2672893a07ed6ca116f90746baef620eebf8d3ab7b2ad5f7", - "devices": [ - "x55" - ] - }, - { - "name": "ROCKNIX 20241120 for Hardkernel ODROID Go Ultra and Powkiddy RGB10 Max 3 Pro devices", - "description": "ROCKNIX 20241120 firmware optimized for ODROID Go Ultra and RGB10 Max 3 Pro devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-S922X.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1416924259, - "extract_size": 2185232384, - "extract_sha256": "86cd0a48d541e3e68582107748e2f77656c153d11f6efd14563fb65a0f9c5076", - "devices": [ - "ogu", - "rgb10_max_3_pro" - ] - }, - { - "name": "ROCKNIX 20240815 for Hardkernel ODROID N2/N2+ devices", - "description": "ROCKNIX 20240815 firmware optimized for Hardkernel ODROID N2/N2+ devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-S922X.aarch64-20240815-Odroid_N2.img.gz", - "release_date": "2024-08-15", - "image_download_size": 1249723275, - "extract_size": 2185232384, - "extract_sha256": "7e5b56f4a0c0a9d9c64e7b1ba4472dd7e2dac9c28a23585098e16349f30c7fc9", - "devices": [ - "on2", - "on2_plus" - ] - }, - { - "name": "ROCKNIX 20240815 for Hardkernel ODROID N2L devices", - "description": "ROCKNIX 20240815 firmware optimized for Hardkernel ODROID N2L devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-S922X.aarch64-20240815-Odroid_N2L.img.gz", - "release_date": "2024-08-15", - "image_download_size": 1249707786, - "extract_size": 2185232384, - "extract_sha256": "5af36c78b57dcb35c910bb72c2ed28208fe94c94d5b7fda83d73ef33a2419910", - "devices": [ - "on2l" - ] - }, - { - "name": "ROCKNIX 20241120 for Rockchip RK3588 devices", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3588 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3588.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1451047021, - "extract_size": 2198863872, - "extract_sha256": "ec81027b7d9b757f09ccd78ce38c6993009e66ddd4b7e1a1206dc104ad739754", - "devices": [ - "ace", - "orange_pi_5", - "orange_pi_5_plus", - "radxa_rock_5a", - "radxa_rock_5b", - "radxa_rock_5b_plus", - "radxa_rock_cm5", - "nova" - ] - }, - { - "name": "ROCKNIX 20241120 for Retroid Pocket Mini and Retroid Pocket 5 devices", - "description": "ROCKNIX 20241120 firmware optimized for Snapdragon 865 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-SD865.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1404994449, - "extract_size": 2198863872, - "extract_sha256": "82f9336c27c9b733322e7e9f685bc1e98aa4eedb0c17f9ae297edb983ada6f39", - "devices": [ - "rpmini", - "rp5" - ] - } - ], - "imager": { - "devices": [ - { - "name": "Anbernic", - "subitems": [ - { - "name": "Anbernic RG40XXH", - "tags": ["rg40xxh"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG40XX%20H.png?raw=true" - }, - { - "name": "Anbernic RG40XXV", - "tags": ["rg40xxv"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG40XX%20V.png?raw=true" - }, - { - "name": "Anbernic RG35XXH", - "tags": ["rg35xxh"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20H.png?raw=true" - }, - { - "name": "Anbernic RG35XX Plus", - "tags": ["rg35xx_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20-%20PLUS.png?raw=true" - }, - { - "name": "Anbernic RG35XX SP", - "tags": ["rg35xx_sp"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20SP.png?raw=true" - }, - { - "name": "Anbernic RG35XX 2024", - "tags": ["rg35xx_2024"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20-%202024.png?raw=true" - }, - { - "name": "Anbernic RG28XX", - "tags": ["rg28xx"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG28XX.png?raw=true" - }, - { - "name": "Anbernic RG351P", - "tags": ["rg351p"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG351M", - "tags": ["rg351m"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG351V", - "tags": ["rg351v"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353P", - "tags": ["rg353p"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353M", - "tags": ["rg353m"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353V", - "tags": ["rg353v"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353VS", - "tags": ["rg353vs"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353PS", - "tags": ["rg353ps"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG503", - "tags": ["rg503"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG Arc-D", - "tags": ["rg_arc_d"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG Arc-S", - "tags": ["rg_arc_s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "Game Console", - "subitems": [ - { - "name": "Game Console R33S", - "tags": ["r33s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Game Console R35S", - "tags": ["r35s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Game Console R36S", - "tags": ["r36s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "ODROID", - "subitems": [ - { - "name": "ODROID Go Advance", - "tags": ["oga"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID Go Super", - "tags": ["ogs"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID N2", - "tags": ["on2"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID N2 Plus", - "tags": ["on2_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID N2L", - "tags": ["on2l"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "MagicX", - "subitems": [ - { - "name": "MagicX XU10", - "tags": ["xu10"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "MagicX XU Mini M", - "tags": ["xu_mini_m"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "Powkiddy", - "subitems": [ - { - "name": "Powkiddy V10", - "tags": ["v10"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB10", - "tags": ["rgb10"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RK2023", - "tags": ["rk2023"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB10 Max 3", - "tags": ["rgb10_max_3"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB30", - "tags": ["rgb30"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB20SX", - "tags": ["rgb20sx"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG552", - "tags": ["rg552"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID Go Ultra", - "tags": ["ogu"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB10 Max 3 Pro", - "tags": ["rgb10_max_3_pro"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy X55", - "tags": ["x55"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "Gameforce", - "subitems": [ - { - "name": "Gameforce Ace (default)", - "tags": ["ace"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "Orange Pi", - "subitems": [ - { - "name": "Orange Pi 5", - "tags": ["orange_pi_5"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Orange Pi 5 Plus", - "tags": ["orange_pi_5_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "Radxa", - "subitems": [ - { - "name": "Radxa Rock 5a", - "tags": ["radxa_rock_5a"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Radxa Rock 5b", - "tags": ["radxa_rock_5b"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Radxa Rock 5b Plus", - "tags": ["radxa_rock_5b_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Radxa Rock CM5", - "tags": ["radxa_rock_cm5"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "Indiedroid", - "subitems": [ - { - "name": "Indiedroid Nova (Must set dtb in extlinuix.conf)", - "tags": ["nova"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - }, - { - "name": "Retroid", - "subitems": [ - { - "name": "Retroid Pocket Mini", - "tags": ["rpmini"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Retroid Pocket 5", - "tags": ["rp5"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] - } - ] - } -} - diff --git a/qt_plugins/assetimporters/libassimp.dylib b/qt_plugins/assetimporters/libassimp.dylib deleted file mode 100755 index fcc24b2..0000000 Binary files a/qt_plugins/assetimporters/libassimp.dylib and /dev/null differ diff --git a/qt_plugins/canbus/libqtpassthrucanbus.dylib b/qt_plugins/canbus/libqtpassthrucanbus.dylib deleted file mode 100755 index f81d632..0000000 Binary files a/qt_plugins/canbus/libqtpassthrucanbus.dylib and /dev/null differ diff --git a/qt_plugins/canbus/libqtpeakcanbus.dylib b/qt_plugins/canbus/libqtpeakcanbus.dylib deleted file mode 100755 index b481c0a..0000000 Binary files a/qt_plugins/canbus/libqtpeakcanbus.dylib and /dev/null differ diff --git a/qt_plugins/canbus/libqttinycanbus.dylib b/qt_plugins/canbus/libqttinycanbus.dylib deleted file mode 100755 index e25a98b..0000000 Binary files a/qt_plugins/canbus/libqttinycanbus.dylib and /dev/null differ diff --git a/qt_plugins/canbus/libqtvirtualcanbus.dylib b/qt_plugins/canbus/libqtvirtualcanbus.dylib deleted file mode 100755 index 1d0afa2..0000000 Binary files a/qt_plugins/canbus/libqtvirtualcanbus.dylib and /dev/null differ diff --git a/qt_plugins/designer/libqquickwidget.dylib b/qt_plugins/designer/libqquickwidget.dylib deleted file mode 100755 index fa42225..0000000 Binary files a/qt_plugins/designer/libqquickwidget.dylib and /dev/null differ diff --git a/qt_plugins/designer/libqwebengineview.dylib b/qt_plugins/designer/libqwebengineview.dylib deleted file mode 100755 index c0e98f8..0000000 Binary files a/qt_plugins/designer/libqwebengineview.dylib and /dev/null differ diff --git a/qt_plugins/generic/libqtuiotouchplugin.dylib b/qt_plugins/generic/libqtuiotouchplugin.dylib deleted file mode 100755 index 5d77bc6..0000000 Binary files a/qt_plugins/generic/libqtuiotouchplugin.dylib and /dev/null differ diff --git a/qt_plugins/geometryloaders/libdefaultgeometryloader.dylib b/qt_plugins/geometryloaders/libdefaultgeometryloader.dylib deleted file mode 100755 index 915e18b..0000000 Binary files a/qt_plugins/geometryloaders/libdefaultgeometryloader.dylib and /dev/null differ diff --git a/qt_plugins/geometryloaders/libgltfgeometryloader.dylib b/qt_plugins/geometryloaders/libgltfgeometryloader.dylib deleted file mode 100755 index c26e1e3..0000000 Binary files a/qt_plugins/geometryloaders/libgltfgeometryloader.dylib and /dev/null differ diff --git a/qt_plugins/geoservices/libqtgeoservices_itemsoverlay.dylib b/qt_plugins/geoservices/libqtgeoservices_itemsoverlay.dylib deleted file mode 100755 index 47ec78f..0000000 Binary files a/qt_plugins/geoservices/libqtgeoservices_itemsoverlay.dylib and /dev/null differ diff --git a/qt_plugins/geoservices/libqtgeoservices_osm.dylib b/qt_plugins/geoservices/libqtgeoservices_osm.dylib deleted file mode 100755 index ead5dd9..0000000 Binary files a/qt_plugins/geoservices/libqtgeoservices_osm.dylib and /dev/null differ diff --git a/qt_plugins/help/libhelpplugin.dylib b/qt_plugins/help/libhelpplugin.dylib deleted file mode 100755 index e615f84..0000000 Binary files a/qt_plugins/help/libhelpplugin.dylib and /dev/null differ diff --git a/qt_plugins/iconengines/libqsvgicon.dylib b/qt_plugins/iconengines/libqsvgicon.dylib deleted file mode 100755 index 2334c1f..0000000 Binary files a/qt_plugins/iconengines/libqsvgicon.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqgif.dylib b/qt_plugins/imageformats/libqgif.dylib deleted file mode 100755 index 80c37d6..0000000 Binary files a/qt_plugins/imageformats/libqgif.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqicns.dylib b/qt_plugins/imageformats/libqicns.dylib deleted file mode 100755 index 2a906b9..0000000 Binary files a/qt_plugins/imageformats/libqicns.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqico.dylib b/qt_plugins/imageformats/libqico.dylib deleted file mode 100755 index f8c1a2c..0000000 Binary files a/qt_plugins/imageformats/libqico.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqjp2.dylib b/qt_plugins/imageformats/libqjp2.dylib deleted file mode 100755 index 589265b..0000000 Binary files a/qt_plugins/imageformats/libqjp2.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqjpeg.dylib b/qt_plugins/imageformats/libqjpeg.dylib deleted file mode 100755 index 9b4c006..0000000 Binary files a/qt_plugins/imageformats/libqjpeg.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqmacheif.dylib b/qt_plugins/imageformats/libqmacheif.dylib deleted file mode 100755 index a5ca073..0000000 Binary files a/qt_plugins/imageformats/libqmacheif.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqmng.dylib b/qt_plugins/imageformats/libqmng.dylib deleted file mode 100755 index b03723d..0000000 Binary files a/qt_plugins/imageformats/libqmng.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqpdf.dylib b/qt_plugins/imageformats/libqpdf.dylib deleted file mode 100755 index 10a7c59..0000000 Binary files a/qt_plugins/imageformats/libqpdf.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqsvg.dylib b/qt_plugins/imageformats/libqsvg.dylib deleted file mode 100755 index a9cc580..0000000 Binary files a/qt_plugins/imageformats/libqsvg.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqtga.dylib b/qt_plugins/imageformats/libqtga.dylib deleted file mode 100755 index 67f39da..0000000 Binary files a/qt_plugins/imageformats/libqtga.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqtiff.dylib b/qt_plugins/imageformats/libqtiff.dylib deleted file mode 100755 index bf7ea97..0000000 Binary files a/qt_plugins/imageformats/libqtiff.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqwbmp.dylib b/qt_plugins/imageformats/libqwbmp.dylib deleted file mode 100755 index f057406..0000000 Binary files a/qt_plugins/imageformats/libqwbmp.dylib and /dev/null differ diff --git a/qt_plugins/imageformats/libqwebp.dylib b/qt_plugins/imageformats/libqwebp.dylib deleted file mode 100755 index 557482f..0000000 Binary files a/qt_plugins/imageformats/libqwebp.dylib and /dev/null differ diff --git a/qt_plugins/multimedia/libdarwinmediaplugin.dylib b/qt_plugins/multimedia/libdarwinmediaplugin.dylib deleted file mode 100755 index a2c0e2c..0000000 Binary files a/qt_plugins/multimedia/libdarwinmediaplugin.dylib and /dev/null differ diff --git a/qt_plugins/networkinformation/libqglib.dylib b/qt_plugins/networkinformation/libqglib.dylib deleted file mode 100755 index 0855317..0000000 Binary files a/qt_plugins/networkinformation/libqglib.dylib and /dev/null differ diff --git a/qt_plugins/networkinformation/libqscnetworkreachability.dylib b/qt_plugins/networkinformation/libqscnetworkreachability.dylib deleted file mode 100755 index 72b348b..0000000 Binary files a/qt_plugins/networkinformation/libqscnetworkreachability.dylib and /dev/null differ diff --git a/qt_plugins/opcua/libopen62541_backend.dylib b/qt_plugins/opcua/libopen62541_backend.dylib deleted file mode 100755 index 5578936..0000000 Binary files a/qt_plugins/opcua/libopen62541_backend.dylib and /dev/null differ diff --git a/qt_plugins/permissions/libqdarwinbluetoothpermission.a b/qt_plugins/permissions/libqdarwinbluetoothpermission.a deleted file mode 100644 index b8122f3..0000000 Binary files a/qt_plugins/permissions/libqdarwinbluetoothpermission.a and /dev/null differ diff --git a/qt_plugins/permissions/libqdarwinbluetoothpermission.prl b/qt_plugins/permissions/libqdarwinbluetoothpermission.prl deleted file mode 100644 index 9f6d1ba..0000000 --- a/qt_plugins/permissions/libqdarwinbluetoothpermission.prl +++ /dev/null @@ -1,5 +0,0 @@ -QMAKE_PRL_TARGET = libqdarwinbluetoothpermission.a -QMAKE_PRL_CONFIG = static -QMAKE_PRL_VERSION = 6.8.2 -QMAKE_PRL_LIBS = -F$$[QT_INSTALL_LIBS] -framework QtCore -framework IOKit -framework DiskArbitration -framework UniformTypeIdentifiers -framework Foundation -framework CoreBluetooth -QMAKE_PRL_LIBS_FOR_CMAKE = -F$$[QT_INSTALL_LIBS];-framework;QtCore;-framework IOKit;-framework DiskArbitration;-framework UniformTypeIdentifiers;-framework Foundation;-framework CoreBluetooth diff --git a/qt_plugins/permissions/libqdarwincalendarpermission.a b/qt_plugins/permissions/libqdarwincalendarpermission.a deleted file mode 100644 index 21e7ec4..0000000 Binary files a/qt_plugins/permissions/libqdarwincalendarpermission.a and /dev/null differ diff --git a/qt_plugins/permissions/libqdarwincalendarpermission.prl b/qt_plugins/permissions/libqdarwincalendarpermission.prl deleted file mode 100644 index fb7e5e9..0000000 --- a/qt_plugins/permissions/libqdarwincalendarpermission.prl +++ /dev/null @@ -1,5 +0,0 @@ -QMAKE_PRL_TARGET = libqdarwincalendarpermission.a -QMAKE_PRL_CONFIG = static -QMAKE_PRL_VERSION = 6.8.2 -QMAKE_PRL_LIBS = -F$$[QT_INSTALL_LIBS] -framework QtCore -framework IOKit -framework DiskArbitration -framework UniformTypeIdentifiers -framework Foundation -framework EventKit -QMAKE_PRL_LIBS_FOR_CMAKE = -F$$[QT_INSTALL_LIBS];-framework;QtCore;-framework IOKit;-framework DiskArbitration;-framework UniformTypeIdentifiers;-framework Foundation;-framework EventKit diff --git a/qt_plugins/permissions/libqdarwincamerapermission.a b/qt_plugins/permissions/libqdarwincamerapermission.a deleted file mode 100644 index f319588..0000000 Binary files a/qt_plugins/permissions/libqdarwincamerapermission.a and /dev/null differ diff --git a/qt_plugins/permissions/libqdarwincamerapermission.prl b/qt_plugins/permissions/libqdarwincamerapermission.prl deleted file mode 100644 index 1085b53..0000000 --- a/qt_plugins/permissions/libqdarwincamerapermission.prl +++ /dev/null @@ -1,5 +0,0 @@ -QMAKE_PRL_TARGET = libqdarwincamerapermission.a -QMAKE_PRL_CONFIG = static -QMAKE_PRL_VERSION = 6.8.2 -QMAKE_PRL_LIBS = -F$$[QT_INSTALL_LIBS] -framework QtCore -framework IOKit -framework DiskArbitration -framework UniformTypeIdentifiers -framework Foundation -framework AVFoundation -QMAKE_PRL_LIBS_FOR_CMAKE = -F$$[QT_INSTALL_LIBS];-framework;QtCore;-framework IOKit;-framework DiskArbitration;-framework UniformTypeIdentifiers;-framework Foundation;-framework AVFoundation diff --git a/qt_plugins/permissions/libqdarwincontactspermission.a b/qt_plugins/permissions/libqdarwincontactspermission.a deleted file mode 100644 index 548b88c..0000000 Binary files a/qt_plugins/permissions/libqdarwincontactspermission.a and /dev/null differ diff --git a/qt_plugins/permissions/libqdarwincontactspermission.prl b/qt_plugins/permissions/libqdarwincontactspermission.prl deleted file mode 100644 index a2d9c0e..0000000 --- a/qt_plugins/permissions/libqdarwincontactspermission.prl +++ /dev/null @@ -1,5 +0,0 @@ -QMAKE_PRL_TARGET = libqdarwincontactspermission.a -QMAKE_PRL_CONFIG = static -QMAKE_PRL_VERSION = 6.8.2 -QMAKE_PRL_LIBS = -F$$[QT_INSTALL_LIBS] -framework QtCore -framework IOKit -framework DiskArbitration -framework UniformTypeIdentifiers -framework Foundation -framework Contacts -QMAKE_PRL_LIBS_FOR_CMAKE = -F$$[QT_INSTALL_LIBS];-framework;QtCore;-framework IOKit;-framework DiskArbitration;-framework UniformTypeIdentifiers;-framework Foundation;-framework Contacts diff --git a/qt_plugins/permissions/libqdarwinlocationpermission.a b/qt_plugins/permissions/libqdarwinlocationpermission.a deleted file mode 100644 index 6642bed..0000000 Binary files a/qt_plugins/permissions/libqdarwinlocationpermission.a and /dev/null differ diff --git a/qt_plugins/permissions/libqdarwinlocationpermission.prl b/qt_plugins/permissions/libqdarwinlocationpermission.prl deleted file mode 100644 index fe1aa38..0000000 --- a/qt_plugins/permissions/libqdarwinlocationpermission.prl +++ /dev/null @@ -1,5 +0,0 @@ -QMAKE_PRL_TARGET = libqdarwinlocationpermission.a -QMAKE_PRL_CONFIG = static -QMAKE_PRL_VERSION = 6.8.2 -QMAKE_PRL_LIBS = -F$$[QT_INSTALL_LIBS] -framework QtCore -framework IOKit -framework DiskArbitration -framework UniformTypeIdentifiers -framework Foundation -framework CoreLocation -QMAKE_PRL_LIBS_FOR_CMAKE = -F$$[QT_INSTALL_LIBS];-framework;QtCore;-framework IOKit;-framework DiskArbitration;-framework UniformTypeIdentifiers;-framework Foundation;-framework CoreLocation diff --git a/qt_plugins/permissions/libqdarwinmicrophonepermission.a b/qt_plugins/permissions/libqdarwinmicrophonepermission.a deleted file mode 100644 index 77ed4ff..0000000 Binary files a/qt_plugins/permissions/libqdarwinmicrophonepermission.a and /dev/null differ diff --git a/qt_plugins/permissions/libqdarwinmicrophonepermission.prl b/qt_plugins/permissions/libqdarwinmicrophonepermission.prl deleted file mode 100644 index ca6f7b7..0000000 --- a/qt_plugins/permissions/libqdarwinmicrophonepermission.prl +++ /dev/null @@ -1,5 +0,0 @@ -QMAKE_PRL_TARGET = libqdarwinmicrophonepermission.a -QMAKE_PRL_CONFIG = static -QMAKE_PRL_VERSION = 6.8.2 -QMAKE_PRL_LIBS = -F$$[QT_INSTALL_LIBS] -framework QtCore -framework IOKit -framework DiskArbitration -framework UniformTypeIdentifiers -framework Foundation -framework AVFoundation -QMAKE_PRL_LIBS_FOR_CMAKE = -F$$[QT_INSTALL_LIBS];-framework;QtCore;-framework IOKit;-framework DiskArbitration;-framework UniformTypeIdentifiers;-framework Foundation;-framework AVFoundation diff --git a/qt_plugins/permissions/objects-Release/QDarwinBluetoothPermissionPlugin_init/QDarwinBluetoothPermissionPlugin_init.cpp.o b/qt_plugins/permissions/objects-Release/QDarwinBluetoothPermissionPlugin_init/QDarwinBluetoothPermissionPlugin_init.cpp.o deleted file mode 100644 index 1f5594e..0000000 Binary files a/qt_plugins/permissions/objects-Release/QDarwinBluetoothPermissionPlugin_init/QDarwinBluetoothPermissionPlugin_init.cpp.o and /dev/null differ diff --git a/qt_plugins/permissions/objects-Release/QDarwinCalendarPermissionPlugin_init/QDarwinCalendarPermissionPlugin_init.cpp.o b/qt_plugins/permissions/objects-Release/QDarwinCalendarPermissionPlugin_init/QDarwinCalendarPermissionPlugin_init.cpp.o deleted file mode 100644 index 8476489..0000000 Binary files a/qt_plugins/permissions/objects-Release/QDarwinCalendarPermissionPlugin_init/QDarwinCalendarPermissionPlugin_init.cpp.o and /dev/null differ diff --git a/qt_plugins/permissions/objects-Release/QDarwinCameraPermissionPlugin_init/QDarwinCameraPermissionPlugin_init.cpp.o b/qt_plugins/permissions/objects-Release/QDarwinCameraPermissionPlugin_init/QDarwinCameraPermissionPlugin_init.cpp.o deleted file mode 100644 index f974b34..0000000 Binary files a/qt_plugins/permissions/objects-Release/QDarwinCameraPermissionPlugin_init/QDarwinCameraPermissionPlugin_init.cpp.o and /dev/null differ diff --git a/qt_plugins/permissions/objects-Release/QDarwinContactsPermissionPlugin_init/QDarwinContactsPermissionPlugin_init.cpp.o b/qt_plugins/permissions/objects-Release/QDarwinContactsPermissionPlugin_init/QDarwinContactsPermissionPlugin_init.cpp.o deleted file mode 100644 index 2410986..0000000 Binary files a/qt_plugins/permissions/objects-Release/QDarwinContactsPermissionPlugin_init/QDarwinContactsPermissionPlugin_init.cpp.o and /dev/null differ diff --git a/qt_plugins/permissions/objects-Release/QDarwinLocationPermissionPlugin_init/QDarwinLocationPermissionPlugin_init.cpp.o b/qt_plugins/permissions/objects-Release/QDarwinLocationPermissionPlugin_init/QDarwinLocationPermissionPlugin_init.cpp.o deleted file mode 100644 index d836b6f..0000000 Binary files a/qt_plugins/permissions/objects-Release/QDarwinLocationPermissionPlugin_init/QDarwinLocationPermissionPlugin_init.cpp.o and /dev/null differ diff --git a/qt_plugins/permissions/objects-Release/QDarwinMicrophonePermissionPlugin_init/QDarwinMicrophonePermissionPlugin_init.cpp.o b/qt_plugins/permissions/objects-Release/QDarwinMicrophonePermissionPlugin_init/QDarwinMicrophonePermissionPlugin_init.cpp.o deleted file mode 100644 index 94ff547..0000000 Binary files a/qt_plugins/permissions/objects-Release/QDarwinMicrophonePermissionPlugin_init/QDarwinMicrophonePermissionPlugin_init.cpp.o and /dev/null differ diff --git a/qt_plugins/platforminputcontexts/libqtvirtualkeyboardplugin.dylib b/qt_plugins/platforminputcontexts/libqtvirtualkeyboardplugin.dylib deleted file mode 100755 index 2c06f84..0000000 Binary files a/qt_plugins/platforminputcontexts/libqtvirtualkeyboardplugin.dylib and /dev/null differ diff --git a/qt_plugins/platforms/libqcocoa.dylib b/qt_plugins/platforms/libqcocoa.dylib deleted file mode 100755 index 889280a..0000000 Binary files a/qt_plugins/platforms/libqcocoa.dylib and /dev/null differ diff --git a/qt_plugins/platforms/libqminimal.dylib b/qt_plugins/platforms/libqminimal.dylib deleted file mode 100755 index e81a765..0000000 Binary files a/qt_plugins/platforms/libqminimal.dylib and /dev/null differ diff --git a/qt_plugins/platforms/libqoffscreen.dylib b/qt_plugins/platforms/libqoffscreen.dylib deleted file mode 100755 index 48d0a65..0000000 Binary files a/qt_plugins/platforms/libqoffscreen.dylib and /dev/null differ diff --git a/qt_plugins/position/libqtposition_cl.dylib b/qt_plugins/position/libqtposition_cl.dylib deleted file mode 100755 index 7b2609f..0000000 Binary files a/qt_plugins/position/libqtposition_cl.dylib and /dev/null differ diff --git a/qt_plugins/position/libqtposition_nmea.dylib b/qt_plugins/position/libqtposition_nmea.dylib deleted file mode 100755 index 16f391c..0000000 Binary files a/qt_plugins/position/libqtposition_nmea.dylib and /dev/null differ diff --git a/qt_plugins/position/libqtposition_positionpoll.dylib b/qt_plugins/position/libqtposition_positionpoll.dylib deleted file mode 100755 index 57694c8..0000000 Binary files a/qt_plugins/position/libqtposition_positionpoll.dylib and /dev/null differ diff --git a/qt_plugins/qmllint/libquicklintplugin.dylib b/qt_plugins/qmllint/libquicklintplugin.dylib deleted file mode 100755 index 7030a05..0000000 Binary files a/qt_plugins/qmllint/libquicklintplugin.dylib and /dev/null differ diff --git a/qt_plugins/qmlls/libqmllsquickplugin.dylib b/qt_plugins/qmlls/libqmllsquickplugin.dylib deleted file mode 100755 index ba20b05..0000000 Binary files a/qt_plugins/qmlls/libqmllsquickplugin.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_debugger.dylib b/qt_plugins/qmltooling/libqmldbg_debugger.dylib deleted file mode 100755 index 2fa184c..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_debugger.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_inspector.dylib b/qt_plugins/qmltooling/libqmldbg_inspector.dylib deleted file mode 100755 index a9503ce..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_inspector.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_local.dylib b/qt_plugins/qmltooling/libqmldbg_local.dylib deleted file mode 100755 index 994227c..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_local.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_messages.dylib b/qt_plugins/qmltooling/libqmldbg_messages.dylib deleted file mode 100755 index e359090..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_messages.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_native.dylib b/qt_plugins/qmltooling/libqmldbg_native.dylib deleted file mode 100755 index 8cc2349..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_native.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_nativedebugger.dylib b/qt_plugins/qmltooling/libqmldbg_nativedebugger.dylib deleted file mode 100755 index f0f6df7..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_nativedebugger.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_preview.dylib b/qt_plugins/qmltooling/libqmldbg_preview.dylib deleted file mode 100755 index 0b3eab2..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_preview.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_profiler.dylib b/qt_plugins/qmltooling/libqmldbg_profiler.dylib deleted file mode 100755 index 7d12387..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_profiler.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_quick3dprofiler.dylib b/qt_plugins/qmltooling/libqmldbg_quick3dprofiler.dylib deleted file mode 100755 index 64a0904..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_quick3dprofiler.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_quickprofiler.dylib b/qt_plugins/qmltooling/libqmldbg_quickprofiler.dylib deleted file mode 100755 index dddba4d..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_quickprofiler.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_server.dylib b/qt_plugins/qmltooling/libqmldbg_server.dylib deleted file mode 100755 index 57bc0ac..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_server.dylib and /dev/null differ diff --git a/qt_plugins/qmltooling/libqmldbg_tcp.dylib b/qt_plugins/qmltooling/libqmldbg_tcp.dylib deleted file mode 100755 index 4c0dda8..0000000 Binary files a/qt_plugins/qmltooling/libqmldbg_tcp.dylib and /dev/null differ diff --git a/qt_plugins/renderers/libopenglrenderer.dylib b/qt_plugins/renderers/libopenglrenderer.dylib deleted file mode 100755 index 69f7f8a..0000000 Binary files a/qt_plugins/renderers/libopenglrenderer.dylib and /dev/null differ diff --git a/qt_plugins/renderers/librhirenderer.dylib b/qt_plugins/renderers/librhirenderer.dylib deleted file mode 100755 index 4d80219..0000000 Binary files a/qt_plugins/renderers/librhirenderer.dylib and /dev/null differ diff --git a/qt_plugins/renderplugins/libscene2d.dylib b/qt_plugins/renderplugins/libscene2d.dylib deleted file mode 100755 index 297aadf..0000000 Binary files a/qt_plugins/renderplugins/libscene2d.dylib and /dev/null differ diff --git a/qt_plugins/sceneparsers/libassimpsceneimport.dylib b/qt_plugins/sceneparsers/libassimpsceneimport.dylib deleted file mode 100755 index c30c9c5..0000000 Binary files a/qt_plugins/sceneparsers/libassimpsceneimport.dylib and /dev/null differ diff --git a/qt_plugins/sceneparsers/libgltfsceneexport.dylib b/qt_plugins/sceneparsers/libgltfsceneexport.dylib deleted file mode 100755 index 701b4bc..0000000 Binary files a/qt_plugins/sceneparsers/libgltfsceneexport.dylib and /dev/null differ diff --git a/qt_plugins/sceneparsers/libgltfsceneimport.dylib b/qt_plugins/sceneparsers/libgltfsceneimport.dylib deleted file mode 100755 index 54836de..0000000 Binary files a/qt_plugins/sceneparsers/libgltfsceneimport.dylib and /dev/null differ diff --git a/qt_plugins/scxmldatamodel/libqscxmlecmascriptdatamodel.dylib b/qt_plugins/scxmldatamodel/libqscxmlecmascriptdatamodel.dylib deleted file mode 100755 index 43c9b8f..0000000 Binary files a/qt_plugins/scxmldatamodel/libqscxmlecmascriptdatamodel.dylib and /dev/null differ diff --git a/qt_plugins/sensors/libqtsensors_generic.dylib b/qt_plugins/sensors/libqtsensors_generic.dylib deleted file mode 100755 index 00b9bc5..0000000 Binary files a/qt_plugins/sensors/libqtsensors_generic.dylib and /dev/null differ diff --git a/qt_plugins/sqldrivers/libqsqlite.dylib b/qt_plugins/sqldrivers/libqsqlite.dylib deleted file mode 100755 index 57c2d28..0000000 Binary files a/qt_plugins/sqldrivers/libqsqlite.dylib and /dev/null differ diff --git a/qt_plugins/styles/libqmacstyle.dylib b/qt_plugins/styles/libqmacstyle.dylib deleted file mode 100755 index 1f56999..0000000 Binary files a/qt_plugins/styles/libqmacstyle.dylib and /dev/null differ diff --git a/qt_plugins/texttospeech/libqtexttospeech_mock.dylib b/qt_plugins/texttospeech/libqtexttospeech_mock.dylib deleted file mode 100755 index 8cae0ba..0000000 Binary files a/qt_plugins/texttospeech/libqtexttospeech_mock.dylib and /dev/null differ diff --git a/qt_plugins/texttospeech/libqtexttospeech_speech_macos.dylib b/qt_plugins/texttospeech/libqtexttospeech_speech_macos.dylib deleted file mode 100755 index 3de7c3d..0000000 Binary files a/qt_plugins/texttospeech/libqtexttospeech_speech_macos.dylib and /dev/null differ diff --git a/qt_plugins/texttospeech/libqtexttospeech_speechdarwin.dylib b/qt_plugins/texttospeech/libqtexttospeech_speechdarwin.dylib deleted file mode 100755 index 8f0e6d8..0000000 Binary files a/qt_plugins/texttospeech/libqtexttospeech_speechdarwin.dylib and /dev/null differ diff --git a/qt_plugins/tls/libqcertonlybackend.dylib b/qt_plugins/tls/libqcertonlybackend.dylib deleted file mode 100755 index 5d5ec6a..0000000 Binary files a/qt_plugins/tls/libqcertonlybackend.dylib and /dev/null differ diff --git a/qt_plugins/tls/libqopensslbackend.dylib b/qt_plugins/tls/libqopensslbackend.dylib deleted file mode 100755 index b5281dc..0000000 Binary files a/qt_plugins/tls/libqopensslbackend.dylib and /dev/null differ diff --git a/qt_plugins/tls/libqsecuretransportbackend.dylib b/qt_plugins/tls/libqsecuretransportbackend.dylib deleted file mode 100755 index 152a3f6..0000000 Binary files a/qt_plugins/tls/libqsecuretransportbackend.dylib and /dev/null differ diff --git a/qt_plugins/webview/libqtwebview_darwin.dylib b/qt_plugins/webview/libqtwebview_darwin.dylib deleted file mode 100755 index 9d09aae..0000000 Binary files a/qt_plugins/webview/libqtwebview_darwin.dylib and /dev/null differ diff --git a/qt_plugins/webview/libqtwebview_webengine.dylib b/qt_plugins/webview/libqtwebview_webengine.dylib deleted file mode 100755 index 8872889..0000000 Binary files a/qt_plugins/webview/libqtwebview_webengine.dylib and /dev/null differ diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 6f88e31..407ef26 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -10,7 +10,7 @@ set(CMAKE_OSX_ARCHITECTURES "arm64;x86_64" CACHE STRING "Which macOS architectur project(retro-imager LANGUAGES CXX C) set(IMAGER_VERSION_MAJOR 0) -set(IMAGER_VERSION_MINOR 5) +set(IMAGER_VERSION_MINOR 3) set(IMAGER_VERSION_PATCH 0) set(IMAGER_VERSION_STR "${IMAGER_VERSION_MAJOR}.${IMAGER_VERSION_MINOR}.${IMAGER_VERSION_PATCH}") set(IMAGER_VERSION_CSV "${IMAGER_VERSION_MAJOR},${IMAGER_VERSION_MINOR},${IMAGER_VERSION_PATCH},0") @@ -21,10 +21,10 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) #add_link_options("-fsanitize=address") # You _must_ set your Qt6 root for the build to progress. -set(Qt6_ROOT "$ENV{QT6_ROOT}" CACHE PATH "Your Qt6 root path") +set(Qt6_ROOT "/opt/Qt/6.7.2/gcc_arm64" CACHE PATH "Your Qt6 root path") if (WIN32) - set(MINGW64_ROOT "$ENV{MINGW64_ROOT}" CACHE PATH "Your MinGW64 root path, likely provided by QtCreator") + set(MINGW64_ROOT "" CACHE PATH "Your MinGW64 root path, likely provided by QtCreator") endif() if (APPLE) @@ -433,30 +433,32 @@ elseif(APPLE) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD COMMAND "${MACDEPLOYQT_EXECUTABLE}" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.app" -qmldir="${CMAKE_CURRENT_SOURCE_DIR}") - # Don't rename the app bundle, use the project name consistently + add_custom_command(TARGET ${PROJECT_NAME} + POST_BUILD + COMMAND mv "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.app" "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.app") # Sign the .app. add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND codesign -f --deep --digest-algorithm=sha1,sha256 -o runtime --timestamp -s "${IMAGER_SIGNING_IDENTITY}" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.app") + COMMAND codesign -f --deep --digest-algorithm=sha1,sha256 -o runtime --timestamp -s "${IMAGER_SIGNING_IDENTITY}" "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.app") # Create the .dmg for distribution add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND hdiutil create -volname "${PROJECT_NAME}" -srcfolder "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.app" -ov -format UDBZ "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.dmg") + COMMAND hdiutil create -volname "Raspberry Pi Imager" -srcfolder "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.app" -ov -format UDBZ "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.dmg") # Sign the .dmg for distribution, but do not initialise notarisation add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND codesign -f --digest-algorithm=sha1,sha256 -o runtime --timestamp -s "${IMAGER_SIGNING_IDENTITY}" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.dmg") + COMMAND codesign -f --digest-algorithm=sha1,sha256 -o runtime --timestamp -s "${IMAGER_SIGNING_IDENTITY}" "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.dmg") if(IMAGER_NOTARIZE_APP) if(IMAGER_NOTARIZE_KEYCHAIN_PROFILE) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND xcrun notarytool submit "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.dmg" --wait --keychain-profile "${IMAGER_NOTARIZE_KEYCHAIN_PROFILE}") + COMMAND xcrun notarytool submit "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.dmg" --wait --keychain-profile "${IMAGER_NOTARIZE_KEYCHAIN_PROFILE}") add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND xcrun stapler staple "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.dmg") + COMMAND xcrun stapler staple "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.dmg") else() message(FATAL_ERROR "Notarization requested, but no keychain profile is supplied") endif(IMAGER_NOTARIZE_KEYCHAIN_PROFILE) @@ -469,12 +471,12 @@ elseif(APPLE) # Unsigned application add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND "${MACDEPLOYQT_EXECUTABLE}" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.app" -qmldir="${CMAKE_CURRENT_SOURCE_DIR}" -always-overwrite -no-strip -dmg) + COMMAND "${MACDEPLOYQT_EXECUTABLE}" "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.app" -qmldir="${CMAKE_CURRENT_SOURCE_DIR}" -always-overwrite -no-strip -dmg) endif(IMAGER_SIGNED_APP) add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD - COMMAND "mv" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}.dmg" "${CMAKE_BINARY_DIR}/${PROJECT_NAME}-${IMAGER_VERSION_STR}.dmg") + COMMAND "mv" "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager.dmg" "${CMAKE_BINARY_DIR}/Raspberry\ Pi\ Imager-${IMAGER_VERSION_STR}.dmg") else() # UNIX, Linux systems diff --git a/src/config.h b/src/config.h index 3527123..db32119 100644 --- a/src/config.h +++ b/src/config.h @@ -8,13 +8,13 @@ /* Repository URL */ -#define OSLIST_URL "https://raw.githubusercontent.com/cmclark00/retro-imager/refs/heads/fix/src/os_list.json" +#define OSLIST_URL "https://raw.githubusercontent.com/cmclark00/retro-imager/refs/heads/dev/src/os_list.json" /* Time synchronization URL (only used on eglfs QPA platform, URL must be HTTP) */ #define TIME_URL "http://downloads.raspberrypi.org/os_list_imagingutility_v4.json?time_synchronization" /* Phone home the name of images downloaded for image popularity ranking */ -#define TELEMETRY_URL "http://technerdguys.com/telemetry-endpoint" +#define TELEMETRY_URL "https://rpi-imager-stats.raspberrypi.com/downloads" /* Hash algorithm for verifying (uncompressed image) checksum */ #define OSLIST_HASH_ALGORITHM QCryptographicHash::Sha256 diff --git a/src/icons/banner.png b/src/icons/banner.png deleted file mode 100644 index 000982c..0000000 Binary files a/src/icons/banner.png and /dev/null differ diff --git a/src/icons/icon.png b/src/icons/icon.png deleted file mode 100644 index 9ca2554..0000000 Binary files a/src/icons/icon.png and /dev/null differ diff --git a/src/icons/rpi-imager.ico b/src/icons/rpi-imager.ico index bf62901..ecb494b 100644 Binary files a/src/icons/rpi-imager.ico and b/src/icons/rpi-imager.ico differ diff --git a/src/main.qml b/src/main.qml index 7b202f8..87c99b0 100644 --- a/src/main.qml +++ b/src/main.qml @@ -11,7 +11,7 @@ import QtQuick.Controls.Material 2.2 import "qmlcomponents" ApplicationWindow { - // Define the colors + // Define the colors property color beigeColor: "#c4bebb" property color maroonColor: "#800000" property color yellowColor: "#fcad01" @@ -68,12 +68,11 @@ ApplicationWindow { Image { id: image - source: "icons/banner.png" + source: "icons/logo_sxs_imager.png" width: window.width * 1 height: window.height / 3 smooth: true antialiasing: true - fillMode: image.PreserveAspectFit } } @@ -138,8 +137,8 @@ ApplicationWindow { bgrect.mouseOver = false } onClicked: { - hwpopup.open() - hwlist.forceActiveFocus() + hwpopup.open() + hwlist.forceActiveFocus() } } Rectangle { @@ -195,8 +194,8 @@ ApplicationWindow { bgrect1.mouseOver = false } onClicked: { - ospopup.open() - osswipeview.currentItem.forceActiveFocus() + ospopup.open() + osswipeview.currentItem.forceActiveFocus() } } @@ -254,10 +253,10 @@ ApplicationWindow { bgrect2.mouseOver = false } onClicked: { - imageWriter.startDriveListPolling() - dstpopup.open() - dstlist.forceActiveFocus() - } + imageWriter.startDriveListPolling() + dstpopup.open() + dstlist.forceActiveFocus() + } } Rectangle { @@ -479,8 +478,6 @@ ApplicationWindow { } } - // Popup for hardware device selection with nested structure - // Updated hwpopup definition Popup { id: hwpopup x: 50 @@ -490,21 +487,6 @@ ApplicationWindow { padding: 0 closePolicy: Popup.CloseOnEscape property string hwselected: "" - property string categorySelected: "" - - // Make sure to create both lists when the popup opens - onOpened: { - // Initialize the SwipeView if needed - if (hwswipeview.count < 2) { - // Make sure we already have the second view for device list - var secondView = subHwlist.createObject(hwswipeview) - hwswipeview.addItem(secondView) - } - - // Make sure we're showing the first view (categories) - hwswipeview.currentIndex = 0 - hwTitleText.text = qsTr("Retro Gaming Handheld Device") - } // background of title Rectangle { @@ -516,8 +498,7 @@ ApplicationWindow { width: parent.width Text { - id: hwTitleText - text: qsTr("Retro Gaming Handheld Device") + text: qsTr("Raspberry Pi Device") horizontalAlignment: Text.AlignHCenter anchors.fill: parent anchors.topMargin: 10 @@ -546,7 +527,6 @@ ApplicationWindow { } } } - // line under title Rectangle { id: hwpopup_title_separator @@ -556,109 +536,30 @@ ApplicationWindow { height: 1 } - SwipeView { - anchors.top: hwpopup_title_separator.bottom - anchors.left: parent.left - anchors.right: parent.right - anchors.bottom: parent.bottom - id: hwswipeview - interactive: false - clip: true - // Add debug printing for SwipeView changes - onCurrentIndexChanged: { - console.log("SwipeView current index changed to: " + currentIndex) - } - - ListView { - id: hwlist - clip: true - model: ListModel { - id: categoryModel - // Main categories will be loaded from JSON - } - currentIndex: -1 - delegate: hwdelegate - boundsBehavior: Flickable.StopAtBounds - ScrollBar.vertical: ScrollBar { - anchors.right: parent.right - width: 10 - policy: hwlist.contentHeight > hwlist.height ? ScrollBar.AlwaysOn : ScrollBar.AsNeeded - } - Keys.onSpacePressed: { - if (currentIndex != -1) - selectHWcategory(model.get(currentIndex)) - } - Accessible.onPressAction: { - if (currentIndex != -1) - selectHWcategory(model.get(currentIndex)) - } - Keys.onEnterPressed: Keys.onSpacePressed(event) - Keys.onReturnPressed: Keys.onSpacePressed(event) - Keys.onRightPressed: { - // Navigate into subcategories - if (currentIndex != -1 && typeof model.get(currentIndex).subitems !== "undefined") - selectHWcategory(model.get(currentIndex), true) - } - } - - // Add the initial device list view directly to ensure it exists - ListView { - id: initialDeviceList - clip: true - model: ListModel { - ListElement { - name: "Back" - tags: "[]" - icon: "icons/ic_chevron_left_40px.svg" - description: "Go back to main menu" - } - } - currentIndex: -1 - delegate: hwdelegate - boundsBehavior: Flickable.StopAtBounds - ScrollBar.vertical: ScrollBar { - width: 10 - policy: parent.contentHeight > parent.height ? ScrollBar.AlwaysOn : ScrollBar.AsNeeded - } - Keys.onSpacePressed: { - if (currentIndex != -1) - selectHWitem(model.get(currentIndex)) - } - Accessible.onPressAction: { - if (currentIndex != -1) - selectHWitem(model.get(currentIndex)) - } - Keys.onEnterPressed: Keys.onSpacePressed(event) - Keys.onReturnPressed: Keys.onSpacePressed(event) - Keys.onLeftPressed: { - hwswipeview.decrementCurrentIndex() - hwpopup.categorySelected = "" - hwTitleText.text = qsTr("Retro Gaming Handheld Device") - } - } - } - } - - // Component for the device subcategory list - Component { - id: subHwlist - ListView { + id: hwlist clip: true model: ListModel { + id: deviceModel ListElement { - name: "Back" + name: qsTr("[ All ]") tags: "[]" - icon: "icons/ic_chevron_left_40px.svg" - description: "Go back to main menu" + icon: "" + description: "" + matching_type: "exclusive" } } currentIndex: -1 delegate: hwdelegate + anchors.top: hwpopup_title_separator.bottom + anchors.left: parent.left + anchors.right: parent.right + anchors.bottom: parent.bottom boundsBehavior: Flickable.StopAtBounds ScrollBar.vertical: ScrollBar { + anchors.right: parent.right width: 10 - policy: parent.contentHeight > parent.height ? ScrollBar.AlwaysOn : ScrollBar.AsNeeded + policy: hwlist.contentHeight > hwlist.height ? ScrollBar.AlwaysOn : ScrollBar.AsNeeded } Keys.onSpacePressed: { if (currentIndex != -1) @@ -670,11 +571,6 @@ ApplicationWindow { } Keys.onEnterPressed: Keys.onSpacePressed(event) Keys.onReturnPressed: Keys.onSpacePressed(event) - Keys.onLeftPressed: { - hwswipeview.decrementCurrentIndex() - hwpopup.categorySelected = "" - hwTitleText.text = qsTr("Retro Gaming Handheld Device") - } } } @@ -846,14 +742,13 @@ ApplicationWindow { } } - // Hardware delegate component for displaying devices and categories Component { id: hwdelegate Item { width: window.width-100 height: contentLayout.implicitHeight + 24 - Accessible.name: name+".\n"+(typeof description === "undefined" ? "" : description) + Accessible.name: name+".\n"+description MouseArea { id: hwMouseArea @@ -862,31 +757,27 @@ ApplicationWindow { hoverEnabled: true onEntered: { - bgrect3.mouseOver = true + bgrect.mouseOver = true } onExited: { - bgrect3.mouseOver = false + bgrect.mouseOver = false } onClicked: { - if (typeof subitems !== "undefined" && subitems) { - selectHWcategory(model) - } else { - selectHWitem(model) - } + selectHWitem(model) } } Rectangle { - id: bgrect3 + id: bgrect anchors.fill: parent color: accentColor visible: mouseOver && parent.ListView.view.currentIndex !== index property bool mouseOver: false } Rectangle { - id: borderrect2 + id: borderrect implicitHeight: 1 implicitWidth: parent.width color: accentColor @@ -925,21 +816,11 @@ ApplicationWindow { Text { Layout.fillWidth: true - text: typeof description === "undefined" ? "" : description font.family: roboto.name wrapMode: Text.WordWrap color: accentColor } } - - // Show right chevron for categories with subitems - Image { - source: "icons/ic_chevron_right_40px.svg" - visible: typeof subitems !== "undefined" && subitems - Layout.preferredHeight: 40 - Layout.preferredWidth: 40 - fillMode: Image.PreserveAspectFit - } } } } @@ -1671,118 +1552,54 @@ ApplicationWindow { } } - // Function to fetch OS list and populate the hardware categories function fetchOSlist() { - try { - var oslist_json = imageWriter.getFilteredOSlist(); - var o = JSON.parse(oslist_json); - var oslist_parsed = oslistFromJson(o); - - if (oslist_parsed === false) { - return; - } - - osmodel.clear(); - for (var i in oslist_parsed) { - osmodel.append(oslist_parsed[i]); - } + var oslist_json = imageWriter.getFilteredOSlist(); + var o = JSON.parse(oslist_json) + var oslist_parsed = oslistFromJson(o) + if (oslist_parsed === false) + return + osmodel.clear() + for (var i in oslist_parsed) { + osmodel.append(oslist_parsed[i]) + } - if ("imager" in o) { - var imager = o["imager"]; + if ("imager" in o) { + var imager = o["imager"] - if ("devices" in imager) { - // Clear the category model - categoryModel.clear(); - - // Add an "All" option at the top - categoryModel.append({ - name: qsTr("[ All ]"), - tags: "[]", - icon: "", - description: qsTr("Show firmware for all devices"), - matching_type: "inclusive" - }); - - // Process device categories more safely - var devices = imager["devices"]; - if (devices && Array.isArray(devices)) { - for (var j = 0; j < devices.length; j++) { - // Create a plain JavaScript object (not a complex QML type) - var device = { - name: devices[j].name || "", - description: devices[j].description || "", - icon: devices[j].icon || "", - matching_type: devices[j].matching_type || "" - }; - - // Handle subitems properly - if (devices[j].subitems && Array.isArray(devices[j].subitems)) { - // Create a new array for subitems - var subitems = []; - - for (var k = 0; k < devices[j].subitems.length; k++) { - var subitem = devices[j].subitems[k]; - - // Create a plain object with only the properties we need - var newSubitem = { - name: subitem.name || "", - description: subitem.description || "", - icon: subitem.icon || "", - matching_type: subitem.matching_type || "" - }; - - // Ensure tags is a properly formatted string - if (subitem.tags) { - if (typeof subitem.tags === "string") { - newSubitem.tags = subitem.tags; - } else if (Array.isArray(subitem.tags)) { - newSubitem.tags = JSON.stringify(subitem.tags); - } else { - newSubitem.tags = "[]"; - } - } else { - newSubitem.tags = "[]"; - } - - subitems.push(newSubitem); - } - - // Add the subitems array - device.subitems = subitems; - } - - // Add the device category to the model - categoryModel.append(device); - } - } - } - - // Rest of your function remains unchanged - if (imageWriter.getBoolSetting("check_version") && "latest_version" in imager && "url" in imager) { - if (!imageWriter.isEmbeddedMode() && imageWriter.isVersionNewer(imager["latest_version"])) { - updatepopup.url = imager["url"]; - updatepopup.openPopup(); - } - } - - if ("default_os" in imager) { - selectNamedOS(imager["default_os"], osmodel); - } - - if (imageWriter.isEmbeddedMode()) { - if ("embedded_default_os" in imager) { - selectNamedOS(imager["embedded_default_os"], osmodel); - } - if ("embedded_default_destination" in imager) { - imageWriter.startDriveListPolling(); - setDefaultDest.drive = imager["embedded_default_destination"]; - setDefaultDest.start(); + if ("devices" in imager) + { + deviceModel.clear() + var devices = imager["devices"] + for (var j in devices) + { + devices[j]["tags"] = JSON.stringify(devices[j]["tags"]) + deviceModel.append(devices[j]) + if ("default" in devices[j] && devices[j]["default"]) + { + hwlist.currentIndex = deviceModel.count-1 } } } - } catch (e) { - console.error("Error in fetchOSlist:", e); - onError("Error loading device list: " + e.message); + + if (imageWriter.getBoolSetting("check_version") && "latest_version" in imager && "url" in imager) { + if (!imageWriter.isEmbeddedMode() && imageWriter.isVersionNewer(imager["latest_version"])) { + updatepopup.url = imager["url"] + updatepopup.openPopup() + } + } + if ("default_os" in imager) { + selectNamedOS(imager["default_os"], osmodel) + } + if (imageWriter.isEmbeddedMode()) { + if ("embedded_default_os" in imager) { + selectNamedOS(imager["embedded_default_os"], osmodel) + } + if ("embedded_default_destination" in imager) { + imageWriter.startDriveListPolling() + setDefaultDest.drive = imager["embedded_default_destination"] + setDefaultDest.start() + } + } } } @@ -1826,265 +1643,63 @@ ApplicationWindow { return m } - // Function to handle new category/subcategory hardware list - function newHwSublist() { - try { - // Make sure we have enough items in SwipeView - if (hwswipeview.count <= hwswipeview.currentIndex + 1) { - var newlist = subHwlist.createObject(hwswipeview); - if (!newlist) { - console.error("Failed to create subHwlist component"); - return null; - } - hwswipeview.addItem(newlist); - } - - var nextView = hwswipeview.itemAt(hwswipeview.currentIndex + 1); - if (!nextView) { - console.error("Failed to get next view in SwipeView"); - return null; - } - - var m = nextView.model; - if (!m) { - console.error("Next view does not have a model"); - return null; - } - - // Clear existing items except for the first one (Back button) - if (m.count > 1) { - m.remove(1, m.count - 1); - } - - return m; - } catch (e) { - console.error("Error in newHwSublist:", e); - return null; - } - } - - // Function to select a hardware category (parent item with subitems) - function selectHWcategory(hwmodel, navigateOnly) { - try { - // Add defensive checks - if (!hwmodel) { - console.error("selectHWcategory called with null model"); - return; - } - - if (hwmodel.name === qsTr("Back")) { - hwswipeview.decrementCurrentIndex(); - hwpopup.categorySelected = ""; - hwTitleText.text = qsTr("Retro Gaming Handheld Device"); - return; - } - - // Update the title to show current category - hwTitleText.text = hwmodel.name; - hwpopup.categorySelected = hwmodel.name; - - // Make sure we have a SwipeView with at least two items - if (hwswipeview.count < 2) { - // Create a new sublist view if needed - var newlist = subHwlist.createObject(hwswipeview); - if (!newlist) { - console.error("Failed to create new subHwlist"); - return; - } - hwswipeview.addItem(newlist); - } - - // Get the model of the next view - var nextView = hwswipeview.itemAt(hwswipeview.currentIndex + 1); - if (!nextView) { - console.error("Failed to get next view in SwipeView"); - return; - } - - var m = nextView.model; - if (!m) { - console.error("Next view does not have a model"); - return; - } - - // Clear all items except the first one (Back button) - if (m.count > 1) { - m.remove(1, m.count - 1); - } - - // Parse subitems if they exist - use a safer approach - if (typeof hwmodel.subitems !== "undefined" && hwmodel.subitems) { - var subitems = hwmodel.subitems; - - console.log("Processing subitems for: " + hwmodel.name); - console.log("Subitems type: " + typeof subitems); - - // Check if we need to convert an object to an array - if (!Array.isArray(subitems) && typeof subitems === "object") { - console.log("Converting object to array"); - var subitemsArray = []; - for (var key in subitems) { - if (subitems.hasOwnProperty(key)) { - var subitem = subitems[key]; - // Make sure each item has a name property - if (typeof subitem === "object") { - if (!subitem.name && key) { - subitem.name = key; - } - subitemsArray.push(subitem); - } - } - } - subitems = subitemsArray; - } - - // Make sure subitems is an array before iterating - if (Array.isArray(subitems)) { - console.log("Subitems count: " + subitems.length); - - for (var i = 0; i < subitems.length; i++) { - console.log("Processing subitem: " + i + " - " + (subitems[i].name || "unnamed")); - - // Create a simple object with just the properties we need - var item = { - name: subitems[i].name || "", - description: subitems[i].description || "", - icon: subitems[i].icon || "", - matching_type: subitems[i].matching_type || "" - }; - - // Handle tags appropriately - if (typeof subitems[i].tags === "string") { - item.tags = subitems[i].tags; - } else if (Array.isArray(subitems[i].tags)) { - item.tags = JSON.stringify(subitems[i].tags); - } else { - item.tags = "[]"; - } - - m.append(item); - } - - // Now explicitly increment the SwipeView index to show the device list - console.log("Setting next view current index to 0"); - nextView.currentIndex = 0; - - console.log("Incrementing SwipeView from index: " + hwswipeview.currentIndex); - hwswipeview.incrementCurrentIndex(); - console.log("New SwipeView index: " + hwswipeview.currentIndex); - } else { - console.error("Subitems is not an array or object: " + typeof subitems); - onError("Error: Invalid subitems format"); - } - } else { - console.log("No subitems found for: " + hwmodel.name); - - // If it's not a navigation-only action and has no subitems, select the item - if (!navigateOnly) { - selectHWitem(hwmodel); - } - } - } catch (e) { - console.error("Error in selectHWcategory:", e); - onError("Error navigating hardware categories: " + e.message); - } - } - function selectHWitem(hwmodel) { - try { - // Add defensive checks - if (!hwmodel) { - console.error("selectHWitem called with null model"); - return; + /* Default is exclusive matching */ + var inclusive = false + + if (hwmodel.matching_type) { + switch (hwmodel.matching_type) { + case "exclusive": + break; + case "inclusive": + inclusive = true + break; } - - if (hwmodel.name === qsTr("Back")) { - hwswipeview.decrementCurrentIndex(); - hwTitleText.text = qsTr("Retro Gaming Handheld Device"); - hwpopup.categorySelected = ""; - return; - } - - // Default is exclusive matching - var inclusive = false; - - if (hwmodel.matching_type) { - switch (hwmodel.matching_type) { - case "exclusive": - break; - case "inclusive": - inclusive = true; - break; - } - } - - // Handle tags with extra care - var tags = []; - - try { - if (typeof hwmodel.tags === "string") { - if (hwmodel.tags === "[]" || hwmodel.tags === "") { - // Empty tags array - tags = []; - } else { - // Parse JSON string - tags = JSON.parse(hwmodel.tags); - } - } else if (Array.isArray(hwmodel.tags)) { - // Direct array - tags = hwmodel.tags; - } else if (hwmodel.tags) { - // Some other value, convert to string and try to parse - tags = JSON.parse(String(hwmodel.tags)); - } - } catch (e) { - console.error("Error parsing tags:", e); - tags = []; - } - - // Call the filtering function with the parsed tags - console.log("Setting HW filter with tags:", JSON.stringify(tags)); - imageWriter.setHWFilterList(tags, inclusive); - - // Reload list - var oslist_json = imageWriter.getFilteredOSlist(); - var o = JSON.parse(oslist_json); - var oslist_parsed = oslistFromJson(o); - - if (oslist_parsed === false) { - return; - } - - if (oslist_parsed.length != 0) { - var candidate = oslist_parsed[0]; - - if ("description" in candidate && - !("subitems" in candidate) && - !candidate["description"].includes("(Recommended)") - ) - { - candidate["description"] += " (Recommended)"; - } - } - - osmodel.clear(); - for (var i in oslist_parsed) { - osmodel.append(oslist_parsed[i]); - } - - // When the HW device is changed, reset the OS selection - oslist.currentIndex = -1; - osswipeview.currentIndex = 0; - imageWriter.setSrc(""); - osbutton.text = qsTr("CHOOSE CFW"); - writebutton.enabled = false; - - hwbutton.text = hwmodel.name; - hwpopup.close(); - } catch (e) { - console.error("Error in selectHWitem:", e); - onError("Error selecting hardware item: " + e.message); } + + imageWriter.setHWFilterList(hwmodel.tags, inclusive) + + /* Reload list */ + var oslist_json = imageWriter.getFilteredOSlist(); + var o = JSON.parse(oslist_json) + var oslist_parsed = oslistFromJson(o) + if (oslist_parsed === false) + return + + /* As we're filtering the OS list, we need to ensure we present a 'Recommended' OS. + * To do this, we exploit a convention of how we build the OS list. By convention, + * the preferred OS for a device is listed at the top level of the list, and is at the + * lowest index. So.. + */ + if (oslist_parsed.length != 0) { + var candidate = oslist_parsed[0] + + if ("description" in candidate && + !("subitems" in candidate) && + !candidate["description"].includes("(Recommended)") + ) + { + candidate["description"] += " (Recommended)" + } + } + + osmodel.clear() + for (var i in oslist_parsed) { + osmodel.append(oslist_parsed[i]) + } + + // When the HW device is changed, reset the OS selection otherwise + // you get a weird effect with the selection moving around in the list + // when the user next opens the OS list, and the user could still have + // an OS selected which isn't compatible with this HW device + oslist.currentIndex = -1 + osswipeview.currentIndex = 0 + imageWriter.setSrc("") + osbutton.text = qsTr("CHOOSE CFW") + writebutton.enabled = false + + hwbutton.text = hwmodel.name + hwpopup.close() } /// Is the item a sub-list or sub-sub-list in the OS selection model? @@ -2109,29 +1724,6 @@ ApplicationWindow { if (typeof(d.subitems_json) == "string" && d.subitems_json !== "") { var m = newSublist() var subitems = JSON.parse(d.subitems_json) - - // Handle the case when subitems is an object instead of an array - if (!Array.isArray(subitems) && typeof subitems === "object") { - console.log("Converting object to array from subitems_json"); - - // Create an array from the object properties - var subitemsArray = []; - for (var key in subitems) { - if (subitems.hasOwnProperty(key)) { - var subitem = subitems[key]; - // Make sure each item has a name property - if (typeof subitem === "object") { - if (!subitem.name && key) { - subitem.name = key; - } - subitemsArray.push(subitem); - } - } - } - - console.log("Converted to array with " + subitemsArray.length + " items"); - subitems = subitemsArray; - } for (var i in subitems) { @@ -2157,7 +1749,7 @@ ApplicationWindow { { console.log("Failure: Backend should have pre-flattened the JSON!"); - osswipeview.itemAt(osswipeview.currentIndex+1).currentIndex = (selectFirstSubitem ===true) ? 0 : -1 + osswipeview.itemAt(osswipeview.currentIndex+1).currentIndex = (selectFirstSubitem === true) ? 0 : -1 osswipeview.incrementCurrentIndex() } } else if (d.url === "") { @@ -2204,4 +1796,4 @@ ApplicationWindow { writebutton.enabled = true } } -} \ No newline at end of file +} diff --git a/src/os_list.json b/src/os_list.json index fedc395..a2db64d 100644 --- a/src/os_list.json +++ b/src/os_list.json @@ -3,7 +3,7 @@ { "name": "muOS 2410.1 Banana for RG35XX Plus", "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XX Plus.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/logo.png?raw=true", "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-PLUS-2410.1-BANANA-d1bae326.img.gz", "release_date": "2024-10-12", "image_download_size": 2151537628, @@ -16,7 +16,7 @@ { "name": "muOS 2410.1 Banana for RG28XX", "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG28XX.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/logo.png?raw=true", "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG28XX-2410.1-BANANA-d1bae326.img.gz", "release_date": "2024-10-12", "image_download_size": 2158432397, @@ -29,7 +29,7 @@ { "name": "muOS 2410.1 Banana for RG35XXH", "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XXH.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/logo.png?raw=true", "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-H-2410.1-BANANA-a10951c4.img.gz", "release_date": "2024-10-12", "image_download_size": 2118435484, @@ -42,7 +42,7 @@ { "name": "muOS 2410.1 Banana for RG35XXSP", "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XXSP.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/logo.png?raw=true", "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-SP-2410.1-BANANA-d1bae326.img.gz", "release_date": "2024-10-12", "image_download_size": 2176694960, @@ -55,7 +55,7 @@ { "name": "muOS 2410.1 Banana for RG35XX24", "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG35XX24.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/logo.png?raw=true", "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG35XX-2024-2410.1-BANANA-d1bae326.img.gz", "release_date": "2024-10-12", "image_download_size": 2151137645, @@ -68,7 +68,7 @@ { "name": "muOS 2410.1 Banana for RG40XXH", "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG40XXH.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/logo.png?raw=true", "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG40XX-H-2410.1-BANANA-d1bae326.img.gz", "release_date": "2024-10-12", "image_download_size": 2132388103, @@ -81,7 +81,7 @@ { "name": "muOS 2410.1 Banana for RG40XXV", "description": "muOS 2410.1 Banana firmware optimized for Anbernic RG40XXV.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/logo.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/logo.png?raw=true", "url": "https://dl.muos.dev/RELEASE/2410.1/muOS-RG40XX-V-2410.1-BANANA-d1bae326.img.gz", "release_date": "2024-10-12", "image_download_size": 2132476961, @@ -92,14 +92,14 @@ ] }, { - "name": "ROCKNIX 20241120 for Rockchip RK3326 devices, A image.", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3326 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3326.aarch64-20241120-a.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1348717111, + "name": "ROCKNIX 20240815 for Rockchip RK3326 devices", + "description": "ROCKNIX 20240815 firmware optimized for Rockchip RK3326 devices.", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", + "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-RK3326.aarch64-20240815.img.gz", + "release_date": "2024-08-15", + "image_download_size": 1171847190, "extract_size": 2197815296, - "extract_sha256": "8cc28cca1d4d88464cf156691a540111385c5b94f30aa067456cc80fcd12b747", + "extract_sha256": "0bdf629ef90c33ce236dd3cf4fd991d24ac61d4b2f8546d09e602308459b2425", "devices": [ "rg351p", "rg351m", @@ -111,45 +111,32 @@ "ogs", "xu10", "v10", - "rgb10" + "rgb10", + "xu_mini_m" ] }, { - "name": "ROCKNIX 20241120 for Rockchip RK3326 devices, B image.", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3326 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3326.aarch64-20241120-b.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1348619756, - "extract_size": 2197815296, - "extract_sha256": "e43ed5ea9c8c93408a180e57409e9a07d7594ecb1ffe46f21024655f46ea9050", - "devices": [ - "xu_mini_m", - "rgb10x" - ] - }, - { - "name": "ROCKNIX 20241120 for Rockchip RK3399 devices", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3399 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3399.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1288581465, + "name": "ROCKNIX 20240815 for Rockchip RK3399 devices", + "description": "ROCKNIX 20240815 firmware optimized for Rockchip RK3399 devices.", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", + "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-RK3399.aarch64-20240815.img.gz", + "release_date": "2024-08-15", + "image_download_size": 1195501171, "extract_size": 2198863872, - "extract_sha256": "53091696a540d693d99d515524816825a057823c0fe1f91a0b5e4837baeb24b9", + "extract_sha256": "8f77e5d80305d93f8e9e21ff7a9191d0f858caae72df18e9a028a9ea17f13416", "devices": [ "rg552" ] }, { - "name": "ROCKNIX 20241120 for Rockchip RK3566 devices", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3566 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3566.aarch64-20241120-Generic.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1391749865, + "name": "ROCKNIX 20240815 for Rockchip RK3566 devices", + "description": "ROCKNIX 20240815 firmware optimized for Rockchip RK3566 devices.", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", + "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-RK3566.aarch64-20240815.img.gz", + "release_date": "2024-08-15", + "image_download_size": 1282393570, "extract_size": 2198863872, - "extract_sha256": "4917f090e9364f47de5cf8663c0741eb79b8236c4b455a5ae4d3c8889744de27", + "extract_sha256": "c0ae2048a325f54261fba3d052fbb3c26bf11f522241f89e8dc7057ef31e2ef5", "devices": [ "rg353p", "rg353m", @@ -166,27 +153,27 @@ ] }, { - "name": "ROCKNIX 20241120 for Powkiddy X55 devices", - "description": "ROCKNIX 20241120 firmware optimized for Powkiddy X55 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3566.aarch64-20241120-Powkiddy_x55.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1391396234, + "name": "ROCKNIX 20240815 for Powkiddy X55 devices", + "description": "ROCKNIX 20240815 firmware optimized for Powkiddy X55 devices.", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", + "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-RK3566-X55.aarch64-20240815.img.gz", + "release_date": "2024-08-15", + "image_download_size": 1282079397, "extract_size": 2198863872, - "extract_sha256": "35391e0a49de413a2672893a07ed6ca116f90746baef620eebf8d3ab7b2ad5f7", + "extract_sha256": "1883848d6b8f6011c15f1aa54f44e5898eb7c89d4f6abcb229b13dd67c9928e8", "devices": [ "x55" ] }, { - "name": "ROCKNIX 20241120 for Hardkernel ODROID Go Ultra and Powkiddy RGB10 Max 3 Pro devices", - "description": "ROCKNIX 20241120 firmware optimized for ODROID Go Ultra and RGB10 Max 3 Pro devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-S922X.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1416924259, + "name": "ROCKNIX 20240815 for Hardkernel ODROID Go Ultra and Powkiddy RGB10 Max 3 Pro devices", + "description": "ROCKNIX 20240815 firmware optimized for ODROID Go Ultra and RGB10 Max 3 Pro devices.", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", + "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-S922X.aarch64-20240815-Odroid_GOU.img.gz", + "release_date": "2024-08-15", + "image_download_size": 1257600535, "extract_size": 2185232384, - "extract_sha256": "86cd0a48d541e3e68582107748e2f77656c153d11f6efd14563fb65a0f9c5076", + "extract_sha256": "ddf4cb558846ab0c826b445bc55da908530fb2f7fbfc0ef070215fe7e0223c65", "devices": [ "ogu", "rgb10_max_3_pro" @@ -195,7 +182,7 @@ { "name": "ROCKNIX 20240815 for Hardkernel ODROID N2/N2+ devices", "description": "ROCKNIX 20240815 firmware optimized for Hardkernel ODROID N2/N2+ devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-S922X.aarch64-20240815-Odroid_N2.img.gz", "release_date": "2024-08-15", "image_download_size": 1249723275, @@ -209,7 +196,7 @@ { "name": "ROCKNIX 20240815 for Hardkernel ODROID N2L devices", "description": "ROCKNIX 20240815 firmware optimized for Hardkernel ODROID N2L devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-S922X.aarch64-20240815-Odroid_N2L.img.gz", "release_date": "2024-08-15", "image_download_size": 1249707786, @@ -220,14 +207,14 @@ ] }, { - "name": "ROCKNIX 20241120 for Rockchip RK3588 devices", - "description": "ROCKNIX 20241120 firmware optimized for Rockchip RK3588 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-RK3588.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1451047021, + "name": "ROCKNIX 20240815 for Rockchip RK3588 devices", + "description": "ROCKNIX 20240815 firmware optimized for Rockchip RK3588 devices.", + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/rocknix.png?raw=true", + "url": "https://github.com/ROCKNIX/distribution/releases/download/20240815/ROCKNIX-RK3588.aarch64-20240815.img.gz", + "release_date": "2024-08-15", + "image_download_size": 1313142011, "extract_size": 2198863872, - "extract_sha256": "ec81027b7d9b757f09ccd78ce38c6993009e66ddd4b7e1a1206dc104ad739754", + "extract_sha256": "380180b7d8279b5fe0843e11935f27e11053749e084e578faa7ee7d4d4cce0b5", "devices": [ "ace", "orange_pi_5", @@ -238,313 +225,238 @@ "radxa_rock_cm5", "nova" ] - }, - { - "name": "ROCKNIX 20241120 for Retroid Pocket Mini and Retroid Pocket 5 devices", - "description": "ROCKNIX 20241120 firmware optimized for Snapdragon 865 devices.", - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/rocknix.png?raw=true", - "url": "https://github.com/ROCKNIX/distribution/releases/download/20241120/ROCKNIX-SD865.aarch64-20241120.img.gz", - "release_date": "2024-11-20", - "image_download_size": 1404994449, - "extract_size": 2198863872, - "extract_sha256": "82f9336c27c9b733322e7e9f685bc1e98aa4eedb0c17f9ae297edb983ada6f39", - "devices": [ - "rpmini", - "rp5" - ] } ], "imager": { - "devices": [ - { - "name": "Anbernic", - "subitems": [ - { - "name": "Anbernic RG40XXH", - "tags": ["rg40xxh"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG40XX%20H.png?raw=true" - }, - { - "name": "Anbernic RG40XXV", - "tags": ["rg40xxv"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG40XX%20V.png?raw=true" - }, - { - "name": "Anbernic RG35XXH", - "tags": ["rg35xxh"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20H.png?raw=true" - }, - { - "name": "Anbernic RG35XX Plus", - "tags": ["rg35xx_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20-%20PLUS.png?raw=true" - }, - { - "name": "Anbernic RG35XX SP", - "tags": ["rg35xx_sp"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20SP.png?raw=true" - }, - { - "name": "Anbernic RG35XX 2024", - "tags": ["rg35xx_2024"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX%20-%202024.png?raw=true" - }, - { - "name": "Anbernic RG28XX", - "tags": ["rg28xx"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG28XX.png?raw=true" - }, - { - "name": "Anbernic RG351P", - "tags": ["rg351p"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG351M", - "tags": ["rg351m"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG351V", - "tags": ["rg351v"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353P", - "tags": ["rg353p"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353M", - "tags": ["rg353m"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353V", - "tags": ["rg353v"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353VS", - "tags": ["rg353vs"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG353PS", - "tags": ["rg353ps"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG503", - "tags": ["rg503"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG Arc-D", - "tags": ["rg_arc_d"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG Arc-S", - "tags": ["rg_arc_s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "devices": [{ + "name": "Anbernic RG40XXH", + "tags": ["rg40xxh"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG40XX%20H.png?raw=true" }, { - "name": "Game Console", - "subitems": [ - { - "name": "Game Console R33S", - "tags": ["r33s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Game Console R35S", - "tags": ["r35s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Game Console R36S", - "tags": ["r36s"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG40XXV", + "tags": ["rg40xxv"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG40XX%20V.png?raw=true" }, { - "name": "ODROID", - "subitems": [ - { - "name": "ODROID Go Advance", - "tags": ["oga"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID Go Super", - "tags": ["ogs"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID N2", - "tags": ["on2"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID N2 Plus", - "tags": ["on2_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID N2L", - "tags": ["on2l"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG35XXH", + "tags": ["rg35xxh"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX%20H.png?raw=true" }, { - "name": "MagicX", - "subitems": [ - { - "name": "MagicX XU10", - "tags": ["xu10"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "MagicX XU Mini M", - "tags": ["xu_mini_m"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG35XX Plus", + "tags": ["rg35xx_plus"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX%20-%20PLUS.png?raw=true" }, { - "name": "Powkiddy", - "subitems": [ - { - "name": "Powkiddy V10", - "tags": ["v10"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB10", - "tags": ["rgb10"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RK2023", - "tags": ["rk2023"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB10 Max 3", - "tags": ["rgb10_max_3"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB30", - "tags": ["rgb30"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB20SX", - "tags": ["rgb20sx"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Anbernic RG552", - "tags": ["rg552"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "ODROID Go Ultra", - "tags": ["ogu"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy RGB10 Max 3 Pro", - "tags": ["rgb10_max_3_pro"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Powkiddy X55", - "tags": ["x55"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG35XX SP", + "tags": ["rg35xx_sp"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX%20SP.png?raw=true" }, { - "name": "Gameforce", - "subitems": [ - { - "name": "Gameforce Ace (default)", - "tags": ["ace"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG35XX 2024", + "tags": ["rg35xx_2024"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX%20-%202024.png?raw=true" }, { - "name": "Orange Pi", - "subitems": [ - { - "name": "Orange Pi 5", - "tags": ["orange_pi_5"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Orange Pi 5 Plus", - "tags": ["orange_pi_5_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG28XX", + "tags": ["rg28xx"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG28XX.png?raw=true" }, { - "name": "Radxa", - "subitems": [ - { - "name": "Radxa Rock 5a", - "tags": ["radxa_rock_5a"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Radxa Rock 5b", - "tags": ["radxa_rock_5b"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Radxa Rock 5b Plus", - "tags": ["radxa_rock_5b_plus"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Radxa Rock CM5", - "tags": ["radxa_rock_cm5"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG351P", + "tags": ["rg351p"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" }, { - "name": "Indiedroid", - "subitems": [ - { - "name": "Indiedroid Nova (Must set dtb in extlinuix.conf)", - "tags": ["nova"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG351M", + "tags": ["rg351m"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" }, { - "name": "Retroid", - "subitems": [ - { - "name": "Retroid Pocket Mini", - "tags": ["rpmini"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - }, - { - "name": "Retroid Pocket 5", - "tags": ["rp5"], - "icon": "https://github.com/cmclark00/retro-imager/blob/fix/src/icons/RG35XX.png?raw=true" - } - ] + "name": "Anbernic RG351V", + "tags": ["rg351v"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Game Console R33S", + "tags": ["r33s"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Game Console R35S", + "tags": ["r35s"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Game Console R36S", + "tags": ["r36s"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "ODROID Go Advance", + "tags": ["oga"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "ODROID Go Super", + "tags": ["ogs"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "MagicX XU10", + "tags": ["xu10"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy V10", + "tags": ["v10"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy RGB10", + "tags": ["rgb10"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG353P", + "tags": ["rg353p"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG353M", + "tags": ["rg353m"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG353V", + "tags": ["rg353v"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG353VS", + "tags": ["rg353vs"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG353PS", + "tags": ["rg353ps"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG503", + "tags": ["rg503"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG Arc-D", + "tags": ["rg_arc_d"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG Arc-S", + "tags": ["rg_arc_s"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy RK2023", + "tags": ["rk2023"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy RGB10 Max 3", + "tags": ["rgb10_max_3"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy RGB30", + "tags": ["rgb30"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy RGB20SX", + "tags": ["rgb20sx"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Anbernic RG552", + "tags": ["rg552"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "ODROID Go Ultra", + "tags": ["ogu"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy RGB10 Max 3 Pro", + "tags": ["rgb10_max_3_pro"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "ODROID N2", + "tags": ["on2"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "ODROID N2 Plus", + "tags": ["on2_plus"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "ODROID N2L", + "tags": ["on2l"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Gameforce Ace (default)", + "tags": ["ace"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Orange Pi 5", + "tags": ["orange_pi_5"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Orange Pi 5 Plus", + "tags": ["orange_pi_5_plus"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Radxa Rock 5a", + "tags": ["radxa_rock_5a"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Radxa Rock 5b", + "tags": ["radxa_rock_5b"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Radxa Rock 5b Plus", + "tags": ["radxa_rock_5b_plus"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Radxa Rock CM5", + "tags": ["radxa_rock_cm5"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Indiedroid Nova (Must set dtb in extlinuix.conf)", + "tags": ["nova"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "Powkiddy X55", + "tags": ["x55"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" + }, + { + "name": "MagicX XU Mini M", + "tags": ["xu_mini_m"], + "icon": "https://github.com/cmclark00/retro-imager/blob/dev/src/icons/RG35XX.png?raw=true" } ] } diff --git a/src/qml.qrc b/src/qml.qrc index d86215f..8dcca05 100644 --- a/src/qml.qrc +++ b/src/qml.qrc @@ -32,7 +32,7 @@ icons/cat_language_specific_operating_systems.png icons/cat_3d_printing.png icons/logo_stacked_imager.png - icons/banner.png + icons/logo_sxs_imager.png qmlcomponents/ImButton.qml qmlcomponents/ImButtonRed.qml qmlcomponents/ImCheckBox.qml diff --git a/test_os_list.json b/test_os_list.json deleted file mode 100644 index de84dde..0000000 --- a/test_os_list.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "os_list": [ - { - "name": "Test OS 1", - "description": "A test OS for verifying functionality", - "icon": "icons/erase.png", - "url": "internal://format", - "devices": ["rg40xxh"] - }, - { - "name": "Test OS 2", - "description": "Another test OS", - "icon": "icons/erase.png", - "url": "internal://format", - "devices": ["rg35xx_plus"] - } - ], - "imager": { - "devices": [ - { - "name": "Test Device Category", - "subitems": [ - { - "name": "Test Device 1", - "tags": ["rg40xxh"], - "icon": "icons/erase.png" - }, - { - "name": "Test Device 2", - "tags": ["rg35xx_plus"], - "icon": "icons/erase.png" - } - ] - } - ] - } -} \ No newline at end of file