forked from mirrors/nixpkgs
Merge recent master into x-updates
Hydra eval: 1131611
This commit is contained in:
commit
dfd80a1b7e
9
.gitignore
vendored
9
.gitignore
vendored
|
@ -3,8 +3,9 @@
|
|||
.*.swp
|
||||
.*.swo
|
||||
result
|
||||
doc/NEWS.html
|
||||
doc/NEWS.txt
|
||||
doc/manual.html
|
||||
doc/manual.pdf
|
||||
result-*
|
||||
/doc/NEWS.html
|
||||
/doc/NEWS.txt
|
||||
/doc/manual.html
|
||||
/doc/manual.pdf
|
||||
.version-suffix
|
||||
|
|
|
@ -194,7 +194,7 @@ rec {
|
|||
|
||||
is transformed into
|
||||
|
||||
[ { boot = set1; } { boot = mkIf cond set2; services mkIf cond set3; } ].
|
||||
[ { boot = set1; } { boot = mkIf cond set2; services = mkIf cond set3; } ].
|
||||
|
||||
This transform is the critical step that allows mkIf conditions
|
||||
to refer to the full configuration without creating an infinite
|
||||
|
|
|
@ -32,12 +32,12 @@ in
|
|||
|
||||
kdc = mkOption {
|
||||
default = "kerberos.mit.edu";
|
||||
description = "Kerberos Domain Controller";
|
||||
description = "Kerberos Domain Controller.";
|
||||
};
|
||||
|
||||
kerberosAdminServer = mkOption {
|
||||
default = "kerberos.mit.edu";
|
||||
description = "Kerberos Admin Server";
|
||||
description = "Kerberos Admin Server.";
|
||||
};
|
||||
|
||||
};
|
||||
|
|
|
@ -134,6 +134,7 @@
|
|||
teamspeak = 124;
|
||||
influxdb = 125;
|
||||
nsd = 126;
|
||||
gitolite = 127;
|
||||
|
||||
# When adding a uid, make sure it doesn't match an existing gid. And don't use uids above 399!
|
||||
|
||||
|
|
|
@ -101,7 +101,7 @@
|
|||
./services/databases/virtuoso.nix
|
||||
./services/databases/monetdb.nix
|
||||
./services/databases/influxdb.nix
|
||||
./services/desktops/accountservice.nix
|
||||
./services/desktops/accountsservice.nix
|
||||
./services/desktops/geoclue2.nix
|
||||
./services/desktops/gnome3/at-spi2-core.nix
|
||||
./services/desktops/gnome3/evolution-data-server.nix
|
||||
|
@ -147,6 +147,7 @@
|
|||
./services/misc/felix.nix
|
||||
./services/misc/folding-at-home.nix
|
||||
./services/misc/gpsd.nix
|
||||
./services/misc/gitolite.nix
|
||||
./services/misc/nix-daemon.nix
|
||||
./services/misc/nix-gc.nix
|
||||
./services/misc/nix-ssh-serve.nix
|
||||
|
@ -160,7 +161,7 @@
|
|||
./services/monitoring/graphite.nix
|
||||
./services/monitoring/monit.nix
|
||||
./services/monitoring/munin.nix
|
||||
./services/monitoring/nagios/default.nix
|
||||
./services/monitoring/nagios.nix
|
||||
./services/monitoring/smartd.nix
|
||||
./services/monitoring/statsd.nix
|
||||
./services/monitoring/systemhealth.nix
|
||||
|
|
|
@ -22,7 +22,7 @@ in
|
|||
interval = 5;
|
||||
};
|
||||
description = ''
|
||||
Parameters to be written to <filename>/etc/atoprc</filename>
|
||||
Parameters to be written to <filename>/etc/atoprc</filename>.
|
||||
'';
|
||||
};
|
||||
|
||||
|
|
|
@ -19,8 +19,8 @@ in
|
|||
environment.variables =
|
||||
{ LOCATE_PATH = "/var/cache/locatedb";
|
||||
NIXPKGS_CONFIG = "/etc/nix/nixpkgs-config.nix";
|
||||
PAGER = "less -R";
|
||||
EDITOR = "nano";
|
||||
PAGER = mkDefault "less -R";
|
||||
EDITOR = mkDefault "nano";
|
||||
};
|
||||
|
||||
environment.sessionVariables =
|
||||
|
|
|
@ -6,12 +6,10 @@ let
|
|||
cfg = config.security.grsecurity;
|
||||
|
||||
customGrsecPkg =
|
||||
(import ../../../pkgs/build-support/grsecurity
|
||||
{
|
||||
inherit lib pkgs;
|
||||
grsecOptions = cfg;
|
||||
}
|
||||
).grsecPackage;
|
||||
(import ../../../pkgs/build-support/grsecurity {
|
||||
grsecOptions = cfg;
|
||||
inherit pkgs lib;
|
||||
}).grsecPackage;
|
||||
in
|
||||
{
|
||||
options = {
|
||||
|
@ -36,14 +34,6 @@ in
|
|||
'';
|
||||
};
|
||||
|
||||
vserver = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable the stable grsecurity/vserver patches, based on Linux 3.2.
|
||||
'';
|
||||
};
|
||||
|
||||
testing = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
|
@ -246,9 +236,6 @@ in
|
|||
both.
|
||||
'';
|
||||
}
|
||||
{ assertion = (cfg.testing -> !cfg.vserver);
|
||||
message = "The vserver patches are only supported in the stable kernel.";
|
||||
}
|
||||
{ assertion = (cfg.config.restrictProc -> !cfg.config.restrictProcWithGroup) ||
|
||||
(cfg.config.restrictProcWithGroup -> !cfg.config.restrictProc);
|
||||
message = "You cannot enable both restrictProc and restrictProcWithGroup";
|
||||
|
|
|
@ -50,7 +50,7 @@ in
|
|||
|
||||
user = mkOption {
|
||||
default = "redis";
|
||||
description = "User account under which Redis runs";
|
||||
description = "User account under which Redis runs.";
|
||||
};
|
||||
|
||||
pidFile = mkOption {
|
||||
|
@ -60,26 +60,26 @@ in
|
|||
|
||||
port = mkOption {
|
||||
default = 6379;
|
||||
description = "The port for Redis to listen to";
|
||||
description = "The port for Redis to listen to.";
|
||||
type = with types; int;
|
||||
};
|
||||
|
||||
bind = mkOption {
|
||||
default = null; # All interfaces
|
||||
description = "The IP interface to bind to";
|
||||
description = "The IP interface to bind to.";
|
||||
example = "127.0.0.1";
|
||||
};
|
||||
|
||||
unixSocket = mkOption {
|
||||
default = null;
|
||||
description = "The path to the socket to bind to";
|
||||
description = "The path to the socket to bind to.";
|
||||
example = "/var/run/redis.sock";
|
||||
};
|
||||
|
||||
logLevel = mkOption {
|
||||
default = "notice"; # debug, verbose, notice, warning
|
||||
example = "debug";
|
||||
description = "Specify the server verbosity level, options: debug, verbose, notice, warning";
|
||||
description = "Specify the server verbosity level, options: debug, verbose, notice, warning.";
|
||||
type = with types; string;
|
||||
};
|
||||
|
||||
|
@ -110,19 +110,19 @@ in
|
|||
|
||||
dbFilename = mkOption {
|
||||
default = "dump.rdb";
|
||||
description = "The filename where to dump the DB";
|
||||
description = "The filename where to dump the DB.";
|
||||
type = with types; string;
|
||||
};
|
||||
|
||||
dbpath = mkOption {
|
||||
default = "/var/lib/redis";
|
||||
description = "The DB will be written inside this directory, with the filename specified using the 'dbFilename' configuration";
|
||||
description = "The DB will be written inside this directory, with the filename specified using the 'dbFilename' configuration.";
|
||||
type = with types; string;
|
||||
};
|
||||
|
||||
slaveOf = mkOption {
|
||||
default = null; # { ip, port }
|
||||
description = "An attribute set with two attributes: ip and port to which this redis instance acts as a slave";
|
||||
description = "An attribute set with two attributes: ip and port to which this redis instance acts as a slave.";
|
||||
example = { ip = "192.168.1.100"; port = 6379; };
|
||||
};
|
||||
|
||||
|
@ -154,26 +154,26 @@ in
|
|||
|
||||
appendFsync = mkOption {
|
||||
default = "everysec"; # no, always, everysec
|
||||
description = "How often to fsync the append-only log, options: no, always, everysec";
|
||||
description = "How often to fsync the append-only log, options: no, always, everysec.";
|
||||
type = with types; string;
|
||||
};
|
||||
|
||||
slowLogLogSlowerThan = mkOption {
|
||||
default = 10000;
|
||||
description = "Log queries whose execution take longer than X in milliseconds";
|
||||
description = "Log queries whose execution take longer than X in milliseconds.";
|
||||
example = 1000;
|
||||
type = with types; int;
|
||||
};
|
||||
|
||||
slowLogMaxLen = mkOption {
|
||||
default = 128;
|
||||
description = "Maximum number of items to keep in slow log";
|
||||
description = "Maximum number of items to keep in slow log.";
|
||||
type = with types; int;
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
default = "";
|
||||
description = "Extra configuration options for redis.conf";
|
||||
description = "Extra configuration options for redis.conf.";
|
||||
type = with types; string;
|
||||
};
|
||||
};
|
||||
|
|
|
@ -30,11 +30,11 @@ with lib;
|
|||
|
||||
config = mkIf config.services.accounts-daemon.enable {
|
||||
|
||||
environment.systemPackages = [ pkgs.accountservice ];
|
||||
environment.systemPackages = [ pkgs.accountsservice ];
|
||||
|
||||
services.dbus.packages = [ pkgs.accountservice ];
|
||||
services.dbus.packages = [ pkgs.accountsservice ];
|
||||
|
||||
systemd.packages = [ pkgs.accountservice ];
|
||||
systemd.packages = [ pkgs.accountsservice ];
|
||||
};
|
||||
|
||||
}
|
|
@ -34,6 +34,12 @@ in
|
|||
description = "Packages providing extra SANE backends to enable.";
|
||||
};
|
||||
|
||||
hardware.sane.configDir = mkOption {
|
||||
type = types.string;
|
||||
default = "${saneConfig}/etc/sane.d";
|
||||
description = "The value of SANE_CONFIG_DIR.";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -42,8 +48,8 @@ in
|
|||
config = mkIf config.hardware.sane.enable {
|
||||
|
||||
environment.systemPackages = backends;
|
||||
environment.variables = {
|
||||
SANE_CONFIG_DIR = mkDefault "${saneConfig}/etc/sane.d";
|
||||
environment.sessionVariables = {
|
||||
SANE_CONFIG_DIR = config.hardware.sane.configDir;
|
||||
LD_LIBRARY_PATH = [ "${saneConfig}/lib/sane" ];
|
||||
};
|
||||
services.udev.packages = backends;
|
||||
|
|
|
@ -17,6 +17,11 @@ in
|
|||
description = "Enable logstash";
|
||||
};
|
||||
|
||||
enableWeb = mkOption {
|
||||
default = false;
|
||||
description = "Enable logstash web interface";
|
||||
};
|
||||
|
||||
inputConfig = mkOption {
|
||||
default = ''stdin { type => "example" }'';
|
||||
description = "Logstash input configuration";
|
||||
|
@ -62,7 +67,7 @@ in
|
|||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.logstash = with pkgs; {
|
||||
description = "Logstash daemon";
|
||||
description = "Logstash Daemon";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
serviceConfig = {
|
||||
|
@ -78,7 +83,7 @@ in
|
|||
output {
|
||||
${cfg.outputConfig}
|
||||
}
|
||||
''}";
|
||||
''} ${optionalString cfg.enableWeb "-- web"}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
66
nixos/modules/services/misc/gitolite.nix
Normal file
66
nixos/modules/services/misc/gitolite.nix
Normal file
|
@ -0,0 +1,66 @@
|
|||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
cfg = config.services.gitolite;
|
||||
pubkeyFile = pkgs.writeText "gitolite-admin.pub" cfg.adminPubkey;
|
||||
in
|
||||
{
|
||||
options = {
|
||||
services.gitolite = {
|
||||
enable = mkOption {
|
||||
type = types.bool;
|
||||
default = false;
|
||||
description = ''
|
||||
Enable gitolite management under the
|
||||
<literal>gitolite</literal> user. The Gitolite home
|
||||
directory is <literal>/var/lib/gitolite</literal>. After
|
||||
switching to a configuration with Gitolite enabled, you can
|
||||
then run <literal>git clone
|
||||
gitolite@host:gitolite-admin.git</literal> to manage it further.
|
||||
'';
|
||||
};
|
||||
|
||||
adminPubkey = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
Initial administrative public key for Gitolite. This should
|
||||
be an SSH Public Key. Note that this key will only be used
|
||||
once, upon the first initialization of the Gitolite user.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
users.extraUsers.gitolite = {
|
||||
description = "Gitolite user";
|
||||
home = "/var/lib/gitolite";
|
||||
createHome = true;
|
||||
uid = config.ids.uids.gitolite;
|
||||
useDefaultShell = true;
|
||||
};
|
||||
|
||||
systemd.services."gitolite-init" = {
|
||||
description = "Gitolite initialization";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
|
||||
serviceConfig.User = "gitolite";
|
||||
serviceConfig.Type = "oneshot";
|
||||
serviceConfig.RemainAfterExit = true;
|
||||
|
||||
path = [ pkgs.gitolite pkgs.git pkgs.perl pkgs.bash pkgs.openssh ];
|
||||
script = ''
|
||||
cd /var/lib/gitolite
|
||||
mkdir -p .gitolite/logs
|
||||
if [ ! -d repositories ]; then
|
||||
gitolite setup -pk ${pubkeyFile}
|
||||
fi
|
||||
gitolite setup # Upgrade if needed
|
||||
'';
|
||||
};
|
||||
|
||||
environment.systemPackages = [ pkgs.gitolite pkgs.git ];
|
||||
};
|
||||
}
|
|
@ -4,21 +4,12 @@
|
|||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.nagios;
|
||||
|
||||
nagiosUser = "nagios";
|
||||
nagiosGroup = "nogroup";
|
||||
|
||||
nagiosState = "/var/lib/nagios";
|
||||
nagiosLogDir = "/var/log/nagios";
|
||||
|
||||
nagiosObjectDefs =
|
||||
[ ./timeperiods.cfg
|
||||
./host-templates.cfg
|
||||
./service-templates.cfg
|
||||
./commands.cfg
|
||||
] ++ cfg.objectDefs;
|
||||
nagiosObjectDefs = cfg.objectDefs;
|
||||
|
||||
nagiosObjectDefsDir = pkgs.runCommand "nagios-objects" {inherit nagiosObjectDefs;}
|
||||
"ensureDir $out; ln -s $nagiosObjectDefs $out/";
|
||||
|
@ -30,19 +21,20 @@ let
|
|||
log_archive_path=${nagiosLogDir}/archive
|
||||
status_file=${nagiosState}/status.dat
|
||||
object_cache_file=${nagiosState}/objects.cache
|
||||
comment_file=${nagiosState}/comment.dat
|
||||
downtime_file=${nagiosState}/downtime.dat
|
||||
temp_file=${nagiosState}/nagios.tmp
|
||||
lock_file=/var/run/nagios.lock # Not used I think.
|
||||
state_retention_file=${nagiosState}/retention.dat
|
||||
query_socket=${nagiosState}/nagios.qh
|
||||
check_result_path=${nagiosState}
|
||||
command_file=${nagiosState}/nagios.cmd
|
||||
|
||||
# Configuration files.
|
||||
#resource_file=resource.cfg
|
||||
cfg_dir=${nagiosObjectDefsDir}
|
||||
|
||||
# Uid/gid that the daemon runs under.
|
||||
nagios_user=${nagiosUser}
|
||||
nagios_group=${nagiosGroup}
|
||||
nagios_user=nagios
|
||||
nagios_group=nogroup
|
||||
|
||||
# Misc. options.
|
||||
illegal_macro_output_chars=`~$&|'"<>
|
||||
|
@ -53,26 +45,24 @@ let
|
|||
# authentication.
|
||||
nagiosCGICfgFile = pkgs.writeText "nagios.cgi.conf"
|
||||
''
|
||||
main_config_file=${nagiosCfgFile}
|
||||
main_config_file=${cfg.mainConfigFile}
|
||||
use_authentication=0
|
||||
url_html_path=/nagios
|
||||
url_html_path=${cfg.urlPath}
|
||||
'';
|
||||
|
||||
urlPath = cfg.urlPath;
|
||||
|
||||
extraHttpdConfig =
|
||||
''
|
||||
ScriptAlias ${urlPath}/cgi-bin ${pkgs.nagios}/sbin
|
||||
ScriptAlias ${cfg.urlPath}/cgi-bin ${pkgs.nagios}/sbin
|
||||
|
||||
<Directory "${pkgs.nagios}/sbin">
|
||||
Options ExecCGI
|
||||
AllowOverride None
|
||||
Order allow,deny
|
||||
Allow from all
|
||||
SetEnv NAGIOS_CGI_CONFIG ${nagiosCGICfgFile}
|
||||
SetEnv NAGIOS_CGI_CONFIG ${cfg.cgiConfigFile}
|
||||
</Directory>
|
||||
|
||||
Alias ${urlPath} ${pkgs.nagios}/share
|
||||
Alias ${cfg.urlPath} ${pkgs.nagios}/share
|
||||
|
||||
<Directory "${pkgs.nagios}/share">
|
||||
Options None
|
||||
|
@ -83,14 +73,9 @@ let
|
|||
'';
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
services.nagios = {
|
||||
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
description = "
|
||||
|
@ -116,6 +101,21 @@ in
|
|||
";
|
||||
};
|
||||
|
||||
mainConfigFile = mkOption {
|
||||
default = nagiosCfgFile;
|
||||
description = "
|
||||
Derivation for the main configuration file of Nagios.
|
||||
";
|
||||
};
|
||||
|
||||
cgiConfigFile = mkOption {
|
||||
default = nagiosCGICfgFile;
|
||||
description = "
|
||||
Derivation for the configuration file of Nagios CGI scripts
|
||||
that can be used in web servers for running the Nagios web interface.
|
||||
";
|
||||
};
|
||||
|
||||
enableWebInterface = mkOption {
|
||||
default = false;
|
||||
description = "
|
||||
|
@ -132,55 +132,53 @@ in
|
|||
<literal>http://<replaceable>server</replaceable>/<replaceable>urlPath</replaceable></literal>.
|
||||
";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
users.extraUsers = singleton
|
||||
{ name = nagiosUser;
|
||||
uid = config.ids.uids.nagios;
|
||||
description = "Nagios monitoring daemon";
|
||||
home = nagiosState;
|
||||
};
|
||||
users.extraUsers.nagios = {
|
||||
description = "Nagios user ";
|
||||
uid = config.ids.uids.nagios;
|
||||
home = nagiosState;
|
||||
createHome = true;
|
||||
};
|
||||
|
||||
# This isn't needed, it's just so that the user can type "nagiostats
|
||||
# -c /etc/nagios.cfg".
|
||||
environment.etc = singleton
|
||||
{ source = nagiosCfgFile;
|
||||
environment.etc = [
|
||||
{ source = cfg.mainConfigFile;
|
||||
target = "nagios.cfg";
|
||||
};
|
||||
}
|
||||
];
|
||||
|
||||
environment.systemPackages = [ pkgs.nagios ];
|
||||
systemd.services.nagios = {
|
||||
description = "Nagios monitoring daemon";
|
||||
path = [ pkgs.nagios ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network-interfaces.target" ];
|
||||
|
||||
jobs.nagios =
|
||||
{ description = "Nagios monitoring daemon";
|
||||
|
||||
startOn = "started network-interfaces";
|
||||
stopOn = "stopping network-interfaces";
|
||||
|
||||
preStart =
|
||||
''
|
||||
mkdir -m 0755 -p ${nagiosState} ${nagiosLogDir}
|
||||
chown ${nagiosUser} ${nagiosState} ${nagiosLogDir}
|
||||
'';
|
||||
|
||||
script =
|
||||
''
|
||||
for i in ${toString config.services.nagios.plugins}; do
|
||||
export PATH=$i/bin:$i/sbin:$i/libexec:$PATH
|
||||
done
|
||||
exec ${pkgs.nagios}/bin/nagios ${nagiosCfgFile}
|
||||
'';
|
||||
serviceConfig = {
|
||||
User = "nagios";
|
||||
Restart = "always";
|
||||
RestartSec = 2;
|
||||
PermissionsStartOnly = true;
|
||||
};
|
||||
|
||||
preStart = ''
|
||||
mkdir -m 0755 -p ${nagiosState} ${nagiosLogDir}
|
||||
chown nagios ${nagiosState} ${nagiosLogDir}
|
||||
'';
|
||||
|
||||
script = ''
|
||||
for i in ${toString cfg.plugins}; do
|
||||
export PATH=$i/bin:$i/sbin:$i/libexec:$PATH
|
||||
done
|
||||
exec ${pkgs.nagios}/bin/nagios ${cfg.mainConfigFile}
|
||||
'';
|
||||
};
|
||||
|
||||
services.httpd.extraConfig = optionalString cfg.enableWebInterface extraHttpdConfig;
|
||||
|
||||
};
|
||||
|
||||
}
|
|
@ -1,34 +0,0 @@
|
|||
define command {
|
||||
command_name host-notify-by-email
|
||||
command_line printf "%b" "To: $CONTACTEMAIL$\nSubject: [Nagios] Host $HOSTSTATE$ alert for $HOSTNAME$\n\n***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nHost: $HOSTNAME$\nState: $HOSTSTATE$\nAddress: $HOSTADDRESS$\nInfo: $HOSTOUTPUT$\n\nDate/Time: $LONGDATETIME$\n" | sendmail $CONTACTEMAIL$
|
||||
}
|
||||
|
||||
|
||||
define command {
|
||||
command_name notify-by-email
|
||||
command_line printf "%b" "To: $CONTACTEMAIL$\nSubject: [Nagios] $NOTIFICATIONTYPE$ alert - $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$\n\n***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | sendmail $CONTACTEMAIL$
|
||||
}
|
||||
|
||||
|
||||
define command {
|
||||
command_name dummy-ok
|
||||
command_line true
|
||||
}
|
||||
|
||||
|
||||
define command {
|
||||
command_name check-host-alive
|
||||
command_line check_ping -H $HOSTADDRESS$ -w 3000.0,80% -c 5000.0,100% -p 1
|
||||
}
|
||||
|
||||
|
||||
define command {
|
||||
command_name check_local_disk
|
||||
command_line check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
|
||||
}
|
||||
|
||||
|
||||
define command {
|
||||
command_name check_ssh
|
||||
command_line check_ssh $HOSTADDRESS$
|
||||
}
|
|
@ -1,27 +0,0 @@
|
|||
define host {
|
||||
name generic-host
|
||||
notifications_enabled 1
|
||||
event_handler_enabled 1
|
||||
flap_detection_enabled 1
|
||||
failure_prediction_enabled 1
|
||||
process_perf_data 1
|
||||
retain_status_information 1
|
||||
retain_nonstatus_information 1
|
||||
notification_period 24x7
|
||||
register 0
|
||||
}
|
||||
|
||||
|
||||
define host {
|
||||
name generic-server
|
||||
use generic-host
|
||||
check_period 24x7
|
||||
max_check_attempts 10
|
||||
check_command check-host-alive
|
||||
notification_period 24x7
|
||||
notification_interval 120
|
||||
notification_options d,u,r
|
||||
contact_groups admins
|
||||
register 0
|
||||
#check_interval 1
|
||||
}
|
|
@ -1,32 +0,0 @@
|
|||
define service {
|
||||
name generic-service
|
||||
active_checks_enabled 1
|
||||
passive_checks_enabled 1
|
||||
parallelize_check 1
|
||||
obsess_over_service 1
|
||||
check_freshness 0
|
||||
notifications_enabled 1
|
||||
event_handler_enabled 1
|
||||
flap_detection_enabled 1
|
||||
failure_prediction_enabled 1
|
||||
process_perf_data 1
|
||||
retain_status_information 1
|
||||
retain_nonstatus_information 1
|
||||
is_volatile 0
|
||||
register 0
|
||||
}
|
||||
|
||||
|
||||
define service {
|
||||
name local-service
|
||||
use generic-service
|
||||
check_period 24x7
|
||||
max_check_attempts 4
|
||||
normal_check_interval 5
|
||||
retry_check_interval 1
|
||||
contact_groups admins
|
||||
notification_options w,u,c,r
|
||||
notification_interval 0 # notify only once
|
||||
notification_period 24x7
|
||||
register 0
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
define timeperiod {
|
||||
timeperiod_name 24x7
|
||||
alias 24 Hours A Day, 7 Days A Week
|
||||
sunday 00:00-24:00
|
||||
monday 00:00-24:00
|
||||
tuesday 00:00-24:00
|
||||
wednesday 00:00-24:00
|
||||
thursday 00:00-24:00
|
||||
friday 00:00-24:00
|
||||
saturday 00:00-24:00
|
||||
}
|
|
@ -27,37 +27,37 @@ in {
|
|||
|
||||
options.services.elasticsearch = {
|
||||
enable = mkOption {
|
||||
description = "Whether to enable elasticsearch";
|
||||
description = "Whether to enable elasticsearch.";
|
||||
default = false;
|
||||
type = types.uniq types.bool;
|
||||
};
|
||||
|
||||
host = mkOption {
|
||||
description = "Elasticsearch listen address";
|
||||
description = "Elasticsearch listen address.";
|
||||
default = "127.0.0.1";
|
||||
type = types.str;
|
||||
};
|
||||
|
||||
port = mkOption {
|
||||
description = "Elasticsearch port to listen for HTTP traffic";
|
||||
description = "Elasticsearch port to listen for HTTP traffic.";
|
||||
default = 9200;
|
||||
type = types.int;
|
||||
};
|
||||
|
||||
tcp_port = mkOption {
|
||||
description = "Elasticsearch port for the node to node communication";
|
||||
description = "Elasticsearch port for the node to node communication.";
|
||||
default = 9300;
|
||||
type = types.int;
|
||||
};
|
||||
|
||||
cluster_name = mkOption {
|
||||
description = "Elasticsearch name that identifies your cluster for auto-discovery";
|
||||
description = "Elasticsearch name that identifies your cluster for auto-discovery.";
|
||||
default = "elasticsearch";
|
||||
type = types.str;
|
||||
};
|
||||
|
||||
extraConf = mkOption {
|
||||
description = "Extra configuration for elasticsearch";
|
||||
description = "Extra configuration for elasticsearch.";
|
||||
default = "";
|
||||
type = types.str;
|
||||
example = ''
|
||||
|
@ -70,7 +70,7 @@ in {
|
|||
};
|
||||
|
||||
logging = mkOption {
|
||||
description = "Elasticsearch logging configuration";
|
||||
description = "Elasticsearch logging configuration.";
|
||||
default = ''
|
||||
rootLogger: INFO, console
|
||||
logger:
|
||||
|
@ -93,18 +93,26 @@ in {
|
|||
Data directory for elasticsearch.
|
||||
'';
|
||||
};
|
||||
|
||||
extraCmdLineOptions = mkOption {
|
||||
description = "Extra command line options for the elasticsearch launcher.";
|
||||
default = [];
|
||||
type = types.listOf types.string;
|
||||
example = [ "-Djava.net.preferIPv4Stack=true" ];
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.elasticsearch = {
|
||||
description = "Elasticsearch daemon";
|
||||
description = "Elasticsearch Daemon";
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
after = [ "network-interfaces.target" ];
|
||||
environment = { ES_HOME = cfg.dataDir; };
|
||||
serviceConfig = {
|
||||
ExecStart = "${pkgs.elasticsearch}/bin/elasticsearch -Des.path.conf=${configDir}";
|
||||
ExecStart = "${pkgs.elasticsearch}/bin/elasticsearch -Des.path.conf=${configDir} ${toString cfg.extraCmdLineOptions}";
|
||||
User = "elasticsearch";
|
||||
PermissionsStartOnly = true;
|
||||
};
|
||||
|
|
|
@ -683,6 +683,13 @@ in
|
|||
description = "Definition of systemd per-user service units.";
|
||||
};
|
||||
|
||||
systemd.user.sockets = mkOption {
|
||||
default = {};
|
||||
type = types.attrsOf types.optionSet;
|
||||
options = [ socketOptions unitConfig ];
|
||||
description = "Definition of systemd per-user socket units.";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
|
@ -767,7 +774,8 @@ in
|
|||
in nameValuePair "${n}.automount" (automountToUnit n v)) cfg.automounts);
|
||||
|
||||
systemd.user.units =
|
||||
mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.user.services;
|
||||
mapAttrs' (n: v: nameValuePair "${n}.service" (serviceToUnit n v)) cfg.user.services
|
||||
// mapAttrs' (n: v: nameValuePair "${n}.socket" (socketToUnit n v)) cfg.user.sockets;
|
||||
|
||||
system.requiredKernelConfig = map config.lib.kernelConfig.isEnabled
|
||||
[ "DEVTMPFS" "CGROUPS" "INOTIFY_USER" "SIGNALFD" "TIMERFD" "EPOLL" "NET"
|
||||
|
|
|
@ -16,28 +16,28 @@ let
|
|||
enable = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = "The block device is backed by an encrypted one, adds this device as a initrd luks entry";
|
||||
description = "The block device is backed by an encrypted one, adds this device as a initrd luks entry.";
|
||||
};
|
||||
|
||||
blkDev = mkOption {
|
||||
default = null;
|
||||
example = "/dev/sda1";
|
||||
type = types.uniq (types.nullOr types.string);
|
||||
description = "Location of the backing encrypted device";
|
||||
description = "Location of the backing encrypted device.";
|
||||
};
|
||||
|
||||
label = mkOption {
|
||||
default = null;
|
||||
example = "rootfs";
|
||||
type = types.uniq (types.nullOr types.string);
|
||||
description = "Label of the backing encrypted device";
|
||||
description = "Label of the backing encrypted device.";
|
||||
};
|
||||
|
||||
keyFile = mkOption {
|
||||
default = null;
|
||||
example = "/root/.swapkey";
|
||||
type = types.uniq (types.nullOr types.string);
|
||||
description = "File system location of keyfile";
|
||||
description = "File system location of keyfile.";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
nativeBuildInputs = [ cmake pkgconfig ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "high quality software synthesizer";
|
||||
description = "High quality software synthesizer";
|
||||
homepage = http://zynaddsubfx.sourceforge.net;
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.linux;
|
||||
|
|
|
@ -67,6 +67,6 @@ stdenv.mkDerivation rec {
|
|||
license = "GPLv3+";
|
||||
|
||||
maintainers = [ stdenv.lib.maintainers.ludo ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -45,6 +45,6 @@ stdenv.mkDerivation rec {
|
|||
license = "GPLv3+";
|
||||
|
||||
maintainers = with stdenv.lib.maintainers; [ chaoflow pSub ];
|
||||
platforms = stdenv.lib.platforms.gnu;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -49,6 +49,6 @@ stdenv.mkDerivation (rec {
|
|||
'';
|
||||
homepage = http://proofgeneral.inf.ed.ac.uk;
|
||||
license = "GPLv2+";
|
||||
platforms = stdenv.lib.platforms.gnu; # arbitrary choice
|
||||
platforms = stdenv.lib.platforms.unix; # arbitrary choice
|
||||
};
|
||||
})
|
|
@ -0,0 +1,48 @@
|
|||
{ stdenv, fetchurl, emacs, texinfo, texLive, perl, which, automake }:
|
||||
|
||||
stdenv.mkDerivation (rec {
|
||||
name = "ProofGeneral-4.3pre131011";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://proofgeneral.inf.ed.ac.uk/releases/ProofGeneral-4.3pre131011.tgz;
|
||||
sha256 = "0104iy2xik5npkdg9p2ir6zqyrmdc93azrgm3ayvg0z76vmnb816";
|
||||
};
|
||||
|
||||
sourceRoot = name;
|
||||
|
||||
buildInputs = [ emacs texinfo texLive perl which ];
|
||||
|
||||
prePatch =
|
||||
'' sed -i "Makefile" \
|
||||
-e "s|^\(\(DEST_\)\?PREFIX\)=.*$|\1=$out|g ; \
|
||||
s|/sbin/install-info|install-info|g"
|
||||
|
||||
|
||||
sed -i "bin/proofgeneral" -e's/which/type -p/g'
|
||||
|
||||
# @image{ProofGeneral} fails, so remove it.
|
||||
sed -i '94d' doc/PG-adapting.texi
|
||||
sed -i '96d' doc/ProofGeneral.texi
|
||||
'';
|
||||
|
||||
preBuild = ''
|
||||
make clean;
|
||||
'';
|
||||
|
||||
installPhase =
|
||||
# Copy `texinfo.tex' in the right place so that `texi2pdf' works.
|
||||
'' cp -v "${automake}/share/"automake-*/texinfo.tex doc
|
||||
make install install-doc
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Proof General, an Emacs front-end for proof assistants";
|
||||
longDescription = ''
|
||||
Proof General is a generic front-end for proof assistants (also known as
|
||||
interactive theorem provers), based on the customizable text editor Emacs.
|
||||
'';
|
||||
homepage = http://proofgeneral.inf.ed.ac.uk;
|
||||
license = "GPLv2+";
|
||||
platforms = stdenv.lib.platforms.unix; # arbitrary choice
|
||||
};
|
||||
})
|
|
@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
|
|||
preConfigure = "export gl_cv_func_fstatat_zero_flag=yes";
|
||||
|
||||
meta = {
|
||||
description = "GNU Zile, a lightweight Emacs clone";
|
||||
description = "Lightweight Emacs clone";
|
||||
|
||||
longDescription = ''
|
||||
GNU Zile, which is a lightweight Emacs clone. Zile is short
|
||||
|
|
|
@ -22,6 +22,14 @@ stdenv.mkDerivation {
|
|||
|
||||
meta = {
|
||||
description = "Drawing application";
|
||||
longDescription = ''
|
||||
Alchemy is an open drawing project aimed at exploring how we can sketch,
|
||||
draw, and create on computers in new ways. Alchemy isn’t software for
|
||||
creating finished artwork, but rather a sketching environment that
|
||||
focuses on the absolute initial stage of the creation process.
|
||||
Experimental in nature, Alchemy lets you brainstorm visually to explore
|
||||
an expanded range of ideas and possibilities in a serendipitous way.
|
||||
'';
|
||||
homepage = http://al.chemy.org/;
|
||||
license = stdenv.lib.licenses.gpl3Plus;
|
||||
maintainers = [stdenv.lib.maintainers.marcweber];
|
||||
|
|
31
pkgs/applications/misc/camlistore/default.nix
Normal file
31
pkgs/applications/misc/camlistore/default.nix
Normal file
|
@ -0,0 +1,31 @@
|
|||
{ stdenv, lib, go, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "0.7";
|
||||
name = "camlistore-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/bradfitz/camlistore/archive/0.7.tar.gz";
|
||||
sha256 = "0lc35x2b9llrnma0m5czivly0c3l4lh3ldw9hwn83lkh8n0bzn11";
|
||||
};
|
||||
|
||||
buildInputs = [ go ];
|
||||
|
||||
buildPhase = ''
|
||||
go run make.go
|
||||
rm bin/README
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
cp bin/* $out/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Camlistore is a way of storing, syncing, sharing, modelling and backing up content";
|
||||
homepage = https://camlistore.org;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ cstrahan ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
36
pkgs/applications/misc/kdeconnect/default.nix
Normal file
36
pkgs/applications/misc/kdeconnect/default.nix
Normal file
|
@ -0,0 +1,36 @@
|
|||
{ stdenv, fetchurl, gettext, kdelibs, makeWrapper, qca2, qca2_ossl, qjson }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "kdeconnect-${version}";
|
||||
version = "0.5.2.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.kde.org/unstable/kdeconnect/0.5.2/src/kdeconnect-kde-${version}.tar.xz";
|
||||
sha256 = "0g632ha7xcqf839c4h0dz5637bz6gnn2gz76dc0qq09zbrq49i08";
|
||||
};
|
||||
|
||||
buildInputs = [ gettext kdelibs makeWrapper qca2 qca2_ossl qjson ];
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/lib/kde4/libexec/kdeconnectd --prefix QT_PLUGIN_PATH : ${qca2_ossl}/lib/qt4/plugins
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A tool to connect and sync your devices with KDE";
|
||||
longDescription = ''
|
||||
The corresponding Android app, "KDE Connect", is available in
|
||||
F-Droid and Google play and has the following features:
|
||||
|
||||
- Share files and URLs to KDE from any app
|
||||
- Clipboard share: copy from or to your desktop
|
||||
- Notifications sync (4.3+): Read your Android notifications from KDE
|
||||
- Multimedia remote control: Use your phone as a remote control
|
||||
- WiFi connection: no usb wire or bluetooth needed
|
||||
- RSA Encryption: your information is safe
|
||||
'';
|
||||
license = licenses.gpl2;
|
||||
homepage = https://projects.kde.org/projects/playground/base/kdeconnect-kde;
|
||||
platforms = platforms.linux;
|
||||
maintainers = [ maintainers.goibhniu ];
|
||||
};
|
||||
}
|
|
@ -4,11 +4,11 @@
|
|||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "st-0.4.1";
|
||||
name = "st-0.5";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://dl.suckless.org/st/${name}.tar.gz";
|
||||
sha256 = "0cdzwbm5fxrwz8ryxkh90d3vwx54wjyywgj28ymsb5fdv3396bzf";
|
||||
sha256 = "0knxpzaa86pprng6hak8hx8bw22yw22rpz1ffxjpcvqlz3xdv05f";
|
||||
};
|
||||
|
||||
configFile = optionalString (conf!=null) (writeText "config.def.h" conf);
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
|
||||
let
|
||||
# -> http://get.adobe.com/flashplayer/
|
||||
version = "11.2.202.359";
|
||||
version = "11.2.202.378";
|
||||
|
||||
src =
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
|
@ -47,7 +47,7 @@ let
|
|||
else rec {
|
||||
inherit version;
|
||||
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.x86_64.tar.gz";
|
||||
sha256 = "13myq6f999qy1jbgm73gxnadrxdvasi2jiffdyxmwpbwglhhrpka";
|
||||
sha256 = "08aw532k8y27s64ffdghz2k4zf0jsz65crvn3i9vxan29064la9c";
|
||||
}
|
||||
else if stdenv.system == "i686-linux" then
|
||||
if debug then {
|
||||
|
@ -58,7 +58,7 @@ let
|
|||
} else rec {
|
||||
inherit version;
|
||||
url = "http://fpdownload.macromedia.com/get/flashplayer/pdc/${version}/install_flash_player_11_linux.i386.tar.gz";
|
||||
sha256 = "04wh18jbscp7m3drvsxxhp2vjnhww69vw0pgr23hx81ry0ccvb8m";
|
||||
sha256 = "1njy2pnhgr2hjz6kp9vl4cgxxszw2k6gmhjz88hx92aijv7s93wz";
|
||||
}
|
||||
else throw "Flash Player is not supported on this platform";
|
||||
|
||||
|
|
|
@ -11,7 +11,16 @@ stdenv.mkDerivation {
|
|||
|
||||
NIX_CFLAGS_COMPILE = "-I${glib}/include/glib-2.0 -I${glib}/lib/glib-2.0/include -I${libxml2}/include/libxml2";
|
||||
|
||||
patchPhase = "sed -i 's/UpnpString_get_String(es_event->PublisherUrl)/es_event->PublisherUrl/' libretroshare/src/upnp/UPnPBase.cpp";
|
||||
patchPhase = ''
|
||||
sed -i 's/UpnpString_get_String(es_event->PublisherUrl)/es_event->PublisherUrl/' \
|
||||
libretroshare/src/upnp/UPnPBase.cpp
|
||||
# Extensions get installed
|
||||
sed -i "s,/usr/lib/retroshare/extensions/,$out/share/retroshare," \
|
||||
libretroshare/src/rsserver/rsinit.cc
|
||||
# For bdboot.txt
|
||||
sed -i "s,/usr/share/RetroShare,$out/share/retroshare," \
|
||||
libretroshare/src/rsserver/rsinit.cc
|
||||
'';
|
||||
|
||||
buildInputs = [ speex qt libupnp gpgme gnome3.libgnome_keyring glib libssh pkgconfig
|
||||
protobuf bzip2 libXScrnSaver curl libxml2 libxslt ];
|
||||
|
@ -24,8 +33,15 @@ stdenv.mkDerivation {
|
|||
|
||||
postInstall = ''
|
||||
mkdir -p $out/bin
|
||||
ln -s $out/retroshare-nogui $out/bin
|
||||
ln -s $out/RetroShare $out/bin
|
||||
mv $out/retroshare-nogui $out/bin
|
||||
mv $out/RetroShare $out/bin
|
||||
|
||||
# plugins
|
||||
mkdir -p $out/share/retroshare
|
||||
mv $out/lib* $out/share/retroshare
|
||||
|
||||
# BT DHT bootstrap
|
||||
cp libbitdht/src/bitdht/bdboot.txt $out/share/retroshare
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -2,18 +2,16 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "syncthing-${version}";
|
||||
version = "0.8.11";
|
||||
version = "0.8.15";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/calmh/syncthing.git";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "16dl9sqwhv0n1602pmi10d5j7z2196ijhvz4rfx7732210qbkpnn";
|
||||
sha256 = "0xv8kaji60zqxws72srh5hdi9fyvaipdcsawp6gcyahhr3cz0ddq";
|
||||
};
|
||||
|
||||
buildInputs = [ go ];
|
||||
|
||||
patches = [ ./upnp.patch ];
|
||||
|
||||
buildPhase = ''
|
||||
mkdir -p "./dependencies/src/github.com/calmh/syncthing"
|
||||
|
||||
|
|
|
@ -1,28 +0,0 @@
|
|||
Trying to fix upnp for miniupnpd:
|
||||
https://github.com/calmh/syncthing/issues/211
|
||||
|
||||
diff --git a/upnp/upnp.go b/upnp/upnp.go
|
||||
index 9de719a..9c85b23 100644
|
||||
--- a/upnp/upnp.go
|
||||
+++ b/upnp/upnp.go
|
||||
@@ -60,14 +60,12 @@ func Discover() (*IGD, error) {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
- search := []byte(`
|
||||
-M-SEARCH * HTTP/1.1
|
||||
-Host: 239.255.255.250:1900
|
||||
-St: urn:schemas-upnp-org:device:InternetGatewayDevice:1
|
||||
-Man: "ssdp:discover"
|
||||
-Mx: 3
|
||||
-
|
||||
-`)
|
||||
+ search := []byte("M-SEARCH * HTTP/1.1\r\n" +
|
||||
+"Host: 239.255.255.250:1900\r\n" +
|
||||
+"St: urn:schemas-upnp-org:device:InternetGatewayDevice:1\r\n" +
|
||||
+"Man: \"ssdp:discover\"\r\n" +
|
||||
+"Mx: 3\r\n" +
|
||||
+"\r\n")
|
||||
|
||||
_, err = socket.WriteTo(search, ssdp)
|
||||
if err != nil {
|
|
@ -27,7 +27,10 @@ stdenv.mkDerivation {
|
|||
libgsf enchant wv libjpeg
|
||||
];
|
||||
|
||||
meta = {
|
||||
description = "Word processing program, similar to Microsof Word";
|
||||
meta = with stdenv.lib; {
|
||||
description = "Word processing program, similar to Microsoft Word";
|
||||
homepage = http://www.abisource.com/;
|
||||
license = licenses.gpl3;
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
assert (stdenv.system == "x86_64-linux" || stdenv.system == "i686-linux");
|
||||
|
||||
let
|
||||
version = "4.0.20";
|
||||
version = "4.0.21.1";
|
||||
arch = if stdenv.system == "x86_64-linux"
|
||||
then "linux-x86_64"
|
||||
else "linux-i686";
|
||||
|
@ -14,8 +14,8 @@ stdenv.mkDerivation {
|
|||
src = fetchurl {
|
||||
url = "https://download.zotero.org/standalone/${version}/Zotero-${version}_${arch}.tar.bz2";
|
||||
sha256 = if stdenv.system == "x86_64-linux"
|
||||
then "0d7813k3h60fpxabdwiw83g5zfy9knxc9irgxxz60z31vd14zi0x"
|
||||
else "0nj4mj22bkn2nwbkfs40kg4br6h6gcf718v9lfnvs13cyhx0wapc";
|
||||
then "1d6ih9q0daxxqqbr134la5y39648hpd53srf43lljjs8wr71wbn8"
|
||||
else "121myzwxw3frps77lpzza82glyz9qgwbl5bh3zngfx9vwx3n8q0v";
|
||||
};
|
||||
|
||||
# Strip the bundled xulrunner
|
||||
|
|
|
@ -31,6 +31,6 @@ stdenv.mkDerivation rec {
|
|||
meta = {
|
||||
homepage = http://bazaar-vcs.org/;
|
||||
description = "A distributed version control system that Just Works";
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -69,7 +69,7 @@ rec {
|
|||
};
|
||||
|
||||
tig = import ./tig {
|
||||
inherit stdenv fetchurl ncurses asciidoc xmlto docbook_xsl docbook_xml_dtd_45;
|
||||
inherit stdenv fetchurl ncurses asciidoc xmlto docbook_xsl docbook_xml_dtd_45 readline;
|
||||
};
|
||||
|
||||
hub = import ./hub {
|
||||
|
|
|
@ -11,6 +11,7 @@
|
|||
, tastyHunit, tastyQuickcheck, tastyRerun, text, time, transformers
|
||||
, unixCompat, utf8String, uuid, wai, waiExtra, warp, warpTls, which
|
||||
, xmlTypes, yesod, yesodCore, yesodDefault, yesodForm, yesodStatic
|
||||
, fsnotify
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
|
@ -21,9 +22,9 @@ cabal.mkDerivation (self: {
|
|||
isExecutable = true;
|
||||
buildDepends = [
|
||||
aeson async blazeBuilder bloomfilter byteable caseInsensitive
|
||||
clientsession cryptoApi cryptohash dataDefault dataenc DAV dbus
|
||||
dlist dns editDistance exceptions extensibleExceptions fdoNotify
|
||||
feed filepath gnutls hamlet hinotify hS3 hslogger HTTP httpClient
|
||||
clientsession cryptoApi cryptohash dataDefault dataenc DAV
|
||||
dlist dns editDistance exceptions extensibleExceptions
|
||||
feed filepath gnutls hamlet hS3 hslogger HTTP httpClient
|
||||
httpConduit httpTypes IfElse json liftedBase MissingH monadControl
|
||||
mtl network networkConduit networkInfo networkMulticast
|
||||
networkProtocolXmpp optparseApplicative QuickCheck random regexTdfa
|
||||
|
@ -31,19 +32,13 @@ cabal.mkDerivation (self: {
|
|||
tastyQuickcheck tastyRerun text time transformers unixCompat
|
||||
utf8String uuid wai waiExtra warp warpTls xmlTypes yesod yesodCore
|
||||
yesodDefault yesodForm yesodStatic
|
||||
];
|
||||
] ++ (if (!self.stdenv.isDarwin) then [
|
||||
dbus fdoNotify hinotify
|
||||
] else [
|
||||
fsnotify
|
||||
]);
|
||||
buildTools = [ bup curl git gnupg1 lsof openssh perl rsync which ];
|
||||
configureFlags = "-fS3
|
||||
-fWebDAV
|
||||
-fInotify
|
||||
-fDbus
|
||||
-fAssistant
|
||||
-fWebapp
|
||||
-fPairing
|
||||
-fXMPP
|
||||
-fDNS
|
||||
-fProduction
|
||||
-fTDFA";
|
||||
configureFlags = "-fAssistant -fProduction";
|
||||
preConfigure = ''
|
||||
export HOME="$NIX_BUILD_TOP/tmp"
|
||||
mkdir "$HOME"
|
||||
|
|
|
@ -82,10 +82,6 @@ stdenv.mkDerivation {
|
|||
# gitweb.cgi, need to patch so that it's found
|
||||
sed -i -e "s|'compressor' => \['gzip'|'compressor' => ['${gzip}/bin/gzip'|" \
|
||||
$out/share/gitweb/gitweb.cgi
|
||||
|
||||
wrapProgram $out/bin/git \
|
||||
--set GIT_SSL_CAINFO "\$OPENSSL_X509_CERT_FILE"
|
||||
|
||||
''
|
||||
|
||||
+ (if svnSupport then
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
{ stdenv, fetchurl, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45 }:
|
||||
{ stdenv, fetchurl, ncurses, asciidoc, xmlto, docbook_xsl, docbook_xml_dtd_45
|
||||
, readline
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "tig-2.0.2";
|
||||
|
@ -8,7 +10,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "0gi7iqiij37b0d3izxymxaw5ns2mv1y7qfic0fhl7xj4s2rz075r";
|
||||
};
|
||||
|
||||
buildInputs = [ ncurses asciidoc xmlto docbook_xsl ];
|
||||
buildInputs = [ ncurses asciidoc xmlto docbook_xsl readline ];
|
||||
|
||||
preConfigure = ''
|
||||
export XML_CATALOG_FILES='${docbook_xsl}/xml/xsl/docbook/catalog.xml ${docbook_xml_dtd_45}/xml/dtd/docbook/catalog.xml'
|
||||
|
|
37
pkgs/applications/version-management/gitolite/default.nix
Normal file
37
pkgs/applications/version-management/gitolite/default.nix
Normal file
|
@ -0,0 +1,37 @@
|
|||
{ stdenv, fetchurl, perl, git, fetchgit }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gitolite-${version}";
|
||||
version = "3.6.1";
|
||||
|
||||
src = fetchgit {
|
||||
url = "git://github.com/sitaramc/gitolite";
|
||||
rev = "refs/tags/v${version}";
|
||||
sha256 = "47e0e9c3137b05af96c091494ba918d61d1d3396749a04d63e7949ebcc6c6dca";
|
||||
leaveDotGit = true;
|
||||
};
|
||||
|
||||
buildInputs = [ perl git ];
|
||||
buildPhase = "true";
|
||||
|
||||
patchPhase = ''
|
||||
substituteInPlace ./install --replace " 2>/dev/null" ""
|
||||
substituteInPlace src/lib/Gitolite/Hooks/PostUpdate.pm \
|
||||
--replace /usr/bin/perl "/usr/bin/env perl"
|
||||
substituteInPlace src/lib/Gitolite/Hooks/Update.pm \
|
||||
--replace /usr/bin/perl "/usr/bin/env perl"
|
||||
'';
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
git tag v${version} # Gitolite requires a tag for the version information :/
|
||||
perl ./install -to $out/bin
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Finely-grained git repository hosting";
|
||||
homepage = "http://gitolite.com/gitolite/index.html";
|
||||
license = stdenv.lib.licenses.gpl2;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
|
||||
};
|
||||
}
|
|
@ -41,7 +41,7 @@ stdenv.mkDerivation {
|
|||
];
|
||||
|
||||
meta = {
|
||||
description = "Cinelerra - Video Editor";
|
||||
description = "Video Editor";
|
||||
homepage = http://www.cinelerra.org;
|
||||
maintainers = [ stdenv.lib.maintainers.marcweber ];
|
||||
license = "GPLv2";
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "i3-${version}";
|
||||
version = "4.7.2";
|
||||
version = "4.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://i3wm.org/downloads/${name}.tar.bz2";
|
||||
sha256 = "14zkn5jgm0b7ablvxcxh9gdzq6mjdd6i1kl9dbmifl2a6rg5dr3g";
|
||||
sha256 = "0sqvd8yqf9vwqrrvbpbf8k93b3qfa3q9289m82xq15r31wlk8b2h";
|
||||
};
|
||||
|
||||
buildInputs = [ which pkgconfig libxcb xcbutilkeysyms xcbutil xcbutilwm
|
||||
|
|
|
@ -217,7 +217,9 @@ clone_user_rev() {
|
|||
fi;;
|
||||
esac
|
||||
|
||||
echo "git revision is $(cd $dir && (git rev-parse $rev 2> /dev/null || git rev-parse refs/heads/fetchgit) | tail -n1)"
|
||||
local full_revision=$(cd $dir && (git rev-parse $rev 2> /dev/null || git rev-parse refs/heads/fetchgit) | tail -n1)
|
||||
echo "git revision is $full_revision"
|
||||
echo "git human-readable version is $(cd $dir && (git describe $full_revision 2> /dev/null || git describe --tags $full_revision 2> /dev/null || echo -- none --))"
|
||||
|
||||
# Allow doing additional processing before .git removal
|
||||
eval "$NIX_PREFETCH_GIT_CHECKOUT_HOOK"
|
||||
|
|
|
@ -373,4 +373,10 @@ rec {
|
|||
http://lib.stat.cmu.edu/
|
||||
];
|
||||
|
||||
# Hackage mirrors
|
||||
hackage = [
|
||||
http://hackage.haskell.org/package/
|
||||
http://hdiff.luite.com/packages/archive/package/
|
||||
];
|
||||
|
||||
}
|
||||
|
|
153
pkgs/build-support/fetchzip/nix-prefetch-zip
Executable file
153
pkgs/build-support/fetchzip/nix-prefetch-zip
Executable file
|
@ -0,0 +1,153 @@
|
|||
#! /bin/sh -e
|
||||
|
||||
usage(){
|
||||
echo >&2 "syntax: nix-prefetch-zip [OPTIONS] [URL [EXPECTED-HASH]]
|
||||
|
||||
Options:
|
||||
--url url The url of the archive to fetch.
|
||||
--name name The name to use for the store path (defaults to \`basename \$url\`).
|
||||
--hash hash The hash of unpacked archive.
|
||||
--hash-type type Use the specified cryptographic hash algorithm, which can be one of md5, sha1, and sha256.
|
||||
--leave-root Keep the root directory of the archive.
|
||||
--help Show this help text.
|
||||
"
|
||||
exit 1
|
||||
}
|
||||
|
||||
|
||||
argi=0
|
||||
argfun=""
|
||||
for arg; do
|
||||
if test -z "$argfun"; then
|
||||
case $arg in
|
||||
--url) argfun=set_url;;
|
||||
--name) argfun=set_name;;
|
||||
--hash) argfun=set_expHash;;
|
||||
--hash-type) argfun=set_hashType;;
|
||||
--leave-root) leaveRoot=true;;
|
||||
--help) usage;;
|
||||
*) argi=$(($argi + 1))
|
||||
case $argi in
|
||||
1) url=$arg;;
|
||||
2) rev=$arg;;
|
||||
3) expHash=$arg;;
|
||||
*) echo "Unexpected argument: $arg" >&2
|
||||
usage
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
else
|
||||
case $argfun in
|
||||
set_*)
|
||||
var=$(echo $argfun | sed 's,^set_,,')
|
||||
eval "$var=\$arg"
|
||||
;;
|
||||
esac
|
||||
argfun=""
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -z "$url" ]; then
|
||||
echo "Error: No --url flag given" >&2
|
||||
usage
|
||||
fi
|
||||
|
||||
if [ -z "$name" ]; then
|
||||
name=$(basename "$url")
|
||||
fi
|
||||
|
||||
if test -z "$hashType"; then
|
||||
hashType=sha256
|
||||
fi
|
||||
|
||||
hashFormat="--base32"
|
||||
|
||||
tmp=$(mktemp -d 2>/dev/null || mktemp -d -t "$$")
|
||||
trap "rm -rf '$tmp'" EXIT
|
||||
|
||||
unpackDir=$tmp/unpacked/$name
|
||||
mkdir -p $unpackDir
|
||||
downloadedFile=$tmp/$name
|
||||
|
||||
unpackFile() {
|
||||
local curSrc="$1"
|
||||
|
||||
case "$curSrc" in
|
||||
*.tar.xz | *.tar.lzma)
|
||||
# Don't rely on tar knowing about .xz.
|
||||
xz -d < $curSrc | tar xf -
|
||||
;;
|
||||
*.tar | *.tar.* | *.tgz | *.tbz2)
|
||||
# GNU tar can automatically select the decompression method
|
||||
# (info "(tar) gzip").
|
||||
tar xf $curSrc
|
||||
;;
|
||||
*.zip)
|
||||
unzip -qq $curSrc
|
||||
;;
|
||||
*)
|
||||
echo "source archive $curSrc has unknown type" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# If the hash was given, a file with that hash may already be in the
|
||||
# store.
|
||||
if test -n "$expHash"; then
|
||||
finalPath=$(nix-store --print-fixed-path --recursive "$hashType" "$expHash" "$name")
|
||||
if ! nix-store --check-validity "$finalPath" 2> /dev/null; then
|
||||
finalPath=
|
||||
fi
|
||||
hash=$expHash
|
||||
fi
|
||||
|
||||
# If we don't know the hash or a path with that hash doesn't exist,
|
||||
# download the file and add it to the store.
|
||||
if test -z "$finalPath"; then
|
||||
curl="curl \
|
||||
--location --max-redirs 20 \
|
||||
--disable-epsv \
|
||||
--insecure"
|
||||
|
||||
if ! $curl --fail "$url" --output "$downloadedFile"; then
|
||||
echo "error: could not download $url" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
cd $unpackDir
|
||||
unpackFile "$downloadedFile"
|
||||
|
||||
# FIXME: handle zip files that contain a single regular file.
|
||||
if [ -z "$leaveRoot" ]; then
|
||||
shopt -s dotglob
|
||||
if [ $(ls -d $unpackDir/* | wc -l) != 1 ]; then
|
||||
echo "error: zip file must contain a single directory."
|
||||
exit 1
|
||||
fi
|
||||
fn=$(cd "$unpackDir" && echo *)
|
||||
mv $unpackDir/$fn/* "$unpackDir/"
|
||||
rmdir "$unpackDir/$fn"
|
||||
fi
|
||||
|
||||
# Compute the hash.
|
||||
hash=$(nix-hash --type $hashType $hashFormat $unpackDir)
|
||||
if ! test -n "$QUIET"; then echo "hash is $hash" >&2; fi
|
||||
|
||||
# Add the downloaded file to the Nix store.
|
||||
finalPath=$(nix-store --add-fixed --recursive "$hashType" $unpackDir)
|
||||
|
||||
if test -n "$expHash" -a "$expHash" != "$hash"; then
|
||||
echo "hash mismatch for URL \`$url'"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! test -n "$QUIET"; then echo "path is $finalPath" >&2; fi
|
||||
|
||||
echo $hash
|
||||
|
||||
if test -n "$PRINT_PATH"; then
|
||||
echo $finalPath
|
||||
fi
|
|
@ -5,7 +5,6 @@ with lib;
|
|||
let
|
||||
cfg = {
|
||||
stable = grsecOptions.stable or false;
|
||||
vserver = grsecOptions.vserver or false;
|
||||
testing = grsecOptions.testing or false;
|
||||
config = {
|
||||
mode = "auto";
|
||||
|
@ -29,12 +28,11 @@ let
|
|||
};
|
||||
|
||||
test-patch = with pkgs.kernelPatches; grsecurity_unstable;
|
||||
stable-patch = with pkgs.kernelPatches;
|
||||
if cfg.vserver then grsecurity_vserver else grsecurity_stable;
|
||||
stable-patch = with pkgs.kernelPatches; grsecurity_stable;
|
||||
|
||||
grKernel = if (cfg.stable || cfg.vserver)
|
||||
then mkKernel pkgs.linux_3_2 stable-patch
|
||||
else mkKernel pkgs.linux_3_14 test-patch;
|
||||
grKernel = if cfg.stable
|
||||
then mkKernel pkgs.linux_3_14 stable-patch
|
||||
else mkKernel pkgs.linux_3_15 test-patch;
|
||||
|
||||
## -- grsecurity configuration ---------------------------------------------
|
||||
|
||||
|
|
|
@ -16,12 +16,6 @@ in
|
|||
linux_grsec_stable_server_xen =
|
||||
mkOpts "stable" "security" "server" "guest" "xen" true;
|
||||
|
||||
# Stable+vserver kernels - server versions only
|
||||
linux_grsec_vserver_server =
|
||||
mkOpts "vserver" "security" "server" "host" "kvm" true;
|
||||
linux_grsec_vserver_server_xen =
|
||||
mkOpts "vserver" "security" "server" "guest" "xen" true;
|
||||
|
||||
# Testing kernels
|
||||
linux_grsec_testing_desktop =
|
||||
mkOpts "testing" "performance" "desktop" "host" "kvm" true;
|
||||
|
@ -29,4 +23,4 @@ in
|
|||
mkOpts "testing" "security" "server" "host" "kvm" true;
|
||||
linux_grsec_testing_server_xen =
|
||||
mkOpts "testing" "security" "server" "guest" "xen" true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
{ stdenv, fetchurlGnome, pkgconfig, glib, popt, zlib, libcanberra
|
||||
, intltool, libbonobo, GConf, gnome_vfs, ORBit2, libtool}:
|
||||
, intltool, libbonobo, GConf, gnome_vfs, ORBit2, libtool, libogg
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = src.pkgname;
|
||||
|
@ -14,5 +15,5 @@ stdenv.mkDerivation rec {
|
|||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ popt zlib intltool GConf gnome_vfs libcanberra libtool ];
|
||||
propagatedBuildInputs = [ glib libbonobo ];
|
||||
propagatedBuildInputs = [ glib libbonobo libogg ];
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig, glib, itstool, libxml2, intltool, accountservice, libX11
|
||||
{ stdenv, fetchurl, pkgconfig, glib, itstool, libxml2, intltool, accountsservice, libX11
|
||||
, gtk, libcanberra_gtk3, pam, libtool, gobjectIntrospection }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "1rva3djas48m8w1gyv3nds3jxfkirdfl0bk30x79mizrk80456jl";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig glib itstool libxml2 intltool accountservice
|
||||
buildInputs = [ pkgconfig glib itstool libxml2 intltool accountsservice
|
||||
gobjectIntrospection libX11 gtk libcanberra_gtk3 pam libtool ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, makeWrapper
|
||||
, libcanberra, accountservice, libpwquality, pulseaudio, fontconfig
|
||||
, libcanberra, accountsservice, libpwquality, pulseaudio, fontconfig
|
||||
, gdk_pixbuf, hicolor_icon_theme, librsvg, libxkbfile, libnotify
|
||||
, libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk
|
||||
, cracklib, python, krb5, networkmanagerapplet, networkmanager
|
||||
|
@ -27,7 +27,7 @@ stdenv.mkDerivation rec {
|
|||
[ pkgconfig intltool ibus gtk glib upower libcanberra gsettings_desktop_schemas
|
||||
libxml2 gnome_desktop gnome_settings_daemon polkit libxslt libgtop gnome-menus
|
||||
gnome_online_accounts libsoup colord pulseaudio fontconfig colord-gtk libpwquality
|
||||
accountservice krb5 networkmanagerapplet libwacom samba libnotify libxkbfile
|
||||
accountsservice krb5 networkmanagerapplet libwacom samba libnotify libxkbfile
|
||||
shared_mime_info icu libtool docbook_xsl docbook_xsl_ns
|
||||
networkmanager modemmanager makeWrapper ];
|
||||
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
, python, libsoup, polkit, clutter, networkmanager, docbook_xsl, docbook_xsl_ns
|
||||
, libstartup_notification, telepathy_glib, telepathy_logger, libXtst, p11_kit, unzip
|
||||
, pulseaudio, libical, libtool, nss, gobjectIntrospection, gstreamer, makeWrapper
|
||||
, accountservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet, librsvg }:
|
||||
, accountsservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet, librsvg }:
|
||||
|
||||
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup
|
||||
|
||||
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
};
|
||||
|
||||
buildInputs = with gnome3;
|
||||
[ gsettings_desktop_schemas gnome_keyring gnome-menus glib gcr json_glib accountservice
|
||||
[ gsettings_desktop_schemas gnome_keyring gnome-menus glib gcr json_glib accountsservice
|
||||
libcroco intltool libsecret pkgconfig python libsoup polkit libcanberra gdk_pixbuf librsvg
|
||||
clutter networkmanager libstartup_notification telepathy_glib docbook_xsl docbook_xsl_ns
|
||||
libXtst p11_kit networkmanagerapplet gjs mutter pulseaudio caribou evolution_data_server
|
||||
|
@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
|
|||
wrapProgram "$out/bin/gnome-shell" \
|
||||
--prefix PATH : "${unzip}/bin" \
|
||||
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
|
||||
--prefix LD_LIBRARY_PATH : "${accountservice}/lib:${ibus}/lib:${gdm}/lib" \
|
||||
--prefix LD_LIBRARY_PATH : "${accountsservice}/lib:${ibus}/lib:${gdm}/lib" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "${gnome_themes_standard}/share:${gtk}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
|
||||
|
||||
|
|
|
@ -13,6 +13,6 @@ stdenv.mkDerivation rec {
|
|||
buildInputs = [ pkgconfig libxml2 glib ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = platforms.linux;
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig, glib, itstool, libxml2, intltool, accountservice, libX11
|
||||
{ stdenv, fetchurl, pkgconfig, glib, itstool, libxml2, intltool, accountsservice, libX11
|
||||
, gtk, libcanberra_gtk3, pam, libtool, gobjectIntrospection, dconf }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
|
|||
sha256 = "cc91fff5afd2a7c3e712c960a0b60744774167dcfc16f486372e1eb3c0aa1cc4";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig glib itstool libxml2 intltool accountservice dconf
|
||||
buildInputs = [ pkgconfig glib itstool libxml2 intltool accountsservice dconf
|
||||
gobjectIntrospection libX11 gtk libcanberra_gtk3 pam libtool ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
{ fetchurl, stdenv, pkgconfig, gnome3, ibus, intltool, upower, makeWrapper
|
||||
, libcanberra, accountservice, libpwquality, pulseaudio, fontconfig
|
||||
, libcanberra, accountsservice, libpwquality, pulseaudio, fontconfig
|
||||
, gdk_pixbuf, hicolor_icon_theme, librsvg, libxkbfile, libnotify
|
||||
, libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk
|
||||
, cracklib, python, krb5, networkmanagerapplet, networkmanager
|
||||
|
@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
|
|||
[ pkgconfig intltool ibus gtk glib upower libcanberra gsettings_desktop_schemas
|
||||
libxml2 gnome_desktop gnome_settings_daemon polkit libxslt libgtop gnome-menus
|
||||
gnome_online_accounts libsoup colord pulseaudio fontconfig colord-gtk libpwquality
|
||||
accountservice krb5 networkmanagerapplet libwacom samba libnotify libxkbfile
|
||||
accountsservice krb5 networkmanagerapplet libwacom samba libnotify libxkbfile
|
||||
shared_mime_info icu libtool docbook_xsl docbook_xsl_ns gnome3.grilo
|
||||
gdk_pixbuf gnome3.gnome_icon_theme librsvg clutter clutter_gtk
|
||||
hicolor_icon_theme gnome3.gnome_icon_theme_symbolic gnome3.vino
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
, python, libsoup, polkit, clutter, networkmanager, docbook_xsl, docbook_xsl_ns
|
||||
, libstartup_notification, telepathy_glib, telepathy_logger, libXtst, p11_kit, unzip
|
||||
, pulseaudio, libical, libtool, nss, gobjectIntrospection, gstreamer, makeWrapper
|
||||
, accountservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet, librsvg }:
|
||||
, accountsservice, gdk_pixbuf, gdm, upower, ibus, networkmanagerapplet, librsvg }:
|
||||
|
||||
# http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/gnome-base/gnome-shell/gnome-shell-3.10.2.1.ebuild?revision=1.3&view=markup
|
||||
|
||||
|
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
|||
};
|
||||
|
||||
buildInputs = with gnome3;
|
||||
[ gsettings_desktop_schemas gnome_keyring gnome-menus glib gcr json_glib accountservice
|
||||
[ gsettings_desktop_schemas gnome_keyring gnome-menus glib gcr json_glib accountsservice
|
||||
libcroco intltool libsecret pkgconfig python libsoup polkit libcanberra gdk_pixbuf librsvg
|
||||
clutter networkmanager libstartup_notification telepathy_glib docbook_xsl docbook_xsl_ns
|
||||
libXtst p11_kit networkmanagerapplet gjs mutter pulseaudio caribou evolution_data_server
|
||||
|
@ -33,7 +33,7 @@ stdenv.mkDerivation rec {
|
|||
wrapProgram "$out/bin/gnome-shell" \
|
||||
--prefix PATH : "${unzip}/bin" \
|
||||
--prefix GI_TYPELIB_PATH : "$GI_TYPELIB_PATH" \
|
||||
--prefix LD_LIBRARY_PATH : "${accountservice}/lib:${ibus}/lib:${gdm}/lib" \
|
||||
--prefix LD_LIBRARY_PATH : "${accountsservice}/lib:${ibus}/lib:${gdm}/lib" \
|
||||
--set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE" \
|
||||
--prefix XDG_DATA_DIRS : "${gnome_themes_standard}/share:$out/share:$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
|
||||
|
||||
|
|
|
@ -63,8 +63,13 @@ stdenv.mkDerivation {
|
|||
builder = ./builder.sh;
|
||||
|
||||
meta = {
|
||||
description = "Functional programming language based on Standard ML";
|
||||
longDescription = ''
|
||||
Alice ML is a functional programming language based on Standard ML,
|
||||
extended with rich support for concurrent, distributed, and constraint
|
||||
programming.
|
||||
'';
|
||||
homepage = http://www.ps.uni-saarland.de/alice/;
|
||||
description = "Alice ML is a functional programming language based on Standard ML, extended with rich support for concurrent, distributed, and constraint programming.";
|
||||
license = "BSD";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@ let
|
|||
revision = "5666.3"; # Apple's fork revision number.
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gcc-apple-${version}.${revision}";
|
||||
|
||||
builder = ./builder.sh;
|
||||
|
@ -33,8 +33,10 @@ stdenv.mkDerivation {
|
|||
|
||||
sourceRoot = "gcc-${revision}/";
|
||||
|
||||
# The floor_log2_patch is from a Gentoo fix for the same issue:
|
||||
# https://bugs.gentoo.org/attachment.cgi?id=363174&action=diff
|
||||
patches =
|
||||
[ ./pass-cxxcpp.patch ]
|
||||
[ ./pass-cxxcpp.patch ./floor_log2_patch.diff ]
|
||||
++ stdenv.lib.optional noSysDirs ./no-sys-dirs.patch
|
||||
++ stdenv.lib.optional langCC ./fix-libstdc++-link.patch;
|
||||
|
||||
|
|
|
@ -3,6 +3,9 @@ Prevent our libstdc++.dylib from having a runtime dependency on
|
|||
passed by g++ when it links libstdc++.dylib. Adding "-nostdlib" to
|
||||
the g++ invocation prevents this.
|
||||
|
||||
jww (2014-06-21): I've added several more patches to this, for building on
|
||||
Mavericks.
|
||||
|
||||
diff -ru -x '*~' libstdcxx-39-orig/libstdcxx/libstdc++-v3/src/Makefile.in libstdcxx-39/libstdcxx/libstdc++-v3/src/Makefile.in
|
||||
--- x/libstdcxx/libstdc++-v3/src/Makefile.in 2006-10-16 21:08:22.000000000 +0200
|
||||
+++ y/libstdcxx/libstdc++-v3/src/Makefile.in 2012-02-17 18:44:05.210570590 +0100
|
||||
|
@ -15,3 +18,54 @@ diff -ru -x '*~' libstdcxx-39-orig/libstdcxx/libstdc++-v3/src/Makefile.in libstd
|
|||
|
||||
|
||||
# Use special rules for the deprecated source files so that they find
|
||||
--- x/libstdcxx/libstdc++-v3/libsupc++/unwind-cxx.h
|
||||
+++ y/libstdcxx/libstdc++-v3/libsupc++/unwind-cxx.h
|
||||
@@ -38,7 +38,7 @@
|
||||
#include <typeinfo>
|
||||
#include <exception>
|
||||
#include <cstddef>
|
||||
-#include "unwind.h"
|
||||
+#include "unwind-generic.h"
|
||||
|
||||
#pragma GCC visibility push(default)
|
||||
|
||||
@@ -133,7 +133,7 @@ extern "C" void __cxa_bad_typeid ();
|
||||
// throws, and if bad_exception needs to be thrown. Called from the
|
||||
// compiler.
|
||||
extern "C" void __cxa_call_unexpected (void *) __attribute__((noreturn));
|
||||
-extern "C" void __cxa_call_terminate (void*) __attribute__((noreturn));
|
||||
+extern "C" void __cxa_call_terminate(_Unwind_Exception* ue_header);
|
||||
|
||||
#ifdef __ARM_EABI_UNWINDER__
|
||||
// Arm EABI specified routines.
|
||||
--- x/libstdcxx/libstdc++-v3/include/ext/bitmap_allocator.h
|
||||
+++ y/libstdcxx/libstdc++-v3/include/ext/bitmap_allocator.h
|
||||
@@ -549,6 +549,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
|
||||
*/
|
||||
class free_list
|
||||
{
|
||||
+ public:
|
||||
typedef size_t* value_type;
|
||||
typedef __detail::__mini_vector<value_type> vector_type;
|
||||
typedef vector_type::iterator iterator;
|
||||
--- x/libstdcxx/libstdc++-v3/include/ext/ropeimpl.h
|
||||
+++ y/libstdcxx/libstdc++-v3/include/ext/ropeimpl.h
|
||||
@@ -433,7 +433,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
|
||||
{
|
||||
size_t __old_len = __r->_M_size;
|
||||
_CharT* __new_data = (_CharT*)
|
||||
- _Data_allocate(_S_rounded_up_size(__old_len + __len));
|
||||
+ _Base::_Data_allocate(_S_rounded_up_size(__old_len + __len));
|
||||
_RopeLeaf* __result;
|
||||
|
||||
uninitialized_copy_n(__r->_M_data, __old_len, __new_data);
|
||||
@@ -817,7 +817,7 @@ _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx)
|
||||
if (__result_len > __lazy_threshold)
|
||||
goto lazy;
|
||||
__section = (_CharT*)
|
||||
- _Data_allocate(_S_rounded_up_size(__result_len));
|
||||
+ _Base::_Data_allocate(_S_rounded_up_size(__result_len));
|
||||
try
|
||||
{ (*(__f->_M_fn))(__start, __result_len, __section); }
|
||||
catch(...)
|
||||
|
||||
|
|
|
@ -0,0 +1,62 @@
|
|||
--- gcc-5666.3/gcc/toplev.h
|
||||
+++ gcc-5666.3/gcc/toplev.h
|
||||
@@ -151,6 +151,8 @@
|
||||
/* Return true iff flags are set as if -ffast-math. */
|
||||
extern bool fast_math_flags_set_p (void);
|
||||
|
||||
+#if GCC_VERSION < 3004
|
||||
+
|
||||
/* Return log2, or -1 if not exact. */
|
||||
extern int exact_log2 (unsigned HOST_WIDE_INT);
|
||||
|
||||
@@ -158,7 +160,7 @@
|
||||
extern int floor_log2 (unsigned HOST_WIDE_INT);
|
||||
|
||||
/* Inline versions of the above for speed. */
|
||||
-#if GCC_VERSION >= 3004
|
||||
+#else /* GCC_VERSION < 3004 */
|
||||
# if HOST_BITS_PER_WIDE_INT == HOST_BITS_PER_LONG
|
||||
# define CLZ_HWI __builtin_clzl
|
||||
# define CTZ_HWI __builtin_ctzl
|
||||
@@ -172,18 +172,18 @@
|
||||
# define CTZ_HWI __builtin_ctz
|
||||
# endif
|
||||
|
||||
-extern inline int
|
||||
+static inline int
|
||||
floor_log2 (unsigned HOST_WIDE_INT x)
|
||||
{
|
||||
return x ? HOST_BITS_PER_WIDE_INT - 1 - (int) CLZ_HWI (x) : -1;
|
||||
}
|
||||
|
||||
-extern inline int
|
||||
+static inline int
|
||||
exact_log2 (unsigned HOST_WIDE_INT x)
|
||||
{
|
||||
return x == (x & -x) && x ? (int) CTZ_HWI (x) : -1;
|
||||
}
|
||||
-#endif /* GCC_VERSION >= 3004 */
|
||||
+#endif /* GCC_VERSION < 3004 */
|
||||
|
||||
/* Functions used to get and set GCC's notion of in what directory
|
||||
compilation was started. */
|
||||
--- gcc-5666.3/gcc/toplev.c
|
||||
+++ gcc-5666.3/gcc/toplev.c
|
||||
@@ -555,7 +555,7 @@
|
||||
for floor_log2 and exact_log2; see toplev.h. That construct, however,
|
||||
conflicts with the ISO C++ One Definition Rule. */
|
||||
|
||||
-#if GCC_VERSION < 3004 || !defined (__cplusplus)
|
||||
+#if GCC_VERSION < 3004
|
||||
|
||||
/* Given X, an unsigned number, return the largest int Y such that 2**Y <= X.
|
||||
If X is 0, return -1. */
|
||||
@@ -607,7 +607,7 @@
|
||||
#endif
|
||||
}
|
||||
|
||||
-#endif /* GCC_VERSION < 3004 || !defined (__cplusplus) */
|
||||
+#endif /* GCC_VERSION < 3004 */
|
||||
|
||||
/* Handler for fatal signals, such as SIGSEGV. These are transformed
|
||||
into ICE messages, which is much more user friendly. In case the
|
94
pkgs/development/compilers/go/1.3.nix
Normal file
94
pkgs/development/compilers/go/1.3.nix
Normal file
|
@ -0,0 +1,94 @@
|
|||
{ stdenv, lib, fetchurl, bison, glibc, bash, coreutils, makeWrapper, tzdata, iana_etc }:
|
||||
|
||||
let
|
||||
loader386 = "${glibc}/lib/ld-linux.so.2";
|
||||
loaderAmd64 = "${glibc}/lib/ld-linux-x86-64.so.2";
|
||||
loaderArm = "${glibc}/lib/ld-linux.so.3";
|
||||
in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "go-1.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = https://storage.googleapis.com/golang/go1.3.src.tar.gz;
|
||||
sha256 = "10jkqgzlinzynciw3wr15c7n2vw5q4d2ni65hbs3i61bbdn3x67b";
|
||||
};
|
||||
|
||||
buildInputs = [ bison bash makeWrapper ] ++ lib.optionals stdenv.isLinux [ glibc ] ;
|
||||
|
||||
# I'm not sure what go wants from its 'src', but the go installation manual
|
||||
# describes an installation keeping the src.
|
||||
preUnpack = ''
|
||||
mkdir -p $out/share
|
||||
cd $out/share
|
||||
'';
|
||||
|
||||
prePatch = ''
|
||||
# Ensure that the source directory is named go
|
||||
cd ..
|
||||
if [ ! -d go ]; then
|
||||
mv * go
|
||||
fi
|
||||
cd go
|
||||
patchShebangs ./ # replace /bin/bash
|
||||
|
||||
# Disabling the 'os/http/net' tests (they want files not available in
|
||||
# chroot builds)
|
||||
rm src/pkg/net/{multicast_test.go,parse_test.go,port_test.go}
|
||||
# !!! substituteInPlace does not seems to be effective.
|
||||
# The os test wants to read files in an existing path. Just don't let it be /usr/bin.
|
||||
sed -i 's,/usr/bin,'"`pwd`", src/pkg/os/os_test.go
|
||||
sed -i 's,/bin/pwd,'"`type -P pwd`", src/pkg/os/os_test.go
|
||||
# Disable the unix socket test
|
||||
sed -i '/TestShutdownUnix/areturn' src/pkg/net/net_test.go
|
||||
# Disable the hostname test
|
||||
sed -i '/TestHostname/areturn' src/pkg/os/os_test.go
|
||||
sed -i 's,/etc/protocols,${iana_etc}/etc/protocols,' src/pkg/net/lookup_unix.go
|
||||
'' + lib.optionalString stdenv.isLinux ''
|
||||
sed -i 's,/usr/share/zoneinfo/,${tzdata}/share/zoneinfo/,' src/pkg/time/zoneinfo_unix.go
|
||||
sed -i 's,/lib/ld-linux.so.3,${loaderArm},' src/cmd/5l/asm.c
|
||||
sed -i 's,/lib64/ld-linux-x86-64.so.2,${loaderAmd64},' src/cmd/6l/asm.c
|
||||
sed -i 's,/lib/ld-linux.so.2,${loader386},' src/cmd/8l/asm.c
|
||||
'';
|
||||
|
||||
patches = [ ./cacert-1.2.patch ];
|
||||
|
||||
GOOS = if stdenv.isDarwin then "darwin" else "linux";
|
||||
GOARCH = if stdenv.isDarwin then "amd64"
|
||||
else if stdenv.system == "i686-linux" then "386"
|
||||
else if stdenv.system == "x86_64-linux" then "amd64"
|
||||
else if stdenv.system == "armv5tel-linux" then "arm"
|
||||
else throw "Unsupported system";
|
||||
GOARM = stdenv.lib.optionalString (stdenv.system == "armv5tel-linux") "5";
|
||||
GO386 = 387; # from Arch: don't assume sse2 on i686
|
||||
CGO_ENABLED = 1;
|
||||
|
||||
installPhase = ''
|
||||
export CC=cc
|
||||
|
||||
# http://lists.science.uu.nl/pipermail/nix-dev/2013-October/011891.html
|
||||
# Fix for "libgcc_s.so.1 must be installed for pthread_cancel to work"
|
||||
# during tests:
|
||||
export LD_LIBRARY_PATH="$(dirname $(echo ${stdenv.gcc.gcc}/lib*/libgcc_s.so))"
|
||||
|
||||
mkdir -p "$out/bin"
|
||||
export GOROOT="$(pwd)/"
|
||||
export GOBIN="$out/bin"
|
||||
export PATH="$GOBIN:$PATH"
|
||||
cd ./src
|
||||
./all.bash
|
||||
cd -
|
||||
|
||||
# Copy the emacs configuration for Go files.
|
||||
mkdir -p "$out/share/emacs/site-lisp"
|
||||
cp ./misc/emacs/* $out/share/emacs/site-lisp/
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = http://golang.org/;
|
||||
description = "The Go Programming language";
|
||||
license = "BSD";
|
||||
maintainers = with stdenv.lib.maintainers; [ cstrahan ];
|
||||
platforms = stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
|
||||
};
|
||||
}
|
54
pkgs/development/compilers/go/gox.nix
Normal file
54
pkgs/development/compilers/go/gox.nix
Normal file
|
@ -0,0 +1,54 @@
|
|||
{ stdenv, lib, go, fetchFromGitHub }:
|
||||
|
||||
let
|
||||
goDeps = [
|
||||
{
|
||||
root = "github.com/mitchellh/gox";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mitchellh";
|
||||
repo = "gox";
|
||||
rev = "c7329055e2aeb253a947e5cc876586ff4ca19199";
|
||||
sha256 = "0zhb88jjxqn3sdc4bpzvajqvgi9igp5gk03q12gaksaxhy2wl4jy";
|
||||
};
|
||||
}
|
||||
{
|
||||
root = "github.com/mitchellh/iochan";
|
||||
src = fetchFromGitHub {
|
||||
owner = "mitchellh";
|
||||
repo = "iochan";
|
||||
rev = "b584a329b193e206025682ae6c10cdbe03b0cd77";
|
||||
sha256 = "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b";
|
||||
};
|
||||
}
|
||||
];
|
||||
sources = stdenv.mkDerivation rec {
|
||||
name = "go-deps";
|
||||
buildCommand =
|
||||
lib.concatStrings
|
||||
(map (dep: ''
|
||||
mkdir -p $out/src/`dirname ${dep.root}`
|
||||
ln -s ${dep.src} $out/src/${dep.root}
|
||||
'') goDeps);
|
||||
};
|
||||
in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gox";
|
||||
|
||||
src = sources;
|
||||
|
||||
propagatedBuildInputs = [ go ];
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
export GOPATH=$src
|
||||
go build -v -o $out/bin/gox github.com/mitchellh/gox
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "A simple, no-frills tool for Go cross compilation that behaves a lot like standard go build";
|
||||
homepage = https://github.com/mitchellh/gox;
|
||||
maintainers = with maintainers; [ cstrahan ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
31
pkgs/development/compilers/sbcl/bootstrap.nix
Normal file
31
pkgs/development/compilers/sbcl/bootstrap.nix
Normal file
|
@ -0,0 +1,31 @@
|
|||
{ stdenv, fetchurl }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "sbcl-bootstrap-${version}";
|
||||
version = "1.1.8";
|
||||
|
||||
src = if stdenv.isDarwin
|
||||
then fetchurl {
|
||||
url = mirror://sourceforge/project/sbcl/sbcl/1.1.8/sbcl-1.1.8-x86-64-darwin-binary.tar.bz2;
|
||||
sha256 = "006pr88053wclvbjfjdypnbiw8wymbzdzi7a6kbkpdfn4zf5943j";
|
||||
}
|
||||
else fetchurl {
|
||||
url = mirror://sourceforge/project/sbcl/sbcl/1.1.8/sbcl-1.1.8-x86-64-linux-binary.tar.bz2;
|
||||
sha256 = "0lh1jglxlfwk4cm6sgwk1jnb6ikhbrkx7p5aha2nbmkd6zl96prx";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
ensureDir $out/bin
|
||||
cp -p src/runtime/sbcl $out/bin
|
||||
ensureDir $out/share/sbcl
|
||||
cp -p output/sbcl.core $out/share/sbcl
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "Lisp compiler";
|
||||
homepage = "http://www.sbcl.org";
|
||||
license = "bsd";
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
};
|
||||
}
|
|
@ -1,36 +1,18 @@
|
|||
a :
|
||||
let
|
||||
fetchurl = a.fetchurl;
|
||||
s= # Generated upstream information
|
||||
rec {
|
||||
baseName="sbcl";
|
||||
version="1.2.0";
|
||||
name="${baseName}-${version}";
|
||||
hash="13k20sys1v4lvgis8cnbczww6zs93rw176vz07g4jx06418k53x2";
|
||||
url="mirror://sourceforge/project/sbcl/sbcl/1.2.0/sbcl-1.2.0-source.tar.bz2";
|
||||
sha256="13k20sys1v4lvgis8cnbczww6zs93rw176vz07g4jx06418k53x2";
|
||||
{ stdenv, fetchurl, sbclBootstrap, clisp}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "sbcl-${version}";
|
||||
version = "1.2.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://sourceforge/project/sbcl/sbcl/1.2.0/sbcl-1.2.0-source.tar.bz2;
|
||||
sha256 = "13k20sys1v4lvgis8cnbczww6zs93rw176vz07g4jx06418k53x2";
|
||||
};
|
||||
buildInputs = with a; [
|
||||
clisp makeWrapper
|
||||
];
|
||||
in
|
||||
rec {
|
||||
src = a.fetchUrlFromSrcInfo s;
|
||||
|
||||
inherit buildInputs;
|
||||
configureFlags = [];
|
||||
buildInputs = [ sbclBootstrap ] ++ stdenv.lib.optional stdenv.isLinux clisp;
|
||||
|
||||
/* doConfigure should be removed if not needed */
|
||||
phaseNames = ["setVars" "doFixNewer" "doFixTests" "setVersion" "doPatch" "doBuild" "doInstall" "doWrap"];
|
||||
|
||||
setVars = a.fullDepEntry (''
|
||||
export INSTALL_ROOT=$out
|
||||
mkdir test-home
|
||||
export HOME=$PWD/test-home
|
||||
'') ["minInit"];
|
||||
|
||||
setVersion = a.fullDepEntry (''
|
||||
echo '"${s.version}.nixos"' > version.lisp-expr
|
||||
patchPhase = ''
|
||||
echo '"${version}.nixos"' > version.lisp-expr
|
||||
echo "
|
||||
(lambda (features)
|
||||
(flet ((enable (x)
|
||||
|
@ -38,14 +20,11 @@ rec {
|
|||
(disable (x)
|
||||
(setf features (remove x features))))
|
||||
(enable :sb-thread))) " > customize-target-features.lisp
|
||||
'') ["minInit" "doUnpack"];
|
||||
|
||||
/* SBCL checks whether files are up-to-date in many places.. Unfortunately, same timestamp
|
||||
is not good enought
|
||||
*/
|
||||
doFixNewer = a.fullDepEntry(''
|
||||
pwd
|
||||
|
||||
# SBCL checks whether files are up-to-date in many places..
|
||||
# Unfortunately, same timestamp is not good enough
|
||||
sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp
|
||||
sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp
|
||||
sed -i src/cold/slam.lisp -e \
|
||||
|
@ -56,13 +35,8 @@ rec {
|
|||
'/date defaulted-fasl/a)'
|
||||
sed -i src/code/target-load.lisp -e \
|
||||
'/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))'
|
||||
'') ["minInit" "doUnpack"];
|
||||
|
||||
doWrap = a.fullDepEntry (''
|
||||
wrapProgram "$out/bin/sbcl" --set "SBCL_HOME" "$out/lib/sbcl"
|
||||
'') ["minInit" "addInputs"];
|
||||
|
||||
doFixTests = a.fullDepEntry (''
|
||||
# Fix the tests
|
||||
sed -e '/deftest pwent/inil' -i contrib/sb-posix/posix-tests.lisp
|
||||
sed -e '/deftest grent/inil' -i contrib/sb-posix/posix-tests.lisp
|
||||
sed -e '/deftest .*ent.non-existing/,+5d' -i contrib/sb-posix/posix-tests.lisp
|
||||
|
@ -70,24 +44,31 @@ rec {
|
|||
|
||||
sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp
|
||||
sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp
|
||||
'') ["minInit" "doUnpack"];
|
||||
'';
|
||||
|
||||
doBuild = a.fullDepEntry (''
|
||||
sh make.sh clisp
|
||||
'') ["minInit" "doUnpack" "addInputs"];
|
||||
preBuild = ''
|
||||
export INSTALL_ROOT=$out
|
||||
ensureDir test-home
|
||||
export HOME=$PWD/test-home
|
||||
'';
|
||||
|
||||
doInstall = a.fullDepEntry (''
|
||||
sh install.sh
|
||||
'') ["doBuild" "minInit" "addInputs"];
|
||||
buildPhase = if stdenv.isLinux
|
||||
then ''
|
||||
sh make.sh clisp --prefix=$out
|
||||
''
|
||||
else ''
|
||||
sh make.sh --prefix=$out --xc-host='${sbclBootstrap}/bin/sbcl --core ${sbclBootstrap}/share/sbcl/sbcl.core --disable-debugger --no-userinit --no-sysinit'
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
INSTALL_ROOT=$out sh install.sh
|
||||
'';
|
||||
|
||||
inherit(s) name;
|
||||
inherit(s) version;
|
||||
meta = {
|
||||
description = "Lisp compiler";
|
||||
homepage = "http://www.sbcl.org";
|
||||
license = "bsd";
|
||||
maintainers = [a.lib.maintainers.raskin];
|
||||
platforms = with a.lib.platforms; all;
|
||||
inherit(s) version;
|
||||
homepage = http://www.sbcl.org;
|
||||
license = stdenv.lib.licenses.bsd3;
|
||||
maintainers = [stdenv.lib.maintainers.raskin];
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
};
|
||||
}
|
||||
|
|
11
pkgs/development/interpreters/perl/5.20/cpp-precomp.patch
Normal file
11
pkgs/development/interpreters/perl/5.20/cpp-precomp.patch
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- a/hints/darwin.sh 2013-05-08 11:13:45.000000000 -0600
|
||||
+++ b/hints/darwin.sh 2013-05-08 11:15:04.000000000 -0600
|
||||
@@ -129,7 +129,7 @@
|
||||
|
||||
# Avoid Apple's cpp precompiler, better for extensions
|
||||
if [ "X`echo | ${cc} -no-cpp-precomp -E - 2>&1 >/dev/null`" = "X" ]; then
|
||||
- cppflags="${cppflags} -no-cpp-precomp"
|
||||
+ #cppflags="${cppflags} -no-cpp-precomp"
|
||||
|
||||
# This is necessary because perl's build system doesn't
|
||||
# apply cppflags to cc compile lines as it should.
|
68
pkgs/development/interpreters/perl/5.20/default.nix
Normal file
68
pkgs/development/interpreters/perl/5.20/default.nix
Normal file
|
@ -0,0 +1,68 @@
|
|||
{ stdenv, fetchurl }:
|
||||
|
||||
let
|
||||
|
||||
libc = if stdenv.gcc.libc or null != null then stdenv.gcc.libc else "/usr";
|
||||
|
||||
in
|
||||
|
||||
with {
|
||||
inherit (stdenv.lib) optional optionalString;
|
||||
};
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "perl-5.20.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://cpan/src/${name}.tar.gz";
|
||||
sha256 = "00ndpgw4bjing9gy2y6jvs3q46mv2ll6zrxjkhpr12fcdsnji32f";
|
||||
};
|
||||
|
||||
patches =
|
||||
[ # Do not look in /usr etc. for dependencies.
|
||||
./no-sys-dirs.patch
|
||||
]
|
||||
++ optional stdenv.isSunOS ./ld-shared.patch
|
||||
++ stdenv.lib.optional stdenv.isDarwin [ ./cpp-precomp.patch ./no-libutil.patch ] ;
|
||||
|
||||
# Build a thread-safe Perl with a dynamic libperls.o. We need the
|
||||
# "installstyle" option to ensure that modules are put under
|
||||
# $out/lib/perl5 - this is the general default, but because $out
|
||||
# contains the string "perl", Configure would select $out/lib.
|
||||
# Miniperl needs -lm. perl needs -lrt.
|
||||
configureFlags =
|
||||
[ "-de"
|
||||
"-Dcc=gcc"
|
||||
"-Uinstallusrbinperl"
|
||||
"-Dinstallstyle=lib/perl5"
|
||||
"-Duseshrplib"
|
||||
"-Dlocincpth=${libc}/include"
|
||||
"-Dloclibpth=${libc}/lib"
|
||||
]
|
||||
++ optional (stdenv ? glibc) "-Dusethreads";
|
||||
|
||||
configureScript = "${stdenv.shell} ./Configure";
|
||||
|
||||
dontAddPrefix = true;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
preConfigure =
|
||||
''
|
||||
configureFlags="$configureFlags -Dprefix=$out -Dman1dir=$out/share/man/man1 -Dman3dir=$out/share/man/man3"
|
||||
|
||||
${optionalString stdenv.isArm ''
|
||||
configureFlagsArray=(-Dldflags="-lm -lrt")
|
||||
''}
|
||||
'';
|
||||
|
||||
preBuild = optionalString (!(stdenv ? gcc && stdenv.gcc.nativeTools))
|
||||
''
|
||||
# Make Cwd work on NixOS (where we don't have a /bin/pwd).
|
||||
substituteInPlace dist/PathTools/Cwd.pm --replace "'/bin/pwd'" "'$(type -tP pwd)'"
|
||||
'';
|
||||
|
||||
setupHook = ./setup-hook.sh;
|
||||
|
||||
passthru.libPrefix = "lib/perl5/site_perl";
|
||||
}
|
11
pkgs/development/interpreters/perl/5.20/ld-shared.patch
Normal file
11
pkgs/development/interpreters/perl/5.20/ld-shared.patch
Normal file
|
@ -0,0 +1,11 @@
|
|||
--- perl-5.16.2/hints/solaris_2.sh.orig 2013-02-14 19:29:49.453988140 +0000
|
||||
+++ perl-5.16.2/hints/solaris_2.sh 2013-02-14 19:30:31.681631019 +0000
|
||||
@@ -568,7 +568,7 @@
|
||||
# ccflags="$ccflags -Wa,`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`"
|
||||
# fi
|
||||
ldflags="$ldflags -m64"
|
||||
- lddlflags="$lddlflags -G -m64"
|
||||
+ lddlflags="$lddlflags -shared -m64"
|
||||
;;
|
||||
*)
|
||||
getconfccflags="`getconf XBS5_LP64_OFF64_CFLAGS 2>/dev/null`"
|
12
pkgs/development/interpreters/perl/5.20/no-libutil.patch
Normal file
12
pkgs/development/interpreters/perl/5.20/no-libutil.patch
Normal file
|
@ -0,0 +1,12 @@
|
|||
diff -ru -x '*~' perl-5.14.2-orig/Configure perl-5.14.2/Configure
|
||||
--- perl-5.14.2-orig/Configure 2011-09-26 11:44:34.000000000 +0200
|
||||
+++ perl-5.14.2/Configure 2012-02-16 17:24:50.779839039 +0100
|
||||
@@ -1368,7 +1368,7 @@
|
||||
: List of libraries we want.
|
||||
: If anyone needs extra -lxxx, put those in a hint file.
|
||||
libswanted="socket bind inet nsl nm ndbm gdbm dbm db malloc dl ld sun"
|
||||
-libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
|
||||
+libswanted="$libswanted m crypt sec c cposix posix ucb bsd BSD"
|
||||
: We probably want to search /usr/shlib before most other libraries.
|
||||
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
|
||||
glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
|
250
pkgs/development/interpreters/perl/5.20/no-sys-dirs.patch
Normal file
250
pkgs/development/interpreters/perl/5.20/no-sys-dirs.patch
Normal file
|
@ -0,0 +1,250 @@
|
|||
diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/Configure perl-5.20.0/Configure
|
||||
--- perl-5.20.0-orig/Configure 2014-05-26 15:34:18.000000000 +0200
|
||||
+++ perl-5.20.0/Configure 2014-06-25 10:43:35.368285986 +0200
|
||||
@@ -106,15 +106,7 @@
|
||||
fi
|
||||
|
||||
: Proper PATH setting
|
||||
-paths='/bin /usr/bin /usr/local/bin /usr/ucb /usr/local /usr/lbin'
|
||||
-paths="$paths /opt/bin /opt/local/bin /opt/local /opt/lbin"
|
||||
-paths="$paths /usr/5bin /etc /usr/gnu/bin /usr/new /usr/new/bin /usr/nbin"
|
||||
-paths="$paths /opt/gnu/bin /opt/new /opt/new/bin /opt/nbin"
|
||||
-paths="$paths /sys5.3/bin /sys5.3/usr/bin /bsd4.3/bin /bsd4.3/usr/ucb"
|
||||
-paths="$paths /bsd4.3/usr/bin /usr/bsd /bsd43/bin /opt/ansic/bin /usr/ccs/bin"
|
||||
-paths="$paths /etc /usr/lib /usr/ucblib /lib /usr/ccs/lib"
|
||||
-paths="$paths /sbin /usr/sbin /usr/libexec"
|
||||
-paths="$paths /system/gnu_library/bin"
|
||||
+paths=''
|
||||
|
||||
for p in $paths
|
||||
do
|
||||
@@ -1337,8 +1329,7 @@
|
||||
archname=''
|
||||
: Possible local include directories to search.
|
||||
: Set locincpth to "" in a hint file to defeat local include searches.
|
||||
-locincpth="/usr/local/include /opt/local/include /usr/gnu/include"
|
||||
-locincpth="$locincpth /opt/gnu/include /usr/GNU/include /opt/GNU/include"
|
||||
+locincpth=""
|
||||
:
|
||||
: no include file wanted by default
|
||||
inclwanted=''
|
||||
@@ -1349,17 +1340,12 @@
|
||||
|
||||
libnames=''
|
||||
: change the next line if compiling for Xenix/286 on Xenix/386
|
||||
-xlibpth='/usr/lib/386 /lib/386'
|
||||
+xlibpth=''
|
||||
: Possible local library directories to search.
|
||||
-loclibpth="/usr/local/lib /opt/local/lib /usr/gnu/lib"
|
||||
-loclibpth="$loclibpth /opt/gnu/lib /usr/GNU/lib /opt/GNU/lib"
|
||||
+loclibpth=""
|
||||
|
||||
: general looking path for locating libraries
|
||||
-glibpth="/lib /usr/lib $xlibpth"
|
||||
-glibpth="$glibpth /usr/ccs/lib /usr/ucblib /usr/local/lib"
|
||||
-test -f /usr/shlib/libc.so && glibpth="/usr/shlib $glibpth"
|
||||
-test -f /shlib/libc.so && glibpth="/shlib $glibpth"
|
||||
-test -d /usr/lib64 && glibpth="$glibpth /lib64 /usr/lib64 /usr/local/lib64"
|
||||
+glibpth=""
|
||||
|
||||
: Private path used by Configure to find libraries. Its value
|
||||
: is prepended to libpth. This variable takes care of special
|
||||
@@ -1391,8 +1377,6 @@
|
||||
libswanted="$libswanted m crypt sec util c cposix posix ucb bsd BSD"
|
||||
: We probably want to search /usr/shlib before most other libraries.
|
||||
: This is only used by the lib/ExtUtils/MakeMaker.pm routine extliblist.
|
||||
-glibpth=`echo " $glibpth " | sed -e 's! /usr/shlib ! !'`
|
||||
-glibpth="/usr/shlib $glibpth"
|
||||
: Do not use vfork unless overridden by a hint file.
|
||||
usevfork=false
|
||||
|
||||
@@ -2446,7 +2430,6 @@
|
||||
zip
|
||||
"
|
||||
pth=`echo $PATH | sed -e "s/$p_/ /g"`
|
||||
-pth="$pth $sysroot/lib $sysroot/usr/lib"
|
||||
for file in $loclist; do
|
||||
eval xxx=\$$file
|
||||
case "$xxx" in
|
||||
@@ -4936,7 +4919,7 @@
|
||||
: Set private lib path
|
||||
case "$plibpth" in
|
||||
'') if ./mips; then
|
||||
- plibpth="$incpath/usr/lib $sysroot/usr/local/lib $sysroot/usr/ccs/lib"
|
||||
+ plibpth="$incpath/usr/lib"
|
||||
fi;;
|
||||
esac
|
||||
case "$libpth" in
|
||||
@@ -8600,13 +8583,8 @@
|
||||
echo " "
|
||||
case "$sysman" in
|
||||
'')
|
||||
- syspath='/usr/share/man/man1 /usr/man/man1'
|
||||
- syspath="$syspath /usr/man/mann /usr/man/manl /usr/man/local/man1"
|
||||
- syspath="$syspath /usr/man/u_man/man1"
|
||||
- syspath="$syspath /usr/catman/u_man/man1 /usr/man/l_man/man1"
|
||||
- syspath="$syspath /usr/local/man/u_man/man1 /usr/local/man/l_man/man1"
|
||||
- syspath="$syspath /usr/man/man.L /local/man/man1 /usr/local/man/man1"
|
||||
- sysman=`./loc . /usr/man/man1 $syspath`
|
||||
+ syspath=''
|
||||
+ sysman=''
|
||||
;;
|
||||
esac
|
||||
if $test -d "$sysman"; then
|
||||
@@ -19900,9 +19878,10 @@
|
||||
case "$full_ar" in
|
||||
'') full_ar=$ar ;;
|
||||
esac
|
||||
+full_ar=ar
|
||||
|
||||
: Store the full pathname to the sed program for use in the C program
|
||||
-full_sed=$sed
|
||||
+full_sed=sed
|
||||
|
||||
: see what type gids are declared as in the kernel
|
||||
echo " "
|
||||
Only in perl-5.20.0/: Configure.orig
|
||||
diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/ext/Errno/Errno_pm.PL perl-5.20.0/ext/Errno/Errno_pm.PL
|
||||
--- perl-5.20.0-orig/ext/Errno/Errno_pm.PL 2014-05-26 15:34:20.000000000 +0200
|
||||
+++ perl-5.20.0/ext/Errno/Errno_pm.PL 2014-06-25 10:31:24.317970047 +0200
|
||||
@@ -126,11 +126,7 @@
|
||||
if ($dep =~ /(\S+errno\.h)/) {
|
||||
$file{$1} = 1;
|
||||
}
|
||||
- } elsif ($^O eq 'linux' &&
|
||||
- $Config{gccversion} ne '' &&
|
||||
- $Config{gccversion} !~ /intel/i
|
||||
- # might be using, say, Intel's icc
|
||||
- ) {
|
||||
+ } elsif (0) {
|
||||
# When cross-compiling we may store a path for gcc's "sysroot" option:
|
||||
my $sysroot = $Config{sysroot} || '';
|
||||
# Some Linuxes have weird errno.hs which generate
|
||||
Only in perl-5.20.0/ext/Errno: Errno_pm.PL.orig
|
||||
diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/freebsd.sh perl-5.20.0/hints/freebsd.sh
|
||||
--- perl-5.20.0-orig/hints/freebsd.sh 2014-01-31 22:55:51.000000000 +0100
|
||||
+++ perl-5.20.0/hints/freebsd.sh 2014-06-25 10:25:53.263964680 +0200
|
||||
@@ -119,21 +119,21 @@
|
||||
objformat=`/usr/bin/objformat`
|
||||
if [ x$objformat = xaout ]; then
|
||||
if [ -e /usr/lib/aout ]; then
|
||||
- libpth="/usr/lib/aout /usr/local/lib /usr/lib"
|
||||
- glibpth="/usr/lib/aout /usr/local/lib /usr/lib"
|
||||
+ libpth=""
|
||||
+ glibpth=""
|
||||
fi
|
||||
lddlflags='-Bshareable'
|
||||
else
|
||||
- libpth="/usr/lib /usr/local/lib"
|
||||
- glibpth="/usr/lib /usr/local/lib"
|
||||
+ libpth=""
|
||||
+ glibpth=""
|
||||
ldflags="-Wl,-E "
|
||||
lddlflags="-shared "
|
||||
fi
|
||||
cccdlflags='-DPIC -fPIC'
|
||||
;;
|
||||
*)
|
||||
- libpth="/usr/lib /usr/local/lib"
|
||||
- glibpth="/usr/lib /usr/local/lib"
|
||||
+ libpth=""
|
||||
+ glibpth=""
|
||||
ldflags="-Wl,-E "
|
||||
lddlflags="-shared "
|
||||
cccdlflags='-DPIC -fPIC'
|
||||
diff -ru -x '*~' -x '*.rej' perl-5.20.0-orig/hints/linux.sh perl-5.20.0/hints/linux.sh
|
||||
--- perl-5.20.0-orig/hints/linux.sh 2014-05-26 15:34:20.000000000 +0200
|
||||
+++ perl-5.20.0/hints/linux.sh 2014-06-25 10:33:47.354883843 +0200
|
||||
@@ -150,25 +150,6 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
-# Ubuntu 11.04 (and later, presumably) doesn't keep most libraries
|
||||
-# (such as -lm) in /lib or /usr/lib. So we have to ask gcc to tell us
|
||||
-# where to look. We don't want gcc's own libraries, however, so we
|
||||
-# filter those out.
|
||||
-# This could be conditional on Unbuntu, but other distributions may
|
||||
-# follow suit, and this scheme seems to work even on rather old gcc's.
|
||||
-# This unconditionally uses gcc because even if the user is using another
|
||||
-# compiler, we still need to find the math library and friends, and I don't
|
||||
-# know how other compilers will cope with that situation.
|
||||
-# Morever, if the user has their own gcc earlier in $PATH than the system gcc,
|
||||
-# we don't want its libraries. So we try to prefer the system gcc
|
||||
-# Still, as an escape hatch, allow Configure command line overrides to
|
||||
-# plibpth to bypass this check.
|
||||
-if [ -x /usr/bin/gcc ] ; then
|
||||
- gcc=/usr/bin/gcc
|
||||
-else
|
||||
- gcc=gcc
|
||||
-fi
|
||||
-
|
||||
case "$plibpth" in
|
||||
'') plibpth=`LANG=C LC_ALL=C $gcc $ccflags $ldflags -print-search-dirs | grep libraries |
|
||||
cut -f2- -d= | tr ':' $trnl | grep -v 'gcc' | sed -e 's:/$::'`
|
||||
@@ -178,32 +159,6 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
-case "$libc" in
|
||||
-'')
|
||||
-# If you have glibc, then report the version for ./myconfig bug reporting.
|
||||
-# (Configure doesn't need to know the specific version since it just uses
|
||||
-# gcc to load the library for all tests.)
|
||||
-# We don't use __GLIBC__ and __GLIBC_MINOR__ because they
|
||||
-# are insufficiently precise to distinguish things like
|
||||
-# libc-2.0.6 and libc-2.0.7.
|
||||
- for p in $plibpth
|
||||
- do
|
||||
- for trylib in libc.so.6 libc.so
|
||||
- do
|
||||
- if $test -e $p/$trylib; then
|
||||
- libc=`ls -l $p/$trylib | awk '{print $NF}'`
|
||||
- if $test "X$libc" != X; then
|
||||
- break
|
||||
- fi
|
||||
- fi
|
||||
- done
|
||||
- if $test "X$libc" != X; then
|
||||
- break
|
||||
- fi
|
||||
- done
|
||||
- ;;
|
||||
-esac
|
||||
-
|
||||
# Are we using ELF? Thanks to Kenneth Albanowski <kjahds@kjahds.com>
|
||||
# for this test.
|
||||
cat >try.c <<'EOM'
|
||||
@@ -367,33 +322,6 @@
|
||||
;;
|
||||
esac
|
||||
|
||||
-# SuSE8.2 has /usr/lib/libndbm* which are ld scripts rather than
|
||||
-# true libraries. The scripts cause binding against static
|
||||
-# version of -lgdbm which is a bad idea. So if we have 'nm'
|
||||
-# make sure it can read the file
|
||||
-# NI-S 2003/08/07
|
||||
-case "$nm" in
|
||||
- '') ;;
|
||||
- *)
|
||||
- for p in $plibpth
|
||||
- do
|
||||
- if $test -r $p/libndbm.so; then
|
||||
- if $nm $p/libndbm.so >/dev/null 2>&1 ; then
|
||||
- echo 'Your shared -lndbm seems to be a real library.'
|
||||
- _libndbm_real=1
|
||||
- break
|
||||
- fi
|
||||
- fi
|
||||
- done
|
||||
- if $test "X$_libndbm_real" = X; then
|
||||
- echo 'Your shared -lndbm is not a real library.'
|
||||
- set `echo X "$libswanted "| sed -e 's/ ndbm / /'`
|
||||
- shift
|
||||
- libswanted="$*"
|
||||
- fi
|
||||
- ;;
|
||||
-esac
|
||||
-
|
||||
# Linux on Synology.
|
||||
if [ -f /etc/synoinfo.conf -a -d /usr/syno ]; then
|
||||
# Tested on Synology DS213 and DS413
|
5
pkgs/development/interpreters/perl/5.20/setup-hook.sh
Normal file
5
pkgs/development/interpreters/perl/5.20/setup-hook.sh
Normal file
|
@ -0,0 +1,5 @@
|
|||
addPerlLibPath () {
|
||||
addToSearchPath PERL5LIB $1/lib/perl5/site_perl
|
||||
}
|
||||
|
||||
envHooks=(${envHooks[@]} addPerlLibPath)
|
|
@ -228,7 +228,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
|||
'' );
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://nl1.php.net/get/php-${version}.tar.bz2/from/this/mirror";
|
||||
url = "http://www.php.net/distributions/php-${version}.tar.bz2";
|
||||
sha256 = "04w53nn6qacpkd1x381mzd41kqh6k8kjnbyg44yvnkqwcl69db0c";
|
||||
name = "php-${version}.tar.bz2";
|
||||
};
|
||||
|
|
|
@ -9,7 +9,7 @@ in
|
|||
|
||||
composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed) version; in {
|
||||
|
||||
version = "5.4.27";
|
||||
version = "5.4.29";
|
||||
|
||||
name = "php-${version}";
|
||||
|
||||
|
@ -171,7 +171,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
|||
configureFlags = ["--enable-fpm"];
|
||||
};
|
||||
|
||||
mssql = {
|
||||
mssql = stdenv.lib.optionalAttrs (!stdenv.isDarwin) {
|
||||
configureFlags = ["--with-mssql=${freetds}"];
|
||||
buildInputs = [freetds];
|
||||
};
|
||||
|
@ -218,7 +218,7 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
|||
zipSupport = config.php.zip or true;
|
||||
ftpSupport = config.php.ftp or true;
|
||||
fpmSupport = config.php.fpm or true;
|
||||
mssqlSupport = config.php.mssql or true;
|
||||
mssqlSupport = config.php.mssql or (!stdenv.isDarwin);
|
||||
};
|
||||
|
||||
configurePhase = ''
|
||||
|
@ -242,12 +242,8 @@ composableDerivation.composableDerivation {} ( fixed : let inherit (fixed.fixed)
|
|||
'';
|
||||
|
||||
src = fetchurl {
|
||||
urls = [
|
||||
"http://nl1.php.net/get/php-${version}.tar.bz2/from/this/mirror"
|
||||
"http://se1.php.net/get/php-${version}.tar.bz2/from/this/mirror"
|
||||
];
|
||||
md5 = "1c6e99187d25023411b663ea09f145ee";
|
||||
name = "php-${version}.tar.bz2";
|
||||
url = "http://www.php.net/distributions/php-${version}.tar.bz2";
|
||||
sha256 = "19z2n6h1fvj30n6hl2mwhw2f4i1vwhbj3j7abq3gc16gcfh3rkk2";
|
||||
};
|
||||
|
||||
meta = {
|
||||
|
|
|
@ -24,4 +24,7 @@ stdenv.mkDerivation rec {
|
|||
--run "${coreutils}/bin/mkdir -p /var/lib/AccountsService/icons"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "D-Bus interface for user account query and manipulation";
|
||||
};
|
||||
}
|
|
@ -1,12 +1,16 @@
|
|||
{stdenv, fetchurl}:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "axis-1.3";
|
||||
directory = "axis-1_3";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = "http://apache.cs.uu.nl/dist/ws/axis/1_3/axis-bin-1_3.tar.gz";
|
||||
md5 = "dd8203f08c37872f4fd2bfb45c4bfe04";
|
||||
};
|
||||
inherit stdenv;
|
||||
name = "axis-1.3";
|
||||
directory = "axis-1_3";
|
||||
builder = ./builder.sh;
|
||||
src = fetchurl {
|
||||
url = "http://archive.apache.org/dist/ws/axis/1_3/axis-bin-1_3.tar.gz";
|
||||
md5 = "dd8203f08c37872f4fd2bfb45c4bfe04";
|
||||
};
|
||||
inherit stdenv;
|
||||
|
||||
meta = {
|
||||
description = "Implementation of the SOAP (Simple Object Access Protocol) submission to W3C";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,12 +1,19 @@
|
|||
{stdenv, fetchurl, python}:
|
||||
{ stdenv, fetchurl, python }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "clearsilver-0.10.3";
|
||||
|
||||
src = fetchurl {
|
||||
url = http://www.clearsilver.net/downloads/clearsilver-0.10.3.tar.gz;
|
||||
md5 = "ff4104b0e58bca1b61d528edbd902769";
|
||||
};
|
||||
|
||||
builder = ./builder.sh;
|
||||
|
||||
inherit stdenv python;
|
||||
|
||||
meta = {
|
||||
description = "Fast, powerful, and language-neutral HTML template system";
|
||||
homepage = http://www.clearsilver.net/;
|
||||
};
|
||||
}
|
||||
|
|
|
@ -6,4 +6,13 @@ stdenv.mkDerivation {
|
|||
url = http://google-coredumper.googlecode.com/files/coredumper-1.1.tar.gz;
|
||||
sha256 = "1phl1zg2n17rp595dyzz9iw01gfdpsdh0l6wy2hfb5shi71h63rx";
|
||||
};
|
||||
|
||||
# Doesn't build:
|
||||
#
|
||||
# src/elfcore.c: In function 'CreatePipeline':
|
||||
# src/elfcore.c:1424:26: error: 'CLONE_VM' undeclared (first use in this function)
|
||||
# CLONE_VM|CLONE_UNTRACED|SIGCHLD, &args, 0, 0, 0);
|
||||
# ^
|
||||
# src/elfcore.c:1424:26: note: each undeclared identifier is reported only once for each function it appears in
|
||||
meta.broken = true;
|
||||
}
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
{ fetchurl, stdenv }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gsl-1.15";
|
||||
name = "gsl-1.16";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnu/gsl/${name}.tar.gz";
|
||||
sha256 = "18qf6jzz1r3mzb5qynywv4xx3z9g61hgkbpkdrhbgqh2g7jhgfc5";
|
||||
sha256 = "0lrgipi0z6559jqh82yx8n4xgnxkhzj46v96dl77hahdp58jzg3k";
|
||||
};
|
||||
|
||||
# ToDo: there might be more impurities than FMA support check
|
||||
|
@ -16,6 +16,8 @@ stdenv.mkDerivation rec {
|
|||
|
||||
meta = {
|
||||
description = "The GNU Scientific Library, a large numerical library";
|
||||
homepage = http://www.gnu.org/software/gsl/;
|
||||
license = "GPLv3+";
|
||||
|
||||
longDescription = ''
|
||||
The GNU Scientific Library (GSL) is a numerical library for C
|
||||
|
@ -27,10 +29,5 @@ stdenv.mkDerivation rec {
|
|||
fitting. There are over 1000 functions in total with an
|
||||
extensive test suite.
|
||||
'';
|
||||
|
||||
homepage = http://www.gnu.org/software/gsl/;
|
||||
license = "GPLv3+";
|
||||
|
||||
maintainers = [ ];
|
||||
};
|
||||
}
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "BoundedChan";
|
||||
version = "1.0.1.0";
|
||||
sha256 = "1v4lmp3j8lzk1m2pv5l90j80y0c6yxm6gb1ww9ffsz2jxfzz8vd8";
|
||||
version = "1.0.3.0";
|
||||
sha256 = "0vf4mlw08n056g5256cf46m5xsijng5gvjx7ccm4r132gznyl72k";
|
||||
meta = {
|
||||
description = "Implementation of bounded channels";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
|
|
|
@ -5,6 +5,7 @@ cabal.mkDerivation (self: {
|
|||
version = "0.3.1.0";
|
||||
sha256 = "0qarf73c8zq8dgvxdiwqybpjfy8gba9vf4k0skiwyk5iphilxhhq";
|
||||
buildDepends = [ extensibleExceptions MonadCatchIOTransformers ];
|
||||
jailbreak = true;
|
||||
meta = {
|
||||
homepage = "http://darcsden.com/jcpetruzza/MonadCatchIO-mtl";
|
||||
description = "Monad-transformer version of the Control.Exception module";
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "MonadCatchIO-transformers";
|
||||
version = "0.3.1.0";
|
||||
sha256 = "1r5syyalk8a81byhk39yp0j7vdrvlrpppbg52dql1fx6kfhysaxn";
|
||||
version = "0.3.1.1";
|
||||
sha256 = "1kfq9py053zic69f25gcsm802dhk7y5k01ipsf2jvl8d4r5iw5kk";
|
||||
buildDepends = [ extensibleExceptions monadsTf transformers ];
|
||||
jailbreak = true;
|
||||
meta = {
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "SHA";
|
||||
version = "1.6.4";
|
||||
sha256 = "13d7sg8r0qqs425banrwd15hahy8gnl4k81q0wfqld77xpb2vvbj";
|
||||
version = "1.6.4.1";
|
||||
sha256 = "03fwpl8hrl9q197w8v1glqi5g1d51c7hz4m8zi5s8x1yvpbwcfvl";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [ binary ];
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "amqp";
|
||||
version = "0.8.3";
|
||||
sha256 = "0gl5vdhbic8llhbqmhnwj0wvykhbrci6zz53v5cayqfcwi1v1dw2";
|
||||
version = "0.9";
|
||||
sha256 = "10yacflzvf7y21yi6frs88gdbhf5g4j99ag8mwv6jrwfzwqszs5j";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
|
|
@ -1,57 +0,0 @@
|
|||
From c401c2c585b5345243211e981c123a92b995b448 Mon Sep 17 00:00:00 2001
|
||||
From: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
Date: Sat, 25 Jan 2014 13:35:52 +0300
|
||||
Subject: [PATCH] authenticate-oauth.cabal: allow RSA-2
|
||||
|
||||
The only cosmetic change is rename of 'ha_SHA1' to 'hashSHA1'
|
||||
|
||||
Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
|
||||
---
|
||||
authenticate-oauth/Web/Authenticate/OAuth.hs | 10 ++++++++--
|
||||
authenticate-oauth/authenticate-oauth.cabal | 2 +-
|
||||
2 files changed, 9 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/authenticate-oauth/Web/Authenticate/OAuth.hs b/authenticate-oauth/Web/Authenticate/OAuth.hs
|
||||
index 3f38c8c..eccd0f1 100644
|
||||
--- a/authenticate-oauth/Web/Authenticate/OAuth.hs
|
||||
+++ b/authenticate-oauth/Web/Authenticate/OAuth.hs
|
||||
@@ -21,7 +21,7 @@ module Web.Authenticate.OAuth
|
||||
paramEncode, addScope, addMaybeProxy
|
||||
) where
|
||||
import Blaze.ByteString.Builder (toByteString, Builder)
|
||||
-import Codec.Crypto.RSA (ha_SHA1, rsassa_pkcs1_v1_5_sign)
|
||||
+import qualified Codec.Crypto.RSA as RSA
|
||||
import Control.Exception
|
||||
import Control.Monad
|
||||
import Control.Monad.IO.Class (MonadIO, liftIO)
|
||||
@@ -346,7 +346,13 @@ genSign oa tok req =
|
||||
PLAINTEXT ->
|
||||
return $ BS.intercalate "&" $ map paramEncode [oauthConsumerSecret oa, tokenSecret tok]
|
||||
RSASHA1 pr ->
|
||||
- liftM (encode . toStrict . rsassa_pkcs1_v1_5_sign ha_SHA1 pr) (getBaseString tok req)
|
||||
+ liftM (encode . toStrict . RSA.rsassa_pkcs1_v1_5_sign
|
||||
+#if MIN_VERSION_RSA(2, 0, 0)
|
||||
+ RSA.hashSHA1
|
||||
+#else
|
||||
+ RSA.ha_SHA1
|
||||
+#endif
|
||||
+ pr) (getBaseString tok req)
|
||||
|
||||
#if MIN_VERSION_http_conduit(2, 0, 0)
|
||||
addAuthHeader :: BS.ByteString -> Credential -> Request -> Request
|
||||
diff --git a/authenticate-oauth/authenticate-oauth.cabal b/authenticate-oauth/authenticate-oauth.cabal
|
||||
index 00507da..e11c3bd 100644
|
||||
--- a/authenticate-oauth/authenticate-oauth.cabal
|
||||
+++ b/authenticate-oauth/authenticate-oauth.cabal
|
||||
@@ -19,7 +19,7 @@ library
|
||||
, transformers >= 0.1 && < 0.4
|
||||
, bytestring >= 0.9
|
||||
, crypto-pubkey-types >= 0.1 && < 0.5
|
||||
- , RSA >= 1.2 && < 1.3
|
||||
+ , RSA >= 1.2 && < 2.1
|
||||
, time
|
||||
, data-default
|
||||
, base64-bytestring >= 0.1 && < 1.1
|
||||
--
|
||||
1.9.1
|
||||
|
|
@ -1,18 +1,15 @@
|
|||
{ cabal, base64Bytestring, blazeBuilder, blazeBuilderConduit
|
||||
, conduit, cryptoPubkeyTypes, dataDefault, httpConduit, httpTypes
|
||||
, monadControl, random, resourcet, RSA, SHA, time, transformers
|
||||
, cryptoPubkeyTypes, dataDefault, httpClient, httpTypes, random
|
||||
, RSA, SHA, time, transformers
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "authenticate-oauth";
|
||||
version = "1.4.0.8";
|
||||
sha256 = "1mc36d6lkmqywzsxhzwv4445mmwdz0rr5ibd2a1nbgw5c5jw76fy";
|
||||
patches = [ ./RSA2.patch ];
|
||||
patchFlags = "-p2";
|
||||
version = "1.5";
|
||||
sha256 = "07y9zh4v9by588k86wlyj3czivj5jlb9jk6g4j9p8j1qgbv4hpk9";
|
||||
buildDepends = [
|
||||
base64Bytestring blazeBuilder blazeBuilderConduit conduit
|
||||
cryptoPubkeyTypes dataDefault httpConduit httpTypes monadControl
|
||||
random resourcet RSA SHA time transformers
|
||||
base64Bytestring blazeBuilder blazeBuilderConduit cryptoPubkeyTypes
|
||||
dataDefault httpClient httpTypes random RSA SHA time transformers
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://github.com/yesodweb/authenticate";
|
||||
|
|
|
@ -5,8 +5,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "compdata";
|
||||
version = "0.8.1.0";
|
||||
sha256 = "06bsdhf40b8111k0fmfc53i5kib9n431f07qyj83pq8isgkk33xc";
|
||||
version = "0.8.1.2";
|
||||
sha256 = "1jhfhinkn6klh68rzl5skh1rianjycc6cfkrglsi17j60a723v9x";
|
||||
buildDepends = [
|
||||
deepseq derive mtl QuickCheck thExpandSyns transformers treeView
|
||||
];
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "cryptohash";
|
||||
version = "0.11.5";
|
||||
sha256 = "0vxnwnjch2r9d54q5f5bfz60npjc7s7x6a5233md7fa756822b9d";
|
||||
version = "0.11.6";
|
||||
sha256 = "0dyzcaxr8vhzqq9hj4240rxpi87h4ps87yz09klz723shls26f6s";
|
||||
buildDepends = [ byteable ];
|
||||
testDepends = [
|
||||
byteable HUnit QuickCheck tasty tastyHunit tastyQuickcheck
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "data-lens-light";
|
||||
version = "0.1.1";
|
||||
sha256 = "03nsfwpcl7wmw2bgcb8z3w04krlbrbks7bjpnzfdz6cgdr5mnjrs";
|
||||
version = "0.1.2";
|
||||
sha256 = "1xxphcd36vw1ib48rfmrg207h0i1hlby01bm3xsxnq90ygizvxk7";
|
||||
buildDepends = [ mtl ];
|
||||
meta = {
|
||||
homepage = "https://github.com/feuerbach/data-lens-light";
|
||||
|
|
|
@ -0,0 +1,20 @@
|
|||
{ cabal, binary, dataAccessor, deepseq, distributedStatic, hashable
|
||||
, mtl, networkTransport, random, rank1dynamic, stm, syb, time
|
||||
, transformers
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "distributed-process";
|
||||
version = "0.5.0";
|
||||
sha256 = "16lfmkhc6jk2n46w39vf0q1ql426h5jrjgdi6cyjgwy1d5kaqcny";
|
||||
buildDepends = [
|
||||
binary dataAccessor deepseq distributedStatic hashable mtl
|
||||
networkTransport random rank1dynamic stm syb time transformers
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://haskell-distributed.github.com/";
|
||||
description = "Cloud Haskell: Erlang-style concurrency in Haskell";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "distributed-static";
|
||||
version = "0.2.1.1";
|
||||
sha256 = "08y9554x6avjwdmbf33fw1pw1wl8qmgfngmgb6vgad88krnixq1h";
|
||||
version = "0.3.0.0";
|
||||
sha256 = "1g8jr01jxlfshsz3mrpzl21q290whwz4va3zjp1h0d1pnfwz6jcj";
|
||||
buildDepends = [ binary rank1dynamic ];
|
||||
meta = {
|
||||
homepage = "http://www.github.com/haskell-distributed/distributed-process";
|
||||
homepage = "http://haskell-distributed.github.com";
|
||||
description = "Compositional, type-safe, polymorphic static values and closures";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
|
|
|
@ -4,8 +4,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "dns";
|
||||
version = "1.3.0";
|
||||
sha256 = "1zd639d69ha3g1yz7ssvwarwiwyi975ps4i5y8vrarcq2jnnsb6n";
|
||||
version = "1.4.0";
|
||||
sha256 = "1r004wpq0z98f6n3rqqlkqmb799sdldj5087icksi6rxxr3plrs9";
|
||||
buildDepends = [
|
||||
attoparsec binary blazeBuilder conduit conduitExtra iproute mtl
|
||||
network random resourcet
|
||||
|
|
|
@ -18,4 +18,5 @@ cabal.mkDerivation (self: {
|
|||
platforms = self.ghc.meta.platforms;
|
||||
maintainers = [ self.stdenv.lib.maintainers.ocharles ];
|
||||
};
|
||||
jailbreak = true;
|
||||
})
|
||||
|
|
|
@ -1,22 +1,22 @@
|
|||
{ cabal, aeson, attoparsec, dataDefault, filepath, ghcPaths, groom
|
||||
, haskellNames, haskellPackages, haskellSrcExts, languageEcmascript
|
||||
, mtl, optparseApplicative, safe, sourcemap, split, spoon, syb
|
||||
, tasty, tastyHunit, tastyTh, text, transformers, uniplate
|
||||
, tasty, tastyHunit, tastyTh, text, time, transformers, uniplate
|
||||
, unorderedContainers, utf8String, vector
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "fay";
|
||||
version = "0.20.0.4";
|
||||
sha256 = "0cxcd4nxnq8nl03xgxa1nb0932hq4dz1lxpp3gqqs5k5wvs62303";
|
||||
version = "0.20.1.1";
|
||||
sha256 = "0jcvq880xnkm8aqr69ihwf7by55fc1bbd8wk8152zqgkih74qzc4";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
aeson attoparsec dataDefault filepath ghcPaths groom haskellNames
|
||||
haskellPackages haskellSrcExts languageEcmascript mtl
|
||||
optparseApplicative safe sourcemap split spoon syb tasty tastyHunit
|
||||
tastyTh text transformers uniplate unorderedContainers utf8String
|
||||
vector
|
||||
tastyTh text time transformers uniplate unorderedContainers
|
||||
utf8String vector
|
||||
];
|
||||
meta = {
|
||||
homepage = "http://fay-lang.org/";
|
||||
|
|
|
@ -20,6 +20,7 @@ cabal.mkDerivation (self: {
|
|||
aeson conduit dataDefault hspec httpConduit HUnit liftedBase
|
||||
monadControl QuickCheck resourcet text time transformers
|
||||
];
|
||||
jailbreak = true;
|
||||
doCheck = false;
|
||||
meta = {
|
||||
homepage = "https://github.com/meteficha/fb";
|
||||
|
@ -27,5 +28,4 @@ cabal.mkDerivation (self: {
|
|||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
jailbreak = true;
|
||||
})
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "foldl";
|
||||
version = "1.0.4";
|
||||
sha256 = "0l5gyaw2rb0wfdm5q13vsxfr0z2y9ad5nsjh605p1jp8i0rgwgkv";
|
||||
version = "1.0.5";
|
||||
sha256 = "08yjzzplg715hzkhwbf8nv2zm7c5wd2kph4zx94iml0cnc6ip048";
|
||||
buildDepends = [ primitive text transformers vector ];
|
||||
meta = {
|
||||
description = "Composable, streaming, and efficient left folds";
|
||||
|
|
|
@ -1,18 +0,0 @@
|
|||
{ cabal, comonadTransformers, free, kanExtensions, mtl, comonad
|
||||
, transformers
|
||||
}:
|
||||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "free-operational";
|
||||
version = "0.5.0.0";
|
||||
sha256 = "0gim4m0l76sxxg6a8av1gl6qjpwxwdzyviij86d06v1150r08dmb";
|
||||
jailbreak = true; # needs an old version of kan-extensions
|
||||
buildDepends = [
|
||||
comonadTransformers free kanExtensions mtl transformers comonad
|
||||
];
|
||||
meta = {
|
||||
description = "Operational Applicative, Alternative, Monad and MonadPlus from free types";
|
||||
license = self.stdenv.lib.licenses.bsd3;
|
||||
platforms = self.ghc.meta.platforms;
|
||||
};
|
||||
})
|
|
@ -4,8 +4,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "ghc-mod";
|
||||
version = "4.1.2";
|
||||
sha256 = "0xdpy61dc56zvpgr2z9cdyd85d65l426vnbfgsw6w494w0bp3sh7";
|
||||
version = "4.1.3";
|
||||
sha256 = "0n7nbjbiiphlasqfcxx15fa8axwd9csq2nh3r0wvkrgpsazdlw8c";
|
||||
isLibrary = true;
|
||||
isExecutable = true;
|
||||
buildDepends = [
|
||||
|
@ -26,6 +26,7 @@ cabal.mkDerivation (self: {
|
|||
cd ..
|
||||
ensureDir "$out/share/emacs"
|
||||
mv $pname-$version emacs/site-lisp
|
||||
|
||||
mv $out/bin/ghc-mod $out/bin/.ghc-mod-wrapped
|
||||
cat - > $out/bin/ghc-mod <<EOF
|
||||
#! ${self.stdenv.shell}
|
||||
|
@ -34,6 +35,15 @@ cabal.mkDerivation (self: {
|
|||
eval exec $out/bin/.ghc-mod-wrapped \$COMMAND \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
|
||||
EOF
|
||||
chmod +x $out/bin/ghc-mod
|
||||
|
||||
mv $out/bin/ghc-modi $out/bin/.ghc-modi-wrapped
|
||||
cat - > $out/bin/ghc-modi <<EOF
|
||||
#! ${self.stdenv.shell}
|
||||
COMMAND=\$1
|
||||
shift
|
||||
eval exec $out/bin/.ghc-modi-wrapped \$COMMAND \$( ${self.ghc.GHCGetPackages} ${self.ghc.version} | tr " " "\n" | tail -n +2 | paste -d " " - - | sed 's/.*/-g "&"/' | tr "\n" " ") "\$@"
|
||||
EOF
|
||||
chmod +x $out/bin/ghc-modi
|
||||
'';
|
||||
meta = {
|
||||
homepage = "http://www.mew.org/~kazu/proj/ghc-mod/";
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
|
||||
cabal.mkDerivation (self: {
|
||||
pname = "ghcjs-dom";
|
||||
version = "0.0.9";
|
||||
sha256 = "0vphhm9wr80p4brcjzhmp2kh0a5rlwzif26w2q054fshxa97kv2a";
|
||||
version = "0.0.10";
|
||||
sha256 = "0xffr197m6qam4q7ckgcwl0v9kwrxa5fm894c9vyxdmlcjyn38rm";
|
||||
buildDepends = [ ghcjsBase mtl ];
|
||||
meta = {
|
||||
description = "DOM library that supports both GHCJS and WebKitGTK";
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue