bricoleurs / bricolage

Content management and publishing system
http://www.bricolagecms.org/
111 stars 51 forks source link

.spec file for rhel6 rpm, with some config related patches #43

Closed djzort closed 9 years ago

djzort commented 11 years ago

I created an rpm for rhel6 (which should be aok for centos6 and sl6 as well) so felt like it might be nice to send it through.

I made some config choices which i applied via some patches. That is apache2 (which is all thats available on el6) and postgresql with single mode.

database testing didnt work, so i just sort of carved that out of the build process.

also the dependencies are probably over the top and i turned off the make test part of the build process.

so im summary, not perfect by any means. i have made some choices in the .spec file as to how bricolage will be configured which people may not like... but perhaps someone will find it useful!

theory commented 11 years ago

Hey, thanks, this looks pretty good. I've been creating a lot of RPMs at work, so actually know how this shit works now. Sort of.

Anyway, a few questions:

Thanks, this is a big help!

David

djzort commented 11 years ago

hi David

I put this together based on my own use case, which allowed for shortcuts. 'm' was appropriate for myself and can easily be changed for a 'canonical' rpm package.

In my use case I was upgrading from an earlier release that was installed without an rpm. I didnt want to spend the time to have the rpm populate (in my case) postgresql or have to deal with upgrading the schema. So yeah my usage had use of postgresql and no use of php.

I used cpanspec to create the rpm .spec file boilerplate. Bless its heart it tried, but was confused by a number of things which necessitated forcing all the dependencies. This also explains the perl- prefix.

I also used koji to built the rpm, and the tests had trouble in a 'mock' chroot - specifically starting up postgres etc.

As bricolage has so many options, you could either create a "mega" rpm which would drag in php, oracle, both postgres and mysql etc or perhaps rpms for a number of common flavor combos. Alas i am not skilled enough with .spec files to know how to implement these options as something you can select.

Ultimately, despite the decisions ive made in the .spec file which pertain to my usage case - i wanted to share the .spec file in the hope that more experienced RPMers would be able to refine it more (and i would learn something in the process)

theory commented 11 years ago

Hi djzort. Thanks for the detailed response!

If you are not able to do more at this point, I understand. I just don't know when anyone else will get to it either. One needs access to a box with the proper upstream Yum repos configured in order to even test it. I don't doubt this will be a big help bootstrapping such a project, though.

Thanks!

David

djzort commented 11 years ago

There are a lot of dependencies that are outside of stock el6 (be that centos6 or rhel6) and epel. So even a good .spec file will give people depedency hell. Would it be possible for bricolage to adopt Dist::Zilla? then cpansec will have a much nicer time creating boiler plate .spec code.

theory commented 11 years ago

I don't understand. You've already created the spec file. Now we can just edit it.

phillipadsmith commented 9 years ago

Not sure what the next action is here... @theory?

theory commented 9 years ago

@phillipadsmith Nothing, unless you want to take a stab at writing a distributable spec file.

phillipadsmith commented 9 years ago

@theory Unlikely, so closing for now.