Merge recent master into staging
Hydra nixpkgs: ?compare=1151601
This commit is contained in:
parent
6a63d1e1e1
commit
d957b4bd78
|
@ -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:
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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>";
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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>
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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";
|
||||
|
|
63
nixos/modules/services/computing/torque/mom.nix
Normal file
63
nixos/modules/services/computing/torque/mom.nix
Normal 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";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
}
|
96
nixos/modules/services/computing/torque/server.nix
Normal file
96
nixos/modules/services/computing/torque/server.nix
Normal 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";
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
}
|
|
@ -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 = ''
|
||||
|
|
|
@ -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.
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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}
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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 =
|
||||
|
|
|
@ -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;
|
||||
}
|
||||
|
||||
|
|
|
@ -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");
|
||||
'';
|
||||
|
|
33
pkgs/applications/audio/musescore/default.nix
Normal file
33
pkgs/applications/audio/musescore/default.nix
Normal 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;
|
||||
};
|
||||
}
|
|
@ -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 \
|
||||
|
|
|
@ -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 ];
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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 ];
|
||||
|
|
|
@ -1,8 +1,7 @@
|
|||
{ stdenv, fetchurl, pkgconfig
|
||||
, autoreconfHook, gettext, expat
|
||||
, confuse, vte, gtk
|
||||
, makeWrapper
|
||||
}:
|
||||
, makeWrapper }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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; {
|
||||
|
|
34
pkgs/applications/networking/linssid/default.nix
Normal file
34
pkgs/applications/networking/linssid/default.nix
Normal 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 ];
|
||||
};
|
||||
}
|
|
@ -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";
|
||||
|
|
|
@ -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 ];
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
59
pkgs/applications/version-management/smartgithg/default.nix
Normal file
59
pkgs/applications/version-management/smartgithg/default.nix
Normal 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;
|
||||
};
|
||||
}
|
|
@ -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;
|
||||
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{ stdenv, fetchurl
|
||||
, localBios ? true, nasm ? null
|
||||
, sdlSupport ? true, SDL ? null
|
||||
}:
|
||||
, sdlSupport ? true, SDL ? null }:
|
||||
|
||||
assert sdlSupport -> (SDL != null);
|
||||
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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!
|
||||
|
|
|
@ -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";
|
||||
};
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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@
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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}
|
||||
|
|
|
@ -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 ---------------------------------------------
|
||||
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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";
|
||||
}
|
||||
|
|
36
pkgs/desktops/kde-4.12/files/kdelibs-cve-2014-5033.patch
Normal file
36
pkgs/desktops/kde-4.12/files/kdelibs-cve-2014-5033.patch
Normal 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;
|
||||
|
|
@ -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 = [
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
})
|
||||
|
|
|
@ -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 ];
|
||||
};
|
||||
})
|
||||
|
|
|
@ -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 ] ;
|
||||
|
|
|
@ -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 ];
|
||||
|
|
32
pkgs/development/interpreters/jimtcl/default.nix
Normal file
32
pkgs/development/interpreters/jimtcl/default.nix
Normal 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 ];
|
||||
};
|
||||
}
|
|
@ -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
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, lua5, lua5_sockets, openssl }:
|
||||
{ stdenv, fetchurl, lua5, openssl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.5";
|
||||
|
|
|
@ -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}," \
|
||||
|
|
|
@ -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 = {
|
||||
|
|
|
@ -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 12–25× 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* faster—around 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'';
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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.
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
23
pkgs/development/libraries/agda/AgdaSheaves/default.nix
Normal file
23
pkgs/development/libraries/agda/AgdaSheaves/default.nix
Normal 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 ];
|
||||
};
|
||||
})
|
23
pkgs/development/libraries/agda/bitvector/default.nix
Normal file
23
pkgs/development/libraries/agda/bitvector/default.nix
Normal 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 ];
|
||||
};
|
||||
})
|
|
@ -1,6 +1,5 @@
|
|||
{ stdenv, fetchurl
|
||||
, unzip
|
||||
}:
|
||||
, unzip }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
|
|
|
@ -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";
|
||||
|
||||
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
||||
|
|
21
pkgs/development/libraries/gecode/default.nix
Normal file
21
pkgs/development/libraries/gecode/default.nix
Normal 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 ];
|
||||
};
|
||||
}
|
35
pkgs/development/libraries/gtkspellmm/default.nix
Normal file
35
pkgs/development/libraries/gtkspellmm/default.nix
Normal 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;
|
||||
};
|
||||
}
|
15
pkgs/development/libraries/haskell/functor-infix/default.nix
Normal file
15
pkgs/development/libraries/haskell/functor-infix/default.nix
Normal 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;
|
||||
};
|
||||
})
|
|
@ -0,0 +1,6 @@
|
|||
#! @shell@
|
||||
|
||||
COMMAND=$1
|
||||
shift
|
||||
HOOGLE_DOC_PATH=@out@/share/hoogle/doc exec @hoogle@/bin/hoogle \
|
||||
$COMMAND -d @out@/share/hoogle $@
|
|
@ -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
|
|
@ -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 ];
|
||||
};
|
||||
})
|
||||
}
|
||||
|
|
13
pkgs/development/libraries/haskell/managed/default.nix
Normal file
13
pkgs/development/libraries/haskell/managed/default.nix
Normal 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;
|
||||
};
|
||||
})
|
|
@ -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 ];
|
||||
|
||||
|
|
|
@ -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 ];
|
||||
|
|
|
@ -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 ];
|
||||
|
|
|
@ -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 { }))
|
12
pkgs/development/libraries/readline/readline-6.3-patches.nix
Normal file
12
pkgs/development/libraries/readline/readline-6.3-patches.nix
Normal 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")
|
||||
]
|
|
@ -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 ];
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -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
|
||||
'';
|
||||
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 ];
|
||||
}
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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 = ''
|
||||
|
|
|
@ -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
|
|
@ -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";
|
||||
|
|
|
@ -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;
|
||||
};
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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
|
||||
|
|
23
pkgs/games/chocolate-doom/default.nix
Normal file
23
pkgs/games/chocolate-doom/default.nix
Normal 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
Loading…
Reference in a new issue