Merge branch 'master' into gcc-7

... to fix lispPackages.*
This commit is contained in:
Vladimír Čunát 2018-02-17 22:45:50 +01:00
commit a84844de03
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
65 changed files with 898 additions and 190 deletions

View File

@ -2,7 +2,7 @@
let let
spdx = lic: lic // { spdx = lic: lic // {
url = "http://spdx.org/licenses/${lic.spdxId}"; url = "http://spdx.org/licenses/${lic.spdxId}.html";
}; };
in in
@ -580,6 +580,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
fullName = "Vovida Software License v1.0"; fullName = "Vovida Software License v1.0";
}; };
watcom = spdx {
spdxId = "Watcom-1.0";
fullName = "Sybase Open Watcom Public License 1.0";
};
w3c = spdx { w3c = spdx {
spdxId = "W3C"; spdxId = "W3C";
fullName = "W3C Software Notice and License"; fullName = "W3C Software Notice and License";
@ -614,5 +619,4 @@ lib.mapAttrs (n: v: v // { shortName = n; }) rec {
spdxId = "ZPL-2.1"; spdxId = "ZPL-2.1";
fullName = "Zope Public License 2.1"; fullName = "Zope Public License 2.1";
}; };
} }

View File

@ -370,6 +370,7 @@
kristoff3r = "Kristoffer Søholm <k.soeholm@gmail.com>"; kristoff3r = "Kristoffer Søholm <k.soeholm@gmail.com>";
ktosiek = "Tomasz Kontusz <tomasz.kontusz@gmail.com>"; ktosiek = "Tomasz Kontusz <tomasz.kontusz@gmail.com>";
kuznero = "Roman Kuznetsov <roman@kuznero.com>"; kuznero = "Roman Kuznetsov <roman@kuznero.com>";
lasandell = "Luke Sandell <lasandell@gmail.com>";
lassulus = "Lassulus <lassulus@gmail.com>"; lassulus = "Lassulus <lassulus@gmail.com>";
layus = "Guillaume Maudoux <layus.on@gmail.com>"; layus = "Guillaume Maudoux <layus.on@gmail.com>";
ldesgoui = "Lucas Desgouilles <ldesgoui@gmail.com>"; ldesgoui = "Lucas Desgouilles <ldesgoui@gmail.com>";
@ -479,6 +480,7 @@
mudri = "James Wood <lamudri@gmail.com>"; mudri = "James Wood <lamudri@gmail.com>";
muflax = "Stefan Dorn <mail@muflax.com>"; muflax = "Stefan Dorn <mail@muflax.com>";
myrl = "Myrl Hex <myrl.0xf@gmail.com>"; myrl = "Myrl Hex <myrl.0xf@gmail.com>";
nadrieril = "Nadrieril Feneanar <nadrieril@gmail.com>";
namore = "Roman Naumann <namor@hemio.de>"; namore = "Roman Naumann <namor@hemio.de>";
nand0p = "Fernando Jose Pando <nando@hex7.com>"; nand0p = "Fernando Jose Pando <nando@hex7.com>";
Nate-Devv = "Nathan Moore <natedevv@gmail.com>"; Nate-Devv = "Nathan Moore <natedevv@gmail.com>";
@ -494,6 +496,7 @@
nicknovitski = "Nick Novitski <nixpkgs@nicknovitski.com>"; nicknovitski = "Nick Novitski <nixpkgs@nicknovitski.com>";
nico202 = "Nicolò Balzarotti <anothersms@gmail.com>"; nico202 = "Nicolò Balzarotti <anothersms@gmail.com>";
NikolaMandic = "Ratko Mladic <nikola@mandic.email>"; NikolaMandic = "Ratko Mladic <nikola@mandic.email>";
ninjatrappeur = "Félix Baylac-Jacqué <felix@alternativebit.fr>";
nipav = "Niko Pavlinek <niko.pavlinek@gmail.com>"; nipav = "Niko Pavlinek <niko.pavlinek@gmail.com>";
nixy = "Andrew R. M. <nixy@nixy.moe>"; nixy = "Andrew R. M. <nixy@nixy.moe>";
nmattia = "Nicolas Mattia <nicolas@nmattia.com>"; nmattia = "Nicolas Mattia <nicolas@nmattia.com>";

View File

@ -205,6 +205,8 @@ with lib;
"See the 16.09 release notes for more information.") "See the 16.09 release notes for more information.")
(mkRemovedOptionModule [ "services" "phpfpm" "phpIni" ] "") (mkRemovedOptionModule [ "services" "phpfpm" "phpIni" ] "")
(mkRemovedOptionModule [ "services" "dovecot2" "package" ] "") (mkRemovedOptionModule [ "services" "dovecot2" "package" ] "")
(mkRemovedOptionModule [ "services" "firefox" "syncserver" "user" ] "")
(mkRemovedOptionModule [ "services" "firefox" "syncserver" "group" ] "")
(mkRemovedOptionModule [ "fonts" "fontconfig" "hinting" "style" ] "") (mkRemovedOptionModule [ "fonts" "fontconfig" "hinting" "style" ] "")
(mkRemovedOptionModule [ "services" "xserver" "displayManager" "sddm" "themes" ] (mkRemovedOptionModule [ "services" "xserver" "displayManager" "sddm" "themes" ]
"Set the option `services.xserver.displayManager.sddm.package' instead.") "Set the option `services.xserver.displayManager.sddm.package' instead.")

View File

