From Fedora Project Wiki
(New page: {{Admon/warning|This is a draft|}} = The goal = * <pre>$ yum emerge</pre> ** srpm download && rebuild using make options *** kernel .config *** sub-packages *** requires (strip) *** buil...)
 
No edit summary
Line 57: Line 57:
* yum emerge foo where foo has subpackages
* yum emerge foo where foo has subpackages
** handle them somehow ...
** handle them somehow ...
= ms #7 =
* dispatch build of srpm to koji,
* download resulting binary rpms
* continue with [[#ms#5]]


= oneliners =
= oneliners =
  rpmquery --specfile --qf="%{NAME}\n" wireshark.spec | grep -E "^wireshark$" | xargs -n 1 -I{} repoquery --requires --qf="%{NAME}\n" "{}" | xargs -n 1 -I{} repoquery --whatprovides --qf="%{NAME}\n" "{}" | sort | uniq
  rpmquery --specfile --qf="%{NAME}\n" wireshark.spec | grep -E "^wireshark$" | xargs -n 1 -I{} repoquery --requires --qf="%{NAME}\n" "{}" | xargs -n 1 -I{} repoquery --whatprovides --qf="%{NAME}\n" "{}" | sort | uniq

Revision as of 22:11, 26 January 2009

This is a draft

The goal

  • $ yum emerge
    • srpm download && rebuild using make options
      • kernel .config
      • sub-packages
      • requires (strip)
      • buildrequires (strip)
      • configure opts
      • patches++ (secondary)
    • install new binary rpm
  • the goal is to have and keep a closed and custom compiled RPMdB for applications

ms #1

  • yum emerge foo
    • rebuild foo
    • install foo

ms #2

  • yum emerge foo
    • rebuild foo in mock
    • install foo

ms #3

  • yum emerge foo
    • rebuild foo --without-bar
      • strip requires
      • strip buildrequires
      • rebuild srpm
      • build in mock
    • install foo

ms #4

  • yum emerge foo
    • download srpm
    • install srpm
    • edit spec to include Patchx: header and %PatchX macro
    • rebuild foo (like ms #3)
    • install foo

ms #5

  • yum emerge foo
    • download srpm
    • install srpm
    • edit foo
    • rebuild (like ms#4)
    • use new binary rpm to resolve immediate deps
    • for dep in deps: (first search relevant srpm,misc.unique())
      • download srpm
      • edit rebuild
      • for dep in deps: ...

ms #6

  • yum emerge foo where foo has subpackages
    • handle them somehow ...

ms #7

  • dispatch build of srpm to koji,
  • download resulting binary rpms
  • continue with #ms#5

oneliners

rpmquery --specfile --qf="%{NAME}\n" wireshark.spec | grep -E "^wireshark$" | xargs -n 1 -I{} repoquery --requires --qf="%{NAME}\n" "{}" | xargs -n 1 -I{} repoquery --whatprovides --qf="%{NAME}\n" "{}" | sort | uniq