Skip to content

Commit

Permalink
add more documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
mjoppich committed Jan 20, 2017
1 parent 77f704a commit e0ffcda
Show file tree
Hide file tree
Showing 16 changed files with 133 additions and 17 deletions.
67 changes: 64 additions & 3 deletions doc/build_wsl.rst
Original file line number Diff line number Diff line change
@@ -1,7 +1,68 @@

.. _build_wsl_intro:

Build WSL
==================
How to setup WSL (Bash on Ubuntu)
=================================

asdasdasd
Step 1: Activate WSL feature
-----------------------------

First WSL has to be enabled from Windows features.
Therefore, simply search for the *Turn Windows features on or off* option in the control panel.

.. image:: ./images/wsl/turn_feature_on.PNG
:scale: 30

Once found, look for the *Windows Subsystem for Linux (Beta)* row and make sure to check the corresponding box.

.. image:: ./images/wsl/select_wsl_feature.PNG
:scale: 30

This will download and install the desired \acf{WSL} feature.
Finally apply the change and make sure to reboot your computer

.. image:: ./images/wsl/restart_after_sel.PNG
:scale: 30

Step 2: Setup WSL
-----------------

Despite the interest to hide any command line as much as possible from the user, the following initial setup can not be automised.
First a Command Prompt or better PowerShell must be started.
Therefore simply search for the *Windows PowerShell* in the start menu.

.. image:: ./images/wsl/powershell.PNG
:scale: 30

Next we type ``bash`` into the command line and Windows will download *WSL*.
However, before the download starts, first the user has to acknowledge that he wants to download *Bash on Ubuntu on Windows* by typing in ``y`` and confirming with ``<enter>``.

.. image:: ./images/wsl/powershell_download_bash.PNG
:scale: 30

Finally, after *WSL* has been downloaded and extracted, *WSL* has to create a linux user account.
Therefore choose a username and password you can easily remember.
Remembering the password is essential here it will be needed for any installation one is performing on *WSL*.

.. image:: ./images/wsl/powershell_setup_user.PNG
:scale: 30

After having *WSL* installed, it has to be setup once to install commonly used dependencies.

.. code::
#! First Time WSL Setup
echo $2 | sudo -S apt-get update
echo $2 | sudo -S apt-get -y install build-essential
echo $2 | sudo -S apt-get -y install dos2UNIX
The above commands must be executed once for this purpose.
For ease of use, *bioGUI* provides an *Install Template Module* template as well as a first time *WSL* setup install template.
After downloading both and executing the first time *WSL* setup *WSL* is set up to be used with *bioGUI*.

The first time *WSL* setup essentially first updates the *Ubuntu* packet manager and then installs most common compilation libraries as well as a tool to convert Windows line endings into UNIX ones.
Using the *Install Template Module* one has to enter the password of the newly created user account.

.. image:: ./images/wsl/powershell_aptupd.PNG
:scale: 30
Binary file added doc/images/templates/biogui_selection.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/templates/existing_templates.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/templates/template_submission.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/usage/install_template.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/command_prompt.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/powershell.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/powershell_aptupd.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/powershell_download_bash.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/powershell_setup_user.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/restart_after_sel.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/select_wsl_feature.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added doc/images/wsl/turn_feature_on.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 26 additions & 9 deletions doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,36 @@
bioGUI documentation
********************

bioGUI: a universal GUI for CLI applications
============================================

With bioGUI developers can easily build a graphical-user-interface (GUI) for their command-line only application.
Such a GUI then enables many more people to use their software.
Especially in biology, the domain experts are often computer novices and have difficulties using tools written for them by bioinformaticiens/computer scientists.

Who is bioGUI for?
==================

With bioGUI domain experts, which have no clue about the command line, should be enabled to use highly sophisticated tools written for them.
bioGUI specifically aims at Windows users, as Microsoft just introduced the Windows Subsystem for Linux (WSL) with its *Bash on Ubuntu on Windows*.
This system allows the usage of said sophisticated tools on a regular Windows computer as most people have.
With bioGUI one also does not need any knowledge about the command line, because the task of executing a given tools becomes a point & click solution.

