SEGUL comes as a desktop and mobile app (GUI), a terminal command (CLI), and libraries for Python, Rust, and R (API). This page gets you from install to a first run.
1. Choose an interface
Section titled “1. Choose an interface”See CLI vs GUI for platforms, feature differences, and benchmarks.
2. Install
Section titled “2. Install”Install SEGUI, the SEGUL app, from your platform's store. See the GUI installation guide for requirements and other options.
On Linux and macOS, the installer script picks the right build and needs no root access:
curl -fsSL https://segul.app/install.sh | shOn Windows, or to install by hand, download the binary for your system, unpack it, and put segul on your PATH. The CLI installation guide walks through each method.
Linux
macOS
Windows
On Linux or macOS with Bioconda set up, you can use conda instead. It may not work on older Linux systems found on some HPC clusters. See the Bioconda guide.
conda install bioconda::segulPySEGUL is the Python binding to the SEGUL library. It needs no Rust knowledge.
pip install pysegulAdd the SEGUL crate from crates.io to your project. The same crate also works from R, which needs some Rust knowledge.
cargo add segul3. Run your first task
Section titled “3. Run your first task”Try SEGUL with a small example dataset, then move on to your own data.
Genomic files are too large to bundle. Download reads or contigs from public repositories such as NCBI SRA.
- Open the app and choose a task group in the navigation bar, such as Alignments. Then pick a tool, such as Concatenate alignments. On narrow windows, tap the tool name at the top to switch tools.
- Select Browse files, Browse folder, or Open archive to add the input.
- Choose an output folder and fill in any parameters the task needs. On mobile, output goes to the app's own folder.
- Select Run. Open the output files in the built-in viewer, or export them as a ZIP or gzip archive.
SEGUL detects the input format from the file extension. For other extensions, set it with --input-format. Common commands:
segul align concat -d alignments/ # Concatenate alignmentssegul align convert -d alignments/ # Convert alignment formatssegul align summary -d alignments/ # Alignment summary statisticssegul sequence remove -d alignments/ --id="seq_1;seq_2" # Remove sequencessegul read summary -d reads/ # Read summary statisticssegul <command> <subcommand> --help # Options for any taskSee the command options for every flag.
Concatenate a folder of NEXUS alignments into FASTA with a RAxML partition file:
import pysegul
concat = pysegul.AlignmentConcatenation( "nexus", # input format "dna", # data type "output", # output folder "fasta", # output format "raxml", # partition format "concatenated", # output file prefix)concat.from_dir("alignments")Most classes follow this pattern. Tasks with extra parameters, such as filtering or extraction, set the input first and then call a method. See the PySEGUL guide.
See the Rust API guide and the crate documentation.
4. Explore the tools
Section titled “4. Explore the tools”SEGUL groups its tools by the kind of input they take:
It reads these file formats: