macOS
brew install herculeslocal Homebrew formula metadata
sudo port install herculesMacPorts ports tree · emulators/hercules/Portfile · source: api.github.com
brew
System/370, ESA/390 and z/Architecture Emulator. Version 4.9.1 via Homebrew; verified from local package data.
install
brew install herculeslocal Homebrew formula metadata
sudo port install herculesMacPorts ports tree · emulators/hercules/Portfile · source: api.github.com
sudo apt install herculesDebian stable package indexes · hercules · source: deb.debian.org
sudo dnf install herculesFedora Rawhide package metadata · hercules · source: dl.fedoraproject.org
nix profile install nixpkgs#herculesnixpkgs package indexes · pkgs/by-name/he/hercules/package.nix · source: api.github.com
overview
System/370, ESA/390 and z/Architecture Emulator
history
Hercules is an open source emulator for IBM mainframe architectures: System/370, ESA/390, and z/Architecture. The Homebrew `hercules` package delivers the SDL Hercules 4.x Hyperion line and its collection of emulator, DASD, tape, card, and utility commands.
Roger Bowler's history says the idea dated back to 1994, with most of the initial implementation done in 1999. By autumn 1999 Hercules could IPL and run OS/360 MFT and Jan Jaeger's ZZSA standalone program; by early 2000 it could run more ESA/390-era operating systems.
In spring 2000, contributors expanded the project: Jay Maynard added S/370 virtual storage, Jan Jaeger added HMC and dynamic reconfiguration work, Windows ports and front ends broadened access, Debian packaging appeared, and compressed/shared DASD work improved practical use.
The SDL Hercules 4.x Hyperion README describes Hercules as created by Roger Bowler, maintained by Jay Maynard from 2000 to 2012, and advanced by Jan Jaeger through features such as dynamic reconfiguration, integrated console, interpretive execution, and z/Architecture support. The SDL Hyperion line contains fixes and enhancements beyond earlier 3.x and 4.0 versions.
Hercules became important to hobbyists, educators, systems programmers, and preservation-minded users because it made mainframe operating-system practice possible on ordinary host machines. Bowler's history also notes IBM engineers and mainframe specialists using Hercules for testing and demonstrations.
Its adoption is inseparable from legal and operational constraints around mainframe software: Hercules emulates hardware, but users still need operating systems and licenses or public-domain systems they may legally run. That boundary shaped its culture as both a learning tool and a serious emulator.
A Hercules installation is driven by `hercules.cnf`, which describes CPUs, memory, channels, consoles, DASD, tapes, networking, and peripheral devices. The package includes many utilities for creating, converting, inspecting, and manipulating mainframe disk and tape images.
Users run the emulator to IPL operating systems, operate consoles, attach DASD/tape/card devices, and experiment with S/370, ESA/390, or z/Architecture environments. SDL Hyperion documentation covers installation, operation, networking, automatic operator behavior, tracing, and architecture-specific features.
Hercules is a package-manager oddity in the best sense: installing one formula gives a workstation a miniature mainframe lab plus a toolbox for legacy storage media formats. It is not just one command but a cluster of emulator support programs.
For preservation and systems-history users, package-manager availability lowers the barrier to repeatable mainframe experiments. For maintainers, the value is in making a complex C emulator and its utilities reproducible across Unix-like hosts.
security posture
narrow executable package without higher-risk signals.
green risk · low confidence · appliance
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.
Config paths the tool may read or write during local use.
hercules.cnfexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
card2txt | cli | global executable | |
cckd2ckd | cli | global executable | |
cckd642ckd | cli | global executable | |
cckdcdsk | cli | global executable | |
cckdcdsk64 | cli | global executable | |
cckdcomp | cli | global executable | |
cckdcomp64 | cli | global executable | |
cckddiag | cli | global executable | |
cckddiag64 | cli | global executable | |
cckdmap | cli | global executable | |
cckdswap | cli | global executable | |
cckdswap64 | cli | global executable | |
cfba2fba | cli | global executable | |
cfba642fba | cli | global executable | |
ckd2cckd | cli | global executable | |
ckd2cckd64 | cli | global executable | |
convto64 | cli | global executable | |
dasdcat | cli | global executable | |
dasdconv | cli | global executable | |
dasdconv64 | cli | global executable | |
dasdcopy | cli | global executable | |
dasdcopy64 | cli | global executable | |
dasdinit | cli | global executable | |
dasdinit64 | cli | global executable | |
dasdisup | cli | global executable | |
dasdlist | cli | global executable | |
dasdload | cli | global executable | |
dasdload64 | cli | global executable | |
dasdls | cli | global executable | |
dasdpdsu | cli | global executable | |
dasdseq | cli | global executable | |
dasdser | cli | global executable | |
dmap2hrc | cli | global executable | |
fba2cfba | cli | global executable | |
fba2cfba64 | cli | global executable | |
hercifc | cli | global executable | |
herclin | cli | global executable | |
hercules | cli | global executable | |
hetget | cli | global executable | |
hetinit | cli | global executable | |
hetmap | cli | global executable | |
hetupd | cli | global executable | |
maketape | cli | global executable | |
tapecopy | cli | global executable | |
tapemap | cli | global executable | |
tapesplt | cli | global executable | |
tfprint | cli | global executable | |
tfswap | cli | global executable | |
txt2card | cli | global executable | |
vmfplc2 | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
https://github.com/SDL-Hercules-390/hyperion
install metadata
| Package key | brew:hercules |
|---|---|
| Version | 4.9.1 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/hercules |
| Homepage | https://sdl-hercules-390.github.io/html/ |
| Repository | https://github.com/SDL-Hercules-390/hyperion |
| Upstream docs | https://sdl-hercules-390.github.io/html |
| License | QPL-1.0 |
| Source archive | https://github.com/SDL-Hercules-390/hyperion/archive/refs/tags/Release_4.9.1.tar.gz |
| Build dependencies | autoconf, automake, cmake, gnu-sed, libtool |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | hercules |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
hercules 3.13-8
System/370, ESA/390 and z/Architecture Emulator
sudo apt install herculeshercules
nix profile install nixpkgs#herculeshercules 3.13-7
System/370, ESA/390 and z/Architecture Emulator
sudo apt install herculeshercules 3.13-22.fc44
Hercules S/370, ESA/390, and z/Architecture emulator
sudo dnf install herculeshercules
sudo port install herculessource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.