-
-
Notifications
You must be signed in to change notification settings - Fork 24
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add install target to makefile; add debian folder #131
Conversation
Allows running "make install" to install; includes desktop file, png version of icon, and launcher script. Allows running "debuild" to create deb package.
[From an email sent a couple weeks ago that received no reply] I created deb packages from your repo. To use automated tools easier I added install targets to your Makefile, which allows "make install" work for linux. I am not Makefile expert and I didnt do any checking to make sure its linux, so if that makefile used to install for other OS not sure what happens... I created a debian folder with the stuff needed for debian packaging, plus added a desktop file and icon for menu shortcuts/etc. I also used a launcher script because davegnukem doesn't run unless launched in the folder containing data. For the licensing (debian/copyright file), I checked COPYING in your github repo which says GPL2 so used that. But then later I saw you had MIT licensing stuff mentioned in other files. If we want to submit this to debian games will need to sort that out first. For the original source package tarball, I included data. I know your comment mentioned you wanted them packaged separately, I'm not expert at this so didnt take the time to figure that out; they're packaged together. But if important I can figure that out before submitting to debian too. I created launchpad PPA for ubuntu. The built packages work on debian too without rebuild. If you want to share PPA info or debfiles themselves on your website or github. Note the 32-bit package built for bionic does work on debian bullseye and ubuntu xenial too. When using launchpad's build system, builds failed under xenial, impish, and jammy for stuff related to C code of your game, not packaging stuff. Different gcc versions I guess, I am not a skilled programmer but it appears easy stuff to fix. Bionic and focal build fine (as does debian bullseye). If you wanna see those build logs I could share, or if you want to troubleshoot yourself just use impish or jammy dev and run make like normal (its not install/packaging related). For launchpad PPA I just copied the focal built version for impish/jammy. After updating repo with those changes, if you want to build deb package yourself (from debian or ubuntu, dunno if it works other distro) just run "debuild" from repo folder. Note it outputs one folder higher (../). |
Hi, thanks for these, this is much appreciated, as it would be really great to have Debian packages. Just very busy at the moment with no spare time, that's why I haven't had time to look at this, I want to look a little more carefully at it when I have a gap. (My main thing I want to just check with some caution, I seem to recall that some downstream ports to other platforms may apply their own patches and that makes me nervous to make lots of Makefile changes as it I think it might potentially cause conflicts with downstream ports ... I will try recall where I saw these to see if I can just try check first) |
There is already an effort at https://bugs.debian.org/1009780 to bring the package to Debian's archive. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@enigma9o7 @bgermann @matteobin @pocak100
Thanks so much! This is really awesome - Debian builds - I haven't been able to test thoroughly due to time constraints right now - but we'll just have test and deal with issues that come up. One important note I am nervous (because also this Makefile is so ancient and goes back 20 years) any Makefile changes may break some of the prior existing ports - but I think Debian builds are really important and valuable - so I'm hoping the other port maintainers will be able to test closely after these changes and if their ports break, then find ways to deal with it (e.g. either with further Makefile patches or maybe simpler some separate Makefiles e.g. new "Makefile.platformname" file(s)), or some other solution. Note also some platforms may already rely on special patches to this Makefile maintained elsewhere in other build systems (e.g. I suspect BSD maybe and some other port, I don't recall the details and unfortuantely have only a few minutes to spare right now so can't look in detail) - and again there may be conflicts generated between those patches and this modified. But because Debian's so important I think we'll just have to go forward and deal with these issues as they crop up and solve them - hopefully port maintainers will be able to help.
Edit Found the the BSD patchfile that might have to be re-tested for conflicts, unfortunately I'm not in a position to do so right now: http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/games/gnukem/
*Edit2: This might also have to be re-tested for build conflicts, unfortunately I can't do so: http://repo.openpandora.org/?page=detail&app=davegnukem-magicsam
@enigma9o7 @bgermann @matteobin Also apologies for slow replies - unfortunately I'm really busy these days with no spare time like I used to have when I was heavily in development on this. I really really appreciate everyone's help and contributions and love to see these contributions - so I'll try to make some time to help merge further changes and contributions if/as need be (especially for Debian as it's very valuable). But unfortunately I don't have spare time right now to personally test these changes so will need help testing especially with the other port platforms also. |
Ok, FWIW, I just did some preliminary testing in a basically clean Debian VM and it seemed to work - also did a 'make install' and it ran. |
Add install target to makefile; add debian folder
Allows running "make install" to install; includes desktop file, png version of icon, and launcher script.
Allows running "debuild" to create deb package.
I have these hosted on launchpad ppa
https://launchpad.net/~enigma9o7/+archive/ubuntu/gnukem