@ -47,7 +47,7 @@ in
systemd.services.dante = { systemd.services.dante = {
description = "Dante SOCKS v4 and v5 compatible proxy server"; description = "Dante SOCKS v4 and v5 compatible proxy server";
after = [ "network.target" ]; after = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
serviceConfig = { serviceConfig = {

View File

@ -33,6 +33,8 @@ let
in in
{ {
meta.maintainers = with lib.maintainers; [ nadrieril ];
options = { options = {
services.firefox.syncserver = { services.firefox.syncserver = {
enable = mkOption { enable = mkOption {
@ -70,18 +72,6 @@ in
''; '';
}; };
user = mkOption {
type = types.str;
default = "syncserver";
description = "User account under which syncserver runs.";
};
group = mkOption {
type = types.str;
default = "syncserver";
description = "Group account under which syncserver runs.";
};
publicUrl = mkOption { publicUrl = mkOption {
type = types.str; type = types.str;
default = "http://localhost:5000/"; default = "http://localhost:5000/";
@ -137,7 +127,9 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
systemd.services.syncserver = let systemd.services.syncserver = let
syncServerEnv = pkgs.python.withPackages(ps: with ps; [ syncserver pasteScript ]); syncServerEnv = pkgs.python.withPackages(ps: with ps; [ syncserver pasteScript requests ]);
user = "syncserver";
group = "syncserver";
in { in {
after = [ "network.target" ]; after = [ "network.target" ];
description = "Firefox Sync Server"; description = "Firefox Sync Server";
@ -145,43 +137,43 @@ in
path = [ pkgs.coreutils syncServerEnv ]; path = [ pkgs.coreutils syncServerEnv ];
serviceConfig = { serviceConfig = {
User = cfg.user; User = user;
Group = cfg.group; Group = group;
PermissionsStartOnly = true; PermissionsStartOnly = true;
}; };
preStart = '' preStart = ''
if ! test -e ${cfg.privateConfig}; then if ! test -e ${cfg.privateConfig}; then
mkdir -m 700 -p $(dirname ${cfg.privateConfig}) mkdir -p $(dirname ${cfg.privateConfig})
echo > ${cfg.privateConfig} '[syncserver]' echo > ${cfg.privateConfig} '[syncserver]'
chmod 600 ${cfg.privateConfig}
echo >> ${cfg.privateConfig} "secret = $(head -c 20 /dev/urandom | sha1sum | tr -d ' -')" echo >> ${cfg.privateConfig} "secret = $(head -c 20 /dev/urandom | sha1sum | tr -d ' -')"
fi fi
chown ${cfg.user}:${cfg.group} ${cfg.privateConfig} chmod 600 ${cfg.privateConfig}
chmod 755 $(dirname ${cfg.privateConfig})
chown ${user}:${group} ${cfg.privateConfig}
'' + optionalString (cfg.sqlUri == defaultSqlUri) '' '' + optionalString (cfg.sqlUri == defaultSqlUri) ''
if ! test -e $(dirname ${defaultDbLocation}); then if ! test -e $(dirname ${defaultDbLocation}); then
mkdir -m 700 -p $(dirname ${defaultDbLocation}) mkdir -m 700 -p $(dirname ${defaultDbLocation})
chown ${cfg.user}:${cfg.group} $(dirname ${defaultDbLocation}) chown ${user}:${group} $(dirname ${defaultDbLocation})
fi fi
# Move previous database file if it exists # Move previous database file if it exists
oldDb="/var/db/firefox-sync-server.db" oldDb="/var/db/firefox-sync-server.db"
if test -f $oldDb; then if test -f $oldDb; then
mv $oldDb ${defaultDbLocation} mv $oldDb ${defaultDbLocation}
chown ${cfg.user}:${cfg.group} ${defaultDbLocation} chown ${user}:${group} ${defaultDbLocation}
fi fi
''; '';
serviceConfig.ExecStart = "${syncServerEnv}/bin/paster serve ${syncServerIni}"; serviceConfig.ExecStart = "${syncServerEnv}/bin/paster serve ${syncServerIni}";
}; };
users.extraUsers = optionalAttrs (cfg.user == "syncserver") users.users.syncserver = {
(singleton { group = "syncserver";
name = "syncserver"; isSystemUser = true;
group = cfg.group; };
isSystemUser = true;
});
users.extraGroups = optionalAttrs (cfg.group == "syncserver") users.groups.syncserver = {};
(singleton {
name = "syncserver";
});
}; };
} }

View File

@ -0,0 +1,72 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.freeradius;
freeradiusService = cfg:
{
description = "FreeRadius server";
wantedBy = ["multi-user.target"];
after = ["network-online.target"];
wants = ["network-online.target"];
preStart = ''
${pkgs.freeradius}/bin/radiusd -C -d ${cfg.configDir} -l stdout
'';
serviceConfig = {
ExecStart = "${pkgs.freeradius}/bin/radiusd -f -d ${cfg.configDir} -l stdout -xx";
ExecReload = [
"${pkgs.freeradius}/bin/radiusd -C -d ${cfg.configDir} -l stdout"
"${pkgs.coreutils}/bin/kill -HUP $MAINPID"
];
User = "radius";
ProtectSystem = "full";
ProtectHome = "on";
Restart = "on-failure";
RestartSec = 2;
};
};
freeradiusConfig = {
enable = mkEnableOption "the freeradius server";
configDir = mkOption {
type = types.path;
default = "/etc/raddb";
description = ''
The path of the freeradius server configuration directory.
'';
};
};
in
{
###### interface
options = {
services.freeradius = freeradiusConfig;
};
###### implementation
config = mkIf (cfg.enable) {
users = {
extraUsers.radius = {
/*uid = config.ids.uids.radius;*/
description = "Radius daemon user";
};
};
systemd.services.freeradius = freeradiusService cfg;
};
}

View File

@ -578,6 +578,7 @@ in
mkdir -p ${cfg.stateDir}/logs mkdir -p ${cfg.stateDir}/logs
chmod 700 ${cfg.stateDir} chmod 700 ${cfg.stateDir}
chown -R ${cfg.user}:${cfg.group} ${cfg.stateDir} chown -R ${cfg.user}:${cfg.group} ${cfg.stateDir}
${cfg.package}/bin/nginx -c ${configFile} -p ${cfg.stateDir} -t
''; '';
serviceConfig = { serviceConfig = {
ExecStart = "${cfg.package}/bin/nginx -c ${configFile} -p ${cfg.stateDir}"; ExecStart = "${cfg.package}/bin/nginx -c ${configFile} -p ${cfg.stateDir}";

View File

@ -184,7 +184,7 @@ in
[ "loglevel=${toString config.boot.consoleLogLevel}" ] ++ [ "loglevel=${toString config.boot.consoleLogLevel}" ] ++
optionals config.boot.vesa [ "vga=0x317" ]; optionals config.boot.vesa [ "vga=0x317" ];
boot.kernel.sysctl."kernel.printk" = config.boot.consoleLogLevel; boot.kernel.sysctl."kernel.printk" = mkDefault config.boot.consoleLogLevel;
boot.kernelModules = [ "loop" "atkbd" ]; boot.kernelModules = [ "loop" "atkbd" ];

View File

@ -94,7 +94,7 @@ let
checkNetwork = checkUnitConfig "Network" [ checkNetwork = checkUnitConfig "Network" [
(assertOnlyFields [ (assertOnlyFields [
"Description" "DHCP" "DHCPServer" "IPForward" "IPMasquerade" "IPv4LL" "IPv4LLRoute" "Description" "DHCP" "DHCPServer" "IPForward" "IPMasquerade" "IPv4LL" "IPv4LLRoute"
"LLMNR" "MulticastDNS" "Domains" "Bridge" "Bond" "LLMNR" "MulticastDNS" "Domains" "Bridge" "Bond" "IPv6PrivacyExtensions"
]) ])
(assertValueOneOf "DHCP" ["both" "none" "v4" "v6"]) (assertValueOneOf "DHCP" ["both" "none" "v4" "v6"])
(assertValueOneOf "DHCPServer" boolValues) (assertValueOneOf "DHCPServer" boolValues)
@ -104,6 +104,7 @@ let
(assertValueOneOf "IPv4LLRoute" boolValues) (assertValueOneOf "IPv4LLRoute" boolValues)
(assertValueOneOf "LLMNR" boolValues) (assertValueOneOf "LLMNR" boolValues)
(assertValueOneOf "MulticastDNS" boolValues) (assertValueOneOf "MulticastDNS" boolValues)
(assertValueOneOf "IPv6PrivacyExtensions" ["yes" "no" "prefer-public" "kernel"])
]; ];
checkAddress = checkUnitConfig "Address" [ checkAddress = checkUnitConfig "Address" [

View File

@ -91,6 +91,7 @@ in
(if i.useDHCP != null then i.useDHCP else cfg.useDHCP && interfaceIps i == [ ])); (if i.useDHCP != null then i.useDHCP else cfg.useDHCP && interfaceIps i == [ ]));
address = flip map (interfaceIps i) address = flip map (interfaceIps i)
(ip: "${ip.address}/${toString ip.prefixLength}"); (ip: "${ip.address}/${toString ip.prefixLength}");
networkConfig.IPv6PrivacyExtensions = "kernel";
} ]; } ];
}))) })))
(mkMerge (flip mapAttrsToList cfg.bridges (name: bridge: { (mkMerge (flip mapAttrsToList cfg.bridges (name: bridge: {

View File

@ -155,6 +155,16 @@ let
description = "Name of the interface."; description = "Name of the interface.";
}; };
preferTempAddress = mkOption {
type = types.bool;
default = cfg.enableIPv6;
defaultText = literalExample "config.networking.enableIpv6";
description = ''
When using SLAAC prefer a temporary (IPv6) address over the EUI-64
address for originating connections. This is used to reduce tracking.
'';
};
useDHCP = mkOption { useDHCP = mkOption {
type = types.nullOr types.bool; type = types.nullOr types.bool;
default = null; default = null;
@ -941,6 +951,11 @@ in
message = '' message = ''
The networking.interfaces."${i.name}" must not have any defined ips when it is a slave. The networking.interfaces."${i.name}" must not have any defined ips when it is a slave.
''; '';
})) ++ (flip map interfaces (i: {
assertion = i.preferTempAddress -> cfg.enableIPv6;
message = ''
Temporary addresses are only needed when IPv6 is enabled.
'';
})) ++ [ })) ++ [
{ {
assertion = cfg.hostId == null || (stringLength cfg.hostId == 8 && isHexString cfg.hostId); assertion = cfg.hostId == null || (stringLength cfg.hostId == 8 && isHexString cfg.hostId);
@ -963,9 +978,10 @@ in
"net.ipv6.conf.all.disable_ipv6" = mkDefault (!cfg.enableIPv6); "net.ipv6.conf.all.disable_ipv6" = mkDefault (!cfg.enableIPv6);
"net.ipv6.conf.default.disable_ipv6" = mkDefault (!cfg.enableIPv6); "net.ipv6.conf.default.disable_ipv6" = mkDefault (!cfg.enableIPv6);
"net.ipv6.conf.all.forwarding" = mkDefault (any (i: i.proxyARP) interfaces); "net.ipv6.conf.all.forwarding" = mkDefault (any (i: i.proxyARP) interfaces);
} // listToAttrs (concatLists (flip map (filter (i: i.proxyARP) interfaces) } // listToAttrs (flip concatMap (filter (i: i.proxyARP) interfaces)
(i: flip map [ "4" "6" ] (v: nameValuePair "net.ipv${v}.conf.${i.name}.proxy_arp" true)) (i: flip map [ "4" "6" ] (v: nameValuePair "net.ipv${v}.conf.${i.name}.proxy_arp" true)))
)); // listToAttrs (flip map (filter (i: i.preferTempAddress) interfaces)
(i: nameValuePair "net.ipv6.conf.${i.name}.use_tempaddr" 2));
# Capabilities won't work unless we have at-least a 4.3 Linux # Capabilities won't work unless we have at-least a 4.3 Linux
# kernel because we need the ambient capability # kernel because we need the ambient capability

View File

@ -38,6 +38,15 @@ in
environment.systemPackages = environment.systemPackages =
[ pkgs.lxd ]; [ pkgs.lxd ];
security.apparmor = {
enable = true;
profiles = [
"${pkgs.lxc}/etc/apparmor.d/usr.bin.lxc-start"
"${pkgs.lxc}/etc/apparmor.d/lxc-containers"
];
packages = [ pkgs.lxc ];
};
systemd.services.lxd = systemd.services.lxd =
{ description = "LXD Container Management Daemon"; { description = "LXD Container Management Daemon";
@ -47,6 +56,10 @@ in
# TODO(wkennington): Add lvm2 and thin-provisioning-tools # TODO(wkennington): Add lvm2 and thin-provisioning-tools
path = with pkgs; [ acl rsync gnutar xz btrfs-progs gzip dnsmasq squashfsTools iproute iptables ]; path = with pkgs; [ acl rsync gnutar xz btrfs-progs gzip dnsmasq squashfsTools iproute iptables ];
preStart = ''
mkdir -m 0755 -p /var/lib/lxc/rootfs
'';
serviceConfig.ExecStart = "@${pkgs.lxd.bin}/bin/lxd lxd --syslog --group lxd"; serviceConfig.ExecStart = "@${pkgs.lxd.bin}/bin/lxd lxd --syslog --group lxd";
serviceConfig.Type = "simple"; serviceConfig.Type = "simple";
serviceConfig.KillMode = "process"; # when stopping, leave the containers alone serviceConfig.KillMode = "process"; # when stopping, leave the containers alone

View File

@ -9,28 +9,31 @@ import ./make-test.nix ({ pkgs, ... }: {
nodes = { nodes = {
docker = docker =
{ config, pkgs, ... }: { { config, pkgs, ... }: {
virtualisation.docker.enable = true; virtualisation = {
diskSize = 1024;
docker.enable = true;
};
}; };
}; };
testScript = testScript =
let ''
dockerImage = pkgs.dockerTools.buildImage {
name = "hello-docker";
contents = [ pkgs.hello ];
tag = "sometag";
# TODO: create another test checking whether runAsRoot works as intended.
config = {
Cmd = [ "hello" ];
};
};
in ''
$docker->waitForUnit("sockets.target"); $docker->waitForUnit("sockets.target");
$docker->succeed("docker load --input='${dockerImage}'");
$docker->succeed("docker run hello-docker:sometag");
'';
$docker->succeed("docker load --input='${pkgs.dockerTools.examples.bash}'");
$docker->succeed("docker run ${pkgs.dockerTools.examples.bash.imageName} /bin/bash --version");
$docker->succeed("docker load --input='${pkgs.dockerTools.examples.nix}'");
$docker->succeed("docker run ${pkgs.dockerTools.examples.nix.imageName} /bin/nix-store -qR ${pkgs.nix}");
# To test the pullImage tool
$docker->succeed("docker load --input='${pkgs.dockerTools.examples.nixFromDockerHub}'");
$docker->succeed("docker run nixos/nix:1.11 nix-store --version");
# To test runAsRoot and entry point
$docker->succeed("docker load --input='${pkgs.dockerTools.examples.nginx}'");
$docker->succeed("docker run --name nginx -d -p 8000:80 ${pkgs.dockerTools.examples.nginx.imageName}");
$docker->waitUntilSucceeds('curl http://localhost:8000/');
$docker->succeed("docker rm --force nginx");
'';
}) })

View File

@ -476,6 +476,63 @@ let
); );
''; '';
}; };
privacy = {
name = "Privacy";
nodes.router = { config, pkgs, ... }: {
virtualisation.vlans = [ 1 ];
boot.kernel.sysctl."net.ipv6.conf.all.forwarding" = true;
networking = {
useNetworkd = networkd;
interfaces.eth1 = {
ipv6Address = "fd00:1234:5678:1::1";
ipv6PrefixLength = 64;
};
};
services.radvd = {
enable = true;
config = ''
interface eth1 {
AdvSendAdvert on;
AdvManagedFlag on;
AdvOtherConfigFlag on;
prefix fd00:1234:5678:1::/64 {
AdvAutonomous on;
AdvOnLink on;
};
};
'';
};
};
nodes.client = { config, pkgs, ... }: with pkgs.lib; {
virtualisation.vlans = [ 1 ];
networking = {
useNetworkd = networkd;
useDHCP = true;
interfaces.eth1 = {
preferTempAddress = true;
ip4 = mkOverride 0 [ ];
ip6 = mkOverride 0 [ ];
};
};
};
testScript = { nodes, ... }:
''
startAll;
$client->waitForUnit("network.target");
$router->waitForUnit("network-online.target");
# Wait until we have an ip address
$client->waitUntilSucceeds("ip addr show dev eth1 | grep -q 'fd00:1234:5678:1:'");
# Test vlan 1
$client->waitUntilSucceeds("ping -c 1 fd00:1234:5678:1::1");
# Test address used is temporary
$client->waitUntilSucceeds("! ip route get fd00:1234:5678:1::1 | grep -q ':[a-f0-9]*ff:fe[a-f0-9]*:'");
'';
};
}; };
in mapAttrs (const (attrs: makeTest (attrs // { in mapAttrs (const (attrs: makeTest (attrs // {

View File

@ -0,0 +1,48 @@
{ stdenv, fetchurl, unzip, alsaLib, libX11, libXi, SDL2 }:
let
libPath = stdenv.lib.makeLibraryPath [ stdenv.cc.cc alsaLib libX11 libXi SDL2 ];
arch =
if stdenv.isAarch64
then "arm64"
else if stdenv.isArm
then "arm_armhf_raspberry_pi"
else if stdenv.is64bit
then "x86_64"
else "x86";
in
stdenv.mkDerivation rec {
name = "SunVox-${version}";
version = "1.9.3b";
src = fetchurl {
url = "http://www.warmplace.ru/soft/sunvox/sunvox-${version}.zip";
sha256 = "0k74rcq7niw4p17vj3zp9lpgi932896dmzqv4ln43g0pz7l18c8b";
};
buildInputs = [ unzip ];
unpackPhase = "unzip $src";
dontBuild = true;
installPhase = ''
mkdir -p $out/share $out/bin
mv sunvox $out/share/
bin="$out/share/sunvox/sunvox/linux_${arch}/sunvox"
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${libPath}" \
"$bin"
ln -s "$bin" $out/bin/sunvox
'';
meta = with stdenv.lib; {
description = "Small, fast and powerful modular synthesizer with pattern-based sequencer";
license = licenses.unfreeRedistributable;
homepage = "http://www.warmplace.ru/soft/sunvox/";
maintainers = with maintainers; [ puffnfresh ];
platforms = [ "i686-linux" "x86_64-linux" ];
};
}

View File

@ -2,7 +2,7 @@
makeWrapper, libXScrnSaver, libxkbfile, libsecret }: makeWrapper, libXScrnSaver, libxkbfile, libsecret }:
let let
version = "1.20.0"; version = "1.20.1";
channel = "stable"; channel = "stable";
plat = { plat = {
@ -12,9 +12,9 @@ let
}.${stdenv.system}; }.${stdenv.system};
sha256 = { sha256 = {
"i686-linux" = "0lhfljcdb05v0p3kc6zimgd2z057397blfp56bhr7v7wnsi6i40k"; "i686-linux" = "0gycz857bl9ikfrylim970qgmyw7rcy3gbg2zsjddp9cgdk9basn";
"x86_64-linux" = "138kvqa5cixry62yry0lwzxlk9fs8hb4zqzmsd8ag1jjfma8y45k"; "x86_64-linux" = "0rx0qyxv173s9wjw97f94h61f12lh42grnmabgsvwd87b8zx4qim";
"x86_64-darwin" = "1adnwlqf2kw8wfjf86a3xg83j1yqnlsdckksw82b06x3j11g91i8"; "x86_64-darwin" = "0mqxmmkp3bsmy1g35prsgan61zzq5368gp720v37cwx1rskl0bfg";
}.${stdenv.system}; }.${stdenv.system};
archive_fmt = if stdenv.system == "x86_64-darwin" then "zip" else "tar.gz"; archive_fmt = if stdenv.system == "x86_64-darwin" then "zip" else "tar.gz";

View File

@ -1,4 +1,4 @@
{ fetchFromGitHub, ack , tree, stdenv, ... }: { fetchFromGitHub, ag, tree, stdenv, ... }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -15,6 +15,9 @@ stdenv.mkDerivation rec {
installPhase = '' installPhase = ''
mkdir -p $out/{bin,share/man/man1,share/bash-completion/completions} mkdir -p $out/{bin,share/man/man1,share/bash-completion/completions}
substituteInPlace memo \
--replace "ack " "${ag}/bin/ag " \
--replace "tree " "${tree}/bin/tree "
mv memo $out/bin/ mv memo $out/bin/
mv doc/memo.1 $out/share/man/man1/memo.1 mv doc/memo.1 $out/share/man/man1/memo.1
mv completion/memo.bash $out/share/bash-completion/completions/memo.sh mv completion/memo.bash $out/share/bash-completion/completions/memo.sh
@ -32,4 +35,4 @@ stdenv.mkDerivation rec {
maintainers = [ stdenv.lib.maintainers.mrVanDalo ]; maintainers = [ stdenv.lib.maintainers.mrVanDalo ];
platforms = stdenv.lib.platforms.all; platforms = stdenv.lib.platforms.all;
}; };
} }

