{"id":27464809,"url":"https://github.com/ncmbianchi/x86_bioinformatics_setup","last_synced_at":"2026-05-08T01:42:19.479Z","repository":{"id":288035149,"uuid":"966612241","full_name":"NCMBianchi/x86_bioinformatics_setup","owner":"NCMBianchi","description":"A simple bash script to install bioinformatics tools that require x86_64 architecture.","archived":false,"fork":false,"pushed_at":"2025-04-15T09:25:47.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-15T23:15:48.516Z","etag":null,"topics":["apple-silicon-support","arm64","bioinformatics","conda","conda-environment","homebrew","pyenv","pyenv-virtualenv","python","x86-64"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NCMBianchi.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-15T07:30:52.000Z","updated_at":"2025-04-15T09:25:50.000Z","dependencies_parsed_at":"2025-04-15T08:43:40.622Z","dependency_job_id":null,"html_url":"https://github.com/NCMBianchi/x86_bioinformatics_setup","commit_stats":null,"previous_names":["ncmbianchi/x86_bioinformatics_setup"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NCMBianchi%2Fx86_bioinformatics_setup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NCMBianchi%2Fx86_bioinformatics_setup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NCMBianchi%2Fx86_bioinformatics_setup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NCMBianchi%2Fx86_bioinformatics_setup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NCMBianchi","download_url":"https://codeload.github.com/NCMBianchi/x86_bioinformatics_setup/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249167455,"owners_count":21223508,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple-silicon-support","arm64","bioinformatics","conda","conda-environment","homebrew","pyenv","pyenv-virtualenv","python","x86-64"],"created_at":"2025-04-15T23:15:51.265Z","updated_at":"2026-05-08T01:42:19.474Z","avatar_url":"https://github.com/NCMBianchi.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# x86 Bioinformatics Setup\nThis script installs all dependencies necessary to manage different Python versions via Pyenv and Conda, in order to use bioinformatics tools that require x86_64 architecture. Originally designed for ARM64 Macs (Apple Silicon, M1-M3 processors), it now supports multiple platforms and architectures.\n\n![bioinformatics-BANNER](https://github.com/user-attachments/assets/dc32542b-946a-47a6-b6a2-75adb0d8cc14)\n\n## Features\n- **Multi-platform support**: Works on macOS (both ARM64 and x86_64) and Linux (Arch-based distributions)\n- **Automatic detection**: Detects OS and architecture automatically\n- **Force options**: Can force specific platform/architecture configurations\n- Allows to run packages such as [bowtie](https://anaconda.org/bioconda/bowtie) and [macs2](https://anaconda.org/bioconda/macs2) that are not –or not fully– supported in arm64\n- Installs [R](https://www.r-project.org) to run scripts locally within hybrid pipelines, but not [Rstudio](https://posit.co/downloads/) which only recognises the default R version (check the [Rig](https://github.com/r-lib/rig) repository to manage different versions of R in Rstudio)\n- Automatically installs Bioconductor packages (DESeq2, edgeR, etc.) within the conda environment using BiocManager\n\n\u003cimg width=\"4088\" height=\"4388\" alt=\"BIOINFORMATICS_pipeline (2)\" src=\"https://github.com/user-attachments/assets/cbcd5b9c-d8b1-4fc2-bbf2-3500c061dd16\" /\u003e\n\n## Supported Platforms\n\n| Platform | Architecture | Status | Notes |\n|----------|-------------|--------|--------|\n| macOS | ARM64 (M1-M3) | ✅ Supported | Uses Rosetta 2 for x86_64 packages |\n| macOS | x86_64 | ✅ Supported | Native support |\n| Linux | x86_64 | ✅ Supported | Arch-based distros only |\n| Linux | ARM64 | ✅ Supported | Arch-based distros only |\n| Ubuntu/Debian | Any | ⚠️ Not yet supported | Would require apt-get integration |\n| RHEL/Fedora | Any | ⚠️ Not yet supported | Would require dnf/yum integration |\n\n## Installation\n\n### Basic Installation\nClone this repository, move into it and make the script executable:\n```bash\ngit clone https://github.com/NCMBianchi/x86_bioinformatics_setup.git\ncd x86_bioinformatics_setup\nchmod +x ./multiplatform_setup.sh\n```\n\nThen run it with:\n```bash\n./multiplatform_setup.sh\n```\n\n### Installation Options\n\nThe script supports several command-line options:\n\n```bash\n# Use fish shell configuration instead of zsh (default)\n./multiplatform_setup.sh --fish\n\n# Force specific platform (useful for testing or containers)\n./multiplatform_setup.sh --force-platform=linux\n\n# Force specific architecture\n./multiplatform_setup.sh --force-arch=x86_64\n\n# Combine multiple options\n./multiplatform_setup.sh --fish --force-platform=darwin --force-arch=arm64\n\n# Show help\n./multiplatform_setup.sh --help\n```\n\n### Platform-Specific Notes\n\n#### macOS (ARM64/Apple Silicon)\n- The script will automatically use Rosetta 2 to run x86_64 bioinformatics packages\n- Homebrew will be installed if not present\n- Conda environment uses `osx-64` subdirectory for compatibility\n\n#### macOS (x86_64/Intel)\n- Native support for all packages\n- Homebrew will be installed if not present\n- Conda environment uses native `osx-64` subdirectory\n\n#### Linux (Arch-based)\n- Supports Arch Linux, Manjaro, EndeavourOS, and other Arch-based distributions\n- Uses `pacman` for system dependencies\n- Pyenv is installed via the official installer script\n- Miniconda is downloaded and installed to `$HOME/miniconda3`\n\n#### Unsupported Linux Distributions\nIf you're using a non-Arch-based Linux distribution, the script will detect this and provide an informative error message. Support for other distributions can be added by extending the package manager detection logic.\n\n## What Gets Installed\n\n### Package Managers \u0026 Environment Tools\n- **Homebrew** (macOS only)\n- **Pyenv** for Python version management\n- **Miniconda** for conda environment management\n\n### Python Versions\n- Python 3.12.6 (set as global)\n- Python 3.9.7 (for bioinformatics environment)\n\n### Bioinformatics Tools\nCore tools installed via conda-forge and bioconda:\n- bedtools, bowtie, bowtie2, bwa\n- hisat2, multiqc, samtools, qualimap\n- fastqc, macs2, stringtie, vcftools, kallisto\n- snakemake (workflow management system)\n- NCBI datasets CLI\n\n### Scientific Python Packages\n- NumPy, Pandas, SciPy, scikit-learn\n- Jupyter, IPython kernel\n- Scanpy, HTSeq\n\n### R and R Packages\n- R base and essentials\n- BiocManager for package management\n- tidyverse, ggplot2, dplyr\n- Seurat\n- **Bioconductor packages** (installed via BiocManager within conda environment):\n  - DESeq2, edgeR, limma (RNA-seq differential expression)\n  - Rsubread (read alignment and counting)\n  - recount3 (access to RNA-seq databases)\n\n## Shell Configuration\n\nThe script automatically configures your shell. Supported shells:\n- **Zsh** (default on modern macOS)\n- **Bash** (common on Linux)\n- **Fish** (use `--fish` flag)\n\nAfter installation, restart your terminal or source your shell configuration:\n```bash\n# For zsh\nsource ~/.zshrc\n\n# For bash\nsource ~/.bashrc\n\n# For fish\nsource ~/.config/fish/config.fish\n```\n\n## Usage\n\nAfter installation, activate the bioinformatics environment:\n```bash\nconda activate bioinformatics\n```\n\nTo deactivate:\n```bash\nconda deactivate\n```\n\n## Troubleshooting\n\n### Platform Detection Issues\nIf the script incorrectly detects your platform or architecture, use the force options:\n```bash\n./multiplatform_setup.sh --force-platform=linux --force-arch=x86_64\n```\n\n### Conda Environment Issues\nIf packages fail to install due to architecture conflicts, the script will automatically handle the conda subdirectory configuration. For manual fixes:\n```bash\nconda config --env --set subdir osx-64  # For x86_64 on Mac\nconda config --env --set subdir linux-64  # For x86_64 on Linux\n```\n\n### Bioconductor Package Installation\nSome Bioconductor packages (DESeq2, edgeR, limma, etc.) are automatically installed within the conda environment using BiocManager during setup. This approach is used because conda recipes for these packages are outdated and require ancient R versions. If any fail during setup, you can manually install them:\n```bash\nconda activate bioinformatics\nRscript install_r_packages.R\n# Or within R:\nBiocManager::install(c(\"DESeq2\", \"edgeR\", \"limma\"))\n```\n\n### Missing Dependencies on Linux\nFor Arch-based systems, ensure your system is up-to-date:\n```bash\nsudo pacman -Syu\n```\n\n## Legacy Script\n\nThe original ARM64-only script (`arm64_setup.sh`) has been deprecated in favor of the new multi-platform `multiplatform_setup.sh`. While the file is preserved locally for backwards compatibility, it is no longer tracked in version control. Please use `multiplatform_setup.sh` for all new installations.\n\n## License\nThis project is licensed under the MIT License. Feel free to use and modify the code as per your needs.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fncmbianchi%2Fx86_bioinformatics_setup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fncmbianchi%2Fx86_bioinformatics_setup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fncmbianchi%2Fx86_bioinformatics_setup/lists"}