Sommaire
La dépêche pour annoncer 0.A.D Alpha 24 est encore en rédaction pour l'instant. Et pour tester la nouvelle version et aussi pour contribuer à la dépêche, j'ai compilé cette version pour Debian Buster (cette version n'étant pas encore empaquetée pour Debian, mais la demande a été faite).
Idéalement vous attendriez la version de la distribution, mais si vous êtes pressés ET que vous ne voulez pas utiliser directement la version de l'éditeur, alors voici mes notes (principalement basées sur mon historique, donc il est possible qu'il faille légèrement adapter) :
De quoi compiler
On commence par installer pas mal de choses pour compiler, notamment ce qui est décrit dans les Build-Depends: du 0ad-0.0.23.1/debian/control , mais aussi certains paquets viennent du fait que je n'ai finalement pas utilisé le nvtt de la distribution ou des nouveautés de l'alpha 24.
$ sudo apt install autoconf debhelper dpkg-dev libboost-dev libboost-filesystem-dev libcurl4-gnutls-dev libenet-dev libgloox-dev libicu-dev libminiupnpc-dev libnspr4-dev libnvtt-dev libogg-dev libopenal-dev libpng-dev libsdl2-dev libsodium-dev libvorbis-dev libwxgtk3.0-gtk3-dev libxcursor-dev libxml2-dev pkg-config python2 python3 zlib1g-dev rustc cargo libfmt-dev cmake
Produire les binaires
On va préparer le répertoire pour produire le paquet 0ad (ie. chopper les sources de la dernière version chez l'éditeur et chez Debian, et réutiliser l'empaquetage Debian existant).
$ wget https://releases.wildfiregames.com/0ad-0.0.24b-alpha-unix-build.tar.xz
$ apt source 0ad
$ tar xvJf 0ad-0.0.24b-alpha-unix-build.tar.xz
$ cd 0ad-0.0.24b-alpha
$ cp -r ../0ad-0.0.23.1/debian .
Et appliquer quelques modifications : le changement de version de la libmozjs, la version de nvtt chez Debian insuffisante pour 0.A.D. et donc le recours à la version embarquée. Et pipeauter une version qui sera écrasée automatiquement lorsque le paquet sera officiellement disponible chez Debian (je créé volontairement une 0.0.23.2 au lieu d'une 0.0.24 pour cette raison).
diff -ru 0ad-0.0.23.1/debian/changelog 0ad-0.0.24b-alpha/debian/changelog
--- 0ad-0.0.23.1/debian/changelog 2020-08-18 11:48:00.000000000 +0200
+++ 0ad-0.0.24b-alpha/debian/changelog 2021-02-27 20:04:51.990191482 +0100
@@ -1,3 +1,8 @@
+0ad (0.0.23.2-42) unstable; urgency=medium
+ * Nope
+
+ -- Oumph <oumph@linuxfr.org> Sat, 27 Feb 2021 19:00:00 +0100
+
0ad (0.0.23.1-5) unstable; urgency=medium
* Fix FTBFS with gcc-10. (Closes: #956967)
diff -ru 0ad-0.0.23.1/debian/install 0ad-0.0.24b-alpha/debian/install
--- 0ad-0.0.23.1/debian/install 2020-08-18 11:44:58.000000000 +0200
+++ 0ad-0.0.24b-alpha/debian/install 2021-02-27 20:48:49.677838721 +0100
@@ -1,8 +1,12 @@
binaries/data/l10n usr/share/games/0ad/
binaries/system/libAtlasUI.so usr/lib/games/0ad/
binaries/system/libCollada.so usr/lib/games/0ad/
-binaries/system/libmozjs38-ps-release.so usr/lib/games/0ad/
+binaries/system/libmozjs78-ps-release.so usr/lib/games/0ad/
binaries/system/ActorEditor usr/lib/games/0ad/
+binaries/system/libnvtt.so usr/lib/games/0ad/
+binaries/system/libnvcore.so usr/lib/games/0ad/
+binaries/system/libnvimage.so usr/lib/games/0ad/
+binaries/system/libnvmath.so usr/lib/games/0ad/
binaries/system/pyrogenesis usr/games/
build/resources/0ad.appdata.xml usr/share/appdata/
build/resources/0ad.desktop usr/share/applications/
diff -ru 0ad-0.0.23.1/debian/rules 0ad-0.0.24b-alpha/debian/rules
--- 0ad-0.0.23.1/debian/rules 2020-08-18 11:48:00.000000000 +0200
+++ 0ad-0.0.24b-alpha/debian/rules 2021-02-27 20:37:20.006952703 +0100
@@ -37,8 +37,8 @@
--bindir=/usr/games \
--libdir=/usr/lib/games/0ad \
--datadir=/usr/share/games/0ad \
- --with-system-nvtt \
-j$(PARALLEL_JOBS)
+#OUMPH --with-system-nvtt
$(MAKE) config=release verbose=1 -C build/workspaces/gcc \
-j$(PARALLEL_JOBS)
Reste juste à compiler/produire les paquets :
$ fakeroot debian/rules binary
$ ls -l 0ad_0.0.23.2*deb
-rw-r--r-- 1 1000 1000 7573344 27 févr. 20:51 0ad_0.0.23.2-42_amd64.deb
-rw-r--r-- 1 1000 1000 213483228 27 févr. 20:51 0ad-dbgsym_0.0.23.2-42_amd64.deb
Produire le paquet des données du jeu
$ apt source 0ad-data
$ mkdir 0ad-0.0.24b-alpha-data
$ cd 0ad-0.0.24b-alpha-data
$ tar ../xvJf 0ad-0.0.24b-alpha-unix-data.tar.xz
$ mv 0ad-0.0.24b-alpha/binaries .
$ diff -ru 0ad-data-0.0.23.1/debian/changelog 0ad-0.0.24b-alpha-data/debian/changelog
--- 0ad-data-0.0.23.1/debian/changelog 2021-01-01 16:24:47.000000000 +0100
+++ 0ad-0.0.24b-alpha-data/debian/changelog 2021-02-27 19:58:48.969725405 +0100
@@ -1,3 +1,8 @@
+0ad-data (0.0.23.2-42) unstable; urgency=medium
+ * Nope
+
+ -- Oumph <oumph@linuxfr.org> Sat, 27 Feb 2021 19:00:00 +0100
+
0ad-data (0.0.23.1-1.1) unstable; urgency=medium
* Non maintainer upload by the Reproducible Builds team.
$ fakeroot debian/rules binary
$ ls -l 0ad-data_0.0.23.2*deb
-rw-r--r-- 1 1000 1000 843483732 27 févr. 20:25 0ad-data_0.0.23.2-42_all.deb
-rw-r--r-- 1 1000 1000 778544 27 févr. 20:25 0ad-data-common_0.0.23.2-42_all.deb
Reste à installer les paquets 0ad, 0ad-data et 0ad-data-common, et on peut tester cette nouvelle version.
$ sudo dpkg -i 0ad_0.0.23.2-42_amd64.deb 0ad-data_0.0.23.2-42_all.deb 0ad-data-common_0.0.23.2-42_all.deb
# Numéro de version
Posté par vv222 . Évalué à 10.
P'tite astuce pour le numéro de version :
0.0.23
<0.0.24~
<0.0.24
Tu peux mettre ce que tu veux derrière ce
~
, chiffres comme lettres.Un exemple classique serait par exemple :
0.0.24~rc1
.# Gestion des dépendances de compilation
Posté par vv222 . Évalué à 10. Dernière modification le 28 février 2021 à 20:14.
Une commande très pratique que j'ai adopté depuis peu de temps quand je construis des paquets depuis les sources sur Debian :
mk-build-deps
(fourni par devscripts).Un exemple tout bête :
Le gros avantage étant le nettoyage simplifié quand on veut se débarrasser de toutes ces bibliothèques de développement :
# Merci!
Posté par play0ad . Évalué à 3.
Merci beaucoup pour ce tuto j'espère que ça aidera certain(e)s a s'amuser avant l'heure. Pour l'instant peu de distros supportent la nouvelle alpha.
https://repology.org/badge/vertical-allrepos/0ad.svg
[^] # Re: Merci!
Posté par Cyprien (site web personnel) . Évalué à 4.
Sinon, il est sur flatHub : https://www.flathub.org/apps/details/com.play0ad.zeroad
[^] # Re: Merci!
Posté par Alcyone . Évalué à 2.
Petit point quand même, le FlatPack n'est pas officiel (listé sur la page dédiée avec disclaimer).
Alcyone
[^] # Re: Merci!
Posté par Cyprien (site web personnel) . Évalué à 2. Dernière modification le 02 mars 2021 à 10:20.
Merci pour l'info !
Bon, je l'ai installé et il fonctionne bien. Mais je re-basculerais sur les dépôts lorsqu'il sera à nouveau présent.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.