Commit graph

320 commits

Author SHA1 Message Date
Floris Bos
a403df4385 Advanced settings FAT modification: fix expanding directory
When no more directory entries are available in the existing
cluster(s) of a directory on FAT32, we allocate an
extra cluster.
Make sure to zero out that new cluster, as disk checking utilities
may not stop reading when reaching an end of directory marker but
read the rest of cluster as well.
So there must not be any garbage data from a previously deleted file
in the sector there.

Also add checks to prevent getting in an endless loop on
encoutering circular "next cluster" references.
2022-11-20 18:44:22 +01:00
Floris Bos
2694f3976a Remove excess new line from "Header:" download debug output 2022-11-20 17:47:54 +01:00
Floris Bos
d600f36bc4 Advanced settings FAT modification: add GPT partition support 2022-11-20 14:46:58 +01:00
Floris Bos
05f1c4dbb5 Add integration tests
Tests if repository json files conform to the json schema.
If all resources (images/icons/website URLs) they mention actually
exists.

And can also test writing images and the FAT modification code.
2022-11-19 23:49:43 +01:00
Floris Bos
fce80b2a67 FAT code: also look at short file names and not just long names 2022-11-19 23:46:11 +01:00
maxnet
cc88408dae
Merge pull request #492 from rejas/de
Update de lang
2022-11-15 01:23:46 +01:00
Floris Bos
5fa3fbe8dc Switch to using FAT classes for advanced settings
- No longer relies on operating system for mounting FAT partition
  when applying 'advanced settings'
- change '__attribute__ ((packed))' to '#pragma pack()' as the
  mingw version we are using for Windows has a bug with the former
2022-11-15 01:15:08 +01:00
Floris Bos
ebc6edc0c3 Advanced settings: use current username instead of Pi as default
Instead of using 'pi' as default, try to get the username of
the current user from the OS.

May not always work. (e.g. some Windows users may not have
setup a username themselves, but may be using a default user
created by the PC vendor).

Closes #497
2022-11-15 01:10:46 +01:00
Floris Bos
e74efdca04 French: change telecharge
Closes #449
2022-11-14 21:45:07 +01:00
Floris Bos
c3237625bf Fix behavior on pressing "X" in advanced options dialog
In the "advanced settings" dialog, if "X" instead of
"apply settings" is clicked, it is seen as "cancel" and
no settings are applied.

If there do are saved settings, make sure to ask the
user on pressing "write" if they do want the saved settings
applied, instead of applying no settings.
2022-11-14 21:41:51 +01:00
Floris Bos
142ddfc037 Add classes for mounting FAT16/32 without help from OS
Minimal implementation for reading/writing files in the root
directory of a FAT16/FAT32 file system.

Can read/write from raw disk devices, and no longer relies on
operating system support for mounting the file system.

Currently assumes Imager will always be run on 'little endian'
architectures such as Intel and ARM (at least under Linux).
If there is a use-case for big-endian (anybody still using Sparc?)
this may be revisited later.
2022-11-14 21:41:20 +01:00
Floris Bos
30225187bd OSX: fix unmounting drives that have APFS volumes
- If a drive is formatted APFS it will have a seperate disk
devices for physical drive (e.g. /dev/disk2) and volumes
(e.g. /dev/disk3).
Need to unmount all, or opening the device for
writing will subsequently fail.
(User will see an "Error running authopen" error in Imager
in that case).

- Also do not show APFS volumes seperately in the disk
selection dialog. List mount points under physical drive
instead.

Closes #501
2022-11-07 03:36:32 +01:00
Floris Bos
9d4665dbca Advanced settings: fix escaping single quotes
Ref #486
2022-10-15 15:21:39 +02:00
Floris Bos
957c78f8a3 Fix copyright file
dependencies -> src/dependencies
mention sha256crypt being public domain
2022-10-11 16:15:49 +02:00
maxnet
c8d576abdc
Merge pull request #491 from waveform80/manpage
Add a man-page for rpi-imager
2022-10-11 15:24:35 +02:00
Dave Jones
abca857b67 Fix speling 2022-10-04 11:10:29 +01:00
veeck
18addaccc2 Update de lang 2022-10-03 23:06:42 +02:00
Dave Jones
153bac698a Add a man-page for rpi-imager 2022-09-28 00:39:48 +01:00
Floris Bos
ce0b02b823 Prevent user from entering invalid characters in hostname field
Implemented as "validator" which will cause that if an user
presses a key that is not allowed, it will not register.
Saves having to add an error message that would need to be
translated to different languages.

Closes #474
2022-08-18 20:07:26 +02:00
Floris Bos
9c95398210 Ensure buffering is used when writing uncompressed images
Just feed them through the libarchive workflow as well.
Prevents issues on Windows/osx when writing uncompressed images
that come from the Internet.

Ref #473
2022-08-18 15:37:37 +02:00
Floris Bos
2c00c64aba Revert "Add new regulatory-domain parameter to cloud-init files"
Existing Ubuntu version does not like new regulatory-domain
parameter being present.
This reverts commit 31252bf1c4.
2022-08-18 15:21:09 +02:00
Floris Bos
4961990ce0 Allow outsourcing custom settings to script 2022-07-31 16:02:10 +02:00
Floris Bos
31252bf1c4 Add new regulatory-domain parameter to cloud-init files
Seems to have been added to netplan: https://github.com/canonical/netplan/pull/281
2022-07-31 15:06:03 +02:00
Floris Bos
ef4abc661f Linux distros that use NetworkManager: prefill WLAN PSK
Only supported when NetworkManager is used on the Linux distro
as wpa_supplicant itself does not support reading PSKs through
DBus, only setting them.

