[Nix-dev] clang-based stdenv for OSX Yosemite

2014-11-03 Thread Joel
Daniel Peebles, John Wiegley, Eric Seidel, and myself have been working on a 
clang-based stdenv for OSX for the past few weeks. It is fully functional now 
and you can find it at https://github.com/joelteon/nixpkgs 
. It’s being continuously built on my 
Hydra instance at https://hydra.joelt.io/ . If you 
would like to use our branch you should add hydra.joelt.io to your binary 
caches. To my knowledge this is the only nixpkgs fork that works with Yosemite.

Daniel is also working on a 100% pure stdenv (which involves building Apple’s 
open source libc), but that’s still in the works.

There are a few notable changes besides the obvious change in compiler. We are 
willing to revert these before merging into NixOS upstream, since they’re 
pretty major:

* stdenv.gcc has been renamed to stdenv.cc . In the process 
we fixed a few bugs where packages incorrectly referred to gcc instead of the 
stdenv’s compiler. However, this does result in totally rebuilding the Linux 
stdenv as well, since the generic setup script now expects a $cc variable 
instead of a $gcc variable.
* Instead of using the string “gcc” or “${stdenv.gcc}/bin/gcc”, we now use 
`stdenv.progname` (and `stdenv.prognamexx`).

We had a few motivations for this effort. I’d been considering using clang as 
my stdenv’s main compiler ever since I found out that some of the packages I 
hold dear (such as vim and phantomjs) need to be built with Apple’s ported GCC 
4.2.1. Aside from my philosophical objection to this, Yosemite’s developer 
previews were unable to compile GCC at all (at least for the first 3). I think 
it’s possible to compile GCC on Yosemite GM, but I’m no longer inclined to try 
as this branch now uses Apple’s officially supported compiler.

We’d welcome your input and also your help; there’s still a lot left to do.___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] clang-based stdenv for OSX Yosemite

2014-11-03 Thread Daniel Peebles
Anyone interested in this project should join ##nix-darwin on
freenode. There's still lots to do!

On Mon, Nov 3, 2014 at 9:31 PM, Joel  wrote:
> Daniel Peebles, John Wiegley, Eric Seidel, and myself have been working on a
> clang-based stdenv for OSX for the past few weeks. It is fully functional
> now and you can find it at https://github.com/joelteon/nixpkgs. It’s being
> continuously built on my Hydra instance at https://hydra.joelt.io/. If you
> would like to use our branch you should add hydra.joelt.io to your binary
> caches. To my knowledge this is the only nixpkgs fork that works with
> Yosemite.
>
> Daniel is also working on a 100% pure stdenv (which involves building
> Apple’s open source libc), but that’s still in the works.
>
> There are a few notable changes besides the obvious change in compiler. We
> are willing to revert these before merging into NixOS upstream, since
> they’re pretty major:
>
> * stdenv.gcc has been renamed to stdenv.cc. In the process we fixed a few
> bugs where packages incorrectly referred to gcc instead of the stdenv’s
> compiler. However, this does result in totally rebuilding the Linux stdenv
> as well, since the generic setup script now expects a $cc variable instead
> of a $gcc variable.
> * Instead of using the string “gcc” or “${stdenv.gcc}/bin/gcc”, we now use
> `stdenv.progname` (and `stdenv.prognamexx`).
>
> We had a few motivations for this effort. I’d been considering using clang
> as my stdenv’s main compiler ever since I found out that some of the
> packages I hold dear (such as vim and phantomjs) need to be built with
> Apple’s ported GCC 4.2.1. Aside from my philosophical objection to this,
> Yosemite’s developer previews were unable to compile GCC at all (at least
> for the first 3). I think it’s possible to compile GCC on Yosemite GM, but
> I’m no longer inclined to try as this branch now uses Apple’s officially
> supported compiler.
>
> We’d welcome your input and also your help; there’s still a lot left to do.
>
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] clang-based stdenv for OSX Yosemite

