Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread stewart mackenzie
Understood.

The comments regarding name finding in this post are interesting:
http://www.tweag.io/blog/stack-nix-portable-reproducible-builds seems
like a common issue.

(a lot of weight just to support incremental recompilation for Haskell!)
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread Eric Merritt
I am not arguing against that kind of categorization at all. Its just that it 
only works
where you have a directory structure. The Haskell approach does not, so it wont 
work there.
Its a problem with the Haskell approach.



Sent from [ProtonMail](https://protonmail.com), encrypted email based in 
Switzerland.



 Original Message 
Subject: Re: [Nix-dev] haskell structure for all of nixpkgs
Local Time: April 25, 2016 12:49 PM
UTC Time: April 25, 2016 7:49 PM
From: setor...@gmail.com
To: e...@merritt.tech
CC: do...@dev.si,nix-dev@lists.science.uu.nl

Ah I see, Haskell grepping is quite useless.

Categorization using hierarchy generally is a good idea and makes
sense for large amounts of information. This naturally ties in with a
folder hierarchy. I personally find it refreshing information is
stored in the directory structure aka the hierarchy. It also allows
making little stateless expressions that can be copied and pasted
around, they are intelligent enough to look at the folder structure
and derive meaning. This helps when refactoring the hierarchy.___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread stewart mackenzie
Ah I see, Haskell grepping is quite useless.

Categorization using hierarchy generally is a good idea and makes
sense for large amounts of information. This naturally ties in with a
folder hierarchy. I personally find it refreshing information is
stored in the directory structure aka the hierarchy. It also allows
making little stateless expressions that can be copied and pasted
around, they are intelligent enough to look at the folder structure
and derive meaning. This helps when refactoring the hierarchy.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread Eric Merritt
Stewart,

As I was formulating a reply, I think this crystallized for me. At the moment 
Nix encodes
a lot of information in the file system/directory structure. Grep naturally 
surfaces that information. Due to this,
In the haskell packages that information doesn't exist and so is not 
surfaceable, regardless of the command used.

The easiest way to demonstrate this is to go into the root of your nixpkgs repo 
do the following:

$> grep -r bytestring ./

Then in the same place do

$> grep -r lwt ./

Notice the difference in comprehensibility and usefulness of the output .The 
first search is for a haskell package, the second
and ocaml package.

Arguably, I would say that that information shouldn't be encoded in the 
directory structure, it should be somewhere in the
nix expression. If there was a nix command that was expression aware and 
allowed me to do the 'bytestring' search and get
useful output like I get when I search for 'lwt', that would be very useful.

Eric


 Original Message 
Subject: Re: [Nix-dev] haskell structure for all of nixpkgs
Local Time: April 25, 2016 11:54 AM
UTC Time: April 25, 2016 6:54 PM
From: setor...@gmail.com
To: e...@merritt.tech
CC: do...@dev.si,nix-dev@lists.science.uu.nl

I see,

What would that tooling look like?
Can anyone else see any other drawbacks of this approach?
How do Haskellers deal with searching for packages?___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread Eric Merritt
Stewert,

I did the majority of the Erlang/Beam packaging and I followed the Haskell 
model for two main reasons.

1. It worked so well in Haskell - why deviate?
2. Expression generation was much easier.

I think these strongly win out, at at least for the Erlang/Beam world. The 
downside is that grepping the
nixpkgs repository (my default way to search for a package) doesn't work nearly 
as well.

My suspicion is that, if you wanted to go this route generally, you would need 
to improve the tooling
around searching for packages/expressions.

Eric


 Original Message 
Subject: Re: [Nix-dev] haskell structure for all of nixpkgs
Local Time: April 25, 2016 11:15 AM
UTC Time: April 25, 2016 6:15 PM
From: setor...@gmail.com
To: john_eric...@brown.edu
CC: nix-dev@lists.science.uu.nl

On Tue, Apr 26, 2016 at 2:02 AM, Ericson, John  wrote:
> I'd say https://github.com/NixOS/nixpkgs/pull/14000 was the first big step
> in this direction, and hopefully
> https://github.com/NixOS/nixpkgs/issues/10874 will lead to the second.

Thanks John for the links, fantastic stuff.
___
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] haskell structure for all of nixpkgs

2016-04-25 Thread stewart mackenzie
I see,

What would that tooling look like?
Can anyone else see any other drawbacks of this approach?
How do Haskellers deal with searching for packages?
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread stewart mackenzie
On Tue, Apr 26, 2016 at 2:02 AM, Ericson, John  wrote:
> I'd say https://github.com/NixOS/nixpkgs/pull/14000 was the first big step
> in this direction, and hopefully
> https://github.com/NixOS/nixpkgs/issues/10874 will lead to the second.

