Merge branch 'master' into staging

* master: (53 commits)
  hashcat: 4.0.0 -> 4.0.1
  vault: add nixos test
  emem: 0.2.48 -> 0.2.50
  nixos/nat: add dmzHost option (#32257)
  vulnix: 1.3.4 -> 1.4.0
  linux-4.13: mark as insecure (+required generic changes)
  vault: 0.8.3 -> 0.9.0
  gox: 20140904 -> 0.4.0
  guitarix: 0.35.6 -> 0.36.1
  geolite-legacy: 2017-10-25 -> 2017-12-02
  premake5: 5.0.0pre.alpha.11 -> 5.0.0-alpha12
  otfcc: build with ninja
  python/hetzner: 0.7.5 -> 0.8.0
  linux-testing: 4.15-rc1 -> 4.15-rc2
  Revert "linux_4_13: Remove, no longer supported."
  jenkins: 2.92 -> 2.93
  psc-package: 0.2.4 -> 0.2.5
  dino: 2017-09-26 -> 2017-12-03
  gnome3.gpaste: fix keybindings path
  plasma: 5.11.3 -> 5.11.4
  ...
This commit is contained in:
Orivej Desh 2017-12-04 15:25:34 +00:00
commit 59bcd86640
70 changed files with 741 additions and 372 deletions

View file

@ -219,6 +219,14 @@ rec {
*/
escapeShellArgs = concatMapStringsSep " " escapeShellArg;
/* Turn a string into a Nix expression representing that string
Example:
escapeNixString "hello\${}\n"
=> "\"hello\\\${}\\n\""
*/
escapeNixString = s: escape ["$"] (builtins.toJSON s);
/* Obsolete - use replaceStrings instead. */
replaceChars = builtins.replaceStrings or (
del: new: s:

View file

@ -174,6 +174,13 @@ rec {
merge = mergeOneOption;
};
strMatching = pattern: mkOptionType {
name = "strMatching ${escapeNixString pattern}";
description = "string matching the pattern ${pattern}";
check = x: str.check x && builtins.match pattern x != null;
inherit (str) merge;
};
# Merge multiple definitions by concatenating them (with the given
# separator between the values).
separatedString = sep: mkOptionType rec {

View file

@ -115,13 +115,14 @@ hardware.opengl.driSupport32Bit = true;
<para>Support for Synaptics touchpads (found in many laptops such as
the Dell Latitude series) can be enabled as follows:
<programlisting>
services.xserver.synaptics.enable = true;
services.xserver.libinput.enable = true;
</programlisting>
The driver has many options (see <xref linkend="ch-options"/>). For
instance, the following enables two-finger scrolling:
instance, the following disables tap-to-click behavior:
<programlisting>
services.xserver.synaptics.twoFingerScroll = true;
services.xserver.libinput.tapping = false;
</programlisting>
Note: the use of <literal>services.xserver.synaptics</literal> is deprecated since NixOS 17.09.
</para>
</simplesect>

View file

@ -110,6 +110,12 @@
<listitem><para>A string. Multiple definitions are concatenated with a
collon <literal>":"</literal>.</para></listitem>
</varlistentry>
<varlistentry>
<term><varname>types.strMatching</varname></term>
<listitem><para>A string matching a specific regular expression. Multiple
definitions cannot be merged. The regular expression is processed using
<literal>builtins.match</literal>.</para></listitem>
</varlistentry>
</variablelist>
</section>

View file

@ -19,6 +19,33 @@ stdenv.mkDerivation {
# Add the closures of the top-level store objects.
storePaths=$(perl ${pathsFromGraph} closure-*)
# If a Hydra slave happens to have store paths with bad permissions/mtime,
# abort now so that they don't end up in ISO images in the channel.
# https://github.com/NixOS/nixpkgs/issues/32242
hasBadPaths=""
for path in $storePaths; do
if [ -h "$path" ]; then
continue
fi
mtime=$(stat -c %Y "$path")
mode=$(stat -c %a "$path")
if [ "$mtime" != 1 ]; then
echo "Store path '$path' has an invalid mtime."
hasBadPaths=1
fi
if [ "$mode" != 444 ] && [ "$mode" != 555 ]; then
echo "Store path '$path' has invalid permissions."
hasBadPaths=1
fi
done
if [ -n "$hasBadPaths" ]; then
echo "You have bad paths in your store, please fix them."
exit 1
fi
# Also include a manifest of the closures in a format suitable
# for nix-store --load-db.
printRegistration=1 perl ${pathsFromGraph} closure-* > nix-path-registration

View file

@ -588,6 +588,7 @@
./services/system/cloud-init.nix
./services/system/dbus.nix
./services/system/earlyoom.nix
./services/system/localtime.nix
./services/system/kerberos.nix
./services/system/nscd.nix
./services/system/saslauthd.nix

View file

@ -126,6 +126,7 @@ let
[${tun.name}]
type = client
destination = ${tun.destination}
destinationport = ${toString tun.destinationPort}
keys = ${tun.keys}
address = ${tun.address}
port = ${toString tun.port}
@ -137,15 +138,15 @@ let
'')
}
${flip concatMapStrings
(collect (tun: tun ? port && tun ? host) cfg.inTunnels)
(tun: let portStr = toString tun.port; in ''
(collect (tun: tun ? port && tun ? address) cfg.inTunnels)
(tun: ''
[${tun.name}]
type = server
destination = ${tun.destination}
keys = ${tun.keys}
host = ${tun.address}
port = ${tun.port}
inport = ${tun.inPort}
port = ${toString tun.port}
inport = ${toString tun.inPort}
accesslist = ${builtins.concatStringsSep "," tun.accessList}
'')
}
@ -405,7 +406,13 @@ in
default = {};
type = with types; loaOf (submodule (
{ name, config, ... }: {
options = commonTunOpts name;
options = {
destinationPort = mkOption {
type = types.int;
default = 0;
description = "Connect to particular port at destination.";
};
} // commonTunOpts name;
config = {
name = mkDefault name;
};

View file

@ -53,6 +53,12 @@ let
-j DNAT --to-destination ${fwd.destination}
'') cfg.forwardPorts}
${optionalString (cfg.dmzHost != null) ''
iptables -w -t nat -A nixos-nat-pre \
-i ${cfg.externalInterface} -j DNAT \
--to-destination ${cfg.dmzHost}
''}
# Append our chains to the nat tables
iptables -w -t nat -A PREROUTING -j nixos-nat-pre
iptables -w -t nat -A POSTROUTING -j nixos-nat-post
@ -125,15 +131,15 @@ in
type = with types; listOf (submodule {
options = {
sourcePort = mkOption {
type = types.int;
type = types.either types.int (types.strMatching "[[:digit:]]+:[[:digit:]]+");
example = 8080;
description = "Source port of the external interface";
description = "Source port of the external interface; to specify a port range, use a string with a colon (e.g. \"60000:61000\")";
};
destination = mkOption {
type = types.str;
example = "10.0.0.1:80";
description = "Forward connection to destination ip:port";
description = "Forward connection to destination ip:port; to specify a port range, use ip:start-end";
};
proto = mkOption {
@ -153,6 +159,17 @@ in
'';
};
networking.nat.dmzHost = mkOption {
type = types.nullOr types.str;
default = null;
example = "10.0.0.1";
description =
''
The local IP address to which all traffic that does not match any
forwarding rule is forwarded.
'';
};
};

View file

@ -9,6 +9,26 @@ let
opt = name: value: optionalString (value != null) "${name} ${value}";
optint = name: value: optionalString (value != null && value != 0) "${name} ${toString value}";
isolationOptions = {
type = types.listOf (types.enum [
"IsolateClientAddr"
"IsolateSOCKSAuth"
"IsolateClientProtocol"
"IsolateDestPort"
"IsolateDestAddr"
]);
default = [];
example = [
"IsolateClientAddr"
"IsolateSOCKSAuth"
"IsolateClientProtocol"
"IsolateDestPort"
"IsolateDestAddr"
];
description = "Tor isolation options";
};
torRc = ''
User tor
DataDirectory ${torDirectory}
@ -20,10 +40,20 @@ let
${optint "ControlPort" cfg.controlPort}
''
# Client connection config
+ optionalString cfg.client.enable ''
SOCKSPort ${cfg.client.socksListenAddress} IsolateDestAddr
+ optionalString cfg.client.enable ''
SOCKSPort ${cfg.client.socksListenAddress} ${toString cfg.client.socksIsolationOptions}
SOCKSPort ${cfg.client.socksListenAddressFaster}
${opt "SocksPolicy" cfg.client.socksPolicy}
${optionalString cfg.client.transparentProxy.enable ''
TransPort ${cfg.client.transparentProxy.listenAddress} ${toString cfg.client.transparentProxy.isolationOptions}
''}
${optionalString cfg.client.dns.enable ''
DNSPort ${cfg.client.dns.listenAddress} ${toString cfg.client.dns.isolationOptions}
AutomapHostsOnResolve 1
AutomapHostsSuffixes ${concatStringsSep "," cfg.client.dns.automapHostsSuffixes}
''}
''
# Relay config
+ optionalString cfg.relay.enable ''
@ -154,6 +184,55 @@ in
'';
};
socksIsolationOptions = mkOption (isolationOptions // {
default = ["IsolateDestAddr"];
});
transparentProxy = {
enable = mkOption {
type = types.bool;
default = false;
description = "Whether to enable tor transaprent proxy";
};
listenAddress = mkOption {
type = types.str;
default = "127.0.0.1:9040";
example = "192.168.0.1:9040";
description = ''
Bind transparent proxy to this address.
'';
};
isolationOptions = mkOption isolationOptions;
};
dns = {
enable = mkOption {
type = types.bool;
default = false;
description = "Whether to enable tor dns resolver";
};
listenAddress = mkOption {
type = types.str;
default = "127.0.0.1:9053";
example = "192.168.0.1:9053";
description = ''
Bind tor dns to this address.
'';
};
isolationOptions = mkOption isolationOptions;
automapHostsSuffixes = mkOption {
type = types.listOf types.str;
default = [".onion" ".exit"];
example = [".onion"];
description = "List of suffixes to use with automapHostsOnResolve";
};
};
privoxy.enable = mkOption {
type = types.bool;
default = true;

View file

@ -0,0 +1,60 @@
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.localtime;
in {
options = {
services.localtime = {
enable = mkOption {
default = false;
description = ''
Enable <literal>localtime</literal>, simple daemon for keeping the system
timezone up-to-date based on the current location. It uses geoclue2 to
determine the current location and systemd-timedated to actually set
the timezone.
'';
};
};
};
config = mkIf cfg.enable {
services.geoclue2.enable = true;
security.polkit.extraConfig = ''
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.timedate1.set-timezone"
&& subject.user == "localtimed") {
return polkit.Result.YES;
}
});
'';
users.users = [{
name = "localtimed";
description = "Taskserver user";
}];
systemd.services.localtime = {
description = "localtime service";
wantedBy = [ "multi-user.target" ];
partOf = [ "geoclue.service "];
serviceConfig = {
Restart = "on-failure";
# TODO: make it work with dbus
#DynamicUser = true;
Nice = 10;
User = "localtimed";
PrivateTmp = "yes";
PrivateDevices = true;
PrivateNetwork = "yes";
NoNewPrivileges = "yes";
ProtectSystem = "strict";
ProtectHome = true;
ExecStart = "${pkgs.localtime}/bin/localtimed";
};
};
};
}

View file

@ -336,6 +336,7 @@ in rec {
tests.taskserver = callTest tests/taskserver.nix {};
tests.tomcat = callTest tests/tomcat.nix {};
tests.udisks2 = callTest tests/udisks2.nix {};
tests.vault = callTest tests/vault.nix {};
tests.virtualbox = callSubTests tests/virtualbox.nix { system = "x86_64-linux"; };
tests.wordpress = callTest tests/wordpress.nix {};
tests.xfce = callTest tests/xfce.nix {};

23
nixos/tests/vault.nix Normal file
View file

@ -0,0 +1,23 @@
import ./make-test.nix ({ pkgs, ... }:
{
name = "vault";
meta = with pkgs.stdenv.lib.maintainers; {
maintainers = [ lnl7 ];
};
machine = { config, pkgs, ... }: {
environment.systemPackages = [ pkgs.vault ];
environment.variables.VAULT_ADDR = "http://127.0.0.1:8200";
services.vault.enable = true;
};
testScript =
''
startAll;
$machine->waitForUnit('multi-user.target');
$machine->waitForUnit('vault.service');
$machine->waitForOpenPort(8200);
$machine->succeed('vault init');
$machine->succeed('vault status | grep "Sealed: true"');
'';
})

View file

@ -12,11 +12,11 @@ in
stdenv.mkDerivation rec {
name = "guitarix-${version}";
version = "0.35.6";
version = "0.36.1";
src = fetchurl {
url = "mirror://sourceforge/guitarix/guitarix2-${version}.tar.xz";
sha256 = "0ffvfnvhj6vz73zsrpi88hs69ys4zskm847zf825dl2r39n9nn41";
sha256 = "1g5949jwh2n755xjs3kcbdb8a1wxr5mn0m115wdnk27dxcdn93b0";
};
nativeBuildInputs = [ gettext intltool wrapGAppsHook pkgconfig python2 ];

View file

@ -2,14 +2,14 @@
stdenv.mkDerivation rec {
pname = "emem";
version = "0.2.48";
version = "0.2.50";
name = "${pname}-${version}";
inherit jdk;
src = fetchurl {
url = "https://github.com/ebzzry/${pname}/releases/download/v${version}/${pname}.jar";
sha256 = "0l68qqjh8lbqb2yqvggiga9qz2j32h3qklcfkycmcffn6l1nlqnq";
sha256 = "18x3s3jrph8k3pc75jgwkfqazygpsx93zjxx68zms58my17cybh1";
};
phases = [ "buildPhase" "installPhase" ];

View file

@ -21,11 +21,11 @@ assert i3GapsSupport -> ! i3Support && jsoncpp != null && i3-gaps != null;
stdenv.mkDerivation rec {
name = "polybar-${version}";
version = "3.0.5";
version = "3.1.0";
src = fetchgit {
url = "https://github.com/jaagr/polybar";
rev = "4e2e2a7a5e0fe81669031ade0f60e1d379b6516d";
sha256 = "1iiks9q13pbkgbjhdns18a5zgr6d40ydcm4qn168m73fs6ivf1vn";
rev = "bf16a4d415ea7d8845f578544de0c71e56ad314e";
sha256 = "1jcvqxl0477j0snvh1rzqsm1dkfsybix2lgrlsgiczdxfknwz8iy";
};
meta = with stdenv.lib; {
@ -39,14 +39,6 @@ stdenv.mkDerivation rec {
maintainers = [ maintainers.afldcr ];
platforms = platforms.unix;
};
# This patch should be removed with next stable release.
patches = [
(fetchpatch {
name = "polybar-remove-curlbuild.patch";
url = "https://github.com/jaagr/polybar/commit/d35abc7620c8f06618b4708d9a969dfa2f309e96.patch";
sha256 = "14xr65vsjvd51hzg9linj09w0nnixgn26dh9lqxy25bxachcyzxy";
})
];
buildInputs = [
cairo libXdmcp libpthreadstubs libxcb pcre python2 xcbproto xcbutil

View file

@ -13,13 +13,13 @@
}:
stdenv.mkDerivation rec {
name = "dino-unstable-2017-09-26";
name = "dino-unstable-2017-12-03";
src = fetchFromGitHub {
owner = "dino";
repo = "dino";
rev = "9d8e1e88ec61403659a8cc410d5c4414e3bd3a96";
sha256 = "1p8sda99n8zsb49qd6wzwb8hddlgrzr2hp7il5v7yqxjjm2vgqfl";
rev = "cee39b0117c1620d852d50c14ca6f06db4e2956b";
sha256 = "15cm6y2rgj6fcw8sciygd1wvcw7k9fgf69ji1abfwybzydflj7ny";
fetchSubmodules = true;
};

View file

@ -59,7 +59,7 @@ stdenv.mkDerivation rec {
better management of, and seamless user interactions with, guests.
'';
license = licenses.gpl2;
platforms = platforms.linux;
platforms = [ "x86_64-linux" "i686-linux" ];
maintainers = with maintainers; [ joamaki ];
};
}

View file

@ -199,6 +199,6 @@ in stdenv.mkDerivation {
description = "PC emulator";
homepage = http://www.virtualbox.org/;
maintainers = [ lib.maintainers.sander ];
platforms = lib.platforms.linux;
platforms = [ "x86_64-linux" "i686-linux" ];
};
}

View file

@ -8,26 +8,26 @@ let
in
stdenv.mkDerivation rec {
name = "geolite-legacy-${version}";
version = "2017-09-17";
version = "2017-12-02";
srcGeoIP = fetchDB
"GeoLiteCountry/GeoIP.dat.gz"
"1xqxlnxxk8grqr0nr9vaf5r6z5bcdbadh83qhzr6jvhs20s37lsl";
"1nggml11wzlanmzk6wbw2kla91fj8ggd9kh9yz42lnyckdlf5ac4";
srcGeoIPv6 = fetchDB
"GeoIPv6.dat.gz"
"0g3am25jmhm3r51hvz9lknkrnzj98hxdxav2cvrhz6b7wndgyspk";
"0w809xgmr5zi4fgm9q3lhrnh1vl62s49n737bhq4jplm5918ki50";
srcGeoLiteCity = fetchDB
"GeoLiteCity.dat.gz"
"1syw19gx2mpqz9ypkaq2gh712bv60a7rf56afzd3qzkmgf6rw1qr";
"0cibajsv5xdjpw1qfx22izm5azqcj0d7nvk39irgwflkim9jfjbs";
srcGeoLiteCityv6 = fetchDB
"GeoLiteCityv6-beta/GeoLiteCityv6.dat.gz"
"0ihbqm1f5b9qb68i73ghmk30b6i2n53fmmhv2wadja5zcdpkhdvk";
"1ldwbzgs64irfgb3kq3jp8fmhwmwqk713dr4kkdqlglrblr9hfkc";
srcGeoIPASNum = fetchDB
"asnum/GeoIPASNum.dat.gz"
"0adddsk0g9a3xaa0f8qx12s07n31wvirymjzrhnsg66i2qlm0h34";
"06qqs8qr8vxqwd80npz7n66k3bpc1vs7w43i2bb4k0di5yxnjwr9";
srcGeoIPASNumv6 = fetchDB
"asnum/GeoIPASNumv6.dat.gz"
"1qar0vdlpk3razq83l5fzb54zihs2sma8xgngpql8njfgby0w825";
"1qyq4h8cja62giv6q1qqc502vsq53wzz1kx80mgvwngmycrxa21k";
meta = with stdenv.lib; {
description = "GeoLite Legacy IP geolocation databases";

View file

@ -15,7 +15,7 @@ stdenv.mkDerivation rec {
gtk3 gnome3.gnome_control_center dbus
clutter pango appstream-glib systemd gobjectIntrospection ];
configureFlags = [ "--with-controlcenterdir=$(out)/gnome-control-center/keybindings"
configureFlags = [ "--with-controlcenterdir=$(out)/share/gnome-control-center/keybindings"
"--with-dbusservicesdir=$(out)/share/dbus-1/services"
"--with-systemduserunitdir=$(out)/etc/systemd/user" ];

View file

@ -1 +1 @@
WGET_ARGS=( https://download.kde.org/stable/plasma/5.11.3/ -A '*.tar.xz' )
WGET_ARGS=( https://download.kde.org/stable/plasma/5.11.4/ -A '*.tar.xz' )

View file

@ -3,355 +3,355 @@
{
bluedevil = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/bluedevil-5.11.3.tar.xz";
sha256 = "1sgnj3z4s1k7h2ddvcq9r67qc8gbd4yv7zb9a24gi3x3iwd5hsf3";
name = "bluedevil-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/bluedevil-5.11.4.tar.xz";
sha256 = "1xjvx5w2pkwj63hdxjkh4fdqyydxvc2sqg1pwkwqnw58z78lhq20";
name = "bluedevil-5.11.4.tar.xz";
};
};
breeze = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/breeze-5.11.3.tar.xz";
sha256 = "1xlh8m9fw3009gdi0v1nn945rm1zg908apv8v9lgkgks6s2sspxk";
name = "breeze-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/breeze-5.11.4.tar.xz";
sha256 = "0nxp13x5326ahkrb37rbrsn7xhl9gbrrpnbhhflmr9zdx2af7700";
name = "breeze-5.11.4.tar.xz";
};
};
breeze-grub = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/breeze-grub-5.11.3.tar.xz";
sha256 = "1v1ha0j9kh4vcxknnwk78lzigvpqdrcj4gv6h86pxmwsipr5l2bl";
name = "breeze-grub-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/breeze-grub-5.11.4.tar.xz";
sha256 = "1yz31j3dgzkliz8sk80d6fs0afnd45nw6xkhrws2aar2rnn9d1w4";
name = "breeze-grub-5.11.4.tar.xz";
};
};
breeze-gtk = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/breeze-gtk-5.11.3.tar.xz";
sha256 = "1f9xlmc6mhr25mji8ir46qslnfa0i7q7pqkzp1hm5ss3kzdd45gb";
name = "breeze-gtk-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/breeze-gtk-5.11.4.tar.xz";
sha256 = "0n9fn3jp610g617561c8pr7i9v4k6cdpyqi7kl4f56h6cwq6b0ga";
name = "breeze-gtk-5.11.4.tar.xz";
};
};
breeze-plymouth = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/breeze-plymouth-5.11.3.tar.xz";
sha256 = "11m65cg74cfhglsppahnppisqp4rnj528b93k78pgvb4xazm7s76";
name = "breeze-plymouth-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/breeze-plymouth-5.11.4.tar.xz";
sha256 = "099hl3dfcc3n4yh94hdhgnwy01a74s6as2yma57idcqw2akf6d0v";
name = "breeze-plymouth-5.11.4.tar.xz";
};
};
discover = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/discover-5.11.3.tar.xz";
sha256 = "1bavw2hynmznd72wmh4cmy6zs4a13gxcsh6gznd99g6shry8svix";
name = "discover-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/discover-5.11.4.tar.xz";
sha256 = "1n6s52n8ynsymcwjckkfxrnzsj15f10if8r3ka5qhd7w6nb2x2iz";
name = "discover-5.11.4.tar.xz";
};
};
drkonqi = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/drkonqi-5.11.3.tar.xz";
sha256 = "1683h4nzk9kgwzwjzkr0bmk8vmq07991x4239z3p39z4gnvsmb0h";
name = "drkonqi-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/drkonqi-5.11.4.tar.xz";
sha256 = "0vnfx8sha9mdsdb5baw5xwlswm32wmd96kv8yzm3zr67fkz95n3s";
name = "drkonqi-5.11.4.tar.xz";
};
};
kactivitymanagerd = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kactivitymanagerd-5.11.3.tar.xz";
sha256 = "1syprfgbcg1821v0mqnalnn3gr40sfvi3m9wcy1hbffqm2k561qq";
name = "kactivitymanagerd-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kactivitymanagerd-5.11.4.tar.xz";
sha256 = "10942fzaai30agzmbldwiwycpb7198qhgk3jr2p5wlfrawl1sl4q";
name = "kactivitymanagerd-5.11.4.tar.xz";
};
};
kde-cli-tools = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kde-cli-tools-5.11.3.tar.xz";
sha256 = "0yhghfsyvx0xlmyigjm8hvp8d4s6pp8h6wbqrbfngslayq624cvi";
name = "kde-cli-tools-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kde-cli-tools-5.11.4.tar.xz";
sha256 = "07415ssr25lnr9klv6r7jclf9l5mca6dxf6xskwgixcap1fl5vdg";
name = "kde-cli-tools-5.11.4.tar.xz";
};
};
kdecoration = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kdecoration-5.11.3.tar.xz";
sha256 = "0ik62pavf9bw1mahiyqlc9qh2za31l4qa3fyz42y81phmr8hbj4a";
name = "kdecoration-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kdecoration-5.11.4.tar.xz";
sha256 = "0vvhhdd3jlb7x9zdc3bjalchhvjkg411ip379rifn9z7zxbrsq9m";
name = "kdecoration-5.11.4.tar.xz";
};
};
kde-gtk-config = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kde-gtk-config-5.11.3.tar.xz";
sha256 = "09k02ghsrc5bwk05a7jlyzgwr6a1mzwypy6q1yhkl8jcqaim18ff";
name = "kde-gtk-config-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kde-gtk-config-5.11.4.tar.xz";
sha256 = "08s5z7lck37cyzkkg5v9qrnlfxjrpfd565y2i1ng9k6vm9m39172";
name = "kde-gtk-config-5.11.4.tar.xz";
};
};
kdeplasma-addons = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kdeplasma-addons-5.11.3.tar.xz";
sha256 = "13vmr5m3gx2b757bnb74qjjr6faj2bn1qb9cngj0gnk9gbdgrwh1";
name = "kdeplasma-addons-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kdeplasma-addons-5.11.4.tar.xz";
sha256 = "19ywc3ryjax7g7wg969j256n4cr3n51lzxsw4gklf4n0px4pk2pi";
name = "kdeplasma-addons-5.11.4.tar.xz";
};
};
kgamma5 = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kgamma5-5.11.3.tar.xz";
sha256 = "18g8rj4l1y1lwl2wrk4cdlpdn6gibbwbipdkmlk0hb4ad1bxkc96";
name = "kgamma5-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kgamma5-5.11.4.tar.xz";
sha256 = "1njzb06hk0lpj3s6i2hmlww0k7122dca9mi0rbr0ilfwha36ib2s";
name = "kgamma5-5.11.4.tar.xz";
};
};
khotkeys = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/khotkeys-5.11.3.tar.xz";
sha256 = "1bykjywj6yass35xv858azv9pw74wlqsss6hs9ra4sx0yh0n9ffp";
name = "khotkeys-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/khotkeys-5.11.4.tar.xz";
sha256 = "0wszl7bzjl6gszvg9n4p8x3m6h0x5xx3qz3yi1y6g5mplfg7h0c6";
name = "khotkeys-5.11.4.tar.xz";
};
};
kinfocenter = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kinfocenter-5.11.3.tar.xz";
sha256 = "1ip6zkrl81v987z7bj0mvkjmydyarxgih4gzkbgnpppl7746bs5n";
name = "kinfocenter-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kinfocenter-5.11.4.tar.xz";
sha256 = "0ff3v90fj187glb22rvp27kp1b83br71vshcq2cpfzrbv97wrqf4";
name = "kinfocenter-5.11.4.tar.xz";
};
};
kmenuedit = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kmenuedit-5.11.3.tar.xz";
sha256 = "1nks0lk1xnywx5r3bzr5npzapg5d25l73ygxq8988q1f4q39jlj6";
name = "kmenuedit-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kmenuedit-5.11.4.tar.xz";
sha256 = "0kbqrri7mnnarfw45k7j3ckxdpkasc25prvn1zlhci0acqhz0skk";
name = "kmenuedit-5.11.4.tar.xz";
};
};
kscreen = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kscreen-5.11.3.tar.xz";
sha256 = "03wcrqvqcsw47x504ydk3dkqw6x9dc2n3skh7asznmpda8ryb6dp";
name = "kscreen-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kscreen-5.11.4.tar.xz";
sha256 = "0rjy594qj9825gan3r4iw4qphnksnrfn2f1dgyvd63ds70xm272h";
name = "kscreen-5.11.4.tar.xz";
};
};
kscreenlocker = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kscreenlocker-5.11.3.tar.xz";
sha256 = "0i0xcakzznxsk0zqa664xavp64wbqgqim57bkp01wl82s3aik82v";
name = "kscreenlocker-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kscreenlocker-5.11.4.tar.xz";
sha256 = "0r2438s7gs39qbkprx90smvb8mlgqm486qgv34ljx9vi0zm4kq47";
name = "kscreenlocker-5.11.4.tar.xz";
};
};
ksshaskpass = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/ksshaskpass-5.11.3.tar.xz";
sha256 = "1ij2xspd6clf8plqqgzx6zjq7c1sxrlf7ch9brnxprw29h5qfz34";
name = "ksshaskpass-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/ksshaskpass-5.11.4.tar.xz";
sha256 = "1wqzwvlimw5mkq1hfzjjw9az3g9bdqkiw9m7vrxfb67asgmmbrbx";
name = "ksshaskpass-5.11.4.tar.xz";
};
};
ksysguard = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/ksysguard-5.11.3.tar.xz";
sha256 = "17b5lddmas5n1726xa5r8v0v6gmw6bzpvhcljk2r4yrly6gy3pv9";
name = "ksysguard-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/ksysguard-5.11.4.tar.xz";
sha256 = "1dl5q6k2ipdwlg8i5bh2xsz20wg5dwn8401rba9jzp3la97id2sc";
name = "ksysguard-5.11.4.tar.xz";
};
};
kwallet-pam = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kwallet-pam-5.11.3.tar.xz";
sha256 = "04ps2p3hjvkca8miqmg0xwh3i5van0jld2hb1xp737hy1dfpi9h4";
name = "kwallet-pam-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kwallet-pam-5.11.4.tar.xz";
sha256 = "0xkgm0i0x1kcw4rcsv762pqs1vk2gxi09n421whq9ibmj8cm2ky2";
name = "kwallet-pam-5.11.4.tar.xz";
};
};
kwayland-integration = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kwayland-integration-5.11.3.tar.xz";
sha256 = "0j5czhq5r8pxy7pw00by0v75kk4lbijn7mrdnydlca3jjrdcgz6f";
name = "kwayland-integration-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kwayland-integration-5.11.4.tar.xz";
sha256 = "03azlds5iv3mq7g1livrqca4k30znac088qllzl4rh0mfmw4bmcy";
name = "kwayland-integration-5.11.4.tar.xz";
};
};
kwin = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kwin-5.11.3.tar.xz";
sha256 = "1xgx7xn27lzqdwla45scfcnyxva97j2y2m7hgj60cd1mz686pill";
name = "kwin-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kwin-5.11.4.tar.xz";
sha256 = "0lfp2nyh28mlqbm3qjhd9adgp8w8j2gfn6xzw8ckxmkrzpdv52gr";
name = "kwin-5.11.4.tar.xz";
};
};
kwrited = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/kwrited-5.11.3.tar.xz";
sha256 = "0qm3x6ahnis1b98q9h53wdldsj7nqw35s1hcgfqzjqk7nnxzim5i";
name = "kwrited-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/kwrited-5.11.4.tar.xz";
sha256 = "16l280dh3fw0sn3h9yprb74wmc0adsqq092s4dyka55md06qzqif";
name = "kwrited-5.11.4.tar.xz";
};
};
libkscreen = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/libkscreen-5.11.3.tar.xz";
sha256 = "01wbl1kinsvxfw5lq0wrhsk0fmv8gvkhr7m0w4lq1827wx68lfzw";
name = "libkscreen-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/libkscreen-5.11.4.tar.xz";
sha256 = "0sv3q6zmplm0iz6ax87763mg771zvk1dfdh2gmiz2dn2lnxbkrzd";
name = "libkscreen-5.11.4.tar.xz";
};
};
libksysguard = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/libksysguard-5.11.3.tar.xz";
sha256 = "1jbcd2n1zd6ijybaffm5vs5b80130vii562s98xhinmifzsahzmy";
name = "libksysguard-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/libksysguard-5.11.4.tar.xz";
sha256 = "1ry4478fv7blp80zyhz0xr3qragsddrkzjzmxkdarh01f4p987aq";
name = "libksysguard-5.11.4.tar.xz";
};
};
milou = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/milou-5.11.3.tar.xz";
sha256 = "02j6f4ip7hgb5qpq9812g1pnm8fjd83dc923gyfpzb4i0nf6j93g";
name = "milou-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/milou-5.11.4.tar.xz";
sha256 = "1zq6gcmjc4wa23b2c94nwsxranpangl2b3apj56qpl68bjfvlrbq";
name = "milou-5.11.4.tar.xz";
};
};
oxygen = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/oxygen-5.11.3.tar.xz";
sha256 = "0zg3qdnip1ad6980ga0lmxndbph3y4dw0qk73dd8022qw5f3ysyp";
name = "oxygen-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/oxygen-5.11.4.tar.xz";
sha256 = "0vfs220w6rc0vf5y2qshqby1jmd5kgm0gqkzg9ckgvjm0skbk75z";
name = "oxygen-5.11.4.tar.xz";
};
};
plasma-desktop = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-desktop-5.11.3.tar.xz";
sha256 = "1igmq8zj71wf34ap2g0iakpjfq08mlg6yf1ly06111ygsinbg55a";
name = "plasma-desktop-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-desktop-5.11.4.tar.xz";
sha256 = "0adc9fi582x7gkxsxz3xhs0h6ardxbcxsl5xxzi3y2bmhd4f7vrq";
name = "plasma-desktop-5.11.4.tar.xz";
};
};
plasma-integration = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-integration-5.11.3.tar.xz";
sha256 = "0bqw5xp71yxciqzd3bmlgsd4mkjl4vcysd9s6bka5mxrlhkqxgx1";
name = "plasma-integration-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-integration-5.11.4.tar.xz";
sha256 = "0wialbswpgf03paxfr4473sgb11fymxw34xvwdql6wwks86xyf6k";
name = "plasma-integration-5.11.4.tar.xz";
};
};
plasma-nm = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-nm-5.11.3.tar.xz";
sha256 = "1zqlg5jm3pgiirr98j3fl1h6wbhf4f06qainpy42b5w42vhizspk";
name = "plasma-nm-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-nm-5.11.4.tar.xz";
sha256 = "1kjbad69s3dfqgv1zyfzq7bmfyhr0hd4xwhf6bljad8d2l5azydi";
name = "plasma-nm-5.11.4.tar.xz";
};
};
plasma-pa = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-pa-5.11.3.tar.xz";
sha256 = "07rwlqpmvbvdidhfhw8xk6lvarimd1mhm085vjk7g2wmzw5n69wl";
name = "plasma-pa-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-pa-5.11.4.tar.xz";
sha256 = "0zg34xs3fbxig63i1lf0hyfsmsis3d5gmlgyqc0vkdbwg6l2qpbw";
name = "plasma-pa-5.11.4.tar.xz";
};
};
plasma-sdk = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-sdk-5.11.3.tar.xz";
sha256 = "17h42223agz4vvbff13xd1p7xa5swnhcrmh1779mswl1rfznrkys";
name = "plasma-sdk-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-sdk-5.11.4.tar.xz";
sha256 = "0vis5psn2zyglkd6gcgqsnf99b38dcjpq3rwbyhj8rfjcakdg4nx";
name = "plasma-sdk-5.11.4.tar.xz";
};
};
plasma-tests = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-tests-5.11.3.tar.xz";
sha256 = "0ac2i66f3mywvkf7041sg3hsa97f69y5aibpk0fz41q9zi5jwzv3";
name = "plasma-tests-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-tests-5.11.4.tar.xz";
sha256 = "1kifka84csqsm3qjycagwx093hv3n5wsxl8p6xpa44cxjg4xjqfa";
name = "plasma-tests-5.11.4.tar.xz";
};
};
plasma-vault = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-vault-5.11.3.tar.xz";
sha256 = "12y2331lpp7i3fl6nbm78n6qh7hd7vmrvc94jkzwx5pbql6nx2ia";
name = "plasma-vault-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-vault-5.11.4.tar.xz";
sha256 = "1pymr6hiz0j4x98dchrzsq17ddlbcj5f9dggzr0fiw4sm5yvyxz0";
name = "plasma-vault-5.11.4.tar.xz";
};
};
plasma-workspace = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-workspace-5.11.3.tar.xz";
sha256 = "0skn3mg90ghx3bmlj7snbhap9z2fq0hab0gfi4pv80ggyl5jf9sp";
name = "plasma-workspace-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-workspace-5.11.4.tar.xz";
sha256 = "1qin68zcczgf3rwa8gg4i3rcsy6i8na9z8kk4bm9q3mfagbzqfx8";
name = "plasma-workspace-5.11.4.tar.xz";
};
};
plasma-workspace-wallpapers = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plasma-workspace-wallpapers-5.11.3.tar.xz";
sha256 = "1xbfghhb6bjlqs2fk3z8k3q0lfirqmyqyxym2w8k69im2fscg0rl";
name = "plasma-workspace-wallpapers-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plasma-workspace-wallpapers-5.11.4.tar.xz";
sha256 = "09q63i85d82fdq9vafv55wiflndil048ryn9n3kpa4v9s0yjklkh";
name = "plasma-workspace-wallpapers-5.11.4.tar.xz";
};
};
plymouth-kcm = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/plymouth-kcm-5.11.3.tar.xz";
sha256 = "1sbxwvi402lcnzxalgr85srh8vd4wy26gav7q23qbhd5axh26f06";
name = "plymouth-kcm-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/plymouth-kcm-5.11.4.tar.xz";
sha256 = "17jyg6133xb0f1dm1c0cpys2008aa65k1y1ap4b3y29xyv1p79rd";
name = "plymouth-kcm-5.11.4.tar.xz";
};
};
polkit-kde-agent = {
version = "1-5.11.3";
version = "1-5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/polkit-kde-agent-1-5.11.3.tar.xz";
sha256 = "088ch67syimxqlda0nczrrj1hb7ynsrwdcb0bq1pcndp57p71vzl";
name = "polkit-kde-agent-1-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/polkit-kde-agent-1-5.11.4.tar.xz";
sha256 = "004ra4nb6dh3b1lmpfg303fg7201d2sm9f4glkj0mk3a0s9fkfcw";
name = "polkit-kde-agent-1-5.11.4.tar.xz";
};
};
powerdevil = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/powerdevil-5.11.3.tar.xz";
sha256 = "1807x3vzq24vip7dnl87cd1hn368vqk7cbyhai492irf20j7hn82";
name = "powerdevil-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/powerdevil-5.11.4.tar.xz";
sha256 = "0cncn8xv5sqv1wqmnmhmqn2jznzy7yik4hvq0vadsrh4blyzwyrj";
name = "powerdevil-5.11.4.tar.xz";
};
};
sddm-kcm = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/sddm-kcm-5.11.3.tar.xz";
sha256 = "1c9dm8819yaynq6cbzcg0j77cz0cf2cwrz9cfmr4w65ypl937va5";
name = "sddm-kcm-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/sddm-kcm-5.11.4.tar.xz";
sha256 = "1jhm5gbz296hk1dc7476kw23v73l7s939baln5v5pax349w40l23";
name = "sddm-kcm-5.11.4.tar.xz";
};
};
systemsettings = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/systemsettings-5.11.3.tar.xz";
sha256 = "1abza0qmdhfdlr2k53lc4ymr42ri1pfv0yyf9plxhra7f7f2ylf7";
name = "systemsettings-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/systemsettings-5.11.4.tar.xz";
sha256 = "1j555f505hbc2zmg7biv05llzd2bb58z5ccspdgcvmskkwm2rlb3";
name = "systemsettings-5.11.4.tar.xz";
};
};
user-manager = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/user-manager-5.11.3.tar.xz";
sha256 = "0d2i3ndq9vwr2m39i6qdn18bg4c19rqhfy2a38lhm30g288wxfbr";
name = "user-manager-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/user-manager-5.11.4.tar.xz";
sha256 = "0mz6kaqwns57bwp2gl7qzm7mwq3w2qh6kyp7m5qqh96wgq133c55";
name = "user-manager-5.11.4.tar.xz";
};
};
xdg-desktop-portal-kde = {
version = "5.11.3";
version = "5.11.4";
src = fetchurl {
url = "${mirror}/stable/plasma/5.11.3/xdg-desktop-portal-kde-5.11.3.tar.xz";
sha256 = "01jcya7xyrn3d99raqvbzfwllihzdpyizx757f87pgg43dmbggwm";
name = "xdg-desktop-portal-kde-5.11.3.tar.xz";
url = "${mirror}/stable/plasma/5.11.4/xdg-desktop-portal-kde-5.11.4.tar.xz";
sha256 = "162gc6bfsxlj5rc4yz94sv41p75gf2kgayxa534gw3zhvry1jb52";
name = "xdg-desktop-portal-kde-5.11.4.tar.xz";
};
};
}