2014-11-07 Thread Alfredo Di Napoli
Thank you so much guys for your stoic effort!
For the nix newbies like me, could you please expand upon
"If you would like to use our branch you should add hydra.joelt.io to your
binary caches."

I have absolutely no clue how to do it :)
Thanks!
Alfredo

On Tuesday, 4 November 2014, Daniel Peebles  wrote:
> Anyone interested in this project should join ##nix-darwin on
> freenode. There's still lots to do!
>
> On Mon, Nov 3, 2014 at 9:31 PM, Joel  wrote:
>> Daniel Peebles, John Wiegley, Eric Seidel, and myself have been working
on a
>> clang-based stdenv for OSX for the past few weeks. It is fully functional
>> now and you can find it at https://github.com/joelteon/nixpkgs. It’s
being
>> continuously built on my Hydra instance at https://hydra.joelt.io/. If
you
>> would like to use our branch you should add hydra.joelt.io to your binary
>> caches. To my knowledge this is the only nixpkgs fork that works with
>> Yosemite.
>>
>> Daniel is also working on a 100% pure stdenv (which involves building
>> Apple’s open source libc), but that’s still in the works.
>>
>> There are a few notable changes besides the obvious change in compiler.
We
>> are willing to revert these before merging into NixOS upstream, since
>> they’re pretty major:
>>
>> * stdenv.gcc has been renamed to stdenv.cc. In the process we fixed a few
>> bugs where packages incorrectly referred to gcc instead of the stdenv’s
>> compiler. However, this does result in totally rebuilding the Linux
stdenv
>> as well, since the generic setup script now expects a $cc variable
instead
>> of a $gcc variable.
>> * Instead of using the string “gcc” or “${stdenv.gcc}/bin/gcc”, we now
use
>> `stdenv.progname` (and `stdenv.prognamexx`).
>>
>> We had a few motivations for this effort. I’d been considering using
clang
>> as my stdenv’s main compiler ever since I found out that some of the
>> packages I hold dear (such as vim and phantomjs) need to be built with
>> Apple’s ported GCC 4.2.1. Aside from my philosophical objection to this,
>> Yosemite’s developer previews were unable to compile GCC at all (at least
>> for the first 3). I think it’s possible to compile GCC on Yosemite GM,
but
>> I’m no longer inclined to try as this branch now uses Apple’s officially
>> supported compiler.
>>
>> We’d welcome your input and also your help; there’s still a lot left to
do.
>>
>> ___
>> nix-dev mailing list
>> nix-dev@lists.science.uu.nl
>> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>>
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] clang-based stdenv for OSX Yosemite

2014-11-07 Thread Eric Seidel
Alfredo Di Napoli  writes:

> Thank you so much guys for your stoic effort!
> For the nix newbies like me, could you please expand upon
> "If you would like to use our branch you should add hydra.joelt.io to your
> binary caches."

You want to set the binary-caches option in nix.conf, e.g.

  binary-caches = http://cache.nixos.org http://hydra.joelt.io

I think nix looks for /etc/nix/nix.conf by default, but this is
configurable via the NIX_CONF_DIR environment variable.

Eric
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] clang-based stdenv for OSX Yosemite

2014-11-12 Thread Wout Mertens
So on a fresh 10.10 with XCode 6.1 the joelteon master branch can't build
things like Python. The error is below, I presume it is because the
downloaded clang depends on libraries that aren't available. Should I just
rebuild the world without binary cache?

configure:3947: checking whether the C compiler works

