[chef-dev] Re: Re: Re: Re: Re: FreeBSD Omnibus Support


Chronological Thread 
  • From: Brandon Martin < >
  • To: Sean OMeara < >
  • Cc: Scott Sanders < >, Pete Cheslock < >, Joe Miller < >, Bryan McLellan < >, " " < >
  • Subject: [chef-dev] Re: Re: Re: Re: Re: FreeBSD Omnibus Support
  • Date: Tue, 2 Apr 2013 20:39:54 -0700

Thanks for pointing me at this thread Bryan.  *subscribes*

I've had builds for FreeBSD 10.x-CURRENT, 9.x-STABLE working for a long while and they seem to work well.  I haven't worked with 8.x at all as I don't use it.  I also had a working build for NetBSD.

The 10 month old omnibus-ruby PR#7 has the stuff to build FreeBSD packages.  It would need to be srsly rebased of course as 10 months is ages these days..  omnibus-software PR#2 created working builds 10 months ago, its mostly just setting up CFLAGs and judicious use of gmake.  omnibus-chef PR#2 just changes the shebang to use /usr/bin/env so the postinstall/rm scripts work as-advertised when installing via pkg_add and pkg_delete.

If there is interest i can rebase the commits and verify the builds, im not sure if the stuff i have pushed up to github is before or after the full switch over to clang/llvm, pretty sure it is but I'd have to check.  If not it is just moar cflag munging if i recall correctly.

the good news is it works without issue on 10.x, used as a daily workstation for a year or more.  I'm now lost in ubuntu land for the time being :( :) :/ so it may be good therapy for me to get these updated.

fwiw even if the libc abi changed on FreeBSD you could just target 8.x and require compat-libc packages.  the old abi will still be there..

it builds on netbsd x86/amd64 with essentially the same config and i would assume openbsd follows suit although i have not tested it..

if Scott has working, more recent builds then it is probably best to PR those and work forward from there.

Cheers,
Brandon




On Tue, Mar 26, 2013 at 1:37 PM, Sean OMeara < " target="_blank"> > wrote:
Hi Scott

I was referring to any extra-pristine-tarball patches you would need
to compile individual pieces from the omnibus-software project.
(ncurses, openssl, ruby, etc)

-s

