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

Prepare a new release and document the process #4496

Open
laarmen opened this Issue Nov 26, 2018 · 18 comments

Comments

Projects
None yet
6 participants
@laarmen
Contributor

laarmen commented Nov 26, 2018

It's been a while since we've had a new release, and that's a shame. However, our build system has evolved quite a bit, and I've basically been told that we don't know how to do releases anymore.

The process might simply be "tag a commit, wait for defined $people to build on their respective platforms, upload the builds, then do the whole website/twitter/stuff dance", but it still has to be documented.

Oh and I'm not volunteering.

@fluffyfreak

This comment has been minimized.

Contributor

fluffyfreak commented Nov 26, 2018

Few reasons we haven't done this, I've been waiting on #4427 to be finished but @pcercuei seems to have been away a lot. It's a real shame as I think it'll be a great addition to the build process.

The CMake stuff has taken a while to work but I think that's now ready. I haven't been following along too closely since I want it to work on Linux (and OSX?) before I even try to use it with Visual Studio.

I've got a branch of #4427 and have just tried to update it to master, so I'll give that a go and see if it creates a usable windows package after merging latest into it.

@pcercuei

This comment has been minimized.

Contributor

pcercuei commented Nov 26, 2018

I'm still here, just travelling around without a computer. I will be back next week.

@fluffyfreak

This comment has been minimized.

Contributor

fluffyfreak commented Nov 26, 2018

I have a fork of the branch with latest code, some hacking around in it but it does produce an installer now. Hopefully I'll test tomorrow.

Hope you're having fun @pcercuei, I look forward to you getting back us getting this integrated :)

@impaktor

This comment has been minimized.

Member

impaktor commented Nov 27, 2018

Do remind me:

  1. OSX builds still depend on @salborrelli or @Philbywhizz building and uploading, right?

  2. And if we use appveyor for windows builds and github for GNU/Linux build, only OSX will be hosted on sourceforge?

@fluffyfreak

This comment has been minimized.

Contributor

fluffyfreak commented Nov 27, 2018

Sort of:

  1. OSX has been @Philbywhizz the last few times.
  2. Appveyor we'd only use for building not as host, it auto deletes after 6 months and there's a 1GB size limit. Each build is ~330MB for Windows.
@fluffyfreak

This comment has been minimized.

Contributor

fluffyfreak commented Nov 27, 2018

Damn. My installer doesn't work. It puts the data directory too deep inside another data directory. Also missing the icon for the executable for some reason.

@pcercuei

This comment has been minimized.

Contributor

pcercuei commented Nov 27, 2018

@fluffyfreak: this is with #4427 rebased on top of master?

@fluffyfreak

This comment has been minimized.

Contributor

fluffyfreak commented Nov 28, 2018

@pcercuei that's with my own branch which has some other hacking in it. So rebasing atop #4427 might be better

@abbottjord94

This comment has been minimized.

abbottjord94 commented Nov 29, 2018

Genuine noob question: If I'm able to build from source on a given platform and pack it into a .7z file (and document the whole process), is that acceptable?

I ask because I can build for Windows and Linux (without CMake though), and I'd be happy to provide both of them if that's what we're looking for.

@impaktor

This comment has been minimized.

Member

impaktor commented Nov 29, 2018

@abbottjord94 Thanks for the offer, but no. We can also build on linux and windows, after all, that's how we do our development. The idea is to get it automated.

@pcercuei

This comment has been minimized.

Contributor

pcercuei commented Dec 1, 2018

Making the Windows release should be a matter of publishing the setup.exe built by AppVeyor once PR #4427 is updated and merged.

For Linux, the JSON and appdata files at https://github.com/flathub/net.pioneerspacesim.Pioneer should be updated, then the software appstores of (recent) Linux distributions will provide the update. Additionally a .flatpakref (~10-lines text) file can be provided for download on Pioneer's main page, which will open with the distribution's software appstore. The actual build would be hosted for free on Flathub.

For OSX... I don't know. I have experience with creating OSX bundles in CMake, maybe we could setup Travis to build Pioneer just like we will do on Windows with Appveyor. Then the release process would be the same as for Windows, just download and publish a build artifact.

@laarmen

This comment has been minimized.

Contributor

laarmen commented Dec 1, 2018

@pcercuei

This comment has been minimized.

Contributor

pcercuei commented Dec 2, 2018

It's not out of the box on all distributions (yet), but the page on Flathub to download Pioneer (https://flathub.org/apps/details/net.pioneerspacesim.Pioneer) already links to a setup guide for your distribution.

@laarmen

This comment has been minimized.

Contributor

laarmen commented Dec 2, 2018

@pcercuei

This comment has been minimized.

Contributor

pcercuei commented Dec 2, 2018

Actually you can install flatpaks as user, from the command line at least (from the GUIs I think they are installed system-wide). Note that we can very well release as a tarball as well, and on the website, just notify that a flatpak version is also available.

@impaktor

This comment has been minimized.

Member

impaktor commented Dec 2, 2018

IMO this is actually a regression for our users

But won't flatpack make a package that's compatible with the linux distro the user is on? Our current problem is our tar-ball only works for (most common) ubuntu / debian distros, which I thought flatpack would solve?

@laarmen

This comment has been minimized.

Contributor

laarmen commented Dec 2, 2018

@Web-eWorks

This comment has been minimized.

Contributor

Web-eWorks commented Dec 8, 2018

Tarball (well, zipfile) Linux builds via Travis are already complete in master, the Travisfile just needs a repo key to upload the release binaries to the GH release. The rest of the builds are outside of my realm of expertise, so I can't comment on them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment