Display useful message when Linux post-install script has insufficient permissions #893
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The Arduino Boards Manager automatically executes the
post_install.sh
script during installation of the platform on a Linux machine:https://arduino.github.io/arduino-cli/dev/platform-specification/#post-install-script
This platform's post-install script is intended to create a udev rules file that gives write permissions for the USB devices of the platform's boards. These permissions are required in order to upload to the boards.
The creation of the udev rules file requires superuser privileges, which are typically not available in the context of the post-install script's execution by the Arduino development software. The script contains code to check whether the necessary privileges are available. If not, it prints a message and skips the udev rules file creation.
Previously the message printed when the udev rules file creation was not possible was "Please run as root":
That "Please run as root" message was completely meaningless to the user when printed during the Boards Manager installation. Worse, it might cause them
to think they must run the Arduino development software as root user, which is a bad idea and also wouldn't result in
the udev rules file being created since the installation of the platform to the user's account was already completed.
The script is here updated to provide a meaningful explanation of the potential problem as well as the specific command the user can run from the terminal to execute the script as superuser:
This is a propagation of a change originally implemented in the
arduino/ArduinoCore-renesas
repo: arduino/ArduinoCore-renesas#334