Skip to content

nickgirga/chocolate-box

Repository files navigation

Chocolate Box

logo Simple GUI for Chocolate DOOM (and other DOOM source ports)

Features

  • Stores paths to IWADs
  • Stores paths to PWADs
  • Supports numerous source ports
  • Stores path to preferred source port along with IWAD
    • Allows custom executable paths
    • Allows you to override the stored source port path temporarily
  • Supports -file and -merge modifications
  • Keyboard shortcuts for quick navigation
  • Provides a unified interface for all of your DOOM setups
    • This is useful if you want to share a controller scheme across multiple source ports using Steam Input

Note: The -merge feature will only work with source ports that support it (e.g. Chocolate DOOM). You can find more information about the -merge feature in Chocolate DOOM here.

Looking for Releases?

We will be utilizing GitLab releases to distribute versioned releases and GitLab CI for nightly releases built for Arch, Debian, and Ubuntu.

What does that mean for you as a user? Looking for official releases (easy)? Go to releases. Looking for bleeding edge development builds (advanced)? Go to CI pipelines.

Releases will typically be distributed as Arch or Debian-based packages ([package_name].pkg.tar.zst or [package_name].deb). This means that you should be able to easily install it with your package manager and it will automatically install the dependencies that you need (Arch/Debian).

If for whatever reason the packages are not suitable for you, see the Don't Want to Install? section.

Don't Want to Install?

Chocolate Box is just a Python script that uses PyGObject to draw GTK3 widgets. That means you can use it without installing the package itself or building anything.

It currently doesn't have any dependencies aside from the tools used to draw widgets: gtk3 and python-gobject (these are package names for Arch Linux). You will also need python to interpret the script. Chocolate Box was developed using Python 3.10, but it may work using other versions. Once dependencies are installed, just run ./chocolate-box or python3 chocolate-box in the project's root directory. You can find more information about obtaining the needed resources/dependencies or even building your own package in the README.md for the build tools that are most compatible with your system and the build scripts themselves, be it a PKGBUILD or a shell script for MSYS2.

To recap in an easily readable format, these are the packages you will need in order to run Chocolate Box without installing it:

  • python
  • gtk3
  • python-gobject

On Arch Linux? Quickly install these dependencies with this command (as root):

pacman -Sy --needed python gtk3 python-gobject

On Debian? Quickly install these dependencies with these commands (as root):

apt update && apt install -y python3 libgtk-3-dev python3-gi

Need Some Help?

Head over to the Wiki for more information about how to use Chocolate Box.