Merge branch 'master' into staging

~6k rebuilds per platform (mainly haskellPackages, I think).
This commit is contained in:
Vladimír Čunát 2018-06-20 18:17:18 +02:00
commit 5039d6ed1f
No known key found for this signature in database
GPG key ID: E747DF1F9575A3AA
113 changed files with 1457 additions and 957 deletions

View file

@ -6,18 +6,22 @@
<title>Reviewing contributions</title> <title>Reviewing contributions</title>
<warning> <warning>
<para> <para>
The following section is a draft and reviewing policy is still being The following section is a draft, and the policy for reviewing is still being
discussed. discussed in issues such as <link
xlink:href="https://github.com/NixOS/nixpkgs/issues/11166">#11166
</link> and <link
xlink:href="https://github.com/NixOS/nixpkgs/issues/20836">#20836
</link>.
</para> </para>
</warning> </warning>
<para> <para>
The nixpkgs projects receives a fairly high number of contributions via The nixpkgs project receives a fairly high number of contributions via
GitHub pull-requests. Reviewing and approving these is an important task and GitHub pull-requests. Reviewing and approving these is an important task and
a way to contribute to the project. a way to contribute to the project.
</para> </para>
<para> <para>
The high change rate of nixpkgs make any pull request that is open for long The high change rate of nixpkgs makes any pull request that remains open for
enough subject to conflicts that will require extra work from the submitter too long subject to conflicts that will require extra work from the submitter
or the merger. Reviewing pull requests in a timely manner and being or the merger. Reviewing pull requests in a timely manner and being
responsive to the comments is the key to avoid these. GitHub provides sort responsive to the comments is the key to avoid these. GitHub provides sort
filters that can be used to see the filters that can be used to see the
@ -33,34 +37,34 @@
<para> <para>
When reviewing a pull request, please always be nice and polite. When reviewing a pull request, please always be nice and polite.
Controversial changes can lead to controversial opinions, but it is important Controversial changes can lead to controversial opinions, but it is important
to respect every community members and their work. to respect every community member and their work.
</para> </para>
<para> <para>
GitHub provides reactions, they are a simple and quick way to provide GitHub provides reactions as a simple and quick way to provide
feedback to pull-requests or any comments. The thumb-down reaction should be feedback to pull-requests or any comments. The thumb-down reaction should be
used with care and if possible accompanied with some explanations so the used with care and if possible accompanied with some explanation so the
submitter has directions to improve his contribution. submitter has directions to improve their contribution.
</para> </para>
<para> <para>
Pull-requests reviews should include a list of what has been reviewed in a Pull-request reviews should include a list of what has been reviewed in a
comment, so other reviewers and mergers can know the state of the review. comment, so other reviewers and mergers can know the state of the review.
</para> </para>
<para> <para>
All the review template samples provided in this section are generic and All the review template samples provided in this section are generic and
meant as examples. Their usage is optional and the reviewer is free to adapt meant as examples. Their usage is optional and the reviewer is free to adapt
them to his liking. them to their liking.
</para> </para>
<section> <section>
<title>Package updates</title> <title>Package updates</title>
<para> <para>
A package update is the most trivial and common type of pull-request. These A package update is the most trivial and common type of pull-request. These
pull-requests mainly consist in updating the version part of the package pull-requests mainly consist of updating the version part of the package
name and the source hash. name and the source hash.
</para> </para>
<para> <para>
It can happen that non trivial updates include patches or more complex It can happen that non-trivial updates include patches or more complex
changes. changes.
</para> </para>
@ -84,12 +88,12 @@
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Ensure that the package versioning is fitting the guidelines. Ensure that the package versioning fits the guidelines.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Ensure that the commit text is fitting the guidelines. Ensure that the commit text fits the guidelines.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
@ -99,7 +103,7 @@
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
mention-bot usually notify GitHub users based on the submitted changes, mention-bot usually notifies GitHub users based on the submitted changes,
but it can happen that it misses some of the package maintainers. but it can happen that it misses some of the package maintainers.
</para> </para>
</listitem> </listitem>
@ -107,13 +111,13 @@
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Ensure that the meta field contains correct information. Ensure that the meta field information is correct.
</para> </para>
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
License can change with version updates, so it should be checked to be License can change with version updates, so it should be checked to match
fitting upstream license. the upstream license.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
@ -137,9 +141,9 @@
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
Pull-requests are often targeted to the master or staging branch so Pull-requests are often targeted to the master or staging branch, and
building the pull-request locally as it is submitted can trigger a large building the pull-request locally when it is submitted can trigger
amount of source builds. many source builds.
</para> </para>
<para> <para>
It is possible to rebase the changes on nixos-unstable or It is possible to rebase the changes on nixos-unstable or

View file

@ -306,6 +306,22 @@ inherit (pkgs.nixos {
was not used and thus has been removed. was not used and thus has been removed.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
The option <varname>services.kubernetes.addons.dashboard.enableRBAC</varname>
was renamed to <varname>services.kubernetes.addons.dashboard.rbac.enable</varname>.
</para>
</listitem>
<listitem>
<para>
The Kubernetes Dashboard now has only minimal RBAC permissions by default.
If dashboard cluster-admin rights are desired,
set <varname>services.kubernetes.addons.dashboard.rbac.clusterAdmin</varname> to true.
On existing clusters, in order for the revocation of privileges to take effect,
the current ClusterRoleBinding for kubernetes-dashboard must be manually removed:
<literal>kubectl delete clusterrolebinding kubernetes-dashboard</literal>
</para>
</listitem>
</itemizedlist> </itemizedlist>
</section> </section>
</section> </section>

View file

@ -34,6 +34,7 @@ with lib;
(mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "admissionControl" ] [ "services" "kubernetes" "apiserver" "enableAdmissionPlugins" ]) (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "admissionControl" ] [ "services" "kubernetes" "apiserver" "enableAdmissionPlugins" ])
(mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "address" ] ["services" "kubernetes" "apiserver" "bindAddress"]) (mkRenamedOptionModule [ "services" "kubernetes" "apiserver" "address" ] ["services" "kubernetes" "apiserver" "bindAddress"])
(mkRemovedOptionModule [ "services" "kubernetes" "apiserver" "publicAddress" ] "") (mkRemovedOptionModule [ "services" "kubernetes" "apiserver" "publicAddress" ] "")
(mkRenamedOptionModule [ "services" "kubernetes" "addons" "dashboard" "enableRBAC" ] [ "services" "kubernetes" "addons" "dashboard" "rbac" "enable" ])
(mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ]) (mkRenamedOptionModule [ "services" "logstash" "address" ] [ "services" "logstash" "listenAddress" ])
(mkRenamedOptionModule [ "services" "mpd" "network" "host" ] [ "services" "mpd" "network" "listenAddress" ]) (mkRenamedOptionModule [ "services" "mpd" "network" "host" ] [ "services" "mpd" "network" "listenAddress" ])
(mkRenamedOptionModule [ "services" "neo4j" "host" ] [ "services" "neo4j" "listenAddress" ]) (mkRenamedOptionModule [ "services" "neo4j" "host" ] [ "services" "neo4j" "listenAddress" ])

View file

@ -8,10 +8,25 @@ in {
options.services.kubernetes.addons.dashboard = { options.services.kubernetes.addons.dashboard = {
enable = mkEnableOption "kubernetes dashboard addon"; enable = mkEnableOption "kubernetes dashboard addon";
enableRBAC = mkOption { rbac = mkOption {
description = "Whether to enable role based access control is enabled for kubernetes dashboard"; description = "Role-based access control (RBAC) options";
type = types.bool; type = types.submodule {
default = elem "RBAC" config.services.kubernetes.apiserver.authorizationMode;
options = {
enable = mkOption {
description = "Whether to enable role based access control is enabled for kubernetes dashboard";
type = types.bool;
default = elem "RBAC" config.services.kubernetes.apiserver.authorizationMode;
};
clusterAdmin = mkOption {
description = "Whether to assign cluster admin rights to the kubernetes dashboard";
type = types.bool;
default = false;
};
};
};
}; };
version = mkOption { version = mkOption {
@ -202,29 +217,106 @@ in {
namespace = "kube-system"; namespace = "kube-system";
}; };
}; };
} // (optionalAttrs cfg.enableRBAC { } // (optionalAttrs cfg.rbac.enable
kubernetes-dashboard-crb = { (let
apiVersion = "rbac.authorization.k8s.io/v1";
kind = "ClusterRoleBinding";
metadata = {
name = "kubernetes-dashboard";
labels = {
k8s-app = "kubernetes-dashboard";
k8s-addon = "kubernetes-dashboard.addons.k8s.io";
"addonmanager.kubernetes.io/mode" = "Reconcile";
};
};
roleRef = {
apiGroup = "rbac.authorization.k8s.io";
kind = "ClusterRole";
name = "cluster-admin";
};
subjects = [{ subjects = [{
kind = "ServiceAccount"; kind = "ServiceAccount";
name = "kubernetes-dashboard"; name = "kubernetes-dashboard";
namespace = "kube-system"; namespace = "kube-system";
}]; }];
}; labels = {
}); k8s-app = "kubernetes-dashboard";
k8s-addon = "kubernetes-dashboard.addons.k8s.io";
"addonmanager.kubernetes.io/mode" = "Reconcile";
};
in
(if cfg.rbac.clusterAdmin then {
kubernetes-dashboard-crb = {
apiVersion = "rbac.authorization.k8s.io/v1";
kind = "ClusterRoleBinding";
metadata = {
name = "kubernetes-dashboard";
inherit labels;
};
roleRef = {
apiGroup = "rbac.authorization.k8s.io";
kind = "ClusterRole";
name = "cluster-admin";
};
inherit subjects;
};
}
else
{
# Upstream role- and rolebinding as per:
# https://raw.githubusercontent.com/kubernetes/dashboard/master/src/deploy/alternative/kubernetes-dashboard.yaml
kubernetes-dashboard-role = {
apiVersion = "rbac.authorization.k8s.io/v1";
kind = "Role";
metadata = {
name = "kubernetes-dashboard-minimal";
namespace = "kube-system";
inherit labels;
};
rules = [
# Allow Dashboard to create 'kubernetes-dashboard-key-holder' secret.
{
apiGroups = [""];
resources = ["secrets"];
verbs = ["create"];
}
# Allow Dashboard to create 'kubernetes-dashboard-settings' config map.
{
apiGroups = [""];
resources = ["configmaps"];
verbs = ["create"];
}
# Allow Dashboard to get, update and delete Dashboard exclusive secrets.
{
apiGroups = [""];
resources = ["secrets"];
resourceNames = ["kubernetes-dashboard-key-holder"];
verbs = ["get" "update" "delete"];
}
# Allow Dashboard to get and update 'kubernetes-dashboard-settings' config map.
{
apiGroups = [""];
resources = ["configmaps"];
resourceNames = ["kubernetes-dashboard-settings"];
verbs = ["get" "update"];
}
# Allow Dashboard to get metrics from heapster.
{
apiGroups = [""];
resources = ["services"];
resourceNames = ["heapster"];
verbs = ["proxy"];
}
{
apiGroups = [""];
resources = ["services/proxy"];
resourceNames = ["heapster" "http:heapster:" "https:heapster:"];
verbs = ["get"];
}
];
};
kubernetes-dashboard-rb = {
apiVersion = "rbac.authorization.k8s.io/v1";
kind = "RoleBinding";
metadata = {
name = "kubernetes-dashboard-minimal";
namespace = "kube-system";
inherit labels;
};
roleRef = {
apiGroup = "rbac.authorization.k8s.io";
kind = "Role";
name = "kubernetes-dashboard-minimal";
};
inherit subjects;
};
})
));
}; };
} }

View file