Closes #457
2022-07-31 13:24:52 +02:00
Floris Bos
b1606dd1fb Linux: remove leftovers of OpenSSL dependency
OpenSSL was replaced by GnuTLS for SHA256 calculation in
cb415a6a02
Remove left-over header includes and adjust dependencies in README
2022-07-31 13:14:51 +02:00
Floris Bos
3b69d515d8 Add digital signage icon 2022-07-26 23:23:33 +02:00
Floris Bos
a46fd2d1fa Fix persistent public key setting
Closes #464
2022-07-26 23:20:42 +02:00
Floris Bos
152831e72f Fix clazy-range-loop-detachs and other clazy complaints 2022-07-26 23:20:14 +02:00
Floris Bos
8837d7e897 Maintain per-thread QNetworkDiskCache
Ref #442
2022-07-26 22:45:06 +02:00
maxnet
e0dc78d0a5
Merge pull request #436 from jose1711/sktran_update
Update Slovak translation
2022-07-26 22:27:18 +02:00
maxnet
280469c50f
Merge pull request #450 from marcelpetrick/mpe/clazy
code-quality: fixed all range-loop warnings which were reported from clazy
2022-07-26 22:26:07 +02:00
maxnet
ff9004ff0d
Merge pull request #455 from shlyakpavel/patch-1
Allow selection of files without extension
2022-07-26 22:25:38 +02:00
maxnet
e0921f5c6e
Merge pull request #458 from RuffaloLavoisier/copyedit
Rpi-imager_ko : some copy-edit
2022-07-26 22:25:14 +02:00
RuffaloLavoisier
4826096860 Rpi-imager_ko : some copy-edit
-Fix sentence
-Translate remaining untranslated
-Update wireless LAN words
2022-07-08 03:38:52 +09:00
Pavel Shliak
4f8980d48e
Allow selection of files without extension
I have automatically generated images that do not match *.* as filename contains no dots. I have to rename them every time :(
2022-07-02 16:48:30 +03:00
Floris Bos
cb415a6a02 Linux: allow using GnuTLS instead of OpenSSL for computing SHA256 hashes
Prevents issues with often changing OpenSSL ABI.

Ref #429
2022-06-14 16:13:55 +02:00
Marcel Petrick
829c200fd1 code-quality: fixed all range-loop warnings which were reported from clazy.
See: `rpi-imager/src/downloadthread.cpp:1015:14: warning: Missing reference in range-for with non trivial type (QByteArray) [clazy-range-loop]`
2022-06-08 17:54:06 +02:00
Jose Riha
7b27e63dac Update Slovak translation 2022-05-09 22:07:43 +02:00
Floris Bos
8d943ce2bd Remove overscan/piwiz supression options
- Remove overscan and piwiz supression option
- Change wifi -> wireless LAN
- Bump version
2022-03-24 20:06:14 +01:00
Floris Bos
93811dfdbd Only bundle Droid fallback font on Embedded edition
Normal Linux/Windows/Mac should have support for Asian fonts
themselves.
2022-03-24 20:04:24 +01:00
maxnet
6861a2aa16
Merge pull request #379 from RuffaloLavoisier/rfl_ko_patch
Korean translation: update some copyedit
2022-03-24 17:49:41 +01:00
maxnet
d2a92383b6
Merge pull request #362 from lnussel/qml
Add compile time options for telemetry and updates
2022-03-24 17:49:16 +01:00
RuffaloVM
ea055ad1d3 Rpi-imager_ko.ts : add translation 2022-02-26 02:36:50 +09:00
RuffaloVM
29a1efb985 Rpi-imager_ko.ts : exact meaning
<Enable telemetry> is version 1.5 of the Raspberry Pi Imager introduced download telemetry to get a view of which operating systems are the most popular.

Raspberry Pi introduced download telemetry as part of a plan to ensure the most popular operating systems are easier to find in the Raspberry Pi Imager's menu system. It does not collect a device's IP address.
2022-02-26 02:09:18 +09:00
RuffaloVM
a7cadbfaf7 Rpi-imager_ko.ts : some copyedit 2022-02-26 01:46:48 +09:00
Floris Bos
6edd14f044 Embedded: fix password mask character 2022-02-23 16:47:04 +01:00
Floris Bos
78f003fca7 Revert CM4 USB controller back to dwc2
SDXC controller was not playing nice with rpiboot.
2022-02-23 16:03:29 +01:00
maxnet
367b111a77
Merge pull request #376 from okaits/qml
Add Japanese translation No2
2022-02-23 15:49:23 +01:00
okaits
7ff4532840 Add Japanese translation 2022-02-23 11:14:21 +09:00
Floris Bos
6e22670c52 Merge branch 'qml' of github.com:raspberrypi/rpi-imager into qml 2022-02-21 17:50:36 +01:00