View File

@ -3,7 +3,7 @@
, faad2, rtl-sdr, libusb, fftwSinglePrec }: , faad2, rtl-sdr, libusb, fftwSinglePrec }:
let let
version = "1.0-rc1"; version = "1.0-rc2";
in stdenv.mkDerivation { in stdenv.mkDerivation {
@ -13,7 +13,7 @@ in stdenv.mkDerivation {
owner = "AlbrechtL"; owner = "AlbrechtL";
repo = "welle.io"; repo = "welle.io";
rev = "V${version}"; rev = "V${version}";
sha256 = "1xi59rmk3rdqqxxxrm2pbllrlsql46vxs95l1pkfx7bp8f7n7rsv"; sha256 = "01x4ldq6lvmdrmxi857594nj9xpn2h7848vvf3f54sh1zrawn4k4";
}; };
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];

View File

@ -0,0 +1,41 @@
{ stdenv, fetchurl, asciidoc, asciidoctor, autoconf, automake, cmake,
docbook_xsl, fftw, fftwFloat, gfortran, libtool, libpulseaudio, qtbase,
qtmultimedia, qtserialport, texinfo, libusb1 }:
stdenv.mkDerivation rec {
name = "wsjtx-${version}";
version = "1.8.0";
# This is a composite source tarball containing both wsjtx and a hamlib fork
src = fetchurl {
url = "http://physics.princeton.edu/pulsar/K1JT/wsjtx-${version}.tgz";
sha256 = "21603ad4d5f43cd9c79a6e8cf468bde88c554654012b2c6c1ef9144cfbf668ce";
};
# Hamlib builds with autotools, wsjtx builds with cmake
# Omitting pkgconfig because it causes issues locating the built hamlib
nativeBuildInputs = [
asciidoc asciidoctor autoconf automake cmake docbook_xsl gfortran libtool
texinfo
];
buildInputs = [ fftw fftwFloat libusb1 qtbase qtmultimedia qtserialport ];
# Composite build has its own patch step after it extracts the inner archives
postPatch = "cp ${./wsjtx.patch} wsjtx.patch";
meta = with stdenv.lib; {
description = "Weak-signal digital communication modes for amateur radio";
longDescription = ''
WSJT-X implements communication protocols or "modes" called FT8, JT4, JT9,
JT65, QRA64, ISCAT, MSK144, and WSPR, as well as one called Echo for
detecting and measuring your own radio signals reflected from the Moon.
These modes were all designed for making reliable, confirmed ham radio
contacts under extreme weak-signal conditions.
'';
homepage = http://physics.princeton.edu/pulsar/k1jt/wsjtx.html;
# Older licenses are for the statically-linked hamlib
license = with licenses; [ gpl3Plus gpl2Plus lgpl21Plus ];
platforms = platforms.linux;
maintainers = [ maintainers.lasandell ];
};
}

View File

@ -0,0 +1,12 @@
Index: wsjtx/CMakeLists.txt
===================================================================
--- wsjtx/CMakeLists.txt (revision 8382)
+++ wsjtx/CMakeLists.txt (working copy)
@@ -866,6 +866,7 @@
find_package (Qt5Widgets 5 REQUIRED)
find_package (Qt5Multimedia 5 REQUIRED)
find_package (Qt5PrintSupport 5 REQUIRED)
+find_package (Qt5SerialPort 5 REQUIRED)
if (WIN32)
add_definitions (-DQT_NEEDS_QTMAIN)

View File

@ -2,16 +2,17 @@
, libpthreadstubs, libxcb, libXdmcp, qtsvg, qttools, qtwebengine, qtx11extras, kwallet, openssl }: , libpthreadstubs, libxcb, libXdmcp, qtsvg, qttools, qtwebengine, qtx11extras, kwallet, openssl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
# Last qupvilla release is 2.1.2 so we add the .1 although it isn't actually a # KDE hasn't made a release of falkon yet so we just track git for now which is
# release but it is basically 2.1.2 with the falkon name # based on the most recent release of qupzilla
# This wip version is 2.1.99 so we add the .1
name = "falkon-${version}.1"; name = "falkon-${version}.1";
version = "2.1.2"; version = "2.1.99";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "KDE"; owner = "KDE";
repo = "falkon"; repo = "falkon";
rev = "eecaf2e9d6b572a7f7d2e6dc324e3d79b61c31db"; rev = "dd3c570c41b4b3d0ad17202b78bf14cf1ac56495";
sha256 = "01r5aw10jd0qz7xvad0cqzjbnsj7vwblh54wbq4x1m6xbkp6xcgy"; sha256 = "07d40cpckaprj74mr06k3mfriwb471bdmq60smls34y62ss55q9d";
}; };
preConfigure = '' preConfigure = ''
@ -21,8 +22,6 @@ stdenv.mkDerivation rec {
export FALKON_PREFIX=$out export FALKON_PREFIX=$out
''; '';
dontUseCmakeConfigure = true;
buildInputs = [ buildInputs = [
libpthreadstubs libxcb libXdmcp libpthreadstubs libxcb libXdmcp
kwallet kwallet
@ -31,8 +30,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig qmake qttools ]; nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig qmake qttools ];
# on 2.1.2: RCC: Error in 'autoscroll.qrc': Cannot find file 'locale/ar_SA.qm' enableParallelBuilding = true;
enableParallelBuilding = false;
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "QtWebEngine based cross-platform web browser"; description = "QtWebEngine based cross-platform web browser";
@ -40,6 +38,5 @@ stdenv.mkDerivation rec {
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ peterhoeg ]; maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.unix; platforms = platforms.unix;
broken = true;
}; };
} }

View File

@ -71,7 +71,7 @@ let
++ lib.optionals (cfg.enableQuakeLive or false) ++ lib.optionals (cfg.enableQuakeLive or false)
(with xorg; [ stdenv.cc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib libudev ]) (with xorg; [ stdenv.cc libX11 libXxf86dga libXxf86vm libXext libXt alsaLib zlib libudev ])
++ lib.optional (enableAdobeFlash && (cfg.enableAdobeFlashDRM or false)) hal-flash ++ lib.optional (enableAdobeFlash && (cfg.enableAdobeFlashDRM or false)) hal-flash
++ lib.optional (config.pulseaudio or false) libpulseaudio; ++ lib.optional (config.pulseaudio or true) libpulseaudio;
gst-plugins = with gst_all; [ gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-ffmpeg ]; gst-plugins = with gst_all; [ gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-ffmpeg ];
gtk_modules = [ libcanberra_gtk2 ]; gtk_modules = [ libcanberra_gtk2 ];

View File

