-
Notifications
You must be signed in to change notification settings - Fork 26
[MRG]: DOC: Final install instructions #346
[MRG]: DOC: Final install instructions #346
Conversation
This updates the documented HNN-original installation methods for most platforms to a newer version based on jonescompneurolab#337 . This is necessary because: 1. The most recent install instructions found on the official HNN website https://hnn.brown.edu/installation-instructions/ provide only either a link to jonescompneurolab#337 or, in Oscar's case, a separate set of instructions. However, these webpages on the official HNN website will soon be deleted, since we will soon be doing a comprehensive overhaul of the HNN websites. Once this happens, the only guidance that users will receive about installation will need to be present on the README of the repository here https://github.com/jonescompneurolab/hnn 2. The Installation page indicated on the README of the repository https://github.com/jonescompneurolab/hnn does NOT include the install guidance from jonescompneurolab#337. This PR takes the old pre-existing instructions for each platform, moves them into respective subdirectories such as `2021_instructions` (the last year they were updated), and then updates most of the instructions for each platform to match jonescompneurolab#337. I successfully tested the updated install versions for brown_ccv, mac, ubuntu, and windows, and was able to get them all working using the provided instructions. For Mac and Windows, I built off of jonescompneurolab/hnn-tutorials#4 This also adds a disclaimer at the top of every install page that redirects users to HNN-Core. Even people in the lab have still been getting confused about which install instructions are for which version (original HNN or HNN-Core), so that should be cleared up now.
|
If would like to make changes to the text, feel free to modify the branch in this PR. |
|
Plan is to test this before new front-end website release later this summer |
|
On Mac, I was running into some errors with the ports for Docker. Essentially, the logic for extracting the port from a string was written for an older version of Docker, where only the IPv4 was returned as a string. But newer versions of Docker return both IPv4 and IPv6. The fix for me was to replace: with: in the get_container_port function of |
This applies Dylan's fix to today's issue with Mac usage of the suggested installation instructions, as mentioned in this comment: jonescompneurolab#346 (comment) The cause of the bug appears to be thus: in `scripts/docker_functions.sh`, `get_container_port()` and elsewhere depends on identifying the port of the HNN container for use. However, the current combination of `cut` and a regex assume from the use of a command like ``` docker port hnn_container 22 ``` as used here: https://github.com/jonescompneurolab/hnn/blob/e0cf45f876761280062511b56e7de088e7950b01/scripts/docker_functions.sh#L617 would output something like ``` 0.0.0.0:49669 ::49669 ``` possibly excluding the second line, I'm not sure. The first line is an IPv4 version of the container's local IP and its port, and the second is an IPv6 version. However, even though the documention doesn't make mention of the IPv6 output ( https://docs.docker.com/reference/cli/docker/container/port/ ), it appears that as part of Docker Engine v28 https://docs.docker.com/engine/release-notes/28/#2800 the IPv6 output was changed to include brackets. This now affects current use of `docker port`. For example, on my current up-to-date version of Docker Desktop (using Docker Engine Community 28.4.0), running `docker port hnn_container 22` gives me the following output: ``` 0.0.0.0:49669 [::]:49669 ``` The new brackets displayed, and/or the IPv6 output displayed, break the bash scripting we use to identify the port. The new bash scripting in this commit should fix this.
|
Added a commit with Dylan's fix for the Mac install, including documentation of the bug. There is no more work expected to be needed for the new Mac install description. The change to the script was also tested and worked successfully on Windows as well. |
|
Hey @ntolley I believe the latest commit solves all the issues you discovered. It does the following:
Can you please test the new commands to ensure that they work? Note that you probably need to go in to your |
|
@ntolley Would you mind re-visiting this? The Linux instructions were updated and should now work for you, I tested them on Kubuntu. Once the Linux instructions are done, we should be good to go. |
| ```bash | ||
| curl --remote-name https://github.com/jonescompneurolab/hnn/releases/latest/download/hnn.tar.gz | ||
| tar -x --strip-components 1 -f hnn.tar.gz -C hnn_source_code | ||
| curl -sOL https://github.com/jonescompneurolab/hnn/releases/latest/download/hnn.tar.gz |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect! That completely fixed it on my end
ntolley
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work @asoplata!! Just tested this in a fresh conda enviornment on my Linux Mint build. No issues with the install and a test simulation ran with no hiccups.

This updates the documented HNN-original installation methods for most
platforms to a newer version based on
#337 . This is necessary because:
The most recent install instructions found on the official HNN website
https://hnn.brown.edu/installation-instructions/
provide only either a link to build: update dockerfile #337 or, in Oscar's case, a separate set
of instructions. However, these webpages on the official HNN website
will soon be deleted, since we will soon be doing a comprehensive
overhaul of the HNN websites. Once this happens, the only guidance that
users will receive about installation will need to be present on the
README of the repository here
https://github.com/jonescompneurolab/hnn .
The Installation page indicated on the README of the repository
https://github.com/jonescompneurolab/hnn
does NOT include the install guidance from build: update dockerfile #337. This PR takes the old
pre-existing instructions for each platform, moves them into respective
subdirectories such as
2021_instructions(the last year they wereupdated), and then updates most of the instructions for each platform to
match build: update dockerfile #337.
I successfully tested the updated install versions for brown_ccv, mac,
ubuntu, and windows, and was able to get them all working using the
provided instructions. For the Mac and Windows instructions, I built off of
jonescompneurolab/hnn-tutorials#4
This also adds a disclaimer at the top of every install page that
redirects users to HNN-Core. Even people in the lab have still been
getting confused about which install instructions are for which
version (original HNN or HNN-Core), so that should be cleared up now.