Compare commits

...
Sign in to create a new pull request.

36 commits

Author SHA1 Message Date
Fedora Release Engineering
44bc804c70 Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild 2026-07-17 09:24:47 +00:00
Hans de Goede
1ff72363e6 Use sysusers to create xpilot user for xpilot-ng-server (rhbz#2432687) 2026-02-02 11:07:02 +01:00
Hans de Goede
30c5cbb2c8 Fix FTBFS (rhbz#2341581, rhbz#2385745) 2026-01-24 19:06:10 +01:00
Fedora Release Engineering
dfbecd8848 Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild 2026-01-17 20:52:08 +00:00
Fedora Release Engineering
ae67c7fe92 Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild 2025-07-25 21:02:48 +00:00
Fedora Release Engineering
fa0961df1e Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild 2025-01-19 16:14:25 +00:00
Miroslav Suchý
145b89d8c1 convert GPLv2+ license to SPDX
This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4
2024-07-26 03:59:36 +02:00
Fedora Release Engineering
c09fc1c81e Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild 2024-07-20 10:24:58 +00:00
Fedora Release Engineering
95420e8f49 Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild 2024-01-27 10:06:04 +00:00
Florian Weimer
f24393bb22 Additional C compatibility fixes (#2155781) 2024-01-09 16:24:45 +01:00
Fedora Release Engineering
c88d59c02d Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-07-22 19:14:49 +00:00
Fedora Release Engineering
0111751ab4 Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2023-01-21 07:49:06 +00:00
Florian Weimer
503435cedf C99 port (#2155781); fix issue due to SDL_Window identifier conflict
Related to:

  <https://fedoraproject.org/wiki/Changes/PortingToModernC>
  <https://fedoraproject.org/wiki/Toolchain/PortingToModernC>
2022-12-22 11:56:26 +01:00
Fedora Release Engineering
543da5e2d0 Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-07-23 13:29:00 +00:00
Fedora Release Engineering
0073bc9cf9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2022-01-22 05:27:50 +00:00
Fedora Release Engineering
abd90bea62 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-07-23 21:54:37 +00:00
Fedora Release Engineering
572a101aba - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2021-01-28 00:21:31 +00:00
Tom Stellard
13205eaea0 Add BuildRequires: make
https://fedoraproject.org/wiki/Changes/Remove_make_from_BuildRoot
2021-01-09 01:36:31 +00:00
Fedora Release Engineering
db860f79aa - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-08-01 09:47:56 +00:00
Fedora Release Engineering
68afb68b6d - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-07-29 15:02:53 +00:00
Fedora Release Engineering
33e3a585cb - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2020-01-31 04:52:13 +00:00
Hans de Goede
917b4d6851 Drop libXxf86misc-devel BuildRequires, all #if HAVE_XF86MISC code was
commented out already, so this does not influence xpilot-ng behavior
Fix FTBFS (rhbz#1736985)
Drop script for converting old format maps, because it is Python 2 only
Fix a bunch of rpmlint warnings, ignore others
2019-08-10 21:50:22 +02:00
Fedora Release Engineering
58a65185d3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-07-27 04:36:07 +00:00
Hans de Goede
b72c9a38f2 Fix FTBFS (rhbz#1676250) 2019-02-23 17:00:57 +01:00
Fedora Release Engineering
0ca0d68e83 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2019-02-03 12:47:05 +00:00
794d10622d Remove obsolete Group tag
References: https://fedoraproject.org/wiki/Changes/Remove_Group_Tag
2019-01-28 20:24:56 +01:00
Fedora Release Engineering
6caed7d9c7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-07-14 09:33:18 +00:00
Igor Gnatenko
cfa958fd66 add BuildRequires: gcc
Reference: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot
2018-07-09 19:06:54 +02:00
Fedora Release Engineering
050f48c637 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-09 22:02:59 +00:00
12dcdabfe1 Remove obsolete scriptlets
Signed-off-by: Igor Gnatenko <ignatenkobrain@fedoraproject.org>
2018-01-18 22:54:24 +01:00
Fedora Release Engineering
f752a8ad6f - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild 2017-08-03 10:57:08 +00:00
Fedora Release Engineering
4561b124d2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild 2017-07-27 22:24:58 +00:00
Fedora Release Engineering
2dd172cd56 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild 2017-02-11 18:07:56 +00:00
Fedora Release Engineering
bac903e0f9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild 2016-02-05 03:48:12 +00:00
Hans de Goede
0d05c11dff Enable sound support
- Use systemd-rpm macros (rhbz#850373)
- Split out client data in a -data package, share it between client and server
- Split out libX11 client version into a -x11 package, drop .desktop for it
- Add appdata
2016-02-01 15:00:54 +01:00
Hans de Goede
ad32e9e998 Enable sound support
- Use systemd-rpm macros (rhbz#850373)
- Split out client data in a -data package, share it between client and server
- Split out libX11 client version into a -x11 package, drop .desktop for it
- Add appdata
2016-02-01 14:40:29 +01:00
16 changed files with 460 additions and 98 deletions

0
logwatch.script.xpilot Executable file → Normal file
View file

0
logwatch.shared.applyxpilotdate Executable file → Normal file
View file

View file

@ -1,5 +1,5 @@
--- src/server/score.c.orig 2006-10-20 11:38:01.000000000 -0700
+++ src/server/score.c 2006-10-20 12:44:30.000000000 -0700
--- a/src/server/score.c.orig 2006-10-20 11:38:01.000000000 -0700
+++ b/src/server/score.c 2006-10-20 12:44:30.000000000 -0700
@@ -257,9 +257,13 @@
sc = Rate(cannon->score, Get_Score(victim))
* options.cannonKillScoreMult;

View file

@ -0,0 +1,12 @@
--- xpilot-ng-4.7.3/configure.ac~ 2010-03-06 02:20:30.000000000 +0100
+++ xpilot-ng-4.7.3/configure.ac 2016-02-01 14:29:21.981049477 +0100
@@ -325,7 +325,8 @@ if test x$enable_sound = xyes; then
alut,
main,
[have_alut=yes],
- [])
+ [],
+ -lopenal)
if test x$have_openal = xyes; then
if test x$have_alut = xyes; then
have_sound=yes

View file

@ -0,0 +1,13 @@
diff --git a/src/client/sdl/scrap.c b/src/client/sdl/scrap.c
index e86beaff931d66e9..557e33f206f84d12 100644
--- a/src/client/sdl/scrap.c
+++ b/src/client/sdl/scrap.c
@@ -57,6 +57,8 @@ typedef uint32_t scrap_type;
#if defined(X11_SCRAP)
/* * */
static Display *SDL_Display;
+/* Avoid conflict with SDL_Window defined in <SDL/SDL_syswm.h>. */
+#define SDL_Window SDL_Window_variable
static Window SDL_Window;
static void (*Lock_Display)(void);
static void (*Unlock_Display)(void);

11
xpilot-ng-c23.patch Normal file
View file

@ -0,0 +1,11 @@
diff -up xpilot-ng-4.7.3/src/server/suibotdef.c~ xpilot-ng-4.7.3/src/server/suibotdef.c
--- xpilot-ng-4.7.3/src/server/suibotdef.c~ 2026-01-24 18:58:21.000000000 +0100
+++ xpilot-ng-4.7.3/src/server/suibotdef.c 2026-01-24 18:59:54.806510851 +0100
@@ -378,7 +378,6 @@ typedef struct {
} object_proximity_t;
-static bool Get_object_proximity();
static bool Get_object_proximity(player_t *pl, object_t *shot, double sqmaxdist,int maxtime, object_proximity_t *object_proximity){
/* get square of closest distance between player and object
* compare with sqmaxdist and maxtime and return sqdistance and time

View file

@ -0,0 +1,114 @@
diff --git a/src/mapedit/proto.h b/src/mapedit/proto.h
index b4f19f7d25cfe63d..d6222f5c7aa02e83 100644
--- a/src/mapedit/proto.h
+++ b/src/mapedit/proto.h
@@ -73,15 +73,15 @@ int NewMap(HandlerInfo_t info);
int ResizeWidth(HandlerInfo_t info);
int ResizeHeight(HandlerInfo_t info);
int OpenPreferencesPopup(HandlerInfo_t info);
-int OpenMapInfoPopup(void);
-int OpenRobotsPopup(void);
-int OpenVisibilityPopup(void);
-int OpenCannonsPopup(void);
-int OpenRoundsPopup(void);
-int OpenInitItemsPopup(void);
-int OpenMaxItemsPopup(void);
-int OpenProbsPopup(void);
-int OpenScoringPopup(void);
+int OpenMapInfoPopup(HandlerInfo_t info);
+int OpenRobotsPopup(HandlerInfo_t info);
+int OpenVisibilityPopup(HandlerInfo_t info);
+int OpenCannonsPopup(HandlerInfo_t info);
+int OpenRoundsPopup(HandlerInfo_t info);
+int OpenInitItemsPopup(HandlerInfo_t info);
+int OpenMaxItemsPopup(HandlerInfo_t info);
+int OpenProbsPopup(HandlerInfo_t info);
+int OpenScoringPopup(HandlerInfo_t info);
int ValidateCoordHandler(HandlerInfo_t info);
int ShowHoles(HandlerInfo_t info);
char MapData(int x, int y);
diff --git a/src/mapedit/tools.c b/src/mapedit/tools.c
index b99840a257dfa6f6..24a3ca0693e7bb02 100644
--- a/src/mapedit/tools.c
+++ b/src/mapedit/tools.c
@@ -747,7 +747,7 @@ int OpenPreferencesPopup(HandlerInfo_t info)
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenMapInfoPopup()
+int OpenMapInfoPopup(HandlerInfo_t info)
{
Window *temp;
@@ -790,7 +790,7 @@ int OpenMapInfoPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenRobotsPopup()
+int OpenRobotsPopup(HandlerInfo_t info)
{
XMapWindow(display, robots);
return 0;
@@ -801,7 +801,7 @@ int OpenRobotsPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenVisibilityPopup()
+int OpenVisibilityPopup(HandlerInfo_t info)
{
XMapWindow(display, visibility);
return 0;
@@ -812,7 +812,7 @@ int OpenVisibilityPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenCannonsPopup()
+int OpenCannonsPopup(HandlerInfo_t info)
{
XMapWindow(display, cannons);
return 0;
@@ -823,7 +823,7 @@ int OpenCannonsPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenRoundsPopup()
+int OpenRoundsPopup(HandlerInfo_t info)
{
XMapWindow(display, rounds);
return 0;
@@ -834,7 +834,7 @@ int OpenRoundsPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenInitItemsPopup()
+int OpenInitItemsPopup(HandlerInfo_t info)
{
XMapWindow(display, inititems);
return 0;
@@ -845,7 +845,7 @@ int OpenInitItemsPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenMaxItemsPopup()
+int OpenMaxItemsPopup(HandlerInfo_t info)
{
XMapWindow(display, maxitems);
return 0;
@@ -856,7 +856,7 @@ int OpenMaxItemsPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenProbsPopup()
+int OpenProbsPopup(HandlerInfo_t info)
{
XMapWindow(display, probs);
return 0;
@@ -867,7 +867,7 @@ int OpenProbsPopup()
/* Arguments : */
/* Purpose : */
/***************************************************************************/
-int OpenScoringPopup()
+int OpenScoringPopup(HandlerInfo_t info)
{
XMapWindow(display, scoring);
return 0;

View file

@ -0,0 +1,13 @@
diff --git a/src/server/suibotdef.c b/src/server/suibotdef.c
index d5202e3c323f0a8f..494f73f531848817 100644
--- a/src/server/suibotdef.c
+++ b/src/server/suibotdef.c
@@ -405,7 +405,7 @@ static bool Get_object_proximity(player_t *pl, object_t *shot, double sqmaxdist,
/* ignore if there is enough time to deal with this object later */
if((time_until_closest < 0) || (time_until_closest > maxtime))
/*option instead of fixed value: options.dodgetime))*/
- return;
+ return false;
/* get the square of the distance */
sqdistance =

16
xpilot-ng-c99.patch Normal file
View file

@ -0,0 +1,16 @@
Avoid implicit declaration of the Move_point function in
Wall_in_between_points in suibotdef.c.
diff --git a/src/server/server.h b/src/server/server.h
index 5c0cdd66de1db008..30b7f7d0a8fb09e4 100644
--- a/src/server/server.h
+++ b/src/server/server.h
@@ -151,6 +151,8 @@ void Groups_init(void);
void Walls_init(void);
void Treasure_init(void);
void Move_init(void);
+struct collans;
+void Move_point(const move_t *move, struct collans *answer);
void Move_object(object_t *obj);
void Move_player(player_t *pl);
void Turn_player(player_t *pl, bool push);

38
xpilot-ng-sdl.appdata.xml Normal file
View file

@ -0,0 +1,38 @@
<?xml version="1.0" encoding="utf-8"?>
<component type="desktop">
<id>xpilot-ng-sdl.desktop</id>
<metadata_license>CC0-1.0</metadata_license>
<project_license>GPL-2.0+</project_license>
<name>XPilot NG</name>
<summary>Multi-player space arcade game</summary>
<description>
<p>
A highly addictive, infinitely configurable multiplayer space
arcade game. You pilot a spaceship around space, dodging
obstacles, shooting players and bots, collecting power-ups, and
causing general mayhem. Some features are borrowed
from classics like the Atari coin-ups Asteroids and Gravitar, and the
home-computer games Thrust and Gravity Force.
</p>
<p>
XPilot NG is an extended version of the original XPilot. Like in XPilot,
the aim of the game is to have fun and to beat your fellow pilots.
In a team game, you can humiliate your enemies, blow up your their ships
and steal their treasure. There are also other game modes:
individual game and a race mode.
</p>
<p>
XPilot NG is a networked multi-player game, you can either start your
own server, or join an existing internet game.
</p>
</description>
<url type="homepage">http://xpilot.sourceforge.net/</url>
<screenshots>
<screenshot type="default">http://xpilot.sourceforge.net/shots/polybloods1.png</screenshot>
<screenshot>http://xpilot.sourceforge.net/shots/xpilot_sdl.png</screenshot>
<screenshot>http://xpilot.sourceforge.net/shots/fishtank.png</screenshot>
<screenshot>http://xpilot.sourceforge.net/shots/dragon.png</screenshot>
<screenshot>http://xpilot.sourceforge.net/shots/spaceball.png</screenshot>
</screenshots>
<updatecontact>jwrdegoede_at_fedoraproject.org</updatecontact>
</component>

View file

@ -1,11 +1,9 @@
[Desktop Entry]
Encoding=UTF-8
Name=XPilot-ng
GenericName=XPilot-ng
Comment=XPilot client
Name=XPilot NG
Comment=Multi-player space arcade game
Exec=xpilot-ng-sdl
Icon=xpilot-ng.png
Icon=xpilot-ng
Terminal=false
Type=Application
Categories=Application;Game;ArcadeGame;
Version=1.0
Keywords=game;arcade;spacewar;multi-player;classic;retro;

3
xpilot-ng-server.conf Normal file
View file

@ -0,0 +1,3 @@
#Type Name ID GECOS Home directory Shell
g xpilot - - - -
u xpilot - 'xpilot game server' /usr/share/xpilot-ng/ -

View file

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<component type="addon">
<id>xpilot-ng-server</id>
<extends>xpilot-ng-sdl.desktop</extends>
<metadata_license>CC0-1.0</metadata_license>
<project_license>GPL-2.0+</project_license>
<name>XPilot NG server</name>
<summary>Server for hosting XPilot NG games</summary>
<url type="homepage">http://xpilot.sourceforge.net/</url>
<updatecontact>jwrdegoede_at_gmail.com</updatecontact>
</component>

View file

@ -1,11 +0,0 @@
[Desktop Entry]
Encoding=UTF-8
Name=XPilot-ng classic
GenericName=XPilot-ng classic
Comment=XPilot client with old-school graphics
Exec=xpilot-ng-x11
Icon=xpilot-ng.png
Terminal=false
Type=Application
Categories=Application;Game;ArcadeGame;
Version=1.0

10
xpilot-ng.rpmlintrc Normal file
View file

@ -0,0 +1,10 @@
addFilter("incorrect-fsf-address")
addFilter("dangling-symlink")
addFilter("no-documentation")
addFilter("non-standard-uid")
addFilter("non-readable")
addFilter("E: no-binary")
addFilter("W: no-%check-section")
addFilter("E: logrotate-log-dir-not-packaged")
# meh, this should be fixed really ...
addFilter("W: binary-or-shlib-calls-gethostbyname")

View file

@ -4,47 +4,81 @@
Name: xpilot-ng
Version: 4.7.3
Release: 7%{?dist}
Summary: Multiplayer space arcade game
Release: 39%{?dist}
Summary: Space arcade game for multiple players
Group: Amusements/Games
License: GPLv2+
# Automatically converted from old format: GPLv2+ - review is highly recommended.
License: GPL-2.0-or-later
URL: http://xpilot.sourceforge.net
Source0: http://downloads.sourceforge.net/sourceforge/xpilot/xpilot-ng-%{version}.tar.gz
Source1: xpilot-ng.png
Source2: xpilot-ng-x11.desktop
Source3: xpilot-ng-sdl.desktop
Source2: xpilot-ng-sdl.desktop
Source3: xpilot-ng-sdl.appdata.xml
Source4: xpilot-ng-server.service
Source5: xpilot-ng.sysconfig
Source6: xpilot-ng.logrotate
Source7: xpilot-ng-server.conf
Source10: logwatch.logconf.xpilot
Source11: logwatch.script.xpilot
Source12: logwatch.serviceconf.xpilot
Source13: logwatch.shared.applyxpilotdate
Source14: xpilot-ng-server.metainfo.xml
Patch0: xpilot-ng-4.7.2-scoreassert.patch
Patch1: xpilot-ng-4.7.2-rhbz830640.patch
Patch2: xpilot-ng-4.7.3-fix-alut-detect.patch
Patch3: xpilot-ng-c99.patch
Patch4: xpilot-ng-SDL_window.patch
Patch5: xpilot-ng-c99-return-mismatch.patch
Patch6: xpilot-ng-c99-incompatible-pointer-types.patch
Patch7: xpilot-ng-c23.patch
BuildRequires: desktop-file-utils
BuildRequires: gcc make
BuildRequires: desktop-file-utils libappstream-glib
BuildRequires: expat-devel SDL_ttf-devel SDL_image-devel zlib-devel
BuildRequires: libXt-devel libGLU-devel libXxf86misc-devel
Requires: dejavu-sans-fonts
BuildRequires: libXt-devel libGLU-devel
BuildRequires: openal-soft-devel freealut-devel automake
BuildRequires: systemd-rpm-macros
Requires: %{name}-data = %{version}-%{release} hicolor-icon-theme
Provides: %{name}-engine = %{version}-%{release}
%description
A highly addictive, infinitely configurable multiplayer space
A highly addictive, infinitely configurable multi-player space
arcade game. You pilot a spaceship around space, dodging
obstacles, shooting players and bots, collecting power-ups, and
causing general mayhem.
%package x11
Summary: Xpilot-ng X11 version
Requires: %{name}-data = %{version}-%{release}
Provides: %{name}-engine = %{version}-%{release}
%description x11
Version of %{name} which uses libX11 rather then SDL.
%package data
Summary: Data files for %{name}
BuildArch: noarch
Requires: %{name}-engine = %{version}-%{release} dejavu-sans-fonts
%description data
Data files for %{name}.
%package server
Summary: Server for hosting xpilot games
Group: Amusements/Games
Requires(pre): shadow-utils
Requires(post): systemd-units
Requires(preun): systemd-units
Requires(postun): systemd-units
Summary: Server for hosting xpilot games
Requires: %{name}-data = %{version}-%{release}
Requires: logrotate
%{?sysusers_requires_compat}
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
BuildRequires: systemd
Provides: %{name}-engine = %{version}-%{release}
# Make sure the old no longer supported selinux policy from 4.7.2 gets removed
Obsoletes: %{name}-selinux < %{version}
Obsoletes: %{name}-selinux < %{version}-%{release}
Provides: %{name}-selinux = %{version}-%{release}
%description server
The xpilot server. This allows you to host xpilot games on your
@ -54,43 +88,52 @@ public xpilot games hosted on the internet.
%package logwatch
Summary: logwatch scripts for the xpilot game server
Group: Amusements/Games
Requires: %{name}-server = %{version}-%{release} logwatch
Summary: Logwatch scripts for the xpilot game server
Requires: %{name}-server = %{version}-%{release} logwatch
%description logwatch
logwatch scripts for the Xpilot game server
%prep
%setup -q
%patch0
%patch1 -p1
%autosetup -p1
# regenerate autofoo files for patch2
autoreconf -ivf
# fixup textfile encodings
pushd doc/man
iconv --from=ISO-8859-1 --to=UTF-8 xpilot-ng-server.man > xpilot-ng-server.man.new
touch -r xpilot-ng-server.man xpilot-ng-server.man.new
mv xpilot-ng-server.man.new xpilot-ng-server.man
iconv --from=ISO-8859-1 --to=UTF-8 xpilot-ng-x11.man > xpilot-ng-x11.man.new
touch -r xpilot-ng-x11.man xpilot-ng-x11.man.new
mv xpilot-ng-x11.man.new xpilot-ng-x11.man
popd
iconv --from=ISO-8859-1 --to=UTF-8 AUTHORS > AUTHORS.new
touch -r AUTHORS AUTHORS.new
mv AUTHORS.new AUTHORS
%build
%configure
%configure --enable-sound
iconv --from=ISO-8859-1 --to=UTF-8 README -o README
touch -r README.in README
make %{?_smp_mflags}
%install
make install DESTDIR=$RPM_BUILD_ROOT INSTALL="install -p"
%make_install INSTALL="install -p"
chmod a+x $RPM_BUILD_ROOT/%{_datadir}/%{name}/mapconvert.py
# Drop old Python 2 only map conversion script
rm $RPM_BUILD_ROOT/%{_datadir}/%{name}/mapconvert.py
desktop-file-install \
--dir ${RPM_BUILD_ROOT}%{_datadir}/applications \
%{SOURCE2}
desktop-file-install \
--dir ${RPM_BUILD_ROOT}%{_datadir}/applications \
%{SOURCE3}
desktop-file-install --dir ${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE2}
mkdir -p $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/48x48/apps/
install -p -m 644 %{SOURCE1} $RPM_BUILD_ROOT/%{_datadir}/icons/hicolor/48x48/apps/
mkdir -p $RPM_BUILD_ROOT%{_datadir}/appdata
install -p -m 644 %{SOURCE3} %{SOURCE14} $RPM_BUILD_ROOT%{_datadir}/appdata
appstream-util validate-relax --nonet $RPM_BUILD_ROOT%{_datadir}/appdata/*.xml
install -p -D -m 644 %{SOURCE4} $RPM_BUILD_ROOT/lib/systemd/system/%{name}-server.service
@ -103,6 +146,9 @@ install -p -D -m 600 lib/password.txt $RPM_BUILD_ROOT/%{_sysconfdir}/%{name}/pas
install -p -D -m 644 %{SOURCE6} \
$RPM_BUILD_ROOT/%{_sysconfdir}/logrotate.d/%{name}-server
# Install sysusers file
install -p -D -m 0644 %{SOURCE7} %{buildroot}%{_sysusersdir}/xpilot-ng-server.conf
# Replace bundled fonts with system fonts
rm $RPM_BUILD_ROOT%{_datadir}/%{name}/fonts/FreeSansBoldOblique.ttf
@ -113,79 +159,61 @@ ln -s %{_datadir}/fonts/dejavu/DejaVuSansMono-Bold.ttf $RPM_BUILD_ROOT%{_datadir
# Install logwatch files
install -pD -m 0644 %{SOURCE10} $RPM_BUILD_ROOT%{logwatch_conf}/logfiles/%{name}.conf
install -pD -m 0755 %{SOURCE11} $RPM_BUILD_ROOT%{logwatch_scripts}/services/%{name}
install -pD -m 0644 %{SOURCE11} $RPM_BUILD_ROOT%{logwatch_scripts}/services/%{name}
install -pD -m 0644 %{SOURCE12} $RPM_BUILD_ROOT%{logwatch_conf}/services/%{name}.conf
install -pD -m 0755 %{SOURCE13} $RPM_BUILD_ROOT%{logwatch_scripts}/shared/applyxpilotdate
%post
touch --no-create %{_datadir}/icons/hicolor &>/dev/null || :
%postun
if [ $1 -eq 0 ] ; then
touch --no-create %{_datadir}/icons/hicolor &>/dev/null
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
fi
%posttrans
gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
install -pD -m 0644 %{SOURCE13} $RPM_BUILD_ROOT%{logwatch_scripts}/shared/applyxpilotdate
%pre server
getent group xpilot >/dev/null || groupadd -r xpilot
getent passwd xpilot >/dev/null || \
useradd -r -g xpilot -d %{_datadir}/%{name} -s /sbin/nologin \
-c "xpilot game server" xpilot
exit 0
%sysusers_create_compat %{SOURCE7}
%post server
if [ $1 -eq 1 ] ; then
# Initial installation
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
fi
%systemd_post xpilot-ng-server.service
%preun server
if [ $1 -eq 0 ] ; then
# Package removal, not upgrade
/bin/systemctl --no-reload disable xpilot-ng-server.service > /dev/null 2>&1 || :
/bin/systemctl stop xpilot-ng-server.service > /dev/null 2>&1 || :
fi
%systemd_preun xpilot-ng-server.service
%postun server
/bin/systemctl daemon-reload >/dev/null 2>&1 || :
if [ $1 -ge 1 ] ; then
# Package upgrade, not uninstall
/bin/systemctl try-restart xpilot-ng-server.service >/dev/null 2>&1 || :
fi
%systemd_postun_with_restart xpilot-ng-server.service
%files
%{_bindir}/xpilot-ng-replay
%{_bindir}/xpilot-ng-sdl
%{_bindir}/xpilot-ng-x11
%{_datadir}/appdata/xpilot-ng-sdl.appdata.xml
%{_datadir}/applications/xpilot-ng-sdl.desktop
%{_datadir}/icons/hicolor/48x48/apps/xpilot-ng.png
%{_mandir}/man6/xpilot-ng-replay.6.gz
%{_mandir}/man6/xpilot-ng-sdl.6.gz
%files data
%doc AUTHORS BUGS ChangeLog FEATURES README TODO
%license COPYING
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/textures
%{_datadir}/%{name}/fonts
%{_datadir}/applications/*.desktop
%{_datadir}/icons/hicolor/48x48/apps/*.png
%{_mandir}/man6/xpilot-ng-replay.6.gz
%{_mandir}/man6/xpilot-ng-sdl.6.gz
%{_datadir}/%{name}/sound
%files x11
%{_bindir}/xpilot-ng-x11
%{_mandir}/man6/xpilot-ng-x11.6.gz
%doc README COPYING
%files server
%{_sysusersdir}/xpilot-ng-server.conf
%{_bindir}/xpilot-ng-xp-mapedit
%{_bindir}/xpilot-ng-server
/lib/systemd/system/xpilot-ng-server.service
%config(noreplace) %{_sysconfdir}/logrotate.d/%{name}-server
%{_datadir}/%{name}
%exclude %{_datadir}/%{name}/textures
%exclude %{_datadir}/%{name}/fonts
%exclude %{_datadir}/%{name}/sound
%{_datadir}/appdata/xpilot-ng-server.metainfo.xml
%dir %{_sysconfdir}/%{name}
%config(noreplace) %attr(0600,xpilot,root) %{_sysconfdir}/%{name}/password.txt
%config(noreplace) %{_sysconfdir}/%{name}/defaults.txt
%config(noreplace) %{_sysconfdir}/%{name}/xpilot-ng-server-cmdline-opts
%{_mandir}/man6/xpilot-ng-server.6.gz
%{_mandir}/man6/xpilot-ng-xp-mapedit.6.gz
%doc README COPYING
%files logwatch
%{logwatch_conf}/logfiles/%{name}.conf
@ -195,6 +223,112 @@ fi
%changelog
* Fri Jul 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-39
- Rebuilt for https://fedoraproject.org/wiki/Fedora_45_Mass_Rebuild
* Mon Feb 2 2026 Hans de Goede <johannes.goede@oss.qualcomm.com> - 4.7.3-38
- Use sysusers to create xpilot user for xpilot-ng-server (rhbz#2432687)
* Sat Jan 24 2026 Hans de Goede <johannes.goede@oss.qualcomm.com> - 4.7.3-37
- Fix FTBFS (rhbz#2341581, rhbz#2385745)
* Sat Jan 17 2026 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-36
- Rebuilt for https://fedoraproject.org/wiki/Fedora_44_Mass_Rebuild
* Fri Jul 25 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-35
- Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild
* Sun Jan 19 2025 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-34
- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild
* Fri Jul 26 2024 Miroslav Suchý <msuchy@redhat.com> - 4.7.3-33
- convert license to SPDX
* Sat Jul 20 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-32
- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild
* Sat Jan 27 2024 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-31
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
* Tue Jan 09 2024 Florian Weimer <fweimer@redhat.com> - 4.7.3-30
- Additional C compatibility fixes (#2155781)
* Sat Jul 22 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-29
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
* Sat Jan 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-28
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
* Thu Dec 22 2022 Florian Weimer <fweimer@redhat.com> - 4.7.3-27
- C99 port (#2155781)
- Fix build issue due to SDL_Window identifier conflict with newer SDL
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-26
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
* Sat Jan 22 2022 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-25
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-24
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
* Thu Jan 28 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-23
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
* Sat Aug 01 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-22
- Second attempt - Rebuilt for
https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-21
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-20
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
* Sat Aug 10 2019 Hans de Goede <hdegoede@redhat.com> - 4.7.3-19
- Drop libXxf86misc-devel BuildRequires, all #if HAVE_XF86MISC code was
commented out already, so this does not influence xpilot-ng behavior
- Fix FTBFS (rhbz#1736985)
- Drop script for converting old format maps, because it is Python 2 only
- Fix a bunch of rpmlint warnings, ignore others
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-18
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
* Sat Feb 23 2019 Hans de Goede <hdegoede@redhat.com> - 4.7.3-17
- Fix FTBFS (rhbz#1676250)
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-16
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-15
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-14
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Jan 18 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 4.7.3-13
- Remove obsolete scriptlets
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-12
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Thu Jul 27 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Sat Feb 11 2017 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Feb 05 2016 Fedora Release Engineering <releng@fedoraproject.org> - 4.7.3-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Sun Jan 31 2016 Hans de Goede <hdegoede@redhat.com> - 4.7.3-8
- Enable sound support
- Use systemd-rpm macros (rhbz#850373)
- Split out client data in a -data package, share it between client and server
- Split out libX11 client version into a -x11 package, drop .desktop for it
- Add appdata
* Fri Jun 19 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 4.7.3-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
@ -210,12 +344,12 @@ fi
* Sun Feb 10 2013 Parag Nemade <paragn AT fedoraproject DOT org> - 4.7.3-3
- Remove vendor tag from desktop file as per https://fedorahosted.org/fesco/ticket/1077
* Sun Jul 27 2012 Hans de Goede <hdegoede@redhat.com> - 4.7.3-2
* Sun Jul 29 2012 Hans de Goede <hdegoede@redhat.com> - 4.7.3-2
- Move server cmdline config file to /etc/xpilot-ng, where all the other
config-files are. You can now find it here:
/etc/xpilot/xpilot-ng-server-cmdline-opts
* Sun Jul 27 2012 Hans de Goede <hdegoede@redhat.com> - 4.7.3-1
* Sun Jul 29 2012 Hans de Goede <hdegoede@redhat.com> - 4.7.3-1
- Fix a crash in the welcome screen (rhbz#830640)
- Upgrade to latest upstream 4.7.3
- Drop selinux module, it no longer compiles and selinux support belongs
@ -246,10 +380,10 @@ fi
* Mon Dec 01 2008 Ignacio Vazquez-Abrams <ivazqueznet+rpm@gmail.com> - 4.7.2-15
- Rebuild for Python 2.6
* Fri Feb 18 2008 Wart <wart at kobold.org>
* Mon Feb 18 2008 Wart <wart at kobold.org>
- Better Sourceforge download URL
* Fri Feb 18 2008 Wart <wart at kobold.org> 4.7.2-14
* Mon Feb 18 2008 Wart <wart at kobold.org> 4.7.2-14
- Rebuild for gcc 4.3
* Thu Aug 23 2007 Wart <wart at kobold.org> 4.7.2-13