Skip to content

IDE Download getting large; need to develop an incremental download plan #1227

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
tigoe opened this issue Jan 15, 2013 · 5 comments
Closed
Assignees
Labels
Component: IDE The Arduino IDE

Comments

@tigoe
Copy link
Member

tigoe commented Jan 15, 2013

The Arduino IDE download is getting large as we add more toolchains, libraries and examples. While these components are helpful, it makes the initial download huge. We should develop a scheme to reduce this, perhaps by using incremental downloads.

Starting with an initial download that has only the AVR toolchain, then allowing you to incrementally add the Due toolchain dynamically would help.

A library manager (already in discussion on the dev list) will help reduce the size of the initial download, and allow users to pick and choose which libraries they include. Similarly, perhaps an example manager would help as well.

What other elements could be made modules and implemented as an incremental download?

@ghost ghost assigned ffissore Jan 15, 2013
@damellis
Copy link
Contributor

It would definitely be good to decrease the size of the applications and the downloads.

I think the sizes of the individual toolchains can be slimmed down as well. For example, the AVR toolchain includes a 3.x and a 4.x version of AVR-GCC. This was intended (by the makers of WinAVR / CrossPack) to make it easy to switch between the two but I don't think any Arduino users do. Deleting the 3.x version would save a decent amount of space, I think. Also, the packages include some amount of documentation for the toolchains, additional binaries that we don't use, etc. We might start by cleaning these toolchains up and seeing how much room that saves.

@PaulStoffregen
Copy link
Contributor

The Mac AVR toolchain could drop PPC support, cutting the binary file sizes roughly in half, as well as dropping the old toolchain version nobody ever uses.

The Windows AVR toolchain contains many unused programs, including 2 copies of gdb, tcl/tk, avarice, and 38 megabytes of toolchain documentation.

Even the relatively small Linux version contains some easily trimmed fat, like 2 copies of avrdude and toolchain files never used by the IDE, like avr-addr2line, avr-strings, avr-c++filt, etc.

ffissore added a commit that referenced this issue Feb 4, 2013
tgz reduced from 79M(395M uncompressed) to 56M(193M uncompressed)
ffissore added a commit that referenced this issue Feb 4, 2013
macosx zip reduced from 126M(390M uncompressed) to 120M(370M uncompressed)
ffissore added a commit that referenced this issue Feb 4, 2013
windows zip reduced from 95M(403M uncompressed) to 83M(363M uncompressed)
ffissore added a commit that referenced this issue Feb 4, 2013
using ant zip target on macosx build
setting zip compression level to 9
@ffissore
Copy link
Contributor

ffissore commented Feb 4, 2013

That's what we get so far
linux: from 79M (395M uncompressed) to 56M (193M uncompressed)
macosx: from 126M(390M uncompressed) to 120M(370M uncompressed)
windows: from 95M(403M uncompressed) to 83M(363M uncompressed) (the expert version, the one without the included JRE)

keeping the issue open for now

@ffissore
Copy link
Contributor

With pull request #1806, nightly builds show the following changes
linux32: from 60M to 66M
linux64: from 61M to 66M
macosx: from 127M to 87M
windows: from 132M to 121M

@ffissore ffissore added the New label Feb 27, 2014
@cmaglie cmaglie removed the New label Feb 27, 2014
@ffissore
Copy link
Contributor

Fixed since 1.6.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Component: IDE The Arduino IDE
Projects
None yet
Development

No branches or pull requests

5 participants