Bug 869447 - remove git dependency in pesign.spec
Summary: remove git dependency in pesign.spec
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: pesign
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Peter Jones
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-10-23 23:06 UTC by Mr-4
Modified: 2012-10-25 13:32 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2012-10-25 00:09:57 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Mr-4 2012-10-23 23:06:42 UTC
Description of problem:
Currently, the pesign build depends on git (and thus requires, among other things, a live internet connection to be present at the build machine) to fetch the sources needed to build a particular pesign version. 

I think this is quite impractical-to-impossible, particularly for systems which build sources/packages from VM, mock, or, as in my case, VM environment using mock on a dedicated machine, which is (deliberately) cut off from the rest of the *net, so that it is not contaminated, and uses automated builds. 

With most, if not all, srpms supplied by Fedora, the source files are present and provided as part of the srpm file itself as an archive, so I don't see why this particular package should be any different.


Version-Release number of selected component (if applicable):
0.99

How reproducible:
Always

  
Actual results:
git init
git config user.email "pesign-owner"
git config user.name "Fedora Ninjas"
git add .
git commit -a -q -m "%{version} baseline."
git am %{patches} </dev/null

all present in pesign.spec

Expected results:
Provide the current (0.99) version of pesign source as archive and as part of the srpm package. Replace the above statements (and remove git BuildRequires) with the following:
%setup -q -a 1 -n %{name}-%{version}
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1


Additional info:

Comment 1 Josh Boyer 2012-10-25 00:09:57 UTC
(In reply to comment #0)
> Description of problem:
> Currently, the pesign build depends on git (and thus requires, among other
> things, a live internet connection to be present at the build machine) to
> fetch the sources needed to build a particular pesign version. 
> 
> I think this is quite impractical-to-impossible, particularly for systems
> which build sources/packages from VM, mock, or, as in my case, VM
> environment using mock on a dedicated machine, which is (deliberately) cut
> off from the rest of the *net, so that it is not contaminated, and uses
> automated builds. 

It does not require a live internet connection at all.  The package clearly builds in Fedora, which builds with koji, which uses mock.

> With most, if not all, srpms supplied by Fedora, the source files are
> present and provided as part of the srpm file itself as an archive, so I
> don't see why this particular package should be any different.

The pesign SRPM does the same.

> Version-Release number of selected component (if applicable):
> 0.99
> 
> How reproducible:
> Always

Always what?

> Actual results:
> git init

Creates a local .git directory from CWD.

> git config user.email "pesign-owner"
> git config user.name "Fedora Ninjas"

Just sets values so git commit later doesn't fail.

> git add .

Adds everything in the CWD.

> git commit -a -q -m "%{version} baseline."

Commits everything to the local git repo.

> git am %{patches} </dev/null

Applies any patches listed in the spec file to the local git repo that was created in step 1.

> all present in pesign.spec

And several other specs within fedora.

> 
> Expected results:
> Provide the current (0.99) version of pesign source as archive and as part
> of the srpm package. Replace the above statements (and remove git
> BuildRequires) with the following:
> %setup -q -a 1 -n %{name}-%{version}
> %patch0 -p1
> %patch1 -p1
> %patch2 -p1
> %patch3 -p1
> %patch4 -p1

That doesn't add any benefit.

I'm closing this as wontfix.  Peter is free to reopen if he sees fit.

Comment 2 Mr-4 2012-10-25 13:32:31 UTC
(In reply to comment #1)
> > How reproducible:
> > Always
> 
> Always what?
Read above. Question: "How reproducible?". Answer: "Always".

> > Expected results:
> > Provide the current (0.99) version of pesign source as archive and as part
> > of the srpm package. Replace the above statements (and remove git
> > BuildRequires) with the following:
> > %setup -q -a 1 -n %{name}-%{version}
> > %patch0 -p1
> > %patch1 -p1
> > %patch2 -p1
> > %patch3 -p1
> > %patch4 -p1
> 
> That doesn't add any benefit.
OK, let me turn this around a bit - what is the actual benefit of adding a git dependency, bearing in mind that if I have to install git on my mock machine, that would also add about 20+ other packages which git requires, when the same functionality can be easily accomplished by replacing all the git statement with the ones I suggested above?

Apart from filling up my mock directory with unnecessary crap, I can't see what tangible benefit git brings to the build up process, compared to the "traditional" way I suggested above, which is used in 99% of Fedora-distributed srpms. Care to enlighten me?

> I'm closing this as wontfix.  Peter is free to reopen if he sees fit.
Fair enough.


Note You need to log in before you can comment on or make changes to this bug.