Skip to content

Offer zip builds

17 messages · Steven Penny, Abby Spurdle, Marc Schwartz +5 more

#
If you go here:

https://cran.cnr.berkeley.edu/bin/windows/base

you see EXE installers for Windows. This contrasts with other programming
languages that offer both an executable installer and ZIP files that can be
extracted and run. For example Go:

https://golang.org/dl

and Nim:

https://nim-lang.org/install_windows.html

Python:

https://python.org/downloads/release/python-373

and C#:

https://dotnet.microsoft.com/download/dotnet-core/2.2

PHP:

https://windows.php.net/download

Perl:

http://strawberryperl.com/releases.html
1 day later
#
be
Are you suggesting that R should do the same?
If so, I second that, excellent idea.
(However, gzip preferred).

I've had significant problems with the Windows installer.
I've never had significant problems with zip files.
Also, I assuming that the zip approach would be easier for systems
administrators.
However, I'm not a systems administrator...


Abs
#
Hi,

First, I do not speak for R Core, who would, in the end, be responsible for offering something official here.

Second, prior discussions on this topic have generally pointed to:

  https://sourceforge.net/projects/rportable/

as one source for a portable version of R, albeit, with some dependencies (e.g. PortableApps framework)

That being said, again, based upon prior discussions on this topic, the typical reason for needing a ZIP archive of an R installation, is to circumvent Windows OS security restrictions, whereby a useR does not have the requisite Admin rights to install R via the default installer.

Thus, you can presumably download a ZIP of an R installation, unzip it in a location of your choosing, whereby you can then execute/run the R .exe binary. If you can't do that, then a ZIP will not be helpful to you.

I have not tried it, but if that is the case here, you may be able to use the normal R binary installer, but adjust the default install options when prompted, allowing you to customize the install location and other parameters, that may be suitable in the absence of Admin rights.

Prior statements, not official, would suggest that R Core is not likely to assist in providing official options for useRs to circumvent OS security restrictions.

Regards,

Marc Schwartz
#
On Mon, Jun 3, 2019 at 4:11 PM Marc Schwartz wrote:
Theres nothing nefarious here. It would allow people to use the R environment
without running an installer. If someone is a new user they may want to try
R out, and installers can be invasive as they commonly:

- copy files to install dir
- copy files to profile dir
- set registry entries
- set environment variables
- set start menu entries

and historically uninstallers have a bad record of reverting these changes.
should not put this burden upon new users or even having them resort to virtual
machine to avoid items above. having a ZIP file allows new users to run the
R environment, then if they like it perhaps they can run the installer going
forward. Are you familiar with Windows? As everything I am describing hasnt
changed in at least 20 years.

I dont have a criticism of the R installer, I have not run tests to be able to
determine if its well behaved or not. Its the *not knowing* that is the issue.
With Windows, every installer could be perceived as a "black box".
#
Hi,

I am on macOS primarily, albeit, I have run both Windows and Linux routinely in years past.

That being said, these days, I do run Windows 10 under a Parallels VM on macOS, as I have a single commercial application that I need to run for clients now and then, and it sadly only runs on a real Windows install (e.g. not with Wine).

To your points:

The R for Windows FAQ does provide some information on installing R as a non-Admin:

  https://cran.r-project.org/bin/windows/base/rw-FAQ.html#How-do-I-install-R-for-Windows_003f

as well as Registry change related information:

  https://cran.r-project.org/bin/windows/base/rw-FAQ.html#Does-R-use-the-Registry_003f

There is also information on running from external media:

 https://cran.r-project.org/bin/windows/base/rw-FAQ.html#Can-I-run-R-from-a-CD-or-USB-drive_003f

and uninstalling:

  https://cran.r-project.org/bin/windows/base/rw-FAQ.html#How-do-I-UNinstall-R_003f


In addition, the R-Admin manual provides information on the Inno Setup installer:

  https://cran.r-project.org/doc/manuals/r-release/R-admin.html#Building-the-Inno-Setup-installer
  https://cran.r-project.org/doc/manuals/r-release/R-admin.html#The-Inno-Setup-installer

which leads you to:

  http://jrsoftware.org/isinfo.php

and shows that Inno Setup is, like R, fully open source, hence reviewable and not a black box, any more than R itself is. That should not be a surprise...

While I understand the use case you describe, it is, as I noted initially, up to R Core to be willing to provide an official release of a ZIP based installation. Unless you can make the case to them to expend the finite resources that they have to support this as part of each version release process, in light of the prior discussions, it is not clear that this appears to be a priority.

Again, I do not speak for them.