View file

@ -34,7 +34,7 @@ stdenv.mkDerivation rec {
sha256 = "1x8m4rp2v7ydnrz6z9g8x7z3x3d3pxhv2pixy7i7hkbqbdsp7kal";
};
buildInputs = [ ghc perl libxml2 libxslt docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42 hscolour ];
buildInputs = [ ghc perl libxml2 libxslt docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42 (stdenv.lib.getBin hscolour) ];
patches = [ ./relocation.patch ];

View file

@ -30,7 +30,7 @@ stdenv.mkDerivation rec {
./relocation.patch
];
buildInputs = [ ghc perl libxml2 libxslt docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42 hscolour ];
buildInputs = [ ghc perl libxml2 libxslt docbook_xsl docbook_xml_dtd_45 docbook_xml_dtd_42 (stdenv.lib.getBin hscolour) ];
enableParallelBuilding = true;

View file

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional stdenv.isLinux ./ghc-no-madv-free.patch
++ stdenv.lib.optional stdenv.isDarwin ./ghc-8.0.2-no-cpp-warnings.patch;
buildInputs = [ ghc perl hscolour sphinx ];
buildInputs = [ ghc perl (stdenv.lib.getBin hscolour) sphinx ];
enableParallelBuilding = true;

View file

@ -10,7 +10,7 @@
let
inherit (bootPkgs) ghc;
version = "8.2.1";
preReleaseName = "ghc-8.2.1";
commonBuildInputs = [ alex autoconf automake ghc happy hscolour perl python3 sphinx ];
commonPreConfigure = ''
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure

View file

@ -11,7 +11,7 @@
let
inherit (bootPkgs) ghc;
commonBuildInputs = [ ghc perl autoconf automake happy alex python3 ];
commonBuildInputs = [ ghc perl autoconf automake (stdenv.lib.getBin happy) (stdenv.lib.getBin alex) python3 ];
rev = "14457cf6a50f708eecece8f286f08687791d51f7";

View file

@ -113,7 +113,7 @@ in mkDerivation (rec {
lens optparse-applicative parallel safe shelly split
stringsearch syb system-fileio system-filepath tar terminfo text-binary
unordered-containers vector wl-pprint-text yaml
alex happy git gnumake autoconf automake libtool patch gmp
(stdenv.lib.getBin alex) (stdenv.lib.getBin happy) git gnumake autoconf automake libtool patch gmp
base16-bytestring cryptohash executable-path haddock-api
transformers-compat QuickCheck haddock hspec xhtml
regex-posix libiconv

View file

@ -20,9 +20,9 @@ stdenv.mkDerivation rec {
sed -ie 's|ld |${targetPackages.stdenv.cc.bintools}/bin/ld |g' src/scripts/ldkernel.in
'';
configureFlags = stdenv.lib.optional (!enableIntegerSimple) [ "--enable-gmp" ];
propagatedNativeBuildInputs = [ alex happy ];
propagatedNativeBuildInputs = [ (stdenv.lib.getBin alex) (stdenv.lib.getBin happy) ];
buildInputs =
let haskellPkgs = [ alex happy bootPkgs.hscolour bootPkgs.cabal-install bootPkgs.haddock bootPkgs.hpc
let haskellPkgs = [ (stdenv.lib.getBin alex) (stdenv.lib.getBin happy) (stdenv.lib.getBin bootPkgs.hscolour) bootPkgs.cabal-install bootPkgs.haddock bootPkgs.hpc
]; in [ bootPkgs.ghc
automake perl git targetPackages.stdenv.cc.bintools
autoconf xen zlib ncurses.dev

View file

@ -50,6 +50,7 @@ stdenv.mkDerivation rec {
bin/neko bin/test.n
'';
doCheck = true;
dontStrip = true;
meta = with stdenv.lib; {
@ -60,4 +61,3 @@ stdenv.mkDerivation rec {
platforms = platforms.linux ++ platforms.darwin;
};
}

View file

@ -4,13 +4,13 @@ with lib;
mkDerivation rec {
pname = "psc-package";
version = "0.2.4";
version = "0.2.5";
src = fetchFromGitHub {
owner = "purescript";
repo = pname;
rev = "v${version}";
sha256 = "0m1vcxa5zs4sqnnwgmxkhw1isdlmirp12yimn5345vwfvlxkc8kp";
sha256 = "15g0l8g8l6m5x4f73w68r9iav091x12b3wjxh0rx3ggnj093g6j1";
};
isLibrary = false;

View file

@ -897,6 +897,7 @@ self: super: {
# Don't install internal mkReadme tool.
hastache = overrideCabal super.hastache (drv: {
doCheck = false;
enableSeparateBinOutput = false;
postInstall = "rm $out/bin/mkReadme && rmdir $out/bin";
});

View file

@ -217,7 +217,10 @@ self: super: builtins.intersectAttrs super {
# wxc supports wxGTX >= 3.0, but our current default version points to 2.8.
# http://hydra.cryp.to/build/1331287/log/raw
wxc = (addBuildDepend super.wxc self.split).override { wxGTK = pkgs.wxGTK30; };
wxc = (overrideCabal super.wxc (drv: {
buildDepends = (drv.buildDepends or []) ++ [self.split];
postInstall = "cp -v dist/build/libwxc.so.0.92.3.0 $lib/lib/libwxc.so";
})).override { wxGTK = pkgs.wxGTK30; };
wxcore = super.wxcore.override { wxGTK = pkgs.wxGTK30; };
# Test suite wants to connect to $DISPLAY.
@ -507,4 +510,52 @@ self: super: builtins.intersectAttrs super {
# Break cyclic reference that results in an infinite recursion.
partial-semigroup = dontCheck super.partial-semigroup;
# Alex has some weird files in /usr/share that create a cyclic ref with
# its bin dir.
alex = hasNoBinOutput super.alex;
# Disable separate bin outputs for these specific packages that break with it.
H = hasNoBinOutput super.H;
cryptol = hasNoBinOutput super.cryptol;
hscolour = hasNoBinOutput super.hscolour;
sproxy = hasNoBinOutput super.sproxy;
sproxy2 = hasNoBinOutput super.sproxy2;
sproxy-web = hasNoBinOutput super.sproxy-web;
juandelacosa = hasNoBinOutput super.juandelacosa;
mywatch = hasNoBinOutput super.mywatch;
sugarhaskell = hasNoBinOutput super.sugarhaskell;
zerobin = hasNoBinOutput super.zerobin;
git-annex = overrideCabal super.git-annex (drv: {
enableSeparateBinOutput = false;
enableSeparateEtcOutput = false;
});
# Has extra data files which are referred to from the binary output,
# creating a store reference cycle. Putting data in separate output
# solves the problem.
happy = overrideCabal super.happy (drv: { enableSeparateDataOutput = true; });
# Override a number of packages with specific references to $out in their
# derivations
stack = overrideCabal super.stack (drv: {
postInstall = ''
exe=$bin/bin/stack
mkdir -p $bin/share/bash-completion/completions
$exe --bash-completion-script $exe >$bin/share/bash-completion/completions/stack
'';
});
Agda = overrideCabal super.Agda (drv: {
postInstall = ''
files=("$out/share/"*"-ghc-"*"/Agda-"*"/lib/prim/Agda/"{Primitive.agda,Builtin"/"*.agda})
for f in "''${files[@]}" ; do
$bin/bin/agda $f
done
for f in "''${files[@]}" ; do
$bin/bin/agda -c --no-main $f
done
$bin/bin/agda-mode compile
'';
});
}

View file

@ -56,6 +56,10 @@ let isCross = (ghc.cross or null) != null; in
, hardeningDisable ? lib.optional (ghc.isHaLVM or false) "all"
, enableSeparateDataOutput ? false
, enableSeparateDocOutput ? doHaddock
, enableSeparateBinOutput ? isExecutable
, outputsToInstall ? []
, enableSeparateLibOutput ? true
, enableSeparateEtcOutput ? (stdenv.lib.versionOlder "7.7" ghc.version)
} @ args:
assert editedCabalFile != null -> revision != null;
@ -79,9 +83,6 @@ let
then "package-db"
else "package-conf";
# the target dir for haddock documentation
docdir = docoutput: docoutput + "/share/doc";
newCabalFileUrl = "http://hackage.haskell.org/package/${pname}-${version}/revision/${revision}.cabal";
newCabalFile = fetchurl {
url = newCabalFileUrl;
@ -95,6 +96,13 @@ let
'';
hasActiveLibrary = isLibrary && (enableStaticLibraries || enableSharedLibraries || enableLibraryProfiling);
hasLibOutput = enableSeparateLibOutput && hasActiveLibrary;
libDir = if hasLibOutput then "$lib/lib/${ghc.name}" else "$out/lib/${ghc.name}";
binDir = if enableSeparateBinOutput then "$bin/bin" else "$out/bin";
libexecDir = if enableSeparateBinOutput then "$libexec/bin" else "$out/libexec";
etcDir = if enableSeparateEtcOutput then "$etc/etc" else "$out/etc";
docDir = if enableSeparateDocOutput then "$doc/share/doc" else "$out/share/doc";
dataDir = if enableSeparateDataOutput then "$data/share/${ghc.name}" else "$out/share/${ghc.name}";
# We cannot enable -j<n> parallelism for libraries because GHC is far more
# likely to generate a non-determistic library ID in that case. Further
@ -113,12 +121,20 @@ let
stdenv.lib.optionalString isCross (" " + stdenv.lib.concatStringsSep " " crossCabalFlags);
defaultConfigureFlags = [
"--verbose" "--prefix=$out" "--libdir=\\$prefix/lib/\\$compiler" "--libsubdir=\\$pkgid"
(optionalString enableSeparateDataOutput "--datadir=$data/share/${ghc.name}")
(optionalString enableSeparateDocOutput "--docdir=${docdir "$doc"}")
"--verbose" "--prefix=$out"
# Binary directory has to be $bin/bin instead of just $bin: this
# is so that the package is added to the PATH when it's used as a
# build input. Sadly mkDerivation won't add inputs that don't have
# bin subdirectory.
"--bindir=${binDir}"
"--libdir=${libDir}" "--libsubdir=\\$pkgid"
"--libexecdir=${libexecDir}"
(optionalString (enableSeparateEtcOutput) "--sysconfdir=${etcDir}") # Old versions of cabal don't support this flag.
"--datadir=${dataDir}"
"--docdir=${docDir}"
"--with-gcc=$CC" # Clang won't work without that extra information.
"--package-db=$packageConfDir"
(optionalString (enableSharedExecutables && stdenv.isLinux) "--ghc-option=-optl=-Wl,-rpath=$out/lib/${ghc.name}/${pname}-${version}")
(optionalString (enableSharedExecutables && stdenv.isLinux) "--ghc-option=-optl=-Wl,-rpath=${libDir}/${pname}-${version}")
(optionalString (enableSharedExecutables && stdenv.isDarwin) "--ghc-option=-optl=-Wl,-headerpad_max_install_names")
(optionalString enableParallelBuilding "--ghc-option=-j$NIX_BUILD_CORES")
(optionalString useCpphs "--with-cpphs=${cpphs}/bin/cpphs --ghc-options=-cpp --ghc-options=-pgmP${cpphs}/bin/cpphs --ghc-options=-optP--cpp")
@ -152,8 +168,11 @@ let
allPkgconfigDepends = pkgconfigDepends ++ libraryPkgconfigDepends ++ executablePkgconfigDepends ++
optionals doCheck testPkgconfigDepends ++ optionals doBenchmark benchmarkPkgconfigDepends;
nativeBuildInputs = optional (allPkgconfigDepends != []) pkgconfig ++
buildTools ++ libraryToolDepends ++ executableToolDepends ++ [ removeReferencesTo ];
nativeBuildInputs = map stdenv.lib.getBin
( optional (allPkgconfigDepends != []) pkgconfig
++ buildTools ++ libraryToolDepends ++ executableToolDepends
++ [ removeReferencesTo ]
);
propagatedBuildInputs = buildDepends ++ libraryHaskellDepends ++ executableHaskellDepends;
otherBuildInputs = setupHaskellDepends ++ extraLibraries ++ librarySystemDepends ++ executableSystemDepends ++
optionals (allPkgconfigDepends != []) allPkgconfigDepends ++
@ -182,7 +201,15 @@ assert allPkgconfigDepends != [] -> pkgconfig != null;
stdenv.mkDerivation ({
name = "${pname}-${version}";
outputs = if (args ? outputs) then args.outputs else ([ "out" ] ++ (optional enableSeparateDataOutput "data") ++ (optional enableSeparateDocOutput "doc"));
outputs = if (args ? outputs) then args.outputs else
( (optional enableSeparateBinOutput "bin")
++ (optional enableSeparateBinOutput "libexec")
++ [ "out" ]
++ (optional enableSeparateDataOutput "data")
++ (optional enableSeparateDocOutput "doc")
++ (optional enableSeparateEtcOutput "etc")
++ (optional hasLibOutput "lib")
);
setOutputFlags = false;
pos = builtins.unsafeGetAttrPos "pname" args;
@ -206,7 +233,7 @@ stdenv.mkDerivation ({
postPatch = optionalString jailbreak ''
echo "Run jailbreak-cabal to lift version restrictions on build inputs."
${jailbreak-cabal}/bin/jailbreak-cabal ${pname}.cabal
${stdenv.lib.getBin jailbreak-cabal}/bin/jailbreak-cabal ${pname}.cabal
'' + postPatch;
setupCompilerEnvironmentPhase = ''
@ -214,7 +241,7 @@ stdenv.mkDerivation ({
echo "Build with ${ghc}."
export PATH="${ghc}/bin:$PATH"
${optionalString (hasActiveLibrary && hyperlinkSource) "export PATH=${hscolour}/bin:$PATH"}
${optionalString (hasActiveLibrary && hyperlinkSource) "export PATH=${stdenv.lib.getBin hscolour}/bin:$PATH"}
packageConfDir="$TMPDIR/package.conf.d"
mkdir -p $packageConfDir
@ -241,7 +268,7 @@ stdenv.mkDerivation ({
#
# Create a local directory with symlinks of the *.dylib (macOS shared
# libraries) from all the dependencies.
local dynamicLinksDir="$out/lib/links"
local dynamicLinksDir="${libDir}/links"
mkdir -p $dynamicLinksDir
for d in $(grep dynamic-library-dirs "$packageConfDir/"*|awk '{print $2}'); do
ln -s "$d/"*.dylib $dynamicLinksDir
@ -313,7 +340,7 @@ stdenv.mkDerivation ({
${if !hasActiveLibrary then "${setupCommand} install" else ''
${setupCommand} copy
local packageConfDir="$out/lib/${ghc.name}/package.conf.d"
local packageConfDir="${libDir}/package.conf.d"
local packageConfFile="$packageConfDir/${pname}-${version}.conf"
mkdir -p "$packageConfDir"
${setupCommand} register --gen-pkg-config=$packageConfFile
@ -321,7 +348,7 @@ stdenv.mkDerivation ({
mv $packageConfFile $packageConfDir/$pkgId.conf
''}
${optionalString isGhcjs ''
for exeDir in "$out/bin/"*.jsexe; do
for exeDir in "${binDir}/"*.jsexe; do
exe="''${exeDir%.jsexe}"
printWords '#!${nodejs}/bin/node' > "$exe"
cat "$exeDir/all.js" >> "$exe"
@ -330,18 +357,68 @@ stdenv.mkDerivation ({
''}
${optionalString doCoverage "mkdir -p $out/share && cp -r dist/hpc $out/share"}
${optionalString (enableSharedExecutables && isExecutable && !isGhcjs && stdenv.isDarwin && stdenv.lib.versionOlder ghc.version "7.10") ''
for exe in "$out/bin/"* ; do
install_name_tool -add_rpath "$out/lib/ghc-${ghc.version}/${pname}-${version}" "$exe"
for exe in "${binDir}/"* ; do
install_name_tool -add_rpath "${libDir}/${pname}-${version}" "$exe"
done
''}
${optionalString enableSeparateDocOutput ''
for x in ${docdir "$doc"}/html/src/*.html; do
remove-references-to -t $out $x
# Remove references back to $out but also back to $lib if we have
# docs. $lib is needed as it stores path to haddock interfaces in the
# conf file which creates a cycle if docs refer back to library
# path.
mkdir -p ${docDir}
for x in ${docDir}/html/src/*.html; do
remove-references-to -t $out -t ${libDir} -t ${binDir} ${optionalString enableSeparateDataOutput "-t $data"} $x
done
mkdir -p $doc
''}
${optionalString enableSeparateDataOutput "mkdir -p $data"}
${optionalString hasLibOutput ''
# Even if we don't have binary output for the package, things like
# Paths files will embed paths to bin/libexec directories in themselves
# which results in .lib <-> $out cyclic store reference. We
# therefore patch out the paths from separate library if we don't have
# separate bin output too.
#
# If we _do_ have separate bin and lib outputs, we may still be in
# trouble in case of shared executables: executable contains path to
# .lib, .lib contains path (through Paths) to .bin and we have a
# cycle.
#
# Lastly we have to deal with references from .lib back into
# $out/share if we're not splitting out data directory.
#
# It may happen that we have hasLibOutput set but the library
# directory was not created: this happens in the case that library
# section is not exposing any modules. See "fail" package for an
# example where no modules are exposed for GHC >= 8.0.
if [ -d ${libDir} ]; then
find ${libDir} -type f -exec \
remove-references-to -t ${binDir} -t ${libexecDir} "{}" \;
fi
''}
${optionalString (hasLibOutput && ! enableSeparateDocOutput) ''
# If we don't have separate docs, we have to patch out the ref to
# docs in package conf. This will likely break Haddock
# cross-package links but is necessary to break store cycle…
find ${libDir}/ -type f -name '*.conf' -exec \
remove-references-to -t ${docDir} "{}" \;
''}
${optionalString (hasLibOutput && ! enableSeparateDataOutput) ''
# Just like for doc output path in $out potentially landing in
# *.conf, we have to also remove the data directory so that it
# doesn't appear under data-dir field creating a cycle.
find ${libDir}/ -type f -exec echo Removing ${dataDir} refs from "{}" \;
find ${libDir}/ -type f -exec \
remove-references-to -t ${dataDir} "{}" \;
''}
${optionalString enableSeparateDataOutput "mkdir -p ${dataDir}"}
${optionalString enableSeparateBinOutput "mkdir -p ${binDir} ${libexecDir}"}
${optionalString enableSeparateEtcOutput "mkdir -p ${etcDir}"}
runHook postInstall
'';
@ -358,7 +435,7 @@ stdenv.mkDerivation ({
# the directory containing the haddock documentation.
# `null' if no haddock documentation was built.
# TODO: fetch the self from the fixpoint instead
haddockDir = self: if doHaddock then "${docdir self.doc}/html" else null;
haddockDir = self: if doHaddock then "${docDir}/html" else null;
env = stdenv.mkDerivation {
name = "interactive-${pname}-${version}-environment";
@ -386,6 +463,7 @@ stdenv.mkDerivation ({
// optionalAttrs (description != "") { inherit description; }
// optionalAttrs (maintainers != []) { inherit maintainers; }
// optionalAttrs (hydraPlatforms != platforms) { inherit hydraPlatforms; }
// optionalAttrs (outputsToInstall != []) { inherit outputsToInstall; }
;
}

View file

@ -147,4 +147,8 @@ rec {
overrideSrc = drv: { src, version ? drv.version }:
overrideCabal drv (_: { inherit src version; editedCabalFile = null; });
hasNoBinOutput = drv: overrideCabal drv (drv: { enableSeparateBinOutput = false; });
installOutputs = drv: outputs: overrideCabal drv
(drv: { outputsToInstall = outputs; });
}

View file

@ -44,6 +44,7 @@ let
isLibrary = false;
doHaddock = false;
hyperlinkSource = false; # Avoid depending on hscolour for this build.
enableSeparateEtcOutput = false; # The flag to support this is missing in old versions of cabal.
postFixup = "rm -rf $out/lib $out/share $out/nix-support";
});
cpphs = overrideCabal (self.cpphs.overrideScope (self: super: {

View file

@ -43,7 +43,7 @@ let
libDir = if isHaLVM then "$out/lib/HaLVM-${ghc.version}" else "$out/lib/${ghcCommand}-${ghc.version}";
docDir = "$out/share/doc/ghc/html";
packageCfgDir = "${libDir}/package.conf.d";
paths = lib.filter (x: x ? isHaskellLibrary) (lib.closePropagation packages);
paths = map lib.getLib (lib.filter (x: x ? isHaskellLibrary) (lib.closePropagation packages));
hasLibraries = lib.any (x: x.isHaskellLibrary) paths;
# CLang is needed on Darwin for -fllvm to work:
# https://downloads.haskell.org/~ghc/latest/docs/html/users_guide/code-generators.html

View file

@ -1,19 +1,20 @@
{ stdenv, fetchFromGitHub, ocaml, findlib, camlidl, gmp, mpfr }:
{ stdenv, fetchFromGitHub, perl, ocaml, findlib, camlidl, gmp, mpfr }:
stdenv.mkDerivation rec {
name = "ocaml${ocaml.version}-mlgmpidl-${version}";
version = "1.2.4";
version = "1.2.6";
src = fetchFromGitHub {
owner = "nberth";
repo = "mlgmpidl";
rev = version;
sha256 = "09f9rk2bavhb7cdwjpibjf8bcjk59z85ac9dr8nvks1s842dp65s";
sha256 = "1lq3yy10v3rvlchbl5kl75l9f8frgj6g9f1n14kj5qlxm5xsrvks";
};
buildInputs = [ gmp mpfr ocaml findlib camlidl ];
buildInputs = [ perl gmp mpfr ocaml findlib camlidl ];
configurePhase = ''
cp Makefile.config.model Makefile.config
echo CAML_PREFIX = ${ocaml} > Makefile.config
cat Makefile.config.model >> Makefile.config
sed -i Makefile.config \
-e 's|^MLGMPIDL_PREFIX.*$|MLGMPIDL_PREFIX = $out|' \
-e 's|^GMP_PREFIX.*$|GMP_PREFIX = ${gmp.dev}|' \

View file

@ -1,13 +1,13 @@
{ stdenv, fetchzip, ocaml, findlib, obuild }:
let version = "2.0.2"; in
let version = "2.0.3"; in
stdenv.mkDerivation {
name = "ocaml${ocaml.version}-ptmap-${version}";
src = fetchzip {
url = "https://github.com/backtracking/ptmap/archive/v${version}.tar.gz";
sha256 = "093qax4lhpv1vcgwqh5b3pmy769hv5d8pqj1kjynh1z1xibv2qxc";
sha256 = "19xykhqk7q25r1pj8rpfj53j2r9ls8mxi1w5m2wqshrf20gf078h";
};
buildInputs = [ ocaml findlib obuild ];

View file

@ -9,12 +9,12 @@ in
stdenv.mkDerivation rec {
name = "frama-c-${version}";
version = "20170501";
slang = "Phosphorus";
version = "20171101";
slang = "Sulfur";
src = fetchurl {
url = "http://frama-c.com/download/frama-c-${slang}-${version}.tar.gz";
sha256 = "16bccacms3n4rfpsxdxpdf24bk0hwrnzdpa2pbr6s847li73hkv1";
sha256 = "1vwjfqmm1r36gkybsy3a7m89q5zicf4rnz5vlsn9imnpjpl9gjw1";
};
why2 = fetchurl {

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "jenkins-${version}";
version = "2.92";
version = "2.93";
src = fetchurl {
url = "http://mirrors.jenkins-ci.org/war/${version}/jenkins.war";
sha256 = "085h2hfhizli7bpvi06vi6jsav1cn86jw8l6vdpqq4ddx2hrhn39";
sha256 = "1wk62lmll0abbgl3drmrf5kg8hya3glkwx7h0gfhcna3vjb95ll1";
};
buildCommand = ''

View file

@ -1,18 +1,25 @@
{ stdenv, lib, buildGoPackage, fetchgit, fetchhg, fetchbzr, fetchsvn }:
{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
buildGoPackage rec {
name = "gox-${version}";
version = "20140904-${stdenv.lib.strings.substring 0 7 rev}";
rev = "e8e6fd4fe12510cc46893dff18c5188a6a6dc549";
version = "0.4.0";
goPackagePath = "github.com/mitchellh/gox";
src = fetchgit {
inherit rev;
url = "https://github.com/mitchellh/gox";
sha256 = "14jb2vgfr6dv7zlw8i3ilmp125m5l28ljv41a66c9b8gijhm48k1";
src = fetchFromGitHub {
owner = "mitchellh";
repo = "gox";
rev = "v${version}";
sha256 = "1q4fdkw904mrmh1q5z8pfd3r0gcn5dm776kldqawddy93iiwnp8r";
};
goDeps = ./deps.nix;
meta = with stdenv.lib; {
homepage = https://github.com/mitchellh/gox;
description = "A dead simple, no frills Go cross compile tool";
platforms = platforms.all;
license = licenses.mpl20;
};
}

View file

@ -4,8 +4,8 @@
fetch = {
type = "git";
url = "https://github.com/mitchellh/iochan";
rev = "b584a329b193e206025682ae6c10cdbe03b0cd77";
sha256 = "1fcwdhfci41ibpng2j4c1bqfng578cwzb3c00yw1lnbwwhaq9r6b";
rev = "87b45ffd0e9581375c491fef3d32130bb15c5bd7";
sha256 = "1435kdcx3j1xgr6mm5c7w7hjx015jb20yfqlkp93q143hspf02fx";
};
}
]

View file

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
homepage = https://01.org/linuxgraphics/;
description = "Tools for development and testing of the Intel DRM driver";
license = licenses.mit;
platforms = platforms.unix;
platforms = [ "x86_64-linux" "i686-linux" ];
maintainers = with maintainers; [ pSub ];
};
}

View file

@ -3,14 +3,14 @@
with stdenv.lib;
stdenv.mkDerivation rec {
name = "premake-${version}";
version = "5.0.0pre.alpha.11";
name = "premake5-${version}";
version = "5.0.0-alpha12";
src = fetchFromGitHub {
owner = "premake";
repo = "premake-core";
rev = "5dfb0238bc309df04819dd430def621ce854678d";
sha256 = "0k9xbqrnbwj0hnmdgcrwn70py1kiqvr10l42aw42xnlmdyg1sgsc";
rev = "v${version}";
sha256 = "1h3hr96pdz94njn4bg02ldcz0k5j1x017d8svc7fdyvl2b77nqzf";
};
buildInputs = optional stdenv.isDarwin [ CoreServices ];

View file

@ -12,7 +12,6 @@ let
};
soundSense = callPackage ./soundsense.nix { };
stoneSense = callPackage ./stonesense.nix { };
dwarf-fortress-unfuck = callPackage ./unfuck.nix { };

View file

@ -1,15 +0,0 @@
{ stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
name = "stonesense";
src = fetchFromGitHub {
owner = "DFHack";
repo = "stonesense";
rev = "be793a080e66db1ff79ac284070632ec1a896708";
sha256 = "1kibqblxp16z75zm48kk59w483933rkg4w339f28fcrbpg4sn92s";
};
nativeBuildInputs = [ cmake ];
cmakeFlags = [ "-DDFHACK_BUILD_ARCH=64" ];
}

View file

@ -11,7 +11,7 @@ stdenv.mkDerivation {
description = "Direct access to I/O ports from the command line";
homepage = http://people.redhat.com/rjones/ioport/;
license = licenses.gpl2Plus;
platforms = platforms.linux;
platforms = [ "x86_64-linux" "i686-linux" ];
maintainers = [ maintainers.cleverca22 ];
};
}

View file

@ -118,7 +118,7 @@ let
};
kernel = buildLinux {
inherit version modDirVersion src kernelPatches stdenv;
inherit version modDirVersion src kernelPatches stdenv extraMeta;
configfile = configfile.nativeDrv or configfile;
@ -131,10 +131,7 @@ let
passthru = {
features = kernelFeatures;
meta = kernel.meta // extraMeta;
passthru = kernel.passthru // (removeAttrs passthru [ "passthru" "meta" ]);
passthru = kernel.passthru // (removeAttrs passthru [ "passthru" ]);
};
nativeDrv = lib.addPassthru kernel.nativeDrv passthru;

View file

@ -4,6 +4,12 @@ import ./generic.nix (args // rec {
version = "4.13.16";
extraMeta.branch = "4.13";
# TODO: perhaps try being more concrete (ideally CVE numbers).
extraMeta.knownVulnerabilities = [
"ALSA: usb-audio: Fix potential out-of-bound access at parsing SU"
"eCryptfs: use after free in ecryptfs_release_messaging()"
];
src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "0cf7prqzl1ajbgl98w0symdyn0k5wl5xaf1l5ldgy6l083yg69dh";

View file

@ -1,13 +1,13 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, libelf, utillinux, ... } @ args:
import ./generic.nix (args // rec {
version = "4.15-rc1";
modDirVersion = "4.15.0-rc1";
version = "4.15-rc2";
modDirVersion = "4.15.0-rc2";
extraMeta.branch = "4.15";
src = fetchurl {
url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
sha256 = "1l7c132qb5qjd80hga03ivssfq65brqyd95sb4rd065dqrixp20n";
sha256 = "1i79gkjipj1q7w0d4zjz2hj43r12jicgznxk0wz0la2d8a4d3lcq";
};
# Should the testing kernels ever be built on Hydra?

View file

@ -39,6 +39,8 @@ in {
config ? stdenv.lib.optionalAttrs allowImportFromDerivation (readConfig configfile),
# Cross-compiling config
crossConfig ? if allowImportFromDerivation then (readConfig crossConfigfile) else config,
# Use defaultMeta // extraMeta
extraMeta ? {},
# Whether to utilize the controversial import-from-derivation feature to parse the config
allowImportFromDerivation ? false
}:
@ -228,7 +230,7 @@ let
maintainers.thoughtpolice
];
platforms = platforms.linux;
};
} // extraMeta;
};
in

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
name = "pgtap-${version}";
version = "0.97.0";
version = "0.98.0";
src = fetchFromGitHub {
owner = "theory";
repo = "pgtap";
rev = "v${version}";
sha256 = "1vzc8pxzi0rbywmrvx7i5awngsvzcz75i4jl9bk2vqr223chax6f";
sha256 = "17r3b409k05pbypmwdwgm1fl669jc6a1391szyxizx784k44a369";
};
nativeBuildInputs = [ postgresql perl perlPackages.TAPParserSourceHandlerpgTAP which ];

View file

@ -450,6 +450,7 @@ in
};
nativeBuildInputs = [ pkgconfig ];
buildInputs = [ dri2proto dri3proto renderproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ];
postPatch = "sed '1i#include <malloc.h>' -i include/os.h";
meta.platforms = stdenv.lib.platforms.unix;
} else throw "unsupported xorg abiCompat: ${args.abiCompat}";

View file

@ -1,14 +1,14 @@
{ stdenv, fetchFromGitHub }:
stdenv.mkDerivation rec {
version = "0.5";
version = "0.6";
name = "nix-bash-completions-${version}";
src = fetchFromGitHub {
owner = "hedning";
repo = "nix-bash-completions";
rev = "v${version}";
sha256 = "095dbbqssaxf0y85xw73gajif6lzy2aja4scg3plplng3k9zbldz";
sha256 = "093rla6wwx51fclh7xm8qlssx70hj0fj23r59qalaaxf7fdzg2hf";
};
installPhase = ''

View file

@ -1,7 +1,7 @@
{ stdenv, fetchFromGitHub }:
let
version = "0.3.5";
version = "0.3.6";
in
stdenv.mkDerivation rec {
@ -11,7 +11,7 @@ stdenv.mkDerivation rec {
owner = "spwhitt";
repo = "nix-zsh-completions";
rev = "${version}";
sha256 = "1fp565qbzbbwj99rq3c28gpq8gcnlxb2glj05382zimas1dfd0y9";
sha256 = "193yd0c3j62lhy7n7y9l0viwdiymvrfbqcgki69dm2414n3mlh05";
};
installPhase = ''

View file

@ -1,28 +1,13 @@
{ stdenv, fetchpatch, fetchgit, fetchFromGitHub }:
let
# https://github.com/spwhitt/nix-zsh-completions/pull/2
nix-zsh-completions = fetchFromGitHub {
owner = "garbas";
repo = "nix-zsh-completions";
rev = "9b7d216ec095ccee541ebfa5f04249aa2964d054";
sha256 = "1pvmfcqdvdi3nc1jm72f54mwf06yrmlq31pqw6b5fczawcz02jrz";
};
in stdenv.mkDerivation rec {
rev = "4f19700919c8ebbaf75755fc0d03716d13183f49";
name = "zsh-prezto-2015-03-03_rev${builtins.substring 0 7 rev}";
stdenv.mkDerivation rec {
name = "zsh-prezto-2017-12-03";
src = fetchgit {
url = "https://github.com/sorin-ionescu/prezto";
inherit rev;
sha256 = "17mql9mb7zbf8q1nvnci60yrmz5bl9q964i8dv4shz8b42861cdg";
rev = "029414581e54f5b63156f81acd0d377e8eb78883";
sha256 = "0crrj2nq0wcv5in8qimnkca2an760aqald13vq09s5kbwwc9rs1f";
fetchSubmodules = true;
};
patches = [
(fetchpatch {
url = "https://github.com/sorin-ionescu/prezto/pull/1028.patch";
sha256 = "0yrj72s1hiaq13374xa82hxdig4s0kvqjn9apkmw0h7kzggxjfn3";
})
];
buildPhase = ''
sed -i -e "s|\''${ZDOTDIR:\-\$HOME}/.zpreztorc|/etc/zpreztorc|g" init.zsh
sed -i -e "s|\''${ZDOTDIR:\-\$HOME}/.zprezto/|$out/|g" init.zsh
@ -32,8 +17,7 @@ in stdenv.mkDerivation rec {
sed -i -e "s|\''${0:h}/cache.zsh|\''${ZDOTDIR:\-\$HOME}/.zfasd_cache|g" modules/fasd/init.zsh
'';
installPhase = ''
mkdir -p $out/modules/nix
cp ${nix-zsh-completions}/* $out/modules/nix -R
mkdir -p $out
cp ./* $out/ -R
'';
meta = with stdenv.lib; {

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec {
name = "fwup-${version}";
version = "0.16.1";
version = "0.18.1";
src = fetchFromGitHub {
owner = "fhunleth";
repo = "fwup";
rev = "v${version}";
sha256 = "1hphgpwxzdbfswzxbx0jm7lma1xkkwxvm8ll3jp2ljmimqzzb7jf";
sha256 = "0qdld8jy1rkpfzbfhnssr58q1gciln3pw9m6fj0jarfgja4gj31l";
};
doCheck = true;

View file

@ -56,6 +56,6 @@ stdenv.mkDerivation rec {
homepage = http://www.memtest.org/;
description = "A tool to detect memory errors";
license = stdenv.lib.licenses.gpl2;
platforms = stdenv.lib.platforms.linux;
platforms = [ "x86_64-linux" "i686-linux" ];
};
}

View file

@ -1,25 +1,24 @@
{ stdenv, fetchurl, premake5, hostPlatform }:
{ stdenv, fetchFromGitHub, premake5, ninja, hostPlatform }:
stdenv.mkDerivation rec {
name = "otfcc-${version}";
version = "0.8.6";
src = fetchurl {
url = "https://github.com/caryll/otfcc/archive/v${version}.tar.gz";
sha256 = "0kap52bzrn21fmph8j2pc71f80f38ak1p2fcczzmrh0hb1r9c8dd";
src = fetchFromGitHub {
owner = "caryll";
repo = "otfcc";
rev = "v${version}";
sha256 = "0yy9awffxxs0cdlf0akld73ndnwmylxvplac4k6j7641m3vk1g8p";
};
nativeBuildInputs = [ premake5 ];
nativeBuildInputs = [ premake5 ninja ];
configurePhase = ''
premake5 gmake
premake5 ninja
'';
preBuild = "cd build/gmake";
makeFlags = ''config=release_${if hostPlatform.isi686 then "x86" else "x64"}'';
postBuild = "cd ../..";
ninjaFlags = let x = if hostPlatform.isi686 then "x86" else "x64"; in
[ "-C" "build/ninja" "otfccdump_release_${x}" "otfccbuild_release_${x}" ];
installPhase = ''
mkdir -p $out/bin

View file

@ -15,11 +15,11 @@ with stdenv.lib;
buildPythonApplication rec {
name = "youtube-dl-${version}";
version = "2017.11.06";
version = "2017.12.02";
src = fetchurl {
url = "https://yt-dl.org/downloads/${version}/${name}.tar.gz";
sha256 = "1djq3sf16il6y7n175gv7xwdz2s9lvsvzs38k95cj579l4k0433d";
sha256 = "1qf5gz00cnxzab3cwh9kxzhs08mddm0nwvb7j5z5xxzhi6wkslha";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
name = "hashcat-${version}";
version = "4.0.0";
version = "4.0.1";
src = fetchurl {
url = "https://hashcat.net/files/hashcat-${version}.tar.gz";
sha256 = "0l1vq4h1gfxc2yclxkvy6gfz6sii2vyzip8pw6ifq930y8dvi34y";
sha256 = "1pafjwibppylfgs3rck6724dhd3vwwndb9lkc29gd64pxd3l98kz";
};
nativeBuildInputs = [ makeWrapper ];

View file

@ -3,11 +3,11 @@
}:
stdenv.mkDerivation rec {
name = "tor-0.3.1.8";
name = "tor-0.3.1.9";
src = fetchurl {
url = "https://dist.torproject.org/${name}.tar.gz";
sha256 = "18dinpj03d036rashlad16lv7j2hba8gg742z07l37x5c242kxkx";
sha256 = "09ixizsr635qyshvrn1m5asjkaz4fm8dx80lc3ajyy0fi7vh86vf";
};
outputs = [ "out" "geoip" ];

View file

@ -9,13 +9,13 @@ let
};
in stdenv.mkDerivation rec {
name = "vault-${version}";
version = "0.8.3";
version = "0.9.0";
src = fetchFromGitHub {
owner = "hashicorp";
repo = "vault";
rev = "v${version}";
sha256 = "1dcmqbcdkj42614am2invb6wf8v29z4sp4d354a4d83rwhyb0qly";
sha256 = "1c3jaajf3wpjczbncvdpyy5vaa62gb9287bj2zi2khvqzvii36b0";
};
nativeBuildInputs = [ go gox removeReferencesTo ];
@ -23,6 +23,7 @@ in stdenv.mkDerivation rec {
buildPhase = ''
patchShebangs ./
substituteInPlace scripts/build.sh --replace 'git rev-parse HEAD' 'echo ${src.rev}'
sed -i s/'^GIT_DIRTY=.*'/'GIT_DIRTY="+NixOS"'/ scripts/build.sh
mkdir -p src/github.com/hashicorp
ln -s $(pwd) src/github.com/hashicorp/vault

View file

@ -3,11 +3,11 @@
pythonPackages.buildPythonApplication rec {
name = "${pname}-${version}";
pname = "vulnix";
version = "1.3.4";
version = "1.4.0";
src = pythonPackages.fetchPypi {
inherit pname version;
sha256 = "1js1i86pgkkqc9yzp1rck7rmaz79klv4048r9z7v56fam0a6sg05";
sha256 = "19kfqxlrigrgwn74x06m70ar2fhyhic5kfmdanjwjcbaxblha3l8";
};
buildInputs = with pythonPackages; [ flake8 pytest pytestcov ];

View file

@ -0,0 +1,22 @@
{ stdenv, go, systemd, polkit, fetchFromGitHub, m4 }:
stdenv.mkDerivation {
name = "localtime-2017-11-07";
src = fetchFromGitHub {
owner = "Stebalien";
repo = "localtime";
rev = "2e7b4317c723406bd75b2a1d640219ab9f8090ce";
sha256 = "04fyna8p7q7skzx9fzmncd6gx7x5pwa9jh8a84hpljlvj0kldfs8";
};
buildInputs = [ go systemd polkit m4 ];
makeFlags = [ "PREFIX=$(out)" ];
meta = {
description = "A daemon for keeping the system timezone up-to-date based on the current location";
homepage = https://github.com/Stebalien/localtime;
platforms = stdenv.lib.platforms.linux;
};
}

View file

@ -24,6 +24,6 @@ stdenv.mkDerivation {
homepage = https://github.com/google/rowhammer-test;
license = licenses.asl20;
maintainers = [ maintainers.viric ];
platforms = platforms.unix;
platforms = [ "x86_64-linux" "i686-linux" ];
};
}

View file

@ -4,13 +4,13 @@ with stdenv.lib;
stdenv.mkDerivation rec {
name = "highlight-${version}";
version = "3.40";
version = "3.41";
src = fetchFromGitHub {
owner = "andre-simon";
repo = "highlight";
rev = "${version}";
sha256 = "0bkywhz4y10qcajimdha1ck5mvn7fsrv3yn8nd6rqbva39gbfmfd";
sha256 = "163ghkyv3v6v200pskajlsz6sbq3hi31qx7abjcbwc0dajqfngvj";
};
nativeBuildInputs = [ pkgconfig ] ++ optional stdenv.isDarwin gcc ;

View file

@ -27,7 +27,9 @@ with pkgs;
# Used by wine, firefox with debugging version of Flash, ...
pkgsi686Linux = forceSystem "i686-linux" "i386";
callPackage_i686 = pkgsi686Linux.callPackage;
callPackage_i686 = if stdenv.system == "i686-linux" || stdenv.system == "x86_64-linux"
then pkgsi686Linux.callPackage
else throw "callPackage_i686 not supported on system '${stdenv.system}'";
# A stdenv capable of building 32-bit binaries. On x86_64-linux,
# it uses GCC compiled with multilib support; on i686-linux, it's
@ -828,10 +830,10 @@ with pkgs;
enableSharedExecutables = false;
executableToolDepends = [ makeWrapper ];
postInstall = ''
exe=$out/libexec/${drv.pname}-${drv.version}/${drv.pname}
install -D $out/bin/${drv.pname} $exe
rm -rf $out/{bin,lib,share}
makeWrapper $exe $out/bin/${drv.pname} \
exe=$libexec/bin/${drv.pname}-${drv.version}/${drv.pname}
install -D $bin/bin/${drv.pname} $exe
rm -rf $bin/bin $out/lib $out/share
makeWrapper $exe $bin/bin/${drv.pname} \
--prefix PATH ":" "${nix}/bin" \
--prefix PATH ":" "${nix-prefetch-scripts}/bin"
mkdir -p $out/share/{bash-completion/completions,zsh/vendor-completions,fish/completions}
@ -845,7 +847,7 @@ with pkgs;
executableToolDepends = [ makeWrapper ];
postInstall = ''
wrapProgram $out/bin/stack2nix \
--prefix PATH ":" "${git}/bin:${cabal2nix}/bin:${cabal-install}/bin:${stack}/bin"
${lib.makeBinPath [ git cabal2nix cabal-install stack ]}
'';
});
@ -3208,6 +3210,8 @@ with pkgs;
limesurvey = callPackage ../servers/limesurvey { };
localtime = callPackage ../tools/system/localtime { };
logcheck = callPackage ../tools/system/logcheck {
inherit (perlPackages) mimeConstruct;
};

View file

@ -9406,18 +9406,15 @@ in {
hetzner = buildPythonPackage rec {
name = "hetzner-${version}";
version = "0.7.5";
version = "0.8.0";
src = pkgs.fetchFromGitHub {
repo = "hetzner";
owner = "RedMoonStudios";
owner = "aszlig";
rev = "v${version}";
sha256 = "1fw7i1z4a39i1ljd9qd4f5p1p3a4257jfglkdpw90xjwl7fdpq42";
sha256 = "04q2q2w2qkhfly8rfjg2h5pnh42gs18l6cmipqc37yf7qvkw3nd0";
};
# not there yet, but coming soon.
doCheck = false;
meta = {
homepage = "https://github.com/RedMoonStudios/hetzner";
description = "High-level Python API for accessing the Hetzner robot";