In this blog post, I want to describe some of the workarounds I need to do to release the latest mono and monodevelop packages on OBS.
For more details on this project from a using perspective, see:
Easy installation of current Mono and MonoDevelop for all major Linux Distributions
The download of the source files is specified in the _service file, eg. https://build.opensuse.org/package/view_file/home:tpokorra:mono/mono/_service?expand=1
The problem is that sometimes the tarballs are not available on http://download.mono-project.com/sources/mono or http://download.mono-project.com/sources/monodevelop, especially for the Alpha releases.
As long as you can find a tagged release at Github, you can build your own tarball (eg. on CentOS):
Preparations:
wget -O /etc/yum.repos.d/home:tpokorra:mono.repo http://download.opensuse.org/repositories/home:tpokorra:mono/CentOS_CentOS-6/home:tpokorra:mono.repo yum install git-core automake autoconf libtool tar which gcc-c++ gettext mono-opt bzip2 |
For Mono:
git clone https://github.com/mono/mono.git cd mono git checkout -b tarball mono-3.2.5 ./autogen.sh . /opt/mono/env.sh make dist |
And for MonoDevelop:
git clone https://github.com/mono/monodevelop.git cd monodevelop git branch tarball monodevelop-4.3.0 git checkout tarball . /opt/mono/env.sh ./configure make dist |
I have uploaded the resulting tarballs to http://download.pokorra.de/mono/tarballs/, and my _service files are now referencing that location if the official source directory is missing the tarball or the tarball is broken.