svkaiser / Doom64EX

Doom64EX is a reverse-engineering project aimed to recreate Doom64 as close as possible with additional modding features.
http://doom64ex.wordpress.com/
GNU General Public License v2.0
237 stars 48 forks source link

[Enhancement] Linking to Linux builds or using buildbot #48

Open mdeguzis opened 7 years ago

mdeguzis commented 7 years ago

I'd love to help out providing Debian/Ubuntu/Fedora etc. packages. I already build a lot for SteamOS, but I am familiar with rpm/mock a bit and for Debian flavors, pbuilder. I have my own repository at http://packages.libregeek.org. I am also curious about buildbot and am looking into that soon. Thoughts? Sorry if I should have sent an email to @dotfloat instead.

pinkwah commented 7 years ago

Buildbot looks interesting, and is probably a better solution than the one I began working on. (/build_scripts/nightly_build.rb). I'd like to provide official Linux support at some point with flatpak.

The only thing holding me back currently is fluidsynth, which I'm replacing with my fluidsynth-lite fork. It doesn't depend on any sound servers and can be made into a static library. The org.freedesktop.Platform flatpak runtime seems to prove everything else (ie. SDL2{,_net}), so I'm optimistic.

But that's only flatpak. I'll happily let you maintain official distro-specific packages if you wish. Any help is really appreciated.

And yeah, enhancements can go on the issue tracker as well.

mdeguzis commented 7 years ago

I was thinking about flatpak, yes, but you have a handle on that, but any testing needed there I can provide. As far as distro-specific, I can provide Debian/Ubuntu/Fedora. A user has already made an AUR package, or I would have done that. I have Debian/Ubuntu packages already made. Fedora is easy enough for an RPM. I consider the Open Build System at times, but abstracting the build process always makes me feel iffy, but i'm definitely open to that.

mdeguzis commented 7 years ago

PPA is up for Ubuntu folks: https://launchpad.net/~mdeguzis/+archive/ubuntu/libregeek-games. The rest can be found at https://packages.libregeek.org. I'll be interested to see the flatpak and test it. If you're willing, since I am learning flatpak, i'd also like to see the finished steps to build it with flatpak.

thomaslepoix commented 4 years ago

Hi!

It is not what distributions maintainers would recommend but the easiest way to generate packages is using CMake.

This PR (#101) implements make package on unix hosts that generates tar archives (tar.gz, tar.xz, tar.bz2), rpm and deb packages.

As a Linux only user, I am not able to add Windows installer nor Apple package but CMake provides those features (and FreeBSD for most recent versions of CMake). I think this is a rather clean example [1]. Here is the CPack doc [2].

Beyond the ease for you to pack your releases, this process lets the user manually install the git head version without losing management by the packet manager. In this kind of scenarios :

build $
    cmake ..
    make
    make package
    sudo apt-get install ./doom64ex_3.0.0_amd64.deb

[1] : https://github.com/kracejic/cleanCppProject/blob/master/packaging/CMakeLists.txt

[2] : https://cmake.org/cmake/help/latest/manual/cpack.1.html [2] : https://cmake.org/cmake/help/latest/manual/cpack-generators.7.html