diff options
134 files changed, 524 insertions, 291 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 5ddc8b266ec15..188936812ab47 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -7238,6 +7238,12 @@ githubId = 623509; name = "Martijn Vermaat"; }; + martinetd = { + email = "f.ktfhrvnznqxacf@noclue.notk.org"; + github = "martinetd"; + githubId = 1729331; + name = "Dominique Martinet"; + }; martingms = { email = "martin@mg.am"; github = "martingms"; diff --git a/nixos/modules/config/fonts/fontdir.nix b/nixos/modules/config/fonts/fontdir.nix index db4b6c638ab4d..560918302ca66 100644 --- a/nixos/modules/config/fonts/fontdir.nix +++ b/nixos/modules/config/fonts/fontdir.nix @@ -39,6 +39,7 @@ in decompressFonts = mkOption { type = types.bool; default = config.programs.xwayland.enable; + defaultText = literalExpression "config.programs.xwayland.enable"; description = '' Whether to decompress fonts in <filename>/run/current-system/sw/share/X11/fonts</filename>. diff --git a/nixos/modules/config/gtk/gtk-icon-cache.nix b/nixos/modules/config/gtk/gtk-icon-cache.nix index 7441f4de40eb8..ff9aa7c6a0477 100644 --- a/nixos/modules/config/gtk/gtk-icon-cache.nix +++ b/nixos/modules/config/gtk/gtk-icon-cache.nix @@ -6,6 +6,7 @@ with lib; gtk.iconCache.enable = mkOption { type = types.bool; default = config.services.xserver.enable; + defaultText = literalExpression "config.services.xserver.enable"; description = '' Whether to build icon theme caches for GTK applications. ''; diff --git a/nixos/modules/config/i18n.nix b/nixos/modules/config/i18n.nix index 545d4a3dca61e..5b8d5b214496b 100644 --- a/nixos/modules/config/i18n.nix +++ b/nixos/modules/config/i18n.nix @@ -14,6 +14,12 @@ with lib; allLocales = any (x: x == "all") config.i18n.supportedLocales; locales = config.i18n.supportedLocales; }; + defaultText = literalExpression '' + pkgs.buildPackages.glibcLocales.override { + allLocales = any (x: x == "all") config.i18n.supportedLocales; + locales = config.i18n.supportedLocales; + } + ''; example = literalExpression "pkgs.glibcLocales"; description = '' Customized pkg.glibcLocales package. diff --git a/nixos/modules/misc/meta.nix b/nixos/modules/misc/meta.nix index 1410e33342a6b..3dd97cbec235e 100644 --- a/nixos/modules/misc/meta.nix +++ b/nixos/modules/misc/meta.nix @@ -37,7 +37,7 @@ in type = listOfMaintainers; internal = true; default = []; - example = [ lib.maintainers.all ]; + example = literalExpression ''[ lib.maintainers.all ]''; description = '' List of maintainers of each module. This option should be defined at most once per module. diff --git a/nixos/modules/programs/bcc.nix b/nixos/modules/programs/bcc.nix index d76249bb5cab4..e475c6ceaa6cc 100644 --- a/nixos/modules/programs/bcc.nix +++ b/nixos/modules/programs/bcc.nix @@ -1,9 +1,9 @@ -{ config, lib, ... }: +{ config, pkgs, lib, ... }: { options.programs.bcc.enable = lib.mkEnableOption "bcc"; config = lib.mkIf config.programs.bcc.enable { - environment.systemPackages = [ config.boot.kernelPackages.bcc ]; - boot.extraModulePackages = [ config.boot.kernelPackages.bcc ]; + environment.systemPackages = [ pkgs.bcc ]; + boot.extraModulePackages = [ pkgs.bcc ]; }; } diff --git a/nixos/modules/security/pam.nix b/nixos/modules/security/pam.nix index b03bf290fd231..8ed7a721a3ef8 100644 --- a/nixos/modules/security/pam.nix +++ b/nixos/modules/security/pam.nix @@ -38,6 +38,7 @@ let p11Auth = mkOption { default = config.security.pam.p11.enable; + defaultText = literalExpression "config.security.pam.p11.enable"; type = types.bool; description = '' If set, keys listed in @@ -49,6 +50,7 @@ let u2fAuth = mkOption { default = config.security.pam.u2f.enable; + defaultText = literalExpression "config.security.pam.u2f.enable"; type = types.bool; description = '' If set, users listed in @@ -61,6 +63,7 @@ let yubicoAuth = mkOption { default = config.security.pam.yubico.enable; + defaultText = literalExpression "config.security.pam.yubico.enable"; type = types.bool; description = '' If set, users listed in @@ -83,6 +86,7 @@ let usbAuth = mkOption { default = config.security.pam.usb.enable; + defaultText = literalExpression "config.security.pam.usb.enable"; type = types.bool; description = '' If set, users listed in @@ -93,6 +97,7 @@ let otpwAuth = mkOption { default = config.security.pam.enableOTPW; + defaultText = literalExpression "config.security.pam.enableOTPW"; type = types.bool; description = '' If set, the OTPW system will be used (if @@ -126,6 +131,7 @@ let fprintAuth = mkOption { default = config.services.fprintd.enable; + defaultText = literalExpression "config.services.fprintd.enable"; type = types.bool; description = '' If set, fingerprint reader will be used (if exists and @@ -135,6 +141,7 @@ let oathAuth = mkOption { default = config.security.pam.oath.enable; + defaultText = literalExpression "config.security.pam.oath.enable"; type = types.bool; description = '' If set, the OATH Toolkit will be used. @@ -249,6 +256,7 @@ let pamMount = mkOption { default = config.security.pam.mount.enable; + defaultText = literalExpression "config.security.pam.mount.enable"; type = types.bool; description = '' Enable PAM mount (pam_mount) system to mount fileystems on user login. diff --git a/nixos/modules/services/audio/icecast.nix b/nixos/modules/services/audio/icecast.nix index 6ca20a7a10866..5ee5bd745f96e 100644 --- a/nixos/modules/services/audio/icecast.nix +++ b/nixos/modules/services/audio/icecast.nix @@ -50,6 +50,7 @@ in { type = types.nullOr types.str; description = "DNS name or IP address that will be used for the stream directory lookups or possibily the playlist generation if a Host header is not provided."; default = config.networking.domain; + defaultText = literalExpression "config.networking.domain"; }; admin = { diff --git a/nixos/modules/services/audio/navidrome.nix b/nixos/modules/services/audio/navidrome.nix index c2fe429f9844e..3660e05310be1 100644 --- a/nixos/modules/services/audio/navidrome.nix +++ b/nixos/modules/services/audio/navidrome.nix @@ -9,7 +9,7 @@ in { options = { services.navidrome = { - enable = mkEnableOption pkgs.navidrome.meta.description; + enable = mkEnableOption "Navidrome music server"; settings = mkOption rec { type = settingsFormat.type; diff --git a/nixos/modules/services/audio/ympd.nix b/nixos/modules/services/audio/ympd.nix index 36c5527027ffa..84b72d1425132 100644 --- a/nixos/modules/services/audio/ympd.nix +++ b/nixos/modules/services/audio/ympd.nix @@ -31,6 +31,7 @@ in { port = mkOption { type = types.int; default = config.services.mpd.network.port; + defaultText = literalExpression "config.services.mpd.network.port"; description = "The port where MPD is listening."; example = 6600; }; diff --git a/nixos/modules/services/backup/bacula.nix b/nixos/modules/services/backup/bacula.nix index cc8b77cbfbe8e..5989020423463 100644 --- a/nixos/modules/services/backup/bacula.nix +++ b/nixos/modules/services/backup/bacula.nix @@ -302,6 +302,7 @@ in { name = mkOption { default = "${config.networking.hostName}-fd"; + defaultText = literalExpression ''"''${config.networking.hostName}-fd"''; type = types.str; description = '' The client name that must be used by the Director when connecting. @@ -364,6 +365,7 @@ in { name = mkOption { default = "${config.networking.hostName}-sd"; + defaultText = literalExpression ''"''${config.networking.hostName}-sd"''; type = types.str; description = '' Specifies the Name of the Storage daemon. @@ -439,6 +441,7 @@ in { name = mkOption { default = "${config.networking.hostName}-dir"; + defaultText = literalExpression ''"''${config.networking.hostName}-dir"''; type = types.str; description = '' The director name used by the system administrator. This directive is diff --git a/nixos/modules/services/cluster/kubernetes/kubelet.nix b/nixos/modules/services/cluster/kubernetes/kubelet.nix index eb0cb1f3dbc0c..2806f73375bca 100644 --- a/nixos/modules/services/cluster/kubernetes/kubelet.nix +++ b/nixos/modules/services/cluster/kubernetes/kubelet.nix @@ -168,6 +168,7 @@ in hostname = mkOption { description = "Kubernetes kubelet hostname override."; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; type = str; }; diff --git a/nixos/modules/services/cluster/kubernetes/pki.nix b/nixos/modules/services/cluster/kubernetes/pki.nix index faf951d815741..76ab03cd520ba 100644 --- a/nixos/modules/services/cluster/kubernetes/pki.nix +++ b/nixos/modules/services/cluster/kubernetes/pki.nix @@ -98,6 +98,7 @@ in the public and private keys respectively. ''; default = "${config.services.cfssl.dataDir}/ca"; + defaultText = literalExpression ''"''${config.services.cfssl.dataDir}/ca"''; type = str; }; diff --git a/nixos/modules/services/cluster/kubernetes/proxy.nix b/nixos/modules/services/cluster/kubernetes/proxy.nix index a92043d52597c..a09efcef94eaf 100644 --- a/nixos/modules/services/cluster/kubernetes/proxy.nix +++ b/nixos/modules/services/cluster/kubernetes/proxy.nix @@ -37,6 +37,7 @@ in hostname = mkOption { description = "Kubernetes proxy hostname override."; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; type = str; }; diff --git a/nixos/modules/services/computing/slurm/slurm.nix b/nixos/modules/services/computing/slurm/slurm.nix index 0c96f32313297..d2f3feffc970c 100644 --- a/nixos/modules/services/computing/slurm/slurm.nix +++ b/nixos/modules/services/computing/slurm/slurm.nix @@ -80,6 +80,7 @@ in dbdHost = mkOption { type = types.str; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; description = '' Hostname of the machine where <literal>slurmdbd</literal> is running (i.e. name returned by <literal>hostname -s</literal>). diff --git a/nixos/modules/services/continuous-integration/github-runner.nix b/nixos/modules/services/continuous-integration/github-runner.nix index 943c1e4598df5..59370f43fe750 100644 --- a/nixos/modules/services/continuous-integration/github-runner.nix +++ b/nixos/modules/services/continuous-integration/github-runner.nix @@ -58,6 +58,7 @@ in ''; example = "nixos"; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; }; runnerGroup = mkOption { diff --git a/nixos/modules/services/continuous-integration/hydra/default.nix b/nixos/modules/services/continuous-integration/hydra/default.nix index d6cde77c0a3f5..ccb7cc21734eb 100644 --- a/nixos/modules/services/continuous-integration/hydra/default.nix +++ b/nixos/modules/services/continuous-integration/hydra/default.nix @@ -203,6 +203,7 @@ in buildMachinesFiles = mkOption { type = types.listOf types.path; default = optional (config.nix.buildMachines != []) "/etc/nix/machines"; + defaultText = literalExpression ''optional (config.nix.buildMachines != []) "/etc/nix/machines"''; example = [ "/etc/nix/machines" "/var/lib/hydra/provisioner/machines" ]; description = "List of files containing build machines."; }; diff --git a/nixos/modules/services/games/factorio.nix b/nixos/modules/services/games/factorio.nix index 0e8860a02819c..96fcd6d2c8b30 100644 --- a/nixos/modules/services/games/factorio.nix +++ b/nixos/modules/services/games/factorio.nix @@ -75,8 +75,8 @@ in description = '' The name of the savegame that will be used by the server. - When not present in ${stateDir}/saves, a new map with default - settings will be generated before starting the service. + When not present in /var/lib/''${config.services.factorio.stateDirName}/saves, + a new map with default settings will be generated before starting the service. ''; }; # TODO Add more individual settings as nixos-options? diff --git a/nixos/modules/services/logging/journalwatch.nix b/nixos/modules/services/logging/journalwatch.nix index 576c646c0f58b..fb86904d1ea29 100644 --- a/nixos/modules/services/logging/journalwatch.nix +++ b/nixos/modules/services/logging/journalwatch.nix @@ -74,6 +74,7 @@ in { mailFrom = mkOption { type = types.str; default = "journalwatch@${config.networking.hostName}"; + defaultText = literalExpression ''"journalwatch@''${config.networking.hostName}"''; description = '' Mail address to send journalwatch reports from. ''; diff --git a/nixos/modules/services/logging/klogd.nix b/nixos/modules/services/logging/klogd.nix index 2d1f515da9209..8d371c161eb18 100644 --- a/nixos/modules/services/logging/klogd.nix +++ b/nixos/modules/services/logging/klogd.nix @@ -10,6 +10,7 @@ with lib; services.klogd.enable = mkOption { type = types.bool; default = versionOlder (getVersion config.boot.kernelPackages.kernel) "3.5"; + defaultText = literalExpression ''versionOlder (getVersion config.boot.kernelPackages.kernel) "3.5"''; description = '' Whether to enable klogd, the kernel log message processing daemon. Since systemd handles logging of kernel messages on diff --git a/nixos/modules/services/mail/opendkim.nix b/nixos/modules/services/mail/opendkim.nix index beff57613afc5..f1ffc5d3aeef2 100644 --- a/nixos/modules/services/mail/opendkim.nix +++ b/nixos/modules/services/mail/opendkim.nix @@ -55,6 +55,7 @@ in { domains = mkOption { type = types.str; default = "csl:${config.networking.hostName}"; + defaultText = literalExpression ''"csl:''${config.networking.hostName}"''; example = "csl:example.com,mydomain.net"; description = '' Local domains set (see <literal>opendkim(8)</literal> for more information on datasets). diff --git a/nixos/modules/services/misc/etcd.nix b/nixos/modules/services/misc/etcd.nix index c4ea091a03802..26ad1ad5536aa 100644 --- a/nixos/modules/services/misc/etcd.nix +++ b/nixos/modules/services/misc/etcd.nix @@ -17,6 +17,7 @@ in { name = mkOption { description = "Etcd unique node name."; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; type = types.str; }; diff --git a/nixos/modules/services/misc/gitea.nix b/nixos/modules/services/misc/gitea.nix index c0f7661c5698b..022a73c2b596a 100644 --- a/nixos/modules/services/misc/gitea.nix +++ b/nixos/modules/services/misc/gitea.nix @@ -299,7 +299,7 @@ in ENABLED = true; MAILER_TYPE = "sendmail"; FROM = "do-not-reply@example.org"; - SENDMAIL_PATH = "${pkgs.system-sendmail}/bin/sendmail"; + SENDMAIL_PATH = "''${pkgs.system-sendmail}/bin/sendmail"; }; other = { SHOW_FOOTER_VERSION = false; diff --git a/nixos/modules/services/misc/gitlab.nix b/nixos/modules/services/misc/gitlab.nix index b2abe70627d0d..01a7ea42d9db4 100644 --- a/nixos/modules/services/misc/gitlab.nix +++ b/nixos/modules/services/misc/gitlab.nix @@ -475,6 +475,7 @@ in { host = mkOption { type = types.str; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; description = "GitLab host name. Used e.g. for copy-paste URLs."; }; @@ -534,6 +535,7 @@ in { host = mkOption { type = types.str; default = config.services.gitlab.host; + defaultText = literalExpression "config.services.gitlab.host"; description = "GitLab container registry host name."; }; port = mkOption { diff --git a/nixos/modules/services/misc/matrix-appservice-discord.nix b/nixos/modules/services/misc/matrix-appservice-discord.nix index c448614eca328..947471e56b46d 100644 --- a/nixos/modules/services/misc/matrix-appservice-discord.nix +++ b/nixos/modules/services/misc/matrix-appservice-discord.nix @@ -98,6 +98,9 @@ in { serviceDependencies = mkOption { type = with types; listOf str; default = optional config.services.matrix-synapse.enable "matrix-synapse.service"; + defaultText = literalExpression '' + optional config.services.matrix-synapse.enable "matrix-synapse.service" + ''; description = '' List of Systemd services to require and wait for when starting the application service, such as the Matrix homeserver if it's running on the same host. diff --git a/nixos/modules/services/misc/matrix-synapse.nix b/nixos/modules/services/misc/matrix-synapse.nix index 950c72c6e589b..0f96f6b1ee225 100644 --- a/nixos/modules/services/misc/matrix-synapse.nix +++ b/nixos/modules/services/misc/matrix-synapse.nix @@ -227,6 +227,7 @@ in { type = types.str; example = "example.com"; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; description = '' The domain name of the server, with optional explicit port. This is used by remote servers to look up the server address. @@ -379,6 +380,11 @@ in { default = if versionAtLeast config.system.stateVersion "18.03" then "psycopg2" else "sqlite3"; + defaultText = literalExpression '' + if versionAtLeast config.system.stateVersion "18.03" + then "psycopg2" + else "sqlite3" + ''; description = '' The database engine name. Can be sqlite or psycopg2. ''; diff --git a/nixos/modules/services/misc/mautrix-telegram.nix b/nixos/modules/services/misc/mautrix-telegram.nix index 59d0b6824090c..3b070b873b048 100644 --- a/nixos/modules/services/misc/mautrix-telegram.nix +++ b/nixos/modules/services/misc/mautrix-telegram.nix @@ -108,6 +108,9 @@ in { serviceDependencies = mkOption { type = with types; listOf str; default = optional config.services.matrix-synapse.enable "matrix-synapse.service"; + defaultText = literalExpression '' + optional config.services.matrix-synapse.enable "matrix-synapse.service" + ''; description = '' List of Systemd services to require and wait for when starting the application service. ''; diff --git a/nixos/modules/services/misc/moonraker.nix b/nixos/modules/services/misc/moonraker.nix index de8668a0c066e..e08d2f84212dc 100644 --- a/nixos/modules/services/misc/moonraker.nix +++ b/nixos/modules/services/misc/moonraker.nix @@ -18,6 +18,7 @@ in { klipperSocket = mkOption { type = types.path; default = config.services.klipper.apiSocket; + defaultText = literalExpression "config.services.klipper.apiSocket"; description = "Path to Klipper's API socket."; }; diff --git a/nixos/modules/services/misc/mx-puppet-discord.nix b/nixos/modules/services/misc/mx-puppet-discord.nix index fb7592458295e..b6f5e04511ae3 100644 --- a/nixos/modules/services/misc/mx-puppet-discord.nix +++ b/nixos/modules/services/misc/mx-puppet-discord.nix @@ -67,6 +67,9 @@ in { serviceDependencies = mkOption { type = with types; listOf str; default = optional config.services.matrix-synapse.enable "matrix-synapse.service"; + defaultText = literalExpression '' + optional config.services.matrix-synapse.enable "matrix-synapse.service" + ''; description = '' List of Systemd services to require and wait for when starting the application service. ''; diff --git a/nixos/modules/services/misc/sourcehut/default.nix b/nixos/modules/services/misc/sourcehut/default.nix index 9c812d6b043c4..c84a75b0ca029 100644 --- a/nixos/modules/services/misc/sourcehut/default.nix +++ b/nixos/modules/services/misc/sourcehut/default.nix @@ -71,6 +71,9 @@ in originBase = mkOption { type = types.str; default = with config.networking; hostName + lib.optionalString (domain != null) ".${domain}"; + defaultText = literalExpression '' + with config.networking; hostName + optionalString (domain != null) ".''${domain}" + ''; description = '' Host name used by reverse-proxy and for default settings. Will host services at git."''${originBase}". For example: git.sr.ht ''; diff --git a/nixos/modules/services/misc/xmrig.nix b/nixos/modules/services/misc/xmrig.nix index cf01bb119e894..c5c3803920c8d 100644 --- a/nixos/modules/services/misc/xmrig.nix +++ b/nixos/modules/services/misc/xmrig.nix @@ -18,6 +18,7 @@ with lib; package = mkOption { type = types.package; default = pkgs.xmrig; + defaultText = literalExpression "pkgs.xmrig"; example = literalExpression "pkgs.xmrig-mo"; description = "XMRig package to use."; }; diff --git a/nixos/modules/services/monitoring/graphite.nix b/nixos/modules/services/monitoring/graphite.nix index 4690a252c9259..0dbb33530c928 100644 --- a/nixos/modules/services/monitoring/graphite.nix +++ b/nixos/modules/services/monitoring/graphite.nix @@ -324,6 +324,7 @@ in { mongoUrl = mkOption { default = "mongodb://${config.services.mongodb.bind_ip}:27017/seyren"; + defaultText = literalExpression ''"mongodb://''${config.services.mongodb.bind_ip}:27017/seyren"''; description = "Mongodb connection string."; type = types.str; }; diff --git a/nixos/modules/services/monitoring/nagios.nix b/nixos/modules/services/monitoring/nagios.nix index 83020d52fc82b..2c7f0ed196688 100644 --- a/nixos/modules/services/monitoring/nagios.nix +++ b/nixos/modules/services/monitoring/nagios.nix @@ -131,6 +131,7 @@ in validateConfig = mkOption { type = types.bool; default = pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform; + defaultText = literalExpression "pkgs.stdenv.hostPlatform == pkgs.stdenv.buildPlatform"; description = "if true, the syntax of the nagios configuration file is checked at build time"; }; diff --git a/nixos/modules/services/monitoring/parsedmarc.nix b/nixos/modules/services/monitoring/parsedmarc.nix index eeee04b4400ca..8571e1f01ed69 100644 --- a/nixos/modules/services/monitoring/parsedmarc.nix +++ b/nixos/modules/services/monitoring/parsedmarc.nix @@ -93,6 +93,7 @@ in dashboard = lib.mkOption { type = lib.types.bool; default = config.services.grafana.enable; + defaultText = lib.literalExpression "config.services.grafana.enable"; description = '' Whether the official parsedmarc grafana dashboard should be provisioned to the local grafana instance. diff --git a/nixos/modules/services/monitoring/smartd.nix b/nixos/modules/services/monitoring/smartd.nix index 3ea254371142b..73021b1b4d38f 100644 --- a/nixos/modules/services/monitoring/smartd.nix +++ b/nixos/modules/services/monitoring/smartd.nix @@ -125,6 +125,7 @@ in mail = { enable = mkOption { default = config.services.mail.sendmailSetuidWrapper != null; + defaultText = literalExpression "config.services.mail.sendmailSetuidWrapper != null"; type = types.bool; description = "Whenever to send e-mail notifications."; }; @@ -169,12 +170,14 @@ in x11 = { enable = mkOption { default = config.services.xserver.enable; + defaultText = literalExpression "config.services.xserver.enable"; type = types.bool; description = "Whenever to send X11 xmessage notifications."; }; display = mkOption { default = ":${toString config.services.xserver.display}"; + defaultText = literalExpression ''":''${toString config.services.xserver.display}"''; type = types.str; description = "DISPLAY to send X11 notifications to."; }; diff --git a/nixos/modules/services/network-filesystems/ipfs.nix b/nixos/modules/services/network-filesystems/ipfs.nix index 36b72ca48b2c3..5482b2aaf88cc 100644 --- a/nixos/modules/services/network-filesystems/ipfs.nix +++ b/nixos/modules/services/network-filesystems/ipfs.nix @@ -79,6 +79,11 @@ in if versionAtLeast config.system.stateVersion "17.09" then "/var/lib/ipfs" else "/var/lib/ipfs/.ipfs"; + defaultText = literalExpression '' + if versionAtLeast config.system.stateVersion "17.09" + then "/var/lib/ipfs" + else "/var/lib/ipfs/.ipfs" + ''; description = "The data dir for IPFS"; }; diff --git a/nixos/modules/services/networking/bind.nix b/nixos/modules/services/networking/bind.nix index f2b2e4c4d5d4f..e44f8d4cf3026 100644 --- a/nixos/modules/services/networking/bind.nix +++ b/nixos/modules/services/networking/bind.nix @@ -144,6 +144,7 @@ in forwarders = mkOption { default = config.networking.nameservers; + defaultText = literalExpression "config.networking.nameservers"; type = types.listOf types.str; description = " List of servers we should forward requests to. diff --git a/nixos/modules/services/networking/coturn.nix b/nixos/modules/services/networking/coturn.nix index 610754e9bd39d..ce563c31136f6 100644 --- a/nixos/modules/services/networking/coturn.nix +++ b/nixos/modules/services/networking/coturn.nix @@ -193,6 +193,7 @@ in { realm = mkOption { type = types.str; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; example = "example.com"; description = '' The default realm to be used for the users when no explicit diff --git a/nixos/modules/services/networking/dnscrypt-wrapper.nix b/nixos/modules/services/networking/dnscrypt-wrapper.nix index 400d6e67044e2..c2add170e9cc7 100644 --- a/nixos/modules/services/networking/dnscrypt-wrapper.nix +++ b/nixos/modules/services/networking/dnscrypt-wrapper.nix @@ -145,6 +145,7 @@ in { providerName = mkOption { type = types.str; default = "2.dnscrypt-cert.${config.networking.hostName}"; + defaultText = literalExpression ''"2.dnscrypt-cert.''${config.networking.hostName}"''; example = "2.dnscrypt-cert.myresolver"; description = '' The name that will be given to this DNSCrypt resolver. diff --git a/nixos/modules/services/networking/flannel.nix b/nixos/modules/services/networking/flannel.nix index b15339870ee2d..ac84b3d35a3d8 100644 --- a/nixos/modules/services/networking/flannel.nix +++ b/nixos/modules/services/networking/flannel.nix @@ -93,6 +93,9 @@ in { ''; type = types.nullOr types.str; default = with config.networking; (hostName + optionalString (domain != null) ".${domain}"); + defaultText = literalExpression '' + with config.networking; (hostName + optionalString (domain != null) ".''${domain}") + ''; example = "node1.example.com"; }; diff --git a/nixos/modules/services/networking/ncdns.nix b/nixos/modules/services/networking/ncdns.nix index af17fc0814b2e..82c285d051607 100644 --- a/nixos/modules/services/networking/ncdns.nix +++ b/nixos/modules/services/networking/ncdns.nix @@ -76,6 +76,7 @@ in identity.hostname = mkOption { type = types.str; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; example = "example.com"; description = '' The hostname of this ncdns instance, which defaults to the machine diff --git a/nixos/modules/services/networking/nsd.nix b/nixos/modules/services/networking/nsd.nix index 893995165b9e4..cf6c9661dc1b0 100644 --- a/nixos/modules/services/networking/nsd.nix +++ b/nixos/modules/services/networking/nsd.nix @@ -603,6 +603,7 @@ in reuseport = mkOption { type = types.bool; default = pkgs.stdenv.isLinux; + defaultText = literalExpression "pkgs.stdenv.isLinux"; description = '' Whether to enable SO_REUSEPORT on all used sockets. This lets multiple processes bind to the same port. This speeds up operation especially diff --git a/nixos/modules/services/networking/ntp/chrony.nix b/nixos/modules/services/networking/ntp/chrony.nix index d414936a2c2be..34728455a2120 100644 --- a/nixos/modules/services/networking/ntp/chrony.nix +++ b/nixos/modules/services/networking/ntp/chrony.nix @@ -52,6 +52,7 @@ in servers = mkOption { default = config.networking.timeServers; + defaultText = literalExpression "config.networking.timeServers"; type = types.listOf types.str; description = '' The set of NTP servers from which to synchronise. diff --git a/nixos/modules/services/networking/ntp/ntpd.nix b/nixos/modules/services/networking/ntp/ntpd.nix index ce4802ce02450..12be0d045a857 100644 --- a/nixos/modules/services/networking/ntp/ntpd.nix +++ b/nixos/modules/services/networking/ntp/ntpd.nix @@ -77,6 +77,7 @@ in servers = mkOption { default = config.networking.timeServers; + defaultText = literalExpression "config.networking.timeServers"; type = types.listOf types.str; description = '' The set of NTP servers from which to synchronise. diff --git a/nixos/modules/services/networking/ntp/openntpd.nix b/nixos/modules/services/networking/ntp/openntpd.nix index 9f3892e3b538e..e86b71291f960 100644 --- a/nixos/modules/services/networking/ntp/openntpd.nix +++ b/nixos/modules/services/networking/ntp/openntpd.nix @@ -23,6 +23,7 @@ in servers = mkOption { default = config.services.ntp.servers; + defaultText = literalExpression "config.services.ntp.servers"; type = types.listOf types.str; inherit (options.services.ntp.servers) description; }; diff --git a/nixos/modules/services/networking/resilio.nix b/nixos/modules/services/networking/resilio.nix index 4701b0e8143d2..891278506417d 100644 --- a/nixos/modules/services/networking/resilio.nix +++ b/nixos/modules/services/networking/resilio.nix @@ -58,6 +58,7 @@ in type = types.str; example = "Voltron"; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; description = '' Name of the Resilio Sync device. ''; diff --git a/nixos/modules/services/networking/seafile.nix b/nixos/modules/services/networking/seafile.nix index 856797b6b0209..d7fb22edebed7 100644 --- a/nixos/modules/services/networking/seafile.nix +++ b/nixos/modules/services/networking/seafile.nix @@ -124,6 +124,7 @@ in { type = types.package; description = "Which package to use for the seafile server."; default = pkgs.seafile-server; + defaultText = literalExpression "pkgs.seafile-server"; }; seahubExtraConf = mkOption { diff --git a/nixos/modules/services/networking/skydns.nix b/nixos/modules/services/networking/skydns.nix index c4e959b57bbed..dea60a3862a38 100644 --- a/nixos/modules/services/networking/skydns.nix +++ b/nixos/modules/services/networking/skydns.nix @@ -49,6 +49,7 @@ in { nameservers = mkOption { default = map (n: n + ":53") config.networking.nameservers; + defaultText = literalExpression ''map (n: n + ":53") config.networking.nameservers''; type = types.listOf types.str; description = "Skydns list of nameservers to forward DNS requests to when not authoritative for a domain."; example = ["8.8.8.8:53" "8.8.4.4:53"]; diff --git a/nixos/modules/services/networking/smokeping.nix b/nixos/modules/services/networking/smokeping.nix index c075cbbceac9a..bd71b158dbe32 100644 --- a/nixos/modules/services/networking/smokeping.nix +++ b/nixos/modules/services/networking/smokeping.nix @@ -241,6 +241,12 @@ in + FPing binary = ${config.security.wrapperDir}/fping ''; + defaultText = literalExpression '' + ''' + + FPing + binary = ''${config.security.wrapperDir}/fping + ''' + ''; description = "Probe configuration"; }; sendmail = mkOption { diff --git a/nixos/modules/services/networking/soju.nix b/nixos/modules/services/networking/soju.nix index 68a33e9dccba5..cb0acf4765ff1 100644 --- a/nixos/modules/services/networking/soju.nix +++ b/nixos/modules/services/networking/soju.nix @@ -43,6 +43,7 @@ in hostName = mkOption { type = types.str; default = config.networking.hostName; + defaultText = literalExpression "config.networking.hostName"; description = "Server hostname."; }; diff --git a/nixos/modules/services/security/oauth2_proxy_nginx.nix b/nixos/modules/services/security/oauth2_proxy_nginx.nix index d82ddb894ea55..5853c5a123c6b 100644 --- a/nixos/modules/services/security/oauth2_proxy_nginx.nix +++ b/nixos/modules/services/security/oauth2_proxy_nginx.nix @@ -8,6 +8,7 @@ in proxy = mkOption { type = types.str; default = config.services.oauth2_proxy.httpAddress; + defaultText = literalExpression "config.services.oauth2_proxy.httpAddress"; description = '' The address of the reverse proxy endpoint for oauth2_proxy ''; diff --git a/nixos/modules/services/security/torsocks.nix b/nixos/modules/services/security/torsocks.nix index 47ac95c4626e0..fdd6ac32cc662 100644 --- a/nixos/modules/services/security/torsocks.nix +++ b/nixos/modules/services/security/torsocks.nix @@ -37,6 +37,7 @@ in enable = mkOption { type = types.bool; default = config.services.tor.enable && config.services.tor.client.enable; + defaultText = literalExpression "config.services.tor.enable && config.services.tor.client.enable"; description = '' Whether to build <literal>/etc/tor/torsocks.conf</literal> containing the specified global torsocks configuration. diff --git a/nixos/modules/services/video/epgstation/default.nix b/nixos/modules/services/video/epgstation/default.nix index 36f7b937d5acd..56bd9d9eeecab 100644 --- a/nixos/modules/services/video/epgstation/default.nix +++ b/nixos/modules/services/video/epgstation/default.nix @@ -48,7 +48,7 @@ let in { options.services.epgstation = { - enable = mkEnableOption pkgs.epgstation.meta.description; + enable = mkEnableOption "EPGStation: DTV Software in Japan"; usePreconfiguredStreaming = mkOption { type = types.bool; diff --git a/nixos/modules/services/video/mirakurun.nix b/nixos/modules/services/video/mirakurun.nix index 16efb56cfd610..35303b2332c67 100644 --- a/nixos/modules/services/video/mirakurun.nix +++ b/nixos/modules/services/video/mirakurun.nix @@ -24,7 +24,7 @@ in { options = { services.mirakurun = { - enable = mkEnableOption mirakurun.meta.description; + enable = mkEnableOption "the Mirakurun DVR Tuner Server"; port = mkOption { type = with types; nullOr port; diff --git a/nixos/modules/services/web-apps/ihatemoney/default.nix b/nixos/modules/services/web-apps/ihatemoney/default.nix index 238241854c1ce..ad314c885ba8d 100644 --- a/nixos/modules/services/web-apps/ihatemoney/default.nix +++ b/nixos/modules/services/web-apps/ihatemoney/default.nix @@ -79,6 +79,7 @@ in email = mkOption { type = types.str; default = "ihatemoney@${config.networking.hostName}"; + defaultText = literalExpression ''"ihatemoney@''${config.networking.hostName}"''; description = "The email of the sender of ihatemoney emails"; }; }; diff --git a/nixos/modules/services/web-apps/openwebrx.nix b/nixos/modules/services/web-apps/openwebrx.nix index 51005cd1e4972..9e90c01e0bbb0 100644 --- a/nixos/modules/services/web-apps/openwebrx.nix +++ b/nixos/modules/services/web-apps/openwebrx.nix @@ -9,6 +9,7 @@ in package = mkOption { type = types.package; default = pkgs.openwebrx; + defaultText = literalExpression "pkgs.openwebrx"; description = "OpenWebRX package to use for the service"; }; }; diff --git a/nixos/modules/services/web-apps/peertube.nix b/nixos/modules/services/web-apps/peertube.nix index 362a3358b7930..932ddcfef198a 100644 --- a/nixos/modules/services/web-apps/peertube.nix +++ b/nixos/modules/services/web-apps/peertube.nix @@ -234,6 +234,7 @@ in { package = lib.mkOption { type = lib.types.package; default = pkgs.peertube; + defaultText = lib.literalExpression "pkgs.peertube"; description = "Peertube package to use."; }; }; diff --git a/nixos/modules/services/web-servers/uwsgi.nix b/nixos/modules/services/web-servers/uwsgi.nix index ac435951310eb..a1cad17336d8d 100644 --- a/nixos/modules/services/web-servers/uwsgi.nix +++ b/nixos/modules/services/web-servers/uwsgi.nix @@ -121,7 +121,7 @@ in { moin = { type = "normal"; pythonPackages = self: with self; [ moinmoin ]; - socket = "${config.services.uwsgi.runDir}/uwsgi.sock"; + socket = "''${config.services.uwsgi.runDir}/uwsgi.sock"; }; }; } diff --git a/nixos/modules/services/web-servers/varnish/default.nix b/nixos/modules/services/web-servers/varnish/default.nix index 0ebf58eb9f616..fe817313a993b 100644 --- a/nixos/modules/services/web-servers/varnish/default.nix +++ b/nixos/modules/services/web-servers/varnish/default.nix @@ -42,6 +42,7 @@ in stateDir = mkOption { type = types.path; default = "/var/spool/varnish/${config.networking.hostName}"; + defaultText = literalExpression ''"/var/spool/varnish/''${config.networking.hostName}"''; description = " Directory holding all state for Varnish to run. "; diff --git a/nixos/modules/system/activation/activation-script.nix b/nixos/modules/system/activation/activation-script.nix index 8dbfe393f109b..4a32387db8da5 100644 --- a/nixos/modules/system/activation/activation-script.nix +++ b/nixos/modules/system/activation/activation-script.nix @@ -150,7 +150,7 @@ in example = literalExpression '' { plasmaSetup = { text = ''' - ${pkgs.libsForQt5.kservice}/bin/kbuildsycoca5" + ''${pkgs.libsForQt5.kservice}/bin/kbuildsycoca5" '''; deps = []; }; diff --git a/nixos/modules/system/activation/top-level.nix b/nixos/modules/system/activation/top-level.nix index b04577aeb83e4..58377ea64438e 100644 --- a/nixos/modules/system/activation/top-level.nix +++ b/nixos/modules/system/activation/top-level.nix @@ -201,6 +201,7 @@ in system.boot.loader.kernelFile = mkOption { internal = true; default = pkgs.stdenv.hostPlatform.linux-kernel.target; + defaultText = literalExpression "pkgs.stdenv.hostPlatform.linux-kernel.target"; type = types.str; description = '' Name of the kernel file to be passed to the bootloader. diff --git a/nixos/modules/system/boot/loader/grub/grub.nix b/nixos/modules/system/boot/loader/grub/grub.nix index fa8500dd42bdc..8db271f871352 100644 --- a/nixos/modules/system/boot/loader/grub/grub.nix +++ b/nixos/modules/system/boot/loader/grub/grub.nix @@ -99,6 +99,7 @@ in enable = mkOption { default = !config.boot.isContainer; + defaultText = literalExpression "!config.boot.isContainer"; type = types.bool; description = '' Whether to enable the GNU GRUB boot loader. diff --git a/nixos/modules/system/boot/resolved.nix b/nixos/modules/system/boot/resolved.nix index a6fc07da0abbf..21d3fab2f35df 100644 --- a/nixos/modules/system/boot/resolved.nix +++ b/nixos/modules/system/boot/resolved.nix @@ -32,6 +32,7 @@ in services.resolved.domains = mkOption { default = config.networking.search; + defaultText = literalExpression "config.networking.search"; example = [ "example.com" ]; type = types.listOf types.str; description = '' diff --git a/nixos/modules/system/boot/timesyncd.nix b/nixos/modules/system/boot/timesyncd.nix index 692315dbe99c4..5f35a15476965 100644 --- a/nixos/modules/system/boot/timesyncd.nix +++ b/nixos/modules/system/boot/timesyncd.nix @@ -9,6 +9,7 @@ with lib; services.timesyncd = { enable = mkOption { default = !config.boot.isContainer; + defaultText = literalExpression "!config.boot.isContainer"; type = types.bool; description = '' Enables the systemd NTP client daemon. @@ -16,6 +17,7 @@ with lib; }; servers = mkOption { default = config.networking.timeServers; + defaultText = literalExpression "config.networking.timeServers"; type = types.listOf types.str; description = '' The set of NTP servers from which to synchronise. diff --git a/nixos/modules/virtualisation/amazon-options.nix b/nixos/modules/virtualisation/amazon-options.nix index 698edcd835a6d..0465571ca9262 100644 --- a/nixos/modules/virtualisation/amazon-options.nix +++ b/nixos/modules/virtualisation/amazon-options.nix @@ -1,6 +1,6 @@ { config, lib, pkgs, ... }: let - inherit (lib) types; + inherit (lib) literalExpression types; in { options = { ec2 = { @@ -50,6 +50,7 @@ in { }; efi = lib.mkOption { default = pkgs.stdenv.hostPlatform.isAarch64; + defaultText = literalExpression "pkgs.stdenv.hostPlatform.isAarch64"; internal = true; description = '' Whether the EC2 instance is using EFI. diff --git a/nixos/modules/virtualisation/qemu-vm.nix b/nixos/modules/virtualisation/qemu-vm.nix index 91356ac1d9845..c7c3d7474645a 100644 --- a/nixos/modules/virtualisation/qemu-vm.nix +++ b/nixos/modules/virtualisation/qemu-vm.nix @@ -329,6 +329,7 @@ in mkOption { type = types.str; default = "./${config.system.name}.qcow2"; + defaultText = literalExpression ''"./''${config.system.name}.qcow2"''; description = '' Path to the disk image containing the root filesystem. @@ -678,6 +679,7 @@ in mkOption { type = types.str; default = "./${config.system.name}-efi-vars.fd"; + defaultText = literalExpression ''"./''${config.system.name}-efi-vars.fd"''; description = '' Path to nvram image containing UEFI variables. The will be created diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index a66721346926c..8ac3f6043d084 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -44,6 +44,7 @@ in boot-stage1 = handleTest ./boot-stage1.nix {}; borgbackup = handleTest ./borgbackup.nix {}; botamusique = handleTest ./botamusique.nix {}; + bpf = handleTestOn ["x86_64-linux" "aarch64-linux"] ./bpf.nix {}; btrbk = handleTest ./btrbk.nix {}; buildbot = handleTest ./buildbot.nix {}; buildkite-agents = handleTest ./buildkite-agents.nix {}; diff --git a/nixos/tests/bpf.nix b/nixos/tests/bpf.nix new file mode 100644 index 0000000000000..233c7dab1ee22 --- /dev/null +++ b/nixos/tests/bpf.nix @@ -0,0 +1,25 @@ +import ./make-test-python.nix ({ pkgs, ... }: { + name = "bpf"; + meta.maintainers = with pkgs.lib.maintainers; [ martinetd ]; + + machine = { pkgs, ... }: { + programs.bcc.enable = true; + environment.systemPackages = with pkgs; [ bpftrace ]; + }; + + testScript = '' + ## bcc + # syscount -d 1 stops 1s after probe started so is good for that + print(machine.succeed("syscount -d 1")) + + ## bpftrace + # list probes + machine.succeed("bpftrace -l") + # simple BEGIN probe (user probe on bpftrace itself) + print(machine.succeed("bpftrace -e 'BEGIN { print(\"ok\"); exit(); }'")) + # tracepoint + print(machine.succeed("bpftrace -e 'tracepoint:syscalls:sys_enter_* { print(probe); exit(); }'")) + # kprobe + print(machine.succeed("bpftrace -e 'kprobe:schedule { print(probe); exit() }'")) + ''; +}) diff --git a/pkgs/applications/audio/ashuffle/default.nix b/pkgs/applications/audio/ashuffle/default.nix index 5a1be2eaf0c3c..90a2abe8adfb4 100644 --- a/pkgs/applications/audio/ashuffle/default.nix +++ b/pkgs/applications/audio/ashuffle/default.nix @@ -10,13 +10,13 @@ stdenv.mkDerivation rec { pname = "ashuffle"; - version = "3.12.3"; + version = "3.12.5"; src = fetchFromGitHub { owner = "joshkunz"; repo = "ashuffle"; rev = "v${version}"; - sha256 = "sha256-y2DH8SjSZ8hV6DAC4uDw5Wn7O0oj/WIhIr4BE/+jUxM="; + sha256 = "sha256-dPgv6EzRxRdHkGvys601Bkg9Srd8oEjoE9jbAin74Vk="; fetchSubmodules = true; }; diff --git a/pkgs/applications/audio/spot/default.nix b/pkgs/applications/audio/spot/default.nix index aa7a041f40c7a..e17e85036949b 100644 --- a/pkgs/applications/audio/spot/default.nix +++ b/pkgs/applications/audio/spot/default.nix @@ -21,19 +21,19 @@ stdenv.mkDerivation rec { pname = "spot"; - version = "0.2.0"; + version = "0.2.2"; src = fetchFromGitHub { owner = "xou816"; repo = "spot"; rev = version; - sha256 = "16pri0in514xzy21bsijyvyyjwa0f6lg4zyizmdcmcdw4glrs11m"; + hash = "sha256-g0oVhlfez9i+Vv8lt/aNftCVqdgPMDySBBeLyOv7Zl8="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; name = "${pname}-${version}"; - sha256 = "1fvnidxh4rnkzqg3qjk3zlkp2d41qdamm0bfavk8jrazw8sgih84"; + hash = "sha256-n10aYzkRqEe1h2WPAfARjH79Npvv+3fdX9jCtxv2a34="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/graphics/ImageMagick/7.0.nix b/pkgs/applications/graphics/ImageMagick/7.0.nix index c78f9fb8dddf9..2207618d9b500 100644 --- a/pkgs/applications/graphics/ImageMagick/7.0.nix +++ b/pkgs/applications/graphics/ImageMagick/7.0.nix @@ -18,13 +18,13 @@ in stdenv.mkDerivation rec { pname = "imagemagick"; - version = "7.1.0-16"; + version = "7.1.0-17"; src = fetchFromGitHub { owner = "ImageMagick"; repo = "ImageMagick"; rev = version; - sha256 = "sha256-souH5Fop4ss1ysaYylHcykoeB0HvMtqU51xggKoRFDM="; + sha256 = "sha256-P6w7dDDvY8r55qN3hnsuzO8kp85gxp2t6vShmhoPOgs="; }; outputs = [ "out" "dev" "doc" ]; # bin/ isn't really big diff --git a/pkgs/applications/misc/dbeaver/default.nix b/pkgs/applications/misc/dbeaver/default.nix index edf12ffb6de9f..156cc7188dcf9 100644 --- a/pkgs/applications/misc/dbeaver/default.nix +++ b/pkgs/applications/misc/dbeaver/default.nix @@ -14,6 +14,8 @@ , libXtst , zlib , maven +, webkitgtk +, glib-networking }: stdenv.mkDerivation rec { @@ -69,6 +71,9 @@ stdenv.mkDerivation rec { libXrender libXtst zlib + ] ++ lib.optionals stdenv.isLinux [ + webkitgtk + glib-networking ]; desktopItems = [ @@ -130,7 +135,8 @@ stdenv.mkDerivation rec { makeWrapper $out/dbeaver/dbeaver $out/bin/dbeaver \ --prefix PATH : ${jdk}/bin \ - --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk3 libXtst ])} \ + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath ([ glib gtk3 libXtst webkitgtk glib-networking ])} \ + --prefix GIO_EXTRA_MODULES : "${glib-networking}/lib/gio/modules" \ --prefix XDG_DATA_DIRS : "$GSETTINGS_SCHEMAS_PATH" mkdir -p $out/share/pixmaps diff --git a/pkgs/applications/misc/jrnl/default.nix b/pkgs/applications/misc/jrnl/default.nix index 967d4931c31ec..494329ecabe76 100644 --- a/pkgs/applications/misc/jrnl/default.nix +++ b/pkgs/applications/misc/jrnl/default.nix @@ -16,6 +16,11 @@ python3.pkgs.buildPythonApplication rec { sha256 = "sha256-+kPr7ndY6u1HMw6m0UZJ5jxVIPNjlTfQt7OYEdZkHBE="; }; + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'tzlocal = ">2.0, <3.0"' 'tzlocal = ">2.0, !=3.0"' + ''; + nativeBuildInputs = with python3.pkgs; [ poetry-core ]; diff --git a/pkgs/applications/misc/zola/default.nix b/pkgs/applications/misc/zola/default.nix index 6c24f65d76241..5107697f8d89f 100644 --- a/pkgs/applications/misc/zola/default.nix +++ b/pkgs/applications/misc/zola/default.nix @@ -13,16 +13,16 @@ rustPlatform.buildRustPackage rec { pname = "zola"; - version = "0.14.1"; + version = "0.15.0"; src = fetchFromGitHub { owner = "getzola"; - repo = pname; + repo = "zola"; rev = "v${version}"; - sha256 = "1cvvxiginwf1rldijzwk9gh63qc0ls5d7j3j8ri7yhk21pz9f6bi"; + sha256 = "152ydi2gxfhyqsw6i79f9h1xwvwfq729likbagjy5z2bv822m44v"; }; - cargoSha256 = "1hg8j9a8c6c3ap24jd96y07rlp4f0s2mkyx5034nlnkm3lj4q42n"; + cargoSha256 = "0bv2yyqy9l896p0dk1668ayw3xf71h9ddyymimx44j6nw389fxx3"; nativeBuildInputs = [ cmake diff --git a/pkgs/applications/networking/browsers/lagrange/default.nix b/pkgs/applications/networking/browsers/lagrange/default.nix index 6f218e44847c0..db791d9e43c51 100644 --- a/pkgs/applications/networking/browsers/lagrange/default.nix +++ b/pkgs/applications/networking/browsers/lagrange/default.nix @@ -19,13 +19,13 @@ stdenv.mkDerivation rec { pname = "lagrange"; - version = "1.9.0"; + version = "1.9.1"; src = fetchFromGitHub { owner = "skyjake"; repo = "lagrange"; rev = "v${version}"; - sha256 = "sha256-T4LZcdQHqykcv1HnTHMt5LE/1gwKPjN3f0ZmqSCID/A="; + sha256 = "sha256-5mZbx9L7YDG2VwrF/iFhYCw8R/0FOnZz9cRkA5Wl9MA="; fetchSubmodules = true; }; diff --git a/pkgs/applications/networking/cluster/cilium/default.nix b/pkgs/applications/networking/cluster/cilium/default.nix index 2351b41369ebd..da9f0938d1446 100644 --- a/pkgs/applications/networking/cluster/cilium/default.nix +++ b/pkgs/applications/networking/cluster/cilium/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "cilium-cli"; - version = "0.9.2"; + version = "0.9.3"; src = fetchFromGitHub { owner = "cilium"; repo = pname; rev = "v${version}"; - sha256 = "sha256-vIm5PkRyh41jtvDrLDxFVzSkhFipYYYEEY0/qxbOXGE="; + sha256 = "sha256-t4Im3/2qcKnDDcKWmUUa/lsZszDDlos+uTERKxd7x1c="; }; vendorSha256 = null; diff --git a/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix b/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix index 0d5355a1eb4d2..34bd755b78354 100644 --- a/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix +++ b/pkgs/applications/networking/instant-messengers/whatsapp-for-linux/default.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation rec { pname = "whatsapp-for-linux"; - version = "1.3.0"; + version = "1.3.1"; src = fetchFromGitHub { owner = "eneshecan"; repo = pname; rev = "v${version}"; - sha256 = "sha256-VdkCjzmZqP/ZVY1H9FxBGe5rN0nZEPZbMp3MVKL6WLc="; + sha256 = "sha256-TX6fMuhe6VHbhWJSsPM0iOV4CuCfULD5McJyHuTW4lI="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/networking/instant-messengers/zulip-term/default.nix b/pkgs/applications/networking/instant-messengers/zulip-term/default.nix index b2f80c70d2408..1775ce9a48179 100644 --- a/pkgs/applications/networking/instant-messengers/zulip-term/default.nix +++ b/pkgs/applications/networking/instant-messengers/zulip-term/default.nix @@ -29,6 +29,7 @@ python3.pkgs.buildPythonApplication rec { lxml typing-extensions python-dateutil + pytz tzlocal ]; diff --git a/pkgs/applications/system/pantheon-tweaks/default.nix b/pkgs/applications/system/pantheon-tweaks/default.nix index 67e1bb32aeab6..af6bf54fd7152 100644 --- a/pkgs/applications/system/pantheon-tweaks/default.nix +++ b/pkgs/applications/system/pantheon-tweaks/default.nix @@ -14,13 +14,13 @@ stdenv.mkDerivation rec { pname = "pantheon-tweaks"; - version = "1.0.2"; + version = "1.0.3"; src = fetchFromGitHub { owner = "pantheon-tweaks"; repo = pname; rev = version; - sha256 = "sha256-2spZ6RQ5PhBNrv/xG1TNbYsJrmuRpaZ72CeH2s8+P8g="; + sha256 = "sha256-Pn/MIJ/WS/TY5bemM77B37E0KFRlDUfrOl1XS2yJlGk="; }; patches = [ diff --git a/pkgs/applications/version-management/git-and-tools/delta/default.nix b/pkgs/applications/version-management/git-and-tools/delta/default.nix index 86abd894f39ca..216e7793b98b4 100644 --- a/pkgs/applications/version-management/git-and-tools/delta/default.nix +++ b/pkgs/applications/version-management/git-and-tools/delta/default.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "delta"; - version = "0.10.3"; + version = "0.11.0"; src = fetchFromGitHub { owner = "dandavison"; repo = pname; rev = version; - sha256 = "sha256-LABadIux5YId62+t8qXJvBTvB5Beu4u4D0HebNJibxY="; + sha256 = "sha256-gurF1vJwxmUi64Gf8m8W2cWyk/SmCNmaDo+jmYWu5fM="; }; - cargoSha256 = "sha256-W2OBvVFCaykT/GRIUASsyNlkOk2Bp8yufoMXPX4oryA="; + cargoSha256 = "sha256-rMxIzh8dhzSF66feQSooodrxxiwEDjAT9Z35cFlA6XI="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/applications/video/kodi/unwrapped.nix b/pkgs/applications/video/kodi/unwrapped.nix index 5fa652de0c7e6..dc5e41aeac5b0 100644 --- a/pkgs/applications/video/kodi/unwrapped.nix +++ b/pkgs/applications/video/kodi/unwrapped.nix @@ -198,10 +198,10 @@ in stdenv.mkDerivation { '' + lib.optionalString (stdenv.hostPlatform != stdenv.buildPlatform) '' # Need these tools on the build system when cross compiling, # hacky, but have found no other way. - CXX=${stdenv.cc.targetPrefix}c++ LD=ld make -C tools/depends/native/JsonSchemaBuilder + CXX=$CXX_FOR_BUILD LD=ld make -C tools/depends/native/JsonSchemaBuilder cmakeFlags+=" -DWITH_JSONSCHEMABUILDER=$PWD/tools/depends/native/JsonSchemaBuilder/bin" - CXX=${stdenv.cc.targetPrefix}c++ LD=ld make EXTRA_CONFIGURE= -C tools/depends/native/TexturePacker + CXX=$CXX_FOR_BUILD LD=ld make EXTRA_CONFIGURE= -C tools/depends/native/TexturePacker cmakeFlags+=" -DWITH_TEXTUREPACKER=$PWD/tools/depends/native/TexturePacker/bin" ''; diff --git a/pkgs/applications/video/kodi/wrapper.nix b/pkgs/applications/video/kodi/wrapper.nix index 7377e638676eb..52b7679a325ea 100644 --- a/pkgs/applications/video/kodi/wrapper.nix +++ b/pkgs/applications/video/kodi/wrapper.nix @@ -22,7 +22,7 @@ buildEnv { paths = [ kodi ] ++ addons; pathsToLink = [ "/share" ]; - buildInputs = [ makeWrapper ]; + nativeBuildInputs = [ makeWrapper ]; postBuild = '' mkdir $out/bin diff --git a/pkgs/applications/virtualization/runc/default.nix b/pkgs/applications/virtualization/runc/default.nix index 6b0764e04ba52..79a21075f0384 100644 --- a/pkgs/applications/virtualization/runc/default.nix +++ b/pkgs/applications/virtualization/runc/default.nix @@ -16,13 +16,13 @@ buildGoModule rec { pname = "runc"; - version = "1.0.2"; + version = "1.0.3"; src = fetchFromGitHub { owner = "opencontainers"; repo = "runc"; rev = "v${version}"; - sha256 = "sha256-l+Uq7aiXFrI+qbKSOZpYFIXz0VJBBR7ZZxlAJeGb7K4="; + sha256 = "sha256-Tl/JKbIpao+FCjngPzaVkxse50zo3XQ9Mg/AdkblMcI="; }; vendorSha256 = null; diff --git a/pkgs/applications/window-managers/i3/wmfocus.nix b/pkgs/applications/window-managers/i3/wmfocus.nix index 9c33c555353c3..ec2e03de0f8ee 100644 --- a/pkgs/applications/window-managers/i3/wmfocus.nix +++ b/pkgs/applications/window-managers/i3/wmfocus.nix @@ -3,16 +3,16 @@ rustPlatform.buildRustPackage rec { pname = "wmfocus"; - version = "1.2.0"; + version = "1.3.0"; src = fetchFromGitHub { owner = "svenstaro"; repo = pname; rev = "v${version}"; - sha256 = "sha256-fZbsKu7C+rqggaFVSDNIGDAgn23M7mi+1jhV85s1Co8="; + sha256 = "sha256-HrS+C/6KDG2Rn/3u/mMmp4vzQ5YAHUFL4HFecteuzsc="; }; - cargoSha256 = "sha256-ejzVJdtOXBPe+14g4aJFBMCvXkmNia9dNAk/BVQ2ZSQ="; + cargoSha256 = "sha256-EzgYnfUgwK2ldzrlqe9N9jeGgK+RzQPjbOjJCGEkcwE="; nativeBuildInputs = [ python3 pkg-config ]; buildInputs = [ cairo libxkbcommon xorg.xcbutilkeysyms ]; diff --git a/pkgs/data/misc/conway_polynomials/default.nix b/pkgs/data/misc/conway_polynomials/default.nix index cabc28a89ce9e..1f5c4d57f76a5 100644 --- a/pkgs/data/misc/conway_polynomials/default.nix +++ b/pkgs/data/misc/conway_polynomials/default.nix @@ -1,14 +1,12 @@ { lib, stdenv , fetchurl -, python2 +, python3 }: stdenv.mkDerivation rec { pname = "conway_polynomials"; version = "0.5"; - pythonEnv = python2.withPackages (ps: with ps; [ six ]); - src = fetchurl { url = "mirror://sageupstream/conway_polynomials/conway_polynomials-${version}.tar.bz2"; sha256 = "05zb1ly9x2bbscqv0jgc45g48xx77mfs7qdbqhn4ihmihn57iwnq"; @@ -16,8 +14,8 @@ stdenv.mkDerivation rec { # Script that creates the "database" (nested python array) and pickles it spkg-install = fetchurl { - url = "https://git.sagemath.org/sage.git/plain/build/pkgs/conway_polynomials/spkg-install.py?id=07d6c37d18811e2b377a9689790a7c5e24da16ba"; - sha256 = "0m12nfb37j3bn4bp06ddgnyp2d6z0hg5f83pbbjszxw7vxs33a82"; + url = "https://git.sagemath.org/sage.git/plain/build/pkgs/conway_polynomials/spkg-install.py?id=9.2"; + sha256 = "1bwnqasnyv793hxg29viing4dnliz29grkhldsirq19d509yk1fs"; }; installPhase = '' @@ -31,7 +29,7 @@ stdenv.mkDerivation rec { export SAGE_SHARE="$out/share" export PYTHONPATH=$PWD - ${pythonEnv.interpreter} ${spkg-install} + ${python3.interpreter} ${spkg-install} ''; meta = with lib; { diff --git a/pkgs/data/misc/elliptic_curves/default.nix b/pkgs/data/misc/elliptic_curves/default.nix index 9825940002109..daa017a681128 100644 --- a/pkgs/data/misc/elliptic_curves/default.nix +++ b/pkgs/data/misc/elliptic_curves/default.nix @@ -1,6 +1,6 @@ { lib, stdenv , fetchurl -, python2 +, python3 }: stdenv.mkDerivation rec { @@ -30,7 +30,7 @@ stdenv.mkDerivation rec { export SAGE_SHARE="$out/share" export PYTHONPATH=$PWD - ${python2.interpreter} ${spkg-install} + ${python3.interpreter} ${spkg-install} ''; meta = with lib; { diff --git a/pkgs/desktops/cinnamon/xviewer/default.nix b/pkgs/desktops/cinnamon/xviewer/default.nix index 42a4beb4f5e5c..7b89ab2d5ab8a 100644 --- a/pkgs/desktops/cinnamon/xviewer/default.nix +++ b/pkgs/desktops/cinnamon/xviewer/default.nix @@ -26,13 +26,13 @@ stdenv.mkDerivation rec { pname = "xviewer"; - version = "3.0.2"; + version = "3.2.1"; src = fetchFromGitHub { owner = "linuxmint"; repo = pname; rev = version; - sha256 = "sha256-hvoTb9afyVdcm5suB1ZxkxUyNFSVRFjYuNVc0jE3RF0="; + sha256 = "sha256-9SUpJ76s3gf1852xnJh3Sz6SeuKhcGHtv+woiXztCS4="; }; nativeBuildInputs = [ diff --git a/pkgs/development/interpreters/clojure/default.nix b/pkgs/development/interpreters/clojure/default.nix index a412aafe2ac04..137c5e8b62954 100644 --- a/pkgs/development/interpreters/clojure/default.nix +++ b/pkgs/development/interpreters/clojure/default.nix @@ -2,12 +2,12 @@ stdenv.mkDerivation rec { pname = "clojure"; - version = "1.10.3.1029"; + version = "1.10.3.1040"; src = fetchurl { # https://clojure.org/releases/tools url = "https://download.clojure.org/install/clojure-tools-${version}.tar.gz"; - sha256 = "14c08xva1r6sl3h78vhckwx5dd8kqwi7457prygh9330b7r8caa2"; + sha256 = "+21o3usbxeOoac7umPzZaDNVify1fjHuTujgNKtNeXc="; }; nativeBuildInputs = [ diff --git a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py index d3642592ae43b..3a6a14133ea37 100755 --- a/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py +++ b/pkgs/development/interpreters/python/update-python-libraries/update-python-libraries.py @@ -309,8 +309,8 @@ def _update_package(path, target): with open(path, 'r') as f: text = f.read() - # Determine pname. - pname = _get_unique_value('pname', text) + # Determine pname. Many files have more than one pname + pnames = _get_values('pname', text) # Determine version. version = _get_unique_value('version', text) @@ -320,7 +320,18 @@ def _update_package(path, target): extension = _determine_extension(text, fetcher) - new_version, new_sha256, prefix = FETCHERS[fetcher](pname, extension, version, target) + # Attempt a fetch using each pname, e.g. backports-zoneinfo vs backports.zoneinfo + successful_fetch = False + for pname in pnames: + try: + new_version, new_sha256, prefix = FETCHERS[fetcher](pname, extension, version, target) + successful_fetch = True + break + except ValueError: + continue + + if not successful_fetch: + raise ValueError(f"Unable to find correct package using these pnames: {pnames}") if new_version == version: logging.info("Path {}: no update available for {}.".format(path, pname)) @@ -331,7 +342,15 @@ def _update_package(path, target): raise ValueError("no file available for {}.".format(pname)) text = _replace_value('version', new_version, text) - text = _replace_value('sha256', new_sha256, text) + + # fetchers can specify a sha256, or a sri hash + try: + text = _replace_value('sha256', new_sha256, text) + except ValueError: + # hashes from pypi are 16-bit encoded sha256's, need translate to an sri hash if used with "hash" + sri_hash = subprocess.check_output(["nix", "hash", "to-sri", "--type", "sha256", new_sha256]).decode('utf-8').strip() + text = _replace_value('hash', sri_hash, text) + if fetcher == 'fetchFromGitHub': text = _replace_value('rev', f"{prefix}${{version}}", text) # incase there's no prefix, just rewrite without interpolation diff --git a/pkgs/development/interpreters/rakudo/zef.nix b/pkgs/development/interpreters/rakudo/zef.nix index c06823ef7b532..d151c6765bf3a 100644 --- a/pkgs/development/interpreters/rakudo/zef.nix +++ b/pkgs/development/interpreters/rakudo/zef.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "zef"; - version = "0.13.0"; + version = "0.13.4"; src = fetchFromGitHub { owner = "ugexe"; repo = "zef"; rev = "v${version}"; - sha256 = "sha256-4B0xhEBjIPFXyT/SdT5qeDNnpntk2nd/zYwgt35sD+s="; + sha256 = "sha256-zTgXMICuLn612bmL5e6GP5aBQ4uOcSLfce0PCRYGob0="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/development/libraries/physics/apfel/default.nix b/pkgs/development/libraries/physics/apfel/default.nix index b0fff0c92ba5d..9697133a70eeb 100644 --- a/pkgs/development/libraries/physics/apfel/default.nix +++ b/pkgs/development/libraries/physics/apfel/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, gfortran, lhapdf, python2, zlib }: +{ lib, stdenv, fetchFromGitHub, gfortran, lhapdf, python3, zlib }: stdenv.mkDerivation rec { pname = "apfel"; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { sha256 = "sha256-szEtSC/NouYlHSjVoX9Hoh7yQ0W82rVccYEF1L2tXoU="; }; - buildInputs = [ gfortran lhapdf python2 zlib ]; + buildInputs = [ gfortran lhapdf python3 zlib ]; enableParallelBuilding = true; diff --git a/pkgs/development/python-modules/aprslib/default.nix b/pkgs/development/python-modules/aprslib/default.nix index c5f4fa75a572b..67d585d36ed0c 100644 --- a/pkgs/development/python-modules/aprslib/default.nix +++ b/pkgs/development/python-modules/aprslib/default.nix @@ -7,13 +7,13 @@ buildPythonPackage rec { pname = "aprslib"; - version = "0.6.47"; + version = "0.7.0"; src = fetchFromGitHub { owner = "rossengeorgiev"; repo = "aprs-python"; rev = "v${version}"; - sha256 = "1569v74ym2r8vxx3dnjcs5fr7rdrfb0i9sycny5frw2zgms4ag6b"; + sha256 = "sha256-QasyF0Ch4zdPoAgcqRavEENVGA/02/AgeWAgXYcSUjk="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/azure-mgmt-subscription/default.nix b/pkgs/development/python-modules/azure-mgmt-subscription/default.nix index d4238cc8204ff..64dcf44345efe 100644 --- a/pkgs/development/python-modules/azure-mgmt-subscription/default.nix +++ b/pkgs/development/python-modules/azure-mgmt-subscription/default.nix @@ -11,12 +11,12 @@ buildPythonPackage rec { pname = "azure-mgmt-subscription"; - version = "1.0.0"; + version = "2.0.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "22f606f298419f466a8149811fc762686c93da00a7dc15d3b7cdbf22b96cf5db"; + sha256 = "70ec6e3395549c434bfd981f8f76cb8b6863339bad9b31924c1510af661dbf45"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/clickhouse-driver/default.nix b/pkgs/development/python-modules/clickhouse-driver/default.nix index 9a4c0f0f92beb..dd1698f9a3ae4 100644 --- a/pkgs/development/python-modules/clickhouse-driver/default.nix +++ b/pkgs/development/python-modules/clickhouse-driver/default.nix @@ -16,14 +16,14 @@ buildPythonPackage rec { pname = "clickhouse-driver"; - version = "0.2.0"; + version = "0.2.2"; # pypi source doesn't contain tests src = fetchFromGitHub { owner = "mymarilyn"; repo = "clickhouse-driver"; - rev = "96b7ba448c63ca2670cc9aa70d4a0e08826fb650"; - sha256 = "sha256-HFKUxJOlBCVlu7Ia8heGpwX6+HdKuwSy92s3v+GKGwE="; + rev = version; + sha256 = "0sx4jbadx9frzhqnj8b9w9l508x1r7j7b9883h7xq93lf00rxkfz"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/django-rq/default.nix b/pkgs/development/python-modules/django-rq/default.nix index 7b524ea863648..ebdbd916ef1d3 100644 --- a/pkgs/development/python-modules/django-rq/default.nix +++ b/pkgs/development/python-modules/django-rq/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "django-rq"; - version = "2.5.0"; + version = "2.5.1"; format = "setuptools"; disabled = isPy27; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "rq"; repo = pname; rev = "v${version}"; - sha256 = "sha256-ly0gixl1cPHa03h44zXT8d1/NqrEBnQS6JmuuGj5Rk4="; + sha256 = "sha256-4oc3zco/j4lnAiooW87rU6xkzGSGCj3fIyikjiKQNZk="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/exchangelib/skip_failing_test.patch b/pkgs/development/python-modules/exchangelib/skip_failing_test.patch deleted file mode 100644 index 6c070acaf75a7..0000000000000 --- a/pkgs/development/python-modules/exchangelib/skip_failing_test.patch +++ /dev/null @@ -1,18 +0,0 @@ ---- ./tests/__init__.py 1980-01-02 00:00:00.000000000 +0000 -+++ ./tests/__init__.py 1980-01-02 00:00:00.000000000 +0000 -@@ -301,6 +301,7 @@ - self.assertEqual(id(base_p.thread_pool), id(p.thread_pool)) - self.assertEqual(id(base_p._session_pool), id(p._session_pool)) - -+ @unittest.skip("no network connection inside the Nix sandbox") - def test_close(self): - proc = psutil.Process() - ip_addresses = {info[4][0] for info in socket.getaddrinfo( -@@ -1257,6 +1258,7 @@ - ) - - -+@unittest.skip("no network connection inside the Nix sandbox") - class EWSTest(unittest.TestCase): - @classmethod - def setUpClass(cls): diff --git a/pkgs/development/python-modules/filebrowser_safe/default.nix b/pkgs/development/python-modules/filebrowser_safe/default.nix index 0cc1eae5ac20c..0ffc8a06b52ab 100644 --- a/pkgs/development/python-modules/filebrowser_safe/default.nix +++ b/pkgs/development/python-modules/filebrowser_safe/default.nix @@ -5,12 +5,12 @@ }: buildPythonPackage rec { - version = "0.5.0"; + version = "1.0.0"; pname = "filebrowser_safe"; src = fetchPypi { inherit pname version; - sha256 = "5dcd31dd79684025139b43841f6515af1da5a4bb0de15bc4d88003db1970648e"; + sha256 = "1209a26abd5a085a6453e020513fd94e920bde3908a2bcf3fe0ad5e4292b943b"; }; buildInputs = [ django ]; diff --git a/pkgs/development/python-modules/flake8-length/default.nix b/pkgs/development/python-modules/flake8-length/default.nix index 7cb2f6b86c5d0..34e226bd4635c 100644 --- a/pkgs/development/python-modules/flake8-length/default.nix +++ b/pkgs/development/python-modules/flake8-length/default.nix @@ -8,12 +8,12 @@ buildPythonPackage rec { pname = "flake8-length"; - version = "0.2.0"; + version = "0.2.2"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "15frvccm1qx783jlx8fw811ks9jszln3agbb58lg4dhbmjaf2cxw"; + sha256 = "3536fee1d2a19c01f56ebb909c4d81f686f8181091a9bc3ddf3a5621c464760a"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/gplaycli/default.nix b/pkgs/development/python-modules/gplaycli/default.nix index 28f244bc354cf..7ac5cca1ebd59 100644 --- a/pkgs/development/python-modules/gplaycli/default.nix +++ b/pkgs/development/python-modules/gplaycli/default.nix @@ -1,5 +1,5 @@ { buildPythonPackage, lib, libffi, isPy3k, pyasn1, clint, ndg-httpsclient -, protobuf, requests, args, gpapi, pyaxmlparser, fetchFromGitHub +, protobuf, requests, args, gpapi, pyaxmlparser, setuptools, fetchFromGitHub }: buildPythonPackage rec { @@ -15,7 +15,7 @@ buildPythonPackage rec { disabled = !isPy3k; - propagatedBuildInputs = [ libffi pyasn1 clint ndg-httpsclient protobuf requests args gpapi pyaxmlparser ]; + propagatedBuildInputs = [ libffi pyasn1 clint ndg-httpsclient protobuf requests args gpapi pyaxmlparser setuptools ]; meta = with lib; { homepage = "https://github.com/matlink/gplaycli"; diff --git a/pkgs/development/python-modules/lc7001/default.nix b/pkgs/development/python-modules/lc7001/default.nix index 3567a01861edb..32c3ddd5a1356 100644 --- a/pkgs/development/python-modules/lc7001/default.nix +++ b/pkgs/development/python-modules/lc7001/default.nix @@ -8,14 +8,14 @@ buildPythonPackage rec { pname = "lc7001"; - version = "1.0.3"; + version = "1.0.4"; format = "pyproject"; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - sha256 = "NgnszlgmeUnfWs9onnboFRz3c4OibsNaZHjDINvoMPc="; + sha256 = "sha256-1qObmGpu6mU3gdxS8stH+4Zc2NA7W1+pS7fOXALC0Ug="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/numexpr/default.nix b/pkgs/development/python-modules/numexpr/default.nix index c2630d75eb45d..31b529c83dab4 100644 --- a/pkgs/development/python-modules/numexpr/default.nix +++ b/pkgs/development/python-modules/numexpr/default.nix @@ -7,11 +7,11 @@ buildPythonPackage rec { pname = "numexpr"; - version = "2.7.3"; + version = "2.8.0"; src = fetchPypi { inherit pname version; - sha256 = "43616529f9b7d1afc83386f943dc66c4da5e052f00217ba7e3ad8dd1b5f3a825"; + sha256 = "9fec076b76c90a5f3929373f548834bb203c6d23a81a895e60d0fe9cca075e99"; }; # Remove existing site.cfg, use the one we built for numpy. diff --git a/pkgs/development/python-modules/papis-python-rofi/default.nix b/pkgs/development/python-modules/papis-python-rofi/default.nix index 8750b96f5c90f..3d3ce9a002b68 100644 --- a/pkgs/development/python-modules/papis-python-rofi/default.nix +++ b/pkgs/development/python-modules/papis-python-rofi/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "papis-python-rofi"; - version = "1.0.2"; + version = "1.0.3"; src = fetchPypi { inherit pname version; - sha256 = "13k6mw2nq923zazs77hpmh2s96v6zv13g7p89510qqkvp6fiml1v"; + sha256 = "358e24f5fb0a86de6f15d5168753ad4cbb97e52b36b1bd7abbad4053aeb6f621"; }; # No tests existing diff --git a/pkgs/development/python-modules/pyopencl/default.nix b/pkgs/development/python-modules/pyopencl/default.nix index c5c7c6b2fb746..d657efd707f89 100644 --- a/pkgs/development/python-modules/pyopencl/default.nix +++ b/pkgs/development/python-modules/pyopencl/default.nix @@ -21,7 +21,7 @@ let if stdenv.isDarwin then [ mesa_drivers.dev ] else [ ocl-icd ]; in buildPythonPackage rec { pname = "pyopencl"; - version = "2021.2.9"; + version = "2021.2.10"; checkInputs = [ pytest ]; buildInputs = [ opencl-headers pybind11 ] ++ os-specific-buildInputs; @@ -30,7 +30,7 @@ in buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "51425e65ec49c738eefe21b1eeb1f39245b01cc0ddfd495fbe1f8df33dbc6c9e"; + sha256 = "75a1f202741bace9606a8680bbbfac69bf8a73d4e7511fb1a6ce3e48185996ae"; }; # py.test is not needed during runtime, so remove it from `install_requires` diff --git a/pkgs/development/python-modules/pytz-deprecation-shim/default.nix b/pkgs/development/python-modules/pytz-deprecation-shim/default.nix new file mode 100644 index 0000000000000..eccf8399ee29b --- /dev/null +++ b/pkgs/development/python-modules/pytz-deprecation-shim/default.nix @@ -0,0 +1,49 @@ +{ lib +, buildPythonPackage +, fetchPypi +, pythonAtLeast +, pythonOlder +, backports-zoneinfo +, python-dateutil +, tzdata +, hypothesis +, pytestCheckHook +, pytz +}: + +buildPythonPackage rec { + pname = "pytz-deprecation-shim"; + version = "0.1.0.post0"; + + format = "pyproject"; + + src = fetchPypi { + pname = "pytz_deprecation_shim"; + inherit version; + sha256 = "af097bae1b616dde5c5744441e2ddc69e74dfdcb0c263129610d85b87445a59d"; + }; + + propagatedBuildInputs = (lib.optionals (pythonAtLeast "3.6" && pythonOlder "3.9") [ + backports-zoneinfo + ]) ++ (lib.optionals (pythonOlder "3.6") [ + python-dateutil + ]) ++ (lib.optionals (pythonAtLeast "3.6") [ + tzdata + ]); + + checkInputs = [ + hypothesis + pytestCheckHook + pytz + ]; + + # https://github.com/pganssle/pytz-deprecation-shim/issues/27 + doCheck = pythonAtLeast "3.9"; + + meta = with lib; { + description = "Shims to make deprecation of pytz easier"; + homepage = "https://github.com/pganssle/pytz-deprecation-shim"; + license = licenses.asl20; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/pywbem/default.nix b/pkgs/development/python-modules/pywbem/default.nix index c5203ac7890dc..86789cf690443 100644 --- a/pkgs/development/python-modules/pywbem/default.nix +++ b/pkgs/development/python-modules/pywbem/default.nix @@ -6,11 +6,11 @@ buildPythonPackage rec { pname = "pywbem"; - version = "1.2.0"; + version = "1.2.1"; src = fetchPypi { inherit pname version; - sha256 = "8ef48185e0adbaeb9bd5181c4c5de951f6d58d54e2e1d7e87a9834e10eabe957"; + sha256 = "5e4b4cf4813da57a02ce999d5e2e97e7a9f1ec8014e6561a896ee8b14ae5fa4d"; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/teslajsonpy/default.nix b/pkgs/development/python-modules/teslajsonpy/default.nix index 25e77d10ba705..5d3416d889b25 100644 --- a/pkgs/development/python-modules/teslajsonpy/default.nix +++ b/pkgs/development/python-modules/teslajsonpy/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "teslajsonpy"; - version = "1.2.1"; + version = "1.4.0"; format = "pyproject"; disabled = pythonOlder "3.6"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "zabuldon"; repo = pname; rev = "v${version}"; - sha256 = "sha256-49dQgzYsEn5jmHWTJ3e3QOTqNeoTRMjUWxp+MaOYod4="; + sha256 = "17ld1ciylfc8kmf5iazzrlqqdf434wi5dfjzm68nm5d539gccfss"; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/tzlocal/2.nix b/pkgs/development/python-modules/tzlocal/2.nix new file mode 100644 index 0000000000000..ba96c63af8501 --- /dev/null +++ b/pkgs/development/python-modules/tzlocal/2.nix @@ -0,0 +1,36 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchPypi +, pytz +, mock +}: + +buildPythonPackage rec { + pname = "tzlocal"; + version = "2.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "643c97c5294aedc737780a49d9df30889321cbe1204eac2c2ec6134035a92e44"; + }; + + propagatedBuildInputs = [ + pytz + ]; + + checkInputs = [ + mock + ]; + + doCheck = false; + + pythonImportsCheck = [ "tzlocal" ]; + + meta = with lib; { + description = "Tzinfo object for the local timezone"; + homepage = "https://github.com/regebro/tzlocal"; + license = licenses.cddl; + maintainers = with maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/tzlocal/default.nix b/pkgs/development/python-modules/tzlocal/default.nix index 363e1d12a55ef..c735ee38ea983 100644 --- a/pkgs/development/python-modules/tzlocal/default.nix +++ b/pkgs/development/python-modules/tzlocal/default.nix @@ -1,19 +1,37 @@ -{ lib, buildPythonPackage, fetchPypi -, pytz }: +{ lib +, buildPythonPackage +, pythonOlder +, fetchPypi +, pytz-deprecation-shim +, pytest-mock +, pytestCheckHook +}: buildPythonPackage rec { pname = "tzlocal"; - version = "2.1"; # version needs to be compatible with APScheduler + version = "4.1"; # version needs to be compatible with APScheduler - propagatedBuildInputs = [ pytz ]; + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "643c97c5294aedc737780a49d9df30889321cbe1204eac2c2ec6134035a92e44"; + sha256 = "sha256-DygBWsaKXAZyEEAKkZf8XTa6m8P46vHaPL1ZrN/tngk="; }; - # test fail (timezone test fail) - doCheck = false; + propagatedBuildInputs = [ + pytz-deprecation-shim + ]; + + checkInputs = [ + pytest-mock + pytestCheckHook + ]; + + disabledTests = [ + "test_conflicting" + "test_noconflict" + "test_symlink_localtime" + ]; pythonImportsCheck = [ "tzlocal" ]; diff --git a/pkgs/development/python-modules/yq/default.nix b/pkgs/development/python-modules/yq/default.nix index 78177488081e1..b87982b20b65c 100644 --- a/pkgs/development/python-modules/yq/default.nix +++ b/pkgs/development/python-modules/yq/default.nix @@ -11,11 +11,11 @@ buildPythonPackage rec { pname = "yq"; - version = "2.12.2"; + version = "2.13.0"; src = fetchPypi { inherit pname version; - sha256 = "2f156d0724b61487ac8752ed4eaa702a5737b804d5afa46fa55866951cd106d2"; + sha256 = "sha256-/RMf2x9WcWrY1EzZ6q99OyLTm6iGHqZKQJzD9K4mPbg="; }; patches = [ diff --git a/pkgs/development/tools/aws-sam-cli/default.nix b/pkgs/development/tools/aws-sam-cli/default.nix index 8f8f37a4e417e..d38ac9ba88c92 100644 --- a/pkgs/development/tools/aws-sam-cli/default.nix +++ b/pkgs/development/tools/aws-sam-cli/default.nix @@ -51,7 +51,7 @@ python3.pkgs.buildPythonApplication rec { --replace "aws_lambda_builders==" "aws-lambda-builders #" \ --replace "typing_extensions==" "typing-extensions #" \ --replace "regex==" "regex #" \ - --replace "tzlocal==3.0" "tzlocal==2.*" + --replace "tzlocal==3.0" "tzlocal" ''; meta = with lib; { diff --git a/pkgs/development/tools/bacon/default.nix b/pkgs/development/tools/bacon/default.nix index 8d69bab6a175b..c31529fd4e1d2 100644 --- a/pkgs/development/tools/bacon/default.nix +++ b/pkgs/development/tools/bacon/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "bacon"; - version = "1.2.2"; + version = "1.2.4"; src = fetchFromGitHub { owner = "Canop"; repo = pname; rev = "v${version}"; - sha256 = "sha256-pcwu6UJr8pgTVXMefXCtET2DFaNIixmwCUYlv1GF8Ck="; + sha256 = "sha256-G1vds0156dYTxB6I155NiTuI9JnqZ7Uh3f5vHNTOMsk="; }; - cargoSha256 = "sha256-zpVnF1InSVEZfhch7g5w2WgFYXwp9xVjEV3gvwx+Ndo="; + cargoSha256 = "sha256-ytS+U+Tbyz2cMgXN/rZ5Kf4WgoIr8RIuBwLLUJ2XtHU="; buildInputs = lib.optional stdenv.isDarwin CoreServices; diff --git a/pkgs/development/tools/misc/pahole/default.nix b/pkgs/development/tools/misc/pahole/default.nix index 86e1dac021c29..e0100154f3be8 100644 --- a/pkgs/development/tools/misc/pahole/default.nix +++ b/pkgs/development/tools/misc/pahole/default.nix @@ -1,20 +1,19 @@ -{ lib, stdenv, fetchgit, cmake, elfutils, zlib }: +{ lib, stdenv, fetchgit, pkg-config, libbpf, cmake, elfutils, zlib }: stdenv.mkDerivation rec { pname = "pahole"; - version = "1.20"; + version = "1.22"; src = fetchgit { url = "https://git.kernel.org/pub/scm/devel/pahole/pahole.git"; rev = "v${version}"; - sha256 = "11q9dpfi4qj2v8z0nlf8c0079mlv10ljhh0d1yr0j4ds3saacd15"; - fetchSubmodules = true; + sha256 = "sha256-U1/i9WNlLphPIcNysC476sqil/q9tMYmu+Y6psga8I0="; }; - nativeBuildInputs = [ cmake ]; - buildInputs = [ elfutils zlib ]; + nativeBuildInputs = [ cmake pkg-config ]; + buildInputs = [ elfutils zlib libbpf ]; # Put libraries in "lib" subdirectory, not top level of $out - cmakeFlags = [ "-D__LIB=lib" ]; + cmakeFlags = [ "-D__LIB=lib" "-DLIBBPF_EMBEDDED=OFF" ]; meta = with lib; { homepage = "https://git.kernel.org/cgit/devel/pahole/pahole.git/"; @@ -22,6 +21,6 @@ stdenv.mkDerivation rec { license = licenses.gpl2Only; platforms = platforms.linux; - maintainers = [ maintainers.bosu ]; + maintainers = with maintainers; [ bosu martinetd ]; }; } diff --git a/pkgs/development/tools/yq-go/default.nix b/pkgs/development/tools/yq-go/default.nix index 5095d85d3ca38..47a8538d5b901 100644 --- a/pkgs/development/tools/yq-go/default.nix +++ b/pkgs/development/tools/yq-go/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "yq-go"; - version = "4.13.5"; + version = "4.16.1"; src = fetchFromGitHub { owner = "mikefarah"; repo = "yq"; rev = "v${version}"; - sha256 = "sha256-ckcuA9jf8aFgcuts3VOE629WGkvBkdZP86PKXqzBvks="; + sha256 = "sha256-4o38f5ltTH6ea0na919GnJMao8w5rgkDWMp2mkoKwcY="; }; - vendorSha256 = "sha256-jlQ4TH5PiO/68ZFOzOVUTYKkVe9lQleVjZoP4adRrUI="; + vendorSha256 = "sha256-PCDM1VbqUcAVXzCPWDZtCRLpRIu43sF1lGazAG2HZJ0="; doCheck = false; diff --git a/pkgs/games/0ad/game.nix b/pkgs/games/0ad/game.nix index 4f7cf4457a7d3..34a2cdddac820 100644 --- a/pkgs/games/0ad/game.nix +++ b/pkgs/games/0ad/game.nix @@ -1,4 +1,4 @@ -{ stdenv, lib, perl, fetchurl, python2, fmt, libidn +{ stdenv, lib, perl, fetchurl, python3, fmt, libidn , pkg-config, spidermonkey_78, boost, icu, libxml2, libpng, libsodium , libjpeg, zlib, curl, libogg, libvorbis, enet, miniupnpc , openal, libGLU, libGL, xorgproto, libX11, libXcursor, nspr, SDL2 @@ -33,7 +33,7 @@ stdenv.mkDerivation rec { sha256 = "1p9fa8f7sjb9c5wl3mawzyfqvgr614kdkhrj2k4db9vkyisws3fp"; }; - nativeBuildInputs = [ python2 perl pkg-config ]; + nativeBuildInputs = [ python3 perl pkg-config ]; buildInputs = [ spidermonkey_78_6 boost icu libxml2 libpng libjpeg diff --git a/pkgs/os-specific/linux/bcc/default.nix b/pkgs/os-specific/linux/bcc/default.nix index 91e53d686a1b3..c87740ed02172 100644 --- a/pkgs/os-specific/linux/bcc/default.nix +++ b/pkgs/os-specific/linux/bcc/default.nix @@ -1,7 +1,7 @@ { lib, stdenv, fetchFromGitHub -, makeWrapper, cmake, llvmPackages, kernel +, makeWrapper, cmake, llvmPackages , flex, bison, elfutils, python, luajit, netperf, iperf, libelf -, systemtap, bash +, bash, libbpf, nixosTests }: python.pkgs.buildPythonApplication rec { @@ -14,15 +14,14 @@ python.pkgs.buildPythonApplication rec { owner = "iovisor"; repo = "bcc"; rev = "v${version}"; - sha256 = "sha256-4zfjr3VLg26uZ4xNKA1wayti7f2tqGvYSbwoZnr+Ygk="; - fetchSubmodules = true; + sha256 = "sha256-iLVUwJTDQ8Bn38sgHOcIR8TYxIB+gIlfTgr9+gPU0gE="; }; format = "other"; buildInputs = with llvmPackages; [ - llvm llvm.dev libclang kernel + llvm llvm.dev libclang elfutils luajit netperf iperf - systemtap.stapBuild flex bash + flex bash libbpf ]; patches = [ @@ -32,15 +31,14 @@ python.pkgs.buildPythonApplication rec { ]; propagatedBuildInputs = [ python.pkgs.netaddr ]; - nativeBuildInputs = [ makeWrapper cmake flex bison llvmPackages.llvm.dev ] - # libelf is incompatible with elfutils-libelf - ++ lib.filter (x: x != libelf) kernel.moduleBuildDependencies; + nativeBuildInputs = [ makeWrapper cmake flex bison llvmPackages.llvm.dev ]; cmakeFlags = [ - "-DBCC_KERNEL_MODULES_DIR=${kernel.dev}/lib/modules" + "-DBCC_KERNEL_MODULES_DIR=/run/booted-system/kernel-modules/lib/modules" "-DREVISION=${version}" "-DENABLE_USDT=ON" "-DENABLE_CPP_API=ON" + "-DCMAKE_USE_LIBBPF_PACKAGE=ON" ]; postPatch = '' @@ -71,10 +69,14 @@ python.pkgs.buildPythonApplication rec { wrapPythonProgramsIn "$out/share/bcc/tools" "$out $pythonPath" ''; + passthru.tests = { + bpf = nixosTests.bpf; + }; + meta = with lib; { description = "Dynamic Tracing Tools for Linux"; homepage = "https://iovisor.github.io/bcc/"; license = licenses.asl20; - maintainers = with maintainers; [ ragge mic92 thoughtpolice ]; + maintainers = with maintainers; [ ragge mic92 thoughtpolice martinetd ]; }; } diff --git a/pkgs/os-specific/linux/bpftrace/btf-dump-new-0.6.0.patch b/pkgs/os-specific/linux/bpftrace/btf-dump-new-0.6.0.patch new file mode 100644 index 0000000000000..b5037192203c5 --- /dev/null +++ b/pkgs/os-specific/linux/bpftrace/btf-dump-new-0.6.0.patch @@ -0,0 +1,39 @@ +diff -ur source/src/btf.cpp new/src/btf.cpp +--- source/src/btf.cpp 1970-01-01 09:00:01.000000000 +0900 ++++ new/src/btf.cpp 2021-12-04 21:46:59.337023489 +0900 +@@ -225,7 +225,7 @@ + char err_buf[256]; + int err; + +- dump = btf_dump__new(btf, nullptr, &opts, dump_printf); ++ dump = btf_dump__new_deprecated(btf, nullptr, &opts, dump_printf); + err = libbpf_get_error(dump); + if (err) + { +@@ -496,7 +496,7 @@ + char err_buf[256]; + int err; + +- dump = btf_dump__new(btf, nullptr, &opts, dump_printf); ++ dump = btf_dump__new_deprecated(btf, nullptr, &opts, dump_printf); + err = libbpf_get_error(dump); + if (err) + { +@@ -554,7 +554,7 @@ + char err_buf[256]; + int err; + +- dump = btf_dump__new(btf, nullptr, &opts, dump_printf); ++ dump = btf_dump__new_deprecated(btf, nullptr, &opts, dump_printf); + err = libbpf_get_error(dump); + if (err) + { +@@ -648,7 +648,7 @@ + char err_buf[256]; + int err; + +- dump = btf_dump__new(btf, nullptr, &opts, dump_printf); ++ dump = btf_dump__new_deprecated(btf, nullptr, &opts, dump_printf); + err = libbpf_get_error(dump); + if (err) + { diff --git a/pkgs/os-specific/linux/bpftrace/default.nix b/pkgs/os-specific/linux/bpftrace/default.nix index 4d2f29491fcaf..9a197b4c78c8d 100644 --- a/pkgs/os-specific/linux/bpftrace/default.nix +++ b/pkgs/os-specific/linux/bpftrace/default.nix @@ -1,38 +1,35 @@ { lib, stdenv, fetchFromGitHub , cmake, pkg-config, flex, bison -, llvmPackages, kernel, elfutils +, llvmPackages, elfutils , libelf, libbfd, libbpf, libopcodes, bcc +, cereal, asciidoctor +, nixosTests }: stdenv.mkDerivation rec { pname = "bpftrace"; - version = "0.13.0"; + version = "0.14.0"; src = fetchFromGitHub { owner = "iovisor"; repo = "bpftrace"; rev = "v${version}"; - sha256 = "sha256-BKWBdFzj0j7rAfG30A0fwyYCpOG/5NFRPODW46EP1u0="; + sha256 = "sha256-rlaajNfpoiMtU/4aNAnbQ0VixPz9/302TZMarGzsb58="; }; + # libbpf 0.6.0 relies on typeof in bpf/btf.h to pick the right version of + # btf_dump__new() but that's not valid c++. + # see https://github.com/iovisor/bpftrace/issues/2068 + patches = [ ./btf-dump-new-0.6.0.patch ]; + buildInputs = with llvmPackages; [ llvm libclang - kernel elfutils libelf bcc + elfutils libelf bcc libbpf libbfd libopcodes + cereal asciidoctor ]; - nativeBuildInputs = [ cmake pkg-config flex bison llvmPackages.llvm.dev ] - # libelf is incompatible with elfutils-libelf - ++ lib.filter (x: x != libelf) kernel.moduleBuildDependencies; - - # patch the source, *then* substitute on @NIX_KERNEL_SRC@ in the result. we could - # also in theory make this an environment variable around bpftrace, but this works - # nicely without wrappers. - patchPhase = '' - patch -p1 < ${./fix-kernel-include-dir.patch} - substituteInPlace ./src/utils.cpp \ - --subst-var-by NIX_KERNEL_SRC '${kernel.dev}/lib/modules/${kernel.modDirVersion}' - ''; + nativeBuildInputs = [ cmake pkg-config flex bison llvmPackages.llvm.dev ]; # tests aren't built, due to gtest shenanigans. see: # @@ -52,10 +49,14 @@ stdenv.mkDerivation rec { outputs = [ "out" "man" ]; + passthru.tests = { + bpf = nixosTests.bpf; + }; + meta = with lib; { description = "High-level tracing language for Linux eBPF"; homepage = "https://github.com/iovisor/bpftrace"; license = licenses.asl20; - maintainers = with maintainers; [ rvl thoughtpolice ]; + maintainers = with maintainers; [ rvl thoughtpolice martinetd ]; }; } diff --git a/pkgs/os-specific/linux/bpftrace/fix-kernel-include-dir.patch b/pkgs/os-specific/linux/bpftrace/fix-kernel-include-dir.patch deleted file mode 100644 index bff370d51e27f..0000000000000 --- a/pkgs/os-specific/linux/bpftrace/fix-kernel-include-dir.patch +++ /dev/null @@ -1,22 +0,0 @@ -commit b6172952c0150d84912fa6f09bab782dd0549f1e -Author: Austin Seipp <aseipp@pobox.com> -Date: Fri May 3 00:47:12 2019 -0500 - - src: special case nix build directories for clang - - Signed-off-by: Austin Seipp <aseipp@pobox.com> - -diff --git a/src/clang_parser.cpp b/src/clang_parser.cpp -index b1db8ff..0cfb01f 100644 ---- a/src/utils.cpp -+++ b/src/utils.cpp -@@ -140,6 +140,9 @@ static bool is_dir(const std::string& path) - // Both ksrc and kobj are guaranteed to be != "", if at least some trace of kernel sources was found. - std::tuple<std::string, std::string> get_kernel_dirs(const struct utsname& utsname) - { -+ // NB (aseipp): special case the kernel directory for nix -+ return { "@NIX_KERNEL_SRC@/source", "@NIX_KERNEL_SRC@/build" }; -+ - #ifdef KERNEL_HEADERS_DIR - return {KERNEL_HEADERS_DIR, KERNEL_HEADERS_DIR}; - #endif diff --git a/pkgs/os-specific/linux/libbpf/default.nix b/pkgs/os-specific/linux/libbpf/default.nix index 5debfd2ef2c8c..ba765b4f92e29 100644 --- a/pkgs/os-specific/linux/libbpf/default.nix +++ b/pkgs/os-specific/linux/libbpf/default.nix @@ -23,6 +23,11 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; makeFlags = [ "PREFIX=$(out)" ]; + postInstall = '' + # install linux's libbpf-compatible linux/btf.h + install -Dm444 ../include/uapi/linux/btf.h -t $out/include/linux + ''; + # FIXME: Multi-output requires some fixes to the way the pkg-config file is # constructed (it gets put in $out instead of $dev for some reason, with # improper paths embedded). Don't enable it for now. @@ -33,7 +38,7 @@ stdenv.mkDerivation rec { description = "Upstream mirror of libbpf"; homepage = "https://github.com/libbpf/libbpf"; license = with licenses; [ lgpl21 /* or */ bsd2 ]; - maintainers = with maintainers; [ thoughtpolice vcunat saschagrunert ]; + maintainers = with maintainers; [ thoughtpolice vcunat saschagrunert martinetd ]; platforms = platforms.linux; }; } diff --git a/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix b/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix index b7c291d6cc44c..88ec52f45363a 100644 --- a/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix +++ b/pkgs/servers/matrix-synapse/plugins/mjolnir-antispam.nix @@ -2,13 +2,13 @@ buildPythonPackage rec { pname = "matrix-synapse-mjolnir-antispam"; - version = "1.1.20"; + version = "1.2.1"; src = fetchFromGitHub { owner = "matrix-org"; repo = "mjolnir"; rev = "v${version}"; - sha256 = "06779z08qni1kgr292gpkxd2xvyg4apfnbhynli9qjp2vaf03wy9"; + sha256 = "0fvdzn5l1a6bhr1qzgs30a3kh6nj0byqichnl149sjgr0v4lpkz1"; }; sourceRoot = "./source/synapse_antispam"; diff --git a/pkgs/tools/X11/alttab/default.nix b/pkgs/tools/X11/alttab/default.nix index 591edff2add78..80b87cb2776d8 100644 --- a/pkgs/tools/X11/alttab/default.nix +++ b/pkgs/tools/X11/alttab/default.nix @@ -2,7 +2,7 @@ libpng, uthash , which, xnee, xorg, python3Packages }: stdenv.mkDerivation rec { - version = "1.6.0"; + version = "1.6.1"; pname = "alttab"; @@ -10,7 +10,7 @@ stdenv.mkDerivation rec { owner = "sagb"; repo = pname; rev = "v${version}"; - sha256 = "sha256-G4tu008IC3RCeCRZVKFPY2+ioLuUa9hDDKUx1q5C5FQ="; + sha256 = "sha256-g56207IGNDnBIqZmbpcgOLcfAGKwBE0DYu2Dq0bLS8o="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/admin/aliyun-cli/default.nix b/pkgs/tools/admin/aliyun-cli/default.nix index 3ff8ae3caa23d..bc27688337fe3 100644 --- a/pkgs/tools/admin/aliyun-cli/default.nix +++ b/pkgs/tools/admin/aliyun-cli/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "aliyun-cli"; - version = "3.0.94"; + version = "3.0.100"; src = fetchFromGitHub { rev = "v${version}"; owner = "aliyun"; repo = pname; fetchSubmodules = true; - sha256 = "sha256:1l9rzdp9kxxicvp45pa7288zxa07xp7w6aj7d9k9xlzv8l96k6j3"; + sha256 = "sha256-gS+AN0H1/Xe9DQQfoCX7tAI5fHwEai4ONrAtpX9E6PE="; }; - vendorSha256 = "sha256:0dklq78bqfidcda8pwd6qwaycah3gndmq9s90h1pqx1isw4frckk"; + vendorSha256 = "sha256-c7LsCNcxdHwDBEknXJt9AyrmFcem8YtUYy06vNDBdDY="; subPackages = ["aliyun-openapi-meta" "main"]; diff --git a/pkgs/tools/misc/recoverjpeg/default.nix b/pkgs/tools/misc/recoverjpeg/default.nix index 4b8ea50cd4eff..db05aeda96a3f 100644 --- a/pkgs/tools/misc/recoverjpeg/default.nix +++ b/pkgs/tools/misc/recoverjpeg/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchurl, makeWrapper, python2, exif, imagemagick }: +{ lib, stdenv, fetchurl, makeWrapper, python3, exif, imagemagick }: stdenv.mkDerivation rec { pname = "recoverjpeg"; @@ -11,7 +11,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ makeWrapper ]; - buildInputs = [ python2 ]; + buildInputs = [ python3 ]; postFixup = '' wrapProgram $out/bin/sort-pictures \ diff --git a/pkgs/tools/misc/websocat/default.nix b/pkgs/tools/misc/websocat/default.nix index ffbbc0ec8061a..99714df0e81a1 100644 --- a/pkgs/tools/misc/websocat/default.nix +++ b/pkgs/tools/misc/websocat/default.nix @@ -3,16 +3,16 @@ rustPlatform.buildRustPackage rec { pname = "websocat"; - version = "1.8.0"; + version = "1.9.0"; src = fetchFromGitHub { owner = "vi"; repo = pname; rev = "v${version}"; - sha256 = "sha256-jwoWxK4phBqhIeo3+oRnpGsfvtn9gTR1ryd4N+0Lmbw="; + sha256 = "sha256-aQWLsdYHmju7tCJfg3a1aOlFYui7qsQ8vJfhyMawXWo="; }; - cargoSha256 = "sha256-+3SG1maarY4DJ4+QiYGwltGLksOoOhKtcqstRwgzi2k="; + cargoSha256 = "sha256-b/B+K/LMP1XK1QEtFKY4nmy2fAqEmLTN+qL+XlrqA5w="; nativeBuildInputs = [ pkg-config makeWrapper ]; buildInputs = [ openssl ] diff --git a/pkgs/tools/networking/xh/default.nix b/pkgs/tools/networking/xh/default.nix index fda4c30ccedc0..ad6d02399efe1 100644 --- a/pkgs/tools/networking/xh/default.nix +++ b/pkgs/tools/networking/xh/default.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "xh"; - version = "0.14.0"; + version = "0.14.1"; src = fetchFromGitHub { owner = "ducaale"; repo = "xh"; rev = "v${version}"; - sha256 = "sha256-G6uAHpptX+hvh0ND+mqgR3AG0GT/qily6Y8Pt5yVbxg="; + sha256 = "sha256-zq1jpkMcq7WHc6weht2iEFMlxIJSoDreWqJCi8F+Lxs="; }; - cargoSha256 = "sha256-W2l1kiD2yY6FFA29WYPlWCjxKzuSgCdPN8M8bE4QGMU="; + cargoSha256 = "sha256-NcznWWMcgK4RixqvumPEQUlvIFRyYkbeTTGvjQ91ggE="; buildFeatures = lib.optional withNativeTls "native-tls"; diff --git a/pkgs/tools/package-management/cargo-outdated/default.nix b/pkgs/tools/package-management/cargo-outdated/default.nix index 62b91a4e4d1f3..d15cbe8a9ccb5 100644 --- a/pkgs/tools/package-management/cargo-outdated/default.nix +++ b/pkgs/tools/package-management/cargo-outdated/default.nix @@ -11,14 +11,14 @@ rustPlatform.buildRustPackage rec { pname = "cargo-outdated"; - version = "0.10.1"; + version = "0.10.2"; src = fetchCrate { inherit pname version; - sha256 = "sha256-jg8KuIu1SaIRlEI9yvpLCESZfAyNgSThJ6pe7+IM6j0="; + sha256 = "sha256-U6qElZkray4kjScv9X4I5m2z1ZWQzqcPYAuPzpyRpW0="; }; - cargoSha256 = "sha256-jfZUtUVHEC8zK+FJHSOQxELWTG/Of2WSDoqdg/Sckws="; + cargoSha256 = "sha256-0J02Uz184zx5xZYhqUmyaAFCQ0aogwy0fQTXbteBdV8="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/tools/package-management/cargo-release/default.nix b/pkgs/tools/package-management/cargo-release/default.nix index 500a7a68f1046..9cb9c1e125f97 100644 --- a/pkgs/tools/package-management/cargo-release/default.nix +++ b/pkgs/tools/package-management/cargo-release/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "cargo-release"; - version = "0.18.4"; + version = "0.18.5"; src = fetchFromGitHub { owner = "crate-ci"; repo = "cargo-release"; rev = "v${version}"; - sha256 = "sha256-m+mLnlTBBS3DdxOmOi+NvoSSWgBZ9lI9tqIgq3GHnJI="; + sha256 = "sha256-bbxOavpEVVRv5czl2UiV6brulvjod7X7n+j8/9bO+SE="; }; - cargoSha256 = "sha256-L6Izc8OrZ+RnGPpWKWBMpyyOthWzB0DjmQxf20R6dE4="; + cargoSha256 = "sha256-E0Mo+hgI0uRaV2GAX52YtdNyZdd9wHVOBB3tJz36/8I="; nativeBuildInputs = [ pkg-config ]; diff --git a/pkgs/tools/security/b3sum/default.nix b/pkgs/tools/security/b3sum/default.nix index 9c6dca07194b8..b6792763c2315 100644 --- a/pkgs/tools/security/b3sum/default.nix +++ b/pkgs/tools/security/b3sum/default.nix @@ -2,14 +2,14 @@ rustPlatform.buildRustPackage rec { pname = "b3sum"; - version = "1.1.0"; + version = "1.2.0"; src = fetchCrate { inherit version pname; - sha256 = "sha256-x5gdJLcRMnmd0VLbV8cU9vrA6Ef7GysTh25bXnw6tsE="; + sha256 = "sha256-v6OCUXes8jaBh+sKqj1yCNOTb1NQY/ENGzKf5XWGZ3w="; }; - cargoSha256 = "sha256-+JVivP4Kppb+AoVq4XhXp4k8Hb+e9uX4u5n8KXp0kfk="; + cargoSha256 = "sha256-y5QVgu716p8TFoEeWIzX9aJWeT3FKwlh5vUQkKR6pdE="; meta = { description = "BLAKE3 cryptographic hash function"; diff --git a/pkgs/tools/text/grin/default.nix b/pkgs/tools/text/grin/default.nix index ceeed3d6f76bf..ffa80baf6eac1 100644 --- a/pkgs/tools/text/grin/default.nix +++ b/pkgs/tools/text/grin/default.nix @@ -1,21 +1,21 @@ -{ lib, fetchFromGitHub, python2Packages }: +{ lib, fetchFromGitHub, python3Packages }: -python2Packages.buildPythonApplication rec { +python3Packages.buildPythonApplication rec { pname = "grin"; - version = "1.2.1"; + version = "1.3.0"; namePrefix = ""; src = fetchFromGitHub { - owner = "rkern"; + owner = "matthew-brett"; repo = pname; - rev = "8dd4b5309b3bc04fe9d3e71836420f7d8d4a293f"; - sha256 = "0vz2aahwdcy1296g4w3i79dkvmzk9jc2n2zmlcvlg5m3s6h7b6jd"; + rev = "1.3.0"; + sha256 = "057d05vzx4sf415vnh3qj2g351xhb3illjxjs9mdl3nsnb5r84kv"; }; - buildInputs = with python2Packages; [ nose ]; + buildInputs = with python3Packages; [ nose ]; meta = { - homepage = "https://github.com/rkern/grin"; + homepage = "https://github.com/matthew-brett/grin"; description = "A grep program configured the way I like it"; platforms = lib.platforms.all; maintainers = [ lib.maintainers.sjagoe ]; diff --git a/pkgs/tools/virtualization/google-compute-engine/default.nix b/pkgs/tools/virtualization/google-compute-engine/default.nix index fef461be7d74a..ad187544aea26 100644 --- a/pkgs/tools/virtualization/google-compute-engine/default.nix +++ b/pkgs/tools/virtualization/google-compute-engine/default.nix @@ -3,85 +3,26 @@ , buildPythonPackage , bash , bashInteractive +, systemd , util-linux , boto , setuptools , distro -, stdenv -, pythonOlder -, pytestCheckHook }: -let - guest-configs = stdenv.mkDerivation rec { - pname = "guest-configs"; - version = "20210702.00"; - - src = fetchFromGitHub { - owner = "GoogleCloudPlatform"; - repo = "guest-configs"; - rev = version; - sha256 = "1965kdrb1ig3z4qwzvyzx1fb4282ak5vgxcvvg5k9c759pzbc5nn"; - }; - - buildInputs = [ bash ]; - - dontConfigure = true; - dontBuild = true; - - installPhase = '' - runHook preInstall - - # allows to install the package in `services.udev.packages` in NixOS - mkdir -p $out/lib/udev $out/bin - - cp -r "src/lib/udev/rules.d" $out/lib/udev - cp "src/lib/udev/google_nvme_id" $out/bin - - for rules in $out/lib/udev/*.rules; do - substituteInPlace "$rules" \ - --replace /bin/sh "${bash}/bin/sh" \ - --replace /bin/umount "${util-linux}/bin/umount" \ - --replace /usr/bin/logger "${util-linux}/bin/logger" - done - - # sysctl snippets will be used by google-compute-config.nix - cp -r "src/etc/sysctl.d" $out - - patchShebangs $out/bin/* - - runHook postInstall - ''; - }; -in buildPythonPackage rec { pname = "google-compute-engine"; - version = "20200113.0"; + version = "20190124"; src = fetchFromGitHub { owner = "GoogleCloudPlatform"; repo = "compute-image-packages"; - rev = "506b9a0dbffec5620887660cd42c57b3cbbadba6"; - sha256 = "0lmc426mvrajghpavhs6hwl19mgnnh08ziqx5yi15fzpnvwmb8vz"; + rev = version; + sha256 = "08cy0jd463kng6hwbd3nfldsp4dpd2lknlvdm88cq795wy0kh4wp"; }; - buildInputs = [ bash guest-configs ]; - propagatedBuildInputs = [ (if pythonOlder "3.7" then boto else distro) setuptools ]; - - preBuild = '' - cd packages/python-google-compute-engine - ''; - - disabledTests = [ - "testExtractInterfaceMetadata" - "testCallDhclientIpv6" - "testWriteConfig" - "testCreateInterfaceMapNetifaces" - "testCreateInterfaceMapSysfs" - "testGetNetworkInterface" - ]; - - checkInputs = [ pytestCheckHook ]; + buildInputs = [ bash ]; + propagatedBuildInputs = [ boto setuptools distro ]; postPatch = '' for file in $(find google_compute_engine -type f); do @@ -91,15 +32,33 @@ buildPythonPackage rec { --replace /sbin/hwclock "${util-linux}/bin/hwclock" # SELinux tool ??? /sbin/restorecon done + + substituteInPlace google_config/udev/64-gce-disk-removal.rules \ + --replace /bin/sh "${bash}/bin/sh" \ + --replace /bin/umount "${util-linux}/bin/umount" \ + --replace /usr/bin/logger "${util-linux}/bin/logger" + ''; + + postInstall = '' + # allows to install the package in `services.udev.packages` in NixOS + mkdir -p $out/lib/udev/rules.d + cp -r google_config/udev/*.rules $out/lib/udev/rules.d + + # sysctl snippets will be used by google-compute-config.nix + mkdir -p $out/sysctl.d + cp google_config/sysctl/*.conf $out/sysctl.d + + patchShebangs $out/bin/* ''; + doCheck = false; pythonImportsCheck = [ "google_compute_engine" ]; meta = with lib; { description = "Google Compute Engine tools and services"; homepage = "https://github.com/GoogleCloudPlatform/compute-image-packages"; license = licenses.asl20; - maintainers = with maintainers; [ cpcloud zimbatm ]; + maintainers = with maintainers; [ zimbatm ]; platforms = platforms.linux; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 297236b8f8e55..ea56a12e1e786 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5947,7 +5947,7 @@ with pkgs; google-clasp = callPackage ../development/misc/google-clasp { }; - google-compute-engine = with python3.pkgs; toPythonApplication google-compute-engine; + google-compute-engine = with python38.pkgs; toPythonApplication google-compute-engine; google-compute-engine-oslogin = callPackage ../tools/virtualization/google-compute-engine-oslogin { }; @@ -14167,6 +14167,12 @@ with pkgs; bpftools = callPackage ../os-specific/linux/bpftools { }; + bcc = callPackage ../os-specific/linux/bcc { + python = pkgs.python3; + }; + + bpftrace = callPackage ../os-specific/linux/bpftrace { }; + bpm-tools = callPackage ../tools/audio/bpm-tools { }; byacc = callPackage ../development/tools/parsing/byacc { }; diff --git a/pkgs/top-level/linux-kernels.nix b/pkgs/top-level/linux-kernels.nix index 2aa9f8482f187..64b5d068220f7 100644 --- a/pkgs/top-level/linux-kernels.nix +++ b/pkgs/top-level/linux-kernels.nix @@ -250,6 +250,7 @@ in { inherit (kernel) kernelOlder kernelAtLeast; # Obsolete aliases (these packages do not depend on the kernel). inherit (pkgs) odp-dpdk pktgen; # added 2018-05 + inherit (pkgs) bcc bpftrace; # added 2021-12 acpi_call = callPackage ../os-specific/linux/acpi-call {}; @@ -263,12 +264,6 @@ in { batman_adv = callPackage ../os-specific/linux/batman-adv {}; - bcc = callPackage ../os-specific/linux/bcc { - python = pkgs.python3; - }; - - bpftrace = callPackage ../os-specific/linux/bpftrace { }; - bbswitch = callPackage ../os-specific/linux/bbswitch {}; chipsec = callPackage ../tools/security/chipsec { diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e7825d77fea6b..771fc6572bf19 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7894,6 +7894,8 @@ in { pytz = callPackage ../development/python-modules/pytz { }; + pytz-deprecation-shim = callPackage ../development/python-modules/pytz-deprecation-shim { }; + pytzdata = callPackage ../development/python-modules/pytzdata { }; pyu2f = callPackage ../development/python-modules/pyu2f { }; diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix index ace11ce495ffe..59afe10641685 100644 --- a/pkgs/top-level/python2-packages.nix +++ b/pkgs/top-level/python2-packages.nix @@ -640,6 +640,8 @@ with self; with super; { typing = callPackage ../development/python-modules/typing { }; + tzlocal = callPackage ../development/python-modules/tzlocal/2.nix { }; + ujson = callPackage ../development/python-modules/ujson/2.nix { }; umemcache = callPackage ../development/python-modules/umemcache { }; |