Packaging for Fedora - What's missing?

I am a Fedora developer and recently did a bunch of updates for Doom related packages and I was looking for feedback on what engines, maps, tools etc are worth packaging for Fedora. All software must be free and open source and content must be under GPL, CC-BY-SA or a similar license that allows free redistribution and modifications without any use restrictions.

Fedora currently has prdoom, vavoom and chocolate doom "source ports"/engines. Tools include bsp, deutex and yadex. For content, we have freedoom and a autodownloader which downloads the Doom shareware data on first launch.

Let me know if anything important is missing that you would like to see in the Fedora repository. Being actively maintained would be a plus obviously.

Share this post


Link to post

Uhmm... Mocha Doom? (shameful plug, I know).

However it is GPL-ed, and works neat even with OpenJDK.

Share this post


Link to post

Sure, I could take a look although I haven't handled Java packages before and could use some help. It is seems the mochadoom-techdemo-??.zip files are all ones with the binary jar files. Can you make a source tarball available with instructions on building from that? That would be useful

Share this post


Link to post

Ok. Now I tried to run, techdemo-15 with doom1.wad from the Doom Shareware. I am running Fedora 15 and with OpenJDK (java-1.6.0-openjdk-1.6.0.0-59.1.10.3.fc15.x86_64), I can't get my control key to shoot anything although I see a blue bouncing circle appearing whenever I press control key and the arrow keys to move forward or backward don't seem to work but left or right does work and wasd keys work. Let me know if you need more details.

Share this post


Link to post
mether said:

Ok. Now I tried to run, techdemo-15 with doom1.wad from the Doom Shareware. I am running Fedora 15 and with OpenJDK (java-1.6.0-openjdk-1.6.0.0-59.1.10.3.fc15.x86_64), I can't get my control key to shoot anything although I see a blue bouncing circle appearing whenever I press control key and the arrow keys to move forward or backward don't seem to work but left or right does work and wasd keys work. Let me know if you need more details.


Sound like a window focus problem and/or you have some "highlight the mouse cursor whenever I press Ctrl" kind of option on. If the window is properly focused, you should have mouse control and firing. Walking is mapped by default at the WASD keys. It's possible to change them only through the default.cfg file as of now (same codes used in vanilla doom).

Also, Java has problems with the awt.Robot class (automatic mouse handling) and certain Linux window managers. Granted, I haven't tested it under every distro under the sun, but e.g. doing an apt-get upgrade in debian solved the "spinning mouse" problem, while there have never been problems under Ubuntu (cross distro testing is something I really need, as I've learned the hard way that in matters of mouse/sound I can't really make "write once, run anywhere" assumptions with Java).

Building: the latest tarball is always at this address. To build from the command line, simply invoke javac on i/Main.java e.g. to place the output files into a directory "bin" do "javac -d bin i/Main.java". Execution entry point is also i.Main e.g. "java -cp bin i.Main".

However, since I actually distribute it in a self-executable jar, I guess I could add a script to the repo that does just that (however no special building tools other than javac are needed). If you want to pack it into an executable jar file yourself then build the jar with

jar cvef mochadoom.jar i.Main <classes-folder>
TBQH, I prefer Eclipse to handle these steps for me ;-)

Share this post


Link to post

I think I got the key issues solved although a GUI to do keyboard mapping would be nice. I will look at packaging this from source with the help of someone closer to Java packaging. Thanks. Any other suggestions folks?

Share this post


Link to post

xwadtools is pretty handy also. You can find it in /idgames/source.

Share this post


Link to post

ZDoom and Eternity might be worth repackaging for Fedora.

Share this post


Link to post

ZDoom's licence is likely incompatible. Seconding Eternity, though. ;)

Share this post


Link to post

Zdoom has commercial use restrictions. Not acceptable for Fedora. Eternity license seems acceptable since it is GPL + some BSD code. I didn't get it to compile in Fedora 15 however. Has anyone got it running successfully in Linux/ Fedora?

<pre>

make
Making all in source
make[1]: Entering directory `/home/mether/Downloads/ee-3.40.15-src/source'
Making all in Confuse
make[2]: Entering directory `/home/mether/Downloads/ee-3.40.15-src/source/Confuse'
g++ -DPACKAGE_NAME=\"eternity\" -DPACKAGE_TARNAME=\"eternity\" -DPACKAGE_VERSION=\"3.40.00\" -DPACKAGE_STRING=\"eternity\ 3.40.00\" -DPACKAGE_BUGREPORT=\"haleyjd@hotmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"eternity\" -DVERSION=\"3.40.00\" -I. -g -O2 -MT confuse.o -MD -MP -MF .deps/confuse.Tpo -c -o confuse.o confuse.cpp
mv -f .deps/confuse.Tpo .deps/confuse.Po
g++ -DPACKAGE_NAME=\"eternity\" -DPACKAGE_TARNAME=\"eternity\" -DPACKAGE_VERSION=\"3.40.00\" -DPACKAGE_STRING=\"eternity\ 3.40.00\" -DPACKAGE_BUGREPORT=\"haleyjd@hotmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"eternity\" -DVERSION=\"3.40.00\" -I. -g -O2 -MT lexer.o -MD -MP -MF .deps/lexer.Tpo -c -o lexer.o lexer.cpp
lexer.cpp: In function ‘int lexer_state_none(lexerstate_t*)’:
lexer.cpp:478:16: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
lexer.cpp:482:16: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
lexer.cpp:486:16: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
lexer.cpp:490:16: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
lexer.cpp:494:16: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
lexer.cpp:508:19: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
lexer.cpp:513:16: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
mv -f .deps/lexer.Tpo .deps/lexer.Po
rm -f libetconfuse.a
ar cru libetconfuse.a confuse.o lexer.o
ranlib libetconfuse.a
make[2]: Leaving directory `/home/mether/Downloads/ee-3.40.15-src/source/Confuse'
Making all in hal
make[2]: Entering directory `/home/mether/Downloads/ee-3.40.15-src/source/hal'
make[2]: *** No rule to make target `all'. Stop.
make[2]: Leaving directory `/home/mether/Downloads/ee-3.40.15-src/source/hal'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/mether/Downloads/ee-3.40.15-src/source'
make: *** [all-recursive] Error 1

</pre>

Share this post


Link to post

I believe you need to use CMake with the latest (SVN at least) versions of Eternity. Works for me on Kubuntu 11.04 at least. I know the autotools stuff is still around, but I'm not sure if it's maintained.

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now