diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index e54fac92a67..7ff22fb61fa 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -335,6 +335,12 @@
githubId = 2822871;
name = "Alistair Bill";
};
+ alkeryn = {
+ email = "plbraundev@gmail.com";
+ github = "Alkeryn";
+ githubId = 11599075;
+ name = "Pierre-Louis Braun";
+ };
all = {
email = "nix-commits@lists.science.uu.nl";
name = "Nix Committers";
@@ -3385,6 +3391,11 @@
githubId = 10544;
name = "Giuluo Eulisse";
};
+ ktor = {
+ email = "kruszewsky@gmail.com";
+ github = "ktor";
+ name = "Pawel Kruszewski";
+ };
ktosiek = {
email = "tomasz.kontusz@gmail.com";
github = "ktosiek";
@@ -3514,6 +3525,11 @@
githubId = 307589;
name = "Nathaniel Baxter";
};
+ lightbulbjim = {
+ email = "chris@killred.net";
+ github = "lightbulbjim";
+ name = "Chris Rendle-Short";
+ };
lightdiscord = {
email = "root@arnaud.sh";
github = "lightdiscord";
diff --git a/nixos/doc/manual/development/releases.xml b/nixos/doc/manual/development/releases.xml
index 3cb16d33cd4..1cdec64f69b 100755
--- a/nixos/doc/manual/development/releases.xml
+++ b/nixos/doc/manual/development/releases.xml
@@ -220,6 +220,30 @@
+
+ Release Management Team
+
+ For each release there are two release managers. After each release the
+ release manager having managed two releases steps down and the release
+ management team of the last release appoints a new release manager.
+
+
+ This makes sure a release management team always consists of one release
+ manager who already has managed one release and one release manager being
+ introduced to their role, making it easier to pass on knowledge and
+ experience.
+
+
+ A release manager's role and responsibilities are:
+
+
+ manage the release process
+ start discussions about features and changes for a given release
+ create a roadmap
+ release in cooperation with Eelco Dolstra
+ decide which bug fixes, features, etc... get backported after a release
+
+
Release schedule
diff --git a/nixos/modules/config/vte.nix b/nixos/modules/config/vte.nix
index 9024ceddaee..d4a8c926fef 100644
--- a/nixos/modules/config/vte.nix
+++ b/nixos/modules/config/vte.nix
@@ -42,7 +42,7 @@ in
config = mkMerge [
(mkIf config.programs.bash.vteIntegration {
- programs.bash.interactiveShellInit = vteInitSnippet;
+ programs.bash.interactiveShellInit = mkBefore vteInitSnippet;
})
(mkIf config.programs.zsh.vteIntegration {
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 79c72fc1422..388f4788b59 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -649,6 +649,7 @@
./services/networking/nullidentdmod.nix
./services/networking/nylon.nix
./services/networking/ocserv.nix
+ ./services/networking/ofono.nix
./services/networking/oidentd.nix
./services/networking/openfire.nix
./services/networking/openntpd.nix
diff --git a/nixos/modules/programs/environment.nix b/nixos/modules/programs/environment.nix
index 4d762314298..66eb8348266 100644
--- a/nixos/modules/programs/environment.nix
+++ b/nixos/modules/programs/environment.nix
@@ -21,6 +21,7 @@ in
PAGER = mkDefault "less -R";
EDITOR = mkDefault "nano";
XCURSOR_PATH = [ "$HOME/.icons" ];
+ XDG_CONFIG_DIRS = [ "/etc/xdg" ]; # needs to be before profile-relative paths to allow changes through environment.etc
};
environment.profiles = mkAfter
diff --git a/nixos/modules/programs/gnupg.nix b/nixos/modules/programs/gnupg.nix
index 9618d61a1f5..bcbc994efe9 100644
--- a/nixos/modules/programs/gnupg.nix
+++ b/nixos/modules/programs/gnupg.nix
@@ -83,7 +83,8 @@ in
systemd.user.sockets.dirmngr = mkIf cfg.dirmngr.enable {
wantedBy = [ "sockets.target" ];
};
-
+
+ environment.systemPackages = with pkgs; [ cfg.package ];
systemd.packages = [ cfg.package ];
environment.interactiveShellInit = ''
diff --git a/nixos/modules/rename.nix b/nixos/modules/rename.nix
index e32fa6fded4..65014b4beed 100644
--- a/nixos/modules/rename.nix
+++ b/nixos/modules/rename.nix
@@ -178,6 +178,9 @@ with lib;
The starting time can be configured via services.postgresqlBackup.startAt.
'')
+ # phpfpm
+ (mkRemovedOptionModule [ "services" "phpfpm" "poolConfigs" ] "Use services.phpfpm.pools instead.")
+
# zabbixServer
(mkRenamedOptionModule [ "services" "zabbixServer" "dbServer" ] [ "services" "zabbixServer" "database" "host" ])
diff --git a/nixos/modules/services/mail/roundcube.nix b/nixos/modules/services/mail/roundcube.nix
index e8b2e11bf72..bdedfa1bb70 100644
--- a/nixos/modules/services/mail/roundcube.nix
+++ b/nixos/modules/services/mail/roundcube.nix
@@ -4,6 +4,7 @@ with lib;
let
cfg = config.services.roundcube;
+ fpm = config.services.phpfpm.pools.roundcube;
in
{
options.services.roundcube = {
@@ -105,7 +106,7 @@ in
extraConfig = ''
location ~* \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
- fastcgi_pass unix:/run/phpfpm/roundcube;
+ fastcgi_pass unix:${fpm.socket};
include ${pkgs.nginx}/conf/fastcgi_params;
include ${pkgs.nginx}/conf/fastcgi.conf;
}
@@ -119,24 +120,27 @@ in
enable = true;
};
- services.phpfpm.poolConfigs.roundcube = ''
- listen = /run/phpfpm/roundcube
- listen.owner = nginx
- listen.group = nginx
- listen.mode = 0660
- user = nginx
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 2
- pm.min_spare_servers = 1
- pm.max_spare_servers = 20
- pm.max_requests = 500
- php_admin_value[error_log] = 'stderr'
- php_admin_flag[log_errors] = on
- php_admin_value[post_max_size] = 25M
- php_admin_value[upload_max_filesize] = 25M
- catch_workers_output = yes
- '';
+ services.phpfpm.pools.roundcube = {
+ user = "nginx";
+ phpOptions = ''
+ error_log = 'stderr'
+ log_errors = on
+ post_max_size = 25M
+ upload_max_filesize = 25M
+ '';
+ settings = mapAttrs (name: mkDefault) {
+ "listen.owner" = "nginx";
+ "listen.group" = "nginx";
+ "listen.mode" = "0660";
+ "pm" = "dynamic";
+ "pm.max_children" = 75;
+ "pm.start_servers" = 2;
+ "pm.min_spare_servers" = 1;
+ "pm.max_spare_servers" = 20;
+ "pm.max_requests" = 500;
+ "catch_workers_output" = true;
+ };
+ };
systemd.services.phpfpm-roundcube.after = [ "roundcube-setup.service" ];
systemd.services.roundcube-setup = let
diff --git a/nixos/modules/services/misc/zoneminder.nix b/nixos/modules/services/misc/zoneminder.nix
index cf56ae89b39..6e83d47df1c 100644
--- a/nixos/modules/services/misc/zoneminder.nix
+++ b/nixos/modules/services/misc/zoneminder.nix
@@ -2,6 +2,7 @@
let
cfg = config.services.zoneminder;
+ fpm = config.services.phpfpm.pools.zoneminder;
pkg = pkgs.zoneminder;
dirName = pkg.dirName;
@@ -19,8 +20,6 @@ let
useCustomDir = cfg.storageDir != null;
- socket = "/run/phpfpm/${dirName}.sock";
-
zms = "/cgi-bin/zms";
dirs = dirList: [ dirName ] ++ map (e: "${dirName}/${e}") dirList;
@@ -274,7 +273,7 @@ in {
fastcgi_param SCRIPT_FILENAME $request_filename;
fastcgi_param HTTP_PROXY "";
- fastcgi_pass unix:${socket};
+ fastcgi_pass unix:${fpm.socket};
}
}
'';
@@ -284,30 +283,27 @@ in {
phpfpm = lib.mkIf useNginx {
pools.zoneminder = {
- listen = socket;
+ inherit user group;
phpOptions = ''
date.timezone = "${config.time.timeZone}"
${lib.concatStringsSep "\n" (map (e:
"extension=${e.pkg}/lib/php/extensions/${e.name}.so") phpExtensions)}
'';
- extraConfig = ''
- user = ${user}
- group = ${group}
+ settings = lib.mapAttrs (name: lib.mkDefault) {
+ "listen.owner" = user;
+ "listen.group" = group;
+ "listen.mode" = "0660";
- listen.owner = ${user}
- listen.group = ${group}
- listen.mode = 0660
-
- pm = dynamic
- pm.start_servers = 1
- pm.min_spare_servers = 1
- pm.max_spare_servers = 2
- pm.max_requests = 500
- pm.max_children = 5
- pm.status_path = /$pool-status
- ping.path = /$pool-ping
- '';
+ "pm" = "dynamic";
+ "pm.start_servers" = 1;
+ "pm.min_spare_servers" = 1;
+ "pm.max_spare_servers" = 2;
+ "pm.max_requests" = 500;
+ "pm.max_children" = 5;
+ "pm.status_path" = "/$pool-status";
+ "ping.path" = "/$pool-ping";
+ };
};
};
};
diff --git a/nixos/modules/services/networking/ofono.nix b/nixos/modules/services/networking/ofono.nix
new file mode 100644
index 00000000000..40ef9433de0
--- /dev/null
+++ b/nixos/modules/services/networking/ofono.nix
@@ -0,0 +1,44 @@
+# Ofono daemon.
+{ config, lib, pkgs, ... }:
+
+with lib;
+
+let
+
+ cfg = config.services.ofono;
+
+ plugin_path =
+ lib.concatMapStringsSep ":"
+ (plugin: "${plugin}/lib/ofono/plugins")
+ cfg.plugins
+ ;
+
+in
+
+{
+ ###### interface
+ options = {
+ services.ofono = {
+ enable = mkEnableOption "Ofono";
+
+ plugins = mkOption {
+ type = types.listOf types.package;
+ default = [];
+ example = literalExample "[ pkgs.modem-manager-gui ]";
+ description = ''
+ The list of plugins to install.
+ '';
+ };
+ };
+ };
+
+ ###### implementation
+ config = mkIf cfg.enable {
+ services.dbus.packages = [ pkgs.ofono ];
+
+ systemd.packages = [ pkgs.ofono ];
+
+ systemd.services.ofono.environment.OFONO_PLUGIN_PATH = mkIf (cfg.plugins != []) plugin_path;
+
+ };
+}
diff --git a/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix b/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
index 6740131dccd..95c8fb16051 100644
--- a/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
+++ b/nixos/modules/services/web-apps/icingaweb2/icingaweb2.nix
@@ -1,7 +1,7 @@
{ config, lib, pkgs, ... }: with lib; let
cfg = config.services.icingaweb2;
+ fpm = config.services.phpfpm.pools.${poolName};
poolName = "icingaweb2";
- phpfpmSocketName = "/var/run/phpfpm/${poolName}.sock";
defaultConfig = {
global = {
@@ -164,27 +164,26 @@ in {
};
config = mkIf cfg.enable {
- services.phpfpm.poolConfigs = mkIf (cfg.pool == "${poolName}") {
- "${poolName}" = ''
- listen = "${phpfpmSocketName}"
- listen.owner = nginx
- listen.group = nginx
- listen.mode = 0600
- user = icingaweb2
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 2
- pm.min_spare_servers = 2
- pm.max_spare_servers = 10
- '';
+ services.phpfpm.pools = mkIf (cfg.pool == "${poolName}") {
+ "${poolName}" = {
+ user = "icingaweb2";
+ phpOptions = ''
+ extension = ${pkgs.phpPackages.imagick}/lib/php/extensions/imagick.so
+ date.timezone = "${cfg.timezone}"
+ '';
+ settings = mapAttrs (name: mkDefault) {
+ "listen.owner" = "nginx";
+ "listen.group" = "nginx";
+ "listen.mode" = "0600";
+ "pm" = "dynamic";
+ "pm.max_children" = 75;
+ "pm.start_servers" = 2;
+ "pm.min_spare_servers" = 2;
+ "pm.max_spare_servers" = 10;
+ };
+ };
};
- services.phpfpm.phpOptions = mkIf (cfg.pool == "${poolName}")
- ''
- extension = ${pkgs.phpPackages.imagick}/lib/php/extensions/imagick.so
- date.timezone = "${cfg.timezone}"
- '';
-
systemd.services."phpfpm-${poolName}".serviceConfig.ReadWritePaths = [ "/etc/icingaweb2" ];
services.nginx = {
@@ -208,7 +207,7 @@ in {
include ${config.services.nginx.package}/conf/fastcgi.conf;
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
- fastcgi_pass unix:${phpfpmSocketName};
+ fastcgi_pass unix:${fpm.socket};
fastcgi_param SCRIPT_FILENAME ${pkgs.icingaweb2}/public/index.php;
'';
};
diff --git a/nixos/modules/services/web-apps/limesurvey.nix b/nixos/modules/services/web-apps/limesurvey.nix
index 84a94fc446e..2797feb32eb 100644
--- a/nixos/modules/services/web-apps/limesurvey.nix
+++ b/nixos/modules/services/web-apps/limesurvey.nix
@@ -120,15 +120,15 @@ in
};
poolConfig = mkOption {
- type = types.lines;
- default = ''
- pm = dynamic
- pm.max_children = 32
- pm.start_servers = 2
- pm.min_spare_servers = 2
- pm.max_spare_servers = 4
- pm.max_requests = 500
- '';
+ type = with types; attrsOf (oneOf [ str int bool ]);
+ default = {
+ "pm" = "dynamic";
+ "pm.max_children" = 32;
+ "pm.start_servers" = 2;
+ "pm.min_spare_servers" = 2;
+ "pm.max_spare_servers" = 4;
+ "pm.max_requests" = 500;
+ };
description = ''
Options for the LimeSurvey PHP pool. See the documentation on php-fpm.conf
for details on configuration directives.
@@ -203,17 +203,12 @@ in
};
services.phpfpm.pools.limesurvey = {
- listen = "/run/phpfpm/limesurvey.sock";
- extraConfig = ''
- listen.owner = ${config.services.httpd.user};
- listen.group = ${config.services.httpd.group};
- user = ${user};
- group = ${group};
-
- env[LIMESURVEY_CONFIG] = ${limesurveyConfig}
-
- ${cfg.poolConfig}
- '';
+ inherit user group;
+ phpEnv.LIMESURVEY_CONFIG = "${limesurveyConfig}";
+ settings = {
+ "listen.owner" = config.services.httpd.user;
+ "listen.group" = config.services.httpd.group;
+ } // cfg.poolConfig;
};
services.httpd = {
@@ -241,7 +236,7 @@ in
- SetHandler "proxy:unix:${fpm.listen}|fcgi://localhost/"
+ SetHandler "proxy:unix:${fpm.socket}|fcgi://localhost/"
diff --git a/nixos/modules/services/web-apps/matomo.nix b/nixos/modules/services/web-apps/matomo.nix
index 14aca45a342..bf8b9dbcc21 100644
--- a/nixos/modules/services/web-apps/matomo.nix
+++ b/nixos/modules/services/web-apps/matomo.nix
@@ -225,22 +225,24 @@ in {
serviceConfig.UMask = "0007";
};
- services.phpfpm.poolConfigs = let
+ services.phpfpm.pools = let
# workaround for when both are null and need to generate a string,
# which is illegal, but as assertions apparently are being triggered *after* config generation,
# we have to avoid already throwing errors at this previous stage.
socketOwner = if (cfg.nginx != null) then config.services.nginx.user
else if (cfg.webServerUser != null) then cfg.webServerUser else "";
in {
- ${pool} = ''
- listen = "${phpSocket}"
- listen.owner = ${socketOwner}
- listen.group = root
- listen.mode = 0600
- user = ${user}
- env[PIWIK_USER_PATH] = ${dataDir}
- ${cfg.phpfpmProcessManagerConfig}
- '';
+ ${pool} = {
+ listen = phpSocket;
+ extraConfig = ''
+ listen.owner = ${socketOwner}
+ listen.group = root
+ listen.mode = 0600
+ user = ${user}
+ env[PIWIK_USER_PATH] = ${dataDir}
+ ${cfg.phpfpmProcessManagerConfig}
+ '';
+ };
};
diff --git a/nixos/modules/services/web-apps/mediawiki.nix b/nixos/modules/services/web-apps/mediawiki.nix
index 5bd5977e592..ec2568bf952 100644
--- a/nixos/modules/services/web-apps/mediawiki.nix
+++ b/nixos/modules/services/web-apps/mediawiki.nix
@@ -312,17 +312,17 @@ in
};
poolConfig = mkOption {
- type = types.lines;
- default = ''
- pm = dynamic
- pm.max_children = 32
- pm.start_servers = 2
- pm.min_spare_servers = 2
- pm.max_spare_servers = 4
- pm.max_requests = 500
- '';
+ type = with types; attrsOf (oneOf [ str int bool ]);
+ default = {
+ "pm" = "dynamic";
+ "pm.max_children" = 32;
+ "pm.start_servers" = 2;
+ "pm.min_spare_servers" = 2;
+ "pm.max_spare_servers" = 4;
+ "pm.max_requests" = 500;
+ };
description = ''
- Options for MediaWiki's PHP pool. See the documentation on php-fpm.conf
+ Options for the MediaWiki PHP pool. See the documentation on php-fpm.conf
for details on configuration directives.
'';
};
@@ -379,17 +379,12 @@ in
};
services.phpfpm.pools.mediawiki = {
- listen = "/run/phpfpm/mediawiki.sock";
- extraConfig = ''
- listen.owner = ${config.services.httpd.user}
- listen.group = ${config.services.httpd.group}
- user = ${user}
- group = ${group}
-
- env[MEDIAWIKI_CONFIG] = ${mediawikiConfig}
-
- ${cfg.poolConfig}
- '';
+ inherit user group;
+ phpEnv.MEDIAWIKI_CONFIG = "${mediawikiConfig}";
+ settings = {
+ "listen.owner" = config.services.httpd.user;
+ "listen.group" = config.services.httpd.group;
+ } // cfg.poolConfig;
};
services.httpd = {
@@ -403,7 +398,7 @@ in
- SetHandler "proxy:unix:${fpm.listen}|fcgi://localhost/"
+ SetHandler "proxy:unix:${fpm.socket}|fcgi://localhost/"
diff --git a/nixos/modules/services/web-apps/nextcloud.nix b/nixos/modules/services/web-apps/nextcloud.nix
index a0214a75d93..ada14ad3929 100644
--- a/nixos/modules/services/web-apps/nextcloud.nix
+++ b/nixos/modules/services/web-apps/nextcloud.nix
@@ -4,6 +4,7 @@ with lib;
let
cfg = config.services.nextcloud;
+ fpm = config.services.phpfpm.pools.nextcloud;
phpPackage = pkgs.php73;
phpPackages = pkgs.php73Packages;
@@ -410,25 +411,20 @@ in {
};
services.phpfpm = {
- pools.nextcloud = let
- phpAdminValues = (toKeyValue
- (foldr (a: b: a // b) {}
- (mapAttrsToList (k: v: { "php_admin_value[${k}]" = v; })
- phpOptions)));
- in {
- phpOptions = phpOptionsExtensions;
+ pools.nextcloud = {
+ user = "nextcloud";
+ group = "nginx";
+ phpOptions = phpOptionsExtensions + phpOptionsStr;
phpPackage = phpPackage;
- listen = "/run/phpfpm/nextcloud";
- extraConfig = ''
- listen.owner = nginx
- listen.group = nginx
- user = nextcloud
- group = nginx
- ${cfg.poolConfig}
- env[NEXTCLOUD_CONFIG_DIR] = ${cfg.home}/config
- env[PATH] = /run/wrappers/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin:/usr/bin:/bin
- ${phpAdminValues}
- '';
+ phpEnv = {
+ NEXTCLOUD_CONFIG_DIR = "${cfg.home}/config";
+ PATH = "/run/wrappers/bin:/nix/var/nix/profiles/default/bin:/run/current-system/sw/bin:/usr/bin:/bin";
+ };
+ settings = mapAttrs (name: mkDefault) {
+ "listen.owner" = "nginx";
+ "listen.group" = "nginx";
+ };
+ extraConfig = cfg.poolConfig;
};
};
@@ -489,7 +485,7 @@ in {
fastcgi_param HTTPS ${if cfg.https then "on" else "off"};
fastcgi_param modHeadersAvailable true;
fastcgi_param front_controller_active true;
- fastcgi_pass unix:/run/phpfpm/nextcloud;
+ fastcgi_pass unix:${fpm.socket};
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
fastcgi_read_timeout 120s;
diff --git a/nixos/modules/services/web-apps/restya-board.nix b/nixos/modules/services/web-apps/restya-board.nix
index b200a89260a..6a1b4143bc1 100644
--- a/nixos/modules/services/web-apps/restya-board.nix
+++ b/nixos/modules/services/web-apps/restya-board.nix
@@ -9,11 +9,11 @@ with lib;
let
cfg = config.services.restya-board;
+ fpm = config.services.phpfpm.pools.${poolName};
runDir = "/run/restya-board";
poolName = "restya-board";
- phpfpmSocketName = "/run/phpfpm/${poolName}.sock";
in
@@ -180,7 +180,7 @@ in
services.phpfpm.pools = {
"${poolName}" = {
- listen = phpfpmSocketName;
+ inherit (cfg) user group;
phpOptions = ''
date.timezone = "CET"
@@ -191,20 +191,18 @@ in
auth_password = ${cfg.email.password}
''}
'';
- extraConfig = ''
- listen.owner = nginx
- listen.group = nginx
- listen.mode = 0600
- user = ${cfg.user}
- group = ${cfg.group}
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 10
- pm.min_spare_servers = 5
- pm.max_spare_servers = 20
- pm.max_requests = 500
- catch_workers_output = 1
- '';
+ settings = mapAttrs (name: mkDefault) {
+ "listen.owner" = "nginx";
+ "listen.group" = "nginx";
+ "listen.mode" = "0600";
+ "pm" = "dynamic";
+ "pm.max_children" = 75;
+ "pm.start_servers" = 10;
+ "pm.min_spare_servers" = 5;
+ "pm.max_spare_servers" = 20;
+ "pm.max_requests" = 500;
+ "catch_workers_output" = 1;
+ };
};
};
@@ -241,7 +239,7 @@ in
tryFiles = "$uri =404";
extraConfig = ''
include ${pkgs.nginx}/conf/fastcgi_params;
- fastcgi_pass unix:${phpfpmSocketName};
+ fastcgi_pass unix:${fpm.socket};
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PHP_VALUE "upload_max_filesize=9G \n post_max_size=9G \n max_execution_time=200 \n max_input_time=200 \n memory_limit=256M";
diff --git a/nixos/modules/services/web-apps/selfoss.nix b/nixos/modules/services/web-apps/selfoss.nix
index cd0f743a5fb..56b7cafffe8 100644
--- a/nixos/modules/services/web-apps/selfoss.nix
+++ b/nixos/modules/services/web-apps/selfoss.nix
@@ -4,7 +4,6 @@ let
cfg = config.services.selfoss;
poolName = "selfoss_pool";
- phpfpmSocketName = "/run/phpfpm/${poolName}.sock";
dataDir = "/var/lib/selfoss";
@@ -116,21 +115,22 @@ in
config = mkIf cfg.enable {
- services.phpfpm.poolConfigs = mkIf (cfg.pool == "${poolName}") {
- "${poolName}" = ''
- listen = "${phpfpmSocketName}";
- listen.owner = nginx
- listen.group = nginx
- listen.mode = 0600
- user = nginx
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 10
- pm.min_spare_servers = 5
- pm.max_spare_servers = 20
- pm.max_requests = 500
- catch_workers_output = 1
- '';
+ services.phpfpm.pools = mkIf (cfg.pool == "${poolName}") {
+ "${poolName}" = {
+ user = "nginx";
+ settings = mapAttrs (name: mkDefault) {
+ "listen.owner" = "nginx";
+ "listen.group" = "nginx";
+ "listen.mode" = "0600";
+ "pm" = "dynamic";
+ "pm.max_children" = 75;
+ "pm.start_servers" = 10;
+ "pm.min_spare_servers" = 5;
+ "pm.max_spare_servers" = 20;
+ "pm.max_requests" = 500;
+ "catch_workers_output" = 1;
+ };
+ };
};
systemd.services.selfoss-config = {
diff --git a/nixos/modules/services/web-apps/tt-rss.nix b/nixos/modules/services/web-apps/tt-rss.nix
index 1bd9de93735..59b0ee1addc 100644
--- a/nixos/modules/services/web-apps/tt-rss.nix
+++ b/nixos/modules/services/web-apps/tt-rss.nix
@@ -521,20 +521,19 @@ let
services.phpfpm.pools = mkIf (cfg.pool == "${poolName}") {
"${poolName}" = {
- listen = "/var/run/phpfpm/${poolName}.sock";
- extraConfig = ''
- listen.owner = nginx
- listen.group = nginx
- listen.mode = 0600
- user = ${cfg.user}
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 10
- pm.min_spare_servers = 5
- pm.max_spare_servers = 20
- pm.max_requests = 500
- catch_workers_output = 1
- '';
+ inherit (cfg) user;
+ settings = mapAttrs (name: mkDefault) {
+ "listen.owner" = "nginx";
+ "listen.group" = "nginx";
+ "listen.mode" = "0600";
+ "pm" = "dynamic";
+ "pm.max_children" = 75;
+ "pm.start_servers" = 10;
+ "pm.min_spare_servers" = 5;
+ "pm.max_spare_servers" = 20;
+ "pm.max_requests" = 500;
+ "catch_workers_output" = 1;
+ };
};
};
@@ -552,7 +551,7 @@ let
locations."~ \.php$" = {
extraConfig = ''
fastcgi_split_path_info ^(.+\.php)(/.+)$;
- fastcgi_pass unix:${config.services.phpfpm.pools.${cfg.pool}.listen};
+ fastcgi_pass unix:${config.services.phpfpm.pools.${cfg.pool}.socket};
fastcgi_index index.php;
'';
};
diff --git a/nixos/modules/services/web-apps/wordpress.nix b/nixos/modules/services/web-apps/wordpress.nix
index 624b0089a03..98dc8458818 100644
--- a/nixos/modules/services/web-apps/wordpress.nix
+++ b/nixos/modules/services/web-apps/wordpress.nix
@@ -216,15 +216,15 @@ let
};
poolConfig = mkOption {
- type = types.lines;
- default = ''
- pm = dynamic
- pm.max_children = 32
- pm.start_servers = 2
- pm.min_spare_servers = 2
- pm.max_spare_servers = 4
- pm.max_requests = 500
- '';
+ type = with types; attrsOf (oneOf [ str int bool ]);
+ default = {
+ "pm" = "dynamic";
+ "pm.max_children" = 32;
+ "pm.start_servers" = 2;
+ "pm.min_spare_servers" = 2;
+ "pm.max_spare_servers" = 4;
+ "pm.max_requests" = 500;
+ };
description = ''
Options for the WordPress PHP pool. See the documentation on php-fpm.conf
for details on configuration directives.
@@ -280,15 +280,11 @@ in
services.phpfpm.pools = mapAttrs' (hostName: cfg: (
nameValuePair "wordpress-${hostName}" {
- listen = "/run/phpfpm/wordpress-${hostName}.sock";
- extraConfig = ''
- listen.owner = ${config.services.httpd.user}
- listen.group = ${config.services.httpd.group}
- user = ${user}
- group = ${group}
-
- ${cfg.poolConfig}
- '';
+ inherit user group;
+ settings = {
+ "listen.owner" = config.services.httpd.user;
+ "listen.group" = config.services.httpd.group;
+ } // cfg.poolConfig;
}
)) eachSite;
@@ -303,7 +299,7 @@ in
- SetHandler "proxy:unix:/run/phpfpm/wordpress-${hostName}.sock|fcgi://localhost/"
+ SetHandler "proxy:unix:${config.services.phpfpm.pools."wordpress-${hostName}".socket}|fcgi://localhost/"
diff --git a/nixos/modules/services/web-apps/zabbix.nix b/nixos/modules/services/web-apps/zabbix.nix
index 4b5334579a9..fa358ffafbc 100644
--- a/nixos/modules/services/web-apps/zabbix.nix
+++ b/nixos/modules/services/web-apps/zabbix.nix
@@ -133,15 +133,15 @@ in
};
poolConfig = mkOption {
- type = types.lines;
- default = ''
- pm = dynamic
- pm.max_children = 32
- pm.start_servers = 2
- pm.min_spare_servers = 2
- pm.max_spare_servers = 4
- pm.max_requests = 500
- '';
+ type = with types; attrsOf (oneOf [ str int bool ]);
+ default = {
+ "pm" = "dynamic";
+ "pm.max_children" = 32;
+ "pm.start_servers" = 2;
+ "pm.min_spare_servers" = 2;
+ "pm.max_spare_servers" = 4;
+ "pm.max_requests" = 500;
+ };
description = ''
Options for the Zabbix PHP pool. See the documentation on php-fpm.conf for details on configuration directives.
'';
@@ -160,6 +160,8 @@ in
];
services.phpfpm.pools.zabbix = {
+ inherit user;
+ group = config.services.httpd.group;
phpOptions = ''
# https://www.zabbix.com/documentation/current/manual/installation/install
memory_limit = 128M
@@ -177,15 +179,11 @@ in
'' + optionalString (cfg.database.type == "oracle") ''
extension=${pkgs.phpPackages.oci8}/lib/php/extensions/oci8.so
'';
- listen = "/run/phpfpm/zabbix.sock";
- extraConfig = ''
- listen.owner = ${config.services.httpd.user};
- listen.group = ${config.services.httpd.group};
- user = ${user};
- group = ${config.services.httpd.group};
- env[ZABBIX_CONFIG] = ${zabbixConfig}
- ${cfg.poolConfig}
- '';
+ phpEnv.ZABBIX_CONFIG = zabbixConfig;
+ settings = {
+ "listen.owner" = config.services.httpd.user;
+ "listen.group" = config.services.httpd.group;
+ } // cfg.poolConfig;
};
services.httpd = {
diff --git a/nixos/modules/services/web-servers/phpfpm/default.nix b/nixos/modules/services/web-servers/phpfpm/default.nix
index ffafbc5e92f..e95e71e0d99 100644
--- a/nixos/modules/services/web-servers/phpfpm/default.nix
+++ b/nixos/modules/services/web-servers/phpfpm/default.nix
@@ -4,41 +4,27 @@ with lib;
let
cfg = config.services.phpfpm;
- enabled = cfg.poolConfigs != {} || cfg.pools != {};
- stateDir = "/run/phpfpm";
+ runtimeDir = "/run/phpfpm";
- poolConfigs =
- (mapAttrs mapPoolConfig cfg.poolConfigs) //
- (mapAttrs mapPool cfg.pools);
+ toStr = value:
+ if true == value then "yes"
+ else if false == value then "no"
+ else toString value;
- mapPoolConfig = n: p: {
- phpPackage = cfg.phpPackage;
- phpOptions = cfg.phpOptions;
- config = p;
- };
-
- mapPool = n: p: {
- phpPackage = p.phpPackage;
- phpOptions = p.phpOptions;
- config = ''
- listen = ${p.listen}
- ${p.extraConfig}
- '';
- };
-
- fpmCfgFile = pool: conf: pkgs.writeText "phpfpm-${pool}.conf" ''
+ fpmCfgFile = pool: poolOpts: pkgs.writeText "phpfpm-${pool}.conf" ''
[global]
- error_log = syslog
- daemonize = no
- ${cfg.extraConfig}
+ ${concatStringsSep "\n" (mapAttrsToList (n: v: "${n} = ${toStr v}") cfg.settings)}
+ ${optionalString (cfg.extraConfig != null) cfg.extraConfig}
[${pool}]
- ${conf}
+ ${concatStringsSep "\n" (mapAttrsToList (n: v: "${n} = ${toStr v}") poolOpts.settings)}
+ ${concatStringsSep "\n" (mapAttrsToList (n: v: "env[${n}] = ${toStr v}") poolOpts.phpEnv)}
+ ${optionalString (poolOpts.extraConfig != null) poolOpts.extraConfig}
'';
- phpIni = pool: pkgs.runCommand "php.ini" {
- inherit (pool) phpPackage phpOptions;
+ phpIni = poolOpts: pkgs.runCommand "php.ini" {
+ inherit (poolOpts) phpPackage phpOptions;
preferLocalBuild = true;
nixDefaults = ''
sendmail_path = "/run/wrappers/bin/sendmail -t -i"
@@ -48,13 +34,138 @@ let
cat $phpPackage/etc/php.ini $nixDefaultsPath $phpOptionsPath > $out
'';
+ poolOpts = { name, ... }:
+ let
+ poolOpts = cfg.pools."${name}";
+ in
+ {
+ options = {
+ socket = mkOption {
+ type = types.str;
+ readOnly = true;
+ description = ''
+ Path to the unix socket file on which to accept FastCGI requests.
+ This option is read-only and managed by NixOS.
+ '';
+ };
+
+ listen = mkOption {
+ type = types.str;
+ default = "";
+ example = "/path/to/unix/socket";
+ description = ''
+ The address on which to accept FastCGI requests.
+ '';
+ };
+
+ phpPackage = mkOption {
+ type = types.package;
+ default = cfg.phpPackage;
+ defaultText = "config.services.phpfpm.phpPackage";
+ description = ''
+ The PHP package to use for running this PHP-FPM pool.
+ '';
+ };
+
+ phpOptions = mkOption {
+ type = types.lines;
+ default = cfg.phpOptions;
+ defaultText = "config.services.phpfpm.phpOptions";
+ description = ''
+ "Options appended to the PHP configuration file php.ini used for this PHP-FPM pool."
+ '';
+ };
+
+ phpEnv = lib.mkOption {
+ type = with types; attrsOf str;
+ default = {};
+ description = ''
+ Environment variables used for this PHP-FPM pool.
+ '';
+ example = literalExample ''
+ {
+ HOSTNAME = "$HOSTNAME";
+ TMP = "/tmp";
+ TMPDIR = "/tmp";
+ TEMP = "/tmp";
+ }
+ '';
+ };
+
+ user = mkOption {
+ type = types.str;
+ description = "User account under which this pool runs.";
+ };
+
+ group = mkOption {
+ type = types.str;
+ description = "Group account under which this pool runs.";
+ };
+
+ settings = mkOption {
+ type = with types; attrsOf (oneOf [ str int bool ]);
+ default = {};
+ description = ''
+ PHP-FPM pool directives. Refer to the "List of pool directives" section of
+
+ for details. Note that settings names must be enclosed in quotes (e.g.
+ "pm.max_children" instead of pm.max_children).
+ '';
+ example = literalExample ''
+ {
+ "pm" = "dynamic";
+ "pm.max_children" = 75;
+ "pm.start_servers" = 10;
+ "pm.min_spare_servers" = 5;
+ "pm.max_spare_servers" = 20;
+ "pm.max_requests" = 500;
+ }
+ '';
+ };
+
+ extraConfig = mkOption {
+ type = with types; nullOr lines;
+ default = null;
+ description = ''
+ Extra lines that go into the pool configuration.
+ See the documentation on php-fpm.conf for
+ details on configuration directives.
+ '';
+ };
+ };
+
+ config = {
+ socket = if poolOpts.listen == "" then "${runtimeDir}/${name}.sock" else poolOpts.listen;
+ group = mkDefault poolOpts.user;
+
+ settings = mapAttrs (name: mkDefault){
+ listen = poolOpts.socket;
+ user = poolOpts.user;
+ group = poolOpts.group;
+ };
+ };
+ };
+
in {
options = {
services.phpfpm = {
+ settings = mkOption {
+ type = with types; attrsOf (oneOf [ str int bool ]);
+ default = {};
+ description = ''
+ PHP-FPM global directives. Refer to the "List of global php-fpm.conf directives" section of
+
+ for details. Note that settings names must be enclosed in quotes (e.g.
+ "pm.max_children" instead of pm.max_children).
+ You need not specify the options error_log or
+ daemonize here, since they are generated by NixOS.
+ '';
+ };
+
extraConfig = mkOption {
- type = types.lines;
- default = "";
+ type = with types; nullOr lines;
+ default = null;
description = ''
Extra configuration that should be put in the global section of
the PHP-FPM configuration file. Do not specify the options
@@ -80,64 +191,56 @@ in {
''
date.timezone = "CET"
'';
- description =
- "Options appended to the PHP configuration file php.ini.";
- };
-
- poolConfigs = mkOption {
- default = {};
- type = types.attrsOf types.lines;
- example = literalExample ''
- { mypool = '''
- listen = /run/phpfpm/mypool
- user = nobody
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 10
- pm.min_spare_servers = 5
- pm.max_spare_servers = 20
- pm.max_requests = 500
- ''';
- }
- '';
description = ''
- A mapping between PHP-FPM pool names and their configurations.
- See the documentation on php-fpm.conf for
- details on configuration directives. If no pools are defined,
- the phpfpm service is disabled.
+ Options appended to the PHP configuration file php.ini.
'';
};
pools = mkOption {
- type = types.attrsOf (types.submodule (import ./pool-options.nix {
- inherit lib config;
- }));
+ type = types.attrsOf (types.submodule poolOpts);
default = {};
example = literalExample ''
{
mypool = {
- listen = "/path/to/unix/socket";
+ user = "php";
+ group = "php";
phpPackage = pkgs.php;
- extraConfig = '''
- user = nobody
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 10
- pm.min_spare_servers = 5
- pm.max_spare_servers = 20
- pm.max_requests = 500
+ settings = '''
+ "pm" = "dynamic";
+ "pm.max_children" = 75;
+ "pm.start_servers" = 10;
+ "pm.min_spare_servers" = 5;
+ "pm.max_spare_servers" = 20;
+ "pm.max_requests" = 500;
''';
}
}'';
description = ''
- PHP-FPM pools. If no pools or poolConfigs are defined, the PHP-FPM
+ PHP-FPM pools. If no pools are defined, the PHP-FPM
service is disabled.
'';
};
};
};
- config = mkIf enabled {
+ config = mkIf (cfg.pools != {}) {
+
+ warnings =
+ mapAttrsToList (pool: poolOpts: ''
+ Using config.services.phpfpm.pools.${pool}.listen is deprecated and will become unsupported in a future release. Please reference the read-only option config.services.phpfpm.pools.${pool}.socket to access the path of your socket.
+ '') (filterAttrs (pool: poolOpts: poolOpts.listen != "") cfg.pools) ++
+ mapAttrsToList (pool: poolOpts: ''
+ Using config.services.phpfpm.pools.${pool}.extraConfig is deprecated and will become unsupported in a future release. Please migrate your configuration to config.services.phpfpm.pools.${pool}.settings.
+ '') (filterAttrs (pool: poolOpts: poolOpts.extraConfig != null) cfg.pools) ++
+ optional (cfg.extraConfig != null) ''
+ Using config.services.phpfpm.extraConfig is deprecated and will become unsupported in a future release. Please migrate your configuration to config.services.phpfpm.settings.
+ ''
+ ;
+
+ services.phpfpm.settings = {
+ error_log = "syslog";
+ daemonize = false;
+ };
systemd.slices.phpfpm = {
description = "PHP FastCGI Process manager pools slice";
@@ -148,18 +251,15 @@ in {
wantedBy = [ "multi-user.target" ];
};
- systemd.services = flip mapAttrs' poolConfigs (pool: poolConfig:
+ systemd.services = mapAttrs' (pool: poolOpts:
nameValuePair "phpfpm-${pool}" {
description = "PHP FastCGI Process Manager service for pool ${pool}";
after = [ "network.target" ];
wantedBy = [ "phpfpm.target" ];
partOf = [ "phpfpm.target" ];
- preStart = ''
- mkdir -p ${stateDir}
- '';
serviceConfig = let
- cfgFile = fpmCfgFile pool poolConfig.config;
- iniFile = phpIni poolConfig;
+ cfgFile = fpmCfgFile pool poolOpts;
+ iniFile = phpIni poolOpts;
in {
Slice = "phpfpm.slice";
PrivateDevices = true;
@@ -168,10 +268,12 @@ in {
# XXX: We need AF_NETLINK to make the sendmail SUID binary from postfix work
RestrictAddressFamilies = "AF_UNIX AF_INET AF_INET6 AF_NETLINK";
Type = "notify";
- ExecStart = "${poolConfig.phpPackage}/bin/php-fpm -y ${cfgFile} -c ${iniFile}";
+ ExecStart = "${poolOpts.phpPackage}/bin/php-fpm -y ${cfgFile} -c ${iniFile}";
ExecReload = "${pkgs.coreutils}/bin/kill -USR2 $MAINPID";
+ RuntimeDirectory = "phpfpm";
+ RuntimeDirectoryPreserve = true; # Relevant when multiple processes are running
};
}
- );
+ ) cfg.pools;
};
}
diff --git a/nixos/modules/services/web-servers/phpfpm/pool-options.nix b/nixos/modules/services/web-servers/phpfpm/pool-options.nix
deleted file mode 100644
index d9ad7eff71f..00000000000
--- a/nixos/modules/services/web-servers/phpfpm/pool-options.nix
+++ /dev/null
@@ -1,57 +0,0 @@
-{ lib, config }:
-
-let
- fpmCfg = config.services.phpfpm;
-in
-
-with lib; {
-
- options = {
-
- listen = mkOption {
- type = types.str;
- example = "/path/to/unix/socket";
- description = ''
- The address on which to accept FastCGI requests.
- '';
- };
-
- phpPackage = mkOption {
- type = types.package;
- default = fpmCfg.phpPackage;
- defaultText = "config.services.phpfpm.phpPackage";
- description = ''
- The PHP package to use for running this PHP-FPM pool.
- '';
- };
-
- phpOptions = mkOption {
- type = types.lines;
- default = fpmCfg.phpOptions;
- defaultText = "config.services.phpfpm.phpOptions";
- description = ''
- "Options appended to the PHP configuration file php.ini used for this PHP-FPM pool."
- '';
- };
-
- extraConfig = mkOption {
- type = types.lines;
- example = ''
- user = nobody
- pm = dynamic
- pm.max_children = 75
- pm.start_servers = 10
- pm.min_spare_servers = 5
- pm.max_spare_servers = 20
- pm.max_requests = 500
- '';
-
- description = ''
- Extra lines that go into the pool configuration.
- See the documentation on php-fpm.conf for
- details on configuration directives.
- '';
- };
- };
-}
-
diff --git a/nixos/modules/services/x11/desktop-managers/gnome3.nix b/nixos/modules/services/x11/desktop-managers/gnome3.nix
index 6434731d951..b18d06a095d 100644
--- a/nixos/modules/services/x11/desktop-managers/gnome3.nix
+++ b/nixos/modules/services/x11/desktop-managers/gnome3.nix
@@ -29,10 +29,10 @@ let
chmod -R a+w $out/share/gsettings-schemas/nixos-gsettings-overrides
cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF
[org.gnome.desktop.background]
- picture-uri='${pkgs.nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png'
+ picture-uri='file://${pkgs.nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png'
[org.gnome.desktop.screensaver]
- picture-uri='${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png'
+ picture-uri='file://${pkgs.nixos-artwork.wallpapers.simple-dark-gray-bottom}/share/artwork/gnome/nix-wallpaper-simple-dark-gray_bottom.png'
[org.gnome.shell]
favorite-apps=[ 'org.gnome.Epiphany.desktop', 'evolution.desktop', 'org.gnome.Music.desktop', 'org.gnome.Photos.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Software.desktop' ]
diff --git a/nixos/modules/virtualisation/libvirtd.nix b/nixos/modules/virtualisation/libvirtd.nix
index 394b4ce5656..16b79d86919 100644
--- a/nixos/modules/virtualisation/libvirtd.nix
+++ b/nixos/modules/virtualisation/libvirtd.nix
@@ -104,6 +104,18 @@ in {
'';
};
+ onBoot = mkOption {
+ type = types.enum ["start" "ignore" ];
+ default = "start";
+ description = ''
+ Specifies the action to be done to / on the guests when the host boots.
+ The "start" option starts all guests that were running prior to shutdown
+ regardless of their autostart settings. The "ignore" option will not
+ start the formally running guest on boot. However, any guest marked as
+ autostart will still be automatically started by libvirtd.
+ '';
+ };
+
onShutdown = mkOption {
type = types.enum ["shutdown" "suspend" ];
default = "suspend";
@@ -221,6 +233,7 @@ in {
path = with pkgs; [ coreutils libvirt gawk ];
restartIfChanged = false;
+ environment.ON_BOOT = "${cfg.onBoot}";
environment.ON_SHUTDOWN = "${cfg.onShutdown}";
};
diff --git a/pkgs/applications/editors/android-studio/default.nix b/pkgs/applications/editors/android-studio/default.nix
index 75fb206c9e5..7f57d24b263 100644
--- a/pkgs/applications/editors/android-studio/default.nix
+++ b/pkgs/applications/editors/android-studio/default.nix
@@ -14,9 +14,9 @@ let
};
betaVersion = stableVersion;
latestVersion = { # canary & dev
- version = "3.6.0.6"; # "Android Studio 3.6 Canary 6"
- build = "192.5787298";
- sha256Hash = "1rri8b5nkxj65hq13s5d31fy08llf3ad9s5mn56ridd4nsy2c5df";
+ version = "3.6.0.7"; # "Android Studio 3.6 Canary 7"
+ build = "192.5807797";
+ sha256Hash = "1l47miiyd8z7v0hbvda06953pp9ilyrsma83gxqx35ghnc0n7g81";
};
in rec {
# Attributes are named by their corresponding release channels
diff --git a/pkgs/applications/misc/megasync/default.nix b/pkgs/applications/misc/megasync/default.nix
index ee6cfdb729f..8fcaf91ac98 100644
--- a/pkgs/applications/misc/megasync/default.nix
+++ b/pkgs/applications/misc/megasync/default.nix
@@ -15,15 +15,19 @@
, libuv
, libzen
, lsb-release
+, mkDerivation
, pkgconfig
-, qt5
+, qmake
+, qtbase
+, qtsvg
+, qttools
, sqlite
, swig
, unzip
, wget
}:
-stdenv.mkDerivation rec {
+mkDerivation rec {
pname = "megasync";
version = "4.1.1.0";
@@ -41,8 +45,8 @@ stdenv.mkDerivation rec {
doxygen
lsb-release
pkgconfig
- qt5.qmake
- qt5.qttools
+ qmake
+ qttools
swig
];
buildInputs = [
@@ -57,8 +61,8 @@ stdenv.mkDerivation rec {
libtool
libuv
libzen
- qt5.qtbase
- qt5.qtsvg
+ qtbase
+ qtsvg
sqlite
unzip
wget
diff --git a/pkgs/applications/misc/netsurf/buildsystem/default.nix b/pkgs/applications/misc/netsurf/buildsystem/default.nix
index 24377028ce7..36d5a70735a 100644
--- a/pkgs/applications/misc/netsurf/buildsystem/default.nix
+++ b/pkgs/applications/misc/netsurf/buildsystem/default.nix
@@ -3,11 +3,11 @@
stdenv.mkDerivation rec {
pname = "netsurf-buildsystem";
- version = "1.7";
+ version = "1.8";
src = fetchurl {
url = "http://download.netsurf-browser.org/libs/releases/buildsystem-${version}.tar.gz";
- sha256 = "1q23aaycv35ma5471l1gxib8lfq2s9kprrkaqgfc926d04rlbmhw";
+ sha256 = "0ffdjwskxlnh8sk40qqfgksbb1nrdzfxsshrscra0p4nqpkj98z6";
};
makeFlags = [
diff --git a/pkgs/applications/networking/irc/irccloud/default.nix b/pkgs/applications/networking/irc/irccloud/default.nix
new file mode 100644
index 00000000000..5648d027d9e
--- /dev/null
+++ b/pkgs/applications/networking/irc/irccloud/default.nix
@@ -0,0 +1,38 @@
+{ appimageTools, fetchurl, lib }:
+
+let
+ pname = "irccloud";
+ version = "0.13.0";
+ name = "${pname}-${version}";
+
+ src = fetchurl {
+ url = "https://github.com/irccloud/irccloud-desktop/releases/download/v${version}/IRCCloud-${version}-linux-x86_64.AppImage";
+ sha256 = "0ff69m5jav2c90918avsr5wvik2gds3klij3dzhkb352fgrd1s0l";
+ };
+
+ appimageContents = appimageTools.extractType2 {
+ inherit name src;
+ };
+
+in appimageTools.wrapType2 rec {
+ inherit name src;
+
+ extraPkgs = pkgs: with pkgs; [ at-spi2-core ];
+
+ extraInstallCommands = ''
+ mv $out/bin/${name} $out/bin/${pname}
+ install -m 444 -D ${appimageContents}/irccloud.desktop $out/share/applications/irccloud.desktop
+ install -m 444 -D ${appimageContents}/usr/share/icons/hicolor/512x512/apps/irccloud.png \
+ $out/share/icons/hicolor/512x512/apps/irccloud.png
+ substituteInPlace $out/share/applications/irccloud.desktop \
+ --replace 'Exec=AppRun' 'Exec=${pname}'
+ '';
+
+ meta = with lib; {
+ description = "A desktop client for IRCCloud";
+ homepage = "https://www.irccloud.com";
+ license = licenses.asl20;
+ platforms = [ "x86_64-linux" ];
+ maintainers = with maintainers; [ lightbulbjim ];
+ };
+}
diff --git a/pkgs/applications/networking/irc/weechat/scripts/default.nix b/pkgs/applications/networking/irc/weechat/scripts/default.nix
index 439e0e11614..cd9ecbf4337 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/default.nix
@@ -6,7 +6,7 @@
};
weechat-matrix-bridge = callPackage ./weechat-matrix-bridge {
- inherit (luaPackages) cjson;
+ inherit (luaPackages) cjson luaffi;
};
wee-slack = callPackage ./wee-slack {
diff --git a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
index 233fe418df3..ea5052f37a3 100644
--- a/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
+++ b/pkgs/applications/networking/irc/weechat/scripts/weechat-matrix-bridge/default.nix
@@ -31,9 +31,9 @@ stdenv.mkDerivation {
mkdir -p $out/{share,lib}
cp {matrix.lua,olm.lua} $out/share
- cp ${cjson}/lib/lua/5.2/cjson.so $out/lib/cjson.so
+ cp ${cjson}/lib/lua/${cjson.lua.luaversion}/cjson.so $out/lib/cjson.so
cp ${olm}/lib/libolm.so $out/lib/libolm.so
- cp ${luaffi}/lib/ffi.so $out/lib/ffi.so
+ cp ${luaffi}/lib/lua/${luaffi.lua.luaversion}/ffi.so $out/lib/ffi.so
'';
meta = with stdenv.lib; {
diff --git a/pkgs/applications/networking/modem-manager-gui/default.nix b/pkgs/applications/networking/modem-manager-gui/default.nix
index 2e61753346d..6dcc35f44d3 100644
--- a/pkgs/applications/networking/modem-manager-gui/default.nix
+++ b/pkgs/applications/networking/modem-manager-gui/default.nix
@@ -1,4 +1,19 @@
-{ stdenv, pkgconfig, python3, fetchhg, gtk3, glib, gdbm, gtkspell3, itstool, libappindicator-gtk3, perlPackages, glibcLocales, meson, ninja }:
+{ stdenv
+, pkgconfig
+, python3
+, fetchhg
+, gtk3
+, glib
+, gdbm
+, gtkspell3
+, ofono
+, itstool
+, libappindicator-gtk3
+, perlPackages
+, glibcLocales
+, meson
+, ninja
+}:
stdenv.mkDerivation rec {
pname = "modem-manager-gui";
@@ -10,14 +25,11 @@ stdenv.mkDerivation rec {
sha256 = "11iibh36567814h2bz41sa1072b86p1l13xyj670pwkh9k8kw8fd";
};
- LC_ALL = "en_US.utf-8";
-
nativeBuildInputs = [
pkgconfig
python3
perlPackages.Po4a
itstool
- glibcLocales
meson
ninja
];
@@ -27,6 +39,7 @@ stdenv.mkDerivation rec {
glib
gdbm
gtkspell3
+ ofono
libappindicator-gtk3
];
diff --git a/pkgs/applications/networking/remote/teamviewer/default.nix b/pkgs/applications/networking/remote/teamviewer/default.nix
index cfd8b155514..f9b17b42bde 100644
--- a/pkgs/applications/networking/remote/teamviewer/default.nix
+++ b/pkgs/applications/networking/remote/teamviewer/default.nix
@@ -1,9 +1,9 @@
{ mkDerivation, lib, fetchurl, autoPatchelfHook, makeWrapper, xdg_utils, dbus
-, qtbase, qtwebkit, qtx11extras, qtquickcontrols, glibc, libXrandr, libX11
+, qtbase, qtwebkit, qtx11extras, qtquickcontrols, glibc
+, libXrandr, libX11, libXext, libXdamage, libXtst, libSM, libXfixes
, wrapQtAppsHook
}:
-
mkDerivation rec {
pname = "teamviewer";
version = "14.5.1691";
@@ -44,8 +44,11 @@ mkDerivation rec {
--replace '/lib64/ld-linux-x86-64.so.2' '${glibc.out}/lib/ld-linux-x86-64.so.2'
substituteInPlace $out/share/teamviewer/tv_bin/script/tvw_config \
--replace '/var/run/' '/run/'
+
wrapProgram $out/share/teamviewer/tv_bin/script/teamviewer --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libXrandr libX11 ]}"
wrapProgram $out/share/teamviewer/tv_bin/teamviewerd --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libXrandr libX11 ]}"
+ wrapProgram $out/share/teamviewer/tv_bin/TeamViewer --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [ libXrandr libX11 ]}"
+ wrapProgram $out/share/teamviewer/tv_bin/TeamViewer_Desktop --prefix LD_LIBRARY_PATH : "${lib.makeLibraryPath [libXrandr libX11 libXext libXdamage libXtst libSM libXfixes ]}"
wrapQtApp $out/bin/teamviewer
'';
diff --git a/pkgs/applications/science/robotics/sumorobot-manager/default.nix b/pkgs/applications/science/robotics/sumorobot-manager/default.nix
new file mode 100644
index 00000000000..68b91dafb73
--- /dev/null
+++ b/pkgs/applications/science/robotics/sumorobot-manager/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, python3, qt5, fetchFromGitHub, wrapPython, pyqt5, pyserial }:
+
+stdenv.mkDerivation rec {
+ pname = "sumorobot-manager";
+ version = "0.9.0";
+
+ src = fetchFromGitHub {
+ owner = "robokoding";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "03zhb54c259a66hsahmv2ajbzwcjnfjj050wbjhw51zqzxinlgqr";
+ };
+
+ buildInputs = [ python3 ];
+ pythonPath = [
+ pyqt5 pyserial
+ ];
+
+ nativeBuildInputs = [ wrapPython qt5.wrapQtAppsHook ];
+
+ buildPhase = "true";
+
+ installPhase = ''
+ mkdir -p $out/opt/sumorobot-manager
+ cp -r main.py lib res $out/opt/sumorobot-manager
+ chmod -R 644 $out/opt/sumorobot-manager/lib/*
+ mkdir $out/bin
+ makeQtWrapper $out/opt/sumorobot-manager/main.py $out/bin/sumorobot-manager \
+ --run "cd $out/opt/sumorobot-manager"
+ '';
+
+ preFixup = ''
+ patchShebangs $out/opt/sumorobot-manager/main.py
+ wrapPythonProgramsIn "$out/opt" "$pythonPath"
+ '';
+
+ meta = with stdenv.lib; {
+ description = "Desktop App for managing SumoRobots";
+ homepage = "https://www.robokoding.com/kits/sumorobot/sumomanager/";
+ license = licenses.mit;
+ maintainers = with maintainers; [ abbradar ];
+ };
+}
diff --git a/pkgs/applications/version-management/bcompare/default.nix b/pkgs/applications/version-management/bcompare/default.nix
new file mode 100644
index 00000000000..3dc7792de2a
--- /dev/null
+++ b/pkgs/applications/version-management/bcompare/default.nix
@@ -0,0 +1,66 @@
+{ autoPatchelfHook, bzip2, cairo, coreutils, fetchurl, gdk-pixbuf, gnome2, gtk2, kcoreaddons, ki18n, kio, kservice, lib, qt4, qt511, qtbase, stdenv, runtimeShell }:
+
+stdenv.mkDerivation rec {
+ pname = "bcompare";
+ version = "4.2.10.23938";
+
+ src = fetchurl {
+ url = "https://www.scootersoftware.com/${pname}-${version}_amd64.deb";
+ sha256 = "1825s1lbaj20d712czmaaqg7mkwfb650r53af2y30j29p6yd4wal";
+ };
+
+ unpackPhase = ''
+ ar x $src
+ tar xfz data.tar.gz
+ '';
+
+ installPhase = ''
+ mkdir -p $out/bin $out/lib $out/share
+ cp -R usr/share $out/
+ cp -R usr/lib $out/
+ cp -R usr/bin $out/
+
+ # Remove library that refuses to be autoPatchelf'ed
+ rm $out/lib/beyondcompare/ext/bcompare_ext_kde.amd64.so
+
+ substituteInPlace $out/bin/bcompare \
+ --replace "/usr/lib/beyondcompare" "$out/lib/beyondcompare" \
+ --replace "/bin/bash" "${runtimeShell}"
+
+ # Create symlink bzip2 library
+ ln -s ${bzip2.out}/lib/libbz2.so.1 $out/lib/beyondcompare/libbz2.so.1.0
+ '';
+
+ nativeBuildInputs = [ autoPatchelfHook ];
+
+ buildInputs = [
+ stdenv.cc.cc.lib
+ gtk2
+ gnome2.pango
+ cairo
+ kio
+ kservice
+ ki18n
+ kcoreaddons
+ gdk-pixbuf
+ qt4
+ bzip2
+ ];
+
+ dontBuild = true;
+ dontConfigure = true;
+
+ meta = with stdenv.lib; {
+ description = "GUI application that allows to quickly and easily compare files and folders";
+ longDescription = ''
+ Beyond Compare is focused. Beyond Compare allows you to quickly and easily compare your files and folders.
+ By using simple, powerful commands you can focus on the differences you're interested in and ignore those you're not.
+ You can then merge the changes, synchronize your files, and generate reports for your records.
+ '';
+ homepage = "https://www.scootersoftware.com";
+ license = licenses.unfree;
+ maintainers = [ maintainers.ktor ];
+ platforms = [ "x86_64-linux" ];
+ };
+
+}
diff --git a/pkgs/applications/version-management/git-and-tools/default.nix b/pkgs/applications/version-management/git-and-tools/default.nix
index c7d77bf3498..e64254ed29f 100644
--- a/pkgs/applications/version-management/git-and-tools/default.nix
+++ b/pkgs/applications/version-management/git-and-tools/default.nix
@@ -121,6 +121,8 @@ let
git-stree = callPackage ./git-stree { };
+ git-subrepo = callPackage ./git-subrepo { };
+
git-sync = callPackage ./git-sync { };
git-test = callPackage ./git-test { };
diff --git a/pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix b/pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix
new file mode 100644
index 00000000000..24a1e1ac937
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-subrepo/default.nix
@@ -0,0 +1,58 @@
+{ stdenv, fetchFromGitHub, git, makeWrapper, which }:
+
+stdenv.mkDerivation rec {
+ pname = "git-subrepo";
+ version = "0.4.0";
+
+ src = fetchFromGitHub {
+ owner = "ingydotnet";
+ repo = "git-subrepo";
+ rev = version;
+ sha256 = "05m2dm9gq2nggwnxxdyq2kjj584sn2lxk66pr1qhjxnk81awj9l7";
+ };
+
+ nativeBuildInputs = [
+ makeWrapper
+ which
+ ];
+
+ buildInputs = [
+ git
+ ];
+
+ makeFlags = [
+ "PREFIX=${placeholder ''out''}"
+ "INSTALL_LIB=${placeholder ''out''}/bin"
+ "INSTALL_MAN=${placeholder ''out''}/share/man/man1"
+ ];
+
+ patches = [
+ # Allow zsh completion to work even though we aren't installing from a git
+ # clone. Also submitted upstream as
+ # https://github.com/ingydotnet/git-subrepo/pull/420
+ ./zsh-completion.patch
+ ];
+
+ postInstall = ''
+ ZSH_COMP_DIR="$out/share/zsh/vendor-completions"
+ mkdir -p "$ZSH_COMP_DIR"
+ cp share/zsh-completion/_git-subrepo "$ZSH_COMP_DIR/"
+
+ BASH_COMP_DIR="$out/share/bash-completion/completions"
+ mkdir -p "$BASH_COMP_DIR"
+ cp share/completion.bash "$BASH_COMP_DIR/git-subrepo"
+ '';
+
+ postFixup = ''
+ wrapProgram $out/bin/git-subrepo \
+ --prefix PATH : "${git}/bin"
+ '';
+
+ meta = with stdenv.lib; {
+ homepage = https://github.com/ingydotnet/git-subrepo;
+ description = "Git submodule alternative";
+ license = licenses.mit;
+ platforms = platforms.linux;
+ maintainers = [ maintainers.ryantrinkle ];
+ };
+}
diff --git a/pkgs/applications/version-management/git-and-tools/git-subrepo/zsh-completion.patch b/pkgs/applications/version-management/git-and-tools/git-subrepo/zsh-completion.patch
new file mode 100644
index 00000000000..dcba5ba6eea
--- /dev/null
+++ b/pkgs/applications/version-management/git-and-tools/git-subrepo/zsh-completion.patch
@@ -0,0 +1,32 @@
+diff --git a/pkg/bin/generate-completion.pl b/pkg/bin/generate-completion.pl
+index 85ae3b8..d3e423c 100644
+--- a/pkg/bin/generate-completion.pl
++++ b/pkg/bin/generate-completion.pl
+@@ -82,11 +82,6 @@ sub generate_zsh {
+
+ # DO NOT EDIT. This file generated by pkg/bin/generate-completion.pl.
+
+-if [[ -z $GIT_SUBREPO_ROOT ]]; then
+- echo 'GIT_SUBREPO_ROOT is null; has `/path/to/git-subrepo/.rc` been sourced?'
+- return 3
+-fi
+-
+ _git-subrepo() {
+ typeset -A opt_args
+ local curcontext="$curcontext" state line context
+diff --git a/share/zsh-completion/_git-subrepo b/share/zsh-completion/_git-subrepo
+index fc82be2..a8069d9 100644
+--- a/share/zsh-completion/_git-subrepo
++++ b/share/zsh-completion/_git-subrepo
+@@ -3,11 +3,6 @@
+
+ # DO NOT EDIT. This file generated by pkg/bin/generate-completion.pl.
+
+-if [[ -z $GIT_SUBREPO_ROOT ]]; then
+- echo 'GIT_SUBREPO_ROOT is null; has `/path/to/git-subrepo/.rc` been sourced?'
+- return 3
+-fi
+-
+ _git-subrepo() {
+ typeset -A opt_args
+ local curcontext="$curcontext" state line context
diff --git a/pkgs/applications/window-managers/compton/default.nix b/pkgs/applications/window-managers/compton/default.nix
index 843c331f91c..0941329bdbe 100644
--- a/pkgs/applications/window-managers/compton/default.nix
+++ b/pkgs/applications/window-managers/compton/default.nix
@@ -5,15 +5,13 @@
, libXinerama, libXext, xwininfo, libxdg_basedir }:
stdenv.mkDerivation rec {
pname = "compton";
- version = "7";
-
- COMPTON_VERSION = "v${version}";
+ version = "7.2";
src = fetchFromGitHub {
owner = "yshui";
repo = "compton";
- rev = COMPTON_VERSION;
- sha256 = "0f23dv2p1snlpzc91v38q6896ncz4zqzmh2d97yf66j78g21awas";
+ rev = "v${version}";
+ sha256 = "1vwa5f0nifc1913diqd6cp5k1dlfyc2ijxbcdj1s37ywpx6c63c3";
fetchSubmodules = true;
};
@@ -42,11 +40,6 @@ stdenv.mkDerivation rec {
"-Dbuild_docs=true"
];
- preBuild = ''
- git() { echo "$COMPTON_VERSION"; }
- export -f git
- '';
-
installFlags = [ "PREFIX=$(out)" ];
postInstall = ''
diff --git a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
index e947f8625c6..6f137cc65d5 100644
--- a/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
+++ b/pkgs/desktops/gnome-3/core/gnome-control-center/default.nix
@@ -1,15 +1,67 @@
-{ fetchurl, stdenv, substituteAll, meson, ninja, pkgconfig, gnome3, ibus, gettext, upower, wrapGAppsHook
-, libcanberra-gtk3, accountsservice, libpwquality, libpulseaudio
-, gdk-pixbuf, librsvg, libgudev, libsecret, gnome-color-manager
-, libxml2, polkit, libxslt, libgtop, libsoup, colord, colord-gtk
-, libkrb5, networkmanagerapplet, networkmanager, glibc
-, libwacom, samba, shared-mime-info, tzdata, libgnomekbd
-, docbook_xsl, modemmanager, clutter, clutter-gtk, cheese, gnome-session
-, fontconfig, sound-theme-freedesktop, grilo, python3
-, gtk3, glib, glib-networking, gsettings-desktop-schemas
-, gnome-desktop, gnome-settings-daemon, gnome-online-accounts
-, vino, gnome-bluetooth, tracker, adwaita-icon-theme
-, udisks2, gsound, libhandy, cups, mutter }:
+{ fetchurl
+, stdenv
+, substituteAll
+, accountsservice
+, adwaita-icon-theme
+, cheese
+, clutter
+, clutter-gtk
+, colord
+, colord-gtk
+, cups
+, docbook_xsl
+, fontconfig
+, gdk-pixbuf
+, gettext
+, glib
+, glib-networking
+, glibc
+, gnome-bluetooth
+, gnome-color-manager
+, gnome-desktop
+, gnome-online-accounts
+, gnome-session
+, gnome-settings-daemon
+, gnome3
+, grilo
+, grilo-plugins
+, gsettings-desktop-schemas
+, gsound
+, gtk3
+, ibus
+, libcanberra-gtk3
+, libgnomekbd
+, libgtop
+, libgudev
+, libhandy
+, libkrb5
+, libpulseaudio
+, libpwquality
+, librsvg
+, libsecret
+, libsoup
+, libwacom
+, libxml2
+, libxslt
+, meson
+, modemmanager
+, mutter
+, networkmanager
+, networkmanagerapplet
+, ninja
+, pkgconfig
+, polkit
+, python3
+, samba
+, shared-mime-info
+, sound-theme-freedesktop
+, tracker
+, tzdata
+, udisks2
+, upower
+, vino
+, wrapGAppsHook
+}:
stdenv.mkDerivation rec {
pname = "gnome-control-center";
@@ -21,20 +73,61 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [
- meson ninja pkgconfig gettext wrapGAppsHook libxslt docbook_xsl
- shared-mime-info python3
+ docbook_xsl
+ gettext
+ libxslt
+ meson
+ ninja
+ pkgconfig
+ python3
+ shared-mime-info
+ wrapGAppsHook
];
buildInputs = [
- ibus gtk3 glib glib-networking upower gsettings-desktop-schemas
- libxml2 gnome-desktop gnome-settings-daemon polkit libgtop
- gnome-online-accounts libsoup colord libpulseaudio fontconfig colord-gtk
- accountsservice libkrb5 networkmanagerapplet libwacom samba
- grilo libpwquality vino libcanberra-gtk3 libgudev libsecret
- gdk-pixbuf adwaita-icon-theme librsvg clutter clutter-gtk cheese
- networkmanager modemmanager gnome-bluetooth tracker
- udisks2 gsound libhandy
+ accountsservice
+ adwaita-icon-theme
+ cheese
+ clutter
+ clutter-gtk
+ colord
+ colord-gtk
+ fontconfig
+ gdk-pixbuf
+ glib
+ glib-networking
+ gnome-bluetooth
+ gnome-desktop
+ gnome-online-accounts
+ gnome-settings-daemon
+ grilo
+ grilo-plugins # for setting wallpaper from Flickr
+ gsettings-desktop-schemas
+ gsound
+ gtk3
+ ibus
+ libcanberra-gtk3
+ libgtop
+ libgudev
+ libhandy
+ libkrb5
+ libpulseaudio
+ libpwquality
+ librsvg
+ libsecret
+ libsoup
+ libwacom
+ libxml2
+ modemmanager
mutter # schemas for the keybindings
+ networkmanager
+ networkmanagerapplet
+ polkit
+ samba
+ tracker
+ udisks2
+ upower
+ vino
];
patches = [
diff --git a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
index dbcb992c425..b273bbece96 100644
--- a/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
+++ b/pkgs/desktops/pantheon/desktop/elementary-gsettings-schemas/default.nix
@@ -44,7 +44,7 @@ runCommand "elementary-gsettings-desktop-schemas" {}
cat - > $out/share/gsettings-schemas/nixos-gsettings-overrides/glib-2.0/schemas/nixos-defaults.gschema.override <<- EOF
[org.gnome.desktop.background]
- picture-uri='${nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png'
+ picture-uri='file://${nixos-artwork.wallpapers.simple-dark-gray}/share/artwork/gnome/nix-wallpaper-simple-dark-gray.png'
primary-color='#000000'
${extraGSettingsOverrides}
diff --git a/pkgs/development/compilers/go/1.11.nix b/pkgs/development/compilers/go/1.11.nix
index 56a386d8b97..a8787639053 100644
--- a/pkgs/development/compilers/go/1.11.nix
+++ b/pkgs/development/compilers/go/1.11.nix
@@ -30,11 +30,11 @@ in
stdenv.mkDerivation rec {
pname = "go";
- version = "1.11.12";
+ version = "1.11.13";
src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz";
- sha256 = "09k9zmq7hhgg0bf1y7rwa0kn7q1vkkr94cmg2iv9lq3najh5nykd";
+ sha256 = "0xj0pbviikdf8g0sfz5hwxf7hwz8b8g5akqnrvyclhgnsdghjcjh";
};
# perl is used for testing go vet
diff --git a/pkgs/development/compilers/go/1.12.nix b/pkgs/development/compilers/go/1.12.nix
index 098870c9808..dae4c173223 100644
--- a/pkgs/development/compilers/go/1.12.nix
+++ b/pkgs/development/compilers/go/1.12.nix
@@ -30,11 +30,11 @@ in
stdenv.mkDerivation rec {
pname = "go";
- version = "1.12.7";
+ version = "1.12.9";
src = fetchurl {
url = "https://dl.google.com/go/go${version}.src.tar.gz";
- sha256 = "04rvwj69gmw3bz8pw5pf10r21ar0pgpnswp15nkddf04dxyl9s4m";
+ sha256 = "1z32imbwmpkzgyh5c3vi7rbvzbq94xjk5qi2xm9sccj7kknmc3mb";
};
# perl is used for testing go vet
diff --git a/pkgs/development/compilers/graalvm/enterprise-edition.nix b/pkgs/development/compilers/graalvm/enterprise-edition.nix
index 73023a7668e..84cb38aa8d1 100644
--- a/pkgs/development/compilers/graalvm/enterprise-edition.nix
+++ b/pkgs/development/compilers/graalvm/enterprise-edition.nix
@@ -3,26 +3,26 @@
let
graalvm8-ee = stdenv.mkDerivation rec {
pname = "graalvm8-ee";
- version = "19.1.1";
+ version = "19.2.0";
srcs = [
(requireFile {
name = "graalvm-ee-linux-amd64-${version}.tar.gz";
- sha256 = "1ayg4chiw08jbrivmsylh6275sn0ygzc0iaic28fk7hhw5dc6r2f";
+ sha256 = "1j56lyids48zyjhxk8xl4niy8hk6qzi1aj7c55yfh62id8v6cpbw";
url = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
})
(requireFile {
name = "native-image-installable-svm-svmee-linux-amd64-${version}.jar";
- sha256 = "1mvc4id193gl482fnjcgh4dz29ifqwigqq68ib0i1p3ks1nnj717";
+ sha256 = "07c25l27msxccqrbz4bknz0sxsl0z2k8990cdfkbrgxvhxspfnnm";
url = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
})
(requireFile {
name = "python-installable-svm-svmee-linux-amd64-${version}.jar";
- sha256 = "0q7sggqk5myad053dsfw2i1n8v4wspahg1ac7zr3y3srqvdb0xfp";
+ sha256 = "1c7kpz56w9p418li97ymixdwywscr85vhn7jkzxq71bj7ia7pxwz";
url = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
})
(requireFile {
name = "ruby-installable-svm-svmee-linux-amd64-${version}.jar";
- sha256 = "1xax1bg155d74jhv7h0qb7vbc95jy4wm4bvbpvr76ivzn7qaml6j";
+ sha256 = "13jfm5qpxqxz7f5n9yyvqrv1vwigifrjwk3hssp23maski2ssys1";
url = "https://www.oracle.com/technetwork/graalvm/downloads/index.html";
})
];
diff --git a/pkgs/development/compilers/solc/default.nix b/pkgs/development/compilers/solc/default.nix
index 6ab55fbd5c0..b0fdc886378 100644
--- a/pkgs/development/compilers/solc/default.nix
+++ b/pkgs/development/compilers/solc/default.nix
@@ -1,9 +1,10 @@
{ stdenv, fetchzip, boost, cmake, ncurses, python2
-, z3Support ? true, z3 ? null
+, z3Support ? true, z3 ? null, cvc4Support ? true, cvc4 ? null
+, cln ? null, gmp ? null
}:
-assert z3Support -> z3 != null;
-assert z3Support -> stdenv.lib.versionAtLeast z3.version "4.6.0";
+assert z3Support -> z3 != null && stdenv.lib.versionAtLeast z3.version "4.6.0";
+assert cvc4Support -> cvc4 != null && cln != null && gmp != null;
let
jsoncppURL = https://github.com/open-source-parsers/jsoncpp/archive/1.8.4.tar.gz;
@@ -16,12 +17,12 @@ in
stdenv.mkDerivation rec {
pname = "solc";
- version = "0.5.10";
+ version = "0.5.11";
# upstream suggests avoid using archive generated by github
src = fetchzip {
url = "https://github.com/ethereum/solidity/releases/download/v${version}/solidity_${version}.tar.gz";
- sha256 = "1ns562h8blvv32lz462rf5835fs2hgn698mvi6ss5y7ar6k5y5xw";
+ sha256 = "0679s5pqbfy7fgpb4f3ppgj8iafxb64g046v8vhp29mf3dsdcnyl";
};
patches = stdenv.lib.optionals buildSharedLibs [ ./patches/shared-libs-install.patch ];
@@ -37,10 +38,14 @@ stdenv.mkDerivation rec {
"-DBUILD_SHARED_LIBS=ON"
] ++ stdenv.lib.optionals (!z3Support) [
"-DUSE_Z3=OFF"
+ ] ++ stdenv.lib.optionals (!cvc4Support) [
+ "-DUSE_CVC4=OFF"
];
nativeBuildInputs = [ cmake ];
- buildInputs = [ boost ] ++ stdenv.lib.optionals z3Support [ z3 ];
+ buildInputs = [ boost ]
+ ++ stdenv.lib.optionals z3Support [ z3 ]
+ ++ stdenv.lib.optionals cvc4Support [ cvc4 cln gmp ];
checkInputs = [ ncurses python2 ];
# Test fails on darwin for unclear reason
diff --git a/pkgs/development/interpreters/evcxr/cargo-lock.patch b/pkgs/development/interpreters/evcxr/cargo-lock.patch
deleted file mode 100644
index 6feaf12844c..00000000000
--- a/pkgs/development/interpreters/evcxr/cargo-lock.patch
+++ /dev/null
@@ -1,684 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-new file mode 100644
-index 0000000..edf585d
---- /dev/null
-+++ b/Cargo.lock
-@@ -0,0 +1,661 @@
-+# This file is automatically @generated by Cargo.
-+# It is not intended for manual editing.
-+[[package]]
-+name = "aho-corasick"
-+version = "0.6.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "approx"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "argon2rs"
-+version = "0.2.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "arrayvec"
-+version = "0.4.10"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "autocfg"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "backtrace"
-+version = "0.3.15"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustc-demangle 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "backtrace-sys"
-+version = "0.1.28"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "base64"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "bitflags"
-+version = "1.0.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "blake2-rfc"
-+version = "0.2.18"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "byteorder"
-+version = "1.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "cc"
-+version = "1.0.36"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "cfg-if"
-+version = "0.1.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "cgmath"
-+version = "0.16.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "approx 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "cloudabi"
-+version = "0.0.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "colored"
-+version = "1.8.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winconsole 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "constant_time_eq"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "dirs"
-+version = "1.0.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_users 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "evcxr"
-+version = "0.3.3"
-+dependencies = [
-+ "backtrace 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "json 0.11.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "sig 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "evcxr_repl"
-+version = "0.3.3"
-+dependencies = [
-+ "colored 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "dirs 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "evcxr 0.3.3",
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rustyline 3.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "evcxr_runtime"
-+version = "1.1.0"
-+dependencies = [
-+ "base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "failure"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "backtrace 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "failure_derive"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "fuchsia-cprng"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "json"
-+version = "0.11.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "lazy_static"
-+version = "1.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "libc"
-+version = "0.2.54"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "libloading"
-+version = "0.5.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cc 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "log"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "memchr"
-+version = "2.2.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "nix"
-+version = "0.11.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "bitflags 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cc 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "nodrop"
-+version = "0.1.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.1.43"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "num-traits"
-+version = "0.2.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "proc-macro2"
-+version = "0.4.27"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "quote"
-+version = "0.6.12"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.4.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand"
-+version = "0.6.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_chacha"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.3.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_core"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rand_hc"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_isaac"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_jitter"
-+version = "0.1.4"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_os"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_pcg"
-+version = "0.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rand_xorshift"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rdrand"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "redox_syscall"
-+version = "0.1.54"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "redox_users"
-+version = "0.3.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "argon2rs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "regex"
-+version = "1.1.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "regex-syntax"
-+version = "0.6.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "remove_dir_all"
-+version = "0.5.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "rgb"
-+version = "0.8.13"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rustc-demangle"
-+version = "0.1.14"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "rustyline"
-+version = "3.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "dirs 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "utf8parse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "scoped_threadpool"
-+version = "0.1.9"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "sig"
-+version = "1.0.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "syn"
-+version = "0.15.27"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "synstructure"
-+version = "0.10.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "tempfile"
-+version = "3.0.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "thread_local"
-+version = "0.3.6"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "ucd-util"
-+version = "0.1.3"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-segmentation"
-+version = "1.2.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-width"
-+version = "0.1.5"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "unicode-xid"
-+version = "0.1.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "utf8-ranges"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "utf8parse"
-+version = "0.1.1"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "void"
-+version = "1.0.2"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winapi"
-+version = "0.3.7"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[[package]]
-+name = "winapi-i686-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winapi-x86_64-pc-windows-gnu"
-+version = "0.4.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+
-+[[package]]
-+name = "winconsole"
-+version = "0.10.0"
-+source = "registry+https://github.com/rust-lang/crates.io-index"
-+dependencies = [
-+ "cgmath 0.16.1 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "rgb 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)",
-+ "winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
-+]
-+
-+[metadata]
-+"checksum aho-corasick 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "81ce3d38065e618af2d7b77e10c5ad9a069859b4be3c2250f674af3840d9c8a5"
-+"checksum approx 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "08abcc3b4e9339e33a3d0a5ed15d84a687350c05689d825e0f6655eef9e76a94"
-+"checksum argon2rs 0.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3f67b0b6a86dae6e67ff4ca2b6201396074996379fba2b92ff649126f37cb392"
-+"checksum arrayvec 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "92c7fb76bc8826a8b33b4ee5bb07a247a81e76764ab4d55e8f73e3a4d8808c71"
-+"checksum autocfg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "a6d640bee2da49f60a4068a7fae53acde8982514ab7bae8b8cea9e88cbcfd799"
-+"checksum backtrace 0.3.15 (registry+https://github.com/rust-lang/crates.io-index)" = "f106c02a3604afcdc0df5d36cc47b44b55917dbaf3d808f71c163a0ddba64637"
-+"checksum backtrace-sys 0.1.28 (registry+https://github.com/rust-lang/crates.io-index)" = "797c830ac25ccc92a7f8a7b9862bde440715531514594a6154e3d4a54dd769b6"
-+"checksum base64 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e"
-+"checksum bitflags 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "bd1fa8ad26490b0a5cfec99089952250301b6716cdeaa7c9ab229598fb82ab66"
-+"checksum blake2-rfc 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6d530bdd2d52966a6d03b7a964add7ae1a288d25214066fd4b600f0f796400"
-+"checksum byteorder 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a019b10a2a7cdeb292db131fc8113e57ea2a908f6e7894b0c3c671893b65dbeb"
-+"checksum cc 1.0.36 (registry+https://github.com/rust-lang/crates.io-index)" = "a0c56216487bb80eec9c4516337b2588a4f2a2290d72a1416d930e4dcdb0c90d"
-+"checksum cfg-if 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "11d43355396e872eefb45ce6342e4374ed7bc2b3a502d1b28e36d6e23c05d1f4"
-+"checksum cgmath 0.16.1 (registry+https://github.com/rust-lang/crates.io-index)" = "64a4b57c8f4e3a2e9ac07e0f6abc9c24b6fc9e1b54c3478cfb598f3d0023e51c"
-+"checksum cloudabi 0.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f"
-+"checksum colored 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6cdb90b60f2927f8d76139c72dbde7e10c3a2bc47c8594c9c7a66529f2687c03"
-+"checksum constant_time_eq 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8ff012e225ce166d4422e0e78419d901719760f62ae2b7969ca6b564d1b54a9e"
-+"checksum dirs 1.0.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3fd78930633bd1c6e35c4b42b1df7b0cbc6bc191146e512bb3bedf243fcc3901"
-+"checksum failure 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "795bd83d3abeb9220f257e597aa0080a508b27533824adf336529648f6abf7e2"
-+"checksum failure_derive 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "ea1063915fd7ef4309e222a5a07cf9c319fb9c7836b1f89b85458672dbb127e1"
-+"checksum fuchsia-cprng 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba"
-+"checksum json 0.11.13 (registry+https://github.com/rust-lang/crates.io-index)" = "9ad0485404155f45cce53a40d4b2d6ac356418300daed05273d9e26f91c390be"
-+"checksum lazy_static 1.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bc5729f27f159ddd61f4df6228e827e86643d4d3e7c32183cb30a1c08f604a14"
-+"checksum libc 0.2.54 (registry+https://github.com/rust-lang/crates.io-index)" = "c6785aa7dd976f5fbf3b71cfd9cd49d7f783c1ff565a858d71031c6c313aa5c6"
-+"checksum libloading 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9c3ad660d7cb8c5822cd83d10897b0f1f1526792737a179e73896152f85b88c2"
-+"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
-+"checksum memchr 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2efc7bc57c883d4a4d6e3246905283d8dae951bb3bd32f49d6ef297f546e1c39"
-+"checksum nix 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d37e713a259ff641624b6cb20e3b12b2952313ba36b6823c0f16e6cfd9e5de17"
-+"checksum nodrop 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "2f9667ddcc6cc8a43afc9b7917599d7216aa09c463919ea32c59ed6cac8bc945"
-+"checksum num-traits 0.1.43 (registry+https://github.com/rust-lang/crates.io-index)" = "92e5113e9fd4cc14ded8e499429f396a20f98c772a47cc8622a736e1ec843c31"
-+"checksum num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "0b3a5d7cc97d6d30d8b9bc8fa19bf45349ffe46241e8816f50f62f6d6aaabee1"
-+"checksum proc-macro2 0.4.27 (registry+https://github.com/rust-lang/crates.io-index)" = "4d317f9caece796be1980837fd5cb3dfec5613ebdb04ad0956deea83ce168915"
-+"checksum quote 0.6.12 (registry+https://github.com/rust-lang/crates.io-index)" = "faf4799c5d274f3868a4aae320a0a182cbd2baee377b378f080e16a23e9d80db"
-+"checksum rand 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "552840b97013b1a26992c11eac34bdd778e464601a4c2054b5f0bff7c6761293"
-+"checksum rand 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca"
-+"checksum rand_chacha 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef"
-+"checksum rand_core 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b"
-+"checksum rand_core 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d0e7a549d590831370895ab7ba4ea0c1b6b011d106b5ff2da6eee112615e6dc0"
-+"checksum rand_hc 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4"
-+"checksum rand_isaac 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08"
-+"checksum rand_jitter 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b"
-+"checksum rand_os 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071"
-+"checksum rand_pcg 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44"
-+"checksum rand_xorshift 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c"
-+"checksum rdrand 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2"
-+"checksum redox_syscall 0.1.54 (registry+https://github.com/rust-lang/crates.io-index)" = "12229c14a0f65c4f1cb046a3b52047cdd9da1f4b30f8a39c5063c8bae515e252"
-+"checksum redox_users 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3fe5204c3a17e97dde73f285d49be585df59ed84b50a872baf416e73b62c3828"
-+"checksum regex 1.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "53ee8cfdddb2e0291adfb9f13d31d3bbe0a03c9a402c01b1e24188d86c35b24f"
-+"checksum regex-syntax 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "dcfd8681eebe297b81d98498869d4aae052137651ad7b96822f09ceb690d0a96"
-+"checksum remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3488ba1b9a2084d38645c4c08276a1752dcbf2c7130d74f1569681ad5d2799c5"
-+"checksum rgb 0.8.13 (registry+https://github.com/rust-lang/crates.io-index)" = "4f089652ca87f5a82a62935ec6172a534066c7b97be003cc8f702ee9a7a59c92"
-+"checksum rustc-demangle 0.1.14 (registry+https://github.com/rust-lang/crates.io-index)" = "ccc78bfd5acd7bf3e89cffcf899e5cb1a52d6fafa8dec2739ad70c9577a57288"
-+"checksum rustyline 3.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "eb02ba7748691403057542ee60a1e7688fdfb46bd3bee752b8977537ee003ae2"
-+"checksum scoped_threadpool 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8"
-+"checksum sig 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6567e29578f9bfade6a5d94a32b9a4256348358d2a3f448cab0021f9a02614a2"
-+"checksum syn 0.15.27 (registry+https://github.com/rust-lang/crates.io-index)" = "525bd55255f03c816e5d7f615587bd13030c7103354fadb104993dcee6a788ec"
-+"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
-+"checksum tempfile 3.0.7 (registry+https://github.com/rust-lang/crates.io-index)" = "b86c784c88d98c801132806dadd3819ed29d8600836c4088e855cdf3e178ed8a"
-+"checksum thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c6b53e329000edc2b34dbe8545fd20e55a333362d0a321909685a19bd28c3f1b"
-+"checksum ucd-util 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "535c204ee4d8434478593480b8f86ab45ec9aae0e83c568ca81abf0fd0e88f86"
-+"checksum unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "aa6024fc12ddfd1c6dbc14a80fa2324d4568849869b779f6bd37e5e4c03344d1"
-+"checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
-+"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
-+"checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
-+"checksum utf8parse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8772a4ccbb4e89959023bc5b7cb8623a795caa7092d99f3aa9501b9484d4557d"
-+"checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
-+"checksum winapi 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "f10e386af2b13e47c89e7236a7a14a086791a2b88ebad6df9bf42040195cf770"
-+"checksum winapi-i686-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
-+"checksum winapi-x86_64-pc-windows-gnu 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-+"checksum winconsole 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3ef84b96d10db72dd980056666d7f1e7663ce93d82fa33b63e71c966f4cf5032"
-diff --git a/Cargo.toml b/Cargo.toml
-index d09a342..5377ed0 100644
---- a/Cargo.toml
-+++ b/Cargo.toml
-@@ -2,10 +2,9 @@
- members = [
- "evcxr",
- "evcxr_repl",
-- "evcxr_jupyter",
- "evcxr_runtime",
- ]
-
- exclude = [
- "runtimes"
--]
-\ No newline at end of file
-+]
diff --git a/pkgs/development/interpreters/evcxr/default.nix b/pkgs/development/interpreters/evcxr/default.nix
index 2c30c0ca385..84ebc49a221 100644
--- a/pkgs/development/interpreters/evcxr/default.nix
+++ b/pkgs/development/interpreters/evcxr/default.nix
@@ -1,21 +1,20 @@
-{ cargo, fetchFromGitHub, makeWrapper, pkgconfig, rustPlatform, stdenv, gcc, Security }:
+{ cargo, fetchFromGitHub, makeWrapper, pkgconfig, rustPlatform, stdenv, gcc, Security, zeromq }:
rustPlatform.buildRustPackage rec {
- name = "evcxr-${version}";
- version = "0.3.3";
+ pname = "evcxr";
+ version = "0.4.3";
src = fetchFromGitHub {
owner = "google";
repo = "evcxr";
- rev = "ae07ccf08723b7aec0de57d540822b89088ca036";
- sha256 = "1apc93z9vvf6qks5x2pad45rnrj9kjl812rj78w5zmmizccp2fhf";
+ rev = "v${version}";
+ sha256 = "08zsdl6pkg6dx7k0ns8cd070v7ydsxkscd2ms8wh9r68c08vwzcp";
};
- cargoSha256 = "153pxqj4jhlbacr7607q9yfw6h96ns5igbvssis8j3gn0xp6ssg6";
- cargoPatches = [ ./cargo-lock.patch ];
+ cargoSha256 = "1hqlagwl94xcybfqq5h2mrz9296mjns2l598d6jclls7ac5wsdfc";
nativeBuildInputs = [ pkgconfig makeWrapper ];
- buildInputs = [ cargo ] ++ stdenv.lib.optional stdenv.isDarwin Security;
+ buildInputs = [ zeromq ] ++ stdenv.lib.optional stdenv.isDarwin Security;
postInstall = ''
wrapProgram $out/bin/evcxr --prefix PATH : ${stdenv.lib.makeBinPath [ cargo gcc ]}
rm $out/bin/testing_runtime
diff --git a/pkgs/development/libraries/cm256cc/default.nix b/pkgs/development/libraries/cm256cc/default.nix
new file mode 100644
index 00000000000..aaf40998102
--- /dev/null
+++ b/pkgs/development/libraries/cm256cc/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, cmake, boost } :
+
+stdenv.mkDerivation rec {
+ pname = "cm256cc";
+ version = "1.0.5";
+
+ src = fetchFromGitHub {
+ owner = "f4exb";
+ repo = "cm256cc";
+ rev = "v${version}";
+ sha256 = "0d16y3lhdwr644am4sxqpshpbc3qik6dgr1w2c39vy75w9ff61a0";
+ };
+
+ nativeBuildInputs = [ cmake ];
+ buildInputs = [ boost ];
+
+ meta = with stdenv.lib; {
+ description = "Fast GF(256) Cauchy MDS Block Erasure Codec in C++";
+ homepage = "https://github.com/f4exb/cm256cc";
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ alkeryn ];
+ };
+}
diff --git a/pkgs/development/libraries/graphene-hardened-malloc/default.nix b/pkgs/development/libraries/graphene-hardened-malloc/default.nix
index dc3defac638..66c5d8eb061 100644
--- a/pkgs/development/libraries/graphene-hardened-malloc/default.nix
+++ b/pkgs/development/libraries/graphene-hardened-malloc/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "graphene-hardened-malloc";
- version = "1";
+ version = "2";
src = fetchurl {
url = "https://github.com/GrapheneOS/hardened_malloc/archive/${version}.tar.gz";
- sha256 = "1z3kb9fr6w9fcdc42bh8k5b4r10sn5hrwwk4m691qjdgk5hlj3aa";
+ sha256 = "0zsl4vl65ic6lw5rzcjzvcxg8makg683abnwvy60zfap8hvijvjb";
};
installPhase = ''
diff --git a/pkgs/development/libraries/hunspell/dictionaries.nix b/pkgs/development/libraries/hunspell/dictionaries.nix
index 1c86830f258..b9a283d80d2 100644
--- a/pkgs/development/libraries/hunspell/dictionaries.nix
+++ b/pkgs/development/libraries/hunspell/dictionaries.nix
@@ -312,6 +312,17 @@ in rec {
};
};
+ en-au = mkDictFromWordlist {
+ shortName = "en-au";
+ shortDescription = "English (Australia)";
+ dictFileName = "en_AU";
+ src = fetchurl {
+ url = mirror://sourceforge/wordlist/speller/2018.04.16/hunspell-en_AU-2018.04.16.zip;
+ sha256 = "1kp06npl1kd05mm9r52cg2iwc13x02zwqgpibdw15b6x43agg6f5";
+ };
+ };
+ en_AU = en-au;
+
en_GB-ise = en-gb-ise;
en-gb-ise = mkDictFromWordlist {
shortName = "en-gb-ise";
diff --git a/pkgs/development/libraries/libcacard/default.nix b/pkgs/development/libraries/libcacard/default.nix
index 48402b9ad45..2e134c5bb63 100644
--- a/pkgs/development/libraries/libcacard/default.nix
+++ b/pkgs/development/libraries/libcacard/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "libcacard";
- version = "2.6.1";
+ version = "2.7.0";
src = fetchurl {
url = "https://www.spice-space.org/download/libcacard/${pname}-${version}.tar.xz";
- sha256 = "1w6y0kiakhg7dgyf8yqpm4jj6jiv17zhy9lp3d7z32q1pniccxk2";
+ sha256 = "0vyvkk4b6xjwq1ccggql13c1x7g4y90clpkqw28257azgn2a1c8n";
};
nativeBuildInputs = [ pkgconfig ];
diff --git a/pkgs/development/libraries/libdazzle/default.nix b/pkgs/development/libraries/libdazzle/default.nix
index 28d9152dcee..f7e0a987b06 100644
--- a/pkgs/development/libraries/libdazzle/default.nix
+++ b/pkgs/development/libraries/libdazzle/default.nix
@@ -2,7 +2,7 @@
, gtk-doc, docbook_xsl, docbook_xml_dtd_43, glibcLocales, dbus, xvfb_run, glib, gtk3, gnome3 }:
let
- version = "3.32.2";
+ version = "3.32.3";
pname = "libdazzle";
in
stdenv.mkDerivation {
@@ -13,7 +13,7 @@ stdenv.mkDerivation {
src = fetchurl {
url = "mirror://gnome/sources/libdazzle/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "0hgi7gnkna9n42nh7p81crrw0jjj22yr8acych60wxh6hzxqsgs1";
+ sha256 = "1s37hv12ikfzhvh86qzgmfcjm3wvp12l2vsr0whl5xmm2harp3bc";
};
nativeBuildInputs = [ ninja meson pkgconfig vala gobject-introspection libxml2 gtk-doc docbook_xsl docbook_xml_dtd_43 glibcLocales dbus xvfb_run ];
diff --git a/pkgs/development/libraries/libgig/default.nix b/pkgs/development/libraries/libgig/default.nix
index 11affa5cbef..27939238278 100644
--- a/pkgs/development/libraries/libgig/default.nix
+++ b/pkgs/development/libraries/libgig/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "libgig";
- version = "4.1.0";
+ version = "4.2.0";
src = fetchurl {
url = "https://download.linuxsampler.org/packages/${pname}-${version}.tar.bz2";
- sha256 = "02xx6bqxzgkvrawwnzrnxx1ypk244q4kpwfd58266f9ji8kq18h6";
+ sha256 = "1zs5yy124bymfyapsnljr6rv2lnn5inwchm0xnwiw44b2d39l8hn";
};
nativeBuildInputs = [ autoconf automake libtool pkgconfig ];
diff --git a/pkgs/development/libraries/libspf2/default.nix b/pkgs/development/libraries/libspf2/default.nix
new file mode 100644
index 00000000000..d4b11270428
--- /dev/null
+++ b/pkgs/development/libraries/libspf2/default.nix
@@ -0,0 +1,43 @@
+{ stdenv, fetchurl, autoreconfHook }:
+
+with stdenv.lib;
+
+stdenv.mkDerivation rec {
+ pname = "libspf2";
+ version = "1.2.10";
+
+ src = fetchurl {
+ url = "https://www.libspf2.org/spf/libspf2-${version}.tar.gz";
+ sha256 = "1j91p0qiipzf89qxq4m1wqhdf01hpn1h5xj4djbs51z23bl3s7nr";
+ };
+
+ patches = [
+ (fetchurl {
+ name = "0001-gcc-variadic-macros.patch";
+ url = "https://github.com/shevek/libspf2/commit/5852828582f556e73751076ad092f72acf7fc8b6.patch";
+ sha256 = "1v6ashqzpr0xidxq0vpkjd8wd66cj8df01kyzj678ljzcrax35hk";
+ })
+ ];
+
+ postPatch = ''
+ # disable static bins compilation
+ sed -i \
+ -e '/bin_PROGRAMS/s/spfquery_static//' src/spfquery/Makefile.am \
+ -e '/bin_PROGRAMS/s/spftest_static//' src/spftest/Makefile.am \
+ -e '/bin_PROGRAMS/s/spfd_static//' src/spfd/Makefile.am \
+ -e '/bin_PROGRAMS/s/spf_example_static//' src/spf_example/Makefile.am
+ '';
+
+ # autoreconf necessary because we modified automake files
+ nativeBuildInputs = [ autoreconfHook ];
+
+ doCheck = true;
+
+ meta = {
+ description = "Implementation of the Sender Policy Framework for SMTP authorization";
+ homepage = https://www.libspf2.org;
+ license = with licenses; [ lgpl21Plus bsd2 ];
+ maintainers = with maintainers; [ pacien ];
+ platforms = platforms.all;
+ };
+}
diff --git a/pkgs/development/libraries/libvirt/default.nix b/pkgs/development/libraries/libvirt/default.nix
index cf3730cbe17..0556e311736 100644
--- a/pkgs/development/libraries/libvirt/default.nix
+++ b/pkgs/development/libraries/libvirt/default.nix
@@ -129,6 +129,7 @@ in stdenv.mkDerivation rec {
binPath = [ iptables iproute pmutils numad numactl bridge-utils dmidecode dnsmasq ebtables ] ++ optionals enableIscsi [ openiscsi ];
in ''
substituteInPlace $out/libexec/libvirt-guests.sh \
+ --replace 'ON_BOOT=start' 'ON_BOOT=''${ON_BOOT:-start}' \
--replace 'ON_SHUTDOWN=suspend' 'ON_SHUTDOWN=''${ON_SHUTDOWN:-suspend}' \
--replace "$out/bin" '${gettext}/bin' \
--replace 'lock/subsys' 'lock' \
diff --git a/pkgs/development/libraries/luaffi/darwin.patch b/pkgs/development/libraries/luaffi/darwin.patch
deleted file mode 100644
index 50db81b776d..00000000000
--- a/pkgs/development/libraries/luaffi/darwin.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff --git a/Makefile b/Makefile
-index b2b5f2c..b690a5d 100644
---- a/Makefile
-+++ b/Makefile
-@@ -18,10 +18,10 @@ test:
- if [ `uname` = "Darwin" ]; then $(MAKE) test_macosx; else $(MAKE) test_posix; fi
-
- macosx:
-- $(MAKE) posix "SOCC=MACOSX_DEPLOYMENT_TARGET=10.3 $(CC) -dynamiclib -single_module -undefined dynamic_lookup $(SOCFLAGS)"
-+ $(MAKE) posix "SOCC= $(CC) -dynamiclib -single_module -undefined dynamic_lookup -Wl,-install_name,$(PREFIX)/lib/$(MODSO) $(SOCFLAGS)"
-
- test_macosx:
-- $(MAKE) test_posix "SOCC=MACOSX_DEPLOYMENT_TARGET=10.3 $(CC) -dynamiclib -single_module -undefined dynamic_lookup $(SOCFLAGS)"
-+ $(MAKE) test_posix "SOCC= $(CC) -dynamiclib -single_module -undefined dynamic_lookup -Wl,-install_name,$(PREFIX)/lib/$(MODSO) $(SOCFLAGS)"
-
- posix: $(MODSO) test_cdecl.so
-
diff --git a/pkgs/development/libraries/luaffi/default.nix b/pkgs/development/libraries/luaffi/default.nix
deleted file mode 100644
index 065562ac82e..00000000000
--- a/pkgs/development/libraries/luaffi/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ stdenv, fetchFromGitHub, lua, pkgconfig }:
-
-stdenv.mkDerivation {
- name = "luaffi-2013-11-08";
- src = fetchFromGitHub {
- owner = "jmckaskill";
- repo = "luaffi";
- rev = "abc638c9341025580099dcf77795c4b320ba0e63";
- sha256 = "1hv1y9i66p473hfy36nqj220sfrxdmbd75c1gpjvpk8073vx55ac";
- };
-
- nativeBuildInputs = [ pkgconfig ];
- buildInputs = [ lua ];
-
- patches = [ ./darwin.patch ./makefile-errors.patch ];
-
- makeFlags = [ "PREFIX=$(out)" ];
-
- installPhase = ''
- mkdir -p $out/lib
- cp ffi.so $out/lib/ffi.so
- '';
-
- meta = with stdenv.lib; {
- description = "Standalone FFI library for calling C functions from lua. Compatible with the luajit FFI interface.";
- homepage = https://github.com/jmckaskill/luaffi;
- maintainers = with maintainers; [ ma27 ];
- license = licenses.mit;
- platforms = platforms.unix;
- };
-}
diff --git a/pkgs/development/libraries/luaffi/makefile-errors.patch b/pkgs/development/libraries/luaffi/makefile-errors.patch
deleted file mode 100644
index 0ee6e639006..00000000000
--- a/pkgs/development/libraries/luaffi/makefile-errors.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Makefile b/Makefile
-index b2b5f2c..49d4c99 100644
---- a/Makefile
-+++ b/Makefile
-@@ -6,7 +6,7 @@ LUA=lua
- LUA_CFLAGS=`$(PKG_CONFIG) --cflags lua5.2 2>/dev/null || $(PKG_CONFIG) --cflags lua`
- SOCFLAGS=-fPIC
- SOCC=$(CC) -shared $(SOCFLAGS)
--CFLAGS=-fPIC -g -Wall -Werror $(LUA_CFLAGS) -fvisibility=hidden -Wno-unused-function --std=gnu99
-+CFLAGS=-fPIC -g -Wall $(LUA_CFLAGS) -fvisibility=hidden -Wno-unused-function --std=gnu99
-
- MODNAME=ffi
- MODSO=$(MODNAME).so
diff --git a/pkgs/development/libraries/protobuf/3.9.nix b/pkgs/development/libraries/protobuf/3.9.nix
index 6652ba7648c..a2f3e0e0164 100644
--- a/pkgs/development/libraries/protobuf/3.9.nix
+++ b/pkgs/development/libraries/protobuf/3.9.nix
@@ -1,6 +1,6 @@
{ callPackage, ... }:
callPackage ./generic-v3.nix {
- version = "3.9.0";
- sha256 = "1xq2njqrbmizwg91ggi1lqr0n26cm2jdyk668ljc24ihrpk0z9bw";
+ version = "3.9.1";
+ sha256 = "0vv85xb65dx6fa76fsnyps13kaamvwfzd8hr6ii1payr73x4zy2h";
}
diff --git a/pkgs/development/libraries/serialdv/default.nix b/pkgs/development/libraries/serialdv/default.nix
new file mode 100644
index 00000000000..11f9d301347
--- /dev/null
+++ b/pkgs/development/libraries/serialdv/default.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchFromGitHub, cmake }:
+
+stdenv.mkDerivation rec {
+ pname = "serialdv";
+ version ="1.1.1";
+
+ src = fetchFromGitHub {
+ owner = "f4exb";
+ repo = "serialdv";
+ rev = "v${version}";
+ sha256 = "0swalyp8cbs7if6gxbcl7wf83ml8ch3k7ww4hws89rzpjvf070fr";
+ };
+
+ nativeBuildInputs = [ cmake ];
+
+ meta = with stdenv.lib; {
+ description = "C++ Minimal interface to encode and decode audio with AMBE3000 based devices in packet mode over a serial link.";
+ homepage = "https://github.com/f4exb/serialdv";
+ platforms = platforms.linux;
+ maintainers = with maintainers; [ alkeryn ];
+ };
+}
+
diff --git a/pkgs/development/libraries/wiredtiger/default.nix b/pkgs/development/libraries/wiredtiger/default.nix
index e54e0d4b306..2ebad693de5 100644
--- a/pkgs/development/libraries/wiredtiger/default.nix
+++ b/pkgs/development/libraries/wiredtiger/default.nix
@@ -26,13 +26,13 @@ let
in
stdenv.mkDerivation rec {
pname = "wiredtiger";
- version = "2.6.1";
+ version = "3.2.0";
src = fetchFromGitHub {
repo = "wiredtiger";
owner = "wiredtiger";
rev = version;
- sha256 = "1nj319w3hvkq3za2dz9m0p1w683gycdb392v1jb910bhzpsq30pd";
+ sha256 = "1s27l51p2p3kbdjmccvlg43i7zx84hhchs3779w9giab4nvd0y19";
};
nativeBuildInputs = [ automake autoconf libtool ];
@@ -58,17 +58,10 @@ stdenv.mkDerivation rec {
./autogen.sh
'';
- prePatch = stdenv.lib.optionalString stdenv.isDarwin ''
- substituteInPlace api/leveldb/leveldb_wt.h --replace \
- '#include "wiredtiger.h"' \
- ''$'#include "wiredtiger.h"\n#include "pthread.h"'
- '';
-
meta = {
homepage = http://wiredtiger.com/;
description = "";
license = licenses.gpl2;
platforms = intersectLists platforms.unix platforms.x86_64;
- broken = true; # Broken by f689a6d1c6796c4a4f116ffec6c4624379e04bc9.
};
}
diff --git a/pkgs/development/ocaml-modules/logs/default.nix b/pkgs/development/ocaml-modules/logs/default.nix
index 157beaac4bc..22c4216a88f 100644
--- a/pkgs/development/ocaml-modules/logs/default.nix
+++ b/pkgs/development/ocaml-modules/logs/default.nix
@@ -5,7 +5,9 @@ let
webpage = "https://erratique.ch/software/${pname}";
in
-assert stdenv.lib.versionAtLeast ocaml.version "4.01.0";
+if !stdenv.lib.versionAtLeast ocaml.version "4.03"
+then throw "logs is not available for OCaml ${ocaml.version}"
+else
stdenv.mkDerivation rec {
name = "ocaml-${pname}-${version}";
diff --git a/pkgs/development/ocaml-modules/lwt_log/default.nix b/pkgs/development/ocaml-modules/lwt_log/default.nix
index 7eea297e3ee..8286ee16619 100644
--- a/pkgs/development/ocaml-modules/lwt_log/default.nix
+++ b/pkgs/development/ocaml-modules/lwt_log/default.nix
@@ -2,7 +2,7 @@
buildDunePackage rec {
pname = "lwt_log";
- version = "1.1.0";
+ version = "1.1.1";
minimumOCamlVersion = "4.02";
@@ -10,7 +10,7 @@ buildDunePackage rec {
owner = "aantron";
repo = pname;
rev = version;
- sha256 = "1c58gkqfvyf2j11jwj2nh4iq999wj9xpnmr80hz9d0nk9fv333pi";
+ sha256 = "1n12i1rmn9cjn6p8yr6qn5dwbrwvym7ckr7bla04a1xnq8qlcyj7";
};
propagatedBuildInputs = [ lwt ];
diff --git a/pkgs/development/ocaml-modules/ocurl/default.nix b/pkgs/development/ocaml-modules/ocurl/default.nix
index 4b6bea31b40..0b90cd4b6aa 100644
--- a/pkgs/development/ocaml-modules/ocurl/default.nix
+++ b/pkgs/development/ocaml-modules/ocurl/default.nix
@@ -1,10 +1,10 @@
{ stdenv, pkgconfig, ocaml, findlib, fetchurl, curl, ncurses }:
stdenv.mkDerivation rec {
- name = "ocurl-0.8.1";
+ name = "ocurl-0.8.2";
src = fetchurl {
url = "http://ygrek.org.ua/p/release/ocurl/${name}.tar.gz";
- sha256 = "08ldzbx1k3mbjc01fmzsn86ll4paf331bcjss6iig6y6hgc9q3ry";
+ sha256 = "1ax3xdlzgb1zg7d0wr9nwgmh6a45a764m0wk8p6mx07ad94hz0q9";
};
buildInputs = [ pkgconfig ocaml findlib ncurses ];
diff --git a/pkgs/development/ocaml-modules/otr/default.nix b/pkgs/development/ocaml-modules/otr/default.nix
index ac853c94094..caa2d01a441 100644
--- a/pkgs/development/ocaml-modules/otr/default.nix
+++ b/pkgs/development/ocaml-modules/otr/default.nix
@@ -1,35 +1,22 @@
-{ stdenv, fetchFromGitHub, ocaml, ocamlbuild, findlib, topkg
-, ppx_tools, ppx_sexp_conv, cstruct, ppx_cstruct, sexplib, rresult, nocrypto
-, astring
+{ lib, fetchFromGitHub, buildDunePackage
+, cstruct, sexplib0, rresult, nocrypto, astring
}:
-if !stdenv.lib.versionAtLeast ocaml.version "4.03"
-then throw "otr is not available for OCaml ${ocaml.version}"
-else
-
-stdenv.mkDerivation rec {
- name = "ocaml${ocaml.version}-otr-${version}";
- version = "0.3.4";
+buildDunePackage rec {
+ pname = "otr";
+ version = "0.3.6";
src = fetchFromGitHub {
owner = "hannesm";
repo = "ocaml-otr";
rev = "${version}";
- sha256 = "0ixf0jvccmcbhk5mhzqakfzimvz200wkdkq3z2d0bdzyggslbdl4";
+ sha256 = "0iz6p85a0jxng9aq9blqsky173zaqfr6wlc5j48ad55lgwzlbih5";
};
- buildInputs = [ ocaml ocamlbuild findlib topkg ppx_tools ppx_sexp_conv ppx_cstruct ];
- propagatedBuildInputs = [ cstruct sexplib rresult nocrypto astring ];
-
- buildPhase = "${topkg.run} build --tests true";
-
- inherit (topkg) installPhase;
+ propagatedBuildInputs = [ cstruct sexplib0 rresult nocrypto astring ];
doCheck = true;
- checkPhase = "${topkg.run} test";
-
- meta = with stdenv.lib; {
- inherit (ocaml.meta) platforms;
+ meta = with lib; {
homepage = https://github.com/hannesm/ocaml-otr;
description = "Off-the-record messaging protocol, purely in OCaml";
license = licenses.bsd2;
diff --git a/pkgs/development/ocaml-modules/ppx_tools_versioned/default.nix b/pkgs/development/ocaml-modules/ppx_tools_versioned/default.nix
index 363b774aaeb..03cadad7ff4 100644
--- a/pkgs/development/ocaml-modules/ppx_tools_versioned/default.nix
+++ b/pkgs/development/ocaml-modules/ppx_tools_versioned/default.nix
@@ -1,23 +1,19 @@
-{ stdenv, fetchFromGitHub, ocaml, findlib, ocaml-migrate-parsetree }:
+{ lib, fetchFromGitHub, buildDunePackage, ocaml-migrate-parsetree }:
-stdenv.mkDerivation rec {
- name = "ocaml${ocaml.version}-ppx_tools_versioned-${version}";
- version = "5.1";
+buildDunePackage rec {
+ pname = "ppx_tools_versioned";
+ version = "5.2.3";
src = fetchFromGitHub {
- owner = "let-def";
- repo = "ppx_tools_versioned";
+ owner = "ocaml-ppx";
+ repo = pname;
rev = version;
- sha256 = "1c7kvca67qpyr4hiy492yik5x31lmkhyhy5wpl0l0fbx7fr7l624";
+ sha256 = "1hcmpnw26zf70a71r3d2c2c0mn8q084gdn1r36ynng6fv9hq6j0y";
};
- buildInputs = [ ocaml findlib ];
-
propagatedBuildInputs = [ ocaml-migrate-parsetree ];
- createFindlibDestdir = true;
-
- meta = with stdenv.lib; {
+ meta = with lib; {
homepage = https://github.com/let-def/ppx_tools_versioned;
description = "Tools for authors of syntactic tools (such as ppx rewriters)";
license = licenses.gpl2;
diff --git a/pkgs/development/ocaml-modules/vg/default.nix b/pkgs/development/ocaml-modules/vg/default.nix
index cffbd77351c..9980b3f1083 100644
--- a/pkgs/development/ocaml-modules/vg/default.nix
+++ b/pkgs/development/ocaml-modules/vg/default.nix
@@ -11,11 +11,13 @@ let
inherit (stdenv.lib) optionals versionAtLeast;
pname = "vg";
- version = "0.9.1";
+ version = "0.9.3";
webpage = "https://erratique.ch/software/${pname}";
in
-assert versionAtLeast ocaml.version "4.02.0";
+if !versionAtLeast ocaml.version "4.03"
+then throw "vg is not available for OCaml ${ocaml.version}"
+else
stdenv.mkDerivation rec {
@@ -23,7 +25,7 @@ stdenv.mkDerivation rec {
src = fetchurl {
url = "${webpage}/releases/${pname}-${version}.tbz";
- sha256 = "07h9a464v0x066mjg3ldkaq94ah47b7rvh54z4rndrg7v6bk7kyp";
+ sha256 = "0jj5hrqxdb6yyplnz0r7am4mbjzgcn876qp7sqs2x93a97fk6lwd";
};
buildInputs = [ ocaml findlib ocamlbuild topkg ];
diff --git a/pkgs/development/python-modules/gevent-websocket/default.nix b/pkgs/development/python-modules/gevent-websocket/default.nix
index 78986ec7d30..6c9df6b571b 100644
--- a/pkgs/development/python-modules/gevent-websocket/default.nix
+++ b/pkgs/development/python-modules/gevent-websocket/default.nix
@@ -3,20 +3,19 @@
, fetchPypi
, isPy3k
, gevent
+, gunicorn
}:
buildPythonPackage rec {
pname = "gevent-websocket";
version = "0.10.1";
- # SyntaxError in tests.
- disabled = isPy3k;
src = fetchPypi {
inherit pname version;
sha256 = "1c2zv2rahp1gil3cj66hfsqgy0n35hz9fny3ywhr2319d0lz7bky";
};
- propagatedBuildInputs = [ gevent ];
+ propagatedBuildInputs = [ gevent gunicorn ];
meta = with stdenv.lib; {
homepage = https://www.gitlab.com/noppo/gevent-websocket;
diff --git a/pkgs/development/python-modules/pyowm/default.nix b/pkgs/development/python-modules/pyowm/default.nix
index 1392956ef03..1b8fffa1d29 100644
--- a/pkgs/development/python-modules/pyowm/default.nix
+++ b/pkgs/development/python-modules/pyowm/default.nix
@@ -1,9 +1,11 @@
-{ lib, buildPythonPackage, fetchPypi, requests, geojson }:
+{ lib, buildPythonPackage, fetchPypi, pythonOlder, requests, geojson }:
buildPythonPackage rec {
pname = "pyowm";
version = "2.10.0";
+ disabled = pythonOlder "3.3";
+
src = fetchPypi {
inherit pname version;
sha256 = "8fd41a18536f4d6c432bc6d9ea69994efb1ea9b43688cf19523659b6f4d86cf7";
@@ -14,8 +16,7 @@ buildPythonPackage rec {
# This may actually break the package.
postPatch = ''
substituteInPlace setup.py \
- --replace "requests>=2.18.2,<2.19" "requests" \
- --replace "geojson>=2.3.0,<2.4" "geojson<2.5,>=2.3.0"
+ --replace "requests>=2.18.2,<2.19" "requests"
'';
# No tests in archive
diff --git a/pkgs/development/python-modules/python-language-server/default.nix b/pkgs/development/python-modules/python-language-server/default.nix
index 084432061d1..6b25ba93ef9 100644
--- a/pkgs/development/python-modules/python-language-server/default.nix
+++ b/pkgs/development/python-modules/python-language-server/default.nix
@@ -21,13 +21,13 @@ in
buildPythonPackage rec {
pname = "python-language-server";
- version = "0.27.0";
+ version = "0.28.1";
src = fetchFromGitHub {
owner = "palantir";
repo = "python-language-server";
rev = version;
- sha256 = "158wxj2w880jrab7mi4fb3xqnjhmfixqacxjp7whf7jy3zxqrq38";
+ sha256 = "0xa0zw7hlfqqa305ic4csgfmlbxhklb5xzx72mfkcz8gcc0f5qwd";
};
# The tests require all the providers, disable otherwise.
diff --git a/pkgs/development/python-modules/xapian/default.nix b/pkgs/development/python-modules/xapian/default.nix
new file mode 100644
index 00000000000..c15f2682e63
--- /dev/null
+++ b/pkgs/development/python-modules/xapian/default.nix
@@ -0,0 +1,43 @@
+{ lib, buildPythonPackage, fetchurl, python
+, sphinx
+, xapian
+}:
+
+let
+ pythonSuffix = lib.optionalString python.isPy3k "3";
+in
+buildPythonPackage rec {
+ pname = "xapian";
+ inherit (xapian) version;
+ format = "other";
+
+ src = fetchurl {
+ url = "https://oligarchy.co.uk/xapian/${version}/xapian-bindings-${version}.tar.xz";
+ sha256 = "0j9awiiw9zf97r60m848absq43k37gghpyw7acxqjazfzd71fxvm";
+ };
+
+ configureFlags = [
+ "--with-python${pythonSuffix}"
+ "PYTHON${pythonSuffix}_LIB=${placeholder "out"}/${python.sitePackages}"
+ ];
+
+ preConfigure = ''
+ export XAPIAN_CONFIG=${xapian}/bin/xapian-config
+ '';
+
+ buildInputs = [ sphinx xapian ];
+
+ doCheck = true;
+
+ checkPhase = ''
+ ${python.interpreter} python${pythonSuffix}/smoketest.py
+ ${python.interpreter} python${pythonSuffix}/pythontest.py
+ '';
+
+ meta = with lib; {
+ description = "Python Bindings for Xapian";
+ homepage = https://xapian.org/;
+ license = licenses.gpl2Plus;
+ maintainers = with maintainers; [ jonringer ];
+ };
+}
diff --git a/pkgs/development/tools/cloudfoundry-cli/default.nix b/pkgs/development/tools/cloudfoundry-cli/default.nix
index 891e838fb4f..be39f6e3667 100644
--- a/pkgs/development/tools/cloudfoundry-cli/default.nix
+++ b/pkgs/development/tools/cloudfoundry-cli/default.nix
@@ -2,7 +2,7 @@
buildGoPackage rec {
pname = "cloudfoundry-cli";
- version = "6.45.0";
+ version = "6.46.1";
goPackagePath = "code.cloudfoundry.org/cli";
@@ -12,7 +12,7 @@ buildGoPackage rec {
owner = "cloudfoundry";
repo = "cli";
rev = "v${version}";
- sha256 = "1nq78670limq8lydysadk0kb1r88w55fr8cqxqxw0zy58vy1jzr4";
+ sha256 = "0dqrkimwhw016icgyf4cyipzy6vdz5jgickm33xxd9018dh3ibwq";
};
makeTarget = let hps = stdenv.hostPlatform.system; in
diff --git a/pkgs/development/tools/misc/d-feet/default.nix b/pkgs/development/tools/misc/d-feet/default.nix
index b96f65c2ecc..cc256bc23bd 100644
--- a/pkgs/development/tools/misc/d-feet/default.nix
+++ b/pkgs/development/tools/misc/d-feet/default.nix
@@ -1,22 +1,64 @@
-{ stdenv, pkgconfig, fetchurl, itstool, intltool, libxml2, glib, gtk3
-, python3Packages, wrapGAppsHook, gnome3, libwnck3, gobject-introspection }:
+{ stdenv
+, pkgconfig
+, fetchurl
+, meson
+, ninja
+, glib
+, gtk3
+, python3
+, wrapGAppsHook
+, gnome3
+, libwnck3
+, gobject-introspection
+, gettext
+, itstool
+}:
-let
+python3.pkgs.buildPythonApplication rec {
pname = "d-feet";
- version = "0.3.14";
-in python3Packages.buildPythonApplication rec {
- name = "${pname}-${version}";
+ version = "0.3.15";
+
format = "other";
src = fetchurl {
- url = "mirror://gnome/sources/d-feet/${stdenv.lib.versions.majorMinor version}/${name}.tar.xz";
- sha256 = "1m8lwiwl5jhi0x7y6x5zmd3hjplgvdjrb8a8jg74rvkygslj1p7f";
+ url = "mirror://gnome/sources/d-feet/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
+ sha256 = "1cgxgpj546jgpyns6z9nkm5k48lid8s36mvzj8ydkjqws2d19zqz";
};
- nativeBuildInputs = [ pkgconfig itstool intltool wrapGAppsHook libxml2 ];
- buildInputs = [ glib gtk3 gnome3.adwaita-icon-theme libwnck3 gobject-introspection ];
+ nativeBuildInputs = [
+ gettext
+ gobject-introspection
+ itstool
+ meson
+ ninja
+ pkgconfig
+ python3
+ wrapGAppsHook
+ ];
- propagatedBuildInputs = with python3Packages; [ pygobject3 pep8 ];
+ buildInputs = [
+ glib
+ gnome3.adwaita-icon-theme
+ gtk3
+ libwnck3
+ ];
+
+ propagatedBuildInputs = with python3.pkgs; [
+ pygobject3
+ ];
+
+ mesonFlags = [
+ "-Dtests=false" # needs dbus
+ ];
+
+ # Temporary fix
+ # See https://github.com/NixOS/nixpkgs/issues/56943
+ strictDeps = false;
+
+ postPatch = ''
+ chmod +x meson_post_install.py
+ patchShebangs meson_post_install.py
+ '';
passthru = {
updateScript = gnome3.updateScript {
@@ -26,17 +68,15 @@ in python3Packages.buildPythonApplication rec {
};
};
- meta = {
+ meta = with stdenv.lib; {
description = "D-Feet is an easy to use D-Bus debugger";
-
longDescription = ''
D-Feet can be used to inspect D-Bus interfaces of running programs
and invoke methods on those interfaces.
'';
-
homepage = https://wiki.gnome.org/Apps/DFeet;
- platforms = stdenv.lib.platforms.all;
- license = stdenv.lib.licenses.gpl2;
- maintainers = with stdenv.lib.maintainers; [ ktosiek ];
+ platforms = platforms.linux;
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ ktosiek ];
};
}
diff --git a/pkgs/development/tools/ofono-phonesim/default.nix b/pkgs/development/tools/ofono-phonesim/default.nix
new file mode 100644
index 00000000000..137f56bee59
--- /dev/null
+++ b/pkgs/development/tools/ofono-phonesim/default.nix
@@ -0,0 +1,47 @@
+{ stdenv
+, mkDerivation
+, fetchFromGitHub
+, autoreconfHook
+, pkgconfig
+, qtbase
+, qtscript
+}:
+
+mkDerivation rec {
+ pname = "ofono-phonesim";
+ version = "unstable-2014-04-22";
+
+ src = fetchFromGitHub {
+ owner = "jpakkane";
+ repo = "ofono-phonesim";
+ rev = "baa41f04e6a86c5289d7185cad8a6f08a5c3ed0a";
+ sha256 = "0ywalvvf3dfbn81ml21gji1n2hywh2nmakynakjzyyskcqjn2wiz";
+ };
+
+ patches = [
+ ./qt5-compat.patch
+ ];
+
+ nativeBuildInputs = [
+ autoreconfHook
+ pkgconfig
+ ];
+
+ buildInputs = [
+ qtbase
+ qtscript
+ ];
+
+ makeFlags = [
+ "MOC=${qtbase.dev}/bin/moc"
+ "UIC=${qtbase.dev}/bin/uic"
+ ];
+
+ meta = with stdenv.lib; {
+ description = "Phone Simulator for modem testing";
+ homepage = https://github.com/jpakkane/ofono-phonesim;
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ jtojnar ];
+ platforms = platforms.linux;
+ };
+}
diff --git a/pkgs/development/tools/ofono-phonesim/qt5-compat.patch b/pkgs/development/tools/ofono-phonesim/qt5-compat.patch
new file mode 100644
index 00000000000..e2e9dcebd6b
--- /dev/null
+++ b/pkgs/development/tools/ofono-phonesim/qt5-compat.patch
@@ -0,0 +1,48 @@
+diff --git a/configure.ac b/configure.ac
+index 2436292..993df87 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -21,18 +21,18 @@ AC_ARG_ENABLE(optimization, AC_HELP_STRING([--disable-optimization],
+ fi
+ ])
+
+-PKG_CHECK_MODULES(QT, QtCore QtGui QtXml QtNetwork QtScript QtDBus, dummy=yes,
++PKG_CHECK_MODULES(QT, Qt5Core Qt5Gui Qt5Widgets Qt5Xml Qt5Network Qt5Script Qt5DBus, dummy=yes,
+ AC_MSG_ERROR(Qt is required))
+ AC_SUBST(QT_CFLAGS)
+ AC_SUBST(QT_LIBS)
+
+ AC_MSG_CHECKING(for moc)
+-MOC="`$PKG_CONFIG --variable=moc_location QtCore`"
++MOC="`$PKG_CONFIG --variable=moc_location Qt5Core`"
+ AC_SUBST(MOC)
+ AC_MSG_RESULT($MOC)
+
+ AC_MSG_CHECKING(for uic)
+-UIC="`$PKG_CONFIG --variable=uic_location QtCore`"
++UIC="`$PKG_CONFIG --variable=uic_location Qt5Core`"
+ AC_SUBST(UIC)
+ AC_MSG_RESULT($UIC)
+
+diff --git a/src/control.cpp b/src/control.cpp
+index e1838a6..880da68 100644
+--- a/src/control.cpp
++++ b/src/control.cpp
+@@ -22,7 +22,7 @@
+ #include
+ #include
+ #include
+-#include
++#include
+ #include
+ #include
+ #include
+@@ -31,7 +31,7 @@
+ #include
+ #include
+ #include
+-#include
++#include
+
+ #define TWO_BYTE_MAX 65535
+ #define FOUR_CHAR 4
diff --git a/pkgs/development/tools/parsing/tree-sitter/default.nix b/pkgs/development/tools/parsing/tree-sitter/default.nix
new file mode 100644
index 00000000000..989107a2fbe
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/default.nix
@@ -0,0 +1,106 @@
+{ lib, stdenv
+, fetchgit, fetchFromGitHub, fetchurl
+, writeShellScript, runCommand
+, rustPlatform, jq, nix-prefetch-git, xe, curl
+}:
+
+# TODO: move to carnix or https://github.com/kolloch/crate2nix
+let
+ # to update:
+ # 1) change all these hashes
+ # 2) nix-build -A tree-sitter.updater.update-all-grammars
+ # 3) run the script that is output by that (it updates ./grammars)
+ version = "0.15.7";
+ sha256 = "0q6w8wl4a4s49xlgbv531pandzrj3n12hc1cwfshzcgikx303dg0";
+ sha256Js = "11ig4cc2m85siyhafh4hq9sjb5if4gfwsf9k87izkxpiyflda0wp";
+ sha256Wasm = "1zm4bvjri8ivhah3sy22mx6jbvibgbn2hk67d148j3nyka3y4gc0";
+ cargoSha256 = "0ls9cb2p6cgqvnrmx72n79ga7687n8mzhh7n8n1pzv11r6cah9ki";
+
+
+ src = fetchFromGitHub {
+ owner = "tree-sitter";
+ repo = "tree-sitter";
+ rev = version;
+ inherit sha256;
+ fetchSubmodules = true;
+ };
+
+ fetchDist = {file, sha256}: fetchurl {
+ url = "https://github.com/tree-sitter/tree-sitter/releases/download/${version}/${file}";
+ inherit sha256;
+ };
+
+ # TODO: not distributed anymore; needed for the web-ui module,
+ # see also the disable-web-ui patch.
+ # TODO: build those instead of downloading prebuilt
+ # js = fetchDist {
+ # file = "tree-sitter.js";
+ # sha256 = sha256Js;
+ # };
+ # wasm = fetchDist {
+ # file = "tree-sitter.wasm";
+ # sha256 = sha256Wasm;
+ # };
+
+ update-all-grammars = import ./update.nix {
+ inherit writeShellScript nix-prefetch-git curl jq xe src;
+ };
+
+ grammars =
+ let fetch =
+ (v: fetchgit {inherit (v) url rev sha256 fetchSubmodules; });
+ in runCommand "grammars" {} (''
+ mkdir $out
+ '' + (lib.concatStrings (lib.mapAttrsToList
+ (name: grammar: "ln -s ${fetch grammar} $out/${name}\n")
+ (import ./grammars))));
+
+
+in rustPlatform.buildRustPackage {
+ pname = "tree-sitter";
+ inherit version;
+ inherit src;
+
+ patches = [
+ # the web ui requires tree-sitter compiled to js and wasm
+ ./disable-web-ui.patch
+ ];
+
+ postPatch = ''
+ # needed for the tests
+ rm -rf test/fixtures/grammars
+ ln -s ${grammars} test/fixtures/grammars
+ '';
+
+ passthru = {
+ updater = {
+ inherit update-all-grammars;
+ };
+ inherit grammars;
+ };
+
+ inherit cargoSha256;
+
+ meta = {
+ homepage = "https://github.com/tree-sitter/tree-sitter";
+ description = "A parser generator tool and an incremental parsing library";
+ longDescription = ''
+ Tree-sitter is a parser generator tool and an incremental parsing library.
+ It can build a concrete syntax tree for a source file and efficiently update the syntax tree as the source file is edited.
+
+ Tree-sitter aims to be:
+
+ * General enough to parse any programming language
+ * Fast enough to parse on every keystroke in a text editor
+ * Robust enough to provide useful results even in the presence of syntax errors
+ * Dependency-free so that the runtime library (which is written in pure C) can be embedded in any application
+ '';
+ platforms = lib.platforms.all;
+ license = lib.licenses.mit;
+ maintainers = with lib.maintainers; [ Profpatsch ];
+ # Darwin needs some more work with default libraries
+ # Aarch has test failures with how tree-sitter compiles the generated C files
+ broken = stdenv.isDarwin || stdenv.isAarch64;
+ };
+
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/disable-web-ui.patch b/pkgs/development/tools/parsing/tree-sitter/disable-web-ui.patch
new file mode 100644
index 00000000000..6065aa9e7fd
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/disable-web-ui.patch
@@ -0,0 +1,37 @@
+diff --git a/cli/src/lib.rs b/cli/src/lib.rs
+index 33a9904f..633032d7 100644
+--- a/cli/src/lib.rs
++++ b/cli/src/lib.rs
+@@ -8,7 +8,7 @@ pub mod parse;
+ pub mod test;
+ pub mod util;
+ pub mod wasm;
+-pub mod web_ui;
++// pub mod web_ui;
+
+ #[cfg(test)]
+ mod tests;
+diff --git a/cli/src/main.rs b/cli/src/main.rs
+index 23e7fc1a..9d784c8a 100644
+--- a/cli/src/main.rs
++++ b/cli/src/main.rs
+@@ -4,7 +4,7 @@ use std::{env, fs, u64};
+ use std::path::Path;
+ use std::process::exit;
+ use tree_sitter_cli::{
+- config, error, generate, highlight, loader, logger, parse, test, wasm, web_ui,
++ config, error, generate, highlight, loader, logger, parse, test, wasm,
+ };
+
+ const BUILD_VERSION: &'static str = env!("CARGO_PKG_VERSION");
+@@ -250,7 +250,9 @@ fn run() -> error::Result<()> {
+ let grammar_path = current_dir.join(matches.value_of("path").unwrap_or(""));
+ wasm::compile_language_to_wasm(&grammar_path, matches.is_present("docker"))?;
+ } else if matches.subcommand_matches("web-ui").is_some() {
+- web_ui::serve(¤t_dir);
++ print!("ERROR: web-ui is not available in the nixpkgs tree-sitter-cli at the moment.");
++ std::process::exit(1);
++ // web_ui::serve(¤t_dir);
+ }
+
+ Ok(())
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix b/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
new file mode 100644
index 00000000000..b6451bce728
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/default.nix
@@ -0,0 +1,15 @@
+{
+ bash = (builtins.fromJSON (builtins.readFile ./tree-sitter-bash.json));
+ c = (builtins.fromJSON (builtins.readFile ./tree-sitter-c.json));
+ cpp = (builtins.fromJSON (builtins.readFile ./tree-sitter-cpp.json));
+ embedded-template = (builtins.fromJSON (builtins.readFile ./tree-sitter-embedded-template.json));
+ go = (builtins.fromJSON (builtins.readFile ./tree-sitter-go.json));
+ html = (builtins.fromJSON (builtins.readFile ./tree-sitter-html.json));
+ javascript = (builtins.fromJSON (builtins.readFile ./tree-sitter-javascript.json));
+ json = (builtins.fromJSON (builtins.readFile ./tree-sitter-json.json));
+ python = (builtins.fromJSON (builtins.readFile ./tree-sitter-python.json));
+ # wasn’t able to check out with fetchgit
+ # ruby = (builtins.fromJSON (builtins.readFile ./tree-sitter-ruby.json));
+ rust = (builtins.fromJSON (builtins.readFile ./tree-sitter-rust.json));
+ typescript = (builtins.fromJSON (builtins.readFile ./tree-sitter-typescript.json));
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-bash.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-bash.json
new file mode 100644
index 00000000000..c367d24d09f
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-bash.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-bash",
+ "rev": "7b8adcf484e27b6c1a707ce28123e55dd4b7a844",
+ "date": "2019-07-26T14:05:41-06:00",
+ "sha256": "047p51ab4fqm55xqss6z74iyj1hlndql97dv9fifckczx3d5xn5g",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c.json
new file mode 100644
index 00000000000..1342f7d092b
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-c.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-c",
+ "rev": "22decdc361767838dd36f1da4125b35b5b9a3c28",
+ "date": "2019-07-02T15:49:42-07:00",
+ "sha256": "03f9g49l4g2l4hlafr3xhvi8d3a491k5zz4bxpq7391l5wgjy3zi",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
new file mode 100644
index 00000000000..8c7d10f2654
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-cpp.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-cpp",
+ "rev": "f5afa0ee48ad1dc067ed6fe1aa2cfd2a3ea5d443",
+ "date": "2019-08-06T17:23:46-07:00",
+ "sha256": "1w9zjqj232fcagqfqd8qi4kmvr655s4ivllrm27973sda4xq557h",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-embedded-template.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-embedded-template.json
new file mode 100644
index 00000000000..89940ffec8c
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-embedded-template.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-embedded-template",
+ "rev": "71955edec8cb762f63e94cf062fc96b52b9ae609",
+ "date": "2019-07-17T15:55:22-07:00",
+ "sha256": "1ar2n1z2h194lb3isbdkmvhn8w78j4a62nbh105w3jl1sxb4qpsa",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
new file mode 100644
index 00000000000..6a354f5c2e2
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-go.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-go",
+ "rev": "475571bb5bdb9b229c6be3843d4c71ba747688fd",
+ "date": "2019-07-17T15:51:06-07:00",
+ "sha256": "1cg5qpifrvpnsi0iy26g156xib2qa55vlna41hw6c70kx8ibvl9z",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-html.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-html.json
new file mode 100644
index 00000000000..732d2dda40b
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-html.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-html",
+ "rev": "aeb2f456b8c6a60b8475d075889d476a165cde57",
+ "date": "2019-07-17T15:57:54-07:00",
+ "sha256": "0ba8zi65kja6p7f5h7pa7kxqa3mj29ysjrvl84am24vy5ik4zz3z",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
new file mode 100644
index 00000000000..a1e29e1504e
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-javascript.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-javascript",
+ "rev": "a730b5c210904e2e3c1f601125a059fde1b35850",
+ "date": "2019-08-08T14:13:17-07:00",
+ "sha256": "1cr0vikbzrklksjj07fh34a5cabkgbpkbxwiw2alnana3zzzdhnq",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json
new file mode 100644
index 00000000000..2bb0dcd4d8f
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-json.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-json",
+ "rev": "337f55be9b9b1ccb0baa7763bfe014a94acea7ea",
+ "date": "2019-05-23T11:02:26-04:00",
+ "sha256": "0amh4qrjj3fli9c0z6p61z9d7496sqq54i1gh2vrghgnbbyaa6mz",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json
new file mode 100644
index 00000000000..f46695edfa8
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-python.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-python",
+ "rev": "4c22de0944cd42a5c86ade7ef7097033604796f8",
+ "date": "2019-07-30T15:35:03-04:00",
+ "sha256": "1p12h7hj1ak15fyk4gw9wcmgzydd4z5mikhjp54mn1q4vfw175p3",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ruby.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ruby.json
new file mode 100644
index 00000000000..e2f9928c870
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-ruby.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-ruby",
+ "rev": "db91c934ff9d3d4ea67111a0f581532c49c3a6b3",
+ "date": "2019-07-26T15:51:54-06:00",
+ "sha256": "1ir1nqpz0c0hnsqzp90w2iw1gy3z3nqil2fm4n3zmid5di7c98dg",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
new file mode 100644
index 00000000000..328b337ed5a
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-rust.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-rust",
+ "rev": "3f956b18a6b0a576ed238cc69d5e3f413bd547b1",
+ "date": "2019-07-18T11:44:02-07:00",
+ "sha256": "0dwxg3pqirqm1lvl5x0q9djavfri9ffk5diygqzjnx53rwqhyzj8",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json
new file mode 100644
index 00000000000..61507888154
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/grammars/tree-sitter-typescript.json
@@ -0,0 +1,7 @@
+{
+ "url": "https://github.com/tree-sitter/tree-sitter-typescript",
+ "rev": "ab9ab6cced868ee3e096f33fa21fd9d356c92e1a",
+ "date": "2019-08-08T14:27:32-07:00",
+ "sha256": "11r0vj1dhv0my2cr442mwvaav8ljygsns20w51mwg7328vlz90q3",
+ "fetchSubmodules": false
+}
diff --git a/pkgs/development/tools/parsing/tree-sitter/update.nix b/pkgs/development/tools/parsing/tree-sitter/update.nix
new file mode 100644
index 00000000000..aa87df6bed1
--- /dev/null
+++ b/pkgs/development/tools/parsing/tree-sitter/update.nix
@@ -0,0 +1,68 @@
+{ writeShellScript, nix-prefetch-git
+, curl, jq, xe
+, src }:
+
+let
+ # print all the grammar names mentioned in the fetch-fixtures script
+ getGrammarNames = writeShellScript "get-grammars.sh" ''
+ set -euo pipefail
+ sed -ne 's/^fetch_grammar \(\S*\).*$/\1/p' \
+ ${src}/script/fetch-fixtures
+ '';
+
+ # TODO
+ urlEscape = x: x;
+ # TODO
+ urlEscapeSh = writeShellScript "escape-url" ''printf '%s' "$1"'';
+
+ # generic bash script to find the latest github release for a repo
+ latestGithubRelease = { owner }: writeShellScript "latest-github-release" ''
+ set -euo pipefail
+ repo="$1"
+ res=$(${curl}/bin/curl \
+ --silent \
+ "https://api.github.com/repos/${urlEscape owner}/$(${urlEscapeSh} "$repo")/releases/latest")
+ if [[ "$(printf "%s" "$res" | ${jq}bin/jq '.message')" =~ "rate limit" ]]; then
+ echo "rate limited" >&2
+ fi
+ release=$(printf "%s" "$res" | ${jq}/bin/jq '.tag_name')
+ # github sometimes returns an empty list even tough there are releases
+ if [ "$release" = "null" ]; then
+ echo "uh-oh, latest for $repo is not there, using HEAD" >&2
+ release="HEAD"
+ fi
+ echo "$release"
+ '';
+
+ # update one tree-sitter grammar repo and print their nix-prefetch-git output
+ updateGrammar = { owner }: writeShellScript "update-grammar.sh" ''
+ set -euo pipefail
+ repo="$1"
+ latest="$(${latestGithubRelease { inherit owner; }} "$repo")"
+ echo "Fetching latest release ($latest) of $repo …" >&2
+ ${nix-prefetch-git}/bin/nix-prefetch-git \
+ --quiet \
+ --no-deepClone \
+ --url "https://github.com/${urlEscape owner}/$(${urlEscapeSh} "$repo")" \
+ --rev "$latest"
+ '';
+
+ update-all-grammars = writeShellScript "update-all-grammars.sh" ''
+ set -euo pipefail
+ grammarNames=$(${getGrammarNames})
+ outputDir="${toString ./.}/grammars"
+ mkdir -p "$outputDir"
+ updateCommand=$(printf \
+ '${updateGrammar { owner = "tree-sitter"; }} "$1" > "%s/$1.json"' \
+ "$outputDir")
+ printf '%s' "$grammarNames" \
+ | ${xe}/bin/xe printf "tree-sitter-%s\n" {} \
+ | ${xe}/bin/xe -j2 -s "$updateCommand"
+ ( echo "{"
+ printf '%s' "$grammarNames" \
+ | ${xe}/bin/xe -s 'printf " %s = (builtins.fromJSON (builtins.readFile ./tree-sitter-%s.json));\n" "$1" "$1"'
+ echo "}" ) \
+ > "$outputDir/default.nix"
+ '';
+
+in update-all-grammars
diff --git a/pkgs/development/tools/rust/cargo-expand/default.nix b/pkgs/development/tools/rust/cargo-expand/default.nix
index d7e37e61d50..43b3a88f6ee 100644
--- a/pkgs/development/tools/rust/cargo-expand/default.nix
+++ b/pkgs/development/tools/rust/cargo-expand/default.nix
@@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-expand";
- version = "0.4.14";
+ version = "0.4.15";
src = fetchFromGitHub {
owner = "dtolnay";
repo = pname;
rev = version;
- sha256 = "0i59m34lav3cmrazaxfraj3jk5mdi5fgaq8p7l4s8qr1fpmmw9vy";
+ sha256 = "155b4azkrr0qfg52mk7934zavwsbl28i28hi1inb23d509hrr5ky";
};
- cargoSha256 = "1sjbcgscgvjq4qpcljrsj1dyxbr10jl6wpp27xh3bv8c2rv4bzz8";
+ cargoSha256 = "050q4rk1x3jghinxg6gszi993a6zbg41vg535dlvvsqi36l278qc";
buildInputs = [ llvmPackages.libclang ]
++ stdenv.lib.optional stdenv.isDarwin darwin.apple_sdk.frameworks.Security;
diff --git a/pkgs/misc/scrcpy/default.nix b/pkgs/misc/scrcpy/default.nix
index 20ba1295c42..bfca574cd49 100644
--- a/pkgs/misc/scrcpy/default.nix
+++ b/pkgs/misc/scrcpy/default.nix
@@ -2,6 +2,7 @@
, meson
, ninja
, pkgconfig
+, fetchpatch
, platform-tools
, ffmpeg
@@ -9,10 +10,10 @@
}:
let
- version = "1.8";
+ version = "1.10";
prebuilt_server = fetchurl {
url = "https://github.com/Genymobile/scrcpy/releases/download/v${version}/scrcpy-server-v${version}.jar";
- sha256 = "1h755k5xpchlm7wq2yk5mlwjnh7y4yhviffixacby0srj3pmb443";
+ sha256 = "144k25x6ha89l9p5a1dm6r3fqvgqszzwrhvkvk0r44vg0i71msyb";
};
in
stdenv.mkDerivation rec {
@@ -23,7 +24,7 @@ stdenv.mkDerivation rec {
owner = "Genymobile";
repo = pname;
rev = "v${version}";
- sha256 = "1cx7y3w699s3i8s53l1mb7lkrnbix457hf17liwh00jzb0i7aga7";
+ sha256 = "0hhncqcs49n9g8sgvwbyvkaq4b1dhrpn7qgnaj6grjcb0i27vzaq";
};
# postPatch:
@@ -39,12 +40,18 @@ stdenv.mkDerivation rec {
buildInputs = [ ffmpeg SDL2 ];
+ # FIXME: remove on update to > 1.10
+ patches = [(fetchpatch {
+ url = "https://github.com/Genymobile/scrcpy/commit/c05056343b56be65ae887f8b7ead61a8072622b9.diff";
+ sha256 = "1xh24gr2g2i9rk0zyv19jx54hswrq12ssp227vxbhsbamin9ir5b";
+ })];
+
# Manually install the server jar to prevent Meson from "fixing" it
preConfigure = ''
echo -n > server/meson.build
'';
- mesonFlags = ["-Doverride_server_path=${prebuilt_server}"];
+ mesonFlags = [ "-Doverride_server_path=${prebuilt_server}" ];
postInstall = ''
mkdir -p "$out/share/scrcpy"
ln -s "${prebuilt_server}" "$out/share/scrcpy/scrcpy-server.jar"
diff --git a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
index 76a0ae2fcf1..4516af19a4e 100644
--- a/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
+++ b/pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix
@@ -1,13 +1,13 @@
{ stdenv, buildPackages, fetchgit, fetchpatch, perl, buildLinux, ... } @ args:
buildLinux (args // rec {
- version = "5.1.2019.07.13";
+ version = "5.1.2019.08.21";
modDirVersion = "5.1.0";
src = fetchgit {
url = "https://evilpiepirate.org/git/bcachefs.git";
- rev = "22776fe9902b0b06d6aa18cd4c7f0c5ad35a95fa";
- sha256 = "0ly4vxawj8skh55c541zll3b8g6igiaq7aj33fklfjh0icmgzs60";
+ rev = "ece184f718c2b678738bc2c42906e90eeb8ba7dc";
+ sha256 = "08cbisgcww8fklpxwqkm2c8ddz0mm7v11ycp7ch0kalwdv2f81lr";
};
extraConfig = "BCACHEFS_FS m";
diff --git a/pkgs/servers/limesurvey/default.nix b/pkgs/servers/limesurvey/default.nix
index ad1038bbc47..21863018087 100644
--- a/pkgs/servers/limesurvey/default.nix
+++ b/pkgs/servers/limesurvey/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "limesurvey";
- version = "3.17.1+190408";
+ version = "3.17.12+190823";
src = fetchFromGitHub {
owner = "LimeSurvey";
repo = "LimeSurvey";
rev = version;
- sha256 = "0d6dgw9af492vn5yg2hq82ipq4p80c19lhky0dpwrm5kv67kxbhv";
+ sha256 = "1i7jpxndrbya5ggl4babscwzmxx4c0jwri5kpl7h2ihqrn90m4b5";
};
phpConfig = writeText "config.php" ''
@@ -18,9 +18,13 @@ stdenv.mkDerivation rec {
'';
installPhase = ''
+ runHook preInstall
+
mkdir -p $out/share/limesurvey
cp -r . $out/share/limesurvey
cp ${phpConfig} $out/share/limesurvey/application/config/config.php
+
+ runHook postInstall
'';
meta = with stdenv.lib; {
diff --git a/pkgs/servers/mail/exim/default.nix b/pkgs/servers/mail/exim/default.nix
index a537a4c6d00..25a94cd27bf 100644
--- a/pkgs/servers/mail/exim/default.nix
+++ b/pkgs/servers/mail/exim/default.nix
@@ -3,6 +3,7 @@
, enableMySQL ? false, mysql, zlib
, enableAuthDovecot ? false, dovecot
, enablePAM ? false, pam
+, enableSPF ? true, libspf2
}:
stdenv.mkDerivation rec {
@@ -18,7 +19,8 @@ stdenv.mkDerivation rec {
++ stdenv.lib.optional enableLDAP openldap
++ stdenv.lib.optionals enableMySQL [ mysql.connector-c zlib ]
++ stdenv.lib.optional enableAuthDovecot dovecot
- ++ stdenv.lib.optional enablePAM pam;
+ ++ stdenv.lib.optional enablePAM pam
+ ++ stdenv.lib.optional enableSPF libspf2;
preBuild = ''
sed '
@@ -64,6 +66,10 @@ stdenv.mkDerivation rec {
s:^\(EXTRALIBS_EXIM\)=\(.*\):\1=\2 -lpam:
s:^# \(EXTRALIBS_EXIM\)=.*:\1=-lpam:
''}
+ ${stdenv.lib.optionalString enableSPF ''
+ s:^# \(SUPPORT_SPF\)=.*:\1=yes:
+ s:^# \(LDFLAGS += -lspf2\):\1:
+ ''}
#/^\s*#.*/d
#/^\s*$/d
' < src/EDITME > Local/Makefile
diff --git a/pkgs/servers/plex/raw.nix b/pkgs/servers/plex/raw.nix
index 9f3cd508fb0..250e6e1b844 100644
--- a/pkgs/servers/plex/raw.nix
+++ b/pkgs/servers/plex/raw.nix
@@ -8,13 +8,13 @@
# server, and the FHS userenv and corresponding NixOS module should
# automatically pick up the changes.
stdenv.mkDerivation rec {
- version = "1.16.4.1469-6d5612c2f";
+ version = "1.16.5.1488-deeb86e7f";
pname = "plexmediaserver";
# Fetch the source
src = fetchurl {
url = "https://downloads.plex.tv/plex-media-server-new/${version}/redhat/plexmediaserver-${version}.x86_64.rpm";
- sha256 = "16ifgqsxgpqyd1m0xmwrrv4cic1yccklv1jlv7fhq8wc6vz9l6lx";
+ sha256 = "0kgcbq3jfvmigza8a9ak215q2cpi18vh96gx01hppk51m9ibkrwi";
};
outputs = [ "out" "basedb" ];
diff --git a/pkgs/shells/bash/bash-5.0-patches.nix b/pkgs/shells/bash/bash-5.0-patches.nix
index 560aef16644..90bbc5e37dd 100644
--- a/pkgs/shells/bash/bash-5.0-patches.nix
+++ b/pkgs/shells/bash/bash-5.0-patches.nix
@@ -8,4 +8,6 @@ patch: [
(patch "005" "0xl2kyzm84nlyklrqzkn73ixabhzfhn9x91lzcmis89cppclvxav")
(patch "006" "0844749ixk1z60437nkznzms1f0nzh9an62kj7sny6r0zyk2k1fn")
(patch "007" "16xg37gp1b8zlj5969w8mcrparwqlcbj9695vn3qhgb7wdz1xd0p")
+(patch "008" "1qyp19krjh8zxvb0jgwmyjz40djslwcf4xi7kc1ab0iaca44bipf")
+(patch "009" "00yrjjqd95s81b21qq3ba1y7h879q8jaajlkjggc6grhcwbs4g7d")
]
diff --git a/pkgs/tools/X11/xdg-user-dirs/default.nix b/pkgs/tools/X11/xdg-user-dirs/default.nix
index c72fab015d9..066b566be1f 100644
--- a/pkgs/tools/X11/xdg-user-dirs/default.nix
+++ b/pkgs/tools/X11/xdg-user-dirs/default.nix
@@ -11,8 +11,9 @@ stdenv.mkDerivation rec {
buildInputs = [ libxslt docbook_xsl makeWrapper ];
preFixup = ''
+ # fallback values need to be last
wrapProgram "$out/bin/xdg-user-dirs-update" \
- --prefix XDG_CONFIG_DIRS : "$out/etc/xdg"
+ --suffix XDG_CONFIG_DIRS : "$out/etc/xdg"
'';
meta = with stdenv.lib; {
diff --git a/pkgs/tools/X11/xpra/default.nix b/pkgs/tools/X11/xpra/default.nix
index 863c02fb23d..ffede7d58b2 100644
--- a/pkgs/tools/X11/xpra/default.nix
+++ b/pkgs/tools/X11/xpra/default.nix
@@ -14,11 +14,11 @@ let
xf86videodummy = callPackage ./xf86videodummy { };
in buildPythonApplication rec {
pname = "xpra";
- version = "2.5";
+ version = "2.5.3";
src = fetchurl {
url = "https://xpra.org/src/${pname}-${version}.tar.xz";
- sha256 = "0q6c7ijgpp2wk6jlh0pzqki1w60i36wyl2zfwkg0gpdh40ypab3x";
+ sha256 = "1ys35lj28903alccks9p055psy1fsk1nxi8ncchvw8bfxkkkvbys";
};
patches = [
@@ -56,7 +56,7 @@ in buildPythonApplication rec {
propagatedBuildInputs = with python3.pkgs; [
pillow rencode pycrypto cryptography pycups lz4 dbus-python
netifaces numpy pygobject3 pycairo gst-python pam
- pyopengl paramiko opencv python-uinput pyxdg
+ pyopengl paramiko opencv4 python-uinput pyxdg
ipaddress idna
];
diff --git a/pkgs/tools/X11/xpra/fix-paths.patch b/pkgs/tools/X11/xpra/fix-paths.patch
index ac8107235be..eb982682586 100644
--- a/pkgs/tools/X11/xpra/fix-paths.patch
+++ b/pkgs/tools/X11/xpra/fix-paths.patch
@@ -1,15 +1,8 @@
+gdiff --git a/setup.py b/setup.py
+index 8d3df15..6156206 100755
--- a/setup.py
+++ b/setup.py
-@@ -1885,7 +1885,7 @@
- if OSX:
- pycairo = "py3cairo"
- else:
-- pycairo = "pycairo"
-+ pycairo = "py3cairo"
- cython_add(Extension("xpra.client.gtk3.cairo_workaround",
- ["xpra/client/gtk3/cairo_workaround.pyx"],
- **pkgconfig(pycairo)
-@@ -2363,10 +2363,7 @@
+@@ -2359,10 +2359,7 @@ if v4l2_ENABLED:
v4l2_pkgconfig = pkgconfig()
#fuly warning: cython makes this difficult,
#we have to figure out if "device_caps" exists in the headers:
@@ -21,14 +14,16 @@
kwargs = {"ENABLE_DEVICE_CAPS" : ENABLE_DEVICE_CAPS}
make_constants("xpra", "codecs", "v4l2", "constants", **kwargs)
cython_add(Extension("xpra.codecs.v4l2.pusher",
+diff --git a/xpra/x11/bindings/keyboard_bindings.pyx b/xpra/x11/bindings/keyboard_bindings.pyx
+index bd7023d..064c6b5 100644
--- a/xpra/x11/bindings/keyboard_bindings.pyx
+++ b/xpra/x11/bindings/keyboard_bindings.pyx
-@@ -19,7 +19,7 @@
-
+@@ -21,7 +21,7 @@ from libc.stdlib cimport free, malloc
+
DEF PATH_MAX = 1024
DEF DFLT_XKB_RULES_FILE = b"base"
-DEF DFLT_XKB_CONFIG_ROOT = b"/usr/share/X11/xkb"
+DEF DFLT_XKB_CONFIG_ROOT = b"@xkeyboardconfig@/share/X11/xkb"
-
+
###################################
# Headers, python magic
diff --git a/pkgs/tools/filesystems/bcachefs-tools/default.nix b/pkgs/tools/filesystems/bcachefs-tools/default.nix
index e3ee04f6e2e..95923f202cf 100644
--- a/pkgs/tools/filesystems/bcachefs-tools/default.nix
+++ b/pkgs/tools/filesystems/bcachefs-tools/default.nix
@@ -3,12 +3,12 @@
stdenv.mkDerivation rec {
pname = "bcachefs-tools";
- version = "2019-07-13";
+ version = "2019-08-21";
src = fetchgit {
url = "https://evilpiepirate.org/git/bcachefs-tools.git";
- rev = "692eadd6ca9b45f12971126b326b6a89d7117e67";
- sha256 = "0d2kqy5p89qjrk38iqfk9zsh14c2x40d21kic9kcybdhalfq5q31";
+ rev = "72a408f84846fe702b8db4f158b678ee20bbf835";
+ sha256 = "0y5700afv1x1i3wnp3g71i3zhyhkwmx79j0irxr63fmg47n0ys1i";
};
enableParallelBuilding = true;
diff --git a/pkgs/tools/misc/calamares/default.nix b/pkgs/tools/misc/calamares/default.nix
index 070b7a7699c..2c48f995ca2 100644
--- a/pkgs/tools/misc/calamares/default.nix
+++ b/pkgs/tools/misc/calamares/default.nix
@@ -6,12 +6,12 @@
stdenv.mkDerivation rec {
pname = "calamares";
- version = "3.2.8";
+ version = "3.2.11";
# release including submodule
src = fetchurl {
url = "https://github.com/${pname}/${pname}/releases/download/v${version}/${pname}-${version}.tar.gz";
- sha256 = "1ymyl12fzxc5jjfbw4pfmgzp036w0dai76f7anilw2bnwfzq5g62";
+ sha256 = "1djrc8p6kll8szycyj86v02jphiw2xwfhn563siykphfqr0jknlw";
};
buildInputs = [
diff --git a/pkgs/tools/misc/ckb-next/default.nix b/pkgs/tools/misc/ckb-next/default.nix
index 9d2126db9ff..5a647541171 100644
--- a/pkgs/tools/misc/ckb-next/default.nix
+++ b/pkgs/tools/misc/ckb-next/default.nix
@@ -1,7 +1,7 @@
-{ stdenv, fetchFromGitHub, substituteAll, udev
+{ stdenv, mkDerivation, fetchFromGitHub, substituteAll, udev
, pkgconfig, qtbase, cmake, zlib, kmod }:
-stdenv.mkDerivation rec {
+mkDerivation rec {
version = "0.3.2";
pname = "ckb-next";
diff --git a/pkgs/tools/networking/ofono/0001-Search-connectors-in-OFONO_PLUGIN_PATH.patch b/pkgs/tools/networking/ofono/0001-Search-connectors-in-OFONO_PLUGIN_PATH.patch
new file mode 100644
index 00000000000..eb97209a693
--- /dev/null
+++ b/pkgs/tools/networking/ofono/0001-Search-connectors-in-OFONO_PLUGIN_PATH.patch
@@ -0,0 +1,120 @@
+From 0e0994c9716700c9484b3dccb25f98a9a59d1744 Mon Sep 17 00:00:00 2001
+From: Jan Tojnar
+Date: Fri, 23 Aug 2019 18:42:51 +0200
+Subject: [PATCH] Search connectors in OFONO_PLUGIN_PATH
+
+Previously, the connectors would only be looked for in a single
+directory, specified during compilation. This patch allows to
+traverse a list of directories provided by an environment variable.
+---
+ src/plugin.c | 77 ++++++++++++++++++++++++++++++++++------------------
+ 1 file changed, 50 insertions(+), 27 deletions(-)
+
+diff --git a/src/plugin.c b/src/plugin.c
+index 924a45ec..f05055c3 100644
+--- a/src/plugin.c
++++ b/src/plugin.c
+@@ -99,35 +99,12 @@ static gboolean check_plugin(struct ofono_plugin_desc *desc,
+ return TRUE;
+ }
+
+-#include "builtin.h"
+-
+-int __ofono_plugin_init(const char *pattern, const char *exclude)
+-{
+- gchar **patterns = NULL;
+- gchar **excludes = NULL;
+- GSList *list;
+- GDir *dir;
++static handle_dir(const gchar *plugin_path, const gchar **patterns, const gchar **excludes) {
+ const gchar *file;
+ gchar *filename;
+- unsigned int i;
+-
+- DBG("");
+-
+- if (pattern)
+- patterns = g_strsplit_set(pattern, ":, ", -1);
+-
+- if (exclude)
+- excludes = g_strsplit_set(exclude, ":, ", -1);
+-
+- for (i = 0; __ofono_builtin[i]; i++) {
+- if (check_plugin(__ofono_builtin[i],
+- patterns, excludes) == FALSE)
+- continue;
+-
+- add_plugin(NULL, __ofono_builtin[i]);
+- }
++ GDir *dir;
+
+- dir = g_dir_open(PLUGINDIR, 0, NULL);
++ dir = g_dir_open(plugin_path, 0, NULL);
+ if (dir != NULL) {
+ while ((file = g_dir_read_name(dir)) != NULL) {
+ void *handle;
+@@ -137,7 +114,7 @@ int __ofono_plugin_init(const char *pattern, const char *exclude)
+ g_str_has_suffix(file, ".so") == FALSE)
+ continue;
+
+- filename = g_build_filename(PLUGINDIR, file, NULL);
++ filename = g_build_filename(plugin_path, file, NULL);
+
+ handle = dlopen(filename, RTLD_NOW);
+ if (handle == NULL) {
+@@ -168,6 +145,52 @@ int __ofono_plugin_init(const char *pattern, const char *exclude)
+
+ g_dir_close(dir);
+ }
++}
++
++#include "builtin.h"
++
++int __ofono_plugin_init(const char *pattern, const char *exclude)
++{
++ gchar **patterns = NULL;
++ gchar **excludes = NULL;
++ GSList *list;
++ unsigned int i;
++
++ DBG("");
++
++ if (pattern)
++ patterns = g_strsplit_set(pattern, ":, ", -1);
++
++ if (exclude)
++ excludes = g_strsplit_set(exclude, ":, ", -1);
++
++ for (i = 0; __ofono_builtin[i]; i++) {
++ if (check_plugin(__ofono_builtin[i],
++ patterns, excludes) == FALSE)
++ continue;
++
++ add_plugin(NULL, __ofono_builtin[i]);
++ }
++
++
++ const gchar *plugin_path;
++
++ plugin_path = g_getenv ("OFONO_PLUGIN_PATH");
++
++ if (!plugin_path) {
++ gchar **plugin_path_list;
++ gsize i;
++
++ plugin_path_list = g_strsplit (plugin_path, G_SEARCHPATH_SEPARATOR_S, 0);
++
++ for (i = 0; plugin_path_list[i]; i++) {
++ handle_dir(plugin_path_list, patterns, excludes);
++ }
++
++ g_strfreev(plugin_path_list);
++ }
++
++ handle_dir(PLUGINDIR, patterns, excludes);
+
+ for (list = plugins; list; list = list->next) {
+ struct ofono_plugin *plugin = list->data;
+--
+2.22.0
+
diff --git a/pkgs/tools/networking/ofono/default.nix b/pkgs/tools/networking/ofono/default.nix
index 1e5bd6b66f5..21d1f9ee067 100644
--- a/pkgs/tools/networking/ofono/default.nix
+++ b/pkgs/tools/networking/ofono/default.nix
@@ -22,6 +22,10 @@ stdenv.mkDerivation rec {
sha256 = "1qzysmzpgbh6zc3x9xh931wxcazka9wwx727c2k66z9gal2n6n66";
};
+ patches = [
+ ./0001-Search-connectors-in-OFONO_PLUGIN_PATH.patch
+ ];
+
nativeBuildInputs = [
autoreconfHook
pkgconfig
@@ -37,7 +41,7 @@ stdenv.mkDerivation rec {
];
configureFlags = [
- "--with-dbusconfdir=${placeholder ''out''}/etc/dbus-1/system.d"
+ "--with-dbusconfdir=${placeholder ''out''}/share"
"--with-systemdunitdir=${placeholder ''out''}/lib/systemd/system"
"--enable-external-ell"
];
diff --git a/pkgs/tools/nix/nixpkgs-fmt/default.nix b/pkgs/tools/nix/nixpkgs-fmt/default.nix
index 34715c8673a..51e4e22bc5b 100644
--- a/pkgs/tools/nix/nixpkgs-fmt/default.nix
+++ b/pkgs/tools/nix/nixpkgs-fmt/default.nix
@@ -1,13 +1,13 @@
{ lib, rustPlatform, fetchFromGitHub }:
rustPlatform.buildRustPackage rec {
pname = "nixpkgs-fmt";
- version = "0.2.0";
+ version = "0.3.1";
src = fetchFromGitHub {
owner = "nix-community";
repo = pname;
rev = "v${version}";
- sha256 = "0sa0263pkpi423f1rdyg90axw9sdmgj8ma1mza0v46qzkwynwgh3";
+ sha256 = "0nz4njmrwacizz9z89ligxr2gyggk65vq9cmd6s4hn133gajf2n1";
};
cargoSha256 = "0p3qa1asdvw2npav4281lzndjczrzac6fr8z4y61m7rbn363s8sa";
diff --git a/pkgs/tools/security/nmap/default.nix b/pkgs/tools/security/nmap/default.nix
index bf9c7a4fc46..1b66dab35c8 100644
--- a/pkgs/tools/security/nmap/default.nix
+++ b/pkgs/tools/security/nmap/default.nix
@@ -31,11 +31,11 @@ in stdenv.mkDerivation rec {
++ optionals stdenv.cc.isClang [(
# Fixes a compile error due an ambiguous reference to bind(2) in
# nping/EchoServer.cc, which is otherwise resolved to std::bind.
- # Also fixes a missing include.
# https://github.com/nmap/nmap/pull/1363
fetchpatch {
url = "https://github.com/nmap/nmap/commit/5bbe66f1bd8cbd3718f5805139e2e8139e6849bb.diff";
- sha256 = "088r8ylpc9hachsxs4r17cqfa1ncyspbjvkc573lill7rk1r9m0s";
+ includes = [ "nping/EchoServer.cc" ];
+ sha256 = "0xcph9mycy57yryjg253frxyz87c4135rrbndlqw1400c8jxq70c";
}
)];
diff --git a/pkgs/tools/system/acpica-tools/default.nix b/pkgs/tools/system/acpica-tools/default.nix
index 95fa1047fe5..94da72c54b3 100644
--- a/pkgs/tools/system/acpica-tools/default.nix
+++ b/pkgs/tools/system/acpica-tools/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "acpica-tools";
- version = "20190703";
+ version = "20190816";
src = fetchurl {
url = "https://acpica.org/sites/acpica/files/acpica-unix-${version}.tar.gz";
- sha256 = "031m124a109vv6fx667h4ca2iav0xszrlvif9zcfxcaxbjsn6991";
+ sha256 = "0p7ws106hf8bir9yb1a5m6v3wmvqagxmk3l9rpp4i89vib44vv3s";
};
NIX_CFLAGS_COMPILE = "-O3";
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ bison flex ];
- installFlags = [ "PREFIX=$(out)" ];
+ installFlags = [ "PREFIX=${placeholder "out"}" ];
meta = with stdenv.lib; {
description = "ACPICA Tools";
diff --git a/pkgs/tools/typesetting/scdoc/default.nix b/pkgs/tools/typesetting/scdoc/default.nix
index af1e8711f22..9b695100150 100644
--- a/pkgs/tools/typesetting/scdoc/default.nix
+++ b/pkgs/tools/typesetting/scdoc/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "scdoc";
- version = "1.9.6";
+ version = "1.9.7";
src = fetchurl {
url = "https://git.sr.ht/~sircmpwn/scdoc/archive/${version}.tar.gz";
- sha256 = "0a2rxn0pihknvyvfvzib42v9c7zfdg8pi95q40fywwjb9clz59c9";
+ sha256 = "0y9p03dzdaszx02jbkdf3vcs52fqml591cmic5jdch5yznrg03ky";
};
postPatch = ''
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 4a9ab14cd04..ca4b421e6f2 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -157,6 +157,8 @@ in
cmark = callPackage ../development/libraries/cmark { };
+ cm256cc = callPackage ../development/libraries/cm256cc { };
+
conftest = callPackage ../development/tools/conftest {};
corgi = callPackage ../development/tools/corgi { };
@@ -1784,7 +1786,7 @@ in
massren = callPackage ../tools/misc/massren { };
- megasync = callPackage ../applications/misc/megasync { };
+ megasync = libsForQt5.callPackage ../applications/misc/megasync { };
meritous = callPackage ../games/meritous { };
@@ -4516,6 +4518,8 @@ in
libsidplayfp = callPackage ../development/libraries/libsidplayfp { };
+ libspf2 = callPackage ../development/libraries/libspf2 { };
+
libsrs2 = callPackage ../development/libraries/libsrs2 { };
libtermkey = callPackage ../development/libraries/libtermkey { };
@@ -5148,6 +5152,8 @@ in
offlineimap = callPackage ../tools/networking/offlineimap { };
+ ofono-phonesim = libsForQt5.callPackage ../development/tools/ofono-phonesim/default.nix { };
+
oh-my-zsh = callPackage ../shells/zsh/oh-my-zsh { };
ola = callPackage ../applications/misc/ola { };
@@ -6254,6 +6260,8 @@ in
sunxi-tools = callPackage ../development/tools/sunxi-tools { };
+ sumorobot-manager = python3Packages.callPackage ../applications/science/robotics/sumorobot-manager { };
+
super = callPackage ../tools/security/super { };
supertux-editor = callPackage ../applications/editors/supertux-editor { };
@@ -8364,6 +8372,8 @@ in
gputils = null;
};
+ serialdv = callPackage ../development/libraries/serialdv { };
+
serpent = callPackage ../development/compilers/serpent { };
shmig = callPackage ../development/tools/database/shmig { };
@@ -10065,6 +10075,8 @@ in
travis = callPackage ../development/tools/misc/travis { };
+ tree-sitter = callPackage ../development/tools/parsing/tree-sitter { };
+
trellis = callPackage ../development/tools/trellis { };
ttyd = callPackage ../servers/ttyd { };
@@ -12559,8 +12571,6 @@ in
luabind_luajit = luabind.override { lua = luajit; };
- luaffi = callPackage ../development/libraries/luaffi { lua = lua5_1; };
-
lzo = callPackage ../development/libraries/lzo { };
mapnik = callPackage ../development/libraries/mapnik { };
@@ -19017,6 +19027,8 @@ in
iptraf-ng = callPackage ../applications/networking/iptraf-ng { };
+ irccloud = callPackage ../applications/networking/irc/irccloud { };
+
irssi = callPackage ../applications/networking/irc/irssi { };
irssi_fish = callPackage ../applications/networking/irc/irssi/fish { };
@@ -24799,6 +24811,8 @@ in
tsung = callPackage ../applications/networking/tsung {};
+ bcompare = libsForQt5.callPackage ../applications/version-management/bcompare {};
+
qmk_firmware = callPackage ../development/misc/qmk_firmware {
avrgcc = pkgsCross.avr.buildPackages.gcc;
avrbinutils = pkgsCross.avr.buildPackages.binutils;
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index c5aca3967dc..a591b93bd7c 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -5065,6 +5065,8 @@ in {
xarray = callPackage ../development/python-modules/xarray { };
+ xapian = callPackage ../development/python-modules/xapian { xapian = pkgs.xapian; };
+
xlwt = callPackage ../development/python-modules/xlwt { };
xxhash = callPackage ../development/python-modules/xxhash { };