[Pkg-electronics-devel] Updating Arduino UI and related package dependencies, what blockers do we have?

Rock Storm rockstorm at gmx.com
Sat Dec 12 11:18:05 GMT 2020


On Sat, Dec 12, 2020 at 09:58:22AM +0100, Carsten Schoenert wrote:
> Hi list members, Matthijs from Arduino (and added CC recipients),

Hi Carsten,

I'm so glad to read you are dedicating some time to this. So, first of
all, thank you for that.


> Sitting on this all for now most of the past week I'm beginning to fear
> and to realize it's obviously simply to late to get Arduino updated and
> we can ship it with the next Debian release of Bulleseye. To get this
> goal we would need at least some packages into testing before the hard
> freeze so we can work on package relations while the freeze than. But
> even if we can't get this it would be nice if the situation could be
> improved in the long run and we could provide newer Arduino package by
> Backports for Bullseye.

I wouldn't worry too much about getting it into Bullseye. We should work
on it regardless of the release cycle. If we could get Arduino 1.8.13
working in Debian that'd be a huge achievement given where we are now.
If we could get it in time for the next release, it'd be amazing, but
I'd be very happy with just getting it in at some point.


> 1. We need to update the version of arduino-builder as this is a package
> dependency for arduino.

As for arduino-builder, I gave up last year after getting no support
from the Go Packaging Team team to get the new dependencies into the
system [1][2]. Hence why arduino-builder has not been updated since
then. I'm happy to try again and/or let anyone with more experience/time
to spare to take over the package.

[1]: https://lists.debian.org/debian-go/2019/07/msg00007.html
[2]: https://lists.debian.org/debian-go/2019/07/msg00008.html


> 2. We need a new package arduino-core-avr to fulfill a new dependency of
> split of AVR stuff from arduino-core.

As for the AVR stuff, as was suggested by Leonardo, I started looking
at how Arduino is packaged in Fedora. Instead of an 'arduino-core-avr'
source package, the 'arduino' source package provides the binary
'arduino-devel' package which seems to provide more or less the same
content(?). Maybe anticipating future introduction of new cores(?). So
basically their 'arduino' source package recklessly aggregates all
arduino libraries and cores. I'm not saying this is the right way to do
it, and I'm not saying I'm against an 'arduino-core-avr' package, just
wanted to point out that a different approach is done there.


Other concerns I have, please forgive my ignorance here:

3. Arduino seems to ship custom versions of avr-gcc and avrdude. I have
not investigated what the differences (if any) are. But this could mean
that certain code compiled in Debian produces different results if
compiled using the standalone app provided by Arduino. Maybe Matthijs can
shed some light here. Cause ideally Arduino should use the system
gcc-avr and avrdude packages already present in Debian.

4. I'd say there's a fair risk of this package becoming a sort of a
dependency hell given the amount of little dependencies it has. So I'd
suggest investing some time in planning the packaging strategy and also
getting the commitment from a team to maintain it cause it probably
won't be a 5-minute-job.

5. And last but not least, I think it is not a problem but users could
quite easily install non-FOSS libraries for whatever closed-source
components they are using on their projects. I believe as long as we
don't ship these libraries the package is fine, but I'm raising the issue
just in case anyone has concerns about this.


Thanks again for reaching out! Hope we arrive to good port this time!

Regards,
Rock

--
Rock Storm
GPG KeyID: 4096R/C96832FD



More information about the Pkg-electronics-devel mailing list