Merge branch 'master' into staging

More larger rebuilds.
This commit is contained in:
Vladimír Čunát 2017-06-10 10:04:41 +02:00
commit cb9f953c92
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
66 changed files with 1300 additions and 414 deletions

View File

@ -99,6 +99,7 @@
chris-martin = "Chris Martin <ch.martin@gmail.com>"; chris-martin = "Chris Martin <ch.martin@gmail.com>";
chrisjefferson = "Christopher Jefferson <chris@bubblescope.net>"; chrisjefferson = "Christopher Jefferson <chris@bubblescope.net>";
christopherpoole = "Christopher Mark Poole <mail@christopherpoole.net>"; christopherpoole = "Christopher Mark Poole <mail@christopherpoole.net>";
ciil = "Simon Lackerbauer <simon@lackerbauer.com>";
ckampka = "Christian Kampka <christian@kampka.net>"; ckampka = "Christian Kampka <christian@kampka.net>";
cko = "Christine Koppelt <christine.koppelt@gmail.com>"; cko = "Christine Koppelt <christine.koppelt@gmail.com>";
cleverca22 = "Michael Bishop <cleverca22@gmail.com>"; cleverca22 = "Michael Bishop <cleverca22@gmail.com>";

View File

@ -13,7 +13,7 @@ let
description = '' description = ''
Where the webroot of the HTTP vhost is located. Where the webroot of the HTTP vhost is located.
<filename>.well-known/acme-challenge/</filename> directory <filename>.well-known/acme-challenge/</filename> directory
will be created automatically if it doesn't exist. will be created below the webroot if it doesn't exist.
<literal>http://example.org/.well-known/acme-challenge/</literal> must also <literal>http://example.org/.well-known/acme-challenge/</literal> must also
be available (notice unencrypted HTTP). be available (notice unencrypted HTTP).
''; '';
@ -46,7 +46,10 @@ let
allowKeysForGroup = mkOption { allowKeysForGroup = mkOption {
type = types.bool; type = types.bool;
default = false; default = false;
description = "Give read permissions to the specified group to read SSL private certificates."; description = ''
Give read permissions to the specified group
(<option>security.acme.group</option>) to read SSL private certificates.
'';
}; };
postRun = mkOption { postRun = mkOption {
@ -65,21 +68,24 @@ let
"cert.der" "cert.pem" "chain.pem" "external.sh" "cert.der" "cert.pem" "chain.pem" "external.sh"
"fullchain.pem" "full.pem" "key.der" "key.pem" "account_key.json" "fullchain.pem" "full.pem" "key.der" "key.pem" "account_key.json"
]); ]);
default = [ "fullchain.pem" "key.pem" "account_key.json" ]; default = [ "fullchain.pem" "full.pem" "key.pem" "account_key.json" ];
description = '' description = ''
Plugins to enable. With default settings simp_le will Plugins to enable. With default settings simp_le will
store public certificate bundle in <filename>fullchain.pem</filename> store public certificate bundle in <filename>fullchain.pem</filename>,
and private key in <filename>key.pem</filename> in its state directory. private key in <filename>key.pem</filename> and those two previous
files combined in <filename>full.pem</filename> in its state directory.
''; '';
}; };
extraDomains = mkOption { extraDomains = mkOption {
type = types.attrsOf (types.nullOr types.str); type = types.attrsOf (types.nullOr types.str);
default = {}; default = {};
example = { example = literalExample ''
"example.org" = "/srv/http/nginx"; {
"mydomain.org" = null; "example.org" = "/srv/http/nginx";
}; "mydomain.org" = null;
}
'';
description = '' description = ''
Extra domain names for which certificates are to be issued, with their Extra domain names for which certificates are to be issued, with their
own server roots if needed. own server roots if needed.
@ -139,17 +145,19 @@ in
description = '' description = ''
Attribute set of certificates to get signed and renewed. Attribute set of certificates to get signed and renewed.
''; '';
example = { example = literalExample ''
"example.com" = { {
webroot = "/var/www/challenges/"; "example.com" = {
email = "foo@example.com"; webroot = "/var/www/challenges/";
extraDomains = { "www.example.com" = null; "foo.example.com" = "/var/www/foo/"; }; email = "foo@example.com";
}; extraDomains = { "www.example.com" = null; "foo.example.com" = "/var/www/foo/"; };
"bar.example.com" = { };
webroot = "/var/www/challenges/"; "bar.example.com" = {
email = "bar@example.com"; webroot = "/var/www/challenges/";
}; email = "bar@example.com";
}; };
}
'';
}; };
}; };
}; };
@ -238,6 +246,9 @@ in
mv $workdir/server.key ${cpath}/key.pem mv $workdir/server.key ${cpath}/key.pem
mv $workdir/server.crt ${cpath}/fullchain.pem mv $workdir/server.crt ${cpath}/fullchain.pem
# Create full.pem for e.g. lighttpd (same format as "simp_le ... -f full.pem" creates)
cat "${cpath}/key.pem" "${cpath}/fullchain.pem" > "${cpath}/full.pem"
# Clean up working directory # Clean up working directory
rm $workdir/server.csr rm $workdir/server.csr
rm $workdir/server.pass.key rm $workdir/server.pass.key
@ -247,6 +258,8 @@ in
chown '${data.user}:${data.group}' '${cpath}/key.pem' chown '${data.user}:${data.group}' '${cpath}/key.pem'
chmod ${rights} '${cpath}/fullchain.pem' chmod ${rights} '${cpath}/fullchain.pem'
chown '${data.user}:${data.group}' '${cpath}/fullchain.pem' chown '${data.user}:${data.group}' '${cpath}/fullchain.pem'
chmod ${rights} '${cpath}/full.pem'
chown '${data.user}:${data.group}' '${cpath}/full.pem'
''; '';
serviceConfig = { serviceConfig = {
Type = "oneshot"; Type = "oneshot";
@ -275,15 +288,14 @@ in
) )
); );
servicesAttr = listToAttrs services; servicesAttr = listToAttrs services;
nginxAttr = { injectServiceDep = {
nginx = { after = [ "acme-selfsigned-certificates.target" ];
after = [ "acme-selfsigned-certificates.target" ]; wants = [ "acme-selfsigned-certificates.target" "acme-certificates.target" ];
wants = [ "acme-selfsigned-certificates.target" "acme-certificates.target" ];
};
}; };
in in
servicesAttr // servicesAttr //
(if config.services.nginx.enable then nginxAttr else {}); (if config.services.nginx.enable then { nginx = injectServiceDep; } else {}) //
(if config.services.lighttpd.enable then { lighttpd = injectServiceDep; } else {});
systemd.timers = flip mapAttrs' cfg.certs (cert: data: nameValuePair systemd.timers = flip mapAttrs' cfg.certs (cert: data: nameValuePair
("acme-${cert}") ("acme-${cert}")

View File

@ -3,43 +3,129 @@
with lib; with lib;
let let
cfg = config.services.spamassassin; cfg = config.services.spamassassin;
spamassassin-local-cf = pkgs.writeText "local.cf" cfg.config;
spamassassin-init-pre = pkgs.writeText "init.pre" cfg.initPreConf;
spamdEnv = pkgs.buildEnv {
name = "spamd-env";
paths = [];
postBuild = ''
ln -sf ${spamassassin-init-pre} $out/init.pre
ln -sf ${spamassassin-local-cf} $out/local.cf
'';
};
in in
{ {
###### interface
options = { options = {
services.spamassassin = { services.spamassassin = {
enable = mkOption { enable = mkOption {
default = false; default = false;
description = "Whether to run the SpamAssassin daemon."; description = "Whether to run the SpamAssassin daemon";
}; };
debug = mkOption { debug = mkOption {
default = false; default = false;
description = "Whether to run the SpamAssassin daemon in debug mode."; description = "Whether to run the SpamAssassin daemon in debug mode";
}; };
config = mkOption {
type = types.lines;
description = ''
The SpamAssassin local.cf config
If you are using this configuration:
add_header all Status _YESNO_, score=_SCORE_ required=_REQD_ tests=_TESTS_ autolearn=_AUTOLEARN_ version=_VERSION_
Then you can Use this sieve filter:
require ["fileinto", "reject", "envelope"];
if header :contains "X-Spam-Flag" "YES" {
fileinto "spam";
}
Or this procmail filter:
:0:
* ^X-Spam-Flag: YES
/var/vpopmail/domains/lastlog.de/js/.maildir/.spam/new
To filter your messages based on the additional mail headers added by spamassassin.
'';
example = ''
#rewrite_header Subject [***** SPAM _SCORE_ *****]
required_score 5.0
use_bayes 1
bayes_auto_learn 1
add_header all Status _YESNO_, score=_SCORE_ required=_REQD_ tests=_TESTS_ autolearn=_AUTOLEARN_ version=_VERSION_
'';
default = "";
};
initPreConf = mkOption {
type = types.str;
description = "The SpamAssassin init.pre config.";
default =
''
#
# to update this list, run this command in the rules directory:
# grep 'loadplugin.*Mail::SpamAssassin::Plugin::.*' -o -h * | sort | uniq
#
#loadplugin Mail::SpamAssassin::Plugin::AccessDB
#loadplugin Mail::SpamAssassin::Plugin::AntiVirus
loadplugin Mail::SpamAssassin::Plugin::AskDNS
# loadplugin Mail::SpamAssassin::Plugin::ASN
loadplugin Mail::SpamAssassin::Plugin::AutoLearnThreshold
#loadplugin Mail::SpamAssassin::Plugin::AWL
loadplugin Mail::SpamAssassin::Plugin::Bayes
loadplugin Mail::SpamAssassin::Plugin::BodyEval
loadplugin Mail::SpamAssassin::Plugin::Check
#loadplugin Mail::SpamAssassin::Plugin::DCC
loadplugin Mail::SpamAssassin::Plugin::DKIM
loadplugin Mail::SpamAssassin::Plugin::DNSEval
loadplugin Mail::SpamAssassin::Plugin::FreeMail
loadplugin Mail::SpamAssassin::Plugin::Hashcash
loadplugin Mail::SpamAssassin::Plugin::HeaderEval
loadplugin Mail::SpamAssassin::Plugin::HTMLEval
loadplugin Mail::SpamAssassin::Plugin::HTTPSMismatch
loadplugin Mail::SpamAssassin::Plugin::ImageInfo
loadplugin Mail::SpamAssassin::Plugin::MIMEEval
loadplugin Mail::SpamAssassin::Plugin::MIMEHeader
# loadplugin Mail::SpamAssassin::Plugin::PDFInfo
#loadplugin Mail::SpamAssassin::Plugin::PhishTag
loadplugin Mail::SpamAssassin::Plugin::Pyzor
loadplugin Mail::SpamAssassin::Plugin::Razor2
# loadplugin Mail::SpamAssassin::Plugin::RelayCountry
loadplugin Mail::SpamAssassin::Plugin::RelayEval
loadplugin Mail::SpamAssassin::Plugin::ReplaceTags
# loadplugin Mail::SpamAssassin::Plugin::Rule2XSBody
# loadplugin Mail::SpamAssassin::Plugin::Shortcircuit
loadplugin Mail::SpamAssassin::Plugin::SpamCop
loadplugin Mail::SpamAssassin::Plugin::SPF
#loadplugin Mail::SpamAssassin::Plugin::TextCat
# loadplugin Mail::SpamAssassin::Plugin::TxRep
loadplugin Mail::SpamAssassin::Plugin::URIDetail
loadplugin Mail::SpamAssassin::Plugin::URIDNSBL
loadplugin Mail::SpamAssassin::Plugin::URIEval
# loadplugin Mail::SpamAssassin::Plugin::URILocalBL
loadplugin Mail::SpamAssassin::Plugin::VBounce
loadplugin Mail::SpamAssassin::Plugin::WhiteListSubject
loadplugin Mail::SpamAssassin::Plugin::WLBLEval
'';
};
}; };
}; };
###### implementation
config = mkIf cfg.enable { config = mkIf cfg.enable {
# Allow users to run 'spamc'. # Allow users to run 'spamc'.
environment.systemPackages = [ pkgs.spamassassin ]; environment.systemPackages = [ pkgs.spamassassin ];
users.extraUsers = singleton { users.extraUsers = singleton {
name = "spamd"; name = "spamd";
description = "Spam Assassin Daemon"; description = "Spam Assassin Daemon";
uid = config.ids.uids.spamd; uid = config.ids.uids.spamd;
group = "spamd"; group = "spamd";
@ -50,13 +136,65 @@ in
gid = config.ids.gids.spamd; gid = config.ids.gids.spamd;
}; };
systemd.services.sa-update = {
script = ''
set +e
${pkgs.su}/bin/su -s "${pkgs.bash}/bin/bash" -c "${pkgs.spamassassin}/bin/sa-update --gpghomedir=/var/lib/spamassassin/sa-update-keys/ --siteconfigpath=${spamdEnv}/" spamd
v=$?
set -e
if [ $v -gt 1 ]; then
echo "sa-update execution error"
exit $v
fi
if [ $v -eq 0 ]; then
systemctl reload spamd.service
fi
'';
};
systemd.timers.sa-update = {
description = "sa-update-service";
partOf = [ "sa-update.service" ];
wantedBy = [ "timers.target" ];
timerConfig = {
OnCalendar = "1:*";
Persistent = true;
};
};
systemd.services.spamd = { systemd.services.spamd = {
description = "Spam Assassin Server"; description = "Spam Assassin Server";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
after = [ "network.target" ]; after = [ "network.target" ];
script = "${pkgs.spamassassin}/bin/spamd ${optionalString cfg.debug "-D"} --username=spamd --groupname=spamd --nouser-config --virtual-config-dir=/var/lib/spamassassin/user-%u --allow-tell --pidfile=/var/run/spamd.pid"; serviceConfig = {
ExecStart = "${pkgs.spamassassin}/bin/spamd ${optionalString cfg.debug "-D"} --username=spamd --groupname=spamd --siteconfigpath=${spamdEnv} --virtual-config-dir=/var/lib/spamassassin/user-%u --allow-tell --pidfile=/var/run/spamd.pid";
ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID";
};
# 0 and 1 no error, exitcode > 1 means error:
# https://spamassassin.apache.org/full/3.1.x/doc/sa-update.html#exit_codes
preStart = ''
# this abstraction requires no centralized config at all
if [ -d /etc/spamassassin ]; then
echo "This spamassassin does not support global '/etc/spamassassin' folder for configuration as this would be impure. Merge your configs into 'services.spamassassin' and remove the '/etc/spamassassin' folder to make this service work. Also see 'https://github.com/NixOS/nixpkgs/pull/26470'.";
exit 1
fi
echo "Recreating '/var/lib/spamasassin' with creating '3.004001' (or similar) and 'sa-update-keys'"
mkdir -p /var/lib/spamassassin
chown spamd:spamd /var/lib/spamassassin -R
set +e
${pkgs.su}/bin/su -s "${pkgs.bash}/bin/bash" -c "${pkgs.spamassassin}/bin/sa-update --gpghomedir=/var/lib/spamassassin/sa-update-keys/ --siteconfigpath=${spamdEnv}/" spamd
v=$?
set -e
if [ $v -gt 1 ]; then
echo "sa-update execution error"
exit $v
fi
chown spamd:spamd /var/lib/spamassassin -R
'';
}; };
}; };
} }

View File

@ -1,27 +1,32 @@
{ stdenv, fetchurl, mpd_clientlib }: { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, mpd_clientlib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.27";
name = "mpc-${version}"; name = "mpc-${version}";
version = "0.28";
src = fetchurl { src = fetchFromGitHub {
url = "http://www.musicpd.org/download/mpc/0/${name}.tar.xz"; owner = "MusicPlayerDaemon";
sha256 = "0r10wsqxsi07gns6mfnicvpci0sbwwj4qa9iyr1ysrgadl5bx8j5"; repo = "mpc";
rev = "v${version}";
sha256 = "1g8i4q5xsqdhidyjpvj6hzbhxacv27cb47ndv9k68whd80c5f9n9";
}; };
buildInputs = [ mpd_clientlib ]; buildInputs = [ mpd_clientlib ];
preConfigure = nativeBuildInputs = [ autoreconfHook pkgconfig ];
''
export LIBMPDCLIENT_LIBS=${mpd_clientlib}/lib/libmpdclient.${if stdenv.isDarwin then mpd_clientlib.majorVersion + ".dylib" else "so." + mpd_clientlib.majorVersion + ".0." + mpd_clientlib.minorVersion} enableParallelBuilding = true;
export LIBMPDCLIENT_CFLAGS=${mpd_clientlib}
''; preConfigure = ''
export LIBMPDCLIENT_LIBS=${mpd_clientlib}/lib/libmpdclient.${if stdenv.isDarwin then mpd_clientlib.majorVersion + ".dylib" else "so." + mpd_clientlib.majorVersion + ".0." + mpd_clientlib.minorVersion}
export LIBMPDCLIENT_CFLAGS=${mpd_clientlib}
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A minimalist command line interface to MPD"; description = "A minimalist command line interface to MPD";
homepage = http://www.musicpd.org/clients/mpc/; homepage = http://www.musicpd.org/clients/mpc/;
license = licenses.gpl2; license = licenses.gpl2;
maintainers = [ maintainers.algorith ]; maintainers = with maintainers; [ algorith ];
platforms = with platforms; linux ++ darwin; platforms = with platforms; linux ++ darwin;
}; };
} }

View File

@ -1,19 +1,27 @@
{ stdenv, fetchurl, pkgconfig, glib, ncurses, mpd_clientlib, libintlOrEmpty }: { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig, glib, ncurses, mpd_clientlib, libintlOrEmpty }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "0.24";
name = "ncmpc-${version}"; name = "ncmpc-${version}";
version = "0.27";
src = fetchurl { src = fetchFromGitHub {
url = "http://www.musicpd.org/download/ncmpc/0/ncmpc-${version}.tar.xz"; owner = "MusicPlayerDaemon";
sha256 = "1sf3nirs3mcx0r5i7acm9bsvzqzlh730m0yjg6jcyj8ln6r7cvqf"; repo = "ncmpc";
rev = "v${version}";
sha256 = "0sfal3wadqvy6yas4xzhw35awdylikci8kbdcmgm4l2afpmc1lrr";
}; };
buildInputs = [ pkgconfig glib ncurses mpd_clientlib ] buildInputs = [ glib ncurses mpd_clientlib ];
++ libintlOrEmpty; # ++ libintlOrEmpty;
nativeBuildInputs = [ autoreconfHook pkgconfig ];
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl"; NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
# without this, po/Makefile.in.in is not being created
preAutoreconf = ''
./autogen.sh
'';
configureFlags = [ configureFlags = [
"--enable-colors" "--enable-colors"
"--enable-lyrics-screen" "--enable-lyrics-screen"

View File

@ -33,8 +33,8 @@
let let
version = "2.3.2.0"; version = "2.3.3.0";
build = "162.3934792"; build = "162.4069837";
androidStudio = stdenv.mkDerivation { androidStudio = stdenv.mkDerivation {
name = "android-studio"; name = "android-studio";
@ -98,13 +98,14 @@ let
''; '';
src = fetchurl { src = fetchurl {
url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.zip"; url = "https://dl.google.com/dl/android/studio/ide-zips/${version}/android-studio-ide-${build}-linux.zip";
sha256 = "19wmbvmiqa9znvnslmp0xmkq4avpmgpzmyaai1fa28388qra4cvf"; sha256 = "0zzis9m2xp44xwkj0zvcqw5rh3iyd3finyi5nqhgira1fkacz0qk";
}; };
meta = { meta = with stdenv.lib; {
description = "The Official IDE for Android"; description = "The Official IDE for Android";
homepage = https://developer.android.com/studio/index.html; homepage = https://developer.android.com/studio/index.html;
license = stdenv.lib.licenses.asl20; license = licenses.asl20;
platforms = [ "x86_64-linux" ]; platforms = [ "x86_64-linux" ];
maintainers = with maintainers; [ primeos ];
}; };
}; };

View File

@ -185,12 +185,12 @@ in
clion = buildClion rec { clion = buildClion rec {
name = "clion-${version}"; name = "clion-${version}";
version = "2017.1.1"; version = "2017.1.3";
description = "C/C++ IDE. New. Intelligent. Cross-platform"; description = "C/C++ IDE. New. Intelligent. Cross-platform";
license = stdenv.lib.licenses.unfree; license = stdenv.lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz"; url = "https://download.jetbrains.com/cpp/CLion-${version}.tar.gz";
sha256 = "1bh92gakxqrg65rfhg8984ca338ff0y17kdjkpr6rbh1i39npgcs"; sha256 = "045pkbbf4ypk9qkhldz08i7hbc6vaq68a8v9axnpndnvcrf0vf7g";
}; };
wmClass = "jetbrains-clion"; wmClass = "jetbrains-clion";
}; };
@ -233,12 +233,12 @@ in
idea-community = buildIdea rec { idea-community = buildIdea rec {
name = "idea-community-${version}"; name = "idea-community-${version}";
version = "2017.1.3"; version = "2017.1.4";
description = "Integrated Development Environment (IDE) by Jetbrains, community edition"; description = "Integrated Development Environment (IDE) by Jetbrains, community edition";
license = stdenv.lib.licenses.asl20; license = stdenv.lib.licenses.asl20;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz"; url = "https://download.jetbrains.com/idea/ideaIC-${version}.tar.gz";
sha256 = "0ag70z4cark69hzhvx5j75qa8dglwzfaqrzi8pim3asd161fwxrx"; sha256 = "1w1knq969dl8rxlkhr9mw8cr2vszn384acwhspimrd3zs9825r45";
}; };
wmClass = "jetbrains-idea-ce"; wmClass = "jetbrains-idea-ce";
}; };
@ -269,12 +269,12 @@ in
idea-ultimate = buildIdea rec { idea-ultimate = buildIdea rec {
name = "idea-ultimate-${version}"; name = "idea-ultimate-${version}";
version = "2017.1.3"; version = "2017.1.4";
description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license"; description = "Integrated Development Environment (IDE) by Jetbrains, requires paid license";
license = stdenv.lib.licenses.unfree; license = stdenv.lib.licenses.unfree;
src = fetchurl { src = fetchurl {
url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jdk.tar.gz"; url = "https://download.jetbrains.com/idea/ideaIU-${version}-no-jdk.tar.gz";
sha256 = "1gl62zrs3yxakgwbm29bv9z68jgy5ixc28zcagydx2h4j2b1fb19"; sha256 = "0byrsbsscpzb0syamzpavny879src5dlclnissa7173rh8hgkna4";
}; };
wmClass = "jetbrains-idea"; wmClass = "jetbrains-idea";
}; };

View File

@ -9,16 +9,15 @@
let let
pname = "kdevelop"; pname = "kdevelop";
version = "5.0.4"; version = "5.1.1";
dirVersion = "5.0.4";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://kde/stable/${pname}/${dirVersion}/src/${name}.tar.xz"; url = "mirror://kde/stable/${pname}/${version}/src/${name}.tar.xz";
sha256 = "191142b2bdb14837c82721fdfeb15e852329f2c4c0d48fd479c57514c3235d55"; sha256 = "0a01a4ffb2f01802cf4945521a3149a8f82c21fa8a97935991f1854b7db5d754";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, cmake, gettext, pkgconfig, extra-cmake-modules, makeQtWrapper { stdenv, fetchurl, fetchpatch, cmake, gettext, pkgconfig, extra-cmake-modules, makeQtWrapper
, boost, subversion, apr, aprutil , boost, subversion, apr, aprutil
, qtscript, qtwebkit, grantlee, karchive, kconfig, kcoreaddons, kguiaddons, kiconthemes, ki18n , qtscript, qtwebkit, grantlee, karchive, kconfig, kcoreaddons, kguiaddons, kiconthemes, ki18n
, kitemmodels, kitemviews, kio, kparts, sonnet, kcmutils, knewstuff, knotifications , kitemmodels, kitemviews, kio, kparts, sonnet, kcmutils, knewstuff, knotifications
@ -6,18 +6,25 @@
let let
pname = "kdevplatform"; pname = "kdevplatform";
version = "5.0.4"; version = "5.1.1";
dirVersion = "5.0.4";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://kde/stable/kdevelop/${dirVersion}/src/${name}.tar.xz"; url = "mirror://kde/stable/kdevelop/${version}/src/${name}.tar.xz";
sha256 = "01abfcd71383048d017fe989ccce0e7590010a3975bbe6e161f55ababe2ad471"; sha256 = "3159440512b1373c1a4b35f401ba1f81217de9578372b45137af141eeda6e726";
}; };
patches = [
(fetchpatch {
name = "kdevplatform-project-selection.patch";
url = "https://cgit.kde.org/kdevplatform.git/patch/?id=da4c0fdfcf21dc2a8f48a2b1402213a32effd47a";
sha256 = "16ws8l6dciy2civjnsaj03ml2bzvg4a9g7gd4iyx4hprw65zrcxm";
})
];
nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules makeQtWrapper ]; nativeBuildInputs = [ cmake gettext pkgconfig extra-cmake-modules makeQtWrapper ];
propagatedBuildInputs = [ ]; propagatedBuildInputs = [ ];

View File

@ -20,11 +20,11 @@ let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "nano-${version}"; name = "nano-${version}";
version = "2.8.3"; version = "2.8.4";
src = fetchurl { src = fetchurl {
url = "mirror://gnu/nano/${name}.tar.xz"; url = "mirror://gnu/nano/${name}.tar.xz";
sha256 = "0m8g1f1c09kjmy7w6dxq30yw373nsv1ylj7986xyv4a0jddybf32"; sha256 = "04bvmimrw40cbcnm3xm5l5lir0qy7cncfkmwrlzg8jiy1x7jdky7";
}; };
nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext; nativeBuildInputs = [ texinfo ] ++ optional enableNls gettext;

View File

@ -1,5 +1,5 @@
{ stdenv, fetchurl, makeWrapper, makeDesktopItem, zlib, glib, libpng, freetype { stdenv, fetchurl, makeWrapper, makeDesktopItem, zlib, glib, libpng, freetype, openssl
, xorg, fontconfig, qtbase, xkeyboard_config, alsaLib, libpulseaudio ? null , xorg, fontconfig, qtbase, qtwebengine, qtwebchannel, xkeyboard_config, alsaLib, libpulseaudio ? null
, libredirect, quazip, less, which, unzip, llvmPackages , libredirect, quazip, less, which, unzip, llvmPackages
}: }:
@ -10,10 +10,10 @@ let
libDir = if stdenv.is64bit then "lib64" else "lib"; libDir = if stdenv.is64bit then "lib64" else "lib";
deps = deps =
[ zlib glib libpng freetype xorg.libSM xorg.libICE xorg.libXrender [ zlib glib libpng freetype xorg.libSM xorg.libICE xorg.libXrender openssl
xorg.libXrandr xorg.libXfixes xorg.libXcursor xorg.libXinerama xorg.libXrandr xorg.libXfixes xorg.libXcursor xorg.libXinerama
xorg.libxcb fontconfig xorg.libXext xorg.libX11 alsaLib qtbase libpulseaudio xorg.libxcb fontconfig xorg.libXext xorg.libX11 alsaLib qtbase qtwebengine qtwebchannel libpulseaudio
llvmPackages.libcxx llvmPackages.libcxxabi quazip llvmPackages.libcxx llvmPackages.libcxxabi
]; ];
desktopItem = makeDesktopItem { desktopItem = makeDesktopItem {
@ -31,7 +31,7 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "teamspeak-client-${version}"; name = "teamspeak-client-${version}";
version = "3.0.19.4"; version = "3.1.4";
src = fetchurl { src = fetchurl {
urls = [ urls = [
@ -39,8 +39,8 @@ stdenv.mkDerivation rec {
"http://teamspeak.gameserver.gamed.de/ts3/releases/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run" "http://teamspeak.gameserver.gamed.de/ts3/releases/${version}/TeamSpeak3-Client-linux_${arch}-${version}.run"
]; ];
sha256 = if stdenv.is64bit sha256 = if stdenv.is64bit
then "f74617d2a2f5cb78e0ead345e6ee66c93e4a251355779018fd060828e212294a" then "337aec99070366aa3bb82b1bedd8215372b9c74014b198d45d5d6375d1f1c3a8"
else "e11467dc1732ddc21ec0d86c2853c322af7a6b8307e3e8dfebc6b4b4d7404841"; else "4e126e005b1180655b0847cbdbfc9c47c59c639b7f93f0d988b54a8c4c6ec80f";
}; };
# grab the plugin sdk for the desktop icon # grab the plugin sdk for the desktop icon
@ -72,6 +72,7 @@ stdenv.mkDerivation rec {
'' ''
# Delete unecessary libraries - these are provided by nixos. # Delete unecessary libraries - these are provided by nixos.
rm *.so.* *.so rm *.so.* *.so
rm QtWebEngineProcess
rm qt.conf rm qt.conf
# Install files. # Install files.
@ -89,7 +90,6 @@ stdenv.mkDerivation rec {
ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client ln -s $out/lib/teamspeak/ts3client $out/bin/ts3client
wrapProgram $out/bin/ts3client \ wrapProgram $out/bin/ts3client \
--set LD_LIBRARY_PATH "${quazip}/lib" \
--set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \
--set QT_PLUGIN_PATH "$out/lib/teamspeak/platforms" \ --set QT_PLUGIN_PATH "$out/lib/teamspeak/platforms" \
--set NIX_REDIRECTS /usr/share/X11/xkb=${xkeyboard_config}/share/X11/xkb --set NIX_REDIRECTS /usr/share/X11/xkb=${xkeyboard_config}/share/X11/xkb

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, makeWrapper }: { stdenv, fetchurl, makeWrapper }:
let let
version = "3.0.13.5"; version = "3.0.13.6";
arch = if stdenv.is64bit then "amd64" else "x86"; arch = if stdenv.is64bit then "amd64" else "x86";
libDir = if stdenv.is64bit then "lib64" else "lib"; libDir = if stdenv.is64bit then "lib64" else "lib";
in in
@ -15,8 +15,8 @@ stdenv.mkDerivation {
"http://teamspeak.gameserver.gamed.de/ts3/releases/${version}/teamspeak3-server_linux_${arch}-${version}.tar.bz2" "http://teamspeak.gameserver.gamed.de/ts3/releases/${version}/teamspeak3-server_linux_${arch}-${version}.tar.bz2"
]; ];
sha256 = if stdenv.is64bit sha256 = if stdenv.is64bit
then "bd5933dd17d17f93d56f69332927cd1ce6f34439ec464a0ce2ca73102d85080c" then "19ccd8db5427758d972a864b70d4a1263ebb9628fcc42c3de75ba87de105d179"
else "848e1a44af3c2b00840a280ba558a13407f4844432ddfd262ee8a7800365386b"; else "2f70b3e70a3d9bf86106fab67a938922c8d27fec24e66e229913f78a0791b967";
}; };
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];

View File

@ -10,13 +10,13 @@ with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mkvtoolnix-${version}"; name = "mkvtoolnix-${version}";
version = "11.0.0"; version = "12.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "mbunkus"; owner = "mbunkus";
repo = "mkvtoolnix"; repo = "mkvtoolnix";
rev = "release-${version}"; rev = "release-${version}";
sha256 = "1qqa8ss2mfjzj984l9vc1fnk7czbvhbmmq53m87gnrc65351gkir"; sha256 = "1xn24f9046q2lr1xbl02cpmqa4fhhxqjc14j14c9r6qfc4ix4n9w";
}; };
nativeBuildInputs = [ pkgconfig autoconf automake gettext drake ruby docbook_xsl libxslt ]; nativeBuildInputs = [ pkgconfig autoconf automake gettext drake ruby docbook_xsl libxslt ];

View File

@ -97,7 +97,7 @@ stdenv.mkDerivation {
sed -i -e "s|/usr/bin|$out/bin|" bin/VBoxClient-all sed -i -e "s|/usr/bin|$out/bin|" bin/VBoxClient-all
# Install binaries # Install binaries
install -D -m 4755 lib/VBoxGuestAdditions/mount.vboxsf $out/bin/mount.vboxsf install -D -m 755 lib/VBoxGuestAdditions/mount.vboxsf $out/bin/mount.vboxsf
install -D -m 755 sbin/VBoxService $out/bin/VBoxService install -D -m 755 sbin/VBoxService $out/bin/VBoxService
mkdir -p $out/bin mkdir -p $out/bin

View File

@ -67,6 +67,10 @@ callPackage (import ./generic.nix (rec {
name = "209-qemuu/0002-cirrus-add-blit_is_unsafe-call-to-cirrus_bitblt_cput"; name = "209-qemuu/0002-cirrus-add-blit_is_unsafe-call-to-cirrus_bitblt_cput";
sha256 = "0avxqs9922qjfsxxlk7bh10432a526j2yyykhags8dk1bzxkpxwv"; sha256 = "0avxqs9922qjfsxxlk7bh10432a526j2yyykhags8dk1bzxkpxwv";
}) })
(xsaPatch {
name = "211-qemuu-4.6";
sha256 = "1g090xs8ca8676vyi78b99z5yjdliw6mxkr521b8kimhf8crx4yg";
})
]; ];
meta.description = "Xen's fork of upstream Qemu"; meta.description = "Xen's fork of upstream Qemu";
}; };
@ -95,6 +99,10 @@ callPackage (import ./generic.nix (rec {
name = "209-qemut"; name = "209-qemut";
sha256 = "1hq8ghfzw6c47pb5vf9ngxwgs8slhbbw6cq7gk0nam44rwvz743r"; sha256 = "1hq8ghfzw6c47pb5vf9ngxwgs8slhbbw6cq7gk0nam44rwvz743r";
}) })
(xsaPatch {
name = "211-qemut-4.5";
sha256 = "1z3phabvqmxv4b5923fx63hwdg4v1fnl15zbl88873ybqn0hp50f";
})
]; ];
postPatch = '' postPatch = ''
substituteInPlace xen-hooks.mak \ substituteInPlace xen-hooks.mak \
@ -218,10 +226,122 @@ callPackage (import ./generic.nix (rec {
name = "204-4.5"; name = "204-4.5";
sha256 = "083z9pbdz3f532fnzg7n2d5wzv6rmqc0f4mvc3mnmkd0rzqw8vcp"; sha256 = "083z9pbdz3f532fnzg7n2d5wzv6rmqc0f4mvc3mnmkd0rzqw8vcp";
}) })
(xsaPatch {
name = "206-4.5/0001-xenstored-apply-a-write-transaction-rate-limit";
sha256 = "07vsm8mlbxh2s01ny2xywnm1bqhhxas1az31fzwb6f1g14vkzwm4";
})
(xsaPatch {
name = "206-4.5/0002-xenstored-Log-when-the-write-transaction-rate-limit-";
sha256 = "17pnvxjmhny22abwwivacfig4vfsy5bqlki07z236whc2y7yzbsx";
})
(xsaPatch {
name = "206-4.5/0003-oxenstored-refactor-putting-response-on-wire";
sha256 = "0xf566yicnisliy82cydb2s9k27l3bxc43qgmv6yr2ir3ixxlw5s";
})
(xsaPatch {
name = "206-4.5/0004-oxenstored-remove-some-unused-parameters";
sha256 = "16cqx9i0w4w3x06qqdk9rbw4z96yhm0kbc32j40spfgxl82d1zlk";
})
(xsaPatch {
name = "206-4.5/0005-oxenstored-refactor-request-processing";
sha256 = "1g2hzlv7w03sqnifbzda85mwlz3bw37rk80l248180sv3k7k6bgv";
})
(xsaPatch {
name = "206-4.5/0006-oxenstored-keep-track-of-each-transaction-s-operatio";
sha256 = "0n65yfxvpfd4cz95dpbwqj3nablyzq5g7a0klvi2y9zybhch9cmg";
})
(xsaPatch {
name = "206-4.5/0007-oxenstored-move-functions-that-process-simple-operat";
sha256 = "0qllvbc9rnj7jhhlslxxs35gvphvih0ywz52jszj4irm23ka5vnz";
})
(xsaPatch {
name = "206-4.5/0008-oxenstored-replay-transaction-upon-conflict";
sha256 = "0lixkxjfzciy9l0f980cmkr8mcsx14c289kg0mn5w1cscg0hb46g";
})
(xsaPatch {
name = "206-4.5/0009-oxenstored-log-request-and-response-during-transacti";
sha256 = "09ph8ddcx0k7rndd6hx6kszxh3fhxnvdjsq13p97n996xrpl1x7b";
})
(xsaPatch {
name = "206-4.5/0010-oxenstored-allow-compilation-prior-to-OCaml-3.12.0";
sha256 = "1y0m7sqdz89z2vs4dfr45cyvxxas323rxar0xdvvvivgkgxawvxj";
})
(xsaPatch {
name = "206-4.5/0011-oxenstored-comments-explaining-some-variables";
sha256 = "1d3n0y9syya4kaavrvqn01d3wsn85gmw7qrbylkclznqgkwdsr2p";
})
(xsaPatch {
name = "206-4.5/0012-oxenstored-handling-of-domain-conflict-credit";
sha256 = "12zgid5y9vrhhpk2syxp0x01lzzr6447fa76n6rjmzi1xgdzpaf8";
})
(xsaPatch {
name = "206-4.5/0013-oxenstored-ignore-domains-with-no-conflict-credit";
sha256 = "0v3g9pm60w6qi360hdqjcw838s0qcyywz9qpl8gzmhrg7a35avxl";
})
(xsaPatch {
name = "206-4.5/0014-oxenstored-add-transaction-info-relevant-to-history-";
sha256 = "0vv3w0h5xh554i9v2vbc8gzm8wabjf2vzya3dyv5yzvly6ygv0sb";
})
(xsaPatch {
name = "206-4.5/0015-oxenstored-support-commit-history-tracking";
sha256 = "1iv2vy29g437vj73x9p33rdcr5ln2q0kx1b3pgxq202ghbc1x1zj";
})
(xsaPatch {
name = "206-4.5/0016-oxenstored-only-record-operations-with-side-effects-";
sha256 = "1cjkw5ganbg6lq78qsg0igjqvbgph3j349faxgk1p5d6nr492zzy";
})
(xsaPatch {
name = "206-4.5/0017-oxenstored-discard-old-commit-history-on-txn-end";
sha256 = "0lm15lq77403qqwpwcqvxlzgirp6ffh301any9g401hs98f9y4ps";
})
(xsaPatch {
name = "206-4.5/0018-oxenstored-track-commit-history";
sha256 = "1jh92p6vjhkm3bn5vz260npvsjji63g2imsxflxs4f3r69sz1nkd";
})
(xsaPatch {
name = "206-4.5/0019-oxenstored-blame-the-connection-that-caused-a-transa";
sha256 = "17k264pk0fvsamj85578msgpx97mw63nmj0j9v5hbj4bgfazvj4h";
})
(xsaPatch {
name = "206-4.5/0020-oxenstored-allow-self-conflicts";
sha256 = "15z3rd49q0pa72si0s8wjsy2zvbm613d0hjswp4ikc6nzsnsh4qy";
})
(xsaPatch {
name = "206-4.5/0021-oxenstored-do-not-commit-read-only-transactions";
sha256 = "04wpzazhv90lg3228z5i6vnh1z4lzd08z0d0fvc4br6pkd0w4va8";
})
(xsaPatch {
name = "206-4.5/0022-oxenstored-don-t-wake-to-issue-no-conflict-credit";
sha256 = "1shbrn0w68rlywcc633zcgykfccck1a77igmg8ydzwjsbwxsmsjy";
})
(xsaPatch {
name = "206-4.5/0023-oxenstored-transaction-conflicts-improve-logging";
sha256 = "1086y268yh8047k1vxnxs2nhp6izp7lfmq01f1gq5n7jiy1sxcq7";
})
(xsaPatch {
name = "206-4.5/0024-oxenstored-trim-history-in-the-frequent_ops-function";
sha256 = "014zs6i4gzrimn814k5i7gz66vbb0adkzr2qyai7i4fxc9h9r7w8";
})
(xsaPatch { (xsaPatch {
name = "207"; name = "207";
sha256 = "0wdlhijmw9mdj6a82pyw1rwwiz605dwzjc392zr3fpb2jklrvibc"; sha256 = "0wdlhijmw9mdj6a82pyw1rwwiz605dwzjc392zr3fpb2jklrvibc";
}) })
(xsaPatch {
name = "212";
sha256 = "1ggjbbym5irq534a3zc86md9jg8imlpc9wx8xsadb9akgjrr1r8d";
})
(xsaPatch {
name = "213-4.5";
sha256 = "1vnqf89ydacr5bq3d6z2r33xb2sn5vsd934rncyc28ybc9rvj6wm";
})
(xsaPatch {
name = "214";
sha256 = "0qapzx63z0yl84phnpnglpkxp6b9sy1y7cilhwjhxyigpfnm2rrk";
})
(xsaPatch {
name = "215";
sha256 = "0sv8ccc5xp09f1w1gj5a9n3mlsdsh96sdb1n560vh31f4kkd61xs";
})
]; ];
# Fix build on Glibc 2.24. # Fix build on Glibc 2.24.

