Merge staging-next into staging

This commit is contained in:
Frederik Rietdijk 2019-06-15 08:43:33 +02:00
commit 31f22a5bb3
99 changed files with 4609 additions and 2709 deletions

View File

@ -457,9 +457,9 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "libpng License";
};
libpng2 = {
fullName = "libpng License v2"; # 1.6.36+
url = "http://www.libpng.org/pub/png/src/libpng-LICENSE.txt";
libpng2 = spdx {
spdxId = "libpng-2.0"; # Used since libpng 1.6.36.
fullName = "PNG Reference Library version 2";
};
libtiff = spdx {

View File

@ -101,7 +101,7 @@ rec {
mergeOneOption = loc: defs:
if defs == [] then abort "This case should never happen."
else if length defs != 1 then
throw "The unique option `${showOption loc}' is defined multiple times, in ${showFiles (getFiles defs)}."
throw "The unique option `${showOption loc}' is defined multiple times, in:\n - ${concatStringsSep "\n - " (getFiles defs)}."
else (head defs).value;
/* "Merge" option definitions by checking that they all have the same value. */

View File

@ -1333,6 +1333,11 @@
github = "dmjio";
name = "David Johnson";
};
dmvianna = {
email = "dmlvianna@gmail.com";
github = "dmvianna";
name = "Daniel Vianna";
};
dochang = {
email = "dochang@gmail.com";
github = "dochang";

View File

@ -92,6 +92,7 @@
./programs/bcc.nix
./programs/blcr.nix
./programs/browserpass.nix
./programs/captive-browser.nix
./programs/ccache.nix
./programs/cdemu.nix
./programs/chromium.nix

View File

@ -0,0 +1,122 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.programs.captive-browser;
in
{
###### interface
options = {
programs.captive-browser = {
enable = mkEnableOption "captive browser";
package = mkOption {
type = types.package;
default = pkgs.captive-browser;
defaultText = "pkgs.captive-browser";
description = "Which package to use for captive-browser";
};
interface = mkOption {
type = types.str;
description = "your public network interface (wlp3s0, wlan0, eth0, ...)";
};
# the options below are the same as in "captive-browser.toml"
browser = mkOption {
type = types.str;
default = concatStringsSep " " [ ''${pkgs.chromium}/bin/chromium''
''--user-data-dir=$HOME/.chromium-captive''
''--proxy-server="socks5://$PROXY"''
''--host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE localhost"''
''--no-first-run''
''--new-window''
''--incognito''
''http://cache.nixos.org/''
];
description = ''
The shell (/bin/sh) command executed once the proxy starts.
When browser exits, the proxy exits. An extra env var PROXY is available.
Here, we use a separate Chrome instance in Incognito mode, so that
it can run (and be waited for) alongside the default one, and that
it maintains no state across runs. To configure this browser open a
normal window in it, settings will be preserved.
@volth: chromium is to open a plain HTTP (not HTTPS nor redirect to HTTPS!) website.
upstream uses http://example.com but I have seen captive portals whose DNS server resolves "example.com" to 127.0.0.1
'';
};
dhcp-dns = mkOption {
type = types.str;
description = ''
The shell (/bin/sh) command executed to obtain the DHCP
DNS server address. The first match of an IPv4 regex is used.
IPv4 only, because let's be real, it's a captive portal.
'';
};
socks5-addr = mkOption {
type = types.str;
default = "localhost:1666";
description = ''the listen address for the SOCKS5 proxy server'';
};
bindInterface = mkOption {
default = true;
type = types.bool;
description = ''
Binds <package>captive-browser</package> to the network interface declared in
<literal>cfg.interface</literal>. This can be used to avoid collisions
with private subnets.
'';
};
};
};
###### implementation
config = mkIf cfg.enable {
programs.captive-browser.dhcp-dns = mkOptionDefault (
if config.networking.networkmanager.enable then
"${pkgs.networkmanager}/bin/nmcli dev show ${escapeShellArg cfg.interface} | ${pkgs.gnugrep}/bin/fgrep IP4.DNS"
else if config.networking.dhcpcd.enable then
"${pkgs.dhcpcd}/bin/dhcpcd -U ${escapeShellArg cfg.interface} | ${pkgs.gnugrep}/bin/fgrep domain_name_servers"
else if config.networking.useNetworkd then
"${cfg.package}/bin/systemd-networkd-dns ${escapeShellArg cfg.interface}"
else
"${config.security.wrapperDir}/udhcpc --quit --now -f -i ${escapeShellArg cfg.interface} -O dns --script ${
pkgs.writeScript "udhcp-script" ''
#!/bin/sh
if [ "$1" = bound ]; then
echo "$dns"
fi
''}"
);
security.wrappers.udhcpc = {
capabilities = "cap_net_raw+p";
source = "${pkgs.busybox}/bin/udhcpc";
};
security.wrappers.captive-browser = {
capabilities = "cap_net_raw+p";
source = pkgs.writeScript "captive-browser" ''
#!${pkgs.bash}/bin/bash
export XDG_CONFIG_HOME=${pkgs.writeTextDir "captive-browser.toml" ''
browser = """${cfg.browser}"""
dhcp-dns = """${cfg.dhcp-dns}"""
socks5-addr = """${cfg.socks5-addr}"""
${optionalString cfg.bindInterface ''
bind-device = """${cfg.interface}"""
''}
''}
exec ${cfg.package}/bin/captive-browser
'';
};
};
}

View File

@ -8,18 +8,21 @@ let
cassandraConfig = flip recursiveUpdate cfg.extraConfig
({ commitlog_sync = "batch";
commitlog_sync_batch_window_in_ms = 2;
start_native_transport = cfg.allowClients;
cluster_name = cfg.clusterName;
partitioner = "org.apache.cassandra.dht.Murmur3Partitioner";
endpoint_snitch = "SimpleSnitch";
seed_provider =
[{ class_name = "org.apache.cassandra.locator.SimpleSeedProvider";
parameters = [ { seeds = "127.0.0.1"; } ];
}];
data_file_directories = [ "${cfg.homeDir}/data" ];
commitlog_directory = "${cfg.homeDir}/commitlog";
saved_caches_directory = "${cfg.homeDir}/saved_caches";
} // (if builtins.compareVersions cfg.package.version "3" >= 0
then { hints_directory = "${cfg.homeDir}/hints"; }
else {})
} // (lib.optionalAttrs (cfg.seedAddresses != []) {
seed_provider = [{
class_name = "org.apache.cassandra.locator.SimpleSeedProvider";
parameters = [ { seeds = concatStringsSep "," cfg.seedAddresses; } ];
}];
}) // (lib.optionalAttrs (lib.versionAtLeast cfg.package.version "3") {
hints_directory = "${cfg.homeDir}/hints";
})
);
cassandraConfigWithAddresses = cassandraConfig //
( if cfg.listenAddress == null
@ -39,15 +42,42 @@ let
mkdir -p "$out"
echo "$cassandraYaml" > "$out/cassandra.yaml"
ln -s "$cassandraEnvPkg" "$out/cassandra-env.sh"
ln -s "$cassandraLogbackConfig" "$out/logback.xml"
cp "$cassandraEnvPkg" "$out/cassandra-env.sh"
# Delete default JMX Port, otherwise we can't set it using env variable
sed -i '/JMX_PORT="7199"/d' "$out/cassandra-env.sh"
# Delete default password file
sed -i '/-Dcom.sun.management.jmxremote.password.file=\/etc\/cassandra\/jmxremote.password/d' "$out/cassandra-env.sh"
'';
};
defaultJmxRolesFile = builtins.foldl'
(left: right: left + right) ""
(map (role: "${role.username} ${role.password}") cfg.jmxRoles);
fullJvmOptions = cfg.jvmOpts
++ lib.optionals (cfg.jmxRoles != []) [
"-Dcom.sun.management.jmxremote.authenticate=true"
"-Dcom.sun.management.jmxremote.password.file=${cfg.jmxRolesFile}"
]
++ lib.optionals cfg.remoteJmx [
"-Djava.rmi.server.hostname=${cfg.rpcAddress}"
];
in {
options.services.cassandra = {
enable = mkEnableOption ''
Apache Cassandra Scalable and highly available database.
'';
clusterName = mkOption {
type = types.str;
default = "NixOS Test Cluster";
description = ''
The name of the cluster.
This setting prevents nodes in one logical cluster from joining
another. All nodes in a cluster must have the same value.
'';
};
user = mkOption {
type = types.str;
default = defaultUser;
@ -162,6 +192,28 @@ in {
XML logback configuration for cassandra
'';
};
seedAddresses = mkOption {
type = types.listOf types.str;
default = [ "127.0.0.1" ];
description = ''
The addresses of hosts designated as contact points in the cluster. A
joining node contacts one of the nodes in the seeds list to learn the
topology of the ring.
Set to 127.0.0.1 for a single node cluster.
'';
};
allowClients = mkOption {
type = types.bool;
default = true;
description = ''
Enables or disables the native transport server (CQL binary protocol).
This server uses the same address as the <literal>rpcAddress</literal>,
but the port it uses is not <literal>rpc_port</literal> but
<literal>native_transport_port</literal>. See the official Cassandra
docs for more information on these variables and set them using
<literal>extraConfig</literal>.
'';
};
extraConfig = mkOption {
type = types.attrs;
default = {};
@ -178,11 +230,11 @@ in {
example = literalExample "null";
description = ''
Set the interval how often full repairs are run, i.e.
`nodetool repair --full` is executed. See
<literal>nodetool repair --full</literal> is executed. See
https://cassandra.apache.org/doc/latest/operating/repair.html
for more information.
Set to `null` to disable full repairs.
Set to <literal>null</literal> to disable full repairs.
'';
};
fullRepairOptions = mkOption {
@ -199,11 +251,11 @@ in {
example = literalExample "null";
description = ''
Set the interval how often incremental repairs are run, i.e.
`nodetool repair` is executed. See
<literal>nodetool repair</literal> is executed. See
https://cassandra.apache.org/doc/latest/operating/repair.html
for more information.
Set to `null` to disable incremental repairs.
Set to <literal>null</literal> to disable incremental repairs.
'';
};
incrementalRepairOptions = mkOption {
@ -214,20 +266,135 @@ in {
Options passed through to the incremental repair command.
'';
};
maxHeapSize = mkOption {
type = types.nullOr types.string;
default = null;
example = "4G";
description = ''
Must be left blank or set together with heapNewSize.
If left blank a sensible value for the available amount of RAM and CPU
cores is calculated.
Override to set the amount of memory to allocate to the JVM at
start-up. For production use you may wish to adjust this for your
environment. MAX_HEAP_SIZE is the total amount of memory dedicated
to the Java heap. HEAP_NEWSIZE refers to the size of the young
generation.
The main trade-off for the young generation is that the larger it
is, the longer GC pause times will be. The shorter it is, the more
expensive GC will be (usually).
'';
};
heapNewSize = mkOption {
type = types.nullOr types.string;
default = null;
example = "800M";
description = ''
Must be left blank or set together with heapNewSize.
If left blank a sensible value for the available amount of RAM and CPU
cores is calculated.
Override to set the amount of memory to allocate to the JVM at
start-up. For production use you may wish to adjust this for your
environment. HEAP_NEWSIZE refers to the size of the young
generation.
The main trade-off for the young generation is that the larger it
is, the longer GC pause times will be. The shorter it is, the more
expensive GC will be (usually).
The example HEAP_NEWSIZE assumes a modern 8-core+ machine for decent pause
times. If in doubt, and if you do not particularly want to tweak, go with
100 MB per physical CPU core.
'';
};
mallocArenaMax = mkOption {
type = types.nullOr types.int;
default = null;
example = 4;
description = ''
Set this to control the amount of arenas per-thread in glibc.
'';
};
remoteJmx = mkOption {
type = types.bool;
default = false;
description = ''
Cassandra ships with JMX accessible *only* from localhost.
To enable remote JMX connections set to true.
Be sure to also enable authentication and/or TLS.
See: https://wiki.apache.org/cassandra/JmxSecurity
'';
};
jmxPort = mkOption {
type = types.int;
default = 7199;
description = ''
Specifies the default port over which Cassandra will be available for
JMX connections.
For security reasons, you should not expose this port to the internet.
Firewall it if needed.
'';
};
jmxRoles = mkOption {
default = [];
description = ''
Roles that are allowed to access the JMX (e.g. nodetool)
BEWARE: The passwords will be stored world readable in the nix-store.
It's recommended to use your own protected file using
<literal>jmxRolesFile</literal>
Doesn't work in versions older than 3.11 because they don't like that
it's world readable.
'';
type = types.listOf (types.submodule {
options = {
username = mkOption {
type = types.string;
description = "Username for JMX";
};
password = mkOption {
type = types.string;
description = "Password for JMX";
};
};
});
};
jmxRolesFile = mkOption {
type = types.nullOr types.path;
default = if (lib.versionAtLeast cfg.package.version "3.11")
then pkgs.writeText "jmx-roles-file" defaultJmxRolesFile
else null;
example = "/var/lib/cassandra/jmx.password";
description = ''
Specify your own jmx roles file.
Make sure the permissions forbid "others" from reading the file if
you're using Cassandra below version 3.11.
'';
};
};
config = mkIf cfg.enable {
assertions =
[ { assertion =
(cfg.listenAddress == null || cfg.listenInterface == null)
&& !(cfg.listenAddress == null && cfg.listenInterface == null);
[ { assertion = (cfg.listenAddress == null) != (cfg.listenInterface == null);
message = "You have to set either listenAddress or listenInterface";
}
{ assertion =
(cfg.rpcAddress == null || cfg.rpcInterface == null)
&& !(cfg.rpcAddress == null && cfg.rpcInterface == null);
{ assertion = (cfg.rpcAddress == null) != (cfg.rpcInterface == null);
message = "You have to set either rpcAddress or rpcInterface";
}
{ assertion = (cfg.maxHeapSize == null) == (cfg.heapNewSize == null);
message = "If you set either of maxHeapSize or heapNewSize you have to set both";
}
{ assertion = cfg.remoteJmx -> cfg.jmxRolesFile != null;
message = ''
If you want JMX available remotely you need to set a password using
<literal>jmxRoles</literal> or <literal>jmxRolesFile</literal> if
using Cassandra older than v3.11.
'';
}
];
users = mkIf (cfg.user == defaultUser) {
extraUsers."${defaultUser}" =
@ -245,7 +412,12 @@ in {
after = [ "network.target" ];
environment =
{ CASSANDRA_CONF = "${cassandraEtc}";
JVM_OPTS = builtins.concatStringsSep " " cfg.jvmOpts;
JVM_OPTS = builtins.concatStringsSep " " fullJvmOptions;
MAX_HEAP_SIZE = toString cfg.maxHeapSize;
HEAP_NEWSIZE = toString cfg.heapNewSize;
MALLOC_ARENA_MAX = toString cfg.mallocArenaMax;
LOCAL_JMX = if cfg.remoteJmx then "no" else "yes";
JMX_PORT = toString cfg.jmxPort;
};
wantedBy = [ "multi-user.target" ];
serviceConfig =

View File

@ -159,7 +159,8 @@ in
socket = mkOption {
type = types.nullOr types.path;
default = null;
default = if (cfg.database.createDatabase && usePostgresql) then "/run/postgresql" else if (cfg.database.createDatabase && useMysql) then "/run/mysqld/mysqld.sock" else null;
defaultText = "null";
example = "/run/mysqld/mysqld.sock";
description = "Path to the unix socket file to use for authentication.";
};
@ -173,10 +174,7 @@ in
createDatabase = mkOption {
type = types.bool;
default = true;
description = ''
Whether to create a local postgresql database automatically.
This only applies if database type "postgres" is selected.
'';
description = "Whether to create a local database automatically.";
};
};
@ -277,7 +275,46 @@ in
};
config = mkIf cfg.enable {
services.postgresql.enable = mkIf usePostgresql (mkDefault true);
assertions = [
{ assertion = cfg.database.createDatabase -> cfg.database.user == cfg.user;
message = "services.gitea.database.user must match services.gitea.user if the database is to be automatically provisioned";
}
];
services.postgresql = optionalAttrs (usePostgresql && cfg.database.createDatabase) {
enable = mkDefault true;
ensureDatabases = [ cfg.database.name ];
ensureUsers = [
{ name = cfg.database.user;
ensurePermissions = { "DATABASE ${cfg.database.name}" = "ALL PRIVILEGES"; };
}
];
};
services.mysql = optionalAttrs (useMysql && cfg.database.createDatabase) {
enable = mkDefault true;
package = mkDefault pkgs.mariadb;
ensureDatabases = [ cfg.database.name ];
ensureUsers = [
{ name = cfg.database.user;
ensurePermissions = { "${cfg.database.name}.*" = "ALL PRIVILEGES"; };
}
];
};
systemd.tmpfiles.rules = [
"d '${cfg.stateDir}' - ${cfg.user} gitea - -"
"d '${cfg.stateDir}/conf' - ${cfg.user} gitea - -"
"d '${cfg.stateDir}/custom/conf' - ${cfg.user} gitea - -"
"d '${cfg.repositoryRoot}' - ${cfg.user} gitea - -"
"Z '${cfg.stateDir}' - ${cfg.user} gitea - -"
# If we have a folder or symlink with gitea locales, remove it
# And symlink the current gitea locales in place
"L+ '${cfg.stateDir}/conf/locale' - - - - ${gitea.out}/locale"
];
systemd.services.gitea = {
description = "gitea";
@ -289,12 +326,8 @@ in
runConfig = "${cfg.stateDir}/custom/conf/app.ini";
secretKey = "${cfg.stateDir}/custom/conf/secret_key";
in ''
# Make sure that the stateDir exists, as well as the conf dir in there
mkdir -p ${cfg.stateDir}/conf
# copy custom configuration and generate a random secret key if needed
${optionalString (cfg.useWizard == false) ''
mkdir -p ${cfg.stateDir}/custom/conf
cp -f ${configFile} ${runConfig}
if [ ! -e ${secretKey} ]; then
@ -309,7 +342,6 @@ in
chmod 640 ${runConfig} ${secretKey}
''}
mkdir -p ${cfg.repositoryRoot}
# update all hooks' binary paths
HOOKS=$(find ${cfg.repositoryRoot} -mindepth 4 -maxdepth 6 -type f -wholename "*git/hooks/*")
if [ "$HOOKS" ]
@ -319,43 +351,19 @@ in
sed -ri 's,/nix/store/[a-z0-9.-]+/bin/bash,${pkgs.bash}/bin/bash,g' $HOOKS
sed -ri 's,/nix/store/[a-z0-9.-]+/bin/perl,${pkgs.perl}/bin/perl,g' $HOOKS
fi
# If we have a folder or symlink with gitea locales, remove it
if [ -e ${cfg.stateDir}/conf/locale ]
then
rm -r ${cfg.stateDir}/conf/locale
fi
# And symlink the current gitea locales in place
ln -s ${gitea.out}/locale ${cfg.stateDir}/conf/locale
# update command option in authorized_keys
if [ -r ${cfg.stateDir}/.ssh/authorized_keys ]
then
sed -ri 's,/nix/store/[a-z0-9.-]+/bin/gitea,${gitea.bin}/bin/gitea,g' ${cfg.stateDir}/.ssh/authorized_keys
fi
'' + optionalString (usePostgresql && cfg.database.createDatabase) ''
if ! test -e "${cfg.stateDir}/db-created"; then
echo "CREATE ROLE ${cfg.database.user}
WITH ENCRYPTED PASSWORD '$(head -n1 ${cfg.database.passwordFile})'
NOCREATEDB NOCREATEROLE LOGIN" |
${pkgs.sudo}/bin/sudo -u ${pg.superUser} ${pg.package}/bin/psql
${pkgs.sudo}/bin/sudo -u ${pg.superUser} \
${pg.package}/bin/createdb \
--owner=${cfg.database.user} \
--encoding=UTF8 \
--lc-collate=C \
--lc-ctype=C \
--template=template0 \
${cfg.database.name}
touch "${cfg.stateDir}/db-created"
fi
'' + ''
chown ${cfg.user} -R ${cfg.stateDir}
'';
serviceConfig = {
Type = "simple";
User = cfg.user;
Group = "gitea";
WorkingDirectory = cfg.stateDir;
PermissionsStartOnly = true;
ExecStart = "${gitea.bin}/bin/gitea web";
Restart = "always";
};
@ -367,15 +375,17 @@ in
};
};
users = mkIf (cfg.user == "gitea") {
users.gitea = {
users.users = mkIf (cfg.user == "gitea") {
gitea = {
description = "Gitea Service";
home = cfg.stateDir;
createHome = true;
useDefaultShell = true;
group = "gitea";
};
};
users.groups.gitea = {};
warnings = optional (cfg.database.password != "")
''config.services.gitea.database.password will be stored as plaintext
in the Nix store. Use database.passwordFile instead.'';

View File

@ -186,6 +186,9 @@ let
"sockets.target"
"sound.target"
"systemd-exit.service"
"systemd-tmpfiles-clean.service"
"systemd-tmpfiles-clean.timer"
"systemd-tmpfiles-setup.service"
"timers.target"
];

View File

@ -465,20 +465,24 @@ in
merge = loc: defs: (import ../../lib/eval-config.nix {
inherit system;
modules =
let extraConfig =
{ boot.isContainer = true;
networking.hostName = mkDefault name;
networking.useDHCP = false;
assertions = [
{
assertion = config.privateNetwork -> stringLength name < 12;
message = ''
Container name `${name}` is too long: When `privateNetwork` is enabled, container names can
not be longer than 11 characters, because the container's interface name is derived from it.
This might be fixed in the future. See https://github.com/NixOS/nixpkgs/issues/38509
'';
}
];
let
extraConfig = {
_file = "module at ${__curPos.file}:${toString __curPos.line}";
config = {
boot.isContainer = true;
networking.hostName = mkDefault name;
networking.useDHCP = false;
assertions = [
{
assertion = config.privateNetwork -> stringLength name < 12;
message = ''
Container name `${name}` is too long: When `privateNetwork` is enabled, container names can
not be longer than 11 characters, because the container's interface name is derived from it.
This might be fixed in the future. See https://github.com/NixOS/nixpkgs/issues/38509
'';
}
];
};
};
in [ extraConfig ] ++ (map (x: x.value) defs);
prefix = [ "containers" name ];

View File

@ -36,6 +36,7 @@ in
borgbackup = handleTest ./borgbackup.nix {};
buildbot = handleTest ./buildbot.nix {};
cadvisor = handleTestOn ["x86_64-linux"] ./cadvisor.nix {};
cassandra = handleTest ./cassandra.nix {};
ceph = handleTestOn ["x86_64-linux"] ./ceph.nix {};
certmgr = handleTest ./certmgr.nix {};
cfssl = handleTestOn ["x86_64-linux"] ./cfssl.nix {};

View File

@ -1,26 +1,43 @@
import ./make-test.nix ({ pkgs, ...}:
import ./make-test.nix ({ pkgs, lib, ... }:
let
# Change this to test a different version of Cassandra:
testPackage = pkgs.cassandra;
cassandraCfg =
clusterName = "NixOS Automated-Test Cluster";
testRemoteAuth = lib.versionAtLeast testPackage.version "3.11";
jmxRoles = [{ username = "me"; password = "password"; }];
jmxRolesFile = ./cassandra-jmx-roles;
jmxAuthArgs = "-u ${(builtins.elemAt jmxRoles 0).username} -pw ${(builtins.elemAt jmxRoles 0).password}";
# Would usually be assigned to 512M
numMaxHeapSize = "400";
getHeapLimitCommand = ''
nodetool info | grep "^Heap Memory" | awk \'{print $NF}\'
'';
checkHeapLimitCommand = ''
[ 1 -eq "$(echo "$(${getHeapLimitCommand}) < ${numMaxHeapSize}" | ${pkgs.bc}/bin/bc)" ]
'';
cassandraCfg = ipAddress:
{ enable = true;
listenAddress = null;
listenInterface = "eth1";
rpcAddress = null;
rpcInterface = "eth1";
extraConfig =
{ start_native_transport = true;
seed_provider =
[{ class_name = "org.apache.cassandra.locator.SimpleSeedProvider";
parameters = [ { seeds = "cass0"; } ];
}];
};
inherit clusterName;
listenAddress = ipAddress;
rpcAddress = ipAddress;
seedAddresses = [ "192.168.1.1" ];
package = testPackage;
maxHeapSize = "${numMaxHeapSize}M";
heapNewSize = "100M";
};
nodeCfg = extra: {pkgs, config, ...}:
nodeCfg = ipAddress: extra: {pkgs, config, ...}:
{ environment.systemPackages = [ testPackage ];
networking.firewall.enable = false;
services.cassandra = cassandraCfg // extra;
networking = {
firewall.allowedTCPPorts = [ 7000 7199 9042 ];
useDHCP = false;
interfaces.eth1.ipv4.addresses = pkgs.lib.mkOverride 0 [
{ address = ipAddress; prefixLength = 24; }
];
};
services.cassandra = cassandraCfg ipAddress // extra;
virtualisation.memorySize = 1024;
};
in
@ -28,40 +45,65 @@ in
name = "cassandra-ci";
nodes = {
cass0 = nodeCfg {};
cass1 = nodeCfg {};
cass2 = nodeCfg { jvmOpts = [ "-Dcassandra.replace_address=cass1" ]; };
cass0 = nodeCfg "192.168.1.1" {};
cass1 = nodeCfg "192.168.1.2" (lib.optionalAttrs testRemoteAuth { inherit jmxRoles; remoteJmx = true; });
cass2 = nodeCfg "192.168.1.3" { jvmOpts = [ "-Dcassandra.replace_address=cass1" ]; };
};
testScript = ''
subtest "timers exist", sub {
# Check configuration
subtest "Timers exist", sub {
$cass0->succeed("systemctl list-timers | grep cassandra-full-repair.timer");
$cass0->succeed("systemctl list-timers | grep cassandra-incremental-repair.timer");
};
subtest "can connect via cqlsh", sub {
subtest "Can connect via cqlsh", sub {
$cass0->waitForUnit("cassandra.service");
$cass0->waitUntilSucceeds("nc -z cass0 9042");
$cass0->succeed("echo 'show version;' | cqlsh cass0");
};
subtest "nodetool is operational", sub {
subtest "Nodetool is operational", sub {
$cass0->waitForUnit("cassandra.service");
$cass0->waitUntilSucceeds("nc -z localhost 7199");
$cass0->succeed("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass0'");
};
subtest "bring up cluster", sub {
subtest "Cluster name was set", sub {
$cass0->waitForUnit("cassandra.service");
$cass0->waitUntilSucceeds("nc -z localhost 7199");
$cass0->waitUntilSucceeds("nodetool describecluster | grep 'Name: ${clusterName}'");
};
subtest "Heap limit set correctly", sub {
# Nodetool takes a while until it can display info
$cass0->waitUntilSucceeds('nodetool info');
$cass0->succeed('${checkHeapLimitCommand}');
};
# Check cluster interaction
subtest "Bring up cluster", sub {
$cass1->waitForUnit("cassandra.service");
$cass1->waitUntilSucceeds("nodetool status | egrep -c '^UN' | grep 2");
$cass1->waitUntilSucceeds("nodetool ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
$cass0->succeed("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass1'");
};
subtest "break and fix node", sub {
'' + lib.optionalString testRemoteAuth ''
subtest "Remote authenticated jmx", sub {
# Doesn't work if not enabled
$cass0->waitUntilSucceeds("nc -z localhost 7199");
$cass1->fail("nc -z 192.168.1.1 7199");
$cass1->fail("nodetool -h 192.168.1.1 status");
# Works if enabled
$cass1->waitUntilSucceeds("nc -z localhost 7199");
$cass0->succeed("nodetool -h 192.168.1.2 ${jmxAuthArgs} status");
};
'' + ''
subtest "Break and fix node", sub {
$cass1->block;
$cass0->waitUntilSucceeds("nodetool status --resolve-ip | egrep -c '^DN[[:space:]]+cass1'");
$cass0->succeed("nodetool status | egrep -c '^UN' | grep 1");
$cass1->unblock;
$cass1->waitUntilSucceeds("nodetool status | egrep -c '^UN' | grep 2");
$cass1->waitUntilSucceeds("nodetool ${jmxAuthArgs} status | egrep -c '^UN' | grep 2");
$cass0->succeed("nodetool status | egrep -c '^UN' | grep 2");
};
subtest "replace crashed node", sub {
subtest "Replace crashed node", sub {
$cass1->crash;
$cass2->waitForUnit("cassandra.service");
$cass0->waitUntilFails("nodetool status --resolve-ip | egrep '^UN[[:space:]]+cass1'");

View File

@ -13,18 +13,8 @@ with pkgs.lib;
machine =
{ config, pkgs, ... }:
{ services.mysql.enable = true;
services.mysql.package = pkgs.mariadb;
services.mysql.ensureDatabases = [ "gitea" ];
services.mysql.ensureUsers = [
{ name = "gitea";
ensurePermissions = { "gitea.*" = "ALL PRIVILEGES"; };
}
];
services.gitea.enable = true;
{ services.gitea.enable = true;
services.gitea.database.type = "mysql";
services.gitea.database.socket = "/run/mysqld/mysqld.sock";
};
testScript = ''
@ -42,10 +32,8 @@ with pkgs.lib;
machine =
{ config, pkgs, ... }:
{
services.gitea.enable = true;
{ services.gitea.enable = true;
services.gitea.database.type = "postgres";
services.gitea.database.passwordFile = pkgs.writeText "db-password" "secret";
};
testScript = ''

View File

@ -5,13 +5,13 @@
stdenv.mkDerivation rec {
inherit pname;
version = "1.0.0";
version = "1.0.1";
src = fetchFromGitHub {
owner = "jpcima";
repo = "ADLplug";
rev = "v${version}";
sha256 = "1rpd7v1rx74cv7nhs70ah0bly314rjzj70cp30mvhns2hzk66s3c";
sha256 = "0n9srdlgl1j528ap5xmllrqs1w6ibc5yf9sphvl1q9kjnizxrs2c";
fetchSubmodules = true;
};
@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake pkgconfig ];
meta = with stdenv.lib; {
description = "Synthesizer plugin for ADLMIDI and OPNMIDI (VST/LV2)";
description = "OPL3 and OPN2 FM Chip Synthesizer";
homepage = src.meta.homepage;
license = licenses.boost;
platforms = platforms.linux;

View File

@ -24,7 +24,8 @@ stdenv.mkDerivation rec {
'';
meta = with stdenv.lib; {
description = "DeadBeeF Infobar Plugin";
broken = true; # crashes DeaDBeeF and is abandoned (https://bitbucket.org/dsimbiriatin/deadbeef-infobar/issues/38/infobar-causes-deadbeef-180-to-crash)
description = "DeaDBeeF Infobar Plugin";
homepage = https://bitbucket.org/dsimbiriatin/deadbeef-infobar;
license = licenses.gpl2Plus;
maintainers = [ maintainers.jtojnar ];

View File

@ -0,0 +1,26 @@
{ stdenv, fetchFromGitHub, pkgconfig, deadbeef, gtkmm3, libxmlxx3 }:
stdenv.mkDerivation rec {
pname = "deadbeef-lyricbar-plugin";
version = "unstable-2019-01-29";
src = fetchFromGitHub {
owner = "C0rn3j";
repo = "deadbeef-lyricbar";
rev = "8f99b92ef827c451c43fc7dff38ae4f15c355e8e";
sha256 = "108hx5530f4xm8p9m2bk79nq7jkhcj39ad3vmxb2y6h6l2zv5kwl";
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ deadbeef gtkmm3 libxmlxx3 ];
buildFlags = [ "gtk3" ];
meta = with stdenv.lib; {
description = "Plugin for DeaDBeeF audio player that fetches and shows the songs lyrics";
homepage = "https://github.com/C0rn3j/deadbeef-lyricbar";
license = licenses.mit;
maintainers = [ maintainers.jtojnar ];
platforms = platforms.linux;
};
}

View File

@ -4,7 +4,7 @@
, faacSupport ? false, faac ? null
, flacSupport ? true, flac ? null
, soxSupport ? true, sox ? null
, vorbisSupport ? true, vorbisTools ? null
, vorbisSupport ? true, vorbisTools ? null
}:
assert mp3Support -> lame != null;
@ -14,7 +14,10 @@ assert flacSupport -> flac != null;
assert soxSupport -> sox != null;
assert vorbisSupport -> vorbisTools != null;
pythonPackages.buildPythonApplication rec {
let
zeroconf = pythonPackages.callPackage ./zeroconf.nix { };
in pythonPackages.buildPythonApplication rec {
pname = "pulseaudio-dlna";
version = "2017-11-01";
@ -24,13 +27,14 @@ pythonPackages.buildPythonApplication rec {
rev = "4472928dd23f274193f14289f59daec411023ab0";
sha256 = "1dfn7036vrq49kxv4an7rayypnm5dlawsf02pfsldw877hzdamqk";
};
# pulseaudio-dlna has no tests
doCheck = false;
propagatedBuildInputs = with pythonPackages; [
dbus-python docopt requests setproctitle protobuf psutil futures
chardet notify2 netifaces pyroute2 pygobject2 lxml zeroconf ]
chardet notify2 netifaces pyroute2 pygobject2 lxml ]
++ [ zeroconf ]
++ stdenv.lib.optional mp3Support lame
++ stdenv.lib.optional opusSupport opusTools
++ stdenv.lib.optional faacSupport faac

View File

@ -0,0 +1,31 @@
{ stdenv
, buildPythonPackage
, fetchPypi
, ifaddr
, typing
, isPy27
, pythonOlder
, netifaces
, six
, enum-compat
}:
buildPythonPackage rec {
pname = "zeroconf";
version = "0.19.1";
src = fetchPypi {
inherit pname version;
sha256 = "0ykzg730n915qbrq9bn5pn06bv6rb5zawal4sqjyfnjjm66snkj3";
};
propagatedBuildInputs = [ netifaces six enum-compat ifaddr ]
++ stdenv.lib.optionals (pythonOlder "3.5") [ typing ];
meta = with stdenv.lib; {
description = "A pure python implementation of multicast DNS service discovery";
homepage = https://github.com/jstasiak/python-zeroconf;
license = licenses.lgpl21;
maintainers = [ ];
};
}

View File

@ -12,14 +12,14 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = {
"i686-linux" = "1485maq7rrvi742w0zs5nnaqy2s7w4hhm0fi4n69vafncia8zyic";
"x86_64-linux" = "082725c7yzih13d4khvwz34ijwdg6yxmsxhjmpn2pqlfsg43hxsh";
"x86_64-darwin" = "1mvj63sbdcw227bi4idqcwqxds60g64spvdi2bxh5sk6g5q5df90";
"i686-linux" = "0345pxad3fkcmn5z2r55fnvx8ybvfpwydxv2h21rd99grhwh8dk4";
"x86_64-linux" = "1g6cib1c9mikg8cv940xk5g8dh0q5v6vlrgj78rr161hz1lrrv09";
"x86_64-darwin" = "0krihhr57hnsc9qc1l2ncg70vz7nmrvlqrjbgdnihlrpf71d09hp";
}.${system};
in
callPackage ./generic.nix rec {
version = "1.35.0";
version = "1.35.1";
pname = "vscode";
executableName = "code" + lib.optionalString isInsiders "-insiders";

View File

@ -12,17 +12,17 @@ let
archive_fmt = if system == "x86_64-darwin" then "zip" else "tar.gz";
sha256 = {
"i686-linux" = "1vr3mblg5223k56yqi9fqwa7yg8qi4r3nkw6ssf87gs8jwfxa47l";
"x86_64-linux" = "1vqq365zw44ll22i06bxxviyywv1v2f71c2mricrz3faz25c3lvm";
"x86_64-darwin" = "0pa5cz8kq45q375b74kaa8qn1h0r1mp9amh5gsprg3hx89xzvhxi";
"i686-linux" = "0i572kxc7h63jxl6mw5k3gv08m9padqkky5k1f3w0d638hxhfl23";
"x86_64-linux" = "0577lqpfrjgwbj27hm59kflb558mkl2nx00ys0hwndayqv0bfnvg";
"x86_64-darwin" = "047sj0j9k74fvw9fc1ripqk2vy4v17jw488m7r95nf0cyyk08xg0";
}.${system};
in
callPackage ./generic.nix rec {
version = "1.34.0";
version = "1.35.1";
pname = "vscodium";
executableName = "vscodium";
executableName = "codium";
longName = "VSCodium";
shortName = "Codium";

View File

@ -9,11 +9,11 @@ let
inherit (python2Packages) pygtk wrapPython python;
in stdenv.mkDerivation rec {
pname = "gimp";
version = "2.10.10";
version = "2.10.12";
src = fetchurl {
url = "http://download.gimp.org/pub/gimp/v${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "0xwck5nbpb945s1cyij3kfqw1pchbhx8i5vf5hgywyjw4r1z5l8j";
sha256 = "0wdcr8d2ink4swn5r4v13bsiya6s3xm4ya97sdbhs4l40y7bb03x";
};
nativeBuildInputs = [ pkgconfig intltool gettext wrapPython ];

View File

@ -1,4 +1,4 @@
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, qtgraphicaleffects, curaengine }:
{ mkDerivation, lib, fetchFromGitHub, cmake, python3, qtbase, qtquickcontrols2, qtgraphicaleffects, curaengine, plugins ? [] }:
mkDerivation rec {
name = "cura-${version}";
@ -21,7 +21,7 @@ mkDerivation rec {
buildInputs = [ qtbase qtquickcontrols2 qtgraphicaleffects ];
propagatedBuildInputs = with python3.pkgs; [
libsavitar numpy-stl pyserial requests uranium zeroconf
];
] ++ plugins;
nativeBuildInputs = [ cmake python3.pkgs.wrapPython ];
cmakeFlags = [
@ -37,6 +37,10 @@ mkDerivation rec {
postInstall = ''
mkdir -p $out/share/cura/resources/materials
cp ${materials}/*.fdm_material $out/share/cura/resources/materials/
mkdir -p $out/lib/cura/plugins
for plugin in ${toString plugins}; do
ln -s $plugin/lib/cura/plugins/* $out/lib/cura/plugins
done
'';
postFixup = ''

View File

@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, cmake, python3Packages }:
let
self = {
octoprint = stdenv.mkDerivation rec {
pname = "Cura-OctoPrintPlugin";
version = "3.5.5";
src = fetchFromGitHub {
owner = "fieldOfView";
repo = pname;
rev = "d05a9a4c1a01c584d5cec4f4b7d170077235467a";
sha256 = "0ik69g3kbn7rz2wh0cfq9ww8x222kagd8jvsd4xlqgq4yrf0jk7x";
};
nativeBuildInputs = [ cmake ];
propagatedBuildInputs = with python3Packages; [
netifaces
];
meta = with stdenv.lib; {
description = "Enables printing directly to OctoPrint and monitoring the process";
homepage = "https://github.com/fieldOfView/Cura-OctoPrintPlugin";
license = licenses.agpl3;
maintainers = with maintainers; [ gebner ];
};
};
};
in self

View File

@ -0,0 +1,22 @@
{ lib, fetchFromGitHub, buildGoPackage }:
buildGoPackage rec {
name = "captive-browser";
version = "2019-04-16";
goPackagePath = name;
src = fetchFromGitHub {
owner = "FiloSottile";
repo = "captive-browser";
rev = "08450562e58bf9564ee98ad64ef7b2800e53338f";
sha256 = "17icgjg7h0xm8g4yy38qjhsvlz9pmlmj9kydz01y2nyl0v02i648";
};
meta = with lib; {
description = "Dedicated Chrome instance to log into captive portals without messing with DNS settings";
homepage = https://blog.filippo.io/captive-browser;
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ volth ];
};
}

View File

@ -100,11 +100,11 @@ let
flash = stdenv.mkDerivation rec {
name = "flashplayer-ppapi-${version}";
version = "32.0.0.192";
version = "32.0.0.207";
src = fetchzip {
url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz";
sha256 = "14nydiqjvr7hc4dmn900p7j7rp6prwyaf6xnki2ssbq6h1ni2lg1";
sha256 = "09bbrlnw343ygcibyjfa27r8gjdg1dcxx85d3v4v93wfi29nl789";
stripRoot = false;
};

View File

@ -17,10 +17,10 @@ rec {
firefox = common rec {
pname = "firefox";
ffversion = "67.0.1";
ffversion = "67.0.2";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${ffversion}/source/firefox-${ffversion}.source.tar.xz";
sha512 = "1cbhlbgni08phqqiqlh1c29kl8b1w2sify4756bm4a01hmhfnhgwfa6v88vhzqy9h4c0045g8g4w14l2521k8w6rcijl1nvh14xdczf";
sha512 = "289bhd8ynanb2zpclzaqqyz4082w529kcf3fd7li3k4pn0ayvkxfv4kmmhfz4xxrwsx6f489ffcj9a48ckk1czi9kykvj3i6ni0mnhl";
};
patches = [

View File

@ -74,7 +74,7 @@ let
in
stdenv.mkDerivation rec {
name = "flashplayer-${version}";
version = "32.0.0.192";
version = "32.0.0.207";
src = fetchurl {
url =
@ -85,14 +85,14 @@ stdenv.mkDerivation rec {
sha256 =
if debug then
if arch == "x86_64" then
"0n5m70mz1fa5pgpz1ldqgn6bkr4in5qjn79kb85127wmg8fddbz7"
"0v5dlqaapr29qyb2pm57yafnmxdxin7shn1xqsx2sc9xwmvmaw7v"
else
"1q6pjmnw2h8k09va5x64ijmq0kmfb569rwcibwl0d8kylxi97b6v"
"0ygxcvn6srjg9clayfri86c64inwidp9qk25hbsbyr8m8gghpwqb"
else
if arch == "x86_64" then
"1h2ya3szq24dczv2izxy47kr2raiahxx7zvm49jlvlcp5cygxvjk"
"1y1c65vfsvapqsl2q6vm75m5jyksjwnfs6f6ijcpg0dmf5f4fypy"
else
"084bv0m9w1v2s4bf5rgan40l1fajwfam3njvgm47ffyg6s0kg1kh";
"1h9samf24l0ix6188p940h7l989nwkzlrvv7qdxczj3p62zzvqfy";
};
nativeBuildInputs = [ unzip ];

View File

@ -50,7 +50,7 @@
stdenv.mkDerivation rec {
name = "flashplayer-standalone-${version}";
version = "32.0.0.192";
version = "32.0.0.207";
src = fetchurl {
url =
@ -60,9 +60,9 @@ stdenv.mkDerivation rec {
"https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_sa_linux.x86_64.tar.gz";
sha256 =
if debug then
"0j5rzamyajkiblalqkimx29bwm7yg9m4nj9z7z8hahcywpf81yqg"
"0z08da6xhjvsxn9xymcnpphap2h0ydj784ms1f950l84rdl4qrr4"
else
"0qnz383aggm07hbvyrnqphwhd5wp9xbairf908nk4i6ad8wg1x3r";
"0d2pxggrzamrg143bvic0qa2v70jpplnahihfa4q2rbvy0l3i2pq";
};
nativeBuildInputs = [ unzip ];

View File

@ -1,7 +1,7 @@
{ callPackage, stdenv }:
let
stableVersion = "2.1.20";
stableVersion = "2.1.21";
previewVersion = "2.2.0b2";
addVersion = args:
let version = if args.stable then stableVersion else previewVersion;
@ -9,8 +9,8 @@ let
in args // { inherit version branch; };
mkGui = args: callPackage (import ./gui.nix (addVersion args)) { };
mkServer = args: callPackage (import ./server.nix (addVersion args)) { };
guiSrcHash = "0hs4qxas8xfwpn8c0w1l89aypqj3dy5wskyis8dq08p6h3kjis1g";
serverSrcHash = "06q5283mdafijbczd14whw8fqwhmkvvaa9r7q16m18d96mr1z8m5";
guiSrcHash = "1ydmib302r1cpm2z9pzsfp4ygxrbmskwszsip397n92qx3l9a9v3";
serverSrcHash = "1ahn1xq1f0wx46i0c8idz96dxfbakk37pqi6amy91594mdlp8yr4";
in {
guiStable = mkGui {
stable = true;

View File

@ -1,7 +1,10 @@
{ darkMode ? false, stdenv, fetchurl, dpkg, makeWrapper , alsaLib, atk, cairo,
{ stdenv, fetchurl, dpkg, makeWrapper , alsaLib, atk, cairo,
cups, curl, dbus, expat, fontconfig, freetype, glib , gnome2, gtk3, gdk_pixbuf,
libappindicator-gtk3, libnotify, libxcb, nspr, nss, pango , systemd, xorg,
at-spi2-atk, libuuid }:
at-spi2-atk, libuuid,
darkMode ? false,
darkModeCssUrl ? "https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/black.css"
}:
let
@ -96,7 +99,7 @@ in stdenv.mkDerivation {
document.addEventListener('DOMContentLoaded', function() {
let tt__customCss = ".menu ul li a:not(.inline_menu_link) {color: #fff !important;}"
$.ajax({
url: 'https://cdn.rawgit.com/laCour/slack-night-mode/master/css/raw/black.css',
url: '${darkModeCssUrl}',
success: function(css) {
\$("<style></style>").appendTo('head').html(css + tt__customCss);
\$("<style></style>").appendTo('head').html('#reply_container.upload_in_threads .inline_message_input_container {background: padding-box #545454}');

View File

@ -7,8 +7,8 @@ let
version = "1.7.7";
sha256Hash = "0w3jq02qzpx58xlmwaj0lgav5lx6s9hdidnq9v1npp4qmpdnsn75";
# svn log svn://svn.archlinux.org/community/telegram-desktop/trunk
archPatchesRevision = "476826";
archPatchesHash = "1vnlvba60hxd5jlh0fvsa50xmb9xgcphdsx6j1ld7f12m7ik68zr";
archPatchesRevision = "480743";
archPatchesHash = "0jfyp642l2850yzgrw3irq8bn6vl44rx2693c5cshwbihd212af7";
};
in {
stable = mkTelegram stableVersion;

View File

@ -7,11 +7,11 @@ let
inherit (pythonPackages) python pygobject3;
in stdenv.mkDerivation rec {
pname = "gnumeric";
version = "1.12.44";
version = "1.12.45";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "0147962c6ybdsj57rz95nla0rls7g545wc2n7pz59zmzyd5pksk0";
sha256 = "0c8dl1kvnj3g32qy3s92qpqpqfy0in59cx005gjvvzsflahav61h";
};
configureFlags = [ "--disable-component" ];

View File

@ -0,0 +1,34 @@
{ stdenv, fetchFromGitHub, makeWrapper, zlib, perl, perlPackages }:
stdenv.mkDerivation rec {
version = "4.8.1";
pname = "cd-hit";
src = fetchFromGitHub {
owner = "weizhongli";
repo = "cdhit";
rev = "V${version}";
sha256 = "032nva6iiwmw59gjipm1mv0xlcckhxsf45mc2qbnv19lbis0q22i";
};
propagatedBuildInputs = [ perl perlPackages.TextNSP perlPackages.PerlMagick perlPackages.Storable ];
nativeBuildInputs = [ zlib makeWrapper ];
makeFlags = [ "PREFIX=$(out)/bin" ];
preInstall = "mkdir -p $out/bin";
postFixup = ''
wrapProgram $out/bin/FET.pl --prefix PERL5LIB : $PERL5LIB
wrapProgram $out/bin/plot_2d.pl --prefix PERL5LIB : $PERL5LIB
wrapProgram $out/bin/clstr_list_sort.pl --prefix PERL5LIB : $PERL5LIB
'';
meta = with stdenv.lib; {
description = "Clustering and comparing protein or nucleotide sequences";
homepage = http://weizhongli-lab.org/cd-hit/;
license = licenses.gpl2;
maintainers = [ maintainers.bzizou ];
platforms = platforms.unix;
};
}

View File

@ -20,7 +20,7 @@ assert sendEmailSupport -> perlSupport;
assert svnSupport -> perlSupport;
let
version = "2.21.0";
version = "2.22.0";
svn = subversionClient.override { perlBindings = perlSupport; };
in
@ -29,7 +29,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "https://www.kernel.org/pub/software/scm/git/git-${version}.tar.xz";
sha256 = "0a0d0b07rmvs985zpndxxy0vzr0vq53kq5kyd68iv6gf8gkirjwc";
sha256 = "17zj6jwx3s6bybd290f1mj5iym1r64560rmnf0p63x4akxclp7hm";
};
outputs = [ "out" ] ++ stdenv.lib.optional perlSupport "gitweb";
@ -96,7 +96,9 @@ stdenv.mkDerivation {
postBuild = ''
make -C contrib/subtree
'' + (stdenv.lib.optionalString stdenv.isDarwin ''
'' + (stdenv.lib.optionalString perlSupport ''
make -C contrib/diff-highlight
'') + (stdenv.lib.optionalString stdenv.isDarwin ''
make -C contrib/credential/osxkeychain
'') + (stdenv.lib.optionalString withLibsecret ''
make -C contrib/credential/libsecret

View File

@ -1,12 +1,12 @@
{
"ce": {
"version": "11.10.4",
"repo_hash": "02rvf5ikahydswjldzg99k8han051ap7v8h9mcjgrr4xmj301hxm",
"deb_hash": "0sigpp5lhg4pl88gsgf7dq2k7mi2wgaz0vdsl25c97w1daw7a60c",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.10.4-ce.0_amd64.deb/download.deb",
"version": "11.10.5",
"repo_hash": "00bkdylcnz171jf8di05ygviplqzssazrfaqpwmbqwdjab2ax4yr",
"deb_hash": "1zsg4fhpl07pz76i4yynk38xs7cp9w4jcryxk7larbr25m48q4rb",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/stretch/gitlab-ce_11.10.5-ce.0_amd64.deb/download.deb",
"owner": "gitlab-org",
"repo": "gitlab-ce",
"rev": "v11.10.4",
"rev": "v11.10.5",
"passthru": {
"GITALY_SERVER_VERSION": "1.34.1",
"GITLAB_PAGES_VERSION": "1.5.0",
@ -15,13 +15,13 @@
}
},
"ee": {
"version": "11.10.4",
"repo_hash": "06nf94k0ay9kmx060j387hydyf6crv0f1pjb691r3y6s713m6php",
"deb_hash": "1g0mlyzm2ikpblmy529wg6az5biiqczpr3kyp2mk4yjkdvg59jjp",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.10.4-ee.0_amd64.deb/download.deb",
"version": "11.10.5",
"repo_hash": "0nla908l3513r87i3x2fa87j48wgykzpf7cqxddnahk98m0wgxvi",
"deb_hash": "02ri9b4xd77wqjnd49h5n77aylrb5xlq6xa26xn39kl326isaj41",
"deb_url": "https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/stretch/gitlab-ee_11.10.5-ee.0_amd64.deb/download.deb",
"owner": "gitlab-org",
"repo": "gitlab-ee",
"rev": "v11.10.4-ee",
"rev": "v11.10.5-ee",
"passthru": {
"GITALY_SERVER_VERSION": "1.34.1",
"GITLAB_PAGES_VERSION": "1.5.0",
@ -29,4 +29,4 @@
"GITLAB_WORKHORSE_VERSION": "8.5.2"
}
}
}
}

View File

@ -2,7 +2,7 @@ source 'https://rubygems.org'
gem "bundler", ">= 1.5.0"
gem "rails", "5.2.2.1"
gem "rails", "5.2.3"
gem "rouge", "~> 3.3.0"
gem "request_store", "1.0.5"
gem "mini_mime", "~> 1.0.1"

View File

@ -1,19 +1,19 @@
GEM
remote: https://rubygems.org/
specs:
actioncable (5.2.2.1)
actionpack (= 5.2.2.1)
actioncable (5.2.3)
actionpack (= 5.2.3)
nio4r (~> 2.0)
websocket-driver (>= 0.6.1)
actionmailer (5.2.2.1)
actionpack (= 5.2.2.1)
actionview (= 5.2.2.1)
activejob (= 5.2.2.1)
actionmailer (5.2.3)
actionpack (= 5.2.3)
actionview (= 5.2.3)
activejob (= 5.2.3)
mail (~> 2.5, >= 2.5.4)
rails-dom-testing (~> 2.0)
actionpack (5.2.2.1)
actionview (= 5.2.2.1)
activesupport (= 5.2.2.1)
actionpack (5.2.3)
actionview (= 5.2.3)
activesupport (= 5.2.3)
rack (~> 2.0)
rack-test (>= 0.6.3)
rails-dom-testing (~> 2.0)
@ -21,26 +21,26 @@ GEM
actionpack-xml_parser (2.0.1)
actionpack (>= 5.0)
railties (>= 5.0)
actionview (5.2.2.1)
activesupport (= 5.2.2.1)
actionview (5.2.3)
activesupport (= 5.2.3)
builder (~> 3.1)
erubi (~> 1.4)
rails-dom-testing (~> 2.0)
rails-html-sanitizer (~> 1.0, >= 1.0.3)
activejob (5.2.2.1)
activesupport (= 5.2.2.1)
activejob (5.2.3)
activesupport (= 5.2.3)
globalid (>= 0.3.6)
activemodel (5.2.2.1)
activesupport (= 5.2.2.1)
activerecord (5.2.2.1)
activemodel (= 5.2.2.1)
activesupport (= 5.2.2.1)
activemodel (5.2.3)
activesupport (= 5.2.3)
activerecord (5.2.3)
activemodel (= 5.2.3)
activesupport (= 5.2.3)
arel (>= 9.0)
activestorage (5.2.2.1)
actionpack (= 5.2.2.1)
activerecord (= 5.2.2.1)
activestorage (5.2.3)
actionpack (= 5.2.3)
activerecord (= 5.2.3)
marcel (~> 0.3.1)
activesupport (5.2.2.1)
activesupport (5.2.3)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 0.7, < 2)
minitest (~> 5.1)
@ -56,16 +56,15 @@ GEM
rack (>= 1.0.0)
rack-test (>= 0.5.4)
xpath (>= 2.0, < 4.0)
childprocess (0.9.0)
ffi (~> 1.0, >= 1.0.11)
childprocess (1.0.1)
rake (< 13.0)
concurrent-ruby (1.1.5)
crass (1.0.4)
css_parser (1.7.0)
addressable
csv (3.0.6)
csv (3.0.9)
docile (1.1.5)
erubi (1.8.0)
ffi (1.10.0)
globalid (0.4.2)
activesupport (>= 4.2.0)
htmlentities (4.3.4)
@ -89,10 +88,10 @@ GEM
mysql2 (0.5.2)
net-ldap (0.16.1)
nio4r (2.3.1)
nokogiri (1.10.2)
nokogiri (1.10.3)
mini_portile2 (~> 2.4.0)
pg (1.1.4)
public_suffix (3.0.3)
public_suffix (3.1.0)
puma (3.12.1)
rack (2.0.7)
rack-openid (1.4.2)
@ -100,27 +99,27 @@ GEM
ruby-openid (>= 2.1.8)
rack-test (1.1.0)
rack (>= 1.0, < 3)
rails (5.2.2.1)
actioncable (= 5.2.2.1)
actionmailer (= 5.2.2.1)
actionpack (= 5.2.2.1)
actionview (= 5.2.2.1)
activejob (= 5.2.2.1)
activemodel (= 5.2.2.1)
activerecord (= 5.2.2.1)
activestorage (= 5.2.2.1)
activesupport (= 5.2.2.1)
rails (5.2.3)
actioncable (= 5.2.3)
actionmailer (= 5.2.3)
actionpack (= 5.2.3)
actionview (= 5.2.3)
activejob (= 5.2.3)
activemodel (= 5.2.3)
activerecord (= 5.2.3)
activestorage (= 5.2.3)
activesupport (= 5.2.3)
bundler (>= 1.3.0)
railties (= 5.2.2.1)
railties (= 5.2.3)
sprockets-rails (>= 2.0.0)
rails-dom-testing (2.0.3)
activesupport (>= 4.2.0)
nokogiri (>= 1.6)
rails-html-sanitizer (1.0.4)
loofah (~> 2.2, >= 2.2.2)
railties (5.2.2.1)
actionpack (= 5.2.2.1)
activesupport (= 5.2.2.1)
railties (5.2.3)
actionpack (= 5.2.3)
activesupport (= 5.2.3)
method_source
rake (>= 0.8.7)
thor (>= 0.19.0, < 2.0)
@ -132,17 +131,17 @@ GEM
redcarpet (3.4.0)
request_store (1.0.5)
rmagick (2.16.0)
roadie (3.4.0)
roadie (3.5.0)
css_parser (~> 1.4)
nokogiri (~> 1.5)
nokogiri (~> 1.8)
roadie-rails (1.3.0)
railties (>= 3.0, < 5.3)
roadie (~> 3.1)
rouge (3.3.0)
ruby-openid (2.3.0)
rubyzip (1.2.2)
selenium-webdriver (3.141.0)
childprocess (~> 0.5)
rubyzip (1.2.3)
selenium-webdriver (3.142.3)
childprocess (>= 0.5, < 2.0)
rubyzip (~> 1.2, >= 1.2.2)
simplecov (0.14.1)
docile (~> 1.1.0)
@ -160,9 +159,9 @@ GEM
thread_safe (0.3.6)
tzinfo (1.2.5)
thread_safe (~> 0.1)
websocket-driver (0.7.0)
websocket-driver (0.7.1)
websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.3)
websocket-extensions (0.1.4)
xpath (3.2.0)
nokogiri (~> 1.8)
yard (0.9.19)
@ -186,7 +185,7 @@ DEPENDENCIES
pg (~> 1.1.4)
puma (~> 3.7)
rack-openid
rails (= 5.2.2.1)
rails (= 5.2.3)
rails-dom-testing
rbpdf (~> 1.19.6)
redcarpet (~> 3.4.0)

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, bundlerEnv, ruby }:
let
version = "4.0.3";
version = "4.0.4";
rubyEnv = bundlerEnv {
name = "redmine-env-${version}";
@ -15,7 +15,7 @@ in
src = fetchurl {
url = "https://www.redmine.org/releases/${name}.tar.gz";
sha256 = "1wyfl08sq71n4c2hc0fv1dfblykq5i3mbqyjdswk26md8dcmw8ac";
sha256 = "0i5bmgdi3mahbis9hn0hk53rnz4ihp9yij4b4i07ny9vf3n4kp1a";
};
buildInputs = [ rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler ];

View File

@ -3,28 +3,28 @@
dependencies = ["actionpack" "nio4r" "websocket-driver"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1x5fxhsr2mxq5r6258s48xsn7ld081d3qaavppvj7yp7w9vqn871";
sha256 = "04wd9rf8sglrqc8jz49apqcxbi51gdj7l1apf5qr4i86iddk6pkm";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
actionmailer = {
dependencies = ["actionpack" "actionview" "activejob" "mail" "rails-dom-testing"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "10n2v2al68rsq5ghrdp7cpycsc1q0m19fcd8cd5i528n30nl23iw";
sha256 = "15laym06zcm2021qdhlyr6y9jn1marw436i89hcxqg14a8zvyvwa";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
actionpack = {
dependencies = ["actionview" "activesupport" "rack" "rack-test" "rails-dom-testing" "rails-html-sanitizer"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1lxqzxa728dqg42yw0q4hqkaawqagiw1k0392an2ghjfgb16pafx";
sha256 = "1s2iay17i2k0xx36cmnpbrmr5w6x70jk7fq1d8w70xcdw5chm0w1";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
actionpack-xml_parser = {
dependencies = ["actionpack" "railties"];
@ -39,55 +39,55 @@
dependencies = ["activesupport" "builder" "erubi" "rails-dom-testing" "rails-html-sanitizer"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0832vlx37rly8ryfgi01b20mld8b3bv9cg62n5wax4zpzgn6jdxb";
sha256 = "1v49rgf8305grqf6gq7qa47qhamr369igyy0giycz60x86afyr4h";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
activejob = {
dependencies = ["activesupport" "globalid"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zma452lc3qp4a7r10zbdmsci0kv9a3gnk4da2apbdrc8fib5mr3";
sha256 = "17vizibxbsli5yppgrvmw13wj7a9xy19s5nqxf1k23bbk2s5b87s";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
activemodel = {
dependencies = ["activesupport"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1idmvqvpgri34k31s44pjb88rc3jad3yxra7fd1kpidpnv5f3v65";
sha256 = "0mghh9di8011ara9h1r5a216yzk1vjm9r3p0gdvdi8j1zmkl6k6h";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
activerecord = {
dependencies = ["activemodel" "activesupport" "arel"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1c5cz9v7ggpqjxf0fqs1xhy1pb9m34cp31pxarhs9aqb71qjl98v";
sha256 = "0d6036f592803iyvp6bw98p3sg638mia5dbw19lvachx6jgzfvpw";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
activestorage = {
dependencies = ["actionpack" "activerecord" "marcel"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "155xpbzrz0kr0argx0vsh5prvadd2h1g1m61kdiabvfy2iygc02n";
sha256 = "04is6ipjqw1f337i8pm8w5bd99rpygqfd0fzzxkr7jd308ggmsjk";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
activesupport = {
dependencies = ["concurrent-ruby" "i18n" "minitest" "tzinfo"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "161bp4p01v1a1lvszrhd1a02zf9x1p1l1yhw79a3rix1kvzkkdqb";
sha256 = "110vp4frgkw3mpzlmshg2f2ig09cknls2w68ym1r1s39d01v0mi8";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
addressable = {
dependencies = ["public_suffix"];
@ -124,13 +124,13 @@
version = "2.18.0";
};
childprocess = {
dependencies = ["ffi"];
dependencies = ["rake"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0a61922kmvcxyj5l70fycapr87gz1dzzlkfpq85rfqk5vdh3d28p";
sha256 = "1d2gasf988jh2k3fjb7i54c68rq6ni6jf9w0gnsfhrq94a6mprkz";
type = "gem";
};
version = "0.9.0";
version = "1.0.1";
};
concurrent-ruby = {
source = {
@ -160,10 +160,10 @@
csv = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1zvchwfkdkljnslqakagbnw76vs01xwpjrynrawfanzn376c6bcd";
sha256 = "097rl10ivzlya5640530ayls2f1vid2mfgjy9ngd789qmp0j6x4b";
type = "gem";
};
version = "3.0.6";
version = "3.0.9";
};
docile = {
source = {
@ -181,14 +181,6 @@
};
version = "1.8.0";
};
ffi = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p";
type = "gem";
};
version = "1.10.0";
};
globalid = {
dependencies = ["activesupport"];
source = {
@ -334,10 +326,10 @@
dependencies = ["mini_portile2"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0sy96cc8i5y4p67fhf4d9c6sg8ymrrva21zyvzw55l0pa1582wx2";
sha256 = "02bjydih0j515szfv9mls195cvpyidh6ixm7dwbl3s2sbaxxk5s4";
type = "gem";
};
version = "1.10.2";
version = "1.10.3";
};
pg = {
source = {
@ -350,10 +342,10 @@
public_suffix = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
sha256 = "1c7c5xxkx91hwj4572hbnyvxmydb90q69wlpr2l0dxrmwx2p365l";
type = "gem";
};
version = "3.0.3";
version = "3.1.0";
};
puma = {
source = {
@ -393,10 +385,10 @@
dependencies = ["actioncable" "actionmailer" "actionpack" "actionview" "activejob" "activemodel" "activerecord" "activestorage" "activesupport" "railties" "sprockets-rails"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1jxmwrykwgbn116hhmi7h75hcsdifhj89wk12m7ch2f3mn1lrmp9";
sha256 = "1p7cszi3n9ksxchxnccmz61pd1i3rjg4813dsdinsm8xm5k1pdgr";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
rails-dom-testing = {
dependencies = ["activesupport" "nokogiri"];
@ -420,10 +412,10 @@
dependencies = ["actionpack" "activesupport" "method_source" "rake" "thor"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0al6mvh2jvr3n7cxkx0yvhgiiarby6gxc93vl5xg1yxkvx27qzd6";
sha256 = "1gn9fwb5wm08fbj7zpilqgblfl315l5b7pg4jsvxlizvrzg8h8q4";
type = "gem";
};
version = "5.2.2.1";
version = "5.2.3";
};
rake = {
source = {
@ -478,10 +470,10 @@
dependencies = ["css_parser" "nokogiri"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "0l3s80394yijvz0fsvfkw0azsi9yxsdkxd8lpas0bd7wlndjvmxx";
sha256 = "0b2qgr725hnscz3ldb607gwgjkr47ncs1jjnk6zh0h70p5dxrk2d";
type = "gem";
};
version = "3.4.0";
version = "3.5.0";
};
roadie-rails = {
dependencies = ["railties" "roadie"];
@ -511,19 +503,19 @@
rubyzip = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
sha256 = "1w9gw28ly3zyqydnm8phxchf4ymyjl2r7zf7c12z8kla10cpmhlc";
type = "gem";
};
version = "1.2.2";
version = "1.2.3";
};
selenium-webdriver = {
dependencies = ["childprocess" "rubyzip"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "114hv2ajmh6d186v2w887yqakqcxyxq367l0iakrrpvwviknrhfs";
sha256 = "0i0jr4qrcvg5isc11ivjw7f9gywbimnz613k82bfcrnlzdf90mxy";
type = "gem";
};
version = "3.141.0";
version = "3.142.3";
};
simplecov = {
dependencies = ["docile" "json" "simplecov-html"];
@ -589,18 +581,18 @@
dependencies = ["websocket-extensions"];
source = {
remotes = ["https://rubygems.org"];
sha256 = "1551k3fs3kkb3ghqfj3n5lps0ikb9pyrdnzmvgfdxy8574n4g1dn";
sha256 = "1bxamwqldmy98hxs5pqby3andws14hl36ch78g0s81gaz9b91nj2";
type = "gem";
};
version = "0.7.0";
version = "0.7.1";
};
websocket-extensions = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "034sdr7fd34yag5l6y156rkbhiqgmy395m231dwhlpcswhs6d270";
sha256 = "00i624ng1nvkz1yckj3f8yxxp6hi7xaqf40qh9q3hj2n1l9i8g6m";
type = "gem";
};
version = "0.1.3";
version = "0.1.4";
};
xpath = {
dependencies = ["nokogiri"];

View File

@ -57,7 +57,7 @@ GEM
addressable
docile (1.1.5)
erubis (2.7.0)
ffi (1.10.0)
ffi (1.11.1)
globalid (0.4.2)
activesupport (>= 4.2.0)
htmlentities (4.3.4)
@ -88,7 +88,7 @@ GEM
pg (0.18.4)
protected_attributes (1.1.4)
activemodel (>= 4.0.1, < 5.0)
public_suffix (3.0.3)
public_suffix (3.1.0)
rack (1.6.11)
rack-openid (1.4.2)
rack (>= 1.1.0)
@ -135,7 +135,7 @@ GEM
railties (>= 3.0, < 5.1)
roadie (~> 3.1)
ruby-openid (2.3.0)
rubyzip (1.2.2)
rubyzip (1.2.3)
selenium-webdriver (2.53.4)
childprocess (~> 0.5)
rubyzip (~> 1.0)

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, bundlerEnv, ruby }:
let
version = "3.4.10";
version = "3.4.11";
rubyEnv = bundlerEnv {
name = "redmine-env-${version}";
@ -15,7 +15,7 @@ in
src = fetchurl {
url = "https://www.redmine.org/releases/${name}.tar.gz";
sha256 = "08clfg7wgp4wnajawdn7qgrv7r8lk8d8haqkl7iz77ygdi3mpyrh";
sha256 = "14987sd9ff2n3982qlfwd4m0g1m10w8jyv791nica3wppvnrxh0r";
};
buildInputs = [ rubyEnv rubyEnv.wrappedRuby rubyEnv.bundler ];

View File

@ -166,10 +166,10 @@
ffi = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "0j8pzj8raxbir5w5k6s7a042sb5k02pg0f8s4na1r5lan901j00p";
sha256 = "06mvxpjply8qh4j3fj9wh08kdzwkbnvsiysh0vrhlk5cwxzjmblh";
type = "gem";
};
version = "1.10.0";
version = "1.11.1";
};
globalid = {
dependencies = ["activesupport"];
@ -342,10 +342,10 @@
public_suffix = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "08q64b5br692dd3v0a9wq9q5dvycc6kmiqmjbdxkxbfizggsvx6l";
sha256 = "1c7c5xxkx91hwj4572hbnyvxmydb90q69wlpr2l0dxrmwx2p365l";
type = "gem";
};
version = "3.0.3";
version = "3.1.0";
};
rack = {
source = {
@ -504,10 +504,10 @@
rubyzip = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "1n1lb2sdwh9h27y244hxzg1lrxxg2m53pk1vq7p33bna003qkyrj";
sha256 = "1w9gw28ly3zyqydnm8phxchf4ymyjl2r7zf7c12z8kla10cpmhlc";
type = "gem";
};
version = "1.2.2";
version = "1.2.3";
};
selenium-webdriver = {
dependencies = ["childprocess" "rubyzip" "websocket"];

View File

@ -0,0 +1,22 @@
{stdenv, fetchzip}:
let
version = "3.3";
in fetchzip {
name = "jost-${version}";
url = "https://github.com/indestructible-type/Jost/releases/download/${version}/Jost.zip";
postFetch = ''
mkdir -p $out/share/fonts
unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype
'';
sha256="00nrhs3aif2hc4yhjhbn9ywmydl2w0g0hv5m5is8gv7wx8yi2j9z";
meta = with stdenv.lib; {
homepage = https://github.com/indestructible-type/Jost;
description = "A sans serif font by Indestructible Type";
license = licenses.ofl;
maintainers = [ maintainers.ar1a ];
};
}

View File

@ -1,6 +1,6 @@
{ fetchurl }:
fetchurl {
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/85d71d5231521c70b961570dbbee953253fb379b.tar.gz";
sha256 = "1mdp2ivnx7wvd63bq1li9gpsm5sv1s167crv1jjlqw578lbi8hv7";
url = "https://github.com/commercialhaskell/all-cabal-hashes/archive/bee48f46f4c9e9c1195bf81efb61fa5fb0aec0dc.tar.gz";
sha256 = "0wxj0iakqy1cyncga8s1qlb8c06vj3ilh5z8lpann7xr8yh6sm4b";
}

View File

@ -27,7 +27,7 @@
, # Whetherto build terminfo.
enableTerminfo ? !stdenv.targetPlatform.isWindows
, version ? "8.7.20190115"
, version ? "8.9.20190601"
, # What flavour to build. An empty string indicates no
# specific flavour and falls back to ghc default values.
ghcFlavour ? stdenv.lib.optionalString (stdenv.targetPlatform != stdenv.hostPlatform)
@ -89,14 +89,24 @@ stdenv.mkDerivation (rec {
src = fetchgit {
url = "https://gitlab.haskell.org/ghc/ghc.git/";
rev = "c9756dbf1ee58b117ea5c4ded45dea88030efd65";
sha256 = "0ja3ivyz4jrqkw6z1mdgsczxaqkjy5vw0nyyqlqr0bqxiw9p8834";
rev = "9bc10993bb300d3712b0f13ec6e28621d75d4204";
sha256 = "1s7vbinywx8ffj09nxr0h32nggjiqpssrvgmj7820k32w2yi7i8v";
};
enableParallelBuilding = true;
outputs = [ "out" "doc" ];
patches = [
(fetchpatch rec { # https://github.com/haskell/haddock/issues/900
url = "https://patch-diff.githubusercontent.com/raw/haskell/haddock/pull/983.diff";
name = "loadpluginsinmodules.diff";
sha256 = "0bvvv0zsfq2581zsir97zfkggc1kkircbbajc2fz3b169ycpbha1";
extraPrefix = "utils/haddock/";
stripLen = 1;
})
];
postPatch = "patchShebangs .";
# GHC is a bit confused on its cross terminology.

View File

@ -1,8 +1,8 @@
import ./generic.nix {
major_version = "4";
minor_version = "08";
patch_version = "0+rc1";
sha256 = "014yincnkfg0j2jy0cn30l5hb1y4sf2qf1gy9ix9ghgn32iw5ndk";
patch_version = "0+rc2";
sha256 = "09wp2iig6v5pivkjcnibdvkg5mchcj3q4zms6ij67039xczm8qrg";
# If the executable is stripped it does not work
dontStrip = true;

View File

@ -0,0 +1,46 @@
{ stdenv, fetchurl, makeWrapper, jre, gnugrep, coreutils }:
stdenv.mkDerivation rec {
name = "scala-2.13.0";
src = fetchurl {
url = "https://www.scala-lang.org/files/archive/${name}.tgz";
sha256 = "12g0a9i0xxqxxcvmimm5w2wgmrdhq80p8bsp52d6yldz4lrnbm7p";
};
propagatedBuildInputs = [ jre ] ;
buildInputs = [ makeWrapper ] ;
installPhase = ''
mkdir -p $out
rm "bin/"*.bat
mv * $out
# put docs in correct subdirectory
mkdir -p $out/share/doc
mv $out/doc $out/share/doc/scala
for p in $(ls $out/bin/) ; do
wrapProgram $out/bin/$p \
--prefix PATH ":" ${coreutils}/bin \
--prefix PATH ":" ${gnugrep}/bin \
--prefix PATH ":" ${jre}/bin \
--set JAVA_HOME ${jre}
done
'';
meta = {
description = "General purpose programming language";
longDescription = ''
Scala is a general purpose programming language designed to express
common programming patterns in a concise, elegant, and type-safe way.
It smoothly integrates features of object-oriented and functional
languages, enabling Java and other programmers to be more productive.
Code sizes are typically reduced by a factor of two to three when
compared to an equivalent Java application.
'';
homepage = https://www.scala-lang.org/;
license = stdenv.lib.licenses.bsd3;
platforms = stdenv.lib.platforms.all;
};
}

View File

@ -14,23 +14,23 @@ let params =
sha256 = "0fri4nih40vfb0fbr82dsi631ydkw48xszinq43lyinpknf54y17";
};
"8.7" = {
version = "20171212";
rev = "195e550a1cf0810497734356437a1720ebb6d744";
sha256 = "0zm23y89z0h4iamy74qk9qi2pz2cj3ga6ygav0w79n0qyqwhxcq1";
};
"8.8" = rec {
preConfigure = "substituteInPlace Makefile --replace quickChickTool.byte quickChickTool.native";
version = "20190311";
rev = "22af9e9a223d0038f05638654422e637e863b355";
sha256 = "00rnr19lg6lg0haq1sy4ld38p7imzand6fc52fvfq27gblxkp2aq";
buildInputs = with coq.ocamlPackages; [ ocamlbuild num ];
propagatedBuildInputs = [ coq-ext-lib simple-io ];
};
"8.9" = rec {
version = "1.1.0";
rev = "v${version}";
sha256 = "1c34v1k37rk7v0xk2czv5n79mbjxjrm6nh3llg2mpfmdsqi68wf3";
};
};
param = params."${coq.coq-version}";
in
let recent = stdenv.lib.versionAtLeast coq.coq-version "8.8"; in
stdenv.mkDerivation rec {
name = "coq${coq.coq-version}-QuickChick-${param.version}";
@ -41,16 +41,19 @@ stdenv.mkDerivation rec {
inherit (param) rev sha256;
};
preConfigure = stdenv.lib.optionalString recent
"substituteInPlace Makefile --replace quickChickTool.byte quickChickTool.native";
buildInputs = [ coq ]
++ (with coq.ocamlPackages; [ ocaml camlp5 findlib ])
++ (param.buildInputs or [])
++ stdenv.lib.optionals recent
(with coq.ocamlPackages; [ ocamlbuild num ])
;
propagatedBuildInputs = [ ssreflect ] ++ (param.propagatedBuildInputs or []);
propagatedBuildInputs = [ ssreflect ]
++ stdenv.lib.optionals recent [ coq-ext-lib simple-io ];
enableParallelBuilding = false;
preConfigure = param.preConfigure or null;
installPhase = ''
make -f Makefile.coq COQLIB=$out/lib/coq/${coq.coq-version}/ install
'';

View File

@ -1,13 +1,13 @@
{ stdenv, fetchFromGitHub, coq, coq-ext-lib }:
stdenv.mkDerivation rec {
version = "1.0.0";
version = "1.2.0";
name = "coq${coq.coq-version}-simple-io-${version}";
src = fetchFromGitHub {
owner = "Lysxia";
repo = "coq-simple-io";
rev = version;
sha256 = "06gnbl8chv6ig18rlxnp8gg0np6863kxd7j15h46q0v1cnpx84lp";
sha256 = "1im1vwp7l7ha8swnhgbih0qjg187n8yx14i003nf6yy7p0ryxc9m";
};
buildInputs = [ coq ] ++ (with coq.ocamlPackages; [ ocaml ocamlbuild ]);

View File

@ -357,6 +357,7 @@ self: super: {
pwstore-cli = dontCheck super.pwstore-cli;
quantities = dontCheck super.quantities;
redis-io = dontCheck super.redis-io;
reflex = dontCheck super.reflex; # test suite uses hlint, which has different haskell-src-exts version
rethinkdb = dontCheck super.rethinkdb;
Rlang-QQ = dontCheck super.Rlang-QQ;
safecopy = dontCheck super.safecopy;
@ -860,7 +861,7 @@ self: super: {
# Wrap the generated binaries to include their run-time dependencies in
# $PATH. Also, cryptol needs a version of sbl that's newer than what we have
# in LTS-13.x.
cryptol = overrideCabal (super.cryptol.override { sbv = self.sbv_8_2; }) (drv: {
cryptol = overrideCabal (super.cryptol.override { sbv = self.sbv_8_3; }) (drv: {
buildTools = drv.buildTools or [] ++ [ pkgs.makeWrapper ];
postInstall = drv.postInstall or "" + ''
for b in $out/bin/cryptol $out/bin/cryptol-html; do
@ -1099,7 +1100,14 @@ self: super: {
# Generate shell completion.
cabal2nix = generateOptparseApplicativeCompletion "cabal2nix" super.cabal2nix;
stack = generateOptparseApplicativeCompletion "stack" super.stack;
stack = generateOptparseApplicativeCompletion "stack" (super.stack.overrideScope (self: super: {
ansi-terminal = self.ansi-terminal_0_9_1;
concurrent-output = self.concurrent-output_1_10_10; # needed for new ansi-terminal version
rio = self.rio_0_1_9_2;
hi-file-parser = dontCheck super.hi-file-parser; # Avoid depending on newer hspec versions.
http-download = dontCheck super.http-download;
pantry-tmp = dontCheck super.pantry-tmp;
}));
# musl fixes
# dontCheck: use of non-standard strptime "%s" which musl doesn't support; only used in test
@ -1174,7 +1182,7 @@ self: super: {
# https://github.com/mgajda/json-autotype/issues/25
json-autotype = dontCheck super.json-autotype;
# The LTS-13.x version doesn't suffice to build hlint, hoogle, etc.
# The LTS-13.x versions doesn't suffice to build these packages.
hlint = super.hlint.overrideScope (self: super: { haskell-src-exts = self.haskell-src-exts_1_21_0; });
hoogle = super.hoogle.overrideScope (self: super: { haskell-src-exts = self.haskell-src-exts_1_21_0; });
@ -1217,8 +1225,11 @@ self: super: {
# Use latest pandoc despite what LTS says.
# Test suite fails in both 2.5 and 2.6: https://github.com/jgm/pandoc/issues/5309.
pandoc = doDistribute super.pandoc_2_7_2;
cmark-gfm = self.cmark-gfm_0_2_0;
pandoc = dontCheck (doDistribute super.pandoc_2_7_3); # test suite failure: https://github.com/jgm/pandoc/issues/5582
pandoc-citeproc = doDistribute super.pandoc-citeproc_0_16_2;
skylighting = self.skylighting_0_8_1_1;
skylighting-core = self.skylighting-core_0_8_1_1;
# Current versions of tasty-hedgehog need hedgehog 1.x, which
# we don't have in LTS-13.x.
@ -1270,4 +1281,13 @@ self: super: {
# https://github.com/pruvisto/heap/issues/11
heap = dontCheck super.heap;
# https://github.com/hslua/tasty-lua/issues/1
tasty-lua = dontCheck super.tasty-lua;
# Test suite won't link for no apparent reason.
constraints-deriving = dontCheck super.constraints-deriving;
# The old LTS-13.x version does not compile.
ip = self.ip_1_5_0;
} // import ./configuration-tensorflow.nix {inherit pkgs haskellLib;} self super

View File

@ -43,8 +43,7 @@ core-packages:
- ghcjs-base-0
default-package-overrides:
- ghc-lib-parser ==0.20190523 # newer versions break hlint
# LTS Haskell 13.24
# LTS Haskell 13.25
- abstract-deque ==0.3
- abstract-deque-tests ==0.3
- abstract-par ==0.3.3
@ -212,7 +211,7 @@ default-package-overrides:
- asn1-types ==0.3.2
- assert-failure ==0.1.2.2
- astro ==0.4.2.1
- async ==2.2.1
- async ==2.2.2
- async-extra ==0.2.0.0
- async-refresh ==0.3.0.0
- async-refresh-tokens ==0.4.0.0
@ -237,7 +236,7 @@ default-package-overrides:
- avers ==0.0.17.1
- avers-api ==0.1.0
- avers-server ==0.1.0.1
- avro ==0.4.4.2
- avro ==0.4.4.3
- avwx ==0.3.0.2
- axel ==0.0.9
- backprop ==0.2.6.2
@ -446,7 +445,7 @@ default-package-overrides:
- concurrent-supply ==0.1.8
- cond ==0.4.1.1
- conduit ==1.3.1.1
- conduit-algorithms ==0.0.9.0
- conduit-algorithms ==0.0.10.1
- conduit-combinators ==1.3.0
- conduit-concurrent-map ==0.1.1
- conduit-connection ==0.1.0.4
@ -464,7 +463,7 @@ default-package-overrides:
- console-style ==0.0.2.1
- constraint ==0.1.3.0
- constraints ==0.10.1
- contravariant ==1.5.1
- contravariant ==1.5.2
- contravariant-extras ==0.3.4
- control-bool ==0.2.1
- control-dsl ==0.2.1.3
@ -526,7 +525,7 @@ default-package-overrides:
- cusparse ==0.2.0.0
- cutter ==0.0
- cyclotomic ==1.0
- czipwith ==1.0.1.1
- czipwith ==1.0.1.2
- data-accessor ==0.2.2.8
- data-accessor-mtl ==0.2.0.4
- data-accessor-template ==0.2.1.16
@ -584,7 +583,7 @@ default-package-overrides:
- dhall ==1.19.1
- dhall-bash ==1.0.18
- dhall-json ==1.2.6
- dhall-text ==1.0.17
- dhall-text ==1.0.18
- diagrams ==1.4
- diagrams-contrib ==1.4.3
- diagrams-core ==1.4.1.1
@ -624,7 +623,7 @@ default-package-overrides:
- double-conversion ==2.0.2.0
- download ==0.3.2.7
- drinkery ==0.4
- dsp ==0.2.4.1
- dsp ==0.2.5
- dual-tree ==0.2.2
- dublincore-xml-conduit ==0.1.0.2
- dunai ==0.5.1
@ -672,7 +671,7 @@ default-package-overrides:
- errors ==2.3.0
- errors-ext ==0.4.2
- error-util ==0.0.1.2
- ersatz ==0.4.6
- ersatz ==0.4.7
- esqueleto ==2.6.0
- etc ==0.4.1.0
- eventful-core ==0.2.0
@ -828,19 +827,19 @@ default-package-overrides:
- ghc-typelits-knownnat ==0.6
- ghc-typelits-natnormalise ==0.6.2
- ghost-buster ==0.1.1.0
- gi-atk ==2.0.15
- gi-atk ==2.0.18
- gi-cairo ==1.0.17
- gi-gdk ==3.0.16
- gi-gdkpixbuf ==2.0.18
- gi-gdkpixbuf ==2.0.20
- gi-gio ==2.0.19
- gi-glib ==2.0.17
- gi-gobject ==2.0.16
- gi-gobject ==2.0.19
- gi-gtk ==3.0.27
- gi-gtk-hs ==0.3.6.3
- gi-gtksource ==3.0.16
- gi-javascriptcore ==4.0.16
- gingersnap ==0.3.1.0
- gi-pango ==1.0.16
- gi-pango ==1.0.19
- giphy-api ==0.6.0.1
- githash ==0.1.3.1
- github-release ==1.2.4
@ -894,7 +893,7 @@ default-package-overrides:
- hamtsolo ==1.0.3
- HandsomeSoup ==0.4.2
- hapistrano ==0.3.9.2
- happy ==1.19.10
- happy ==1.19.11
- hasbolt ==0.1.3.3
- hashable ==1.2.7.0
- hashable-time ==0.2.0.2
@ -1045,7 +1044,7 @@ default-package-overrides:
- http-common ==0.8.2.0
- http-conduit ==2.3.7.1
- http-date ==0.0.8
- http-directory ==0.1.2
- http-directory ==0.1.4
- httpd-shed ==0.4.0.3
- http-link-header ==1.0.3.1
- http-media ==0.7.1.3
@ -1073,8 +1072,8 @@ default-package-overrides:
- hw-json ==0.9.0.1
- hw-mquery ==0.1.0.3
- hw-packed-vector ==0.0.0.1
- hw-parser ==0.1.0.0
- hw-prim ==0.6.2.24
- hw-parser ==0.1.0.1
- hw-prim ==0.6.2.25
- hw-rankselect ==0.12.0.4
- hw-rankselect-base ==0.3.2.1
- hw-streams ==0.0.0.10
@ -1117,7 +1116,7 @@ default-package-overrides:
- inline-c-cpp ==0.3.0.2
- inliterate ==0.1.0
- insert-ordered-containers ==0.2.2
- inspection-testing ==0.4.1.2
- inspection-testing ==0.4.2.1
- instance-control ==0.1.2.0
- integer-logarithms ==1.0.3
- integration ==0.2.1
@ -1145,8 +1144,8 @@ default-package-overrides:
- IPv6Addr ==1.1.2
- ipython-kernel ==0.9.1.0
- irc ==0.6.1.0
- irc-client ==1.1.0.6
- irc-conduit ==0.3.0.2
- irc-client ==1.1.0.7
- irc-conduit ==0.3.0.3
- irc-ctcp ==0.1.3.0
- islink ==0.1.0.0
- iso3166-country-codes ==0.20140203.8
@ -1211,6 +1210,7 @@ default-package-overrides:
- leancheck ==0.8.0
- leancheck-instances ==0.0.3
- leapseconds-announced ==2017.1.0.1
- learn-physics ==0.6.4
- lens ==4.17.1
- lens-action ==0.2.3
- lens-aeson ==1.0.2
@ -1281,7 +1281,7 @@ default-package-overrides:
- markdown ==0.1.17.4
- markdown-unlit ==0.5.0
- markov-chain ==0.0.3.4
- massiv ==0.2.8.0
- massiv ==0.2.8.1
- massiv-io ==0.1.6.0
- mathexpr ==0.3.0.0
- math-functions ==0.3.1.0
@ -1424,7 +1424,7 @@ default-package-overrides:
- network-ip ==0.3.0.2
- network-messagepack-rpc ==0.1.1.0
- network-multicast ==0.2.0
- network-simple ==0.4.3
- network-simple ==0.4.4
- network-simple-tls ==0.3.2
- network-transport ==0.5.4
- network-transport-composed ==0.2.1
@ -1442,6 +1442,7 @@ default-package-overrides:
- nonemptymap ==0.0.6.0
- non-empty-sequence ==0.2.0.2
- non-negative ==0.1.2
- not-gloss ==0.7.7.0
- nowdoc ==0.1.1.0
- nqe ==0.6.1
- nsis ==0.3.3
@ -1543,7 +1544,7 @@ default-package-overrides:
- pg-transact ==0.1.0.1
- phantom-state ==0.2.1.2
- pid1 ==0.1.2.0
- pipes ==4.3.9
- pipes ==4.3.10
- pipes-aeson ==0.4.1.8
- pipes-attoparsec ==0.5.1.5
- pipes-binary ==0.4.2
@ -1634,7 +1635,7 @@ default-package-overrides:
- protolude ==0.2.3
- proxied ==0.3.1
- psql-helpers ==0.1.0.0
- psqueues ==0.2.7.1
- psqueues ==0.2.7.2
- pureMD5 ==2.1.3
- purescript-bridge ==0.13.0.0
- pure-zlib ==0.6.4
@ -1662,7 +1663,7 @@ default-package-overrides:
- ramus ==0.1.2
- rando ==0.0.0.4
- random ==1.1
- random-bytestring ==0.1.3.1
- random-bytestring ==0.1.3.2
- random-fu ==0.2.7.0
- random-shuffle ==0.0.4
- random-source ==0.3.0.6
@ -1706,7 +1707,7 @@ default-package-overrides:
- regex-tdfa ==1.2.3.2
- regex-tdfa-text ==1.0.0.3
- regex-with-pcre ==1.0.2.0
- registry ==0.1.5.2
- registry ==0.1.6.0
- reinterpret-cast ==0.1.0
- relapse ==1.0.0.0
- relational-query ==0.12.2.1
@ -1731,6 +1732,7 @@ default-package-overrides:
- rev-state ==0.1.2
- rfc1751 ==0.1.2
- rfc5051 ==0.1.0.4
- rg ==1.4.0.0
- rio ==0.1.8.0
- rio-orphans ==0.1.1.0
- rng-utils ==0.3.0
@ -1809,7 +1811,7 @@ default-package-overrides:
- servant-foreign ==0.15
- servant-js ==0.9.4
- servant-JuicyPixels ==0.3.0.4
- servant-kotlin ==0.1.1.7
- servant-kotlin ==0.1.1.8
- servant-lucid ==0.8.1
- servant-mock ==0.8.5
- servant-pandoc ==0.5.0.0
@ -1885,6 +1887,7 @@ default-package-overrides:
- sox ==0.2.3.1
- soxlib ==0.0.3.1
- sparse-linear-algebra ==0.3.1
- spatial-math ==0.5.0.1
- special-values ==0.1.0.0
- speculate ==0.3.5
- speedy-slice ==0.3.0
@ -1928,7 +1931,7 @@ default-package-overrides:
- streaming ==0.2.2.0
- streaming-attoparsec ==1.0.0.1
- streaming-bytestring ==0.1.6
- streaming-commons ==0.2.1.0
- streaming-commons ==0.2.1.1
- streaming-wai ==0.1.1
- streamly ==0.5.2
- streamproc ==1.6.2
@ -2077,7 +2080,7 @@ default-package-overrides:
- tldr ==0.4.0.1
- tls ==1.4.1
- tls-debug ==0.4.5
- tls-session-manager ==0.0.0.2
- tls-session-manager ==0.0.1.0
- tmapchan ==0.0.3
- tmapmvar ==0.0.4
- tmp-postgres ==0.1.2.2
@ -2102,7 +2105,8 @@ default-package-overrides:
- tuple-sop ==0.3.1.0
- tuple-th ==0.2.5
- turtle ==1.5.14
- typed-process ==0.2.4.0
- TypeCompose ==0.9.14
- typed-process ==0.2.4.1
- type-fun ==0.1.1
- type-hint ==0.1
- type-level-integers ==0.0.1
@ -2145,7 +2149,7 @@ default-package-overrides:
- unix-bytestring ==0.3.7.3
- unix-compat ==0.5.1
- unix-time ==0.4.5
- unliftio ==0.2.10
- unliftio ==0.2.11
- unliftio-core ==0.1.2.0
- unlit ==0.4.0.0
- unordered-containers ==0.2.9.0
@ -2206,7 +2210,7 @@ default-package-overrides:
- wai-app-static ==3.1.6.3
- wai-cli ==0.1.1
- wai-conduit ==3.0.0.4
- wai-cors ==0.2.6
- wai-cors ==0.2.7
- wai-eventsource ==3.0.0
- wai-extra ==3.0.26
- wai-handler-launch ==3.0.2.4
@ -2729,6 +2733,7 @@ broken-packages:
- algebra
- algebra-sql
- algebraic
- algebraic-graphs
- algebraic-prelude
- algo-s
- AlgoRhythm
@ -3166,6 +3171,7 @@ broken-packages:
- blockhash
- Blogdown
- blogination
- BlogLiterately
- BlogLiterately-diagrams
- bloodhound
- bloodhound-amazonka-auth
@ -3652,6 +3658,8 @@ broken-packages:
- conduit-resumablesink
- conduit-throttle
- conduit-tokenize-attoparsec
- conduit-vfs
- conduit-vfs-zip
- conduit-zstd
- conf
- confcrypt
@ -3674,6 +3682,7 @@ broken-packages:
- consistent
- console-program
- const-math-ghc-plugin
- constrained-categories
- constrained-category
- constrained-dynamic
- constrained-monads
@ -3681,7 +3690,6 @@ broken-packages:
- constraint-manip
- constraint-reflection
- ConstraintKinds
- constraints-deriving
- constraints-emerge
- constraints-extras
- constructive-algebra
@ -4020,6 +4028,7 @@ broken-packages:
- dgs
- dhall-check
- dhall-nix
- dhall-to-cabal
- dhcp-lease-parser
- di
- di-df1
@ -4058,6 +4067,7 @@ broken-packages:
- digestive-functors-hsp
- DigitalOcean
- digitalocean-kzs
- digraph
- dimensional-tf
- DimensionalHash
- dingo-core
@ -4073,6 +4083,7 @@ broken-packages:
- direct-rocksdb
- directed-cubical
- dirfiles
- dirtree
- discogs-haskell
- discord-gateway
- discord-haskell
@ -4139,6 +4150,7 @@ broken-packages:
- doctest-discover-configurator
- doctest-driver-gen
- doctest-prop
- docusign-client
- docusign-example
- docvim
- doi
@ -4174,6 +4186,7 @@ broken-packages:
- DrIFT-cabalized
- drifter-postgresql
- drmaa
- drone
- dropbox-sdk
- dropsolve
- ds-kanren
@ -4277,6 +4290,7 @@ broken-packages:
- Emping
- Empty
- empty-monad
- enchant
- encoding
- encoding-io
- engine-io-growler
@ -4818,12 +4832,27 @@ broken-packages:
- ghclive
- ght
- gi-cairo-again
- gi-dbusmenu
- gi-dbusmenugtk3
- gi-gdkx11
- gi-ggit
- gi-girepository
- gi-gst
- gi-gstaudio
- gi-gstbase
- gi-gstpbutils
- gi-gsttag
- gi-gstvideo
- gi-gtkosxapplication
- gi-handy
- gi-notify
- gi-ostree
- gi-pangocairo
- gi-poppler
- gi-secret
- gi-soup
- gi-wnck
- gi-xlib
- giak
- Gifcurry
- ginger
@ -4852,6 +4881,7 @@ broken-packages:
- github-webhook-handler
- github-webhook-handler-snap
- gitignore
- gitit
- gitlab-api
- gitlib-cross
- gitlib-libgit2
@ -4872,6 +4902,7 @@ broken-packages:
- gli
- glicko
- glider-nlp
- glirc
- GLMatrix
- glob-posix
- global
@ -5013,6 +5044,7 @@ broken-packages:
- GTALib
- gtfs
- gtk-serialized-event
- gtk-sni-tray
- gtk-toy
- gtk2hs-hello
- gtk2hs-rpn
@ -5351,6 +5383,7 @@ broken-packages:
- hasql-backend
- hasql-class
- hasql-cursor-query
- hasql-cursor-transaction
- hasql-dynamic-statements
- hasql-generic
- hasql-implicits
@ -5382,6 +5415,7 @@ broken-packages:
- haxl-amazonka
- haxl-facebook
- haxparse
- haxr
- haxr-th
- haxy
- hayland
@ -5442,6 +5476,7 @@ broken-packages:
- heckle
- hedgehog-checkers
- hedgehog-checkers-lens
- hedgehog-classes
- hedgehog-fn
- hedgehog-gen-json
- hedgehog-quickcheck
@ -5593,6 +5628,7 @@ broken-packages:
- hjsonpointer
- hjsonschema
- HJVM
- hkgr
- hlatex
- hlbfgsb
- hlcm
@ -5730,6 +5766,7 @@ broken-packages:
- hpqtypes
- hpqtypes-extras
- hprotoc-fork
- hprox
- hps
- hps-cairo
- hps-kmeans
@ -5742,6 +5779,7 @@ broken-packages:
- hR
- hranker
- HRay
- hrfsize
- hricket
- Hricket
- hriemann
@ -5845,7 +5883,6 @@ broken-packages:
- hslinks
- hslogger-reader
- hslogstash
- hslua-module-system
- hsluv-haskell
- hsmagick
- HSmarty
@ -5957,6 +5994,7 @@ broken-packages:
- http-querystring
- http-response-decoder
- http-shed
- http-streams
- http-wget
- http2-client-grpc
- http2-grpc-types
@ -5966,6 +6004,7 @@ broken-packages:
- htune
- htvm
- htzaar
- hubigraph
- huck
- HueAPI
- huff
@ -5999,6 +6038,7 @@ broken-packages:
- hw-dump
- hw-eliasfano
- hw-excess
- hw-fingertree
- hw-ip
- hw-json
- hw-json-lens
@ -6188,7 +6228,6 @@ broken-packages:
- iostring
- iothread
- iotransaction
- ip
- ip2location
- ip2proxy
- ipatch
@ -6612,6 +6651,7 @@ broken-packages:
- limp-cbc
- linda
- linden
- line-drawing
- linear-accelerate
- linear-algebra-cblas
- linear-circuit
@ -6991,6 +7031,7 @@ broken-packages:
- mollie-api-haskell
- monad-atom
- monad-atom-simple
- monad-chronicle
- monad-codec
- monad-dijkstra
- monad-exception
@ -7070,6 +7111,9 @@ broken-packages:
- mosaico-lib
- moto
- moto-postgresql
- motor
- motor-diagrams
- motor-reflection
- mount
- movie-monad
- mp
@ -7315,6 +7359,7 @@ broken-packages:
- NoTrace
- np-linear
- nptools
- ntha
- ntrip-client
- NTRU
- null-canvas
@ -7708,6 +7753,7 @@ broken-packages:
- plugins
- plugins-auto
- plugins-multistage
- plur
- plural
- png-file
- pngload
@ -7732,6 +7778,9 @@ broken-packages:
- polydata
- polydata-core
- polynomial
- polysemy
- polysemy-plugin
- polysemy-zoo
- polyseq
- polysoup
- polytypeable
@ -8097,7 +8146,6 @@ broken-packages:
- refh
- refined
- reflection-extras
- reflex
- reflex-animation
- reflex-backend-wai
- reflex-basic-host
@ -8214,6 +8262,7 @@ broken-packages:
- reversi
- ReviewBoard
- rewrite
- rewrite-inspector
- rewriting
- rezoom
- rfc
@ -8430,6 +8479,7 @@ broken-packages:
- secret-sharing
- secrm
- sednaDBXML
- selda-json
- selectors
- SelectSequencesFromMSA
- selenium
@ -8439,6 +8489,8 @@ broken-packages:
- Semantique
- semdoc
- semi-iso
- semialign
- semialign-indexed
- semibounded-lattices
- Semigroup
- semigroupoids-syntax
@ -8502,6 +8554,7 @@ broken-packages:
- servant-pushbullet-client
- servant-py
- servant-quickcheck
- servant-reason
- servant-reflex
- servant-router
- servant-scotty
@ -8522,6 +8575,7 @@ broken-packages:
- serversession-frontend-snap
- serversession-frontend-yesod
- services
- ses-html
- ses-html-snaplet
- SessionLogger
- sessions
@ -8868,28 +8922,6 @@ broken-packages:
- stable-marriage
- stable-memo
- stable-tree
- stack-bump
- stack-hpc-coveralls
- stack-lib
- stack-network
- stack-prism
- stack-run
- stack-run-auto
- stack-type
- stack2cabal
- stackage
- stackage-build-plan
- stackage-cabal
- stackage-cli
- stackage-curator
- stackage-metadata
- stackage-query
- stackage-sandbox
- stackage-setup
- stackage-to-hackage
- stackage-types
- stackage-upload
- stackage2nix
- standalone-derive-topdown
- standalone-haddock
- starling
@ -8979,6 +9011,7 @@ broken-packages:
- stripe
- stripe-haskell
- stripe-http-client
- stripe-http-streams
- strongswan-sql
- structural-induction
- structural-traversal
@ -9123,7 +9156,6 @@ broken-packages:
- tasty-jenkins-xml
- tasty-laws
- tasty-lens
- tasty-lua
- tasty-quickcheck-laws
- tasty-stats
- tasty-tap
@ -9203,6 +9235,7 @@ broken-packages:
- text-containers
- text-generic-pretty
- text-icu-normalized
- text-icu-translit
- text-lens
- text-locale-encoding
- text-markup
@ -9210,6 +9243,7 @@ broken-packages:
- text-plus
- text-position
- text-register-machine
- text-show-instances
- text-time
- text-utf8
- text-xml-qq
@ -9240,6 +9274,7 @@ broken-packages:
- Theora
- theoremquest
- theoremquest-client
- these-lens
- these-skinny
- thih
- thimk
@ -9344,6 +9379,7 @@ broken-packages:
- trace-function-call
- traced
- tracetree
- tracing
- tracker
- trackit
- traction
@ -9374,6 +9410,16 @@ broken-packages:
- travis-meta-yaml
- trawl
- traypoweroff
- tree-sitter
- tree-sitter-go
- tree-sitter-haskell
- tree-sitter-java
- tree-sitter-json
- tree-sitter-php
- tree-sitter-python
- tree-sitter-ruby
- tree-sitter-tsx
- tree-sitter-typescript
- tree-traversals
- TreeCounter
- treemap-html
@ -9822,6 +9868,7 @@ broken-packages:
- word2vec-model
- WordAlignment
- wordchoice
- wordify
- WordNet
- WordNet-ghc74
- wordpass
@ -10080,6 +10127,7 @@ broken-packages:
- yuuko
- yx
- yxdb-utils
- z3
- z3-encoding
- z85
- zabt

File diff suppressed because it is too large Load Diff

View File

@ -1,11 +1,12 @@
{ stdenv, fetchurl }:
stdenv.mkDerivation rec {
name = "babl-0.1.62";
pname = "babl";
version = "0.1.66";
src = fetchurl {
url = "https://ftp.gtk.org/pub/babl/0.1/${name}.tar.bz2";
sha256 = "047msfzj8v4sfl61a2xhd69r9rh2pjq4lzpk3j10ijyv9qbry9yw";
url = "https://ftp.gtk.org/pub/babl/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.bz2";
sha256 = "0qx1dwbinxihwl2lmxi60qiqi402jlrdcnixx14kk6j88n9xi79n";
};
doCheck = true;

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation rec {
pname = "goffice";
version = "0.10.44";
version = "0.10.45";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "1fd7cm6j0g0mqgpqs4y22b4gd2ll4mcyvg4d0q22d5ndjapl4q3d";
sha256 = "702ba567e9ec0bbdd9b1a8161cd24648b4868d57a6cb89128f13c125f6f31947";
};
nativeBuildInputs = [ pkgconfig intltool ];

View File

@ -1,33 +1,49 @@
{stdenv, fetchurl, libGLU_combined, tcl, tk, file, libXmu, cmake, libtool, qt4,
ftgl, freetype}:
{ stdenv, fetchFromGitHub, fetchpatch, libGL, libGLU, libXmu, cmake, ninja,
pkgconfig, fontconfig, freetype, expat, freeimage, vtk }:
stdenv.mkDerivation rec {
name = "opencascade-oce-0.18.3";
src = fetchurl {
url = https://github.com/tpaviot/oce/archive/OCE-0.18.3.tar.gz;
sha256 = "0v4ny0qhr5hiialb2ss25bllfnd6j4g7mfxnqfmr1xsjpykxcly5";
pname = "opencascade-oce";
version = "0.18.3";
src = fetchFromGitHub {
owner = "tpaviot";
repo = "oce";
rev = "OCE-${version}";
sha256 = "17wy8dcf44vqisishv1jjf3cmcxyygqq29y9c3wjdj983qi2hsig";
};
buildInputs = [ libGLU_combined tcl tk file libXmu libtool qt4 ftgl freetype cmake ];
nativeBuildInputs = [ cmake ninja pkgconfig ];
buildInputs = [ libGL libGLU libXmu freetype fontconfig expat freeimage vtk ];
cmakeFlags = [
"-DOCE_INSTALL_PREFIX=${placeholder "out"}"
"-DOCE_WITH_FREEIMAGE=ON"
"-DOCE_WITH_VTK=ON"
];
patches = [
# Use fontconfig instead of hardcoded directory list
# https://github.com/tpaviot/oce/pull/714
(fetchpatch {
url = "https://github.com/tpaviot/oce/commit/9643432b27fec8974ca0ee15c3c372f5fe8fc069.patch";
sha256 = "1wd940rszmh5apcpk5fv6126h8mcjcy4rjifrql5d4ac90v06v4c";
})
# Fix for glibc 2.26
(fetchpatch {
url = "https://github.com/tpaviot/oce/commit/3b44656e93270d782009b06ec4be84d2a13f8126.patch";
sha256 = "1ccakkcwy5g0184m23x0mnh22i0lk45xm8kgiv5z3pl7nh35dh8k";
})
];
# Fix for glibc 2.26
postPatch = ''
sed -i -e 's/^\( *#include <\)x\(locale.h>\)//' \
src/Standard/Standard_CLocaleSentry.hxx
# make sure the installed cmake file uses absolute paths for fontconfig
substituteInPlace adm/cmake/TKService/CMakeLists.txt \
--replace FONTCONFIG_LIBRARIES FONTCONFIG_LINK_LIBRARIES
'';
preConfigure = ''
cmakeFlags="$cmakeFlags -DOCE_INSTALL_PREFIX=$out"
'';
# https://bugs.freedesktop.org/show_bug.cgi?id=83631
NIX_CFLAGS_COMPILE = "-DGLX_GLXEXT_LEGACY";
enableParallelBuilding = true;
meta = with stdenv.lib; {
description = "Open CASCADE Technology, libraries for 3D modeling and numerical simulation";
homepage = http://www.opencascade.org/;
homepage = "https://github.com/tpaviot/oce";
maintainers = [ maintainers.viric ];
platforms = platforms.linux;
license = licenses.lgpl21;

View File

@ -40,6 +40,14 @@ buildPythonPackage rec {
propagatedBuildInputs = [ attrs chardet multidict async-timeout yarl ]
++ lib.optionals (pythonOlder "3.7") [ idna-ssl typing-extensions ];
# Don't error on cryptography deprecation warning
postPatch = ''
substituteInPlace pytest.ini --replace "filterwarnings = error" ""
'';
# coroutine 'noop2' was never awaited
doCheck = false;
meta = with lib; {
description = "Asynchronous HTTP Client/Server for Python and asyncio";
license = licenses.asl20;

View File

@ -13,11 +13,11 @@
buildPythonPackage rec {
pname = "cli_helpers";
version = "1.2.0";
version = "1.2.1";
src = fetchPypi {
inherit pname version;
sha256 = "0p9yklddpplncr765h6qrii1dgvvlqxj25n5400dwqas9lmij4fj";
sha256 = "0rd194l06aw4612j09b44pgh8b8l4cwmz7xgwsgdj9v8m3m25nwq";
};
propagatedBuildInputs = [

View File

@ -4,15 +4,15 @@ with stdenv.lib;
buildPythonPackage rec {
pname = "Flask-Migrate";
version = "2.3.1";
version = "2.5.2";
src = fetchPypi {
inherit pname version;
sha256 = "1awlb4q1l9iv794qjjxxyhcv4i69j77kh7nsg17a6kb909mglml3";
sha256 = "00nm76w4xymsiih6hq8y46wp026v7zkzq15cx39hp929ba3z2vx9";
};
checkInputs = optional isPy3k glibcLocales;
propagatedBuildInputs = [ flask flask_sqlalchemy flask_script alembic ];
checkInputs = [ flask_script ] ++ optional isPy3k glibcLocales;
propagatedBuildInputs = [ flask flask_sqlalchemy alembic ];
# tests invoke the flask cli which uses click and therefore has py3k encoding troubles
preCheck = optionalString isPy3k ''

View File

@ -6,7 +6,7 @@ buildPythonPackage rec {
src = fetchPypi {
inherit pname version;
sha256 = "0zqh2yq8zk7m9b4xw1ryqmrljkdigfb3hk5155a3b5hkfnn6xxyf";
sha256 = "0r8w2v89nj6b9p91p495cga5m72a673l2wc0hp0zqk05j4yrc9b4";
};
propagatedBuildInputs = [ flask ];

View File

@ -258,7 +258,7 @@ let
Formula = [ pkgs.gmp ];
geoCount = [ pkgs.gsl_1 ];
gdtools = [ pkgs.cairo.dev pkgs.fontconfig.lib pkgs.freetype.dev ];
git2r = [ pkgs.zlib.dev pkgs.openssl.dev pkgs.libssh2.dev ];
git2r = [ pkgs.zlib.dev pkgs.openssl.dev pkgs.libssh2.dev pkgs.libgit2 pkgs.pkgconfig ];
GLAD = [ pkgs.gsl_1 ];
glpkAPI = [ pkgs.gmp pkgs.glpk ];
gmp = [ pkgs.gmp.dev ];

View File

@ -10,13 +10,13 @@
buildBazelPackage rec {
name = "bazel-watcher-${version}";
version = "0.9.1";
version = "0.10.3";
src = fetchFromGitHub {
owner = "bazelbuild";
repo = "bazel-watcher";
rev = "v${version}";
sha256 = "1gjbv67ydyb0mafpp59qr9n8f8vva2mwhgan6lxxl0i9yfx7qc6p";
sha256 = "17z4nqqsdrainbh8fmhf6sgrxwf7aknadmn94z1yqpxa7kb9x33v";
};
nativeBuildInputs = [ go git python ];
@ -49,7 +49,7 @@ buildBazelPackage rec {
sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker
'';
sha256 = "0p6yarz4wlb6h33n4slkczkdkaa93zc9jx55h8wl9vv81ahp0md5";
sha256 = "1ck1rsg5msd77abs889nl2n2i3jlah4d4vjz5wbsb3jyhzn8n5ny";
};
buildAttrs = {

View File

@ -1,4 +1,4 @@
{ stdenv, writeText, runCommandCC, bazel }:
{ stdenv, writeText, runCommandCC, bazel, runLocal, bazelTest }:
# Tests that certain executables are available in bazel-executed bash shells.
@ -22,21 +22,23 @@ let
)
'';
runLocal = name: script: runCommandCC name { preferLocalBuild = true; } script;
workspaceDir = runLocal "our_workspace" ''
workspaceDir = runLocal "our_workspace" {} ''
mkdir $out
cp ${WORKSPACE} $out/WORKSPACE
cp ${fileIn} $out/input.txt
cp ${fileBUILD} $out/BUILD
'';
testBazel = runLocal "bazel-test-bash-tools" ''
export HOME=$(mktemp -d)
cp -r ${workspaceDir} wd && chmod +w wd && cd wd
${bazel}/bin/bazel build :tool_usage
cp bazel-genfiles/output.txt $out
echo "Testing content" && [ "$(cat $out | wc -l)" == "2" ] && echo "OK"
'';
testBazel = bazelTest {
name = "bazel-test-bash-tools";
bazelPkg = bazel;
inherit workspaceDir;
bazelScript = ''
${bazel}/bin/bazel build :tool_usage
cp bazel-genfiles/output.txt $out
echo "Testing content" && [ "$(cat $out | wc -l)" == "2" ] && echo "OK"
'';
};
in testBazel

View File

@ -1,5 +1,7 @@
{ stdenv, callPackage, lib, fetchurl, fetchpatch, runCommand, makeWrapper
, zip, unzip, bash, writeCBin, coreutils
{ stdenv, callPackage, lib, fetchurl, fetchpatch, runCommand, runCommandCC, makeWrapper
# this package (through the fixpoint glass)
, bazel
, lr, xe, zip, unzip, bash, writeCBin, coreutils
, which, python, perl, gawk, gnused, gnutar, gnugrep, gzip, findutils
# Apple dependencies
, cctools, clang, libcxx, CoreFoundation, CoreServices, Foundation
@ -14,14 +16,42 @@
let
srcDeps = [
# From: $REPO_ROOT/WORKSPACE
(fetchurl {
url = "https://github.com/google/desugar_jdk_libs/archive/915f566d1dc23bc5a8975320cd2ff71be108eb9c.zip";
sha256 = "0b926df7yxyyyiwm9cmdijy6kplf0sghm23sf163zh8wrk87wfi7";
})
(fetchurl {
url = "https://mirror.bazel.build/bazel_java_tools/java_tools_pkg-0.5.1.tar.gz";
sha256 = "1ld8m5cj9j0r474f56pixcfi0xvx3w7pzwahxngs8f6ns0yimz5w";
url = "https://mirror.bazel.build/github.com/bazelbuild/skydoc/archive/2d9566b21fbe405acf5f7bf77eda30df72a4744c.tar.gz";
sha256 = "4a1318fed4831697b83ce879b3ab70ae09592b167e5bda8edaff45132d1c3b3f";
})
(fetchurl {
url = "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/archive/f83cb8dd6f5658bc574ccd873e25197055265d1c.tar.gz";
sha256 = "ba5d15ca230efca96320085d8e4d58da826d1f81b444ef8afccd8b23e0799b52";
})
(fetchurl {
url = "https://mirror.bazel.build/github.com/bazelbuild/rules_sass/archive/8ccf4f1c351928b55d5dddf3672e3667f6978d60.tar.gz";
sha256 = "d868ce50d592ef4aad7dec4dd32ae68d2151261913450fac8390b3fd474bb898";
})
(fetchurl {
url = "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v3.2/java_tools_javac10_linux-v3.2.zip";
sha256 = "b93e7c556b01815afb6c248aa73f06b7ec912805bde8898eedac1e20d08f2e67";
})
(fetchurl {
url = "https://mirror.bazel.build/bazel_java_tools/releases/javac10/v3.2/java_tools_javac10_darwin-v3.2.zip";
sha256 = "1437327179b4284f7082cee0bdc3328f040e62fc5cc59c32f6824b8c520e2b7b";
})
(fetchurl {
url = "https://mirror.bazel.build/bazel_coverage_output_generator/releases/coverage_output_generator-v1.0.zip";
sha256 = "cc470e529fafb6165b5be3929ff2d99b38429b386ac100878687416603a67889";
})
(fetchurl {
url = "https://github.com/bazelbuild/rules_nodejs/archive/0.16.2.zip";
sha256 = "9b72bb0aea72d7cbcfc82a01b1e25bf3d85f791e790ddec16c65e2d906382ee0";
})
(fetchurl {
url = "https://mirror.bazel.build/bazel_android_tools/android_tools_pkg-0.2.tar.gz";
sha256 = "04f85f2dd049e87805511e3babc5cea3f5e72332b1627e34f3a5461cc38e815f";
})
];
@ -63,17 +93,19 @@ let
# Java toolchain used for the build and tests
javaToolchain = "@bazel_tools//tools/jdk:toolchain_host${buildJdkName}";
platforms = lib.platforms.linux ++ lib.platforms.darwin;
in
stdenv.mkDerivation rec {
version = "0.24.0";
version = "0.26.1";
meta = with lib; {
homepage = "https://github.com/bazelbuild/bazel/";
description = "Build tool that builds code quickly and reliably";
license = licenses.asl20;
maintainers = [ maintainers.mboes ];
platforms = platforms.linux ++ platforms.darwin;
inherit platforms;
};
# Additional tests that check bazels functionality. Execute
@ -81,16 +113,74 @@ stdenv.mkDerivation rec {
# nix-build . -A bazel.tests
#
# in the nixpkgs checkout root to exercise them locally.
passthru.tests = {
pythonBinPath = callPackage ./python-bin-path-test.nix {};
bashTools = callPackage ./bash-tools-test.nix {};
};
passthru.tests =
let
runLocal = name: attrs: script: runCommandCC name ({
preferLocalBuild = true;
meta.platforms = platforms;
} // attrs) script;
# bazel wants to extract itself into $install_dir/install every time it runs,
# so lets do that only once.
extracted = bazelPkg:
let install_dir =
# `install_base` field printed by `bazel info`, minus the hash.
# yes, this path is kinda magic. Sorry.
"$HOME/.cache/bazel/_bazel_nixbld";
in runLocal "bazel-extracted-homedir" { passthru.install_dir = install_dir; } ''
export HOME=$(mktemp -d)
touch WORKSPACE # yeah, everything sucks
install_base="$(${bazelPkg}/bin/bazel info | grep install_base)"
# assert its actually below install_dir
[[ "$install_base" =~ ${install_dir} ]] \
|| (echo "oh no! $install_base but we are \
trying to copy ${install_dir} to $out instead!"; exit 1)
cp -R ${install_dir} $out
'';
bazelTest = { name, bazelScript, workspaceDir, bazelPkg }:
let
be = extracted bazelPkg;
in runLocal name {} (
# skip extraction caching on Darwin, because nobody knows how Darwin works
(lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
# set up home with pre-unpacked bazel
export HOME=$(mktemp -d)
mkdir -p ${be.install_dir}
cp -R ${be}/install ${be.install_dir}
# https://stackoverflow.com/questions/47775668/bazel-how-to-skip-corrupt-installation-on-centos6
# Bazel checks whether the mtime of the install dir files
# is >9 years in the future, otherwise it extracts itself again.
# see PosixFileMTime::IsUntampered in src/main/cpp/util
# What the hell bazel.
${lr}/bin/lr -0 -U ${be.install_dir} | ${xe}/bin/xe -N0 -0 touch --date="9 years 6 months" {}
'')
+
''
# Note https://github.com/bazelbuild/bazel/issues/5763#issuecomment-456374609
# about why to create a subdir for the workspace.
cp -r ${workspaceDir} wd && chmod u+w wd && cd wd
${bazelScript}
touch $out
'');
bazelWithNixHacks = bazel.override { enableNixHacks = true; };
in {
pythonBinPathWithoutNixHacks = callPackage ./python-bin-path-test.nix{ inherit runLocal bazelTest; };
bashToolsWithoutNixHacks = callPackage ./bash-tools-test.nix { inherit runLocal bazelTest; };
pythonBinPathWithNixHacks = callPackage ./python-bin-path-test.nix{ inherit runLocal bazelTest; bazel = bazelWithNixHacks; };
bashToolsWithNixHacks = callPackage ./bash-tools-test.nix { inherit runLocal bazelTest; bazel = bazelWithNixHacks; };
};
name = "bazel-${version}";
src = fetchurl {
url = "https://github.com/bazelbuild/bazel/releases/download/${version}/${name}-dist.zip";
sha256 = "11gsc00ghxqkbci8nrflkwq1lcvqawlgkaryj458b24si6bjl7b2";
sha256 = "000ny51hwnjyizm1md4w8q7m832jhf3c767pgbvg6nc7h67lzsf0";
};
# Necessary for the tests to pass on Darwin with sandbox enabled.
@ -148,10 +238,6 @@ stdenv.mkDerivation rec {
# https://github.com/NixOS/nixpkgs/pull/41589
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${libcxx}/include/c++/v1"
# 10.10 apple_sdk Foundation doesn't have type arguments on classes
# Remove this when we update apple_sdk
sed -i -e 's/<.*\*>//g' tools/osx/xcode_locator.m
# don't use system installed Xcode to run clang, use Nix clang instead
sed -i -e "s;/usr/bin/xcrun clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $NIX_LDFLAGS -framework CoreFoundation;g" \
scripts/bootstrap/compile.sh \
@ -159,6 +245,9 @@ stdenv.mkDerivation rec {
src/tools/xcode/stdredirect/BUILD \
tools/osx/BUILD
# nixpkgs's libSystem cannot use pthread headers directly, must import GCD headers instead
sed -i -e "/#include <pthread\/spawn.h>/i #include <dispatch/dispatch.h>" src/main/cpp/blaze_util_darwin.cc
# clang installed from Xcode has a compatibility wrapper that forwards
# invocations of gcc to clang, but vanilla clang doesn't
sed -i -e 's;_find_generic(repository_ctx, "gcc", "CC", overriden_tools);_find_generic(repository_ctx, "clang", "CC", overriden_tools);g' tools/cpp/unix_cc_configure.bzl
@ -193,7 +282,7 @@ stdenv.mkDerivation rec {
# Fixup scripts that generate scripts. Not fixed up by patchShebangs below.
substituteInPlace scripts/bootstrap/compile.sh \
--replace /bin/sh ${customBash}/bin/bash
--replace /bin/bash ${customBash}/bin/bash
# add nix environment vars to .bazelrc
cat >> .bazelrc <<EOF
@ -297,7 +386,9 @@ stdenv.mkDerivation rec {
cp ./bazel_src/scripts/zsh_completion/_bazel $out/share/zsh/site-functions/
'';
doInstallCheck = true;
# Temporarily disabling for now. A new approach is needed for this derivation as Bazel
# accesses the internet during the tests which fails in a sandbox.
doInstallCheck = false;
installCheckPhase = ''
export TEST_TMPDIR=$(pwd)

View File

@ -1,33 +1,35 @@
diff -Naur a/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryDelegatorFunction.java b/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryDelegatorFunction.java
--- a/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryDelegatorFunction.java 1980-01-01 00:00:00.000000000 -0500
+++ b/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryDelegatorFunction.java 2018-01-18 08:17:22.420459162 -0500
@@ -287,21 +287,8 @@
markerData.put(key, value);
}
}
- boolean result = false;
- if (markerRuleKey.equals(ruleKey)) {
- result = handler.verifyMarkerData(rule, markerData, env);
- if (env.valuesMissing()) {
--- a/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryDelegatorFunction.java 2019-06-12 20:39:37.420705161 -0700
+++ b/src/main/java/com/google/devtools/build/lib/rules/repository/RepositoryDelegatorFunction.java 2019-06-12 20:44:18.894429744 -0700
@@ -428,24 +428,7 @@
try {
content = FileSystemUtils.readContent(markerPath, StandardCharsets.UTF_8);
String markerRuleKey = readMarkerFile(content, markerData);
- boolean verified = false;
- if (Preconditions.checkNotNull(ruleKey).equals(markerRuleKey)
- && Objects.equals(
- markerData.get(MANAGED_DIRECTORIES_MARKER),
- this.markerData.get(MANAGED_DIRECTORIES_MARKER))) {
- verified = handler.verifyMarkerData(rule, markerData, env);
- if (env.valuesMissing()) {
- return null;
- }
- }
-
- if (verified) {
return new Fingerprint().addString(content).digestAndReset();
- } else {
- // So that we are in a consistent state if something happens while fetching the repository
- markerPath.delete();
- return null;
- }
- }
- if (result) {
- return new Fingerprint().addString(content).digestAndReset();
- } else {
- // So that we are in a consistent state if something happens while fetching the repository
- markerPath.delete();
- return null;
- }
+ return new Fingerprint().addString(content).digestAndReset();
} catch (IOException e) {
throw new RepositoryFunctionException(e, Transience.TRANSIENT);
} catch (IOException e) {
throw new RepositoryFunctionException(e, Transience.TRANSIENT);
}
diff -Naur a/src/main/java/com/google/devtools/build/lib/shell/JavaSubprocessFactory.java b/src/main/java/com/google/devtools/build/lib/shell/JavaSubprocessFactory.java
--- a/src/main/java/com/google/devtools/build/lib/shell/JavaSubprocessFactory.java 1980-01-01 00:00:00.000000000 -0500
+++ b/src/main/java/com/google/devtools/build/lib/shell/JavaSubprocessFactory.java 2018-01-18 08:17:53.274877980 -0500
@@ -129,7 +129,6 @@
--- a/src/main/java/com/google/devtools/build/lib/shell/JavaSubprocessFactory.java 2019-06-12 20:39:37.538708196 -0700
+++ b/src/main/java/com/google/devtools/build/lib/shell/JavaSubprocessFactory.java 2019-06-12 20:44:18.863429602 -0700
@@ -146,7 +146,6 @@
ProcessBuilder builder = new ProcessBuilder();
builder.command(params.getArgv());
if (params.getEnv() != null) {

View File

@ -1,4 +1,4 @@
{ stdenv, lib, writeText, runCommandCC, bazel }:
{ stdenv, lib, writeText, bazel, bazelTest, runLocal }:
let
WORKSPACE = writeText "WORKSPACE" ''
@ -22,16 +22,14 @@ let
srcs = [ "lib.py" ],
)
py_test(
py_binary(
name = "bin",
srcs = [ "bin.py" ],
deps = [ ":lib" ],
)
'';
runLocal = name: script: runCommandCC name { preferLocalBuild = true; } script;
workspaceDir = runLocal "our_workspace" ''
workspaceDir = runLocal "our_workspace" {} ''
mkdir $out
cp ${WORKSPACE} $out/WORKSPACE
mkdir $out/python
@ -40,18 +38,16 @@ let
cp ${pythonBUILD} $out/python/BUILD.bazel
'';
testBazel = runLocal "bazel-test-builtin-rules" ''
export HOME=$(mktemp -d)
# Note https://github.com/bazelbuild/bazel/issues/5763#issuecomment-456374609
# about why to create a subdir for the workspace.
cp -r ${workspaceDir} wd && chmod u+w wd && cd wd
${bazel}/bin/bazel \
test \
--test_output=errors \
--host_javabase='@local_jdk//:jdk' \
//...
touch $out
'';
testBazel = bazelTest {
name = "bazel-test-builtin-rules";
inherit workspaceDir;
bazelPkg = bazel;
bazelScript = ''
${bazel}/bin/bazel \
run \
--host_javabase='@local_jdk//:jdk' \
//python:bin
'';
};
in testBazel

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "jenkins-${version}";
version = "2.164.3";
version = "2.176.1";
src = fetchurl {
url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
sha256 = "03m5ykl6kqih9li2fhyq9rf8x8djaj2rgjd2p897zzw5j0grkbx8";
sha256 = "130f9x4fvnf9a9ykf48axj9fgqaj2ssr9jhsflpi1gg78ch6xg4b";
};
buildCommand = ''

View File

@ -1,12 +1,12 @@
{ stdenv, binutils , fetchurl, glibc, ncurses5 }:
stdenv.mkDerivation rec {
version = "0.0.28";
name = "kythe-${version}";
version = "0.0.30";
pname = "kythe";
src = fetchurl {
url = "https://github.com/google/kythe/releases/download/v0.0.28/kythe-v0.0.28.tar.gz";
sha256 = "1qc7cngpxw66m3krpr5x50ns7gb3bpv2bdfzpb5afl12qp0mi6zm";
url = "https://github.com/kythe/kythe/releases/download/v${version}/${pname}-v${version}.tar.gz";
sha256 = "12bwhqkxfbkh3mm4wfvqflwhmbzpmlhlfykdpy6h7p9ih9ky8w6r";
};
buildInputs =
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
write_entries write_tables entrystream; do
echo "Patching:" $exe
patchelf --interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $exe
patchelf --set-rpath "${stdenv.cc.cc.lib}/lib64:${ncurses5}/lib" $exe
patchelf --set-rpath "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc ncurses5 ]}" $exe
done
cd ../
cp -R ./ $out

View File

@ -2,20 +2,20 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-xbuild";
version = "0.5.11";
version = "0.5.12";
src = fetchFromGitHub {
owner = "rust-osdev";
repo = pname;
rev = "v${version}";
sha256 = "04vgb443bmrfklvzhjfidpi3pp2svbc3bwq674m9fn7sbdp6rnwm";
sha256 = "1vjsss2zrja4kpr83vw6g0hf9xdx658wjhdiymzndbcf32qrx7x1";
};
cargoSha256 = "1r9i79lymfwpbcx2lp509v435qpkl9bqly1ya369p41n5yprrcjv";
meta = with stdenv.lib; {
description = "Automatically cross-compiles the sysroot crates core, compiler_builtins, and alloc";
homepage = https://github.com/rust-osdev/cargo-xbuild;
homepage = "https://github.com/rust-osdev/cargo-xbuild";
license = with licenses; [ mit asl20 ];
maintainers = with maintainers; [ xrelkd ];
platforms = platforms.all;

View File

@ -7,7 +7,7 @@ libusb,
sane-backends,
rpm, cpio,
getopt,
patchelf, gcc
patchelf, autoPatchelfHook, gcc
}:
let common_meta = {
@ -161,6 +161,34 @@ let plugins = {
meta = common_meta // { description = "iscan esci s80 plugin for "+passthru.hw; };
};
network = stdenv.mkDerivation rec {
pname = "iscan-nt-bundle";
version = "1.0.0";
ntPluginVersion = "1.1.1-1";
buildInputs = [ stdenv.cc.cc.lib ];
nativeBuildInputs = [ autoPatchelfHook ];
src = fetchurl {
url = "https://download2.ebz.epson.net/iscan/general/rpm/x64/iscan-bundle-${version}.x64.rpm.tar.gz";
sha256 = "1k3dmv4ml21k6mafvcvgfymb1acpcdxpvyrbfh2yf07jzmn5if4f";
};
installPhase = ''
cd plugins
${rpm}/bin/rpm2cpio iscan-network-nt-${ntPluginVersion}.x86_64.rpm | ${cpio}/bin/cpio -idmv
mkdir $out
cp -r usr/share $out
cp -r usr/lib64 $out/lib
mkdir $out/share/esci
'';
passthru = {
registrationCommand = "";
hw = "network";
};
meta = common_meta // { description = "iscan network plugin"; };
};
};
in
@ -226,6 +254,8 @@ stdenv.mkDerivation rec {
cp backend/epkowa.conf $out/etc/sane.d
echo "epkowa" > $out/etc/sane.d/dll.conf
ln -s ${iscan-data}/share/iscan-data $out/share/iscan-data
mkdir -p $out/lib/iscan
ln -s ${plugins.network}/lib/iscan/network $out/lib/iscan/network
'';
postFixup = ''
# iscan-registry is a shell script requiring getopt

View File

@ -61,12 +61,12 @@ let
ale = buildVimPluginFrom2Nix {
pname = "ale";
version = "2019-06-10";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "w0rp";
repo = "ale";
rev = "80ab12c7b645b392feb98723873d77b045a0a7e2";
sha256 = "147p1i5a7bk8z2xsk8xbwwx0yic3fbz4dvsrwcfjik7ydnsy8xra";
rev = "6e28eec243c4df3cf3b67bac9f87fdd30c846cbd";
sha256 = "15r479nwbxv29ryiiqn3yc7srg5yx1mj6whblxpnmjxjiwsy4yym";
};
};
@ -182,12 +182,12 @@ let
caw-vim = buildVimPluginFrom2Nix {
pname = "caw-vim";
version = "2018-12-25";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "tyru";
repo = "caw.vim";
rev = "98805a60aef339e55e5b917fdb9f69c74e8d8340";
sha256 = "0nn3dg3lnbnfwgvxpjbalw9ff876798jrzlkrnzqkvrwxv6k7ks5";
rev = "05c6b113dd82d2ad4d424b696b14a2b89a337541";
sha256 = "1s56f8pqn5hldmi54qybjldi3lwyyznwf4jk2qnvp77civk8mjn9";
};
};
@ -237,12 +237,12 @@ let
coc-nvim = buildVimPluginFrom2Nix {
pname = "coc-nvim";
version = "2019-06-11";
version = "2019-06-14";
src = fetchFromGitHub {
owner = "neoclide";
repo = "coc.nvim";
rev = "c78a2807a74a6a7b005c4035a728c8be42a007fe";
sha256 = "14bkrnrgm6q3yryvavpi2sbfyv0ynsj6l31d6ygwc5b14ljyjd79";
rev = "3cf91b06a76a790c3f81f65b60f5ee289ae96d18";
sha256 = "1vng6k7xjp22vzcfx7r0jc9xpg4ak2gi9vqnd519kcg4ssr8nwfs";
};
};
@ -414,23 +414,23 @@ let
denite-nvim = buildVimPluginFrom2Nix {
pname = "denite-nvim";
version = "2019-06-10";
version = "2019-06-14";
src = fetchFromGitHub {
owner = "Shougo";
repo = "denite.nvim";
rev = "fc42dbb602193b7bd7fd1a473bc09b10512d2f90";
sha256 = "0waq9729g5y4gihg63y76w5ddzwj2xixc1m8d4jjl6blkxajkxcm";
rev = "a4b32946e6f4c2d78500310245c8e567ff37528b";
sha256 = "0gk99iw83jvhwh0srh1y0k0rqpvi3z6f7jhajhbx8wlf9dcsxl22";
};
};
deol-nvim = buildVimPluginFrom2Nix {
pname = "deol-nvim";
version = "2019-04-21";
version = "2019-06-12";
src = fetchFromGitHub {
owner = "Shougo";
repo = "deol.nvim";
rev = "98e1d68336a757dd736a10f1dc7564458d52f5b7";
sha256 = "09fgyh8yipgcd525jgjj3ci6xsg7zqq7rwlfx593mw5afsnwa7gi";
rev = "6ef9abb552873a53857ef9b4381a5a1eca95cd35";
sha256 = "0n07xg5v2pyxhzk9rn37yc3i47c5qvni0vlsrpj6015q4g48v2z1";
};
};
@ -549,12 +549,12 @@ let
echodoc-vim = buildVimPluginFrom2Nix {
pname = "echodoc-vim";
version = "2019-06-01";
version = "2019-06-12";
src = fetchFromGitHub {
owner = "Shougo";
repo = "echodoc.vim";
rev = "a356d856702c275360ba5cfb91fc98542c2f075f";
sha256 = "1iml5v8cinanr6wq7rg3g6grg71vsyc6shvzc0q3s411fldmcmra";
rev = "c12d2e683fb749f9c0d4a099d894baa3d9d5f330";
sha256 = "1w8awylby9qasy0z6x4l5k9gw5sqqmsmpcvckj9ax1sp34psdzhx";
};
};
@ -650,12 +650,12 @@ let
ferret = buildVimPluginFrom2Nix {
pname = "ferret";
version = "2019-06-10";
version = "2019-06-12";
src = fetchFromGitHub {
owner = "wincent";
repo = "ferret";
rev = "f72610d8b890962fb3f6ad80b902d4790e90f507";
sha256 = "15xyz25n8priam3s2wcvws05ry7w71v2m2j5bp0w1d5zmrw969p4";
rev = "f6d7d01de8a92baee83218001c0bdbade8458a72";
sha256 = "1zsh7yc2mv1hv6gj7bhzbx4qqmasc32sxsdlh4sz95nxsfnk28dr";
};
};
@ -750,12 +750,12 @@ let
goyo-vim = buildVimPluginFrom2Nix {
pname = "goyo-vim";
version = "2019-04-29";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "junegunn";
repo = "goyo.vim";
rev = "012290431a834752d2fce3dfc197dba3d7d1d0f8";
sha256 = "0vqd75c2a5yjmiakv26cgd9wkqwzfbi93qm1vw9g2j5s96dcwa6a";
rev = "6b6ed2734084fdbb6315357ddcaecf9c8e6f143d";
sha256 = "1ywlz1hn54kxyp5q0angriaarimq7ys7m6sk6l4x8jr1g2yh0afz";
};
};
@ -816,12 +816,12 @@ let
iceberg-vim = buildVimPluginFrom2Nix {
pname = "iceberg-vim";
version = "2019-06-05";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "cocopon";
repo = "iceberg.vim";
rev = "ccd0c64a8e731233c12e5d8884495b121f8b1808";
sha256 = "1ifmw5sdh2y270gycdsa79wn6ldb5fdkq2ysipndyk2xc28bhv6w";
rev = "e8316001e1130a042f8b4c8f49d78ed87b624f53";
sha256 = "0p228laa5na7izink982ahksqhzwlxj8knb2wh5440z7chixmycc";
};
};
@ -971,12 +971,12 @@ let
lightline-vim = buildVimPluginFrom2Nix {
pname = "lightline-vim";
version = "2019-06-03";
version = "2019-06-12";
src = fetchFromGitHub {
owner = "itchyny";
repo = "lightline.vim";
rev = "3b7c7b83d2ef5f559158c84c5afb0f51656ccade";
sha256 = "01q4rwjbk65nhacna0ai48adhqy7iq3ix23j9g70yz2awj9vq56i";
rev = "80c242c3c5394fd5143b5d7e2741989ba04ae46a";
sha256 = "0k42wzwwhiqj6i1s2zdkmdnay85kwl4aw129nwcrrc4ahqhhh9fy";
};
};
@ -1169,12 +1169,12 @@ let
neoformat = buildVimPluginFrom2Nix {
pname = "neoformat";
version = "2019-05-17";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "sbdchd";
repo = "neoformat";
rev = "9fea982b33627eefbfdf2836458b224bd1c724e4";
sha256 = "1j9q2h41dpkn9g0j88s0daq0iy7c27xxz0cm5lw5ngpd2y6hnl40";
rev = "b60a530de93a1131a320fa10a289c9ffee771a1e";
sha256 = "0f6drp06f0r6c5d777i5dh3kks1j73945ip8ng51v4803m7m2g3g";
};
};
@ -1290,12 +1290,12 @@ let
nerdtree = buildVimPluginFrom2Nix {
pname = "nerdtree";
version = "2019-06-08";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "scrooloose";
repo = "nerdtree";
rev = "28eb47e2678cf629d92b4f1f00dd56cba22fc4ae";
sha256 = "18yj47zyiapgrxsg1hk497z6875bwqrl6jg395n91kf5cz9c269i";
rev = "12dea6ccb2381a2b6b8ae0bf17b4078699bbfec3";
sha256 = "0r3w1anbg57mifavb7lg4gdyji03hc9jmjs006prs2w8zfc9zqds";
};
};
@ -1675,12 +1675,12 @@ let
SpaceCamp = buildVimPluginFrom2Nix {
pname = "SpaceCamp";
version = "2019-06-05";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "jaredgorski";
repo = "SpaceCamp";
rev = "de431dc161f8f839a47c6f1cb277e7318ddba6f5";
sha256 = "032i1isc558rz2hmh3dfxnwgbqn7wdlhzz1c05v6bd7yyv0k5g23";
rev = "e2503139a55f4c2631cca64feb596b44d5b88f73";
sha256 = "0zaa2dcgynwbhybyq3i3i9pxdz4hk2q3g0s48vm27sywr2kdzw63";
};
};
@ -1884,12 +1884,12 @@ let
traces-vim = buildVimPluginFrom2Nix {
pname = "traces-vim";
version = "2019-06-10";
version = "2019-06-11";
src = fetchFromGitHub {
owner = "markonm";
repo = "traces.vim";
rev = "e6f44ecfd4ccea9269aba69ea5547ade43eb03c5";
sha256 = "1yw66phpxd3hgnxj0bh5f6ypmbkiz4hn2jcg289cr0smd10a9vxk";
rev = "ce382caed5aed6a8b8b26a4ad7a750bfd9529869";
sha256 = "18sxnf9k3bpyk6fsy3qhiy56k5w5d9izb1wazz9gyfwwbygq455c";
};
};
@ -1994,12 +1994,12 @@ let
vim = buildVimPluginFrom2Nix {
pname = "vim";
version = "2019-06-02";
version = "2019-06-11";
src = fetchFromGitHub {
owner = "dracula";
repo = "vim";
rev = "a4f6b0abe6cad85330867a54893864e0d5c59359";
sha256 = "0krgb3whdgir6rd82syrx7pvr9mlzabrzn3h3a9cvcc0la73irql";
rev = "42a51ef8d9656b7d126ce8ad554045da16fe37da";
sha256 = "03cxaxm2yvxa80lj78aqycj09crikpwdr8151w1l5rhlwwbg18n9";
};
};
@ -2225,12 +2225,12 @@ let
vim-airline = buildVimPluginFrom2Nix {
pname = "vim-airline";
version = "2019-06-11";
version = "2019-06-14";
src = fetchFromGitHub {
owner = "vim-airline";
repo = "vim-airline";
rev = "28453d703825ba4c93869ba1ee1d38a6f281d7d3";
sha256 = "0fqy2nlbn4jnsvl4zdp3rwzhb98sai5xq02jva2jskzakylvzinp";
rev = "2db9b27e39bfd84cb432e001b4a3f41f633b3b7e";
sha256 = "07spj2jagg3vy8h5p2qyywk9lxb7hg8vq0n8cy88qfphi6hf27b7";
};
};
@ -2368,12 +2368,12 @@ let
vim-codefmt = buildVimPluginFrom2Nix {
pname = "vim-codefmt";
version = "2019-04-17";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "google";
repo = "vim-codefmt";
rev = "fc45c30907106801f0bf443a9fa20300fc6ce100";
sha256 = "0rnlcvv6jw0q9hhy0f5l52hv8kajymii8c1qlc04bpwm8ibkxjkn";
rev = "3be5d149e38b2e3582d6c1122632de7b802cd6f1";
sha256 = "0m1nz8q7v6ljff7qgyzxc5qwadj6zmms26jzdxajq36a0l19n2yb";
};
};
@ -2456,12 +2456,12 @@ let
vim-css-color = buildVimPluginFrom2Nix {
pname = "vim-css-color";
version = "2019-05-14";
version = "2019-06-12";
src = fetchFromGitHub {
owner = "ap";
repo = "vim-css-color";
rev = "8a84356d5319cad3da2835bd5fbc6318500f31ce";
sha256 = "1yad8jrcna82ll893wf53ms2hqmcaa63g43yafxvlgmxw5yrh3im";
rev = "5a31c72cc51cb11118e44fb50ff77fc596348f77";
sha256 = "17a2i40z5145px4p4swvm003h4mdxd2hp89pyvrqal910d2g3hgb";
};
};
@ -2522,12 +2522,12 @@ let
vim-dispatch = buildVimPluginFrom2Nix {
pname = "vim-dispatch";
version = "2019-06-09";
version = "2019-06-12";
src = fetchFromGitHub {
owner = "tpope";
repo = "vim-dispatch";
rev = "597b338f3579ca6929c47465397974d366f4eccc";
sha256 = "0amwsncrcxv49d7yaprngsyzl5dai8ff4r1i7mlq3x1s8s5inqqg";
rev = "2c5b28387ab50f6e6c6034a5b362b24be63734a3";
sha256 = "0angxakjzf3sanjdyykr9igsl3z2xrcfkicpylhnk1rvjjsxlcd9";
};
};
@ -2764,12 +2764,12 @@ let
vim-go = buildVimPluginFrom2Nix {
pname = "vim-go";
version = "2019-06-10";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "fatih";
repo = "vim-go";
rev = "5e1689db322e7bf104f43d7dd15e5a6bc6b0020c";
sha256 = "1lb580qj2q44ndxpigqqg84y70r7ix54w2zid2dav8bswcpdmzi3";
rev = "b6a0bde7d4c64a063ea1b6365e3dd24e2d4f4df1";
sha256 = "1lnwp4qqbzl6cwy75hhkafnppv2pgbaw2lf5fpbprwyd5aa5qh1q";
};
};
@ -3337,12 +3337,12 @@ let
vim-pandoc = buildVimPluginFrom2Nix {
pname = "vim-pandoc";
version = "2019-05-21";
version = "2019-06-12";
src = fetchFromGitHub {
owner = "vim-pandoc";
repo = "vim-pandoc";
rev = "11e86deecb715fe1b9ca04d9b313f9432013b2b1";
sha256 = "171xkz7wvrb7c6c12sgf3v2clmbdand23wvi5rm6g8lf1x11kvsq";
rev = "f8fa0274c2727d81afaedd970059e4132fba96fd";
sha256 = "1y84cllyb7mkq0x6a07dffa3zlgw3pbawgsgpcgkhz3nwazivxaf";
};
};
@ -3942,12 +3942,12 @@ let
vim-visual-multi = buildVimPluginFrom2Nix {
pname = "vim-visual-multi";
version = "2019-06-11";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "mg979";
repo = "vim-visual-multi";
rev = "1533dd2a7e4b26652e0d6790f147e2dcc61a8a85";
sha256 = "01qmp7gshh9k2fmb0xfx8kahn4bhdblr4sqqdvncbd4w26l7wipd";
rev = "c62107b163bc4f0bf718f32a019f19a548c8d332";
sha256 = "0455mdill779lqnjvy63pz8v7c8fz9clikylhy4xmcjw136j8325";
};
};
@ -4285,12 +4285,12 @@ let
zig-vim = buildVimPluginFrom2Nix {
pname = "zig-vim";
version = "2019-06-10";
version = "2019-06-13";
src = fetchFromGitHub {
owner = "zig-lang";
repo = "zig.vim";
rev = "920e808f3ff5de3ab33d99a83edb2485acee79be";
sha256 = "1aygwcsxn0ca9qbyzfr23dyn1wy2sa2im7ffdvybgamfqm092r9d";
rev = "636fc7a21f63a884d6065afbc773b23013cea1cf";
sha256 = "1v30wdpslj74llqdpcwqhxz5sfqqiry9qwh3fmxmdfrg17qbr4g9";
};
};

View File

@ -28,7 +28,9 @@ in stdenv.mkDerivation rec {
url = "https://github.com/libfuse/libfuse/commit/914871b20a901e3e1e981c92bc42b1c93b7ab81b.patch";
sha256 = "1w4j6f1awjrycycpvmlv0x5v9gprllh4dnbjxl4dyl2jgbkaw6pa";
})
++ stdenv.lib.optional isFuse3 ./fuse3-install.patch;
++ (if isFuse3
then [ ./fuse3-install.patch ./fuse3-Do-not-set-FUSERMOUNT_DIR.patch ]
else [ ./fuse2-Do-not-set-FUSERMOUNT_DIR.patch ]);
nativeBuildInputs = if isFuse3
then [ meson ninja pkgconfig ]

View File

@ -11,7 +11,7 @@ in {
};
fuse_3 = mkFuse {
version = "3.5.0";
sha256Hash = "01gs25pk58nm5il91lgwiivphk38009ihfk5l956zyzmgr9wa9a5";
version = "3.6.1";
sha256Hash = "1118r2nx64cpv9s5a6dgh49y0pnjcc5ybpkh5pigxf14bpqa26pb";
};
}

View File

@ -0,0 +1,11 @@
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -1,7 +1,7 @@
## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = subdir-objects
-AM_CPPFLAGS = -I$(top_srcdir)/include -DFUSERMOUNT_DIR=\"$(bindir)\" \
+AM_CPPFLAGS = -I$(top_srcdir)/include \
-D_FILE_OFFSET_BITS=64 -D_REENTRANT -DFUSE_USE_VERSION=26
lib_LTLIBRARIES = libfuse.la libulockmgr.la

View File

@ -0,0 +1,12 @@
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -36,8 +36,7 @@ libfuse = library('fuse3', libfuse_sources, version: meson.project_version(),
soversion: '3', include_directories: include_dirs,
dependencies: deps, install: true,
link_depends: 'fuse_versionscript',
- c_args: [ '-DFUSE_USE_VERSION=34',
- '-DFUSERMOUNT_DIR="@0@"'.format(fusermount_path) ],
+ c_args: [ '-DFUSE_USE_VERSION=34' ],
link_args: ['-Wl,--version-script,' + meson.current_source_dir()
+ '/fuse_versionscript' ])

View File

@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
version = "4.14.124";
version = "4.14.125";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "1fdwbj26pcnl23n6yw55j5yif6fkka7kvkdh31c8wczc3rw5h3bx";
sha256 = "065k5bg3qz0chzlfaxz63vpkipqrj26hnbbfyidkha2s44hbqg9y";
};
} // (args.argsOverride or {}))

View File

@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
version = "4.19.49";
version = "4.19.50";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "1kdv72w9x72z126dycdqm4i5hvmy0njaywb2a6jvq39wjyrj1ncj";
sha256 = "07p0gkjf3xj9djsmzxvbb25cmsi5f95v3sfnd3p21gcaj4ip9659";
};
} // (args.argsOverride or {}))

View File

@ -1,11 +1,11 @@
{ stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
buildLinux (args // rec {
version = "4.4.180";
version = "4.4.181";
extraMeta.branch = "4.4";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "0ykai953rpy9zkb4qxb63y6pwwbwlnvx69nhb797zfw1scbh4i8s";
sha256 = "1lw1qsql9dv8dllz6hglahxdfgzg34rpl9c9gwdrpm4j660nkaxj";
};
} // (args.argsOverride or {}))

View File

@ -1,11 +1,11 @@
{ stdenv, buildPackages, fetchurl, perl, buildLinux, ... } @ args:
buildLinux (args // rec {
version = "4.9.180";
version = "4.9.181";
extraMeta.branch = "4.9";
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "0pvw71yiwwf19qxqkm68dw4c9sl54n367q9kfdc6msd3c86ljnnj";
sha256 = "1vgwfjsn31fy0ikcnpaqbw8w0r0xb25xp3633f0258yb24z25kcg";
};
} // (args.argsOverride or {}))

View File

@ -3,7 +3,7 @@
with stdenv.lib;
buildLinux (args // rec {
version = "5.1.8";
version = "5.1.9";
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
modDirVersion = if (modDirVersionArg == null) then concatStrings (intersperse "." (take 3 (splitString "." "${version}.0"))) else modDirVersionArg;
@ -13,6 +13,6 @@ buildLinux (args // rec {
src = fetchurl {
url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz";
sha256 = "1v56hzzb147mdnhajkgcjwjrmd7qyayky7bprjb3maz2qvy4y5nh";
sha256 = "0y9a2bvls756f8hrpffhmbrg7hw5r6b2jc2rnpszzlixkjlyrjaq";
};
} // (args.argsOverride or {}))

View File

@ -130,6 +130,9 @@ let
# Remove tests because they add a runtime dependency on gcc
rm -rf $out/share/zfs/zfs-tests
# Add Bash completions.
install -v -m444 -D -t $out/share/bash-completion/completions contrib/bash_completion.d/zfs
'';
outputs = [ "out" ] ++ optionals buildUser [ "lib" "dev" ];

View File

@ -39,9 +39,9 @@ let
sha256 = "1gm7xiqkbg415mbj9mlazcndmky81xvg4wmz0h94yv1whp7fslr0";
};
"2.2" = {
kafkaVersion = "2.2.0";
kafkaVersion = "2.2.1";
scalaVersion = "2.12";
sha256 = "09q028kagpkzrvfdb040z8q9mspv8n7f2igrd1cs73v7mr7n42d0";
sha256 = "1svdnhdzq9a6jsig513i0ahaysfgar5i385bq9fz7laga6a4z3qv";
};
};
in

View File

@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
name = "atlassian-crowd-${version}";
version = "3.4.4";
version = "3.4.5";
src = fetchurl {
url = "https://www.atlassian.com/software/crowd/downloads/binary/${name}.tar.gz";
sha256 = "0bs3l2s5f8ymyvvxn6z3wwccbvac42giahmfqiam51m9zkfhf0rk";
sha256 = "1k72aar68iqiaf0l75i6pp81dpsllqkp69f70hja754hrzvhz8j3";
};
phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];

View File

@ -5,11 +5,11 @@
stdenv.mkDerivation rec {
name = "atlassian-jira-${version}";
version = "8.1.0";
version = "8.2.1";
src = fetchurl {
url = "https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-${version}.tar.gz";
sha256 = "0mi1xknly44haf7gls3k212fx1dsl8k35rq82a1b3zj27kynwqr3";
sha256 = "1556hliywjiz6977249mlgxaq5xzpzq3xm9bcg9vk57s1hsv175i";
};
phases = [ "unpackPhase" "buildPhase" "installPhase" "fixupPhase" ];

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
url = "mirror://apache/cassandra/${version}/apache-${name}-bin.tar.gz";
};
nativeBuildInputs = [ makeWrapper ];
nativeBuildInputs = [ makeWrapper coreutils ];
installPhase = ''
mkdir $out
@ -51,8 +51,17 @@ stdenv.mkDerivation rec {
bin/sstablescrub \
bin/sstableupgrade \
bin/sstableutil \
bin/sstableverify \
tools/bin/cassandra-stress \
bin/sstableverify; do
# Check if file exists because some don't exist across all versions
if [ -f $out/$cmd ]; then
wrapProgram $out/bin/$(basename "$cmd") \
--suffix-each LD_LIBRARY_PATH : ${libPath} \
--prefix PATH : ${binPath} \
--set JAVA_HOME ${jre}
fi
done
for cmd in tools/bin/cassandra-stress \
tools/bin/cassandra-stressd \
tools/bin/sstabledump \
tools/bin/sstableexpiredblockers \
@ -62,11 +71,9 @@ stdenv.mkDerivation rec {
tools/bin/sstablerepairedset \
tools/bin/sstablesplit \
tools/bin/token-generator; do
# check if file exists because some bin tools don't exist across all
# cassandra versions
# Check if file exists because some don't exist across all versions
if [ -f $out/$cmd ]; then
makeWrapper $out/$cmd $out/bin/$(${coreutils}/bin/basename "$cmd") \
makeWrapper $out/$cmd $out/bin/$(basename "$cmd") \
--suffix-each LD_LIBRARY_PATH : ${libPath} \
--prefix PATH : ${binPath} \
--set JAVA_HOME ${jre}

View File

@ -0,0 +1,32 @@
{ stdenv, fetchurl, postgresql }:
stdenv.mkDerivation rec {
pname = "pg_bigm";
version = "1.2";
src = fetchurl {
url = "mirror://osdn/pgbigm/66565/${pname}-${version}-20161011.tar.gz";
sha256 = "1jp30za4bhwlas0yrhyjs9m03b1sj63km61xnvcbnh0sizyvhwis";
};
buildInputs = [ postgresql ];
makeFlags = [ "USE_PGXS=1" ];
installPhase = ''
mkdir -p $out/bin # For buildEnv to setup proper symlinks. See #22653
mkdir -p $out/{lib,share/extension}
cp *.so $out/lib
cp *.sql $out/share/extension
cp *.control $out/share/extension
'';
meta = with stdenv.lib; {
description = "Text similarity measurement and index searching based on bigrams";
homepage = "https://pgbigm.osdn.jp/";
maintainers = [ maintainers.marsam ];
platforms = postgresql.meta.platforms;
license = licenses.postgresql;
};
}

View File

@ -9,6 +9,8 @@ self: super: {
pg_auto_failover = super.callPackage ./ext/pg_auto_failover.nix { };
pg_bigm = super.callPackage ./ext/pg_bigm.nix { };
pg_repack = super.callPackage ./ext/pg_repack.nix { };
pg_similarity = super.callPackage ./ext/pg_similarity.nix { };

View File

@ -4,13 +4,13 @@
{ stdenv, fetchgit }:
stdenv.mkDerivation rec {
version = "2019-06-08";
version = "2019-06-12";
name = "oh-my-zsh-${version}";
rev = "d69bad8eb4157e5fd5c1a4ce98f93cf522477a8c";
rev = "078f64dcf9c56f45d1d5e9e49dd5709baedc1386";
src = fetchgit { inherit rev;
url = "https://github.com/robbyrussell/oh-my-zsh";
sha256 = "0j6x1kzki3k5p75lr50l48c7wdgi59h8l9lvixvkzp5bknsmsmrd";
sha256 = "1ld9fzb3d1ypc4b5r2k9xi05jqrbdb1drl0jq50m5qffc8ydxnvx";
};
pathsToLink = [ "/share/oh-my-zsh" ];

View File

@ -1,8 +1,8 @@
{ stdenv, buildGoPackage, fetchFromGitHub }:
{ stdenv, buildGoModule, fetchFromGitHub }:
buildGoPackage rec {
buildGoModule rec {
name = "iamy-${version}";
version = "2.1.1";
version = "2.3.2";
goPackagePath = "github.com/99designs/iamy";
@ -10,9 +10,15 @@ buildGoPackage rec {
owner = "99designs";
repo = "iamy";
rev = "v${version}";
sha256 = "0b55hxcvgil8rl6zh2kyndfi7s5nzclawjb0sby14wpys3v08bjf";
sha256 = "1fypc6yjnhlpk7zhb2lvah2ikh2zji9sll55rqjbr3i4j02h484z";
};
modSha256 = "0akak573zvz3xg5d7vf0ch2mrmj1jkzcdc29v3kn43f7944c2wcl";
buildFlagsArray = [''-ldflags=
-X main.Version=v${version} -s -w
''];
meta = with stdenv.lib; {
description = "A cli tool for importing and exporting AWS IAM configuration to YAML files";
homepage = https://github.com/99designs/iamy;

View File

@ -0,0 +1,28 @@
{ lib, rustPlatform, fetchFromGitHub }:
rustPlatform.buildRustPackage rec {
pname = "svgbob";
version = "unstable-2018-10-05";
src = fetchFromGitHub {
owner = "ivanceras";
repo = pname;
rev = "43fb0364e989d0e9a7656b148c947d47cc769622";
sha256 = "1imjj57dx1af3wrs214yzaa2qfk8ld00nj3nx4z450gw2xjjj1gw";
};
sourceRoot = "source/svgbob_cli";
cargoSha256 = "0mnq1s809f394x83gjv9zljr07c94k48zkrwxs6ibi19shgmrnnd";
# Test tries to build outdated examples
doCheck = false;
meta = with lib; {
description = "Convert your ascii diagram scribbles into happy little SVG";
homepage = "https://github.com/ivanceras/svgbob";
license = licenses.asl20;
maintainers = [ maintainers.marsam ];
platforms = platforms.all;
};
}

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "broot";
version = "0.7.5";
version = "0.8.0";
src = fetchFromGitHub {
owner = "Canop";
repo = pname;
rev = "v${version}";
sha256 = "1pwbz4ac2zb40g6q6ykzhzfbn0jr5xarkvgw9wxv455mbi67rd6y";
sha256 = "0xgjpdy12b77hgf0vfgs2ayxaajjv8vs0v8fn4rnrgn3hz8ldhyc";
};
cargoSha256 = "0yph5mwxn6arfbxbvri5qa7wzwj1q0s675j6vblia9akn02fyqd9";
cargoSha256 = "1hsrp9xbi6bj3461y58hmzfwakx4vakpzkjvi6174gy8xq7cdvg1";
meta = with stdenv.lib; {
description = "An interactive tree view, a fuzzy search, a balanced BFS descent and customizable commands";

View File

@ -11,7 +11,7 @@ let
common =
{ lib, stdenv, fetchurl, fetchpatch, perl, curl, bzip2, sqlite, openssl ? null, xz
, pkgconfig, boehmgc, perlPackages, libsodium, brotli, boost, editline
, autoreconfHook, autoconf-archive, bison, flex, libxml2, libxslt, docbook5, docbook_xsl_ns
, autoreconfHook, autoconf-archive, bison, flex, libxml2, libxslt, docbook5, docbook_xsl_ns, jq
, busybox-sandbox-shell
, storeDir
, stateDir
@ -37,7 +37,7 @@ common =
nativeBuildInputs =
[ pkgconfig ]
++ lib.optionals (!is20) [ curl perl ]
++ lib.optionals fromGit [ autoreconfHook autoconf-archive bison flex libxml2 libxslt docbook5 docbook_xsl_ns ];
++ lib.optionals fromGit [ autoreconfHook autoconf-archive bison flex libxml2 libxslt docbook5 docbook_xsl_ns jq ];
buildInputs = [ curl openssl sqlite xz bzip2 ]
++ lib.optional (stdenv.isLinux || stdenv.isDarwin) libsodium
@ -193,4 +193,18 @@ in rec {
inherit storeDir stateDir confDir boehmgc;
});
nixFlakes = lib.lowPrio (callPackage common rec {
name = "nix-2.3${suffix}";
suffix = "pre20190612_06010ea";
src = fetchFromGitHub {
owner = "NixOS";
repo = "nix";
rev = "06010eaf199005a393f212023ec5e8bc97978537";
sha256 = "1fq99fmlag5hxvgzxrclgfsnc1fhhfwnslyshad1934wi9nzx1s2";
};
fromGit = true;
inherit storeDir stateDir confDir boehmgc;
});
}

View File

@ -3,7 +3,7 @@
stdenv.mkDerivation rec {
name = "xe-${version}";
version = "0.11";
src = fetchFromGitHub {
owner = "chneukirchen";
repo = "xe";
@ -12,12 +12,12 @@ stdenv.mkDerivation rec {
};
makeFlags = "PREFIX=$(out)";
meta = with lib; {
description = "Simple xargs and apply replacement";
homepage = https://github.com/chneukirchen/xe;
license = licenses.publicDomain;
platforms = platforms.linux;
platforms = platforms.all;
maintainers = with maintainers; [ cstrahan ndowens ];
};
}

View File

@ -6021,6 +6021,8 @@ in
super-user-spark = haskellPackages.callPackage ../applications/misc/super_user_spark { };
svgbob = callPackage ../tools/graphics/svgbob { };
svgcleaner = callPackage ../tools/graphics/svgcleaner { };
ssdeep = callPackage ../tools/security/ssdeep { };
@ -8040,8 +8042,9 @@ in
scala_2_10 = callPackage ../development/compilers/scala/2.10.nix { };
scala_2_11 = callPackage ../development/compilers/scala/2.11.nix { };
scala_2_12 = callPackage ../development/compilers/scala { jre = jre8; };
scala = scala_2_12;
scala_2_12 = callPackage ../development/compilers/scala/2.12.nix { jre = jre8; };
scala_2_13 = callPackage ../development/compilers/scala/2.13.nix { jre = jre8; };
scala = scala_2_13;
scalafix = callPackage ../development/tools/scalafix { };
scalafmt = callPackage ../development/tools/scalafmt { };
@ -8843,7 +8846,9 @@ in
bazel-remote = callPackage ../development/tools/build-managers/bazel/bazel-remote { };
bazel-watcher = callPackage ../development/tools/bazel-watcher { };
bazel-watcher = callPackage ../development/tools/bazel-watcher {
buildBazelPackage = buildBazelPackage.override { enableNixHacks = false; };
};
bazelisk = callPackage ../development/tools/bazelisk { };
@ -9999,6 +10004,8 @@ in
capnproto = callPackage ../development/libraries/capnproto { };
captive-browser = callPackage ../applications/networking/browsers/captive-browser { };
ndn-cxx = callPackage ../development/libraries/ndn-cxx { };
cddlib = callPackage ../development/libraries/cddlib {};
@ -16330,6 +16337,8 @@ in
iwona = callPackage ../data/fonts/iwona { };
jost = callPackage ../data/fonts/jost { };
junicode = callPackage ../data/fonts/junicode { };
kanji-stroke-order-font = callPackage ../data/fonts/kanji-stroke-order-font {};
@ -17284,6 +17293,7 @@ in
deadbeefPlugins = {
headerbar-gtk3 = callPackage ../applications/audio/deadbeef/plugins/headerbar-gtk3.nix { };
infobar = callPackage ../applications/audio/deadbeef/plugins/infobar.nix { };
lyricbar = callPackage ../applications/audio/deadbeef/plugins/lyricbar.nix { };
mpris2 = callPackage ../applications/audio/deadbeef/plugins/mpris2.nix { };
};
@ -20141,6 +20151,8 @@ in
};
cura = qt5.callPackage ../applications/misc/cura { };
curaPlugins = callPackage ../applications/misc/cura/plugins.nix { };
curaLulzbot = callPackage ../applications/misc/cura/lulzbot.nix { };
curaByDagoma = callPackage ../applications/misc/curabydagoma { };
@ -22289,6 +22301,8 @@ in
bftools = callPackage ../applications/science/biology/bftools { };
cd-hit = callPackage ../applications/science/biology/cd-hit { };
cmtk = callPackage ../applications/science/biology/cmtk { };
clustal-omega = callPackage ../applications/science/biology/clustal-omega { };
@ -23371,7 +23385,8 @@ in
nix
nix1
nixStable
nixUnstable;
nixUnstable
nixFlakes;
nixops = callPackage ../tools/package-management/nixops { };

View File

@ -8059,11 +8059,11 @@ let
ImageExifTool = buildPerlPackage rec {
name = "Image-ExifTool-${version}";
version = "11.48";
version = "11.50";
src = fetchurl {
url = "https://www.sno.phy.queensu.ca/~phil/exiftool/${name}.tar.gz";
sha256 = "0whbwrrmwvj311fxksf47i47cyfgzd2d5cnh6ixg74rb1n6k9986";
sha256 = "0d8v48y94z8maxkmw1rv7v9m0jg2dc8xbp581njb6yhr7abwqdv3";
};
meta = with stdenv.lib; {
@ -8072,11 +8072,11 @@ let
longDescription = ''
ExifTool is a platform-independent Perl library plus a command-line
application for reading, writing and editing meta information in
image, audio and video files. ExifTool supports many different types
of metadata including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC
Profile, Photoshop IRB, FlashPix, AFCP and ID3, as well as the maker
notes of many digital cameras by Canon, Casio, DJI, FLIR, FujiFilm, HP,
application for reading, writing and editing meta information in a wide
variety of files. ExifTool supports many different metadata formats
including EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile, Photoshop
IRB, FlashPix, AFCP and ID3, as well as the maker notes of many digital
cameras by Canon, Casio, DJI, FLIR, FujiFilm, GE, GoPro, HP,
JVC/Victor, Kodak, Leaf, Minolta/Konica-Minolta, Motorola, Nikon,
Nintendo, Olympus/Epson, Panasonic/Leica, Pentax/Asahi, Phase One,
Reconyx, Ricoh, Samsung, Sanyo, Sigma/Foveon and Sony.
@ -16818,6 +16818,19 @@ let
};
};
TextNSP = buildPerlPackage rec {
name = "Text-NSP-1.31";
src = fetchurl {
url = "mirror://cpan/authors/id/T/TP/TPEDERSE/${name}.tar.gz";
sha256 = "a01201beb29636b3e41ecda2a6cf6522fd265416bd6d994fad02f59fb49cf595";
};
meta = {
description = "Extract collocations and Ngrams from text";
license = stdenv.lib.licenses.free;
maintainers = [ maintainers.bzizou ];
};
};
TextvFileasData = buildPerlPackage rec {
name = "Text-vFile-asData-0.08";
src = fetchurl {

View File

@ -1028,7 +1028,7 @@ in {
aiohttp = callPackage ../development/python-modules/aiohttp { };
aiohttp-cors = callPackage ../development/python-modules/aiohttp/cors.nix { };
aiohttp-cors = callPackage ../development/python-modules/aiohttp-cors { };
aiohttp-jinja2 = callPackage ../development/python-modules/aiohttp-jinja2 { };