Otherwise, it falls to the community to volunteer to engage in that activity and fulfill the need.

Regards,

Marc
#
On Mon, Jun 3, 2019 at 6:54 PM Marc Schwartz wrote:
With all due respect, then you have no business in this thread.
Further demonstrating my point. You run Windows in a virtual machine, meaning
even if you encountered some bad installer, you could just revert to a snapshot
or similar.
I am sorry if I miscommunicated, I didnt and dont wish to be convinced about how
well behaved R installer is. I wish for R to offer zip builds. Many other
programming languages do:

- http://strawberryperl.com/releases.html
- https://dotnet.microsoft.com/download/dotnet-core/2.2
- https://golang.org/dl
- https://nim-lang.org/install_windows.html
- https://python.org/downloads/release/python-373
- https://windows.php.net/download

As I see it, the question isnt "should R offer zip builds", its "why isnt R
offering zip builds".
Thats the point of my original post. If they choose to continue with only EXE,
I will just keep using other programming languages. So you could see how it
might be in R interest to offer this, as no zip builds might be one of the
reasons people avoid the language.
#
On 01/06/2019 11:02 p.m., Steven Penny wrote:
We did offer both zips and an installer until 2001 or 2002.  It was 
decided then that it wasn't worth the trouble of offering both.

I don't recall anyone asking for the zip in the 17 years after that 
change, until now (though I haven't been paying attention lately, since 
I retired from building the binaries a couple of years ago).

If you think it's worthwhile to do it, then I don't think anyone would 
object if you went ahead and did so.

Duncan Murdoch
#
On Mon, Jun 3, 2019 at 8:04 PM Duncan Murdoch wrote:
If I visited this page:

https://cran.cnr.berkeley.edu/bin/windows/base

and found Zip builds I would use those. Not only do those not exist, but the
installer has been created in such a way that it cant even be extracted from.
Just because you dont recall it, doesnt mean the demand isnt there. The R
community isnt exactly reachable:
http://r-project.org/bugs.html

So bugs and feature requests cant even be posted to bugzilla. Then regarding the
mailing list, even if subscribed you cant post, as all posts are moderated.
Compare to other languages, where you just log in an post an issue:

- https://github.com/crystal-lang/crystal/issues
- https://github.com/dart-lang/sdk/issues
- https://github.com/dotnet/coreclr/issues
- https://github.com/JuliaLang/julia/issues
- https://github.com/ponylang/ponyc/issues
- https://github.com/ziglang/zig/issues

If R team is happy with current status quo, then do nothing. If they are
interested in growing the userbase this might be one way to do it.
#
On 03/06/2019 9:16 p.m., Steven Penny wrote:
You are as much a member of the R team as I am.  If you are interested 
in growing the userbase, then you should go ahead and do it.

By the way, I realized after posting that I was wrong when I said nobody 
would object if you did that.  People object to everything.

Duncan Murdoch
#
FWIW, innoextract extracts the contents of the installer just fine.

I?aki
On Tue, 4 Jun 2019 at 17:40, Steven Penny <svnpenn at gmail.com> wrote:

  
    
#
On Tue, Jun 4, 2019 at 11:06 AM I?aki Ucar wrote:
That is great, thank you very much:

https://github.com/dscharrer/innoextract

Between this thread and others I have interacted with 14 people, and you are the
first person to post an actual solution rather than arguing.

I still think zip builds should be offered, but this is a good workaround until
then. Thanks again.
#
> FWIW, innoextract extracts the contents of the installer just fine.

    > I?aki

Thank you, I?aki

For me too.  On the Windows server (I almost only use for testing R and
ESS), I've always been happy I could install *several* versions
of R (and use them easily simultaneously with ESS in the same
emacs instance running).

Maybe the R project is rather the example the other projects should take:
It costs much less maintainer time (including documenting,
helping users to solve problems, ... da da da) to provide it in this
one form which *does* provide the flexibility of installing
anywhere on your computer and *is* based on FOSS.
> On Tue, 4 Jun 2019 at 17:40, Steven Penny <svnpenn at gmail.com> wrote:
>>
>> On Mon, Jun 3, 2019 at 6:54 PM Marc Schwartz wrote:
>> > I am on macOS primarily, albeit, I have run both Windows and Linux routinely
    >> > in years past.
    >> 
    >> With all due respect, then you have no business in this thread.
    >> 
    >> > That being said, these days, I do run Windows 10 under a Parallels VM on
    >> > macOS, as I have a single commercial application that I need to run for
    >> > clients now and then, and it sadly only runs on a real Windows install (e.g.
    >> > not with Wine).
    >> 
    >> Further demonstrating my point. You run Windows in a virtual machine, meaning
    >> even if you encountered some bad installer, you could just revert to a snapshot
    >> or similar.
    >> 
    >> > To your points:
    >> >
    >> > [bunch of links]
    >> 
    >> I am sorry if I miscommunicated, I didnt and dont wish to be convinced about how
    >> well behaved R installer is. 
    >> I wish for R to offer zip builds.

