Outils pour utilisateurs

Outils du site


jeux:env

Les variables d'environnement

Beaucoup de programmes ont recours aux variable d'environnement sous Linux pour recevoir des paramètres généraux.

La plupart des jeux utilisent SDL pour leur affichage. Et SDL utilise beaucoup de variables d'environnement…

Si vous rencontrer des lenteurs de la souris dans les jeux en plein écran (mais pas du tout en mode fenêtré), essayez ça:

export SDL_VIDEO_X11_DGAMOUSE=0

Pour que le son fonctionne correctement avec DOSEMU, j'ai dû installer une “font” de son MIDI :

yaourt -S soundfont-fluid-2-2

Puis installer fluidsynth :

yaourt -S fluidsynth

et le configurer :

[cyriac@m11xr2 ~]$ cat /etc/conf.d/fluidsynth
SOUND_FONT=/usr/share/soundfonts/FluidR3_GM2-2.sf2
AUDIO_DRIVER=pulseaudio
OTHER_OPTS='-m alsa_seq -r 48000'

Ensuite, c'est un peu la cata avec systemd : PulseAudio démarre en tant qu'utilisateur lambda, et FluidSynth va démarre en tant que root, ce qui fait que la communication ne passera pas. Le message “Failed to create PulseAudio connection” vous refroidira.

Pas de soucis ! Il “suffit” de lancer fluidsynth dans l'instance “utilisateur” de systemd ! (mais bien sûr…). On y va :

$ mkdir -p $HOME/.config/systemd/user
$ cd $HOME/.config/systemd/user
$ cp /usr/lib/systemd/system/fluidsynth.service .
$ sed -i 's/multi-user.target/default.target/' fluidsynth.service
$ systemctl --user enable fluidsynth.service
$ systemctl --user start fluidsynth.service

Elle est pas belle la vie ?

Enfin, préciser qu'un synthétiseur MIDI était disponible :

export ALSA_OUTPUT_PORTS="$(aplaymidi -l | grep Synth | cut -f1 -d' ')"

J'ai rassemblé tout ça dans mon .xinitrc, histoire que ces variables soient définies à chaque lancement de X. Voici donc la section “jeux” de mon .xinitrc (avec le chargement de xboxdrv en plus:

# For MIDI playback
export ALSA_OUTPUT_PORTS="$(aplaymidi -l | grep Synth | cut -f1 -d' ')"

# Disable mouse acceleration for fullscreen games
export SDL_VIDEO_X11_DGAMOUSE=0

# Xbox360 Wireless controller heaven -- two controllers supported w/hotplug
sudo xboxdrv --daemon --detach --pid-file /var/run/xboxdrv.pid --dbus disabled --trigger-as-button --dpad-as-button --next-controller --trigger-as-button --dpad-as-button &
jeux/env.txt · Dernière modification: 2015/08/14 00:41 par cyriac