[Nix-dev] Packaging Foreman

Oliver Charles ollie at ocharles.org.uk
Tue Nov 19 10:17:37 CET 2013


On 11/19/2013 09:03 AM, Alex Berg wrote:
> 
> As part of the Heroku Toolbelt, I need to make a Nix package for
> Foreman. I am following the instructions to Install from Source [1]. The
> instructions say that it has many package requirements:
> 
>     gcc-c++ git libvirt-devel mysql-devel pg-devel openssl-devel \
>         libxml2-devel sqlite-devel libxslt-devel zlib-devel readline-devel \
>         postgresql-devel
> 
> Am I right when I say - If I want to package Foreman, I must first
> package all these dependent packages. ?

I don't know Foreman, but yes - you will need all of those dependencies.
Note however that these dependencies seem to be specified as Ubuntu
package names. We don't strip out include files from our packages, so we
don't have 'devel' versions. Thus a lot of these dependencies we
probably already have:

gcc-c++ -> gcc
mysql-devel -> mysql
pg-devel -> postgresql9*
sqlite-devel -> sqlite

etc.

I tend to grep in <nixpkgs>/pkgs/top-level/all-packages.nix for the
start of the expression, find something that looks relevant, add it to
the expression of whatever I'm packaging, and attempt to nix-build. I
repeat that process until all dependencies are satisfied

> Related question: Does anyone know how to use the auto-generated Gem
> packages? I can't find any docs. -
> https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/interpreters/ruby/generated.nix

This really needs better documentation. Most people will tell you to
read <nixpkgs>/pkgs/development/interpreters/ruby/rubygems.nix, but imo
that is not good enough.

- ocharles

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 490 bytes
Desc: OpenPGP digital signature
Url : http://lists.science.uu.nl/pipermail/nix-dev/attachments/20131119/e0bcbf44/attachment.bin 


More information about the nix-dev mailing list