Are you volunteering to do this for every release? .. on an
ongoing basis ..  unpaid ?

To mention examples of BIG BIG company products such as Microsoft
or Google (below) is really ridiculous.
They have lots of money to spend and pay many many work hours to
pay.

We don't want to:  Given such (and potentially many more similar) e-mail
threads plus the issues mentioned above (plus Virus scanners,
plus broken file transfers less easily detected than with an
*.exe, plus ...),
this is mainly a big time sink with an epsilon benefit.

As Duncan Murdoch explained nicel, you may do it.

Martin Maechler
ETH Zurich and R Core Team



    >> Many other programming languages do:
    >> 
    >> - http://strawberryperl.com/releases.html
    >> - https://dotnet.microsoft.com/download/dotnet-core/2.2
    >> - https://golang.org/dl
    >> - https://nim-lang.org/install_windows.html
    >> - https://python.org/downloads/release/python-373
    >> - https://windows.php.net/download
    >> 
    >> As I see it, the question isnt "should R offer zip builds", its "why isnt R
    >> offering zip builds".
    >> 
    >> > Unless you can make the case to them to expend the finite resources that they
    >> > have to support this as part of each version release process, in light of the
    >> > prior discussions, it is not clear that this appears to be a priority.
    >> 
    >> Thats the point of my original post. If they choose to continue with only EXE,
    >> I will just keep using other programming languages. So you could see how it
    >> might be in R interest to offer this, as no zip builds might be one of the
    >> reasons people avoid the language.
    >> 
    >> ______________________________________________
    >> R-devel at r-project.org mailing list
    >> https://stat.ethz.ch/mailman/listinfo/r-devel



    > -- 
    > I?aki ?car

    > ______________________________________________
    > R-devel at r-project.org mailing list
    > https://stat.ethz.ch/mailman/listinfo/r-devel
#
I did agree with your original suggestion.
However, I don't think that a lack of zip formats, is a disincentive from
using R.

If you have an issue with the Windows installer, the obvious option is to
install the source version, and compile from it.

This is, after all, how open source is designed to work.

Also, I agree with what Duncan said.


Abs
#
On 05/06/2019 4:48 p.m., Abby Spurdle wrote:
If you don't want to run the installer, see I?aki's message for how to 
extract the files without running it.  I don't know if any of the 
configuration done by the installer is essential; you can read the 
source in https://svn.r-project.org/R/trunk/src/gnuwin32/installer if 
you are curious.

Duncan Murdoch
#
On Tue, Jun 4, 2019 at 5:40 PM Steven Penny <svnpenn at gmail.com> wrote:
This is a valid suggestion, but probably impossible to do reliably.
Most installers (the R one is completely open source btw) perform
those steps for a reason. It is great if software can be installed
simply by extracting a zip file somewhere, but if this is what you
desire, you're using the wrong operating system.

We only offer official installation options that work 100% reliably
and I don't think this can be accomplished with a zip file. For
example a zip file won't be able to set the installation location in
the registry, and hence other software such as RStudio won't be able
to find the R installation. Also a zip installation might mix up
package libraries from different R versions (which is bad), or users
might expect they can upgrade R by overwriting their installation with
a new zip (also bad). Hence I'm afraid offering such alternative
installation options would open a new can of worms with bug reports
from Windows users with broken installations, or packages that don't
work as expected.

As for alternatives, 'rportable' and 'innoextract' have already been
mentioned if you really just want to dump the files from the
installer, if that works for you. Another popular option to install
(any) Windows software without manually running installers is using
chocolatey, for example:

  choco install miktex
  choco install r.project

This will still indirectly use official installers, but the installers
have been verified as "safe" by external folks and the installation is
completely automated. Perhaps that's another compromise you could live
with.
1 day later
#
Just to add to that point - it is expected that the registry is appropriately updated so the correct version of R can be located. Just unpacking a ZIP won't work in general since tools using R have no reliable way to find it.

Cheers,
Simon
#
appropriately updated so the correct version of R can be located. Just
unpacking a ZIP won't work in general since tools using R have no reliable
way to find it.

Shouldn't it be sufficient to set the "Path" system or environment
variables?