Conflicts (a little tricky, I did some cleanup of interacting changes):
pkgs/development/compilers/llvm/default.nix
pkgs/development/libraries/libpng/default.nix
pkgs/tools/package-management/nixops/default.nix
pkgs/top-level/all-packages.nix
We already have mini_httpd, but IMHO it is *too* minimal as in not very
flexible in configuration (for example, I haven't found any runtime
configuration for disabling logging), so that's why I decided to add
thttpd, which serves quite well as an ad-hoc HTTPd.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
The source has HOSTNAME=`hostname` (capture output of hostname command)
but currently it is replaced with HOSTNAME="/path/to/hostname" (which is
just a plain string). Fix it by substituting with
HOSTNAME=`/path/to/hostname`.
I also added a patch that makes dovecot search for
plugins in /var/lib/dovecot/modules. This way, you
can add plugins from several packages without running
into circular dependencies. The module dir needs to
be populated before the dovecot service is started,
for example. This is currently not done in NixOS, so
you need to implement your own service in order to
get the plugins working.
The module patch has not been added to the old 2.1.x
package.
This should fix support for TLS and in addition, we now _only_ depend on one
library rather than OpenSSL *and* GnuTLS as we no longer need iksemel.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
When building PostgreSQL with plugins under NixOS, NixOS will create a
postgresql-and-plugins directory which symlinks PostgreSQL and all the plugins
into a single directory. Unfortunately, the plugins will not actually be usable
by PostgreSQL because it will still try and locate them in the original
PostgreSQL share directory, not postgresql-and-plugins.
In this commit, I have patched resolve_symlinks to always return success, which
matches the behavior if HAVE_READLINK is false (so presumably invalid paths are
never passed to this function).
This uses recurseForDerivations directly after using callPackage magic to ensure
that the input attributes can be overriden *and* nix-env shows the package as in
recurseIntoAttrs.
The reason for making this optional is because there probably is only a minority
of people who want to use XMPP and we don't want to introduce an additional
dependency for the majority, do we?
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
The BIND configure script finds extra dependencies in /usr/include and /usr/lib,
and activates additional features if it does. This may cause the build to fail
on systems that cannot use a chroot environment. Actively disabling those
additional features prevents this issue from occurring.
This modifies how the `riak` and `riak-admin` scripts work such that one has to specify environment variables for where the data, log, and etc directories live.
* Add needed dependencies:
coreutils, python, ruby, java and several Perl modules (Time::HiRes
1.9.724 is no longer available, bump to 1.9725)
* Use sha256 instead of md5 (more secure)
* Wrap munin perl scripts so they find their dependencies at runtime
* Rework meta description attributes.
FIXME/TODO: munin is still not usable; it tries to write log files and
web graphs to its installation path.
See #490 discussion.
This reverts commit 1278859d31, reversing
changes made to 0c020c98f9.
Conflicts:
pkgs/desktops/xfce/core/xfce4-session.nix (take master)
pkgs/lib/misc.nix (auto)
With this patch support for SSL is compiled into lighttpd.
IMO encryption is in most use cases important, therefore SSL support should be build in. This would simplify the setup of a standard web application a lot.
SSL support of lighttpd is documented at
http://redmine.lighttpd.net/projects/1/wiki/Docs_SSL
Before, files were put in /var, requiring the server to be run as a
privileged user even when just testing locally. This can be overridden
by setting the SYS_PREFIX env variable, or on a more coarse-grained
basis in /etc/rabbitmq/rabbitmq-env.conf
Signed-off-by: Shea Levy <shea@shealevy.com>
- update some modules to work with the newer server
- fix many other modules via overrides
- huge cleanup in overrides via better propagation
and pixman include flattening
- URLs of XCB stuff have been moved
The build complains about missing "file" and "which" commands, so add them as
build inputs.
"file" is used by the autotools configure script to tweak what -m flag
(if any) to pass to the linker when it asks it for shared library
support.
Here is an example of -m values for GNU ld:
Supported emulations:
elf_x86_64
elf32_x86_64
elf_i386
i386linux
elf_l1om
elf_k1om
"which" is used in the build phase to look for svnversion and git, to build a
version stamp. Since we build from a release tarball (and don't pass svn or git
as inputs either), this check fails and falls back to the version number in the
tarball.
There is one build warning left, but I think this is normal on NixOS:
/tmp/nix-build-lighttpd-1.4.32.drv-0/lighttpd-1.4.32/libtool: line 1085: ldconfig: command not found
One important denial of service (in 1.4.31) fix: CVE-2012-5533[1].
NOTE: There are some errors about missing commands during the build, but
I'm pretty sure they were there before. And the result seems to be
working anyway...
* /usr/bin/file: No such file or directory
* /bin/sh: line 2: which: command not found
* /tmp/nix-build-lighttpd-1.4.32.drv-0/lighttpd-1.4.32/libtool: line 1085: ldconfig: command not found
[1] http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2012-5533
First, pass in `self' again so that overriding works properly (thanks
for pointing that out, @edolstra)
Second, instead of having linuxPackages*.kernel mean something different
inside the set and out, add a new attribute linuxPackages*.kernelDev,
which for the generic kernel is simply linuxPackages*.kernel but for the
manual-config kernel is the `dev' output (which has the build tree,
source tree, etc.)
The second change required trivial modifications in a bunch of
expressions, I verified that all of the linuxPackages* sets defined in
all-packages.nix have the same drv paths before and after the change.
Signed-off-by: Shea Levy <shea@shealevy.com>
The original fix modified a generated file instead of the
manually-maintained overrides file. Checked by inspection.
Signed-off-by: Shea Levy <shea@shealevy.com>
This is the Oracle Database which they give out for free, therefore it's called
Express Edition.
Well, I pretty much packaged this in vain as I finally found out that i don't
need that Oracle Database stuff at all. And my original purpose was to do SQL
query/constraint testing.
So before I'm going to throw this away (forever, oh no!), maybe someone else
might have a use case for this.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
Conflicts:
pkgs/applications/networking/browsers/chromium/default.nix
pkgs/top-level/all-packages.nix
Merge conflicts seemed trivial, but a look from viric and aszlig would be nice.
Additionally, turn on a lot more features in mpd by
adding dependencies. Can be controlled by xxxSupport flags,
as before. By default, everything is enabled.
It seems that (almost?) all NixOS users start X using the services module,
because startx seems to be broken for quite some while. And it hit me while
getting to NixOS for the first time as well, so I then decided to just use the
service module.
As I'm working with multiple X servers, writing wrappers in ~/nixpkgs/config.nix
became tedious and so I decided to fix it, hopefully without breaking anything.
The fix consists of:
* Provide a default location for the Xorg log (~/.xorg.log - hope that's okay)
* Expose xauth through xinit to ensure purity and "unexpected behaviour", also
known as "simply not working", because xauth isn't in the user's environment.
* Actually provide the X binary so it doesn't have to be passed to startx every
time.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
6.14.6 requires a newer version of libdrm, which in turn requires a newer
version of mesa. I cheated and edited the generated default.nix file instead of
re-generating it, since generate-expr-from-tarballs.pl complained of a collision
between two tarballs providing different versions of xorg-server.
The NixOS service module loads those modules by default. So we need to build
them here as well.
I'm not really sure why these modules are included by default, because (except
from maybe CGI) they obviously are only usable in very rare cases. Am I wrong?
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
The reason because the configure script is unnable to find libxml2 is because it
is searching for a header file in `libxml/*.h`. Obviously this cases an error,
because it's actually in `${libxml2}/include/libxml2/libxml/*.h`, so let's add
the parent directory to --with-libxml2 and remove the comment from buildInputs.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
In order to extend the lifes of keyboards, monitors, mice and other hardware in
range of impatient people, this should shorten build times a bit on multicore
systems. And of course keeps blood pressure at low rates so cholerics may live
longer. Whether the latter is good or bad is up to the readers choice and
imagination.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
The current build fails because the URL at inria.fr is no longer accessible. And
5.5.23 is quite old, so let's update it.
With this update we also provide three URLs to fetchurl, just to make sure that
we have enough sources, should one URL become inaccessible again.
Signed-off-by: aszlig <aszlig@redmoonstudios.org>
This reverts commit 2f2426a02f89458451de0570ee6f0bf1442a3619.
xf86-video-intel requires a newer version of libdrm, which in turn
breaks mesa. So stick to 1.12.4 until this gets sorted out.
mongodb is supposed to work on most unixes but its build system is
quite picky and fragile.
As it hasn't worked for non-linux platforms on NixOS yet, this change
won't affect anyone and will remove the illusion that other platforms
are currently supported.
Passing install_root=$out isn't a good idea because the install script is going
to pre-pend that prefix to all other paths even though these have the $out
prefix already. The resulting installation is a mess. Instead, we use the
"fake" install prefix "out" and then move all files and directories into the
right place afterward.