Bug #3469

arduino-avr-core contain binaries (but also their source code)

GNUtoo - 6 months ago - . Updated 6 months ago.

freedom issue
% Done:



The arduino package isn't useful alone: it needs some extra software to support specific microcontroller boards.

So I know two options so far:
  • Use the builtin package manager to install code to support these boards
  • Use the Arch Linux / Parabola packages for that

The advantage of the later is that it is patched to use Arch Linux packages like avrdude. In contrast the arduino-avr-code installed through the Arduino package manager pulls an avrdude binary for instance (and it more limited than the one build by Arch Linux).

The Arch Linux packaged arduino-avr-core consist of source code that is copied as-is, but it also contains the following bootloaders binaries:
  • Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex
  • Arduino-COMBINED-dfu-usbserial-atmega16u2-MegaADK-Rev3.hex
  • Arduino-COMBINED-dfu-usbserial-atmega16u2-Uno-Rev3.hex
  • Arduino-usbserial-atmega16u2-Mega2560-Rev3.hex
  • Arduino-usbserial-atmega16u2-MegaADK-Rev3.hex
  • Arduino-usbserial-atmega16u2-Uno-Rev3.hex
  • Arduino-usbserial-mega.hex
  • Arduino-usbserial-uno.hex
  • ATmegaBOOT_168_atmega1280.hex
  • ATmegaBOOT_168_atmega328_bt.hex
  • ATmegaBOOT_168_atmega328.hex
  • ATmegaBOOT_168_atmega328_pro_8MHz.hex
  • ATmegaBOOT_168_diecimila.hex
  • ATmegaBOOT_168.hex
  • ATmegaBOOT_168_ng.hex
  • ATmegaBOOT_168_pro_8MHz.hex
  • ATmegaBOOT.hex
  • ATmegaBOOT-prod-firmware-2009-11-07.hex
  • Caterina-Circuitplay32u4.hex
  • Caterina-Esplora.hex
  • Caterina-Industrial101.hex
  • Caterina-LeonardoEthernet.hex
  • Caterina-Leonardo.hex
  • Caterina-LilyPadUSB.hex
  • Caterina-LininoOne.hex
  • Caterina-Micro.hex
  • Caterina-Robot-Control.hex
  • Caterina-Robot-Motor.hex
  • Caterina-Yun.hex
  • Caterina-YunMini.hex
  • Caterina-Yun-noblink.hex
  • Esplora-prod-firmware-2012-12-10.hex
  • gemma_v1.hex
  • Genuino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-R3.hex
  • Genuino-COMBINED-dfu-usbserial-atmega16u2-Uno-R3.hex
  • Genuino-usbserial-atmega16u2-Mega2560-R3.hex
  • Genuino-usbserial-atmega16u2-Uno-R3.hex
  • Leonardo-prod-firmware-2012-04-26.hex
  • Leonardo-prod-firmware-2012-12-10.hex
  • LilyPadBOOT_168.hex
  • Mega2560-prod-firmware-2011-06-29.hex
  • MEGA-dfu_and_usbserial_combined.hex
  • Micro-prod-firmware-2012-11-23.hex
  • Micro-prod-firmware-2012-12-10.hex
  • optiboot_atmega168.hex
  • optiboot_atmega328.hex
  • optiboot_atmega328-Mini.hex
  • optiboot_atmega8.hex
  • stk500boot_v2_mega2560.hex
  • UNO-dfu_and_usbserial_combined.hex
  • wifi_dnld.hex
  • wifiHD.hex

It doesn't seem to contain avrdude.

As the source code is also provided it's probably OK FSDG wise as long as the binaries match the source code. However there is a Parabola policy that requires to have everything built from source in the packages.

So we have 2 options here that aren't mutually exclusive:
  • Remove all these bootloaders binaries (With rm -f)
  • Compile the bootloaders from source and replace the old binaries with the ones built.

The bootloaders are also not needed for normal operation of the arduino program: they are just used to recover boards when the users erased the bootloader. So simply removing them will probably only break that functionality.



Updated by GNUtoo 6 months ago

  • Priority changed from bug to freedom issue

Also available in: Atom PDF