Thanks John for the links, fantastic stuff.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread Ericson, John
Well, besides working on other langauges' integration, I think there are
some Petisms™ that all of nixpkgs could benefit from. A good example is
pervasive use of `self: super: ...` and fix+extend rather than ad-hoc hacks
and the scary reflection used in `lib/customization.nix`.

I'd say https://github.com/NixOS/nixpkgs/pull/14000 was the first big step
in this direction, and hopefully
https://github.com/NixOS/nixpkgs/issues/10874 will lead to the second.

On Mon, Apr 25, 2016 at 10:26 AM, stewart mackenzie 
wrote:

> Okay Domen's a +1, maybe the guys and girls who implemented haskell
> like PL level package systems could weigh in with insight. For example
> ICIUC, Erlang packages adopts the same approach. The gained knowledge
> could be helpful to start with this document.
>
> Could someone with experience please write, in this thread, a few
> words about this approach? Keep it small and simple.
>
> Hopefully this gets more people interested by understanding it. Domen
> says it's advanced and simple... why is it advanced and simple?
> ___
> 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] [JOB] Fullstack web developer

2016-04-25 Thread Colin Putney
Hi folks,

Hope this isn’t off-topic for the list. My company is looking for a mid-level 
or senior engineer to work on a sophisticated web application. It’s a pretty 
simple stack - React, Node and Postgres. We package everything with nix and 
deploy it to NixOS using Nixops. 

Note that we’re not looking for remote developers. We’re a small startup in San 
Francisco, and you’d be working out of our office in the Financial District. If 
you’re in the Bay Area or wiling to relocate, please contact me off-list, and I 
can give you more details. Thanks!

Colin



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


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread stewart mackenzie
Okay Domen's a +1, maybe the guys and girls who implemented haskell
like PL level package systems could weigh in with insight. For example
ICIUC, Erlang packages adopts the same approach. The gained knowledge
could be helpful to start with this document.

Could someone with experience please write, in this thread, a few
words about this approach? Keep it small and simple.

Hopefully this gets more people interested by understanding it. Domen
says it's advanced and simple... why is it advanced and simple?
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread Domen Kožar
I agree - someone should start a tutorial how new language support is added
and the infrastructure should be based on Haskell as it's most advanced and
yet simple.

On Mon, Apr 25, 2016 at 10:47 AM, stewart mackenzie 
wrote:

> Hi Tomasz,
>
> On Sun, Apr 24, 2016 at 6:12 PM, Tomasz Czyż 
> wrote:
> > do you have any description of what you are exactly talking about?
>
> Adopting this approach brings a huge amount of flexibility, could be
> that this style of structuring can be rolled out for different
> languages. Sure there are differences in how languages publish
> packages, but it could be Peter's solution is a 80% solution
> applicable to most languages.
>
> This approach might mean if nixers want support for a new language
> they could plug into this this rather advanced packaging structure and
> hopefully it works out well. Existing supported languages on Nix could
> start converging onto this style of packaging.
>
> The current setup is each language has their own ad hoc solution for
> getting packages, these packages are tightly bound.
> So in the current setup, callPackage refers to a specific file,
> whereas in the haskell setup the callPackage refers to a specific
> recursive set of expressions that are self contained.
> The package set is a function which produces a package set. This
> function takes an argument which produces a package set it should
> produce. It's better to let Peter describe it:
> https://youtu.be/TDnZsBxqeBM?list=PL_IxoDz1Nq2Y7mIxMZ28mVtjRbbnlVdmy&t=1850
>
> (I think) Rok Garbas, has a good question at the end!
>
> Anyway, I just wanted to raise this subject / see if this is an issue
> people are interested in.
> ___
> 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] dosbox

2016-04-25 Thread Nikolay Amiantov
Hi,

This has already been fixed in 3db3355c835622123245515cdba65edb274e9e7b.
Thanks anyway!

On 04/25/2016 10:31 AM, Karn Kallio wrote:
> 
> The attached patch fixes the dosbox build by adding mesa.
> 
> 
> 
> ___
> nix-dev mailing list
> nix-dev@lists.science.uu.nl
> http://lists.science.uu.nl/mailman/listinfo/nix-dev
> 

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


Re: [Nix-dev] phonon adjustment

2016-04-25 Thread Thomas Tuegel
On Mon, Apr 25, 2016 at 2:30 AM, Karn Kallio
 wrote:
>
> The attached patch to phonon adds a fragment of the change from
> staging sufficient to fix the kde5 build in current master, without
> patching paths in includes.
>
> This will make kde5 components (eg dolphin, gwenview) build in master
> until the staging arrives.
>

Merged at b6e63fba6deebd3b65b3db0fbcb7f2a18e162f0d. Thanks!



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


Re: [Nix-dev] haskell structure for all of nixpkgs

2016-04-25 Thread stewart mackenzie
Hi Tomasz,

