[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#779506: per-protocol virtual packages for boardgame AI engines and GUI



Package: debian-policy
Severity: wishlist

Following the short discussion starting at [1], I'm submitting the
following list of virtual packages, to facilitate the declaration of
protocol compatibility between boardgame AI engines, boardgame GUI's
and protocol adapters:

* cecp-game-engine
* cecp-game-ui
* uci-game-engine
* uci-game-ui
* xshogi-game-engine
* xshogi-game-ui
* gtp2-game-engine
* gtp2-game-ui

As explained in the discussion, there are other protocols in use, but
used only by one pair of packages each, so we may want to defer
addition of those protocols until new packages using them arrive.

Here is an example use of such virtual packages, which makes use of
the rarely used protocols:

| Engines would declare eg:
|  Package: gpsshogi
|  Provides: csa-game-engine, usi-game-engine
|  Recommends: $PREFERED_UI | csa-game-ui | usi-game-ui
| 
| And GUIs would similarly declare eg:
|  Package: XBoard
|  Provides: cecp-game-ui
|  Recommends: $PREFERED_ENGINE | cecp-game-engine
| 
| And adaptors:
|  Package: uci2wb
|  Provides: cecp-game-engine, uci-game-ui, usi-game-ui, ucci-game-ui
|  Recommends: $PREFERED_UI | cecp-game-ui,
|              $PREFERED_ENGINE | uci-game-engine | usi-game-engine | ucci-game-engine

If we only standardize the above list, the example becomes as follow,
which does not look too bad:

| Engines would declare eg:
|  Package: gpsshogi
|  Recommends: uci2wb
| 
| And GUIs would similarly declare eg:
|  Package: XBoard
|  Provides: cecp-game-ui
|  Recommends: $PREFERED_ENGINE | cecp-game-engine
| 
| And adaptors:
|  Package: uci2wb
|  Provides: cecp-game-engine, uci-game-ui
|  Recommends: $PREFERED_UI | cecp-game-ui,
|              gpsshogi | eleeye


[1] http://lists.alioth.debian.org/pipermail/pkg-games-devel/2015-February/033607.html


-- System Information:
Debian Release: 8.0
  APT prefers testing
  APT policy: (990, 'testing'), (500, 'unstable'), (500, 'stable'), (101, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.16.0-4-amd64 (SMP w/4 CPU cores)
Locale: LANG=C, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Init: systemd (via /run/systemd/system)


Reply to: