Mass bug filing / call for testing: dependencies on SDL 1.2

Simon McVittie <[email protected]>
Newsgroups gmane.linux.debian.devel.games,gmane.linux.debian.devel.general
Message-ID <ZIdGo/[email protected]>
SDL 1.2 was superseded by SDL 2 several years ago, and no longer receives
upstream maintenance or releases. Maintained software that uses SDL 1.2
should be ported to SDL 2.

For legacy software that cannot be ported, SDL upstream have produced a
replacement library, sdl12-compat, which implements the SDL 1.2 API/ABI
by dlopening SDL 2 (and correcting for API/ABI changes). In Debian, this
is currently available as libsdl1.2-compat-shim.

Some other distributions like Fedora and Arch have fully replaced their
"classic" SDL 1.2 libraries with sdl12-compat, and I would like to do
the same in Debian during the trixie release cycle (which will probably
involve taking over the libsdl1.2debian and libsdl1.2-dev package names).
Since all SDL 1.2 applications will get one of these bug reports, we might
as well also use those bug reports as a prompt to ask maintainers to
test against libsdl1.2-compat-shim.

I did some brief testing on the remaining SDL 1.2 games in bookworm as
part of some work on helping upstream with sdl12-compat, and many of
them work as-is or after adding bug fixes or workarounds to sdl12-compat.
I was not able to do thorough testing (I generally played the tutorial or
first level, if applicable), and for a few more opaque games I couldn't
work out how to test gameplay at all.

In general I wasn't able to test non-game applications that depend on
SDL 1.2 (mostly emulators and music production software), because I
didn't have the necessary ROMs, time or knowledge.

For libraries that extend SDL 1.2 (sdl-image1.2 and so on), the bug
about depending on SDL 1.2 is likely to have to be "won't fix" because
it would be an API/ABI break to move to SDL 2, but in many cases there
are equivalent libraries with a very similar API available for SDL 2.

Here's a template bug mail:

-------------------------------- 8< -----------------------------------

This package has a Depends or Build-Depends on SDL version 1.2, which
is unmaintained upstream.

If possible, please port this package to SDL 2 and close this
bug. Examples of successful ports from SDL 1.2 to SDL 2 can be found in
the commit history of packages like darkplaces and ioquake3.

If it is not possible to port to SDL 2, please test the package with
libsdl1.2-compat-shim (preferably version 1.2.64 or later), and leave
this bug open to track the package as still using SDL 1.2 APIs.

libsdl1.2-compat-shim is a compatibility layer that provides the SDL 1.2
API/ABI by using SDL 2: it has already replaced the "classic" SDL 1.2
library in some other distributions like Fedora and Arch, and my intention
is to do the same in Debian during the trixie release cycle.

The interesting scenarios to test with libsdl1.2-compat-shim are:

1. Install libsdl1.2-compat-shim and run the program in an X11 environment,
   such as "GNOME on Xorg" or XFCE.
   ($XDG_RUNTIME_DIR/wayland-* should not exist)
2. Install libsdl1.2-compat-shim and run the program in a Wayland
   environment such as GNOME's default mode, using Xwayland.
   ($XDG_RUNTIME_DIR/wayland-* should exist)
3. Install libsdl1.2-compat-shim and run the program in a Wayland
   environment, but this time with environment variable
   SDL_VIDEODRIVER=wayland so that it uses the native Wayland interface
   (this is not currently the default for SDL 2).
4. Install libsdl1.2-compat-dev and recompile the package.

If any of those fail, please report it as a bug in the
libsdl1.2-compat-shim or libsdl1.2-compat-dev package as appropriate,
with "affects" pointing to the program that is affected.

-------------------------------- 8< -----------------------------------

dd-list of affected packages attached.

Thanks,
    smcv
dd-list (text/plain, 16.9 KB)
A Mennucc1 <[email protected]>
   mplayer (U)

A. Maitland Bottoms <[email protected]>
   gnuradio

Adrian Bunk <[email protected]>
   black-box

Adrien Boussicault <[email protected]>
   mlv

Agustin Henze <[email protected]>
   crrcsim

Alberto Garcia <[email protected]>
   fuse-emulator