configure:3969: clang
-I/nix/store/0vxclyfimw81d5a42z5awxmkvl3zgl1x-zlib-1.2.8/include
-I/nix/store/0x4dqky1g3jvwvadcw51najjj0a6ibiq-bzip2-1.0.6/include
-I/nix/store/0zma7049nw3mwq8aik183i2mbpgw2426-xz-5.0.5/include
-I/nix/store/i49hpms5d8j0cg2izjxnzyl9b02s508j-gdbm-1.11/include
-I/nix/store/z1sh0nlnwlv0yma6c91m55fq9zr9d9fa-sqlite-3.8.7/include
-I/nix/store/igmjzlrkczlzggaplyi3makxfm9iqvkg-db-5.3.28/include
-I/nix/store/m8gw7ggzdny8p2w9dik9f481pmjwmpma-readline-6.3p08/include
-I/nix/store/fc688jhpqkbjxhn8xnksswpv5szcvdxg-ncurses-5.9/include
-I/nix/store/89zxnpdrhv2z9lffhhmjac52dspqqpi4-openssl-1.0.1j/include
-I/nix/store/rah8sp90y0aml9495av4w6ls3y7vjdnj-tcl-8.5.15/include
-I/nix/store/7yhp7w16wnq206x4qih2fzfkkbm7s558-tk-8.5.15/include
-I/nix/store/kpfyi3q82iblsnb663ybksnas5g09x3q-libX11-1.6.2/include
-I/nix/store/wxv9vgqi60dhxm33q10lh0wx8p8l1glk-xproto-7.0.26/include
-L/nix/store/0vxclyfimw81d5a42z5awxmkvl3zgl1x-zlib-1.2.8/lib
-L/nix/store/0x4dqky1g3jvwvadcw51najjj0a6ibiq-bzip2-1.0.6/lib
-L/nix/store/0zma7049nw3mwq8aik183i2mbpgw2426-xz-5.0.5/lib
-L/nix/store/i49hpms5d8j0cg2izjxnzyl9b02s508j-gdbm-1.11/lib
-L/nix/store/z1sh0nlnwlv0yma6c91m55fq9zr9d9fa-sqlite-3.8.7/lib
-L/nix/store/igmjzlrkczlzggaplyi3makxfm9iqvkg-db-5.3.28/lib
-L/nix/store/m8gw7ggzdny8p2w9dik9f481pmjwmpma-readline-6.3p08/lib
-L/nix/store/fc688jhpqkbjxhn8xnksswpv5szcvdxg-ncurses-5.9/lib
-L/nix/store/89zxnpdrhv2z9lffhhmjac52dspqqpi4-openssl-1.0.1j/lib
-L/nix/store/rah8sp90y0aml9495av4w6ls3y7vjdnj-tcl-8.5.15/lib
-L/nix/store/7yhp7w16wnq206x4qih2fzfkkbm7s558-tk-8.5.15/lib
-L/nix/store/kpfyi3q82iblsnb663ybksnas5g09x3q-libX11-1.6.2/lib
-L/nix/store/wxv9vgqi60dhxm33q10lh0wx8p8l1glk-xproto-7.0.26/lib conftest.c
-lncurses >&5

ld: library not found for -lcrt1.10.6.o

clang-3.5: error: linker command failed with exit code 1 (use -v to see
invocation)

On Fri Nov 07 2014 at 6:23:57 PM Eric Seidel  wrote:

> Alfredo Di Napoli  writes:
>
> > Thank you so much guys for your stoic effort!
> > For the nix newbies like me, could you please expand upon
> > "If you would like to use our branch you should add hydra.joelt.io to
> your
> > binary caches."
>
> You want to set the binary-caches option in nix.conf, e.g.
>
>   binary-caches = http://cache.nixos.org http://hydra.joelt.io
>
> I think nix looks for /etc/nix/nix.conf by default, but this is
> configurable via the NIX_CONF_DIR environment variable.
>
> Eric
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
>
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] clang-based stdenv for OSX Yosemite

2014-11-12 Thread Eric Seidel
Can you update to the latest joelteon/master (3b57c2b) and build Python again? 
Joel's hydra seems to be building Python just fine at the moment, and I've also 
just done it locally without issue.

Thanks!
Eric


