swcarpentry / DEPRECATED-bc

DEPRECATED: This repository is now frozen - please see individual lesson repositories.
Other
299 stars 383 forks source link

Can we add some simple tests to the software installation instructions? #647

Closed DamienIrving closed 7 years ago

DamienIrving commented 9 years ago

The default software installation instructions tell students where to go to get the relevant package installer for Anaconda, Git Bash, etc, but not how to test whether they have successfully installed that software. I'm wondering if our instructions should include a quick test for success? For git this might be, can you run git --version?

wking commented 9 years ago

On Sun, Aug 03, 2014 at 04:15:05PM -0700, Damien Irving wrote:

I'm wondering if our instructions should include a quick test for success? For example, for git this might be, can you run git --version?

This is already coded up (for everything I've heard folks wanting ;) in the installation-test scripts 1. I develop those scripts in a separate repository 2 and pull from there into bc (following a

102-style workflow), so you can pull from my upstreams if you want

the scripts without the rest of bc.

gvwilson commented 9 years ago
  1. Should we move these scripts out of setup and into bin? If so, should we move the README instructions into the main README?
  2. Should setup/windows-installer be deleted?
wking commented 9 years ago

On Sun, Aug 10, 2014 at 12:42:02PM -0700, Greg Wilson wrote:

  1. Should we move these scripts out of setup and into bin? If so, should we move the README instructions into the main README?

bin looks like it contains scripts intended to be run by the instructor, while these are intended to be run by the students (after the list of requirements has been tweaked by the instructor). So I think keeping them here with the other setup-scripts is a good idea. Because I maintain these scripts as an independent repository 1, it's going to be more work on the bc side to get tighter integration.

We already mention the purpose of this directory from the main README:

“setup/ - setup tools for installing bootcamp software.”

although now that the installer is quasi-independent, perhaps we should rephrase that to “testing installed software”.

  1. Should setup/windows-installer be deleted?

I don't mind either way 2. We can certainly keep merging installer improvements, as I've done in the past (see 15678db, 4ed6167, and 3f64f06). Or we can link from the setup instructions to an external, compiled installer.

gvwilson commented 9 years ago

I don't have numbers, but I think only a vanishingly small number of people ever look in setup, despite the documentation. Is there any reason to continue to maintain this stuff in a separate repo going forward?

wking commented 9 years ago

On Thu, Aug 14, 2014 at 06:54:13AM -0700, Greg Wilson wrote:

I don't have numbers, but I think only a vanishingly small number of people ever look in setup, despite the documentation.

I think that's because there's an overwhelming amount of material in bc, not because there's nothing useful in setup ;).

Is there any reason to continue to maintain this stuff in a separate repo going forward?

Because I'm maintaining it and bc is too big for me ;). The separate repository is negligably more work for me with respect to bc inclusion, and it's much easier when I want to reuse those scripts in my own aggregations 1.

chendaniely commented 9 years ago

mkdir temp && cd temp && git init

is a better diagnosis as to whether git is installed properly and working (especially on macs)

wking commented 9 years ago

On Mon, Aug 18, 2014 at 01:27:18PM -0700, Daniel Chen wrote:

mkdir temp && cd temp && git init is a better diagnosis as to whether git is installed properly and working (especially on macs)

Why is that better than git --version (which is the test performed by swc-installation-test-2.py, with a subsequent check that the returned version is >= 1.7.0)?

chendaniely commented 9 years ago

I've only been to about 4 or 5 bootcamps, and my experience with git is that the macs are actually the most problematic, especially those on Snow Leopard (and maybe the newest macs). I can't remember the exact error, but if you just use the git dmg installer, running which git won't actually tell you if git will work even if it returns something like /usr/bin/git

Later on in the lesson when you try to init the first git repo, you can get either 2 errors, one of which is a segmentation fault (I don't own a mac, so I don't remember the other). I thought the simplest solution was to install the github app and install the command line tools from perferences, but it seems the only way around any error message is to install xcode (which is even more of a problem for people on snow leopard).

The upside is that on the newer macs if you try to init the git repo, i'll give you a popup to install xcode... But for anyone still on snow leopard, we should have a link to the snow leopard dmg file like somewhere because apple will only give it to you if you are a developer (aka pay $99 a year). It's hosted through Google code somewhere, I've just goggled around for it every time.

Speaking mostly from my own experience as a helper and instructor, so not sure if I'm just really unlucky with weird setups...

chendaniely commented 9 years ago

@wking wanted to add that the git init or anything that actually does something git related will get it to fail and let you know if you are in the special mac cases outlined here: https://github.com/swcarpentry/bc/wiki/Configuration-Problems-and-Solutions

wking commented 9 years ago

On Fri, Aug 22, 2014 at 11:25:38AM -0700, Daniel Chen wrote:

git init or anything that actually does something git related will get it to fail and let you know if you are in the special mac cases outlined here:

https://github.com/swcarpentry/bc/wiki/Configuration-Problems-and-Solutions

Thanks for the details. I'll try to find an OS X box where I can test some of this out, and see if there's an extra check that makes sense to me. If I'm too slow, pull requests against the 'python' branch of swcarpentry/windows-installer are welcome ;).

rgaiacs commented 9 years ago

Maybe the test for Python should go inside the python repo and so on?

wking commented 9 years ago

On Tue, Sep 30, 2014 at 04:07:42PM -0700, Raniere Silva wrote:

Maybe the test for Python should go inside the python repo and so on?

I think we should keep all the tests in one script. It's easy enough to comment/uncomment whichever modules you want for a particular repository, and I don't mind maintaining checks for everything folks ask for ;).

rgaiacs commented 9 years ago

@wking Can we close this?

wking commented 9 years ago

On Sat, Apr 11, 2015 at 05:08:51PM -0700, Raniere Silva wrote:

@wking Can we close this?

Sure. We still don't check 'git init', but I've pulled that out into wking/swc-setup-installation-test#5.