Skip to content

XRByte/HEAinstaller

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

HEAinstaller

Version 2.25.07 (Latest)

HEAinstaller is a platform-agnostic (WSL/Linux/Darwin) and XDG-compliant Python script that automates the installation of HEASoft.

Note: Only supported on platforms using glibc.

Installation (Without Manual Virtual Environment Setup)

If you want the script to automatically manage and install a temporary virtual environment:


git clone https://github.com/Anish-Sarkar-1001/HEAinstaller.git
cd HEAinstaller
python3 user_install.py

If you want to manually create or use an existing environment, follow the guide below.


Requirements

ComponentDetails
Python≥ 3.8
EnvironmentActive Conda or Virtual Environment
Python Packagestqdm
Display ServerXorg (X11) or Wayland with $DISPLAY set

Setting Up an Environment

Note: If no active Conda/Virtual environment is detected, the script will use pip to install Python libraries. However, using a Conda/Virtual environment is preferred.

Installation Guide

git clone https://github.com/Anish-Sarkar-1001/HEAinstaller.git
cd HEAinstaller
python3 heainstaller.py
Note: You will be prompted for your superuser password and asked to provide the heasoft-x.xx.x.tar.gz path if you have already downloaded it.

After installation, initialize HEASoft with:

heainit

Important Notes

  • sudo is used. Install it manually on Alpine or other minimal systems.
  • Setup is done without lynx to avoid errors in some distributions.

Customization & Additional Information

  • The script is XDG-compliant and installs HEASoft at: $HOME/.local/bin/heasoft
  • The downloaded tarball will be stored at: $XDG_CACHE_HOME/heasoft.tar.gz
  • Edit user.json to skip installing specific HEASoft packages by setting values from yes to no.
  • Refer to the HEASoft official documentation for dependency information.
  • Progress bars are approximate (±1%).

Tested Platforms

PlatformVersion/Distribution
macOS (Darwin)Sequoia, Sonoma, Ventura
LinuxUbuntu, OpenSUSE, Arch, Void (glibc), Gentoo (glibc), Debian, Deepin, Kali, Oracle, CentOS, AlmaLinux, Manjaro
WSLAll of the above Linux distributions

Supported Shells

bashzshkshdash ashelvishcshtcsh

Unsupported Platforms

PlatformReason
SlackwareManual configuration required
musl based distrosRequires glibc