> On Nov 12, 2014, at 07:20, Wout Mertens  wrote:
> 
> So on a fresh 10.10 with XCode 6.1 the joelteon master branch can't build 
> things like Python. The error is below, I presume it is because the 
> downloaded clang depends on libraries that aren't available. Should I just 
> rebuild the world without binary cache?
> 
> configure:3947: checking whether the C compiler works
> 
> configure:3969: clang  
> -I/nix/store/0vxclyfimw81d5a42z5awxmkvl3zgl1x-zlib-1.2.8/include 
> -I/nix/store/0x4dqky1g3jvwvadcw51najjj0a6ibiq-bzip2-1.0.6/include 
> -I/nix/store/0zma7049nw3mwq8aik183i2mbpgw2426-xz-5.0.5/include 
> -I/nix/store/i49hpms5d8j0cg2izjxnzyl9b02s508j-gdbm-1.11/include 
> -I/nix/store/z1sh0nlnwlv0yma6c91m55fq9zr9d9fa-sqlite-3.8.7/include 
> -I/nix/store/igmjzlrkczlzggaplyi3makxfm9iqvkg-db-5.3.28/include 
> -I/nix/store/m8gw7ggzdny8p2w9dik9f481pmjwmpma-readline-6.3p08/include 
> -I/nix/store/fc688jhpqkbjxhn8xnksswpv5szcvdxg-ncurses-5.9/include 
> -I/nix/store/89zxnpdrhv2z9lffhhmjac52dspqqpi4-openssl-1.0.1j/include 
> -I/nix/store/rah8sp90y0aml9495av4w6ls3y7vjdnj-tcl-8.5.15/include 
> -I/nix/store/7yhp7w16wnq206x4qih2fzfkkbm7s558-tk-8.5.15/include 
> -I/nix/store/kpfyi3q82iblsnb663ybksnas5g09x3q-libX11-1.6.2/include 
> -I/nix/store/wxv9vgqi60dhxm33q10lh0wx8p8l1glk-xproto-7.0.26/include 
> -L/nix/store/0vxclyfimw81d5a42z5awxmkvl3zgl1x-zlib-1.2.8/lib 
> -L/nix/store/0x4dqky1g3jvwvadcw51najjj0a6ibiq-
 bzip2-1.0.6/lib -L/nix/store/0zma7049nw3mwq8aik183i2mbpgw2426-xz-5.0.5/lib 
-L/nix/store/i49hpms5d8j0cg2izjxnzyl9b02s508j-gdbm-1.11/lib 
-L/nix/store/z1sh0nlnwlv0yma6c91m55fq9zr9d9fa-sqlite-3.8.7/lib 
-L/nix/store/igmjzlrkczlzggaplyi3makxfm9iqvkg-db-5.3.28/lib 
-L/nix/store/m8gw7ggzdny8p2w9dik9f481pmjwmpma-readline-6.3p08/lib 
-L/nix/store/fc688jhpqkbjxhn8xnksswpv5szcvdxg-ncurses-5.9/lib 
-L/nix/store/89zxnpdrhv2z9lffhhmjac52dspqqpi4-openssl-1.0.1j/lib 
-L/nix/store/rah8sp90y0aml9495av4w6ls3y7vjdnj-tcl-8.5.15/lib 
-L/nix/store/7yhp7w16wnq206x4qih2fzfkkbm7s558-tk-8.5.15/lib 
-L/nix/store/kpfyi3q82iblsnb663ybksnas5g09x3q-libX11-1.6.2/lib 
-L/nix/store/wxv9vgqi60dhxm33q10lh0wx8p8l1glk-xproto-7.0.26/lib conftest.c  
-lncurses >&5
> 
> ld: library not found for -lcrt1.10.6.o
> 
> clang-3.5: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> 
> 
> On Fri Nov 07 2014 at 6:23:57 PM Eric Seidel  wrote:
> Alfredo Di Napoli  writes:
> 
> > Thank you so much guys for your stoic effort!
> > For the nix newbies like me, could you please expand upon
> > "If you would like to use our branch you should add hydra.joelt.io to your
> > binary caches."
> 
> You want to set the binary-caches option in nix.conf, e.g.
> 
>   binary-caches = http://cache.nixos.org http://hydra.joelt.io
> 
> I think nix looks for /etc/nix/nix.conf by default, but this is
> configurable via the NIX_CONF_DIR environment variable.
> 
> Eric
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev

___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev