Merge remote-tracking branch 'upstream/master' into HEAD

This commit is contained in:
Frederik Rietdijk 2017-08-08 09:01:54 +02:00
commit 89af5d93e6
42 changed files with 975 additions and 657 deletions

View File

@ -82,7 +82,7 @@ versions available from various packages.
</para> </para>
<para>Resulting derivations for both builders also have two helpful <para>Resulting derivations for both builders also have two helpful
attributes, <literal>env</literal> and <literal>wrapper</literal>. attributes, <literal>env</literal> and <literal>wrappedRuby</literal>.
The first one allows one to quickly drop into The first one allows one to quickly drop into
<command>nix-shell</command> with the specified environment present. <command>nix-shell</command> with the specified environment present.
E.g. <command>nix-shell -A sensu.env</command> would give you an E.g. <command>nix-shell -A sensu.env</command> would give you an
@ -110,15 +110,11 @@ the needed dependencies. For example, to make a derivation
in stdenv.mkDerivation { in stdenv.mkDerivation {
name = "my-script"; name = "my-script";
buildInputs = [ env.wrappedRuby ];
buildInputs = [ env.wrapper ]; phases = [ "installPhase" "fixupPhase" ];
script = ./my-script.rb; script = ./my-script.rb;
buildCommand = '' buildCommand = ''
mkdir -p $out/bin
install -D -m755 $script $out/bin/my-script install -D -m755 $script $out/bin/my-script
patchShebangs $out/bin/my-script
''; '';
}]]> }]]>
</programlisting> </programlisting>

View File

@ -94,6 +94,7 @@
campadrenalin = "Philip Horger <campadrenalin@gmail.com>"; campadrenalin = "Philip Horger <campadrenalin@gmail.com>";
canndrew = "Andrew Cann <shum@canndrew.org>"; canndrew = "Andrew Cann <shum@canndrew.org>";
carlsverre = "Carl Sverre <accounts@carlsverre.com>"; carlsverre = "Carl Sverre <accounts@carlsverre.com>";
casey = "Casey Rodarmor <casey@rodarmor.net>";
cdepillabout = "Dennis Gosnell <cdep.illabout@gmail.com>"; cdepillabout = "Dennis Gosnell <cdep.illabout@gmail.com>";
cfouche = "Chaddaï Fouché <chaddai.fouche@gmail.com>"; cfouche = "Chaddaï Fouché <chaddai.fouche@gmail.com>";
changlinli = "Changlin Li <mail@changlinli.com>"; changlinli = "Changlin Li <mail@changlinli.com>";

View File

@ -118,6 +118,9 @@ in
"/share/themes" "/share/themes"
"/share/vim-plugins" "/share/vim-plugins"
"/share/vulkan" "/share/vulkan"
"/share/kservices5"
"/share/kservicetypes5"
"/share/kxmlgui5"
]; ];
system.path = pkgs.buildEnv { system.path = pkgs.buildEnv {

View File

@ -70,7 +70,7 @@ let
enabled = false; enabled = false;
typesdb = "${pkgs.collectd}/share/collectd/types.db"; typesdb = "${pkgs.collectd}/share/collectd/types.db";
database = "collectd_db"; database = "collectd_db";
port = 25826; bind-address = ":25826";
}]; }];
opentsdb = [{ opentsdb = [{

View File

@ -129,16 +129,32 @@ let
''; '';
vhosts = concatStringsSep "\n" (mapAttrsToList (vhostName: vhost: vhosts = concatStringsSep "\n" (mapAttrsToList (vhostName: vhost:
let let
ssl = vhost.enableSSL || vhost.forceSSL; ssl = with vhost; addSSL || onlySSL || enableSSL;
defaultPort = if ssl then 443 else 80;
listenString = { addr, port, ... }: defaultListen = with vhost;
"listen ${addr}:${toString (if port != null then port else defaultPort)} " if listen != [] then listen
else if onlySSL || enableSSL then
singleton { addr = "0.0.0.0"; port = 443; ssl = true; }
++ optional enableIPv6 { addr = "[::]"; port = 443; ssl = true; }
else singleton { addr = "0.0.0.0"; port = 80; ssl = false; }
++ optional enableIPv6 { addr = "[::]"; port = 80; ssl = false; }
++ optional addSSL { addr = "0.0.0.0"; port = 443; ssl = true; }
++ optional (enableIPv6 && addSSL) { addr = "[::]"; port = 443; ssl = true; };
hostListen =
if !vhost.forceSSL
then defaultListen
else filter (x: x.ssl) defaultListen;
listenString = { addr, port, ssl, ... }:
"listen ${addr}:${toString port} "
+ optionalString ssl "ssl http2 " + optionalString ssl "ssl http2 "
+ optionalString vhost.default "default_server" + optionalString vhost.default "default_server "
+ ";"; + ";";
redirectListen = filter (x: !x.ssl) defaultListen;
redirectListenString = { addr, ... }: redirectListenString = { addr, ... }:
"listen ${addr}:80 ${optionalString vhost.default "default_server"};"; "listen ${addr}:80 ${optionalString vhost.default "default_server"};";
@ -159,7 +175,7 @@ let
in '' in ''
${optionalString vhost.forceSSL '' ${optionalString vhost.forceSSL ''
server { server {
${concatMapStringsSep "\n" redirectListenString vhost.listen} ${concatMapStringsSep "\n" redirectListenString redirectListen}
server_name ${vhost.serverName} ${concatStringsSep " " vhost.serverAliases}; server_name ${vhost.serverName} ${concatStringsSep " " vhost.serverAliases};
${optionalString vhost.enableACME acmeLocation} ${optionalString vhost.enableACME acmeLocation}
@ -170,7 +186,7 @@ let
''} ''}
server { server {
${concatMapStringsSep "\n" listenString vhost.listen} ${concatMapStringsSep "\n" listenString hostListen}
server_name ${vhost.serverName} ${concatStringsSep " " vhost.serverAliases}; server_name ${vhost.serverName} ${concatStringsSep " " vhost.serverAliases};
${optionalString vhost.enableACME acmeLocation} ${optionalString vhost.enableACME acmeLocation}
${optionalString (vhost.root != null) "root ${vhost.root};"} ${optionalString (vhost.root != null) "root ${vhost.root};"}
@ -425,6 +441,7 @@ in
example = literalExample '' example = literalExample ''
{ {
"hydra.example.com" = { "hydra.example.com" = {
addSSL = true;
forceSSL = true; forceSSL = true;
enableACME = true; enableACME = true;
locations."/" = { locations."/" = {
@ -441,11 +458,40 @@ in
config = mkIf cfg.enable { config = mkIf cfg.enable {
# TODO: test user supplied config file pases syntax test # TODO: test user supplied config file pases syntax test
assertions = let hostOrAliasIsNull = l: l.root == null || l.alias == null; in [ warnings =
let
deprecatedSSL = name: config: optional config.enableSSL
''
config.services.nginx.virtualHosts.<name>.enableSSL is deprecated,
use config.services.nginx.virtualHosts.<name>.onlySSL instead.
'';
in flatten (mapAttrsToList deprecatedSSL virtualHosts);
assertions =
let
hostOrAliasIsNull = l: l.root == null || l.alias == null;
in [
{ {
assertion = all (host: all hostOrAliasIsNull (attrValues host.locations)) (attrValues virtualHosts); assertion = all (host: all hostOrAliasIsNull (attrValues host.locations)) (attrValues virtualHosts);
message = "Only one of nginx root or alias can be specified on a location."; message = "Only one of nginx root or alias can be specified on a location.";
} }
{
assertion = all (conf: with conf; !(addSSL && (onlySSL || enableSSL))) (attrValues virtualHosts);
message = ''
Options services.nginx.service.virtualHosts.<name>.addSSL and
services.nginx.virtualHosts.<name>.onlySSL are mutually esclusive
'';
}
{
assertion = all (conf: with conf; forceSSL -> addSSL) (attrValues virtualHosts);
message = ''
Option services.nginx.virtualHosts.<name>.forceSSL requires
services.nginx.virtualHosts.<name>.addSSL set to true.
'';
}
]; ];
systemd.services.nginx = { systemd.services.nginx = {

View File

@ -27,25 +27,21 @@ with lib;
}; };
listen = mkOption { listen = mkOption {
type = with types; listOf (submodule { type = with types; listOf (submodule { options = {
options = { addr = mkOption { type = str; description = "IP address."; };
addr = mkOption { type = str; description = "IP address."; }; port = mkOption { type = int; description = "Port number."; default = 80; };
port = mkOption { type = nullOr int; description = "Port number."; }; ssl = mkOption { type = bool; description = "Enable SSL."; default = false; };
}; }; });
}); default = [];
default =
[ { addr = "0.0.0.0"; port = null; } ]
++ optional config.networking.enableIPv6
{ addr = "[::]"; port = null; };
example = [ example = [
{ addr = "195.154.1.1"; port = 443; } { addr = "195.154.1.1"; port = 443; ssl = true;}
{ addr = "192.168.1.2"; port = 443; } { addr = "192.154.1.1"; port = 80; }
]; ];
description = '' description = ''
Listen addresses and ports for this virtual host. Listen addresses and ports for this virtual host.
IPv6 addresses must be enclosed in square brackets. IPv6 addresses must be enclosed in square brackets.
Setting the port to <literal>null</literal> defaults Note: this option overrides <literal>addSSL</literal>
to 80 for http and 443 for https (i.e. when enableSSL is set). and <literal>onlySSL</literal>.
''; '';
}; };
@ -70,16 +66,39 @@ with lib;
''; '';
}; };
enableSSL = mkOption { addSSL = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;
description = "Whether to enable SSL (https) support."; description = ''
Whether to enable HTTPS in addition to plain HTTP. This will set defaults for
<literal>listen</literal> to listen on all interfaces on the respective default
ports (80, 443).
'';
};
onlySSL = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable HTTPS and reject plain HTTP connections. This will set
defaults for <literal>listen</literal> to listen on all interfaces on port 443.
'';
};
enableSSL = mkOption {
type = types.bool;
visible = false;
default = false;
}; };
forceSSL = mkOption { forceSSL = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;
description = "Whether to always redirect to https."; description = ''
Whether to add a separate nginx server block that permanently redirects (301)
all plain HTTP traffic to HTTPS. This option needs <literal>addSSL</literal>
to be set to true.
'';
}; };
sslCertificate = mkOption { sslCertificate = mkOption {

View File

@ -29,6 +29,7 @@ in
extraPackages = mkOption { extraPackages = mkOption {
default = self: []; default = self: [];
defaultText = "self: []";
example = literalExample '' example = literalExample ''
haskellPackages: [ haskellPackages: [
haskellPackages.xmonad-contrib haskellPackages.xmonad-contrib

View File

@ -0,0 +1,44 @@
# Usage:
# $ NIX_PATH=`pwd`:nixos-config=`pwd`/nixpkgs/nixos/modules/virtualisation/cloud-image.nix nix-build '<nixpkgs/nixos>' -A config.system.build.cloudImage
{ config, lib, pkgs, ... }:
with lib;
{
system.build.cloudImage = import ../../lib/make-disk-image.nix {
inherit pkgs lib config;
partitioned = true;
diskSize = 1 * 1024;
configFile = pkgs.writeText "configuration.nix"
''
{ config, lib, pkgs, ... }:
with lib;
{
imports = [ <nixpkgs/nixos/modules/virtualisation/cloud-image.nix> ];
}
'';
};
imports = [ ../profiles/qemu-guest.nix ];
fileSystems."/".device = "/dev/disk/by-label/nixos";
boot = {
kernelParams = [ "console=ttyS0" ];
loader.grub.device = "/dev/vda";
loader.timeout = 0;
};
networking.hostName = mkDefault "";
services.openssh = {
enable = true;
permitRootLogin = "without-password";
passwordAuthentication = mkDefault false;
};
services.cloud-init.enable = true;
}

View File

@ -3,7 +3,7 @@
extra-cmake-modules, kdoctools, extra-cmake-modules, kdoctools,
exiv2, lcms2, exiv2, lcms2,
baloo, kactivities, kdelibs4support, kio, kipi-plugins, libkdcraw, libkipi, baloo, kactivities, kdelibs4support, kio, kipi-plugins, libkdcraw, libkipi,
phonon, qtimageformats, qtsvg, qtx11extras phonon, qtimageformats, qtsvg, qtx11extras, kinit
}: }:
mkDerivation { mkDerivation {
@ -17,5 +17,5 @@ mkDerivation {
baloo exiv2 kactivities kdelibs4support kio libkdcraw lcms2 libkipi phonon baloo exiv2 kactivities kdelibs4support kio libkdcraw lcms2 libkipi phonon
qtimageformats qtsvg qtx11extras qtimageformats qtsvg qtx11extras
]; ];
propagatedUserEnvPkgs = [ kipi-plugins ]; propagatedUserEnvPkgs = [ kipi-plugins libkipi (lib.getBin kinit) ];
} }

View File

@ -5,7 +5,7 @@
, flac, lame, libmad, libmpcdec, libvorbis , flac, lame, libmad, libmpcdec, libvorbis
, libsamplerate, libsndfile, taglib , libsamplerate, libsndfile, taglib
, cdparanoia, cdrdao, cdrtools, dvdplusrwtools, libburn, libdvdcss, libdvdread, vcdimager , cdparanoia, cdrdao, cdrtools, dvdplusrwtools, libburn, libdvdcss, libdvdread, vcdimager
, ffmpeg, libmusicbrainz2, normalize, sox, transcode, shared_mime_info , ffmpeg, libmusicbrainz2, normalize, sox, transcode, shared_mime_info, kinit
}: }:
mkDerivation { mkDerivation {
@ -30,6 +30,7 @@ mkDerivation {
# others # others
ffmpeg libmusicbrainz2 shared_mime_info ffmpeg libmusicbrainz2 shared_mime_info
]; ];
propagatedUserEnvPkgs = [ (lib.getBin kinit) ];
postFixup = postFixup =
let k3bPath = lib.makeBinPath [ let k3bPath = lib.makeBinPath [
cdrdao cdrtools dvdplusrwtools libburn normalize sox transcode cdrdao cdrtools dvdplusrwtools libburn normalize sox transcode

View File

@ -20,4 +20,5 @@ mkDerivation {
kguiaddons kiconthemes kinit kio knotifications knotifyconfig kparts kpty kguiaddons kiconthemes kinit kio knotifications knotifyconfig kparts kpty
kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript kservice ktextwidgets kwidgetsaddons kwindowsystem kxmlgui qtscript
]; ];
propagatedUserEnvPkgs = [ (lib.getBin kinit) ];
} }

View File

@ -16,5 +16,5 @@ mkDerivation {
kconfig kcoreaddons kdbusaddons kdeclarative kio knotifications kconfig kcoreaddons kdbusaddons kdeclarative kio knotifications
kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi qtx11extras kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi qtx11extras
]; ];
propagatedUserEnvPkgs = [ kipi-plugins ]; propagatedUserEnvPkgs = [ kipi-plugins libkipi ];
} }

View File

@ -1,15 +0,0 @@
{ lib, symlinkJoin, k3b-original, cdrtools, makeWrapper }:
let
binPath = lib.makeBinPath [ cdrtools ];
in symlinkJoin {
name = "k3b-${k3b-original.version}";
paths = [ k3b-original ];
buildInputs = [ makeWrapper ];
postBuild = ''
wrapProgram $out/bin/k3b \
--prefix PATH ':' ${binPath}
'';
}

View File

@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
name = "caja-${version}"; name = "caja-${version}";
version = "${major-ver}.${minor-ver}"; version = "${major-ver}.${minor-ver}";
major-ver = "1.18"; major-ver = "1.18";
minor-ver = "0"; minor-ver = "3";
src = fetchurl { src = fetchurl {
url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz"; url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
sha256 = "1fc7dxj9hw8fffrcnwxbj8pq7gl08il68rkpk92rv3qm7siv1606"; sha256 = "0mljqcx7k8p27854zm7qzzn8ca6hs7hva9p43hp4p507z52caqmm";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
name = "mate-icon-theme-faenza-${version}"; name = "mate-icon-theme-faenza-${version}";
version = "${major-ver}.${minor-ver}"; version = "${major-ver}.${minor-ver}";
major-ver = "1.18"; major-ver = "1.18";
minor-ver = "0"; minor-ver = "1";
src = fetchurl { src = fetchurl {
url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz"; url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
sha256 = "1crfv6s3ljbc7a7m229bvs3qbjzlp8cgvyhqmdaa9npd5lxmk88v"; sha256 = "0vc3wg9l5yrxm0xmligz4lw2g3nqj1dz8fwv90xvym8pbjds2849";
}; };
nativeBuildInputs = [ autoreconfHook ]; nativeBuildInputs = [ autoreconfHook ];

View File

@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
name = "mate-icon-theme-${version}"; name = "mate-icon-theme-${version}";
version = "${major-ver}.${minor-ver}"; version = "${major-ver}.${minor-ver}";
major-ver = "1.18"; major-ver = "1.18";
minor-ver = "1"; minor-ver = "2";
src = fetchurl { src = fetchurl {
url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz"; url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
sha256 = "1217nza3ilmy6x3b9i1b75lpq7lpvhs18s0c2n3j6zhxdqy61nlm"; sha256 = "0si3li3kza7s45zhasjvqn5f85zpkn0x8i4kq1dlnqvjjqzkg4ch";
}; };
nativeBuildInputs = [ pkgconfig intltool iconnamingutils ]; nativeBuildInputs = [ pkgconfig intltool iconnamingutils ];

View File

@ -4,11 +4,11 @@ stdenv.mkDerivation rec {
name = "mate-terminal-${version}"; name = "mate-terminal-${version}";
version = "${major-ver}.${minor-ver}"; version = "${major-ver}.${minor-ver}";
major-ver = "1.18"; major-ver = "1.18";
minor-ver = "0"; minor-ver = "1";
src = fetchurl { src = fetchurl {
url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz"; url = "http://pub.mate-desktop.org/releases/${major-ver}/${name}.tar.xz";
sha256 = "07z8g8zkc8k6d7xqdlg18cjnwg7zzv5hbgwma5y9mh8zx9xsqz92"; sha256 = "1zihm609d2d9cw53ry385whshjl1dnkifpk41g1ddm9f58hv4da1";
}; };
buildInputs = [ buildInputs = [

View File

@ -6,15 +6,15 @@ stdenv.mkDerivation rec {
version = "${major-ver}.${minor-ver}"; version = "${major-ver}.${minor-ver}";
major-ver = gnome3.version; major-ver = gnome3.version;
minor-ver = { minor-ver = {
"3.20" = "19"; "3.20" = "22";
"3.22" = "10"; "3.22" = "13";
}."${major-ver}"; }."${major-ver}";
src = fetchurl { src = fetchurl {
url = "http://pub.mate-desktop.org/releases/themes/${major-ver}/${name}.tar.xz"; url = "http://pub.mate-desktop.org/releases/themes/${major-ver}/${name}.tar.xz";
sha256 = { sha256 = {
"3.20" = "11b8g374dkjhbs7x7khpriabvkip4dmfkma5myzfv6m54qlj3b8g"; "3.20" = "1yjj5w7zvyjyg0k21nwk438jjsnj0qklsf0z5pmmp1jff1vxyck4";
"3.22" = "03ficjfxa4qpx4vcshhk2zxryivckxpw7wcjgbn8xqnjk3lgzjcb"; "3.22" = "1p7w63an8qs15hkj79nppy7471glv0rm1b0himn3c4w69q8qdc9i";
}."${major-ver}"; }."${major-ver}";
}; };

View File

@ -0,0 +1,16 @@
--- ./scripts/xflock4.orig 2017-08-06 23:05:53.807688995 +0100
+++ ./scripts/xflock4 2017-08-06 23:09:06.171789989 +0100
@@ -24,10 +24,11 @@
PATH=/bin:/usr/bin
export PATH
-# Lock by xscreensaver or gnome-screensaver, if a respective daemon is running
+# Lock by xscreensaver, gnome-screensaver or light-locker, if a respective daemon is running
for lock_cmd in \
"xscreensaver-command -lock" \
- "gnome-screensaver-command --lock"
+ "gnome-screensaver-command --lock" \
+ "light-locker-command -l"
do
$lock_cmd >/dev/null 2>&1 && exit
done

View File

@ -16,6 +16,11 @@ stdenv.mkDerivation rec {
sha256 = "97d7f2a2d0af7f3623b68d1f04091e02913b28f9555dab8b0d26c8a1299d08fd"; sha256 = "97d7f2a2d0af7f3623b68d1f04091e02913b28f9555dab8b0d26c8a1299d08fd";
}; };
patches = [
# Fix "lock screen" not working for light-locker
./xfce4-light-locker.patch
];
buildInputs = buildInputs =
[ pkgconfig intltool gtk libxfce4util libxfce4ui libwnck dbus_glib [ pkgconfig intltool gtk libxfce4util libxfce4ui libwnck dbus_glib
xfconf xfce4panel libglade xorg.iceauth xorg.libSM xfconf xfce4panel libglade xorg.iceauth xorg.libSM

View File

@ -27,7 +27,8 @@
, mesa_noglu , mesa_noglu
, freetype , freetype
, fontconfig , fontconfig
, gnome2 , gtk2
, pango
, cairo , cairo
, alsaLib , alsaLib
, atk , atk
@ -196,7 +197,7 @@ let result = stdenv.mkDerivation rec {
* libXt is only needed on amd64 * libXt is only needed on amd64
*/ */
libraries = libraries =
[stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xorg.libXxf86vm alsaLib fontconfig freetype gnome2.pango gnome2.gtk cairo gdk_pixbuf atk] ++ [stdenv.cc.libc glib libxml2 libav_0_8 ffmpeg libxslt mesa_noglu xorg.libXxf86vm alsaLib fontconfig freetype pango gtk2 cairo gdk_pixbuf atk] ++
(if swingSupport then [xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp xorg.libXt xorg.libXrender stdenv.cc.cc] else []); (if swingSupport then [xorg.libX11 xorg.libXext xorg.libXtst xorg.libXi xorg.libXp xorg.libXt xorg.libXrender stdenv.cc.cc] else []);
rpath = stdenv.lib.strings.makeLibraryPath libraries; rpath = stdenv.lib.strings.makeLibraryPath libraries;

View File

@ -0,0 +1,33 @@
{stdenv, fetchurl, autoreconfHook}:
let
version = "5.6";
in
stdenv.mkDerivation {
name = "polyml-${version}";
prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
substituteInPlace configure.ac --replace stdc++ c++
'';
buildInputs = stdenv.lib.optional stdenv.isDarwin autoreconfHook;
src = fetchurl {
url = "mirror://sourceforge/polyml/polyml.${version}.tar.gz";
sha256 = "05d6l2a5m9jf32a8kahwg2p2ph4x9rjf1nsl83331q3gwn5bkmr0";
};
meta = {
description = "Standard ML compiler and interpreter";
longDescription = ''
Poly/ML is a full implementation of Standard ML.
'';
homepage = http://www.polyml.org/;
license = stdenv.lib.licenses.lgpl21;
platforms = with stdenv.lib.platforms; linux;
maintainers = [ #Add your name here!
stdenv.lib.maintainers.z77z
];
};
}

View File

@ -3,13 +3,13 @@
stdenv.mkDerivation ( rec { stdenv.mkDerivation ( rec {
name = "ponyc-${version}"; name = "ponyc-${version}";
version = "0.16.1"; version = "0.17.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ponylang"; owner = "ponylang";
repo = "ponyc"; repo = "ponyc";
rev = version; rev = version;
sha256 = "175yivc5vjwfdcqcpkdqmdfy72pn4k62n4j3qagfbwya7frq2car"; sha256 = "06g811x7vc275ypn3laqcsq7lmp2w8al6ipkpknhpq9c6lf7dvcp";
}; };
buildInputs = [ llvm makeWrapper which ]; buildInputs = [ llvm makeWrapper which ];

View File

@ -64,8 +64,19 @@ self: super: builtins.intersectAttrs super {
"--extra-include-dirs=${pkgs.cudatoolkit}/include" "--extra-include-dirs=${pkgs.cudatoolkit}/include"
]; ];
preConfigure = '' preConfigure = ''
unset CC # unconfuse the haskell-cuda configure script export CUDA_PATH=${pkgs.cudatoolkit}
sed -i -e 's|/usr/local/cuda|${pkgs.cudatoolkit}|g' configure '';
});
nvvm = overrideCabal super.nvvm (drv: {
preConfigure = ''
export CUDA_PATH=${pkgs.cudatoolkit}
'';
});
cufft = overrideCabal super.cufft (drv: {
preConfigure = ''
export CUDA_PATH=${pkgs.cudatoolkit}
''; '';
}); });

View File

@ -1,5 +1,5 @@
{ pkgs, stdenv, fetchurl, fetchFromGitHub, makeWrapper, gawk, gnum4, gnused { pkgs, stdenv, fetchurl, fetchFromGitHub, makeWrapper, gawk, gnum4, gnused
, libxml2, libxslt, ncurses, openssl, perl, gcc, autoreconfHook , libxml2, libxslt, ncurses, openssl, perl, autoreconfHook
, openjdk ? null # javacSupport , openjdk ? null # javacSupport
, unixODBC ? null # odbcSupport , unixODBC ? null # odbcSupport
, mesa ? null, wxGTK ? null, wxmac ? null, xorg ? null # wxSupport , mesa ? null, wxGTK ? null, wxmac ? null, xorg ? null # wxSupport
@ -47,9 +47,9 @@ in stdenv.mkDerivation ({
inherit src version; inherit src version;
buildInputs = nativeBuildInputs = [ autoreconfHook makeWrapper perl ];
[ perl gnum4 ncurses openssl autoreconfHook libxslt libxml2 makeWrapper gcc
] buildInputs = [ gnum4 ncurses openssl autoreconfHook libxslt libxml2 ]
++ optionals wxSupport wxPackages2 ++ optionals wxSupport wxPackages2
++ optionals odbcSupport odbcPackages ++ optionals odbcSupport odbcPackages
++ optionals javacSupport javacPackages ++ optionals javacSupport javacPackages

View File

@ -231,11 +231,11 @@ assert nvenc -> nvidia-video-sdk != null && nonfreeLicensing;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ffmpeg-full-${version}"; name = "ffmpeg-full-${version}";
version = "3.3.2"; version = "3.3.3";
src = fetchurl { src = fetchurl {
url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz"; url = "https://www.ffmpeg.org/releases/ffmpeg-${version}.tar.xz";
sha256 = "11974vcfsy8w0i6f4lfwqmg80xkfybqw7vw6zzrcn5i6ncddx60r"; sha256 = "07is8msrhxr1dk6vgwa192k2pl2a0in1h9w8f9cknlvbvhn01afj";
}; };
patchPhase = ''patchShebangs . patchPhase = ''patchShebangs .

View File

@ -6,7 +6,7 @@
callPackage ./generic.nix (args // rec { callPackage ./generic.nix (args // rec {
version = "${branch}"; version = "${branch}";
branch = "3.3.2"; branch = "3.3.3";
sha256 = "0slf12dxk6wq1ns09kqqqrzwylxcy0isvc3niyxig45gq3ah0s91"; sha256 = "0wx421d7vp4nz8kgp0kg16sswikj8ff1pd18x9mmcbpmqy7sqs8h";
darwinFrameworks = [ Cocoa CoreMedia ]; darwinFrameworks = [ Cocoa CoreMedia ];
}) })

View File

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "leatherman-${version}"; name = "leatherman-${version}";
version = "0.11.2"; version = "1.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "1rnk204mvzc44i69b8gfb1fjj5r4qby7ymal782rdplnlbm065r8"; sha256 = "15kg6vdr1iav5x3pzwvrdsi54lbl8zh2xwqlp03gaq4n3kg5wj3y";
rev = version; rev = version;
repo = "leatherman"; repo = "leatherman";
owner = "puppetlabs"; owner = "puppetlabs";

View File

@ -1,4 +1,4 @@
{ lib, stdenv, fetchurl, libgpgerror, enableCapabilities ? false, libcap }: { stdenv, fetchurl, libgpgerror, enableCapabilities ? false, libcap }:
assert enableCapabilities -> stdenv.isLinux; assert enableCapabilities -> stdenv.isLinux;
@ -14,9 +14,13 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" "info" ]; outputs = [ "out" "dev" "info" ];
outputBin = "dev"; outputBin = "dev";
buildInputs = # The CPU Jitter random number generator must not be compiled with
[ libgpgerror ] # optimizations and the optimize -O0 pragma only works for gcc.
++ lib.optional enableCapabilities libcap; # The build enables -O2 by default for everything else.
hardeningDisable = stdenv.lib.optional stdenv.cc.isClang "fortify";
buildInputs = [ libgpgerror ]
++ stdenv.lib.optional enableCapabilities libcap;
# Make sure libraries are correct for .pc and .la files # Make sure libraries are correct for .pc and .la files
# Also make sure includes are fixed for callers who don't use libgpgcrypt-config # Also make sure includes are fixed for callers who don't use libgpgcrypt-config

View File

@ -0,0 +1,24 @@
{ stdenv, buildPythonPackage, fetchPypi, fetchurl, dateutil, lxml }:
buildPythonPackage rec {
pname = "feedgen";
version = "0.5.1";
name = "${pname}-${version}";
src = fetchPypi {
inherit pname version;
sha256 = "3a344b5e3662e9012d095a081a7f216f188dccf3a8f44ad7882960fef05e6787";
};
propagatedBuildInputs = [ dateutil lxml ];
doCheck = true;
meta = with stdenv.lib; {
description = "Python module to generate ATOM feeds, RSS feeds and Podcasts.";
downloadPage = https://github.com/lkiesow/python-feedgen/releases;
homepage = https://github.com/lkiesow/python-feedgen;
license = with licenses; [ bsd2 lgpl3 ];
maintainers = with maintainers; [ casey ];
};
}

View File

@ -52,12 +52,12 @@ rec {
}; };
gradle_latest = gradleGen rec { gradle_latest = gradleGen rec {
name = "gradle-4.0.2"; name = "gradle-4.1";
nativeVersion = "0.14"; nativeVersion = "0.14";
src = fetchurl { src = fetchurl {
url = "http://services.gradle.org/distributions/${name}-bin.zip"; url = "http://services.gradle.org/distributions/${name}-bin.zip";
sha256 = "08ns3p1w258cbfk6yg3yy2mmy7wwma5riq04yjjgc4dx889l5b3r"; sha256 = "0hzdz5cy5dmyqz73qy80q74aiy87jl5vnxcy3imahgaszffglpfm";
}; };
}; };

View File

@ -1,31 +1,49 @@
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, parallel, sassc, inkscape, libxml2, glib, gdk_pixbuf, librsvg, gtk-engine-murrine }: { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, parallel, sassc, inkscape, libxml2, glib, gdk_pixbuf, librsvg, gtk-engine-murrine, gnome3 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "adapta-gtk-theme-${version}"; name = "adapta-gtk-theme-${version}";
version = "3.90.0.125"; version = "3.91.1.47";
meta = with stdenv.lib; {
description = "An adaptive GTK+ theme based on Material Design";
homepage = https://github.com/tista500/Adapta;
license = with licenses; [ gpl2 cc-by-sa-30 ];
platforms = platforms.linux;
maintainers = [ maintainers.romildo ];
};
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tista500"; owner = "tista500";
repo = "Adapta"; repo = "Adapta";
rev = version; rev = version;
sha256 = "0abww5rcbn478w2kdhjlf68bfj8yf8i02nlmrjpp7j1v14r32xr0"; sha256 = "1w41xwhb93p999g0835cmlax55a5fyz9j4m5nn6nss2d6g6nrxap";
}; };
preferLocalBuild = true; preferLocalBuild = true;
nativeBuildInputs = [ autoreconfHook pkgconfig parallel sassc inkscape libxml2 glib.dev ]; nativeBuildInputs = [
autoreconfHook
pkgconfig
parallel
sassc
inkscape
libxml2
glib.dev
gnome3.gnome_shell
];
buildInputs = [ gdk_pixbuf librsvg gtk-engine-murrine ]; buildInputs = [
gdk_pixbuf
librsvg
gtk-engine-murrine
];
postPatch = "patchShebangs ."; postPatch = "patchShebangs .";
configureFlags = "--disable-unity"; configureFlags = [
"--disable-gtk_legacy"
"--disable-gtk_next"
"--disable-unity"
"--disable-parallel" # parallel build is not finishing
];
meta = with stdenv.lib; {
description = "An adaptive Gtk+ theme based on Material Design";
homepage = https://github.com/tista500/Adapta;
license = with licenses; [ gpl2 cc-by-sa-30 ];
platforms = platforms.linux;
maintainers = [ maintainers.romildo ];
};
} }

File diff suppressed because it is too large Load Diff

View File

@ -1,12 +1,12 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.4.79"; version = "4.4.80";
extraMeta.branch = "4.4"; extraMeta.branch = "4.4";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "1a5wprjimsnx49sdg05ndmnx84m24fl48s64jvdpz58i3sss7g8d"; sha256 = "1hs07k49sbpi8yw2mdwn1967i82x4wn6kg0lbjvv5l1pv3alky1l";
}; };
kernelPatches = args.kernelPatches; kernelPatches = args.kernelPatches;

View File

@ -1,12 +1,12 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.9.40"; version = "4.9.41";
extraMeta.branch = "4.9"; extraMeta.branch = "4.9";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz";
sha256 = "16rdcvqkgb8hfzkkzbkhznnab22z43prm56jbrxnqr9acprnfmq2"; sha256 = "11y6q0mmi3z6pg4h0prv67pr1a78rvrzw75ygg6720dz0jzvnnmd";
}; };
kernelPatches = args.kernelPatches; kernelPatches = args.kernelPatches;

View File

@ -1,13 +1,13 @@
{ stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args: { stdenv, hostPlatform, fetchurl, perl, buildLinux, ... } @ args:
import ./generic.nix (args // rec { import ./generic.nix (args // rec {
version = "4.13-rc3"; version = "4.13-rc4";
modDirVersion = "4.13.0-rc3"; modDirVersion = "4.13.0-rc4";
extraMeta.branch = "4.13"; extraMeta.branch = "4.13";
src = fetchurl { src = fetchurl {
url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz"; url = "https://git.kernel.org/torvalds/t/linux-${version}.tar.gz";
sha256 = "07cxqf57hgs3wnbvkqixiwhjrwdf433pjwmh0hv1id0bk8wdrjjl"; sha256 = "00yiihmgifvl4bas861p87166nb1mf59b6nm5jsfk2zr27pszlyx";
}; };
features.iwlwifi = true; features.iwlwifi = true;

View File

@ -0,0 +1,35 @@
{ stdenv, fetchurl, makeWrapper }:
stdenv.mkDerivation rec {
name = "geekbench-${version}";
version = "4.1.1";
src = fetchurl {
url = "http://cdn.primatelabs.com/Geekbench-${version}-Linux.tar.gz";
sha256 = "1n9jyzf0a0w37hb30ip76hz73bvim76jd2fgd6131hh0shp1s4v6";
};
dontConfigure = true;
dontBuild = true;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/bin
cp -r dist/Geekbench-${version}-Linux/. $out/bin
rm $out/bin/geekbench_x86_32
for f in geekbench4 geekbench_x86_64 ; do
patchelf --set-interpreter $(cat ${stdenv.cc}/nix-support/dynamic-linker) $out/bin/$f
wrapProgram $out/bin/$f --prefix LD_LIBRARY_PATH : "${stdenv.lib.makeLibraryPath [ stdenv.cc.cc.lib ]}"
done
'';
meta = with stdenv.lib; {
description = "Cross-platform benchmark";
homepage = http://geekbench.com/;
license = licenses.unfree;
maintainers = [ maintainers.michalrus ];
platforms = [ "x86_64-linux" ];
};
}

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "pick-${version}"; name = "pick-${version}";
version = "1.6.1"; version = "1.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "thoughtbot"; owner = "calleerlandsson";
repo = "pick"; repo = "pick";
rev = "v${version}"; rev = "v${version}";
sha256 = "0iw3yqwg8j0pg56xx52xwn7n95vxlqbqh71zrc934v4mq971qlhd"; sha256 = "1x7ql530rj4yj50dzp8526mz92g4hhqxnig1qgiq3h3k815p31qb";
}; };
buildInputs = [ ncurses ]; buildInputs = [ ncurses ];

View File

@ -4,15 +4,20 @@ let
in pythonPackages.buildPythonApplication rec { in pythonPackages.buildPythonApplication rec {
name = "zabbix-cli-${version}"; name = "zabbix-cli-${version}";
version = "1.6.1"; version = "1.7.0";
propagatedBuildInputs = with pythonPackages; [ argparse requests ]; propagatedBuildInputs = with pythonPackages; [ ipaddr requests ];
# argparse is part of the standardlib
prePatch = ''
substituteInPlace setup.py --replace "'argparse'," ""
'';
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "usit-gd"; owner = "usit-gd";
repo = "zabbix-cli"; repo = "zabbix-cli";
rev = version; rev = version;
sha256 = "17ip3s8ifgj264zwxrr857wk02xmzmlsjrr613mdhkgdwizqbcs3"; sha256 = "0z33mv8xk0h72rn0iz1qrrkyz63w6cln8d5hqqddcvkxwnq0z6kx";
}; };
meta = with lib; { meta = with lib; {

View File

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "facter-${version}"; name = "facter-${version}";
version = "3.6.6"; version = "3.7.1";
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "07jphvwfmvrq28f8k15k16kz090zvb11nn6bd895fz5axag01ins"; sha256 = "0v5g7qlqqixgvc2hf9440a8sfh8jvgzynwk5ipcb505hi00ddq7a";
rev = version; rev = version;
repo = "facter"; repo = "facter";
owner = "puppetlabs"; owner = "puppetlabs";
@ -13,6 +13,7 @@ stdenv.mkDerivation rec {
CXXFLAGS = "-fpermissive"; CXXFLAGS = "-fpermissive";
NIX_CFLAGS_COMPILE = "-Wno-error"; NIX_CFLAGS_COMPILE = "-Wno-error";
NIX_LDFLAGS = "-lblkid";
cmakeFlags = [ "-DFACTER_RUBY=${ruby}/lib/libruby.so" ]; cmakeFlags = [ "-DFACTER_RUBY=${ruby}/lib/libruby.so" ];

View File

@ -1004,9 +1004,7 @@ with pkgs;
facedetect = callPackage ../tools/graphics/facedetect { }; facedetect = callPackage ../tools/graphics/facedetect { };
facter = callPackage ../tools/system/facter { facter = callPackage ../tools/system/facter { };
boost = boost160;
};
fasd = callPackage ../tools/misc/fasd { }; fasd = callPackage ../tools/misc/fasd { };
@ -1046,6 +1044,8 @@ with pkgs;
go-dependency-manager = callPackage ../development/tools/gdm { }; go-dependency-manager = callPackage ../development/tools/gdm { };
geekbench = callPackage ../tools/misc/geekbench { };
gencfsm = callPackage ../tools/security/gencfsm { }; gencfsm = callPackage ../tools/security/gencfsm { };
genromfs = callPackage ../tools/filesystems/genromfs { }; genromfs = callPackage ../tools/filesystems/genromfs { };
@ -2945,9 +2945,7 @@ with pkgs;
leafpad = callPackage ../applications/editors/leafpad { }; leafpad = callPackage ../applications/editors/leafpad { };
leatherman = callPackage ../development/libraries/leatherman { leatherman = callPackage ../development/libraries/leatherman { };
boost = boost160;
};
leela = callPackage ../tools/graphics/leela { }; leela = callPackage ../tools/graphics/leela { };
@ -6317,6 +6315,7 @@ with pkgs;
pltScheme = racket; # just to be sure pltScheme = racket; # just to be sure
polyml = callPackage ../development/compilers/polyml { }; polyml = callPackage ../development/compilers/polyml { };
polyml56 = callPackage ../development/compilers/polyml/5.6.nix { };
pure = callPackage ../development/interpreters/pure { pure = callPackage ../development/interpreters/pure {
llvm = llvm_35; llvm = llvm_35;
@ -11592,7 +11591,7 @@ with pkgs;
tt-rss = callPackage ../servers/tt-rss { }; tt-rss = callPackage ../servers/tt-rss { };
searx = callPackages ../servers/web-apps/searx { }; searx = callPackage ../servers/web-apps/searx { };
selfoss = callPackage ../servers/web-apps/selfoss { }; selfoss = callPackage ../servers/web-apps/selfoss { };
@ -18201,6 +18200,7 @@ with pkgs;
tini = callPackage ../applications/virtualization/tini {}; tini = callPackage ../applications/virtualization/tini {};
isabelle = callPackage ../applications/science/logic/isabelle { isabelle = callPackage ../applications/science/logic/isabelle {
polyml = polyml56;
java = if stdenv.isLinux then jre else jdk; java = if stdenv.isLinux then jre else jdk;
}; };

View File

@ -9795,6 +9795,8 @@ in {
}; };
}; };
feedgen = callPackage ../development/python-modules/feedgen { };
feedgenerator = callPackage ../development/python-modules/feedgenerator { feedgenerator = callPackage ../development/python-modules/feedgenerator {
inherit (pkgs) glibcLocales; inherit (pkgs) glibcLocales;
}; };