Merge branch 'master' into staging
This commit is contained in:
commit
24d81d6332
@ -286,6 +286,7 @@
|
||||
iblech = "Ingo Blechschmidt <iblech@speicherleck.de>";
|
||||
igsha = "Igor Sharonov <igor.sharonov@gmail.com>";
|
||||
ikervagyok = "Balázs Lengyel <ikervagyok@gmail.com>";
|
||||
ilya-kolpakov = "Ilya Kolpakov <ilya.kolpakov@gmail.com>";
|
||||
infinisil = "Silvan Mosberger <infinisil@icloud.com>";
|
||||
ironpinguin = "Michele Catalano <michele@catalano.de>";
|
||||
ivan-tkatchev = "Ivan Tkatchev <tkatchev@gmail.com>";
|
||||
|
@ -36,7 +36,7 @@ stdenv.mkDerivation {
|
||||
hasBadPaths=1
|
||||
fi
|
||||
if [ "$mode" != 444 ] && [ "$mode" != 555 ]; then
|
||||
echo "Store path '$path' has invalid permissions."
|
||||
echo "Store path '$path' has invalid permissions ($mode)."
|
||||
hasBadPaths=1
|
||||
fi
|
||||
done
|
||||
|
@ -281,8 +281,8 @@
|
||||
stanchion = 262;
|
||||
riak-cs = 263;
|
||||
infinoted = 264;
|
||||
keystone = 265;
|
||||
glance = 266;
|
||||
# keystone = 265; # unused, removed 2017-12-13
|
||||
# glance = 266; # unused, removed 2017-12-13
|
||||
couchpotato = 267;
|
||||
gogs = 268;
|
||||
pdns-recursor = 269;
|
||||
@ -551,8 +551,8 @@
|
||||
stanchion = 262;
|
||||
riak-cs = 263;
|
||||
infinoted = 264;
|
||||
keystone = 265;
|
||||
glance = 266;
|
||||
# keystone = 265; # unused, removed 2017-12-13
|
||||
# glance = 266; # unused, removed 2017-12-13
|
||||
couchpotato = 267;
|
||||
gogs = 268;
|
||||
kresd = 270;
|
||||
|
@ -354,6 +354,7 @@
|
||||
./services/misc/taskserver
|
||||
./services/misc/tzupdate.nix
|
||||
./services/misc/uhub.nix
|
||||
./services/misc/xmr-stak.nix
|
||||
./services/misc/zookeeper.nix
|
||||
./services/monitoring/apcupsd.nix
|
||||
./services/monitoring/arbtt.nix
|
||||
@ -748,6 +749,4 @@
|
||||
./virtualisation/vmware-guest.nix
|
||||
./virtualisation/xen-dom0.nix
|
||||
./virtualisation/xe-guest-utilities.nix
|
||||
./virtualisation/openstack/keystone.nix
|
||||
./virtualisation/openstack/glance.nix
|
||||
]
|
||||
|
@ -28,14 +28,15 @@ with lib;
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf config.services.gnome3.at-spi2-core.enable {
|
||||
|
||||
config = mkMerge [
|
||||
(mkIf config.services.gnome3.at-spi2-core.enable {
|
||||
environment.systemPackages = [ pkgs.at_spi2_core ];
|
||||
|
||||
services.dbus.packages = [ pkgs.at_spi2_core ];
|
||||
|
||||
systemd.packages = [ pkgs.at_spi2_core ];
|
||||
})
|
||||
|
||||
};
|
||||
|
||||
(mkIf (!config.services.gnome3.at-spi2-core.enable) {
|
||||
environment.variables.NO_AT_BRIDGE = "1";
|
||||
})
|
||||
];
|
||||
}
|
||||
|
73
nixos/modules/services/misc/xmr-stak.nix
Normal file
73
nixos/modules/services/misc/xmr-stak.nix
Normal file
@ -0,0 +1,73 @@
|
||||
{ lib, config, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.services.xmr-stak;
|
||||
|
||||
pkg = pkgs.xmr-stak.override {
|
||||
inherit (cfg) openclSupport cudaSupport;
|
||||
};
|
||||
|
||||
xmrConfArg = optionalString (cfg.configText != "") ("-c " +
|
||||
pkgs.writeText "xmr-stak-config.txt" cfg.configText);
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
options = {
|
||||
services.xmr-stak = {
|
||||
enable = mkEnableOption "xmr-stak miner";
|
||||
openclSupport = mkEnableOption "support for OpenCL (AMD/ATI graphics cards)";
|
||||
cudaSupport = mkEnableOption "support for CUDA (NVidia graphics cards)";
|
||||
|
||||
extraArgs = mkOption {
|
||||
type = types.listOf types.str;
|
||||
default = [];
|
||||
example = [ "--noCPU" "--currency monero" ];
|
||||
description = "List of parameters to pass to xmr-stak.";
|
||||
};
|
||||
|
||||
configText = mkOption {
|
||||
type = types.lines;
|
||||
default = "";
|
||||
example = ''
|
||||
"currency" : "monero",
|
||||
"pool_list" :
|
||||
[ { "pool_address" : "pool.supportxmr.com:5555",
|
||||
"wallet_address" : "<long-hash>",
|
||||
"pool_password" : "minername",
|
||||
"pool_weight" : 1,
|
||||
},
|
||||
],
|
||||
'';
|
||||
description = ''
|
||||
Verbatim xmr-stak config.txt. If empty, the <literal>-c</literal>
|
||||
parameter will not be added to the xmr-stak command.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
systemd.services.xmr-stak = {
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
bindsTo = [ "network-online.target" ];
|
||||
after = [ "network-online.target" ];
|
||||
environment = mkIf cfg.cudaSupport {
|
||||
LD_LIBRARY_PATH = "${pkgs.linuxPackages_latest.nvidia_x11}/lib";
|
||||
};
|
||||
script = ''
|
||||
exec ${pkg}/bin/xmr-stak ${xmrConfArg} ${concatStringsSep " " cfg.extraArgs}
|
||||
'';
|
||||
serviceConfig = let rootRequired = cfg.openclSupport || cfg.cudaSupport; in {
|
||||
# xmr-stak generates cpu and/or gpu configuration files
|
||||
WorkingDirectory = "/tmp";
|
||||
PrivateTmp = true;
|
||||
DynamicUser = !rootRequired;
|
||||
LimitMEMLOCK = toString (1024*1024);
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -56,6 +56,7 @@ let
|
||||
serviceConfig = {
|
||||
ExecStart = "${samba}/sbin/${appName} ${args}";
|
||||
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
|
||||
LimitNOFILE = 16384;
|
||||
Type = "notify";
|
||||
};
|
||||
|
||||
|
@ -50,11 +50,14 @@ let
|
||||
"mod_geoip"
|
||||
"mod_magnet"
|
||||
"mod_mysql_vhost"
|
||||
"mod_openssl" # since v1.4.46
|
||||
"mod_scgi"
|
||||
"mod_setenv"
|
||||
"mod_trigger_b4_dl"
|
||||
"mod_uploadprogress"
|
||||
"mod_vhostdb" # since v1.4.46
|
||||
"mod_webdav"
|
||||
"mod_wstunnel" # since v1.4.46
|
||||
];
|
||||
|
||||
maybeModuleString = moduleName:
|
||||
|
@ -193,16 +193,6 @@ in
|
||||
theme = mkDefault "breeze";
|
||||
};
|
||||
|
||||
boot.plymouth = {
|
||||
theme = mkDefault "breeze";
|
||||
themePackages = mkDefault [
|
||||
(pkgs.breeze-plymouth.override {
|
||||
nixosBranding = true;
|
||||
nixosVersion = config.system.nixosRelease;
|
||||
})
|
||||
];
|
||||
};
|
||||
|
||||
security.pam.services.kde = { allowNullPassword = true; };
|
||||
|
||||
# Doing these one by one seems silly, but we currently lack a better
|
||||
|
@ -8,9 +8,14 @@ let
|
||||
|
||||
cfg = config.boot.plymouth;
|
||||
|
||||
breezePlymouth = pkgs.breeze-plymouth.override {
|
||||
nixosBranding = true;
|
||||
nixosVersion = config.system.nixosRelease;
|
||||
};
|
||||
|
||||
themesEnv = pkgs.buildEnv {
|
||||
name = "plymouth-themes";
|
||||
paths = [ plymouth ] ++ cfg.themePackages;
|
||||
paths = [ plymouth breezePlymouth ] ++ cfg.themePackages;
|
||||
};
|
||||
|
||||
configFile = pkgs.writeText "plymouthd.conf" ''
|
||||
@ -38,7 +43,7 @@ in
|
||||
};
|
||||
|
||||
theme = mkOption {
|
||||
default = "fade-in";
|
||||
default = "breeze";
|
||||
type = types.str;
|
||||
description = ''
|
||||
Splash screen theme.
|
||||
|
@ -223,21 +223,21 @@ let self = {
|
||||
"17.03".us-west-2.hvm-ebs = "ami-a93daac9";
|
||||
"17.03".us-west-2.hvm-s3 = "ami-5139ae31";
|
||||
|
||||
# 17.09.1483.d0f0657ca0
|
||||
"17.09".eu-west-1.hvm-ebs = "ami-cf33e7b6";
|
||||
"17.09".eu-west-2.hvm-ebs = "ami-7d061419";
|
||||
"17.09".eu-central-1.hvm-ebs = "ami-7548fa1a";
|
||||
"17.09".us-east-1.hvm-ebs = "ami-6f669d15";
|
||||
"17.09".us-east-2.hvm-ebs = "ami-cbe1ccae";
|
||||
"17.09".us-west-1.hvm-ebs = "ami-9d95a5fd";
|
||||
"17.09".us-west-2.hvm-ebs = "ami-d3956fab";
|
||||
"17.09".ca-central-1.hvm-ebs = "ami-ee4ef78a";
|
||||
"17.09".ap-southeast-1.hvm-ebs = "ami-1dfc807e";
|
||||
"17.09".ap-southeast-2.hvm-ebs = "ami-dcb350be";
|
||||
"17.09".ap-northeast-1.hvm-ebs = "ami-00ec3d66";
|
||||
"17.09".ap-northeast-2.hvm-ebs = "ami-1107dd7f";
|
||||
"17.09".sa-east-1.hvm-ebs = "ami-0377086f";
|
||||
"17.09".ap-south-1.hvm-ebs = "ami-4a064625";
|
||||
# 17.09.2356.cb751f9b1c3
|
||||
"17.09".eu-west-1.hvm-ebs = "ami-d40185ad";
|
||||
"17.09".eu-west-2.hvm-ebs = "ami-c5445da1";
|
||||
"17.09".eu-central-1.hvm-ebs = "ami-e758d388";
|
||||
"17.09".us-east-1.hvm-ebs = "ami-865327fc";
|
||||
"17.09".us-east-2.hvm-ebs = "ami-074d6562";
|
||||
"17.09".us-west-1.hvm-ebs = "ami-992c28f9";
|
||||
"17.09".us-west-2.hvm-ebs = "ami-2bd87953";
|
||||
"17.09".ca-central-1.hvm-ebs = "ami-c4bb01a0";
|
||||
"17.09".ap-southeast-1.hvm-ebs = "ami-5ff79723";
|
||||
"17.09".ap-southeast-2.hvm-ebs = "ami-57e71135";
|
||||
"17.09".ap-northeast-1.hvm-ebs = "ami-5249c434";
|
||||
"17.09".ap-northeast-2.hvm-ebs = "ami-f1288e9f";
|
||||
"17.09".sa-east-1.hvm-ebs = "ami-5492d438";
|
||||
"17.09".ap-south-1.hvm-ebs = "ami-c4fab2ab";
|
||||
|
||||
latest = self."17.09";
|
||||
}; in self
|
||||
|
@ -1,174 +0,0 @@
|
||||
# Module for Nova, a.k.a. OpenStack Compute.
|
||||
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
|
||||
cfg = config.virtualisation.nova;
|
||||
|
||||
nova = pkgs.nova;
|
||||
|
||||
novaConf = pkgs.writeText "nova.conf"
|
||||
''
|
||||
--nodaemon
|
||||
--verbose
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
|
||||
###### interface
|
||||
|
||||
options = {
|
||||
|
||||
virtualisation.nova.enableSingleNode =
|
||||
mkOption {
|
||||
default = false;
|
||||
description =
|
||||
''
|
||||
This option enables Nova, also known as OpenStack Compute,
|
||||
a cloud computing system, as a single-machine
|
||||
installation. That is, all of Nova's components are
|
||||
enabled on this machine, using SQLite as Nova's database.
|
||||
This is useful for evaluating and experimenting with Nova.
|
||||
However, for a real cloud computing environment, you'll
|
||||
want to enable some of Nova's services on other machines,
|
||||
and use a database such as MySQL.
|
||||
'';
|
||||
};
|
||||
|
||||
virtualisation.nova.extraConfig =
|
||||
mkOption {
|
||||
default = "";
|
||||
description =
|
||||
''
|
||||
Additional text appended to <filename>nova.conf</filename>,
|
||||
the main Nova configuration file.
|
||||
'';
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
|
||||
###### implementation
|
||||
|
||||
config = mkIf cfg.enableSingleNode {
|
||||
|
||||
environment.systemPackages = [ nova pkgs.euca2ools pkgs.novaclient ];
|
||||
|
||||
environment.etc =
|
||||
[ { source = novaConf;
|
||||
target = "nova/nova.conf";
|
||||
}
|
||||
];
|
||||
|
||||
# Nova requires libvirtd and RabbitMQ.
|
||||
virtualisation.libvirtd.enable = true;
|
||||
services.rabbitmq.enable = true;
|
||||
|
||||
# `qemu-nbd' required the `nbd' kernel module.
|
||||
boot.kernelModules = [ "nbd" ];
|
||||
|
||||
system.activationScripts.nova =
|
||||
''
|
||||
mkdir -m 755 -p /var/lib/nova
|
||||
mkdir -m 755 -p /var/lib/nova/networks
|
||||
mkdir -m 700 -p /var/lib/nova/instances
|
||||
mkdir -m 700 -p /var/lib/nova/keys
|
||||
|
||||
# Allow the CA certificate generation script (called by
|
||||
# nova-api) to work.
|
||||
mkdir -m 700 -p /var/lib/nova/CA /var/lib/nova/CA/private
|
||||
|
||||
# Initialise the SQLite database.
|
||||
${nova}/bin/nova-manage db sync
|
||||
'';
|
||||
|
||||
# `nova-api' receives and executes external client requests from
|
||||
# tools such as euca2ools. It listens on port 8773 (XML) and 8774
|
||||
# (JSON).
|
||||
jobs.nova_api =
|
||||
{ name = "nova-api";
|
||||
|
||||
description = "Nova API service";
|
||||
|
||||
startOn = "ip-up";
|
||||
|
||||
# `openssl' is required to generate the CA. `openssh' is
|
||||
# required to generate key pairs.
|
||||
path = [ pkgs.openssl config.programs.ssh.package pkgs.bash ];
|
||||
|
||||
respawn = false;
|
||||
|
||||
exec = "${nova}/bin/nova-api --flagfile=${novaConf} --api_paste_config=${nova}/etc/nova/api-paste.ini";
|
||||
};
|
||||
|
||||
# `nova-objectstore' is a simple image server. Useful if you're
|
||||
# not running the OpenStack Imaging Service (Swift). It serves
|
||||
# images placed in /var/lib/nova/images/.
|
||||
jobs.nova_objectstore =
|
||||
{ name = "nova-objectstore";
|
||||
|
||||
description = "Nova Simple Object Store Service";
|
||||
|
||||
startOn = "ip-up";
|
||||
|
||||
preStart =
|
||||
''
|
||||
mkdir -m 700 -p /var/lib/nova/images
|
||||
'';
|
||||
|
||||
exec = "${nova}/bin/nova-objectstore --flagfile=${novaConf}";
|
||||
};
|
||||
|
||||
# `nova-scheduler' schedules VM execution requests.
|
||||
jobs.nova_scheduler =
|
||||
{ name = "nova-scheduler";
|
||||
|
||||
description = "Nova Scheduler Service";
|
||||
|
||||
startOn = "ip-up";
|
||||
|
||||
exec = "${nova}/bin/nova-scheduler --flagfile=${novaConf}";
|
||||
};
|
||||
|
||||
# `nova-compute' starts and manages virtual machines.
|
||||
jobs.nova_compute =
|
||||
{ name = "nova-compute";
|
||||
|
||||
description = "Nova Compute Service";
|
||||
|
||||
startOn = "ip-up";
|
||||
|
||||
path =
|
||||
[ pkgs.sudo pkgs.vlan pkgs.nettools pkgs.iptables pkgs.qemu_kvm
|
||||
pkgs.e2fsprogs pkgs.utillinux pkgs.multipath-tools pkgs.iproute
|
||||
pkgs.bridge-utils
|
||||
];
|
||||
|
||||
exec = "${nova}/bin/nova-compute --flagfile=${novaConf}";
|
||||
};
|
||||
|
||||
# `nova-network' manages networks and allocates IP addresses.
|
||||
jobs.nova_network =
|
||||
{ name = "nova-network";
|
||||
|
||||
description = "Nova Network Service";
|
||||
|
||||
startOn = "ip-up";
|
||||
|
||||
path =
|
||||
[ pkgs.sudo pkgs.vlan pkgs.dnsmasq pkgs.nettools pkgs.iptables
|
||||
pkgs.iproute pkgs.bridge-utils pkgs.radvd
|
||||
];
|
||||
|
||||
exec = "${nova}/bin/nova-network --flagfile=${novaConf}";
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
@ -1,84 +0,0 @@
|
||||
{ lib }:
|
||||
|
||||
with lib;
|
||||
|
||||
rec {
|
||||
# A shell script string helper to get the value of a secret at
|
||||
# runtime.
|
||||
getSecret = secretOption:
|
||||
if secretOption.storage == "fromFile"
|
||||
then ''$(cat ${secretOption.value})''
|
||||
else ''${secretOption.value}'';
|
||||
|
||||
|
||||
# A shell script string help to replace at runtime in a file the
|
||||
# pattern of a secret by its value.
|
||||
replaceSecret = secretOption: filename: ''
|
||||
sed -i "s/${secretOption.pattern}/${getSecret secretOption}/g" ${filename}
|
||||
'';
|
||||
|
||||
# This generates an option that can be used to declare secrets which
|
||||
# can be stored in the nix store, or not. A pattern is written in
|
||||
# the nix store to represent the secret. The pattern can
|
||||
# then be overwritten with the value of the secret at runtime.
|
||||
mkSecretOption = {name, description ? ""}:
|
||||
mkOption {
|
||||
description = description;
|
||||
type = types.submodule ({
|
||||
options = {
|
||||
pattern = mkOption {
|
||||
type = types.str;
|
||||
default = "##${name}##";
|
||||
description = "The pattern that represent the secret.";
|
||||
};
|
||||
storage = mkOption {
|
||||
type = types.enum [ "fromNixStore" "fromFile" ];
|
||||
description = ''
|
||||
Choose the way the password is provisionned. If
|
||||
fromNixStore is used, the value is the password and it is
|
||||
written in the nix store. If fromFile is used, the value
|
||||
is a path from where the password will be read at
|
||||
runtime. This is generally used with <link
|
||||
xlink:href="https://nixos.org/nixops/manual/#opt-deployment.keys">
|
||||
deployment keys</link> of Nixops.
|
||||
'';};
|
||||
value = mkOption {
|
||||
type = types.str;
|
||||
description = ''
|
||||
If the storage is fromNixStore, the value is the password itself,
|
||||
otherwise it is a path to the file that contains the password.
|
||||
'';
|
||||
};
|
||||
};});
|
||||
};
|
||||
|
||||
databaseOption = name: {
|
||||
host = mkOption {
|
||||
type = types.str;
|
||||
default = "localhost";
|
||||
description = ''
|
||||
Host of the database.
|
||||
'';
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = name;
|
||||
description = ''
|
||||
Name of the existing database.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = name;
|
||||
description = ''
|
||||
The database user. The user must exist and has access to
|
||||
the specified database.
|
||||
'';
|
||||
};
|
||||
password = mkSecretOption {
|
||||
name = name + "MysqlPassword";
|
||||
description = "The database user's password";};
|
||||
};
|
||||
}
|
@ -1,245 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib; with import ./common.nix {inherit lib;};
|
||||
|
||||
let
|
||||
cfg = config.virtualisation.openstack.glance;
|
||||
commonConf = ''
|
||||
[database]
|
||||
connection = "mysql://${cfg.database.user}:${cfg.database.password.pattern}@${cfg.database.host}/${cfg.database.name}"
|
||||
notification_driver = noop
|
||||
|
||||
[keystone_authtoken]
|
||||
auth_url = ${cfg.authUrl}
|
||||
auth_plugin = password
|
||||
project_name = service
|
||||
project_domain_id = default
|
||||
user_domain_id = default
|
||||
username = ${cfg.serviceUsername}
|
||||
password = ${cfg.servicePassword.pattern}
|
||||
|
||||
[glance_store]
|
||||
default_store = file
|
||||
filesystem_store_datadir = /var/lib/glance/images/
|
||||
'';
|
||||
glanceApiConfTpl = pkgs.writeText "glance-api.conf" ''
|
||||
${commonConf}
|
||||
|
||||
[paste_deploy]
|
||||
flavor = keystone
|
||||
config_file = ${cfg.package}/etc/glance-api-paste.ini
|
||||
'';
|
||||
glanceRegistryConfTpl = pkgs.writeText "glance-registry.conf" ''
|
||||
${commonConf}
|
||||
|
||||
[paste_deploy]
|
||||
config_file = ${cfg.package}/etc/glance-registry-paste.ini
|
||||
'';
|
||||
glanceApiConf = "/var/lib/glance/glance-api.conf";
|
||||
glanceRegistryConf = "/var/lib/glance/glance-registry.conf";
|
||||
|
||||
in {
|
||||
options.virtualisation.openstack.glance = {
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.glance;
|
||||
defaultText = "pkgs.glance";
|
||||
description = ''
|
||||
Glance package to use.
|
||||
'';
|
||||
};
|
||||
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
This option enables Glance as a single-machine
|
||||
installation. That is, all of Glance's components are
|
||||
enabled on this machine. This is useful for evaluating and
|
||||
experimenting with Glance. Note we are currently not
|
||||
providing any configurations for a multi-node setup.
|
||||
'';
|
||||
};
|
||||
|
||||
authUrl = mkOption {
|
||||
type = types.str;
|
||||
default = http://localhost:5000;
|
||||
description = ''
|
||||
Complete public Identity (Keystone) API endpoint. Note this is
|
||||
unversionned.
|
||||
'';
|
||||
};
|
||||
|
||||
serviceUsername = mkOption {
|
||||
type = types.str;
|
||||
default = "glance";
|
||||
description = ''
|
||||
The Glance service username. This user is created if bootstrap
|
||||
is enable, otherwise it has to be manually created before
|
||||
starting this service.
|
||||
'';
|
||||
};
|
||||
|
||||
servicePassword = mkSecretOption {
|
||||
name = "glanceAdminPassword";
|
||||
description = ''
|
||||
The Glance service user's password.
|
||||
'';
|
||||
};
|
||||
|
||||
database = databaseOption "glance";
|
||||
|
||||
bootstrap = {
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Bootstrap the Glance service by creating the service tenant,
|
||||
an admin account and a public endpoint. This option provides
|
||||
a ready-to-use glance service. This is only done at the
|
||||
first Glance execution by the systemd post start section.
|
||||
The keystone admin account is used to create required
|
||||
Keystone resource for the Glance service.
|
||||
|
||||
<note><para> This option is a helper for setting up
|
||||
development or testing environments.</para></note>
|
||||
'';
|
||||
};
|
||||
|
||||
endpointPublic = mkOption {
|
||||
type = types.str;
|
||||
default = "http://localhost:9292";
|
||||
description = ''
|
||||
The public image endpoint. The link <link
|
||||
xlink:href="http://docs.openstack.org/liberty/install-guide-rdo/keystone-services.html">
|
||||
create endpoint</link> provides more informations
|
||||
about that.
|
||||
'';
|
||||
};
|
||||
|
||||
keystoneAdminUsername = mkOption {
|
||||
type = types.str;
|
||||
default = "admin";
|
||||
description = ''
|
||||
The keystone admin user name used to create the Glance account.
|
||||
'';
|
||||
};
|
||||
|
||||
keystoneAdminPassword = mkSecretOption {
|
||||
name = "keystoneAdminPassword";
|
||||
description = ''
|
||||
The keystone admin user's password.
|
||||
'';
|
||||
};
|
||||
|
||||
keystoneAdminTenant = mkOption {
|
||||
type = types.str;
|
||||
default = "admin";
|
||||
description = ''
|
||||
The keystone admin tenant used to create the Glance account.
|
||||
'';
|
||||
};
|
||||
keystoneAuthUrl = mkOption {
|
||||
type = types.str;
|
||||
default = "http://localhost:5000/v2.0";
|
||||
description = ''
|
||||
The keystone auth url used to create the Glance account.
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
users.extraUsers = [{
|
||||
name = "glance";
|
||||
group = "glance";
|
||||
uid = config.ids.gids.glance;
|
||||
|
||||
}];
|
||||
users.extraGroups = [{
|
||||
name = "glance";
|
||||
gid = config.ids.gids.glance;
|
||||
}];
|
||||
|
||||
systemd.services.glance-registry = {
|
||||
description = "OpenStack Glance Registry Daemon";
|
||||
after = [ "network.target"];
|
||||
path = [ pkgs.curl pkgs.pythonPackages.keystoneclient pkgs.gawk ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
preStart = ''
|
||||
mkdir -m 775 -p /var/lib/glance/{images,scrubber,image_cache}
|
||||
chown glance:glance /var/lib/glance/{images,scrubber,image_cache}
|
||||
|
||||
# Secret file managment
|
||||
cp ${glanceRegistryConfTpl} ${glanceRegistryConf};
|
||||
chown glance:glance ${glanceRegistryConf};
|
||||
chmod 640 ${glanceRegistryConf}
|
||||
${replaceSecret cfg.database.password glanceRegistryConf}
|
||||
${replaceSecret cfg.servicePassword glanceRegistryConf}
|
||||
|
||||
cp ${glanceApiConfTpl} ${glanceApiConf};
|
||||
chown glance:glance ${glanceApiConf};
|
||||
chmod 640 ${glanceApiConf}
|
||||
${replaceSecret cfg.database.password glanceApiConf}
|
||||
${replaceSecret cfg.servicePassword glanceApiConf}
|
||||
|
||||
# Initialise the database
|
||||
${cfg.package}/bin/glance-manage --config-file=${glanceApiConf} --config-file=${glanceRegistryConf} db_sync
|
||||
'';
|
||||
postStart = ''
|
||||
set -eu
|
||||
export OS_AUTH_URL=${cfg.bootstrap.keystoneAuthUrl}
|
||||
export OS_USERNAME=${cfg.bootstrap.keystoneAdminUsername}
|
||||
export OS_PASSWORD=${getSecret cfg.bootstrap.keystoneAdminPassword}
|
||||
export OS_TENANT_NAME=${cfg.bootstrap.keystoneAdminTenant}
|
||||
|
||||
# Wait until the keystone is available for use
|
||||
count=0
|
||||
while ! keystone user-get ${cfg.bootstrap.keystoneAdminUsername} > /dev/null
|
||||
do
|
||||
if [ $count -eq 30 ]
|
||||
then
|
||||
echo "Tried 30 times, giving up..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Keystone not yet started. Waiting for 1 second..."
|
||||
count=$((count++))
|
||||
sleep 1
|
||||
done
|
||||
|
||||
# If the service glance doesn't exist, we consider glance is
|
||||
# not initialized
|
||||
if ! keystone service-get glance
|
||||
then
|
||||
keystone service-create --type image --name glance
|
||||
ID=$(keystone service-get glance | awk '/ id / { print $4 }')
|
||||
keystone endpoint-create --region RegionOne --service $ID --internalurl http://localhost:9292 --adminurl http://localhost:9292 --publicurl ${cfg.bootstrap.endpointPublic}
|
||||
|
||||
keystone user-create --name ${cfg.serviceUsername} --tenant service --pass ${getSecret cfg.servicePassword}
|
||||
keystone user-role-add --tenant service --user ${cfg.serviceUsername} --role admin
|
||||
fi
|
||||
'';
|
||||
serviceConfig = {
|
||||
PermissionsStartOnly = true; # preStart must be run as root
|
||||
TimeoutStartSec = "600"; # 10min for initial db migrations
|
||||
User = "glance";
|
||||
Group = "glance";
|
||||
ExecStart = "${cfg.package}/bin/glance-registry --config-file=${glanceRegistryConf}";
|
||||
};
|
||||
};
|
||||
systemd.services.glance-api = {
|
||||
description = "OpenStack Glance API Daemon";
|
||||
after = [ "glance-registry.service" "network.target"];
|
||||
requires = [ "glance-registry.service" "network.target"];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
serviceConfig = {
|
||||
PermissionsStartOnly = true; # preStart must be run as root
|
||||
User = "glance";
|
||||
Group = "glance";
|
||||
ExecStart = "${cfg.package}/bin/glance-api --config-file=${glanceApiConf}";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
}
|
@ -1,220 +0,0 @@
|
||||
{ config, lib, pkgs, ... }:
|
||||
|
||||
with lib; with import ./common.nix {inherit lib;};
|
||||
|
||||
let
|
||||
cfg = config.virtualisation.openstack.keystone;
|
||||
keystoneConfTpl = pkgs.writeText "keystone.conf" ''
|
||||
[DEFAULT]
|
||||
admin_token = ${cfg.adminToken.pattern}
|
||||
policy_file=${cfg.package}/etc/policy.json
|
||||
|
||||
[database]
|
||||
|
||||
connection = "mysql://${cfg.database.user}:${cfg.database.password.pattern}@${cfg.database.host}/${cfg.database.name}"
|
||||
|
||||
[paste_deploy]
|
||||
config_file = ${cfg.package}/etc/keystone-paste.ini
|
||||
|
||||
${cfg.extraConfig}
|
||||
'';
|
||||
keystoneConf = "/var/lib/keystone/keystone.conf";
|
||||
|
||||
in {
|
||||
options.virtualisation.openstack.keystone = {
|
||||
package = mkOption {
|
||||
type = types.package;
|
||||
example = literalExample "pkgs.keystone";
|
||||
description = ''
|
||||
Keystone package to use.
|
||||
'';
|
||||
};
|
||||
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Enable Keystone, the OpenStack Identity Service
|
||||
'';
|
||||
};
|
||||
|
||||
extraConfig = mkOption {
|
||||
default = "";
|
||||
type = types.lines;
|
||||
description = ''
|
||||
Additional text appended to <filename>keystone.conf</filename>,
|
||||
the main Keystone configuration file.
|
||||
'';
|
||||
};
|
||||
|
||||
adminToken = mkSecretOption {
|
||||
name = "adminToken";
|
||||
description = ''
|
||||
This is the admin token used to boostrap keystone,
|
||||
ie. to provision first resources.
|
||||
'';
|
||||
};
|
||||
|
||||
bootstrap = {
|
||||
enable = mkOption {
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = ''
|
||||
Bootstrap the Keystone service by creating the service
|
||||
tenant, an admin account and a public endpoint. This options
|
||||
provides a ready-to-use admin account. This is only done at
|
||||
the first Keystone execution by the systemd post start.
|
||||
|
||||
Note this option is a helper for setting up development or
|
||||
testing environments.
|
||||
'';
|
||||
};
|
||||
|
||||
endpointPublic = mkOption {
|
||||
type = types.str;
|
||||
default = "http://localhost:5000/v2.0";
|
||||
description = ''
|
||||
The public identity endpoint. The link <link
|
||||
xlink:href="http://docs.openstack.org/liberty/install-guide-rdo/keystone-services.html">
|
||||
create keystone endpoint</link> provides more informations
|
||||
about that.
|
||||
'';
|
||||
};
|
||||
|
||||
adminUsername = mkOption {
|
||||
type = types.str;
|
||||
default = "admin";
|
||||
description = ''
|
||||
A keystone admin username.
|
||||
'';
|
||||
};
|
||||
|
||||
adminPassword = mkSecretOption {
|
||||
name = "keystoneAdminPassword";
|
||||
description = ''
|
||||
The keystone admin user's password.
|
||||
'';
|
||||
};
|
||||
|
||||
adminTenant = mkOption {
|
||||
type = types.str;
|
||||
default = "admin";
|
||||
description = ''
|
||||
A keystone admin tenant name.
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
database = {
|
||||
host = mkOption {
|
||||
type = types.str;
|
||||
default = "localhost";
|
||||
description = ''
|
||||
Host of the database.
|
||||
'';
|
||||
};
|
||||
|
||||
name = mkOption {
|
||||
type = types.str;
|
||||
default = "keystone";
|
||||
description = ''
|
||||
Name of the existing database.
|
||||
'';
|
||||
};
|
||||
|
||||
user = mkOption {
|
||||
type = types.str;
|
||||
default = "keystone";
|
||||
description = ''
|
||||
The database user. The user must exist and has access to
|
||||
the specified database.
|
||||
'';
|
||||
};
|
||||
password = mkSecretOption {
|
||||
name = "mysqlPassword";
|
||||
description = "The database user's password";};
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
# Note: when changing the default, make it conditional on
|
||||
# ‘system.stateVersion’ to maintain compatibility with existing
|
||||
# systems!
|
||||
virtualisation.openstack.keystone.package = mkDefault pkgs.keystone;
|
||||
|
||||
users.extraUsers = [{
|
||||
name = "keystone";
|
||||
group = "keystone";
|
||||
uid = config.ids.uids.keystone;
|
||||
}];
|
||||
users.extraGroups = [{
|
||||
name = "keystone";
|
||||
gid = config.ids.gids.keystone;
|
||||
}];
|
||||
|
||||
systemd.services.keystone-all = {
|
||||
description = "OpenStack Keystone Daemon";
|
||||
after = [ "network.target"];
|
||||
path = [ cfg.package pkgs.mysql pkgs.curl pkgs.pythonPackages.keystoneclient pkgs.gawk ];
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
preStart = ''
|
||||
mkdir -m 755 -p /var/lib/keystone
|
||||
|
||||
cp ${keystoneConfTpl} ${keystoneConf};
|
||||
chown keystone:keystone ${keystoneConf};
|
||||
chmod 640 ${keystoneConf}
|
||||
|
||||
${replaceSecret cfg.database.password keystoneConf}
|
||||
${replaceSecret cfg.adminToken keystoneConf}
|
||||
|
||||
# Initialise the database
|
||||
${cfg.package}/bin/keystone-manage --config-file=${keystoneConf} db_sync
|
||||
# Set up the keystone's PKI infrastructure
|
||||
${cfg.package}/bin/keystone-manage --config-file=${keystoneConf} pki_setup --keystone-user keystone --keystone-group keystone
|
||||
'';
|
||||
postStart = optionalString cfg.bootstrap.enable ''
|
||||
set -eu
|
||||
# Wait until the keystone is available for use
|
||||
count=0
|
||||
while ! curl --fail -s http://localhost:35357/v2.0 > /dev/null
|
||||
do
|
||||
if [ $count -eq 30 ]
|
||||
then
|
||||
echo "Tried 30 times, giving up..."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "Keystone not yet started. Waiting for 1 second..."
|
||||
count=$((count++))
|
||||
sleep 1
|
||||
done
|
||||
|
||||
# We use the service token to create a first admin user
|
||||
export OS_SERVICE_ENDPOINT=http://localhost:35357/v2.0
|
||||
export OS_SERVICE_TOKEN=${getSecret cfg.adminToken}
|
||||
|
||||
# If the tenant service doesn't exist, we consider
|
||||
# keystone is not initialized
|
||||
if ! keystone tenant-get service
|
||||
then
|
||||
keystone tenant-create --name service
|
||||
keystone tenant-create --name ${cfg.bootstrap.adminTenant}
|
||||
keystone user-create --name ${cfg.bootstrap.adminUsername} --tenant ${cfg.bootstrap.adminTenant} --pass ${getSecret cfg.bootstrap.adminPassword}
|
||||
keystone role-create --name admin
|
||||
keystone role-create --name Member
|
||||
keystone user-role-add --tenant ${cfg.bootstrap.adminTenant} --user ${cfg.bootstrap.adminUsername} --role admin
|
||||
keystone service-create --type identity --name keystone
|
||||
ID=$(keystone service-get keystone | awk '/ id / { print $4 }')
|
||||
keystone endpoint-create --region RegionOne --service $ID --publicurl ${cfg.bootstrap.endpointPublic} --adminurl http://localhost:35357/v2.0 --internalurl http://localhost:5000/v2.0
|
||||
fi
|
||||
'';
|
||||
serviceConfig = {
|
||||
PermissionsStartOnly = true; # preStart must be run as root
|
||||
TimeoutStartSec = "600"; # 10min for initial db migrations
|
||||
User = "keystone";
|
||||
Group = "keystone";
|
||||
ExecStart = "${cfg.package}/bin/keystone-all --config-file=${keystoneConf}";
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
@ -267,7 +267,6 @@ in rec {
|
||||
tests.fleet = hydraJob (import tests/fleet.nix { system = "x86_64-linux"; });
|
||||
#tests.gitlab = callTest tests/gitlab.nix {};
|
||||
tests.gitolite = callTest tests/gitolite.nix {};
|
||||
tests.glance = callTest tests/glance.nix {};
|
||||
tests.gocd-agent = callTest tests/gocd-agent.nix {};
|
||||
tests.gocd-server = callTest tests/gocd-server.nix {};
|
||||
tests.gnome3 = callTest tests/gnome3.nix {};
|
||||
@ -293,7 +292,6 @@ in rec {
|
||||
tests.kernel-copperhead = callTest tests/kernel-copperhead.nix {};
|
||||
tests.kernel-latest = callTest tests/kernel-latest.nix {};
|
||||
tests.kernel-lts = callTest tests/kernel-lts.nix {};
|
||||
tests.keystone = callTest tests/keystone.nix {};
|
||||
tests.kubernetes = hydraJob (import tests/kubernetes/default.nix { system = "x86_64-linux"; });
|
||||
tests.latestKernel.login = callTest tests/login.nix { latestKernel = true; };
|
||||
tests.ldap = callTest tests/ldap.nix {};
|
||||
|
@ -1,77 +0,0 @@
|
||||
{ system ? builtins.currentSystem }:
|
||||
|
||||
with import ../lib/testing.nix { inherit system; };
|
||||
with pkgs.lib;
|
||||
|
||||
let
|
||||
glanceMysqlPassword = "glanceMysqlPassword";
|
||||
glanceAdminPassword = "glanceAdminPassword";
|
||||
|
||||
createDb = pkgs.writeText "db-provisionning.sql" ''
|
||||
create database keystone;
|
||||
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY 'keystone';
|
||||
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone';
|
||||
|
||||
create database glance;
|
||||
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'localhost' IDENTIFIED BY '${glanceMysqlPassword}';
|
||||
GRANT ALL PRIVILEGES ON glance.* TO 'glance'@'%' IDENTIFIED BY '${glanceMysqlPassword}';
|
||||
'';
|
||||
|
||||
image =
|
||||
(import ../lib/eval-config.nix {
|
||||
inherit system;
|
||||
modules = [ ../../nixos/modules/virtualisation/nova-image.nix ];
|
||||
}).config.system.build.novaImage;
|
||||
|
||||
# The admin keystone account
|
||||
adminOpenstackCmd = "OS_TENANT_NAME=admin OS_USERNAME=admin OS_PASSWORD=keystone OS_AUTH_URL=http://localhost:5000/v3 OS_IDENTITY_API_VERSION=3 openstack";
|
||||
|
||||
in makeTest {
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ lewo ];
|
||||
};
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
services.mysql.enable = true;
|
||||
services.mysql.package = pkgs.mysql;
|
||||
services.mysql.initialScript = createDb;
|
||||
|
||||
virtualisation = {
|
||||
openstack.keystone = {
|
||||
enable = true;
|
||||
database.password = { value = "keystone"; storage = "fromNixStore"; };
|
||||
adminToken = { value = "adminToken"; storage = "fromNixStore"; };
|
||||
bootstrap.enable = true;
|
||||
bootstrap.adminPassword = { value = "keystone"; storage = "fromNixStore"; };
|
||||
};
|
||||
|
||||
openstack.glance = {
|
||||
enable = true;
|
||||
database.password = { value = glanceMysqlPassword; storage = "fromNixStore"; };
|
||||
servicePassword = { value = glanceAdminPassword; storage = "fromNixStore"; };
|
||||
|
||||
bootstrap = {
|
||||
enable = true;
|
||||
keystoneAdminPassword = { value = "keystone"; storage = "fromNixStore"; };
|
||||
};
|
||||
};
|
||||
|
||||
memorySize = 2096;
|
||||
diskSize = 4 * 1024;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs.pythonPackages; with pkgs; [
|
||||
openstackclient
|
||||
];
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
$machine->waitForUnit("glance-api.service");
|
||||
|
||||
# Since Glance api can take time to start, we retry until success
|
||||
$machine->waitUntilSucceeds("${adminOpenstackCmd} image create nixos --file ${image}/nixos.img --disk-format qcow2 --container-format bare --public");
|
||||
$machine->succeed("${adminOpenstackCmd} image list") =~ /nixos/ or die;
|
||||
'';
|
||||
}
|
@ -36,6 +36,9 @@ import ./make-test.nix ({ pkgs, ...} : {
|
||||
startAll;
|
||||
|
||||
$master->waitForUnit("jenkins");
|
||||
|
||||
$master->mustSucceed("curl http://localhost:8080 | grep 'Authentication required'");
|
||||
|
||||
print $master->execute("sudo -u jenkins groups");
|
||||
$master->mustSucceed("sudo -u jenkins groups | grep jenkins | grep users");
|
||||
|
||||
|
@ -1,82 +0,0 @@
|
||||
{ system ? builtins.currentSystem }:
|
||||
|
||||
with import ../lib/testing.nix { inherit system; };
|
||||
with pkgs.lib;
|
||||
|
||||
let
|
||||
keystoneMysqlPassword = "keystoneMysqlPassword";
|
||||
keystoneMysqlPasswordFile = "/var/run/keystoneMysqlPassword";
|
||||
keystoneAdminPassword = "keystoneAdminPassword";
|
||||
|
||||
createKeystoneDb = pkgs.writeText "create-keystone-db.sql" ''
|
||||
create database keystone;
|
||||
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY '${keystoneMysqlPassword}';
|
||||
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY '${keystoneMysqlPassword}';
|
||||
'';
|
||||
# The admin keystone account
|
||||
adminOpenstackCmd = "OS_TENANT_NAME=admin OS_USERNAME=admin OS_PASSWORD=${keystoneAdminPassword} OS_AUTH_URL=http://localhost:5000/v3 OS_IDENTITY_API_VERSION=3 openstack";
|
||||
# The created demo keystone account
|
||||
demoOpenstackCmd = "OS_TENANT_NAME=demo OS_USERNAME=demo OS_PASSWORD=demo OS_AUTH_URL=http://localhost:5000/v3 OS_IDENTITY_API_VERSION=3 openstack";
|
||||
|
||||
in makeTest {
|
||||
meta = with pkgs.stdenv.lib.maintainers; {
|
||||
maintainers = [ lewo ];
|
||||
};
|
||||
machine =
|
||||
{ config, pkgs, ... }:
|
||||
{
|
||||
# This is to simulate nixops deployment process.
|
||||
# https://nixos.org/nixops/manual/#opt-deployment.keys
|
||||
boot.postBootCommands = "echo ${keystoneMysqlPassword} > ${keystoneMysqlPasswordFile}";
|
||||
|
||||
services.mysql.enable = true;
|
||||
services.mysql.initialScript = createKeystoneDb;
|
||||
|
||||
virtualisation = {
|
||||
|
||||
openstack.keystone = {
|
||||
enable = true;
|
||||
# Check if we can get the secret from a file
|
||||
database.password = {
|
||||
value = keystoneMysqlPasswordFile;
|
||||
storage = "fromFile";
|
||||
};
|
||||
adminToken = {
|
||||
value = "adminToken";
|
||||
storage = "fromNixStore";
|
||||
};
|
||||
|
||||
bootstrap.enable = true;
|
||||
# Check if we can get the secret from the store
|
||||
bootstrap.adminPassword = {
|
||||
value = keystoneAdminPassword;
|
||||
storage = "fromNixStore";
|
||||
};
|
||||
};
|
||||
|
||||
memorySize = 2096;
|
||||
diskSize = 4 * 1024;
|
||||
};
|
||||
|
||||
environment.systemPackages = with pkgs.pythonPackages; with pkgs; [
|
||||
openstackclient
|
||||
];
|
||||
};
|
||||
|
||||
testScript =
|
||||
''
|
||||
$machine->waitForUnit("keystone-all.service");
|
||||
|
||||
# Verify that admin ccount is working
|
||||
$machine->succeed("${adminOpenstackCmd} token issue");
|
||||
|
||||
# Try to create a new user
|
||||
$machine->succeed("${adminOpenstackCmd} project create --domain default --description 'Demo Project' demo");
|
||||
$machine->succeed("${adminOpenstackCmd} user create --domain default --password demo demo");
|
||||
$machine->succeed("${adminOpenstackCmd} role create user");
|
||||
$machine->succeed("${adminOpenstackCmd} role add --project demo --user demo user");
|
||||
|
||||
# Verify this new account is working
|
||||
$machine->succeed("${demoOpenstackCmd} token issue");
|
||||
'';
|
||||
}
|
@ -6,11 +6,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "bitwig-studio-${version}";
|
||||
version = "2.1.3";
|
||||
version = "2.2.2";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://downloads.bitwig.com/stable/${version}/bitwig-studio-${version}.deb";
|
||||
sha256 = "0blfw7dayl1wzys11mdixlkbr1p1d5rnwrvim1hblfpnw2zmlslb";
|
||||
sha256 = "1x4wka32xlygmhdh9rb15s37zh5qjrgap2qk35y34c52lf5aak22";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ dpkg makeWrapper ];
|
||||
|
@ -1,21 +1,23 @@
|
||||
{ stdenv, fetchgit, boost, ganv, glibmm, gtkmm2, libjack2, lilv
|
||||
, lv2, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
|
||||
, lv2Unstable, makeWrapper, pkgconfig, python, raul, rdflib, serd, sord, sratom
|
||||
|
||||
, suil
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ingen-unstable-${rev}";
|
||||
rev = "2017-01-18";
|
||||
rev = "2017-07-22";
|
||||
|
||||
src = fetchgit {
|
||||
url = "http://git.drobilla.net/cgit.cgi/ingen.git";
|
||||
rev = "02ae3e9d8bf3f6a5e844706721aad8c0ac9f4340";
|
||||
sha256 = "15s8nrzn68hc2s6iw0zshbz3lfnsq0mr6gflq05xm911b7xbp74k";
|
||||
url = "https://git.drobilla.net/cgit.cgi/ingen.git";
|
||||
rev = "cc4a4db33f4d126a07a4a498e053c5fb9a883be3";
|
||||
sha256 = "1gmwmml486r9zq4w65v91mfaz36af9zzyjkmi74m8qmh67ffqn3w";
|
||||
deepClone = true;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [
|
||||
boost ganv glibmm gtkmm2 libjack2 lilv lv2 makeWrapper
|
||||
boost ganv glibmm gtkmm2 libjack2 lilv lv2Unstable makeWrapper
|
||||
python raul serd sord sratom suil
|
||||
];
|
||||
|
||||
|
@ -3,11 +3,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "qsampler-${version}";
|
||||
version = "0.4.3";
|
||||
version = "0.5.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/qsampler/${name}.tar.gz";
|
||||
sha256 = "1wg19022gyzy8rk9npfav9kz9z2qicqwwb2x5jz5hshzf3npx1fi";
|
||||
sha256 = "0kn1mv31ygjjsric03pkbv7r8kg3bri9ldx2ajc9pyx0p8ggnbmc";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig qttools ];
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "atom-${version}";
|
||||
version = "1.22.0";
|
||||
version = "1.23.1";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/atom/atom/releases/download/v${version}/atom-amd64.deb";
|
||||
sha256 = "1jxw0m1hfaisf1f875wr28f0mr3h0wjml6pjhfxbybvcblpnd27k";
|
||||
sha256 = "14cwg48cxrhkcj8ahfznqr1ym316437xds7aw5011dqbmswb0v4f";
|
||||
name = "${name}.deb";
|
||||
};
|
||||
|
||||
|
@ -46,6 +46,9 @@ self:
|
||||
# upstream issue: missing file header
|
||||
bufshow = markBroken super.bufshow;
|
||||
|
||||
# part of a larger package
|
||||
caml = dontConfigure super.caml;
|
||||
|
||||
# part of a larger package
|
||||
# upstream issue: missing package version
|
||||
cmake-mode = markBroken (dontConfigure super.cmake-mode);
|
||||
|
@ -45,6 +45,9 @@ self:
|
||||
# upstream issue: missing file header
|
||||
bufshow = markBroken super.bufshow;
|
||||
|
||||
# part of a larger package
|
||||
caml = dontConfigure super.caml;
|
||||
|
||||
# part of a larger package
|
||||
# upstream issue: missing package version
|
||||
cmake-mode = markBroken (dontConfigure super.cmake-mode);
|
||||
|
@ -1,18 +1,20 @@
|
||||
{ stdenv, fetchFromGitHub, getopt, which, pkgconfig, gtk3 } :
|
||||
{ stdenv, fetchFromGitHub, pkgconfig
|
||||
, ffmpeg, gtk3, imagemagick, libarchive, libspectre, libwebp, poppler
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (rec {
|
||||
name = "pqiv-${version}";
|
||||
version = "2.10.1";
|
||||
version = "2.10.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "phillipberndt";
|
||||
repo = "pqiv";
|
||||
rev = version;
|
||||
sha256 = "06blqckj3bpbi2kl5ndv2d10r7nw62r386kfwrkic9amynlv9gki";
|
||||
sha256 = "0zn7ps73lw04l9i4777c90ik07v3hkg66mnpz8vvvwjyi40i77a7";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ getopt which gtk3 ];
|
||||
buildInputs = [ ffmpeg gtk3 imagemagick libarchive libspectre libwebp poppler ];
|
||||
|
||||
prePatch = "patchShebangs .";
|
||||
|
||||
|
@ -1,10 +1,10 @@
|
||||
{ callPackage, fetchgit, ... } @ args:
|
||||
|
||||
callPackage ./generic.nix (args // {
|
||||
version = "2016-06-11";
|
||||
version = "2017-12-01";
|
||||
src = fetchgit {
|
||||
sha256 = "0jpavig7bg7l72drlwipmsg03j6qdy5aq2r3kj6a2h6ahpnm2549";
|
||||
rev = "5ba37467e88ca8052973b37128ce8fd36ad5d61d";
|
||||
sha256 = "0qf7d7268kdxnb723c03m6icxhbgx0vw8gqvck2q1w5b948dy9g8";
|
||||
rev = "e895ee55bec8a3320a0e972b32c05d35b47fe226";
|
||||
url = "git://alioth.debian.org/git/sane/sane-backends.git";
|
||||
};
|
||||
})
|
||||
|
@ -25,7 +25,6 @@ in
|
||||
description = "Host tools and driver library for the AirSpy SDR";
|
||||
license = licenses.free;
|
||||
platforms = platforms.linux;
|
||||
maintainer = with maintainers; [ markuskowa ];
|
||||
maintainers = with maintainers; [ markuskowa ];
|
||||
};
|
||||
}
|
||||
|
||||
|
@ -1,35 +0,0 @@
|
||||
{ stdenv, lib, go, fetchgit, git, buildGoPackage }:
|
||||
|
||||
buildGoPackage rec {
|
||||
name = "camlistore-${version}";
|
||||
version = "0.9";
|
||||
|
||||
src = fetchgit {
|
||||
url = "https://github.com/camlistore/camlistore";
|
||||
rev = "refs/tags/${version}";
|
||||
sha256 = "1ypplr939ny9drsdngapa029fgak0wic8sbna588m79cbl17psya";
|
||||
leaveDotGit = true;
|
||||
};
|
||||
|
||||
buildInputs = [ git ];
|
||||
|
||||
goPackagePath = "";
|
||||
buildPhase = ''
|
||||
cd go/src/camlistore
|
||||
go run make.go
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $bin/bin
|
||||
rm bin/README
|
||||
cp bin/* $bin/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "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;
|
||||
};
|
||||
}
|
@ -2,12 +2,13 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ipmicfg-${version}";
|
||||
version = "1.27.0";
|
||||
buildVersion = "170620";
|
||||
version = "1.27.1";
|
||||
buildVersion = "170901";
|
||||
|
||||
src = fetchzip {
|
||||
url = "ftp://ftp.supermicro.com/utility/IPMICFG/IPMICFG_${version}_build.${buildVersion}.zip";
|
||||
sha256 = "0jr2vih4hzymb62mbqyykwcrjhbhazf6wr1g0cq8ji586i3z3vw5";
|
||||
sha256 = "11xhzw36pg4has8857pypf44cni8m2mg8qsqi1s4bfjbxlfgxgwk";
|
||||
extraPostFetch = "chmod u+rwX,go-rwx+X $out/";
|
||||
};
|
||||
|
||||
installPhase = ''
|
||||
|
@ -7,13 +7,13 @@ with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "keepassxc-${version}";
|
||||
version = "2.2.2";
|
||||
version = "2.2.4";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "keepassxreboot";
|
||||
repo = "keepassxc";
|
||||
rev = "${version}";
|
||||
sha256 = "01pqpa3vzk2q1vrj2lqayr7a3nzpnj176yhnqbrwlm3s9rga4wzn";
|
||||
sha256 = "0q913v2ka6p7jr7c4w9fq8aqh5v6nxqgcv9h7zllk5p0amsf8d80";
|
||||
};
|
||||
|
||||
cmakeFlags = [
|
||||
|
31
pkgs/applications/misc/perkeep/default.nix
Normal file
31
pkgs/applications/misc/perkeep/default.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, lib, go_1_8, fetchzip, git }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "perkeep-${version}";
|
||||
version = "20170505";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://perkeep.org/dl/monthly/camlistore-${version}-src.zip";
|
||||
sha256 = "1vliyvkyzmhdi6knbh8rdsswmz3h0rpxdpq037jwbdbkjccxjdwa";
|
||||
};
|
||||
|
||||
buildInputs = [ git go_1_8 ];
|
||||
|
||||
goPackagePath = "";
|
||||
buildPhase = ''
|
||||
go run make.go
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
cp bin/* $out/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "A way of storing, syncing, sharing, modelling and backing up content (née Camlistore)";
|
||||
homepage = https://perkeep.org;
|
||||
license = licenses.asl20;
|
||||
maintainers = with maintainers; [ cstrahan ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
@ -1,28 +1,30 @@
|
||||
{ stdenv, lib, fetchFromGitHub, cmake, libuv, libmicrohttpd, openssl
|
||||
, opencl-headers, ocl-icd, hwloc, cudatoolkit
|
||||
, devDonationLevel ? "0.0"
|
||||
, cudaSupport ? false # doesn't work currently
|
||||
, cudaSupport ? false
|
||||
, openclSupport ? false
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "xmr-stak-${version}";
|
||||
version = "2.0.0";
|
||||
version = "2.1.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fireice-uk";
|
||||
repo = "xmr-stak";
|
||||
rev = "v${version}";
|
||||
sha256 = "1gsp5d2qmc8qwbfm87c2vnak6ks6y9csfjbsi0570pdciapaf8vs";
|
||||
sha256 = "0ijhimsd03v1psj7pyj70z4rrgfvphpf69y7g72p06010xq1agp8";
|
||||
};
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-O3";
|
||||
|
||||
cmakeFlags = lib.optional (!cudaSupport) "-DCUDA_ENABLE=OFF";
|
||||
cmakeFlags = lib.optional (!cudaSupport) "-DCUDA_ENABLE=OFF"
|
||||
++ lib.optional (!openclSupport) "-DOpenCL_ENABLE=OFF";
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs =
|
||||
[ libmicrohttpd openssl opencl-headers ocl-icd hwloc ]
|
||||
++ lib.optional cudaSupport cudatoolkit;
|
||||
buildInputs = [ libmicrohttpd openssl hwloc ]
|
||||
++ lib.optional cudaSupport cudatoolkit
|
||||
++ lib.optionals openclSupport [ opencl-headers ocl-icd ];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace xmrstak/donate-level.hpp \
|
||||
|
@ -94,12 +94,12 @@ let
|
||||
|
||||
flash = stdenv.mkDerivation rec {
|
||||
name = "flashplayer-ppapi-${version}";
|
||||
version = "27.0.0.187";
|
||||
version = "28.0.0.126";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/"
|
||||
+ "${version}/flash_player_ppapi_linux.x86_64.tar.gz";
|
||||
sha256 = "102z9aflm0a29klc26jch3wl4y8hdrxzqdqvf5yj0bnibx3hwpsy";
|
||||
sha256 = "10q005jp5vcfqx35jzwp138djv9g7jp83jqbyism40k67ah33i1z";
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
|
@ -73,25 +73,25 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "flashplayer-${version}";
|
||||
version = "27.0.0.187";
|
||||
version = "28.0.0.126";
|
||||
|
||||
src = fetchurl {
|
||||
url =
|
||||
if debug then
|
||||
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/27/flash_player_npapi_linux_debug.${arch}.tar.gz"
|
||||
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/28/flash_player_npapi_linux_debug.${arch}.tar.gz"
|
||||
else
|
||||
"https://fpdownload.adobe.com/get/flashplayer/pdc/${version}/flash_player_npapi_linux.${arch}.tar.gz";
|
||||
sha256 =
|
||||
if debug then
|
||||
if arch == "x86_64" then
|
||||
"1ii97fa1diyggarh1gkg43ia42ws7x84hpjzvrdhxcf6s47lh2ld"
|
||||
"16ivf0j7kr7hak2pxs4mbhw5g0i8ky72mvdkaxpfq42g4mr7qf62"
|
||||
else
|
||||
"1gphlgy64ddzn4bbgr2k1kh8xwq9ghf0z0c6zilry0nq33i64xa1"
|
||||
"09dn1zr5bcfvkb46z86p7gr2g9p0a3nj9vvw1qw2fblvbajmznk0"
|
||||
else
|
||||
if arch == "x86_64" then
|
||||
"1hfcphcvdam62k983rm6r42mnkih4nfwyrnx0v88z3nw14mjr4c3"
|
||||
"0z5p3zimvx8zas649gn2nzp4gfvwc69hklza3d2hpmzb35ckfqbc"
|
||||
else
|
||||
"06jb4jd5840w125wd4l35f0b1iqjak07ajy02k9j8srglwi0ffmw";
|
||||
"0kyyjqim7qq0am2hr9ldcbm4sx8dsbgf3916km9gbgg8vjddgxwy";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
@ -55,19 +55,19 @@ let
|
||||
in
|
||||
stdenv.mkDerivation rec {
|
||||
name = "flashplayer-standalone-${version}";
|
||||
version = "27.0.0.187";
|
||||
version = "28.0.0.126";
|
||||
|
||||
src = fetchurl {
|
||||
url =
|
||||
if debug then
|
||||
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/27/flash_player_sa_linux_debug.x86_64.tar.gz"
|
||||
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/28/flash_player_sa_linux_debug.x86_64.tar.gz"
|
||||
else
|
||||
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/27/flash_player_sa_linux.x86_64.tar.gz";
|
||||
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/28/flash_player_sa_linux.x86_64.tar.gz";
|
||||
sha256 =
|
||||
if debug then
|
||||
"1857g4yy62pj02pnw7p9bpqazp98jf17yv2xdh1fkqiibzahjc6m"
|
||||
"07692qivf09zh36vlaczwwq93f8p7v1afnsgkry7m9yybxh1753d"
|
||||
else
|
||||
"0kywx7c3qb1hfljc14ddzm1cyhvwygbbdfxp1rdhqw8s3b6ns0hw";
|
||||
"14xj55wjp9jvm01n8bwrbwmkhpcrxc44yfqi3jq8f8pzrqi7smck";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ unzip ];
|
||||
|
@ -29,13 +29,13 @@ let
|
||||
|
||||
in buildPythonApplication rec {
|
||||
name = "qutebrowser-${version}${fix_postfix}";
|
||||
fix_postfix = "-1";
|
||||
version = "1.0.3";
|
||||
fix_postfix = "";
|
||||
version = "1.0.4";
|
||||
namePrefix = "";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${name}.tar.gz";
|
||||
sha256 = "04d6hg2yf2wjwn0sd05bpx3zngnb93g7rizbdq17bbpmnwxchzap";
|
||||
sha256 = "0z8zrgr914bfmimqk3l17dxyc7gzh42sw8lfp041zzvj6fxw3lkr";
|
||||
};
|
||||
|
||||
# Needs tox
|
||||
|
@ -23,7 +23,7 @@ let
|
||||
in buildGoPackage rec {
|
||||
pname = "minikube";
|
||||
name = "${pname}-${version}";
|
||||
version = "0.23.0";
|
||||
version = "0.24.1";
|
||||
|
||||
goPackagePath = "k8s.io/minikube";
|
||||
|
||||
@ -31,7 +31,7 @@ in buildGoPackage rec {
|
||||
owner = "kubernetes";
|
||||
repo = "minikube";
|
||||
rev = "v${version}";
|
||||
sha256 = "1f7kjn26y7knmab5avj8spb40ny1y0jix5j5p0dqfjvg9climl0h";
|
||||
sha256 = "18b5ic4lcn84hq2ji5alyx58x9vi0b03544i5xzfgn3h2k78kynk";
|
||||
};
|
||||
|
||||
patches = [
|
||||
@ -65,6 +65,8 @@ in buildGoPackage rec {
|
||||
postInstall = ''
|
||||
mkdir -p $bin/share/bash-completion/completions/
|
||||
MINIKUBE_WANTUPDATENOTIFICATION=false HOME=$PWD $bin/bin/minikube completion bash > $bin/share/bash-completion/completions/minikube
|
||||
mkdir -p $bin/share/zsh/site-functions/
|
||||
MINIKUBE_WANTUPDATENOTIFICATION=false HOME=$PWD $bin/bin/minikube completion zsh > $bin/share/zsh/site-functions/_minikube
|
||||
'';
|
||||
|
||||
postFixup = "wrapProgram $bin/bin/${pname} --prefix PATH : ${stdenv.lib.makeBinPath binPath}";
|
||||
|
@ -7,12 +7,12 @@
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
pname = "discord";
|
||||
version = "0.0.2";
|
||||
version = "0.0.3";
|
||||
name = "${pname}-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://cdn.discordapp.com/apps/linux/${version}/${pname}-${version}.tar.gz";
|
||||
sha256 = "0sb7l0rrpqxzn4fndjr50r5xfiid1f81p22gda4mz943yv37mhfz";
|
||||
sha256 = "1yxxy9q75zlgk1b4winw4zy9yxk5pn8x4camh52n6v3mw6gq0bfh";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
@ -1,4 +1,4 @@
|
||||
{stdenv, fetchFromGitHub, ocamlPackages, opam}:
|
||||
{ stdenv, fetchFromGitHub, ocamlPackages }:
|
||||
|
||||
assert stdenv.lib.versionAtLeast ocamlPackages.ocaml.version "4.02.2";
|
||||
|
||||
@ -16,13 +16,12 @@ stdenv.mkDerivation rec {
|
||||
buildInputs = with ocamlPackages; [
|
||||
ocaml ocamlbuild findlib topkg ppx_sexp_conv
|
||||
erm_xmpp_0_3 tls nocrypto x509 ocaml_lwt otr astring
|
||||
ptime notty sexplib_p4 hex uutf opam
|
||||
ptime notty sexplib_p4 hex uutf
|
||||
];
|
||||
|
||||
buildPhase = with ocamlPackages;
|
||||
"ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib pkg/pkg.ml build --pinned true";
|
||||
buildPhase = "${ocamlPackages.topkg.run} build --pinned true";
|
||||
|
||||
installPhase = "opam-installer --prefix=$out --script | sh";
|
||||
inherit (ocamlPackages.topkg) installPhase;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/hannesm/jackline;
|
||||
|
@ -4,6 +4,8 @@
|
||||
|
||||
let
|
||||
|
||||
# Please keep the version x.y.0.z and do not update to x.y.76.z because the
|
||||
# source of the latter disappears much faster.
|
||||
version = "8.11.0.4";
|
||||
|
||||
rpath = stdenv.lib.makeLibraryPath [
|
||||
@ -55,7 +57,7 @@ let
|
||||
if stdenv.system == "x86_64-linux" then
|
||||
fetchurl {
|
||||
url = "https://repo.skype.com/deb/pool/main/s/skypeforlinux/skypeforlinux_${version}_amd64.deb";
|
||||
sha256 = "1dq7k4zlqqsx7786phialia5xbpc3cp1wrjhqrvga09yg4dl505c";
|
||||
sha256 = "1chwc4rqcwwim03n6nski5dar33bb1gnadbvcjg6gln3xqr0ipib";
|
||||
}
|
||||
else
|
||||
throw "Skype for linux is not supported on ${stdenv.system}";
|
||||
|
@ -15,14 +15,14 @@ let
|
||||
'';
|
||||
|
||||
in stdenv.mkDerivation rec {
|
||||
version = "20171027";
|
||||
version = "20171208";
|
||||
name = "neomutt-${version}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "neomutt";
|
||||
repo = "neomutt";
|
||||
rev = "neomutt-${version}";
|
||||
sha256 = "0pwc5zdxc9h23658dfkzndfj1ld3ijyvcxmsiv793y3i4dig0s3n";
|
||||
sha256 = "1fn28q4akfz0nq3ysp8n53j8yqp2mx6yhbvb59c4zm6zgd4qzgp1";
|
||||
};
|
||||
|
||||
buildInputs = [
|
||||
|
@ -1,18 +1,18 @@
|
||||
# - coqide compilation can be disabled by setting lablgtk to null;
|
||||
|
||||
{stdenv, fetchurl, pkgconfig, ocaml, camlp5}:
|
||||
{ stdenv, fetchFromGitHub, pkgconfig, ocaml }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "ott-${version}";
|
||||
version = "0.25";
|
||||
version = "0.27";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.cl.cam.ac.uk/~pes20/ott/ott_distro_${version}.tar.gz";
|
||||
sha256 = "0i8ad1yrz9nrrgpi8db4z0aii5s0sy35mmzdfw5nq183mvbx8qqd";
|
||||
src = fetchFromGitHub {
|
||||
owner = "ott-lang";
|
||||
repo = "ott";
|
||||
rev = version;
|
||||
sha256 = "12hzpyinswqaxwp6y793h7ywrv6289cw4911ah2yzq04ji095pfb";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ ocaml camlp5 ];
|
||||
buildInputs = [ ocaml ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/bin
|
||||
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
|
||||
ln -s $out/bin/ott.opt $out/bin/ott
|
||||
|
||||
mkdir -p $out/share/emacs/site-lisp
|
||||
cp emacs/ottmode.el $out/share/emacs/site-lisp
|
||||
cp emacs/ott-mode.el $out/share/emacs/site-lisp
|
||||
'';
|
||||
|
||||
meta = {
|
||||
|
31
pkgs/applications/science/logic/z3/4.5.0.nix
Normal file
31
pkgs/applications/science/logic/z3/4.5.0.nix
Normal file
@ -0,0 +1,31 @@
|
||||
{ stdenv, fetchFromGitHub, python2, fixDarwinDylibNames }:
|
||||
|
||||
let
|
||||
python = python2;
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "z3-${version}";
|
||||
version = "4.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "Z3Prover";
|
||||
repo = "z3";
|
||||
rev = "z3-4.5.0";
|
||||
sha256 = "0ssp190ksak93hiz61z90x6hy9hcw1ywp8b2dzmbhn6fbd4bnxzp";
|
||||
};
|
||||
|
||||
buildInputs = [ python fixDarwinDylibNames ];
|
||||
enableParallelBuilding = true;
|
||||
|
||||
configurePhase = ''
|
||||
${python.interpreter} scripts/mk_make.py --prefix=$out --python --pypkgdir=$out/${python.sitePackages}
|
||||
cd build
|
||||
'';
|
||||
|
||||
meta = {
|
||||
description = "A high-performance theorem prover and SMT solver";
|
||||
homepage = "https://github.com/Z3Prover/z3";
|
||||
license = stdenv.lib.licenses.mit;
|
||||
platforms = stdenv.lib.platforms.unix;
|
||||
maintainers = [ stdenv.lib.maintainers.thoughtpolice ];
|
||||
};
|
||||
}
|
@ -2,16 +2,16 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gerrit-${version}";
|
||||
version = "2.14.3";
|
||||
version = "2.14.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://gerrit-releases.storage.googleapis.com/gerrit-${version}.war";
|
||||
sha256 = "1hxrlhp5l5q4lp5b5bq8va7856cnm4blfv01rgqq3yhvn432sq6v";
|
||||
sha256 = "0fsqwfsnyb4nbxgb1i1mp0vshl0mk8bwqlddzqr9x2v99mbca28q";
|
||||
};
|
||||
|
||||
outputHashAlgo = "sha256";
|
||||
outputHashMode = "recursive";
|
||||
outputHash = "1j1afxv7yj2fxaw0wy8kmxi6sl9fwj8xsxs5kzg9qz5gzayb26kp";
|
||||
outputHash = "1qrmvqqnlbabqz4yx06vi030ci12v0063iq2palxmbj3whrzv9la";
|
||||
|
||||
buildCommand = ''
|
||||
mkdir -p "$out"/webapps/
|
||||
|
26
pkgs/applications/version-management/gitless/default.nix
Normal file
26
pkgs/applications/version-management/gitless/default.nix
Normal file
@ -0,0 +1,26 @@
|
||||
{ fetchFromGitHub, pythonPackages, stdenv }:
|
||||
|
||||
pythonPackages.buildPythonApplication rec {
|
||||
ver = "0.8.5";
|
||||
name = "gitless-${ver}";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "sdg-mit";
|
||||
repo = "gitless";
|
||||
rev = "v${ver}";
|
||||
sha256 = "1v22i5lardswpqb6vxjgwra3ac8652qyajbijfj18vlkhajz78hq";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = with pythonPackages; [ sh pygit2 clint ];
|
||||
|
||||
doCheck = false;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://gitless.com/;
|
||||
description = "A version control system built on top of Git";
|
||||
license = licenses.gpl2;
|
||||
platforms = platforms.all;
|
||||
maintainers = [ maintainers.cransom ];
|
||||
};
|
||||
}
|
||||
|
@ -1,69 +0,0 @@
|
||||
{ stdenv, fetchurl, python2Packages, sqlite, which, strace }:
|
||||
|
||||
python2Packages.buildPythonApplication rec {
|
||||
name = "glance-${version}";
|
||||
version = "11.0.0";
|
||||
namePrefix = "";
|
||||
|
||||
PBR_VERSION = "${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/openstack/glance/archive/${version}.tar.gz";
|
||||
sha256 = "05rz1lmzdmpnw8sf87vvi0l6q9g6s840z934zyinw17yfcvmqrdg";
|
||||
};
|
||||
|
||||
# https://github.com/openstack/glance/blob/stable/liberty/requirements.txt
|
||||
propagatedBuildInputs = with python2Packages; [
|
||||
pbr sqlalchemy anyjson eventlet PasteDeploy routes webob sqlalchemy_migrate
|
||||
httplib2 pycrypto iso8601 stevedore futurist keystonemiddleware paste
|
||||
jsonschema keystoneclient pyopenssl six retrying semantic-version qpid-python
|
||||
WSME osprofiler glance_store castellan taskflow cryptography xattr pysendfile
|
||||
|
||||
# oslo componenets
|
||||
oslo-config oslo-context oslo-concurrency oslo-service oslo-utils oslo-db
|
||||
oslo-i18n oslo-log oslo-messaging oslo-middleware oslo-policy oslo-serialization
|
||||
MySQL_python
|
||||
];
|
||||
|
||||
buildInputs = with python2Packages; [
|
||||
Babel coverage fixtures mox3 mock oslosphinx requests testrepository pep8
|
||||
testresources testscenarios testtools psutil_1 oslotest psycopg2
|
||||
sqlite which strace
|
||||
];
|
||||
|
||||
patchPhase = ''
|
||||
# it's not a test, but a class mixin
|
||||
sed -i 's/ImageCacheTestCase/ImageCacheMixin/' glance/tests/unit/test_image_cache.py
|
||||
|
||||
# these require network access, see https://bugs.launchpad.net/glance/+bug/1508868
|
||||
sed -i 's/test_get_image_data_http/noop/' glance/tests/unit/common/scripts/test_scripts_utils.py
|
||||
sed -i 's/test_set_image_data_http/noop/' glance/tests/unit/common/scripts/image_import/test_main.py
|
||||
sed -i 's/test_create_image_with_nonexistent_location_url/noop/' glance/tests/unit/v1/test_api.py
|
||||
sed -i 's/test_upload_image_http_nonexistent_location_url/noop/' glance/tests/unit/v1/test_api.py
|
||||
|
||||
# TODO: couldn't figure out why this test is failing
|
||||
sed -i 's/test_all_task_api/noop/' glance/tests/integration/v2/test_tasks_api.py
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
# check all binaries don't crash
|
||||
for i in $out/bin/*; do
|
||||
case "$i" in
|
||||
*glance-artifacts) # https://bugs.launchpad.net/glance/+bug/1508879
|
||||
:
|
||||
;;
|
||||
*)
|
||||
$i --help
|
||||
esac
|
||||
done
|
||||
|
||||
cp etc/*-paste.ini $out/etc/
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://glance.openstack.org/;
|
||||
description = "Services for discovering, registering, and retrieving virtual machine images";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -1,55 +0,0 @@
|
||||
{ stdenv, fetchurl, python2Packages, xmlsec, which, openssl }:
|
||||
|
||||
python2Packages.buildPythonApplication rec {
|
||||
name = "keystone-${version}";
|
||||
version = "8.0.0";
|
||||
namePrefix = "";
|
||||
|
||||
PBR_VERSION = "${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/openstack/keystone/archive/${version}.tar.gz";
|
||||
sha256 = "1xbrs7xgwjzrs07zyxxcl2lq18dh582gd6lx1zzzji8c0qmffy0z";
|
||||
};
|
||||
|
||||
# remove on next version bump
|
||||
patches = [ ./remove-oslo-policy-tests.patch ];
|
||||
|
||||
# https://github.com/openstack/keystone/blob/stable/liberty/requirements.txt
|
||||
propagatedBuildInputs = with python2Packages; [
|
||||
pbr webob eventlet greenlet PasteDeploy paste routes cryptography six
|
||||
sqlalchemy sqlalchemy_migrate stevedore passlib keystoneclient memcached
|
||||
keystonemiddleware oauthlib pysaml2 dogpile_cache jsonschema pycadf msgpack
|
||||
xmlsec MySQL_python
|
||||
|
||||
# oslo
|
||||
oslo-cache oslo-concurrency oslo-config oslo-context oslo-messaging oslo-db
|
||||
oslo-i18n oslo-log oslo-middleware oslo-policy oslo-serialization oslo-service
|
||||
oslo-utils
|
||||
];
|
||||
|
||||
buildInputs = with python2Packages; [
|
||||
coverage fixtures mock subunit tempest-lib testtools testrepository
|
||||
ldap ldappool webtest requests oslotest pep8 pymongo which
|
||||
];
|
||||
|
||||
makeWrapperArgs = ["--prefix PATH : '${openssl.bin}/bin:$PATH'"];
|
||||
|
||||
postInstall = ''
|
||||
# install .ini files
|
||||
mkdir -p $out/etc
|
||||
cp etc/* $out/etc
|
||||
|
||||
# check all binaries don't crash
|
||||
for i in $out/bin/*; do
|
||||
$i --help
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://keystone.openstack.org/;
|
||||
description = "Authentication, authorization and service discovery mechanisms via HTTP";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -1,93 +0,0 @@
|
||||
From 3aefdf4de76fdcdc02093bc631e339f9ecd4c707 Mon Sep 17 00:00:00 2001
|
||||
From: James Page <james.page@ubuntu.com>
|
||||
Date: Fri, 18 Sep 2015 16:38:47 +0100
|
||||
Subject: Add compatibility with iproute2 >= 4.0
|
||||
|
||||
The ip netns list command adds additional id data in more recent
|
||||
versions of iproute2 of the format:
|
||||
|
||||
qdhcp-35fc068a-750d-4add-b1d2-af392dbd8790 (id: 1)
|
||||
|
||||
Update parsing to deal with old and new formats.
|
||||
|
||||
Change-Id: I0d3fc4262284172f5ad31e4f2f78ae1fb33b4228
|
||||
Closes-Bug: 1497309
|
||||
---
|
||||
neutron/agent/linux/ip_lib.py | 6 +++---
|
||||
neutron/tests/functional/agent/test_l3_agent.py | 2 +-
|
||||
neutron/tests/unit/agent/linux/test_ip_lib.py | 15 +++++++++++++++
|
||||
3 files changed, 19 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/neutron/agent/linux/ip_lib.py b/neutron/agent/linux/ip_lib.py
|
||||
index 551341a..a717bf6 100644
|
||||
--- a/neutron/agent/linux/ip_lib.py
|
||||
+++ b/neutron/agent/linux/ip_lib.py
|
||||
@@ -208,7 +208,7 @@ class IPWrapper(SubProcessBase):
|
||||
@classmethod
|
||||
def get_namespaces(cls):
|
||||
output = cls._execute([], 'netns', ('list',))
|
||||
- return [l.strip() for l in output.split('\n')]
|
||||
+ return [l.split()[0] for l in output.splitlines()]
|
||||
|
||||
|
||||
class IPDevice(SubProcessBase):
|
||||
@@ -819,8 +819,8 @@ class IpNetnsCommand(IpCommandBase):
|
||||
output = self._parent._execute(
|
||||
['o'], 'netns', ['list'],
|
||||
run_as_root=cfg.CONF.AGENT.use_helper_for_ns_read)
|
||||
- for line in output.split('\n'):
|
||||
- if name == line.strip():
|
||||
+ for line in [l.split()[0] for l in output.splitlines()]:
|
||||
+ if name == line:
|
||||
return True
|
||||
return False
|
||||
|
||||
diff --git a/neutron/tests/functional/agent/test_l3_agent.py b/neutron/tests/functional/agent/test_l3_agent.py
|
||||
index ffa20e6..84b16df 100644
|
||||
--- a/neutron/tests/functional/agent/test_l3_agent.py
|
||||
+++ b/neutron/tests/functional/agent/test_l3_agent.py
|
||||
@@ -790,7 +790,7 @@ class L3HATestFramework(L3AgentTestFramework):
|
||||
get_ns_name = mock.patch.object(
|
||||
namespaces.RouterNamespace, '_get_ns_name').start()
|
||||
get_ns_name.return_value = "%s%s%s" % (
|
||||
- namespaces.RouterNamespace._get_ns_name(router_info['id']),
|
||||
+ 'qrouter-' + router_info['id'],
|
||||
self.NESTED_NAMESPACE_SEPARATOR, self.agent.host)
|
||||
router1 = self.manage_router(self.agent, router_info)
|
||||
|
||||
diff --git a/neutron/tests/unit/agent/linux/test_ip_lib.py b/neutron/tests/unit/agent/linux/test_ip_lib.py
|
||||
index 2de408d..bdfc9d7 100644
|
||||
--- a/neutron/tests/unit/agent/linux/test_ip_lib.py
|
||||
+++ b/neutron/tests/unit/agent/linux/test_ip_lib.py
|
||||
@@ -27,6 +27,11 @@ NETNS_SAMPLE = [
|
||||
'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb',
|
||||
'cccccccc-cccc-cccc-cccc-cccccccccccc']
|
||||
|
||||
+NETNS_SAMPLE_IPROUTE2_4 = [
|
||||
+ '12345678-1234-5678-abcd-1234567890ab (id: 1)',
|
||||
+ 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb (id: 0)',
|
||||
+ 'cccccccc-cccc-cccc-cccc-cccccccccccc (id: 2)']
|
||||
+
|
||||
LINK_SAMPLE = [
|
||||
'1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN \\'
|
||||
'link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 promiscuity 0',
|
||||
@@ -279,6 +284,16 @@ class TestIpWrapper(base.BaseTestCase):
|
||||
|
||||
self.execute.assert_called_once_with([], 'netns', ('list',))
|
||||
|
||||
+ def test_get_namespaces_iproute2_4(self):
|
||||
+ self.execute.return_value = '\n'.join(NETNS_SAMPLE_IPROUTE2_4)
|
||||
+ retval = ip_lib.IPWrapper.get_namespaces()
|
||||
+ self.assertEqual(retval,
|
||||
+ ['12345678-1234-5678-abcd-1234567890ab',
|
||||
+ 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb',
|
||||
+ 'cccccccc-cccc-cccc-cccc-cccccccccccc'])
|
||||
+
|
||||
+ self.execute.assert_called_once_with([], 'netns', ('list',))
|
||||
+
|
||||
def test_add_tuntap(self):
|
||||
ip_lib.IPWrapper().add_tuntap('tap0')
|
||||
self.execute.assert_called_once_with([], 'tuntap',
|
||||
--
|
||||
cgit v0.11.2
|
||||
|
@ -1,69 +0,0 @@
|
||||
{ stdenv, fetchurl, python2Packages, xmlsec, which, dnsmasq }:
|
||||
|
||||
python2Packages.buildPythonApplication rec {
|
||||
name = "neutron-${version}";
|
||||
version = "7.0.0";
|
||||
namePrefix = "";
|
||||
|
||||
PBR_VERSION = "${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/openstack/neutron/archive/${version}.tar.gz";
|
||||
sha256 = "02ll081xly7zfjmgkal81fy3aplbnn5zgx8xfy3yy1nv3kfnyi40";
|
||||
};
|
||||
|
||||
# https://github.com/openstack/neutron/blob/stable/liberty/requirements.txt
|
||||
propagatedBuildInputs = with python2Packages; [
|
||||
pbr paste PasteDeploy routes debtcollector eventlet greenlet httplib2 requests
|
||||
jinja2 keystonemiddleware netaddr retrying sqlalchemy webob alembic six
|
||||
stevedore pecan ryu networking-hyperv MySQL_python
|
||||
|
||||
# clients
|
||||
keystoneclient neutronclient novaclient
|
||||
|
||||
# oslo components
|
||||
oslo-concurrency oslo-config oslo-context oslo-db oslo-i18n oslo-log oslo-messaging
|
||||
oslo-middleware oslo-policy oslo-rootwrap oslo-serialization oslo-service oslo-utils
|
||||
oslo-versionedobjects
|
||||
];
|
||||
|
||||
# make sure we include migrations
|
||||
prePatch = ''
|
||||
echo "graft neutron" >> MANIFEST.in
|
||||
substituteInPlace etc/neutron/rootwrap.d/dhcp.filters --replace "/sbin/dnsmasq" "${dnsmasq}/bin/dnsmasq"
|
||||
'';
|
||||
patches = [ ./neutron-iproute-4.patch ];
|
||||
|
||||
buildInputs = with python2Packages; [
|
||||
cliff coverage fixtures mock subunit requests-mock oslosphinx testrepository
|
||||
testtools testresources testscenarios webtest oslotest os-testr tempest-lib
|
||||
ddt pep8
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
# requires extra optional dependencies
|
||||
# TODO: package networking_mlnx, networking_vsphere, bsnstacklib, XenAPI
|
||||
rm $out/bin/{neutron-mlnx-agent,neutron-ovsvapp-agent,neutron-restproxy-agent,neutron-rootwrap-xen-dom0}
|
||||
|
||||
# check all binaries don't crash
|
||||
for i in $out/bin/*; do
|
||||
case "$i" in
|
||||
*neutron-pd-notify|*neutron-rootwrap-daemon|*neutron-rootwrap)
|
||||
:
|
||||
;;
|
||||
*)
|
||||
$i --help
|
||||
esac
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://neutron.openstack.org/;
|
||||
description = "Virtual network service for Openstack";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
# Marked as broken due to needing an update for security issues.
|
||||
# See: https://github.com/NixOS/nixpkgs/issues/18856
|
||||
broken = true;
|
||||
};
|
||||
}
|
@ -1,71 +0,0 @@
|
||||
{ stdenv, fetchurl, python2Packages, openssl, openssh }:
|
||||
|
||||
python2Packages.buildPythonApplication rec {
|
||||
name = "nova-${version}";
|
||||
version = "12.0.0";
|
||||
namePrefix = "";
|
||||
|
||||
PBR_VERSION = "${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/openstack/nova/archive/${version}.tar.gz";
|
||||
sha256 = "175n1znvmy8f5vqvabc2fa4qy8y17685z4gzpq8984mdsdnpv21w";
|
||||
};
|
||||
|
||||
# otherwise migrate.cfg is not installed
|
||||
patchPhase = ''
|
||||
echo "graft nova" >> MANIFEST.in
|
||||
|
||||
# remove transient error test, see http://hydra.nixos.org/build/40203534
|
||||
rm nova/tests/unit/compute/test_{shelve,compute_utils}.py
|
||||
'';
|
||||
|
||||
# https://github.com/openstack/nova/blob/stable/liberty/requirements.txt
|
||||
propagatedBuildInputs = with python2Packages; [
|
||||
pbr sqlalchemy boto decorator eventlet jinja2 lxml routes cryptography
|
||||
webob greenlet PasteDeploy paste prettytable sqlalchemy_migrate netaddr
|
||||
netifaces paramiko Babel iso8601 jsonschema keystoneclient requests six
|
||||
stevedore websockify rfc3986 os-brick psutil_1 alembic psycopg2 pymysql
|
||||
keystonemiddleware MySQL_python
|
||||
|
||||
# oslo components
|
||||
oslo-rootwrap oslo-reports oslo-utils oslo-i18n oslo-config oslo-context
|
||||
oslo-log oslo-serialization oslo-middleware oslo-db oslo-service oslo-messaging
|
||||
oslo-concurrency oslo-versionedobjects
|
||||
|
||||
# clients
|
||||
cinderclient neutronclient glanceclient
|
||||
];
|
||||
|
||||
buildInputs = with python2Packages; [
|
||||
coverage fixtures mock mox3 subunit requests-mock pillow oslosphinx
|
||||
oslotest testrepository testresources testtools tempest-lib bandit
|
||||
oslo-vmware pep8 barbicanclient ironicclient openssl openssh
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
cp -prvd etc $out/etc
|
||||
|
||||
# check all binaries don't crash
|
||||
for i in $out/bin/*; do
|
||||
case "$i" in
|
||||
*nova-dhcpbridge*)
|
||||
:
|
||||
;;
|
||||
*nova-rootwrap*)
|
||||
:
|
||||
;;
|
||||
*)
|
||||
$i --help
|
||||
;;
|
||||
esac
|
||||
done
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://nova.openstack.org/;
|
||||
description = "OpenStack Compute (a.k.a. Nova), a cloud computing fabric controller";
|
||||
license = stdenv.lib.licenses.asl20;
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
};
|
||||
}
|
@ -1,61 +0,0 @@
|
||||
From 6016d017004acaae288312b196ef07ea98e9962d Mon Sep 17 00:00:00 2001
|
||||
From: Brant Knudson <bknudson@us.ibm.com>
|
||||
Date: Mon, 12 Oct 2015 15:12:45 -0500
|
||||
Subject: [PATCH] Remove oslo.policy implementation tests from keystone
|
||||
|
||||
oslo.policy 0.12.0 contains a change to use requests to do the http
|
||||
check rather than urllib. This change caused keystone tests to fail
|
||||
because the keystone tests were mocking urllib, making assumptions
|
||||
about how oslo.policy is implemented. Keystone doesn't need to test
|
||||
internal features of oslo.policy, so these tests are removed.
|
||||
|
||||
Change-Id: I9d6e4950b9fe75cbb94100c8effdcec002642027
|
||||
Closes-Bug: 1505374
|
||||
---
|
||||
keystone/tests/unit/test_policy.py | 24 ------------------------
|
||||
1 file changed, 24 deletions(-)
|
||||
|
||||
diff --git a/keystone/tests/unit/test_policy.py b/keystone/tests/unit/test_policy.py
|
||||
index b2f0e52..686e2b7 100644
|
||||
--- a/keystone/tests/unit/test_policy.py
|
||||
+++ b/keystone/tests/unit/test_policy.py
|
||||
@@ -16,10 +16,8 @@
|
||||
import json
|
||||
import os
|
||||
|
||||
-import mock
|
||||
from oslo_policy import policy as common_policy
|
||||
import six
|
||||
-from six.moves.urllib import request as urlrequest
|
||||
from testtools import matchers
|
||||
|
||||
from keystone import exception
|
||||
@@ -118,28 +116,6 @@ def test_enforce_good_action(self):
|
||||
action = "example:allowed"
|
||||
rules.enforce(self.credentials, action, self.target)
|
||||
|
||||
- def test_enforce_http_true(self):
|
||||
-
|
||||
- def fakeurlopen(url, post_data):
|
||||
- return six.StringIO("True")
|
||||
-
|
||||
- action = "example:get_http"
|
||||
- target = {}
|
||||
- with mock.patch.object(urlrequest, 'urlopen', fakeurlopen):
|
||||
- result = rules.enforce(self.credentials, action, target)
|
||||
- self.assertTrue(result)
|
||||
-
|
||||
- def test_enforce_http_false(self):
|
||||
-
|
||||
- def fakeurlopen(url, post_data):
|
||||
- return six.StringIO("False")
|
||||
-
|
||||
- action = "example:get_http"
|
||||
- target = {}
|
||||
- with mock.patch.object(urlrequest, 'urlopen', fakeurlopen):
|
||||
- self.assertRaises(exception.ForbiddenAction, rules.enforce,
|
||||
- self.credentials, action, target)
|
||||
-
|
||||
def test_templatized_enforcement(self):
|
||||
target_mine = {'project_id': 'fake'}
|
||||
target_not_mine = {'project_id': 'another'}
|
@ -14,5 +14,11 @@ stdenv.mkDerivation {
|
||||
|
||||
meta = {
|
||||
platforms = stdenv.lib.platforms.linux;
|
||||
description = "An LD_PRELOAD library to intercept and rewrite the paths in glibc calls";
|
||||
longDescription = ''
|
||||
libredirect is an LD_PRELOAD library to intercept and rewrite the paths in
|
||||
glibc calls based on the value of $NIX_REDIRECTS, a colon-separated list
|
||||
of path prefixes to be rewritten, e.g. "/src=/dst:/usr/=/nix/store/".
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
@ -1,14 +1,22 @@
|
||||
{ stdenv, fetchurl, pkgconfig, atk, cairo, glib, gtk3, pango
|
||||
, libxml2Python, perl, intltool, gettext, gnome3 }:
|
||||
, libxml2, perl, intltool, gettext, gnome3, dbus, xvfb_run, shared_mime_info }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
inherit (import ./src.nix fetchurl) name src;
|
||||
|
||||
propagatedBuildInputs = [ gtk3 ];
|
||||
propagatedBuildInputs = [
|
||||
# Required by gtksourceview-3.0.pc
|
||||
gtk3
|
||||
# Used by gtk_source_language_manager_guess_language
|
||||
shared_mime_info
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
buildInputs = [ atk cairo glib pango
|
||||
libxml2Python perl intltool gettext ];
|
||||
outputs = [ "out" "dev" ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig intltool gettext perl ]
|
||||
++ stdenv.lib.optionals doCheck checkInputs;
|
||||
buildInputs = [ atk cairo glib pango libxml2 ];
|
||||
checkInputs = [ xvfb_run dbus ];
|
||||
|
||||
preBuild = ''
|
||||
substituteInPlace gtksourceview/gtksourceview-utils.c --replace "@NIX_SHARE_PATH@" "$out/share"
|
||||
@ -16,6 +24,14 @@ stdenv.mkDerivation rec {
|
||||
|
||||
patches = [ ./nix_share_path.patch ];
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = ''
|
||||
export NO_AT_BRIDGE=1
|
||||
xvfb-run -s '-screen 0 800x600x24' dbus-run-session \
|
||||
--config-file=${dbus.daemon}/share/dbus-1/session.conf \
|
||||
make check
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
platforms = with platforms; linux ++ darwin;
|
||||
maintainers = gnome3.maintainers;
|
||||
|
@ -1,10 +1,10 @@
|
||||
# Autogenerated by maintainers/scripts/gnome.sh update
|
||||
|
||||
fetchurl: {
|
||||
name = "gtksourceview-3.24.5";
|
||||
name = "gtksourceview-3.24.6";
|
||||
|
||||
src = fetchurl {
|
||||
url = mirror://gnome/sources/gtksourceview/3.24/gtksourceview-3.24.5.tar.xz;
|
||||
sha256 = "0246185fcc20c4734d01419a83f58f251a82e2a902fe60bb0335187fcf658181";
|
||||
url = mirror://gnome/sources/gtksourceview/3.24/gtksourceview-3.24.6.tar.xz;
|
||||
sha256 = "7aa6bdfebcdc73a763dddeaa42f190c40835e6f8495bb9eb8f78587e2577c188";
|
||||
};
|
||||
}
|
||||
|
@ -1,7 +1,7 @@
|
||||
{ stdenv, fetchurl, makeWrapper, bootstrap-chicken ? null }:
|
||||
|
||||
let
|
||||
version = "4.11.0";
|
||||
version = "4.13.0";
|
||||
platform = with stdenv;
|
||||
if isDarwin then "macosx"
|
||||
else if isCygwin then "cygwin"
|
||||
@ -17,7 +17,7 @@ stdenv.mkDerivation {
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://code.call-cc.org/releases/${version}/chicken-${version}.tar.gz";
|
||||
sha256 = "12ddyiikqknpr8h6llsxbg2fz75xnayvcnsvr1cwv8xnjn7jpp73";
|
||||
sha256 = "0hvckhi5gfny3mlva6d7y9pmx7cbwvq0r7mk11k3sdiik9hlkmdd";
|
||||
};
|
||||
|
||||
setupHook = lib.ifEnable (bootstrap-chicken != null) ./setup-hook.sh;
|
||||
|
@ -94,6 +94,9 @@ let
|
||||
# Change the #error on GCC > 4.9 to a #warning.
|
||||
sed -i $out/include/host_config.h -e 's/#error\(.*unsupported GNU version\)/#warning\1/'
|
||||
|
||||
# Fix builds with newer glibc version
|
||||
sed -i "1 i#define _BITS_FLOATN_H" "$out/include/host_defines.h"
|
||||
|
||||
# Ensure that cmake can find CUDA.
|
||||
mkdir -p $out/nix-support
|
||||
echo "cmakeFlags+=' -DCUDA_TOOLKIT_ROOT_DIR=$out'" >> $out/nix-support/setup-hook
|
||||
|
@ -1,15 +1,14 @@
|
||||
{ stdenv, fetchurl, makeWrapper, jre, unzip }:
|
||||
|
||||
let
|
||||
version = "1.1.60";
|
||||
release = "55";
|
||||
version = "1.2.10";
|
||||
in stdenv.mkDerivation rec {
|
||||
inherit version;
|
||||
name = "kotlin-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}-release-${release}.zip";
|
||||
sha256 = "04vlhpc92pg0bcgapd5w2b3039sgv52km8i0m4mc5yf0ik6hx1s9";
|
||||
url = "https://github.com/JetBrains/kotlin/releases/download/v${version}/kotlin-compiler-${version}.zip";
|
||||
sha256 = "1qr61i5fjd5p7bi05hplagmcxgb05k4xdh5yjjvaq8cij5l4b1wm";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [ jre ] ;
|
||||
|
45
pkgs/development/coq-modules/category-theory/default.nix
Normal file
45
pkgs/development/coq-modules/category-theory/default.nix
Normal file
@ -0,0 +1,45 @@
|
||||
{ stdenv, fetchgit, coq, ssreflect }:
|
||||
|
||||
let param =
|
||||
{
|
||||
"8.6" = {
|
||||
version = "20171214";
|
||||
rev = "babf9c013506da1dbd67171e4a3ae87fdb7e9d00";
|
||||
sha256 = "16fsf4cggx9s9fkijnpi4g614nmdb2yx7inzqqn070f8p959qcrd";
|
||||
};
|
||||
|
||||
"8.7" = {
|
||||
version = "20171214";
|
||||
rev = "babf9c013506da1dbd67171e4a3ae87fdb7e9d00";
|
||||
sha256 = "16fsf4cggx9s9fkijnpi4g614nmdb2yx7inzqqn070f8p959qcrd";
|
||||
};
|
||||
|
||||
}."${coq.coq-version}"
|
||||
; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "coq${coq.coq-version}-category-theory-${param.version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://github.com/jwiegley/category-theory.git;
|
||||
inherit (param) rev sha256;
|
||||
};
|
||||
|
||||
buildInputs = [ coq.ocaml coq.camlp5 coq.findlib ];
|
||||
propagatedBuildInputs = [ coq ssreflect ];
|
||||
|
||||
enableParallelBuilding = false;
|
||||
|
||||
installPhase = ''
|
||||
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = git://github.com/jwiegley/category-theory.git;
|
||||
description = "A formalization of category theory in Coq for personal study and practical work";
|
||||
maintainers = with maintainers; [ jwiegley ];
|
||||
platforms = coq.meta.platforms;
|
||||
};
|
||||
|
||||
}
|
51
pkgs/development/coq-modules/coq-haskell/default.nix
Normal file
51
pkgs/development/coq-modules/coq-haskell/default.nix
Normal file
@ -0,0 +1,51 @@
|
||||
{ stdenv, fetchgit, coq, ssreflect }:
|
||||
|
||||
let param =
|
||||
{
|
||||
"8.5" = {
|
||||
version = "20171215";
|
||||
rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
};
|
||||
|
||||
"8.6" = {
|
||||
version = "20171215";
|
||||
rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
};
|
||||
|
||||
"8.7" = {
|
||||
version = "20171215";
|
||||
rev = "e2cf8b270c2efa3b56fab1ef6acc376c2c3de968";
|
||||
sha256 = "09dq1vvshhlhgjccrhqgbhnq2hrys15xryfszqq11rzpgvl2zgdv";
|
||||
};
|
||||
|
||||
}."${coq.coq-version}"
|
||||
; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
|
||||
name = "coq${coq.coq-version}-coq-haskell-${param.version}";
|
||||
|
||||
src = fetchgit {
|
||||
url = git://github.com/jwiegley/coq-haskell.git;
|
||||
inherit (param) rev sha256;
|
||||
};
|
||||
|
||||
buildInputs = [ coq.ocaml coq.camlp5 coq.findlib ];
|
||||
propagatedBuildInputs = [ coq ssreflect ];
|
||||
|
||||
enableParallelBuilding = false;
|
||||
|
||||
installPhase = ''
|
||||
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = git://github.com/jwiegley/coq-haskell.git;
|
||||
description = "A library for formalizing Haskell types and functions in Coq";
|
||||
maintainers = with maintainers; [ jwiegley ];
|
||||
platforms = coq.meta.platforms;
|
||||
};
|
||||
|
||||
}
|
@ -95,7 +95,7 @@ self: super: {
|
||||
name = "git-annex-${drv.version}-src";
|
||||
url = "git://git-annex.branchable.com/";
|
||||
rev = "refs/tags/" + drv.version;
|
||||
sha256 = "1bnnrwamw3d37fz7cwykxhi1ryy22dq8r6ld59gsbgcv23drqzax";
|
||||
sha256 = "1fd7lyrwr60dp55swc5iwl0mkkzmdzpmj9qmx1qca2r7y9wc5w5k";
|
||||
};
|
||||
})).override {
|
||||
dbus = if pkgs.stdenv.isLinux then self.dbus else null;
|
||||
@ -513,14 +513,14 @@ self: super: {
|
||||
hslua_0_9_3 = super.hslua_0_9_3.override { lua5_1 = pkgs.lua5_3; };
|
||||
hslua-module-text = super.hslua-module-text.override { hslua = self.hslua_0_9_3; };
|
||||
texmath_0_10 = super.texmath_0_10.override { pandoc-types = self.pandoc-types_1_17_3; };
|
||||
pandoc_2_0_4 = super.pandoc_2_0_4.override {
|
||||
pandoc_2_0_5 = super.pandoc_2_0_5.override {
|
||||
doctemplates = self.doctemplates_0_2_1;
|
||||
pandoc-types = self.pandoc-types_1_17_3;
|
||||
skylighting = self.skylighting_0_4_4_1;
|
||||
texmath = self.texmath_0_10;
|
||||
};
|
||||
pandoc-citeproc_0_12_1 = super.pandoc-citeproc_0_12_1.override {
|
||||
pandoc = self.pandoc_2_0_4;
|
||||
pandoc = self.pandoc_2_0_5;
|
||||
pandoc-types = self.pandoc-types_1_17_3;
|
||||
};
|
||||
|
||||
@ -642,7 +642,8 @@ self: super: {
|
||||
'';
|
||||
});
|
||||
|
||||
# Fine-tune the build.
|
||||
# Build the latest git version instead of the official release. This isn't
|
||||
# ideal, but Chris doesn't seem to make official releases any more.
|
||||
structured-haskell-mode = (overrideCabal super.structured-haskell-mode (drv: {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
owner = "chrisdone";
|
||||
@ -1003,7 +1004,7 @@ self: super: {
|
||||
# Newer hpack's needs newer HUnit, but we cannot easily override the version
|
||||
# used in the build, so we take the easy way out and disable the test suite.
|
||||
hpack_0_20_0 = dontCheck super.hpack_0_20_0;
|
||||
hpack_0_21_0 = dontCheck super.hpack_0_21_0;
|
||||
hpack_0_21_2 = dontCheck super.hpack_0_21_2;
|
||||
|
||||
# Stack 1.6.1 needs newer versions than LTS-9 provides.
|
||||
stack = super.stack.overrideScope (self: super: {
|
||||
@ -1016,4 +1017,7 @@ self: super: {
|
||||
unliftio = self.unliftio_0_2_0_0;
|
||||
});
|
||||
|
||||
# Hoogle needs a newer version than lts-9 provides.
|
||||
hoogle = super.hoogle.override { haskell-src-exts = self.haskell-src-exts_1_20_1; };
|
||||
|
||||
}
|
||||
|
@ -37,7 +37,7 @@ core-packages:
|
||||
- ghcjs-base-0
|
||||
|
||||
default-package-overrides:
|
||||
# LTS Haskell 9.17
|
||||
# LTS Haskell 9.18
|
||||
- abstract-deque ==0.3
|
||||
- abstract-deque-tests ==0.3
|
||||
- abstract-par ==0.3.3
|
||||
@ -170,6 +170,7 @@ default-package-overrides:
|
||||
- ansigraph ==0.3.0.4
|
||||
- ansi-terminal ==0.6.3.1
|
||||
- ansi-wl-pprint ==0.6.7.3
|
||||
- apecs ==0.2.4.7
|
||||
- api-field-json-th ==0.1.0.2
|
||||
- appar ==0.1.4
|
||||
- apportionment ==0.0.0.2
|
||||
@ -232,7 +233,7 @@ default-package-overrides:
|
||||
- base-unicode-symbols ==0.2.2.4
|
||||
- basic-prelude ==0.6.1.1
|
||||
- bcrypt ==0.0.10
|
||||
- bench ==1.0.6
|
||||
- bench ==1.0.7
|
||||
- benchpress ==0.2.2.10
|
||||
- bencode ==0.6.0.0
|
||||
- bento ==0.1.0
|
||||
@ -251,7 +252,7 @@ default-package-overrides:
|
||||
- binary-search ==1.0.0.3
|
||||
- binary-tagged ==0.1.4.2
|
||||
- binary-typed ==1.0
|
||||
- bindings-DSL ==1.0.23
|
||||
- bindings-DSL ==1.0.24
|
||||
- bindings-GLFW ==3.1.2.3
|
||||
- bindings-libzip ==1.0.1
|
||||
- bioace ==0.0.1
|
||||
@ -327,7 +328,7 @@ default-package-overrides:
|
||||
- c2hs ==0.28.2
|
||||
- Cabal ==1.24.2.0
|
||||
- cabal-dependency-licenses ==0.2.0.0
|
||||
- cabal-doctest ==1.0.3
|
||||
- cabal-doctest ==1.0.4
|
||||
- cabal-file-th ==0.2.4
|
||||
- cabal-helper ==0.7.3.0
|
||||
- cabal-rpm ==0.11.2
|
||||
@ -404,7 +405,7 @@ default-package-overrides:
|
||||
- code-page ==0.1.3
|
||||
- codo-notation ==0.5.2
|
||||
- colorful-monoids ==0.2.1.0
|
||||
- colour ==2.3.3
|
||||
- colour ==2.3.4
|
||||
- comfort-graph ==0.0.2.1
|
||||
- commutative ==0.0.1.4
|
||||
- comonad ==5.0.2
|
||||
@ -422,7 +423,7 @@ default-package-overrides:
|
||||
- concurrent-split ==0.0.1
|
||||
- concurrent-supply ==0.1.8
|
||||
- conduit ==1.2.12.1
|
||||
- conduit-combinators ==1.1.1
|
||||
- conduit-combinators ==1.1.2
|
||||
- conduit-connection ==0.1.0.3
|
||||
- conduit-extra ==1.1.17
|
||||
- conduit-iconv ==0.1.1.2
|
||||
@ -516,7 +517,7 @@ default-package-overrides:
|
||||
- data-ordlist ==0.4.7.0
|
||||
- data-ref ==0.0.1.1
|
||||
- data-reify ==0.6.1
|
||||
- data-serializer ==0.3
|
||||
- data-serializer ==0.3.2
|
||||
- data-textual ==0.3.0.2
|
||||
- dataurl ==0.1.0.0
|
||||
- DAV ==1.3.1
|
||||
@ -781,9 +782,9 @@ default-package-overrides:
|
||||
- gi-gdk ==3.0.14
|
||||
- gi-gdkpixbuf ==2.0.14
|
||||
- gi-gio ==2.0.14
|
||||
- gi-glib ==2.0.14
|
||||
- gi-glib ==2.0.15
|
||||
- gi-gobject ==2.0.15
|
||||
- gi-gtk ==3.0.17
|
||||
- gi-gtk ==3.0.18
|
||||
- gi-javascriptcore ==3.0.14
|
||||
- ginger ==0.5.3.0
|
||||
- gio ==0.13.4.0
|
||||
@ -933,7 +934,7 @@ default-package-overrides:
|
||||
- groundhog-mysql ==0.8
|
||||
- groundhog-postgresql ==0.8.0.1
|
||||
- groundhog-sqlite ==0.8
|
||||
- groundhog-th ==0.8.0.1
|
||||
- groundhog-th ==0.8.0.2
|
||||
- group-by-date ==0.1.0.2
|
||||
- grouped-list ==0.2.1.3
|
||||
- groupoids ==4.0
|
||||
@ -941,6 +942,7 @@ default-package-overrides:
|
||||
- gtk ==0.14.7
|
||||
- gtk2hs-buildtools ==0.13.3.1
|
||||
- gtk3 ==0.14.8
|
||||
- gym-http-api ==0.1.0.0
|
||||
- H ==0.9.0.1
|
||||
- h2c ==1.0.0
|
||||
- hackage-db ==1.22
|
||||
@ -959,7 +961,7 @@ default-package-overrides:
|
||||
- hamlet ==1.2.0
|
||||
- HandsomeSoup ==0.4.2
|
||||
- handwriting ==0.1.0.3
|
||||
- hapistrano ==0.3.4.0
|
||||
- hapistrano ==0.3.5.0
|
||||
- happstack-hsp ==7.3.7.3
|
||||
- happstack-jmacro ==7.0.12
|
||||
- happstack-server ==7.4.6.4
|
||||
@ -971,9 +973,9 @@ default-package-overrides:
|
||||
- hashable-time ==0.2.0.1
|
||||
- hashmap ==1.3.2
|
||||
- hashtables ==1.2.2.1
|
||||
- haskeline ==0.7.4.0
|
||||
- haskeline ==0.7.4.1
|
||||
- haskell-gi ==0.20.3
|
||||
- haskell-gi-base ==0.20.5
|
||||
- haskell-gi-base ==0.20.7
|
||||
- haskell-gi-overloading ==1.0
|
||||
- haskell-import-graph ==1.0.3
|
||||
- haskell-lexer ==1.0.1
|
||||
@ -1025,7 +1027,7 @@ default-package-overrides:
|
||||
- heaps ==0.3.5
|
||||
- heatshrink ==0.1.0.0
|
||||
- hebrew-time ==0.1.1
|
||||
- hedgehog ==0.5
|
||||
- hedgehog ==0.5.1
|
||||
- hedgehog-quickcheck ==0.1
|
||||
- hedis ==0.9.12
|
||||
- here ==1.2.11
|
||||
@ -1074,8 +1076,8 @@ default-package-overrides:
|
||||
- hp2pretty ==0.8.0.2
|
||||
- hpack ==0.18.1
|
||||
- hpc-coveralls ==1.0.10
|
||||
- hPDB ==1.2.0.9
|
||||
- hPDB-examples ==1.2.0.7
|
||||
- hPDB ==1.2.0.10
|
||||
- hPDB-examples ==1.2.0.8
|
||||
- HPDF ==1.4.10
|
||||
- hpio ==0.8.0.10
|
||||
- hpp ==0.4.1
|
||||
@ -1094,8 +1096,8 @@ default-package-overrides:
|
||||
- hsebaysdk ==0.4.0.0
|
||||
- hse-cpp ==0.2
|
||||
- hsemail ==2
|
||||
- HSet ==0.0.1
|
||||
- hset ==2.2.0
|
||||
- HSet ==0.0.1
|
||||
- hsexif ==0.6.1.5
|
||||
- hs-GeoIP ==0.3
|
||||
- hsignal ==0.2.7.5
|
||||
@ -1126,7 +1128,7 @@ default-package-overrides:
|
||||
- hspec-wai ==0.8.0
|
||||
- hspec-wai-json ==0.8.0
|
||||
- hspec-webdriver ==1.2.0
|
||||
- hsshellscript ==3.4.2
|
||||
- hsshellscript ==3.4.5
|
||||
- hstatistics ==0.3
|
||||
- hstatsd ==0.1
|
||||
- HStringTemplate ==0.8.6
|
||||
@ -1147,13 +1149,13 @@ default-package-overrides:
|
||||
- http-client-openssl ==0.2.1.1
|
||||
- http-client-tls ==0.3.5.1
|
||||
- http-common ==0.8.2.0
|
||||
- http-conduit ==2.2.3.2
|
||||
- http-conduit ==2.2.4
|
||||
- http-date ==0.0.6.1
|
||||
- httpd-shed ==0.4.0.3
|
||||
- http-link-header ==1.0.3
|
||||
- http-media ==0.6.4
|
||||
- http-reverse-proxy ==0.4.5
|
||||
- http-streams ==0.8.5.3
|
||||
- http-streams ==0.8.5.5
|
||||
- http-types ==0.9.1
|
||||
- human-readable-duration ==0.2.0.3
|
||||
- HUnit ==1.5.0.0
|
||||
@ -1258,7 +1260,7 @@ default-package-overrides:
|
||||
- jmacro-rpc-snap ==0.3
|
||||
- jni ==0.3.1
|
||||
- jose ==0.6.0.3
|
||||
- jose-jwt ==0.7.7
|
||||
- jose-jwt ==0.7.8
|
||||
- js-flot ==0.8.3
|
||||
- js-jquery ==3.2.1
|
||||
- json ==0.9.1
|
||||
@ -1334,7 +1336,7 @@ default-package-overrides:
|
||||
- licensor ==0.2.1
|
||||
- lifted-async ==0.9.3
|
||||
- lifted-base ==0.2.3.11
|
||||
- lift-generics ==0.1.1
|
||||
- lift-generics ==0.1.2
|
||||
- line ==3.1.0
|
||||
- linear ==1.20.7
|
||||
- linear-accelerate ==0.4.1
|
||||
@ -1400,8 +1402,8 @@ default-package-overrides:
|
||||
- median-stream ==0.7.0.0
|
||||
- med-module ==0.1.1
|
||||
- megaparsec ==5.3.1
|
||||
- mega-sdist ==0.3.0.4
|
||||
- memory ==0.14.9
|
||||
- mega-sdist ==0.3.0.5
|
||||
- memory ==0.14.10
|
||||
- MemoTrie ==0.6.8
|
||||
- mersenne-random-pure64 ==0.2.2.0
|
||||
- messagepack ==0.5.4
|
||||
@ -1470,9 +1472,9 @@ default-package-overrides:
|
||||
- monoid-extras ==0.4.2
|
||||
- monoid-subclasses ==0.4.4
|
||||
- monoid-transformer ==0.0.3
|
||||
- mono-traversable ==1.0.4.0
|
||||
- mono-traversable ==1.0.5.0
|
||||
- mono-traversable-instances ==0.1.0.0
|
||||
- morte ==1.6.11
|
||||
- morte ==1.6.12
|
||||
- mountpoints ==1.0.2
|
||||
- mstate ==0.2.7
|
||||
- mtl ==2.2.1
|
||||
@ -1515,7 +1517,7 @@ default-package-overrides:
|
||||
- network-carbon ==1.0.10
|
||||
- network-conduit-tls ==1.2.2
|
||||
- network-house ==0.1.0.2
|
||||
- network-info ==0.2.0.8
|
||||
- network-info ==0.2.0.9
|
||||
- network-ip ==0.3.0.2
|
||||
- network-msgpack-rpc ==0.0.3
|
||||
- network-multicast ==0.2.0
|
||||
@ -1533,8 +1535,8 @@ default-package-overrides:
|
||||
- nfc ==0.1.0
|
||||
- nicify-lib ==1.0.1
|
||||
- NineP ==0.0.2.1
|
||||
- nix-paths ==1.0.0.1
|
||||
- nonce ==1.0.4
|
||||
- nix-paths ==1.0.1
|
||||
- nonce ==1.0.5
|
||||
- nondeterminism ==1.4
|
||||
- non-empty ==0.3
|
||||
- non-empty-sequence ==0.2.0.2
|
||||
@ -1556,7 +1558,7 @@ default-package-overrides:
|
||||
- objective ==1.1.1
|
||||
- ObjectName ==1.1.0.1
|
||||
- octane ==0.20.2
|
||||
- Octree ==0.5.4.3
|
||||
- Octree ==0.5.4.4
|
||||
- oeis ==0.3.9
|
||||
- ofx ==0.4.2.0
|
||||
- old-locale ==1.0.0.7
|
||||
@ -1691,7 +1693,7 @@ default-package-overrides:
|
||||
- posix-realtime ==0.0.0.4
|
||||
- postgresql-binary ==0.12.1
|
||||
- postgresql-libpq ==0.9.3.1
|
||||
- postgresql-schema ==0.1.13
|
||||
- postgresql-schema ==0.1.14
|
||||
- postgresql-simple ==0.5.3.0
|
||||
- postgresql-simple-migration ==0.1.11.0
|
||||
- postgresql-simple-opts ==0.2.0.2
|
||||
@ -1718,7 +1720,7 @@ default-package-overrides:
|
||||
- prettyprinter-compat-annotated-wl-pprint ==1
|
||||
- prettyprinter-compat-ansi-wl-pprint ==1.0.1
|
||||
- prettyprinter-compat-wl-pprint ==1.0.0.1
|
||||
- pretty-show ==1.6.13
|
||||
- pretty-show ==1.6.14
|
||||
- pretty-simple ==2.0.1.0
|
||||
- pretty-types ==0.2.3.1
|
||||
- primes ==0.2.1.0
|
||||
@ -1855,7 +1857,7 @@ default-package-overrides:
|
||||
- result ==0.2.6.0
|
||||
- rethinkdb ==2.2.0.10
|
||||
- rethinkdb-client-driver ==0.0.25
|
||||
- retry ==0.7.4.3
|
||||
- retry ==0.7.5.0
|
||||
- rev-state ==0.1.2
|
||||
- rfc5051 ==0.1.0.3
|
||||
- rng-utils ==0.2.1
|
||||
@ -1887,7 +1889,7 @@ default-package-overrides:
|
||||
- scotty ==0.11.0
|
||||
- scrape-changes ==0.1.0.5
|
||||
- scrypt ==0.5.0
|
||||
- SDL ==0.6.5.1
|
||||
- SDL ==0.6.6.0
|
||||
- sdl2 ==2.2.0
|
||||
- sdl2-gfx ==0.2
|
||||
- sdl2-image ==2.0.0
|
||||
@ -2114,7 +2116,7 @@ default-package-overrides:
|
||||
- tasty-kat ==0.0.3
|
||||
- tasty-program ==1.0.5
|
||||
- tasty-quickcheck ==0.8.4
|
||||
- tasty-rerun ==1.1.7
|
||||
- tasty-rerun ==1.1.8
|
||||
- tasty-silver ==3.1.10
|
||||
- tasty-smallcheck ==0.8.1
|
||||
- tasty-stats ==0.2.0.3
|
||||
@ -2191,7 +2193,7 @@ default-package-overrides:
|
||||
- thumbnail-plus ==1.0.5
|
||||
- th-utilities ==0.2.0.1
|
||||
- thyme ==0.3.5.5
|
||||
- tidal ==0.9.4
|
||||
- tidal ==0.9.5
|
||||
- time-compat ==0.1.0.3
|
||||
- timeit ==1.0.0.0
|
||||
- timelens ==0.2.0.2
|
||||
@ -2209,7 +2211,7 @@ default-package-overrides:
|
||||
- tldr ==0.2.3
|
||||
- tls ==1.3.11
|
||||
- tls-debug ==0.4.4
|
||||
- tls-session-manager ==0.0.0.1
|
||||
- tls-session-manager ==0.0.0.2
|
||||
- tmp-postgres ==0.1.1.1
|
||||
- token-bucket ==0.1.0.1
|
||||
- torrent ==10000.1.1
|
||||
@ -2339,7 +2341,7 @@ default-package-overrides:
|
||||
- wai-app-static ==3.1.6.1
|
||||
- wai-cli ==0.1.1
|
||||
- wai-conduit ==3.0.0.3
|
||||
- wai-cors ==0.2.5
|
||||
- wai-cors ==0.2.6
|
||||
- wai-eventsource ==3.0.0
|
||||
- wai-extra ==3.0.20.2
|
||||
- wai-handler-launch ==3.0.2.3
|
||||
@ -2361,7 +2363,7 @@ default-package-overrides:
|
||||
- wai-routes ==0.10.0
|
||||
- wai-routing ==0.13.0
|
||||
- wai-session ==0.3.2
|
||||
- wai-session-postgresql ==0.2.1.1
|
||||
- wai-session-postgresql ==0.2.1.2
|
||||
- wai-slack-middleware ==0.2.0
|
||||
- waitra ==0.0.4.0
|
||||
- wai-transformers ==0.0.7
|
||||
@ -2387,7 +2389,7 @@ default-package-overrides:
|
||||
- websockets-rpc ==0.4.0
|
||||
- websockets-simple ==0.0.2
|
||||
- websockets-snap ==0.10.2.4
|
||||
- weeder ==0.1.7
|
||||
- weeder ==0.1.9
|
||||
- weigh ==0.0.7
|
||||
- wikicfp-scraper ==0.1.0.9
|
||||
- wild-bind ==0.1.0.3
|
||||
@ -2461,7 +2463,7 @@ default-package-overrides:
|
||||
- Yampa ==0.10.6.2
|
||||
- YampaSynth ==0.2
|
||||
- yesod ==1.4.5
|
||||
- yesod-auth ==1.4.20
|
||||
- yesod-auth ==1.4.21
|
||||
- yesod-auth-account ==1.4.3
|
||||
- yesod-auth-basic ==0.1.0.2
|
||||
- yesod-auth-fb ==1.8.1
|
||||
@ -8330,7 +8332,6 @@ dont-distribute-packages:
|
||||
type-level-bst: [ i686-linux, x86_64-linux, x86_64-darwin ]
|
||||
type-level-natural-number-induction: [ i686-linux, x86_64-linux, x86_64-darwin ]
|
||||
type-level-natural-number-operations: [ i686-linux, x86_64-linux, x86_64-darwin ]
|
||||
type-of-html: [ i686-linux, x86_64-linux, x86_64-darwin ]
|
||||
type-ord-spine-cereal: [ i686-linux, x86_64-linux, x86_64-darwin ]
|
||||
type-ord: [ i686-linux, x86_64-linux, x86_64-darwin ]
|
||||
type-prelude: [ i686-linux, x86_64-linux, x86_64-darwin ]
|
||||
|
@ -506,5 +506,6 @@ self: super: builtins.intersectAttrs super {
|
||||
|
||||
# Break cyclic reference that results in an infinite recursion.
|
||||
partial-semigroup = dontCheck super.partial-semigroup;
|
||||
colour = dontCheck super.colour;
|
||||
|
||||
}
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,23 +1,25 @@
|
||||
{ stdenv, fetchurl, unzip, ant, jdk, makeWrapper }:
|
||||
{ stdenv, fetchurl, jdk, makeWrapper }:
|
||||
|
||||
let version = "1.8.0"; in
|
||||
let version = "1.9.0.273"; in
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "clojure-${version}";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://repo1.maven.org/maven2/org/clojure/clojure/${version}/clojure-${version}.zip";
|
||||
sha256 = "1nip095fz5c492sw15skril60i1vd21ibg6szin4jcvyy3xr6cym";
|
||||
url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz";
|
||||
sha256 = "0xmrq3xvr002jgq8m1j0y5ld0rcr49608g3gqxgyxzjqswacglb4";
|
||||
};
|
||||
|
||||
buildInputs = [ unzip ant jdk makeWrapper ];
|
||||
|
||||
buildPhase = "ant jar";
|
||||
buildInputs = [ jdk makeWrapper ];
|
||||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/java $out/bin
|
||||
install -t $out/share/java clojure.jar
|
||||
makeWrapper ${jdk.jre}/bin/java $out/bin/clojure --add-flags "-cp $out/share/java/clojure.jar clojure.main"
|
||||
pwd
|
||||
ls -la
|
||||
mkdir -p $out/libexec $out/bin
|
||||
cp -f deps.edn example-deps.edn $out
|
||||
cp -f clojure-tools-${version}.jar $out/libexec
|
||||
sed -i -e "s@PREFIX@$out@g" clojure
|
||||
cp -f clj clojure $out/bin
|
||||
'';
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "lv2-unstable-${version}";
|
||||
version = "2016-10-23";
|
||||
version = "2017-07-08";
|
||||
|
||||
src = fetchgit {
|
||||
url = "http://lv2plug.in/git/cgit.cgi/lv2.git";
|
||||
rev = "b36868f3b96a436961c0c51b5b2dd71d05da9b12";
|
||||
sha256 = "1sx39j0gary2nayzv7xgqcra7z1rcw9hrafkji05aksdwf7q0pdm";
|
||||
rev = "39c7c726cd52b2863fcea356cafe1bcab2ba7f37";
|
||||
sha256 = "1gp2rd99dfmpibvpixrqn115mrhybzf3if3h8bssf6siyi13f29r";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
@ -2,12 +2,12 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "raul-unstable-${rev}";
|
||||
rev = "2016-09-20";
|
||||
rev = "2017-07-23";
|
||||
|
||||
src = fetchgit {
|
||||
url = "http://git.drobilla.net/cgit.cgi/raul.git";
|
||||
rev = "f8bf77d3c3b77830aedafb9ebb5cdadfea7ed07a";
|
||||
sha256 = "1lby508fb0n8ks6iz959sh18fc37br39d6pbapwvbcw5nckdrxwj";
|
||||
rev = "4db870b2b20b0a608ec0283139056b836c5b1624";
|
||||
sha256 = "04fajrass3ymr72flx5js5vxc601ccrmx8ny8scp0rw7j0igyjdr";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
@ -14,13 +14,13 @@ let
|
||||
else throw "Unsupported system!";
|
||||
in stdenv.mkDerivation rec {
|
||||
name = "aws-sdk-cpp-${version}";
|
||||
version = "1.1.18";
|
||||
version = "1.3.22";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "awslabs";
|
||||
repo = "aws-sdk-cpp";
|
||||
rev = version;
|
||||
sha256 = "1i85zpns3gj5by45ppg4rfk9csix8mjazpyj6dqic40b2wshnw8c";
|
||||
sha256 = "0sdgy8kqhxnw7n0sw4m3p3ay7yic3rhad5ab8m5lbx61ad9bq3c2";
|
||||
};
|
||||
|
||||
# FIXME: might be nice to put different APIs in different outputs
|
||||
|
@ -4,21 +4,13 @@
|
||||
let inherit (stdenv) lib system; in
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "gpgme-1.9.0";
|
||||
name = "gpgme-1.10.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://gnupg/gpgme/${name}.tar.bz2";
|
||||
sha256 = "1ssc0gs02r4fasabk7c6v6r865k2j02mpb5g1vkpbmzsigdzwa8v";
|
||||
sha256 = "14q619lxbk64vz7lih5gjb928qm28jrnn1h3yhsrrff3jw8yv3qs";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
url = "https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gpgme.git;a=commitdiff_plain;h=5d4f977dac542340c877fdd4b1304fa8f6e058e6";
|
||||
sha256 = "0swpxzd3x3b6h2ry2py9j8l0xp3vdw8rixxhgfavzia5p869qyyx";
|
||||
name = "qgpgme-format-security.patch";
|
||||
})
|
||||
];
|
||||
|
||||
outputs = [ "out" "dev" "info" ];
|
||||
outputBin = "dev"; # gpgme-config; not so sure about gpgme-tool
|
||||
|
||||
|
@ -1,16 +1,24 @@
|
||||
{ stdenv, fetchurl, pkgconfig, cairo, expat, ncurses, libX11
|
||||
, pciutils, numactl }:
|
||||
{ stdenv, fetchurl, pkgconfig, expat, ncurses, pciutils, numactl
|
||||
, cairo, libX11
|
||||
, x11Support ? (!stdenv.isCygwin)
|
||||
}:
|
||||
|
||||
with stdenv.lib;
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "hwloc-1.11.6";
|
||||
name = "hwloc-1.11.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.open-mpi.org/software/hwloc/v1.11/downloads/${name}.tar.bz2";
|
||||
sha256 = "1yl7dm2qplwmnidd712zy12qfvxk28k8ccs694n42ybwdjwzg1bn";
|
||||
sha256 = "0karxv4r1r8sa7ki5aamlxdvyvz0bvzq4gdhq0yi5nc4a0k11vzc";
|
||||
};
|
||||
|
||||
hardeningDisable = [ "format" ];
|
||||
|
||||
configureFlags = [
|
||||
"--localstatedir=/var"
|
||||
];
|
||||
|
||||
# XXX: libX11 is not directly needed, but needed as a propagated dep of Cairo.
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
|
||||
@ -18,7 +26,7 @@ stdenv.mkDerivation rec {
|
||||
# derivation and set optional dependencies to `null'.
|
||||
buildInputs = stdenv.lib.filter (x: x != null)
|
||||
([ expat ncurses ]
|
||||
++ (optionals (!stdenv.isCygwin) [ cairo libX11 ])
|
||||
++ (optionals x11Support [ cairo libX11 ])
|
||||
++ (optionals stdenv.isLinux [ numactl ]));
|
||||
|
||||
propagatedBuildInputs =
|
||||
@ -37,7 +45,7 @@ stdenv.mkDerivation rec {
|
||||
test -d "$numalibdir"
|
||||
fi
|
||||
|
||||
sed -i "$out/lib/libhwloc.la" \
|
||||
sed -i "$lib/lib/libhwloc.la" \
|
||||
-e "s|-lnuma|-L$numalibdir -lnuma|g"
|
||||
'';
|
||||
|
||||
@ -45,6 +53,8 @@ stdenv.mkDerivation rec {
|
||||
# fail on some build machines.
|
||||
doCheck = false;
|
||||
|
||||
outputs = [ "out" "lib" "dev" "doc" "man" ];
|
||||
|
||||
meta = {
|
||||
description = "Portable abstraction of hierarchical architectures for high-performance computing";
|
||||
longDescription = ''
|
||||
|
@ -2,11 +2,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "liblscp-${version}";
|
||||
version = "0.5.8";
|
||||
version = "0.6.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://download.linuxsampler.org/packages/${name}.tar.gz";
|
||||
sha256 = "00cfafkw1n80sdjwm9zdsg5vx287wqpgpbajd3zmiz415wzr84dn";
|
||||
url = "https://download.linuxsampler.org/packages/${name}.tar.gz";
|
||||
sha256 = "1rl7ssdzj0z3658yvdijmb27n2lcwmplx4qxg5mwrm07pvs7i75k";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoconf automake libtool pkgconfig ];
|
||||
|
29
pkgs/development/libraries/libva-utils/default.nix
Normal file
29
pkgs/development/libraries/libva-utils/default.nix
Normal file
@ -0,0 +1,29 @@
|
||||
{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig
|
||||
, libdrm, libva
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libva-utils-${version}";
|
||||
inherit (libva) version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "01org";
|
||||
repo = "libva-utils";
|
||||
rev = version;
|
||||
sha256 = "02n51cvp8bzzjk4fargwvgh7z71y8spg24hqgaawbp3p3ahh7xxi";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
||||
buildInputs = [ libdrm libva ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "VAAPI tools: Video Acceleration API";
|
||||
homepage = http://www.freedesktop.org/wiki/Software/vaapi;
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ garbas ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
@ -1,36 +1,43 @@
|
||||
{ stdenv, lib, fetchurl, libX11, pkgconfig, libXext, libdrm, libXfixes, wayland, libffi
|
||||
{ stdenv, lib, fetchFromGitHub, autoreconfHook, pkgconfig
|
||||
, libXext, libdrm, libXfixes, wayland, libffi, libX11
|
||||
, mesa_noglu
|
||||
, minimal ? true, libva
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "libva-${version}";
|
||||
version = "1.7.3";
|
||||
name = "libva-${lib.optionalString (!minimal) "full-"}${version}";
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.freedesktop.org/software/vaapi/releases/libva/${name}.tar.bz2";
|
||||
sha256 = "1ndrf136rlw03xag7j1xpmf9015d1h0dpnv6v587jnh6k2a17g12";
|
||||
src = fetchFromGitHub {
|
||||
owner = "01org";
|
||||
repo = "libva";
|
||||
rev = version;
|
||||
sha256 = "1x8rlmv5wfqjz3j87byrxb4d9vp5b4lrrin2fx254nwl3aqy15hy";
|
||||
};
|
||||
|
||||
outputs = [ "bin" "dev" "out" ];
|
||||
outputs = [ "dev" "out" ];
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
|
||||
buildInputs = [ libdrm ]
|
||||
++ lib.optionals (!minimal) [ libva libX11 libXext libXfixes wayland libffi mesa_noglu ];
|
||||
# TODO: share libs between minimal and !minimal - perhaps just symlink them
|
||||
|
||||
configureFlags =
|
||||
[ "--with-drivers-path=${mesa_noglu.driverLink}/lib/dri" ] ++
|
||||
lib.optionals (!minimal) [ "--enable-glx" ];
|
||||
enableParallelBuilding = true;
|
||||
|
||||
installFlags = [ "dummy_drv_video_ladir=$(out)/lib/dri" ];
|
||||
configureFlags = [
|
||||
"--with-drivers-path=${mesa_noglu.driverLink}/lib/dri"
|
||||
] ++ lib.optionals (!minimal) [ "--enable-glx" ];
|
||||
|
||||
installFlags = [
|
||||
"dummy_drv_video_ladir=$(out)/lib/dri"
|
||||
];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "VAAPI library: Video Acceleration API";
|
||||
homepage = http://www.freedesktop.org/wiki/Software/vaapi;
|
||||
license = licenses.mit;
|
||||
description = "VAAPI library: Video Acceleration API";
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ garbas ];
|
||||
platforms = platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -8,10 +8,9 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "06n7gnbcqa3r6c9gv00y0y1r48dyyazm6yj403i7ma0r2k6p3lvj";
|
||||
};
|
||||
|
||||
cmakeFlags = "-DWITH_ASF=ON -DWITH_MP4=ON";
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
buildInputs = [ zlib ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
meta = {
|
||||
homepage = http://developer.kde.org/~wheeler/taglib.html;
|
||||
|
@ -8,16 +8,17 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0ssjcdjv4qf9liph5ry1kngam1y7zp8fzr9xv4wzzrma22kabldn";
|
||||
};
|
||||
|
||||
cmakeFlags = [ "-DWITH_ASF=ON" "-DWITH_MP4=ON" ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
buildInputs = [ zlib ];
|
||||
nativeBuildInputs = [ cmake ];
|
||||
|
||||
cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://taglib.org/;
|
||||
repositories.git = git://github.com/taglib/taglib.git;
|
||||
shortDescription = "A library for reading and editing audio file metadata.";
|
||||
description = ''
|
||||
description = "A library for reading and editing audio file metadata.";
|
||||
longDescription = ''
|
||||
TagLib is a library for reading and editing the meta-data of several
|
||||
popular audio formats. Currently it supports both ID3v1 and ID3v2 for MP3
|
||||
files, Ogg Vorbis comments and ID3 tags and Vorbis comments in FLAC, MPC,
|
||||
|
@ -1,14 +1,16 @@
|
||||
{ stdenv, fetchurl, gnum4, pkgconfig, python2
|
||||
{ stdenv, fetchFromGitHub, autoreconfHook, gnum4, pkgconfig, python2
|
||||
, intel-gpu-tools, libdrm, libva, libX11, mesa_noglu, wayland, libXext
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
name = "intel-vaapi-driver-${version}";
|
||||
version = "1.8.2";
|
||||
inherit (libva) version;
|
||||
|
||||
src = fetchurl {
|
||||
url = "http://www.freedesktop.org/software/vaapi/releases/libva-intel-driver/${name}.tar.bz2";
|
||||
sha256 = "00mpcvininwr5c4wyhp16s4bddg7vclxxjm2sfq5h7lifjcxyv46";
|
||||
src = fetchFromGitHub {
|
||||
owner = "01org";
|
||||
repo = "libva-intel-driver";
|
||||
rev = version;
|
||||
sha256 = "1832nnva3d33wv52bj59bv62q7a807sdxjqqq0my7l9x7a4qdkzz";
|
||||
};
|
||||
|
||||
patchPhase = ''
|
||||
@ -25,10 +27,12 @@ stdenv.mkDerivation rec {
|
||||
"--enable-wayland"
|
||||
];
|
||||
|
||||
nativeBuildInputs = [ gnum4 pkgconfig python2 ];
|
||||
nativeBuildInputs = [ autoreconfHook gnum4 pkgconfig python2 ];
|
||||
|
||||
buildInputs = [ intel-gpu-tools libdrm libva libX11 libXext mesa_noglu wayland ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://cgit.freedesktop.org/vaapi/intel-driver/;
|
||||
license = licenses.mit;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, opam, jbuilder
|
||||
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, jbuilder
|
||||
, cmdliner, astring, fmt, result
|
||||
}:
|
||||
|
||||
@ -12,7 +12,7 @@ let param =
|
||||
} else {
|
||||
version = "0.7.2";
|
||||
sha256 = "1qgsz2zz5ky6s5pf3j3shc4fjc36rqnjflk8x0wl1fcpvvkr52md";
|
||||
buildInputs = [ ocamlbuild opam topkg ];
|
||||
buildInputs = [ ocamlbuild topkg ];
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
};
|
||||
in
|
||||
|
@ -1,6 +1,4 @@
|
||||
{ stdenv, buildOcaml, fetchFromGitHub, ocaml, findlib, cstruct, zarith, ounit, result, topkg, opam }:
|
||||
|
||||
let ocamlFlags = "-I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/"; in
|
||||
{ stdenv, buildOcaml, fetchFromGitHub, ocaml, findlib, cstruct, zarith, ounit, result, topkg }:
|
||||
|
||||
buildOcaml rec {
|
||||
name = "asn1-combinators";
|
||||
@ -15,20 +13,17 @@ buildOcaml rec {
|
||||
sha256 = "0hpn049i46sdnv2i6m7r6m6ch0jz8argybh71wykbvcqdby08zxj";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ounit topkg opam ];
|
||||
buildInputs = [ ocaml findlib ounit topkg ];
|
||||
propagatedBuildInputs = [ result cstruct zarith ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
buildPhase = "ocaml ${ocamlFlags} pkg/pkg.ml build --tests true";
|
||||
buildPhase = "${topkg.run} build --tests true";
|
||||
|
||||
installPhase = ''
|
||||
opam-installer --script --prefix=$out | sh
|
||||
ln -s $out/lib/asn1-combinators $out/lib/ocaml/${ocaml.version}/site-lib
|
||||
'';
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = "ocaml ${ocamlFlags} pkg/pkg.ml test";
|
||||
checkPhase = "${topkg.run} test";
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/mirleft/ocaml-asn1-combinators;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg, opam}:
|
||||
{ stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg }:
|
||||
|
||||
buildOcaml rec {
|
||||
version = "0.8.3";
|
||||
@ -11,16 +11,9 @@ buildOcaml rec {
|
||||
|
||||
unpackCmd = "tar -xf $curSrc";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
buildPhase = ''
|
||||
ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
opam-installer --script --prefix=$out astring.install | sh
|
||||
ln -s $out/lib/astring $out/lib/ocaml/${ocaml.version}/site-lib/
|
||||
'';
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
homepage = http://erratique.ch/software/astring;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg
|
||||
, astring, fmt, fpath, logs, rresult
|
||||
}:
|
||||
|
||||
@ -12,7 +12,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
propagatedBuildInputs = [ astring fmt fpath logs rresult ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, result }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, result }:
|
||||
|
||||
let
|
||||
pname = "cmdliner";
|
||||
@ -17,20 +17,11 @@ stdenv.mkDerivation rec {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
nativeBuildInputs = [ ocamlbuild opam topkg ];
|
||||
nativeBuildInputs = [ ocamlbuild topkg ];
|
||||
buildInputs = [ ocaml findlib ];
|
||||
propagatedBuildInputs = [ result ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
buildPhase = ''
|
||||
ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib pkg/pkg.ml build
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
opam-installer --script --prefix=$out | sh
|
||||
ln -s $out/lib/${pname} $out/lib/ocaml/${ocaml.version}/site-lib/
|
||||
'';
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = http://erratique.ch/software/cmdliner;
|
||||
|
@ -1,5 +1,5 @@
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib
|
||||
, ocamlbuild, topkg, opam
|
||||
, ocamlbuild, topkg
|
||||
, uri, xmlm, omd, ezjsonm }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
@ -13,9 +13,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0snhabg7rfrrcq2ksr3qghiawd61cw3y4kp6rl7vs87j4cnk3kr2";
|
||||
};
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
buildInputs = [ ocaml opam ocamlbuild findlib topkg ];
|
||||
buildInputs = [ ocaml ocamlbuild findlib topkg ];
|
||||
propagatedBuildInputs = [ xmlm uri ezjsonm omd ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, ocb-stubblr }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, ocb-stubblr }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-cpuid-0.1.0";
|
||||
@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg ocb-stubblr ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ocb-stubblr ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg, opam
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg
|
||||
}:
|
||||
|
||||
if !stdenv.lib.versionAtLeast ocaml.version "4.03"
|
||||
@ -16,7 +16,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0hfs5zrvimzvjwdg57vrxx9bb7irvlm07dk2yv3s5qhj30zimd08";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, cmdliner, result, uchar }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, cmdliner, result, uchar }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-fmt-0.8.4";
|
||||
@ -10,13 +10,11 @@ stdenv.mkDerivation {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg cmdliner ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg cmdliner ];
|
||||
propagatedBuildInputs = [ result uchar ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
homepage = http://erratique.ch/software/fmt;
|
||||
license = stdenv.lib.licenses.isc;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, astring }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, astring }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-fpath-0.7.2";
|
||||
@ -9,7 +9,7 @@ stdenv.mkDerivation {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
propagatedBuildInputs = [ astring ];
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg
|
||||
, bos, cmdliner, ocamlgraph
|
||||
}:
|
||||
|
||||
@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
propagatedBuildInputs = [ bos cmdliner ocamlgraph ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-integers-0.2.2";
|
||||
@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam, uutf }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uutf }:
|
||||
|
||||
let version = "1.0.1"; in
|
||||
|
||||
@ -10,13 +10,11 @@ stdenv.mkDerivation {
|
||||
sha256 = "1176dcmxb11fnw49b7yysvkjh0kpzx4s48lmdn5psq9vshp5c29w";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
propagatedBuildInputs = [ uutf ];
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
meta = {
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild
|
||||
, topkg, result, lwt, cmdliner, fmt }:
|
||||
let
|
||||
pname = "logs";
|
||||
@ -18,18 +18,13 @@ stdenv.mkDerivation rec {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg fmt cmdliner lwt ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg fmt cmdliner lwt ];
|
||||
propagatedBuildInputs = [ result ];
|
||||
|
||||
buildPhase = ''
|
||||
ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build \
|
||||
--with-js_of_ocaml false
|
||||
'';
|
||||
buildPhase = "${topkg.run} build --with-js_of_ocaml false";
|
||||
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
description = "Logging infrastructure for OCaml";
|
||||
homepage = "${webpage}";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam, js_of_ocaml
|
||||
{ stdenv, lib, fetchurl, ocaml, findlib, ocamlbuild, topkg, js_of_ocaml
|
||||
, jsooSupport ? true
|
||||
}:
|
||||
|
||||
@ -25,7 +25,7 @@ stdenv.mkDerivation {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg ]
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ]
|
||||
++ stdenv.lib.optional jsooSupport js_of_ocaml;
|
||||
|
||||
buildPhase = "${topkg.buildPhase} --with-js_of_ocaml ${boolToString jsooSupport}";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, opam, topkg
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg
|
||||
, cpuid, ocb-stubblr
|
||||
, cstruct, zarith, ppx_sexp_conv, sexplib
|
||||
, cstruct-lwt ? null
|
||||
@ -18,7 +18,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "0nhnlpbqh3mf9y2cxivlvfb70yfbdpvg6jslzq64xblpgjyg443p";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg opam cpuid ocb-stubblr
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg cpuid ocb-stubblr
|
||||
ppx_sexp_conv ];
|
||||
propagatedBuildInputs = [ cstruct zarith sexplib ] ++ optional withLwt cstruct-lwt;
|
||||
|
||||
@ -28,8 +28,6 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
meta = {
|
||||
homepage = https://github.com/mirleft/ocaml-nocrypto;
|
||||
description = "Simplest possible crypto to support TLS";
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, buildOcaml, fetchpatch, fetchFromGitHub, findlib, topkg, opam, ocb-stubblr
|
||||
{ stdenv, buildOcaml, fetchpatch, fetchFromGitHub, findlib, topkg, ocb-stubblr
|
||||
, result, uucp, uuseg, uutf
|
||||
, lwt ? null }:
|
||||
|
||||
@ -24,7 +24,7 @@ buildOcaml rec {
|
||||
sha256 = "0pklplbnjbsjriqj73pc8fsadg404px534w7zknz2617zb44m6x6";
|
||||
})];
|
||||
|
||||
buildInputs = [ findlib opam topkg ocb-stubblr ];
|
||||
buildInputs = [ findlib topkg ocb-stubblr ];
|
||||
propagatedBuildInputs = [ result uucp uuseg uutf ] ++
|
||||
optional withLwt lwt;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, opam, topkg, astring }:
|
||||
{ stdenv, fetchzip, ocaml, findlib, ocamlbuild, topkg, astring }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml${ocaml.version}-ocb-stubblr-0.1.0";
|
||||
@ -10,7 +10,7 @@ stdenv.mkDerivation {
|
||||
|
||||
patches = [ ./pkg-config.patch ];
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
propagatedBuildInputs = [ astring ];
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, opam }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg }:
|
||||
|
||||
if !stdenv.lib.versionAtLeast ocaml.version "4.03"
|
||||
then throw "octavius is not available for OCaml ${ocaml.version}" else
|
||||
@ -12,7 +12,7 @@ stdenv.mkDerivation {
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg opam ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, opam, topkg, uutf, result }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, ocamlbuild, topkg, uutf, result }:
|
||||
|
||||
let
|
||||
pname = "otfm";
|
||||
@ -17,12 +17,10 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "054s82539k3kc9na6s47g3scsl04icjahpas7pv5351jmsgqcq3k";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam topkg ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg ];
|
||||
|
||||
propagatedBuildInputs = [ uutf result ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
@ -1,7 +1,6 @@
|
||||
{stdenv, buildOcaml, fetchFromGitHub, ocamlbuild, findlib, topkg, ocaml, opam,
|
||||
ppx_tools, ppx_sexp_conv, cstruct, ppx_cstruct, sexplib, result, nocrypto, astring}:
|
||||
|
||||
let ocamlFlags = "-I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/"; in
|
||||
{ stdenv, buildOcaml, fetchFromGitHub, ocamlbuild, findlib, topkg, ocaml
|
||||
, ppx_tools, ppx_sexp_conv, cstruct, ppx_cstruct, sexplib, result, nocrypto, astring
|
||||
}:
|
||||
|
||||
buildOcaml rec {
|
||||
name = "otr";
|
||||
@ -16,23 +15,15 @@ buildOcaml rec {
|
||||
sha256 = "07zzix5mfsasqpqdx811m0x04gp8mq1ayf4b64998k98027v01rr";
|
||||
};
|
||||
|
||||
buildInputs = [ ocamlbuild findlib topkg ppx_tools ppx_sexp_conv opam ppx_cstruct ];
|
||||
buildInputs = [ ocamlbuild findlib topkg ppx_tools ppx_sexp_conv ppx_cstruct ];
|
||||
propagatedBuildInputs = [ cstruct sexplib result nocrypto astring ];
|
||||
|
||||
buildPhase = ''
|
||||
ocaml ${ocamlFlags} pkg/pkg.ml build \
|
||||
--tests true
|
||||
'';
|
||||
buildPhase = "${topkg.run} build --tests true";
|
||||
|
||||
installPhase = ''
|
||||
opam-installer --prefix=$out --script | sh
|
||||
ln -s $out/lib/otr $out/lib/ocaml/${ocaml.version}/site-lib
|
||||
'';
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
doCheck = true;
|
||||
checkPhase = "ocaml ${ocamlFlags} pkg/pkg.ml test";
|
||||
|
||||
createFindlibDestdir = true;
|
||||
checkPhase = "${topkg.run} test";
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://github.com/hannesm/ocaml-otr;
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, opam, topkg, cppo
|
||||
{ stdenv, fetchFromGitHub, ocaml, findlib, ocamlbuild, topkg, cppo
|
||||
, ppx_import, ppx_deriving, yojson, ounit
|
||||
}:
|
||||
|
||||
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "1pwfnq7z60nchba4gnf58918ll11w3gj5i88qhz1p2jm45hxqgnw";
|
||||
};
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild opam cppo ounit ppx_import ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild cppo ounit ppx_import ];
|
||||
|
||||
propagatedBuildInputs = [ ppx_deriving yojson ];
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg, result, opam, js_of_ocaml }:
|
||||
{ stdenv, fetchurl, buildOcaml, ocaml, findlib, ocamlbuild, topkg, result, js_of_ocaml }:
|
||||
|
||||
buildOcaml rec {
|
||||
version = "0.8.3";
|
||||
@ -11,13 +11,11 @@ buildOcaml rec {
|
||||
|
||||
unpackCmd = "tar -xf $curSrc";
|
||||
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg opam js_of_ocaml ];
|
||||
buildInputs = [ ocaml findlib ocamlbuild topkg js_of_ocaml ];
|
||||
|
||||
propagatedBuildInputs = [ result ];
|
||||
|
||||
buildPhase = ''
|
||||
ocaml -I ${findlib}/lib/ocaml/${ocaml.version}/site-lib/ pkg/pkg.ml build --with-js_of_ocaml true
|
||||
'';
|
||||
buildPhase = "${topkg.run} build --with-js_of_ocaml true";
|
||||
|
||||
inherit (topkg) installPhase;
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild, opam }:
|
||||
{ stdenv, fetchurl, ocaml, findlib, topkg, ocamlbuild }:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "ocaml-react-1.2.1";
|
||||
@ -9,9 +9,7 @@ stdenv.mkDerivation {
|
||||
};
|
||||
|
||||
unpackCmd = "tar xjf $src";
|
||||
buildInputs = [ ocaml findlib topkg ocamlbuild opam ];
|
||||
|
||||
createFindlibDestdir = true;
|
||||
buildInputs = [ ocaml findlib topkg ocamlbuild ];
|
||||
|
||||
inherit (topkg) buildPhase installPhase;
|
||||
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user