Create nightly distro packages
boombatower opened this issue · 10 comments
Breaking off from #81...
I have openSUSE build working (download instructions).
I have fedora and openSUSE builds working (download instructions).
I have script created (which I need to commit somewhere, putting in package repo almost seems right, but not quite...I'll consider it). The script can be setup on cron, pick the latest commit, update package repo and .spec file for latest commit tar ball, and push changes to repo to trigger build. I'll get that setup on remote server in the future, could possible be done via travis as well.
It may also make sense to move to something like home:boombatower:openage
as the repository? I was originally branching games repo since that was my target, but on my request to move into official games repo it was suggested that non-playable games are probably not a good idea.
It would be slick if we did the necessary work to support building for .deb packages. https://en.opensuse.org/openSUSE:Build_Service_Debian_builds Perhaps someone is familiar with deb packaging? Then we can get nightly builds for all major distros from one place!
Open Build Service (OBS) is great in that it provides the familiar fork/branch and pull request workflow for packaging in addition to allowing us to package for all major distros in one place. Can even make changes through web interface!
Seems like probably a good idea to mention packages somewhere either in building or main README to suggest their usage? Especially after we have ubuntu/debian as well.
We should probably also add an example of how to use the installed convert scripts to write to homedir where .desktop file will be set to look. Unless that is to be rolled into main game soon? Or simply preferred to wait.
oldlaptop noted the debian wiki is outdated and pointed me to https://github.com/oldlaptop/uqm-deb/blob/master/uqm-0.7.0/debian/rules in IRC. So I may take a look at that in the future.
We also need opus libs built for ubuntu (as per #90). If we get them built for Travis we should be able to drop those package file into OBS and use them for building openage for debian.
Until asset stuff is sorted out, one can create ~/openage
and then create a symbolic link to from ~/openage/assets
to /path/to/dev/assets
and it loads from .desktop file / menu entry!
Depends on #95.
i'd say it's too early for this! developers need to tinker with a cloned repo, not the installed binaries
I would definitely not expect developers to be using this. and yes probably too early.
After we decided on the versioning in #93, we will probably release minor advancements very often (tm). These can then be packaged by anyone who likes, i wouldn't consider this as a task for the project itself, this is up to the distro users/packagers.
Agree that anyone can package. I just wanted to track this so anyone interested in project could see/contribute. Not sure what we want to do with the result which is working nightly openSUSE/Fedora packages and some initial work on debian/ubuntu (need to build dependencies unfortunately).
Perhaps a link in one of the various READMEs or the main one?
Created git repo for the script I created to make nightly packages https://github.com/boombatower/obs-git-update
This could actually be done once #397 is closed, building the master branch as whatever distro packages.
Small update (win builds): As long as we are working on a stable Kevin win-setup
I was setting up a build and packaging pipeline at Appveyor. You will find nightly packages for Windows 32bit/64bit here.
I will try to create *.deb and AppImages in the nearer future and release them there, too.
To create *.deb packages I want to use our already established cmake/cpack buildsystem:
https://cmake.org/cmake/help/v3.16/cpack_gen/deb.html
And convert these then to AppImages with this tool:
https://github.com/simoniz0r/deb2appimage