View File

@ -204,6 +204,8 @@ stdenv.mkDerivation (rec {
--replace SBINDIR=\"$out/sbin\" SBINDIR=\"$out/bin\" --replace SBINDIR=\"$out/sbin\" SBINDIR=\"$out/bin\"
wrapPythonPrograms wrapPythonPrograms
# We also need to wrap pygrub, which lies in lib
wrapPythonProgramsIn "$out/lib" "$out $pythonPath"
shopt -s extglob shopt -s extglob
for i in $out/etc/xen/scripts/!(*.sh); do for i in $out/etc/xen/scripts/!(*.sh); do

View File

@ -5,13 +5,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "jwm-${version}"; name = "jwm-${version}";
version = "1582"; version = "1594";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "joewing"; owner = "joewing";
repo = "jwm"; repo = "jwm";
rev = "s${version}"; rev = "s${version}";
sha256 = "1z6cxf18n69sjd20bbyxrnd19hhy955ddvakgpfyhiprpfjkkv70"; sha256 = "1608ws3867xipcbdl2gw6ybcxzk14vq24sr62m9l65m4g4m3wbd2";
}; };
nativeBuildInputs = [ pkgconfig automake autoconf libtool gettext which ]; nativeBuildInputs = [ pkgconfig automake autoconf libtool gettext which ];

View File

