old Windows 10: Bash on Ubuntu (beta)

What to do?

Warning

This version of Linux is no longer supported.

Here is more description from Microsoft about these updates, including the instructions to “remove and replace” the old Linux– note that this involves deleting files on the Linux side, so be sure to backup any files onto the Windows side, as they suggest HERE.

These setup instructions are for the (now out of date) beta “Creators Update” version of “Bash on Ubuntu” (BoUoW) for Windows 10. This version of Windows 10 is known officially as version 1703, released around April, 2017.

For instructions for the more modern and supported “Fall Creators Update” version of WSL, please see the instructions HERE.

Notes

Some general background information information is provided in their ‘About’ page. The installed version of Ubuntu is 16.04.

Note

This capability is a very recent development on Windows systems, and we are just starting to really test out running AFNI and SUMA through it. Right now, most major functionality seems to work, though in some cases graphics can be slow. We would still recommend Linux or Mac systems for large-scale processing at this time.

At present, “copy+paste” functionality into the default command window works a bit awkwardly. One should be able to copy/paste by selecting tabs from a drop-down panel in the upper left of the window. (As part of the instructions here, a terminal with nicer interface will be installed.)

Other operating systems allow for either tcsh or bash shells to be run as default in the terminal. However, the Windows-Ubuntu presently does not appear to allow tcsh as default (perhaps as forewarned by its descriptive name…), and therefore we describe the system setup only for staying with bash.

Importantly, as with other installation instructions, you are required to have administrator privileges on your operating system.

Install prerequisite: “Bash on Windows”

  • Follow the instructions in the first paragraph HERE to get Windows PowerShell up and running.

  • Follow the instructions HERE to install “Bash on Windows” from Microsoft. (Requires Admin privileges.)

  • Install bash and Ubuntu on Windows: in the lower left of the Desktop, click on “Ask me anything” and type:

    cmd
    
  • In the command window that opens up, type:

    bash
    

    and the installation continues. Once installed, bash starts the Linux shell.

From this point, standard Linux system terminal commands should work (e.g., ls, cp, etc.).

To open up a terminal, you can go to the Search bar in the lower left (where it says “Type here to search”) and start typing “Bash on Ubuntu”– it will likely autocomplete while typing. Additionally, you can make a shortcut on your Windows desktop.

Install prerequisite: Xming X Server for Windows

Click on the following link to start automatic download:

Use default installation settings.

To set the DISPLAY properly, run:

echo "export DISPLAY=:0.0" >> ~/.bashrc

Note

When you start up your BoUoW, you will need to double-click on the Xming icon in order to start the X Server. (Sorry, not our fault…)

Install prerequisite: AFNI and package dependencies

We assume your version of Ubuntu is 16.04, and so you should now follow the following setup instructions through “Make AFNI/SUMA profiles”:

Link to Ubuntu 16+ setup instructions for AFNI

… while noting the following:

  • The R package installation part might be slow, on the order of hours. Meditation is often a good thing, anyways.

  • Include the optional gnome-terminal installation in the first set of steps.

  • Then, copy+paste the following into the terminal:

    sudo sed -i 's/<listen>.*<\/listen>/<listen>tcp:host=localhost,port=0<\/listen>/' /etc/dbus-1/session.conf
    

Prepare for Bootcamp

  1. Copy+paste:

    curl -O https://afni.nimh.nih.gov/pub/dist/edu/data/CD.tgz
    tar xvzf CD.tgz
    cd CD
    tcsh s2.cp.files . ~
    cd ..
    

    Purpose: Download the Bootcamp class data; untar+unzip it (= open it up); move into the newly opened directory; execute a script to copy the files to $HOME/..

    If no errors occur in the above, and your afni_system_check.py says things are OK, you can delete/remove the tarred/zipped package, using “rm CD.tgz”. If you are really confident, you can also deleted the CD/ directory in the present location.

  2. !Pro tip!: Bring a computer mouse to use at the Bootcamp. It is muuuuch easier to follow the demos that way.

  3. Read+practice with the handy Unix documentation/tutorial.

    Purpose: give you a quick lesson/refresher on using basic Linux shell commands (e.g., ls, cd, less, etc.). It will greatly enhance your bootcamp experience– we promise!

Evaluate setup/system (important!)

  1. Open a new terminal, and then copy+paste:

    afni_system_check.py -check_all
    
  2. Read the “Please Fix” section at the end. If there are no suggestions, then rejoice! Otherwise, try the suggestion(s) there.

  3. Open up the AFNI and SUMA GUIs, juuuust to make sure all is well:

    afni
    suma
    

Report any crashes or problems!

If stuck, then …

  • try searching online with the error message, and/or ask on the Message Board

  • send the system check to an AFNI guru for advice—copy+paste:

    afni_system_check.py -check_all > out.ASC.txt
    

    ... and email the file “out.ASC.txt”.

Niceify terminal (optional, but goood)

  1. To improve your life when using the terminal, copy+paste:

    echo 'set filec'    >> ~/.cshrc
    echo 'set autolist' >> ~/.cshrc
    echo 'set nobeep'   >> ~/.cshrc
    
    echo 'alias ls ls --color=auto' >> ~/.cshrc
    echo 'alias ll ls --color -l'   >> ~/.cshrc
    echo 'alias ltr ls --color -ltr'   >> ~/.cshrc
    echo 'alias ls="ls --color"'    >> ~/.bashrc
    echo 'alias ll="ls --color -l"' >> ~/.bashrc
    echo 'alias ltr="ls --color -ltr"' >> ~/.bashrc
    

    Purpose: The first commands set up tab autocompletion for tcsh (which should already be enabled for bash, by default). The second set of commands make aliases so that different types of files (“normal” files, zipped files, executables, et al.) and directories are shown using different colors and boldness. It makes it much easier to navigate on a terminal, IMHO.

Keep up-to-date (remember!)

  1. To update your AFNI sometime, copy+paste:

    @update.afni.binaries -d
    

    That’s it!!

    Purpose: This will automatically download the correct, latest AFNI version to your computer, replacing your old binaries. It will also update the apearch help information. Update often!

  2. To check your AFNI version, copy+paste:

    afni -ver
    

    Purpose: Report this useful info whenever asking a question on the Message Board!

Note

The record of all changes (new options, new programs, bug fixes, et al.) in AFNI programs is maintained for all to see in the online AFNI History.

../../_images/AFNI_on_Windows10_2ways.jpg