phantomjs-rpms icon indicating copy to clipboard operation
phantomjs-rpms copied to clipboard

Reorganize Repo structure

Open tholewebgods opened this issue 12 years ago • 2 comments

I'd like to change the tree.

  • Have only one phantomjs.spec (Note: moved to #11 )
  • No version in the name (Note: moved to #11 )
  • Use (at least) tags (and branches) to track the version-specific changes (Note: moved to #11 )
  • Move that .spec file up to the root
  • Remove source files and Phantom <= 1.4.0 related stuff

This should start with Phantom 1.5.0 (current in this Repo).

I would do this and pull-request it to you if you agree.

tholewebgods avatar Jan 04 '13 23:01 tholewebgods

I would like to try your suggested approach of version-specific branches.

Do I understand right, that you suggest to create branches like

  • phantom-1.5
  • phantom-1.6
  • ...

Every branch would build the respective version only.

I currently fail to see the advantage of having moving the .spec out of the SPECS/ folder. With the current layout everyone, who every build a RPM should know where to find what.

jbraeuer avatar Jan 06 '13 16:01 jbraeuer

Do I understand right, that you suggest to create branches like

Yes, of course, we can also spare the "phantomjs-" and just use 1.5, 1.6, ... for branches.

I currently fail to see the advantage of having moving the .spec out of the SPECS/ folder.

I'd like to match the layout of projects that are established on repositories/distributions like EPEL, Fedora to increase the chance that we can bring this project there some time.

http://pkgs.fedoraproject.org/cgit/nodejs.git/tree/ http://pkgs.fedoraproject.org/cgit/ruby.git/ ...

I know that there's still much to do, like #10, the problem of the included Qt version and build (which should actually be linked from the system's Qt) and probably much more ...

We can split this task from this issue and only change the file nameing and introduce a branching mode.

With the current layout everyone, who every build a RPM should know where to find what.

Let me plead for this... :)

I'd recommend using an rpmbuild layout with ~/rpmbuild/{SPECS,RPMS,SOURCES,...} and a minimal .rpmmacros file.

$ cat ~/.rpmmacros 
%_topdir      %(echo $HOME)/rpmbuild
%__arch_install_post   /usr/lib/rpm/check-rpaths   /usr/lib/rpm/check-buildroot
%_signature gpg
%_gpg_name  Thomas Lehmann

So, you can use rpmbuild -bX whereever/whatever.spec and your .rpms will always be thrown to ~/rpmbuild/RPMS. Downloading the sources can - if they're downloadable as archive - as easy as.

$ spectool -g -R whereever/wehatever.spec

( - g et the sources and put them into the - R pmbuild/SOURCES directory).

As long as change the Source: line to this:

Source0: http://phantomjs.googlecode.com/files/%{name}-%{version}-source.zip

Here's an example: http://pkgs.fedoraproject.org/cgit/nodejs.git/tree/nodejs.spec Specifying the Source as URL futher has the advantage, that we can "document" what's the source.

I'll add an issue for the Source: thing and another one for the structural changes so we can separately treat them.

I'll add an issue for introducing a branching model so we can separately treat them.

tholewebgods avatar Jan 06 '13 21:01 tholewebgods