@ -34,6 +34,9 @@ let
binutils_bin = if nativeTools then "" else getBin binutils; binutils_bin = if nativeTools then "" else getBin binutils;
# The wrapper scripts use 'cat' and 'grep', so we may need coreutils. # The wrapper scripts use 'cat' and 'grep', so we may need coreutils.
coreutils_bin = if nativeTools then "" else getBin coreutils; coreutils_bin = if nativeTools then "" else getBin coreutils;
default_cxx_stdlib_compile=optionalString (stdenv.isLinux && !(cc.isGNU or false))
"-isystem $(echo -n ${cc.gcc}/include/c++/*) -isystem $(echo -n ${cc.gcc}/include/c++/*)/$(${cc.gcc}/bin/gcc -dumpmachine)";
in in
stdenv.mkDerivation { stdenv.mkDerivation {
@ -46,8 +49,9 @@ stdenv.mkDerivation {
inherit cc shell libc_bin libc_dev libc_lib binutils_bin coreutils_bin; inherit cc shell libc_bin libc_dev libc_lib binutils_bin coreutils_bin;
gnugrep_bin = if nativeTools then "" else gnugrep; gnugrep_bin = if nativeTools then "" else gnugrep;
passthru = { passthru = {
inherit libc nativeTools nativeLibc nativePrefix isGNU isClang; inherit libc nativeTools nativeLibc nativePrefix isGNU isClang default_cxx_stdlib_compile;
emacsBufferSetup = pkgs: '' emacsBufferSetup = pkgs: ''
; We should handle propagation here too ; We should handle propagation here too
@ -189,11 +193,7 @@ stdenv.mkDerivation {
export real_cc=cc export real_cc=cc
export real_cxx=c++ export real_cxx=c++
export default_cxx_stdlib_compile="${ export default_cxx_stdlib_compile="${default_cxx_stdlib_compile}"
if stdenv.isLinux && !(cc.isGNU or false)
then "-isystem $(echo -n ${cc.gcc}/include/c++/*) -isystem $(echo -n ${cc.gcc}/include/c++/*)/$(${cc.gcc}/bin/gcc -dumpmachine)"
else ""
}"
if [ -e $ccPath/gcc ]; then if [ -e $ccPath/gcc ]; then
wrap gcc ${./cc-wrapper.sh} $ccPath/gcc wrap gcc ${./cc-wrapper.sh} $ccPath/gcc

View File

@ -0,0 +1,39 @@
{ stdenv, fetchgit, fontforge, pythonFull }:
stdenv.mkDerivation rec {
name = "rictydiminished-with-firacode-${version}";
version = "0.0.1";
src = fetchgit {
url = "https://github.com/hakatashi/RictyDiminished-with-FiraCode.git";
rev = "refs/tags/${version}";
sha256 = "12lhb0k4d8p4lzw9k6hlsxpfpc15zfshz1h5cbaa88sb8n5jh360";
fetchSubmodules = true;
};
buildPhase = ''
make
'';
installPhase = ''
mkdir -p $out/share/fonts/rictydiminished-with-firacode
cp *.ttf $out/share/fonts/rictydiminished-with-firacode
'';
nativeBuildInputs = [
fontforge
(pythonFull.withPackages (ps: [
ps.jinja2
ps."3to2"
ps.fonttools
]))
];
meta = with stdenv.lib; {
homepage = https://github.com/hakatashi/RictyDiminished-with-FiraCode;
description = "The best Japanese programming font meets the awesone ligatures of Firacode";
license = licenses.ofl;
platforms = platforms.all;
maintainers = with maintainers; [ mt-caret ];
};
}

View File

@ -1,7 +1,7 @@
{ stdenv, fetchurl, noSysDirs { stdenv, fetchurl, noSysDirs
, langC ? true, langCC ? true, langFortran ? false , langC ? true, langCC ? true, langFortran ? false
, langObjC ? stdenv.isDarwin , langObjC ? targetPlatform.isDarwin
, langObjCpp ? stdenv.isDarwin , langObjCpp ? targetPlatform.isDarwin
, langJava ? false , langJava ? false
, langAda ? false , langAda ? false
, langVhdl ? false , langVhdl ? false
@ -25,7 +25,6 @@
, enableMultilib ? false , enableMultilib ? false
, enablePlugin ? true # whether to support user-supplied plug-ins , enablePlugin ? true # whether to support user-supplied plug-ins
, name ? "gcc" , name ? "gcc"
, cross ? null
, libcCross ? null , libcCross ? null
, crossStageStatic ? true , crossStageStatic ? true
, gnat ? null , gnat ? null
@ -49,10 +48,10 @@ assert langVhdl -> gnat != null;
assert libelf != null -> zlib != null; assert libelf != null -> zlib != null;
# Make sure we get GNU sed. # Make sure we get GNU sed.
assert stdenv.isDarwin -> gnused != null; assert hostPlatform.isDarwin -> gnused != null;
# Need c++filt on darwin # Need c++filt on darwin
assert stdenv.isDarwin -> binutils != null; assert hostPlatform.isDarwin -> binutils != null;
# The go frontend is written in c++ # The go frontend is written in c++
assert langGo -> langCC; assert langGo -> langCC;
@ -63,13 +62,13 @@ with builtins;
let version = "7.1.0"; let version = "7.1.0";
# Whether building a cross-compiler for GNU/Hurd. # Whether building a cross-compiler for GNU/Hurd.
crossGNU = cross != null && cross.config == "i586-pc-gnu"; crossGNU = targetPlatform != hostPlatform && targetPlatform.config == "i586-pc-gnu";
enableParallelBuilding = true; enableParallelBuilding = true;
patches = patches =
[ ] [ ]
++ optional (cross != null) ../libstdc++-target.patch ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch
++ optional noSysDirs ../no-sys-dirs.patch ++ optional noSysDirs ../no-sys-dirs.patch
# The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its # The GNAT Makefiles did not pay attention to CFLAGS_FOR_TARGET for its
# target libraries and tools. # target libraries and tools.
@ -122,8 +121,8 @@ let version = "7.1.0";
withMode; withMode;
/* Cross-gcc settings */ /* Cross-gcc settings */
crossMingw = cross != null && cross.libc == "msvcrt"; crossMingw = targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt";
crossDarwin = cross != null && cross.libc == "libSystem"; crossDarwin = targetPlatform != hostPlatform && targetPlatform.libc == "libSystem";
crossConfigureFlags = let crossConfigureFlags = let
gccArch = targetPlatform.gcc.arch or null; gccArch = targetPlatform.gcc.arch or null;
gccCpu = targetPlatform.gcc.cpu or null; gccCpu = targetPlatform.gcc.cpu or null;
@ -138,7 +137,7 @@ let version = "7.1.0";
withFloat = if gccFloat != null then " --with-float=${gccFloat}" else ""; withFloat = if gccFloat != null then " --with-float=${gccFloat}" else "";
withMode = if gccMode != null then " --with-mode=${gccMode}" else ""; withMode = if gccMode != null then " --with-mode=${gccMode}" else "";
in in
"--target=${cross.config}" + "--target=${targetPlatform.config}" +
withArch + withArch +
withCpu + withCpu +
withAbi + withAbi +
@ -146,8 +145,8 @@ let version = "7.1.0";
withFloat + withFloat +
withMode + withMode +
# Ensure that -print-prog-name is able to find the correct programs. # Ensure that -print-prog-name is able to find the correct programs.
" --with-as=${binutils}/bin/${cross.config}-as" + " --with-as=${binutils}/bin/${targetPlatform.config}-as" +
" --with-ld=${binutils}/bin/${cross.config}-ld" + " --with-ld=${binutils}/bin/${targetPlatform.config}-ld" +
(if crossMingw && crossStageStatic then (if crossMingw && crossStageStatic then
" --with-headers=${libcCross}/include" + " --with-headers=${libcCross}/include" +
" --with-gcc" + " --with-gcc" +
@ -188,7 +187,7 @@ let version = "7.1.0";
" --disable-shared" + " --disable-shared" +
# To keep ABI compatibility with upstream mingw-w64 # To keep ABI compatibility with upstream mingw-w64
" --enable-fully-dynamic-string" " --enable-fully-dynamic-string"
else (if cross.libc == "uclibc" then else (if targetPlatform.libc == "uclibc" then
# libsanitizer requires netrom/netrom.h which is not # libsanitizer requires netrom/netrom.h which is not
# available in uclibc. # available in uclibc.
" --disable-libsanitizer" + " --disable-libsanitizer" +
@ -200,9 +199,9 @@ let version = "7.1.0";
" --disable-decimal-float") # No final libdecnumber (it may work only in 386) " --disable-decimal-float") # No final libdecnumber (it may work only in 386)
); );
stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final"; stageNameAddon = if crossStageStatic then "-stage-static" else "-stage-final";
crossNameAddon = if cross != null then "-${cross.config}" + stageNameAddon else ""; crossNameAddon = if targetPlatform != hostPlatform then "-${targetPlatform.config}" + stageNameAddon else "";
bootstrap = cross == null; bootstrap = targetPlatform == hostPlatform;
in in
@ -230,7 +229,7 @@ stdenv.mkDerivation ({
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
postPatch = postPatch =
if (stdenv.isHurd if (hostPlatform.isHurd
|| (libcCross != null # e.g., building `gcc.crossDrv' || (libcCross != null # e.g., building `gcc.crossDrv'
&& libcCross ? crossConfig && libcCross ? crossConfig
&& libcCross.crossConfig == "i586-pc-gnu") && libcCross.crossConfig == "i586-pc-gnu")
@ -266,7 +265,7 @@ stdenv.mkDerivation ({
sed -i "${gnu_h}" \ sed -i "${gnu_h}" \
-es'|#define STANDARD_INCLUDE_DIR.*$|#define STANDARD_INCLUDE_DIR "${libc.dev}/include"|g' -es'|#define STANDARD_INCLUDE_DIR.*$|#define STANDARD_INCLUDE_DIR "${libc.dev}/include"|g'
'' ''
else if cross != null || stdenv.cc.libc != null then else if targetPlatform != hostPlatform || stdenv.cc.libc != null then
# On NixOS, use the right path to the dynamic linker instead of # On NixOS, use the right path to the dynamic linker instead of
# `/lib/ld*.so'. # `/lib/ld*.so'.
let let
@ -295,19 +294,19 @@ stdenv.mkDerivation ({
++ (optional (zlib != null) zlib) ++ (optional (zlib != null) zlib)
++ (optionals langJava [ boehmgc zip unzip ]) ++ (optionals langJava [ boehmgc zip unzip ])
++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs)) ++ (optionals javaAwtGtk ([ gtk2 libart_lgpl ] ++ xlibs))
++ (optionals (cross != null) [binutils]) ++ (optionals (targetPlatform != hostPlatform) [binutils])
++ (optionals langAda [gnatboot]) ++ (optionals langAda [gnatboot])
++ (optionals langVhdl [gnat]) ++ (optionals langVhdl [gnat])
# The builder relies on GNU sed (for instance, Darwin's `sed' fails with # The builder relies on GNU sed (for instance, Darwin's `sed' fails with
# "-i may not be used with stdin"), and `stdenvNative' doesn't provide it. # "-i may not be used with stdin"), and `stdenvNative' doesn't provide it.
++ (optional stdenv.isDarwin gnused) ++ (optional hostPlatform.isDarwin gnused)
++ (optional stdenv.isDarwin binutils) ++ (optional hostPlatform.isDarwin binutils)
; ;
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isSunOS "-lm -ldl"; NIX_LDFLAGS = stdenv.lib.optionalString hostPlatform.isSunOS "-lm -ldl";
preConfigure = stdenv.lib.optionalString (stdenv.isSunOS && stdenv.is64bit) '' preConfigure = stdenv.lib.optionalString (hostPlatform.isSunOS && hostPlatform.is64bit) ''
export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g` export NIX_LDFLAGS=`echo $NIX_LDFLAGS | sed -e s~$prefix/lib~$prefix/lib/amd64~g`
export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET" export LDFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $LDFLAGS_FOR_TARGET"
export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET" export CXXFLAGS_FOR_TARGET="-Wl,-rpath,$prefix/lib/amd64 $CXXFLAGS_FOR_TARGET"
@ -317,7 +316,7 @@ stdenv.mkDerivation ({
dontDisableStatic = true; dontDisableStatic = true;
configureFlags = " configureFlags = "
${if stdenv.isSunOS then ${if hostPlatform.isSunOS then
" --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " + " --enable-long-long --enable-libssp --enable-threads=posix --disable-nls --enable-__cxa_atexit " +
# On Illumos/Solaris GNU as is preferred # On Illumos/Solaris GNU as is preferred
" --with-gnu-as --without-gnu-ld " " --with-gnu-as --without-gnu-ld "
@ -361,19 +360,19 @@ stdenv.mkDerivation ({
) )
) )
} }
${if cross == null ${if targetPlatform == hostPlatform
then if stdenv.isDarwin then if hostPlatform.isDarwin
then " --with-native-system-header-dir=${darwin.usr-include}" then " --with-native-system-header-dir=${darwin.usr-include}"
else " --with-native-system-header-dir=${getDev stdenv.cc.libc}/include" else " --with-native-system-header-dir=${getDev stdenv.cc.libc}/include"
else ""} else ""}
${if langAda then " --enable-libada" else ""} ${if langAda then " --enable-libada" else ""}
${if cross == null && stdenv.isi686 then "--with-arch=i686" else ""} ${if targetPlatform == hostPlatform && targetPlatform.isi686 then "--with-arch=i686" else ""}
${if cross != null then crossConfigureFlags else ""} ${if targetPlatform != hostPlatform then crossConfigureFlags else ""}
${if !bootstrap then "--disable-bootstrap" else ""} ${if !bootstrap then "--disable-bootstrap" else ""}
${if cross == null then platformFlags else ""} ${if targetPlatform == hostPlatform then platformFlags else ""}
"; ";
targetConfig = if cross != null then cross.config else null; targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
buildFlags = if bootstrap then buildFlags = if bootstrap then
(if profiledCompiler then "profiledbootstrap" else "bootstrap") (if profiledCompiler then "profiledbootstrap" else "bootstrap")
@ -405,8 +404,8 @@ stdenv.mkDerivation ({
CC_FOR_TARGET = "${targetPlatform.config}-gcc"; CC_FOR_TARGET = "${targetPlatform.config}-gcc";
NM_FOR_TARGET = "${targetPlatform.config}-nm"; NM_FOR_TARGET = "${targetPlatform.config}-nm";
CXX_FOR_TARGET = "${targetPlatform.config}-g++"; CXX_FOR_TARGET = "${targetPlatform.config}-g++";
# If we are making a cross compiler, cross != null # If we are making a cross compiler, targetPlatform != hostPlatform
NIX_CC_CROSS = if cross == null then "${stdenv.ccCross}" else ""; NIX_CC_CROSS = if targetPlatform == hostPlatform then "${stdenv.ccCross}" else "";
dontStrip = true; dontStrip = true;
configureFlags = '' configureFlags = ''
${if enableMultilib then "" else "--disable-multilib"} ${if enableMultilib then "" else "--disable-multilib"}
@ -482,7 +481,7 @@ stdenv.mkDerivation ({
++ optional (libpthread != null) libpthread); ++ optional (libpthread != null) libpthread);
EXTRA_TARGET_CFLAGS = EXTRA_TARGET_CFLAGS =
if cross != null && libcCross != null then [ if targetPlatform != hostPlatform && libcCross != null then [
"-idirafter ${getDev libcCross}/include" "-idirafter ${getDev libcCross}/include"
] ]
++ optionals (! crossStageStatic) [ ++ optionals (! crossStageStatic) [
@ -491,7 +490,7 @@ stdenv.mkDerivation ({
else null; else null;
EXTRA_TARGET_LDFLAGS = EXTRA_TARGET_LDFLAGS =
if cross != null && libcCross != null then [ if targetPlatform != hostPlatform && libcCross != null then [
"-Wl,-L${libcCross.out}/lib" "-Wl,-L${libcCross.out}/lib"
] ]
++ (if crossStageStatic then [ ++ (if crossStageStatic then [
@ -539,13 +538,13 @@ stdenv.mkDerivation ({
}; };
} }
// optionalAttrs (cross != null && cross.libc == "msvcrt" && crossStageStatic) { // optionalAttrs (targetPlatform != hostPlatform && targetPlatform.libc == "msvcrt" && crossStageStatic) {
makeFlags = [ "all-gcc" "all-target-libgcc" ]; makeFlags = [ "all-gcc" "all-target-libgcc" ];
installTargets = "install-gcc install-target-libgcc"; installTargets = "install-gcc install-target-libgcc";
} }
# Strip kills static libs of other archs (hence cross != null) # Strip kills static libs of other archs (hence targetPlatform != hostPlatform)
// optionalAttrs (!stripped || cross != null) { dontStrip = true; NIX_STRIP_DEBUG = 0; } // optionalAttrs (!stripped || targetPlatform != hostPlatform) { dontStrip = true; NIX_STRIP_DEBUG = 0; }
// optionalAttrs (enableMultilib) { dontMoveLib64 = true; } // optionalAttrs (enableMultilib) { dontMoveLib64 = true; }
) )

View File

@ -2,10 +2,10 @@
with stdenv.lib; with stdenv.lib;
let let
date = "20170527"; date = "20170605";
version = "0.9.27pre-${date}"; version = "0.9.27pre-${date}";
rev = "53c5fc2246270e0242903de0152a9a5d40f3d679"; rev = "3e4b7693bfd5b76570b35558c83a935326513eff";
sha256 = "0z5ayz0kdn5xqm84k730hmd7r9cq0zxxf45g5phgqppdfajrmswz"; sha256 = "0m5k1df73kakvg9xz06y3nlac4mwfccni6hdijaf4w8fyy3zz4bg";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View File

@ -3,7 +3,7 @@
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "cyrus-sasl-${version}${optionalString (kerberos == null) "-without-kerberos"}"; name = "cyrus-sasl-${version}${optionalString (kerberos == null) "-without-kerberos"}";
version = "2.5.10"; version = "2.1.26";
src = fetchurl { src = fetchurl {
url = "ftp://ftp.cyrusimap.org/cyrus-sasl/${name}.tar.gz"; url = "ftp://ftp.cyrusimap.org/cyrus-sasl/${name}.tar.gz";

View File

@ -9,11 +9,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "openscenegraph-${version}"; name = "openscenegraph-${version}";
version = "3.2.3"; version = "3.4.0";
src = fetchurl { src = fetchurl {
url = "http://trac.openscenegraph.org/downloads/developer_releases/OpenSceneGraph-${version}.zip"; url = "http://trac.openscenegraph.org/downloads/developer_releases/OpenSceneGraph-${version}.zip";
sha256 = "0gic1hy7fhs27ipbsa5862q120a9y4bx176nfaw2brcjp522zvb9"; sha256 = "03h4wfqqk7rf3mpz0sa99gy715cwpala7964z2npd8jxfn27swjw";
}; };
nativeBuildInputs = [ pkgconfig cmake doxygen unzip ]; nativeBuildInputs = [ pkgconfig cmake doxygen unzip ];

View File

@ -1,6 +1,6 @@
<?xml version="1.0" ?> <?xml version="1.0" ?>
<sdk:sdk-addon xmlns:sdk="http://schemas.android.com/sdk/android/addon/7" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <sdk:sdk-addon xmlns:sdk="http://schemas.android.com/sdk/android/addon/7" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!--Generated on 2016-11-23 16:51:44.011243 with ADRT.--> <!--Generated on 2017-06-07 21:05:03.785544 with ADRT.-->
<sdk:license id="android-sdk-license" type="text">Terms and Conditions <sdk:license id="android-sdk-license" type="text">Terms and Conditions
This is the Android Software Development Kit License Agreement This is the Android Software Development Kit License Agreement
@ -1118,6 +1118,39 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&
</sdk:lib> </sdk:lib>
</sdk:libs> </sdk:libs>
</sdk:add-on> </sdk:add-on>
<sdk:add-on>
<!--Generated from bid:3756122, branch:git_nyc-mr1-emu-release-->
<sdk:revision>1</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Tue Apr 25 23:37:40 2017.-->
<sdk:size>154871</sdk:size>
<sdk:checksum type="sha1">550e83eea9513ab11c44919ac6da54b36084a9f3</sdk:checksum>
<sdk:url>google_apis-25_r1.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
<sdk:vendor-id>google</sdk:vendor-id>
<sdk:vendor-display>Google Inc.</sdk:vendor-display>
<sdk:name-id>google_apis</sdk:name-id>
<sdk:name-display>Google APIs</sdk:name-display>
<sdk:api-level>23</sdk:api-level>
<sdk:description>Android + Google APIs</sdk:description>
<sdk:libs>
<sdk:lib>
<sdk:name>com.google.android.maps</sdk:name>
<sdk:description>API for Google Maps</sdk:description>
</sdk:lib>
<sdk:lib>
<sdk:name>com.android.future.usb.accessory</sdk:name>
<sdk:description>API for USB Accessories</sdk:description>
</sdk:lib>
<sdk:lib>
<sdk:name>com.google.android.media.effects</sdk:name>
<sdk:description>Collection of video effects</sdk:description>
</sdk:lib>
</sdk:libs>
</sdk:add-on>
<sdk:add-on> <sdk:add-on>
<!--Generated from bid:77907680, branch:perforce--> <!--Generated from bid:77907680, branch:perforce-->
<sdk:revision>1</sdk:revision> <sdk:revision>1</sdk:revision>
@ -1262,18 +1295,18 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&
<sdk:libs/> <sdk:libs/>
</sdk:add-on> </sdk:add-on>
<sdk:extra> <sdk:extra>
<!--Generated from bid:3453458, branch:git_nyc-support-release--> <!--Generated from bid:3841166, branch:git_nyc-support-release-->
<sdk:revision> <sdk:revision>
<sdk:major>40</sdk:major> <sdk:major>47</sdk:major>
<sdk:minor>0</sdk:minor> <sdk:minor>0</sdk:minor>
<sdk:micro>0</sdk:micro> <sdk:micro>0</sdk:micro>
</sdk:revision> </sdk:revision>
<sdk:archives> <sdk:archives>
<sdk:archive> <sdk:archive>
<!--Built on: Wed Nov 9 14:52:17 2016.--> <!--Built on: Wed Mar 22 18:05:52 2017.-->
<sdk:size>305545706</sdk:size> <sdk:size>355529608</sdk:size>
<sdk:checksum type="sha1">782e7233f18c890463e8602571d304e680ce354c</sdk:checksum> <sdk:checksum type="sha1">a0d22beacc106a6977321f2b07d692ce4979e96a</sdk:checksum>
<sdk:url>android_m2repository_r40.zip</sdk:url> <sdk:url>android_m2repository_r47.zip</sdk:url>
</sdk:archive> </sdk:archive>
</sdk:archives> </sdk:archives>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
@ -1284,40 +1317,16 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&
<sdk:path>m2repository</sdk:path> <sdk:path>m2repository</sdk:path>
</sdk:extra> </sdk:extra>
<sdk:extra> <sdk:extra>
<!--Generated from bid:116899064, branch:perforce--> <!--Generated from bid:158324354, branch:perforce-->
<sdk:obsolete/>
<sdk:revision> <sdk:revision>
<sdk:major>23</sdk:major> <sdk:major>53</sdk:major>
<sdk:minor>2</sdk:minor>
<sdk:micro>1</sdk:micro>
</sdk:revision> </sdk:revision>
<sdk:archives> <sdk:archives>
<sdk:archive> <sdk:archive>
<!--Built on: Tue Apr 5 11:38:38 2016.--> <!--Built on: Wed Jun 7 15:15:19 2017.-->
<sdk:size>10850402</sdk:size> <sdk:size>194148491</sdk:size>
<sdk:checksum type="sha1">41121bbc412c2fce0be170d589d20cfa3e78e857</sdk:checksum> <sdk:checksum type="sha1">9008082eb1e6ff5a78d32a1fed6915f266fc5013</sdk:checksum>
<sdk:url>support_r23.2.1.zip</sdk:url> <sdk:url>google_m2repository_gms_v11_1_rc16_wear_2_0_3_rc1.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
<sdk:vendor-id>android</sdk:vendor-id>
<sdk:vendor-display>Android</sdk:vendor-display>
<sdk:description></sdk:description>
<sdk:name-display>Android Support Library</sdk:name-display>
<sdk:path>support</sdk:path>
<sdk:old-paths>compatibility</sdk:old-paths>
</sdk:extra>
<sdk:extra>
<!--Generated from bid:140037564, branch:perforce-->
<sdk:revision>
<sdk:major>40</sdk:major>
</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Wed Nov 23 09:14:40 2016.-->
<sdk:size>152633821</sdk:size>
<sdk:checksum type="sha1">0f599f7f35fba49b9277ef9e1394c5c82d8bd369</sdk:checksum>
<sdk:url>google_m2repository_gms_v8_rc42_wear_2a3.zip</sdk:url>
</sdk:archive> </sdk:archive>
</sdk:archives> </sdk:archives>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
@ -1392,16 +1401,16 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&
<sdk:path>google_play_services_froyo</sdk:path> <sdk:path>google_play_services_froyo</sdk:path>
</sdk:extra> </sdk:extra>
<sdk:extra> <sdk:extra>
<!--Generated from bid:139489718, branch:perforce--> <!--Generated from bid:158051086, branch:perforce-->
<sdk:revision> <sdk:revision>
<sdk:major>38</sdk:major> <sdk:major>41</sdk:major>
</sdk:revision> </sdk:revision>
<sdk:archives> <sdk:archives>
<sdk:archive> <sdk:archive>
<!--Built on: Fri Nov 18 10:26:20 2016.--> <!--Built on: Tue Jun 6 11:50:00 2017.-->
<sdk:size>12351978</sdk:size> <sdk:size>13165315</sdk:size>
<sdk:checksum type="sha1">7a50dec81ba9c9b51d7778c19ca05002498209e8</sdk:checksum> <sdk:checksum type="sha1">55be81c50041f6a8f62947418f74f683369c971f</sdk:checksum>
<sdk:url>google_play_services_v8_rc41.zip</sdk:url> <sdk:url>google_play_services_v11_rc16.zip</sdk:url>
</sdk:archive> </sdk:archive>
</sdk:archives> </sdk:archives>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
@ -1601,4 +1610,27 @@ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS &quot;AS IS&
<sdk:name-display>Android Auto Desktop Head Unit emulator</sdk:name-display> <sdk:name-display>Android Auto Desktop Head Unit emulator</sdk:name-display>
<sdk:path>auto</sdk:path> <sdk:path>auto</sdk:path>
</sdk:extra> </sdk:extra>
<sdk:extra>
<!--Generated from bid:155747253, branch:perforce-->
<sdk:revision>
<sdk:major>1</sdk:major>
<sdk:minor>0</sdk:minor>
<sdk:micro>0</sdk:micro>
</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Thu May 11 08:10:37 2017.-->
<sdk:size>450468876</sdk:size>
<sdk:checksum type="sha1">50074a0f0312ee1d0d81d2cddc3d84a8a9e97a53</sdk:checksum>
<sdk:url>aiasdk-1.0.0.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
<sdk:vendor-id>google</sdk:vendor-id>
<sdk:vendor-display>Google Inc.</sdk:vendor-display>
<sdk:description>Android Instant Apps Development SDK</sdk:description>
<sdk:desc-url>https://developer.android.com/topic/instant-apps/index.html</sdk:desc-url>
<sdk:name-display>Instant Apps Development SDK</sdk:name-display>
<sdk:path>instantapps</sdk:path>
</sdk:extra>
</sdk:sdk-addon> </sdk:sdk-addon>

View File

@ -268,6 +268,18 @@ in
}; };
}; };
google_apis_25 = buildGoogleApis {
name = "google_apis-25";
src = fetchurl {
url = https://dl.google.com/android/repository/google_apis-25_r1.zip;
sha1 = "550e83eea9513ab11c44919ac6da54b36084a9f3";
};
meta = {
description = "Android + Google APIs";
};
};
android_support_extra = buildGoogleApis { android_support_extra = buildGoogleApis {
name = "android_support_extra"; name = "android_support_extra";
src = fetchurl { src = fetchurl {
@ -280,11 +292,12 @@ in
}; };
}; };
google_play_services = buildGoogleApis { google_play_services = buildGoogleApis {
name = "google_play_services"; name = "google_play_services";
src = fetchurl { src = fetchurl {
url = https://dl.google.com/android/repository/google_play_services_v8_rc41.zip; url = https://dl.google.com/android/repository/google_play_services_v11_rc16.zip;
sha1 = "7a50dec81ba9c9b51d7778c19ca05002498209e8"; sha1 = "55be81c50041f6a8f62947418f74f683369c971f";
}; };
meta = { meta = {
description = "Google Play services client library and sample code"; description = "Google Play services client library and sample code";

View File

@ -181,6 +181,20 @@ rec {
useGooglePlayServices = true; useGooglePlayServices = true;
}; };
androidsdk_7_1_1 = androidsdk {
platformVersions = [ "25" ];
abiVersions = [ "x86" "x86_64"];
useGoogleAPIs = true;
};
androidsdk_7_1_1_extras = androidsdk {
platformVersions = [ "25" ];
abiVersions = [ "x86" "x86_64"];
useGoogleAPIs = true;
useExtraSupportLibs = true;
useGooglePlayServices = true;
};
androidndk = import ./androidndk.nix { androidndk = import ./androidndk.nix {
inherit (pkgs) stdenv fetchurl zlib ncurses p7zip lib makeWrapper; inherit (pkgs) stdenv fetchurl zlib ncurses p7zip lib makeWrapper;
inherit (pkgs) coreutils file findutils gawk gnugrep gnused jdk which; inherit (pkgs) coreutils file findutils gawk gnugrep gnused jdk which;

View File

@ -1,4 +1,5 @@
#!/bin/sh #! /usr/bin/env nix-shell
#! nix-shell -i bash --pure -p androidsdk curl libxslt
# this shows a list of available xmls # this shows a list of available xmls
android list sdk | grep 'Parse XML:' | cut -f8- -d\ # | xargs -n 1 curl -O android list sdk | grep 'Parse XML:' | cut -f8- -d\ # | xargs -n 1 curl -O

View File

@ -45,7 +45,7 @@ in
}; };
meta = { meta = {
description = "<xsl:value-of select="sdk:description" />"; description = "<xsl:value-of select="sdk:description" />";
<xsl:for-each select="sdk:desc-url"> url = <xsl:value-of select="." />;</xsl:for-each> <xsl:for-each select="sdk:desc-url"> homepage = <xsl:value-of select="." />;</xsl:for-each>
}; };
}; };
</xsl:for-each> </xsl:for-each>

View File

@ -295,8 +295,8 @@ in
platform_25 = buildPlatform { platform_25 = buildPlatform {
name = "android-platform-7.1.1"; name = "android-platform-7.1.1";
src = fetchurl { src = fetchurl {
url = https://dl.google.com/android/repository/platform-25_r02.zip; url = https://dl.google.com/android/repository/platform-25_r03.zip;
sha1 = "6057e54a04f1d141f36a2c8d20f2962b41a3183f"; sha1 = "00c2c5765e8988504be10a1eb66ed71fcdbd7fe8";
}; };
meta = { meta = {
description = "Android SDK Platform 25"; description = "Android SDK Platform 25";
@ -304,4 +304,16 @@ in
}; };
}; };
platform_26 = buildPlatform {
name = "android-platform-8.0.0";
src = fetchurl {
url = https://dl.google.com/android/repository/platform-26_r01.zip;
sha1 = "33a4f9788bfd7123e712906b2d7e5d54a729e14a";
};
meta = {
description = "Android SDK Platform 26";
homepage = http://developer.android.com/sdk/;
};
};
} }

View File

@ -295,8 +295,8 @@ in
platform_25 = buildPlatform { platform_25 = buildPlatform {
name = "android-platform-7.1.1"; name = "android-platform-7.1.1";
src = fetchurl { src = fetchurl {
url = https://dl.google.com/android/repository/platform-25_r02.zip; url = https://dl.google.com/android/repository/platform-25_r03.zip;
sha1 = "6057e54a04f1d141f36a2c8d20f2962b41a3183f"; sha1 = "00c2c5765e8988504be10a1eb66ed71fcdbd7fe8";
}; };
meta = { meta = {
description = "Android SDK Platform 25"; description = "Android SDK Platform 25";
@ -304,4 +304,16 @@ in
}; };
}; };
platform_26 = buildPlatform {
name = "android-platform-8.0.0";
src = fetchurl {
url = https://dl.google.com/android/repository/platform-26_r01.zip;
sha1 = "33a4f9788bfd7123e712906b2d7e5d54a729e14a";
};
meta = {
description = "Android SDK Platform 26";
homepage = http://developer.android.com/sdk/;
};
};
} }

View File

@ -15,7 +15,7 @@
* limitations under the License. * limitations under the License.
--> -->
<sdk:sdk-repository xmlns:sdk="http://schemas.android.com/sdk/android/repository/11" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <sdk:sdk-repository xmlns:sdk="http://schemas.android.com/sdk/android/repository/11" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!--Generated on 2016-11-23 16:51:35.129300 with ADRT.--> <!--Generated on 2017-06-07 21:04:43.441919 with ADRT.-->
<sdk:license id="android-sdk-license" type="text">Terms and Conditions <sdk:license id="android-sdk-license" type="text">Terms and Conditions
This is the Android Software Development Kit License Agreement This is the Android Software Development Kit License Agreement
@ -296,39 +296,39 @@ This is the Android SDK Preview License Agreement (the &quot;License Agreement&q
June 2014.</sdk:license> June 2014.</sdk:license>
<sdk:ndk> <sdk:ndk>
<!--Generated from bid:3345770, branch:aosp-ndk-r13-release--> <!--Generated from bid:4075724, branch:aosp-ndk-r15-release-->
<sdk:description>NDK</sdk:description> <sdk:description>NDK</sdk:description>
<sdk:revision>13</sdk:revision> <sdk:revision>15</sdk:revision>
<sdk:archives> <sdk:archives>
<sdk:archive> <sdk:archive>
<!--Built on: Wed Oct 12 22:27:26 2016.--> <!--Built on: Wed Jun 7 14:50:43 2017.-->
<sdk:size>665967997</sdk:size> <sdk:size>959176682</sdk:size>
<sdk:checksum type="sha1">71fe653a7bf5db08c3af154735b6ccbc12f0add5</sdk:checksum> <sdk:checksum type="sha1">9dd0ff18d177ec75797b021a3ebd294362e8a41e</sdk:checksum>
<sdk:url>android-ndk-r13b-darwin-x86_64.zip</sdk:url> <sdk:url>android-ndk-r15-darwin-x86_64.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os> <sdk:host-os>macosx</sdk:host-os>
<sdk:host-bits>64</sdk:host-bits> <sdk:host-bits>64</sdk:host-bits>
</sdk:archive> </sdk:archive>
<sdk:archive> <sdk:archive>
<!--Built on: Wed Oct 12 22:27:48 2016.--> <!--Built on: Wed Jun 7 14:51:08 2017.-->
<sdk:size>687311866</sdk:size> <sdk:size>973898016</sdk:size>
<sdk:checksum type="sha1">0600157c4ddf50ec15b8a037cfc474143f718fd0</sdk:checksum> <sdk:checksum type="sha1">32b3115357ed798a8a48d7d589ffcb901693c745</sdk:checksum>
<sdk:url>android-ndk-r13b-linux-x86_64.zip</sdk:url> <sdk:url>android-ndk-r15-linux-x86_64.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os> <sdk:host-os>linux</sdk:host-os>
<sdk:host-bits>64</sdk:host-bits> <sdk:host-bits>64</sdk:host-bits>
</sdk:archive> </sdk:archive>
<sdk:archive> <sdk:archive>
<!--Built on: Wed Oct 12 22:26:38 2016.--> <!--Built on: Wed Jun 7 14:49:52 2017.-->
<sdk:size>620461544</sdk:size> <sdk:size>783705009</sdk:size>
<sdk:checksum type="sha1">4eb1288b1d4134a9d6474eb247f0448808d52408</sdk:checksum> <sdk:checksum type="sha1">bf869b624f6d4778065d5d4703815b0c689069e1</sdk:checksum>
<sdk:url>android-ndk-r13b-windows-x86.zip</sdk:url> <sdk:url>android-ndk-r15-windows-x86.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os> <sdk:host-os>windows</sdk:host-os>
<sdk:host-bits>32</sdk:host-bits> <sdk:host-bits>32</sdk:host-bits>
</sdk:archive> </sdk:archive>
<sdk:archive> <sdk:archive>
<!--Built on: Wed Oct 12 22:27:04 2016.--> <!--Built on: Wed Jun 7 14:50:17 2017.-->
<sdk:size>681320123</sdk:size> <sdk:size>848657615</sdk:size>
<sdk:checksum type="sha1">649d306559435c244cec5881b880318bb3dee53a</sdk:checksum> <sdk:checksum type="sha1">45d310443ceb5ff19a0dde139ee9b3404908c178</sdk:checksum>
<sdk:url>android-ndk-r13b-windows-x86_64.zip</sdk:url> <sdk:url>android-ndk-r15-windows-x86_64.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os> <sdk:host-os>windows</sdk:host-os>
<sdk:host-bits>64</sdk:host-bits> <sdk:host-bits>64</sdk:host-bits>
</sdk:archive> </sdk:archive>
@ -336,17 +336,41 @@ June 2014.</sdk:license>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
</sdk:ndk> </sdk:ndk>
<sdk:platform> <sdk:platform>
<!--Generated from bid:3485210, branch:git_nyc-mr1-sdk-dev--> <!--Generated from bid:4062713, branch:git_oc-preview3-sdk-->
<sdk:version>8.0.0</sdk:version>
<sdk:api-level>26</sdk:api-level>
<sdk:description>Android SDK Platform 26</sdk:description>
<sdk:revision>1</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Fri Jun 2 13:22:35 2017.-->
<sdk:size>63467872</sdk:size>
<sdk:checksum type="sha1">33a4f9788bfd7123e712906b2d7e5d54a729e14a</sdk:checksum>
<sdk:url>platform-26_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
<sdk:min-tools-rev>
<sdk:major>22</sdk:major>
</sdk:min-tools-rev>
<sdk:desc-url>http://developer.android.com/sdk/</sdk:desc-url>
<sdk:layoutlib>
<sdk:api>15</sdk:api>
<sdk:revision>1</sdk:revision>
</sdk:layoutlib>
</sdk:platform>
<sdk:platform>
<!--Generated from bid:3544217, branch:git_nyc-mr1-sdk-dev-->
<sdk:version>7.1.1</sdk:version> <sdk:version>7.1.1</sdk:version>
<sdk:api-level>25</sdk:api-level> <sdk:api-level>25</sdk:api-level>
<sdk:description>Android SDK Platform 25</sdk:description> <sdk:description>Android SDK Platform 25</sdk:description>
<sdk:revision>2</sdk:revision> <sdk:revision>3</sdk:revision>
<sdk:archives> <sdk:archives>
<sdk:archive> <sdk:archive>
<!--Built on: Mon Nov 14 23:49:40 2016.--> <!--Built on: Mon Dec 5 10:12:38 2016.-->
<sdk:size>85434042</sdk:size> <sdk:size>85424763</sdk:size>
<sdk:checksum type="sha1">6057e54a04f1d141f36a2c8d20f2962b41a3183f</sdk:checksum> <sdk:checksum type="sha1">00c2c5765e8988504be10a1eb66ed71fcdbd7fe8</sdk:checksum>
<sdk:url>platform-25_r02.zip</sdk:url> <sdk:url>platform-25_r03.zip</sdk:url>
</sdk:archive> </sdk:archive>
</sdk:archives> </sdk:archives>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
@ -976,6 +1000,20 @@ June 2014.</sdk:license>
<sdk:api>4</sdk:api> <sdk:api>4</sdk:api>
</sdk:layoutlib> </sdk:layoutlib>
</sdk:platform> </sdk:platform>
<sdk:source>
<!--Generated from bid:3544217, branch:git_nyc-mr1-sdk-dev-->
<sdk:api-level>25</sdk:api-level>
<sdk:revision>1</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Mon Dec 5 10:12:27 2016.-->
<sdk:size>30822685</sdk:size>
<sdk:checksum type="sha1">bbc72efd1a9bad87cc507e308f0d29aad438c52c</sdk:checksum>
<sdk:url>sources-25_r01.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:source>
<sdk:source> <sdk:source>
<!--Generated from bid:3209611, branch:git_nyc-sdk-dev--> <!--Generated from bid:3209611, branch:git_nyc-sdk-dev-->
<sdk:api-level>24</sdk:api-level> <sdk:api-level>24</sdk:api-level>
@ -1131,6 +1169,168 @@ June 2014.</sdk:license>
</sdk:archives> </sdk:archives>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
</sdk:source> </sdk:source>
<sdk:build-tool>
<!--Generated from bid:4062713, branch:git_oc-preview3-sdk-->
<sdk:revision>
<sdk:major>26</sdk:major>
<sdk:minor>0</sdk:minor>
<sdk:micro>0</sdk:micro>
</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Fri Jun 2 13:22:18 2017.-->
<sdk:size>53854197</sdk:size>
<sdk:checksum type="sha1">1cbe72929876f8a872ab1f1b1040a9f720261f59</sdk:checksum>
<sdk:url>build-tools_r26-linux.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Fri Jun 2 13:22:15 2017.-->
<sdk:size>53010814</sdk:size>
<sdk:checksum type="sha1">d01a1aeca03747245f1f5936b3cb01759c66d086</sdk:checksum>
<sdk:url>build-tools_r26-macosx.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Fri Jun 2 13:22:13 2017.-->
<sdk:size>54681641</sdk:size>
<sdk:checksum type="sha1">896ebd31117c09db220f7a3116cc0e5121c78b9d</sdk:checksum>
<sdk:url>build-tools_r26-windows.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:build-tool>
<sdk:build-tool>
<!--Generated from bid:4004883, branch:git_oc-preview2-sdk-->
<sdk:revision>
<sdk:major>26</sdk:major>
<sdk:minor>0</sdk:minor>
<sdk:micro>0</sdk:micro>
<sdk:preview>2</sdk:preview>
</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Fri May 12 23:05:09 2017.-->
<sdk:size>53847560</sdk:size>
<sdk:checksum type="sha1">629bbd8d2e415bf64871fb0b4c0540fd6d0347a0</sdk:checksum>
<sdk:url>build-tools_r26-rc2-linux.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Fri May 12 23:05:07 2017.-->
<sdk:size>53003874</sdk:size>
<sdk:checksum type="sha1">cb1eb738a1f7003025af267a9b8cc2d259533c70</sdk:checksum>
<sdk:url>build-tools_r26-rc2-macosx.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Fri May 12 23:05:05 2017.-->
<sdk:size>54678375</sdk:size>
<sdk:checksum type="sha1">ddaba77db0557a98f6330fbd579ad0bd12cbb152</sdk:checksum>
<sdk:url>build-tools_r26-rc2-windows.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-preview-license"/>
</sdk:build-tool>
<sdk:build-tool>
<!--Generated from bid:3821161, branch:git_oc-preview-release-->
<sdk:revision>
<sdk:major>26</sdk:major>
<sdk:minor>0</sdk:minor>
<sdk:micro>0</sdk:micro>
<sdk:preview>1</sdk:preview>
</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Tue Mar 21 10:10:45 2017.-->
<sdk:size>53648603</sdk:size>
<sdk:checksum type="sha1">8cd6388dc96db2d7a49d06159cf990d3bbc78d04</sdk:checksum>
<sdk:url>build-tools_r26-rc1-linux.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Tue Mar 21 10:10:34 2017.-->
<sdk:size>52821129</sdk:size>
<sdk:checksum type="sha1">5c5a1de7d5f4f000d36ae349229fe0be846d6137</sdk:checksum>
<sdk:url>build-tools_r26-rc1-macosx.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Tue Mar 21 10:10:25 2017.-->
<sdk:size>54379108</sdk:size>
<sdk:checksum type="sha1">43c2ddad3b67a5c33712ae14331a60673e69be91</sdk:checksum>
<sdk:url>build-tools_r26-rc1-windows.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-preview-license"/>
</sdk:build-tool>
<sdk:build-tool>
<!--Generated from bid:3907386, branch:git_nyc-mr1-sdk-dev-->
<sdk:revision>
<sdk:major>25</sdk:major>
<sdk:minor>0</sdk:minor>
<sdk:micro>3</sdk:micro>
</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Thu Apr 13 13:27:23 2017.-->
<sdk:size>50757258</sdk:size>
<sdk:checksum type="sha1">db95f3a0ae376534d4d69f4cdb6fad20649f3509</sdk:checksum>
<sdk:url>build-tools_r25.0.3-linux.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Thu Apr 13 13:27:21 2017.-->
<sdk:size>50545085</sdk:size>
<sdk:checksum type="sha1">160d2fefb5ce68e443427fc30a793a703b63e26e</sdk:checksum>
<sdk:url>build-tools_r25.0.3-macosx.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Thu Apr 13 13:27:19 2017.-->
<sdk:size>51337442</sdk:size>
<sdk:checksum type="sha1">1edcb109ae5133aebfed573cf0bc84e0c353c28d</sdk:checksum>
<sdk:url>build-tools_r25.0.3-windows.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:build-tool>
<sdk:build-tool>
<!--Generated from bid:3544217, branch:git_nyc-mr1-sdk-dev-->
<sdk:revision>
<sdk:major>25</sdk:major>
<sdk:minor>0</sdk:minor>
<sdk:micro>2</sdk:micro>
</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Mon Dec 5 10:11:59 2016.-->
<sdk:size>49880329</sdk:size>
<sdk:checksum type="sha1">ff953c0177e317618fda40516f3e9d95fd43c7ae</sdk:checksum>
<sdk:url>build-tools_r25.0.2-linux.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Mon Dec 5 10:11:57 2016.-->
<sdk:size>49667185</sdk:size>
<sdk:checksum type="sha1">12a5204bb3b6e39437535469fde7ddf42da46b16</sdk:checksum>
<sdk:url>build-tools_r25.0.2-macosx.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Mon Dec 5 10:11:55 2016.-->
<sdk:size>50458908</sdk:size>
<sdk:checksum type="sha1">2fee3c0704d6ecc480570450d8b8069b2c4a2dd4</sdk:checksum>
<sdk:url>build-tools_r25.0.2-windows.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-license"/>
</sdk:build-tool>
<sdk:build-tool> <sdk:build-tool>
<!--Generated from bid:3485210, branch:git_nyc-mr1-sdk-dev--> <!--Generated from bid:3485210, branch:git_nyc-mr1-sdk-dev-->
<sdk:revision> <sdk:revision>
@ -2043,64 +2243,64 @@ June 2014.</sdk:license>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
</sdk:build-tool> </sdk:build-tool>
<sdk:platform-tool> <sdk:platform-tool>
<!--Generated from bid:3485210, branch:git_nyc-mr1-sdk-dev--> <!--Generated from bid:4062713a, branch:git_oc-preview3-sdk-->
<sdk:revision> <sdk:revision>
<sdk:major>25</sdk:major> <sdk:major>26</sdk:major>
<sdk:minor>0</sdk:minor> <sdk:minor>0</sdk:minor>
<sdk:micro>1</sdk:micro> <sdk:micro>0</sdk:micro>
</sdk:revision> </sdk:revision>
<sdk:archives> <sdk:archives>
<sdk:archive> <sdk:archive>
<!--Built on: Mon Nov 14 23:49:26 2016.--> <!--Built on: Fri Jun 2 13:22:20 2017.-->
<sdk:size>3916151</sdk:size> <sdk:size>7771750</sdk:size>
<sdk:checksum type="sha1">8e461a2c76717824d1d8e91af68216c9f230a373</sdk:checksum> <sdk:checksum type="sha1">e75b6137dc444f777eb02f44a6d9819b3aabff82</sdk:checksum>
<sdk:url>platform-tools_r25.0.1-linux.zip</sdk:url> <sdk:url>platform-tools_r26.0.0-darwin.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Mon Nov 14 23:49:25 2016.-->
<sdk:size>3732924</sdk:size>
<sdk:checksum type="sha1">96abc8638bf9f65435bc0ab641cc4a3ff753eed5</sdk:checksum>
<sdk:url>platform-tools_r25.0.1-macosx.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os> <sdk:host-os>macosx</sdk:host-os>
</sdk:archive> </sdk:archive>
<sdk:archive> <sdk:archive>
<!--Built on: Mon Nov 14 23:49:25 2016.--> <!--Built on: Fri Jun 2 13:22:19 2017.-->
<sdk:size>3573485</sdk:size> <sdk:size>7859155</sdk:size>
<sdk:checksum type="sha1">75249224c12528329a151dfbc591509168ef6efd</sdk:checksum> <sdk:checksum type="sha1">00de8a6631405b617c10f68cd11ff2e1cd528e23</sdk:checksum>
<sdk:url>platform-tools_r25.0.1-windows.zip</sdk:url> <sdk:url>platform-tools_r26.0.0-linux.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os>
</sdk:archive>
<sdk:archive>
<!--Built on: Fri Jun 2 13:22:20 2017.-->
<sdk:size>7511554</sdk:size>
<sdk:checksum type="sha1">a4128ebc3d1b6372d981810920e3fa01637f891a</sdk:checksum>
<sdk:url>platform-tools_r26.0.0-windows.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os> <sdk:host-os>windows</sdk:host-os>
</sdk:archive> </sdk:archive>
</sdk:archives> </sdk:archives>
<sdk:uses-license ref="android-sdk-license"/> <sdk:uses-license ref="android-sdk-license"/>
</sdk:platform-tool> </sdk:platform-tool>
<sdk:tool> <sdk:tool>
<!--Generated from bid:3470232, branch:aosp-emu-2.2-release--> <!--Generated from bid:3567187, branch:aosp-emu-2.2-release-->
<sdk:revision> <sdk:revision>
<sdk:major>25</sdk:major> <sdk:major>25</sdk:major>
<sdk:minor>2</sdk:minor> <sdk:minor>2</sdk:minor>
<sdk:micro>3</sdk:micro> <sdk:micro>5</sdk:micro>
</sdk:revision> </sdk:revision>
<sdk:archives> <sdk:archives>
<sdk:archive> <sdk:archive>
<!--Built on: Fri Nov 11 08:51:34 2016.--> <!--Built on: Mon Dec 12 17:20:14 2016.-->
<sdk:size>277861433</sdk:size> <sdk:size>277894900</sdk:size>
<sdk:checksum type="sha1">aafe7f28ac51549784efc2f3bdfc620be8a08213</sdk:checksum> <sdk:checksum type="sha1">72df3aa1988c0a9003ccdfd7a13a7b8bd0f47fc1</sdk:checksum>
<sdk:url>tools_r25.2.3-linux.zip</sdk:url> <sdk:url>tools_r25.2.5-linux.zip</sdk:url>
<sdk:host-os>linux</sdk:host-os> <sdk:host-os>linux</sdk:host-os>
</sdk:archive> </sdk:archive>
<sdk:archive> <sdk:archive>
<!--Built on: Fri Nov 11 08:51:29 2016.--> <!--Built on: Mon Dec 12 17:20:09 2016.-->
<sdk:size>200496727</sdk:size> <sdk:size>200529982</sdk:size>
<sdk:checksum type="sha1">0e88c0bdb8f8ee85cce248580173e033a1bbc9cb</sdk:checksum> <sdk:checksum type="sha1">d2168d963ac5b616e3d3ddaf21511d084baf3659</sdk:checksum>
<sdk:url>tools_r25.2.3-macosx.zip</sdk:url> <sdk:url>tools_r25.2.5-macosx.zip</sdk:url>
<sdk:host-os>macosx</sdk:host-os> <sdk:host-os>macosx</sdk:host-os>
</sdk:archive> </sdk:archive>
<sdk:archive> <sdk:archive>
<!--Built on: Fri Nov 11 08:51:26 2016.--> <!--Built on: Mon Dec 12 17:20:05 2016.-->
<sdk:size>306745639</sdk:size> <sdk:size>306785944</sdk:size>
<sdk:checksum type="sha1">b965decb234ed793eb9574bad8791c50ca574173</sdk:checksum> <sdk:checksum type="sha1">a7f7ebeae1c8d8f62d3a8466e9c81baee7cc31ca</sdk:checksum>
<sdk:url>tools_r25.2.3-windows.zip</sdk:url> <sdk:url>tools_r25.2.5-windows.zip</sdk:url>
<sdk:host-os>windows</sdk:host-os> <sdk:host-os>windows</sdk:host-os>
</sdk:archive> </sdk:archive>
</sdk:archives> </sdk:archives>

View File

@ -137,4 +137,15 @@ in
}; };
}; };
source_25 = buildSource {
name = "android-source-25";
src = fetchurl {
url = https://dl.google.com/android/repository/sources-25_r01.zip;
sha1 = "bbc72efd1a9bad87cc507e308f0d29aad438c52c";
};
meta = {
description = "Source code for Android API 25";
};
};
} }

View File

@ -1,6 +1,6 @@
<?xml version="1.0" ?> <?xml version="1.0" ?>
<sdk:sdk-sys-img xmlns:sdk="http://schemas.android.com/sdk/android/sys-img/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <sdk:sdk-sys-img xmlns:sdk="http://schemas.android.com/sdk/android/sys-img/3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<!--Generated on 2016-11-23 16:51:35.431708 with ADRT.--> <!--Generated on 2017-06-07 21:04:43.770481 with ADRT.-->
<sdk:license id="android-sdk-license" type="text">Terms and Conditions <sdk:license id="android-sdk-license" type="text">Terms and Conditions
This is the Android Software Development Kit License Agreement This is the Android Software Development Kit License Agreement
@ -830,24 +830,6 @@ ANY PRE-RELEASE MATERIALS ARE NON-QUALIFIED AND, AS SUCH, ARE PROVIDED “AS IS
<sdk:abi>x86</sdk:abi> <sdk:abi>x86</sdk:abi>
<sdk:tag-id>default</sdk:tag-id> <sdk:tag-id>default</sdk:tag-id>
</sdk:system-image> </sdk:system-image>
<sdk:system-image>
<!--Generated from bid:3479480, branch:git_nyc-preview-release-->
<sdk:api-level>25</sdk:api-level>
<sdk:description>Google APIs Intel x86 Atom System Image</sdk:description>
<sdk:revision>3</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Mon Nov 14 16:41:48 2016.-->
<sdk:size>703131759</sdk:size>
<sdk:checksum type="sha1">7dd19cfee4e43a1f60e0f5f058404d92d9544b33</sdk:checksum>
<sdk:url>x86-25_r03.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-preview-license"/>
<sdk:abi>x86</sdk:abi>
<sdk:tag-id>google_apis</sdk:tag-id>
<sdk:tag-display>Google APIs</sdk:tag-display>
</sdk:system-image>
<sdk:system-image> <sdk:system-image>
<!--Generated from bid:3079185, branch:git_lmp-emu-release--> <!--Generated from bid:3079185, branch:git_lmp-emu-release-->
<sdk:api-level>21</sdk:api-level> <sdk:api-level>21</sdk:api-level>
@ -916,22 +898,4 @@ ANY PRE-RELEASE MATERIALS ARE NON-QUALIFIED AND, AS SUCH, ARE PROVIDED “AS IS
<sdk:abi>x86_64</sdk:abi> <sdk:abi>x86_64</sdk:abi>
<sdk:tag-id>default</sdk:tag-id> <sdk:tag-id>default</sdk:tag-id>
</sdk:system-image> </sdk:system-image>
<sdk:system-image>
<!--Generated from bid:3479480, branch:git_nyc-preview-release-->
<sdk:api-level>25</sdk:api-level>
<sdk:description>Google APIs Intel x86 Atom_64 System Image</sdk:description>
<sdk:revision>3</sdk:revision>
<sdk:archives>
<sdk:archive>
<!--Built on: Mon Nov 14 16:42:52 2016.-->
<sdk:size>912938750</sdk:size>
<sdk:checksum type="sha1">4593ee04811df21c339f3374fc5917843db06f8d</sdk:checksum>
<sdk:url>x86_64-25_r03.zip</sdk:url>
</sdk:archive>
</sdk:archives>
<sdk:uses-license ref="android-sdk-preview-license"/>
<sdk:abi>x86_64</sdk:abi>
<sdk:tag-id>google_apis</sdk:tag-id>
<sdk:tag-display>Google APIs</sdk:tag-display>
</sdk:system-image>
</sdk:sdk-sys-img> </sdk:sdk-sys-img>

View File

@ -3,7 +3,7 @@
if (isPyPy) then throw "pycairo not supported for interpreter ${python.executable}" else let if (isPyPy) then throw "pycairo not supported for interpreter ${python.executable}" else let
patch_waf = fetchpatch { patch_waf = fetchpatch {
url = http://www.linuxfromscratch.org/patches/blfs/svn/pycairo-1.10.0-waf_python_3_4-1.patch; url = http://www.linuxfromscratch.org/patches/blfs/8.0/pycairo-1.10.0-waf_python_3_4-1.patch;
sha256 = "0xfl1i9dips2nykyg91f5h5r3xpk2hp1js1gq5z0hwjr0in55id4"; sha256 = "0xfl1i9dips2nykyg91f5h5r3xpk2hp1js1gq5z0hwjr0in55id4";
}; };
patch_waf-py3_5 = ./waf-py3_5.patch; patch_waf-py3_5 = ./waf-py3_5.patch;
@ -26,7 +26,7 @@ in buildPythonPackage rec {
patches = [ patches = [
(fetchpatch { (fetchpatch {
url = http://www.linuxfromscratch.org/patches/blfs/svn/pycairo-1.10.0-waf_unpack-1.patch; url = http://www.linuxfromscratch.org/patches/blfs/8.0/pycairo-1.10.0-waf_unpack-1.patch;
sha256 = "1bmrhq2nmhx4l5glvyi59r0hc7w5m56kz41frx7v3dcp8f91p7xd"; sha256 = "1bmrhq2nmhx4l5glvyi59r0hc7w5m56kz41frx7v3dcp8f91p7xd";
}) })
]; ];

View File

@ -1,13 +1,18 @@
{ buildRubyGem, lib, bundler, ruby, nix, nix-prefetch-git }: { buildRubyGem, fetchFromGitHub, lib, bundler, ruby, nix, nix-prefetch-git }:
buildRubyGem rec { buildRubyGem rec {
inherit ruby; inherit ruby;
name = "${gemName}-${version}"; name = "${gemName}-${version}";
gemName = "bundix"; gemName = "bundix";
version = "2.1.0"; version = "2.2.0";
sha256 = "5a073c59dfc7e2367c47e6513fc8914d27e11c08f82bc1103c4793dfb2837bef"; src = fetchFromGitHub {
owner = "manveru";
repo = "bundix";
rev = version;
sha256 = "0lnzkwxprdz73axk54y5p5xkw56n3lra9v2dsvqjfw0ab66ld0iy";
};
buildInputs = [bundler]; buildInputs = [bundler];

View File

@ -0,0 +1,49 @@
{ stdenv, fetchFromGitHub, jdk, ant, python2, python2Packages, watchman, unzip, bash, makeWrapper }:
stdenv.mkDerivation rec {
name = "buck-${version}";
version = "v2017.05.31.01";
src = fetchFromGitHub {
owner = "facebook";
repo = "buck";
rev = "0b8b3828a11afa79dc128832cb55b106f07e48aa";
sha256 = "1g3yg8qq91cdhsq7zmir7wxw3767l120f5zhq969gppdw9apqy0s";
};
patches = [ ./pex-mtime.patch ];
postPatch = ''
grep -l -r '/bin/bash' --null | xargs -0 sed -i -e "s!/bin/bash!${bash}/bin/bash!g"
'';
buildInputs = [ jdk ant python2 watchman python2Packages.pywatchman ];
nativeBuildInputs = [ makeWrapper ];
targets = [ "buck" "buckd" ];
buildPhase = ''
ant
for exe in ${toString targets}; do
./bin/buck build //programs:$exe
done
'';
installPhase = ''
for exe in ${toString targets}; do
install -D -m755 buck-out/gen/programs/$exe.pex $out/bin/$exe
wrapProgram $out/bin/$exe \
--prefix PYTHONPATH : $PYTHONPATH \
--prefix PATH : "${stdenv.lib.makeBinPath [jdk watchman]}"
done
'';
meta = with stdenv.lib; {
homepage = https://buckbuild.com/;
description = "A high-performance build tool";
maintainers = [ maintainers.jgertm ];
license = licenses.asl20;
platforms = platforms.all;
};
}

View File

@ -0,0 +1,13 @@
diff --git a/third-party/py/pex/pex/common.py b/third-party/py/pex/pex/common.py
index 76459ce23..eff411b20 100644
--- a/third-party/py/pex/pex/common.py
+++ b/third-party/py/pex/pex/common.py
@@ -328,4 +328,7 @@ class Chroot(object):
def zip(self, filename, mode='wb'):
with contextlib.closing(zipfile.ZipFile(filename, mode)) as zf:
for f in sorted(self.files()):
- zf.write(os.path.join(self.chroot, f), arcname=f, compress_type=zipfile.ZIP_DEFLATED)
+ path = os.path.join(self.chroot, f)
+ instant = 615532801
+ os.utime(path, (instant, instant))
+ zf.write(path, arcname=f, compress_type=zipfile.ZIP_DEFLATED)

View File

@ -2,15 +2,15 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "multi-ghc-travis-${version}"; name = "multi-ghc-travis-${version}";
version = "git-2017-05-18"; version = "git-2017-05-24";
buildInputs = [ ghc ]; buildInputs = [ ghc ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hvr"; owner = "hvr";
repo = "multi-ghc-travis"; repo = "multi-ghc-travis";
rev = "3e1b3847583020f0e83c97fcf4bcfb7c90b78259"; rev = "c1dcbcbcd3eadcc63adeac65d63497885b422a44";
sha256 = "0hnwp9gsv2rnkxqiw4cg1vdi7wccajx0i9ryhw4lfr8nhkizbsww"; sha256 = "12xss8wgsqs2fghrfl4h6g5wli6wn274zmdsq5zdcib2m7da5yw2";
}; };
installPhase = '' installPhase = ''
@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
description = "Generate .travis.yml for multiple ghc versions"; description = "Generate .travis.yml for multiple ghc versions";
homepage = "https://github.com/hvr/multi-ghc-travis"; homepage = "https://github.com/hvr/multi-ghc-travis";
license = licenses.bsd3; license = licenses.bsd3;
platforms = platforms.all; platforms = ghc.meta.platforms;
maintainers = with maintainers; [ jb55 ]; maintainers = with maintainers; [ jb55 ];
}; };
} }

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "strace-${version}"; name = "strace-${version}";
version = "4.16"; version = "4.17";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/strace/${name}.tar.xz"; url = "mirror://sourceforge/strace/${name}.tar.xz";
sha256 = "1vzhmpcy989i4k12q4cc438yal2ghhm6x7ychscjbhcf2yspqj4q"; sha256 = "06bl4dld5fk4a3iiq4pyrkm6sh63599ah8dmds0glg5vbw45pww1";
}; };
nativeBuildInputs = [ perl ]; nativeBuildInputs = [ perl ];

View File

@ -2,14 +2,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "bastet-${version}"; name = "bastet-${version}";
version = "0.43.1"; version = "0.43.2";
buildInputs = [ ncurses boost ]; buildInputs = [ ncurses boost ];
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "fph"; owner = "fph";
repo = "bastet"; repo = "bastet";
rev = version; rev = version;
sha256 = "14ymdarx30zqxyixvb17h4hs57y6zfx0lrdvc200crllz8zzdx5z"; sha256 = "09kamxapm9jw9przpsgjfg33n9k94bccv65w95dakj0br33a75wn";
}; };
installPhase = '' installPhase = ''

View File

@ -0,0 +1,22 @@
{ stdenv, fetchurl, SDL, SDL_mixer, zlib, libpng, libintlOrEmpty }:
stdenv.mkDerivation rec {
name = "lbreakout2-${version}";
version = "2.6.5";
buildInputs = [ SDL SDL_mixer zlib libpng ] ++ libintlOrEmpty;
src = fetchurl {
url = "mirror://sourceforge/lgames/${name}.tar.gz";
sha256 = "0vwdlyvh7c4y80q5vp7fyfpzbqk9lq3w8pvavi139njkalbxc14i";
};
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-lintl";
meta = with stdenv.lib; {
description = "Breakout clone from the LGames series";
homepage = http://lgames.sourceforge.net/LBreakout2/;
license = licenses.gpl2;
maintainers = [ maintainers.ciil ];
platforms = platforms.unix;
};
}

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "minecraft-server-${version}"; name = "minecraft-server-${version}";
version = "1.11.2"; version = "1.12";
src = fetchurl { src = fetchurl {
url = "http://s3.amazonaws.com/Minecraft.Download/versions/${version}/minecraft_server.${version}.jar"; url = "http://s3.amazonaws.com/Minecraft.Download/versions/${version}/minecraft_server.${version}.jar";
sha256 = "12nqcj6skwjfcywm3ah4jb1qn4r558ng9cchdc3hbz99nhv7vi6y"; sha256 = "02fwlg4c9kqckmdi9wxi64jdqynj5myp0995aabc07746hwgzszy";
}; };
preferLocalBuild = true; preferLocalBuild = true;

View File

@ -8,8 +8,9 @@ let
script = exec: '' script = exec: ''
#!${stdenv.shell} #!${stdenv.shell}
nohup sh -c "sleep 1 && pkill -SIGSTOP kodi" & nohup sh -c "pkill -SIGTSTP kodi" &
nohup sh -c "${exec} '$@' -f;pkill -SIGCONT kodi" # https://forum.kodi.tv/showthread.php?tid=185074&pid=1622750#pid1622750
nohup sh -c "sleep 10 && ${exec} '$@' -f;pkill -SIGCONT kodi"
''; '';
scriptSh = exec: pkgs.writeScript ("kodi-"+exec.name) (script exec.path); scriptSh = exec: pkgs.writeScript ("kodi-"+exec.name) (script exec.path);
execs = map (core: rec { name = core.core; path = core+"/bin/retroarch-"+name;}) cores; execs = map (core: rec { name = core.core; path = core+"/bin/retroarch-"+name;}) cores;
@ -31,8 +32,8 @@ stdenv.mkDerivation rec {
description = "Kodi retroarch advanced launchers"; description = "Kodi retroarch advanced launchers";
longDescription = '' longDescription = ''
These retroarch launchers are intended to be used with These retroarch launchers are intended to be used with
anglescry advanced launcher for Kodi since device input is advanced (emulation) launcher for Kodi since device input is
caught by both Kodi and the retroarch process. otherwise caught by both Kodi and the retroarch process.
''; '';
license = stdenv.lib.licenses.gpl3; license = stdenv.lib.licenses.gpl3;
}; };

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "flat-plat-gtk-theme-${version}"; name = "flat-plat-gtk-theme-${version}";
version = "20170515"; version = "20170605";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nana-4"; owner = "nana-4";
repo = "Flat-Plat"; repo = "Flat-Plat";
rev = "v${version}"; rev = "v${version}";
sha256 = "0z0l9ch6symcjhbfkj1q5i46ajbn7l7slhjgrcjm0ppqh05xc4y7"; sha256 = "1vcd6mkkfk9a1n5hwpdigvsdsfd8df83kc94w53rs7gw9pqfygya";
}; };
nativeBuildInputs = [ gnome3.glib libxml2 ]; nativeBuildInputs = [ gnome3.glib libxml2 ];

View File

@ -293,6 +293,13 @@ rec {
sha256 = "19zs03giv8h5xmv18y9zn85sxr8akphvbscclrqhs4cf88285cgl"; sha256 = "19zs03giv8h5xmv18y9zn85sxr8akphvbscclrqhs4cf88285cgl";
}; };
dependencies = []; dependencies = [];
# In addition to the arguments you pass to your compiler, you also need to
# specify the path of the C++ std header (if you are using C++).
# These usually implicitly set by cc-wrapper around clang (pkgs/build-support/cc-wrapper).
# The linked ruby code shows generates the required '.clang_complete' for cmake based projects
# https://gist.github.com/Mic92/135e83803ed29162817fce4098dec144
# as an alternative you can execute the following command:
# $ eval echo $(nix-instantiate --eval --expr 'with (import <nixpkgs>) {}; clang.default_cxx_stdlib_compile')
preFixup = '' preFixup = ''
substituteInPlace "$out"/share/vim-plugins/clang_complete/plugin/clang_complete.vim \ substituteInPlace "$out"/share/vim-plugins/clang_complete/plugin/clang_complete.vim \
--replace "let g:clang_library_path = '' + "''" + ''" "let g:clang_library_path='${llvmPackages.clang.cc}/lib/libclang.so'" --replace "let g:clang_library_path = '' + "''" + ''" "let g:clang_library_path='${llvmPackages.clang.cc}/lib/libclang.so'"

View File

@ -1,3 +1,10 @@
# In addition to the arguments you pass to your compiler, you also need to
# specify the path of the C++ std header (if you are using C++).
# These usually implicitly set by cc-wrapper around clang (pkgs/build-support/cc-wrapper).
# The linked ruby code shows generates the required '.clang_complete' for cmake based projects
# https://gist.github.com/Mic92/135e83803ed29162817fce4098dec144
# as an alternative you can execute the following command:
# $ eval echo $(nix-instantiate --eval --expr 'with (import <nixpkgs>) {}; clang.default_cxx_stdlib_compile')
preFixup = '' preFixup = ''
substituteInPlace "$out"/share/vim-plugins/clang_complete/plugin/clang_complete.vim \ substituteInPlace "$out"/share/vim-plugins/clang_complete/plugin/clang_complete.vim \
--replace "let g:clang_library_path = '' + "''" + ''" "let g:clang_library_path='${llvmPackages.clang.cc}/lib/libclang.so'" --replace "let g:clang_library_path = '' + "''" + ''" "let g:clang_library_path='${llvmPackages.clang.cc}/lib/libclang.so'"

View File

@ -27,5 +27,6 @@ stdenv.mkDerivation rec {
platforms = platforms.linux; platforms = platforms.linux;
license = licenses.gpl2; license = licenses.gpl2;
homepage = "http://www.displaylink.com/"; homepage = "http://www.displaylink.com/";
broken = !versionAtLeast kernel.version "3.16";
}; };
} }

View File

@ -1,17 +1,7 @@
{ stdenv, fetchurl, buildPerlPackage, perl, HTMLParser, NetDNS, NetAddrIP, DBFile { stdenv, fetchurl, buildPerlPackage, perl, perlPackages, HTMLParser, NetDNS, NetAddrIP, DBFile
, HTTPDate, MailDKIM, LWP, IOSocketSSL, makeWrapper, gnupg1 , HTTPDate, MailDKIM, LWP, IOSocketSSL, makeWrapper, gnupg1
}: }:
# TODO: Add the Perl modules ...
#
# DBI
# Encode::Detect
# IP::Country::Fast
# Mail::SPF
# Net::Ident
# Razor2::Client::Agent
#
buildPerlPackage rec { buildPerlPackage rec {
name = "SpamAssassin-3.4.1"; name = "SpamAssassin-3.4.1";
@ -20,14 +10,17 @@ buildPerlPackage rec {
sha256 = "0la6s5ilamf9129kyjckcma8cr6fpb6b5f2fb64v7106iy0ckhd0"; sha256 = "0la6s5ilamf9129kyjckcma8cr6fpb6b5f2fb64v7106iy0ckhd0";
}; };
buildInputs = [ makeWrapper HTMLParser NetDNS NetAddrIP DBFile HTTPDate MailDKIM # https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7434
LWP IOSocketSSL ]; patches = [ ./sa-update_add--siteconfigpath.patch ];
buildInputs = with perlPackages; [ makeWrapper HTMLParser NetDNS NetAddrIP DBFile HTTPDate MailDKIM
LWP IOSocketSSL DBI EncodeDetect IPCountry NetIdent Razor2ClientAgent MailSPF NetDNSResolverProgrammable ];
# Enabling 'taint' mode is desirable, but that flag disables support # Enabling 'taint' mode is desirable, but that flag disables support
# for the PERL5LIB environment variable. Needs further investigation. # for the PERL5LIB environment variable. Needs further investigation.
makeFlags = "PERL_BIN=${perl}/bin/perl PERL_TAINT=no"; makeFlags = "PERL_BIN=${perl}/bin/perl PERL_TAINT=no";
makeMakerFlags = "CONFDIR=/etc/spamassassin LOCALSTATEDIR=/var/lib/spamassassin"; makeMakerFlags = "CONFDIR=/homeless/shelter LOCALSTATEDIR=/var/lib/spamassassin";
doCheck = false; doCheck = false;
@ -45,6 +38,6 @@ buildPerlPackage rec {
description = "Open-Source Spam Filter"; description = "Open-Source Spam Filter";
license = stdenv.lib.licenses.asl20; license = stdenv.lib.licenses.asl20;
platforms = stdenv.lib.platforms.linux; platforms = stdenv.lib.platforms.linux;
maintainers = [ stdenv.lib.maintainers.peti ]; maintainers = with stdenv.lib.maintainers; [ peti qknight ];
}; };
} }

View File

@ -0,0 +1,59 @@
From 60abf3ee8864980a95b32e2d6cf60e26b49654c0 Mon Sep 17 00:00:00 2001
From: joachim schiele <js@lastlog.de>
Date: Wed, 7 Jun 2017 22:15:39 +0200
Subject: [PATCH 2/2] Adding --siteconfigpath to not be forced to use global /etc/spamasassin configuration directory but to provide an alternative location.
---
sa-update.raw | 5 +++++
lib/Mail/SpamAssassin/PerMsgStatus.pm | 2 +
2 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/sa-update.raw b/sa-update.raw
index bb7396d..39f681f 100755
--- a/sa-update.raw
+++ b/sa-update.raw
@@ -196,6 +196,7 @@ GetOptions(
'gpgkeyfile=s' => \$opt{'gpgkeyfile'},
'channelfile=s' => \$opt{'channelfile'},
'updatedir=s' => \$opt{'updatedir'},
+ 'siteconfigpath=s' => \$opt{'siteconfigpath'},
'gpg!' => \$GPG_ENABLED,
'4' => sub { $opt{'force_pf'} = 'inet' },
@@ -267,6 +268,9 @@ else {
$opt{'updatedir'} = $SA->sed_path('__local_state_dir__/__version__');
}
+if (defined $opt{'siteconfigpath'}) {
+ $LOCAL_RULES_DIR = untaint_file_path($opt{'siteconfigpath'});
+}
# check only disabled gpg
# https://issues.apache.org/SpamAssassin/show_bug.cgi?id=5854
@@ -1808,6 +1812,7 @@ Options:
--updatedir path Directory to place updates, defaults to the
SpamAssassin site rules directory
(default: @@LOCAL_STATE_DIR@@/@@VERSION@@)
+ --siteconfigpath=path Path for site configs
--refreshmirrors Force the MIRRORED.BY file to be updated
-D, --debug [area=n,...] Print debugging messages
-v, --verbose Be verbose, like print updated channel names;
--
diff --git a/lib/Mail/SpamAssassin/PerMsgStatus.pm b/lib/Mail/SpamAssassin/PerMsgStatus.pm
index 6d8beaa..6ad87dc 100644
--- a/lib/Mail/SpamAssassin/PerMsgStatus.pm
+++ b/lib/Mail/SpamAssassin/PerMsgStatus.pm
@@ -389,7 +389,8 @@ sub check_timed {
if (!$self->{main}->have_plugin("check_main")) {
die "check: no loaded plugin implements 'check_main': cannot scan!\n".
"Check that the necessary '.pre' files are in the config directory.\n".
- "At a minimum, v320.pre loads the Check plugin which is required.\n";
+ "At a minimum, v320.pre loads the Check plugin which is required.\n".
+ "NixOS: Since there is no '/etc/spamassassin' simply restart 'spamd.service' which on its behalf will run 'sa-learn --siteconfigpath=/nix/store/l4hr4yxk8mb4wbkha6vm6rh92pj19rj6-spamd-env ...' to update the /var/lib/spamassassin configs.\n";
}
}
--
2.12.2

View File

@ -1,19 +1,23 @@
{ stdenv, fetchurl, doxygen }: { stdenv, fetchFromGitHub, autoreconfHook, doxygen }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "${passthru.majorVersion}.${passthru.minorVersion}"; version = "${passthru.majorVersion}.${passthru.minorVersion}";
name = "libmpdclient-${version}"; name = "libmpdclient-${version}";
src = fetchurl { src = fetchFromGitHub {
url = "http://www.musicpd.org/download/libmpdclient/2/${name}.tar.xz"; owner = "MusicPlayerDaemon";
sha256 = "10pzs9z815a8hgbbbiliapyiw82bnplsccj5irgqjw5f5plcs22g"; repo = "libmpdclient";
rev = "v${version}";
sha256 = "06rv2j8rw9v9l4nwpvbh28nad8bbg368hzd8s58znbr5pgb8dihd";
}; };
buildInputs = [ doxygen ]; nativeBuildInputs = [ autoreconfHook doxygen ];
enableParallelBuilding = true;
passthru = { passthru = {
majorVersion = "2"; majorVersion = "2";
minorVersion = "10"; minorVersion = "11";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, fetchpatch, pkgconfig, glib, systemd, boost, darwin { stdenv, fetchFromGitHub, fetchpatch, autoreconfHook, pkgconfig, glib, systemd, boost, darwin
, alsaSupport ? true, alsaLib , alsaSupport ? true, alsaLib
, avahiSupport ? true, avahi, dbus , avahiSupport ? true, avahi, dbus
, flacSupport ? true, flac , flacSupport ? true, flac
@ -33,18 +33,22 @@ let
opt = stdenv.lib.optional; opt = stdenv.lib.optional;
mkFlag = c: f: if c then "--enable-${f}" else "--disable-${f}"; mkFlag = c: f: if c then "--enable-${f}" else "--disable-${f}";
major = "0.20"; major = "0.20";
minor = "6"; minor = "9";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "mpd-${major}${if minor == "" then "" else "." + minor}"; name = "mpd-${version}";
src = fetchurl { version = "${major}${if minor == "" then "" else "." + minor}";
url = "http://www.musicpd.org/download/mpd/${major}/${name}.tar.xz";
sha256 = "0isbpa79m7zf09w3s1ry638cw96rxasy1ch66zl01k75i48mw1gl"; src = fetchFromGitHub {
owner = "MusicPlayerDaemon";
repo = "MPD";
rev = "v${version}";
sha256 = "17ly30syrlw5274washifr0nddll3g1zb4rr4f9sfnlxz9wz73p1";
}; };
patches = [ ./x86.patch ]; patches = [ ./x86.patch ];
buildInputs = [ pkgconfig glib boost ] buildInputs = [ glib boost ]
++ opt stdenv.isDarwin darwin.apple_sdk.frameworks.CoreAudioKit ++ opt stdenv.isDarwin darwin.apple_sdk.frameworks.CoreAudioKit
++ opt stdenv.isLinux systemd ++ opt stdenv.isLinux systemd
++ opt (stdenv.isLinux && alsaSupport) alsaLib ++ opt (stdenv.isLinux && alsaSupport) alsaLib
@ -77,6 +81,10 @@ in stdenv.mkDerivation rec {
++ opt opusSupport libopus ++ opt opusSupport libopus
++ opt soundcloudSupport yajl; ++ opt soundcloudSupport yajl;
nativeBuildInputs = [ autoreconfHook pkgconfig ];
enableParallelBuilding = true;
configureFlags = configureFlags =
[ (mkFlag (!stdenv.isDarwin && alsaSupport) "alsa") [ (mkFlag (!stdenv.isDarwin && alsaSupport) "alsa")
(mkFlag flacSupport "flac") (mkFlag flacSupport "flac")

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ethtool-${version}"; name = "ethtool-${version}";
version = "4.10"; version = "4.11";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/software/network/ethtool/${name}.tar.xz"; url = "mirror://kernel/software/network/ethtool/${name}.tar.xz";
sha256 = "1fklbjwr41cvd5b7d1qvpl3bqzc4aak732r3m2wjhhgkxhk9f07h"; sha256 = "1cp132kk2xd2cwn1ysjv0cl8i9lnq3n4zi4wy676p5k4h2mfvn0j";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
owner = "tmux"; owner = "tmux";
repo = "tmux"; repo = "tmux";
rev = version; rev = version;
sha256 = "0h0c6rwp4bjifqx9wpx7y0bmayvrvvgh9211rdk4nsf81j17n6vx"; sha256 = "0zwjngfaqrlwwbzicc5pq5pyws8f1qghcajvj0hwkipj51hqyswf";
}; };
nativeBuildInputs = [ pkgconfig autoreconfHook ]; nativeBuildInputs = [ pkgconfig autoreconfHook ];

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "yle-dl-${version}"; name = "yle-dl-${version}";
version = "2.15"; version = "2.16";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "aajanki"; owner = "aajanki";
repo = "yle-dl"; repo = "yle-dl";
rev = version; rev = version;
sha256 = "1mvgw8ppv33j04mjsyb5rxg358v3i2zfgazwm7nc3ysc5yl091j5"; sha256 = "1ahv7b3r52mvi2b5ji77l62hy543b6pdmq8hnd9xxvnxai463k35";
}; };
patchPhase = '' patchPhase = ''

View File

@ -9,11 +9,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "afl-${version}"; name = "afl-${version}";
version = "2.41b"; version = "2.42b";
src = fetchurl { src = fetchurl {
url = "http://lcamtuf.coredump.cx/afl/releases/${name}.tgz"; url = "http://lcamtuf.coredump.cx/afl/releases/${name}.tgz";
sha256 = "13wnjk0rklcjglj7dmpahv67vig9azifxgnggj56hki66lrb2w06"; sha256 = "16ckgi4rh48rdmqcyxgabzcsmkfq77jjaghbxw9smkkm4sbx3yhk";
}; };
# Note: libcgroup isn't needed for building, just for the afl-cgroup # Note: libcgroup isn't needed for building, just for the afl-cgroup

View File

@ -1,4 +1,4 @@
# frozen_string_literal: true # frozen_string_literal: true
source "https://rubygems.org" source "https://rubygems.org"
gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/4.14.17" gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/4.14.25"

View File

@ -1,12 +1,13 @@
GIT GIT
remote: https://github.com/rapid7/metasploit-framework remote: https://github.com/rapid7/metasploit-framework
revision: fd3da8f3350d6cf7f0449bf0ead4d51747525c0a revision: 8a194207f07c2b8c91c1a72e57c25683d4e9f744
ref: refs/tags/4.14.17 ref: refs/tags/4.14.25
specs: specs:
metasploit-framework (4.14.17) metasploit-framework (4.14.25)
actionpack (~> 4.2.6) actionpack (~> 4.2.6)
activerecord (~> 4.2.6) activerecord (~> 4.2.6)
activesupport (~> 4.2.6) activesupport (~> 4.2.6)
backports
bcrypt bcrypt
bit-struct bit-struct
filesize filesize
@ -16,7 +17,7 @@ GIT
metasploit-concern metasploit-concern
metasploit-credential metasploit-credential
metasploit-model metasploit-model
metasploit-payloads (= 1.2.29) metasploit-payloads (= 1.2.32)
metasploit_data_models metasploit_data_models
metasploit_payloads-mettle (= 0.1.9) metasploit_payloads-mettle (= 0.1.9)
msgpack msgpack
@ -36,7 +37,7 @@ GIT
rb-readline rb-readline
recog recog
redcarpet redcarpet
rex-arch (= 0.1.4) rex-arch
rex-bin_tools rex-bin_tools
rex-core rex-core
rex-encoder rex-encoder
@ -96,8 +97,9 @@ GEM
addressable (2.5.1) addressable (2.5.1)
public_suffix (~> 2.0, >= 2.0.2) public_suffix (~> 2.0, >= 2.0.2)
arel (6.0.4) arel (6.0.4)
arel-helpers (2.3.0) arel-helpers (2.4.0)
activerecord (>= 3.1.0, < 6) activerecord (>= 3.1.0, < 6)
backports (3.8.0)
bcrypt (3.1.11) bcrypt (3.1.11)
bindata (2.4.0) bindata (2.4.0)
bit-struct (0.16) bit-struct (0.16)
@ -106,7 +108,7 @@ GEM
faraday (0.12.1) faraday (0.12.1)
multipart-post (>= 1.2, < 3) multipart-post (>= 1.2, < 3)
filesize (0.1.1) filesize (0.1.1)
i18n (0.8.1) i18n (0.8.4)
jsobfu (0.4.2) jsobfu (0.4.2)
rkelly-remix rkelly-remix
json (2.1.0) json (2.1.0)
@ -117,19 +119,20 @@ GEM
activemodel (~> 4.2.6) activemodel (~> 4.2.6)
activesupport (~> 4.2.6) activesupport (~> 4.2.6)
railties (~> 4.2.6) railties (~> 4.2.6)
metasploit-credential (2.0.9) metasploit-credential (2.0.10)
metasploit-concern metasploit-concern
metasploit-model metasploit-model
metasploit_data_models metasploit_data_models
pg pg
railties railties
rex-socket
rubyntlm rubyntlm
rubyzip rubyzip
metasploit-model (2.0.4) metasploit-model (2.0.4)
activemodel (~> 4.2.6) activemodel (~> 4.2.6)
activesupport (~> 4.2.6) activesupport (~> 4.2.6)
railties (~> 4.2.6) railties (~> 4.2.6)
metasploit-payloads (1.2.29) metasploit-payloads (1.2.32)
metasploit_data_models (2.0.14) metasploit_data_models (2.0.14)
activerecord (~> 4.2.6) activerecord (~> 4.2.6)
activesupport (~> 4.2.6) activesupport (~> 4.2.6)
@ -141,7 +144,7 @@ GEM
railties (~> 4.2.6) railties (~> 4.2.6)
recog (~> 2.0) recog (~> 2.0)
metasploit_payloads-mettle (0.1.9) metasploit_payloads-mettle (0.1.9)
mini_portile2 (2.1.0) mini_portile2 (2.2.0)
minitest (5.10.2) minitest (5.10.2)
msgpack (1.1.0) msgpack (1.1.0)
multipart-post (2.0.0) multipart-post (2.0.0)
@ -149,8 +152,8 @@ GEM
net-ssh (4.1.0) net-ssh (4.1.0)
network_interface (0.0.1) network_interface (0.0.1)
nexpose (6.0.0) nexpose (6.0.0)
nokogiri (1.7.2) nokogiri (1.8.0)
mini_portile2 (~> 2.1.0) mini_portile2 (~> 2.2.0)
octokit (4.7.0) octokit (4.7.0)
sawyer (~> 0.8.0, >= 0.5.3) sawyer (~> 0.8.0, >= 0.5.3)
openssl-ccm (1.2.1) openssl-ccm (1.2.1)
@ -166,7 +169,7 @@ GEM
arel (>= 4.0.1) arel (>= 4.0.1)
pg_array_parser (~> 0.0.9) pg_array_parser (~> 0.0.9)
public_suffix (2.0.5) public_suffix (2.0.5)
rack (1.6.6) rack (1.6.8)
rack-test (0.6.3) rack-test (0.6.3)
rack (>= 1.0) rack (>= 1.0)
rails-deprecated_sanitizer (1.0.3) rails-deprecated_sanitizer (1.0.3)
@ -184,10 +187,10 @@ GEM
thor (>= 0.18.1, < 2.0) thor (>= 0.18.1, < 2.0)
rake (12.0.0) rake (12.0.0)
rb-readline (0.5.4) rb-readline (0.5.4)
recog (2.1.6) recog (2.1.8)
nokogiri nokogiri
redcarpet (3.4.0) redcarpet (3.4.0)
rex-arch (0.1.4) rex-arch (0.1.8)
rex-text rex-text
rex-bin_tools (0.1.3) rex-bin_tools (0.1.3)
metasm metasm
@ -234,7 +237,7 @@ GEM
rex-text rex-text
rkelly-remix (0.0.7) rkelly-remix (0.0.7)
robots (0.10.1) robots (0.10.1)
ruby_smb (0.0.12) ruby_smb (0.0.18)
bindata bindata
rubyntlm rubyntlm
windows_error windows_error

View File

@ -1,4 +1,4 @@
{ stdenv, fetchFromGitHub, makeWrapper, ruby, bundlerEnv, ncurses }: { stdenv, fetchFromGitHub, makeWrapper, ruby, bundlerEnv }:
# Maintainer notes for updating: # Maintainer notes for updating:
# 1. increment version number in expression and in Gemfile # 1. increment version number in expression and in Gemfile
@ -13,13 +13,13 @@ let
}; };
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "metasploit-framework-${version}"; name = "metasploit-framework-${version}";
version = "4.14.17"; version = "4.14.25";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rapid7"; owner = "rapid7";
repo = "metasploit-framework"; repo = "metasploit-framework";
rev = version; rev = version;
sha256 = "0g666lxin9f0v9vhfh3s913ym8fnh32rpfl1rpj8d8n1azch5fn0"; sha256 = "0cp1ybq29a0r7kabg4p2yj0qm90hjvr4xxp0pynb2g406sbyycjm";
}; };
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];

View File

@ -58,10 +58,18 @@
arel-helpers = { arel-helpers = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0k8hqa2505b2s3w6gajh2lvi2mn832yqldiy2z4c55phzkmr08sr"; sha256 = "1sx4qbzhld3a99175p2krz3hv1npc42rv3sd8x4awzkgplg3zy9c";
type = "gem"; type = "gem";
}; };
version = "2.3.0"; version = "2.4.0";
};
backports = {
source = {
remotes = ["https://rubygems.org"];
sha256 = "17pcz0z6jms5jydr1r95kf1bpk3ms618hgr26c62h34icy9i1dpm";
type = "gem";
};
version = "3.8.0";
}; };
bcrypt = { bcrypt = {
source = { source = {
@ -122,10 +130,10 @@
i18n = { i18n = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1s6971zmjxszdrp59vybns9gzxpdxzdklakc5lp8nl4fx5kpxkbp"; sha256 = "1j491wrfzham4nk8q4bifah3lx7nr8wp9ahfb7vd3hxn71v7kic7";
type = "gem"; type = "gem";
}; };
version = "0.8.1"; version = "0.8.4";
}; };
jsobfu = { jsobfu = {
source = { source = {
@ -170,20 +178,20 @@
metasploit-credential = { metasploit-credential = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1y36f1f4nw0imhfbckl213ah7qgfldrkv2fpv2acslb6iqiaa3gk"; sha256 = "1zblyy2yv31zap6dzf3lpkhvnafkwbzdvr6nsqmyh95ci8yy1q6r";
type = "gem"; type = "gem";
}; };
version = "2.0.9"; version = "2.0.10";
}; };
metasploit-framework = { metasploit-framework = {
source = { source = {
fetchSubmodules = false; fetchSubmodules = false;
rev = "fd3da8f3350d6cf7f0449bf0ead4d51747525c0a"; rev = "8a194207f07c2b8c91c1a72e57c25683d4e9f744";
sha256 = "1r04drq34qfbhmhp0mqnm13vrycr7dcq670zk8xqiif5rhbij6qv"; sha256 = "0q7iv9wd65ji1cay6am4dskrlibvp3wyn66gvld8p1nfnnvn5vmq";
type = "git"; type = "git";
url = "https://github.com/rapid7/metasploit-framework"; url = "https://github.com/rapid7/metasploit-framework";
}; };
version = "4.14.17"; version = "4.14.25";
}; };
metasploit-model = { metasploit-model = {
source = { source = {
@ -196,10 +204,10 @@
metasploit-payloads = { metasploit-payloads = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0c6wvnxgwdiryz5skzrp2wcfbxp57icaclckjcaxlw63v09wgjii"; sha256 = "1dqnyzp60da6f8kgnbpjmv5xsg1hvyyd2jkkzbh69sgwp4nw3i9g";
type = "gem"; type = "gem";
}; };
version = "1.2.29"; version = "1.2.32";
}; };
metasploit_data_models = { metasploit_data_models = {
source = { source = {
@ -220,10 +228,10 @@
mini_portile2 = { mini_portile2 = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1y25adxb1hgg1wb2rn20g3vl07qziq6fz364jc5694611zz863hb"; sha256 = "0g5bpgy08q0nc0anisg3yvwc1gc3inl854fcrg48wvg7glqd6dpm";
type = "gem"; type = "gem";
}; };
version = "2.1.0"; version = "2.2.0";
}; };
minitest = { minitest = {
source = { source = {
@ -284,10 +292,10 @@
nokogiri = { nokogiri = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0jd8q3pr5rkrxx1vklvhcqcgl8kmfv5c8ny36ni3z5mirw6cm70c"; sha256 = "1nffsyx1xjg6v5n9rrbi8y1arrcx2i5f21cp6clgh9iwiqkr7rnn";
type = "gem"; type = "gem";
}; };
version = "1.7.2"; version = "1.8.0";
}; };
octokit = { octokit = {
source = { source = {
@ -372,10 +380,10 @@
rack = { rack = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "073d6rjgqfb4xjhbshyrflqgbdvxqvx4b907j2d4mi5qgbv8y2ax"; sha256 = "19m7aixb2ri7p1n0iqaqx8ldi97xdhvbxijbyrrcdcl6fv5prqza";
type = "gem"; type = "gem";
}; };
version = "1.6.6"; version = "1.6.8";
}; };
rack-test = { rack-test = {
source = { source = {
@ -436,10 +444,10 @@
recog = { recog = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "08ypzrn40jbjbzwdbbjkcqdm74zlsc0yr2iqs0yn479fa5k8ajw4"; sha256 = "0d12889rx9ylm0jybg9n5sqx0v413hy9zjqs9rd9qjd1kjva7y87";
type = "gem"; type = "gem";
}; };
version = "2.1.6"; version = "2.1.8";
}; };
redcarpet = { redcarpet = {
source = { source = {
@ -452,10 +460,10 @@
rex-arch = { rex-arch = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1y2mzv6wkqgclxl1x65mdq4d0lcgbbny4r1v24c16gi4jg9nsnc1"; sha256 = "13dyic499iblhddmy7w01ajr5l5rm6szagy6vz7sx138y21d1y6f";
type = "gem"; type = "gem";
}; };
version = "0.1.4"; version = "0.1.8";
}; };
rex-bin_tools = { rex-bin_tools = {
source = { source = {
@ -612,10 +620,10 @@
ruby_smb = { ruby_smb = {
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1v2acyx6csndb08sidb1pbixn2dlx9s75cpnjv4riwj0qlp8blli"; sha256 = "1jby5wlppxhc2jlqldic05aqd5l57171lsxqv86702grk665n612";
type = "gem"; type = "gem";
}; };
version = "0.0.12"; version = "0.0.18";
}; };
rubyntlm = { rubyntlm = {
source = { source = {
@ -705,4 +713,4 @@
}; };
version = "0.3.0"; version = "0.3.0";
}; };
} }

View File

@ -3,6 +3,8 @@ with import <nixpkgs> {};
stdenv.mkDerivation { stdenv.mkDerivation {
name = "env"; name = "env";
buildInputs = [ buildInputs = [
ruby.devEnv
git
sqlite sqlite
libpcap libpcap
postgresql postgresql

View File

@ -3,11 +3,11 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "tor-0.3.0.7"; name = "tor-0.3.0.8";
src = fetchurl { src = fetchurl {
url = "https://dist.torproject.org/${name}.tar.gz"; url = "https://dist.torproject.org/${name}.tar.gz";
sha256 = "00kxa83bn0axh7479fynp6r8znq5wy26kvb8ghixgjpkir2c8h4n"; sha256 = "0j0dhq1zp6w6zy7y4kiw7zg1imbgv8nsl7imlzwc0951p2kknfk6";
}; };
outputs = [ "out" "geoip" ]; outputs = [ "out" "geoip" ];

View File

@ -1,8 +1,8 @@
{ stdenv, fetchFromGitHub, libaio, python, zlib }: { stdenv, fetchFromGitHub, libaio, python, zlib }:
let let
version = "2.19"; version = "2.20";
sha256 = "1rfnisb8hqwx76rjmgaagvs3k0808z27ll9i3w5ifzysi1c1l6r9"; sha256 = "06sn9ll75xbr2rr7zn8xzdy1v705kqfxv6q1zx6ysvxwri0sxrfx";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {

View File

@ -1,14 +1,14 @@
{ stdenv, fetchurl, perl /*, xmlto */}: { stdenv, fetchurl, perl /*, xmlto */}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "colordiff-1.0.16"; name = "colordiff-1.0.18";
src = fetchurl { src = fetchurl {
urls = [ urls = [
"http://www.colordiff.org/${name}.tar.gz" "http://www.colordiff.org/${name}.tar.gz"
"http://www.colordiff.org/archive/${name}.tar.gz" "http://www.colordiff.org/archive/${name}.tar.gz"
]; ];
sha256 = "12qkkw13261dra8pg7mzx4r8p9pb0ajb090bib9j1s6hgphwzwga"; sha256 = "1q6n60n4b9fnzccxyxv04mxjsql4ddq17vl2c74ijvjdhpcfrkr9";
}; };
buildInputs = [ perl /* xmlto */ ]; buildInputs = [ perl /* xmlto */ ];

View File

@ -525,12 +525,6 @@ with pkgs;
client = true; client = true;
}); });
androidenv = callPackage ../development/mobile/androidenv {
pkgs_i686 = pkgsi686Linux;
};
adb-sync = callPackage ../development/mobile/adb-sync { };
apg = callPackage ../tools/security/apg { }; apg = callPackage ../tools/security/apg { };
autorevision = callPackage ../tools/misc/autorevision { }; autorevision = callPackage ../tools/misc/autorevision { };
@ -589,11 +583,17 @@ with pkgs;
pkgs_i686 = pkgsi686Linux; pkgs_i686 = pkgsi686Linux;
}; };
inherit (androidenv) androidsdk_4_4 androidndk; adb-sync = callPackage ../development/mobile/adb-sync { };
androidsdk = androidenv.androidsdk_7_0; androidenv = callPackage ../development/mobile/androidenv {
pkgs_i686 = pkgsi686Linux;
};
androidsdk_extras = self.androidenv.androidsdk_7_0_extras; inherit (androidenv) androidndk;
androidsdk = androidenv.androidsdk_7_1_1;
androidsdk_extras = self.androidenv.androidsdk_7_1_1_extras;
arc-theme = callPackage ../misc/themes/arc { }; arc-theme = callPackage ../misc/themes/arc { };
@ -2644,6 +2644,8 @@ with pkgs;
kytea = callPackage ../tools/text/kytea { }; kytea = callPackage ../tools/text/kytea { };
lbreakout2 = callPackage ../games/lbreakout2 { };
leocad = callPackage ../applications/graphics/leocad { }; leocad = callPackage ../applications/graphics/leocad { };
less = callPackage ../tools/misc/less { }; less = callPackage ../tools/misc/less { };
@ -5247,10 +5249,6 @@ with pkgs;
# PGO seems to speed up compilation by gcc by ~10%, see #445 discussion # PGO seems to speed up compilation by gcc by ~10%, see #445 discussion
profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64)); profiledCompiler = with stdenv; (!isDarwin && (isi686 || isx86_64));
# When building `gcc.crossDrv' (a "Canadian cross", with host == target
# and host != build), `cross' must be null but the cross-libc must still
# be passed.
cross = null;
libcCross = if targetPlatform != buildPlatform then libcCross else null; libcCross = if targetPlatform != buildPlatform then libcCross else null;
isl = if !stdenv.isDarwin then isl_0_17 else null; isl = if !stdenv.isDarwin then isl_0_17 else null;
@ -6527,6 +6525,8 @@ with pkgs;
wxGTK = wxGTK30; wxGTK = wxGTK30;
}; };
buck = callPackage ../development/tools/build-managers/buck { };
buildbot = callPackage ../development/tools/build-managers/buildbot { buildbot = callPackage ../development/tools/build-managers/buildbot {
pythonPackages = python2Packages; pythonPackages = python2Packages;
}; };
@ -12947,6 +12947,8 @@ with pkgs;
raleway = callPackage ../data/fonts/raleway { }; raleway = callPackage ../data/fonts/raleway { };
rictydiminished-with-firacode = callPackage ../data/fonts/rictydiminished-with-firacode { };
roboto = callPackage ../data/fonts/roboto { }; roboto = callPackage ../data/fonts/roboto { };
roboto-mono = callPackage ../data/fonts/roboto-mono { }; roboto-mono = callPackage ../data/fonts/roboto-mono { };

View File

@ -4650,6 +4650,20 @@ let self = _self // overrides; _self = with self; {
}; };
}; };
EncodeDetect = buildPerlPackage rec {
name = "Encode-Detect-1.01";
src = fetchurl {
url = "mirror://cpan/authors/id/J/JG/JGMYERS/${name}.tar.gz";
sha256 = "834d893aa7db6ce3f158afbd0e432d6ed15a276e0940db0a74be13fd9c4bbbf1";
};
propagatedBuildInputs = [ ModuleBuild ];
meta = {
description = "An Encode::Encoding subclass that detects the encoding of data";
license = stdenv.lib.licenses.free;
};
};
EncodeEUCJPASCII = buildPerlPackage { EncodeEUCJPASCII = buildPerlPackage {
name = "Encode-EUCJPASCII-0.03"; name = "Encode-EUCJPASCII-0.03";
src = fetchurl { src = fetchurl {
@ -4747,7 +4761,7 @@ let self = _self // overrides; _self = with self; {
sha256 = "1vzpz6syb82ir8svp2wjh95x6lpf01lgkxn2xy60ixrszc24zdya"; sha256 = "1vzpz6syb82ir8svp2wjh95x6lpf01lgkxn2xy60ixrszc24zdya";
}; };
}; };
EV = buildPerlPackage rec { EV = buildPerlPackage rec {
name = "EV-4.22"; name = "EV-4.22";
src = fetchurl { src = fetchurl {
@ -7039,6 +7053,32 @@ let self = _self // overrides; _self = with self; {
}; };
}; };
IPCountry = buildPerlPackage rec {
name = "IP-Country-2.28";
src = fetchurl {
url = "mirror://cpan/authors/id/N/NW/NWETTERS/${name}.tar.gz";
sha256 = "88db833a5ab22ed06cb53d6f205725e3b5371b254596053738885e91fa105f75";
};
propagatedBuildInputs = [ GeographyCountries ];
meta = {
description = "Fast lookup of country codes from IP addresses";
license = stdenv.lib.licenses.mit;
};
};
GeographyCountries = buildPerlPackage rec {
name = "Geography-Countries-2009041301";
src = fetchurl {
url = "mirror://cpan/authors/id/A/AB/ABIGAIL/${name}.tar.gz";
sha256 = "48c42e40e8281ba7c981743a854c48e6def2d51eb0925ea6c96e25c74497f20f";
};
meta = {
description = "2-letter, 3-letter, and numerical codes for countries";
license = stdenv.lib.licenses.mit;
};
};
IPCRun = buildPerlPackage { IPCRun = buildPerlPackage {
name = "IPC-Run-0.92"; name = "IPC-Run-0.92";
src = fetchurl { src = fetchurl {
@ -8061,6 +8101,28 @@ let self = _self // overrides; _self = with self; {
}; };
}; };
MailSPF = buildPerlPackage rec {
name = "Mail-SPF-v2.9.0";
#src = /root/nixops/Mail-SPF-v2.9.0;
src = fetchurl {
url = "mirror://cpan/authors/id/J/JM/JMEHNLE/mail-spf/${name}.tar.gz";
sha256 = "61cb5915f1c7acc7a931ffc1bfc1291bdfac555e2a46eb2391b995ea9ecb6162";
};
# remove this patch patches = [ ../development/perl-modules/Mail-SPF.patch ];
buildInputs = [ ModuleBuild NetDNSResolverProgrammable ];
propagatedBuildInputs = [ Error NetAddrIP NetDNS URI ];
buildPhase = "perl Build.PL --install_base=$out --install_path=\"sbin=$out/bin\"; ./Build build ";
doCheck = false; # The main test performs network access
meta = {
description = "An object-oriented implementation of Sender Policy Framework";
license = stdenv.lib.licenses.bsd3;
};
};
MailTools = buildPerlPackage rec { MailTools = buildPerlPackage rec {
name = "MailTools-2.14"; name = "MailTools-2.14";
src = fetchurl { src = fetchurl {
@ -9727,6 +9789,19 @@ let self = _self // overrides; _self = with self; {
# Deprecated. # Deprecated.
NamespaceClean = self.namespaceclean; NamespaceClean = self.namespaceclean;
NetIdent = buildPerlPackage rec {
name = "Net-Ident-1.24";
src = fetchurl {
url = "mirror://cpan/authors/id/T/TO/TODDR/${name}.tar.gz";
sha256 = "5f5f1142185a67b87406a3fb31f221564f61838a70ef4c07284a66c55e82ad05";
};
meta = {
homepage = http://wiki.github.com/toddr/Net-Ident/;
description = "Lookup the username on the remote end of a TCP/IP connection";
license = stdenv.lib.licenses.mit;
};
};
NetAddrIP = buildPerlPackage rec { NetAddrIP = buildPerlPackage rec {
name = "NetAddr-IP-4.079"; name = "NetAddr-IP-4.079";
src = fetchurl { src = fetchurl {
@ -10017,6 +10092,21 @@ let self = _self // overrides; _self = with self; {
}; };
}; };
NetDNSResolverProgrammable = buildPerlPackage rec {
name = "Net-DNS-Resolver-Programmable-v0.003";
src = fetchurl {
url = "mirror://cpan/authors/id/J/JM/JMEHNLE/net-dns-resolver-programmable/${name}.tar.gz";
sha256 = "8d402260941f259c83bf1b2564408e75288df028f604136c29da11a9a6a076ec";
};
buildInputs = [ ModuleBuild ];
propagatedBuildInputs = [ NetDNS ];
meta = {
description = "Programmable DNS resolver class for offline emulation of DNS";
license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ];
};
};
NetServer = buildPerlPackage { NetServer = buildPerlPackage {
name = "Net-Server-2.007"; name = "Net-Server-2.007";
src = fetchurl { src = fetchurl {
@ -11286,6 +11376,21 @@ let self = _self // overrides; _self = with self; {
}; };
}; };
Razor2ClientAgent = buildPerlPackage rec {
name = "Razor2-Client-Agent-2.84";
src = fetchurl {
url = "mirror://cpan/authors/id/T/TO/TODDR/${name}.tar.gz";
sha256 = "d7c2ed7f347a673b1425e4da7656073d6c52847bc7403bf57e3a404b52f7e501";
};
propagatedBuildInputs = [ DigestSHA1 URI ];
meta = {
homepage = http://razor.sourceforge.net/;
description = "Collaborative, content-based spam filtering network agent";
license = stdenv.lib.licenses.mit;
};
};
Readonly = buildPerlModule rec { Readonly = buildPerlModule rec {
name = "Readonly-2.05"; name = "Readonly-2.05";
src = fetchurl { src = fetchurl {

View File

@ -7659,13 +7659,15 @@ in {
libthumbor = buildPythonPackage rec { libthumbor = buildPythonPackage rec {
name = "libthumbor-${version}"; name = "libthumbor-${version}";
version = "1.2.0"; version = "1.3.2";
src = pkgs.fetchurl { src = pkgs.fetchurl {
url = "mirror://pypi/l/libthumbor/${name}.tar.gz"; url = "mirror://pypi/l/libthumbor/${name}.tar.gz";
sha256 = "09bbaf08124ee33ea4ef99881625bd20450b0b43ab90fd678479beba8c03f86e"; sha256 = "1vjhszsf8wl9k16wyg2rfjycjnawzl7z8j39bhiysbz5x4lqg91b";
}; };
buildInputs = with self; [ django ];
propagatedBuildInputs = with self; [ six pycrypto ]; propagatedBuildInputs = with self; [ six pycrypto ];
meta = { meta = {
@ -28083,7 +28085,7 @@ EOF
thumbor = buildPythonPackage rec { thumbor = buildPythonPackage rec {
name = "thumbor-${version}"; name = "thumbor-${version}";
version = "5.2.1"; version = "6.3.2";
disabled = ! isPy27; disabled = ! isPy27;
@ -28093,6 +28095,7 @@ EOF
tornado tornado
pycrypto pycrypto
pycurl pycurl
pytz
pillow pillow
derpconf derpconf
python_magic python_magic
@ -28104,14 +28107,18 @@ EOF
src = pkgs.fetchurl { src = pkgs.fetchurl {
url = "mirror://pypi/t/thumbor/${name}.tar.gz"; url = "mirror://pypi/t/thumbor/${name}.tar.gz";
sha256 = "57b0d7e261e792b2e2c53a79c3d8c722964003d1828331995dc3491dc67db7d8"; sha256 = "0787245x4yci34cdfc9xaxhds0lv60476qgp132pwa78hrpc9m31";
}; };
prePatch = ''
substituteInPlace setup.py \
--replace '"argparse",' ""
'';
meta = { meta = {
description = "A smart imaging service"; description = "A smart imaging service";
homepage = https://github.com/globocom/thumbor/wiki; homepage = https://github.com/globocom/thumbor/wiki;
license = licenses.mit; license = licenses.mit;
broken = true;
}; };
}; };