On Tue, Mar 26, 2013 at 4:17 PM, Scott Sanders < "> > wrote:
> Sean,
>
> Historically, I have built my FreeBSD base boxes using the latest available
> ISO media without running freebsd-update to pull in patches. The userland
> starts as binary packages from the -stable package site, but this is
> replaced after portsnap finishes and the minimal packages needed for a
> vagrant basebox are built.
>
> Not sure if thats the patch set you were referring to, or if I'm mistaken.
>
> Also, I just got to BOS a few hours ago for Monitorama. I believe Pete is in
> town too. If anyone wants to grab a drink and hack on this, let me know!
>
> -Scott
>
>
> On Tue, Mar 26, 2013 at 4:08 PM, Sean OMeara < "> > wrote:
>>
>> Not sure if you guys got this working yet, but I did a port to SmartOS
>> (base64 1.8.4) a while back and ran into some of the same issues I'd
>> imagine you would on BSD
>>
>> Check out the last comment on this ticket.
>> http://tickets.opscode.com/browse/CHEF-2576
>>
>> Pretty much all those patches are to fix C compilation issues with GCC
>> 4.7 being strict about function prototype mismatches.
>> (int foo / void foo)
>>
>> I'm not sure how LLVM/Clang will behave.
>>
>> Another topic is BTM brought up is do we want to apply all patches to
>> all OS builds?
>> Or keep a "minimum viable patch set" set for each platform?
>>
>> -s
>>
>> On Tue, Mar 26, 2013 at 3:39 PM, Pete Cheslock < "> >
>> wrote:
>> > Yea - I think that would work.  That would mean that we assume what
>> > works on
>> > 9.1 will likely work on 9.0? Probably similarly for 8.3, 8.2, etc.
>> >
>> > Unless we just "say" technically only support for 8.3 and 9.1 and if it
>> > works on other versions, great.
>> >
>> > -Pete
>> >
>> >
>> > On Tue, Mar 26, 2013 at 3:26 PM, Scott Sanders < "> >
>> > wrote:
>> >>
>> >> The omnibus-chef rake task spits out installable shell scripts like
>> >> this:
>> >> chef-11.4.0_0.freebsd.9.1-RELEASE.sh
>> >>
>> >> I believe I will adjust the installer name to something like
>> >> "chef-11.4.0_0.freebsd.9.amd64.sh" so the install.sh script can select
>> >> the
>> >> correct architecture. This also simplifies the naming so we don't need
>> >> separate packages for 9.0-RELEASE, 9.1-RC3, etc.
>> >>
>> >> Thoughts?
>> >>
>> >> -Scott
>> >>
>> >> On Fri, Mar 22, 2013 at 12:23 PM, Joe Miller < "> > wrote:
>> >>>
>> >>> I am on the list. =)
>> >>>
>> >>> The OpenBSD LWRPs (just Service & Package) are pretty close to the
>> >>> FreeBSD counterparts in chef-core but they do not work directly on
>> >>> openbsd.
>> >>> I tried. There are subtle differences in how each handles rc.d and the
>> >>> pkg_*
>> >>> commands were also slightly different.
>> >>>
>> >>> Additionally I did not support compiling from ports in the
>> >>> Openbsd::Package provider as the FreeBSD appears to support.
>> >>>
>> >>> Getting chef 11.x to run on openbsd was pretty easy. I first looked at
>> >>> building an omnibus pkg on openbsd but that had all the looks of a
>> >>> major yak
>> >>> shave. So I went with a simple install of ruby193 from pkg followed by
>> >>> a gem
>> >>> install of Chef. It worked great.
>> >>>
>> >>> It would be pretty interesting to get openbsd omnibus builds going.
>> >>> Scott
>> >>> and other's work on omnibus-freebsd builds may be a good starting
>> >>> point.
>> >>> Whatever patches openbsd's ports includes for the ruby193 package are
>> >>> also
>> >>> probably going to be pretty useful.
>> >>>
>> >>>
>> >>> On Fri, Mar 22, 2013 at 9:09 AM, Pete Cheslock
>> >>> < "> >
>> >>> wrote:
>> >>>>
>> >>>> Awesome - I know Joe Miller, who may or not be on this list, has done
>> >>>> some work around chef and openbsd - but I believe many of the
>> >>>> resources he's
>> >>>> written are almost the same as would work on FreeBSD.
>> >>>>
>> >>>> https://github.com/joemiller/chef-openbsd
>> >>>>
>> >>>> Scott probably knows better there - i think he has a similar set of
>> >>>> lwrp's for FreeBSD, and i know I would love to see them make their
>> >>>> way into
>> >>>> chef core (and will be happy to do any testing needed).
>> >>>>
>> >>>> -Pete
>> >>>>
>> >>>> On Fri, Mar 22, 2013 at 11:59 AM, Scott Sanders
>> >>>> < "> >
>> >>>> wrote:
>> >>>>>
>> >>>>> I will publish the Bento definitions and vagrant base boxes for
>> >>>>> freebsd
>> >>>>> 9.1 amd64/i386 shortly. Adding 8.x shouldn't be much work from
>> >>>>> there.
>> >>>>>
>> >>>>> The omnibus builds I have work on FreeBSD, but the omnibus repo
>> >>>>> requires a handful of extra tweaks to get the cookbooks working to
>> >>>>> provision
>> >>>>> the vagrant build box correctly. It appears to mostly be updating
>> >>>>> package
>> >>>>> names.
>> >>>>>
>> >>>>> The ruby build step for omnibus requires a custom patch I added to
>> >>>>> disable libexecinfo, since the autoconf scripts for libexecinfo
>> >>>>> hardcode the
>> >>>>> LDFLAGS to point to /usr/local instead of the desired /opt/chef
>> >>>>> prefix.
>> >>>>>
>> >>>>> Follow along on the freebsd branches of the following forks:
>> >>>>>
>> >>>>> https://github.com/jssjr/bento
>> >>>>> https://github.com/jssjr/omnibus-ruby
>> >>>>> https://github.com/jssjr/omnibus-chef
>> >>>>> https://github.com/jssjr/omnibus-software
>> >>>>>
>> >>>>> I'm very excited to see some interest in Chef on FreeBSD!
>> >>>>>
>> >>>>> Scott Sanders  |  Tech Operations  |  803.767.0060  |
>> >>>>> @scott_sanders
>> >>>>> taximagic : http://taximagic.com  |  sedanmagic :
>> >>>>> http://sedanmagic.com
>> >>>>>
>> >>>>>
>> >>>>> On Fri, Mar 22, 2013 at 11:44 AM, Bryan McLellan < "> >
>> >>>>> wrote:
>> >>>>>>
>> >>>>>> We're planning on adding Omnibus builds for FreeBSD. I know Pete
>> >>>>>> Cheslock, Scott Sanders and Brandon Martin have worked on this, is
>> >>>>>> anyone
>> >>>>>> else out there working on it?
>> >>>>>>
>> >>>>>> I'm presuming that libc changed between 8.x and 9.x, so we'll need
>> >>>>>> four builds, one for 32-bit and one for 64-bit on both 8.x and 9.x
>> >>>>>>
>> >>>>>> ---
>> >>>>>> Bryan McLellan | opscode | technical program manager, open source
>> >>>>>> (c) 206.607.7108 | (t) @btmspox | (b) http://blog.loftninjas.org
>> >>>>>>
>> >>>>>>
>> >>>>>>
>> >>>>>
>> >>>>
>> >>>
>> >>
>> >
>
>




Archive powered by MHonArc 2.6.16.

§