What is bioGUI not?
=======================

It is not about generating a GUI by its own.

How to get bioGUI?
==================

Download bioGUI releases from the `github releases <http://github.com/mjoppich/bioGUI/>`_.
Please note additional information provided in our :ref:`user_guide`.

.. toctree::
:maxdepth: 2
:caption: Contents:

user_guide.rst
build_wsl.rst
developer_guide.rst

Tutorials:
==================

* :ref:`build_wsl_intro`
* :ref:`download_templates`
* :ref:`install_download_templates`

bla
46 changes: 42 additions & 4 deletions doc/user_guide.rst
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@

.. _user_guide:

********************
User Guide
Expand All @@ -19,7 +20,7 @@ Extract the zip-File and place the contained bioGUI folder somewhere on your har
Linux
-----

Extract the tar.gz file and place the contained bioGUI folder somewhere on your hard drives.
Extract the `tar.gz` file and place the contained bioGUI folder somewhere on your hard drives.

Mac OS
------
Expand All @@ -28,16 +29,53 @@ Download and open the provided dmg package. You can simply drag and drop the bio
In order to productively use bioGUI, it may be required to install the OSX command line tools as well as brew.
Most (install) templates will require you to have wget and netcat install. Using brew installation is simple:

brew install wget netcat
.. code:: bash
brew install wget netcat
You can get brew from `here <http://brew.sh/>`_

Download Template
==================

asdasdasd

Part of *bioGUI* is a user-friendly accessibility of templates for various programs.
Therefore application developers and sophisticated users can upload their templates to our website in order to make their template available to other users.
The user has to submit his name, eMail address, a template name and the template itself.
He can select whether he wants to be an anonymous user (user name is always hidden) and whether this is an installation script (which downloads and creates the \ac{GUI} template specifically for this installed application) or a regular template.
A screenshot of the template submission is shown below.

.. image:: ./images/templates/template_submission.PNG
:scale: 50

Additionally the (`bioGUI website <https://www.bio.ifi.lmu.de/software/bioGUI>`_) also contains a searchable list of already available templates.
Available templates are only shown and can be downloaded via the *bioGUI* application.

.. image:: ./images/templates/existing_templates.PNG
:scale: 50

Within *bioGUI*, clicking the *Download Templates* button, a new dialog window opens showing a list of available templates.
Columns can be sorted by double clicking the header, and using the search only templates which contain the searched words are shown.
Upon selecting one or multiple (keep ctrl-key down while clicking) rows and clicking the *Download* button, those templates are downloaded and available for the user.
Since it is possible to copy or alter templates, new templates are created at all times (no information is lost).

.. image:: ./images/templates/biogui_selection.PNG
:scale: 50

.. _install_download_templates:

Install Downloaded Template:
-----------------------------

asdads
After downloading an *Install Template*, the *Install Template Module* will list the downloaded install template.
The screenshot below shows the *Install Template Module*.
In the dropdown menu, the *hisat2* install template has been chosen.
Since this module is executed on Windows, *WSL* is selected.
*hisat2* is supposed to be installed into the *User Data Dir*, which is on *WSL* and linux usually ``~/.local/share/bioGUI``.
In order to automatically install dependencies, the sudo-password is supplied, which has been set up during installing the *WSL* feature.
Finally the path for the specific *GUI* template has to be set. *bioGUI* by default only searches the template directory besides the executable.
*GUI* templates must have the file extension ``.gui``. If your entered template name does not end with this extension, the extension is appended to your filename.


.. image:: ./images/usage/install_template.PNG
:scale: 50
2 changes: 1 addition & 1 deletion src/bioGUIapp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -198,7 +198,7 @@ bioGUIapp::bioGUIapp(int& argc, char** argv)
m_pMainMainWindow->setCentralWidget(pSplitter);
m_pMainMainWindow->show();

pLeft->setFixedWidth(250);
pLeft->setMinimumWidth(250);
m_pMainMainWindow->setMinimumSize(700, 500);

// For testing purposes only
Expand Down

0 comments on commit e0ffcda

Please sign in to comment.