# This package list assumes epel-release and powertools are enabled:
#     dnf install -y epel-release 'dnf-command(config-manager)'
#     dnf config-manager --set-enabled powertools
git                      # Version control
cmake                    # Top-level build system
ninja-build              # Parallel build system
dpkg-dev                 # Needed to build `.deb` packages
gcc-toolset-13-gcc       # C compiler
gcc-toolset-13-gcc-c++   # C++ compiler
python3.12               # Python runtime that's compatible with OPynSim
python3.12-devel         # Python headers. Used when building native Python extensions for OPynSim
python3.12-pip           # Package installer for Python
pkgconfig                # SDL3        : needed by its build
libX11-devel             # SDL3+X11    : X11 windowing system
libXext-devel            # SDL3+X11    : windowing system extensions
libXrandr-devel          # SDL3+X11    : resize/rotate/reflection queries
libXi-devel              # SDL3+X11    : Input extensions e.g. raw mouse input
libXcursor-devel         # SDL3+X11    : Cursor management
libXfixes-devel          # SDL3+X11    : Various X11 fixes
libXScrnSaver-devel      # SDL3+X11    : Screen saver disabler (SDL_DisableScreenSaver)
xorg-x11-server-Xvfb     # SDL3+X11    : For running headless test suites
wayland-devel            # SDL3+Wayland: Wayland windowing system
libxkbcommon-devel       # SDL3+Wayland: Keyboard mapping
mesa-libGL-devel         # OpenGL development headers (liboscar graphics renderer)
mesa-libEGL-devel        # OpenGL: Modern OpenGL windowing-system-independent graphics context support
mesa-libGLES-devel       # OpenGL: GLES support
mesa-dri-drivers         # OpenGL: Hardware/software rendering engines (incl. llvmpipe)