@ -5,6 +5,7 @@
, libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb , libXcursor, libXext, libXfixes, libXrender, libXScrnSaver, libXcomposite, libxcb
, alsaLib, libXdamage, libXtst, libXrandr, expat, cups , alsaLib, libXdamage, libXtst, libXrandr, expat, cups
, dbus_libs, gtk2, gtk3, gdk_pixbuf, gcc-unwrapped, at_spi2_atk , dbus_libs, gtk2, gtk3, gdk_pixbuf, gcc-unwrapped, at_spi2_atk
, kerberos
# command line arguments which are always set e.g "--disable-gpu" # command line arguments which are always set e.g "--disable-gpu"
, commandLineArgs ? "" , commandLineArgs ? ""
@ -57,6 +58,7 @@ let
liberation_ttf curl utillinux xdg_utils wget liberation_ttf curl utillinux xdg_utils wget
flac harfbuzz icu libpng opusWithCustomModes snappy speechd flac harfbuzz icu libpng opusWithCustomModes snappy speechd
bzip2 libcap at_spi2_atk bzip2 libcap at_spi2_atk
kerberos
] ++ optional pulseSupport libpulseaudio ] ++ optional pulseSupport libpulseaudio
++ [ gtk ]; ++ [ gtk ];

View File

@ -36,7 +36,10 @@ stdenv.mkDerivation rec {
"-DINOTIFY_INCLUDE_DIR=${inotify-tools}/include" "-DINOTIFY_INCLUDE_DIR=${inotify-tools}/include"
]; ];
postInstall = stdenv.lib.optionalString (withGnomeKeyring) '' postInstall = ''
sed -i 's/\(Icon.*\)=nextcloud/\1=Nextcloud/g' \
$out/share/applications/nextcloud.desktop
'' + stdenv.lib.optionalString (withGnomeKeyring) ''
wrapProgram "$out/bin/nextcloud" \ wrapProgram "$out/bin/nextcloud" \
--prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ libgnome_keyring ]} --prefix LD_LIBRARY_PATH : ${stdenv.lib.makeLibraryPath [ libgnome_keyring ]}
''; '';

View File

@ -74,7 +74,7 @@ fi
if [ -z "$newHash" ]; then if [ -z "$newHash" ]; then
nix-build --no-out-link -A "$attr.src" 2>"$attr.fetchlog" >/dev/null || true nix-build --no-out-link -A "$attr.src" 2>"$attr.fetchlog" >/dev/null || true
# FIXME: use nix-build --hash here once https://github.com/NixOS/nix/issues/1172 is fixed # FIXME: use nix-build --hash here once https://github.com/NixOS/nix/issues/1172 is fixed
newHash=$(egrep -v "killing process|dependencies couldn't be built" "$attr.fetchlog" | tail -n2 | grep "output path .* has .* hash .* when .* was expected" | head -n1 | tr -dc '\040-\177' | tr -d "'" | awk '{ print $(NF-4) }') newHash=$(egrep -v "killing process|dependencies couldn't be built" "$attr.fetchlog" | tail -n2 | sed "s~output path .* has .* hash \(.*\) when .* was expected\|fixed-output derivation produced path '.*' with .* hash '\(.*\)' instead of the expected hash '.*'~\1\2~" | head -n1)
fi fi
if [ -z "$newHash" ]; then if [ -z "$newHash" ]; then

View File

@ -0,0 +1,38 @@
{ stdenv, fetchurl } :
let
major = "3";
minor = "00";
version = "${major}.${minor}";
in
stdenv.mkDerivation rec {
name = "fixedsys-excelsior-${version}";
src = fetchurl {
url = http://www.fixedsysexcelsior.com/fonts/FSEX300.ttf;
sha256 = "6ee0f3573bc5e33e93b616ef6282f49bc0e227a31aa753ac76ed2e3f3d02056d";
};
phases = [ "installPhase" ];
installPhase = ''
mkdir -p $out/share/fonts/truetype/
cp $src $out/share/fonts/truetype/${name}.ttf
'';
outputHashMode = "recursive";
outputHashAlgo = "sha256";
outputHash = "32d6f07f1ff08c764357f8478892b2ba5ade23427af99759f34a0ba24bcd2e37";
meta = {
description = "Pan-unicode version of Fixedsys, a classic DOS font.";
homepage = http://www.fixedsysexcelsior.com/;
platforms = stdenv.lib.platforms.all;
license = stdenv.lib.licenses.publicDomain;
maintainers = [ stdenv.lib.maintainers.ninjatrappeur ];
};
}

View File

@ -3,9 +3,9 @@
, curl, tzdata, gdb, darwin , curl, tzdata, gdb, darwin
, callPackage , callPackage
, bootstrapVersion ? false , bootstrapVersion ? false
, version ? "2.078.1" , version ? "2.078.2"
, dmdSha256 ? "0b9lphh4g3r9cyzv4wcfppv9j3w952vvwv615za23acgwav3mqg2" , dmdSha256 ? "0x9q4aw4jl36dz7m5111y2sm8jdaj3zg36zhj6vqg1lqpdn3bhls"
, druntimeSha256 ? "16jv40m073cflpkyl0vmg1g58cianybfcsgcvwli7pfryxbgsbrr" , druntimeSha256 ? "0nfqjcmwqc490bzi3582x1c3zigkf306g4nyd1cyd3vs8lfm6x66"
, phobosSha256 ? "08ircpf4ilznz638kra272hz8fi5ccvw2cswj5hqckssl1lyqzs8" , phobosSha256 ? "08ircpf4ilznz638kra272hz8fi5ccvw2cswj5hqckssl1lyqzs8"
}: }:
@ -111,7 +111,7 @@ let
'' ''
+ stdenv.lib.optionalString stdenv.hostPlatform.isLinux '' + stdenv.lib.optionalString stdenv.hostPlatform.isLinux ''
# See https://github.com/NixOS/nixpkgs/issues/29443 # See https://github.com/dlang/phobos/pull/5960
substituteInPlace phobos/std/path.d \ substituteInPlace phobos/std/path.d \
--replace "\"/root" "\"${ROOT_HOME_DIR}" --replace "\"/root" "\"${ROOT_HOME_DIR}"
''; '';

View File

@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub
, cmake }:
with stdenv.lib;
stdenv.mkDerivation rec {
name = "jwasm-${version}";
version = "git-2017-11-22";
src = fetchFromGitHub {
owner = "JWasm";
repo = "JWasm";
rev = "26f97c8b5c9d9341ec45538701116fa3649b7766";
sha256 = "0m972pc8vk8s9yv1pi85fsjgm6hj24gab7nalw2q04l0359nqi7w";
};
nativeBuildInputs = [ cmake ];
installPhase = "mkdir -p $out/bin ; cp jwasm $out/bin/";
meta = {
description = "A MASM-compatible x86 assembler";
homepage = http://jwasm.github.io/;
license = licenses.gpl2Plus;
maintainers = with maintainers; [ AndersonTorres ];
platforms = platforms.darwin ++ platforms.linux;
};
}

View File