Alessio Treglia <[email protected]>
   din (U)
   libde265 (U)
   meterbridge (U)
   xjadeo (U)

Alexander Lazarević <[email protected]>
   gnu-smalltalk (U)

Alexandre Detiste <[email protected]>
   game-data-packager (U)

Alfonso Sabato Siciliano <[email protected]>
   openssn (U)

Ana Custura <[email protected]>
   vor

Andrea Colangelo <[email protected]>
   tennix

Andreas B. Mundt <[email protected]>
   tiemu (U)

Andreas Beckmann <[email protected]>
   povray

Andreas Gnau <[email protected]>
   icebreaker (U)

Ansgar Burchardt <[email protected]>
   btanks (U)

Antonin Kral <[email protected]>
   atari800

Ari Pollak <[email protected]>
   gav
   gltron

Axel Beckert <[email protected]>
   links2

Balint Reczey <[email protected]>
   taoframework (U)

Barak A. Pearlmutter <[email protected]>
   basic256
   gtkboard

Barry deFreese <[email protected]>
   amphetamine (U)
   bloboats (U)
   brutalchess (U)
   btanks (U)
   dd2 (U)
   late (U)
   mu-cade (U)
   netpanzer (U)
   pathogen (U)
   titanion (U)
   tumiki-fighters (U)

Barry deFreese <[email protected]>
   airstrike (U)
   alienblaster (U)
   asc (U)
   barrage (U)
   biniax2 (U)
   boswars (U)
   ceferino (U)
   clanlib (U)
   enemylines3 (U)
   fenix (U)
   fenix-plugins (U)
   gravitywars (U)
   hex-a-hop (U)
   holotz-castle (U)
   ketm (U)
   mousetrap (U)
   netrek-client-cow (U)
   nikwi (U)
   plee-the-bear (U)
   powermanga (U)
   qonk (U)
   raincat (U)
   ri-li (U)
   sdlbasic (U)
   tecnoballz (U)
   xmoto (U)

Bart Martens <[email protected]>
   einstein

Bartosz Fenski <[email protected]>
   asc (U)
   csmash

Bas Wijnen <[email protected]>
   ceferino (U)
   gnujump (U)

Bastian Germann <[email protected]>
   gambas3 (U)

Bastian Germann <[email protected]>
   gambas3 (U)

Benjamin Drung <[email protected]>
   vlc (U)

Bertrand Marc <[email protected]>
   pingus (U)

Boris Pek <[email protected]>
   astromenace (U)

Boyuan Yang <[email protected]>
   zatacka (U)

Brandon Barnes <[email protected]>
   komi

Bruno "Fuddl" Kleinert <[email protected]>
   micropolis-activity (U)

Bruno Kleinert <[email protected]>
   scorched3d (U)

Chris Boyle <[email protected]>
   crack-attack

Chris Carr <[email protected]>
   angband

Christian T. Steigies <[email protected]>
   bugsquish
   bumprace
   circuslinux
   gemdropx
   luola
   madbomber
   vectoroids

Christoph Egger <[email protected]>
   irrlicht (U)
   primrose (U)
   xwelltris (U)

Christophe Mutricy <[email protected]>
   vlc (U)

Colin Tuckley <[email protected]>
   brandy
   lbreakout2 (U)
   ltris

Colin Watson <[email protected]>
   grub2 (U)

Cédric Boutillier <[email protected]>
   ruby-sdl (U)

Damyan Ivanov <[email protected]>
   fillets-ng (U)
   kobodeluxe (U)
   reminiscence (U)

Daniel Echeverry <[email protected]>
   njam

Daniel James <[email protected]>
   xwax (U)

Daniel Silverstone <[email protected]>
   netsurf (U)

Dariusz Dwornikowski <[email protected]>
   penguin-command (U)
   pipenightdreams (U)

David Banks <[email protected]>
   game-data-packager (U)

David da Silva Polverari <[email protected]>
   pipewalker

Davide Puricelli (evo) <[email protected]>
   gnuboy

Debian Astro Maintainers <[email protected]>
   gravit

Debian CLI Libraries Team <[email protected]>
   taoframework

Debian Erlang Packagers <[email protected]>
   esdl

Debian Gambas Team <[email protected]>
   gambas3

Debian Games Team <[email protected]>
   a7xpg
   abe
   airstrike
   alienblaster
   amoebax
   amphetamine
   ares
   armagetronad
   asc
   astromenace
   asylum
   ballerburg
   barrage
   berusky
   berusky2
   between
   biniax2
   bloboats
   blockout2
   blocks-of-the-undead
   boswars
   brainparty
   briquolo
   brutalchess
   btanks
   burgerspace
   ceferino
   clanlib
   cytadela
   dangen
   dd2
   desmume
   enemylines3
   enemylines7
   etw
   fenix
   fenix-plugins
   fillets-ng
   flatzebra
   foobillardplus
   freedroidrpg
   freegish
   frogatto (U)
   game-data-packager
   gngb
   gnujump
   gnurobbo
   gravitation
   gravitywars
   gunroar
   heroes
   hex-a-hop
   holotz-castle
   icebreaker
   ii-esu
   irrlicht
   ketm
   kobodeluxe
   late
   lbreakout2
   lgeneral
   lierolibre
   lincity-ng
   meritous
   micropolis-activity
   mousetrap
   mu-cade
   netpanzer
   netrek-client-cow
   nikwi
   noiz2sa
   opencity
   openjazz
   openssn
   parsec47
   passage
   pathogen
   penguin-command
   phlipple
   pingus
   pink-pony
   pipenightdreams
   plee-the-bear
   pokerth
   pong2
   powder
   powermanga
   primrose
   projectl
   pushover
   qonk
   raincat
   reminiscence
   ri-li
   rott
   rrootage
   scorched3d
   sdl-ball
   sdlbasic
   slashem
   slimevolley
   sludge
   supertransball2
   tatan
   tecnoballz
   tenmado
   titanion
   torus-trooper
   triplane
   tumiki-fighters
   tuxfootball
   tuxpuck
   tworld
   val-and-rick
   viruskiller
   visualboyadvance
   vodovod
   warmux
   wolf4sdl
   xmoto
   xwelltris
   xye
   zatacka
   zaz
   zsnes

Debian GNU Smalltalk maintainers <[email protected]>
   gnu-smalltalk

Debian Haskell Group <[email protected]>
   haskell-sdl
   haskell-sdl-gfx
   haskell-sdl-image
   haskell-sdl-mixer
   haskell-sdl-ttf

Debian Multimedia Maintainers <[email protected]>
   cheesecutter
   din
   freewheeling
   gem
   hivelytracker
   libde265
   libquicktime
   libtheora
   lmms
   mjpegtools
   mpeg2dec
   mplayer
   pdp
   tiatracker
   vlc
   xjadeo
   xwax

Debian Multimedia Maintainers <[email protected]>
   meterbridge
   sfxr-qt

Debian Multimedia Packages Maintainers <[email protected]>
   goattracker

Debian OCaml Maintainers <[email protected]>
   freetennis
   ocamlsdl

Debian Perl Group <[email protected]>
   frozen-bubble
   libalien-sdl-perl
   libsdl-perl

Debian QA Group <[email protected]>
   achilles
   adlibtracker2
   adplay
   antigrav
   blobandconquer
   csmash
   devil
   fische
   gl-117
   glhack
   glob2
   libdv
   libvisual
   mazeofgalious
   moon-lander
   mp3blaster
   starvoyager
   tdfsb
   wizznic
   xine-lib-1.2
   xmms2
   zatacka

Debian Ruby Extras Maintainers <[email protected]>
   ruby-sdl

Debian Ruby Team <[email protected]>
   ruby-sdl

Debian Science Maintainers <[email protected]>
   critterding
   tiemu

Debian SDL packages maintainers <[email protected]>
   libsdl-console
   libsdl-sge
   sdl-image1.2
   sdl-mixer1.2
   sdl-net1.2
   sdl-sound1.2
   sdl-ttf2.0
   sdlgfx
   sdlpango
   smpeg

Debian Virtualbox Team <[email protected]>
   virtualbox

Deepak Tripathi <[email protected]>
   ruby-sdl (U)

Dennis Braun <[email protected]>
   lmms (U)
   xwax (U)

Dennis Braun <[email protected]>
   din (U)
   freewheeling (U)
   lmms (U)

Dmitry E. Oboukhov <[email protected]>
   blockout2 (U)
   frogatto

Dmitry Smirnov <[email protected]>
   brainparty (U)
   d1x-rebirth
   d2x-rebirth
   freespace2
   t4kcommon (U)
   tuxmath (U)

Dominique Dumont <[email protected]>
   frozen-bubble (U)
   libalien-sdl-perl (U)
   libsdl-perl (U)

Dylan R. E. Moonfire <[email protected]>
   taoframework (U)

Edgar Antonio Palma de la Cruz <[email protected]>
   dgen

Edward Wang <[email protected]>
   din (U)
   vlc (U)

Elías Alejandro Año Mendoza <[email protected]>
   jigzo

Emmanuel Arias <[email protected]>
   cuyo

Emmanuel Arias <[email protected]>
   libopenhmd

Erich Schubert <[email protected]>
   enigma

Etienne Millon <[email protected]>
   visualboyadvance (U)
   zsnes (U)

Evgeni Golov <[email protected]>
   blocks-of-the-undead (U)
   desmume (U)
   gnujump (U)
   pokerth (U)
   rott (U)
   sdl-ball (U)

Fabian Greffrath <[email protected]>
   wolf4sdl (U)
   zsnes (U)

Fabian Greffrath <[email protected]>
   openjazz (U)
   rott (U)

Felix Geyer <[email protected]>
   sdl-image1.2 (U)
   sdlgfx (U)
   sdlpango (U)
   warmux (U)

Felix Zielcke <[email protected]>
   grub2 (U)

Gabriele Giacone <[email protected]>
   critterding (U)

Gianfranco Costamagna <[email protected]>
   virtualbox (U)

Gonéri Le Bouder <[email protected]>
   barrage (U)
   plee-the-bear (U)

GRUB Maintainers <[email protected]>
   grub2

gustavo panizzo <[email protected]>
   uhexen2

Guus Sliepen <[email protected]>
   blobandconquer

Gürkan Myczko <[email protected]>
   adlibtracker2
   ballerburg (U)
   cheesecutter (U)
   goattracker (U)
   hivelytracker (U)
   netsurf (U)
   powder (U)
   pushover (U)
   tiatracker (U)

Gürkan Myczko <[email protected]>
   ballerburg (U)
   cheesecutter (U)
   hivelytracker (U)
   netsurf (U)
   sfxr-qt (U)

Holger Levsen <[email protected]>
   t4kcommon
   tuxmath
   tuxtype

Ian Haywood <[email protected]>
   gambas3 (U)

IOhannes m zmölnig (Debian/GNU) <[email protected]>
   gem (U)
   libquicktime (U)
   pdp (U)

Israel Dahl <[email protected]>
   lmms (U)

Jack Coulter <[email protected]>
   game-data-packager (U)

Jaromír Mikeš <[email protected]>
   meterbridge (U)
   xjadeo (U)

Javier Galicia <[email protected]>
   late (U)

Javier Serrano Polo <[email protected]>
   lmms (U)

Jens Seidel <[email protected]>
   hex-a-hop (U)

Joachim Bauch <[email protected]>
   libde265 (U)

Joerg Jaspert <[email protected]>
   epiphany

John Horigan <[email protected]>
   agg

John Paul Adrian Glaubitz <[email protected]>
   aranym
   kcemu
   virtualjaguar

Jon Dowland <[email protected]>
   rott (U)

Jonathan Dowland <[email protected]>
   game-data-packager (U)

Jordi Mallach <[email protected]>
   grub2 (U)

José L. Redrejo Rodríguez <[email protected]>
   gambas3 (U)

Julian Andres Klode <[email protected]>
   grub2 (U)

Julien Jorge <[email protected]>
   plee-the-bear (U)

Julien Puydt <[email protected]>
   freedroidrpg (U)
   irrlicht (U)

Kari Pahula <[email protected]>
   crossfire-client
   gearhead
   gearhead2

Kees Cook <[email protected]>
   orbital-eunuchs-sniper

Leo Costela <[email protected]>
   numptyphysics

Loic Minier <[email protected]>
   libquicktime (U)
   vlc (U)

Lorenzo Puliti <[email protected]>
   mplayer (U)

Luboš Novák <[email protected]>
   freegish (U)

Luke Faraone <[email protected]>
   tempest-for-eliza

Magnus Holmgren <[email protected]>
   pike8.0

Manuel A. Fernandez Montecelo <[email protected]>
   libsdl-console (U)
   libsdl-sge (U)
   sdl-image1.2 (U)
   sdl-mixer1.2 (U)
   sdl-net1.2 (U)
   sdl-sound1.2 (U)
   sdl-ttf2.0 (U)
   sdlgfx (U)
   sdlpango (U)
   smpeg (U)

Marc Dequènes (Duck) <[email protected]>
   boswars (U)

Margarita Manterola <[email protected]>
   hannah

Markus Koschany <[email protected]>
   abe (U)
   airstrike (U)
   amoebax (U)
   armagetronad (U)
   asc (U)
   berusky (U)
   berusky2 (U)
   brainparty (U)
   briquolo (U)
   burgerspace (U)
   dangen (U)
   enemylines7 (U)
   etw (U)
   flatzebra (U)
   foobillardplus (U)
   lgeneral (U)
   lincity-ng (U)
   njam (U)
   noiz2sa (U)
   opencity (U)
   powermanga (U)
   ri-li (U)
   supertransball2 (U)
   tecnoballz (U)
   tenmado (U)
   tuxpuck (U)

Martin A. Godisch <[email protected]>
   pachi
   rockdodger

Martin Erik Werner <[email protected]>
   lierolibre (U)

Martin Quinson <[email protected]>
   frogatto (U)

Martin Steghöfer <[email protected]>
   libtheora (U)

Martín Ferrari <[email protected]>
   qonk (U)

Mateusz Łukasik <[email protected]>
   vlc (U)

Matija Nalis <[email protected]>
   ironseed

Mehdi Dogguy <[email protected]>
   freetennis (U)

Michael Gilbert <[email protected]>
   amphetamine (U)

Michele Martone <[email protected]>
   fim

Miguel A. Colón Vélez <[email protected]>
   mplayer (U)

Miriam Ruiz <[email protected]>
   a7xpg (U)
   biniax2 (U)
   btanks (U)
   ceferino (U)
   fenix (U)
   fenix-plugins (U)
   gunroar (U)
   haskell-sdl (U)
   haskell-sdl-gfx (U)
   haskell-sdl-image (U)
   haskell-sdl-mixer (U)
   haskell-sdl-ttf (U)
   hex-a-hop (U)
   holotz-castle (U)
   ii-esu (U)
   micropolis-activity (U)
   mu-cade (U)
   parsec47 (U)
   pingus (U)
   raincat (U)
   rrootage (U)
   sdlbasic (U)
   tatan (U)
   titanion (U)
   torus-trooper (U)
   tumiki-fighters (U)
   val-and-rick (U)
   vodovod (U)
   xmoto (U)

Miriam Ruiz <[email protected]>
   nikwi (U)
   phlipple (U)
   pink-pony (U)
   projectl (U)
   zaz (U)

Mitchell Smith <[email protected]>
   xwax (U)

Mohammed Adnène Trojette <[email protected]>
   vlc (U)

Moritz Muehlenhoff <[email protected]>
   alienblaster (U)

Nicolas Mora <[email protected]>
   motion

Ola Lundqvist <[email protected]>
   gngb (U)

Pascal Giard <[email protected]>
   desmume (U)

Patrick Matthäi <[email protected]>
   criticalmass
   guichan
   mlt
   xine-lib-1.2

Paul Brossier <[email protected]>
   freewheeling
   gem (U)
   pdp (U)

Paul van Tilburg <[email protected]>
   ruby-sdl (U)

Paul Wise <[email protected]>
   between (U)
   gravitation (U)
   hex-a-hop (U)
   mokomaze
   passage (U)
   primrose (U)

Peter De Wachter <[email protected]>
   a7xpg (U)
   asylum (U)
   gunroar (U)
   ii-esu (U)
   mu-cade (U)
   parsec47 (U)
   projectl (U)
   rrootage (U)
   tatan (U)
   titanion (U)
   torus-trooper (U)
   tumiki-fighters (U)
   val-and-rick (U)

Peter Pentchev <[email protected]>
   fenix (U)
   fenix-plugins (U)

Peter Pentchev <[email protected]>
   phlipple (U)

Peter Spiess-Knafl <[email protected]>
   bomberclone

Petter Reinholdtsen <[email protected]>
   libtheora (U)
   lmms (U)

Phil Brooke <[email protected]>
   searchandrescue

Philippe Coval <[email protected]>
   pinball-table-gnu
   pinball-table-hurd

Rafael Laboissière <[email protected]>
   fim (U)

Ralph Giles <[email protected]>
   libtheora (U)

Reinhard Tartler <[email protected]>
   libquicktime (U)
   mjpegtools (U)
   mplayer (U)
   pong2 (U)
   scorched3d (U)
   vlc (U)

Rhonda D'Vine <[email protected]>
   fillets-ng (U)
   tworld (U)

Ricardo Mones <[email protected]>
   biloba
   epiphany (U)

Richard Ulrich <[email protected]>
   laserboy

Ritesh Raj Sarraf <[email protected]>
   virtualbox (U)

Robert Lemmen <[email protected]>
   noiz2sa

Ross Gammon <[email protected]>
   lmms (U)

Sam Hocevar (Debian packages) <[email protected]>
   amphetamine (U)
   gravitywars (U)
   mpeg2dec (U)
   smpeg (U)

Sam Hocevar <[email protected]>
   asc (U)
   clanlib (U)
   hex-a-hop (U)
   ketm (U)
   nikwi (U)
   powermanga (U)
   taoframework (U)

Samuel Henrique <[email protected]>
   tomatoes

Samuel Mimram <[email protected]>
   xmoto (U)

Samuel Thibault <[email protected]>
   mlv (U)

Sarah COUDERT <[email protected]>
   miceamaze

Scott Leggett <[email protected]>
   spout

Sebastian Dröge <[email protected]>
   taoframework (U)

Sebastian Ramacher <[email protected]>
   vlc (U)

Sebastien CHAVAUX <[email protected]>
   xsoldier

Sergei Golovan <[email protected]>
   esdl (U)

Simon McVittie <[email protected]>
   game-data-packager (U)

Simon Tatham <[email protected]>
   chroma

Stephen Kitt <[email protected]>
   brandy
   dosbox
   gnurobbo (U)
   heroes (U)
   xmoto (U)
   xye (U)

Stephen M. Webb <[email protected]>
   viruskiller (U)

Steve McIntyre <[email protected]>
   grub2 (U)

Stu Teasdale <[email protected]>
   ri-li (U)

Stéphane Glondu <[email protected]>
   ocamlsdl (U)

Sven Bartscher <[email protected]>
   dwarf-fortress

Sylvain Beucler <[email protected]>
   cytadela (U)
   meritous (U)

TANIGUCHI Takaki <[email protected]>
   tuxfootball (U)

Teemu Hukkanen <[email protected]>
   virtualjaguar (U)

Thomas Girard <[email protected]>
   gnu-smalltalk (U)

Timo Juhani Lindfors <[email protected]>
   triplane (U)

Tobias Hansen <[email protected]>
   ares (U)
   sludge (U)

Tomasz Buchert <[email protected]>
   gravit (U)

Uwe Hermann <[email protected]>
   crimson
   flobopuyo
   lmarbles

Vincent Cheng <[email protected]>
   frogatto (U)
   irrlicht (U)
   openssn (U)
   slashem (U)

Vincent Duvert (VinDuv) <[email protected]>
   slimevolley (U)

Vincent Fourmond <[email protected]>
   a7xpg (U)
   mu-cade (U)

Vincent Legout <[email protected]>
   brutalchess (U)

Vincent Sanders <[email protected]>
   netsurf

Ximin Luo <[email protected]>
   motion

Yann Dirson <[email protected]>
   dossizola
   freedroid

Ying-Chun Liu (PaulLiu) <[email protected]>
   avifile
   onscripter
   rlvm

Youhei SASAKI <[email protected]>
   ruby-sdl (U)

Zorian Medwid <[email protected]>
   edgar
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.