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

Carsten Schoenert c.schoenert at t-online.de
Sat Dec 12 08:58:22 GMT 2020


Hi list members, Matthijs from Arduino (and added CC recipients),

in the past there were already some attempts to bring a newer Arduino UI
into Debian.

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=894382
https://alioth-lists.debian.net/pipermail/pkg-electronics-devel/2018-April/004881.html
https://alioth-lists.debian.net/pipermail/pkg-electronics-devel/2020-February/006919.html

Now I started also to have a look at the current situation and at
updating the packages as due the Corona pandemic the real public life is
mostly at home now and I found some more interests to work (again) with
some Atmel MCUs.

The situation in Debian seems a bit complex an confusing. The only clear
thing is Debian has a heavily outdated Arduino UI even in testing/sid.
So I started at top and tried to go dowm to the bottom.

The most recent version of Arduino is 1.8.13 while Debian has 1.0.5. I
tried to update src:arduino to 1.8.13 and succeeded somehow, thanks to
prework from Geert Stappers and Scott Howard.
But, some important part to get all working in the end is no shipped by
a new upstream archive: ArduinoCore-avr

https://github.com/arduino/ArduinoCore-avr

So I started on packaging a new source package called now
arduino-core-avr (creates a equal named binary package) and I was
getting this working too.

With this new package and currently some small manual tweaks I'm able to
start the ArduinoUI based on the most recent version 1.8.13 of Arduino.
But this isn't enough for successful working as the whole communication
to any programmer goes through another component called arduino-builder.
But arduino-builder is on it's way and migration to arduino-cli.

arduino-builder has an ITP from Rock Storm and is Go based. The ITP can
be found on the first URL above.
Rock did push his work to Salsa and arduino-builder is also in the
archive, so it's not that we need to start at zero here.

https://salsa.debian.org/electronics-team/arduino/arduino-builder
https://tracker.debian.org/pkg/arduino-builder
https://salsa.debian.org/electronics-team/arduino/arduino-builder

But arduino-builder right now does FTBFS. :-(
I imported the newest upstream version to see if we can build a new
version by accident, but even if I add some new depending Go packages
(and comment out the arduino Go packages to see any build output) the
build is failing due missing packages related to arduino. The required
Go dev packages are currently not available in the archive and we are
unable to get arduino-builder into non FTBFS and updated to the most
recent version.

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 have had a little bit of conversation with Matthijs from the Arduino
project as I haven't found some "default" licensing information for the
git tree of ArduinoCore-avr. Matthijs offered some help to get Arduino
within Debian into a better shape which I gladly would use!

https://github.com/arduino/ArduinoCore-avr/issues/376

Currently I see two thinks that block us to get the ArduinoUI updated in
Debian.

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

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

I know we also have some binary issues to solve in the end, but this
should be more a technical problem as the source is available.

So, a rather longish email, but the relations are complex.
What is the opinion of other involved people?
Any other interested people who still wanted to see Arduino gets updated
in Debian?
How can wee proceed, or should we stand still and wait until Bullseye is
out?
How can balance any required work? We could try to convince some Go
packaging people to adopt related build-dependencies e.g.

My current state of work for arduino and arduino-core-avr can be found her:

https://salsa.debian.org/tijuca/arduino
https://salsa.debian.org/tijuca/arduino-core-avr

Thanks for readying and stay healthy!

-- 
Regards
Carsten



More information about the Pkg-electronics-devel mailing list