You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by Alex Harui <ah...@adobe.com> on 2014/01/27 21:33:11 UTC

[Installer] Centralizing Downloads

Justin suggested that the installer should save downloads in a central
location on the users computer so that if multiple SDKs are installed that
use, for instance, the huge AIR SDK, it only gets downloaded once.

That seems like a reasonable idea to me.  Any thoughts on where to store
these downloads?  We could try to find the Downloads folder on a user's
computer but I think that there is no such thing on WindowsXP.  We could
use the application storage folder in AIR, but that's hard to find and
clean out.

Thoughts?


RE: [Installer] Centralizing Downloads

Posted by Kessler CTR Mark J <ma...@usmc.mil>.
Oh that's nice. 

 Thanks Alex.

-Mark

-----Original Message-----
From: Alex Harui [mailto:aharui@adobe.com] 
Sent: Wednesday, January 29, 2014 9:26 AM
To: dev@flex.apache.org
Subject: Re: [Installer] Centralizing Downloads



On 1/29/14 2:54 AM, "Kessler CTR Mark J" <ma...@usmc.mil> wrote:

>If the caching works out, it would be nice if you could be able to do an
>offline install on other machines.
The installer already supports a custom config file.  When I do my
testing, I make a local copy of sdk-installer-config-4.0.xml, change the
URLs to file:// urls that point to local copies of the downloads and use
the -config=<path to custom sdk-installer-config-4.0.xml>

This should allow folks to do offline/behind-the-firewall installs.

-Alex


Re: [Installer] Centralizing Downloads

Posted by Alex Harui <ah...@adobe.com>.

On 1/29/14 2:54 AM, "Kessler CTR Mark J" <ma...@usmc.mil> wrote:

>If the caching works out, it would be nice if you could be able to do an
>offline install on other machines.
The installer already supports a custom config file.  When I do my
testing, I make a local copy of sdk-installer-config-4.0.xml, change the
URLs to file:// urls that point to local copies of the downloads and use
the -config=<path to custom sdk-installer-config-4.0.xml>

This should allow folks to do offline/behind-the-firewall installs.

-Alex


RE: [Installer] Centralizing Downloads

Posted by Kessler CTR Mark J <ma...@usmc.mil>.
If the caching works out, it would be nice if you could be able to do an offline install on other machines.

-Mark

-----Original Message-----
From: Alex Harui [mailto:aharui@adobe.com] 
Sent: Monday, January 27, 2014 3:33 PM
To: dev@flex.apache.org
Subject: [Installer] Centralizing Downloads

Justin suggested that the installer should save downloads in a central
location on the users computer so that if multiple SDKs are installed that
use, for instance, the huge AIR SDK, it only gets downloaded once.

That seems like a reasonable idea to me.  Any thoughts on where to store
these downloads?  We could try to find the Downloads folder on a user's
computer but I think that there is no such thing on WindowsXP.  We could
use the application storage folder in AIR, but that's hard to find and
clean out.

Thoughts?


Re: [Installer] Centralizing Downloads

Posted by Tom Chiverton <tc...@extravision.com>.
On 29/01/2014 02:37, Nicholas Kwiatkowski wrote:
> ant -f installer.xml if they have Ant installed.  So I was hoping a pure
> > >Ant install could also find/use this cache of downloads.
> > >
The correct location for Linux is under '/var/cache/', but I really 
wouldn't want an ant script stuffing stuff in there with no way to clear 
them out; could caching require (or be turned off) by an ant option ?

This could be handled by a native Linux package (.pkg / .rpm) that wraps 
the ant installer when it is installed, and removes the cache on 
uninstall, for instance.

I'll have a go with the ant script tonight hopefully, and now the ant 
scripts are ready creating a non-AIR based distribution system for Linux 
people should be a lot easier.

Tom

Re: [Installer] Centralizing Downloads

Posted by Nicholas Kwiatkowski <ni...@spoon.as>.
For Linux -- why not just use the current working directory as a default?
 I don't think there is any universal place I've ever seen to cache files
like that.

On Windows, I'd like the option to choose where to save those cached files.
 I install most of my apps on my SSD, but given the option, I tend to store
files and cache on my HD drive to save space.  I imagine I'm not alone in
that regard.  It can be a default to store it in the non-roaming app-data
folder on Windows (in the downloads directory on the mac?).

-Nick


On Mon, Jan 27, 2014 at 5:50 PM, OmPrakash Muppirala
<bi...@gmail.com>wrote:

> On Mon, Jan 27, 2014 at 2:35 PM, Alex Harui <ah...@adobe.com> wrote:
>
> >
> >
> > On 1/27/14 2:24 PM, "OmPrakash Muppirala" <bi...@gmail.com> wrote:
> >
> > >On Mon, Jan 27, 2014 at 1:09 PM, Alex Harui <ah...@adobe.com> wrote:
> > >
> > >>
> > >>
> > >> On 1/27/14 12:37 PM, "OmPrakash Muppirala" <bi...@gmail.com>
> > wrote:
> > >>
> > >> >On Mon, Jan 27, 2014 at 12:33 PM, Alex Harui <ah...@adobe.com>
> wrote:
> > >> >
> > >> >> Justin suggested that the installer should save downloads in a
> > >>central
> > >> >> location on the users computer so that if multiple SDKs are
> installed
> > >> >>that
> > >> >> use, for instance, the huge AIR SDK, it only gets downloaded once.
> > >> >>
> > >> >>
> > >> >As a developer/architect, I would prefer to have control over where
> the
> > >> >SDKs are stored.  How about prompting the user to select this folder
> > >> >first?  If user chooses to skip this, we would simply download the
> SDKs
> > >> >every time.
> > >> First, let me make sure I was clear.  This is about where to store a
> > >> downloaded compressed artifact, not where we expand it.  For example,
> > >> where we would store AdobeAIRSDK.tbz since it gets downloaded and
> > >>expanded
> > >> by both the Flex SDK and FlexJS SDK.  I don't think we can control
> where
> > >> we store and shore a single uncompressed AdobeAIRSDK because the IDEs
> > >>are
> > >> expecting those files in the installation folder.
> > >> We could have folks choose the folder, but it would be nice if the ant
> > >> scripts can also leverage a central repository of compressed files
> > >>without
> > >> having to prompt the user from the command line.
> > >>
> > >>
> > >
> > >Yes, got it.  What I am proposing is to prompt the user to point to a
> 'AIR
> > >SDK.zip, etc. storage cache' that we will reuse from.  This prompt will
> be
> > >shown only the first time which the user can chose to ignore.  In that
> > >case, we will download artifacts to <installation_dir>/temp and delete
> the
> > >temp directory later.  But if the user does select a 'storage cache', we
> > >will use that to store downloaded artifacts.  On subsequent installs,
> the
> > >Installer will look at the cache and if nothing is found, it would
> > >download
> > >it via the net.
> > >
> > We can certainly do that. I was just hoping for a less interactive
> > solution.  I just checked in the ant scripts for the main Flex SDK that
> > the new installer will use (once the jenkins server generates new release
> > artifacts).  I'm still not clear on what kinds of installers we will
> offer
> > to our Linux users.  I think there are some issues on Linux and some
> other
> > non-Linux places about requiring the installation of the AIR runtime in
> > order to run the installer.  One of the benefits of the ant scripts is
> > that I think it gives the Linux user a choice.  They can either install
> > AIR and run the installer, or download the binary kit, expand it, and run
> > ant -f installer.xml if they have Ant installed.  So I was hoping a pure
> > Ant install could also find/use this cache of downloads.
> >
> > Thoughts?
> > -Alex
> >
> >
> I see your point.  I would think that Linux users would be more comfortable
> just installing via ant.  Maybe default the paths of cache directories when
> installing via ant?
>
> When installing via the Installer, we could still have defaults, but still
> let users change it?
> When you said that "We could use the application storage folder in AIR, but
> that's hard to find and clean out.", did you mean manually cleaning it
> out?  I dont think it is that hard to find the app storage directores via
> code or manually.  We could perhaps default to that?
>

Re: [Installer] Centralizing Downloads

Posted by OmPrakash Muppirala <bi...@gmail.com>.
On Mon, Jan 27, 2014 at 2:35 PM, Alex Harui <ah...@adobe.com> wrote:

>
>
> On 1/27/14 2:24 PM, "OmPrakash Muppirala" <bi...@gmail.com> wrote:
>
> >On Mon, Jan 27, 2014 at 1:09 PM, Alex Harui <ah...@adobe.com> wrote:
> >
> >>
> >>
> >> On 1/27/14 12:37 PM, "OmPrakash Muppirala" <bi...@gmail.com>
> wrote:
> >>
> >> >On Mon, Jan 27, 2014 at 12:33 PM, Alex Harui <ah...@adobe.com> wrote:
> >> >
> >> >> Justin suggested that the installer should save downloads in a
> >>central
> >> >> location on the users computer so that if multiple SDKs are installed
> >> >>that
> >> >> use, for instance, the huge AIR SDK, it only gets downloaded once.
> >> >>
> >> >>
> >> >As a developer/architect, I would prefer to have control over where the
> >> >SDKs are stored.  How about prompting the user to select this folder
> >> >first?  If user chooses to skip this, we would simply download the SDKs
> >> >every time.
> >> First, let me make sure I was clear.  This is about where to store a
> >> downloaded compressed artifact, not where we expand it.  For example,
> >> where we would store AdobeAIRSDK.tbz since it gets downloaded and
> >>expanded
> >> by both the Flex SDK and FlexJS SDK.  I don't think we can control where
> >> we store and shore a single uncompressed AdobeAIRSDK because the IDEs
> >>are
> >> expecting those files in the installation folder.
> >> We could have folks choose the folder, but it would be nice if the ant
> >> scripts can also leverage a central repository of compressed files
> >>without
> >> having to prompt the user from the command line.
> >>
> >>
> >
> >Yes, got it.  What I am proposing is to prompt the user to point to a 'AIR
> >SDK.zip, etc. storage cache' that we will reuse from.  This prompt will be
> >shown only the first time which the user can chose to ignore.  In that
> >case, we will download artifacts to <installation_dir>/temp and delete the
> >temp directory later.  But if the user does select a 'storage cache', we
> >will use that to store downloaded artifacts.  On subsequent installs, the
> >Installer will look at the cache and if nothing is found, it would
> >download
> >it via the net.
> >
> We can certainly do that. I was just hoping for a less interactive
> solution.  I just checked in the ant scripts for the main Flex SDK that
> the new installer will use (once the jenkins server generates new release
> artifacts).  I'm still not clear on what kinds of installers we will offer
> to our Linux users.  I think there are some issues on Linux and some other
> non-Linux places about requiring the installation of the AIR runtime in
> order to run the installer.  One of the benefits of the ant scripts is
> that I think it gives the Linux user a choice.  They can either install
> AIR and run the installer, or download the binary kit, expand it, and run
> ant -f installer.xml if they have Ant installed.  So I was hoping a pure
> Ant install could also find/use this cache of downloads.
>
> Thoughts?
> -Alex
>
>
I see your point.  I would think that Linux users would be more comfortable
just installing via ant.  Maybe default the paths of cache directories when
installing via ant?

When installing via the Installer, we could still have defaults, but still
let users change it?
When you said that "We could use the application storage folder in AIR, but
that's hard to find and clean out.", did you mean manually cleaning it
out?  I dont think it is that hard to find the app storage directores via
code or manually.  We could perhaps default to that?

Re: [Installer] Centralizing Downloads

Posted by Alex Harui <ah...@adobe.com>.

On 1/27/14 2:24 PM, "OmPrakash Muppirala" <bi...@gmail.com> wrote:

>On Mon, Jan 27, 2014 at 1:09 PM, Alex Harui <ah...@adobe.com> wrote:
>
>>
>>
>> On 1/27/14 12:37 PM, "OmPrakash Muppirala" <bi...@gmail.com> wrote:
>>
>> >On Mon, Jan 27, 2014 at 12:33 PM, Alex Harui <ah...@adobe.com> wrote:
>> >
>> >> Justin suggested that the installer should save downloads in a
>>central
>> >> location on the users computer so that if multiple SDKs are installed
>> >>that
>> >> use, for instance, the huge AIR SDK, it only gets downloaded once.
>> >>
>> >>
>> >As a developer/architect, I would prefer to have control over where the
>> >SDKs are stored.  How about prompting the user to select this folder
>> >first?  If user chooses to skip this, we would simply download the SDKs
>> >every time.
>> First, let me make sure I was clear.  This is about where to store a
>> downloaded compressed artifact, not where we expand it.  For example,
>> where we would store AdobeAIRSDK.tbz since it gets downloaded and
>>expanded
>> by both the Flex SDK and FlexJS SDK.  I don't think we can control where
>> we store and shore a single uncompressed AdobeAIRSDK because the IDEs
>>are
>> expecting those files in the installation folder.
>> We could have folks choose the folder, but it would be nice if the ant
>> scripts can also leverage a central repository of compressed files
>>without
>> having to prompt the user from the command line.
>>
>>
>
>Yes, got it.  What I am proposing is to prompt the user to point to a 'AIR
>SDK.zip, etc. storage cache' that we will reuse from.  This prompt will be
>shown only the first time which the user can chose to ignore.  In that
>case, we will download artifacts to <installation_dir>/temp and delete the
>temp directory later.  But if the user does select a 'storage cache', we
>will use that to store downloaded artifacts.  On subsequent installs, the
>Installer will look at the cache and if nothing is found, it would
>download
>it via the net.
>
We can certainly do that. I was just hoping for a less interactive
solution.  I just checked in the ant scripts for the main Flex SDK that
the new installer will use (once the jenkins server generates new release
artifacts).  I'm still not clear on what kinds of installers we will offer
to our Linux users.  I think there are some issues on Linux and some other
non-Linux places about requiring the installation of the AIR runtime in
order to run the installer.  One of the benefits of the ant scripts is
that I think it gives the Linux user a choice.  They can either install
AIR and run the installer, or download the binary kit, expand it, and run
ant -f installer.xml if they have Ant installed.  So I was hoping a pure
Ant install could also find/use this cache of downloads.

