If you want to use the -Linux- command line for doing Arduino builds/uploads on a headless machine (that is to say: without an X server running...it's often the case of computers accessible only through SSH), invoking the bare "arduino" executable doesn't work (see https://github.com/arduino/Arduino/issues/1981)
A workaround is to create this little script (we'll call "arduino-headless")...:
...to put it on your $PATH (it assumes your arduino executable is also on your $PATH) and to call it like this every time you need it (change the command line arguments to match your board, port, and sketch file.):
As you've seen, in addition to installation of the regular Arduino IDE in the headless machine, this trick requires the installation of the xvfb package (Debian and Ubuntu: sudo apt-get install xvfb; Fedora: sudo dnf install xorg-x11-server-Xvfb).
Thanks to Matthew Beckler
Title
Arduino Newsletter
We care about the privacy and personal data of our users.
To continue, please give us your consent:
Please confirm that you have read the privacy policy
Thank you for subscribing!
Curious to learn more?
Are you also a teacher, student, or professional that loves using Arduino in your day-to-day activities?
Then keep up-to-date with either our STEM or Professional monthly newsletters.
Arduino weekly newsletter (already subscribed)
Educators can benefit from the ever growing tech that shapes our environment through fun cool projects.
Why not awe your boss with highly innovative ways to help keep your enterprise connected at no extra cost?
Arduino Survey
We'd like to get to know you little better.
Please help us improve by answering this super short optional survey.