Minipolish - weaponsforge/fastractor GitHub Wiki

minipolish

Installation notes.

Content

Requirements

The following requirements and dependencies were used for this project. Other system and software configurations are open for testing.

  1. Virtual Box 6.14 (for Windows OS)
  2. Windows 10 Pro (host OS)
    • Version 2004 (OS Build 19041.572)
    • Processor: Intel(R) Core(TM) i7-6700HQ
    • CPU @2.60GHz 2.60 GHz
    • GPU: NVIDIA GeForce GTX 1060, 6 GB Dedicated GPU Memory
    • Memory: 16 GB
    • System type: 64-bit OS, x64-based processor
  3. CentOS Linux release 8.1.1911 (Core) - VM (guest OS) running on VMWare Player
    • Memory: 4 GB
    • Processors: 2
    • Hard Disk: 40 GB
    • kernel 4.18.0-147.5.1.el8_2.x86_64
  4. minipolish dependencies
    • minipolish master branch @revision ee6b71c was used for this demo.
    • development tools - the following were used for minipolish's main dependencies (racon and minimap2)
      • Gcc (GCC) 8.3.1 20190507 (Red Hat 8.3.1-4)
      • cmake 3.11.4
      • python 3.6.8
        • pip3 (pip 9.0.3 from python 3.6)
        • python3-devel
        • edlib (this is automatically installed when installing minipolish)
    • racon
      • @master revision 9119181
      • built without the CUDA option
    • minimap2
      • using the prebuilt binary release version 2-2.17.

Install the minipolish Dependencies

System Update

(Optional) The system may need to be updated to ensure the latest security and binary packages, if its not yet updated. The Centos OS used for this demo was already updated, and skipped these steps.

  1. Check if there are available updates. sudo yum update
  2. Update the OS kernel package. sudo yum update -y kernel
  3. Update all packages. sudo yum update
  4. Reboot. sudo shutdown -r now

minipolish Dependencies Installation

The following dependencies must first be installed and configured before proceeding to build minipolish.

  1. Install gcc. GCC is an installation dependency for racon.
    • No need to install gcc because Centos 8.0 already has gcc 8.3.1 pre-installed.
    • Verify the installed gcc: gcc --version
  2. Install cmake. Cmake is an installation dependency for racon.
    • No need to install cmake because Centos 8.0 already has cmake 3.11 pre-installed.
    • If its not yet installed, proceed to install with:
      • download a release.
        wget https://github.com/Kitware/CMake/releases/download/v3.18.3/cmake-3.18.3.tar.gz

      • Extract the archive.
        tar -zxvf cmake-3.18.3.tar.gz

      • install cmake

          cd cmake-3.18.3
          ./bootstrap
          make
          sudo make install
        
    • Verify the cmake installation.
      cmake --version
  3. Install python 3.6. Python 3.6, pip3, python3-devel and edlib are installation dependencies for minipolish.
    • No need to install python because Centos 8.0 already has python 3.6 pre-installed. Edlib is to be automatically installed during the minipolish installation. However, we'll need to install python3-devel if its not yet already installed.
    • install python3-devel.
      sudo yum install python3-devel
  4. Install racon.
    • Download racon.
      git clone --recursive https://github.com/lbcb-sci/racon.git racon

    • Build racon without the CUDA option:

        cd racon
        mkdir build
        cd build
        cmake -DCMAKE_BUILD_TYPE=Release ..
        make
      
    • (Optional) It is highly recommended to make the racon executable globally available on your machine.
      sudo make install

  5. Install minimap2.
    • Download minimap2's pre-built binary release. Version 2.17 was used for this demo.
      curl -L https://github.com/lh3/minimap2/releases/download/v2.17/minimap2-2.17_x64-linux.tar.bz2 | tar -jxvf -

    • Make minimap2 globally available from the command line, if it isn't globally available yet. Use the
      directory path where the minimap2 executable is installed locally, for example in /home/adminuser/minimap2-2.17_x64-linux

        cat <<EOF | sudo tee /etc/profile.d/minimap2.sh
        export PATH=$PATH:/home/adminuser/minimap2-2.17_x64-linux
        EOF
        source /etc/profile.d/minimap2.sh
      

Install minipolish

WARNING: Proceed to install minipolish only after installing the required dependencies from the Install the minipolish Dependencies section.

  1. Clone the minipolish repository.
    • minipolish's master branch @revision ee6b71c was used for this project.
    • git clone git clone https://github.com/rrwick/Minipolish.git
  2. Install minipolish.
    • sudo pip3 install ./Minipolish

minipolish Sample Usage

This section is a WIP.

References

1(https://github.com/rrwick/Minipolish) - minipolish
2(https://github.com/lh3/minimap2) - minimap2
3(https://github.com/isovic/racon) - racon

@weaponsforge
20201028