@ -332,11 +332,11 @@ in {
authorizationMode = mkOption { authorizationMode = mkOption {
description = '' description = ''
Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/RBAC). See Kubernetes apiserver authorization mode (AlwaysAllow/AlwaysDeny/ABAC/Webhook/RBAC/Node). See
<link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authorization/"/> <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/authorization/"/>
''; '';
default = ["RBAC" "Node"]; default = ["RBAC" "Node"];
type = types.listOf (types.enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "RBAC" "Node"]); type = types.listOf (types.enum ["AlwaysAllow" "AlwaysDeny" "ABAC" "Webhook" "RBAC" "Node"]);
}; };
authorizationPolicy = mkOption { authorizationPolicy = mkOption {
@ -348,6 +348,15 @@ in {
type = types.listOf types.attrs; type = types.listOf types.attrs;
}; };
webhookConfig = mkOption {
description = ''
Kubernetes apiserver Webhook config file. It uses the kubeconfig file format.
See <link xlink:href="https://kubernetes.io/docs/reference/access-authn-authz/webhook/"/>
'';
default = null;
type = types.nullOr types.path;
};
allowPrivileged = mkOption { allowPrivileged = mkOption {
description = "Whether to allow privileged containers on Kubernetes."; description = "Whether to allow privileged containers on Kubernetes.";
default = true; default = true;
@ -943,6 +952,9 @@ in {
(concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.apiserver.authorizationPolicy) (concatMapStringsSep "\n" (l: builtins.toJSON l) cfg.apiserver.authorizationPolicy)
}" }"
} \ } \
${optionalString (elem "Webhook" cfg.apiserver.authorizationMode)
"--authorization-webhook-config-file=${cfg.apiserver.webhookConfig}"
} \
--secure-port=${toString cfg.apiserver.securePort} \ --secure-port=${toString cfg.apiserver.securePort} \
--service-cluster-ip-range=${cfg.apiserver.serviceClusterIpRange} \ --service-cluster-ip-range=${cfg.apiserver.serviceClusterIpRange} \
${optionalString (cfg.apiserver.runtimeConfig != "") ${optionalString (cfg.apiserver.runtimeConfig != "")

View file

@ -0,0 +1,112 @@
# This module implements a systemd service for running journaldriver,
# a log forwarding agent that sends logs from journald to Stackdriver
# Logging.
#
# It can be enabled without extra configuration when running on GCP.
# On machines hosted elsewhere, the other configuration options need
# to be set.
#
# For further information please consult the documentation in the
# upstream repository at: https://github.com/aprilabank/journaldriver/
{ config, lib, pkgs, ...}:
with lib; let cfg = config.services.journaldriver;
in {
options.services.journaldriver = {
enable = mkOption {
type = types.bool;
default = false;
description = ''
Whether to enable journaldriver to forward journald logs to
Stackdriver Logging.
'';
};
logLevel = mkOption {
type = types.str;
default = "info";
description = ''
Log level at which journaldriver logs its own output.
'';
};
logName = mkOption {
type = with types; nullOr str;
default = null;
description = ''
Configures the name of the target log in Stackdriver Logging.
This option can be set to, for example, the hostname of a
machine to improve the user experience in the logging
overview.
'';
};
googleCloudProject = mkOption {
type = with types; nullOr str;
default = null;
description = ''
Configures the name of the Google Cloud project to which to
forward journald logs.
This option is required on non-GCP machines, but should not be
set on GCP instances.
'';
};
logStream = mkOption {
type = with types; nullOr str;
default = null;
description = ''
Configures the name of the Stackdriver Logging log stream into
which to write journald entries.
This option is required on non-GCP machines, but should not be
set on GCP instances.
'';
};
applicationCredentials = mkOption {
type = with types; nullOr path;
default = null;
description = ''
Path to the service account private key (in JSON-format) used
to forward log entries to Stackdriver Logging on non-GCP
instances.
This option is required on non-GCP machines, but should not be
set on GCP instances.
'';
};
};
config = mkIf cfg.enable {
systemd.services.journaldriver = {
description = "Stackdriver Logging journal forwarder";
script = "${pkgs.journaldriver}/bin/journaldriver";
after = [ "network-online.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
Restart = "always";
DynamicUser = true;
# This directive lets systemd automatically configure
# permissions on /var/lib/journaldriver, the directory in
# which journaldriver persists its cursor state.
StateDirectory = "journaldriver";
# This group is required for accessing journald.
SupplementaryGroups = "systemd-journal";
};
environment = {
RUST_LOG = cfg.logLevel;
LOG_NAME = cfg.logName;
LOG_STREAM = cfg.logStream;
GOOGLE_CLOUD_PROJECT = cfg.googleCloudProject;
GOOGLE_APPLICATION_CREDENTIALS = cfg.applicationCredentials;
};
};
};
}

View file

@ -10,9 +10,6 @@ let
inherit (cfg) openclSupport cudaSupport; inherit (cfg) openclSupport cudaSupport;
}; };
xmrConfArg = optionalString (cfg.configText != "") ("-c " +
pkgs.writeText "xmr-stak-config.txt" cfg.configText);
in in
{ {
@ -29,22 +26,34 @@ in
description = "List of parameters to pass to xmr-stak."; description = "List of parameters to pass to xmr-stak.";
}; };
configText = mkOption { configFiles = mkOption {
type = types.lines; type = types.attrsOf types.str;
default = ""; default = {};
example = '' example = literalExample ''
"currency" : "monero", {
"pool_list" : "config.txt" = '''
[ { "pool_address" : "pool.supportxmr.com:5555", "verbose_level" : 4,
"wallet_address" : "<long-hash>", "h_print_time" : 60,
"pool_password" : "minername", "tls_secure_algo" : true,
"pool_weight" : 1, ''';
}, "pools.txt" = '''
], "currency" : "monero7",
"pool_list" :
[ { "pool_address" : "pool.supportxmr.com:443",
"wallet_address" : "my-wallet-address",
"rig_id" : "",
"pool_password" : "nixos",
"use_nicehash" : false,
"use_tls" : true,
"tls_fingerprint" : "",
"pool_weight" : 23
},
],
''';
}
''; '';
description = '' description = ''
Verbatim xmr-stak config.txt. If empty, the <literal>-c</literal> Content of config files like config.txt, pools.txt or cpu.txt.
parameter will not be added to the xmr-stak command.
''; '';
}; };
}; };
@ -58,10 +67,13 @@ in
environment = mkIf cfg.cudaSupport { environment = mkIf cfg.cudaSupport {
LD_LIBRARY_PATH = "${pkgs.linuxPackages_latest.nvidia_x11}/lib"; LD_LIBRARY_PATH = "${pkgs.linuxPackages_latest.nvidia_x11}/lib";
}; };
script = ''
exec ${pkg}/bin/xmr-stak ${xmrConfArg} ${concatStringsSep " " cfg.extraArgs} preStart = concatStrings (flip mapAttrsToList cfg.configFiles (fn: content: ''
''; ln -sf '${pkgs.writeText "xmr-stak-${fn}" content}' '${fn}'
''));
serviceConfig = let rootRequired = cfg.openclSupport || cfg.cudaSupport; in { serviceConfig = let rootRequired = cfg.openclSupport || cfg.cudaSupport; in {
ExecStart = "${pkg}/bin/xmr-stak ${concatStringsSep " " cfg.extraArgs}";
# xmr-stak generates cpu and/or gpu configuration files # xmr-stak generates cpu and/or gpu configuration files
WorkingDirectory = "/tmp"; WorkingDirectory = "/tmp";
PrivateTmp = true; PrivateTmp = true;
@ -70,4 +82,12 @@ in
}; };
}; };
}; };
imports = [
(mkRemovedOptionModule ["services" "xmr-stak" "configText"] ''
This option was removed in favour of `services.xmr-stak.configFiles`
because the new config file `pools.txt` was introduced. You are
now able to define all other config files like cpu.txt or amd.txt.
'')
];
} }

View file

@ -203,11 +203,11 @@ in
Group = cfg.group; Group = cfg.group;
ExecStart = "${pkgs.mattermost}/bin/mattermost-platform"; ExecStart = "${pkgs.mattermost}/bin/mattermost-platform";
WorkingDirectory = "${cfg.statePath}"; WorkingDirectory = "${cfg.statePath}";
JoinsNamespaceOf = mkIf cfg.localDatabaseCreate "postgresql.service";
Restart = "always"; Restart = "always";
RestartSec = "10"; RestartSec = "10";
LimitNOFILE = "49152"; LimitNOFILE = "49152";
}; };
unitConfig.JoinsNamespaceOf = mkIf cfg.localDatabaseCreate "postgresql.service";
}; };
}) })
(mkIf cfg.matterircd.enable { (mkIf cfg.matterircd.enable {

View file

@ -385,8 +385,9 @@ in
}; };
default = mkOption { default = mkOption {
default = 0; default = "0";
type = types.int; type = types.either types.int types.str;
apply = toString;
description = '' description = ''
Index of the default menu item to be booted. Index of the default menu item to be booted.
''; '';

View file

@ -54,7 +54,7 @@ my $splashImage = get("splashImage");
my $configurationLimit = int(get("configurationLimit")); my $configurationLimit = int(get("configurationLimit"));
my $copyKernels = get("copyKernels") eq "true"; my $copyKernels = get("copyKernels") eq "true";
my $timeout = int(get("timeout")); my $timeout = int(get("timeout"));
my $defaultEntry = int(get("default")); my $defaultEntry = get("default");
my $fsIdentifier = get("fsIdentifier"); my $fsIdentifier = get("fsIdentifier");
my $grubEfi = get("grubEfi"); my $grubEfi = get("grubEfi");
my $grubTargetEfi = get("grubTargetEfi"); my $grubTargetEfi = get("grubTargetEfi");

View file

@ -56,6 +56,12 @@ let
left=("''${left[@]:3}") left=("''${left[@]:3}")
if [ -z ''${seen[$next]+x} ]; then if [ -z ''${seen[$next]+x} ]; then
seen[$next]=1 seen[$next]=1
# Ignore the dynamic linker which for some reason appears as a DT_NEEDED of glibc but isn't in glibc's RPATH.
case "$next" in
ld*.so.?) continue;;
esac
IFS=: read -ra paths <<< $rpath IFS=: read -ra paths <<< $rpath
res= res=
for path in "''${paths[@]}"; do for path in "''${paths[@]}"; do

View file

@ -5,13 +5,13 @@
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation rec{ stdenv.mkDerivation rec{
name = "bitcoin" + (toString (optional (!withGui) "d")) + "-" + version; name = "bitcoin" + (toString (optional (!withGui) "d")) + "-" + version;
version = "0.16.0"; version = "0.16.1";
src = fetchurl { src = fetchurl {
urls = [ "https://bitcoincore.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz" urls = [ "https://bitcoincore.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz"
"https://bitcoin.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz" "https://bitcoin.org/bin/bitcoin-core-${version}/bitcoin-${version}.tar.gz"
]; ];
sha256 = "0h7flgsfjzbqajwv8ih686yyxxljhf8krhm8jxranb4kglww1glc"; sha256 = "1zkqp93yircd3pbxczxfnibkpq0sgcv5r7wg6d196b9pwgr9zd39";
}; };
nativeBuildInputs = [ pkgconfig autoreconfHook ]; nativeBuildInputs = [ pkgconfig autoreconfHook ];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "spectrojack-${version}"; name = "spectrojack-${version}";
version = "0.4"; version = "0.4.1";
src = fetchurl { src = fetchurl {
url = "http://sed.free.fr/spectrojack/${name}.tar.gz"; url = "http://sed.free.fr/spectrojack/${name}.tar.gz";
sha256 = "0p5aa55hnazv5djw0431mza068h7mjkb9pnglxfpqkx5z0czisdx"; sha256 = "1kiwx0kag7kq7rhg0bvckfm8r7pqmbk76ppa39cq2980jb5v8rfp";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libjack2 fftwFloat gtk2 ]; buildInputs = [ libjack2 fftwFloat gtk2 ];

View file

@ -19,8 +19,13 @@ stdenv.mkDerivation rec {
src = ./fix-paths.patch; src = ./fix-paths.patch;
inherit coreutils; inherit coreutils;
}) })
./hardcode-gsettings.patch
]; ];
postPatch = ''
substituteInPlace deja-dup/nautilus/NautilusExtension.c --subst-var-by DEJA_DUP_GSETTINGS_PATH $out/share/gsettings-schemas/${name}/glib-2.0/schemas
'';
nativeBuildInputs = [ nativeBuildInputs = [
meson ninja pkgconfig vala_0_40 gettext itstool meson ninja pkgconfig vala_0_40 gettext itstool
appstream-glib desktop-file-utils libxml2 wrapGAppsHook appstream-glib desktop-file-utils libxml2 wrapGAppsHook

View file

@ -0,0 +1,38 @@
--- a/deja-dup/nautilus/NautilusExtension.c
+++ b/deja-dup/nautilus/NautilusExtension.c
@@ -24,6 +24,8 @@
#include <glib/gi18n-lib.h>
GList *dirs = NULL;
+GSettingsSchemaSource *schema_source = NULL;
+GSettingsSchema *schema = NULL;
GSettings *settings = NULL;
// This will treat a < b iff a is 'lower' in the file tree than b
@@ -313,7 +315,13 @@
bindtextdomain(GETTEXT_PACKAGE, LOCALE_DIR);
bind_textdomain_codeset(GETTEXT_PACKAGE, "UTF-8");
- settings = g_settings_new("org.gnome.DejaDup");
+ schema_source = g_settings_schema_source_new_from_directory ("@DEJA_DUP_GSETTINGS_PATH@",
+ g_settings_schema_source_get_default (), TRUE, NULL);
+
+ schema = g_settings_schema_source_lookup (schema_source,
+ "org.gnome.DejaDup", FALSE);
+
+ settings = g_settings_new_full (schema, NULL, NULL);
g_signal_connect(settings, "changed::include-list",
update_include_excludes, NULL);
g_signal_connect(settings, "changed::exclude-list",
@@ -329,7 +337,11 @@
void nautilus_module_shutdown(void)
{
+ g_settings_schema_source_unref(schema_source);
+ g_settings_schema_unref(schema);
g_object_unref(settings);
+ schema_source = NULL;
+ schema = NULL;
settings = NULL;
update_include_excludes(); /* will clear it now that settings is NULL */

View file

@ -17,6 +17,12 @@ stdenv.mkDerivation rec {
sha256 = "1chng2yw8dsjxc9gf92aqv7plj11cav8ax321wmakmv5bb09cch6"; sha256 = "1chng2yw8dsjxc9gf92aqv7plj11cav8ax321wmakmv5bb09cch6";
}; };
# Inkscape hits the ARGMAX when linking on macOS. It appears to be
# CMakes ARGMAX check doesnt offer enough padding for NIX_LDFLAGS.
# Setting strictDeps it avoids duplicating some dependencies so it
# will leave us under ARGMAX.
strictDeps = true;
unpackPhase = '' unpackPhase = ''
cp $src ${name}.tar.bz2 cp $src ${name}.tar.bz2
tar xvjf ${name}.tar.bz2 > /dev/null tar xvjf ${name}.tar.bz2 > /dev/null
@ -33,19 +39,19 @@ stdenv.mkDerivation rec {
--replace '"python-interpreter", "python"' '"python-interpreter", "${python2Env}/bin/python"' --replace '"python-interpreter", "python"' '"python-interpreter", "${python2Env}/bin/python"'
''; '';
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig cmake makeWrapper python2Env perl perlXMLParser ];
buildInputs = [ buildInputs = [
perl perlXMLParser libXft libpng zlib popt boehmgc libXft libpng zlib popt boehmgc
libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext libxml2 libxslt glib gtkmm2 glibmm libsigcxx lcms boost gettext
makeWrapper gsl poppler imagemagick libwpg librevenge gsl poppler imagemagick libwpg librevenge
libvisio libcdr libexif potrace cmake python2Env libvisio libcdr libexif potrace
]; ];
enableParallelBuilding = true; enableParallelBuilding = true;
postInstall = '' postInstall = ''
# Make sure PyXML modules can be found at run-time. # Make sure PyXML modules can be found at run-time.
rm "$out/share/icons/hicolor/icon-theme.cache" rm -f "$out/share/icons/hicolor/icon-theme.cache"
'' + stdenv.lib.optionalString stdenv.isDarwin '' '' + stdenv.lib.optionalString stdenv.isDarwin ''
install_name_tool -change $out/lib/libinkscape_base.dylib $out/lib/inkscape/libinkscape_base.dylib $out/bin/inkscape install_name_tool -change $out/lib/libinkscape_base.dylib $out/lib/inkscape/libinkscape_base.dylib $out/bin/inkscape
install_name_tool -change $out/lib/libinkscape_base.dylib $out/lib/inkscape/libinkscape_base.dylib $out/bin/inkview install_name_tool -change $out/lib/libinkscape_base.dylib $out/lib/inkscape/libinkscape_base.dylib $out/bin/inkview

View file

@ -2,7 +2,7 @@
# build dependencies # build dependencies
alsaLib, atk, cairo, cups, dbus, expat, fontconfig, alsaLib, atk, cairo, cups, dbus, expat, fontconfig,
freetype, gdk_pixbuf, glib, gnome2, nspr, nss, xorg, freetype, gdk_pixbuf, glib, gnome2, nspr, nss, xorg,
glibc, udev glibc, systemd
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
ar p "$src" data.tar.xz | tar xJ ar p "$src" data.tar.xz | tar xJ
''; '';
buildPhase = ":"; dontBuild = true;
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];
@ -89,7 +89,7 @@ stdenv.mkDerivation rec {
chmod a+x $out/opt/Pencil/libffmpeg.so chmod a+x $out/opt/Pencil/libffmpeg.so
# fix missing libudev # fix missing libudev
ln -s ${udev}/lib/systemd/libsystemd-shared.so $out/opt/Pencil/libudev.so.1 ln -s ${systemd.lib}/lib/libudev.so.1 $out/opt/Pencil/libudev.so.1
wrapProgram $out/opt/Pencil/pencil \ wrapProgram $out/opt/Pencil/pencil \
--prefix LD_LIBRARY_PATH : $out/opt/Pencil --prefix LD_LIBRARY_PATH : $out/opt/Pencil
''; '';

View file

@ -1,10 +1,38 @@
{ stdenv, fetchFromGitHub, autoreconfHook, pkgconfig { stdenv, fetchFromGitHub, autoreconfHook, pkgconfig
, leptonica, libpng, libtiff, icu, pango, opencl-headers , leptonica, libpng, libtiff, icu, pango, opencl-headers
# Supported list of languages or `null' for all available languages # Supported list of languages or `null' for all available languages
, enableLanguages ? null , enableLanguages ? null
# if you want just a specific list of languages, optionally specify a hash
# to make tessdata a fixed output derivation.
, enableLanguagesHash ? (if enableLanguages == null # all languages
then "1h48xfzabhn0ldbx5ib67cp9607pr0zpblsy8z6fs4knn0zznfnw"
else null)
}: }:
let tessdata = stdenv.mkDerivation ({
name = "tessdata";
src = fetchFromGitHub {
owner = "tesseract-ocr";
repo = "tessdata";
rev = "3cf1e2df1fe1d1da29295c9ef0983796c7958b7d";
# when updating don't forget to update the default value fo enableLanguagesHash
sha256 = "1v4b63v5nzcxr2y3635r19l7lj5smjmc9vfk0wmxlryxncb4vpg7";
};
buildCommand = ''
cd $src;
for lang in ${if enableLanguages==null then "*.traineddata" else stdenv.lib.concatMapStringsSep " " (x: x+".traineddata") enableLanguages} ; do
install -Dt $out/share/tessdata $src/$lang ;
done;
'';
preferLocalBuild = true;
} // (stdenv.lib.optionalAttrs (enableLanguagesHash != null) {
# when a hash is given, we make this a fixed output derivation.
outputHashMode = "recursive";
outputHashAlgo = "sha256";
outputHash = enableLanguagesHash;
}));
in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "tesseract-${version}"; name = "tesseract-${version}";
version = "3.05.00"; version = "3.05.00";
@ -16,41 +44,17 @@ stdenv.mkDerivation rec {
sha256 = "11wrpcfl118wxsv2c3w2scznwb48c4547qml42s2bpdz079g8y30"; sha256 = "11wrpcfl118wxsv2c3w2scznwb48c4547qml42s2bpdz079g8y30";
}; };
tessdata = fetchFromGitHub { enableParallelBuilding = true;
owner = "tesseract-ocr";
repo = "tessdata";
rev = "3cf1e2df1fe1d1da29295c9ef0983796c7958b7d";
sha256 = "1v4b63v5nzcxr2y3635r19l7lj5smjmc9vfk0wmxlryxncb4vpg7";
};
nativeBuildInputs = [ pkgconfig autoreconfHook ]; nativeBuildInputs = [ pkgconfig autoreconfHook ];
buildInputs = [ leptonica libpng libtiff icu pango opencl-headers ]; buildInputs = [ leptonica libpng libtiff icu pango opencl-headers ];
LIBLEPT_HEADERSDIR = "${leptonica}/include"; LIBLEPT_HEADERSDIR = "${leptonica}/include";
# Copy the .traineddata files of the languages specified in enableLanguages postInstall = ''
# into `$out/share/tessdata' and check afterwards if copying was successful. for i in ${tessdata}/share/tessdata/*; do
postInstall = let ln -s $i $out/share/tessdata;
mkArg = lang: "-iname ${stdenv.lib.escapeShellArg "${lang}.traineddata"}"; done
mkFindArgs = stdenv.lib.concatMapStringsSep " -o " mkArg;
findLangArgs = if enableLanguages != null
then "\\( ${mkFindArgs enableLanguages} \\)"
else "-iname '*.traineddata'";
in ''
numLangs="$(find "$tessdata" -mindepth 1 -maxdepth 1 -type f \
${findLangArgs} -exec cp -t "$out/share/tessdata" {} + -print | wc -l)"
${if enableLanguages != null then ''
expected=${toString (builtins.length enableLanguages)}
'' else ''
expected="$(ls -1 "$tessdata/"*.traineddata | wc -l)"
''}
if [ "$numLangs" -ne "$expected" ]; then
echo "Expected $expected languages, but $numLangs" \
"were copied to \`$out/share/tessdata'" >&2
exit 1
fi
''; '';
meta = { meta = {

View file

@ -3,11 +3,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "chirp-daily-${version}"; name = "chirp-daily-${version}";
version = "20180606"; version = "20180611";
src = fetchurl { src = fetchurl {
url = "https://trac.chirp.danplanet.com/chirp_daily/daily-${version}/${name}.tar.gz"; url = "https://trac.chirp.danplanet.com/chirp_daily/daily-${version}/${name}.tar.gz";
sha256 = "1v1s02675gyghhxasp4pxjrifkgshc82p99haxph1yzkq7gsf03w"; sha256 = "1569gnbs4jb53n58wdkdjrxx9nrayljn5v0wqacn5zfr87s16zxf";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];

View file

@ -7,11 +7,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mlterm-${version}"; name = "mlterm-${version}";
version = "3.8.4"; version = "3.8.6";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/mlterm/01release/${name}/${name}.tar.gz"; url = "mirror://sourceforge/project/mlterm/01release/${name}/${name}.tar.gz";
sha256 = "07ih7953pr1jr99rayjn57ba5a0cr3niqkmvy9n59lcc1qwcrwf9"; sha256 = "06zylbinh84s9v79hrlvv44rd57z7kvgz9afbps3rjcbncxcmivd";
}; };
nativeBuildInputs = [ pkgconfig autoconf ]; nativeBuildInputs = [ pkgconfig autoconf ];

View file

@ -1,14 +1,14 @@
{ stdenv, fetchFromGitHub, python3Packages }: { stdenv, fetchFromGitHub, python3Packages }:
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
version = "0.17.1"; version = "0.18.0";
name = "toot-${version}"; name = "toot-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ihabunek"; owner = "ihabunek";
repo = "toot"; repo = "toot";
rev = "${version}"; rev = "${version}";
sha256 = "05fzsakm089bn03z8gip6yp4xfmwa054v40x2f3gqpl04r504gis"; sha256 = "0snvxn7ifbkrdnml66pdna7vny3qa0s6gcjjz69s7scc0razwrh8";
}; };
checkInputs = with python3Packages; [ pytest ]; checkInputs = with python3Packages; [ pytest ];

View file

@ -1,18 +1,18 @@
{ stdenv, fetchurl, pkgconfig, qt4, qmake4Hook }: { stdenv, fetchurl, pkgconfig, qmake, qtsvg }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "vym-${version}"; name = "vym-${version}";
version = "2.2.4"; version = "2.6.11";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/project/vym/${version}/${name}.tar.bz2"; url = "mirror://sourceforge/project/vym/2.6.0/${name}.tar.bz2";
sha256 = "1x4qp6wpszscbbs4czkfvskm7qjglvxm813nqv281bpy4y1hhvgs"; sha256 = "1yznlb47jahd662a2blgh1ccwpl5dp5rjz9chsxjzhj3vbkzx3nl";
}; };
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig qmake ];
buildInputs = [ qt4 qmake4Hook ]; buildInputs = [ qtsvg ];
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "A mind-mapping software"; description = "A mind-mapping software";

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "xmrig-${version}"; name = "xmrig-${version}";
version = "2.6.2"; version = "2.6.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "xmrig"; owner = "xmrig";
repo = "xmrig"; repo = "xmrig";
rev = "v${version}"; rev = "v${version}";
sha256 = "09dcjvnm74j1d26mvdiz0sl1qwns5xfkdwx46nqd4xlgvg9x4rpx"; sha256 = "1ssiq2yv8b3xg4kfp2cfzl41m5apjw2r2k74lh3fz0g0ix3cq55b";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -22,7 +22,6 @@
# package customization # package customization
, enableNaCl ? false , enableNaCl ? false
, enableHotwording ? false
, enableWideVine ? false , enableWideVine ? false
, gnomeSupport ? false, gnome ? null , gnomeSupport ? false, gnome ? null
, gnomeKeyringSupport ? false, libgnome-keyring3 ? null , gnomeKeyringSupport ? false, libgnome-keyring3 ? null
@ -215,11 +214,8 @@ let
proprietary_codecs = false; proprietary_codecs = false;
use_sysroot = false; use_sysroot = false;
use_gnome_keyring = gnomeKeyringSupport; use_gnome_keyring = gnomeKeyringSupport;
## FIXME remove use_gconf after chromium 65 has become stable
use_gconf = gnomeSupport;
use_gio = gnomeSupport; use_gio = gnomeSupport;
enable_nacl = enableNaCl; enable_nacl = enableNaCl;
enable_hotwording = enableHotwording;
enable_widevine = enableWideVine; enable_widevine = enableWideVine;
use_cups = cupsSupport; use_cups = cupsSupport;
@ -259,7 +255,10 @@ let
libExecPath="${libExecPath}" libExecPath="${libExecPath}"
python build/linux/unbundle/replace_gn_files.py \ python build/linux/unbundle/replace_gn_files.py \
--system-libraries ${toString gnSystemLibraries} --system-libraries ${toString gnSystemLibraries}
gn gen --args=${escapeShellArg gnFlags} out/Release gn gen --args=${escapeShellArg gnFlags} out/Release | tee gn-gen-outputs.txt
# Fail if `gn gen` contains a WARNING.
grep -o WARNING gn-gen-outputs.txt && echo "Found gn WARNING, exiting nix build" && exit 1
runHook postConfigure runHook postConfigure
''; '';

View file

@ -4,7 +4,6 @@
# package customization # package customization
, channel ? "stable" , channel ? "stable"
, enableNaCl ? false , enableNaCl ? false
, enableHotwording ? false
, gnomeSupport ? false, gnome ? null , gnomeSupport ? false, gnome ? null
, gnomeKeyringSupport ? false , gnomeKeyringSupport ? false
, proprietaryCodecs ? true , proprietaryCodecs ? true
@ -22,7 +21,7 @@ let
upstream-info = (callPackage ./update.nix {}).getChannel channel; upstream-info = (callPackage ./update.nix {}).getChannel channel;
mkChromiumDerivation = callPackage ./common.nix { mkChromiumDerivation = callPackage ./common.nix {
inherit enableNaCl enableHotwording gnomeSupport gnome inherit enableNaCl gnomeSupport gnome
gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport gnomeKeyringSupport proprietaryCodecs cupsSupport pulseSupport
enableWideVine; enableWideVine;
}; };

View file

