Merge recent master into staging

Hydra nixpkgs: ?compare=1151601
This commit is contained in:
Vladimír Čunát 2014-09-13 21:44:45 +02:00
parent 6a63d1e1e1
commit d957b4bd78
138 changed files with 9314 additions and 7050 deletions

View File

@ -233,6 +233,17 @@ twisted = buildPythonPackage {
</section>
<section xml:id="ssec-language-java"><title>Ruby</title>
<para>For example, to package yajl-ruby package, use gem-nix:</para>
<screen>
$ nix-env -i gem-nix
$ gem-nix --no-user-install --nix-file=pkgs/development/interpreters/ruby/generated.nix yajl-ruby
$ nix-build -A rubyLibs.yajl-ruby
</screen>
</section>
<section xml:id="ssec-language-java"><title>Java</title>
<para>Ant-based Java packages are typically built from source as follows:

View File

@ -72,6 +72,11 @@ rec {
fullName = "Creative Commons Attribution 3.0";
};
cc-by-40 = spdx {
shortName = "CC-BY-4.0";
fullName = "Creative Commons Attribution 4.0";
};
cddl = spdx {
shortName = "CDDL-1.0";
fullName = "Common Development and Distribution License 1.0";

View File

@ -41,6 +41,7 @@
cstrahan = "Charles Strahan <charles.c.strahan@gmail.com>";
DamienCassou = "Damien Cassou <damien.cassou@gmail.com>";
DerGuteMoritz = "Moritz Heidkamp <moritz@twoticketsplease.de>";
dbohdan = "Danyil Bohdan <danyil.bohdan@gmail.com>";
doublec = "Chris Double <chris.double@double.co.nz>";
ederoyd46 = "Matthew Brown <matt@ederoyd.co.uk>";
edwtjo = "Edward Tjörnhammar <ed@cflags.cc>";
@ -118,6 +119,7 @@
ttuegel = "Thomas Tuegel <ttuegel@gmail.com>";
tv = "Tomislav Viljetić <tv@shackspace.de>";
urkud = "Yury G. Kudryashov <urkud+nix@ya.ru>";
vandenoever = "Jos van den Oever <jos@vandenoever.info>";
vbmithr = "Vincent Bernardoff <vb@luminar.eu.org>";
vcunat = "Vladimír Čunát <vcunat@gmail.com>";
viric = "Lluís Batlle i Rossell <viric@viric.name>";

View File

@ -57,7 +57,7 @@ let
};
optionsDocBook = runCommand "options-db.xml" {} ''
optionsXML=${options'}/doc/share/nixos/options.xml
optionsXML=${options'}/share/doc/nixos/options.xml
if grep /nixpkgs/nixos/modules $optionsXML; then
echo "The manual appears to depend on the location of Nixpkgs, which is bad"
echo "since this prevents sharing via the NixOS channel. This is typically"
@ -127,7 +127,7 @@ in rec {
mkdir -p $out/nix-support
echo "nix-build out $out" >> $out/nix-support/hydra-build-products
echo "doc manual $dst manual.html" >> $out/nix-support/hydra-build-products
echo "doc manual $dst" >> $out/nix-support/hydra-build-products
''; # */
meta.description = "The NixOS manual in HTML format";

View File

@ -9,8 +9,8 @@
<xsl:template match="logfile">
<html>
<head>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.3/jquery-ui.min.js"></script>
<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript" src="jquery-ui.min.js"></script>
<script type="text/javascript" src="treebits.js" />
<link rel="stylesheet" href="logfile.css" type="text/css" />
<title>Log File</title>

View File

@ -53,6 +53,8 @@ rec {
xsltproc --output $out/log.html ${./test-driver/log2html.xsl} $out/log.xml
ln -s ${./test-driver/logfile.css} $out/logfile.css
ln -s ${./test-driver/treebits.js} $out/treebits.js
ln -s ${jquery}/js/jquery.min.js $out/
ln -s ${jquery-ui}/js/jquery-ui.min.js $out/
touch $out/nix-support/hydra-build-products
echo "report testlog $out log.html" >> $out/nix-support/hydra-build-products

View File

@ -301,7 +301,7 @@ let
uidsAreUnique = idsAreUnique (filterAttrs (n: u: u.uid != null) cfg.extraUsers) "uid";
gidsAreUnique = idsAreUnique (filterAttrs (n: g: g.gid != null) cfg.extraGroups) "gid";
spec = builtins.toFile "users-groups.json" (builtins.toJSON {
spec = pkgs.writeText "users-groups.json" (builtins.toJSON {
inherit (cfg) mutableUsers;
users = mapAttrsToList (n: u:
{ inherit (u)

View File

@ -194,13 +194,13 @@ if [ -z "$rollback" ]; then
nix-env "${extraBuildFlags[@]}" -p "$profile" -f '<nixpkgs/nixos>' --set -A system
pathToConfig="$profile"
elif [ "$action" = test -o "$action" = build -o "$action" = dry-run ]; then
nix-build '<nixpkgs/nixos>' -A system -K -k "${extraBuildFlags[@]}" > /dev/null
nix-build '<nixpkgs/nixos>' -A system -k "${extraBuildFlags[@]}" > /dev/null
pathToConfig=./result
elif [ "$action" = build-vm ]; then
nix-build '<nixpkgs/nixos>' -A vm -K -k "${extraBuildFlags[@]}" > /dev/null
nix-build '<nixpkgs/nixos>' -A vm -k "${extraBuildFlags[@]}" > /dev/null
pathToConfig=./result
elif [ "$action" = build-vm-with-bootloader ]; then
nix-build '<nixpkgs/nixos>' -A vmWithBootLoader -K -k "${extraBuildFlags[@]}" > /dev/null
nix-build '<nixpkgs/nixos>' -A vmWithBootLoader -k "${extraBuildFlags[@]}" > /dev/null
pathToConfig=./result
else
showSyntax
@ -226,7 +226,7 @@ fi
# default and/or activate it now.
if [ "$action" = switch -o "$action" = boot -o "$action" = test ]; then
if ! $pathToConfig/bin/switch-to-configuration "$action"; then
echo "warning: there were error switching to the new configuration" >&2
echo "warning: error(s) occured while switching to the new configuration" >&2
exit 1
fi
fi

View File

@ -95,6 +95,8 @@
./services/backup/rsnapshot.nix
./services/backup/sitecopy-backup.nix
./services/backup/tarsnap.nix
./services/computing/torque/server.nix
./services/computing/torque/mom.nix
./services/continuous-integration/jenkins/default.nix
./services/continuous-integration/jenkins/slave.nix
./services/databases/4store-endpoint.nix

View File

@ -59,6 +59,13 @@ in
'';
};
package = mkOption {
default = pkgs.openssh;
description = ''
The package used for the openssh client and daemon.
'';
};
};
};
@ -92,7 +99,7 @@ in
wantedBy = [ "default.target" ];
serviceConfig =
{ ExecStartPre = "${pkgs.coreutils}/bin/rm -f %t/ssh-agent";
ExecStart = "${pkgs.openssh}/bin/ssh-agent -a %t/ssh-agent";
ExecStart = "${cfg.package}/bin/ssh-agent -a %t/ssh-agent";
StandardOutput = "null";
Type = "forking";
Restart = "on-failure";

View File

@ -0,0 +1,63 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.torque.mom;
torque = pkgs.torque;
momConfig = pkgs.writeText "torque-mom-config" ''
$pbsserver ${cfg.serverNode}
$logevent 225
'';
in
{
options = {
services.torque.mom = {
enable = mkEnableOption "torque computing node";
serverNode = mkOption {
type = types.str;
description = "Hostname running pbs server.";
};
};
};
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.torque ];
systemd.services.torque-mom-init = {
path = with pkgs; [ torque utillinux procps inetutils ];
script = ''
pbs_mkdirs -v aux
pbs_mkdirs -v mom
hostname > /var/spool/torque/server_name
cp -v ${momConfig} /var/spool/torque/mom_priv/config
'';
serviceConfig.Type = "oneshot";
unitConfig.ConditionPathExists = "!/var/spool/torque";
};
systemd.services.torque-mom = {
path = [ torque ];
wantedBy = [ "multi-user.target" ];
requires = [ "torque-mom-init.service" ];
after = [ "torque-mom-init.service" "network.target" ];
serviceConfig = {
Type = "forking";
ExecStart = "${torque}/bin/pbs_mom";
PIDFile = "/var/spool/torque/mom_priv/mom.lock";
};
};
};
}

View File

@ -0,0 +1,96 @@
{ config, pkgs, lib, ... }:
with lib;
let
cfg = config.services.torque.server;
torque = pkgs.torque;
in
{
options = {
services.torque.server = {
enable = mkEnableOption "torque server";
};
};
config = mkIf cfg.enable {
environment.systemPackages = [ pkgs.torque ];
systemd.services.torque-server-init = {
path = with pkgs; [ torque utillinux procps inetutils ];
script = ''
tmpsetup=$(mktemp -t torque-XXXX)
cp -p ${torque}/bin/torque.setup $tmpsetup
sed -i $tmpsetup -e 's/pbs_server -t create/pbs_server -f -t create/'
pbs_mkdirs -v aux
pbs_mkdirs -v server
hostname > /var/spool/torque/server_name
cp -prv ${torque}/var/spool/torque/* /var/spool/torque/
$tmpsetup root
sleep 1
rm -f $tmpsetup
kill $(pgrep pbs_server) 2>/dev/null
kill $(pgrep trqauthd) 2>/dev/null
'';
serviceConfig = {
Type = "oneshot";
RemainAfterExit = true;
};
unitConfig = {
ConditionPathExists = "!/var/spool/torque";
};
};
systemd.services.trqauthd = {
path = [ torque ];
requires = [ "torque-server-init.service" ];
after = [ "torque-server-init.service" ];
serviceConfig = {
Type = "forking";
ExecStart = "${torque}/bin/trqauthd";
};
};
systemd.services.torque-server = {
path = [ torque ];
wantedBy = [ "multi-user.target" ];
wants = [ "torque-scheduler.service" "trqauthd.service" ];
before = [ "trqauthd.service" ];
requires = [ "torque-server-init.service" ];
after = [ "torque-server-init.service" "network.target" ];
serviceConfig = {
Type = "forking";
ExecStart = "${torque}/bin/pbs_server";
ExecStop = "${torque}/bin/qterm";
PIDFile = "/var/spool/torque/server_priv/server.lock";
};
};
systemd.services.torque-scheduler = {
path = [ torque ];
requires = [ "torque-server-init.service" ];
after = [ "torque-server-init.service" ];
serviceConfig = {
Type = "forking";
ExecStart = "${torque}/bin/pbs_sched";
PIDFile = "/var/spool/torque/sched_priv/sched.lock";
};
};
};
}

View File

@ -15,7 +15,7 @@ in {
user = mkOption {
default = "jenkins";
type = with types; string;
type = types.str;
description = ''
User the jenkins server should execute under.
'';
@ -23,16 +23,25 @@ in {
group = mkOption {
default = "jenkins";
type = with types; string;
type = types.str;
description = ''
If the default user "jenkins" is configured then this is the primary
group of that user.
'';
};
extraGroups = mkOption {
type = types.listOf types.str;
default = [ ];
example = [ "wheel" "dialout" ];
description = ''
List of extra groups that the "jenkins" user should be a part of.
'';
};
home = mkOption {
default = "/var/lib/jenkins";
type = with types; string;
type = types.path;
description = ''
The path to use as JENKINS_HOME. If the default user "jenkins" is configured then
this is the home of the "jenkins" user.
@ -57,12 +66,21 @@ in {
environment = mkOption {
default = { NIX_REMOTE = "daemon"; };
type = with types; attrsOf string;
type = with types; attrsOf str;
description = ''
Additional environment variables to be passed to the jenkins process.
The environment will always include JENKINS_HOME.
'';
};
extraOptions = mkOption {
type = types.listOf types.str;
default = [ ];
example = [ "--debug=9" "--httpListenAddress=localhost" ];
description = ''
Additional command line arguments to pass to Jenkins.
'';
};
};
};
@ -78,6 +96,7 @@ in {
createHome = true;
home = cfg.home;
group = cfg.group;
extraGroups = cfg.extraGroups;
useDefaultShell = true;
uid = config.ids.uids.jenkins;
};
@ -94,7 +113,7 @@ in {
path = cfg.packages;
script = ''
${pkgs.jdk}/bin/java -jar ${pkgs.jenkins} --httpPort=${toString cfg.port}
${pkgs.jdk}/bin/java -jar ${pkgs.jenkins} --httpPort=${toString cfg.port} ${concatStringsSep " " cfg.extraOptions}
'';
postStart = ''

View File

@ -23,7 +23,7 @@ in {
user = mkOption {
default = "jenkins";
type = with types; string;
type = types.str;
description = ''
User the jenkins slave agent should execute under.
'';
@ -31,7 +31,7 @@ in {
group = mkOption {
default = "jenkins";
type = with types; string;
type = types.str;
description = ''
If the default slave agent user "jenkins" is configured then this is
the primary group of that user.
@ -40,7 +40,7 @@ in {
home = mkOption {
default = "/var/lib/jenkins";
type = with types; string;
type = types.path;
description = ''
The path to use as JENKINS_HOME. If the default user "jenkins" is configured then
this is the home of the "jenkins" user.

View File

@ -8,13 +8,20 @@ let
configFile = pkgs.writeText "statsd.conf" ''
{
host: "${cfg.host}",
address: "${cfg.host}",
port: "${toString cfg.port}",
mgmt_address: "${cfg.mgmt_address}",
mgmt_port: "${toString cfg.mgmt_port}",
backends: [${concatMapStrings (el: ''"./backends/${el}",'') cfg.backends}],
graphiteHost: "${cfg.graphiteHost}",
graphitePort: "${toString cfg.graphitePort}",
backends: [${concatMapStringsSep "," (el: if (nixType el) == "string" then ''"./backends/${el}"'' else ''"${head el.names}"'') cfg.backends}],
${optionalString (cfg.graphiteHost!=null) ''graphiteHost: "${cfg.graphiteHost}",''}
${optionalString (cfg.graphitePort!=null) ''graphitePort: "${toString cfg.graphitePort}",''}
console: {
prettyprint: false
},
log: {
backend: "syslog"
},
automaticConfigReload: false${optionalString (cfg.extraConfig != null) ","}
${cfg.extraConfig}
}
'';
@ -60,24 +67,26 @@ in
backends = mkOption {
description = "List of backends statsd will use for data persistance";
default = ["graphite"];
example = ["graphite" pkgs.nodePackages."statsd-influxdb-backend"];
type = types.listOf (types.either types.str types.package);
};
graphiteHost = mkOption {
description = "Hostname or IP of Graphite server";
default = config.services.graphite.web.host;
type = types.str;
default = null;
type = types.nullOr types.str;
};
graphitePort = mkOption {
description = "Port of Graphite server (i.e. carbon-cache).";
default = 2003;
type = types.uniq types.int;
default = null;
type = types.nullOr types.int;
};
extraConfig = mkOption {
default = "";
description = "Extra configuration options for statsd";
type = types.str;
default = "";
type = types.nullOr types.str;
};
};
@ -95,6 +104,9 @@ in
systemd.services.statsd = {
description = "Statsd Server";
wantedBy = [ "multi-user.target" ];
environment = {
NODE_PATH=concatMapStringsSep ":" (el: "${el}/lib/node_modules") (filter (el: (nixType el) != "string") cfg.backends);
};
serviceConfig = {
ExecStart = "${pkgs.nodePackages.statsd}/bin/statsd ${configFile}";
User = "statsd";

View File

@ -291,7 +291,7 @@ in
};
environment.etc = authKeysFiles ++ [
{ source = "${pkgs.openssh}/etc/ssh/moduli";
{ source = "${cfgc.package}/etc/ssh/moduli";
target = "ssh/moduli";
}
{ source = knownHostsFile;
@ -308,7 +308,7 @@ in
stopIfChanged = false;
path = [ pkgs.openssh pkgs.gawk ];
path = [ cfgc.package pkgs.gawk ];
environment.LD_LIBRARY_PATH = nssModulesPath;
@ -325,7 +325,7 @@ in
serviceConfig =
{ ExecStart =
"${pkgs.openssh}/sbin/sshd " + (optionalString cfg.startWhenNeeded "-i ") +
"${cfgc.package}/sbin/sshd " + (optionalString cfg.startWhenNeeded "-i ") +
"-f ${pkgs.writeText "sshd_config" cfg.extraConfig}";
KillMode = "process";
} // (if cfg.startWhenNeeded then {
@ -394,7 +394,7 @@ in
''}
${optionalString cfg.allowSFTP ''
Subsystem sftp ${pkgs.openssh}/libexec/sftp-server
Subsystem sftp ${cfgc.package}/libexec/sftp-server
''}
PermitRootLogin ${cfg.permitRootLogin}

View File

@ -5,7 +5,7 @@ with lib;
let
cfg = config.services.tomcat;
tomcat = pkgs.tomcat7;
tomcat = cfg.package;
in
{
@ -21,6 +21,15 @@ in
description = "Whether to enable Apache Tomcat";
};
package = mkOption {
type = types.package;
default = pkgs.tomcat7;
example = lib.literalExample "pkgs.tomcat8";
description = ''
Which tomcat package to use.
'';
};
baseDir = mkOption {
default = "/var/tomcat";
description = "Location where Tomcat stores configuration files, webapplications and logfiles";

View File

@ -245,12 +245,6 @@ in
ip route add $LOCAL_ADDRESS dev $ifaceHost
fi
fi
# This blocks until the container-startup-done service
# writes something to this pipe. FIXME: it also hangs
# until the start timeout expires if systemd-nspawn exits.
read x < $root/var/lib/startup-done
rm -f $root/var/lib/startup-done
'';
preStop =

View File

@ -201,15 +201,32 @@ sub runInContainer {
die "cannot run nsenter: $!\n";
}
# Remove a directory while recursively unmounting all mounted filesystems within
# that directory and unmounting/removing that directory afterwards as well.
#
# NOTE: If the specified path is a mountpoint, its contents will be removed,
# only mountpoints underneath that path will be unmounted properly.
sub safeRemoveTree {
my ($path) = @_;
system("find", $path, "-mindepth", "1", "-xdev",
"(", "-type", "d", "-exec", "mountpoint", "-q", "{}", ";", ")",
"-exec", "umount", "-fR", "{}", "+");
system("rm", "--one-file-system", "-rf", $path);
if (-e $path) {
system("umount", "-fR", $path);
system("rm", "--one-file-system", "-rf", $path);
}
}
if ($action eq "destroy") {
die "$0: cannot destroy declarative container (remove it from your configuration.nix instead)\n"
unless POSIX::access($confFile, &POSIX::W_OK);
stopContainer if isContainerRunning;
rmtree($profileDir) if -e $profileDir;
rmtree($gcRootsDir) if -e $gcRootsDir;
rmtree($root) if -e $root;
safeRemoveTree($profileDir) if -e $profileDir;
safeRemoveTree($gcRootsDir) if -e $gcRootsDir;
safeRemoveTree($root) if -e $root;
unlink($confFile) or die;
}

View File

@ -56,12 +56,35 @@ import ./make-test.nix {
die if $id1 eq $id2;
# Put the root of $id2 into a bind mount.
$machine->succeed(
"mv /var/lib/containers/$id2 /id2-bindmount",
"mount --bind /id2-bindmount /var/lib/containers/$id1"
);
my $ip1 = $machine->succeed("nixos-container show-ip $id1");
chomp $ip1;
my $ip2 = $machine->succeed("nixos-container show-ip $id2");
chomp $ip2;
die if $ip1 eq $ip2;
# Create a directory and a file we can later check if it still exists
# after destruction of the container.
$machine->succeed(
"mkdir /nested-bindmount",
"echo important data > /nested-bindmount/dummy",
);
# Create a directory with a dummy file and bind-mount it into both
# containers.
foreach ($id1, $id2) {
my $importantPath = "/var/lib/containers/$_/very/important/data";
$machine->succeed(
"mkdir -p $importantPath",
"mount --bind /nested-bindmount $importantPath"
);
}
# Start one of them.
$machine->succeed("nixos-container start $id1");
@ -72,6 +95,13 @@ import ./make-test.nix {
$machine->succeed("nixos-container destroy $id1");
$machine->succeed("nixos-container destroy $id2");
$machine->succeed(
# Check whether destruction of any container has killed important data
"grep -qF 'important data' /nested-bindmount/dummy",
# Ensure that the container path is gone
"test ! -e /var/lib/containers/$id1"
);
# Destroying a declarative container should fail.
$machine->fail("nixos-container destroy webserver");
'';

View File

@ -0,0 +1,33 @@
{ stdenv, fetchurl, makeWrapper, cmake, qt4, pkgconfig, alsaLib, portaudio, jack2, libsndfile}:
stdenv.mkDerivation rec {
name = "musescore-1.3";
src = fetchurl {
url = "http://ftp.osuosl.org/pub/musescore/releases/MuseScore-1.3/mscore-1.3.tar.bz2";
sha256 = "a0b60cc892ac0266c58fc6392be72c0a21c3aa7fd0b6e4f1dddad1c8b36be683";
};
buildInputs = [ makeWrapper cmake qt4 pkgconfig alsaLib portaudio jack2 libsndfile ];
configurePhase = ''
cd mscore;
mkdir build;
cd build;
cmake -DCMAKE_INSTALL_PREFIX=$out -DQT_PLUGINS_DIR=$out/lib/qt4/plugins -DCMAKE_BUILD_TYPE=Release ..'';
preBuild = ''make lrelease;'';
postInstall = ''
wrapProgram $out/bin/mscore --prefix QT_PLUGIN_PATH : $out/lib/qt4/plugins
'';
meta = with stdenv.lib; {
description = "Qt-based score editor";
homepage = http://musescore.org/;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = [ stdenv.lib.maintainers.vandenoever ];
repositories.git = https://github.com/musescore/MuseScore;
};
}

View File

@ -42,7 +42,9 @@ let
mkdir -p $out/bin
jdk=${jdk}/lib/openjdk
[ -d ${jdk}/lib/openjdk ] \
&& jdk=${jdk}/lib/openjdk \
|| jdk=${jdk}
makeWrapper $out/idea-$build/bin/idea.sh $out/bin/idea \
--prefix PATH : ${jdk}/bin:${coreutils}/bin:${gnugrep}/bin:${which}/bin:${git}/bin \

View File

@ -1,11 +1,11 @@
{ fetchurl, stdenv, libjpeg, libpng, libtiff, perl }:
stdenv.mkDerivation rec {
name = "libpano13-2.9.18";
name = "libpano13-2.9.19";
src = fetchurl {
url = "mirror://sourceforge/panotools/${name}.tar.gz";
sha256 = "0wm1r9waa47n482yrl3hnphicdahr581rahgbklk0d2wy51lwpfy";
sha256 = "1a4m3plmfcrrplqs9zfzhc5apibn10m5sajpizm1sd3q74w5fwq3";
};
buildInputs = [ perl libjpeg libpng libtiff ];

View File

@ -5,11 +5,11 @@
}:
stdenv.mkDerivation rec {
name = "calibre-2.2.0";
name = "calibre-2.3.0";
src = fetchurl {
url = "mirror://sourceforge/calibre/${name}.tar.xz";
sha256 = "03qljbb3995cq25azwy9qh087dq7m6igia5301v89y98vxxg2lxm";
sha256 = "13ny8d569hl7yv8m89216fmg0qdqqy6l9vgzf3cmbbb8i3l1lpxf";
};
inherit python;

View File

@ -1,6 +1,5 @@
{ stdenv, fetchurl, pkgconfig, autoconf, automake, gettext
, fluxbox, bc, gtkmm, glibmm, libglademm, libsigcxx
}:
, fluxbox, bc, gtkmm, glibmm, libglademm, libsigcxx }:
stdenv.mkDerivation rec{
@ -18,7 +17,7 @@ stdenv.mkDerivation rec{
./autogen.sh
'';
meta = {
meta = with stdenv.lib; {
description = "Editor for Fluxbox menus";
longDescription = ''
Fluxbox Menu Editor is a menu editor for the Window Manager Fluxbox written in C++
@ -27,8 +26,8 @@ stdenv.mkDerivation rec{
a row, a submenu, etc very easily.
'';
homepage = https://github.com/rdehouss/fme/;
license = stdenv.lib.licenses.gpl2;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
license = licenses.gpl2;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -1,6 +1,5 @@
{ stdenv, fetchurl
, intltool, pkgconfig, gtk
}:
, intltool, pkgconfig, gtk }:
stdenv.mkDerivation rec {
@ -14,7 +13,7 @@ stdenv.mkDerivation rec {
buildInputs = [ intltool pkgconfig gtk ];
meta = {
meta = with stdenv.lib; {
description = "A GTK 2/3 algebraic and RPN calculator";
longDescription = ''
galculator is a GTK 2 / GTK 3 based calculator. Its main features include:
@ -29,7 +28,8 @@ stdenv.mkDerivation rec {
- Quad-precision floating point arithmetic, and 112-bit binary arithmetic
'';
homepage = http://galculator.sourceforge.net/;
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
license = licenses.gpl2Plus;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -22,14 +22,14 @@ stdenv.mkDerivation rec {
--enable-safe-mode
'';
meta = {
meta = with stdenv.lib; {
description = "A fast, lightweight terminal emulator";
longDescription = ''
LilyTerm is a terminal emulator based off of libvte that aims to be fast and lightweight.
LilyTerm is a terminal emulator based off of libvte that aims to be fast and lightweight.
'';
homepage = http://lilyterm.luna.com.tw/;
license = stdenv.lib.licenses.gpl3;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
license = licenses.gpl3;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -3,14 +3,14 @@
}:
let
version = "0.9.4";
version = "0.9.2";
in stdenv.mkDerivation rec {
name = "spacefm-${version}";
src = fetchurl {
url = "https://github.com/IgnorantGuru/spacefm/blob/pkg/${version}/${name}.tar.xz?raw=true";
sha256 = "0marwa031jk24q8hy90dr7yw6rv5hn1shar404zpb1k57v4nr23m";
sha256 = "3767137d74aa78597ffb42a6121784e91a4276efcd5d718b3793b9790f82268c";
};
buildInputs = [ gtk3 udev desktop_file_utils shared_mime_info intltool pkgconfig makeWrapper ];

View File

@ -1,8 +1,7 @@
{ stdenv, fetchurl, pkgconfig
, autoreconfHook, gettext, expat
, confuse, vte, gtk
, makeWrapper
}:
, makeWrapper }:
stdenv.mkDerivation rec {

View File

@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
qmake PREFIX="$out"
'';
meta = {
meta = with stdenv.lib; {
description = "A mind-mapping software";
longDescription = ''
VYM (View Your Mind) is a tool to generate and manipulate maps which show your thoughts.
@ -28,8 +28,8 @@ stdenv.mkDerivation rec {
vym offers much more features to work with such maps.
'';
homepage = http://www.insilmaril.de/vym/;
license = stdenv.lib.licenses.gpl2;
maintainer = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
license = licenses.gpl2;
maintainer = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -7,8 +7,7 @@
, libgsf, gconf
, gtkhtml, libgtkhtml, libglade, scrollkeeper
, webkitgtk
, dbus_glib, enchant, isocodes, libuuid
}:
, dbus_glib, enchant, isocodes, libuuid }:
stdenv.mkDerivation rec {
name = "xiphos-${version}";
@ -42,16 +41,17 @@ stdenv.mkDerivation rec {
python waf install
'';
meta = {
meta = with stdenv.lib; {
description = "A GTK Bible study tool";
longDescription = ''
Xiphos (formerly known as GnomeSword) is a Bible study tool written for Linux, UNIX,
and Windows using GTK, offering a rich and featureful environment for reading, study,
and research using modules from The SWORD Project and elsewhere.
Xiphos (formerly known as GnomeSword) is a Bible study tool
written for Linux, UNIX, and Windows using GTK, offering a rich
and featureful environment for reading, study, and research using
modules from The SWORD Project and elsewhere.
'';
homepage = http://www.xiphos.org/;
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
license = licenses.gpl2Plus;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -3,8 +3,7 @@
, openssl
, libjpeg, libpng
, perl
, libXcursor, libXi, libXinerama
}:
, libXcursor, libXi, libXinerama }:
stdenv.mkDerivation rec {
version = "3.0.4";
@ -22,10 +21,13 @@ stdenv.mkDerivation rec {
configureFlags = "--enable-ssl";
meta = {
meta = with stdenv.lib; {
homepage = http://www.dillo.org/;
description = "A fast graphical web browser with a small footprint";
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
longDescription = ''
Dillo is a small, fast web browser, tailored for older machines.
'';
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cyrus_sasl, gettext, openldap, ptlib, opal, libXv, rarian, intltool
{ stdenv, glib, fetchurl, cyrus_sasl, gettext, openldap, ptlib, opal, libXv, rarian, intltool
, perl, perlXMLParser, evolution_data_server, gnome_doc_utils, avahi, autoreconfHook
, libsigcxx, gtk, dbus_glib, libnotify, libXext, xextproto, gnome3, boost, libsecret
, pkgconfig, libxml2, videoproto, unixODBC, db, nspr, nss, zlib, hicolor_icon_theme
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
buildInputs = [ cyrus_sasl gettext openldap ptlib opal libXv rarian intltool
perl perlXMLParser evolution_data_server gnome_doc_utils avahi
libsigcxx gtk dbus_glib libnotify libXext xextproto sqlite
gnome3.libsoup
gnome3.libsoup glib gnome3.gnome_icon_theme_symbolic
hicolor_icon_theme gnome3.gnome_icon_theme boost autoreconfHook
pkgconfig libxml2 videoproto unixODBC db nspr nss zlib libsecret
libXrandr randrproto which libxslt libtasn1 gmp nettle makeWrapper ];
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
postInstall = ''
wrapProgram "$out"/bin/ekiga \
--prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH"
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
'';
meta = with stdenv.lib; {

View File

@ -0,0 +1,34 @@
{ stdenv, fetchurl, qt5, pkgconfig, boost, wirelesstools, iw }:
stdenv.mkDerivation rec {
name = "linssid-${version}";
version = "2.7";
src = fetchurl {
url = "mirror://sourceforge/project/linssid/LinSSID_${version}/linssid_${version}.orig.tar.gz";
sha256 = "13d35rlcjncd8lx3khkgn9x8is2xjd5fp6ns5xsn3w6l4xj9b4gl";
};
buildInputs = [ qt5 pkgconfig boost ];
postPatch = ''
sed -e "s|/usr/include/|/nonexistent/|g" -i linssid-app/*.pro
sed -e 's|^LIBS .*= .*libboost_regex.a|LIBS += -lboost_regex|' \
-e "s|/usr|$out|g" \
-i linssid-app/linssid-app.pro linssid-app/linssid.desktop
sed -e "s|\.\./\.\./\.\./\.\./usr|$out|g" -i linssid-app/*.ui
sed -e "s|iwlist|${wirelesstools}/sbin/iwlist|g" -i linssid-app/Getter.cpp
sed -e "s|iw dev|${iw}/sbin/iw dev|g" -i linssid-app/MainForm.cpp
'';
configurePhase = "qmake linssid.pro";
meta = with stdenv.lib; {
description = "Graphical wireless scanning for Linux";
homepage = http://sourceforge.net/projects/linssid/;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = [ maintainers.bjornfor ];
};
}

View File

@ -10,7 +10,7 @@ buildPythonPackage rec {
};
propagatedBuildInputs = with pythonPackages; [
pillow jinja2 spambayes pythonPackages."lxml-2.3.6" python.modules.readline or null];
pillow jinja2 spambayes pythonPackages.lxml python.modules.readline or null];
meta = with stdenv.lib; {
description = "A modern, fast web-mail client with user-friendly encryption and privacy features";

View File

@ -3,7 +3,7 @@
{stdenv, fetchgit, pkgconfig, ocaml, findlib, camlp5, ncurses, lablgtk ? null}:
let
version = "8.5pre-c70d5b2";
version = "8.5pre-fbbb86b";
buildIde = lablgtk != null;
ideFlags = if buildIde then "-lablgtkdir ${lablgtk}/lib/ocaml/*/site-lib/lablgtk2 -coqide opt" else "";
idePath = if buildIde then ''
@ -16,8 +16,8 @@ stdenv.mkDerivation {
src = fetchgit {
url = git://scm.gforge.inria.fr/coq/coq.git;
rev = "c70d5b27ad5872c74e20b6c997383fb4462a68dc";
sha256 = "02wks2aivgjcf4h3ss9rn683vyawz8gl8rbysdq7awxh062316l2";
rev = "f7c6b864a509a4cca11cac5fbd5d37efc";
sha256 = "0v84pjxx361afkipgwkc4d2wmn7v1c5n2y8d264kc26i58cgrrf4";
};
buildInputs = [ pkgconfig ocaml findlib camlp5 ncurses lablgtk ];

View File

@ -6,11 +6,11 @@
}:
stdenv.mkDerivation rec {
name = "R-3.1.0";
name = "R-3.1.1";
src = fetchurl {
url = "http://cran.r-project.org/src/base/R-3/${name}.tar.gz";
sha256 = "1qjzbw341bvi1h4jwbvdkvq8j0z9l3m85mpgrlfw0n2cz2806s4a";
sha256 = "06bs5jk2bgib2wvd76yq9kf1vyim2j344midxkqyhk216ig4sp6f";
};
buildInputs = [ blas bzip2 gfortran liblapack libX11 libXmu libXt

View File

@ -28,6 +28,6 @@ stdenv.mkDerivation {
description = "Visual diff and merge tool";
homepage = http://meld.sourceforge.net;
license = stdenv.lib.licenses.gpl2Plus;
platforms = platforms.linux;
platforms = platforms.linux ++ stdenv.lib.platforms.darwin;
};
}

View File

@ -0,0 +1,59 @@
{ stdenv, fetchurl, lib, makeWrapper
, jdk
, gtk, glib
, libXtst
, git, mercurial, subversion
, which
}:
let
the_version = "6_0_6";
in
stdenv.mkDerivation rec {
name = "smartgithg-${the_version}";
src = fetchurl {
url = "http://www.syntevo.com/download/smartgithg/" +
"smartgithg-generic-${the_version}.tar.gz";
sha256 = "13e41560138ef18395fbe0bf56d4d29e8614eee004d51d7dd03381080d8426e6";
};
buildInputs = [
makeWrapper
jdk
];
buildCommand = let
pkg_path = "$out/${name}";
bin_path = "$out/bin";
runtime_paths = lib.makeSearchPath "bin" [
jdk
git mercurial subversion
which
];
runtime_lib_paths = lib.makeLibraryPath [
gtk glib
libXtst
];
in ''
tar xvzf $src
mkdir -pv $out
# unpacking should have produced a dir named ${name}
cp -a ${name} $out
mkdir -pv ${bin_path}
makeWrapper ${pkg_path}/bin/smartgithg.sh ${bin_path}/smartgithg \
--prefix PATH : ${runtime_paths} \
--prefix LD_LIBRARY_PATH : ${runtime_lib_paths} \
--prefix JDK_HOME : ${jdk}/lib/openjdk
patchShebangs $out
'';
meta = with stdenv.lib; {
description = "GUI for Git, Mercurial, Subversion";
homepage = http://www.syntevo.com/smartgithg/;
license = licenses.unfree;
platforms = platforms.linux;
};
}

View File

@ -10,8 +10,7 @@
, openalSupport ? false, openal ? null
, alsaSupport ? true, alsaLib ? null
, pulseaudioSupport ? true, pulseaudio ? null
, portaudioSupport ? false, portaudio ? null
}:
, portaudioSupport ? false, portaudio ? null }:
assert spellChecking -> (hunspell != null);
assert automationSupport -> (lua != null);
@ -62,6 +61,5 @@ stdenv.mkDerivation rec {
# - so the resulting program will be GPL
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -22,8 +22,7 @@
# for Youtube support
, quviSupport ? false, libquvi ? null
, cacaSupport ? false, libcaca ? null
, vaapiSupport ? false, libva ? null
}:
, vaapiSupport ? false, libva ? null }:
assert x11Support -> (libX11 != null && libXext != null && mesa != null && libXxf86vm != null);
assert xineramaSupport -> (libXinerama != null && x11Support);
@ -114,15 +113,17 @@ stdenv.mkDerivation rec {
ln -s ${freefont_ttf}/share/fonts/truetype/FreeSans.ttf $out/share/mpv/subfont.ttf
'';
meta = {
meta = with stdenv.lib;{
description = "A movie player that supports many video formats (MPlayer and mplayer2 fork)";
longDescription = ''
mpv is a free and open-source general-purpose video player, based on the MPlayer and mplayer2 projects, with great improvements above both.
mpv is a free and open-source general-purpose video player,
based on the MPlayer and mplayer2 projects, with great
improvements above both.
'';
homepage = "http://mpv.io";
license = stdenv.lib.licenses.gpl2Plus;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
homepage = http://mpv.io;
license = licenses.gpl2Plus;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -9,8 +9,7 @@
, mjpegtools
, alsaLib
, libv4l
, cimg
}:
, cimg }:
stdenv.mkDerivation rec {
@ -35,7 +34,7 @@ stdenv.mkDerivation rec {
make install prefix="$out" wxcamdocdir="$out/share/doc/wxcam"
'';
meta = {
meta = with stdenv.lib; {
description = "An open-source, wxGTK-based webcam app for Linux";
longDescription = ''
wxCam is a webcam application for linux. It supports video recording
@ -45,8 +44,8 @@ stdenv.mkDerivation rec {
so it should work on a very large number of devices.
'';
homepage = http://wxcam.sourceforge.net/;
license = stdenv.lib.licenses.gpl3Plus;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
license = licenses.gpl3Plus;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}

View File

@ -1,7 +1,6 @@
{ stdenv, fetchurl
, localBios ? true, nasm ? null
, sdlSupport ? true, SDL ? null
}:
, sdlSupport ? true, SDL ? null }:
assert sdlSupport -> (SDL != null);

View File

@ -5,8 +5,7 @@
, termSupport ? true , ncurses ? null, readline ? null
, wxSupport ? false, wxGTK ? null
, wgetSupport ? false, wget ? null
, curlSupport ? false, curl ? null
}:
, curlSupport ? false, curl ? null }:
assert sdlSupport -> (SDL != null);
assert termSupport -> (ncurses != null&& readline != null);
@ -52,15 +51,19 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE="-I${gtk}/include/gtk-2.0/";
meta = {
meta = with stdenv.lib; {
description = "An open-source IA-32 (x86) PC emulator";
longDescription = ''
Bochs is an open-source (LGPL), highly portable IA-32 PC emulator, written in C++, that runs on most popular platforms. It includes emulation of the Intel x86 CPU, common I/O devices, and a custom BIOS.
Bochs is an open-source (LGPL), highly portable IA-32 PC emulator,
written in C++, that runs on most popular platforms. It includes
emulation of the Intel x86 CPU, common I/O devices, and a custom
BIOS.
'';
homepage = http://bochs.sourceforge.net/;
license = stdenv.lib.licenses.lgpl2Plus;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
license = licenses.lgpl2Plus;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}
# TODO: study config.bochs.* implementation (like config.ffmpeg.* options)

View File

@ -2,8 +2,7 @@
, freetype, fribidi
, libXext, libXft, libXpm, libXrandr, libXrender, xextproto
, libXinerama
, imlib2
}:
, imlib2 }:
stdenv.mkDerivation rec {
@ -17,17 +16,19 @@ stdenv.mkDerivation rec {
sha256 = "164dd7bf59791d09a1e729a4fcd5e7347a1004ba675629860a5cf1a271c32983";
};
meta = {
meta = with stdenv.lib; {
description = "Full-featured, light-resource X window manager";
longDescription = ''
Fluxbox is a X window manager based on Blackbox 0.61.1 window manager sources.
It is very light on resources and easy to handle but yet full of features to make an easy,
and extremely fast, desktop experience. It is written in C++ and licensed under MIT license.
Fluxbox is a X window manager based on Blackbox 0.61.1 window
manager sources. It is very light on resources and easy to
handle but yet full of features to make an easy, and extremely
fast, desktop experience. It is written in C++ and licensed
under MIT license.
'';
homepage = http://fluxbox.org/;
license = stdenv.lib.licenses.mit;
maintainers = [ stdenv.lib.maintainers.AndersonTorres ];
platforms = stdenv.lib.platforms.linux;
license = licenses.mit;
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
}
# Many thanks Jack Ryan from Nix-dev mailing list!

View File

@ -5,7 +5,7 @@ stdenv.mkDerivation rec {
name = "jwm-2.2.2";
src = fetchurl {
url = "http://www.joewing.net/programs/jwm/releases/${name}.tar.xz";
url = "http://www.joewing.net/projects/jwm/releases/${name}.tar.xz";
sha256 = "0nhyy78c6imk85d47bakk460x0cfhkyghqq82zghmb00dhwiryln";
};

View File

@ -3,7 +3,7 @@
chrootenvDest=/run/chrootenv/@name@
# Remove bind mount points
rmdir $chrootenvDest/{dev,nix/store,nix,proc,sys,host-etc,home,var,run}
rmdir $chrootenvDest/{dev,nix/store,nix,proc,sys,host-etc,home,var,run,tmp}
# Remove symlinks to the software that should be part of the chroot system profile
for i in @chrootEnv@/sw/*
@ -15,7 +15,8 @@ do
done
# Remove the remaining folders
rm -Rf $chrootenvDest/{etc,root,tmp}
rm -Rf $chrootenvDest/{etc,root}
rm -Rf /tmp/chrootenv-@name@
# Remove the chroot environment folder
rmdir $chrootenvDest

View File

@ -45,4 +45,5 @@ ln -s ../../../host-etc/static/fonts/conf.d/00-nixos.conf $chrootenvDest/etc/fon
mkdir $chrootenvDest/root
# Create tmp folder
mkdir -m1777 $chrootenvDest/tmp
mkdir -m1777 $chrootenvDest/tmp
mkdir -m1777 -p /tmp/chrootenv-@name@

View File

@ -21,3 +21,6 @@ mount --rbind /run $chrootenvDest/run
# Bind mount the host system's /etc
mount --bind /etc $chrootenvDest/host-etc
# Bind mount /tmp
mount --bind /tmp/chrootenv-@name@ /run/chrootenv/steam/tmp

View File

@ -3,4 +3,4 @@
chrootenvDest=/run/chrootenv/@name@
# Unmount all (r)bind mounts
umount -l $chrootenvDest/{dev/pts,dev/shm,dev,nix/store,proc,sys,host-etc,home,var,run}
umount -l $chrootenvDest/{dev/pts,dev/shm,dev,nix/store,proc,sys,host-etc,home,var,tmp,run}

View File

@ -32,7 +32,7 @@ let
grKernel = if cfg.stable
then mkKernel pkgs.linux_3_14 stable-patch
else mkKernel pkgs.linux_3_15 test-patch;
else mkKernel pkgs.linux_3_16 test-patch;
## -- grsecurity configuration ---------------------------------------------

View File

@ -4,6 +4,7 @@ rec {
src = fetchurl {
urls = [
"ftp://ftp.FreeBSD.org/pub/FreeBSD/ports/distfiles/ttf-arkpandora-${version}.tgz"
"http://distcache.FreeBSD.org/ports-distfiles/ttf-arkpandora-${version}.tgz"
"http://www.users.bigpond.net.au/gavindi/ttf-arkpandora-${version}.tgz"
];
sha256 = "16mfxwlgn6vs3xn00hha5dnmz6bhjiflq138y4zcq3yhk0y9bz51";

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libxslt, docbook_xml_dtd_42, automake}:
{stdenv, fetchurl, pkgconfig, perl, perlXMLParser, libxml2, libxslt, docbook_xml_dtd_42, automake, gettext}:
stdenv.mkDerivation {
name = "scrollkeeper-0.3.14";
@ -13,6 +13,6 @@ stdenv.mkDerivation {
cp ${automake}/share/automake*/config.{sub,guess} .
";
buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt];
buildInputs = [pkgconfig perl perlXMLParser libxml2 libxslt gettext];
configureFlags = "--with-xml-catalog=${docbook_xml_dtd_42}/xml/dtd/docbook/docbook.cat";
}

View File

@ -0,0 +1,36 @@
--- a/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp
+++ b/kdecore/auth/backends/polkit-1/Polkit1Backend.cpp
@@ -144,7 +144,7 @@
Action::AuthStatus Polkit1Backend::actionStatus(const QString &action)
{
- PolkitQt1::UnixProcessSubject subject(QCoreApplication::applicationPid());
+ PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID()));
PolkitQt1::Authority::Result r = PolkitQt1::Authority::instance()->checkAuthorizationSync(action, subject,
PolkitQt1::Authority::None);
switch (r) {
@@ -160,21 +160,12 @@
QByteArray Polkit1Backend::callerID() const
{
- QByteArray a;
- QDataStream s(&a, QIODevice::WriteOnly);
- s << QCoreApplication::applicationPid();
-
- return a;
+ return QDBusConnection::systemBus().baseService().toUtf8();
}
bool Polkit1Backend::isCallerAuthorized(const QString &action, QByteArray callerID)
{
- QDataStream s(&callerID, QIODevice::ReadOnly);
- qint64 pid;
-
- s >> pid;
-
- PolkitQt1::UnixProcessSubject subject(pid);
+ PolkitQt1::SystemBusNameSubject subject(QString::fromUtf8(callerID));
PolkitQt1::Authority *authority = PolkitQt1::Authority::instance();
PolkitResultEventLoop e;

View File

@ -4,7 +4,7 @@
, automoc4, soprano, qca2, attica, enchant, libdbusmenu_qt, grantlee
, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, acl, attr, libXtst
, udev, herqq, phonon, libjpeg, xz, ilmbase, libxslt
, pkgconfig, fetchpatch
, pkgconfig
}:
kde {
@ -30,12 +30,7 @@ kde {
patches = [
../files/polkit-install.patch
(fetchpatch {
name = "CVE-2014-5033.patch";
url = "http://quickgit.kde.org/?p=kdelibs.git"
+ "&a=commit&h=e4e7b53b71e2659adaf52691d4accc3594203b23";
sha256 = "0mdqa9w1p6cmli6976v4wi0sw9r4p5prkj7lzfd1877wk11c9c73";
})
../files/kdelibs-cve-2014-5033.patch # Security patch, remove when updating to 4.14.0 or more
];
cmakeFlags = [

View File

@ -28,7 +28,7 @@ cabal.mkDerivation (self: {
meta = {
homepage = "http://wiki.portal.chalmers.se/agda/";
description = "A dependently typed functional programming language and proof assistant";
license = "unknown";
license = self.stdenv.lib.licenses.mit;
platforms = self.ghc.meta.platforms;
};
})

View File

@ -1,8 +1,5 @@
{ stdenv, agda, fetchurl, ghcWithPackages }:
{ stdenv, agda, fetchurl, ghc, filemanip }:
let
ghc = ghcWithPackages (s: [ s.filemanip ]);
in
agda.mkDerivation (self: rec {
name = "Agda-stdlib";
version = "0.8.1";
@ -12,8 +9,9 @@ agda.mkDerivation (self: rec {
sha256 = "0ij4rg4lk0pq01ing285gbmnn23dcf2rhihdcs8bbdpjg52vl4gf";
};
buildInputs = [ filemanip ghc ];
preConfigure = ''
${ghc}/bin/runhaskell GenerateEverything.hs
runhaskell GenerateEverything.hs
'';
topSourceDirectories = [ "src" ];
@ -21,7 +19,8 @@ agda.mkDerivation (self: rec {
meta = with stdenv.lib; {
homepage = "http://wiki.portal.chalmers.se/agda/pmwiki.php?n=Libraries.StandardLibrary";
description = "A standard library for use with the Agda compiler.";
license = "unknown";
license = stdenv.lib.licenses.mit;
platforms = stdenv.lib.platforms.unix;
maintainers = with maintainers; [ jwiegley ];
};
})

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, makeWrapper, jre }:
stdenv.mkDerivation rec {
name = "scala-2.11.0";
name = "scala-2.11.1";
src = fetchurl {
url = "http://www.scala-lang.org/files/archive/${name}.tgz";
sha256 = "00lap31c6rxvg7vipmj0j7f4mv6c58wpfyd3785bxwlhrzmmwgq7";
sha256 = "1vjsmqjwpxavyj29wrbvvx7799fsa65d4iha5mj63cgs8qp605gk";
};
buildInputs = [ jre makeWrapper ] ;

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, erlang, rebar, makeWrapper, coreutils }:
let
version = "0.15.1";
version = "1.0.0";
in
stdenv.mkDerivation {
name = "elixir-${version}";
src = fetchurl {
url = "https://github.com/elixir-lang/elixir/archive/v${version}.tar.gz";
sha256 = "8e608abf90a6e9a25ef5fb7e45dfd04e2cb7e1fecb4ac260bf6652885a7f0c50";
sha256 = "1ci8g6nh89xnn0ax9kazcs47w406nqsj1d4rf8sb1b6abfq78xsj";
};
buildInputs = [ erlang rebar makeWrapper ];

View File

@ -0,0 +1,32 @@
{ stdenv, fetchgit, sqlite }:
stdenv.mkDerivation {
name = "jimtcl-0.75-git";
src = fetchgit {
url = https://github.com/msteveb/jimtcl.git;
rev = "c4d4bf8bc104733db1f5992a27d88fbfca9ba882";
sha256 = "0vnl2k5sj250l08bplqd61zj6261v7kp202pss66g01rhp42fj3r";
};
buildInputs = [
sqlite
];
configureFlags = [
"--with-ext=oo"
"--with-ext=tree"
"--with-ext=binary"
"--with-ext=sqlite3"
"--enable-utf8"
"--ipv6"
];
meta = {
description = "An open source small-footprint implementation of the Tcl programming language";
homepage = http://jim.tcl.tk/;
license = stdenv.lib.licenses.bsd2;
platforms = stdenv.lib.platforms.all;
maintainers = with stdenv.lib.maintainers; [ dbohdan ];
};
}

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, readline }:
{ stdenv, fetchurl, fetchpatch, readline }:
let
dsoPatch = fetchurl {
@ -18,7 +18,13 @@ stdenv.mkDerivation rec {
buildInputs = [ readline ];
patches = if stdenv.isDarwin then [ ./5.1.darwin.patch ] else [ dsoPatch ];
patches = (if stdenv.isDarwin then [ ./5.1.darwin.patch ] else [ dsoPatch ])
++ [(fetchpatch {
name = "CVE-2014-5461.patch";
url = "http://anonscm.debian.org/cgit/pkg-lua/lua5.1.git/plain/debian/patches/"
+ "0004-Fix-stack-overflow-in-vararg-functions.patch?id=b75a2014db2ad65683521f7bb295bfa37b48b389";
sha256 = "05i5vh53d9i6dy11ibg9i9qpwz5hdm0s8bkx1d9cfcvy80cm4c7f";
})];
configurePhase =
if stdenv.isDarwin

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, lua5, lua5_sockets, openssl }:
{ stdenv, fetchurl, lua5, openssl }:
stdenv.mkDerivation rec {
version = "0.5";

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, lua5}:
{ stdenv, fetchurl, lua5 }:
stdenv.mkDerivation rec {
name = "lua-sockets-${version}";
@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
sha256 = "19ichkbc4rxv00ggz8gyf29jibvc2wq9pqjik0ll326rrxswgnag";
};
luaver = "5.1"; # TODO
luaver = lua5.luaversion;
patchPhase = ''
sed -e "s,^INSTALL_TOP_SHARE.*,INSTALL_TOP_SHARE=$out/share/lua/${lua5.luaversion}," \
-e "s,^INSTALL_TOP_LIB.*,INSTALL_TOP_LIB=$out/lib/lua/${lua5.luaversion}," \

View File

@ -9,7 +9,7 @@ in
composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
version = "5.4.31";
version = "5.4.32";
name = "php-${version}";
@ -249,7 +249,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
src = fetchurl {
url = "http://www.php.net/distributions/php-${version}.tar.bz2";
sha256 = "0kci0yir923fc7dv7j9qrc10pj05v82jnxjxjbgrj7gx64a4k3jy";
sha256 = "09n8lxnc5p2xfwk0ql2lh183h78hha1axhrdsa6g3650d5v73l16";
};
meta = {

View File

@ -4,22 +4,23 @@ g: # Get dependencies from patched gems
{
aliases = {
ZenTest = g.ZenTest_4_10_1;
actionmailer = g.actionmailer_4_1_5;
actionpack = g.actionpack_4_1_5;
actionview = g.actionview_4_1_5;
activemodel = g.activemodel_4_1_5;
activerecord = g.activerecord_4_1_5;
activesupport = g.activesupport_4_1_5;
actionmailer = g.actionmailer_4_1_6;
actionpack = g.actionpack_4_1_6;
actionview = g.actionview_4_1_6;
activemodel = g.activemodel_4_1_6;
activerecord = g.activerecord_4_1_6;
activesupport = g.activesupport_4_1_6;
addressable = g.addressable_2_3_6;
arel = g.arel_5_0_1_20140414130214;
atoulme_Antwrap = g.atoulme_Antwrap_0_7_4;
autotest_rails = g.autotest_rails_4_2_1;
aws_sdk = g.aws_sdk_1_51_0;
aws_sdk = g.aws_sdk_1_53_0;
aws_sdk_v1 = g.aws_sdk_v1_1_53_0;
backports = g.backports_3_6_0;
bitbucket_backup = g.bitbucket_backup_0_3_1;
builder = g.builder_3_2_2;
buildr = g.buildr_1_4_19;
bundler = g.bundler_1_7_1;
buildr = g.buildr_1_4_20;
bundler = g.bundler_1_7_2;
childprocess = g.childprocess_0_5_3;
chronic = g.chronic_0_10_2;
coderay = g.coderay_1_1_0;
@ -27,7 +28,7 @@ g: # Get dependencies from patched gems
daemons = g.daemons_1_1_9;
diff_lcs = g.diff_lcs_1_2_5;
dimensions = g.dimensions_1_2_0;
domain_name = g.domain_name_0_5_20;
domain_name = g.domain_name_0_5_21;
dotenv = g.dotenv_0_11_1;
dotenv_deployment = g.dotenv_deployment_0_0_2;
em_resolv_replace = g.em_resolv_replace_1_1_3;
@ -35,13 +36,14 @@ g: # Get dependencies from patched gems
ethon = g.ethon_0_7_1;
eventmachine = g.eventmachine_1_0_3;
eventmachine_tail = g.eventmachine_tail_0_6_4;
execjs = g.execjs_2_2_1;
fakes3 = g.fakes3_0_1_5_2;
faraday = g.faraday_0_9_0;
faraday_middleware = g.faraday_middleware_0_9_1;
ffi = g.ffi_1_9_3;
file_tail = g.file_tail_1_0_12;
foreman = g.foreman_0_74_0;
gettext = g.gettext_3_1_3;
foreman = g.foreman_0_75_0;
gettext = g.gettext_3_1_4;
gh = g.gh_0_13_2;
gherkin = g.gherkin_2_12_2;
highline = g.highline_1_6_21;
@ -63,7 +65,7 @@ g: # Get dependencies from patched gems
mime_types = g.mime_types_2_3;
mini_portile = g.mini_portile_0_6_0;
minitar = g.minitar_0_5_4;
minitest = g.minitest_5_4_0;
minitest = g.minitest_5_4_1;
multi_json = g.multi_json_1_10_1;
multi_test = g.multi_test_0_1_1;
multipart_post = g.multipart_post_2_0_0;
@ -79,17 +81,17 @@ g: # Get dependencies from patched gems
papertrail = g.papertrail_0_9_10;
papertrail_cli = g.papertrail_cli_0_9_3;
parallel = g.parallel_0_7_1;
polyglot = g.polyglot_0_3_5;
pry = g.pry_0_9_12_6;
pusher_client = g.pusher_client_0_6_0;
rack = g.rack_1_5_2;
rack_protection = g.rack_protection_1_5_3;
rack_test = g.rack_test_0_6_2;
rails = g.rails_4_1_5;
railties = g.railties_4_1_5;
rails = g.rails_4_1_6;
railties = g.railties_4_1_6;
rake = g.rake_10_3_2;
rb_fsevent = g.rb_fsevent_0_9_4;
rdiscount = g.rdiscount_2_1_7_1;
rdoc = g.rdoc_4_1_2;
remote_syslog = g.remote_syslog_1_6_14;
riemann_dash = g.riemann_dash_0_2_9;
right_aws = g.right_aws_3_1_0;
@ -102,13 +104,13 @@ g: # Get dependencies from patched gems
rspec_expectations = g.rspec_expectations_2_14_5;
rspec_mocks = g.rspec_mocks_2_14_6;
rubyzip = g.rubyzip_1_1_6;
sass = g.sass_3_4_1;
selenium_webdriver = g.selenium_webdriver_2_42_0;
sass = g.sass_3_4_3;
selenium_webdriver = g.selenium_webdriver_2_43_0;
servolux = g.servolux_0_10_0;
sinatra = g.sinatra_1_4_5;
slop = g.slop_3_6_0;
sprockets = g.sprockets_2_12_1;
sprockets_rails = g.sprockets_rails_2_1_3;
sprockets = g.sprockets_2_12_2;
sprockets_rails = g.sprockets_rails_2_1_4;
syslog_protocol = g.syslog_protocol_0_9_2;
systemu = g.systemu_2_6_4;
taskjuggler = g.taskjuggler_3_5_0;
@ -121,21 +123,22 @@ g: # Get dependencies from patched gems
tilt = g.tilt_1_4_1;
tins = g.tins_1_3_2;
travis = g.travis_1_7_1;
treetop = g.treetop_1_4_15;
trollop = g.trollop_2_0;
typhoeus = g.typhoeus_0_6_9;
tzinfo = g.tzinfo_1_2_2;
uglifier = g.uglifier_2_5_3;
unf = g.unf_0_1_4;
unf_ext = g.unf_ext_0_0_6;
uuid = g.uuid_2_3_7;
webrick = g.webrick_1_3_1;
webrobots = g.webrobots_0_1_1;
websocket = g.websocket_1_2_0;
websocket = g.websocket_1_2_1;
xapian_full = g.xapian_full_1_2_3;
xapian_ruby = g.xapian_ruby_1_2_17;
xml_simple = g.xml_simple_1_1_2;
yajl_ruby = g.yajl_ruby_1_2_1;
};
gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''cucumber'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''remote_syslog'' ''riemann-dash'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''terminal-notifier'' ''thin'' ''travis'' ''trollop'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ];
gem_nix_args = [ ''autotest-rails'' ''aws-sdk'' ''bitbucket-backup'' ''buildr'' ''cucumber'' ''erubis'' ''execjs'' ''fakes3'' ''foreman'' ''gettext'' ''iconv'' ''jsduck'' ''lockfile'' ''mechanize'' ''nix'' ''papertrail-cli'' ''rails'' ''rake'' ''rb-fsevent'' ''rdoc'' ''remote_syslog'' ''riemann-dash'' ''right_aws'' ''rmail'' ''sass'' ''selenium-webdriver'' ''sinatra-1.3.2'' ''taskjuggler'' ''terminal-notifier'' ''thin'' ''travis'' ''trollop'' ''uglifier'' ''uuid'' ''xapian-full'' ''xapian-ruby'' ''yajl-ruby'' ];
gems = {
ZenTest_4_10_1 = {
basename = ''ZenTest'';
@ -168,71 +171,71 @@ installed versions.'';
requiredGems = [ ];
sha256 = ''1jyk0lag27s71idna2h72ljskimj0snsiw7diyjx5rqxnz6fj7z1'';
};
actionmailer_4_1_5 = {
actionmailer_4_1_6 = {
basename = ''actionmailer'';
meta = {
description = ''Email composition, delivery, and receiving framework (part of Rails).'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''Email on Rails. Compose, deliver, receive, and test emails using the familiar controller/view pattern. First-class support for multipart email and attachments.'';
};
name = ''actionmailer-4.1.5'';
requiredGems = [ g.actionpack_4_1_5 g.actionview_4_1_5 g.mail_2_5_4 ];
sha256 = ''19frz9njy6jbxh7yasx62l4ifns3dxfkfqvnxlqb4pwsz7lqcp9c'';
name = ''actionmailer-4.1.6'';
requiredGems = [ g.actionpack_4_1_6 g.actionview_4_1_6 g.mail_2_6_1 ];
sha256 = ''1lsw9h0wm7pwdzm9jdq3y5b8b1cf56fd4dcgx4s91qf0lc0dw0wv'';
};
actionpack_4_1_5 = {
actionpack_4_1_6 = {
basename = ''actionpack'';
meta = {
description = ''Web-flow and rendering framework putting the VC in MVC (part of Rails).'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''Web apps on Rails. Simple, battle-tested conventions for building and testing MVC web applications. Works with any Rack-compatible server.'';
};
name = ''actionpack-4.1.5'';
requiredGems = [ g.activesupport_4_1_5 g.rack_1_5_2 g.rack_test_0_6_2 g.actionview_4_1_5 ];
sha256 = ''05wh3c5rw3c0rsza3bnpmr6s63n481d4gkbhsp3ngwn9lpp3jdb6'';
name = ''actionpack-4.1.6'';
requiredGems = [ g.activesupport_4_1_6 g.rack_1_5_2 g.rack_test_0_6_2 g.actionview_4_1_6 ];
sha256 = ''07a95iahv04gikk4qbgpi9is709ynkpcd4g00kqm629jaffrsyj2'';
};
actionview_4_1_5 = {
actionview_4_1_6 = {
basename = ''actionview'';
meta = {
description = ''Rendering framework putting the V in MVC (part of Rails).'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''Simple, battle-tested conventions and helpers for building web pages.'';
};
name = ''actionview-4.1.5'';
requiredGems = [ g.activesupport_4_1_5 g.builder_3_2_2 g.erubis_2_7_0 ];
sha256 = ''02zb4xi2farzh892j9awxshyly7ijlvbj39g6cwq5mhs5cx59qk8'';
name = ''actionview-4.1.6'';
requiredGems = [ g.activesupport_4_1_6 g.builder_3_2_2 g.erubis_2_7_0 ];
sha256 = ''1r06r4zsaqsq1wyqy2g29nnycw50v37ab7zmnvzjhy24y53rv9w7'';
};
activemodel_4_1_5 = {
activemodel_4_1_6 = {
basename = ''activemodel'';
meta = {
description = ''A toolkit for building modeling frameworks (part of Rails).'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''A toolkit for building modeling frameworks like Active Record. Rich support for attributes, callbacks, validations, serialization, internationalization, and testing.'';
};
name = ''activemodel-4.1.5'';
requiredGems = [ g.activesupport_4_1_5 g.builder_3_2_2 ];
sha256 = ''1anbjwdfgdjfxiv5vzysrdd98mapvd2h8xjkayq3vq54n13ymjvl'';
name = ''activemodel-4.1.6'';
requiredGems = [ g.activesupport_4_1_6 g.builder_3_2_2 ];
sha256 = ''14mw7d0jax7sky4nc2a7rspcf2inb3m6mxhx653i00v0xjrxa3x6'';
};
activerecord_4_1_5 = {
activerecord_4_1_6 = {
basename = ''activerecord'';
meta = {
description = ''Object-relational mapper framework (part of Rails).'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''Databases on Rails. Build a persistent domain model by mapping database tables to Ruby classes. Strong conventions for associations, validations, aggregations, migrations, and testing come baked-in.'';
};
name = ''activerecord-4.1.5'';
requiredGems = [ g.activesupport_4_1_5 g.activemodel_4_1_5 g.arel_5_0_1_20140414130214 ];
sha256 = ''1z8awkkl4bn4ghdp432n2qpagbb8569ffq63kmgkbwf8127kmzrc'';
name = ''activerecord-4.1.6'';
requiredGems = [ g.activesupport_4_1_6 g.activemodel_4_1_6 g.arel_5_0_1_20140414130214 ];
sha256 = ''15s72gawgvd7msa2i7hmjw81znif8zh1v57pmans8vmphfg2n9l7'';
};
activesupport_4_1_5 = {
activesupport_4_1_6 = {
basename = ''activesupport'';
meta = {
description = ''A toolkit of support libraries and Ruby core extensions extracted from the Rails framework.'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''A toolkit of support libraries and Ruby core extensions extracted from the Rails framework. Rich support for multibyte strings, internationalization, time zones, and testing.'';
};
name = ''activesupport-4.1.5'';
requiredGems = [ g.i18n_0_6_11 g.json_1_8_1 g.tzinfo_1_2_2 g.minitest_5_4_0 g.thread_safe_0_3_4 ];
sha256 = ''0vmf58q96469dci509hhbqxwr7gaxq4yjsb37xd56ggpqn3qm30k'';
name = ''activesupport-4.1.6'';
requiredGems = [ g.i18n_0_6_11 g.json_1_8_1 g.tzinfo_1_2_2 g.minitest_5_4_1 g.thread_safe_0_3_4 ];
sha256 = ''0crwl6rlxpv5fvvnvcbrjc7iygj8nklj83v1734h5lrhjzirxc22'';
};
addressable_2_3_6 = {
basename = ''addressable'';
@ -300,16 +303,31 @@ rails support and extra plugins for migrations and fixtures.'';
requiredGems = [ g.ZenTest_4_10_1 ];
sha256 = ''1v1dm9zlhdlrxvk90zs8d439ldar674ix41s7pncddgyswcfgg5l'';
};
aws_sdk_1_51_0 = {
aws_sdk_1_53_0 = {
basename = ''aws_sdk'';
meta = {
description = ''AWS SDK for Ruby'';
description = ''AWS SDK for Ruby V1'';
homepage = ''http://aws.amazon.com/sdkforruby'';
longDescription = ''AWS SDK for Ruby'';
longDescription = ''Version 1 of the AWS SDK for Ruby. Available as both `aws-sdk` and `aws-sdk-v1`.
Use `aws-sdk-v1` if you want to load v1 and v2 of the Ruby SDK in the same
application.'';
};
name = ''aws-sdk-1.51.0'';
name = ''aws-sdk-1.53.0'';
requiredGems = [ g.aws_sdk_v1_1_53_0 ];
sha256 = ''1jwvzlpyh5hpa3qn972wmn2pmhqpzw5vjal2n5i14qplvafmj7p2'';
};
aws_sdk_v1_1_53_0 = {
basename = ''aws_sdk_v1'';
meta = {
description = ''AWS SDK for Ruby V1'';
homepage = ''http://aws.amazon.com/sdkforruby'';
longDescription = ''Version 1 of the AWS SDK for Ruby. Available as both `aws-sdk` and `aws-sdk-v1`.
Use `aws-sdk-v1` if you want to load v1 and v2 of the Ruby SDK in the same
application.'';
};
name = ''aws-sdk-v1-1.53.0'';
requiredGems = [ g.nokogiri_1_6_3_1 g.json_1_8_1 ];
sha256 = ''092a7km6ar7zvyyzgiqsb0dm354sqa6mzx7sa0c8ndwm918lbqai'';
sha256 = ''00yagrm2d5agwkfgkv4rqbxymwmgjmv5n8hah3xhrc90q1ywr7hw'';
};
backports_3_6_0 = {
basename = ''backports'';
@ -349,7 +367,7 @@ simple to do. Currently the following builder objects are supported:
requiredGems = [ ];
sha256 = ''14fii7ab8qszrvsvhz6z2z3i4dw0h41a62fjr2h1j8m41vbrmyv2'';
};
buildr_1_4_19 = {
buildr_1_4_20 = {
basename = ''buildr'';
meta = {
description = ''Build like you code'';
@ -361,20 +379,20 @@ to do, and it takes care of the rest. But also something we can easily extend
for those one-off tasks, with a language that's a joy to use.
'';
};
name = ''buildr-1.4.19'';
requiredGems = [ g.rake_0_9_2_2 g.builder_3_2_2 g.net_ssh_2_7_0 g.net_sftp_2_1_2 g.rubyzip_0_9_9 g.json_pure_1_8_0 g.hoe_3_7_1 g.rjb_1_4_8 g.atoulme_Antwrap_0_7_4 g.diff_lcs_1_2_4 g.rspec_expectations_2_14_3 g.rspec_mocks_2_14_3 g.rspec_core_2_14_5 g.rspec_2_14_1 g.xml_simple_1_1_2 g.minitar_0_5_4 g.bundler_1_7_1 g.orderedhash_0_0_6 ];
sha256 = ''07k6z149si7v1h5m1bvdhjcv0nnjwkd2c6a8n1779l8g47ckccj0'';
name = ''buildr-1.4.20'';
requiredGems = [ g.rake_0_9_2_2 g.builder_3_2_2 g.net_ssh_2_7_0 g.net_sftp_2_1_2 g.rubyzip_0_9_9 g.json_pure_1_8_0 g.hoe_3_7_1 g.rjb_1_4_9 g.atoulme_Antwrap_0_7_4 g.diff_lcs_1_2_4 g.rspec_expectations_2_14_3 g.rspec_mocks_2_14_3 g.rspec_core_2_14_5 g.rspec_2_14_1 g.xml_simple_1_1_2 g.minitar_0_5_4 g.bundler_1_7_2 g.orderedhash_0_0_6 ];
sha256 = ''0x4ffblw7jg0z49ywfm5abfxgg23di3d661czndwi904cvmghrkv'';
};
bundler_1_7_1 = {
bundler_1_7_2 = {
basename = ''bundler'';
meta = {
description = ''The best way to manage your application's dependencies'';
homepage = ''http://bundler.io'';
longDescription = ''Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably'';
};
name = ''bundler-1.7.1'';
name = ''bundler-1.7.2'';
requiredGems = [ ];
sha256 = ''144yqbmi89gl933rh8dv58bm7ia14s4a098qdi2z0q09ank9n5h2'';
sha256 = ''1xfacbivyi40ig9jzpsv2z42vwghf77n4r65ls0pcnbqn4ypqyhc'';
};
childprocess_0_5_3 = {
basename = ''childprocess'';
@ -486,7 +504,7 @@ We are happy to report that this issue has been resolved.'';
requiredGems = [ ];
sha256 = ''1pqb7yzjcpbgbyi196ifqbd1wy570cn12bkzcvpcha4xilhajja0'';
};
domain_name_0_5_20 = {
domain_name_0_5_21 = {
basename = ''domain_name'';
meta = {
description = ''Domain Name manipulation library for Ruby'';
@ -497,9 +515,9 @@ It can also be used for cookie domain validation based on the Public
Suffix List.
'';
};
name = ''domain_name-0.5.20'';
name = ''domain_name-0.5.21'';
requiredGems = [ g.unf_0_1_4 ];
sha256 = ''17ls88kp18dxjc93q8kmyx2anknva0vbmny60xbgpbwq3hg0qv6s'';
sha256 = ''1ryb2gmryzcrqm9gl19658m1kcjkjz5m0r24mzq4j0zfrs95nfnq'';
};
dotenv_0_11_1 = {
basename = ''dotenv'';
@ -597,6 +615,17 @@ using TCP/IP, especially if custom protocols are required.'';
requiredGems = [ g.eventmachine_1_0_3 ];
sha256 = ''1pvlb34vdzd81kf9f3xyibb4f55xjqm7lqqy28dgyci5cyv50y61'';
};
execjs_2_2_1 = {
basename = ''execjs'';
meta = {
description = ''Run JavaScript code from Ruby'';
homepage = ''https://github.com/sstephenson/execjs'';
longDescription = ''ExecJS lets you run JavaScript code from Ruby.'';
};
name = ''execjs-2.2.1'';
requiredGems = [ ];
sha256 = ''1s41g9qwq0h4452q4gp934lnkzfkxh4wrg8fd4bcynba86bf3j8b'';
};
fakes3_0_1_5_2 = {
basename = ''fakes3'';
meta = {
@ -650,18 +679,18 @@ using TCP/IP, especially if custom protocols are required.'';
requiredGems = [ g.tins_0_13_2 ];
sha256 = ''0mzxxnwj7k5pwxs0rdbmb3b41zgvzw7x40sf3qlkch4zdfx91i1j'';
};
foreman_0_74_0 = {
foreman_0_75_0 = {
basename = ''foreman'';
meta = {
description = ''Process manager for applications with multiple components'';
homepage = ''http://github.com/ddollar/foreman'';
longDescription = ''Process manager for applications with multiple components'';
};
name = ''foreman-0.74.0'';
name = ''foreman-0.75.0'';
requiredGems = [ g.thor_0_19_1 g.dotenv_0_11_1 ];
sha256 = ''0jqblq0myzmdp2cywzz7flvgqnhf267ykcdn250cccy68s9wm37m'';
sha256 = ''0iicqdjwwms86nchk80ia7x4wjcd3p5c8s53bc0z0h063i0ks9ha'';
};
gettext_3_1_3 = {
gettext_3_1_4 = {
basename = ''gettext'';
meta = {
description = ''Gettext is a pure Ruby libary and tools to localize messages.'';
@ -671,9 +700,9 @@ The catalog file(po-file) is same format with GNU gettext.
So you can use GNU gettext tools for maintaining.
'';
};
name = ''gettext-3.1.3'';
name = ''gettext-3.1.4'';
requiredGems = [ g.locale_2_1_0 g.text_1_3_0 ];
sha256 = ''066x2dbryab02kdbk6km79h4j9b0f0ynsnzcygjgvzn9001ybf9q'';
sha256 = ''0gfnbkj2knpq8jxplkdr18by64kcadqxjhrxr3ncldz2ghm5zhvb'';
};
gh_0_13_2 = {
basename = ''gh'';
@ -751,7 +780,7 @@ For extra goodness, see: http://seattlerb.rubyforge.org/hoe/Hoe.pdf'';
longDescription = ''HTTP::Cookie is a Ruby library to handle HTTP Cookies based on RFC 6265. It has with security, standards compliance and compatibility in mind, to behave just the same as today's major web browsers. It has builtin support for the legacy cookies.txt and the latest cookies.sqlite formats of Mozilla Firefox, and its modular API makes it easy to add support for a new backend store.'';
};
name = ''http-cookie-1.0.2'';
requiredGems = [ g.domain_name_0_5_20 ];
requiredGems = [ g.domain_name_0_5_21 ];
sha256 = ''0cz2fdkngs3jc5w32a6xcl511hy03a7zdiy988jk1sf3bf5v3hdw'';
};
i18n_0_6_11 = {
@ -854,17 +883,6 @@ For extra goodness, see: http://seattlerb.rubyforge.org/hoe/Hoe.pdf'';
requiredGems = [ g.systemu_2_6_4 ];
sha256 = ''1clii8mvhmh5lmnm95ljnjygyiyhdpja85c5vy487rhxn52scn0b'';
};
mail_2_5_4 = {
basename = ''mail'';
meta = {
description = ''Mail provides a nice Ruby DSL for making, sending and reading emails.'';
homepage = ''http://github.com/mikel/mail'';
longDescription = ''A really Ruby Mail handler.'';
};
name = ''mail-2.5.4'';
requiredGems = [ g.mime_types_1_25_1 g.treetop_1_4_15 ];
sha256 = ''0z15ksb8blcppchv03g34844f7xgf36ckp484qjj2886ig1qara4'';
};
mail_2_6_1 = {
basename = ''mail'';
meta = {
@ -888,7 +906,7 @@ submitted. Mechanize also keeps track of the sites that you have visited as
a history.'';
};
name = ''mechanize-2.7.3'';
requiredGems = [ g.net_http_digest_auth_1_4 g.net_http_persistent_2_9_4 g.mime_types_2_3 g.http_cookie_1_0_2 g.nokogiri_1_6_3_1 g.ntlm_http_0_1_1 g.webrobots_0_1_1 g.domain_name_0_5_20 ];
requiredGems = [ g.net_http_digest_auth_1_4 g.net_http_persistent_2_9_4 g.mime_types_2_3 g.http_cookie_1_0_2 g.nokogiri_1_6_3_1 g.ntlm_http_0_1_1 g.webrobots_0_1_1 g.domain_name_0_5_21 ];
sha256 = ''00jkazj8fqnynaxca0lnwx5a084irxrnw8n8i0kppq4vg71g7rrx'';
};
method_source_0_8_2 = {
@ -902,64 +920,6 @@ a history.'';
requiredGems = [ ];
sha256 = ''1g5i4w0dmlhzd18dijlqw5gk27bv6dj2kziqzrzb7mpgxgsd1sf2'';
};
mime_types_1_25_1 = {
basename = ''mime_types'';
meta = {
description = ''This library allows for the identification of a file's likely MIME content type'';
homepage = ''http://mime-types.rubyforge.org/'';
longDescription = ''This library allows for the identification of a file's likely MIME content
type. This is release 1.25.1, fixing an issue with priority comparison for
mime-types 1.x. The current release is 2.0, which only supports Ruby 1.9 or
later.
Release 1.25.1 contains all features of 1.25, including the experimental
caching and lazy loading functionality. The caching and lazy loading features
were initially implemented by Greg Brockman (gdb). As these features are
experimental, they are disabled by default and must be enabled through the use
of environment variables. The cache is invalidated on a per-version basis; the
cache for version 1.25 will not be reused for any later version.
To use lazy loading, set the environment variable +RUBY_MIME_TYPES_LAZY_LOAD+
to any value other than 'false'. When using lazy loading, the initial startup
of MIME::Types is around 1225× faster than normal startup (on my system,
normal startup is about 90 ms; lazy startup is about 4 ms). This isn't
generally useful, however, as the MIME::Types database has not been loaded.
Lazy startup and load is just *slightly* fasteraround 1 ms. The real advantage
comes from using the cache.
To enable the cache, set the environment variable +RUBY_MIME_TYPES_CACHE+ to a
filename where MIME::Types will have read-write access. The first time a new
version of MIME::Types is run using this file, it will be created, taking a
little longer than normal. Subsequent loads using the same cache file will be
approximately 3½× faster (25 ms) than normal loads. This can be combined with
+RUBY_MIME_TYPES_LAZY_LOAD+, but this is *not* recommended in a multithreaded
or multiprocess environment where all threads or processes will be using the
same cache file.
As the caching interface is still experimental, the only values cached are the
default MIME::Types database, not any custom MIME::Types added by users.
MIME types are used in MIME-compliant communications, as in e-mail or HTTP
traffic, to indicate the type of content which is transmitted. MIME::Types
provides the ability for detailed information about MIME entities (provided as
a set of MIME::Type objects) to be determined and used programmatically. There
are many types defined by RFCs and vendors, so the list is long but not
complete; don't hesitate to ask to add additional information. This library
follows the IANA collection of MIME types (see below for reference).
MIME::Types for Ruby was originally based on MIME::Types for Perl by Mark
Overmeer, copyright 2001 - 2009.
MIME::Types is built to conform to the MIME types of RFCs 2045 and 2231. It
tracks the {IANA registry}[http://www.iana.org/assignments/media-types/]
({ftp}[ftp://ftp.iana.org/assignments/media-types]) with some unofficial types
added from the {LTSW collection}[http://www.ltsw.se/knbase/internet/mime.htp]
and added by the users of MIME::Types.'';
};
name = ''mime-types-1.25.1'';
requiredGems = [ ];
sha256 = ''0mhzsanmnzdshaba7gmsjwnv168r1yj8y0flzw88frw1cickrvw8'';
};
mime_types_2_3 = {
basename = ''mime_types'';
meta = {
@ -1023,7 +983,7 @@ with some types added by the users of mime-types.'';
requiredGems = [ ];
sha256 = ''1vpdjfmdq1yc4i620frfp9af02ia435dnpj8ybsd7dc3rypkvbka'';
};
minitest_5_4_0 = {
minitest_5_4_1 = {
basename = ''minitest'';
meta = {
description = ''minitest provides a complete suite of testing facilities supporting TDD, BDD, mocking, and benchmarking'';
@ -1082,9 +1042,9 @@ classes, modules, inheritance, methods. This means you only have to
learn ruby to use minitest and all of your regular OO practices like
extract-method refactorings still apply.'';
};
name = ''minitest-5.4.0'';
name = ''minitest-5.4.1'';
requiredGems = [ ];
sha256 = ''002xflqz5wl8gcj9gw4q66mq5jkp445zgd9c5vs6cw6lsfsyg4rl'';
sha256 = ''04iqz25v8vngw4z5pzhwnsf72fb8gf2vzhidrfcbphwsqqik5s4r'';
};
multi_json_1_10_1 = {
basename = ''multi_json'';
@ -1292,20 +1252,6 @@ enough of it.'';
requiredGems = [ ];
sha256 = ''1kzz6ydg7r23ks2b7zbpx4vz3h186n19vhgnjcwi7xwd6h2f1fsq'';
};
polyglot_0_3_5 = {
basename = ''polyglot'';
meta = {
description = ''Augment 'require' to load non-Ruby file types'';
homepage = ''http://github.com/cjheath/polyglot'';
longDescription = ''
The Polyglot library allows a Ruby module to register a loader
for the file type associated with a filename extension, and it
augments 'require' to find and load matching files.'';
};
name = ''polyglot-0.3.5'';
requiredGems = [ ];
sha256 = ''1bqnxwyip623d8pr29rg6m8r0hdg08fpr2yb74f46rn1wgsnxmjr'';
};
pry_0_9_12_6 = {
basename = ''pry'';
meta = {
@ -1325,7 +1271,7 @@ augments 'require' to find and load matching files.'';
longDescription = ''Client for consuming WebSockets from http://pusher.com'';
};
name = ''pusher-client-0.6.0'';
requiredGems = [ g.websocket_1_2_0 g.json_1_8_1 ];
requiredGems = [ g.websocket_1_2_1 g.json_1_8_1 ];
sha256 = ''0n7l630qg6wgzak45b6gfjg9a0fmpbrs7mwchqqbja9mjs95r8qy'';
};
rack_1_5_2 = {
@ -1371,27 +1317,27 @@ request helpers feature.'';
requiredGems = [ g.rack_1_5_2 ];
sha256 = ''01mk715ab5qnqf6va8k3hjsvsmplrfqpz6g58qw4m3l8mim0p4ky'';
};
rails_4_1_5 = {
rails_4_1_6 = {
basename = ''rails'';
meta = {
description = ''Full-stack web application framework.'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''Ruby on Rails is a full-stack web framework optimized for programmer happiness and sustainable productivity. It encourages beautiful code by favoring convention over configuration.'';
};
name = ''rails-4.1.5'';
requiredGems = [ g.activesupport_4_1_5 g.actionpack_4_1_5 g.actionview_4_1_5 g.activemodel_4_1_5 g.activerecord_4_1_5 g.actionmailer_4_1_5 g.railties_4_1_5 g.bundler_1_7_1 g.sprockets_rails_2_1_3 ];
sha256 = ''12s3jkvd6bn40apxc3973czgs7s6y36aclbwif6j770v7sjd9qj7'';
name = ''rails-4.1.6'';
requiredGems = [ g.activesupport_4_1_6 g.actionpack_4_1_6 g.actionview_4_1_6 g.activemodel_4_1_6 g.activerecord_4_1_6 g.actionmailer_4_1_6 g.railties_4_1_6 g.bundler_1_7_2 g.sprockets_rails_2_1_4 ];
sha256 = ''187g903gmni3prd5i768yfgszc4ak5kmrazavr93d0ybfdbcjlgk'';
};
railties_4_1_5 = {
railties_4_1_6 = {
basename = ''railties'';
meta = {
description = ''Tools for creating, working with, and running Rails applications.'';
homepage = ''http://www.rubyonrails.org'';
longDescription = ''Rails internals: application bootup, plugins, generators, and rake tasks.'';
};
name = ''railties-4.1.5'';
requiredGems = [ g.activesupport_4_1_5 g.actionpack_4_1_5 g.rake_10_3_2 g.thor_0_19_1 ];
sha256 = ''18jkjvny51vk53l2g9ibcnjk3gjj1vgh3pyrskmk69csqm2hmaha'';
name = ''railties-4.1.6'';
requiredGems = [ g.activesupport_4_1_6 g.actionpack_4_1_6 g.rake_10_3_2 g.thor_0_19_1 ];
sha256 = ''11valflllkrrz06bsflz78h5nmxhrhm7hdpm1lwmgm8hwd4ybl0c'';
};
rake_0_9_2_2 = {
basename = ''rake'';
@ -1457,6 +1403,19 @@ Rake has the following features:
requiredGems = [ ];
sha256 = ''1g70vsgv7mdwcyk9rxja7wm4qqap67prqwkj335c460vlzs6pqii'';
};
rdoc_4_1_2 = {
basename = ''rdoc'';
meta = {
description = ''RDoc produces HTML and command-line documentation for Ruby projects'';
homepage = ''http://docs.seattlerb.org/rdoc'';
longDescription = ''RDoc produces HTML and command-line documentation for Ruby projects. RDoc
includes the +rdoc+ and +ri+ tools for generating and displaying documentation
from the command-line.'';
};
name = ''rdoc-4.1.2'';
requiredGems = [ g.json_1_8_1 ];
sha256 = ''0cqhjidw657d8irkypxsrv6dr4y9r8csg9inaq40c3iz110cc8w6'';
};
remote_syslog_1_6_14 = {
basename = ''remote_syslog'';
meta = {
@ -1476,7 +1435,7 @@ Rake has the following features:
longDescription = ''HTTP dashboard for the distributed event system Riemann.'';
};
name = ''riemann-dash-0.2.9'';
requiredGems = [ g.erubis_2_7_0 g.sinatra_1_4_5 g.sass_3_4_1 g.webrick_1_3_1 g.multi_json_1_3_6 ];
requiredGems = [ g.erubis_2_7_0 g.sinatra_1_4_5 g.sass_3_4_3 g.webrick_1_3_1 g.multi_json_1_3_6 ];
sha256 = ''0ws5wmjbv8w9lcr3i2mdinj2qm91p6c85k6c067i67cf0p90jxq3'';
};
right_aws_3_1_0 = {
@ -1546,18 +1505,6 @@ algorithm for low-level network errors.
requiredGems = [ ];
sha256 = ''0shd8v24aqxdvim1gdqzwxpanjhfgkhdaw0m0lzz7sybkb02j8qf'';
};
rjb_1_4_8 = {
basename = ''rjb'';
meta = {
description = ''Ruby Java bridge'';
homepage = ''http://rjb.rubyforge.org/'';
longDescription = ''RJB is a bridge program that connect between Ruby and Java with Java Native Interface.
'';
};
name = ''rjb-1.4.8'';
requiredGems = [ ];
sha256 = ''06ps4ssaxb8jwja53h7v7kb31hsdr997b8na89d1yasm5zyraliw'';
};
rjb_1_4_9 = {
basename = ''rjb'';
meta = {
@ -1690,7 +1637,7 @@ RKelly[https://github.com/tenderlove/rkelly] JavaScript parser.'';
requiredGems = [ ];
sha256 = ''17ha7kmgcnhnxyfp9wgyrd2synp17v9g8j1pknhfd2v9x5g475m9'';
};
sass_3_4_1 = {
sass_3_4_3 = {
basename = ''sass'';
meta = {
description = ''A powerful but elegant CSS compiler that makes CSS fun again.'';
@ -1701,20 +1648,20 @@ RKelly[https://github.com/tenderlove/rkelly] JavaScript parser.'';
command line tool or a web-framework plugin.
'';
};
name = ''sass-3.4.1'';
name = ''sass-3.4.3'';
requiredGems = [ ];
sha256 = ''0f997m7g6gcd4yaxxrf1nylk2x8ynf7w2l631sby51zfn21rfli4'';
sha256 = ''0k9qv35wf28qjlv8a1nmvv8n71wxnqim1kwf95igvngys6kih7ds'';
};
selenium_webdriver_2_42_0 = {
selenium_webdriver_2_43_0 = {
basename = ''selenium_webdriver'';
meta = {
description = ''The next generation developer focused tool for automated testing of webapps'';
homepage = ''http://selenium.googlecode.com'';
longDescription = ''WebDriver is a tool for writing automated tests of websites. It aims to mimic the behaviour of a real user, and as such interacts with the HTML of the application.'';
};
name = ''selenium-webdriver-2.42.0'';
requiredGems = [ g.multi_json_1_10_1 g.rubyzip_1_1_6 g.childprocess_0_5_3 g.websocket_1_0_7 ];
sha256 = ''04yjwzc7cy2ax5xgp618z9jbm55cx4b5l546l7xnxj1hk30znw6q'';
name = ''selenium-webdriver-2.43.0'';
requiredGems = [ g.multi_json_1_10_1 g.rubyzip_1_1_6 g.childprocess_0_5_3 g.websocket_1_2_1 ];
sha256 = ''06jjkb4hcyh8mwsqc8c5p6pz6ac1v313h4md0dab872ls5s47zh9'';
};
servolux_0_10_0 = {
basename = ''servolux'';
@ -1763,26 +1710,26 @@ interpreters.'';
requiredGems = [ ];
sha256 = ''00w8g3j7k7kl8ri2cf1m58ckxk8rn350gp4chfscmgv6pq1spk3n'';
};
sprockets_2_12_1 = {
sprockets_2_12_2 = {
basename = ''sprockets'';
meta = {
description = ''Rack-based asset packaging system'';
homepage = ''http://getsprockets.org/'';
longDescription = ''Sprockets is a Rack-based asset packaging system that concatenates and serves JavaScript, CoffeeScript, CSS, LESS, Sass, and SCSS.'';
};
name = ''sprockets-2.12.1'';
name = ''sprockets-2.12.2'';
requiredGems = [ g.hike_1_2_3 g.multi_json_1_10_1 g.rack_1_5_2 g.tilt_1_4_1 ];
sha256 = ''0fi5f32i3bj739qb0zn050k5jjkfqzkn8fjz5dfjwhmh9hl5pb1y'';
sha256 = ''0sclb5nqs5hhr7qfp42rgpasy0f9k4c3jcr3hz89amf2bg5v7slx'';
};
sprockets_rails_2_1_3 = {
sprockets_rails_2_1_4 = {
basename = ''sprockets_rails'';
meta = {
description = ''Sprockets Rails integration'';
homepage = ''https://github.com/rails/sprockets-rails'';
};
name = ''sprockets-rails-2.1.3'';
requiredGems = [ g.sprockets_2_12_1 g.actionpack_4_1_5 g.activesupport_4_1_5 ];
sha256 = ''12kdy9vjn3ygrxhn9jxxx0rvsq601vayrkgbr3rqcpyhqhl4s4wy'';
name = ''sprockets-rails-2.1.4'';
requiredGems = [ g.sprockets_2_12_2 g.actionpack_4_1_6 g.activesupport_4_1_6 ];
sha256 = ''1difqidflj71qh8a84lcfdfg9vy4rw5hkgf2j0jis8bcczcq54l3'';
};
syslog_protocol_0_9_2 = {
basename = ''syslog_protocol'';
@ -1935,16 +1882,6 @@ management.
requiredGems = [ g.faraday_0_9_0 g.faraday_middleware_0_9_1 g.highline_1_6_21 g.backports_3_6_0 g.gh_0_13_2 g.launchy_2_4_2 g.pry_0_9_12_6 g.typhoeus_0_6_9 g.pusher_client_0_6_0 g.addressable_2_3_6 ];
sha256 = ''1h0xajfzkz7pdrbhs2650nl5www8qfmgazmmmw0bcr3dai5kimdf'';
};
treetop_1_4_15 = {
basename = ''treetop'';
meta = {
description = ''A Ruby-based text parsing and interpretation DSL'';
homepage = ''https://github.com/cjheath/treetop'';
};
name = ''treetop-1.4.15'';
requiredGems = [ g.polyglot_0_3_5 g.polyglot_0_3_5 ];
sha256 = ''1zqj5y0mvfvyz11nhsb4d5ch0i0rfcyj64qx19mw4qhg3hh8z9pz'';
};
trollop_2_0 = {
basename = ''trollop'';
meta = {
@ -1982,6 +1919,17 @@ specify.'';
requiredGems = [ g.thread_safe_0_3_4 ];
sha256 = ''1c01p3kg6xvy1cgjnzdfq45fggbwish8krd0h864jvbpybyx7cgx'';
};
uglifier_2_5_3 = {
basename = ''uglifier'';
meta = {
description = ''Ruby wrapper for UglifyJS JavaScript compressor'';
homepage = ''http://github.com/lautis/uglifier'';
longDescription = ''Uglifier minifies JavaScript files by wrapping UglifyJS to be accessible in Ruby'';
};
name = ''uglifier-2.5.3'';
requiredGems = [ g.execjs_2_2_1 g.json_1_8_1 ];
sha256 = ''0rlx9nrcavpfffyacsrh7xyvz3adv7jvylz0sv0jnix1mj5rkpd9'';
};
unf_0_1_4 = {
basename = ''unf'';
meta = {
@ -2041,27 +1989,16 @@ to Ruby/JRuby.
requiredGems = [ ];
sha256 = ''1jlnhhpa1mkrgsmihs2qx13z3n6xhswjnlk5a2ypyplw2id5x32n'';
};
websocket_1_0_7 = {
websocket_1_2_1 = {
basename = ''websocket'';
meta = {
description = ''Universal Ruby library to handle WebSocket protocol'';
homepage = ''http://github.com/imanel/websocket-ruby'';
longDescription = ''Universal Ruby library to handle WebSocket protocol'';
};
name = ''websocket-1.0.7'';
name = ''websocket-1.2.1'';
requiredGems = [ ];
sha256 = ''1jrfz4295qbnjaxv37fw9jzxyxz61izp7c0683mnscacpx262zw0'';
};
websocket_1_2_0 = {
basename = ''websocket'';
meta = {
description = ''Universal Ruby library to handle WebSocket protocol'';
homepage = ''http://github.com/imanel/websocket-ruby'';
longDescription = ''Universal Ruby library to handle WebSocket protocol'';
};
name = ''websocket-1.2.0'';
requiredGems = [ ];
sha256 = ''17q3fsqwa44cali3x852jzjpzgcvvly0n8gszmkaqx520lb9r5l4'';
sha256 = ''17mf28xp6h4gglbn1606jjrhdz9r6kyb2pr603ckadsrx31wh9p6'';
};
xapian_full_1_2_3 = {
basename = ''xapian_full'';
@ -2093,5 +2030,15 @@ to Ruby/JRuby.
requiredGems = [ ];
sha256 = ''0ni8cbkj7l2k5pc4fs2jzp1ymxy4xqa2jc681l4y9iy9chrayddb'';
};
yajl_ruby_1_2_1 = {
basename = ''yajl_ruby'';
meta = {
description = ''Ruby C bindings to the excellent Yajl JSON stream-based parser library.'';
homepage = ''http://github.com/brianmario/yajl-ruby'';
};
name = ''yajl-ruby-1.2.1'';
requiredGems = [ ];
sha256 = ''0zvvb7i1bl98k3zkdrnx9vasq0rp2cyy5n7p9804dqs4fz9xh9vf'';
};
};
}

View File

@ -29,13 +29,7 @@ rec {
longDescription = ''
Nix can create nix packages from gems.
To use it do the following:
1. Install rubygems and rubyLibs.nix.
2. Add $your_profile/${ruby.gemPath} to GEM_PATH.
3. export RUBYLIB=$your_profile/lib RUBYOPT=rubygems.
4. Run `gem nix --[no-]user-install gem1 gem2 ...` to generate Nix
expression from gem repository.
5. Install rubyLibs.gem1 etc.
To use it by installing gem-nix package.
'';
};

View File

@ -0,0 +1,23 @@
{ stdenv, agda, fetchgit }:
agda.mkDerivation (self: rec {
version = "8a06162a8f0f7df308458db91d720cf8f7345d69";
name = "Agda-Sheaves-${version}";
src = fetchgit {
url = "https://github.com/jonsterling/Agda-Sheaves.git";
rev = version;
sha256 = "39e0e4a1f05e359c099cf50a5ec7dd2db7b55f98dcc019f1e4667dca8b37f001";
};
everythingFile = "sheaves.agda";
topSourceDirectories = [ "../$sourceRoot" ];
sourceDirectories = [];
meta = {
homepage = "https://github.com/jonsterling/Agda-Sheaves";
description = "Sheaves in Agda";
license = stdenv.lib.licenses.cc-by-40;
platforms = stdenv.lib.platforms.unix;
maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
};
})

View File

@ -0,0 +1,23 @@
{ stdenv, agda, fetchgit, AgdaStdlib }:
agda.mkDerivation (self: rec {
version = "f1c173313f2a41d95a8dc6053f9365a24690e18d";
name = "bitvector-${version}";
src = fetchgit {
url = "https://github.com/copumpkin/bitvector.git";
rev = version;
sha256 = "c39f55b709366f2c627d1a3a68d4b013c415b0e0f68ca6b69e387d07e2ce6d9a";
};
buildDepends = [ AgdaStdlib ];
sourceDirectories = [ "Data" ];
meta = {
homepage = "https://github.com/copumpkin/bitvector";
description = "Sequences of bits and common operations on them";
license = stdenv.lib.licenses.bsd3;
platforms = stdenv.lib.platforms.unix;
maintainers = with stdenv.lib.maintainers; [ fuuzetsu ];
};
})

View File

@ -1,6 +1,5 @@
{ stdenv, fetchurl
, unzip
}:
, unzip }:
stdenv.mkDerivation rec {

View File

@ -1,9 +1,9 @@
rec {
version="1.6.3";
name="directfb-1.6.3";
hash="0w2yyx6l2wn8jj9y14ymknqyc88wwrl314p9204frck91znsr5ks";
url="http://directfb.org/downloads/Core/DirectFB-1.6/DirectFB-${version}.tar.gz";
advertisedUrl="http://directfb.org/downloads/Core/DirectFB-1.6/DirectFB-1.6.3.tar.gz";
version="1.7.6";
name="directfb-${version}";
hash="1qf94vgsbcwfa00x2aqd6795n6z43x4ghclmb4sa4bl4zfn2pws4";
url="http://directfb.org/downloads/Core/DirectFB-1.7/DirectFB-${version}.tar.gz";
advertisedUrl="http://directfb.org/downloads/Core/DirectFB-1.7/DirectFB-1.7.6.tar.gz";
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, pkgconfig }:
stdenv.mkDerivation rec {
name = "flite-1.4";
name = "flite-1.9.0";
src = fetchurl {
url = "http://www.speech.cs.cmu.edu/flite/packed/${name}/${name}-release.tar.bz2";
sha256 = "036dagsydi0qh71ayi6jshfi3ik2md1az3gpi42md9pc18b65ij5";
url = "http://www.festvox.org/bard/${name}-current.tar.bz2";
sha256 = "197cc2a1f045b1666a29a9b5f035b3d676db6db94a4439d99a03b65e551ae2e0";
};
buildInputs = [ pkgconfig ];
@ -16,8 +16,9 @@ stdenv.mkDerivation rec {
meta = {
description = "A small, fast run-time speech synthesis engine";
homepage = http://www.speech.cs.cmu.edu/flite/index.html;
homepage = http://www.festvox.org/flite/;
license = "free-non-copyleft";
platforms = stdenv.lib.platforms.linux;
};
}

View File

@ -0,0 +1,21 @@
{ stdenv, fetchurl, perl }:
stdenv.mkDerivation rec {
name = "gecode-${version}";
version = "4.3.0";
src = fetchurl {
url = "http://www.gecode.org/download/${name}.tar.gz";
sha256 = "18a1nd6sxqqh05hd9zwcgq9qhqrr6hi0nbzpwpay1flkv5gvg2d7";
};
buildInputs = [ perl ];
meta = with stdenv.lib; {
license = licenses.mit;
homepage = http://www.gecode.org;
description = "Toolkit for developing constraint-based systems";
platforms = platforms.all;
maintainers = [ maintainers.manveru ];
};
}

View File

@ -0,0 +1,35 @@
{ stdenv, fetchurl
, pkgconfig
, gtk3, glib, glibmm, gtkmm3, gtkspell3
}:
let
version = "3.0.3";
in
stdenv.mkDerivation rec {
name = "gtkspellmm-${version}";
src = fetchurl {
url = "http://downloads.sourceforge.net/project/gtkspell/gtkspellmm/" +
"${name}.tar.gz";
sha256 = "f9dcc0991621c08e7a972f33487afd6b37491468f0b654f50c741a7e6d810624";
};
propagatedBuildInputs = [
gtkspell3
];
buildInputs = [
pkgconfig
gtk3 glib glibmm gtkmm3
];
meta = with stdenv.lib; {
description = "C++ binding for the gtkspell library";
homepage = http://gtkspell.sourceforge.net/;
license = licenses.gpl2;
platforms = platforms.linux;
};
}

View File

@ -0,0 +1,15 @@
# This file was auto-generated by cabal2nix. Please do NOT edit manually!
{ cabal }:
cabal.mkDerivation (self: {
pname = "functor-infix";
version = "0.0.1";
sha256 = "1f8m4nxlr2il9j0ilgw91fhp6mmz5xqlhylavncqwvbcq82362dc";
meta = {
homepage = "https://github.com/fmap/functor-infix";
description = "Compositions of functors";
license = self.stdenv.lib.licenses.mit;
platforms = self.ghc.meta.platforms;
};
})

View File

@ -0,0 +1,6 @@
#! @shell@
COMMAND=$1
shift
HOOGLE_DOC_PATH=@out@/share/hoogle/doc exec @hoogle@/bin/hoogle \
$COMMAND -d @out@/share/hoogle $@

View File

@ -1,28 +0,0 @@
diff --git a/src/CmdLine/All.hs b/src/CmdLine/All.hs
index 94b1d48..f41f270 100644
--- a/src/CmdLine/All.hs
+++ b/src/CmdLine/All.hs
@@ -86,8 +86,10 @@ guessLocal = do
ghc <- findExecutable "ghc"
home <- getHomeDirectory
lib <- getLibDir
+ path <- lookup "HOOGLE_DOC_PATH" <$> getEnvironment
let xs = [takeDirectory (takeDirectory lib) </> "doc" {- Windows, installed with Cabal -} ] ++
[takeDirectory (takeDirectory ghc) </> "doc/html/libraries" | Just ghc <- [ghc] {- Windows, installed by GHC -} ] ++
+ maybeToList path ++
[home </> ".cabal/share/doc" {- Linux -} ]
filterM doesDirectoryExist xs
diff --git a/src/Hoogle/Language/Haskell.hs b/src/Hoogle/Language/Haskell.hs
index b037f11..f2ac047 100644
--- a/src/Hoogle/Language/Haskell.hs
+++ b/src/Hoogle/Language/Haskell.hs
@@ -112,7 +112,7 @@ setPriority pkg mod x = x{itemPriority = pri}
setModuleURL (Just pkg) _ x | itemLevel x == 1 = x{itemURL=if null $ itemURL x then f $ itemName x else itemURL x}
where f xs = if "http://hackage.haskell.org/package/" `isPrefixOf` itemURL pkg
- then "http://hackage.haskell.org/packages/archive/" ++ itemName pkg ++ "/latest/doc/html/" ++ file
+ then "http://hackage.haskell.org/package/" ++ itemName pkg ++ "/docs/" ++ file
else takeDirectory (itemURL pkg) ++ "/" ++ file
where file = reps '.' '-' xs ++ ".html"
setModuleURL _ _ x = x

View File

@ -9,12 +9,12 @@
# haskellPackages =
# let callPackage = pkgs.lib.callPackageWith haskellPackages;
# in pkgs.recurseIntoAttrs (pkgs.haskellPackages.override {
# extraPrefs = self: {
# extension = self: super: {
# hoogleLocal = pkgs.haskellPackages.hoogleLocal.override {
# packages = with pkgs.haskellPackages; [
# mmorph
# monadControl
# ]
# ];
# };
# };
# });
@ -23,43 +23,22 @@
# This will build mmorph and monadControl, and have the hoogle installation
# refer to their documentation via symlink so they are not garbage collected.
{ cabal, aeson, binary, blazeBuilder, Cabal, caseInsensitive
, cmdargs, conduit, deepseq, filepath, haskellSrcExts, httpTypes
, parsec, QuickCheck, random, resourcet, safe, shake, tagsoup, text
, time, transformers, uniplate, vector, vectorAlgorithms, wai, warp
, fetchurl
, parallel, perl, wget, rehoo, haskellPlatform
, packages ? haskellPlatform.propagatedUserEnvPkgs
{ stdenv, hoogle, rehoo
, haskellPlatform, ghc, packages ? [ haskellPlatform ghc.ghc ]
}:
cabal.mkDerivation (self: rec {
pname = "hoogle";
version = "4.2.32";
sha256 = "1rhr7xh4x9fgflcszbsl176r8jq6rm81bwzmbz73f3pa1zf1v0zc";
isLibrary = true;
isExecutable = true;
buildInputs = [self.ghc Cabal] ++ self.extraBuildInputs
++ [ parallel perl wget rehoo ] ++ packages;
buildDepends = [
aeson binary blazeBuilder Cabal caseInsensitive cmdargs conduit
deepseq filepath haskellSrcExts httpTypes parsec QuickCheck random
resourcet safe shake tagsoup text time transformers uniplate vector
vectorAlgorithms wai warp
];
testDepends = [ filepath ];
testTarget = "--test-option=--no-net";
let
inherit (stdenv.lib) optional;
wrapper = ./hoogle-local-wrapper.sh;
in
stdenv.mkDerivation {
name = "hoogle-local-0.1";
buildInputs = [hoogle rehoo];
# The tests will fail because of the added documentation.
doCheck = false;
patches = [ ./hoogle-local.diff
(fetchurl { url = "https://github.com/ndmitchell/hoogle/commit/5fc294f2b5412fda107c7700f4d833b52f26184c.diff";
sha256 = "1fn52g90p2jsy87gf5rqrcg49s8hfwway5hi4v9i2rpg5mzxaq3i"; })
];
phases = [ "installPhase" ];
docPackages = packages;
postInstall = ''
installPhase = ''
if [ -z "$docPackages" ]; then
echo "ERROR: The packages attribute has not been set"
exit 1
@ -71,27 +50,38 @@ cabal.mkDerivation (self: rec {
cd $out/share/hoogle
function import_dbs() {
find $1 -name '*.txt' \
| parallel -j$NIX_BUILD_CORES 'cp -p {} .; perl -i -pe "print \"\@url file://{//}/index.html\n\" if /^\@version/;" {/}; $out/bin/hoogle convert {/}'
find $1 -name '*.txt' | while read f; do
newname=$(basename "$f" | tr '[:upper:]' '[:lower:]')
if [[ -f $f && ! -f ./$newname ]]; then
cp -p $f ./$newname
hoogle convert -d "$(dirname $f)" "./$newname"
fi
done
}
for i in $docPackages; do
import_dbs $i/share/doc
ln -sf $i/share/doc/*-ghc-*/* $out/share/hoogle/doc 2> /dev/null \
|| ln -sf $i/share/doc/* $out/share/hoogle/doc
findInputs $i docPackages propagated-native-build-inputs
findInputs $i docPackages propagated-build-inputs
done
import_dbs ${self.ghc}/share/doc/ghc*/html/libraries
ln -sf ${self.ghc}/share/doc/ghc*/html/libraries/* $out/share/hoogle/doc
for i in $docPackages; do
if [[ ! $i == $out ]]; then
for docdir in $i/share/doc/*-ghc-*/* $i/share/doc/*; do
if [[ -d $docdir ]]; then
import_dbs $docdir
ln -sf $docdir $out/share/hoogle/doc
fi
done
fi
done
unset http_proxy
unset ftp_proxy
import_dbs ${ghc}/share/doc/ghc*/html/libraries
ln -sf ${ghc}/share/doc/ghc*/html/libraries/* $out/share/hoogle/doc
chmod 644 *.hoo *.txt
$out/bin/hoogle data -d $PWD --redownload -l $(echo *.txt | sed 's/\.txt//g')
PATH=$out/bin:$PATH ${rehoo}/bin/rehoo -j4 -c64 .
rehoo -j4 -c64 .
rm -fr downloads *.txt *.dep
rm -fr downloads *.dep *.txt
mv default.hoo x || exit 0
rm -f *.hoo
mv x default.hoo || exit 1
@ -101,23 +91,17 @@ cabal.mkDerivation (self: rec {
exit 1
fi
mv $out/bin/hoogle $out/bin/.hoogle-wrapped
cat - > $out/bin/hoogle <<EOF
#! ${self.stdenv.shell}
COMMAND=\$1
shift
HOOGLE_DOC_PATH=$out/share/hoogle/doc exec $out/bin/.hoogle-wrapped \$COMMAND -d $out/share/hoogle "\$@"
EOF
mkdir -p $out/bin
substitute ${wrapper} $out/bin/hoogle \
--subst-var out --subst-var-by shell ${stdenv.shell} \
--subst-var-by hoogle ${hoogle}
chmod +x $out/bin/hoogle
'';
meta = {
homepage = "http://www.haskell.org/hoogle/";
description = "Haskell API Search";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
maintainers = [ self.stdenv.lib.maintainers.jwiegley ];
hydraPlatforms = self.stdenv.lib.platforms.none;
broken = true;
description = "A local Hoogle database";
platforms = ghc.meta.platforms;
hydraPlatforms = with stdenv.lib.platforms; none;
maintainers = with stdenv.lib.maintainers; [ ttuegel ];
};
})
}

View File

@ -0,0 +1,13 @@
{ cabal, transformers }:
cabal.mkDerivation (self: {
pname = "managed";
version = "1.0.0";
sha256 = "06nb71pd68m5l6a48sz5kkrdif74phbg3y6bn9ydd00y515b9gn5";
buildDepends = [ transformers ];
meta = {
description = "A monad for managed values";
license = self.stdenv.lib.licenses.bsd3;
platforms = self.ghc.meta.platforms;
};
})

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation (rec {
sha256 = "0pz58vr12qihq2f0bypjxsb6cf6ajq5258fmfm8s6lvwm3b9xz6a";
};
# If architecture-dependant MO files aren't available, they're generated
# If architecture-dependent MO files aren't available, they're generated
# during build, so we need gettext for cross-builds.
crossAttrs.buildInputs = [ gettext ];

View File

@ -1,11 +1,11 @@
{stdenv, fetchurl, curl, libgcrypt}:
stdenv.mkDerivation rec {
name = "libmicrohttpd-0.9.35";
name = "libmicrohttpd-0.9.37";
src = fetchurl {
url = "mirror://gnu/libmicrohttpd/${name}.tar.gz";
sha256 = "1z0h6llx7pra78358ryi3bdh8p0ns0bn97n6bl0fj6cib9cz2pdw";
sha256 = "1p3wnhr43v6vqdgl86r76298wjfxz2ihj9zh9kpz8l7va30br357";
};
buildInputs = [ curl libgcrypt ];

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "liboauth-1.0.2";
name = "liboauth-1.0.3";
src = fetchurl {
url = "mirror://sourceforge/liboauth/${name}.tar.gz";
sha256 = "1qs58yzydw20dmzvx22i541w641kwd6ja80s9na1az32n1krh6zv";
sha256 = "07w1aq8y8wld43wmbk2q8134p3bfkp2vma78mmsfgw2jn1bh3xhd";
};
buildInputs = [ nss openssl ];

View File

@ -1,13 +1,11 @@
{ fetchzip, stdenv, ncurses }:
{ fetchurl, stdenv, ncurses }:
stdenv.mkDerivation (rec {
stdenv.mkDerivation rec {
name = "readline-6.3p08";
src = fetchzip {
#url = "mirror://gnu/readline/${name}.tar.gz";
url = "http://git.savannah.gnu.org/cgit/readline.git/snapshot/"
+ "readline-a73b98f779b388a5d0624e02e8bb187246e3e396.tar.gz";
sha256 = "19ji3wrv4fs79fd0nkacjy9q94pvy2cm66yb3aqysahg0cbrz5l1";
src = fetchurl {
url = "mirror://gnu/readline/readline-6.3.tar.gz";
sha256 = "0hzxr9jxqqx5sxsv9vmlxdnvlr9vi4ih1avjb869hbs6p5qn1fjn";
};
propagatedBuildInputs = [ncurses];
@ -17,7 +15,19 @@ stdenv.mkDerivation (rec {
patches =
[ ./link-against-ncurses.patch
./no-arch_only-6.3.patch
];
]
++
(let
patch = nr: sha256:
fetchurl {
url = "mirror://gnu/readline/readline-6.3-patches/readline63-${nr}";
inherit sha256;
};
in
import ./readline-6.3-patches.nix patch);
# Don't run the native `strip' when cross-compiling.
dontStrip = stdenv ? cross;
meta = with stdenv.lib; {
description = "Library for interactive line editing";
@ -46,10 +56,3 @@ stdenv.mkDerivation (rec {
platforms = platforms.unix;
};
}
//
# Don't run the native `strip' when cross-compiling.
(if (stdenv ? cross)
then { dontStrip = true; }
else { }))

View File

@ -0,0 +1,12 @@
# Automatically generated by `update-patch-set.sh'; do not edit.
patch: [
(patch "001" "0vqlj22mkbn3x42qx2iqir7capx462dhagbzdw6hwxgfxavbny8s")
(patch "002" "19g0l6vlfcqzwfwjj1slkmxzndjp4543hwrf26g8z216lp3h9qrr")
(patch "003" "0bx53k876w8vwf4h2s6brr1i46ym87gi71bh8zl89n0gn3cbshgc")
(patch "004" "1k2m8dg1awmjhmivdbx1c25866gfbpg0fy4845n8cw15zc3bjis5")
(patch "005" "0jr7c28bzn882as5i54l53bhi723s1nkvzmwlh3rj6ld4bwqhxw7")
(patch "006" "0mp5zgx50792gigkmjap3d0zpdv5qanii8djab7j6z69qsrpl8sw")
(patch "007" "1sjv9w0mglh395i6hlq3ck7wdxvi2wyddlyb2j0jwg7cmnibayad")
(patch "008" "11rpqhsxd132gc8455v51ma3a5zshznb0mh2p0zc5skcab7r7h1v")
]

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, pkgconfig, icu, clucene_core, curl}:
{ stdenv, fetchurl, pkgconfig, icu, clucene_core, curl }:
stdenv.mkDerivation rec {
@ -19,12 +19,12 @@ stdenv.mkDerivation rec {
configureFlags = "--without-conf --enable-tests=no CXXFLAGS=-Wno-unused-but-set-variable";
meta = {
meta = with stdenv.lib; {
description = "A software framework that allows research manipulation of Biblical texts";
homepage = http://www.crosswire.org/sword/;
platforms = stdenv.lib.platforms.linux;
license = stdenv.lib.licenses.gpl2;
maintainers = [ stdenv.lib.maintainers.piotr stdenv.lib.maintainers.AndersonTorres ];
platforms = platforms.linux;
license = licenses.gpl2;
maintainers = [ maintainers.piotr maintainers.AndersonTorres ];
};
}

View File

@ -1,5 +1,10 @@
{ stdenv, fetchurl, libvdpau, mesa, libva, pkgconfig }:
let
libvdpau08patch = (fetchurl { url = "http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/x11-libs/libva-vdpau-driver/files/libva-vdpau-driver-0.7.4-libvdpau-0.8.patch?revision=1.1";
name = "libva-vdpau-driver-0.7.4-libvdpau-0.8.patch";
sha256 = "1n2cys59wyv8ylx9i5m3s6856mgx24hzcp45w1ahdfbzdv9wrfbl";
});
in
stdenv.mkDerivation rec {
name = "libva-vdpau-driver-0.7.4";
@ -17,6 +22,7 @@ stdenv.mkDerivation rec {
buildInputs = [ libvdpau mesa libva pkgconfig ];
preConfigure = ''
patch -p0 < ${libvdpau08patch} # use -p0 instead of -p1
sed -i -e "s,LIBVA_DRIVERS_PATH=.*,LIBVA_DRIVERS_PATH=$out/lib/dri," configure
'';

View File

@ -1,13 +1,12 @@
{ stdenv, fetchgit, cmake, zlib, libpng, bzip2, libusb, openssl }:
{ stdenv, fetchgit, cmake, zlib, libpng, bzip2, libusb1, openssl }:
stdenv.mkDerivation {
name = "xpwn-0.5.8git";
src = fetchgit {
url = "git://github.com/dborca/xpwn.git";
rev = "4534da88d4e8a32cdc9da9b5326e2cc482c95ef0";
sha256 =
"1h1ak40fg5bym0hifpii9q2hqdp2m387cwfzb4bl6qq36xpkd6wv";
url = "git://github.com/dborca/xpwn.git";
rev = "4534da88d4e8a32cdc9da9b5326e2cc482c95ef0";
sha256 = "1h1ak40fg5bym0hifpii9q2hqdp2m387cwfzb4bl6qq36xpkd6wv";
};
preConfigure = ''
@ -19,11 +18,16 @@ stdenv.mkDerivation {
sed -i -e '/install/d' CMakeLists.txt
'';
buildInputs = [ cmake zlib libpng bzip2 libusb openssl ];
buildInputs = [ cmake zlib libpng bzip2 libusb1 openssl ];
meta = {
homepage = "http://planetbeing.lighthouseapp.com/projects/15246-xpwn";
cmakeFlags = [
"-DCMAKE_OSX_DEPLOYMENT_TARGET="
];
meta = with stdenv.lib; {
homepage = "http://planetbeing.lighthouseapp.com/projects/15246-xpwn";
description = "Custom NOR firmware loader/IPSW generator for the iPhone";
license = stdenv.lib.licenses.gpl3Plus;
license = licenses.gpl3Plus;
platforms = with platforms; linux ++ darwin;
};
}

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, python, pkgconfig, dbus, dbus_glib, dbus_tools }:
{ stdenv, fetchurl, python, pkgconfig, dbus, dbus_glib, dbus_tools, isPyPy }:
stdenv.mkDerivation rec {
if isPyPy then throw "dbus-python not supported for interpreter ${python.executable}" else stdenv.mkDerivation rec {
name = "dbus-python-1.2.0";
src = fetchurl {

View File

@ -1,6 +1,6 @@
{ stdenv, fetchurl, fetchpatch, python, pkgconfig, cairo, x11 }:
{ stdenv, fetchurl, fetchpatch, python, pkgconfig, cairo, x11, isPyPy }:
stdenv.mkDerivation rec {
if isPyPy then throw "pycairo not supported for interpreter ${python.executable}" else stdenv.mkDerivation rec {
version = "1.10.0";
name = "pycairo-${version}";
src = if python.is_py3k or false

View File

@ -1,13 +1,11 @@
{ stdenv, fetchurl, pythonPackages }:
pythonPackages.buildPythonPackage rec {
name = "rbtools-0.4.1";
name = "rbtools-0.6.1";
namePrefix = "";
src = fetchurl {
url = "http://downloads.reviewboard.org/releases/RBTools/0.4/RBTools-0.4.1.tar.gz";
sha256 = "1v0r7rfzrasj56s53mib51wl056g7ykh2y1c6dwv12r6hzqsycgv";
url = "http://downloads.reviewboard.org/releases/RBTools/0.6/RBTools-0.6.1.tar.gz";
sha256 = "0dbpd08b0k00fszi3r7wlgn2989aypgd60jq6wc99lq4yxsmhp28";
};
propagatedBuildInputs = [ pythonPackages.setuptools ];
}

View File

@ -1,10 +1,10 @@
{ stdenv, fetchurl, pkgconfig, wxGTK, pythonPackages }:
{ stdenv, fetchurl, pkgconfig, wxGTK, pythonPackages, python, isPyPy }:
assert wxGTK.unicode;
let version = "2.8.12.1"; in
stdenv.mkDerivation {
if isPyPy then throw "wxPython-${version} not supported for interpreter ${python.executable}" else stdenv.mkDerivation {
name = "wxPython-${version}";
builder = ./builder.sh;

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, pkgconfig, wxGTK, pythonPackages, openglSupport ? true }:
{ stdenv, fetchurl, pkgconfig, wxGTK, pythonPackages, openglSupport ? true, python, isPyPy }:
assert wxGTK.unicode;
@ -6,7 +6,7 @@ with stdenv.lib;
let version = "3.0.0.0"; in
stdenv.mkDerivation {
if isPyPy then throw "wxPython-${version} not supported for interpreter ${python.executable}" else stdenv.mkDerivation {
name = "wxPython-${version}";
builder = ./builder3.0.sh;

View File

@ -1,12 +1,12 @@
{stdenv, fetchurl, unzip}:
stdenv.mkDerivation {
name = "pmd-4.2.5";
name = "pmd-4.2.6";
buildInputs = [unzip] ;
src = fetchurl {
url = mirror://sourceforge/pmd/pmd-bin-4.2.5.zip ;
sha256 = "07cb18mv7rplksy3iw3rxyjaav4m7kcjqfhzv20ki73hfkqxa85c";
url = mirror://sourceforge/pmd/pmd-bin-4.2.6.zip ;
sha256 = "0gg1px2jmqn09f5vjzgy9gck37qjm9p2d7gf9grsmrr2xncbipp8";
};
installPhase = ''

View File

@ -14,8 +14,7 @@ stdenv.mkDerivation rec {
installPhase = ''
mkdir -p $out/bin
cat > $out/bin/sbt << EOF
#!/bin/sh
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=384M"
#! ${stdenv.shell}
${jre}/bin/java \$SBT_OPTS -jar ${src} "\$@"
EOF
chmod +x $out/bin/sbt

View File

@ -1,19 +1,19 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "jenkins";
version = "1.550";
name = "jenkins-${version}";
version = "1.579";
src = fetchurl {
url = "http://mirrors.jenkins-ci.org/war/${version}/jenkins.war";
sha256 = "1ziimbfs9kylga0xmxlfsfcc7qsirs5bnx00pa99m2l5sz2ki793";
sha256 = "1l2a8h3js42gkqn8kiysbgrxksqmhmmfp9l4kbrmw609q2wn5119";
};
meta = {
description = "An extendable open source continuous integration server.";
meta = with stdenv.lib; {
description = "An extendable open source continuous integration server";
homepage = http://jenkins-ci.org;
license = stdenv.lib.licenses.mit;
platforms = stdenv.lib.platforms.all;
maintainers = [ stdenv.lib.maintainers.coconnor ];
license = licenses.mit;
platforms = platforms.all;
maintainers = [ maintainers.coconnor ];
};
buildCommand = "ln -s $src $out";

View File

@ -13,7 +13,7 @@ stdenv.mkDerivation {
prefixKey = "--prefix ";
meta = {
description = "An editor-independant tool to ease the developpement of programs in OCaml";
description = "An editor-independent tool to ease the development of programs in OCaml";
homepage = "http://the-lambda-church.github.io/merlin/";
license = stdenv.lib.licenses.mit;
};

View File

@ -3,7 +3,7 @@
assert stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux";
let version = "1.6.4";
let version = "1.6.5";
in
stdenv.mkDerivation rec {
name = "vagrant-${version}";
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
if stdenv.system == "x86_64-linux" then
fetchurl {
url = "https://dl.bintray.com/mitchellh/vagrant/vagrant_${version}_x86_64.deb";
sha256 = "1f171d2yjs4p2kzlwcknx1k29qnjvaxizjrxp84ya3sfxvfckm92";
sha256 = "12m2mnpnfzqv2s4j58cnzg4h4i5nkk5nb4irsvmm3i9a0dnsziz2";
}
else
fetchurl {

View File

@ -1,6 +1,6 @@
{ stdenv, runCommand, nodejs, neededNatives}:
args @ { name, src, deps ? [], peerDependencies ? [], flags ? [], preShellHook ? "", postShellHook ? "", ... }:
args @ { name, src, deps ? {}, peerDependencies ? [], flags ? [], preShellHook ? "", postShellHook ? "", resolvedDeps ? {}, bin ? null, ... }:
with stdenv.lib;
@ -12,88 +12,135 @@ let
mv *node* $out
'';
# Convert deps to attribute set
attrDeps = if isAttrs deps then deps else
(listToAttrs (map (dep: nameValuePair dep.name dep) deps));
# All required node modules, without already resolved dependencies
requiredDeps = removeAttrs attrDeps (attrNames resolvedDeps);
# Recursive dependencies that we want to avoid with shim creation
recursiveDeps = removeAttrs attrDeps (attrNames requiredDeps);
peerDeps = listToAttrs (concatMap (dep: map (name: {
inherit name;
value = dep;
}) (filter (nm: !(elem nm (args.passthru.names or []))) dep.names)) (peerDependencies));
in
stdenv.mkDerivation ({
unpackPhase = "true";
inherit src;
self = let
# Pass resolved dependencies to dependencies of this package
deps = map (
dep: dep.override {
resolvedDeps = resolvedDeps // { "${name}" = self; };
}
) (attrValues requiredDeps);
configurePhase = ''
runHook preConfigure
mkdir node_modules
${concatStrings (concatMap (dep: map (name: ''
ln -sv ${dep}/lib/node_modules/${name} node_modules/
'') dep.names) deps)}
${concatStrings (mapAttrsToList (name: dep: ''
ln -sv ${dep}/lib/node_modules/${name} node_modules/
'') peerDeps)}
export HOME=$(pwd)
runHook postConfigure
'';
in stdenv.mkDerivation ({
unpackPhase = "true";
buildPhase = ''
runHook preBuild
npm --registry http://www.example.com --nodedir=${sources} install $src ${npmFlags}
runHook postBuild
'';
inherit src;
configurePhase = ''
runHook preConfigure
mkdir node_modules
installPhase = ''
runHook preInstall
mkdir -p $out/lib/node_modules
${concatStrings (map (name: ''
mv node_modules/${name} $out/lib/node_modules
rm -fR $out/lib/node_modules/${name}/node_modules
ln -sv $out/.dependent-node-modules $out/lib/node_modules/${name}/node_modules
if [ -e "$out/lib/node_modules/${name}/man" ]; then
mkdir -p $out/share
for dir in "$out/lib/node_modules/${name}/man/"*; do
mkdir -p $out/share/man/$(basename "$dir")
for page in "$dir"/*; do
ln -sv $page $out/share/man/$(basename "$dir")
# Symlink dependencies for node modules
${concatStrings (concatMap (dep: map (name: ''
ln -sv ${dep}/lib/node_modules/${name} node_modules/
'') dep.names) deps)}
# Symlink peer dependencies
${concatStrings (mapAttrsToList (name: dep: ''
ln -sv ${dep}/lib/node_modules/${name} node_modules/
'') peerDeps)}
# Create shims for recursive dependenceies
${concatStrings (concatMap (dep: map (name: ''
mkdir -p node_modules/${name}
cat > node_modules/${name}/package.json <<EOF
{
"name": "${name}",
"version": "${(builtins.parseDrvName dep.name).version}"
}
EOF
'') dep.names) (attrValues recursiveDeps))}
export HOME=$(pwd)
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
npm --registry http://www.example.com --nodedir=${sources} install $src ${npmFlags}
runHook postBuild
'';
installPhase = ''
runHook preInstall
# Remove shims
${concatStrings (concatMap (dep: map (name: ''
rm node_modules/${name}/package.json
rmdir node_modules/${name}
'') dep.names) (attrValues recursiveDeps))}
mkdir -p $out/lib/node_modules
${concatStrings (map (name: ''
mv node_modules/${name} $out/lib/node_modules
rm -fR $out/lib/node_modules/${name}/node_modules
ln -sv $out/.dependent-node-modules $out/lib/node_modules/${name}/node_modules
if [ -e "$out/lib/node_modules/${name}/man" ]; then
mkdir -p $out/share
for dir in "$out/lib/node_modules/${name}/man/"*; do
mkdir -p $out/share/man/$(basename "$dir")
for page in "$dir"/*; do
ln -sv $page $out/share/man/$(basename "$dir")
done
done
done
fi
'') args.passthru.names)}
${concatStrings (mapAttrsToList (name: dep: ''
mv node_modules/${name} $out/lib/node_modules
'') peerDeps)}
mv node_modules/.bin $out/lib/node_modules 2>/dev/null || true
mv node_modules $out/.dependent-node-modules
if [ -d "$out/lib/node_modules/.bin" ]; then
ln -sv $out/lib/node_modules/.bin $out/bin
node=`type -p node`
coffee=`type -p coffee || true`
find -L $out/lib/node_modules/.bin/* -type f -print0 | \
xargs -0 sed --follow-symlinks -i \
-e 's@#!/usr/bin/env node@#!'"$node"'@' \
-e 's@#!/usr/bin/env coffee@#!'"$coffee"'@' \
-e 's@#!/.*/node@#!'"$node"'@' \
-e 's@#!/.*/coffee@#!'"$coffee"'@'
fi
'') args.passthru.names)}
${concatStrings (mapAttrsToList (name: dep: ''
mv node_modules/${name} $out/lib/node_modules
'') peerDeps)}
mv node_modules/.bin $out/lib/node_modules 2>/dev/null || true
mv node_modules $out/.dependent-node-modules
if [ -d "$out/lib/node_modules/.bin" ]; then
ln -sv $out/lib/node_modules/.bin $out/bin
node=`type -p node`
coffee=`type -p coffee || true`
find -L $out/lib/node_modules/.bin/* -type f -print0 | \
xargs -0 sed --follow-symlinks -i \
-e 's@#!/usr/bin/env node@#!'"$node"'@' \
-e 's@#!/usr/bin/env coffee@#!'"$coffee"'@' \
-e 's@#!/.*/node@#!'"$node"'@' \
-e 's@#!/.*/coffee@#!'"$coffee"'@'
fi
runHook postInstall
'';
runHook postInstall
'';
preFixup = concatStringsSep "\n" (map (src: ''
find $out -type f -print0 | xargs -0 sed -i 's|${src}|${src.name}|g'
'') src);
preFixup = concatStringsSep "\n" (map (src: ''
find $out -type f -print0 | xargs -0 sed -i 's|${src}|${src.name}|g'
'') src);
shellHook = ''
${preShellHook}
export PATH=${nodejs}/bin:$(pwd)/node_modules/.bin:$PATH
mkdir -p node_modules
${concatStrings (concatMap (dep: map (name: ''
ln -sfv ${dep}/lib/node_modules/${name} node_modules/
'') dep.names) deps)}
${postShellHook}
'';
} // args // {
# Run the node setup hook when this package is a build input
propagatedNativeBuildInputs = (args.propagatedNativeBuildInputs or []) ++ [ nodejs ];
shellHook = ''
${preShellHook}
export PATH=${nodejs}/bin:$(pwd)/node_modules/.bin:$PATH
mkdir -p node_modules
${concatStrings (concatMap (dep: map (name: ''
ln -sfv ${dep}/lib/node_modules/${name} node_modules/
'') dep.names) deps)}
${postShellHook}
'';
} // (filterAttrs (n: v: n != "deps" && n != "resolvedDeps") args) // {
name = "${
if bin == true then "bin-" else if bin == false then "node-" else ""
}${name}";
# Make buildNodePackage useful with --run-env
nativeBuildInputs = (args.nativeBuildInputs or []) ++ deps ++ peerDependencies ++ neededNatives;
} )
# Run the node setup hook when this package is a build input
propagatedNativeBuildInputs = (args.propagatedNativeBuildInputs or []) ++ [ nodejs ];
# Make buildNodePackage useful with --run-env
nativeBuildInputs = (args.nativeBuildInputs or []) ++ deps ++ peerDependencies ++ neededNatives;
});
in self

View File

@ -0,0 +1,23 @@
{ stdenv, autoconf, automake, pkgconfig, SDL, SDL_mixer, SDL_net, fetchurl }:
stdenv.mkDerivation rec {
name = "chocolate-doom-2.0.0";
src = fetchurl {
url = https://github.com/chocolate-doom/chocolate-doom/archive/chocolate-doom-2.0.0.tar.gz;
sha256 = "1n9lkx97h987bq8z586jgissdhs07xyfr0xfdk7m2wpw4yhw10k1";
};
buildInputs = [ autoconf autoconf automake pkgconfig SDL SDL_mixer SDL_net ];
patchPhase = ''
sed -e 's#/games#/bin#g' -i src{,/setup}/Makefile.am
./autogen.sh --prefix=$out
'';
enableParallelBuilding = true;
meta = {
homepage = http://chocolate-doom.org/;
description = "A Doom source port that accurately reproduces the experience of Doom as it was played in the 1990s";
license = stdenv.lib.licenses.gpl2Plus;
maintainers = with stdenv.lib.maintainers; [ MP2E ];
};
}

Some files were not shown because too many files have changed in this diff Show More