@ -3,6 +3,7 @@
apis ? ["*"] apis ? ["*"]
, # Whether to enable AWS' custom memory management. , # Whether to enable AWS' custom memory management.
customMemoryManagement ? true customMemoryManagement ? true
, darwin
}: }:
let let
@ -29,7 +30,11 @@ in stdenv.mkDerivation rec {
separateDebugInfo = stdenv.isLinux; separateDebugInfo = stdenv.isLinux;
nativeBuildInputs = [ cmake curl ]; nativeBuildInputs = [ cmake curl ];
buildInputs = [ zlib curl openssl ]; buildInputs = [ zlib curl openssl ]
++ lib.optionals (stdenv.isDarwin &&
((builtins.elem "text-to-speech" apis) ||
(builtins.elem "*" apis)))
(with darwin.apple_sdk.frameworks; [ CoreAudio AudioToolbox ]);
cmakeFlags = cmakeFlags =
lib.optional (!customMemoryManagement) "-DCUSTOM_MEMORY_MANAGEMENT=0" lib.optional (!customMemoryManagement) "-DCUSTOM_MEMORY_MANAGEMENT=0"

View File

@ -0,0 +1,29 @@
{ stdenv, fetchFromGitHub, cmake, catch }:
stdenv.mkDerivation rec {
pname = "GSL-unstable";
version = "2017-02-15";
name = "${pname}-${version}";
src = fetchFromGitHub {
owner = "Microsoft";
repo = "GSL";
rev = "c87c123d1b3e64ae2cf725584f0c004da4d90f1c";
sha256 = "0h8py468bvxnydkjs352d7a9s8hk0ihc7msjkcnzj2d7nzp5nsc1";
};
nativeBuildInputs = [ cmake catch ];
meta = with stdenv.lib; {
homepage = https://github.com/Microsoft/GSL;
description = "C++ Core Guideline support library";
longDescription = ''
The Guideline Support Library (GSL) contains functions and types that are suggested for
use by the C++ Core Guidelines maintained by the Standard C++ Foundation.
This package contains Microsoft's implementation of GSL.
'';
platforms = stdenv.lib.platforms.unix;
license = licenses.mit;
maintainers = with maintainers; [ yuriaisaka ];
};
}

View File

@ -29,7 +29,7 @@ in stdenv.mkDerivation rec {
nativeBuildInputs = [ perl ]; nativeBuildInputs = [ perl ];
configureFlags = with stdenv; [] configureFlags = with stdenv; [ "--disable-mca-dso" ]
++ lib.optional isLinux "--with-libnl=${libnl.dev}" ++ lib.optional isLinux "--with-libnl=${libnl.dev}"
++ lib.optional enableSGE "--with-sge" ++ lib.optional enableSGE "--with-sge"
++ lib.optional enablePrefix "--enable-mpirun-prefix-by-default" ++ lib.optional enablePrefix "--enable-mpirun-prefix-by-default"

View File

@ -1,5 +1,5 @@
{ callPackage }: { callPackage }:
callPackage ./generic.nix {} { callPackage ./generic.nix {} {
version = "1.13.35.1"; # Latest beta, 2017-11-08 version = "1.13.35.2"; # Latest stable, 2018-02-05
sha256 = "126823gpr3rdqakwixmr887rbvwhksr3xg14jnyzlp84q4hg1p0n"; sha256 = "0xi2srf9gx0x2sz9r45zb35k2n0iv457if1lqzvbanls3f935cmr";
} }

View File

@ -1,4 +1,4 @@
#!@stdenv_shell@ #!@bash@/bin/bash
# Part of NixPkgs package collection # Part of NixPkgs package collection
# This script can be used at your option under the same license as NixPkgs or # This script can be used at your option under the same license as NixPkgs or
# under MIT/X11 license # under MIT/X11 license

View File

@ -1,3 +1,3 @@
#! /bin/sh #!@bash@/bin/bash
source "@out@"/bin/cl-wrapper.sh "${NIX_LISP_COMMAND:-$(@ls@ "@lisp@/bin"/* | @head@ -n 1)}" "$@" source "@out@"/bin/cl-wrapper.sh "${NIX_LISP_COMMAND:-$(@ls@ "@lisp@/bin"/* | @head@ -n 1)}" "$@"

View File

@ -1,4 +1,4 @@
{stdenv, fetchurl, asdf, which, lisp ? null}: {stdenv, fetchurl, asdf, which, bash, lisp ? null}:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "cl-wrapper-script"; name = "cl-wrapper-script";
@ -36,7 +36,7 @@ stdenv.mkDerivation {
buildInputs = [which]; buildInputs = [which];
inherit asdf lisp; inherit asdf lisp bash;
stdenv_shell = stdenv.shell; stdenv_shell = stdenv.shell;
setupHook = ./setup-hook.sh; setupHook = ./setup-hook.sh;

View File

@ -4,7 +4,7 @@ let
dubBuild = stdenv.mkDerivation rec { dubBuild = stdenv.mkDerivation rec {
name = "dubBuild-${version}"; name = "dubBuild-${version}";
version = "1.7.1"; version = "1.7.2";
enableParallelBuilding = true; enableParallelBuilding = true;
@ -12,9 +12,13 @@ let
owner = "dlang"; owner = "dlang";
repo = "dub"; repo = "dub";
rev = "v${version}"; rev = "v${version}";
sha256 = "09bcc9bq2z1rbm8sdip1l81y5p8q13r30k02lzifyasiplrnpvlv"; sha256 = "073ibvgm1gphcqs1yjrav9ryp677nh3b194nxmvicwgvdc0sb6w9";
}; };
postUnpack = ''
patchShebangs .
'';
patches = [ patches = [
# TODO Remove with next release which contains https://github.com/dlang/dub/pull/1354 # TODO Remove with next release which contains https://github.com/dlang/dub/pull/1354
(fetchpatch { (fetchpatch {
@ -23,12 +27,11 @@ let
}) })
]; ];
# Can be removed with https://github.com/dlang/dub/pull/1368
dubvar = "\\$DUB";
postPatch = '' postPatch = ''
# Avoid that the version file is overwritten substituteInPlace test/fetchzip.sh \
substituteInPlace build.sh \ --replace "dub remove" "\"${dubvar}\" remove"
--replace source/dub/version_.d /dev/null
patchShebangs .
''; '';
nativeBuildInputs = [ dmd libevent rsync ]; nativeBuildInputs = [ dmd libevent rsync ];
@ -70,6 +73,7 @@ let
patches = dubBuild.patches; patches = dubBuild.patches;
postUnpack = dubBuild.postUnpack;
postPatch = dubBuild.postPatch; postPatch = dubBuild.postPatch;
nativeBuildInputs = dubBuild.nativeBuildInputs; nativeBuildInputs = dubBuild.nativeBuildInputs;

View File

@ -1,6 +1,6 @@
{ stdenv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }: { stdenv, buildGoPackage, fetchFromGitHub, makeWrapper, coreutils, git, openssh, bash, gnused, gnugrep }:
let let
version = "2.6.6"; version = "2.6.9";
goPackagePath = "github.com/buildkite/agent"; goPackagePath = "github.com/buildkite/agent";
in in
buildGoPackage { buildGoPackage {
@ -12,11 +12,15 @@ buildGoPackage {
owner = "buildkite"; owner = "buildkite";
repo = "agent"; repo = "agent";
rev = "v${version}"; rev = "v${version}";
sha256 = "0rpi63mfzlm39517l4xjcka3m4dnfjzwvpi0i1rpf1z2288cnkyx"; sha256 = "0rlinj7dcr8vzl1pb15nfny8jkvvj50i8czf4ahv26avnfycm4pz";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
# on Linux, the TMPDIR is /build which is the same prefix as this package
# remove once #35068 is merged
noAuditTmpdir = stdenv.isLinux;
postInstall = '' postInstall = ''
# Install bootstrap.sh # Install bootstrap.sh
mkdir -p $bin/libexec/buildkite-agent mkdir -p $bin/libexec/buildkite-agent
@ -44,6 +48,6 @@ buildGoPackage {
homepage = https://buildkite.com/docs/agent; homepage = https://buildkite.com/docs/agent;
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ pawelpacana zimbatm ]; maintainers = with maintainers; [ pawelpacana zimbatm ];
platforms = platforms.linux ++ platforms.darwin; platforms = platforms.unix;
}; };
} }

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "jenkins-${version}"; name = "jenkins-${version}";
version = "2.105"; version = "2.89.3";
src = fetchurl { src = fetchurl {
url = "http://mirrors.jenkins-ci.org/war/${version}/jenkins.war"; url = "http://mirrors.jenkins.io/war-stable/${version}/jenkins.war";
sha256 = "0q6xyjkqlrwjgf7rzmyy8m0w7lhqyavici76zzngg159xkyh5cfh"; sha256 = "0flqd3r1nip9wc8sy0kiqjivgx0zkpzlkbz6n3gb1plc73lpdwbr";
}; };
buildCommand = '' buildCommand = ''

View File

@ -2,14 +2,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "dtools-${version}"; name = "dtools-${version}";
version = "2.078.1"; version = "2.078.2";
srcs = [ srcs = [
(fetchFromGitHub { (fetchFromGitHub {
owner = "dlang"; owner = "dlang";
repo = "dmd"; repo = "dmd";
rev = "v${version}"; rev = "v${version}";
sha256 = "0b9lphh4g3r9cyzv4wcfppv9j3w952vvwv615za23acgwav3mqg2"; sha256 = "0x9q4aw4jl36dz7m5111y2sm8jdaj3zg36zhj6vqg1lqpdn3bhls";
name = "dmd"; name = "dmd";
}) })
(fetchFromGitHub { (fetchFromGitHub {
@ -28,23 +28,11 @@ stdenv.mkDerivation rec {
cd dtools cd dtools
''; '';
postPatch = ''
substituteInPlace posix.mak \
--replace "../dmd/generated/\$(OS)/release/\$(MODEL)/dmd" ${dmd.out}/bin/dmd
substituteInPlace posix.mak \
--replace gcc $CC
# To fix rdmd test with newer phobos
substituteInPlace rdmd.d \
--replace " std.stdiobase," ""
'';
nativeBuildInputs = [ dmd ]; nativeBuildInputs = [ dmd ];
buildInputs = [ curl ]; buildInputs = [ curl ];
makeCmd = '' makeCmd = ''
make -f posix.mak DMD=${dmd.out}/bin/dmd DMD_DIR=dmd make -f posix.mak DMD_DIR=dmd DMD=${dmd.out}/bin/dmd CC=${stdenv.cc}/bin/cc
''; '';
buildPhase = '' buildPhase = ''

View File

@ -0,0 +1,25 @@
{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "gotests-${version}";
version = "1.5.2";
rev = "v${version}";
goPackagePath = "github.com/cweill/gotests";
excludedPackages = "testdata";
goDeps = ./deps.nix;
src = fetchFromGitHub {
inherit rev;
owner = "cweill";
repo = "gotests";
sha256 = "0ff2jvpc1xb5jr6dv9izlpfavxaivzirqmdmicpznrqjz0d56pri";
};
meta = {
description = "Generate Go tests from your source code.";
homepage = https://github.com/cweill/gotests;
maintainers = with stdenv.lib.maintainers; [ vdemeester ];
license = stdenv.lib.licenses.asl20;
};
}

View File

@ -0,0 +1,11 @@
[
{
goPackagePath = "golang.org/x/tools";
fetch = {
type = "git";
url = "https://github.com/golang/tools";
rev = "96b5a5404f303f074e6117d832a9873c439508f0";
sha256 = "1h6r9xyp1v3w2x8d108vzghn65l6ia2h895irypmrwymfcp30y42";
};
}
]

View File

@ -7,15 +7,13 @@
, configuration ? "[]" , configuration ? "[]"
}: }:
# FIXME: fix hoogle search
let allPkgs = pkgs: mueval.defaultPkgs pkgs ++ [ pkgs.lambdabot-trusted ] ++ packages pkgs; let allPkgs = pkgs: mueval.defaultPkgs pkgs ++ [ pkgs.lambdabot-trusted ] ++ packages pkgs;
mueval' = mueval.override { mueval' = mueval.override {
inherit haskellPackages; inherit haskellPackages;
packages = allPkgs; packages = allPkgs;
}; };
bins = lib.makeBinPath ([ mueval' bins = lib.makeBinPath ([ mueval'
(haskellPackages.ghcWithPackages allPkgs) (haskellPackages.ghcWithHoogle allPkgs)
haskellPackages.unlambda haskellPackages.unlambda
haskellPackages.brainfuck haskellPackages.brainfuck
] ]

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "strace-${version}"; name = "strace-${version}";
version = "4.20"; version = "4.21";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/strace/${name}.tar.xz"; url = "mirror://sourceforge/strace/${name}.tar.xz";
sha256 = "08y5b07vb8jc7ak5xc3x2kx1ly6xiwv1gnppcqjs81kks66i9wsv"; sha256 = "1dvrwi6v9j6b9j6852zzlc61hxgiciadi1xsl89wzbzqlkxnahbd";
}; };
nativeBuildInputs = [ perl ]; nativeBuildInputs = [ perl ];

View File

@ -1,5 +1,6 @@
{ fetchFromGitHub, stdenv, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf, { fetchFromGitHub, stdenv, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf,
SDL2_mixer, freetype, gettext, Cocoa, libicns }: SDL2_mixer, freetype, gettext, Cocoa, libicns,
tiles ? true }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.C"; version = "0.C";
@ -13,36 +14,44 @@ stdenv.mkDerivation rec {
}; };
nativeBuildInputs = [ pkgconfig ] nativeBuildInputs = [ pkgconfig ]
++ stdenv.lib.optionals stdenv.isDarwin [ libicns ]; ++ stdenv.lib.optionals (tiles && stdenv.isDarwin) [ libicns ];
buildInputs = [ ncurses lua SDL2 SDL2_image SDL2_ttf SDL2_mixer freetype gettext ] buildInputs = with stdenv.lib; [ ncurses lua gettext ]
++ stdenv.lib.optionals stdenv.isDarwin [ Cocoa ]; ++ optionals tiles [ SDL2 SDL2_image SDL2_ttf SDL2_mixer freetype ]
++ optionals (tiles && stdenv.isDarwin) [ Cocoa ];
patches = [ ./patches/fix_locale_dir.patch ]; patches = [ ./patches/fix_locale_dir.patch ];
postPatch = '' postPatch = ''
patchShebangs . patchShebangs .
sed -i Makefile \
-e 's,-Werror,,g'
sed '1i#include <cmath>' \
-i src/{crafting,skill,weather_data,melee,vehicle,overmap,iuse_actor}.cpp
''; '';
makeFlags = [ makeFlags = with stdenv.lib; [
"PREFIX=$(out) LUA=1 TILES=1 SOUND=1 RELEASE=1 USE_HOME_DIR=1" "PREFIX=$(out)"
"LUA=1"
"RELEASE=1"
"USE_HOME_DIR=1"
# "LANGUAGES=all" # vanilla C:DDA installs all translations even without this flag! # "LANGUAGES=all" # vanilla C:DDA installs all translations even without this flag!
] ++ stdenv.lib.optionals stdenv.isDarwin [ ] ++ optionals tiles [
"NATIVE=osx CLANG=1" "TILES=1"
"SOUND=1"
] ++ optionals stdenv.isDarwin [
"NATIVE=osx"
"CLANG=1"
"OSX_MIN=10.6" # SDL for macOS only supports deploying on 10.6 and above "OSX_MIN=10.6" # SDL for macOS only supports deploying on 10.6 and above
] ++ optionals stdenv.cc.isGNU [
"WARNINGS+=-Wno-deprecated-declarations"
"WARNINGS+=-Wno-ignored-attributes"
] ++ optionals stdenv.cc.isClang [
"WARNINGS+=-Wno-inconsistent-missing-override"
]; ];
postBuild = stdenv.lib.optionalString stdenv.isDarwin '' postBuild = stdenv.lib.optionalString (tiles && stdenv.isDarwin) ''
# iconutil on macOS is not available in nixpkgs # iconutil on macOS is not available in nixpkgs
png2icns data/osx/AppIcon.icns data/osx/AppIcon.iconset/* png2icns data/osx/AppIcon.icns data/osx/AppIcon.iconset/*
''; '';
postInstall = stdenv.lib.optionalString stdenv.isDarwin '' postInstall = stdenv.lib.optionalString (tiles && stdenv.isDarwin) ''
app=$out/Applications/Cataclysm.app app=$out/Applications/Cataclysm.app
install -D -m 444 data/osx/Info.plist -t $app/Contents install -D -m 444 data/osx/Info.plist -t $app/Contents
install -D -m 444 data/osx/AppIcon.icns -t $app/Contents/Resources install -D -m 444 data/osx/AppIcon.icns -t $app/Contents/Resources
@ -83,7 +92,7 @@ stdenv.mkDerivation rec {
substances or radiation, now more closely resemble insects, birds or fish substances or radiation, now more closely resemble insects, birds or fish
than their original form. than their original form.
''; '';
homepage = http://en.cataclysmdda.com/; homepage = http://cataclysmdda.org/;
license = licenses.cc-by-sa-30; license = licenses.cc-by-sa-30;
maintainers = [ maintainers.skeidel ]; maintainers = [ maintainers.skeidel ];
platforms = platforms.unix; platforms = platforms.unix;

View File

@ -1,5 +1,6 @@
{ fetchFromGitHub, stdenv, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf, { fetchFromGitHub, stdenv, pkgconfig, ncurses, lua, SDL2, SDL2_image, SDL2_ttf,
SDL2_mixer, freetype, gettext, CoreFoundation, Cocoa }: SDL2_mixer, freetype, gettext, CoreFoundation, Cocoa,
tiles ? true }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "2017-12-09"; version = "2017-12-09";
@ -14,28 +15,38 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ ncurses lua SDL2 SDL2_image SDL2_ttf SDL2_mixer freetype gettext ] buildInputs = with stdenv.lib; [ ncurses lua gettext ]
++ stdenv.lib.optionals stdenv.isDarwin [ CoreFoundation Cocoa ]; ++ optionals stdenv.isDarwin [ CoreFoundation ]
++ optionals tiles [ SDL2 SDL2_image SDL2_ttf SDL2_mixer freetype ]
++ optionals (tiles && stdenv.isDarwin) [ Cocoa ];
patches = [ ./patches/fix_locale_dir_git.patch ]; patches = [ ./patches/fix_locale_dir_git.patch ];
postPatch = '' postPatch = ''
patchShebangs . patchShebangs .
sed -i Makefile \ sed -i data/xdg/com.cataclysmdda.cataclysm-dda.desktop \
-e 's,-Werror,,g' -e "s,\(Exec=\)\(cataclysm-tiles\),\1$out/bin/\2,"
sed '1i#include <cmath>' \
-i src/{crafting,skill,weather_data,melee,vehicle,overmap,iuse_actor}.cpp
''; '';
makeFlags = [ makeFlags = with stdenv.lib; [
"PREFIX=$(out) LUA=1 TILES=1 SOUND=1 RELEASE=1 USE_HOME_DIR=1" "PREFIX=$(out)"
"LUA=1"
"RELEASE=1"
"USE_HOME_DIR=1"
"LANGUAGES=all" "LANGUAGES=all"
] ++ stdenv.lib.optionals stdenv.isDarwin [ "VERSION=git-${version}-${substring 0 8 src.rev}"
"NATIVE=osx CLANG=1" ] ++ optionals tiles [
"TILES=1"
"SOUND=1"
] ++ optionals stdenv.isDarwin [
"NATIVE=osx"
"CLANG=1"
]; ];
postInstall = stdenv.lib.optionalString stdenv.isDarwin '' postInstall = with stdenv.lib; optionalString (tiles && !stdenv.isDarwin) ''
install -D -m 444 data/xdg/com.cataclysmdda.cataclysm-dda.desktop -T $out/share/applications/cataclysm-dda.desktop
install -D -m 444 data/xdg/cataclysm-dda.svg -t $out/share/icons/hicolor/scalable/apps
'' + optionalString (tiles && stdenv.isDarwin) ''
app=$out/Applications/Cataclysm.app app=$out/Applications/Cataclysm.app
install -D -m 444 data/osx/Info.plist -t $app/Contents install -D -m 444 data/osx/Info.plist -t $app/Contents
install -D -m 444 data/osx/AppIcon.icns -t $app/Contents/Resources install -D -m 444 data/osx/AppIcon.icns -t $app/Contents/Resources
@ -78,7 +89,7 @@ stdenv.mkDerivation rec {
substances or radiation, now more closely resemble insects, birds or fish substances or radiation, now more closely resemble insects, birds or fish
than their original form. than their original form.
''; '';
homepage = http://en.cataclysmdda.com/; homepage = http://cataclysmdda.org/;
license = licenses.cc-by-sa-30; license = licenses.cc-by-sa-30;
platforms = platforms.unix; platforms = platforms.unix;
}; };

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "apulse-${version}"; name = "apulse-${version}";
version = "0.1.10"; version = "0.1.11";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "i-rinat"; owner = "i-rinat";
repo = "apulse"; repo = "apulse";
rev = "v${version}"; rev = "v${version}";
sha256 = "018gaxn647wz1vjbr49hfrch9svnv0d1nzijc8ckb4fsr8vv95a1"; sha256 = "16l278q0czca2794fj388ql6qn1zrw24a0p6k7bayrrf5h32fdzd";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -0,0 +1,82 @@
{ stdenv, apulse, libpulseaudio, pkgconfig, intltool, autoreconfHook }:
stdenv.mkDerivation {
name = "libpressureaudio-${apulse.version}";
src = libpulseaudio.src;
nativeBuildInputs = [ pkgconfig intltool autoreconfHook ];
configurePhase = ":";
buildPhase = ":";
installPhase = ''
echo "Copying libraries from apulse."
mkdir -p $out/lib
ls ${apulse}/lib/apulse $out/lib
cp -a ${apulse}/lib/apulse/* $out/lib/
echo "Copying headers from pulseaudio."
mkdir -p $out/include/pulse
cp -a src/pulse/*.h $out/include/pulse
echo "Generating custom pkgconfig definitions."
mkdir -p $out/lib/pkgconfig
for a in libpulse.pc libpulse-simple.pc libpulse-mainloop-glib.pc ; do
cat > $out/lib/pkgconfig/$a << EOF
prefix=$out
libdir=$out/lib
includedir=$out/include
EOF
done
cat >> $out/lib/pkgconfig/libpulse.pc << EOF
Name: libpulse
Description: PulseAudio Client Interface
Version: ${libpulseaudio.version}-rebootstrapped
Libs: -L$out/lib -lpulse
Cflags: -I$out/include -D_REENTRANT
EOF
cat >> $out/lib/pkgconfig/libpulse-simple.pc << EOF
Name: libpulse-simple
Description: PulseAudio Simplified Synchronous Client Interface
Version: ${libpulseaudio.version}-rebootstrapped
Libs: -L$out/lib -lpulse-simple
Cflags: -I$out/include -D_REENTRANT
Requires: libpulse
EOF
cat >> $out/lib/pkgconfig/libpulse-mainloop-glib.pc << EOF
Name: libpulse-mainloop-glib
Description: PulseAudio GLib 2.0 Main Loop Wrapper
Version: ${libpulseaudio.version}-rebootstrapped
Libs: -L$out/lib -lpulse-mainloop-glib
Cflags: -I$out/include -D_REENTRANT
Requires: libpulse glib-2.0
EOF
'';
meta = apulse.meta // {
description = "libpulseaudio without any sound daemons over pure ALSA";
longDescription = ''
apulse (${apulse.meta.homepage}) implements most of libpulseaudio
API over pure ALSA in 5% LOC of the original PulseAudio.
But apulse is made to be used as a wrapper that substitutes its
replacement libs into LD_LIBRARY_PATH. The problem with that is
that you still have to link against the original libpulseaudio.
pressureaudio (http://git.r-36.net/pressureaudio/) wraps apulse
with everything you need to replace libpulseaudio completely.
This derivation is a reimplementation of pressureaudio in pure
nix.
You can simply override libpulseaudio with this and most
packages would just work.
'';
};
}

View File

@ -152,8 +152,8 @@
moduleSrc = fetchFromGitHub { moduleSrc = fetchFromGitHub {
owner = "pagespeed"; owner = "pagespeed";
repo = "ngx_pagespeed"; repo = "ngx_pagespeed";
rev = "v${version}-beta"; rev = "v${version}-stable";
sha256 = "176skx7zmi7islc1hmdxcynix4lkvgmr78lknn13s9gskc7qi25w"; sha256 = "0ry7vmkb2bx0sspl1kgjlrzzz6lbz07313ks2lr80rrdm2zb16wp";
}; };
ngx_pagespeed = pkgs.runCommand ngx_pagespeed = pkgs.runCommand

View File

@ -0,0 +1,53 @@
{ stdenv, fetchurl
, openssl, readline, ncurses, zlib }:
let
os = if stdenv.isLinux then "1"
else if stdenv.isFreeBSD then "2"
else if stdenv.isSunOS then "3"
else if stdenv.isDarwin then "4"
else if stdenv.isOpenBSD then "5"
else "";
cpuBits = if stdenv.is64bit then "2" else "1";
in
stdenv.mkDerivation rec {
name = "softether-${version}";
version = "4.25";
build = "9656";
compiledDate = "2018.01.15";
dataDir = "/var/lib/softether";
src = fetchurl {
url = "http://www.softether-download.com/files/softether/v${version}-${build}-rtm-${compiledDate}-tree/Source_Code/softether-src-v${version}-${build}-rtm.tar.gz";
sha256 = "1y1m8lf0xfh7m70d15wj2jjf5a5qhi3j49ciwqmsscsqvb1xwimr";
};
buildInputs = [ openssl readline ncurses zlib ];
preConfigure = ''
echo "${os}
${cpuBits}
" | ./configure
rm configure
'';
buildPhase = ''
mkdir -p $out/bin
sed -i \
-e "/INSTALL_BINDIR=/s|/usr/bin|/bin|g" \
-e "/_DIR=/s|/usr|${dataDir}|g" \
-e "s|\$(INSTALL|$out/\$(INSTALL|g" \
-e "/echo/s|echo $out/|echo |g" \
Makefile
'';
meta = with stdenv.lib; {
description = "An Open-Source Free Cross-platform Multi-protocol VPN Program";
homepage = https://www.softether.org/;
license = licenses.gpl2;
maintainers = [ maintainers.rick68 ];
platforms = platforms.linux;
};
}

View File

@ -13,13 +13,11 @@ stdenv.mkDerivation rec {
outputs = [ "out" ]; outputs = [ "out" ];
patchPhase = '' patches = [ ./wallabag-data.patch ]; # exposes $WALLABAG_DATA
prePatch = ''
rm Makefile # use the "shared hosting" package with bundled dependencies rm Makefile # use the "shared hosting" package with bundled dependencies
substituteInPlace app/AppKernel.php \ '';
--replace "__DIR__" "getenv('WALLABAG_DATA')"
substituteInPlace var/bootstrap.php.cache \
--replace "\$this->rootDir = \$this->getRootDir()" "\$this->rootDir = getenv('WALLABAG_DATA')"
''; # exposes $WALLABAG_DATA
installPhase = '' installPhase = ''
mkdir $out/ mkdir $out/
@ -31,11 +29,12 @@ stdenv.mkDerivation rec {
longDescription = '' longDescription = ''
wallabag is a self hostable application for saving web pages. wallabag is a self hostable application for saving web pages.
To use, point the environment variable $WALLABAG_DATA to a directory called `app` that contains the folder `config` with wallabag's configuration files. These need to be updated every package upgrade. In `app`'s parent folder, a directory called `var` containing wallabag's data will be created. Point the environment variable $WALLABAG_DATA to a data directory that contains the folder `app/config` which must be a clone of wallabag's configuration files with your customized `parameters.yml`. These need to be updated every package upgrade.
After a package upgrade, empty the `var/cache` folder. After a package upgrade, empty the `var/cache` folder.
''; '';
license = licenses.mit; license = licenses.mit;
homepage = http://wallabag.org; homepage = http://wallabag.org;
maintainers = with maintainers; [ schneefux ];
platforms = platforms.all; platforms = platforms.all;
}; };
} }

View File

@ -0,0 +1,26 @@
diff --git a/app/AppKernel.php b/app/AppKernel.php
index 40726f05..7d44e600 100644
--- a/app/AppKernel.php
+++ b/app/AppKernel.php
@@ -58,14 +58,19 @@ class AppKernel extends Kernel
return $bundles;
}
+ public function getProjectDir()
+ {
+ return getenv('WALLABAG_DATA') ?: dirname(__DIR__);
+ }
+
public function getCacheDir()
{
- return dirname(__DIR__) . '/var/cache/' . $this->getEnvironment();
+ return $this->getProjectDir() . '/var/cache/' . $this->getEnvironment();
}
public function getLogDir()
{
- return dirname(__DIR__) . '/var/logs';
+ return $this->getProjectDir() . '/var/logs';
}
public function registerContainerConfiguration(LoaderInterface $loader)

View File

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, xorg, pixman, pkgconfig, AppKit, Xplugin }: { stdenv, lib, fetchurl, xorg, pixman, pkgconfig, AppKit, Xplugin, darwin }:
let version = "1.3.1"; let version = "1.3.1";
in stdenv.mkDerivation { in stdenv.mkDerivation {
@ -19,13 +19,11 @@ in stdenv.mkDerivation {
xorg.libXext xorg.libXext
pixman pixman
pkgconfig pkgconfig
AppKit Xplugin AppKit Xplugin darwin.apple_sdk.frameworks.Foundation
]; ];
NIX_CFLAGS_COMPILE = "-F/System/Library/Frameworks -I/usr/include";
NIX_LDFLAGS = stdenv.lib.optional stdenv.isDarwin
"/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation";
meta = with lib; { meta = with lib; {
license = licenses.apsl20; license = licenses.apsl20;
platforms = platforms.darwin; platforms = platforms.darwin;
maintainers = with maintainers; [ matthewbauer ];
}; };
} }

View File

@ -22,6 +22,9 @@ in
mkdir -p "$out/etc/bash_completion.d" mkdir -p "$out/etc/bash_completion.d"
cp -v $out/share/autojump/autojump.bash "$out/etc/bash_completion.d" cp -v $out/share/autojump/autojump.bash "$out/etc/bash_completion.d"
mkdir -p $out/share/fish/vendor_completions.d/
cp -v $out/share/autojump/autojump.fish "$out/share/fish/vendor_completions.d/autojump.fish"
cat <<SCRIPT > $out/bin/autojump-share cat <<SCRIPT > $out/bin/autojump-share
#!/bin/sh #!/bin/sh
# Run this script to find the autojump shared folder where all the shell # Run this script to find the autojump shared folder where all the shell

View File

@ -17,9 +17,9 @@ rustPlatform.buildRustPackage rec {
mkdir -p "$out/man/man1" mkdir -p "$out/man/man1"
cp "$src/doc/fd.1" "$out/man/man1" cp "$src/doc/fd.1" "$out/man/man1"
mkdir -p "$out/share/"{bash-completion/completions,fish/completions,zsh/site-functions} mkdir -p "$out/share/"{bash-completion/completions,fish/vendor_completions.d,zsh/site-functions}
cp target/release/build/fd-find-*/out/fd.bash "$out/share/bash-completion/completions/" cp target/release/build/fd-find-*/out/fd.bash "$out/share/bash-completion/completions/"
cp target/release/build/fd-find-*/out/fd.fish "$out/share/fish/completions/" cp target/release/build/fd-find-*/out/fd.fish "$out/share/fish/vendor_completions.d/"
cp target/release/build/fd-find-*/out/_fd "$out/share/zsh/site-functions/" cp target/release/build/fd-find-*/out/_fd "$out/share/zsh/site-functions/"
''; '';

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl }: { stdenv, fetchurl, fetchpatch }:
stdenv.mkDerivation { stdenv.mkDerivation {
name = "figlet-2.2.5"; name = "figlet-2.2.5";
@ -9,12 +9,17 @@ stdenv.mkDerivation {
sha256 = "0za1ax15x7myjl8jz271ybly8ln9kb9zhm1gf6rdlxzhs07w925z"; sha256 = "0za1ax15x7myjl8jz271ybly8ln9kb9zhm1gf6rdlxzhs07w925z";
}; };
installPhase = "make prefix=$out install"; patches = [
(fetchpatch {
url = https://git.alpinelinux.org/cgit/aports/plain/main/figlet/musl-fix-cplusplus-decls.patch?h=3.4-stable&id=71776c73a6f04b6f671430f702bcd40b29d48399;
name = "musl-fix-cplusplus-decls.patch";
sha256 = "1720zgrfk9makznqkbjrnlxm7nnhk6zx7g458fv53337n3g3zn7j";
})
];
preConfigure = '' makeFlags = [ "prefix=$(out)" "CC:=$(CC)" "LD:=$(CC)" ];
mkdir -p $out/{man/man6,bin}
makeFlags="DESTDIR=$out/bin MANDIR=$out/man/man6 DEFAULTFONTDIR=$out/share/figlet CC=cc LD=cc" doCheck = true;
'';
meta = { meta = {
description = "Program for making large letters out of ordinary text"; description = "Program for making large letters out of ordinary text";

View File

@ -1,4 +1,6 @@
{ stdenv, fetchgit, perl, cdrkit, syslinux, xz, openssl }: { stdenv, lib, fetchgit, perl, cdrkit, syslinux, xz, openssl
, embedScript ? null
}:
let let
date = "20170922"; date = "20170922";
@ -24,7 +26,7 @@ stdenv.mkDerivation {
makeFlags = makeFlags =
[ "ECHO_E_BIN_ECHO=echo" "ECHO_E_BIN_ECHO_E=echo" # No /bin/echo here. [ "ECHO_E_BIN_ECHO=echo" "ECHO_E_BIN_ECHO_E=echo" # No /bin/echo here.
"ISOLINUX_BIN_LIST=${syslinux}/share/syslinux/isolinux.bin" "ISOLINUX_BIN_LIST=${syslinux}/share/syslinux/isolinux.bin"
]; ] ++ lib.optional (embedScript != null) "EMBED=${embedScript}";
enabledOptions = [ "DOWNLOAD_PROTO_HTTPS" ]; enabledOptions = [ "DOWNLOAD_PROTO_HTTPS" ];
@ -46,6 +48,8 @@ stdenv.mkDerivation {
ln -s undionly.kpxe $out/undionly.kpxe.0 ln -s undionly.kpxe $out/undionly.kpxe.0
''; '';
enableParallelBuilding = true;
meta = with stdenv.lib; meta = with stdenv.lib;
{ description = "Network boot firmware"; { description = "Network boot firmware";
homepage = http://ipxe.org/; homepage = http://ipxe.org/;

View File

@ -0,0 +1,31 @@
{ stdenv, fetchgit }:
stdenv.mkDerivation rec {
name = "ministat-${version}";
version = "20150715-1";
src = fetchgit {
url = "https://git.decadent.org.uk/git/ministat.git";
rev = "refs/tags/debian/${version}";
sha256 = "1p4g0yqgsy4hiqhr8gqp8d38zxzrss5qz70s0bw3i2pg4w668k6f";
};
postPatch = ''
patch -p1 < debian/patches/fix-ctype-usage.patch
patch -p1 < debian/patches/not-bsd
'';
installPhase = ''
mkdir -p $out/bin $out/share/man/man1
cp ministat $out/bin
cp ministat.1 $out/share/man/man1/
'';
meta = with stdenv.lib; {
description = "Simple tool for statistical comparison of data sets";
homepage = https://git.decadent.org.uk/gitweb/?p=ministat.git;
license = licenses.beerware;
maintainers = [ maintainers.dezgeg ];
platforms = platforms.linux;
};
}

View File

@ -2,13 +2,13 @@
pythonPackages.buildPythonApplication rec { pythonPackages.buildPythonApplication rec {
name = "yle-dl-${version}"; name = "yle-dl-${version}";
version = "2.30"; version = "2.31";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "aajanki"; owner = "aajanki";
repo = "yle-dl"; repo = "yle-dl";
rev = version; rev = version;
sha256 = "08qqsg0rmp4xfzmla81f0a4vblqfw3rh90wvxm91vbm6937b4i7i"; sha256 = "0k93p9csyjm0w33diwl5s22kzs3g78jl3n9k8nxxpqrybfjl912f";
}; };
propagatedBuildInputs = with pythonPackages; [ lxml pyamf pycrypto requests future ffmpeg ]; propagatedBuildInputs = with pythonPackages; [ lxml pyamf pycrypto requests future ffmpeg ];

View File

@ -0,0 +1,32 @@
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, dbus, json_c, ncurses, connman }:
stdenv.mkDerivation rec {
name = "connman-ncurses-${version}";
version = "2015-07-21";
src = fetchFromGitHub {
owner = "eurogiciel-oss";
repo = "connman-json-client";
rev = "3c34b2ee62d2e188090d20e7ed2fd94bab9c47f2";
sha256 = "1831r0776fv481g8kgy1dkl750pzv47835dw11sslq2k6mm6i9p1";
};
nativeBuildInputs = [ autoreconfHook pkgconfig ];
buildInputs = [ dbus ncurses json_c connman ];
NIX_CFLAGS_COMPILE = "-Wno-error";
installPhase = ''
mkdir -p "$out/bin"
cp -va connman_ncurses "$out/bin/"
'';
meta = with stdenv.lib; {
description = "Simple ncurses UI for connman";
homepage = https://github.com/eurogiciel-oss/connman-json-client;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = [ maintainers.romildo ];
};
}

View File

@ -1,11 +1,11 @@
{ stdenv, fetchurl, openssl, fetchpatch }: { stdenv, fetchurl, openssl, fetchpatch }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "iperf-3.3"; name = "iperf-3.4";
src = fetchurl { src = fetchurl {
url = "http://downloads.es.net/pub/iperf/${name}.tar.gz"; url = "http://downloads.es.net/pub/iperf/${name}.tar.gz";
sha256 = "1n442bjkm1dvzmcj8z1i99yrmba489yz3f5v27ybymhh4mqn4nbg"; sha256 = "04ciywjhklzfrnp40675ssnkqxv90ad4v56i8vh8bpsiswr86lki";
}; };
buildInputs = [ openssl ]; buildInputs = [ openssl ];

View File

@ -0,0 +1,27 @@
{ stdenv, fetchFromGitHub, openssl }:
stdenv.mkDerivation rec {
name = "hash_extender-${version}";
version = "2017-04-10";
src = fetchFromGitHub {
owner = "iagox86";
repo = "hash_extender";
rev = "d27581e062dd0b534074e11d7d311f65a6d7af21";
sha256 = "1npwbgqaynjh5x39halw43i116v89sxkpa1g1bbvc1lpi8hkhhcb";
};
buildInputs = [ openssl ];
installPhase = ''
mkdir -p $out/bin
cp hash_extender $out/bin
'';
meta = with stdenv.lib; {
description = "Tool to automate hash length extension attacks";
homepage = https://github.com/iagox86/hash_extender;
license = licenses.bsd3;
maintainers = with maintainers; [ geistesk ];
};
}

View File

@ -6,11 +6,11 @@
let inherit (stdenv.lib) optionals; in let inherit (stdenv.lib) optionals; in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ddrescue-1.22"; name = "ddrescue-1.23";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/ddrescue/${name}.tar.lz"; url = "mirror://gnu/ddrescue/${name}.tar.lz";
sha256 = "19qhx9ggkkjl0g3a88g501wmybkj1y4n5lm5kp0km0blh0p7p189"; sha256 = "13cd6c0x91zq10vdlyl6r5rib47bmsn5sshmkin3igwj8pa2vbm9";
}; };
nativeBuildInputs = [ lzip ]; nativeBuildInputs = [ lzip ];

View File

@ -1,8 +1,8 @@
{ stdenv, fetchFromGitHub, libaio, python, zlib }: { stdenv, fetchFromGitHub, libaio, python, zlib }:
let let
version = "3.3"; version = "3.4";
sha256 = "0ipdpdn6rlsbppqjddyyk8c6rg1dl17d62dwwm0ijybi0m7imy1p"; sha256 = "0img4288ygil36bsgpr4yh06zfbp3mdkf7zbyqjcrjgpr4mai9zf";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View File

@ -489,6 +489,8 @@ with pkgs;
apulse = callPackage ../misc/apulse { }; apulse = callPackage ../misc/apulse { };
libpressureaudio = callPackage ../misc/apulse/pressureaudio.nix { };
archivemount = callPackage ../tools/filesystems/archivemount { }; archivemount = callPackage ../tools/filesystems/archivemount { };
arandr = callPackage ../tools/X11/arandr { }; arandr = callPackage ../tools/X11/arandr { };
@ -1573,6 +1575,8 @@ with pkgs;
connman-gtk = callPackage ../tools/networking/connman-gtk { }; connman-gtk = callPackage ../tools/networking/connman-gtk { };
connman-ncurses = callPackage ../tools/networking/connman-ncurses { };
connman-notify = callPackage ../tools/networking/connman-notify { }; connman-notify = callPackage ../tools/networking/connman-notify { };
connmanui = callPackage ../tools/networking/connmanui { }; connmanui = callPackage ../tools/networking/connmanui { };
@ -2697,6 +2701,8 @@ with pkgs;
hashcat = callPackage ../tools/security/hashcat { }; hashcat = callPackage ../tools/security/hashcat { };
hash_extender = callPackage ../tools/security/hash_extender { };
hash-slinger = callPackage ../tools/security/hash-slinger { }; hash-slinger = callPackage ../tools/security/hash-slinger { };
hal-flash = callPackage ../os-specific/linux/hal-flash { }; hal-flash = callPackage ../os-specific/linux/hal-flash { };
@ -3154,6 +3160,8 @@ with pkgs;
minisign = callPackage ../tools/security/minisign { }; minisign = callPackage ../tools/security/minisign { };
ministat = callPackage ../tools/misc/ministat { };
mmv = callPackage ../tools/misc/mmv { }; mmv = callPackage ../tools/misc/mmv { };
morituri = callPackage ../applications/audio/morituri { }; morituri = callPackage ../applications/audio/morituri { };
@ -5740,7 +5748,8 @@ with pkgs;
compcert = callPackage ../development/compilers/compcert { }; compcert = callPackage ../development/compilers/compcert { };
cpp-gsl = callPackage ../development/libraries/cpp-gsl { };
# Users installing via `nix-env` will likely be using the REPL, # Users installing via `nix-env` will likely be using the REPL,
# which has a hard dependency on Z3, so make sure it is available. # which has a hard dependency on Z3, so make sure it is available.
cryptol = haskellPackages.cryptol.overrideDerivation (oldAttrs: { cryptol = haskellPackages.cryptol.overrideDerivation (oldAttrs: {
@ -6360,6 +6369,8 @@ with pkgs;
julia = julia_06; julia = julia_06;
jwasm = callPackage ../development/compilers/jwasm { };
kotlin = callPackage ../development/compilers/kotlin { }; kotlin = callPackage ../development/compilers/kotlin { };
lazarus = callPackage ../development/compilers/fpc/lazarus.nix { lazarus = callPackage ../development/compilers/fpc/lazarus.nix {
@ -12319,7 +12330,8 @@ with pkgs;
softether_4_18 = callPackage ../servers/softether/4.18.nix { }; softether_4_18 = callPackage ../servers/softether/4.18.nix { };
softether_4_20 = callPackage ../servers/softether/4.20.nix { }; softether_4_20 = callPackage ../servers/softether/4.20.nix { };
softether = softether_4_20; softether_4_25 = callPackage ../servers/softether/4.25.nix { };
softether = softether_4_25;
qboot = callPackage ../applications/virtualization/qboot { stdenv = stdenv_32bit; }; qboot = callPackage ../applications/virtualization/qboot { stdenv = stdenv_32bit; };
@ -13419,6 +13431,8 @@ with pkgs;
gomodifytags = callPackage ../development/tools/gomodifytags { }; gomodifytags = callPackage ../development/tools/gomodifytags { };
gotests = callPackage ../development/tools/gotests { };
gogoclient = callPackage ../os-specific/linux/gogoclient { }; gogoclient = callPackage ../os-specific/linux/gogoclient { };
nss_ldap = callPackage ../os-specific/linux/nss_ldap { }; nss_ldap = callPackage ../os-specific/linux/nss_ldap { };
@ -13869,6 +13883,8 @@ with pkgs;
faba-mono-icons = callPackage ../data/icons/faba-mono-icons { }; faba-mono-icons = callPackage ../data/icons/faba-mono-icons { };
fixedsys-excelsior = callPackage ../data/fonts/fixedsys-excelsior { };
emacs-all-the-icons-fonts = callPackage ../data/fonts/emacs-all-the-icons-fonts { }; emacs-all-the-icons-fonts = callPackage ../data/fonts/emacs-all-the-icons-fonts { };
emojione = callPackage ../data/fonts/emojione { emojione = callPackage ../data/fonts/emojione {
@ -17379,6 +17395,8 @@ with pkgs;
surf = callPackage ../applications/networking/browsers/surf { gtk = gtk2; }; surf = callPackage ../applications/networking/browsers/surf { gtk = gtk2; };
sunvox = callPackage ../applications/audio/sunvox { };
swh_lv2 = callPackage ../applications/audio/swh-lv2 { }; swh_lv2 = callPackage ../applications/audio/swh-lv2 { };
sylpheed = callPackage ../applications/networking/mailreaders/sylpheed { }; sylpheed = callPackage ../applications/networking/mailreaders/sylpheed { };
@ -17985,6 +18003,8 @@ with pkgs;
); );
}; };
wsjtx = qt5.callPackage ../applications/misc/wsjtx { };
wtftw = callPackage ../applications/window-managers/wtftw {}; wtftw = callPackage ../applications/window-managers/wtftw {};
wxhexeditor = callPackage ../applications/editors/wxhexeditor { }; wxhexeditor = callPackage ../applications/editors/wxhexeditor { };
@ -18359,6 +18379,7 @@ with pkgs;
cataclysm-dda = callPackage ../games/cataclysm-dda { cataclysm-dda = callPackage ../games/cataclysm-dda {
inherit (darwin.apple_sdk.frameworks) Cocoa; inherit (darwin.apple_sdk.frameworks) Cocoa;
ncurses = ncurses5;
}; };
cataclysm-dda-git = callPackage ../games/cataclysm-dda/git.nix { cataclysm-dda-git = callPackage ../games/cataclysm-dda/git.nix {

View File

@ -331,13 +331,20 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
Dafny = buildDotnetPackage rec { Dafny = buildDotnetPackage rec {
baseName = "Dafny"; baseName = "Dafny";
version = "1.9.8"; version = "2.1.0";
src = fetchurl { src = fetchurl {
url = "https://github.com/Microsoft/dafny/archive/v${version}.tar.gz"; url = "https://github.com/Microsoft/dafny/archive/v${version}.tar.gz";
sha256 = "0n4pk4cv7d2zsn4xmyjlxvpfl9avq79r06c7kzmrng24p3k4qj6s"; sha256 = "1iyhy0zpi6wvqif7826anzgdipgsy5bk775ds9qqwfw27j7x6fy5";
}; };
postPatch = ''
sed -i \
-e 's/ Visible="False"//' \
-e "s/Exists(\$(CodeContractsInstallDir))/Exists('\$(CodeContractsInstallDir)')/" \
Source/*/*.csproj
'';
preBuild = '' preBuild = ''
ln -s ${pkgs.z3} Binaries/z3 ln -s ${pkgs.z3} Binaries/z3
''; '';
@ -345,7 +352,7 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
buildInputs = [ Boogie ]; buildInputs = [ Boogie ];
xBuildFiles = [ "Source/Dafny.sln" ]; xBuildFiles = [ "Source/Dafny.sln" ];
xBuildFlags = [ ]; xBuildFlags = [ "/p:Configuration=Checked" "/p:Platform=Any CPU" "/t:Rebuild" ];
outputFiles = [ "Binaries/*" ]; outputFiles = [ "Binaries/*" ];