@ -1,6 +1,6 @@
{ lib, buildGoPackage, fetchFromGitHub, ... }: { lib, buildGoPackage, fetchFromGitHub, makeWrapper, kubernetes-helm, ... }:
let version = "0.16.0"; in let version = "0.19.0"; in
buildGoPackage { buildGoPackage {
name = "helmfile-${version}"; name = "helmfile-${version}";
@ -9,11 +9,19 @@ buildGoPackage {
owner = "roboll"; owner = "roboll";
repo = "helmfile"; repo = "helmfile";
rev = "v${version}"; rev = "v${version}";
sha256 = "12gxlan89h0r83aaacshh58nd1pi26gx5gkna0ksll9wsfvraj4d"; sha256 = "0wjzzaygdnnvyi5a78bhmz2sxc4gykdl00h78dkgvj7aaw05s9yd";
}; };
goPackagePath = "github.com/roboll/helmfile"; goPackagePath = "github.com/roboll/helmfile";
nativeBuildInputs = [ makeWrapper ];
postInstall = ''
wrapProgram $bin/bin/helmfile \
--prefix PATH : ${lib.makeBinPath [ kubernetes-helm ]}
'';
meta = { meta = {
description = "Deploy Kubernetes Helm charts"; description = "Deploy Kubernetes Helm charts";
homepage = https://github.com/roboll/helmfile; homepage = https://github.com/roboll/helmfile;

View file

@ -1,7 +1,7 @@
{ stdenv, fetchFromGitHub, openssl, curl, coreutils, gawk, bash, which }: { stdenv, fetchFromGitHub, openssl, curl, coreutils, gawk, bash, which }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "esniper-2.33.0.2017-11-06"; name = "esniper-2.35.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "yhfudev"; owner = "yhfudev";

View file

@ -3,11 +3,11 @@
let configFile = writeText "riot-config.json" conf; in let configFile = writeText "riot-config.json" conf; in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name= "riot-web-${version}"; name= "riot-web-${version}";
version = "0.15.4"; version = "0.15.5";
src = fetchurl { src = fetchurl {
url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz"; url = "https://github.com/vector-im/riot-web/releases/download/v${version}/riot-v${version}.tar.gz";
sha256 = "1c0b9717xmzvzzxj006hqxafvcpvnnrsifxjnbxxla58jmnwr9v5"; sha256 = "04sij99njkiiwc1q23gwa8z6h4z0riw6yb9z3ds7v2qiyi4sshdz";
}; };
installPhase = '' installPhase = ''

View file

@ -6,11 +6,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "balsa-${version}"; name = "balsa-${version}";
version = "2.5.5"; version = "2.5.6";
src = fetchurl { src = fetchurl {
url = "https://pawsa.fedorapeople.org/balsa/${name}.tar.bz2"; url = "https://pawsa.fedorapeople.org/balsa/${name}.tar.bz2";
sha256 = "0p4w81wvdxqhynkninzglsgqk6920x1zif2zmw8bml410lav2azz"; sha256 = "17k6wcsl8gki7cskr3hhmfj6n54rha8ca3b6fzd8blsl5shsankx";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -12,7 +12,7 @@ assert withQt -> !withGtk && qt5 != null;
with stdenv.lib; with stdenv.lib;
let let
version = "2.4.7"; version = "2.6.1";
variant = if withGtk then "gtk" else if withQt then "qt" else "cli"; variant = if withGtk then "gtk" else if withQt then "qt" else "cli";
in stdenv.mkDerivation { in stdenv.mkDerivation {
@ -20,7 +20,7 @@ in stdenv.mkDerivation {
src = fetchurl { src = fetchurl {
url = "http://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz"; url = "http://www.wireshark.org/download/src/all-versions/wireshark-${version}.tar.xz";
sha256 = "0i2ggkkx7fphsk7kv9kygsf5pcaf4vgnqgi8mj1rrf2gfdl3rjsy"; sha256 = "126dvd6myjbxjr69dy9vzzdda2lmjy1wwwc6gcs5djb46jy5nvmb";
}; };
cmakeFlags = [ cmakeFlags = [
@ -52,6 +52,10 @@ in stdenv.mkDerivation {
}) })
++ stdenv.lib.optional stdenv.isDarwin ./cmake.patch; ++ stdenv.lib.optional stdenv.isDarwin ./cmake.patch;
preBuild = ''
export LD_LIBRARY_PATH="$PWD/run"
'';
postInstall = if stdenv.isDarwin then '' postInstall = if stdenv.isDarwin then ''
${optionalString withQt '' ${optionalString withQt ''
mkdir -p $out/Applications mkdir -p $out/Applications
@ -72,6 +76,8 @@ in stdenv.mkDerivation {
''} ''}
${optionalString withQt '' ${optionalString withQt ''
install -Dm644 -t $out/share/applications ../wireshark.desktop install -Dm644 -t $out/share/applications ../wireshark.desktop
wrapProgram $out/bin/wireshark \
--set QT_PLUGIN_PATH ${qt5.qtbase.bin}/${qt5.qtbase.qtPluginPrefix}
''} ''}
substituteInPlace $out/share/applications/*.desktop \ substituteInPlace $out/share/applications/*.desktop \

View file

@ -0,0 +1,106 @@
{ stdenv, fetchurl, lib, makeWrapper,
# build dependencies
alsaLib, atk, cairo, cups, dbus, expat, fontconfig,
freetype, gdk_pixbuf, glib, gnome2, nspr, nss, xorg,
glibc, systemd
}:
stdenv.mkDerivation rec {
version = "2.12.0";
name = "patchwork-clasic-${version}";
src = fetchurl {
url = "https://github.com/ssbc/patchwork-classic-electron/releases/download/v2.12.0/ssb-patchwork-electron_2.12.0_linux-amd64.deb";
sha256 = "1rvp07cgqwv7ac319p0qwpfxd7l8f53m1rlvvig7qf7q23fnmbsj";
};
sourceRoot = ".";
unpackCmd = ''
ar p "$src" data.tar.xz | tar xJ
'';
dontBuild = true;
nativeBuildInputs = [ makeWrapper ];
installPhase = ''
mkdir -p $out/bin
cp -R usr/share opt $out/
# fix the path in the desktop file
substituteInPlace \
$out/share/applications/ssb-patchwork-electron.desktop \
--replace /opt/ $out/opt/
# symlink the binary to bin/
ln -s $out/opt/ssb-patchwork-electron/ssb-patchwork-electron $out/bin/patchwork-classic
'';
preFixup = let
packages = [
alsaLib
atk
cairo
cups
dbus
expat
fontconfig
freetype
gdk_pixbuf
glib
gnome2.GConf
gnome2.gtk
gnome2.pango
nspr
nss
xorg.libX11
xorg.libXScrnSaver
xorg.libXcomposite
xorg.libXcursor
xorg.libXdamage
xorg.libXext
xorg.libXfixes
xorg.libXi
xorg.libXrandr
xorg.libXrender
xorg.libXtst
stdenv.cc.cc.lib
stdenv.cc.cc
glibc
];
libPathNative = lib.makeLibraryPath packages;
libPath64 = lib.makeSearchPathOutput "lib" "lib64" packages;
libPath = "${libPathNative}:${libPath64}";
in ''
# patch executable
patchelf \
--set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
--set-rpath "${libPath}:$out/opt/ssb-patchwork-electron" \
$out/opt/ssb-patchwork-electron/ssb-patchwork-electron
# patch libnode
patchelf \
--set-rpath "${libPath}" \
$out/opt/ssb-patchwork-electron/libnode.so
# libffmpeg is for some reason not executable
chmod a+x $out/opt/ssb-patchwork-electron/libffmpeg.so
# fix missing libudev
ln -s ${systemd.lib}/lib/libudev.so.1 $out/opt/ssb-patchwork-electron/libudev.so.1
wrapProgram $out/opt/ssb-patchwork-electron/ssb-patchwork-electron \
--prefix LD_LIBRARY_PATH : $out/opt/ssb-patchwork-electron
'';
meta = with stdenv.lib; {
description = "Electron wrapper for Patchwork Classic: run as a desktop app outside the browser";
homepage = "https://github.com/ssbc/patchwork-classic-electron";
license = licenses.gpl3;
maintainers = with maintainers; [ mrVanDalo ];
platforms = platforms.linux;
};
}

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "picard-tools-${version}"; name = "picard-tools-${version}";
version = "2.18.5"; version = "2.18.7";
src = fetchurl { src = fetchurl {
url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar"; url = "https://github.com/broadinstitute/picard/releases/download/${version}/picard.jar";
sha256 = "1lk1qnwc2gwjh8js3rx4qayan5157an6yzxnhija6kqgrxv58f11"; sha256 = "00p5wmd3kb7pr3yvsqz660fsk845dwgj76bllwjfrbiscjdyhy9f";
}; };
buildInputs = [ jre makeWrapper ]; buildInputs = [ jre makeWrapper ];

View file

@ -7,14 +7,14 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "RAxML"; pname = "RAxML";
version = "8.2.11"; version = "8.2.12";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "stamatak"; owner = "stamatak";
repo = "standard-${pname}"; repo = "standard-${pname}";
rev = "v${version}"; rev = "v${version}";
sha256 = "08fmqrr7y5a2fmmrgfz2p0hmn4mn71l5yspxfcwwsqbw6vmdfkhg"; sha256 = "1jqjzhch0rips0vp04prvb8vmc20c5pdmsqn8knadcf91yy859fh";
}; };
buildInputs = if mpi then [ pkgs.openmpi ] else []; buildInputs = if mpi then [ pkgs.openmpi ] else [];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "verilator-${version}"; name = "verilator-${version}";
version = "3.922"; version = "3.924";
src = fetchurl { src = fetchurl {
url = "http://www.veripool.org/ftp/${name}.tgz"; url = "http://www.veripool.org/ftp/${name}.tgz";
sha256 = "1srv8d1w3mwblfydznl3frswg98i3dkylx8x18c4807wsjk8vflg"; sha256 = "0xarifraycmdzjxs0lscpwvrwr59z84p8g8dkyjssc463dqikjvx";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View file

@ -1,7 +1,7 @@
{ stdenv, lib, fetchFromGitHub, makeWrapper, git, gnupg }: { stdenv, lib, fetchFromGitHub, makeWrapper, git, gnupg }:
let let
version = "0.2.3"; version = "0.2.4";
repo = "git-secret"; repo = "git-secret";
in stdenv.mkDerivation { in stdenv.mkDerivation {
@ -11,7 +11,7 @@ in stdenv.mkDerivation {
inherit repo; inherit repo;
owner = "sobolevn"; owner = "sobolevn";
rev = "v${version}"; rev = "v${version}";
sha256 = "1swgw91zzs9n582500a34cppyngrqrqrnl80d1vd7i93xx1lkmv6"; sha256 = "0lx2rjyhy3xh6ik755lbbl40v7a7ayyqk68jj8mnv42f2vhd66xl";
}; };
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, fetchpatch, cmake, pkgconfig, lndir { stdenv, lib, fetchurl, cmake, pkgconfig, lndir
, zlib, gettext, libvdpau, libva, libXv, sqlite , zlib, gettext, libvdpau, libva, libXv, sqlite
, yasm, freetype, fontconfig, fribidi , yasm, freetype, fontconfig, fribidi
, makeWrapper, libXext, libGLU, qttools, qtbase , makeWrapper, libXext, libGLU, qttools, qtbase
@ -25,21 +25,16 @@ assert !withQT -> default != "qt5";
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "avidemux-${version}"; name = "avidemux-${version}";
version = "2.7.0"; version = "2.7.1";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/avidemux/avidemux/${version}/avidemux_${version}.tar.gz"; url = "mirror://sourceforge/avidemux/avidemux/${version}/avidemux_${version}.tar.gz";
sha256 = "1bf4l9qwxq3smc1mx5pybydc742a4qqsk17z50j9550d9iwnn7gy"; sha256 = "15g9h791qbnmycabbbl7s2b3n3xpvygm88qrfk35g2cw6957ik9w";
}; };
patches = [ patches = [
./dynamic_install_dir.patch ./dynamic_install_dir.patch
./bootstrap_logging.patch ./bootstrap_logging.patch
# glibc 2.27 compat
(fetchpatch {
url = https://github.com/mean00/avidemux2/commit/afdd9c4b876d77a4974d3fa7d9f25caeffbdf13d.patch;
sha256 = "0mf8vpfdqybziqsfyvxwcdm3zsmnp64293icinhvfpq9xp5b6vn6";
})
]; ];
nativeBuildInputs = [ yasm cmake pkgconfig ]; nativeBuildInputs = [ yasm cmake pkgconfig ];
@ -58,7 +53,10 @@ stdenv.mkDerivation rec {
++ lib.optionals withQT [ qttools qtbase ] ++ lib.optionals withQT [ qttools qtbase ]
++ lib.optional withVPX libvpx; ++ lib.optional withVPX libvpx;
buildCommand = '' buildCommand = let
qtVersion = "5.${stdenv.lib.versions.minor qtbase.version}";
wrapProgram = f: "wrapProgram ${f} --set ADM_ROOT_DIR $out --prefix LD_LIBRARY_PATH : ${libXext}/lib";
in ''
unpackPhase unpackPhase
cd "$sourceRoot" cd "$sourceRoot"
patchPhase patchPhase
@ -73,11 +71,13 @@ stdenv.mkDerivation rec {
mkdir $out mkdir $out
cp -R install/usr/* $out cp -R install/usr/* $out
for i in $out/bin/*; do ${wrapProgram "$out/bin/avidemux3_cli"}
wrapProgram $i \
--set ADM_ROOT_DIR $out \ ${stdenv.lib.optionalString withQT ''
--prefix LD_LIBRARY_PATH ":" "${libXext}/lib" ${wrapProgram "$out/bin/avidemux3_qt5"} --prefix QT_PLUGIN_PATH : ${qtbase}/lib/qt-${qtVersion}/plugins
done ${wrapProgram "$out/bin/avidemux3_jobs_qt5"} --prefix QT_PLUGIN_PATH : ${qtbase}/lib/qt-${qtVersion}/plugins
''}
ln -s "$out/bin/avidemux3_${default}" "$out/bin/avidemux" ln -s "$out/bin/avidemux3_${default}" "$out/bin/avidemux"
fixupPhase fixupPhase

View file

@ -58,6 +58,10 @@ stdenv.mkDerivation rec {
url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/vlc-qt5.11.patch?h=packages/vlc"; url = "https://git.archlinux.org/svntogit/packages.git/plain/trunk/vlc-qt5.11.patch?h=packages/vlc";
sha256 = "0yh65bhhaz876cazhagnafs1dr61184lpj3y0m3y7k37bswykj8p"; sha256 = "0yh65bhhaz876cazhagnafs1dr61184lpj3y0m3y7k37bswykj8p";
}) })
(fetchpatch {
url = "https://github.com/videolan/vlc/commit/26e2d3906658c30f2f88f4b1bc9630ec43bf5525.patch";
sha256 = "0sm73cbzxva8sww526bh5yin1k2pdkvj826wdlmqnj7xf0f3mki4";
})
]; ];
postPatch = '' postPatch = ''

View file

@ -96,7 +96,7 @@ rec {
echo creating echo creating
singularity image.create -s $((1 + size * 4 / 1024 + ${toString extraSpace})) $out singularity image.create -s $((1 + size * 4 / 1024 + ${toString extraSpace})) $out
echo importing echo importing
mkdir -p /var/singularity/mnt/container mkdir -p /var/singularity/mnt/{container,final,overlay,session,source}
tar -c . | singularity image.import $out tar -c . | singularity image.import $out
''); '');

View file

@ -1,32 +1,31 @@
{ stdenv, fetchurl, fetchFromGitHub, pkgconfig, gtk3, vala, cmake, vte, libgee, wnck, zssh, gettext, librsvg, libsecret, json-glib, gobjectIntrospection }: { stdenv, fetchurl, fetchFromGitHub, pkgconfig, gtk3, vala, cmake, ninja, vte, libgee, wnck, zssh, gettext, librsvg, libsecret, json-glib, gobjectIntrospection }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "deepin-terminal-${version}"; name = "deepin-terminal-${version}";
version = "2.9.2"; version = "3.0.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "linuxdeepin"; owner = "linuxdeepin";
repo = "deepin-terminal"; repo = "deepin-terminal";
rev = version; rev = version;
sha256 = "1pmg1acs44c30hz9rpr6x1l6lyvlylc2pz5lv4ai0rhv37n51yn2"; sha256 = "11f2yc0fj05lwhgvdrbrs8xsdm7qgp6wb5wd1f9iyc5nxn7ccl1r";
}; };
patches = [ patches = [
# Do not build vendored zssh and vte # Do not build vendored zssh and vte
(fetchurl { (fetchurl {
name = "remove-vendor.patch"; name = "remove-vendor.patch";
url = https://git.archlinux.org/svntogit/community.git/plain/trunk/remove-vendor.patch?h=packages/deepin-terminal&id=5baa756e8e6ac8ce43fb122fce270756cc55086c; url = https://git.archlinux.org/svntogit/community.git/plain/trunk/remove-vendor.patch?h=packages/deepin-terminal&id=de701614c19c273b98b60fd6790795ff7d8a157e;
sha256 = "0zrq004malphpy7xv5z502bpq30ybyj1rr4hlq4k5m4fpk29dlw6"; sha256 = "0g7hhvr7ay9g0cgc6qqvzhbcwvbzvrrilbn8w46ypfzj7w5hlkqv";
}) })
]; ];
postPatch = '' postPatch = ''
substituteInPlace project_path.c --replace __FILE__ \"$out/share/deepin-terminal/\"
substituteInPlace ssh_login.sh --replace /usr/lib/deepin-terminal/zssh "${zssh}/bin/zssh" substituteInPlace ssh_login.sh --replace /usr/lib/deepin-terminal/zssh "${zssh}/bin/zssh"
''; '';
nativeBuildInputs = [ nativeBuildInputs = [
pkgconfig vala cmake gettext pkgconfig vala cmake ninja gettext
# For setup hook # For setup hook
gobjectIntrospection gobjectIntrospection
]; ];

View file

@ -5,13 +5,13 @@
, libcanberra-gtk3, bogofilter, gst_all_1, procps, p11-kit, openldap }: , libcanberra-gtk3, bogofilter, gst_all_1, procps, p11-kit, openldap }:
let let
version = "3.28.2"; version = "3.28.3";
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "evolution-${version}"; name = "evolution-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/evolution/${gnome3.versionBranch version}/${name}.tar.xz"; url = "mirror://gnome/sources/evolution/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "0lx9amjxmfnwc0089griyxms9prmb78wfnfvdsvli8yw1cns4i74"; sha256 = "1s1vlznc22q1f8fm8fhggi8xak52b6n952s562f3kpv6g0dm2x6k";
}; };
propagatedUserEnvPkgs = [ gnome3.evolution-data-server ]; propagatedUserEnvPkgs = [ gnome3.evolution-data-server ];

View file

@ -1,19 +1,26 @@
{ fetchurl, stdenv, pkgconfig, gnome3, python3, gobjectIntrospection { fetchurl, stdenv, substituteAll, pkgconfig, gnome3, python3, gobjectIntrospection
, intltool, libsoup, libxml2, libsecret, icu, sqlite , intltool, libsoup, libxml2, libsecret, icu, sqlite, tzdata
, p11-kit, db, nspr, nss, libical, gperf, wrapGAppsHook, glib-networking , p11-kit, db, nspr, nss, libical, gperf, wrapGAppsHook, glib-networking
, vala, cmake, ninja, kerberos, openldap, webkitgtk, libaccounts-glib, json-glib }: , vala, cmake, ninja, kerberos, openldap, webkitgtk, libaccounts-glib, json-glib }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "evolution-data-server-${version}"; name = "evolution-data-server-${version}";
version = "3.28.2"; version = "3.28.3";
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];
src = fetchurl { src = fetchurl {
url = "mirror://gnome/sources/evolution-data-server/${gnome3.versionBranch version}/${name}.tar.xz"; url = "mirror://gnome/sources/evolution-data-server/${gnome3.versionBranch version}/${name}.tar.xz";
sha256 = "1azk8zh167a6hyxzz73yh36gbpf7i52b7zi10hnnnsywh80pj6jk"; sha256 = "11sq795115vrcgxl9svscm6wg8isjj784c3d84qzb6z47zq92zj3";
}; };
patches = [
(substituteAll {
src = ./fix-paths.patch;
inherit tzdata;
})
];
nativeBuildInputs = [ nativeBuildInputs = [
cmake ninja pkgconfig intltool python3 gperf wrapGAppsHook gobjectIntrospection vala cmake ninja pkgconfig intltool python3 gperf wrapGAppsHook gobjectIntrospection vala
]; ];

View file

@ -0,0 +1,11 @@
--- a/src/calendar/libecal/e-cal-system-timezone.c
+++ b/src/calendar/libecal/e-cal-system-timezone.c
@@ -26,7 +26,7 @@
#ifdef HAVE_SOLARIS
#define SYSTEM_ZONEINFODIR "/usr/share/lib/zoneinfo/tab"
#else
-#define SYSTEM_ZONEINFODIR "/usr/share/zoneinfo"
+#define SYSTEM_ZONEINFODIR "@tzdata@/share/zoneinfo"
#endif
#define ETC_TIMEZONE "/etc/timezone"

View file

@ -4,11 +4,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mate-settings-daemon-${version}"; name = "mate-settings-daemon-${version}";
version = "1.20.1"; version = "1.20.3";
src = fetchurl { src = fetchurl {
url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz"; url = "http://pub.mate-desktop.org/releases/${mate.getRelease version}/${name}.tar.xz";
sha256 = "1hmc5qfr9yrvrlc1d2mmsqbhv0lhikbadaac18bxjynw9ff857iq"; sha256 = "018f2yg4jd6hy0z7ks0s3jyjgpyi3vhd9j61951v5lb1x8ckzxhk";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View file

@ -13,6 +13,7 @@ let
inherit version; inherit version;
sha256 = "678c98275431fad324275dec63791e4a17558b40e5a110e20a82866139a85a5a"; sha256 = "678c98275431fad324275dec63791e4a17558b40e5a110e20a82866139a85a5a";
}; };
patches = [];
}); });
platformio = self.callPackage ./core.nix { }; platformio = self.callPackage ./core.nix { };

View file

@ -7,11 +7,11 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "platformio"; pname = "platformio";
version = "3.5.2"; version = "3.5.3";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "bb311ce5b8f12c95bc45c2071626a4887a3632fb2472b4d69a873b2acfc2e4ec"; sha256 = "1l4s2xh1p9h767amk9zapzivz4irl2y3kff3dna6icvsgq6rz011";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View file

@ -1,210 +0,0 @@
{ stdenv, targetPackages
, buildPlatform, hostPlatform, targetPlatform
# build-tools
, bootPkgs, alex, happy, hscolour
, autoconf, automake, coreutils, fetchurl, fetchpatch, perl, python3, m4
, libffi, libiconv ? null, ncurses
, useLLVM ? !targetPlatform.isx86
, # LLVM is conceptually a run-time-only depedendency, but for
# non-x86, we need LLVM to bootstrap later stages, so it becomes a
# build-time dependency too.
buildLlvmPackages, llvmPackages
, # If enabled, GHC will be built with the GPL-free but slower integer-simple
# library instead of the faster but GPLed integer-gmp library.
enableIntegerSimple ? !(gmp.meta.available or false), gmp
, # If enabled, use -fPIC when compiling static libs.
enableRelocatedStaticLibs ? targetPlatform != hostPlatform
, # Whether to build dynamic libs for the standard library (on the target
# platform). Static libs are always built.
enableShared ? !targetPlatform.isWindows && !targetPlatform.useAndroidPrebuilt && !targetPlatform.useiOSPrebuilt
, # Whetherto build terminfo.
enableTerminfo ? !targetPlatform.isWindows
, # What flavour to build. An empty string indicates no
# specific flavour and falls back to ghc default values.
ghcFlavour ? stdenv.lib.optionalString (targetPlatform != hostPlatform) "perf-cross"
}:
let
inherit (bootPkgs) ghc;
# TODO(@Ericson2314) Make unconditional
targetPrefix = stdenv.lib.optionalString
(targetPlatform != hostPlatform)
"${targetPlatform.config}-";
buildMK = ''
BuildFlavour = ${ghcFlavour}
ifneq \"\$(BuildFlavour)\" \"\"
include mk/flavours/\$(BuildFlavour).mk
endif
DYNAMIC_GHC_PROGRAMS = ${if enableShared then "YES" else "NO"}
'' + stdenv.lib.optionalString enableIntegerSimple ''
INTEGER_LIBRARY = integer-simple
'' + stdenv.lib.optionalString (targetPlatform != hostPlatform) ''
Stage1Only = ${if targetPlatform.system == hostPlatform.system then "NO" else "YES"}
CrossCompilePrefix = ${targetPrefix}
HADDOCK_DOCS = NO
BUILD_SPHINX_HTML = NO
BUILD_SPHINX_PDF = NO
'' + stdenv.lib.optionalString enableRelocatedStaticLibs ''
GhcLibHcOpts += -fPIC
GhcRtsHcOpts += -fPIC
'' + stdenv.lib.optionalString targetPlatform.useAndroidPrebuilt ''
EXTRA_CC_OPTS += -std=gnu99
'';
# Splicer will pull out correct variations
libDeps = platform: stdenv.lib.optional enableTerminfo [ ncurses ]
++ stdenv.lib.optional (!enableIntegerSimple) gmp
++ stdenv.lib.optional (platform.libc != "glibc" && !targetPlatform.isWindows) libiconv;
toolsForTarget =
if hostPlatform == buildPlatform then
[ targetPackages.stdenv.cc ] ++ stdenv.lib.optional useLLVM llvmPackages.llvm
else assert targetPlatform == hostPlatform; # build != host == target
[ stdenv.cc ] ++ stdenv.lib.optional useLLVM buildLlvmPackages.llvm;
targetCC = builtins.head toolsForTarget;
in
stdenv.mkDerivation rec {
version = "8.4.2";
name = "${targetPrefix}ghc-${version}";
src = fetchurl {
url = "https://downloads.haskell.org/~ghc/${version}/ghc-${version}-src.tar.xz";
sha256 = "0yq4y0smn92sksnjjva28b8847krxizns6rm50j3pgq69br35k01";
};
enableParallelBuilding = true;
outputs = [ "out" "doc" ];
patches = [(fetchpatch {
url = "https://git.haskell.org/hsc2hs.git/patch/738f3666c878ee9e79c3d5e819ef8b3460288edf";
sha256 = "0plzsbfaq6vb1023lsarrjglwgr9chld4q3m99rcfzx0yx5mibp3";
extraPrefix = "utils/hsc2hs/";
stripLen = 1;
})]
++ stdenv.lib.optional stdenv.isDarwin ./backport-dylib-command-size-limit.patch;
postPatch = "patchShebangs .";
# GHC is a bit confused on its cross terminology.
preConfigure = ''
for env in $(env | grep '^TARGET_' | sed -E 's|\+?=.*||'); do
export "''${env#TARGET_}=''${!env}"
done
# GHC is a bit confused on its cross terminology, as these would normally be
# the *host* tools.
export CC="${targetCC}/bin/${targetCC.targetPrefix}cc"
export CXX="${targetCC}/bin/${targetCC.targetPrefix}cxx"
# Use gold to work around https://sourceware.org/bugzilla/show_bug.cgi?id=16177
export LD="${targetCC.bintools}/bin/${targetCC.bintools.targetPrefix}ld${stdenv.lib.optionalString targetPlatform.isAarch32 ".gold"}"
export AS="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}as"
export AR="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ar"
export NM="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}nm"
export RANLIB="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}ranlib"
export READELF="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}readelf"
export STRIP="${targetCC.bintools.bintools}/bin/${targetCC.bintools.targetPrefix}strip"
echo -n "${buildMK}" > mk/build.mk
sed -i -e 's|-isysroot /Developer/SDKs/MacOSX10.5.sdk||' configure
'' + stdenv.lib.optionalString (!stdenv.isDarwin) ''
export NIX_LDFLAGS+=" -rpath $out/lib/ghc-${version}"
'' + stdenv.lib.optionalString stdenv.isDarwin ''
export NIX_LDFLAGS+=" -no_dtrace_dof"
'';
# TODO(@Ericson2314): Always pass "--target" and always prefix.
configurePlatforms = [ "build" "host" ]
++ stdenv.lib.optional (targetPlatform != hostPlatform) "target";
# `--with` flags for libraries needed for RTS linker
configureFlags = [
"--datadir=$doc/share/doc/ghc"
] ++ stdenv.lib.optional (targetPlatform == hostPlatform) [
"--with-curses-includes=${ncurses.dev}/include" "--with-curses-libraries=${ncurses.out}/lib"
] ++ stdenv.lib.optional (targetPlatform == hostPlatform && ! enableIntegerSimple) [
"--with-gmp-includes=${gmp.dev}/include" "--with-gmp-libraries=${gmp.out}/lib"
] ++ stdenv.lib.optional (targetPlatform == hostPlatform && hostPlatform.libc != "glibc" && !targetPlatform.isWindows) [
"--with-iconv-includes=${libiconv}/include" "--with-iconv-libraries=${libiconv}/lib"
] ++ stdenv.lib.optionals (targetPlatform != hostPlatform) [
"--enable-bootstrap-with-devel-snapshot"
] ++ stdenv.lib.optionals (targetPlatform.isAarch32) [
"CFLAGS=-fuse-ld=gold"
"CONF_GCC_LINKER_OPTS_STAGE1=-fuse-ld=gold"
"CONF_GCC_LINKER_OPTS_STAGE2=-fuse-ld=gold"
] ++ stdenv.lib.optionals (targetPlatform.isDarwin && targetPlatform.isAarch64) [
# fix for iOS: https://www.reddit.com/r/haskell/comments/4ttdz1/building_an_osxi386_to_iosarm64_cross_compiler/d5qvd67/
"--disable-large-address-space"
];
# Make sure we never relax`$PATH` and hooks support for compatability.
strictDeps = true;
nativeBuildInputs = [
perl autoconf automake m4 python3
ghc alex happy hscolour
];
# For building runtime libs
depsBuildTarget = toolsForTarget;
buildInputs = libDeps hostPlatform;
propagatedBuildInputs = [ targetPackages.stdenv.cc ]
++ stdenv.lib.optional useLLVM llvmPackages.llvm;
depsTargetTarget = map stdenv.lib.getDev (libDeps targetPlatform);
depsTargetTargetPropagated = map (stdenv.lib.getOutput "out") (libDeps targetPlatform);
# required, because otherwise all symbols from HSffi.o are stripped, and
# that in turn causes GHCi to abort
stripDebugFlags = [ "-S" ] ++ stdenv.lib.optional (!targetPlatform.isDarwin) "--keep-file-symbols";
checkTarget = "test";
hardeningDisable = [ "format" ];
postInstall = ''
for bin in "$out"/lib/${name}/bin/*; do
isELF "$bin" || continue
paxmark m "$bin"
done
# Install the bash completion file.
install -D -m 444 utils/completion/ghc.bash $out/share/bash-completion/completions/${targetPrefix}ghc
# Patch scripts to include "readelf" and "cat" in $PATH.
for i in "$out/bin/"*; do
test ! -h $i || continue
egrep --quiet '^#!' <(head -n 1 $i) || continue
sed -i -e '2i export PATH="$PATH:${stdenv.lib.makeBinPath [ targetPackages.stdenv.cc.bintools coreutils ]}"' $i
done
'';
passthru = {
inherit bootPkgs targetPrefix;
inherit llvmPackages;
# Our Cabal compiler name
haskellCompilerName = "ghc-8.4.2";
};
meta = {
homepage = http://haskell.org/ghc;
description = "The Glasgow Haskell Compiler";
maintainers = with stdenv.lib.maintainers; [ marcweber andres peti ];
inherit (ghc.meta) license platforms;
};
}

View file

@ -69,7 +69,8 @@ in stdenv.mkDerivation {
] ++ lib.optionals stdenv.isDarwin [ ] ++ lib.optionals stdenv.isDarwin [
gcc # https://github.com/ghcjs/ghcjs/issues/663 gcc # https://github.com/ghcjs/ghcjs/issues/663
]; ];
phases = ["unpackPhase" "buildPhase"]; dontConfigure = true;
dontInstall = true;
buildPhase = '' buildPhase = ''
export HOME=$TMP export HOME=$TMP
mkdir $HOME/.cabal mkdir $HOME/.cabal

View file

@ -364,6 +364,7 @@ self: super: {
notcpp = dontCheck super.notcpp; notcpp = dontCheck super.notcpp;
ntp-control = dontCheck super.ntp-control; ntp-control = dontCheck super.ntp-control;
numerals = dontCheck super.numerals; numerals = dontCheck super.numerals;
odpic-raw = dontCheck super.odpic-raw; # needs a running oracle database server
opaleye = dontCheck super.opaleye; opaleye = dontCheck super.opaleye;
openpgp = dontCheck super.openpgp; openpgp = dontCheck super.openpgp;
optional = dontCheck super.optional; optional = dontCheck super.optional;
@ -1068,3 +1069,14 @@ self: super: {
in { in {
inherit amazonka amazonka-core amazonka-test; inherit amazonka amazonka-core amazonka-test;
}) })
//
# The actual Cabal library gets built while building its `Setup.hs`.
(let
inherit (pkgs.lib) filterAttrs flip mapAttrs hasPrefix;
cabals = filterAttrs (n: v: hasPrefix "Cabal_" n) super;
fixCabal = n: v: addSetupDepends v [ self.mtl self.parsec ];
in
mapAttrs fixCabal cabals
)

View file

@ -166,14 +166,8 @@ let
"--configure-option=--host=${hostPlatform.config}" "--configure-option=--host=${hostPlatform.config}"
] ++ crossCabalFlags); ] ++ crossCabalFlags);
useSeparateSetupDb = setupHaskellDepends != [] || isCross || isGhcjs;
setupCompileFlags = [ setupCompileFlags = [
(optionalString (!coreSetup) "-${nativePackageDbFlag}=${ (optionalString (!coreSetup) "-${nativePackageDbFlag}=$setupPackageConfDir")
if useSeparateSetupDb
then "$setupPackageConfDir"
else "$packageConfDir"
}")
(optionalString (isGhcjs || isHaLVM || versionOlder "7.8" ghc.version) "-j$NIX_BUILD_CORES") (optionalString (isGhcjs || isHaLVM || versionOlder "7.8" ghc.version) "-j$NIX_BUILD_CORES")
# https://github.com/haskell/cabal/issues/2398 # https://github.com/haskell/cabal/issues/2398
(optionalString (versionOlder "7.10" ghc.version && !isHaLVM) "-threaded") (optionalString (versionOlder "7.10" ghc.version && !isHaLVM) "-threaded")
@ -185,7 +179,8 @@ let
allPkgconfigDepends = pkgconfigDepends ++ libraryPkgconfigDepends ++ executablePkgconfigDepends ++ allPkgconfigDepends = pkgconfigDepends ++ libraryPkgconfigDepends ++ executablePkgconfigDepends ++
optionals doCheck testPkgconfigDepends ++ optionals doBenchmark benchmarkPkgconfigDepends; optionals doCheck testPkgconfigDepends ++ optionals doBenchmark benchmarkPkgconfigDepends;
nativeBuildInputs = [ ghc nativeGhc removeReferencesTo ] ++ optional (allPkgconfigDepends != []) pkgconfig ++ depsBuildBuild = [ nativeGhc ];
nativeBuildInputs = [ ghc removeReferencesTo ] ++ optional (allPkgconfigDepends != []) pkgconfig ++
setupHaskellDepends ++ setupHaskellDepends ++
buildTools ++ libraryToolDepends ++ executableToolDepends; buildTools ++ libraryToolDepends ++ executableToolDepends;
propagatedBuildInputs = buildDepends ++ libraryHaskellDepends ++ executableHaskellDepends ++ libraryFrameworkDepends; propagatedBuildInputs = buildDepends ++ libraryHaskellDepends ++ executableHaskellDepends ++ libraryFrameworkDepends;
@ -216,18 +211,6 @@ let
cp -f "$p/lib/${ghcName}/package.conf.d/"*.conf ${packageConfDir}/ cp -f "$p/lib/${ghcName}/package.conf.d/"*.conf ${packageConfDir}/
continue continue
fi fi
if [ -d "$p/include" ]; then
configureFlags+=" --extra-include-dirs=$p/include"
fi
if [ -d "$p/lib" ]; then
configureFlags+=" --extra-lib-dirs=$p/lib"
fi
''
# It is not clear why --extra-framework-dirs does work fine on Linux
+ optionalString (!buildPlatform.isDarwin || versionAtLeast nativeGhc.version "8.0") ''
if [[ -d "$p/Library/Frameworks" ]]; then
configureFlags+=" --extra-framework-dirs=$p/Library/Frameworks"
fi
''; '';
in in
@ -248,7 +231,7 @@ stdenv.mkDerivation ({
inherit src; inherit src;
inherit nativeBuildInputs; inherit depsBuildBuild nativeBuildInputs;
buildInputs = otherBuildInputs ++ optionals (!hasActiveLibrary) propagatedBuildInputs; buildInputs = otherBuildInputs ++ optionals (!hasActiveLibrary) propagatedBuildInputs;
propagatedBuildInputs = optionals hasActiveLibrary propagatedBuildInputs; propagatedBuildInputs = optionals hasActiveLibrary propagatedBuildInputs;
@ -270,10 +253,8 @@ stdenv.mkDerivation ({
echo "Build with ${ghc}." echo "Build with ${ghc}."
${optionalString (hasActiveLibrary && hyperlinkSource) "export PATH=${hscolour}/bin:$PATH"} ${optionalString (hasActiveLibrary && hyperlinkSource) "export PATH=${hscolour}/bin:$PATH"}
'' + (optionalString useSeparateSetupDb ''
setupPackageConfDir="$TMPDIR/setup-package.conf.d" setupPackageConfDir="$TMPDIR/setup-package.conf.d"
mkdir -p $setupPackageConfDir mkdir -p $setupPackageConfDir
'') + ''
packageConfDir="$TMPDIR/package.conf.d" packageConfDir="$TMPDIR/package.conf.d"
mkdir -p $packageConfDir mkdir -p $packageConfDir
@ -284,17 +265,29 @@ stdenv.mkDerivation ({
# dependencies for the build machine. # dependencies for the build machine.
# #
# pkgs* arrays defined in stdenv/setup.hs # pkgs* arrays defined in stdenv/setup.hs
+ (optionalString useSeparateSetupDb '' + ''
for p in "''${pkgsBuildBuild[@]}" "''${pkgsBuildHost[@]}" "''${pkgsBuildTarget[@]}"; do for p in "''${pkgsBuildBuild[@]}" "''${pkgsBuildHost[@]}" "''${pkgsBuildTarget[@]}"; do
${buildPkgDb nativeGhc.name "$setupPackageConfDir"} ${buildPkgDb nativeGhc.name "$setupPackageConfDir"}
done done
${nativeGhcCommand}-pkg --${nativePackageDbFlag}="$setupPackageConfDir" recache ${nativeGhcCommand}-pkg --${nativePackageDbFlag}="$setupPackageConfDir" recache
'') ''
# For normal components
# For normal components
+ '' + ''
for p in "''${pkgsHostHost[@]}" "''${pkgsHostTarget[@]}"; do for p in "''${pkgsHostHost[@]}" "''${pkgsHostTarget[@]}"; do
${buildPkgDb ghc.name "$packageConfDir"} ${buildPkgDb ghc.name "$packageConfDir"}
if [ -d "$p/include" ]; then
configureFlags+=" --extra-include-dirs=$p/include"
fi
if [ -d "$p/lib" ]; then
configureFlags+=" --extra-lib-dirs=$p/lib"
fi
''
# It is not clear why --extra-framework-dirs does work fine on Linux
+ optionalString (!buildPlatform.isDarwin || versionAtLeast nativeGhc.version "8.0") ''
if [[ -d "$p/Library/Frameworks" ]]; then
configureFlags+=" --extra-framework-dirs=$p/Library/Frameworks"
fi
'' + ''
done done
'' ''
# only use the links hack if we're actually building dylibs. otherwise, the # only use the links hack if we're actually building dylibs. otherwise, the

View file

@ -38,7 +38,7 @@ let
ghcCommand' = if isGhcjs then "ghcjs" else "ghc"; ghcCommand' = if isGhcjs then "ghcjs" else "ghc";
ghcCommand = "${ghc.targetPrefix}${ghcCommand'}"; ghcCommand = "${ghc.targetPrefix}${ghcCommand'}";
ghcCommandCaps= lib.toUpper ghcCommand'; ghcCommandCaps= lib.toUpper ghcCommand';
libDir = if isHaLVM then "$out/lib/HaLVM-${ghc.version}" else "$out/lib/${ghcCommand}-${ghc.version}"; libDir = if isHaLVM then "$out/lib/HaLVM-${ghc.version}" else if isGhcjs then "$out/libexec" else "$out/lib/${ghcCommand}-${ghc.version}";
docDir = "$out/share/doc/ghc/html"; docDir = "$out/share/doc/ghc/html";
packageCfgDir = "${libDir}/package.conf.d"; packageCfgDir = "${libDir}/package.conf.d";
paths = lib.filter (x: x ? isHaskellLibrary) (lib.closePropagation packages); paths = lib.filter (x: x ? isHaskellLibrary) (lib.closePropagation packages);

View file

@ -1,8 +1,8 @@
{ mkDerivation, fetchurl }: { mkDerivation, fetchurl }:
mkDerivation rec { mkDerivation rec {
version = "20.3.2"; version = "20.3.8";
sha256 = "0cd7rz32cxghxb2q7g3p52sxbhwqn4pkjlf28hy1dms6q7f85zv1"; sha256 = "1griiszz1x34idmwi6234br7bqd1d7mimim63amjgi9ds79jh6jj";
prePatch = '' prePatch = ''
substituteInPlace configure.in --replace '`sw_vers -productVersion`' '10.10' substituteInPlace configure.in --replace '`sw_vers -productVersion`' '10.10'

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ace-${version}"; name = "ace-${version}";
version = "6.4.8"; version = "6.5.0";
src = fetchurl { src = fetchurl {
url = "http://download.dre.vanderbilt.edu/previous_versions/ACE-${version}.tar.bz2"; url = "http://download.dre.vanderbilt.edu/previous_versions/ACE-${version}.tar.bz2";
sha256 = "190cyfs2najph2yycyj8abzddwa8s4wx8lx38iv237plwfl2308g"; sha256 = "0mzkyn7bjw3h8q22ajg765dflwxnsz6b20ql23gcbqkxfjvvdyyv";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "c-blosc-${version}"; name = "c-blosc-${version}";
version = "1.11.3"; version = "1.14.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "Blosc"; owner = "Blosc";
repo = "c-blosc"; repo = "c-blosc";
rev = "v${version}"; rev = "v${version}";
sha256 = "18665lwszwbb48pxgisyxxjh92sr764hv6h7jw8zzsmzdkgzrmcw"; sha256 = "051x2hh0yq1zhiyjmiarvc2radi59v03vzs2sa4hmgfhfaxcklld";
}; };
buildInputs = [ cmake ]; buildInputs = [ cmake ];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "cppcms-${version}"; name = "cppcms-${version}";
version = "1.0.5"; version = "1.2.1";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/cppcms/${name}.tar.bz2"; url = "mirror://sourceforge/cppcms/${name}.tar.bz2";
sha256 = "0r8qyp102sq4lw8xhrjhan0dnslhsmxj4zs9jzlw75yagfbqbdl4"; sha256 = "0lmcdjzicmzhnr8pa0q3f5lgapz2cnh9w0dr56i4kj890iqwgzhh";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View file

@ -3,13 +3,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "folly-${version}"; name = "folly-${version}";
version = "2018.05.28.00"; version = "2018.06.11.00";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "facebook"; owner = "facebook";
repo = "folly"; repo = "folly";
rev = "v${version}"; rev = "v${version}";
sha256 = "1n5zic8bgm4dfc7prjj3af2ipxalia6w7dk6w9pmrz1nkrpyd68c"; sha256 = "005p2i36vxy2nppxqhdd4a5x58yx7zljb2diyqb820jygz2hfz8a";
}; };
nativeBuildInputs = [ autoreconfHook python pkgconfig ]; nativeBuildInputs = [ autoreconfHook python pkgconfig ];

View file

@ -1,7 +1,7 @@
{ stdenv, fetchurl, qt4, cmake }: { stdenv, fetchurl, qt4, cmake }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "grantlee-0.4.0"; name = "grantlee-0.5.1";
# Upstream download server has country code firewall, so I made a mirror. # Upstream download server has country code firewall, so I made a mirror.
src = fetchurl { src = fetchurl {
@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
"http://downloads.grantlee.org/${name}.tar.gz" "http://downloads.grantlee.org/${name}.tar.gz"
"http://www.loegria.net/grantlee/${name}.tar.gz" "http://www.loegria.net/grantlee/${name}.tar.gz"
]; ];
sha256 = "0gqdckxx45qmyixyz5d7ipcqq2dw26r71m2fpsrlnh4j2c9di8hk"; sha256 = "1b501xbimizmbmysl1j5zgnp48qw0r2r7lhgmxvzhzlv9jzhj60r";
}; };
buildInputs = [ cmake qt4 ]; buildInputs = [ cmake qt4 ];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "libraw-${version}"; name = "libraw-${version}";
version = "0.18.11"; version = "0.18.12";
src = fetchurl { src = fetchurl {
url = "http://www.libraw.org/data/LibRaw-${version}.tar.gz"; url = "http://www.libraw.org/data/LibRaw-${version}.tar.gz";
sha256 = "07a7k83hx7icahh6jaxfbd7pw5jjm5i11xcqjj31b28d1aj29xvw"; sha256 = "1m2khr2cij8z6lawgbmdksjn14fpnjsy8ad4qahnpqapm1slsxap";
}; };
outputs = [ "out" "lib" "dev" "doc" ]; outputs = [ "out" "lib" "dev" "doc" ];

View file

@ -34,18 +34,13 @@ let
in { in {
libressl_2_5 = generic {
version = "2.5.5";
sha256 = "1i77viqy1afvbr392npk9v54k9zhr9zq2vhv6pliza22b0ymwzz5";
};
libressl_2_6 = generic { libressl_2_6 = generic {
version = "2.6.4"; version = "2.6.5";
sha256 = "07yi37a2ghsgj2b4w30q1s4d2inqnix7ika1m21y57p9z71212k3"; sha256 = "0anx9nlgixdjn811zclim85jm5yxmxwycj71ix27rlhr233xz7l5";
}; };
libressl_2_7 = generic { libressl_2_7 = generic {
version = "2.7.3"; version = "2.7.4";
sha256 = "1597kj9jy3jyw52ys19sd4blg2gkam5q0rqdxbnrnvnyw67hviqn"; sha256 = "19kxa5i97q7p6rrps9qm0nd8zqhdjvzx02j72400c73cl2nryfhy";
}; };
} }

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "pkcs11-helper-${version}"; name = "pkcs11-helper-${version}";
version = "1.23"; version = "1.24";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "OpenSC"; owner = "OpenSC";
repo = "pkcs11-helper"; repo = "pkcs11-helper";
rev = "${name}"; rev = "${name}";
sha256 = "1m3fp3v6c903cs36bvvg0h65p1sdamsmzy13ww0zyvplcycarz0n"; sha256 = "07ij6i76abf6bdhczsq1wkln3q0y0wkfbsi882vj3gl2wvxh0d1i";
}; };
nativeBuildInputs = [ autoreconfHook pkgconfig ]; nativeBuildInputs = [ autoreconfHook pkgconfig ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "range-v3-${version}"; name = "range-v3-${version}";
version = "0.3.5"; version = "0.3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "ericniebler"; owner = "ericniebler";
repo = "range-v3"; repo = "range-v3";
rev = version; rev = version;
sha256 = "00bwm7n3wyf49xpr7zjhm08dzwx3lwibgafi6isvfls3dhk1m4kp"; sha256 = "050h9pa57kd57l73njxpjb331snybddl29x2vpy5ycygvqiw8kcp";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View file

@ -8,14 +8,14 @@
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "1.2.3"; version = "1.2.4";
name = "brial-${version}"; name = "brial-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "BRiAl"; owner = "BRiAl";
repo = "BRiAl"; repo = "BRiAl";
rev = version; rev = version;
sha256 = "0qy4cwy7qrk4zg151cmws5cglaa866z461cnj9wdnalabs7v7qbg"; sha256 = "08skgmwz190mvpkh0ddx92ilva6bxidxwh1qg16ipi768x92193s";
}; };
# FIXME package boost-test and enable checks # FIXME package boost-test and enable checks

View file

@ -1,14 +1,14 @@
{ stdenv, python, fetchurl, openssl, boost }: { stdenv, python, fetchurl, openssl, boost }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "swiften-${version}"; name = "swiften-${version}";
version = "4.0"; version = "4.0.2";
buildInputs = [ python ]; buildInputs = [ python ];
propagatedBuildInputs = [ openssl boost ]; propagatedBuildInputs = [ openssl boost ];
src = fetchurl { src = fetchurl {
url = "http://swift.im/downloads/releases/swift-${version}/swift-${version}.tar.gz"; url = "http://swift.im/downloads/releases/swift-${version}/swift-${version}.tar.gz";
sha256 = "06bk45hxqmny8z7x78ycrfrazq6xdzv5c28i8x0lgc85j03b5dsh"; sha256 = "0w0aiszjd58ynxpacwcgf052zpmbpcym4dhci64vbfgch6wryz0w";
}; };
buildPhase = '' buildPhase = ''

View file

@ -9,12 +9,10 @@ buildPythonPackage rec {
sha256 = "02qkfpykbq35id8glfgwc38yc430427yd05z1wc5cnld8zgicmgi"; sha256 = "02qkfpykbq35id8glfgwc38yc430427yd05z1wc5cnld8zgicmgi";
}; };
patches = [ patches = stdenv.lib.optional (stdenv.lib.versionAtLeast version "6.7") (substituteAll {
(substituteAll { src = ./fix-paths.patch;
src = ./fix-paths.patch; locale = "${locale}/bin/locale";
locale = "${locale}/bin/locale"; });
})
];
buildInputs = [ pytest ]; buildInputs = [ pytest ];

View file

@ -18,8 +18,8 @@ mkDerivation {
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "haskell-CI"; owner = "haskell-CI";
repo = "haskell-ci"; repo = "haskell-ci";
rev = "db63eb7f2eaa64b7b0e4759e98258fea2a27a424"; rev = "05926968f17256cae2308756835a3a24d9de437b";
sha256 = "0ff55zafx7561s1yps7aw83ws4vcpc5cq9r6bbckaagvwwla0dcq"; sha256 = "0s1g1yq6j6vl2bspc90bwbwp7532pcrmh8fhnz8j6yv9py927mmm";
}; };
patches = [ newShellCheck ]; patches = [ newShellCheck ];
isLibrary = true; isLibrary = true;

View file

@ -6,7 +6,7 @@ let
allSpecs = { allSpecs = {
"x86_64-linux" = { "x86_64-linux" = {
system = "linux64"; system = "linux64";
sha256 = "1rkdlf9v5lciaq3yp7cp2vwmca612vngbcnz55ck76jgx6rknh3g"; sha256 = "07b39j1glr53yxbbkkkkx12h8r44fybqkn4fd7s2lr1ysyq5vn1a";
}; };
"x86_64-darwin" = { "x86_64-darwin" = {
@ -28,7 +28,7 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "chromedriver-${version}"; name = "chromedriver-${version}";
version = "2.39"; version = "2.40";
src = fetchurl { src = fetchurl {
url = "http://chromedriver.storage.googleapis.com/${version}/chromedriver_${spec.system}.zip"; url = "http://chromedriver.storage.googleapis.com/${version}/chromedriver_${spec.system}.zip";

View file

@ -11,11 +11,11 @@ let
in in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "grails-${version}"; name = "grails-${version}";
version = "3.3.5"; version = "3.3.6";
src = fetchurl { src = fetchurl {
url = "https://github.com/grails/grails-core/releases/download/v${version}/grails-${version}.zip"; url = "https://github.com/grails/grails-core/releases/download/v${version}/grails-${version}.zip";
sha256 = "0796jbcblr3vxdf6sngzcfs1m24d1ra1n8jc7cnfrfxpf8r0z15m"; sha256 = "0q3rbz47lp2zh2794aycf85vnic77dg3sclrqbizfpdijma87iy7";
}; };
buildInputs = [ unzip ]; buildInputs = [ unzip ];

View file

@ -4,13 +4,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "gzdoom-${version}"; name = "gzdoom-${version}";
version = "3.3.2"; version = "3.4.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "coelckers"; owner = "coelckers";
repo = "gzdoom"; repo = "gzdoom";
rev = "g${version}"; rev = "g${version}";
sha256 = "0zlkja0jcqi3s4iw5h076iwqxa3haradqksjnx9jxcbkvaw75p3k"; sha256 = "09400w0xpw6sk593c0fr6m9qmgn6n5r1qdardizim6m0r5ki565i";
}; };
nativeBuildInputs = [ cmake makeWrapper ]; nativeBuildInputs = [ cmake makeWrapper ];

View file

@ -6,13 +6,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "wesnoth"; pname = "wesnoth";
version = "1.14.2"; version = "1.14.3";
name = "${pname}-${version}"; name = "${pname}-${version}";
src = fetchurl { src = fetchurl {
url = "mirror://sourceforge/sourceforge/${pname}/${name}.tar.bz2"; url = "mirror://sourceforge/sourceforge/${pname}/${name}.tar.bz2";
sha256 = "1xhnhxjc8zjv89xmrbffa54fa4ybw6x0p34k14n9lrz1y18vaar8"; sha256 = "06648041nr77sgzr7jpmcn37cma3hp41qynp50xzddx28l17zwg9";
}; };
nativeBuildInputs = [ cmake pkgconfig ]; nativeBuildInputs = [ cmake pkgconfig ];

View file

@ -1,7 +1,19 @@
{ stdenv, fetchFromGitHub, fetchpatch, pkgconfig, cmake, libzip, epoxy, ffmpeg { stdenv, fetchFromGitHub, fetchpatch, makeDesktopItem, makeWrapper, pkgconfig
, imagemagick, SDL2, qtbase, qtmultimedia, qttools, libedit, minizip }: , cmake, epoxy, libzip, ffmpeg, imagemagick, SDL2, qtbase, qtmultimedia, libedit
, qttools, minizip }:
stdenv.mkDerivation rec { let
desktopItem = makeDesktopItem {
name = "mgba";
exec = "mgba-qt";
icon = "mgba";
comment = "A Game Boy Advance Emulator";
desktopName = "mgba";
genericName = "Game Boy Advance Emulator";
categories = "Game;Emulator;";
startupNotify = "false";
};
in stdenv.mkDerivation rec {
name = "mgba-${version}"; name = "mgba-${version}";
version = "0.6.3"; version = "0.6.3";
@ -13,7 +25,7 @@ stdenv.mkDerivation rec {
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
nativeBuildInputs = [ pkgconfig cmake ]; nativeBuildInputs = [ makeWrapper pkgconfig cmake ];
buildInputs = [ buildInputs = [
libzip epoxy ffmpeg imagemagick SDL2 qtbase qtmultimedia libedit minizip libzip epoxy ffmpeg imagemagick SDL2 qtbase qtmultimedia libedit minizip
@ -25,6 +37,12 @@ stdenv.mkDerivation rec {
sha256 = "0j334v8wf594kg8s1hngmh58wv1pi003z8avy6fjhj5qpjmbbavh"; sha256 = "0j334v8wf594kg8s1hngmh58wv1pi003z8avy6fjhj5qpjmbbavh";
})]; })];
postInstall = ''
cp -r ${desktopItem}/share/applications $out/share
wrapProgram $out/bin/mgba-qt --suffix QT_PLUGIN_PATH : \
${qtbase.bin}/${qtbase.qtPluginPrefix}
'';
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = https://mgba.io; homepage = https://mgba.io;
description = "A modern GBA emulator with a focus on accuracy"; description = "A modern GBA emulator with a focus on accuracy";

View file

@ -1,5 +1,5 @@
{ stdenv, fetchFromGitHub, autoreconfHook, intltool, pkgconfig, SDL2, zlib { stdenv, fetchFromGitHub, autoreconfHook, wrapGAppsHook, intltool, pkgconfig
, gtk3, libxml2, libXv, epoxy, minizip, portaudio }: , SDL2, zlib, gtk3, libxml2, libXv, epoxy, minizip, portaudio }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "snes9x-gtk-${version}"; name = "snes9x-gtk-${version}";
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
}; };
enableParallelBuilding = true; enableParallelBuilding = true;
nativeBuildInputs = [ autoreconfHook intltool pkgconfig ]; nativeBuildInputs = [ autoreconfHook wrapGAppsHook intltool pkgconfig ];
buildInputs = [ SDL2 zlib gtk3 libxml2 libXv epoxy minizip portaudio ]; buildInputs = [ SDL2 zlib gtk3 libxml2 libXv epoxy minizip portaudio ];
preAutoreconf = '' preAutoreconf = ''
@ -21,11 +21,9 @@ stdenv.mkDerivation rec {
intltoolize intltoolize
''; '';
installPhase = "install -Dt $out/bin snes9x-gtk";
meta = with stdenv.lib; { meta = with stdenv.lib; {
homepage = "http://www.snes9x.com"; homepage = "http://www.snes9x.com";
description = "A portable, freeware Super Nintendo Entertainment System (SNES) emulator"; description = "Super Nintendo Entertainment System (SNES) emulator";
longDescription = '' longDescription = ''
Snes9x is a portable, freeware Super Nintendo Entertainment System (SNES) Snes9x is a portable, freeware Super Nintendo Entertainment System (SNES)

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "adapta-gtk-theme-${version}"; name = "adapta-gtk-theme-${version}";
version = "3.93.1.18"; version = "3.93.1.22";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "adapta-project"; owner = "adapta-project";
repo = "adapta-gtk-theme"; repo = "adapta-gtk-theme";
rev = version; rev = version;
sha256 = "1jaayfj2h0miaalmgk0i26py4b6750iq3kis2jnm54g2gxyw3ipw"; sha256 = "1i74vpf7fv1r6074lv8f9515hzrhcbi2wg069vmc10ihwpml391r";
}; };
preferLocalBuild = true; preferLocalBuild = true;

View file

@ -1,4 +1,4 @@
{ stdenv, fetchurl, devicemapper }: { stdenv, fetchurl, fetchpatch, devicemapper }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "dmraid-1.0.0.rc16"; name = "dmraid-1.0.0.rc16";
@ -8,10 +8,20 @@ stdenv.mkDerivation rec {
sha256 = "0m92971gyqp61darxbiri6a48jz3wq3gkp8r2k39320z0i6w8jgq"; sha256 = "0m92971gyqp61darxbiri6a48jz3wq3gkp8r2k39320z0i6w8jgq";
}; };
patches = [ ./hardening-format.patch ]; patches = [ ./hardening-format.patch ]
++ stdenv.lib.optionals stdenv.hostPlatform.isMusl [
(fetchpatch {
url = "https://raw.githubusercontent.com/void-linux/void-packages/fceed4b8e96b3c1da07babf6f67b6ed1588a28b2/srcpkgs/dmraid/patches/006-musl-libc.patch";
sha256 = "1j8xda0fpz8lxjxnqdidy7qb866qrzwpbca56yjdg6vf4x21hx6w";
stripLen = 2;
extraPrefix = "1.0.0.rc16/";
})
];
postPatch = '' postPatch = ''
sed -i 's/\[\[[^]]*\]\]/[ "''$''${n##*.}" = "so" ]/' */lib/Makefile.in sed -i 's/\[\[[^]]*\]\]/[ "''$''${n##*.}" = "so" ]/' */lib/Makefile.in
'' + stdenv.lib.optionalString stdenv.hostPlatform.isMusl ''
NIX_CFLAGS_COMPILE+=" -D_GNU_SOURCE"
''; '';
preConfigure = "cd */"; preConfigure = "cd */";

View file

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "fnotifystat-${version}"; name = "fnotifystat-${version}";
version = "0.02.00"; version = "0.02.01";
src = fetchurl { src = fetchurl {
url = "http://kernel.ubuntu.com/~cking/tarballs/fnotifystat/fnotifystat-${version}.tar.gz"; url = "http://kernel.ubuntu.com/~cking/tarballs/fnotifystat/fnotifystat-${version}.tar.gz";
sha256 = "0sfzmggfhhhp3vxn1s61b5bacr2hz6r7y699n3nysdciaa2scgdq"; sha256 = "18p6rqb3bhs2ih6mnp57j0cyawjm0iwky6y3ays54alkxqaz8gmx";
}; };
installFlags = [ "DESTDIR=$(out)" ]; installFlags = [ "DESTDIR=$(out)" ];
postInstall = '' postInstall = ''

View file

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "forkstat-${version}"; name = "forkstat-${version}";
version = "0.02.02"; version = "0.02.03";
src = fetchurl { src = fetchurl {
url = "http://kernel.ubuntu.com/~cking/tarballs/forkstat/forkstat-${version}.tar.gz"; url = "http://kernel.ubuntu.com/~cking/tarballs/forkstat/forkstat-${version}.tar.gz";
sha256 = "02iqi4xjg2hl4paw88fz9jb88a9p4zprvq3g56cd7jwfx3vmw5a4"; sha256 = "1dl95ijs9bs9s9i629bi88qmvxjl25ym742gc063bysbp8drban1";
}; };
installFlags = [ "DESTDIR=$(out)" ]; installFlags = [ "DESTDIR=$(out)" ];
postInstall = '' postInstall = ''

View file

@ -0,0 +1,19 @@
{ stdenv, buildPackages, hostPlatform, fetchFromGitHub, perl, buildLinux, libelf, utillinux, ... } @ args:
buildLinux (args // rec {
version = "4.14.47-139";
# modDirVersion needs to be x.y.z.
modDirVersion = "4.14.47";
# branchVersion needs to be x.y.
extraMeta.branch = "4.14";
src = fetchFromGitHub {
owner = "hardkernel";
repo = "linux";
rev = version;
sha256 = "0jjgrmvi1h8zs8snnvghnjd422yfmn7jv9y1n7xikmfv4nvwqrkv";
};
} // (args.argsOverride or {}))

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "mcelog-${version}"; name = "mcelog-${version}";
version = "158"; version = "159";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "andikleen"; owner = "andikleen";
repo = "mcelog"; repo = "mcelog";
rev = "v${version}"; rev = "v${version}";
sha256 = "0hiyj626fv4awzqgf4wnxjkr68cfcllqpibw0ncnpkvk9rn96rqp"; sha256 = "1w8y4igxi48r2d9s6g9fm1bgmsga94gfz6x0xaln6rhvbgi318xg";
}; };
postPatch = '' postPatch = ''

View file

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "pagemon-${version}"; name = "pagemon-${version}";
version = "0.01.12"; version = "0.01.13";
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "0bddn22daf33dbghwfjxxgsn4gmr5knr6h9sbqhs7g7p85dla6wa"; sha256 = "055qniys5xv0ivdvdws5vwdgfyj6iyq02v5nn945l1x59rwnb541";
rev = "V${version}"; rev = "V${version}";
repo = "pagemon"; repo = "pagemon";
owner = "ColinIanKing"; owner = "ColinIanKing";

View file

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "smemstat-${version}"; name = "smemstat-${version}";
version = "0.01.18"; version = "0.02.00";
src = fetchurl { src = fetchurl {
url = "http://kernel.ubuntu.com/~cking/tarballs/smemstat/smemstat-${version}.tar.gz"; url = "http://kernel.ubuntu.com/~cking/tarballs/smemstat/smemstat-${version}.tar.gz";
sha256 = "0g262gilj2jk365wj4yl93ifppgvc9rx7dmlw6ychbv72v2pbv6w"; sha256 = "16in8bzsrrcz7mc5qvyvjkxgpzz4bnq8zvkb7vsv6qfgyd3xr1dp";
}; };
buildInputs = [ ncurses ]; buildInputs = [ ncurses ];
installFlags = [ "DESTDIR=$(out)" ]; installFlags = [ "DESTDIR=$(out)" ];

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "jackett-${version}"; name = "jackett-${version}";
version = "0.8.1014"; version = "0.8.1070";
src = fetchurl { src = fetchurl {
url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz"; url = "https://github.com/Jackett/Jackett/releases/download/v${version}/Jackett.Binaries.Mono.tar.gz";
sha256 = "0pvm9q8dpavkgsv180mw4y6555iixjv5s7mnmai9xzjspjpf264k"; sha256 = "1xdmf1nvs1y8jhivmc0sw8cip925xrj8hg66z0awcymri6qnp6s9";
}; };
buildInputs = [ makeWrapper ]; buildInputs = [ makeWrapper ];

View file

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, autoconf, automake, libtool, bison { stdenv, lib, fetchurl, fetchpatch, autoconf, automake, libtool, bison
, libasr, libevent, zlib, openssl, db, pam , libasr, libevent, zlib, openssl, db, pam
# opensmtpd requires root for no reason to encrypt passwords, this patch fixes it # opensmtpd requires root for no reason to encrypt passwords, this patch fixes it
@ -23,7 +23,13 @@ else stdenv.mkDerivation rec {
sha256 = "291881862888655565e8bbe3cfb743310f5dc0edb6fd28a889a9a547ad767a81"; sha256 = "291881862888655565e8bbe3cfb743310f5dc0edb6fd28a889a9a547ad767a81";
}; };
patches = [ ./proc_path.diff ]; patches = [
./proc_path.diff
(fetchpatch {
url = "https://github.com/OpenSMTPD/OpenSMTPD/commit/725ba4fa2ddf23bbcd1ff9ec92e86bbfaa6825c8.diff";
sha256 = "19rla0b2r53jpdiz25fcza29c2msz6j6paivxhp9jcy1xl457dqa";
})
];
postPatch = with builtins; with lib; postPatch = with builtins; with lib;
optionalString unpriviledged_smtpctl_encrypt '' optionalString unpriviledged_smtpctl_encrypt ''

View file

@ -1,7 +1,7 @@
{ lib, buildGoPackage, fetchurl, fetchFromGitHub, phantomjs2 }: { lib, buildGoPackage, fetchurl, fetchFromGitHub, phantomjs2 }:
buildGoPackage rec { buildGoPackage rec {
version = "5.1.3"; version = "5.1.4";
name = "grafana-${version}"; name = "grafana-${version}";
goPackagePath = "github.com/grafana/grafana"; goPackagePath = "github.com/grafana/grafana";
@ -9,12 +9,12 @@ buildGoPackage rec {
rev = "v${version}"; rev = "v${version}";
owner = "grafana"; owner = "grafana";
repo = "grafana"; repo = "grafana";
sha256 = "09q4xrh4j02b8nrkskndahs039rhmcs8hrcgvnnpg36qqyvs1x0g"; sha256 = "09bpijjm7cm4p5ci04ihq55fy5zwpdcld791vdpk6m91ixpab2zc";
}; };
srcStatic = fetchurl { srcStatic = fetchurl {
url = "https://grafana-releases.s3.amazonaws.com/release/grafana-${version}.linux-x64.tar.gz"; url = "https://grafana-releases.s3.amazonaws.com/release/grafana-${version}.linux-x64.tar.gz";
sha256 = "131dxpjnzhsjh6c0fp48jhxf5piy6wh287pfm2s7pm4ywq9m0q46"; sha256 = "0ygfq4my3bdqs942l31w0695a6rwyrwq7jr23g0vgaqadamgbgkg";
}; };
preBuild = "export GOPATH=$GOPATH:$NIX_BUILD_TOP/go/src/${goPackagePath}/Godeps/_workspace"; preBuild = "export GOPATH=$GOPATH:$NIX_BUILD_TOP/go/src/${goPackagePath}/Godeps/_workspace";

View file

@ -2,7 +2,7 @@
buildGoPackage rec { buildGoPackage rec {
name = "node_exporter-${version}"; name = "node_exporter-${version}";
version = "0.15.2"; version = "0.16.0";
rev = "v${version}"; rev = "v${version}";
goPackagePath = "github.com/prometheus/node_exporter"; goPackagePath = "github.com/prometheus/node_exporter";
@ -11,10 +11,10 @@ buildGoPackage rec {
inherit rev; inherit rev;
owner = "prometheus"; owner = "prometheus";
repo = "node_exporter"; repo = "node_exporter";
sha256 = "1vxbkps80ba8c0ndawijg07am5gyc8y49h8fd0ky5h05zmkp25qv"; sha256 = "0rm6ahccgr1djpwvsa3p1kfal3mpy4a6g5w974pra84gk3krli5a";
}; };
# FIXME: megacli test fails # FIXME: tests fail due to read-only nix store
doCheck = false; doCheck = false;
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -3,14 +3,14 @@
let let
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
version = "3.3.9"; version = "3.3.10";
name = "arangodb-${version}"; name = "arangodb-${version}";
src = fetchFromGitHub { src = fetchFromGitHub {
repo = "arangodb"; repo = "arangodb";
owner = "arangodb"; owner = "arangodb";
rev = "v${version}"; rev = "v${version}";
sha256 = "1zr9byxlqd7s3rnmvdgv85mmk5xxjz0va1pj2gn6y28k569prcbs"; sha256 = "0c0n681k2z73klb5inhfdy2qzkba681kzg01gwpc6qdnvya8mk9f";
}; };
buildInputs = [ buildInputs = [

View file

@ -4,11 +4,11 @@ with stdenv.lib;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "neo4j-${version}"; name = "neo4j-${version}";
version = "3.4.0"; version = "3.4.1";
src = fetchurl { src = fetchurl {
url = "https://neo4j.com/artifact.php?name=neo4j-community-${version}-unix.tar.gz"; url = "https://neo4j.com/artifact.php?name=neo4j-community-${version}-unix.tar.gz";
sha256 = "1pccw3av72qqpyfsdyz72ab1lvc7fqraw14vi3hq67n96rsj017a"; sha256 = "1hgpgkmz0rgdppk1rl41017369qp9lfbrdk7j3qc5dq54x8rxbjp";
}; };
buildInputs = [ makeWrapper jre8 which gawk ]; buildInputs = [ makeWrapper jre8 which gawk ];

View file

@ -1,12 +1,12 @@
{ stdenv, fetchurl, lua }: { stdenv, fetchurl, lua }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
version = "4.0.9"; version = "4.0.10";
name = "redis-${version}"; name = "redis-${version}";
src = fetchurl { src = fetchurl {
url = "http://download.redis.io/releases/${name}.tar.gz"; url = "http://download.redis.io/releases/${name}.tar.gz";
sha256 = "0465bv6yxnwmas3wzg07vmrprv2pxhnr56hn5pxrybwf66y76kyz"; sha256 = "194cydhv3hf4v95ifvjvsqrs4jn3ffrkg5lvxj5d3y04lwsp9dhx";
}; };
buildInputs = [ lua ]; buildInputs = [ lua ];

View file

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "smcroute-${version}"; name = "smcroute-${version}";
version = "2.4.0"; version = "2.4.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "troglobit"; owner = "troglobit";
repo = "smcroute"; repo = "smcroute";
rev = version; rev = version;
sha256 = "12xwdwvl9h269armwak7grm4g944j2c89srha4lqx2zndx1ycg1r"; sha256 = "0wh7c15lglcgiap9pplqpd5abnxhfx3vh0nqjzvfnl82hwhnld1z";
}; };
nativeBuildInputs = [ autoreconfHook pkgconfig ]; nativeBuildInputs = [ autoreconfHook pkgconfig ];

View file

@ -2,13 +2,13 @@
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {
name = "xonsh-${version}"; name = "xonsh-${version}";
version = "0.6.6"; version = "0.6.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "scopatz"; owner = "scopatz";
repo = "xonsh"; repo = "xonsh";
rev = version; rev = version;
sha256= "09w7656qhqv3al52cl5lgzawvkbkpwjfnxyg0vyx0gbjs1hwiqjj"; sha256= "0vxdfq1wpajfypdl5lhvib50mk742dk8y375zf3h057hjb0khhgw";
}; };
LC_ALL = "en_US.UTF-8"; LC_ALL = "en_US.UTF-8";

View file

@ -5,11 +5,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "vips-${version}"; name = "vips-${version}";
version = "8.6.3"; version = "8.6.4";
src = fetchurl { src = fetchurl {
url = "https://github.com/jcupitt/libvips/releases/download/v${version}/${name}.tar.gz"; url = "https://github.com/jcupitt/libvips/releases/download/v${version}/${name}.tar.gz";
sha256 = "14h9w61gaimldmqaym0zhf9fkxjj1pkd5lhglhs6pxphynwxnnpq"; sha256 = "1x4ai997yfl4155r4k3m5fa5hj3030c4abi5g49kfarbr60a0ca6";
}; };
buildInputs = buildInputs =

View file

@ -1,4 +1,6 @@
{ stdenv, lib, fetchurl, cmake, fcitx, pkgconfig, qtbase, extra-cmake-modules }: { stdenv, lib, fetchurl, cmake, fcitx, pkgconfig, qtbase, extra-cmake-modules
, fetchpatch
}:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "fcitx-qt5-${version}"; name = "fcitx-qt5-${version}";
@ -9,6 +11,15 @@ stdenv.mkDerivation rec {
sha256 = "0z8ax0dxk88byic41mfaiahjdv1k8ciwn97xfjkkgr4ijgscdr8c"; sha256 = "0z8ax0dxk88byic41mfaiahjdv1k8ciwn97xfjkkgr4ijgscdr8c";
}; };
patches = [
# Fix build with Qt 5.11
# https://github.com/fcitx/fcitx-qt5/issues/34
(fetchpatch {
url = https://github.com/fcitx/fcitx-qt5/commit/af033e3d5305108eecc568adff7f8b2da5831ed6.diff;
sha256 = "14vfz1fw2k362wnqpglw766fg3d3mc8cmfgic2p96yyipjh9xx3b";
})
];
nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig ]; nativeBuildInputs = [ cmake extra-cmake-modules pkgconfig ];
buildInputs = [ fcitx qtbase ]; buildInputs = [ fcitx qtbase ];

View file

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "clex-${version}"; name = "clex-${version}";
version = "4.6.patch6"; version = "4.6.patch9";
src = fetchurl { src = fetchurl {
sha256 = "0bqa2hc9721d62cfsy5c7a5pzgh9b4px7g4q60xlybkwll19qbbp"; sha256 = "1qj5yp8k90wag5sb3zrm2pn90qqx3zbrgf2gqpqpdqmlgffnv1jc";
url = "${meta.homepage}/download/${name}.tar.gz"; url = "${meta.homepage}/download/${name}.tar.gz";
}; };

View file

@ -4,13 +4,13 @@
# There is also cdebootstrap now. Is that easier to maintain? # There is also cdebootstrap now. Is that easier to maintain?
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "debootstrap-${version}"; name = "debootstrap-${version}";
version = "1.0.101"; version = "1.0.102";
src = fetchurl { src = fetchurl {
# git clone git://git.debian.org/d-i/debootstrap.git # git clone git://git.debian.org/d-i/debootstrap.git
# I'd like to use the source. However it's lacking the lanny script ? (still true?) # I'd like to use the source. However it's lacking the lanny script ? (still true?)
url = "mirror://debian/pool/main/d/debootstrap/debootstrap_${version}.tar.gz"; url = "mirror://debian/pool/main/d/debootstrap/debootstrap_${version}.tar.gz";
sha256 = "1p1a81s8hq73byd7256iljdls389x2q7w6srgrgfmx5bl1csnzp3"; sha256 = "1i8fnxyf073dqywcvj6n32k1crzl7bwlmn373n5342pz71rmqrq9";
}; };
buildInputs = [ dpkg gettext gawk perl ]; buildInputs = [ dpkg gettext gawk perl ];

View file

@ -2,14 +2,14 @@
buildGoPackage rec { buildGoPackage rec {
name = "direnv-${version}"; name = "direnv-${version}";
version = "2.15.1"; version = "2.17.0";
goPackagePath = "github.com/direnv/direnv"; goPackagePath = "github.com/direnv/direnv";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "direnv"; owner = "direnv";
repo = "direnv"; repo = "direnv";
rev = "v${version}"; rev = "v${version}";
sha256 = "07kzfkv5ssys788j0f1bp73gd7b53vwv2jsxkd85zwb3kby1145v"; sha256 = "1dmanqpifx27cz41yc3ijpij0wrbgw9qny2d4n6jppfwf2qzyq4s";
}; };
postConfigure = '' postConfigure = ''

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "entr-${version}"; name = "entr-${version}";
version = "4.0"; version = "4.1";
src = fetchurl { src = fetchurl {
url = "http://entrproject.org/code/${name}.tar.gz"; url = "http://entrproject.org/code/${name}.tar.gz";
sha256 = "12vc3xp0z0abmsy5kbix0wmn0sca39c8miyga6cijydi128zxm2a"; sha256 = "0y7gvyf0iykpf3gfw09m21hy51m6qn4cpkbrm4nnn7pwrwycj0y5";
}; };
postPatch = '' postPatch = ''

View file

@ -2,11 +2,11 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ethtool-${version}"; name = "ethtool-${version}";
version = "4.16"; version = "4.17";
src = fetchurl { src = fetchurl {
url = "mirror://kernel/software/network/ethtool/${name}.tar.xz"; url = "mirror://kernel/software/network/ethtool/${name}.tar.xz";
sha256 = "00ss07jc7p276d83f6jpafgwyc9yiribciyqcgx9j86v49kpm5py"; sha256 = "11f5503mgcwjn1q4dvhjiqwnw3zmp2gbhirjvgfr71y72ys1wsy4";
}; };
meta = with stdenv.lib; { meta = with stdenv.lib; {

View file

@ -0,0 +1,25 @@
{ lib, fetchFromGitHub, rustPlatform, pkgconfig, openssl, systemd }:
rustPlatform.buildRustPackage rec {
name = "journaldriver-${version}";
version = "1.0.0";
cargoSha256 = "04llhriwsrjqnkbjgd22nhci6zmhadclnd8r2bw5092gwdamf49k";
src = fetchFromGitHub {
owner = "aprilabank";
repo = "journaldriver";
rev = "v${version}";
sha256 = "1163ghf7dxxchyawdaa7zdi8ly2pxmc005c2k549larbirjjbmgc";
};
buildInputs = [ openssl systemd ];
nativeBuildInputs = [ pkgconfig ];
meta = with lib; {
description = "Log forwarder from journald to Stackdriver Logging";
homepage = "https://github.com/aprilabank/journaldriver";
license = licenses.gpl3;
maintainers = [ maintainers.tazjin ];
platforms = platforms.linux;
};
}

View file

@ -38,7 +38,7 @@ buildGoPackage rec {
''; '';
homepage = https://godoc.org/github.com/gokcehan/lf; homepage = https://godoc.org/github.com/gokcehan/lf;
license = licenses.mit; license = licenses.mit;
platforms = platforms.linux; platforms = platforms.unix;
maintainers = with maintainers; [ primeos ]; maintainers = with maintainers; [ primeos ];
}; };
} }

View file

@ -3,13 +3,13 @@
with python3Packages; with python3Packages;
buildPythonApplication rec { buildPythonApplication rec {
name = "wakatime-${version}"; name = "wakatime-${version}";
version = "10.1.0"; version = "10.2.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "wakatime"; owner = "wakatime";
repo = "wakatime"; repo = "wakatime";
rev = version; rev = version;
sha256 = "0mq1b5hwm03jz1mhlfiwi8k5r6556r1nfv9h7qs3y32zrj9mvifv"; sha256 = "14b87x6pd80qdf2dxj9dd53k3a61i793cnrm4nqycn3d7vq2akqx";
}; };
# needs more dependencies from https://github.com/wakatime/wakatime/blob/191b302bfb5f272ae928c6d3867d06f3dfcba4a8/dev-requirements.txt # needs more dependencies from https://github.com/wakatime/wakatime/blob/191b302bfb5f272ae928c6d3867d06f3dfcba4a8/dev-requirements.txt

View file

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
''; '';
homepage = https://bitbucket.org/gotoh/connect/wiki/Home; homepage = https://bitbucket.org/gotoh/connect/wiki/Home;
license = stdenv.lib.licenses.gpl2Plus; license = stdenv.lib.licenses.gpl2Plus;
platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux; platforms = stdenv.lib.platforms.gnu ++ stdenv.lib.platforms.linux ++ stdenv.lib.platforms.darwin;
maintainers = with stdenv.lib.maintainers; [ jcumming ]; maintainers = with stdenv.lib.maintainers; [ jcumming ];
}; };
} }

View file

@ -2,7 +2,7 @@
asciidoc, libxml2, libxslt, docbook_xml_xslt }: asciidoc, libxml2, libxslt, docbook_xml_xslt }:
pythonPackages.buildPythonApplication rec { pythonPackages.buildPythonApplication rec {
version = "7.2.0"; version = "7.2.1";
name = "offlineimap-${version}"; name = "offlineimap-${version}";
namePrefix = ""; namePrefix = "";
@ -10,7 +10,7 @@ pythonPackages.buildPythonApplication rec {
owner = "OfflineIMAP"; owner = "OfflineIMAP";
repo = "offlineimap"; repo = "offlineimap";
rev = "v${version}"; rev = "v${version}";
sha256 = "0xyvqgy36n0bb41c4ffldyrcnaja5gpwx2ngbnk3qs22ldb2n1sb"; sha256 = "1m5i74baazwazqp98ssma968rnwzfl1nywb7icf0swc8447ps97q";
}; };
postPatch = '' postPatch = ''

Some files were not shown because too many files have changed in this diff Show more