Thoughts?
-Alex


Re: [Installer] Centralizing Downloads

Posted by OmPrakash Muppirala <bi...@gmail.com>.
On Mon, Jan 27, 2014 at 1:09 PM, Alex Harui <ah...@adobe.com> wrote:

>
>
> On 1/27/14 12:37 PM, "OmPrakash Muppirala" <bi...@gmail.com> wrote:
>
> >On Mon, Jan 27, 2014 at 12:33 PM, Alex Harui <ah...@adobe.com> wrote:
> >
> >> Justin suggested that the installer should save downloads in a central
> >> location on the users computer so that if multiple SDKs are installed
> >>that
> >> use, for instance, the huge AIR SDK, it only gets downloaded once.
> >>
> >>
> >As a developer/architect, I would prefer to have control over where the
> >SDKs are stored.  How about prompting the user to select this folder
> >first?  If user chooses to skip this, we would simply download the SDKs
> >every time.
> First, let me make sure I was clear.  This is about where to store a
> downloaded compressed artifact, not where we expand it.  For example,
> where we would store AdobeAIRSDK.tbz since it gets downloaded and expanded
> by both the Flex SDK and FlexJS SDK.  I don't think we can control where
> we store and shore a single uncompressed AdobeAIRSDK because the IDEs are
> expecting those files in the installation folder.
> We could have folks choose the folder, but it would be nice if the ant
> scripts can also leverage a central repository of compressed files without
> having to prompt the user from the command line.
>
>

Yes, got it.  What I am proposing is to prompt the user to point to a 'AIR
SDK.zip, etc. storage cache' that we will reuse from.  This prompt will be
shown only the first time which the user can chose to ignore.  In that
case, we will download artifacts to <installation_dir>/temp and delete the
temp directory later.  But if the user does select a 'storage cache', we
will use that to store downloaded artifacts.  On subsequent installs, the
Installer will look at the cache and if nothing is found, it would download
it via the net.


> -Alex
>
>

Re: [Installer] Centralizing Downloads

Posted by Alex Harui <ah...@adobe.com>.

On 1/27/14 12:37 PM, "OmPrakash Muppirala" <bi...@gmail.com> wrote:

>On Mon, Jan 27, 2014 at 12:33 PM, Alex Harui <ah...@adobe.com> wrote:
>
>> Justin suggested that the installer should save downloads in a central
>> location on the users computer so that if multiple SDKs are installed
>>that
>> use, for instance, the huge AIR SDK, it only gets downloaded once.
>>
>>
>As a developer/architect, I would prefer to have control over where the
>SDKs are stored.  How about prompting the user to select this folder
>first?  If user chooses to skip this, we would simply download the SDKs
>every time.
First, let me make sure I was clear.  This is about where to store a
downloaded compressed artifact, not where we expand it.  For example,
where we would store AdobeAIRSDK.tbz since it gets downloaded and expanded
by both the Flex SDK and FlexJS SDK.  I don't think we can control where
we store and shore a single uncompressed AdobeAIRSDK because the IDEs are
expecting those files in the installation folder.
We could have folks choose the folder, but it would be nice if the ant
scripts can also leverage a central repository of compressed files without
having to prompt the user from the command line.

-Alex


Re: [Installer] Centralizing Downloads

Posted by OmPrakash Muppirala <bi...@gmail.com>.
On Mon, Jan 27, 2014 at 12:33 PM, Alex Harui <ah...@adobe.com> wrote:

> Justin suggested that the installer should save downloads in a central
> location on the users computer so that if multiple SDKs are installed that
> use, for instance, the huge AIR SDK, it only gets downloaded once.
>
> That seems like a reasonable idea to me.  Any thoughts on where to store
> these downloads?  We could try to find the Downloads folder on a user's
> computer but I think that there is no such thing on WindowsXP.  We could
> use the application storage folder in AIR, but that's hard to find and
> clean out.
>
> Thoughts?
>
>
As a developer/architect, I would prefer to have control over where the
SDKs are stored.  How about prompting the user to select this folder
first?  If user chooses to skip this, we would simply download the SDKs
every time.

Thanks,
Om