On Sun, Apr 24, 2016 at 6:12 PM, Tomasz Czyż  wrote:
> do you have any description of what you are exactly talking about?

Adopting this approach brings a huge amount of flexibility, could be
that this style of structuring can be rolled out for different
languages. Sure there are differences in how languages publish
packages, but it could be Peter's solution is a 80% solution
applicable to most languages.

This approach might mean if nixers want support for a new language
they could plug into this this rather advanced packaging structure and
hopefully it works out well. Existing supported languages on Nix could
start converging onto this style of packaging.

The current setup is each language has their own ad hoc solution for
getting packages, these packages are tightly bound.
So in the current setup, callPackage refers to a specific file,
whereas in the haskell setup the callPackage refers to a specific
recursive set of expressions that are self contained.
The package set is a function which produces a package set. This
function takes an argument which produces a package set it should
produce. It's better to let Peter describe it:
https://youtu.be/TDnZsBxqeBM?list=PL_IxoDz1Nq2Y7mIxMZ28mVtjRbbnlVdmy&t=1850

(I think) Rok Garbas, has a good question at the end!

Anyway, I just wanted to raise this subject / see if this is an issue
people are interested in.
___
nix-dev mailing list
nix-dev@lists.science.uu.nl
http://lists.science.uu.nl/mailman/listinfo/nix-dev


Re: [Nix-dev] pgadmin

2016-04-25 Thread Peter Simons
It appears this issue was fixed in 9ad2832b1bf6897d already.

Peter

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


[Nix-dev] dosbox

2016-04-25 Thread Karn Kallio

The attached patch fixes the dosbox build by adding mesa.
>From 29934ae6570cf1c6e884d3a9364a9eeaeeaddfdc Mon Sep 17 00:00:00 2001
From: Karn Kallio 
Date: Mon, 25 Apr 2016 01:36:38 -0430
Subject: [PATCH] dosbox : add mesa to fix build

---
 pkgs/misc/emulators/dosbox/default.nix | 8 +---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/pkgs/misc/emulators/dosbox/default.nix b/pkgs/misc/emulators/dosbox/default.nix
index 2525caf..15bb562 100644
--- a/pkgs/misc/emulators/dosbox/default.nix
+++ b/pkgs/misc/emulators/dosbox/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, SDL, makeDesktopItem }:
+{ stdenv, fetchurl, SDL, mesa, makeDesktopItem }:
 
 stdenv.mkDerivation rec { 
   name = "dosbox-0.74";
@@ -17,9 +17,11 @@ stdenv.mkDerivation rec {
 ];
 
   patchFlags = "-p0";
+
+  #configureFlags = [ "--disable-opengl" ];
   
-  buildInputs = [ SDL ];
-
+  buildInputs = [ mesa SDL ];
+
   desktopItem = makeDesktopItem {
 name = "dosbox";
 exec = "dosbox";
-- 
2.8.0

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


[Nix-dev] phonon adjustment

2016-04-25 Thread Karn Kallio

The attached patch to phonon adds a fragment of the change from
staging sufficient to fix the kde5 build in current master, without
patching paths in includes.

This will make kde5 components (eg dolphin, gwenview) build in master
until the staging arrives.
 >From 356a3dd9a6aea672adf8a234e60f5fa9a33b75c9 Mon Sep 17 00:00:00 2001
From: Karn Kallio 
Date: Mon, 25 Apr 2016 01:00:06 -0430
Subject: [PATCH] phonon : fix configuration paths

---
 pkgs/development/libraries/phonon/default.nix | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pkgs/development/libraries/phonon/default.nix b/pkgs/development/libraries/phonon/default.nix
index 3c731ca..db4c237 100644
--- a/pkgs/development/libraries/phonon/default.nix
+++ b/pkgs/development/libraries/phonon/default.nix
@@ -47,8 +47,8 @@ stdenv.mkDerivation rec {
   postPatch = ''
 sed -i PhononConfig.cmake.in \
 -e "/get_filename_component(rootDir/ s/^.*$//" \
--e "s,\\(set(PHONON_INCLUDE_DIR\\).*$,\\1 \"''${!outputDev}/include\")," \
--e "s,\\(set(PHONON_LIBRARY_DIR\\).*$,\\1 \"''${!outputLib}/lib\")," \
--e "s,\\(set(PHONON_BUILDSYSTEM_DIR\\).*$,\\1 \"''${!outputDev}/share/phonon${if withQt5 then "4qt5" else ""}/buildsystem\"),"
+-e "/^set(PHONON_INCLUDE_DIR/ s,\''${rootDir},''${!outputDev}," \
+-e "/^set(PHONON_LIBRARY_DIR/ s,\''${rootDir}/,," \
+-e "/^set(PHONON_BUILDSYSTEM_DIR/ s,\''${rootDir},''${!outputDev},"
   '';
 }
-- 
2.8.0

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