diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 91d61aef23b2..397e5ff5d175 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,13 +1,3 @@ - - ###### Description of changes diff --git a/lib/attrsets.nix b/lib/attrsets.nix index a88947b45858..c0d3ede73d0e 100644 --- a/lib/attrsets.nix +++ b/lib/attrsets.nix @@ -327,7 +327,7 @@ rec { isDerivation "foobar" => false */ - isDerivation = x: isAttrs x && x ? type && x.type == "derivation"; + isDerivation = x: x.type or null == "derivation"; /* Converts a store path to a fake derivation. */ toDerivation = path: diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 7dea8e39cc5e..31e18072cd7d 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2218,7 +2218,7 @@ ckie = { email = "nixpkgs-0efe364@ckie.dev"; github = "ckiee"; - githubId = 2526321; + githubId = 25263210; keys = [{ longkeyid = "rsa4096/0x13E79449C0525215"; fingerprint = "539F 0655 4D35 38A5 429A E253 13E7 9449 C052 5215"; @@ -9391,6 +9391,13 @@ githubId = 71795; name = "Mica Semrick"; }; + papojari = { + email = "papojari-git.ovoid@aleeas.com"; + matrix = "@papojari:artemislena.eu"; + github = "papojari"; + githubId = 81317317; + name = "papojari"; + }; paraseba = { email = "paraseba@gmail.com"; github = "paraseba"; @@ -14031,6 +14038,12 @@ github = "jpagex"; githubId = 635768; }; + vbrandl = { + name = "Valentin Brandl"; + email = "mail+nixpkgs@vbrandl.net"; + github = "vbrandl"; + githubId = 20639051; + }; portothree = { name = "Gustavo Porto"; email = "gustavoporto@ya.ru"; diff --git a/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix b/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix index c0a50f07d717..2edd1de83e1b 100644 --- a/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix +++ b/nixos/modules/services/monitoring/prometheus/exporters/systemd.nix @@ -11,7 +11,7 @@ in { serviceConfig = { ExecStart = '' ${pkgs.prometheus-systemd-exporter}/bin/systemd_exporter \ - --web.listen-address ${cfg.listenAddress}:${toString cfg.port} + --web.listen-address ${cfg.listenAddress}:${toString cfg.port} ${concatStringsSep " " cfg.extraFlags} ''; RestrictAddressFamilies = [ # Need AF_UNIX to collect data diff --git a/nixos/modules/services/security/tor.nix b/nixos/modules/services/security/tor.nix index cafb44e12429..3bf70c4aa4fc 100644 --- a/nixos/modules/services/security/tor.nix +++ b/nixos/modules/services/security/tor.nix @@ -962,7 +962,7 @@ in '') onion.authorizedClients ++ optional (onion.secretKey != null) '' install -d -o tor -g tor -m 0700 ${escapeShellArg onion.path} - key="$(cut -f1 -d: ${escapeShellArg onion.secretKey})" + key="$(cut -f1 -d: ${escapeShellArg onion.secretKey} | head -1)" case "$key" in ("== ed25519v"*"-secret") install -o tor -g tor -m 0400 ${escapeShellArg onion.secretKey} ${escapeShellArg onion.path}/hs_ed25519_secret_key;; diff --git a/nixos/modules/system/activation/switch-to-configuration.pl b/nixos/modules/system/activation/switch-to-configuration.pl index 3a5ffe822ed7..a1653d451fea 100644 --- a/nixos/modules/system/activation/switch-to-configuration.pl +++ b/nixos/modules/system/activation/switch-to-configuration.pl @@ -59,7 +59,7 @@ $ENV{NIXOS_ACTION} = $action; # This is a NixOS installation if it has /etc/NIXOS or a proper # /etc/os-release. die "This is not a NixOS installation!\n" unless - -f "/etc/NIXOS" || (read_file("/etc/os-release", err_mode => 'quiet') // "") =~ /ID=nixos/s; + -f "/etc/NIXOS" || (read_file("/etc/os-release", err_mode => 'quiet') // "") =~ /ID="?nixos"?/s; openlog("nixos", "", LOG_USER); diff --git a/nixos/tests/installed-tests/appstream-qt.nix b/nixos/tests/installed-tests/appstream-qt.nix new file mode 100644 index 000000000000..d08187bfe466 --- /dev/null +++ b/nixos/tests/installed-tests/appstream-qt.nix @@ -0,0 +1,9 @@ +{ pkgs, makeInstalledTest, ... }: + +makeInstalledTest { + tested = pkgs.libsForQt5.appstream-qt; + + testConfig = { + appstream.enable = true; + }; +} diff --git a/nixos/tests/installed-tests/appstream.nix b/nixos/tests/installed-tests/appstream.nix new file mode 100644 index 000000000000..f71a095d4452 --- /dev/null +++ b/nixos/tests/installed-tests/appstream.nix @@ -0,0 +1,9 @@ +{ pkgs, makeInstalledTest, ... }: + +makeInstalledTest { + tested = pkgs.appstream; + + testConfig = { + appstream.enable = true; + }; +} diff --git a/nixos/tests/installed-tests/default.nix b/nixos/tests/installed-tests/default.nix index 08785e5e6669..079fd54e71e5 100644 --- a/nixos/tests/installed-tests/default.nix +++ b/nixos/tests/installed-tests/default.nix @@ -84,6 +84,8 @@ let in { + appstream = callInstalledTest ./appstream.nix {}; + appstream-qt = callInstalledTest ./appstream-qt.nix {}; colord = callInstalledTest ./colord.nix {}; flatpak = callInstalledTest ./flatpak.nix {}; flatpak-builder = callInstalledTest ./flatpak-builder.nix {}; diff --git a/nixos/tests/prometheus-exporters.nix b/nixos/tests/prometheus-exporters.nix index 323d79c5b86f..18b64a958dd6 100644 --- a/nixos/tests/prometheus-exporters.nix +++ b/nixos/tests/prometheus-exporters.nix @@ -1156,6 +1156,10 @@ let systemd = { exporterConfig = { enable = true; + + extraFlags = [ + "--collector.enable-restart-count" + ]; }; metricProvider = { }; exporterTest = '' @@ -1166,6 +1170,11 @@ let 'systemd_unit_state{name="basic.target",state="active",type="target"} 1' ) ) + succeed( + "curl -sSf localhost:9558/metrics | grep '{}'".format( + 'systemd_service_restart_total{state="prometheus-systemd-exporter.service"} 0' + ) + ) ''; }; diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix index cd5e476b8845..6db530a2c233 100644 --- a/pkgs/applications/audio/gpodder/default.nix +++ b/pkgs/applications/audio/gpodder/default.nix @@ -5,14 +5,14 @@ python3Packages.buildPythonApplication rec { pname = "gpodder"; - version = "3.10.17"; + version = "3.10.21"; format = "other"; src = fetchFromGitHub { owner = pname; repo = pname; rev = version; - sha256 = "0wrk8d4q6ricbcjzlhk10vrk1qg9hi323kgyyd0c8nmh7a82h8pd"; + sha256 = "0n73jm5ypsj962gpr0dk10lqh83giqsczm63wchyhmrkyf1wgga1"; }; patches = [ @@ -42,7 +42,10 @@ python3Packages.buildPythonApplication rec { ]; checkInputs = with python3Packages; [ - coverage minimock + minimock + pytest + pytest-httpserver + pytest-cov ]; doCheck = true; @@ -51,6 +54,7 @@ python3Packages.buildPythonApplication rec { feedparser dbus-python mygpoclient + requests pygobject3 eyeD3 podcastparser @@ -69,7 +73,8 @@ python3Packages.buildPythonApplication rec { ''; installCheckPhase = '' - LC_ALL=C PYTHONPATH=./src:$PYTHONPATH python3 -m gpodder.unittests + LC_ALL=C PYTHONPATH=src/:$PYTHONPATH pytest --ignore=tests --ignore=src/gpodder/utilwin32ctypes.py --doctest-modules src/gpodder/util.py src/gpodder/jsonconfig.py + LC_ALL=C PYTHONPATH=src/:$PYTHONPATH pytest tests --ignore=src/gpodder/utilwin32ctypes.py --ignore=src/mygpoclient --cov=gpodder ''; meta = with lib; { diff --git a/pkgs/applications/audio/gpodder/disable-autoupdate.patch b/pkgs/applications/audio/gpodder/disable-autoupdate.patch index 8f77518d03e5..c7c81761328b 100644 --- a/pkgs/applications/audio/gpodder/disable-autoupdate.patch +++ b/pkgs/applications/audio/gpodder/disable-autoupdate.patch @@ -11,41 +11,20 @@
-@@ -201,4 +197,4 @@ - - - -- -\ No newline at end of file -+ --- a/src/gpodder/config.py +++ b/src/gpodder/config.py -@@ -91,13 +91,6 @@ - 'retries': 3, # number of retries when downloads time out - }, +@@ -94,7 +94,7 @@ -- # Software updates from gpodder.org -- 'software_update': { + # Software updates from gpodder.org + 'software_update': { - 'check_on_startup': True, # check for updates on start -- 'last_check': 0, # unix timestamp of last update check -- 'interval': 5, # interval (in days) to check for updates -- }, -- - 'ui': { - # Settings for the Command-Line Interface - 'cli': { ++ 'check_on_startup': False, # check for updates on start + 'last_check': 0, # unix timestamp of last update check + 'interval': 5, # interval (in days) to check for updates + }, --- a/src/gpodder/gtkui/main.py +++ b/src/gpodder/gtkui/main.py -@@ -224,7 +224,7 @@ - util.idle_add(self.subscribe_to_url, self.options.subscribe) - elif not self.channels: - self.on_itemUpdate_activate() -- elif self.config.software_update.check_on_startup: -+ elif False and self.config.software_update.check_on_startup: - # Check for software updates from gpodder.org - diff = time.time() - self.config.software_update.last_check - if diff > (60 * 60 * 24) * self.config.software_update.interval: -@@ -3288,6 +3288,7 @@ +@@ -3445,6 +3445,7 @@ If silent=False, a message will be shown even if no updates are available (set silent=False when the check is manually triggered). """ diff --git a/pkgs/applications/audio/psst/default.nix b/pkgs/applications/audio/psst/default.nix new file mode 100644 index 000000000000..d2d4927c1135 --- /dev/null +++ b/pkgs/applications/audio/psst/default.nix @@ -0,0 +1,39 @@ +{ lib, fetchFromGitHub, rustPlatform, alsa-lib, atk, cairo, dbus, gdk-pixbuf, glib, gtk3, pango, pkg-config }: + +rustPlatform.buildRustPackage rec { + pname = "psst"; + version = "unstable-2022-01-25"; + + src = fetchFromGitHub { + owner = "jpochyla"; + repo = pname; + rev = "1627cd4a301dd51e9ee3034294cd7b0d94d02ddc"; + sha256 = "sha256-kepvYhmieXx6Hj79aqaA7tYUnueaBsNx0U4lV7K6LuU="; + }; + + cargoSha256 = "sha256-DcdlQudGyWUUAacV7pAOLDvhd1fgAkEesdxDkHSYm4M="; + # specify the subdirectory of the binary crate to build from the workspace + buildAndTestSubdir = "psst-gui"; + + nativeBuildInputs = [ + pkg-config + ]; + + buildInputs = [ + alsa-lib + atk + cairo + dbus + gdk-pixbuf + glib + gtk3 + pango + ]; + + meta = with lib; { + description = "Fast and multi-platform Spotify client with native GUI"; + homepage = "https://github.com/jpochyla/psst"; + license = licenses.mit; + maintainers = [ maintainers.vbrandl ]; + }; +} diff --git a/pkgs/applications/blockchains/clightning/default.nix b/pkgs/applications/blockchains/clightning/default.nix index df7eace3284d..b58524d1eee3 100644 --- a/pkgs/applications/blockchains/clightning/default.nix +++ b/pkgs/applications/blockchains/clightning/default.nix @@ -1,5 +1,6 @@ { lib , stdenv +, darwin , fetchurl , autoconf , automake @@ -27,16 +28,25 @@ stdenv.mkDerivation rec { sha256 = "3c9dcb686217b2efe0e988e90b95777c4591e3335e259e01a94af87e0bf01809"; }; - nativeBuildInputs = [ autogen autoconf automake gettext libtool pkg-config py3 unzip which ]; + # when building on darwin we need dawin.cctools to provide the correct libtool + # as libwally-core detects the host as darwin and tries to add the -static + # option to libtool, also we have to add the modified gsed package. + nativeBuildInputs = [ autogen autoconf automake gettext pkg-config py3 unzip which ] + ++ lib.optionals stdenv.isDarwin [ darwin.cctools darwin.autoSignDarwinBinariesHook ] ++ [ libtool ]; buildInputs = [ gmp libsodium sqlite zlib ]; - postPatch = '' + # this causes some python trouble on a darwin host so we skip this step. + # also we have to tell libwally-core to use sed instead of gsed. + postPatch = if !stdenv.isDarwin then '' patchShebangs \ tools/generate-wire.py \ tools/update-mocks.sh \ tools/mockup.sh \ devtools/sql-rewrite.py + '' else '' + substituteInPlace external/libwally-core/tools/autogen.sh --replace gsed sed && \ + substituteInPlace external/libwally-core/configure.ac --replace gsed sed ''; configureFlags = [ "--disable-developer" "--disable-valgrind" ]; @@ -56,6 +66,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/ElementsProject/lightning"; maintainers = with maintainers; [ jb55 prusnak ]; license = licenses.mit; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; }; } diff --git a/pkgs/applications/blockchains/electrs/default.nix b/pkgs/applications/blockchains/electrs/default.nix index 4928f363d707..f78c0fa3e355 100644 --- a/pkgs/applications/blockchains/electrs/default.nix +++ b/pkgs/applications/blockchains/electrs/default.nix @@ -12,16 +12,16 @@ let in rustPlatform.buildRustPackage rec { pname = "electrs"; - version = "0.9.5"; + version = "0.9.6"; src = fetchFromGitHub { owner = "romanz"; repo = pname; rev = "v${version}"; - hash = "sha256-6TR9OeIAVVbwDrshb9zHTS39x6taNWYK0UyRLbkW+g0="; + hash = "sha256-BI7hxlpg2sggD1ag73n+tRre+Ja2ZFhDPzy1DV8aEHw="; }; - cargoHash = "sha256-taOrbtx74DICvPLrwym70X3pv7EBA/H22VZmlxefANM="; + cargoHash = "sha256-Oy2mOulSB2a9LaT47G+BzjidcjPjHeaoesQ7g6M8M1Q="; # needed for librocksdb-sys nativeBuildInputs = [ llvmPackages.clang ]; diff --git a/pkgs/applications/editors/pinegrow/default.nix b/pkgs/applications/editors/pinegrow/default.nix index 8ddd0d6a283a..3b694e4b1516 100644 --- a/pkgs/applications/editors/pinegrow/default.nix +++ b/pkgs/applications/editors/pinegrow/default.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation rec { pname = "pinegrow"; - version = "6.3"; + version = "6.4"; src = fetchurl { url = "https://download.pinegrow.com/PinegrowLinux64.${version}.zip"; - sha256 = "0wldj633p67da077nfc67gr9xhq580rkfd0r3904sjq7x01r0kaz"; + sha256 = "0i8sg4criimrqmz0g68b8xcwcrb362ssid5jazswpa6hhwj6s5n4"; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/josm/default.nix b/pkgs/applications/misc/josm/default.nix index d1a8bd1077a3..cc6d4e33fb24 100644 --- a/pkgs/applications/misc/josm/default.nix +++ b/pkgs/applications/misc/josm/default.nix @@ -3,15 +3,15 @@ }: let pname = "josm"; - version = "18360"; + version = "18387"; srcs = { jar = fetchurl { url = "https://josm.openstreetmap.de/download/josm-snapshot-${version}.jar"; - sha256 = "sha256-1OMEPMtUGkxQCgpmyVP1h25gSDa2MKF7l1rodr61O5s="; + sha256 = "sha256-zkEWZjjSy0ajG5X1/dIgLPZ7zr0BiaJJcHaN8sv/3yc="; }; macosx = fetchurl { url = "https://josm.openstreetmap.de/download/macosx/josm-macos-${version}-java17.zip"; - sha256 = "sha256-ZCybgaLwPfQVG2gJ+dtElIY7bGZUe9R8a/0B6QK8yK8="; + sha256 = "sha256-xOVnnQ+eUkboT8Tq5F4QJEou1wAaHwiEdyiEKDR/fUk="; }; pkg = fetchsvn { url = "https://josm.openstreetmap.de/svn/trunk/native/linux/tested"; diff --git a/pkgs/applications/networking/cluster/clusterctl/default.nix b/pkgs/applications/networking/cluster/clusterctl/default.nix index b14c98b4453d..786615801baa 100644 --- a/pkgs/applications/networking/cluster/clusterctl/default.nix +++ b/pkgs/applications/networking/cluster/clusterctl/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "clusterctl"; - version = "1.1.2"; + version = "1.1.3"; src = fetchFromGitHub { owner = "kubernetes-sigs"; repo = "cluster-api"; rev = "v${version}"; - sha256 = "sha256-IjkksHa94gkNiaeksGHlLdeHlLS/uwI0GnKK0d3s5wk="; + sha256 = "sha256-0njXmYhZM4DXFeK9KboXnVw8uHdz4PFJ2aJxwhgyEc8="; }; - vendorSha256 = "sha256-3PzaMB7U19HnqS+zRbIupErE1S8+MzG92vQFq3oxHpE="; + vendorSha256 = "sha256-JVRLPsfI1ITilAOkVIAa2IjjuAlJ2PCpvYEkhnTzRDA="; subPackages = [ "cmd/clusterctl" ]; diff --git a/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix index 4490f8068e04..b76f7515eba6 100644 --- a/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix +++ b/pkgs/applications/version-management/git-and-tools/git-remote-hg/default.nix @@ -4,13 +4,13 @@ python3Packages.buildPythonApplication rec { pname = "git-remote-hg"; - version = "1.0.2.1"; + version = "1.0.3.2"; src = fetchFromGitHub { owner = "mnauw"; repo = "git-remote-hg"; rev = "v${version}"; - sha256 = "1crgq13v2p9wmw1yhckmyzybh8h1nz3839qhqvzh48vxqkailzmn"; + sha256 = "0b5lfbrcrvzpz380817md00lbgy5yl4y76vs3vm0bpm5wmr7c027"; }; nativeBuildInputs = [ diff --git a/pkgs/applications/virtualization/cloud-hypervisor/default.nix b/pkgs/applications/virtualization/cloud-hypervisor/default.nix index 955d609d7a28..bb94c2986f35 100644 --- a/pkgs/applications/virtualization/cloud-hypervisor/default.nix +++ b/pkgs/applications/virtualization/cloud-hypervisor/default.nix @@ -2,19 +2,21 @@ rustPlatform.buildRustPackage rec { pname = "cloud-hypervisor"; - version = "21.0"; + version = "22.0"; src = fetchFromGitHub { owner = "cloud-hypervisor"; repo = pname; rev = "v${version}"; - sha256 = "00b0ij9sfv7zsrgwrcj2rzpy1z8bp0m0lmzjp433xzpcgcnzw3w5"; + sha256 = "1n4i7rgx8rkif2naw429fnkhv0888sfxmnky67fd42mlv1lhz9w8"; }; nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ] ++ lib.optional stdenv.isAarch64 dtc; - cargoSha256 = "0lf7bb468s2ic9vabx954i46605gf7c6064vvwqvz7djk30z0y0d"; + cargoSha256 = "0kc6lcwlqg9l19l4psakgkc5jf28nw1riz85adci897yha1dsnh0"; + + OPENSSL_NO_VENDOR = true; # Integration tests require root. cargoTestFlags = [ "--bins" ]; diff --git a/pkgs/applications/virtualization/qemu/9p-ignore-noatime.patch b/pkgs/applications/virtualization/qemu/9p-ignore-noatime.patch index 03e47a57863c..7376e6f66adc 100644 --- a/pkgs/applications/virtualization/qemu/9p-ignore-noatime.patch +++ b/pkgs/applications/virtualization/qemu/9p-ignore-noatime.patch @@ -1,44 +1,49 @@ -commit cdc3e7eeafa9f683214d2c15d52ef384c3de6611 -Author: aszlig -Date: Mon Mar 18 13:21:01 2019 +0100 +From 9e4932ae99946b1a08ab5b5345fd2bc3486e54a5 Mon Sep 17 00:00:00 2001 +From: aszlig +Date: Mon, 18 Mar 2019 13:21:01 +0100 +Subject: [PATCH] 9pfs: Ignore O_NOATIME open flag - 9pfs: Ignore O_NOATIME open flag - - Since Linux 4.19, overlayfs uses the O_NOATIME flag on its lowerdir, - which in turn causes errors when the Nix store is mounted in the guest - because the file owner of the store paths typically don't match the - owner of the QEMU process. - - After submitting a patch to the overlayfs mailing list[1], it turns out - that my patch was incomplete[2] and needs a bit more rework. - - So instead of using an incomplete kernel patch in nixpkgs, which affects - *all* users of overlayfs, not just NixOS VM tests, I decided that for - now it's better to patch QEMU instead. - - The change here really only ignores the O_NOATIME flag so that the - behaviour is similar to what NFS does. From open(2): - - This flag may not be effective on all filesystems. One example is NFS, - where the server maintains the access time. - - This change is therefore only temporary until the final fix lands in the - stable kernel releases. - - [1]: https://www.spinics.net/lists/linux-unionfs/msg06755.html - [2]: https://www.spinics.net/lists/linux-unionfs/msg06756.html - - Signed-off-by: aszlig +Since Linux 4.19, overlayfs uses the O_NOATIME flag on its lowerdir, +which in turn causes errors when the Nix store is mounted in the guest +because the file owner of the store paths typically don't match the +owner of the QEMU process. + +After submitting a patch to the overlayfs mailing list[1], it turns out +that my patch was incomplete[2] and needs a bit more rework. + +So instead of using an incomplete kernel patch in nixpkgs, which affects +*all* users of overlayfs, not just NixOS VM tests, I decided that for +now it's better to patch QEMU instead. + +The change here really only ignores the O_NOATIME flag so that the +behaviour is similar to what NFS does. From open(2): + +This flag may not be effective on all filesystems. One example is NFS, +where the server maintains the access time. + +This change is therefore only temporary until the final fix lands in the +stable kernel releases. + +[1]: https://www.spinics.net/lists/linux-unionfs/msg06755.html +[2]: https://www.spinics.net/lists/linux-unionfs/msg06756.html + +Signed-off-by: aszlig +--- + hw/9pfs/9p.c | 1 - + 1 file changed, 1 deletion(-) diff --git a/hw/9pfs/9p.c b/hw/9pfs/9p.c -index 55821343e5..0b8425fe18 100644 +index a6d6b3f835..4eb26e2294 100644 --- a/hw/9pfs/9p.c +++ b/hw/9pfs/9p.c -@@ -127,7 +127,6 @@ static int dotl_to_open_flags(int flags) - { P9_DOTL_LARGEFILE, O_LARGEFILE }, - { P9_DOTL_DIRECTORY, O_DIRECTORY }, - { P9_DOTL_NOFOLLOW, O_NOFOLLOW }, +@@ -139,7 +139,6 @@ static int dotl_to_open_flags(int flags) + { P9_DOTL_DSYNC, O_DSYNC }, + { P9_DOTL_FASYNC, FASYNC }, + #ifndef CONFIG_DARWIN - { P9_DOTL_NOATIME, O_NOATIME }, - { P9_DOTL_SYNC, O_SYNC }, - }; - + /* + * On Darwin, we could map to F_NOCACHE, which is + * similar, but doesn't quite have the same +-- +2.35.1 + diff --git a/pkgs/applications/virtualization/qemu/allow-virtfs-on-darwin.patch b/pkgs/applications/virtualization/qemu/allow-virtfs-on-darwin.patch new file mode 100644 index 000000000000..a498d309c233 --- /dev/null +++ b/pkgs/applications/virtualization/qemu/allow-virtfs-on-darwin.patch @@ -0,0 +1,77 @@ +From 4ca09b7cd1d42eb6b1587fed74cd4d684e31bfbe Mon Sep 17 00:00:00 2001 +From: Keno Fischer +Date: Sun, 27 Feb 2022 17:35:22 -0500 +Subject: [PATCH] 9p: darwin: meson: Allow VirtFS on Darwin + +To allow VirtFS on darwin, we need to check that pthread_fchdir_np is +available, which has only been available since macOS 10.12. + +Additionally, virtfs_proxy_helper is disabled on Darwin. This patch +series does not currently provide an implementation of the proxy-helper, +but this functionality could be implemented later on. + +Signed-off-by: Keno Fischer +[Michael Roitzsch: - Rebase for NixOS] +Signed-off-by: Michael Roitzsch +[Will Cohen: - Rebase to master] +Signed-off-by: Will Cohen +Reviewed-by: Paolo Bonzini +[Will Cohen: - Add check for pthread_fchdir_np to virtfs + - Add comments to patch commit + - Note that virtfs_proxy_helper does not work + on macOS + - Fully adjust meson virtfs error note to specify + macOS + - Rebase to master] +Signed-off-by: Will Cohen +Message-Id: <20220227223522.91937-12-wwcohen@gmail.com> +Signed-off-by: Christian Schoenebeck +Acked-by: Christian Schoenebeck +--- + fsdev/meson.build | 1 + + meson.build | 17 +++++++++++------ + 2 files changed, 12 insertions(+), 6 deletions(-) + +diff --git a/fsdev/meson.build b/fsdev/meson.build +index adf57cc43e..b632b66348 100644 +--- a/fsdev/meson.build ++++ b/fsdev/meson.build +@@ -7,6 +7,7 @@ fsdev_ss.add(when: ['CONFIG_FSDEV_9P'], if_true: files( + 'qemu-fsdev.c', + ), if_false: files('qemu-fsdev-dummy.c')) + softmmu_ss.add_all(when: 'CONFIG_LINUX', if_true: fsdev_ss) ++softmmu_ss.add_all(when: 'CONFIG_DARWIN', if_true: fsdev_ss) + + if have_virtfs_proxy_helper + executable('virtfs-proxy-helper', +diff --git a/meson.build b/meson.build +index 2265fa409a..6d73c02903 100644 +--- a/meson.build ++++ b/meson.build +@@ -1383,12 +1383,17 @@ endif + have_host_block_device = (targetos != 'darwin' or + cc.has_header('IOKit/storage/IOMedia.h')) + +-have_virtfs = (targetos == 'linux' and +- have_system and +- libattr.found() and +- libcap_ng.found()) +- +-have_virtfs_proxy_helper = have_virtfs and have_tools ++have_virtfs = get_option('virtfs') \ ++ .require(targetos == 'linux' or targetos == 'darwin', ++ error_message: 'virtio-9p (virtfs) requires Linux or macOS') \ ++ .require(targetos == 'linux' or cc.has_function('pthread_fchdir_np'), ++ error_message: 'virtio-9p (virtfs) on macOS requires the presence of pthread_fchdir_np') \ ++ .require(targetos == 'darwin' or (libattr.found() and libcap_ng.found()), ++ error_message: 'virtio-9p (virtfs) on Linux requires libcap-ng-devel and libattr-devel') \ ++ .disable_auto_if(not have_tools and not have_system) \ ++ .allowed() ++ ++have_virtfs_proxy_helper = targetos != 'darwin' and have_virtfs and have_tools + + if get_option('virtfs').enabled() + if not have_virtfs +-- +2.35.1 + diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix index 2c2094763cc6..9dcf80d0369a 100644 --- a/pkgs/applications/virtualization/qemu/default.nix +++ b/pkgs/applications/virtualization/qemu/default.nix @@ -88,14 +88,64 @@ stdenv.mkDerivation rec { patches = [ ./fix-qemu-ga.patch - ./9p-ignore-noatime.patch # Cocoa clipboard support only works on macOS 10.14+ (fetchpatch { url = "https://gitlab.com/qemu-project/qemu/-/commit/7e3e20d89129614f4a7b2451fe321cc6ccca3b76.diff"; sha256 = "09xz06g57wxbacic617pq9c0qb7nly42gif0raplldn5lw964xl2"; revert = true; }) - ] ++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch; + # 9p-darwin for 7.0 backported to 6.2.0 + # + # Can generally be removed when updating derivation to 7.0. Nine of the + # patches can be drawn directly from QEMU upstream, but the second commit + # and the eleventh commit had to be modified when rebasing back to 6.2.0. + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/e0bd743bb2dd4985791d4de880446bdbb4e04fed.patch"; + sha256 = "sha256-c6QYL3zig47fJwm6rqkqGp3E1PakVTaihvXDRebbBlQ="; + }) + ./rename-9p-util.patch + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/f41db099c71151291c269bf48ad006de9cbd9ca6.patch"; + sha256 = "sha256-70/rrhZw+02JJbJ3CoW8B1GbdM4Lwb2WkUdwstYAoIQ="; + }) + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/6b3b279bd670c6a2fa23c9049820c814f0e2c846.patch"; + sha256 = "sha256-7WqklSvLirEuxTXTIMQDQhWpXnwMseJ1RumT+faq/Y8="; + }) + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/67a71e3b71a2834d028031a92e76eb9444e423c6.patch"; + sha256 = "sha256-COFm/SwfJSoSl9YDpL6ceAE8CcE4mGhsGxw1HMuL++o="; + }) + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/38d7fd68b0c8775b5253ab84367419621aa032e6.patch"; + sha256 = "sha256-iwGIzq9FWW6zpbDg/IKrp5OZpK9cgQqTRWWq8WBIHRQ="; + }) + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/57b3910bc3513ab515296692daafd1c546f3c115.patch"; + sha256 = "sha256-ybl9+umZAcQKHYL7NkGJQC0W7bccTagA9KQiFaR2LYA="; + }) + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/b5989326f558faedd2511f29459112cced2ca8f5.patch"; + sha256 = "sha256-s+O9eCgj2Ev+INjL9LY9MJBdISIdZLslI3lue2DICGM="; + }) + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/029ed1bd9defa33a80bb40cdcd003699299af8db.patch"; + sha256 = "sha256-mGqcRWcEibDJdhTRrN7ZWrMuCfUWW8vWiFj7sb2/RYo="; + }) + (fetchpatch { + url = "https://gitlab.com/qemu-project/qemu/-/commit/d3671fd972cd185a6923433aa4802f54d8b62112.patch"; + sha256 = "sha256-GUh5o7mbFTm/dm6CqcGdoMlC+YrV8RlcEwu/mxrfTzo="; + }) + ./allow-virtfs-on-darwin.patch + # QEMU upstream does not demand compatibility to pre-10.13, so 9p-darwin + # support on nix requires utimensat fallback. The patch adding this fallback + # set was removed during the process of upstreaming this functionality, and + # will still be needed in nix until the macOS SDK reaches 10.13+. + ./provide-fallback-for-utimensat.patch + # Still needed indefinitely + ./9p-ignore-noatime.patch + ] + ++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch; postPatch = '' # Otherwise tries to ensure /var/run exists. diff --git a/pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch b/pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch new file mode 100644 index 000000000000..dbc4e2b9af51 --- /dev/null +++ b/pkgs/applications/virtualization/qemu/provide-fallback-for-utimensat.patch @@ -0,0 +1,190 @@ +From 70328c307001f4bb75d30d93c5bba3c3cd790c88 Mon Sep 17 00:00:00 2001 +From: Keno Fischer +Date: Sat, 16 Jun 2018 20:56:54 -0400 +Subject: [PATCH] 9p: darwin: Provide fallback impl for utimensat + +This function is new in Mac OS 10.13. Provide a fallback implementation +when building against older SDKs. The complication in the definition comes +having to separately handle the used SDK version and the target OS version. + +- If the SDK version is too low (__MAC_10_13 not defined), utimensat is not + defined in the header, so we must not try to use it (doing so would error). +- Otherwise, if the targetted OS version is at least 10.13, we know this + function is available, so we can unconditionally call it. +- Lastly, we check for the availability of the __builtin_available macro to + potentially insert a dynamic check for this OS version. However, __builtin_available + is only available with sufficiently recent versions of clang and while all + Apple clang versions that ship with Xcode versions that support the 10.13 + SDK support with builtin, we want to allow building with compilers other + than Apple clang that may not support this builtin. + +Signed-off-by: Keno Fischer +Signed-off-by: Michael Roitzsch +Signed-off-by: Will Cohen +--- + hw/9pfs/9p-local.c | 2 +- + hw/9pfs/9p-util-darwin.c | 96 ++++++++++++++++++++++++++++++++++++++++ + hw/9pfs/9p-util-linux.c | 6 +++ + hw/9pfs/9p-util.h | 8 ++++ + 4 files changed, 111 insertions(+), 1 deletion(-) + +diff --git a/hw/9pfs/9p-local.c b/hw/9pfs/9p-local.c +index d42ce6d8b8..b2c1fa42e1 100644 +--- a/hw/9pfs/9p-local.c ++++ b/hw/9pfs/9p-local.c +@@ -1085,7 +1085,7 @@ static int local_utimensat(FsContext *s, V9fsPath *fs_path, + goto out; + } + +- ret = utimensat(dirfd, name, buf, AT_SYMLINK_NOFOLLOW); ++ ret = utimensat_nofollow(dirfd, name, buf); + close_preserve_errno(dirfd); + out: + g_free(dirpath); +diff --git a/hw/9pfs/9p-util-darwin.c b/hw/9pfs/9p-util-darwin.c +index bec0253474..2fc0475292 100644 +--- a/hw/9pfs/9p-util-darwin.c ++++ b/hw/9pfs/9p-util-darwin.c +@@ -95,3 +95,99 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev) + } + + #endif ++ ++#ifndef __has_builtin ++#define __has_builtin(x) 0 ++#endif ++ ++static int update_times_from_stat(int fd, struct timespec times[2], ++ int update0, int update1) ++{ ++ struct stat buf; ++ int ret = fstat(fd, &buf); ++ if (ret == -1) { ++ return ret; ++ } ++ if (update0) { ++ times[0] = buf.st_atimespec; ++ } ++ if (update1) { ++ times[1] = buf.st_mtimespec; ++ } ++ return 0; ++} ++ ++int utimensat_nofollow(int dirfd, const char *filename, ++ const struct timespec times_in[2]) ++{ ++ int ret, fd; ++ int special0, special1; ++ struct timeval futimes_buf[2]; ++ struct timespec times[2]; ++ memcpy(times, times_in, 2 * sizeof(struct timespec)); ++ ++/* Check whether we have an SDK version that defines utimensat */ ++#if defined(__MAC_10_13) ++# if __MAC_OS_X_VERSION_MIN_REQUIRED >= __MAC_10_13 ++# define UTIMENSAT_AVAILABLE 1 ++# elif __has_builtin(__builtin_available) ++# define UTIMENSAT_AVAILABLE __builtin_available(macos 10.13, *) ++# else ++# define UTIMENSAT_AVAILABLE 0 ++# endif ++ if (UTIMENSAT_AVAILABLE) { ++ return utimensat(dirfd, filename, times, AT_SYMLINK_NOFOLLOW); ++ } ++#endif ++ ++ /* utimensat not available. Use futimes. */ ++ fd = openat_file(dirfd, filename, O_PATH_9P_UTIL | O_NOFOLLOW, 0); ++ if (fd == -1) { ++ return -1; ++ } ++ ++ special0 = times[0].tv_nsec == UTIME_OMIT; ++ special1 = times[1].tv_nsec == UTIME_OMIT; ++ if (special0 || special1) { ++ /* If both are set, nothing to do */ ++ if (special0 && special1) { ++ ret = 0; ++ goto done; ++ } ++ ++ ret = update_times_from_stat(fd, times, special0, special1); ++ if (ret < 0) { ++ goto done; ++ } ++ } ++ ++ special0 = times[0].tv_nsec == UTIME_NOW; ++ special1 = times[1].tv_nsec == UTIME_NOW; ++ if (special0 || special1) { ++ ret = futimes(fd, NULL); ++ if (ret < 0) { ++ goto done; ++ } ++ ++ /* If both are set, we are done */ ++ if (special0 && special1) { ++ ret = 0; ++ goto done; ++ } ++ ++ ret = update_times_from_stat(fd, times, special0, special1); ++ if (ret < 0) { ++ goto done; ++ } ++ } ++ ++ futimes_buf[0].tv_sec = times[0].tv_sec; ++ futimes_buf[0].tv_usec = times[0].tv_nsec / 1000; ++ futimes_buf[1].tv_sec = times[1].tv_sec; ++ futimes_buf[1].tv_usec = times[1].tv_nsec / 1000; ++ ret = futimes(fd, futimes_buf); ++ ++done: ++ close_preserve_errno(fd); ++ return ret; ++} +diff --git a/hw/9pfs/9p-util-linux.c b/hw/9pfs/9p-util-linux.c +index db451b0784..320697f347 100644 +--- a/hw/9pfs/9p-util-linux.c ++++ b/hw/9pfs/9p-util-linux.c +@@ -68,3 +68,9 @@ int qemu_mknodat(int dirfd, const char *filename, mode_t mode, dev_t dev) + { + return mknodat(dirfd, filename, mode, dev); + } ++ ++int utimensat_nofollow(int dirfd, const char *filename, ++ const struct timespec times[2]) ++{ ++ return utimensat(dirfd, filename, times, AT_SYMLINK_NOFOLLOW); ++} +diff --git a/hw/9pfs/9p-util.h b/hw/9pfs/9p-util.h +index 1f74d37558..a4b002d1b5 100644 +--- a/hw/9pfs/9p-util.h ++++ b/hw/9pfs/9p-util.h +@@ -36,6 +36,12 @@ static inline int qemu_lsetxattr(const char *path, const char *name, + #define qemu_lsetxattr lsetxattr + #endif + ++/* Compatibility with old SDK Versions for Darwin */ ++#if defined(CONFIG_DARWIN) && !defined(UTIME_NOW) ++#define UTIME_NOW -1 ++#define UTIME_OMIT -2 ++#endif ++ + static inline void close_preserve_errno(int fd) + { + int serrno = errno; +@@ -96,6 +102,8 @@ ssize_t flistxattrat_nofollow(int dirfd, const char *filename, + char *list, size_t size); + ssize_t fremovexattrat_nofollow(int dirfd, const char *filename, + const char *name); ++int utimensat_nofollow(int dirfd, const char *filename, ++ const struct timespec times[2]); + + /** + * Darwin has d_seekoff, which appears to function similarly to d_off. +-- +2.35.1 + diff --git a/pkgs/applications/virtualization/qemu/rename-9p-util.patch b/pkgs/applications/virtualization/qemu/rename-9p-util.patch new file mode 100644 index 000000000000..fe3e2d7b4b8f --- /dev/null +++ b/pkgs/applications/virtualization/qemu/rename-9p-util.patch @@ -0,0 +1,54 @@ +From 011b121d7f84c8974f03a81582cf1107249245bb Mon Sep 17 00:00:00 2001 +From: Keno Fischer +Date: Sun, 27 Feb 2022 17:35:13 -0500 +Subject: [PATCH] 9p: Rename 9p-util -> 9p-util-linux +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +The current file only has the Linux versions of these functions. +Rename the file accordingly and update the Makefile to only build +it on Linux. A Darwin version of these will follow later in the +series. + +Signed-off-by: Keno Fischer +[Michael Roitzsch: - Rebase for NixOS] +Signed-off-by: Michael Roitzsch +Signed-off-by: Will Cohen +Reviewed-by: Greg Kurz +Reviewed-by: Philippe Mathieu-Daudé +Message-Id: <20220227223522.91937-3-wwcohen@gmail.com> +Signed-off-by: Christian Schoenebeck +--- + hw/9pfs/{9p-util.c => 9p-util-linux.c} | 0 + hw/9pfs/meson.build | 2 +- + 2 files changed, 1 insertion(+), 1 deletion(-) + rename hw/9pfs/{9p-util.c => 9p-util-linux.c} (100%) + +diff --git a/hw/9pfs/9p-util.c b/hw/9pfs/9p-util-linux.c +similarity index 100% +rename from hw/9pfs/9p-util.c +rename to hw/9pfs/9p-util-linux.c +diff --git a/hw/9pfs/meson.build b/hw/9pfs/meson.build +index 99be5d9119..1b28e70040 100644 +--- a/hw/9pfs/meson.build ++++ b/hw/9pfs/meson.build +@@ -4,7 +4,6 @@ fs_ss.add(files( + '9p-posix-acl.c', + '9p-proxy.c', + '9p-synth.c', +- '9p-util.c', + '9p-xattr-user.c', + '9p-xattr.c', + '9p.c', +@@ -14,6 +13,7 @@ fs_ss.add(files( + 'coth.c', + 'coxattr.c', + )) ++fs_ss.add(when: 'CONFIG_LINUX', if_true: files('9p-util-linux.c')) + fs_ss.add(when: 'CONFIG_XEN', if_true: files('xen-9p-backend.c')) + softmmu_ss.add_all(when: 'CONFIG_FSDEV_9P', if_true: fs_ss) + +-- +2.35.1 + diff --git a/pkgs/applications/window-managers/qtile/default.nix b/pkgs/applications/window-managers/qtile/default.nix index c4a33628e131..4a48225d8013 100644 --- a/pkgs/applications/window-managers/qtile/default.nix +++ b/pkgs/applications/window-managers/qtile/default.nix @@ -69,4 +69,7 @@ in name = "${unwrapped.pname}-${unwrapped.version}"; # export underlying qtile package passthru = { inherit unwrapped; }; + + # restore original qtile attrs + inherit (unwrapped) pname version meta; }) diff --git a/pkgs/applications/window-managers/sway/default.nix b/pkgs/applications/window-managers/sway/default.nix index 9ea6c1650ee0..727d9b4e6b36 100644 --- a/pkgs/applications/window-managers/sway/default.nix +++ b/pkgs/applications/window-managers/sway/default.nix @@ -11,7 +11,7 @@ , systemdSupport ? stdenv.isLinux , dbusSupport ? true , dbus -, trayEnabled ? dbusSupport +, trayEnabled ? systemdSupport && dbusSupport }: # The "sd-bus-provider" meson option does not include a "none" option, diff --git a/pkgs/build-support/make-desktopitem/default.nix b/pkgs/build-support/make-desktopitem/default.nix index 31964953247a..d831fe24d33b 100644 --- a/pkgs/build-support/make-desktopitem/default.nix +++ b/pkgs/build-support/make-desktopitem/default.nix @@ -36,7 +36,7 @@ let # FIXME: workaround until https://github.com/NixOS/nixpkgs/pull/162246 lands cleanName = if lib.hasInfix " " name - then throw "Name must not contain spaces!" + then throw "makeDesktopItem: name must not contain spaces!" else name; # There are multiple places in the FDO spec that make "boolean" values actually tristate, @@ -45,13 +45,13 @@ let boolOrNullToString = value: if value == null then null else if builtins.isBool value then lib.boolToString value - else throw "Value must be a boolean or null!"; + else throw "makeDesktopItem: value must be a boolean or null!"; # Multiple values are represented as one string, joined by semicolons. # Technically, it's possible to escape semicolons in values with \;, but this is currently not implemented. - renderList = value: - if !builtins.isList value then throw "Value must be a list!" - else if builtins.any (item: lib.hasInfix ";" item) value then throw "Values in list must not contain semicolons!" + renderList = key: value: + if !builtins.isList value then throw "makeDesktopItem: value for ${key} must be a list!" + else if builtins.any (item: lib.hasInfix ";" item) value then throw "makeDesktopItem: values in ${key} list must not contain semicolons!" else if value == [] then null else builtins.concatStringsSep ";" value; @@ -65,18 +65,18 @@ let "NoDisplay" = boolOrNullToString noDisplay; "Comment" = comment; "Icon" = icon; - "OnlyShowIn" = renderList onlyShowIn; - "NotShowIn" = renderList notShowIn; + "OnlyShowIn" = renderList "onlyShowIn" onlyShowIn; + "NotShowIn" = renderList "notShowIn" notShowIn; "DBusActivatable" = boolOrNullToString dbusActivatable; "TryExec" = tryExec; "Exec" = exec; "Path" = path; "Terminal" = boolOrNullToString terminal; - "Actions" = renderList (builtins.attrNames actions); - "MimeType" = renderList mimeTypes; - "Categories" = renderList categories; - "Implements" = renderList implements; - "Keywords" = renderList keywords; + "Actions" = renderList "actions" (builtins.attrNames actions); + "MimeType" = renderList "mimeTypes" mimeTypes; + "Categories" = renderList "categories" categories; + "Implements" = renderList "implements" implements; + "Keywords" = renderList "keywords" keywords; "StartupNotify" = boolOrNullToString startupNotify; "StartupWMClass" = startupWMClass; "URL" = url; diff --git a/pkgs/data/themes/yaru/default.nix b/pkgs/data/themes/yaru/default.nix index 64bd3eb5eebc..eb62da715ce9 100644 --- a/pkgs/data/themes/yaru/default.nix +++ b/pkgs/data/themes/yaru/default.nix @@ -16,13 +16,13 @@ stdenv.mkDerivation rec { pname = "yaru"; - version = "21.10.2"; + version = "22.04.1"; src = fetchFromGitHub { owner = "ubuntu"; repo = "yaru"; rev = version; - sha256 = "sha256-VN/jgKGM2Th+2nv91vEz47kmQiBx8xAiEVbtXwhZg6U="; + sha256 = "sha256-5mB5eTIPw4CqYSQm675MKbRwsYLpg+5WJrLDkbc6nKs="; }; nativeBuildInputs = [ meson sassc pkg-config glib ninja python3 ]; diff --git a/pkgs/development/compilers/edk2/default.nix b/pkgs/development/compilers/edk2/default.nix index e60d647f6d38..47ea90482b6d 100644 --- a/pkgs/development/compilers/edk2/default.nix +++ b/pkgs/development/compilers/edk2/default.nix @@ -33,7 +33,7 @@ buildType = if stdenv.isDarwin then edk2 = buildStdenv.mkDerivation { pname = "edk2"; - version = "202108"; + version = "202202"; # submodules src = fetchFromGitHub { @@ -41,21 +41,9 @@ edk2 = buildStdenv.mkDerivation { repo = "edk2"; rev = "edk2-stable${edk2.version}"; fetchSubmodules = true; - sha256 = "1ps244f7y43afxxw6z95xscy24f9mpp8g0mfn90rd4229f193ba2"; + sha256 = "0srmhi6c27n5vyl01nhh0fq8k4vngbwn79siyjvcacjbj2ivhh8d"; }; - patches = [ - # Pull upstream fix for gcc-11 build. - (fetchpatch { - name = "gcc-11-vla.patch"; - url = "https://github.com/google/brotli/commit/0a3944c8c99b8d10cc4325f721b7c273d2b41f7b.patch"; - sha256 = "10c6ibnxh4f8lrh9i498nywgva32jxy2c1zzvr9mcqgblf9d19pj"; - # Apply submodule patch to subdirectory: "a/" -> "BaseTools/Source/C/BrotliCompress/brotli/" - stripLen = 1; - extraPrefix = "BaseTools/Source/C/BrotliCompress/brotli/"; - }) - ]; - buildInputs = [ libuuid pythonEnv ]; makeFlags = [ "-C BaseTools" ] @@ -75,7 +63,7 @@ edk2 = buildStdenv.mkDerivation { meta = with lib; { description = "Intel EFI development kit"; - homepage = "https://sourceforge.net/projects/edk2/"; + homepage = "https://github.com/tianocore/tianocore.github.io/wiki/EDK-II/"; license = licenses.bsd2; platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" "x86_64-darwin" ]; }; diff --git a/pkgs/development/compilers/gleam/default.nix b/pkgs/development/compilers/gleam/default.nix index 891751a6ad6b..3f704b525722 100644 --- a/pkgs/development/compilers/gleam/default.nix +++ b/pkgs/development/compilers/gleam/default.nix @@ -2,13 +2,13 @@ rustPlatform.buildRustPackage rec { pname = "gleam"; - version = "0.19.0"; + version = "0.20.1"; src = fetchFromGitHub { owner = "gleam-lang"; repo = pname; rev = "v${version}"; - sha256 = "sha256-pJ4RSijuwdKAL24WzcDIQen1RGofN1tUlbAA18zUvBE="; + sha256 = "sha256-AK+eb0eJyI7ALn7sg0wz4GzHthxrJWd1PVT5bL9LKWA="; }; nativeBuildInputs = [ pkg-config ]; @@ -16,7 +16,7 @@ rustPlatform.buildRustPackage rec { buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security libiconv ]; - cargoSha256 = "sha256-f/6LdvKRykpBX2GlRuyUcSD719f6XzhbMHzhrGNU0Cg="; + cargoSha256 = "sha256-kFTAPbP42sbhsvP069ua0ys1Dw7W+Gdsv2YaGrzorIk="; meta = with lib; { description = "A statically typed language for the Erlang VM"; diff --git a/pkgs/development/libraries/appstream/default.nix b/pkgs/development/libraries/appstream/default.nix index c39ea78a7757..9b07697a6a9a 100644 --- a/pkgs/development/libraries/appstream/default.nix +++ b/pkgs/development/libraries/appstream/default.nix @@ -14,27 +14,31 @@ , glib , xapian , libxml2 +, libxmlb , libyaml , gobject-introspection , pcre , itstool , gperf , vala -, lmdb , curl +, nixosTests }: stdenv.mkDerivation rec { pname = "appstream"; - version = "0.14.4"; + version = "0.15.2"; + # When bumping this package, please also check whether + # fix-build-for-qt-olderthan-514.patch still applies by + # building libsForQt512.appstream-qt. - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "installedTests" ]; src = fetchFromGitHub { owner = "ximion"; repo = "appstream"; rev = "v${version}"; - sha256 = "sha256-DJXCw50f+8c58bJw6xx0ECfkc9/KcWaeA+ne2zmTyhg="; + sha256 = "sha256-/JZ49wjtcInbGUOVVjevVSrLCHcA60FMT165rhfb78Q="; }; patches = [ @@ -43,6 +47,9 @@ stdenv.mkDerivation rec { src = ./fix-paths.patch; libstemmer_includedir = "${lib.getDev libstemmer}/include"; }) + + # Allow installing installed tests to a separate output. + ./installed-tests-path.patch ]; nativeBuildInputs = [ @@ -65,9 +72,9 @@ stdenv.mkDerivation rec { glib xapian libxml2 + libxmlb libyaml gperf - lmdb curl ]; @@ -75,8 +82,15 @@ stdenv.mkDerivation rec { "-Dapidocs=false" "-Ddocs=false" "-Dvapi=true" + "-Dinstalled_test_prefix=${placeholder "installedTests"}" ]; + passthru = { + tests = { + installed-tests = nixosTests.installed-tests.appstream; + }; + }; + meta = with lib; { description = "Software metadata handling library"; homepage = "https://www.freedesktop.org/wiki/Distributions/AppStream/"; @@ -88,5 +102,5 @@ stdenv.mkDerivation rec { ''; license = licenses.lgpl21Plus; platforms = platforms.unix; - }; + }; } diff --git a/pkgs/development/libraries/appstream/fix-build-for-qt-olderthan-514.patch b/pkgs/development/libraries/appstream/fix-build-for-qt-olderthan-514.patch new file mode 100644 index 000000000000..35db2bec914e --- /dev/null +++ b/pkgs/development/libraries/appstream/fix-build-for-qt-olderthan-514.patch @@ -0,0 +1,43 @@ +diff --git a/qt/component.h b/qt/component.h +index 47abd1f3..74de943c 100644 +--- a/qt/component.h ++++ b/qt/component.h +@@ -90,7 +90,7 @@ class APPSTREAMQT_EXPORT Component { + UrlKindContact, + + // deprecated +- UrlTranslate [[deprecated]] = UrlKindTranslate, ++ UrlTranslate = UrlKindTranslate, + }; + Q_ENUM(UrlKind) + +diff --git a/qt/pool.h b/qt/pool.h +index b59829b7..5237f613 100644 +--- a/qt/pool.h ++++ b/qt/pool.h +@@ -70,9 +70,9 @@ public: + FlagMonitor = 1 << 7, + + // deprecated +- FlagReadCollection [[deprecated]] = FlagLoadOsCollection, +- FlagReadMetainfo [[deprecated]] = FlagLoadOsMetainfo, +- FlagReadDesktopFiles [[deprecated]] = FlagLoadOsDesktopFiles, ++ FlagReadCollection = FlagLoadOsCollection, ++ FlagReadMetainfo = FlagLoadOsMetainfo, ++ FlagReadDesktopFiles = FlagLoadOsDesktopFiles, + }; + + /** +@@ -84,9 +84,9 @@ public: + * Flags on how caching should be used. + **/ + enum CacheFlags { +- CacheFlagNone [[deprecated]] = 0, +- CacheFlagUseUser [[deprecated]] = 1 << 0, +- CacheFlagUseSystem [[deprecated]] = 1 << 1, ++ CacheFlagNone = 0, ++ CacheFlagUseUser = 1 << 0, ++ CacheFlagUseSystem = 1 << 1, + }; + + /** diff --git a/pkgs/development/libraries/appstream/fix-paths.patch b/pkgs/development/libraries/appstream/fix-paths.patch index 0da72a78cbcf..2f1249daef41 100644 --- a/pkgs/development/libraries/appstream/fix-paths.patch +++ b/pkgs/development/libraries/appstream/fix-paths.patch @@ -1,18 +1,21 @@ diff --git a/data/meson.build b/data/meson.build -index 1eb3dfb0..623b66ec 100644 +index 53f31cb4..90f40e77 100644 --- a/data/meson.build +++ b/data/meson.build -@@ -26,4 +26,4 @@ i18n.merge_file ( +@@ -68,7 +68,7 @@ test('as-validate_metainfo.cli', ) - install_data ('appstream.conf', -- install_dir: get_option('sysconfdir')) -+ install_dir: get_option('prefix') / 'etc') + install_data('appstream.conf', +- install_dir: get_option('sysconfdir')) ++ install_dir: get_option('prefix') / 'etc') + + if get_option('compose') + ascompose_metainfo = 'org.freedesktop.appstream.compose.metainfo.xml' diff --git a/meson.build b/meson.build -index dc1fb1a5..5ee03b73 100644 +index 2efe86b7..9dc79e28 100644 --- a/meson.build +++ b/meson.build -@@ -108,12 +108,12 @@ if get_option ('gir') +@@ -107,12 +107,12 @@ if get_option ('gir') dependency('gobject-introspection-1.0', version: '>=1.56') endif diff --git a/pkgs/development/libraries/appstream/installed-tests-path.patch b/pkgs/development/libraries/appstream/installed-tests-path.patch new file mode 100644 index 000000000000..188c1e525890 --- /dev/null +++ b/pkgs/development/libraries/appstream/installed-tests-path.patch @@ -0,0 +1,27 @@ +diff --git a/meson_options.txt b/meson_options.txt +index 8dd8e0c7..e2a30b06 100644 +--- a/meson_options.txt ++++ b/meson_options.txt +@@ -44,6 +44,11 @@ option('install-docs', + value : true, + description : 'Install documentation for API and specification' + ) ++option('installed_test_prefix', ++ type : 'string', ++ value : '', ++ description : 'Prefix for installed tests' ++) + + # + # For development +diff --git a/tests/installed-tests/meson.build b/tests/installed-tests/meson.build +index 405820ce..f592a753 100644 +--- a/tests/installed-tests/meson.build ++++ b/tests/installed-tests/meson.build +@@ -10,5 +10,5 @@ configure_file( + output : 'metainfo-validate.test', + configuration : itconf, + install: true, +- install_dir: join_paths('share', 'installed-tests', 'appstream'), ++ install_dir: join_paths(get_option('installed_test_prefix'), 'share', 'installed-tests', 'appstream'), + ) diff --git a/pkgs/development/libraries/appstream/qt.nix b/pkgs/development/libraries/appstream/qt.nix index 0bcb4741ff12..3704332119e2 100644 --- a/pkgs/development/libraries/appstream/qt.nix +++ b/pkgs/development/libraries/appstream/qt.nix @@ -1,12 +1,12 @@ -{ mkDerivation, appstream, qtbase, qttools }: +{ lib, mkDerivation, appstream, qtbase, qttools, nixosTests }: # TODO: look into using the libraries from the regular appstream derivation as we keep duplicates here mkDerivation { pname = "appstream-qt"; - inherit (appstream) version src patches; + inherit (appstream) version src; - outputs = [ "out" "dev" ]; + outputs = [ "out" "dev" "installedTests" ]; buildInputs = appstream.buildInputs ++ [ appstream qtbase ]; @@ -14,11 +14,26 @@ mkDerivation { mesonFlags = appstream.mesonFlags ++ [ "-Dqt=true" ]; + patches = (appstream.patches or []) ++ lib.optionals (lib.versionOlder qtbase.version "5.14") [ + # Fix darwin build for libsForQt5.appstream-qt + # Old Qt moc doesn't know about fancy C++14 features + # ../qt/component.h:93: Parse error at "UrlTranslate" + # Remove both this patch and related comment in default.nix + # once Qt 5.14 or later becomes default on darwin + ./fix-build-for-qt-olderthan-514.patch + ]; + postFixup = '' sed -i "$dev/lib/cmake/AppStreamQt/AppStreamQtConfig.cmake" \ -e "/INTERFACE_INCLUDE_DIRECTORIES/ s@\''${PACKAGE_PREFIX_DIR}@$dev@" ''; + passthru = appstream.passthru // { + tests = { + installed-tests = nixosTests.installed-tests.appstream-qt; + }; + }; + meta = appstream.meta // { description = "Software metadata handling library - Qt"; }; diff --git a/pkgs/development/libraries/libxmlb/default.nix b/pkgs/development/libraries/libxmlb/default.nix index 85fda8ddc8ed..80d6129f18a8 100644 --- a/pkgs/development/libraries/libxmlb/default.nix +++ b/pkgs/development/libraries/libxmlb/default.nix @@ -1,6 +1,7 @@ { stdenv , lib , fetchFromGitHub +, fetchpatch , docbook_xml_dtd_43 , docbook_xsl , glib @@ -30,6 +31,13 @@ stdenv.mkDerivation rec { patches = [ ./installed-tests-path.patch + # Fix darwin build, can be removed on next release + # `--version-script` isn't supported by the macOS linker + # https://github.com/hughsie/libxmlb/pull/119 + (fetchpatch { + url = "https://github.com/hughsie/libxmlb/commit/d83aac5bd78cfbbfa2ecd428ff54b811071dfe4d.patch"; + sha256 = "sha256-UNRMbyNzdxfTZ8xV6J8a622hPnr3mowooP1q8Dg19yw="; + }) ]; nativeBuildInputs = [ @@ -72,6 +80,6 @@ stdenv.mkDerivation rec { homepage = "https://github.com/hughsie/libxmlb"; license = licenses.lgpl21Plus; maintainers = with maintainers; [ jtojnar ]; - platforms = platforms.linux; + platforms = platforms.unix; }; } diff --git a/pkgs/development/ocaml-modules/fdkaac/default.nix b/pkgs/development/ocaml-modules/fdkaac/default.nix index d3915b65935e..d794e4acce79 100644 --- a/pkgs/development/ocaml-modules/fdkaac/default.nix +++ b/pkgs/development/ocaml-modules/fdkaac/default.nix @@ -21,7 +21,7 @@ buildDunePackage rec { description = "OCaml binding for the fdk-aac library"; inherit (src.meta) homepage; license = lib.licenses.gpl2Only; - maintainers = [ lib.maintainers.vbgl ]; + maintainers = [ lib.maintainers.vbgl lib.maintainers.dandellion ]; }; } diff --git a/pkgs/development/ocaml-modules/ffmpeg/base.nix b/pkgs/development/ocaml-modules/ffmpeg/base.nix new file mode 100644 index 000000000000..77a6ef01ac9f --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/base.nix @@ -0,0 +1,21 @@ +{ lib, fetchFromGitHub }: + +rec { + version = "1.1.0"; + + useDune2 = true; + + src = fetchFromGitHub { + owner = "savonet"; + repo = "ocaml-ffmpeg"; + rev = "v${version}"; + sha256 = "13rc3d0n963a28my5ahv78r82rh450hvbsc74mb6ld0r9v210r0p"; + }; + + meta = with lib; { + homepage = "https://github.com/savonet/ocaml-ffmpeg"; + description = "Bindings for the ffmpeg libraries"; + license = licenses.lgpl21Only; + maintainers = with maintainers; [ dandellion ]; + }; +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/default.nix b/pkgs/development/ocaml-modules/ffmpeg/default.nix new file mode 100644 index 000000000000..7f0a5da34ddb --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/default.nix @@ -0,0 +1,36 @@ +{ lib, buildDunePackage, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg-avutil +, ffmpeg-avcodec +, ffmpeg-avfilter +, ffmpeg-swscale +, ffmpeg-swresample +, ffmpeg-av +, ffmpeg-avdevice +}: + +buildDunePackage { + pname = "ffmpeg"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + propagatedBuildInputs = [ + ffmpeg-avutil + ffmpeg-avcodec + ffmpeg-avfilter + ffmpeg-swscale + ffmpeg-swresample + ffmpeg-av + ffmpeg-avdevice + ]; + + # The tests fail + doCheck = false; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg libraries"; + }; + +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-av.nix b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-av.nix new file mode 100644 index 000000000000..e8d71aa321e0 --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-av.nix @@ -0,0 +1,22 @@ +{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg-avutil, ffmpeg-avcodec, ffmpeg }: + +buildDunePackage { + pname = "ffmpeg-av"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ffmpeg-avutil ffmpeg-avcodec ffmpeg.dev ]; + + doCheck = true; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg libraries -- top-level helpers"; + }; + +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avcodec.nix b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avcodec.nix new file mode 100644 index 000000000000..8ee5428c473e --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avcodec.nix @@ -0,0 +1,23 @@ +{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg-avutil, ffmpeg +}: + +buildDunePackage { + pname = "ffmpeg-avcodec"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ffmpeg-avutil ffmpeg.dev ]; + + doCheck = true; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg avcodec library"; + }; + +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avdevice.nix b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avdevice.nix new file mode 100644 index 000000000000..e6641a6ca030 --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avdevice.nix @@ -0,0 +1,23 @@ +{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg-av, ffmpeg +}: + +buildDunePackage { + pname = "ffmpeg-avdevice"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ffmpeg-av ffmpeg.dev ]; + + doCheck = true; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg avdevice library"; + }; + +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avfilter.nix b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avfilter.nix new file mode 100644 index 000000000000..6479bbe55bf6 --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avfilter.nix @@ -0,0 +1,23 @@ +{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg-avutil, ffmpeg +}: + +buildDunePackage { + pname = "ffmpeg-avfilter"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ffmpeg-avutil ffmpeg.dev ]; + + doCheck = true; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg avfilter library"; + }; + +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avutil.nix b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avutil.nix new file mode 100644 index 000000000000..121fb115146e --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-avutil.nix @@ -0,0 +1,23 @@ +{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg +}: + +buildDunePackage { + pname = "ffmpeg-avutil"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ffmpeg.dev ]; + + doCheck = true; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg avutil libraries"; + }; + +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swresample.nix b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swresample.nix new file mode 100644 index 000000000000..92011e48eab6 --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swresample.nix @@ -0,0 +1,23 @@ +{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg-avutil, ffmpeg-avcodec, ffmpeg +}: + +buildDunePackage { + pname = "ffmpeg-swresample"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ffmpeg-avutil ffmpeg-avcodec ffmpeg.dev ]; + + doCheck = true; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg swresample library"; + }; + +} diff --git a/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swscale.nix b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swscale.nix new file mode 100644 index 000000000000..9d97b722551b --- /dev/null +++ b/pkgs/development/ocaml-modules/ffmpeg/ffmpeg-swscale.nix @@ -0,0 +1,22 @@ +{ lib, buildDunePackage, dune-configurator, pkg-config, fetchFromGitHub, callPackage +, ffmpeg-base ? callPackage ./base.nix { } +, ffmpeg-avutil, ffmpeg +}: + +buildDunePackage { + pname = "ffmpeg-swscale"; + + minimalOCamlVersion = "4.08"; + + inherit (ffmpeg-base) version src useDune2; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ffmpeg-avutil ffmpeg.dev ]; + + doCheck = true; + + meta = ffmpeg-base.meta // { + description = "Bindings for the ffmpeg swscale library"; + }; +} diff --git a/pkgs/development/ocaml-modules/flac/default.nix b/pkgs/development/ocaml-modules/flac/default.nix new file mode 100644 index 000000000000..e08841ac32fe --- /dev/null +++ b/pkgs/development/ocaml-modules/flac/default.nix @@ -0,0 +1,26 @@ +{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, pkg-config, ogg, flac }: + +buildDunePackage rec { + pname = "flac"; + version = "0.3.0"; + + useDune2 = true; + + src = fetchFromGitHub { + owner = "savonet"; + repo = "ocaml-flac"; + rev = "v${version}"; + sha256 = "06gfbrp30sdxigzkix83y1b610ljzik6rrxmbl3ppmpx4dqlwnxa"; + }; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ogg flac.dev ]; + + meta = with lib; { + homepage = "https://github.com/savonet/ocaml-flac"; + description = "Bindings for flac"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ dandellion ]; + }; +} diff --git a/pkgs/development/ocaml-modules/ogg/default.nix b/pkgs/development/ocaml-modules/ogg/default.nix new file mode 100644 index 000000000000..e1e1df6c2a00 --- /dev/null +++ b/pkgs/development/ocaml-modules/ogg/default.nix @@ -0,0 +1,25 @@ +{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, libogg }: + +buildDunePackage rec { + pname = "ogg"; + version = "0.7.1"; + + useDune2 = true; + + src = fetchFromGitHub { + owner = "savonet"; + repo = "ocaml-ogg"; + rev = "v${version}"; + sha256 = "0z3z0816rxq8wdjw51plzn8lmilic621ilk4x9wpnr0axmnl3wqb"; + }; + + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ libogg ]; + + meta = with lib; { + homepage = "https://github.com/savonet/ocaml-ogg"; + description = "Bindings to libogg"; + license = licenses.lgpl21Only; + maintainers = with maintainers; [ dandellion ]; + }; +} diff --git a/pkgs/development/ocaml-modules/opus/default.nix b/pkgs/development/ocaml-modules/opus/default.nix new file mode 100644 index 000000000000..30e461b9f9a0 --- /dev/null +++ b/pkgs/development/ocaml-modules/opus/default.nix @@ -0,0 +1,26 @@ +{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, pkg-config, ogg, libopus }: + +buildDunePackage rec { + pname = "opus"; + version = "0.2.1"; + + useDune2 = true; + + src = fetchFromGitHub { + owner = "savonet"; + repo = "ocaml-opus"; + rev = "v${version}"; + sha256 = "09mgnprhhs1adqm25c0qjhknswbh6va3jknq06fnp1jszszcjf4s"; + }; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ogg libopus.dev ]; + + meta = with lib; { + homepage = "https://github.com/savonet/ocaml-opus"; + description = "Bindings to libopus"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ dandellion ]; + }; +} diff --git a/pkgs/development/ocaml-modules/speex/default.nix b/pkgs/development/ocaml-modules/speex/default.nix new file mode 100644 index 000000000000..1bf5f308ecf2 --- /dev/null +++ b/pkgs/development/ocaml-modules/speex/default.nix @@ -0,0 +1,25 @@ +{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ogg, speex }: + +buildDunePackage rec { + pname = "speex"; + version = "0.4.1"; + + useDune2 = true; + + src = fetchFromGitHub { + owner = "savonet"; + repo = "ocaml-speex"; + rev = "v${version}"; + sha256 = "0p4ip37kihlz9qy604llak2kzd00g45ix1yiihnrri2nm01scfab"; + }; + + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ogg speex.dev ]; + + meta = with lib; { + homepage = "https://github.com/savonet/ocaml-speex"; + description = "Bindings to libspeex"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ dandellion ]; + }; +} diff --git a/pkgs/development/ocaml-modules/ssl/default.nix b/pkgs/development/ocaml-modules/ssl/default.nix index 1f4fd7b85805..04f181d7598d 100644 --- a/pkgs/development/ocaml-modules/ssl/default.nix +++ b/pkgs/development/ocaml-modules/ssl/default.nix @@ -24,6 +24,7 @@ buildDunePackage rec { maintainers = [ lib.maintainers.maggesi lib.maintainers.anmonteiro + lib.maintainers.dandellion ]; }; } diff --git a/pkgs/development/ocaml-modules/theora/default.nix b/pkgs/development/ocaml-modules/theora/default.nix new file mode 100644 index 000000000000..0f7b4aca1c79 --- /dev/null +++ b/pkgs/development/ocaml-modules/theora/default.nix @@ -0,0 +1,25 @@ +{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ogg, libtheora }: + +buildDunePackage rec { + pname = "theora"; + version = "0.4.0"; + + useDune2 = true; + + src = fetchFromGitHub { + owner = "savonet"; + repo = "ocaml-theora"; + rev = "v${version}"; + sha256 = "1sggjmlrx4idkih1ddfk98cgpasq60haj4ykyqbfs22cmii5gpal"; + }; + + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ogg libtheora ]; + + meta = with lib; { + homepage = "https://github.com/savonet/ocaml-theora"; + description = "Bindings to libtheora"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ dandellion ]; + }; +} diff --git a/pkgs/development/ocaml-modules/vorbis/default.nix b/pkgs/development/ocaml-modules/vorbis/default.nix new file mode 100644 index 000000000000..f33182e5fc19 --- /dev/null +++ b/pkgs/development/ocaml-modules/vorbis/default.nix @@ -0,0 +1,25 @@ +{ lib, buildDunePackage, fetchFromGitHub, dune-configurator, ogg, libvorbis }: + +buildDunePackage rec { + pname = "vorbis"; + version = "0.8.0"; + + useDune2 = true; + + src = fetchFromGitHub { + owner = "savonet"; + repo = "ocaml-vorbis"; + rev = "v${version}"; + sha256 = "1acy7yvf2y5dggzxw4vmrpdipakr98si3pw5kxw0mh7livn08al8"; + }; + + buildInputs = [ dune-configurator ]; + propagatedBuildInputs = [ ogg libvorbis ]; + + meta = with lib; { + homepage = "https://github.com/savonet/ocaml-vorbis"; + description = "Bindings to libvorbis"; + license = licenses.gpl2Only; + maintainers = with maintainers; [ dandellion ]; + }; +} diff --git a/pkgs/development/php-packages/phing/default.nix b/pkgs/development/php-packages/phing/default.nix index 0b2e5ff8c589..a8835241d098 100644 --- a/pkgs/development/php-packages/phing/default.nix +++ b/pkgs/development/php-packages/phing/default.nix @@ -1,14 +1,14 @@ { mkDerivation, fetchurl, makeWrapper, lib, php }: let pname = "phing"; - version = "2.17.1"; + version = "2.17.2"; in mkDerivation { inherit pname version; src = fetchurl { url = "https://www.phing.info/get/phing-${version}.phar"; - sha256 = "sha256-Sf2fdy9b1wmXEDA3S4CRksH/DhAIirIy6oekWE1TNjE="; + sha256 = "sha256-KDqJdHIqgtar6ofNG4ENRlpRg9XYFeL5YS7Rclh1+PQ="; }; dontUnpack = true; diff --git a/pkgs/development/php-packages/php-cs-fixer/default.nix b/pkgs/development/php-packages/php-cs-fixer/default.nix index bf1c806dfc38..292d0b2ca08f 100644 --- a/pkgs/development/php-packages/php-cs-fixer/default.nix +++ b/pkgs/development/php-packages/php-cs-fixer/default.nix @@ -1,14 +1,14 @@ { mkDerivation, fetchurl, makeWrapper, lib, php }: let pname = "php-cs-fixer"; - version = "3.6.0"; + version = "3.7.0"; in mkDerivation { inherit pname version; src = fetchurl { url = "https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v${version}/php-cs-fixer.phar"; - sha256 = "sha256-sbz8uq6nJ6dEL6FHJ01VTrovaJa8bwQ9Ic+dLr7yPnA="; + sha256 = "sha256-a7mKM++0iQm9hQFCDfyR6Jdb9h98YNHmbdQso8BU3WE="; }; dontUnpack = true; diff --git a/pkgs/development/php-packages/phpstan/default.nix b/pkgs/development/php-packages/phpstan/default.nix index 9f8a5feb8a74..41840f5ba9e8 100644 --- a/pkgs/development/php-packages/phpstan/default.nix +++ b/pkgs/development/php-packages/phpstan/default.nix @@ -1,14 +1,14 @@ { mkDerivation, fetchurl, makeWrapper, lib, php }: let pname = "phpstan"; - version = "1.4.7"; + version = "1.4.8"; in mkDerivation { inherit pname version; src = fetchurl { url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar"; - sha256 = "sha256-bsSdFfUVQnbDFH8hO1Z9sHA2w7pMHlLEx1hsgDdCUmE="; + sha256 = "sha256-ghXyPo9n2oXAz7BvuvBYjyJnUqf/FvNk8nTPIRv19cw="; }; dontUnpack = true; diff --git a/pkgs/development/python-modules/azure-synapse-artifacts/default.nix b/pkgs/development/python-modules/azure-synapse-artifacts/default.nix index b24417b325ab..5a83385b7541 100644 --- a/pkgs/development/python-modules/azure-synapse-artifacts/default.nix +++ b/pkgs/development/python-modules/azure-synapse-artifacts/default.nix @@ -6,12 +6,12 @@ buildPythonPackage rec { pname = "azure-synapse-artifacts"; - version = "0.11.0"; + version = "0.12.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "79eb973280ea89c0e6e2872d8f3f175b172b7438c2e2b9b4e655ae206be705fa"; + sha256 = "sha256-IfQWsITuThzh+TRgv99JTtcDFY3gMq5PjALkN4mJEZo="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/censys/default.nix b/pkgs/development/python-modules/censys/default.nix index 4a00155a4ec6..754d7ca0f2aa 100644 --- a/pkgs/development/python-modules/censys/default.nix +++ b/pkgs/development/python-modules/censys/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "censys"; - version = "2.1.2"; + version = "2.1.3"; format = "pyproject"; disabled = pythonOlder "3.6"; @@ -24,7 +24,7 @@ buildPythonPackage rec { owner = "censys"; repo = "censys-python"; rev = "v${version}"; - sha256 = "0qxqd5ip98d6q1d48vcprpr38sa47ky3cr6lprd01nzibdmf2r2d"; + sha256 = "sha256-Zv3ViOrdQby+7UQrHy6174W2qh1vx21R0yOA7ecr0lU="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/emoji/default.nix b/pkgs/development/python-modules/emoji/default.nix index 76579e4dd89f..84a709ac5392 100644 --- a/pkgs/development/python-modules/emoji/default.nix +++ b/pkgs/development/python-modules/emoji/default.nix @@ -6,13 +6,13 @@ buildPythonPackage rec { pname = "emoji"; - version = "1.6.3"; + version = "1.7.0"; src = fetchFromGitHub { owner = "carpedm20"; repo = pname; rev = "v${version}"; - sha256 = "sha256-0QOtsHGhqbjaEDpSbUXdE8+u6xzWbrTexx+BAeYwKa8="; + sha256 = "sha256-vKQ51RP7uy57vP3dOnHZRSp/Wz+YDzeLUR8JnIELE/I="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/google-cloud-asset/default.nix b/pkgs/development/python-modules/google-cloud-asset/default.nix index 7a138eb0b17b..d28cdbf08443 100644 --- a/pkgs/development/python-modules/google-cloud-asset/default.nix +++ b/pkgs/development/python-modules/google-cloud-asset/default.nix @@ -16,11 +16,11 @@ buildPythonPackage rec { pname = "google-cloud-asset"; - version = "3.8.0"; + version = "3.8.1"; src = fetchPypi { inherit pname version; - sha256 = "sha256-4r1F7OgMS3TZdmEgXf5TtY4xv/YWInS6NyY6Ay4l8Ig="; + sha256 = "sha256-DvbHQV71hTsWtjN/D1+bHGLSss+UidCZRi3J0zTa07U="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix b/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix index 32988e35deac..c26d7582c23d 100644 --- a/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix +++ b/pkgs/development/python-modules/google-cloud-bigquery-logging/default.nix @@ -11,11 +11,11 @@ buildPythonPackage rec { pname = "google-cloud-bigquery-logging"; - version = "1.0.1"; + version = "1.0.2"; src = fetchPypi { inherit pname version; - sha256 = "3cdbf4f82199d2ee0d07fa2c75527661fe034130e27e5c05fd070ed615cd7e23"; + sha256 = "sha256-i8Bh39MnQRQtE4WwDNhHdxFX2bGL6txT+sV8RcvXiZw="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/google-cloud-dataproc/default.nix b/pkgs/development/python-modules/google-cloud-dataproc/default.nix index 66cca84e9cad..d8451ec097cc 100644 --- a/pkgs/development/python-modules/google-cloud-dataproc/default.nix +++ b/pkgs/development/python-modules/google-cloud-dataproc/default.nix @@ -7,20 +7,32 @@ , proto-plus , pytestCheckHook , pytest-asyncio +, pythonOlder }: buildPythonPackage rec { pname = "google-cloud-dataproc"; - version = "4.0.0"; + version = "4.0.1"; + format = "setuptools"; + + disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-x4ejr6qj5z4yKOx0pIqK13oVzsKj+uQ43Q5VN48jaFQ="; + sha256 = "sha256-IAnsz7UxMf3GqaPYPltis0WWPM+IIWwpK1iTSV7Kl5c="; }; - propagatedBuildInputs = [ google-api-core libcst proto-plus ]; + propagatedBuildInputs = [ + google-api-core + libcst + proto-plus + ]; - checkInputs = [ mock pytestCheckHook pytest-asyncio ]; + checkInputs = [ + mock + pytestCheckHook + pytest-asyncio + ]; disabledTests = [ # requires credentials diff --git a/pkgs/development/python-modules/google-cloud-error-reporting/default.nix b/pkgs/development/python-modules/google-cloud-error-reporting/default.nix index 06c4d9e23696..9c5af01714c5 100644 --- a/pkgs/development/python-modules/google-cloud-error-reporting/default.nix +++ b/pkgs/development/python-modules/google-cloud-error-reporting/default.nix @@ -12,11 +12,11 @@ buildPythonPackage rec { pname = "google-cloud-error-reporting"; - version = "1.5.0"; + version = "1.5.1"; src = fetchPypi { inherit pname version; - sha256 = "sha256-qvhZU7T2fHA2uRyXJjRxqeEAFwShH+TpGwICczgX7Sk="; + sha256 = "sha256-7gFpvFxtYneABxW2mOwW1V2E7kobmj0yzV0pxaRhs8c="; }; postPatch = '' diff --git a/pkgs/development/python-modules/google-cloud-firestore/default.nix b/pkgs/development/python-modules/google-cloud-firestore/default.nix index 50a08e66f360..bc22afe4614b 100644 --- a/pkgs/development/python-modules/google-cloud-firestore/default.nix +++ b/pkgs/development/python-modules/google-cloud-firestore/default.nix @@ -13,11 +13,11 @@ buildPythonPackage rec { pname = "google-cloud-firestore"; - version = "2.3.4"; + version = "2.4.0"; src = fetchPypi { inherit pname version; - sha256 = "sha256-cU4bwfxRAp14qmSTO+8u/APa7clWXqeeyRuEOwUgFuw="; + sha256 = "sha256-9+esejwSitfYEkD03KsPiTIKxmYhRxTrgfy3QKqIIO4="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/google-cloud-language/default.nix b/pkgs/development/python-modules/google-cloud-language/default.nix index c8adfc54469b..c4caa9474e40 100644 --- a/pkgs/development/python-modules/google-cloud-language/default.nix +++ b/pkgs/development/python-modules/google-cloud-language/default.nix @@ -7,20 +7,32 @@ , proto-plus , pytestCheckHook , pytest-asyncio +, pythonOlder }: buildPythonPackage rec { pname = "google-cloud-language"; - version = "2.4.0"; + version = "2.4.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - sha256 = "sha256-ZqnwvpXfWGEc+yiImNGRGUXVJGiNzGFeMSmjn7MzuQE="; + sha256 = "sha256-BhQQ4QZ7GbacjpLLg5LXm1g5IhIMk3tJdDrHZLquuTk="; }; - propagatedBuildInputs = [ google-api-core libcst proto-plus ]; + propagatedBuildInputs = [ + google-api-core + libcst + proto-plus + ]; - checkInputs = [ mock pytestCheckHook pytest-asyncio ]; + checkInputs = [ + mock + pytestCheckHook + pytest-asyncio + ]; pythonImportsCheck = [ "google.cloud.language" diff --git a/pkgs/development/python-modules/google-cloud-org-policy/default.nix b/pkgs/development/python-modules/google-cloud-org-policy/default.nix index f30c3f35aa31..2e698db4aef2 100644 --- a/pkgs/development/python-modules/google-cloud-org-policy/default.nix +++ b/pkgs/development/python-modules/google-cloud-org-policy/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "google-cloud-org-policy"; - version = "1.3.0"; + version = "1.3.1"; src = fetchPypi { inherit pname version; - sha256 = "sha256-IbQP2/XMdwzmY3UgINiUvdd1Y1ABJkhh7x7x3kiR4Is="; + sha256 = "sha256-r9qz2/HjDYHXu9jY03rt0QC1BofzQ/HrKVjGCtvXzsU="; }; propagatedBuildInputs = [ google-api-core proto-plus ]; diff --git a/pkgs/development/python-modules/google-cloud-texttospeech/default.nix b/pkgs/development/python-modules/google-cloud-texttospeech/default.nix index 4e52f5f3fd44..73c09e61c7cb 100644 --- a/pkgs/development/python-modules/google-cloud-texttospeech/default.nix +++ b/pkgs/development/python-modules/google-cloud-texttospeech/default.nix @@ -11,11 +11,11 @@ buildPythonPackage rec { pname = "google-cloud-texttospeech"; - version = "2.10.1"; + version = "2.10.2"; src = fetchPypi { inherit pname version; - sha256 = "sha256-5uFtHqZJgouUBgkGNqSBFQrWaU2Gm06icDjKx57HY94="; + sha256 = "sha256-EykIDxoO8ePp4hLtINTz/RahfS4KU7GhwS4gkMBA32w="; }; propagatedBuildInputs = [ libcst google-api-core proto-plus ]; diff --git a/pkgs/development/python-modules/google-cloud-trace/default.nix b/pkgs/development/python-modules/google-cloud-trace/default.nix index 6c17d6cb99a3..bb9eb5f477ac 100644 --- a/pkgs/development/python-modules/google-cloud-trace/default.nix +++ b/pkgs/development/python-modules/google-cloud-trace/default.nix @@ -12,11 +12,11 @@ buildPythonPackage rec { pname = "google-cloud-trace"; - version = "1.6.0"; + version = "1.6.1"; src = fetchPypi { inherit pname version; - sha256 = "sha256-MXbuSWVezxsXGrRgGqhLWFF5iByiYRKA1/qbqYawPRQ="; + sha256 = "sha256-JkKW9vJAAkw3sHYDapRvu5jjunV8oWSg/ykDmd1wpyA="; }; propagatedBuildInputs = [ google-api-core google-cloud-core proto-plus ]; diff --git a/pkgs/development/python-modules/google-cloud-translate/default.nix b/pkgs/development/python-modules/google-cloud-translate/default.nix index c3008caaf68b..c36bd09ba7ca 100644 --- a/pkgs/development/python-modules/google-cloud-translate/default.nix +++ b/pkgs/development/python-modules/google-cloud-translate/default.nix @@ -14,14 +14,14 @@ buildPythonPackage rec { pname = "google-cloud-translate"; - version = "3.7.1"; + version = "3.7.2"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-x4gSLVNo2uk93GWpvcPM20f0gJ1S3x/BVe13oNIpa0Y="; + hash = "sha256-icZG33G/noii9V0rsHTG/Qe8cKDVDfASRKy2XRYM5Yg="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/google-resumable-media/default.nix b/pkgs/development/python-modules/google-resumable-media/default.nix index 0b81aa71eba6..6aca35ae9e0b 100644 --- a/pkgs/development/python-modules/google-resumable-media/default.nix +++ b/pkgs/development/python-modules/google-resumable-media/default.nix @@ -12,11 +12,11 @@ buildPythonPackage rec { pname = "google-resumable-media"; - version = "2.3.1"; + version = "2.3.2"; src = fetchPypi { inherit pname version; - sha256 = "sha256-H02LFRlnZv34qGD9LPqmGEE4cH7F+SHNGDQGel39Lbc="; + sha256 = "sha256-BpJOix558VjwIC590VGtdbDqnVm5l8hQ9WvdSlo2FRM="; }; propagatedBuildInputs = [ google-auth google-crc32c requests ]; diff --git a/pkgs/development/python-modules/meshtastic/default.nix b/pkgs/development/python-modules/meshtastic/default.nix index 2fd61bc5a37a..9a7c834c0ef3 100644 --- a/pkgs/development/python-modules/meshtastic/default.nix +++ b/pkgs/development/python-modules/meshtastic/default.nix @@ -18,7 +18,7 @@ buildPythonPackage rec { pname = "meshtastic"; - version = "1.2.88"; + version = "1.2.90"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "meshtastic"; repo = "Meshtastic-python"; rev = version; - sha256 = "sha256-iNDS1QjlDiXb89g7Gut+5ShbgtCCHBSJuQmXfHaTXB8="; + sha256 = "sha256-n/M1Q6YS3EkUcn45ffiTy0wuj9yKf6qBLLfD2XJkhHU="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/plaid-python/default.nix b/pkgs/development/python-modules/plaid-python/default.nix index 16bcd15a1b1c..83c697aa7c86 100644 --- a/pkgs/development/python-modules/plaid-python/default.nix +++ b/pkgs/development/python-modules/plaid-python/default.nix @@ -9,14 +9,14 @@ buildPythonPackage rec { pname = "plaid-python"; - version = "9.0.0"; + version = "9.1.0"; format = "setuptools"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - hash = "sha256-jZRfJVBSUOrfaPx8yGCwigfDghUgO0dK8aUKrOf9G1E="; + hash = "sha256-jvg/2dL+W4N7rbbBcIUZUrSt0BCV15k4QgYST2lEA5U="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/pyprecice/default.nix b/pkgs/development/python-modules/pyprecice/default.nix index 9f2c457bc753..7c278d6e1be9 100644 --- a/pkgs/development/python-modules/pyprecice/default.nix +++ b/pkgs/development/python-modules/pyprecice/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { propagatedBuildInputs = [ numpy mpi4py precice ]; doCheck = false; # Disable Test because everything depends on open mpi which requires network. - pythonImportChecks = [ "precice" ]; + # Do not use pythonImportsCheck because this will also initialize mpi which requires a network interface meta = with lib; { description = "Python language bindings for preCICE"; diff --git a/pkgs/development/python-modules/radios/default.nix b/pkgs/development/python-modules/radios/default.nix index 6c2bba30ead5..c5b4413540c4 100644 --- a/pkgs/development/python-modules/radios/default.nix +++ b/pkgs/development/python-modules/radios/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "radios"; - version = "0.1.0"; + version = "0.1.1"; disabled = pythonOlder "3.9"; @@ -27,7 +27,7 @@ buildPythonPackage rec { owner = "frenck"; repo = "python-radios"; rev = "v${version}"; - hash = "sha256-3xRtOGY9DYnZN0g95213vWDbO3/XZZ5+s7A9sqNmO/w="; + hash = "sha256-NCBch9MCWVD6ez0sIUph8rwOOzEMZtwC4atXJe53xZM="; }; postPatch = '' diff --git a/pkgs/development/python-modules/sphinxext-opengraph/default.nix b/pkgs/development/python-modules/sphinxext-opengraph/default.nix index f77ee113bb05..8b68eea25668 100644 --- a/pkgs/development/python-modules/sphinxext-opengraph/default.nix +++ b/pkgs/development/python-modules/sphinxext-opengraph/default.nix @@ -8,13 +8,13 @@ buildPythonPackage rec { pname = "sphinxext-opengraph"; - version = "0.6.1"; + version = "0.6.2"; src = fetchFromGitHub { owner = "wpilibsuite"; repo = "sphinxext-opengraph"; rev = "v${version}"; - sha256 = "sha256-kaKOKeztP89SLF4yrUFW1TTAEyAaCTm2XCcOH0b+Dzc="; + sha256 = "sha256-3bZFFtGW6j/3m/3F4+tapZujzpMZnrIcYTngDCNGylI="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/types-setuptools/default.nix b/pkgs/development/python-modules/types-setuptools/default.nix index 24ee2ce5b294..46fe7da5d1c7 100644 --- a/pkgs/development/python-modules/types-setuptools/default.nix +++ b/pkgs/development/python-modules/types-setuptools/default.nix @@ -5,12 +5,12 @@ buildPythonPackage rec { pname = "types-setuptools"; - version = "57.4.9"; + version = "57.4.10"; format = "setuptools"; src = fetchPypi { inherit pname version; - sha256 = "sha256-U273R0T44eS+T8cZiH+IbnTkzzx5K0oGmEMgvk30ULU="; + sha256 = "sha256-mhNRNnnGQPZhbi2atQ1DHJnKiumEipckP4h8gP1c8pQ="; }; # Module doesn't have tests diff --git a/pkgs/development/ruby-modules/bundled-common/default.nix b/pkgs/development/ruby-modules/bundled-common/default.nix index 6a4a87bc8963..7bad0b442da6 100644 --- a/pkgs/development/ruby-modules/bundled-common/default.nix +++ b/pkgs/development/ruby-modules/bundled-common/default.nix @@ -1,6 +1,6 @@ { stdenv, runCommand, ruby, lib, rsync , defaultGemConfig, buildRubyGem, buildEnv -, makeWrapper +, makeBinaryWrapper , bundler }@defs: @@ -118,9 +118,12 @@ let wrappedRuby = stdenv.mkDerivation { name = "wrapped-ruby-${pname'}"; - nativeBuildInputs = [ makeWrapper ]; - inherit (ruby) gemPath meta; - buildCommand = '' + + nativeBuildInputs = [ makeBinaryWrapper ]; + + dontUnpack = true; + + buildPhase = '' mkdir -p $out/bin for i in ${ruby}/bin/*; do makeWrapper "$i" $out/bin/$(basename "$i") \ @@ -131,6 +134,15 @@ let --set GEM_PATH ${basicEnv}/${ruby.gemPath} done ''; + + dontInstall = true; + + doCheck = true; + checkPhase = '' + $out/bin/ruby --help > /dev/null + ''; + + inherit (ruby) meta; }; env = let diff --git a/pkgs/development/tools/analysis/checkov/default.nix b/pkgs/development/tools/analysis/checkov/default.nix index 2aa5e557b5c2..07a562a786c8 100644 --- a/pkgs/development/tools/analysis/checkov/default.nix +++ b/pkgs/development/tools/analysis/checkov/default.nix @@ -32,13 +32,13 @@ with py.pkgs; buildPythonApplication rec { pname = "checkov"; - version = "2.0.923"; + version = "2.0.927"; src = fetchFromGitHub { owner = "bridgecrewio"; repo = pname; rev = version; - hash = "sha256-EvT1nEE58gtlpRKEZkVaZ0mjABldmioW9u1foF8RCJI="; + hash = "sha256-g/aJT1ZbD7wrsb4M3tvGmhWbElmnZbQkP0I0KV7J80c="; }; nativeBuildInputs = with py.pkgs; [ diff --git a/pkgs/development/tools/misc/editorconfig-core-c/default.nix b/pkgs/development/tools/misc/editorconfig-core-c/default.nix index eb2e124a35e9..893a1925dd71 100644 --- a/pkgs/development/tools/misc/editorconfig-core-c/default.nix +++ b/pkgs/development/tools/misc/editorconfig-core-c/default.nix @@ -1,13 +1,14 @@ -{ lib, stdenv, fetchgit, cmake, pcre, doxygen }: +{ lib, stdenv, fetchFromGitHub, cmake, pcre, doxygen }: stdenv.mkDerivation rec { pname = "editorconfig-core-c"; version = "0.12.1"; - src = fetchgit { - url = "https://github.com/editorconfig/editorconfig-core-c.git"; + src = fetchFromGitHub { + owner = "editorconfig"; + repo = "editorconfig-core-c"; rev = "v${version}"; - sha256 = "0awpb63ci85kal3pnlj2b54bay8igj1rbc13d8gqkvidlb51nnx4"; + sha256 = "sha256-pFsbyqIt7okfaiOwlYN8EXm1SFlCUnsHVbOgyIZZlys="; fetchSubmodules = true; }; diff --git a/pkgs/development/tools/wails/default.nix b/pkgs/development/tools/wails/default.nix new file mode 100644 index 000000000000..2d0576592ec6 --- /dev/null +++ b/pkgs/development/tools/wails/default.nix @@ -0,0 +1,78 @@ +{ lib +, stdenv +, buildGoModule +, fetchFromGitHub +, pkg-config +, makeWrapper +, go +, gcc +, gtk3 +, webkitgtk +, nodejs +, upx +, zlib +}: + +buildGoModule rec { + pname = "wails"; + version = "2.0.0-beta.33"; + + src = fetchFromGitHub { + owner = "wailsapp"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-efxOL/FllToum0P4JyAJt0fbrznTFYh7czTWpZu3uk0="; + } + "/v2"; + + vendorSha256 = "sha256-qPMVsvud2L7hpXUOfYYMiO32JXff8ZZC34EsxFoSJ0g="; + + proxyVendor = true; + + subPackages = [ "cmd/wails" ]; + + # These packages are needed to build wails + # and will also need to be used when building a wails app. + nativeBuildInputs = [ + pkg-config + makeWrapper + ]; + + # Wails apps are built with Go, so we need to be able to + # add it in propagatedBuildInputs. + allowGoReference = true; + + # Following packages are required when wails used as a builder. + propagatedBuildInputs = [ + pkg-config + go + gcc + gtk3 + webkitgtk + nodejs + upx + ]; + + ldflags = [ + "-s" + "-w" + ]; + + # As Wails calls a compiler, certain apps and libraries need to be made available. + postFixup = '' + wrapProgram $out/bin/wails \ + --prefix PATH : ${lib.makeBinPath [ pkg-config go gcc nodejs upx ]} \ + --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ gtk3 webkitgtk ]} \ + --set PKG_CONFIG_PATH "$PKG_CONFIG_PATH" \ + --set CGO_LDFLAGS "-L${lib.makeLibraryPath [ zlib ]}" + ''; + + doCheck = true; + + meta = with lib; { + description = "Build applications using Go + HTML + CSS + JS"; + homepage = "https://wails.io"; + license = licenses.mit; + maintainers = with maintainers; [ ianmjones ]; + platforms = platforms.linux; + }; +} diff --git a/pkgs/games/fheroes2/default.nix b/pkgs/games/fheroes2/default.nix index 567ab267cfea..10d7a23aca4e 100644 --- a/pkgs/games/fheroes2/default.nix +++ b/pkgs/games/fheroes2/default.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "fheroes2"; - version = "0.9.12"; + version = "0.9.13"; src = fetchFromGitHub { owner = "ihhub"; repo = "fheroes2"; rev = version; - sha256 = "sha256-6voM6aQ22zW6NHm9x2TDsM4Kea6TLYZTdSLyc/6fz8A="; + sha256 = "sha256-+VAgS7NR/D0HD/Fy7idSUTMJPp2ctpirMpcFooo+bEg="; }; buildInputs = [ gettext libpng SDL2 SDL2_image SDL2_mixer SDL2_ttf zlib ]; diff --git a/pkgs/games/ufoai/default.nix b/pkgs/games/ufoai/default.nix index 89f8f5ec91bf..1dc2abbf7624 100644 --- a/pkgs/games/ufoai/default.nix +++ b/pkgs/games/ufoai/default.nix @@ -24,7 +24,13 @@ stdenv.mkDerivation rec { curl libjpeg libpng gettext cunit ]; - NIX_CFLAGS_LINK = "-lgcc_s"; # to avoid occasional runtime error in finding libgcc_s.so.1 + NIX_CFLAGS_LINK = [ + # to avoid occasional runtime error in finding libgcc_s.so.1 + "-lgcc_s" + # tests are underlinked against libm: + # ld: release-linux-x86_64/testall/client/sound/s_mix.c.o: undefined reference to symbol 'acos@@GLIBC_2.2.5' + "-lm" + ]; meta = { homepage = "http://ufoai.org"; diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix index 5d7a344088ef..19dd0dc1cb06 100644 --- a/pkgs/misc/uboot/default.nix +++ b/pkgs/misc/uboot/default.nix @@ -139,6 +139,12 @@ in { filesToInstall = ["u-boot-sunxi-with-spl.bin"]; }; + ubootA20OlinuxinoLime2EMMC = buildUBoot { + defconfig = "A20-OLinuXino-Lime2-eMMC_defconfig"; + extraMeta.platforms = ["armv7l-linux"]; + filesToInstall = ["u-boot-sunxi-with-spl.bin"]; + }; + ubootAmx335xEVM = buildUBoot { defconfig = "am335x_evm_defconfig"; extraMeta.platforms = ["armv7l-linux"]; diff --git a/pkgs/servers/http/nginx/mainline.nix b/pkgs/servers/http/nginx/mainline.nix index ee36216686a5..f4b5bf65fea0 100644 --- a/pkgs/servers/http/nginx/mainline.nix +++ b/pkgs/servers/http/nginx/mainline.nix @@ -1,6 +1,6 @@ { callPackage, openssl_3_0, ... }@args: callPackage ./generic.nix (args // { openssl = openssl_3_0; }) { - version = "1.21.5"; - sha256 = "sha256-sg879TOlGKbw86eWff7thy0mjTHkzBIaAAEylgLdz7s="; + version = "1.21.6"; + sha256 = "1bh52jqqcaj5wlh2kvhxr00jhk2hnk8k97ki4pwyj4c8920p1p36"; } diff --git a/pkgs/servers/mapcache/default.nix b/pkgs/servers/mapcache/default.nix index ff502d203285..744a529496da 100644 --- a/pkgs/servers/mapcache/default.nix +++ b/pkgs/servers/mapcache/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "mapcache"; - version = "1.10.0"; + version = "1.12.0"; src = fetchFromGitHub { owner = "MapServer"; repo = pname; rev = "rel-${lib.replaceStrings [ "." ] [ "-" ] version}"; - sha256 = "sha256-HrvcJAf0a6tu8AKKuW5TaCtqPMgzH21fGMBxIfUzdgY="; + sha256 = "sha256-13lOQC4PJtByhvceuF00uoipLFHrFiyJrsy2iWcEANc="; }; nativeBuildInputs = [ diff --git a/pkgs/shells/zsh/grml-zsh-config/default.nix b/pkgs/shells/zsh/grml-zsh-config/default.nix index 07d72a6b4362..538fbc0a5223 100644 --- a/pkgs/shells/zsh/grml-zsh-config/default.nix +++ b/pkgs/shells/zsh/grml-zsh-config/default.nix @@ -5,13 +5,13 @@ with lib; stdenv.mkDerivation rec { pname = "grml-zsh-config"; - version = "0.19.0"; + version = "0.19.1"; src = fetchFromGitHub { owner = "grml"; repo = "grml-etc-core"; rev = "v${version}"; - sha256 = "sha256-Vn8NzpvJ1W/+UUuhr1plLqskVBUOFJHvy+hxKE3DmIs="; + sha256 = "sha256-GEuBYN6HVAjiAbusVuEA7zBG9fIVZHLV628Jt6Cv5cM="; }; buildInputs = [ zsh coreutils txt2tags procps ] diff --git a/pkgs/tools/admin/colmena/default.nix b/pkgs/tools/admin/colmena/default.nix index f7ba90ac2ad2..d17366b38a81 100644 --- a/pkgs/tools/admin/colmena/default.nix +++ b/pkgs/tools/admin/colmena/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "colmena"; - version = "0.2.1"; + version = "0.2.2"; src = fetchFromGitHub { owner = "zhaofengli"; repo = "colmena"; rev = "v${version}"; - sha256 = "sha256-5UU8iBzwO7xM8B+LulnFkJFv5j5lu7mfq0XMmOCaKcQ="; + sha256 = "sha256-VsqFiqZUjGpDZfw6ws1rvqm/NGUfFBXHa0N8ZkBaMh8="; }; - cargoSha256 = "sha256-wMC2GAVVxkwrgJtOIJL0P+Uxh+ouW4VwLDrXJlD10AA="; + cargoSha256 = "sha256-NVvPh0+53YIm5Kb/lNyXb7M3bbADBVdsTaPptyb37lw="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/tools/graphics/agi/default.nix b/pkgs/tools/graphics/agi/default.nix index aefa2c3f7897..1dc47e4287a2 100644 --- a/pkgs/tools/graphics/agi/default.nix +++ b/pkgs/tools/graphics/agi/default.nix @@ -52,7 +52,7 @@ stdenv.mkDerivation rec { desktopItems = [(makeDesktopItem { name = "agi"; desktopName = "Android GPU Inspector"; - exec = "$out/bin/agi"; + exec = "agi"; icon = "agi"; categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ]; })]; diff --git a/pkgs/tools/graphics/snapdragon-profiler/default.nix b/pkgs/tools/graphics/snapdragon-profiler/default.nix index b48c0a6d16a3..7486a885a548 100644 --- a/pkgs/tools/graphics/snapdragon-profiler/default.nix +++ b/pkgs/tools/graphics/snapdragon-profiler/default.nix @@ -70,7 +70,7 @@ stdenv.mkDerivation rec { desktopItems = [(makeDesktopItem { name = pname; desktopName = "Snapdragon Profiler"; - exec = "$out/bin/snapdragon-profiler"; + exec = "snapdragon-profiler"; icon = "snapdragon-profiler"; comment = meta.description; categories = [ "Development" "Debugger" "Graphics" "3DGraphics" ]; diff --git a/pkgs/tools/misc/kepubify/default.nix b/pkgs/tools/misc/kepubify/default.nix index cd30674b31a8..0a6888bb3421 100644 --- a/pkgs/tools/misc/kepubify/default.nix +++ b/pkgs/tools/misc/kepubify/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "kepubify"; - version = "4.0.3"; + version = "4.0.4"; src = fetchFromGitHub { owner = "pgaskin"; repo = pname; rev = "v${version}"; - sha256 = "sha256-pe4jNBoPjrkvsdeFjH4TNwacp0qkf+v+SjIAZqV1GWE="; + sha256 = "sha256-H6W+C5twXit7Z9hLIJKAftbnvYDA9HAb9tR6yeQGRKI="; }; - vendorSha256 = "sha256-eiFG6lgsY5hf+XT3Kf5uA4Ai8vBbPsh1T4ObV+rj30Y="; + vendorSha256 = "sha256-QOMLwDDvrDQAaK4M4QhBFTGD1CzblkDoA3ZqtCoRHtQ="; ldflags = [ "-s" "-w" "-X main.version=${version}" ]; diff --git a/pkgs/tools/misc/nncp/default.nix b/pkgs/tools/misc/nncp/default.nix index b80c16ddaec2..3fda2a6cdadb 100644 --- a/pkgs/tools/misc/nncp/default.nix +++ b/pkgs/tools/misc/nncp/default.nix @@ -3,12 +3,12 @@ stdenv.mkDerivation rec { pname = "nncp"; - version = "8.7.0"; + version = "8.7.1"; outputs = [ "out" "doc" "info" ]; src = fetchurl { url = "http://www.nncpgo.org/download/${pname}-${version}.tar.xz"; - sha256 = "sha256-7UiP/X2IAovdZDhr7ErZEW99oIgfseYoST0vK7vR6Gg="; + hash = "sha256-zrTRl69ajZ6Tt0nVwPULU+Z0ajGK9Hs2S/XLMj1sTr0="; }; nativeBuildInputs = [ go redo-apenwarr ]; diff --git a/pkgs/tools/misc/pridecat/default.nix b/pkgs/tools/misc/pridecat/default.nix new file mode 100644 index 000000000000..d7bf2b86d6da --- /dev/null +++ b/pkgs/tools/misc/pridecat/default.nix @@ -0,0 +1,23 @@ +{ lib, stdenv, fetchFromGitHub }: + +stdenv.mkDerivation { + pname = "pridecat"; + version = "unstable-2020-06-19"; + + src = fetchFromGitHub { + owner = "lunasorcery"; + repo = "pridecat"; + rev = "92396b11459e7a4b5e8ff511e99d18d7a1589c96"; + sha256 = "sha256-PyGLbbsh9lFXhzB1Xn8VQ9zilivycGFEIc7i8KXOxj8="; + }; + + # fixes the install path in the Makefile + patches = [ ./fix_install.patch ]; + + meta = with lib; { + description = "Like cat, but more colorful"; + homepage = "https://github.com/lunasorcery/pridecat"; + license = licenses.cc-by-nc-sa-40; + maintainers = with maintainers; [ lunarequest ]; + }; +} diff --git a/pkgs/tools/misc/pridecat/fix_install.patch b/pkgs/tools/misc/pridecat/fix_install.patch new file mode 100644 index 000000000000..3d05721ccab8 --- /dev/null +++ b/pkgs/tools/misc/pridecat/fix_install.patch @@ -0,0 +1,20 @@ +diff --git a/Makefile b/Makefile +index 815c27e..1556807 100644 +--- a/Makefile ++++ b/Makefile +@@ -1,4 +1,5 @@ + CXX ?= clang ++out ?= /usr/local + + all: pridecat + +@@ -6,7 +7,8 @@ pridecat: main.cpp + $(CXX) main.cpp -o pridecat -std=c++11 -lstdc++ -Wall -Wextra -O3 + + install: pridecat +- cp pridecat /usr/local/bin/pridecat ++ mkdir -p ${out}/bin ++ cp pridecat ${out}/bin/pridecat + + uninstall: + rm -f /usr/local/bin/pridecat diff --git a/pkgs/tools/misc/sanctity/default.nix b/pkgs/tools/misc/sanctity/default.nix new file mode 100644 index 000000000000..c0e85340c856 --- /dev/null +++ b/pkgs/tools/misc/sanctity/default.nix @@ -0,0 +1,23 @@ +{ lib, rustPlatform, fetchFromGitea }: + +rustPlatform.buildRustPackage rec { + pname = "sanctity"; + version = "1.2.1"; + + src = fetchFromGitea { + domain = "codeberg.org"; + owner = "papojari"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-rK4em0maJQS50zPfnuFSxRoXUuFCaw9ZOfmgf70Sdac="; + }; + + cargoSha256 = "sha256-IQp/sSVgKY1j6N+UcifEi74dg/PkZJoeqLekeLc/vMU="; + + meta = with lib; { + description = "Test the 16 terminal colors in all combinations"; + homepage = "https://codeberg.org/papojari/sanctity"; + license = licenses.lgpl3Only; + maintainers = with maintainers; [ papojari ]; + }; +} diff --git a/pkgs/tools/networking/networkmanager/default.nix b/pkgs/tools/networking/networkmanager/default.nix index 67cd874d6fd4..f3ea9f677c05 100644 --- a/pkgs/tools/networking/networkmanager/default.nix +++ b/pkgs/tools/networking/networkmanager/default.nix @@ -54,11 +54,11 @@ let in stdenv.mkDerivation rec { pname = "networkmanager"; - version = "1.34.0"; + version = "1.36.2"; src = fetchurl { url = "mirror://gnome/sources/NetworkManager/${lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz"; - sha256 = "sha256-gZeV0ImQdiBPVnJCGljxsdnjk1Nu6Hu4RLkR5iQ78L0="; + sha256 = "1aqc8z8zv1sds439ilihwqczwg9iqzki0f007fd2x0s17fz5r1db"; }; outputs = [ "out" "dev" "devdoc" "man" "doc" ]; diff --git a/pkgs/tools/networking/networkmanager/fix-paths.patch b/pkgs/tools/networking/networkmanager/fix-paths.patch index 8c7c4b2fa4d8..75d2b7c75411 100644 --- a/pkgs/tools/networking/networkmanager/fix-paths.patch +++ b/pkgs/tools/networking/networkmanager/fix-paths.patch @@ -1,8 +1,8 @@ diff --git a/data/84-nm-drivers.rules b/data/84-nm-drivers.rules -index e398cb9f2f..a43d61864f 100644 +index 148acade5c..6395fbfbe5 100644 --- a/data/84-nm-drivers.rules +++ b/data/84-nm-drivers.rules -@@ -7,6 +7,6 @@ ACTION!="add|change", GOTO="nm_drivers_end" +@@ -7,6 +7,6 @@ ACTION!="add|change|move", GOTO="nm_drivers_end" # Determine ID_NET_DRIVER if there's no ID_NET_DRIVER or DRIVERS (old udev?) ENV{ID_NET_DRIVER}=="?*", GOTO="nm_drivers_end" DRIVERS=="?*", GOTO="nm_drivers_end" @@ -24,19 +24,19 @@ index e23b3a5282..c7246a3b61 100644 ExecStart=@sbindir@/NetworkManager --no-daemon Restart=on-failure diff --git a/src/core/devices/nm-device.c b/src/core/devices/nm-device.c -index 21863b9533..c9b709659d 100644 +index a11486d54b..de8e9022c6 100644 --- a/src/core/devices/nm-device.c +++ b/src/core/devices/nm-device.c -@@ -13994,14 +13994,14 @@ nm_device_start_ip_check(NMDevice *self) - gw = nm_ip4_config_best_default_route_get(priv->ip_config_4); +@@ -13571,14 +13571,14 @@ nm_device_start_ip_check(NMDevice *self) + gw = nm_l3_config_data_get_best_default_route(l3cd, AF_INET); if (gw) { _nm_utils_inet4_ntop(NMP_OBJECT_CAST_IP4_ROUTE(gw)->gateway, buf); - ping_binary = nm_utils_find_helper("ping", "/usr/bin/ping", NULL); + ping_binary = "@iputils@/bin/ping"; log_domain = LOGD_IP4; } - } else if (priv->ip_config_6 && priv->ip_state_6 == NM_DEVICE_IP_STATE_DONE) { - gw = nm_ip6_config_best_default_route_get(priv->ip_config_6); + } else if (priv->ip_data_6.state == NM_DEVICE_IP_STATE_READY) { + gw = nm_l3_config_data_get_best_default_route(l3cd, AF_INET6); if (gw) { _nm_utils_inet6_ntop(&NMP_OBJECT_CAST_IP6_ROUTE(gw)->gateway, buf); - ping_binary = nm_utils_find_helper("ping6", "/usr/bin/ping6", NULL); @@ -65,10 +65,10 @@ index 21a01e0b04..091c98428f 100644 '--lib-path', meson.current_build_dir(), '--gir', '@INPUT@', diff --git a/src/libnm-platform/nm-platform-utils.c b/src/libnm-platform/nm-platform-utils.c -index 6435dcc482..214d01194e 100644 +index 9ad030df76..8d800fb1c0 100644 --- a/src/libnm-platform/nm-platform-utils.c +++ b/src/libnm-platform/nm-platform-utils.c -@@ -2097,7 +2097,7 @@ nmp_utils_modprobe(GError **error, gboolean suppress_error_logging, const char * +@@ -2207,7 +2207,7 @@ nmp_utils_modprobe(GError **error, gboolean suppress_error_logging, const char * /* construct the argument list */ argv = g_ptr_array_sized_new(4); @@ -78,13 +78,13 @@ index 6435dcc482..214d01194e 100644 g_ptr_array_add(argv, (char *) arg1); diff --git a/src/libnmc-base/nm-vpn-helpers.c b/src/libnmc-base/nm-vpn-helpers.c -index 72691e34c2..95495b6585 100644 +index e2c0c394bd..1a507aa0d4 100644 --- a/src/libnmc-base/nm-vpn-helpers.c +++ b/src/libnmc-base/nm-vpn-helpers.c @@ -198,25 +198,8 @@ nm_vpn_openconnect_authenticate_helper(const char *host, gs_free const char **output_v = NULL; - const char *const * iter; - const char * path; + const char *const *iter; + const char *path; - const char *const DEFAULT_PATHS[] = { - "/sbin/", - "/usr/sbin/", diff --git a/pkgs/tools/networking/snet/default.nix b/pkgs/tools/networking/snet/default.nix new file mode 100644 index 000000000000..f458521468cb --- /dev/null +++ b/pkgs/tools/networking/snet/default.nix @@ -0,0 +1,22 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "snet"; + version = "unstable-2021-11-26"; + + src = fetchFromGitHub { + owner = "monsterxx03"; + repo = "snet"; + rev = "89089b55277ce3e21e2ed79a9d307f2ecc62c6db"; + sha256 = "sha256-lTbygQRABv+Dp4i7nDgXYqi4pwU2rtLNfpgtBgsq+7Y="; + }; + + vendorSha256 = "sha256-dubmCLeD8Fwe1msfLN+5WzdbFkfTRnZDU3F49gjWTS4="; + + meta = with lib; { + description = "Transparent proxy works on linux desktop, MacOS, router"; + homepage = "https://github.com/monsterxx03/snet"; + license = licenses.mit; + maintainers = with maintainers; [ azuwis ]; + }; +} diff --git a/pkgs/tools/networking/tendermint/default.nix b/pkgs/tools/networking/tendermint/default.nix index 17e8d9b9fba2..31ff5235aac6 100644 --- a/pkgs/tools/networking/tendermint/default.nix +++ b/pkgs/tools/networking/tendermint/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "tendermint"; - version = "0.35.1"; + version = "0.35.2"; src = fetchFromGitHub { owner = "tendermint"; repo = pname; rev = "v${version}"; - sha256 = "sha256-eEvSELCzpAm9Me46U54MQEQiAPCFlBa5iG2AZMn5BbE="; + sha256 = "sha256-QCCDZ0zsAqV7tvlBeyTpN5iz/jBc50oBgrmUB/R5wCY="; }; - vendorSha256 = "sha256-aYY3rGm2Wvd5v1QrfhN0jWzAO9JYu4j5ZHk9UyEPjH8="; + vendorSha256 = "sha256-h4sNfV8B+WGgfVPDmWVNek7fQo5qZ3+VGkx4VSw4QF8="; subPackages = [ "cmd/tendermint" ]; diff --git a/pkgs/tools/nix/nix-output-monitor/default.nix b/pkgs/tools/nix/nix-output-monitor/default.nix index 214a25b36803..caa9abb9a1d6 100644 --- a/pkgs/tools/nix/nix-output-monitor/default.nix +++ b/pkgs/tools/nix/nix-output-monitor/default.nix @@ -16,6 +16,7 @@ filepath, generic-optics, HUnit, + installShellFiles, lib, lock-file, MemoTrie, @@ -140,11 +141,18 @@ mkDerivation { maintainers = with lib.maintainers; [maralorn]; passthru.updateScript = ./update.sh; testTarget = "unit-tests"; + buildTools = [installShellFiles]; postInstall = '' cat > $out/bin/nom-build << EOF #!${runtimeShell} ${expect}/bin/unbuffer nix-build "\$@" 2>&1 | exec $out/bin/nom EOF chmod a+x $out/bin/nom-build + installShellCompletion --zsh --name _nom-build ${ + builtins.toFile "completion.zsh" '' + #compdef nom-build + compdef nom-build=nix-build + '' + } ''; } diff --git a/pkgs/tools/nix/nix-output-monitor/update.sh b/pkgs/tools/nix/nix-output-monitor/update.sh index 938736e91942..ad5da0000300 100755 --- a/pkgs/tools/nix/nix-output-monitor/update.sh +++ b/pkgs/tools/nix/nix-output-monitor/update.sh @@ -21,16 +21,29 @@ cat > "$derivation_file" << EOF # This file has been autogenerate with cabal2nix. # Update via ./update.sh" EOF -cabal2nix --extra-arguments expect --extra-arguments runtimeShell --maintainer maralorn "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/${new_version}.tar.gz" | head -n-1 >> "$derivation_file" + +cabal2nix \ + --extra-arguments expect \ + --extra-arguments runtimeShell\ + --extra-arguments installShellFiles\ + --maintainer maralorn \ + "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/${new_version}.tar.gz" \ + | head -n-1 >> "$derivation_file" + cat >> "$derivation_file" << EOF passthru.updateScript = ./update.sh; testTarget = "unit-tests"; + buildTools = [ installShellFiles ]; postInstall = '' cat > \$out/bin/nom-build << EOF #!\${runtimeShell} \${expect}/bin/unbuffer nix-build "\\\$@" 2>&1 | exec \$out/bin/nom EOF chmod a+x \$out/bin/nom-build + installShellCompletion --zsh --name _nom-build \${builtins.toFile "completion.zsh" '' + #compdef nom-build + compdef nom-build=nix-build + ''} ''; } EOF diff --git a/pkgs/tools/package-management/nix/common.nix b/pkgs/tools/package-management/nix/common.nix index 842ef5de3285..55d2e0b54059 100644 --- a/pkgs/tools/package-management/nix/common.nix +++ b/pkgs/tools/package-management/nix/common.nix @@ -205,7 +205,7 @@ stdenv.mkDerivation { }; passthru = { - inherit boehmgc; + inherit aws-sdk-cpp boehmgc; perl-bindings = perl.pkgs.toPerlModule (callPackage ./nix-perl.nix { inherit src version; }); }; diff --git a/pkgs/tools/package-management/nix/default.nix b/pkgs/tools/package-management/nix/default.nix index 404982ee2e8b..a6b7fa3a9008 100644 --- a/pkgs/tools/package-management/nix/default.nix +++ b/pkgs/tools/package-management/nix/default.nix @@ -24,6 +24,9 @@ let customMemoryManagement = false; }).overrideDerivation (args: { patches = (args.patches or [ ]) ++ [ ./patches/aws-sdk-cpp-TransferManager-ContentEncoding.patch ]; + + # only a stripped down version is build which takes a lot less resources to build + requiredSystemFeatures = null; }); common = args: diff --git a/pkgs/tools/security/spire/default.nix b/pkgs/tools/security/spire/default.nix index bb165c41d07b..5f06abeda1b0 100644 --- a/pkgs/tools/security/spire/default.nix +++ b/pkgs/tools/security/spire/default.nix @@ -29,7 +29,7 @@ buildGoModule rec { meta = with lib; { description = "The SPIFFE Runtime Environment"; - homepage = "github.com/spiffe/spire"; + homepage = "https://github.com/spiffe/spire"; license = licenses.asl20; maintainers = with maintainers; [ jonringer fkautz ]; }; diff --git a/pkgs/tools/security/traitor/default.nix b/pkgs/tools/security/traitor/default.nix index 8132364298b6..3401fe4f31e6 100644 --- a/pkgs/tools/security/traitor/default.nix +++ b/pkgs/tools/security/traitor/default.nix @@ -5,13 +5,13 @@ buildGoModule rec { pname = "traitor"; - version = "0.0.9"; + version = "0.0.14"; src = fetchFromGitHub { owner = "liamg"; repo = pname; rev = "v${version}"; - sha256 = "sha256-SHfAPPVq5OmS0yPaSXGsMjskQdosoBN4XRLSzkrviJM="; + sha256 = "sha256-LQfKdjZaTm5z8DUt6He/RJHbOUCUwP3CV3Fyt5rJIfU="; }; vendorSha256 = null; diff --git a/pkgs/tools/text/colordiff/default.nix b/pkgs/tools/text/colordiff/default.nix index 9d56e2e4c192..a7e8293851b9 100644 --- a/pkgs/tools/text/colordiff/default.nix +++ b/pkgs/tools/text/colordiff/default.nix @@ -1,4 +1,4 @@ -{ lib, stdenv, fetchFromGitHub, docbook_xml_dtd_412, docbook_xsl, perl, w3m, xmlto }: +{ lib, stdenv, fetchFromGitHub, docbook_xml_dtd_412, docbook_xsl, perl, w3m, xmlto, diffutils }: stdenv.mkDerivation rec { pname = "colordiff"; @@ -18,6 +18,9 @@ stdenv.mkDerivation rec { postPatch = '' substituteInPlace Makefile \ --replace 'TMPDIR=colordiff-''${VERSION}' "" + + substituteInPlace colordiff.pl \ + --replace '= "diff";' '= "${diffutils}/bin/diff";' ''; installFlags = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c8c409a74720..7bc868e1e1a5 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -368,9 +368,11 @@ with pkgs; inherit (darwin.apple_sdk.frameworks) Security; }; + pridecat = callPackage ../tools/misc/pridecat { }; + proto-contrib = callPackage ../development/tools/proto-contrib { }; - protoc-gen-doc = callPackage ../development/tools/protoc-gen-doc {}; + protoc-gen-doc = callPackage ../development/tools/protoc-gen-doc { }; protoc-gen-go = callPackage ../development/tools/protoc-gen-go { }; @@ -9653,6 +9655,8 @@ with pkgs; samplicator = callPackage ../tools/networking/samplicator { }; + sanctity = callPackage ../tools/misc/sanctity { }; + sandboxfs = callPackage ../tools/filesystems/sandboxfs { }; sasquatch = callPackage ../tools/filesystems/sasquatch { }; @@ -9920,6 +9924,8 @@ with pkgs; snapdragon-profiler = callPackage ../tools/graphics/snapdragon-profiler { }; + snet = callPackage ../tools/networking/snet { }; + sng = callPackage ../tools/graphics/sng { libpng = libpng12; }; @@ -15909,6 +15915,8 @@ with pkgs; vtable-dumper = callPackage ../development/tools/misc/vtable-dumper { }; + wails = callPackage ../development/tools/wails { }; + whatsapp-for-linux = callPackage ../applications/networking/instant-messengers/whatsapp-for-linux { }; whatstyle = callPackage ../development/tools/misc/whatstyle { @@ -23297,6 +23305,7 @@ with pkgs; buildUBoot ubootTools ubootA20OlinuxinoLime + ubootA20OlinuxinoLime2EMMC ubootBananaPi ubootBananaPim3 ubootBananaPim64 @@ -29030,6 +29039,8 @@ with pkgs; spotifywm = callPackage ../applications/audio/spotifywm { }; + psst = callPackage ../applications/audio/psst { }; + squeezelite = callPackage ../applications/audio/squeezelite { }; ltunify = callPackage ../tools/misc/ltunify { }; diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index bf8a055e1a38..b75cb56feace 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -390,6 +390,29 @@ let ff-pbt = callPackage ../development/ocaml-modules/ff/pbt.nix { }; ff-sig = callPackage ../development/ocaml-modules/ff/sig.nix { }; + ffmpeg = callPackage ../development/ocaml-modules/ffmpeg { }; + ffmpeg-avutil = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avutil.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-avcodec = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avcodec.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-avfilter = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avfilter.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-swscale = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-swscale.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-swresample = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-swresample.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-av = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-av.nix { + inherit (pkgs) ffmpeg; + }; + ffmpeg-avdevice = callPackage ../development/ocaml-modules/ffmpeg/ffmpeg-avdevice.nix { + inherit (pkgs) ffmpeg; + }; + fiat-p256 = callPackage ../development/ocaml-modules/fiat-p256 { }; fileutils = callPackage ../development/ocaml-modules/fileutils { }; @@ -398,6 +421,10 @@ let fix = callPackage ../development/ocaml-modules/fix { }; + flac = callPackage ../development/ocaml-modules/flac { + inherit (pkgs) flac; + }; + fmt = callPackage ../development/ocaml-modules/fmt { }; fontconfig = callPackage ../development/ocaml-modules/fontconfig { @@ -1001,6 +1028,8 @@ let optint = callPackage ../development/ocaml-modules/optint { }; + opus = callPackage ../development/ocaml-modules/opus { }; + otfm = callPackage ../development/ocaml-modules/otfm { }; otoml = callPackage ../development/ocaml-modules/otoml { }; @@ -1085,6 +1114,10 @@ let spacetime_lib = callPackage ../development/ocaml-modules/spacetime_lib { }; + speex = callPackage ../development/ocaml-modules/speex { + inherit (pkgs) speex; + }; + tar-unix = callPackage ../development/ocaml-modules/tar/unix.nix { }; tar = callPackage ../development/ocaml-modules/tar { }; @@ -1133,6 +1166,8 @@ let ocurl = callPackage ../development/ocaml-modules/ocurl { }; + ogg = callPackage ../development/ocaml-modules/ogg { }; + parany = callPackage ../development/ocaml-modules/parany { }; pipebang = callPackage ../development/ocaml-modules/pipebang { }; @@ -1349,6 +1384,8 @@ let tezos-version = callPackage ../development/ocaml-modules/tezos/version.nix { }; tezos-workers = callPackage ../development/ocaml-modules/tezos/workers.nix { }; + theora = callPackage ../development/ocaml-modules/theora { }; + toml = callPackage ../development/ocaml-modules/toml { }; topkg = callPackage ../development/ocaml-modules/topkg { }; @@ -1394,6 +1431,8 @@ let vlq = callPackage ../development/ocaml-modules/vlq { }; + vorbis = callPackage ../development/ocaml-modules/vorbis { }; + visitors = callPackage ../development/ocaml-modules/visitors { }; wasm = callPackage ../development/ocaml-modules/wasm { };