void-linux / void-linux/void-packages

Package request: Stratagus, War1gus, and Wargus

Open
#37,632 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

request
Dominant language
Shell
Stars
3.4k
Forks
2.8k
Avg merge
2d 5h
Merged PRs (30d)
299

Description

Package name

Stratagus War1gus Wargus

Package homepage

https://github.com/Wargus/stratagus https://github.com/Wargus/war1gus https://github.com/Wargus/wargus

Description

Stratagus is a strategy game engine that is technically useful for game developers. More interestingly, it is the backbone for War1gus and Wargus, tools that extract the necessary data from 'Warcraft: Orcs and Humans' and 'Warcraft II' data files respectively . Stratagus makes it then possible to play Warcraft I and II on Linux systems without Dosbox or Wine. It also adds many improvements to the original games, making them enjoyable for a modern audience. I have already put together template files, but frankly, I don't feel too comfortable maintaining them myself. Below are my drafts:

Stratagus:

# Template file for 'stratagus'
pkgname=stratagus
version=3.2.0
revision=1
build_style=cmake
hostmakedepends="git"
makedepends="lua51-devel toluapp-devel SDL2-devel SDL2_image-devel SDL2_mixer-devel libgomp-devel libomp-devel libpng-devel libtheora-devel libmng-devel"
short_desc="Strategy game engine"
maintainer="Barbaross <cullenrss@gmail.com>"
license="GPL-2.0"
homepage="https://stratagus.com/stratagus.html"
distfiles="https://github.com/Wargus/stratagus/archive/refs/tags/v${version}.tar.gz"
checksum=6fef6934714b80fabd61fde97cff5f0918a20ca490fcff7adbcebc3e899a8bee

do_configure() {
    cmake ${wrksrc} \
    -DCMAKE_BUILD_TYPE=Release \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DGAMEDIR=/usr/bin \
    -DSBINDIR=/usr/bin \
    -DLUA_INCLUDE_DIR=/usr/include/lua5.1 \
    -Bbuild
}

do_build() {
    make -C build
}

do_install() {
    cd build
    make DESTDIR="${DESTDIR}" install
}

stratagus-devel_package() {
    short_desc+=" - development files"
    depends="${makedepends} ${sourcepkg}>=${version}_${revision}"
    pkg_install() {
        vmkdir /usr/include
        vcopy gameheaders/stratagus-game-launcher.h /usr/include
        vcopy gameheaders/stratagus-gameutils.h /usr/include
        vcopy gameheaders/stratagus-tinyfiledialogs.h /usr/include
    }
}

War1gus:

# Template file for 'war1gus'
pkgname=war1gus
version=3.2.0
revision=1
build_style=cmake
hostmakedepends="ImageMagick"
makedepends="stratagus-devel"
depends="stratagus ffmpeg innoextract libfluidsynth soundfont-fluid"
short_desc="Importer and scripts for Warcraft: Orcs and Humans"
maintainer="Barbaross <cullenrss@gmail.com>"
license="GPL-2.0"
homepage="https://stratagus.com/war1gus.html"
distfiles="https://github.com/Wargus/war1gus/archive/refs/tags/v${version}.tar.gz"
checksum=817223d88adda10ab4d62ac72b4aad2d767f5d31b0c614751e882fdea1b9f757

do_configure() {
    cmake "${wrksrc}" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DGAMEDIR=/usr/bin -Bbuild
}

do_build() {
    make -C build
}

do_install() {
    cd build
    make DESTDIR="${DESTDIR}" install
}

Wargus

# Template file for 'wargus'
pkgname=wargus
version=3.2.0
revision=1
build_style=cmake
hostmakedepends="pkg-config"
makedepends="libpng-devel bzip2-devel stratagus-devel"
depends="stratagus libcdparanoia ffmpeg libfluidsynth soundfont-fluid innoextract"
short_desc="Importer and scripts for Warcraft II: Tides of Darkness, the expansion Beyond the Dark Portal, and Aleonas Tales"
maintainer="Barbaross <cullenrss@gmail.com>"
license="GPL-2.0"
homepage="https://stratagus.com/"
distfiles="https://github.com/Wargus/wargus/archive/refs/tags/v${version}.tar.gz"
checksum=c75cf239772310c4c3e0cda3a7d0cecc835d64b7fa60e35db07e0a3a76edbc72

do_configure() {
    cmake "${wrksrc}" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DGAMEDIR=/usr/bin -Bbuild
}

do_build() {
    make -C build
}

do_install() {
    cd build
    make DESTDIR="${DESTDIR}" install
}

At the very least, I wanted to post these for posterity, just in case someone else like me comes along with a hankering for some adventuring in the World of Warcraft :)

Does the requested package meet the quality requirements?

Compiled

Is the requested package released?

Yes

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the proposed templates for stratagus, war1gus, and wargus, starting with their CMake settings, dependencies, checksums, and install steps. Build each package with the Void packaging workflow and confirm that all three templates install successfully with the stated dependencies.

Written by the indexing model from the issue text.

Assessment

Tech stack
cmake, shell
Domain
build-system, game-dev, tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.