aspiers / opensuse-spotify-installer

Automate installation of Spotify on openSUSE
80 stars 29 forks source link

Srpm cannot be rebuilt on another architecture #13

Open leamas opened 11 years ago

leamas commented 11 years ago

Since the rpm only defines one source, the srpm will only contain one architecture. This contradicts the whole idea of a srpm, it should be possible to rebuild it on any host., and it must thus contain both arhitectures.

aspiers commented 11 years ago

Hmm, I'm inclined to close this as a "wontfix". The whole point of src rpms is that you can redistribute them and allow the recipient to rebuild binary rpms from them. However, any src rpm containing Spotify code cannot be legally redistributed, so that principle does not apply here. In that case, the only sensible thing to do is to get them to rebuild from the installer, which if we do our job right should not be any more difficult than building from a src rpm.

leamas commented 11 years ago

Right, in a way. But I would not be surprised if the Spotify lawyers (after thinking on this long enough for a descent bill) would produce a license allowing re-distribution. After all, they have a lot to gain here.

Another way to look at it is that when producing RPM:s one should stick to the overall packaging standards. I definitely try to. And for users (small communities?) an easy way will always be to rebuild the srpm. That is, they will probably try. But this is more like a hint. My own patch was simple, and I think it was worth it. Unfortunately, I havn't my spec under version control, so a proper patch is more that an can produce.

All this said, I perfectly understand your limited time. Why not just leave this open to see if someone else takes it?

aspiers commented 11 years ago

If they allowed redistribution then we would not need an installer at all :) But yes I take your point. I'll leave it open and mark as an enhancement.

leamas commented 11 years ago

So be it. For the record, the relevant parts of the upcoming Fedora spec:

Source1:        %{repo}/spotify-client_%{version}-1_amd64.deb
Source2:        %{repo}/spotify-client_%{version}-1_i386.deb
Source3:        %{leamas_repo}/fedora-libs-amd64.tar.gz
Source4:        %{leamas_repo}/fedora-libs-i386.tar.gz

%ifarch x86_64
%global   spotify_src   %{SOURCE1}
%global   leamas__src_nr     3
%global   req_64        ()(64bit)
%else
%global   spotify_src   %{SOURCE2}
%global   leamas_src_nr     4
%endif
...
%prep
%setup -qn spotify-make-%{commit}
cp %{spotify_src} .
%setup -a %{leamas_src_nr} -D -T -qn spotify-make-%{commit}

Yes, if they allow redistribution we don't need an installer. OTOH, a working spec creating packages to redistribute is really needed then.

leamas commented 11 years ago

Now, with 0.9.0, this spec and the Fedora one share all installation code using the common spotify-make. Nice, isn't it :)

Could you possibly find the time to consider merging this stuff?

aspiers commented 11 years ago

Yeah, great work! :) And sorry I've been unresponsive, I'll try to look at it in the next few days.