diff options
83 files changed, 1802 insertions, 231 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index f176a029d8a4f..ab14ba2a5b0b4 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2038,6 +2038,12 @@ githubId = 157330; name = "Ben Burdette"; }; + bwlang = { + email = "brad@langhorst.com"; + github = "bwlang"; + githubId = 61636; + name = "Brad Langhorst"; + }; bzizou = { email = "Bruno@bzizou.net"; github = "bzizou"; @@ -8107,6 +8113,12 @@ githubId = 42545625; name = "Maas Lalani"; }; + maddiethecafebabe = { + email = "maddie@cafebabe.date"; + github = "maddiethecafebabe"; + githubId = 75337286; + name = "Madeline S."; + }; madjar = { email = "georges.dubus@compiletoi.net"; github = "madjar"; @@ -9174,6 +9186,12 @@ githubId = 15896005; name = "Vladyslav Burzakovskyy"; }; + mrtarantoga = { + email = "goetz-dev@web.de"; + name = "Götz Grimmer"; + github = "MrTarantoga"; + githubId = 53876219; + }; mrVanDalo = { email = "contact@ingolf-wagner.de"; github = "mrVanDalo"; @@ -13283,6 +13301,12 @@ githubId = 57180880; name = "Ansh Tyagi"; }; + therishidesai = { + email = "desai.rishi1@gmail.com"; + github = "therishidesai"; + githubId = 5409166; + name = "Rishi Desai"; + }; thesola10 = { email = "me@thesola.io"; github = "Thesola10"; diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml index 8f4a7dd002d34..cdf6e99994085 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml @@ -212,6 +212,14 @@ </listitem> <listitem> <para> + <link xlink:href="https://github.com/prymitive/kthxbye">kthxbye</link>, + an alert acknowledgement management daemon for Prometheus + Alertmanager. Available as + <link xlink:href="options.html#opt-services.kthxbye.enable">services.kthxbye</link> + </para> + </listitem> + <listitem> + <para> <link xlink:href="https://github.com/jtroo/kanata">kanata</link>, a tool to improve keyboard comfort and usability with advanced customization. Available as diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md index f6515256dbc6b..607e5cfeb4d48 100644 --- a/nixos/doc/manual/release-notes/rl-2211.section.md +++ b/nixos/doc/manual/release-notes/rl-2211.section.md @@ -77,6 +77,8 @@ In addition to numerous new and upgraded packages, this release has the followin - [infnoise](https://github.com/leetronics/infnoise), a hardware True Random Number Generator dongle. Available as [services.infnoise](options.html#opt-services.infnoise.enable). +- [kthxbye](https://github.com/prymitive/kthxbye), an alert acknowledgement management daemon for Prometheus Alertmanager. Available as [services.kthxbye](options.html#opt-services.kthxbye.enable) + - [kanata](https://github.com/jtroo/kanata), a tool to improve keyboard comfort and usability with advanced customization. Available as [services.kanata](options.html#opt-services.kanata.enable). diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 699c5c7dead4b..5568577909b9c 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -681,6 +681,7 @@ ./services/monitoring/heapster.nix ./services/monitoring/incron.nix ./services/monitoring/kapacitor.nix + ./services/monitoring/kthxbye.nix ./services/monitoring/loki.nix ./services/monitoring/longview.nix ./services/monitoring/mackerel-agent.nix diff --git a/nixos/modules/services/monitoring/kthxbye.nix b/nixos/modules/services/monitoring/kthxbye.nix new file mode 100644 index 0000000000000..3f988dcb722fe --- /dev/null +++ b/nixos/modules/services/monitoring/kthxbye.nix @@ -0,0 +1,166 @@ +{ config, pkgs, lib, ... }: +with lib; + +let + cfg = config.services.kthxbye; +in + +{ + options.services.kthxbye = { + enable = mkEnableOption (mdDoc "kthxbye alert acknowledgement management daemon"); + + package = mkOption { + type = types.package; + default = pkgs.kthxbye; + defaultText = literalExpression "pkgs.kthxbye"; + description = mdDoc '' + The kthxbye package that should be used. + ''; + }; + + openFirewall = mkOption { + type = types.bool; + default = false; + description = mdDoc '' + Whether to open ports in the firewall needed for the daemon to function. + ''; + }; + + extraOptions = mkOption { + type = with types; listOf str; + default = []; + description = mdDoc '' + Extra command line options. + + Documentation can be found [here](https://github.com/prymitive/kthxbye/blob/main/README.md). + ''; + example = literalExpression '' + [ + "-extend-with-prefix 'ACK!'" + ]; + ''; + }; + + alertmanager = { + timeout = mkOption { + type = types.str; + default = "1m0s"; + description = mdDoc '' + Alertmanager request timeout duration in the [time.Duration](https://pkg.go.dev/time#ParseDuration) format. + ''; + example = "30s"; + }; + uri = mkOption { + type = types.str; + default = "http://localhost:9093"; + description = mdDoc '' + Alertmanager URI to use. + ''; + example = "https://alertmanager.example.com"; + }; + }; + + extendBy = mkOption { + type = types.str; + default = "15m0s"; + description = mdDoc '' + Extend silences by adding DURATION seconds. + + DURATION should be provided in the [time.Duration](https://pkg.go.dev/time#ParseDuration) format. + ''; + example = "6h0m0s"; + }; + + extendIfExpiringIn = mkOption { + type = types.str; + default = "5m0s"; + description = mdDoc '' + Extend silences that are about to expire in the next DURATION seconds. + + DURATION should be provided in the [time.Duration](https://pkg.go.dev/time#ParseDuration) format. + ''; + example = "1m0s"; + }; + + extendWithPrefix = mkOption { + type = types.str; + default = "ACK!"; + description = mdDoc '' + Extend silences with comment starting with PREFIX string. + ''; + example = "!perma-silence"; + }; + + interval = mkOption { + type = types.str; + default = "45s"; + description = mdDoc '' + Silence check interval duration in the [time.Duration](https://pkg.go.dev/time#ParseDuration) format. + ''; + example = "30s"; + }; + + listenAddress = mkOption { + type = types.str; + default = "0.0.0.0"; + description = mdDoc '' + The address to listen on for HTTP requests. + ''; + example = "127.0.0.1"; + }; + + port = mkOption { + type = types.port; + default = 8080; + description = mdDoc '' + The port to listen on for HTTP requests. + ''; + }; + + logJSON = mkOption { + type = types.bool; + default = false; + description = mdDoc '' + Format logged messages as JSON. + ''; + }; + + maxDuration = mkOption { + type = with types; nullOr str; + default = null; + description = mdDoc '' + Maximum duration of a silence, it won't be extended anymore after reaching it. + + Duration should be provided in the [time.Duration](https://pkg.go.dev/time#ParseDuration) format. + ''; + example = "30d"; + }; + }; + + config = mkIf cfg.enable { + systemd.services.kthxbye = { + description = "kthxbye Alertmanager ack management daemon"; + wantedBy = [ "multi-user.target" ]; + script = '' + ${cfg.package}/bin/kthxbye \ + -alertmanager.timeout ${cfg.alertmanager.timeout} \ + -alertmanager.uri ${cfg.alertmanager.uri} \ + -extend-by ${cfg.extendBy} \ + -extend-if-expiring-in ${cfg.extendIfExpiringIn} \ + -extend-with-prefix ${cfg.extendWithPrefix} \ + -interval ${cfg.interval} \ + -listen ${cfg.listenAddress}:${toString cfg.port} \ + ${optionalString cfg.logJSON "-log-json"} \ + ${optionalString (cfg.maxDuration != null) "-max-duration ${cfg.maxDuration}"} \ + ${concatStringsSep " " cfg.extraOptions} + ''; + serviceConfig = { + Type = "simple"; + DynamicUser = true; + Restart = "on-failure"; + }; + }; + + networking.firewall.allowedTCPPorts = mkIf cfg.openFirewall [ cfg.port ]; + }; +} diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index b486be5fee35e..5ea2c94ccb1cc 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -277,6 +277,7 @@ in { komga = handleTest ./komga.nix {}; krb5 = discoverTests (import ./krb5 {}); ksm = handleTest ./ksm.nix {}; + kthxbye = handleTest ./kthxbye.nix {}; kubernetes = handleTestOn ["x86_64-linux"] ./kubernetes {}; languagetool = handleTest ./languagetool.nix {}; latestKernel.login = handleTest ./login.nix { latestKernel = true; }; diff --git a/nixos/tests/kthxbye.nix b/nixos/tests/kthxbye.nix new file mode 100644 index 0000000000000..5ca0917ec8e79 --- /dev/null +++ b/nixos/tests/kthxbye.nix @@ -0,0 +1,110 @@ +import ./make-test-python.nix ({ lib, pkgs, ... }: +{ + name = "kthxbye"; + + meta = with lib.maintainers; { + maintainers = [ nukaduka ]; + }; + + nodes.server = { ... }: { + environment.systemPackages = with pkgs; [ prometheus-alertmanager ]; + services.prometheus = { + enable = true; + + globalConfig = { + scrape_interval = "5s"; + scrape_timeout = "5s"; + evaluation_interval = "5s"; + }; + + scrapeConfigs = [ + { + job_name = "prometheus"; + scrape_interval = "5s"; + static_configs = [ + { + targets = [ "localhost:9090" ]; + } + ]; + } + ]; + + rules = [ + '' + groups: + - name: test + rules: + - alert: node_up + expr: up != 0 + for: 5s + labels: + severity: bottom of the barrel + annotations: + summary: node is fine + '' + ]; + + alertmanagers = [ + { + static_configs = [ + { + targets = [ + "localhost:9093" + ]; + } + ]; + } + ]; + + alertmanager = { + enable = true; + openFirewall = true; + configuration.route = { + receiver = "test"; + group_wait = "5s"; + group_interval = "5s"; + group_by = [ "..." ]; + }; + configuration.receivers = [ + { + name = "test"; + webhook_configs = [ + { + url = "http://localhost:1234"; + } + ]; + } + ]; + }; + }; + + services.kthxbye = { + enable = true; + openFirewall = true; + extendIfExpiringIn = "30s"; + logJSON = true; + maxDuration = "15m"; + interval = "5s"; + }; + }; + + testScript = '' + with subtest("start the server"): + start_all() + server.wait_for_unit("prometheus.service") + server.wait_for_unit("alertmanager.service") + server.wait_for_unit("kthxbye.service") + + server.sleep(2) # wait for units to settle + server.systemctl("restart kthxbye.service") # make sure kthxbye comes up after alertmanager + server.sleep(2) + + with subtest("set up test silence which expires in 20s"): + server.succeed('amtool --alertmanager.url "http://localhost:9093" silence add alertname="node_up" -a "nixosTest" -d "20s" -c "ACK! this server is fine!!"') + + with subtest("wait for 21 seconds and check if the silence is still active"): + server.sleep(21) + server.systemctl("status kthxbye.service") + server.succeed("amtool --alertmanager.url 'http://localhost:9093' silence | grep 'ACK'") + ''; +}) diff --git a/pkgs/applications/audio/fire/0001-Remove-FetchContent-usage.patch b/pkgs/applications/audio/fire/0001-Remove-FetchContent-usage.patch new file mode 100644 index 0000000000000..35f4c8252e5eb --- /dev/null +++ b/pkgs/applications/audio/fire/0001-Remove-FetchContent-usage.patch @@ -0,0 +1,62 @@ +From fbf2ddd872db6a3640bc7d693356b99be9dd70f5 Mon Sep 17 00:00:00 2001 +From: OPNA2608 <christoph.neidahl@gmail.com> +Date: Thu, 18 Aug 2022 20:12:07 +0200 +Subject: [PATCH] Remove FetchContent usage + +--- + CMakeLists.txt | 27 +++++---------------------- + 1 file changed, 5 insertions(+), 22 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 84c66a7..5234903 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -30,20 +30,9 @@ project(Fire VERSION 0.9.9) + # or + # add_subdirectory(JUCE) # If you've put JUCE in a subdirectory called JUCE + +-include(FetchContent) +-FetchContent_Declare( +- JUCE +- GIT_REPOSITORY https://github.com/juce-framework/JUCE.git +- GIT_TAG 7.0.1 +-) +-FetchContent_MakeAvailable(JUCE) +- +-FetchContent_Declare( +- readerwriterqueue +- GIT_REPOSITORY https://github.com/cameron314/readerwriterqueue +- GIT_TAG v1.0.6 +-) +-FetchContent_MakeAvailable(readerwriterqueue) ++add_subdirectory(JUCE EXCLUDE_FROM_ALL) ++ ++add_subdirectory(readerwriterqueue EXCLUDE_FROM_ALL) + + # If you are building a VST2 or AAX plugin, CMake needs to be told where to find these SDKs on your + # system. This setup should be done before calling `juce_add_plugin`. +@@ -172,13 +161,7 @@ set(TestFiles + test/CatchMain.cpp + test/PluginTest.cpp) + +-# Download the tagged version of Catch2 +-Include(FetchContent) +-FetchContent_Declare( +- Catch2 +- GIT_REPOSITORY https://github.com/catchorg/Catch2.git +- GIT_TAG v2.13.7) +-FetchContent_MakeAvailable(Catch2) ++add_subdirectory(Catch2 EXCLUDE_FROM_ALL) + + # Setup the test executable, again C++ 20 please + add_executable(Tests ${TestFiles}) +@@ -199,4 +182,4 @@ source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR}/test PREFIX "" FILES ${TestFiles}) + # We have to manually provide the source directory here for now + # https://github.com/catchorg/Catch2/issues/2026 + include(${Catch2_SOURCE_DIR}/contrib/Catch.cmake) +-catch_discover_tests(Tests) +\ No newline at end of file ++catch_discover_tests(Tests) +-- +2.36.0 + diff --git a/pkgs/applications/audio/fire/default.nix b/pkgs/applications/audio/fire/default.nix new file mode 100644 index 0000000000000..54d5bba446618 --- /dev/null +++ b/pkgs/applications/audio/fire/default.nix @@ -0,0 +1,117 @@ +{ stdenv +, lib +, fetchFromGitHub +, cmake +, pkg-config +, catch2 +, libX11 +, libXrandr +, libXinerama +, libXext +, libXcursor +, freetype +, alsa-lib +, Cocoa +, WebKit +, CoreServices +, DiscRecording +, CoreAudioKit +, MetalKit +, simd +}: + +let + # FetchContent replacement, check CMakeLists.txt for requested versions (Nixpkgs' Catch2 works) + readerwriterqueue = fetchFromGitHub { + owner = "cameron314"; + repo = "readerwriterqueue"; + rev = "v1.0.6"; + sha256 = "sha256-g7NX7Ucl5GWw3u6TiUOITjhv7492ByTzACtWR0Ph2Jc="; + }; +in +stdenv.mkDerivation rec { + pname = "fire"; + version = "1.0.0.3"; + + src = fetchFromGitHub { + owner = "jerryuhoo"; + repo = "Fire"; + rev = "v${version}"; + fetchSubmodules = true; + sha256 = "sha256-X3pzTrNd0G6BouCDkr3dukQTFDzZ7qblIYxFQActKGE="; + }; + + patches = [ + ./0001-Remove-FetchContent-usage.patch + ]; + + postPatch = '' + # 1. Remove hardcoded LTO flags: needs extra setup on Linux, + # possibly broken on Darwin + # https://github.com/NixOS/nixpkgs/issues/19098 + # 2. Disable automatic copying of built plugins during buildPhase, it defaults + # into user home and we want to have building & installing separated. + sed -i \ + -e '/juce::juce_recommended_lto_flags/d' \ + -e 's/COPY_PLUGIN_AFTER_BUILD TRUE/COPY_PLUGIN_AFTER_BUILD FALSE/g' \ + CMakeLists.txt + ''; + + preConfigure = '' + ln -s ${readerwriterqueue} readerwriterqueue + ln -s ${catch2.src} Catch2 + ''; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ + libX11 + libXrandr + libXinerama + libXext + libXcursor + freetype + alsa-lib + ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ + Cocoa + WebKit + CoreServices + DiscRecording + CoreAudioKit + MetalKit + simd + ]; + + installPhase = let + vst3Dir = "${placeholder "out"}/${if stdenv.hostPlatform.isDarwin then "Library/Audio/Plug-Ins/VST3" else "lib/vst3"}"; + auDir = "${placeholder "out"}/Library/Audio/Plug-Ins/Components"; + in '' + runHook preInstall + + mkdir -p ${vst3Dir} + # Exact path of the build artefact depends on used CMAKE_BUILD_TYPE + cp -R Fire_artefacts/*/VST3/* ${vst3Dir}/ + '' + lib.optionalString stdenv.hostPlatform.isDarwin '' + mkdir -p ${auDir} + cp -R Fire_artefacts/*/AU/* ${auDir}/ + '' + '' + + runHook postInstall + ''; + + # Fails to find fp.h on its own + NIX_CFLAGS_COMPILE = lib.optionalString stdenv.hostPlatform.isDarwin "-isystem ${CoreServices}/Library/Frameworks/CoreServices.framework/Versions/Current/Frameworks/CarbonCore.framework/Versions/Current/Headers/"; + + doCheck = stdenv.buildPlatform.canExecute stdenv.hostPlatform; + + meta = with lib; { + description = "Multi-band distortion plugin by Wings"; + homepage = "https://github.com/jerryuhoo/Fire"; + license = licenses.agpl3Only; # Not clarified if Only or Plus + platforms = platforms.unix; + maintainers = with maintainers; [ OPNA2608 ]; + }; +} diff --git a/pkgs/applications/audio/miniplayer/default.nix b/pkgs/applications/audio/miniplayer/default.nix index b808bfb8b2e3b..4eea3dbcb7f99 100644 --- a/pkgs/applications/audio/miniplayer/default.nix +++ b/pkgs/applications/audio/miniplayer/default.nix @@ -6,12 +6,12 @@ with python3Packages; buildPythonApplication rec { pname = "miniplayer"; - version = "1.7.0"; + version = "1.7.1"; format = "pyproject"; src = fetchPypi { inherit pname version; - hash = "sha256-JUlUFj/5DOTLa1XCZX/9Nj3Z9W+k4gnpJONiS4qNBIU="; + hash = "sha256-NrIDv61mRDe9JWpSP8cvlU4CGoN6Ou6XuNOIn1p47Pw="; }; propagatedBuildInputs = [ diff --git a/pkgs/applications/audio/ptcollab/default.nix b/pkgs/applications/audio/ptcollab/default.nix index 2ec27cb49e671..637acb320b151 100644 --- a/pkgs/applications/audio/ptcollab/default.nix +++ b/pkgs/applications/audio/ptcollab/default.nix @@ -13,13 +13,13 @@ mkDerivation rec { pname = "ptcollab"; - version = "0.6.2.0"; + version = "0.6.3.0"; src = fetchFromGitHub { owner = "yuxshao"; repo = "ptcollab"; rev = "v${version}"; - sha256 = "sha256-iSCuFCwOPrvff9N/a2J0kPrxikhyR7yYbD4VaU/TF4M="; + sha256 = "sha256-fxFT3wgFHd2YbwUTna5PTvaCcCAaDXGLbqKz6nVrsKI="; }; nativeBuildInputs = [ qmake pkg-config ]; diff --git a/pkgs/applications/audio/tidal-hifi/default.nix b/pkgs/applications/audio/tidal-hifi/default.nix index ca7fc28f74054..048367703f028 100644 --- a/pkgs/applications/audio/tidal-hifi/default.nix +++ b/pkgs/applications/audio/tidal-hifi/default.nix @@ -36,11 +36,11 @@ stdenv.mkDerivation rec { pname = "tidal-hifi"; - version = "4.1.2"; + version = "4.2.0"; src = fetchurl { url = "https://github.com/Mastermindzh/tidal-hifi/releases/download/${version}/tidal-hifi_${version}_amd64.deb"; - sha256 = "sha256-HurREfN4VxhFiyP+oAx8QeTfoZTk+PlRX5pVWyU+Dwg="; + sha256 = "sha256-YydpWzGH+Orb8Vot8hchh+FFcd327VwQ8Kr7x8WYnv4="; }; nativeBuildInputs = [ autoPatchelfHook dpkg makeWrapper ]; diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 40862bf8d758e..31a3c800491ae 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -5625,6 +5625,18 @@ final: prev: meta.homepage = "https://github.com/scalameta/nvim-metals/"; }; + nvim-moonwalk = buildVimPluginFrom2Nix { + pname = "nvim-moonwalk"; + version = "2022-04-12"; + src = fetchFromGitHub { + owner = "gpanders"; + repo = "nvim-moonwalk"; + rev = "86a59f16ae01606824cef3d0f3f87c9886b312d0"; + sha256 = "0cwfsm5wb4qn04930km9p4i6xbhaw4023dfzw3s6cr6a428rpc5j"; + }; + meta.homepage = "https://github.com/gpanders/nvim-moonwalk/"; + }; + nvim-neoclip-lua = buildVimPluginFrom2Nix { pname = "nvim-neoclip.lua"; version = "2022-09-23"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 616c1c7b23ed8..4d67bc5bd2076 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -473,6 +473,7 @@ https://github.com/neovim/nvim-lspconfig/,, https://github.com/RishabhRD/nvim-lsputils/,, https://github.com/rafcamlet/nvim-luapad/,, https://github.com/scalameta/nvim-metals/,, +https://github.com/gpanders/nvim-moonwalk/,, https://github.com/AckslD/nvim-neoclip.lua/,, https://github.com/yamatsum/nvim-nonicons/,, https://github.com/rcarriga/nvim-notify/,, diff --git a/pkgs/applications/editors/vscode/extensions/rescript/default.nix b/pkgs/applications/editors/vscode/extensions/rescript/default.nix index fb0f1db8d59f8..902bc58f1d14c 100644 --- a/pkgs/applications/editors/vscode/extensions/rescript/default.nix +++ b/pkgs/applications/editors/vscode/extensions/rescript/default.nix @@ -1,6 +1,7 @@ { lib, stdenv, vscode-utils, callPackage }: let - rescript-editor-analysis = (callPackage ./rescript-editor-analysis.nix { }); + version = "1.6.0"; + rescript-editor-analysis = callPackage ./rescript-editor-analysis.nix { inherit version; }; arch = if stdenv.isLinux then "linux" else if stdenv.isDarwin then "darwin" @@ -11,8 +12,8 @@ vscode-utils.buildVscodeMarketplaceExtension rec { mktplcRef = { name = "rescript-vscode"; publisher = "chenglou92"; - version = "1.3.0"; - sha256 = "sha256-Sgi7FFOpI/XOeyPOrDhwZdZ+43ilUz7oQ49yB7tiMXk="; + inherit version; + sha256 = "sha256-/Nv+uyTkJQVaPKIDRr1P/Z5vsituXpP48/sDn3FUEeA="; }; postPatch = '' rm -r ${analysisDir} @@ -22,7 +23,7 @@ vscode-utils.buildVscodeMarketplaceExtension rec { meta = with lib; { description = "The official VSCode plugin for ReScript"; homepage = "https://github.com/rescript-lang/rescript-vscode"; - maintainers = with maintainers; [ dlip ]; + maintainers = with maintainers; [ dlip jayesh-bhoot ]; license = licenses.mit; }; } diff --git a/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix b/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix index 518280b4b06b9..a0b49f9c44be7 100644 --- a/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix +++ b/pkgs/applications/editors/vscode/extensions/rescript/rescript-editor-analysis.nix @@ -1,21 +1,24 @@ -{ lib, stdenv, fetchFromGitHub, bash, ocaml }: +{ lib, stdenv, fetchFromGitHub, bash, ocaml, dune_3, version }: stdenv.mkDerivation { pname = "rescript-editor-analysis"; - version = "1.1.3"; + inherit version; src = fetchFromGitHub { owner = "rescript-lang"; repo = "rescript-vscode"; - rev = "8d0412a72307b220b7f5774e2612760a2d429059"; - sha256 = "rHQtfuIiEWlSPuZvNpEafsvlXCj2Uv1YRR1IfvKfC2s="; + rev = version; + sha256 = "sha256-O5kZCnhtMcevPTs5UxhIXx124WQf1VvF2WMVHjMEQZc="; }; - nativeBuildInputs = [ ocaml ]; + nativeBuildInputs = [ ocaml dune_3 ]; + # Skip testing phases because they need to download and install node modules postPatch = '' cd analysis - substituteInPlace Makefile --replace "/bin/bash" "${bash}/bin/bash" + substituteInPlace Makefile \ + --replace "build: build-analysis-binary build-reanalyze build-tests" "build: build-analysis-binary" \ + --replace "test: test-analysis-binary test-reanalyze" "test: test-analysis-binary" ''; installPhase = '' @@ -25,7 +28,7 @@ stdenv.mkDerivation { meta = with lib; { description = "Analysis binary for the ReScript VSCode plugin"; homepage = "https://github.com/rescript-lang/rescript-vscode"; - maintainers = with maintainers; [ dlip ]; + maintainers = with maintainers; [ dlip jayesh-bhoot ]; license = licenses.mit; }; } diff --git a/pkgs/applications/emulators/dolphin-emu/master.nix b/pkgs/applications/emulators/dolphin-emu/master.nix index a5c6c4aa3aa93..35a00503ed505 100644 --- a/pkgs/applications/emulators/dolphin-emu/master.nix +++ b/pkgs/applications/emulators/dolphin-emu/master.nix @@ -1,12 +1,52 @@ -{ lib, stdenv, fetchFromGitHub, pkg-config, cmake -, wrapQtAppsHook, qtbase, bluez, ffmpeg, libao, libGLU, libGL, pcre, gettext -, libXrandr, libusb1, libpthreadstubs, libXext, libXxf86vm, libXinerama -, libSM, libXdmcp, readline, openal, udev, libevdev, portaudio, curl, alsa-lib -, miniupnpc, enet, mbedtls, soundtouch, sfml, xz, writeScript -, vulkan-loader ? null, libpulseaudio ? null +{ lib +, stdenv +, fetchFromGitHub +, pkg-config +, cmake +, wrapQtAppsHook +, qtbase +, bluez +, ffmpeg +, libGL +, libXrandr +, libusb1 +, libXext +, openal +, udev +, libevdev +, curl +, alsa-lib +, miniupnpc +, enet +, mbedtls +, soundtouch +, sfml +, xz +, hidapi +, fmt_8 +, vulkan-loader +, libpulseaudio +, bzip2 +, libiconv +, pugixml +, xxHash -# - Inputs used for Darwin -, CoreBluetooth, ForceFeedback, IOKit, OpenGL, libpng, hidapi }: + # Used in passthru +, testers +, dolphin-emu-beta +, writeShellScript +, common-updater-scripts +, jq + + # Darwin-only dependencies +, CoreBluetooth +, ForceFeedback +, IOKit +, VideoToolbox +, OpenGL +, libpng +, moltenvk +}: stdenv.mkDerivation rec { pname = "dolphin-emu"; @@ -20,27 +60,70 @@ stdenv.mkDerivation rec { fetchSubmodules = true; }; - nativeBuildInputs = [ cmake pkg-config ] - ++ lib.optional stdenv.isLinux wrapQtAppsHook; + patches = [ + # On x86_64-darwin CMake reportedly does not work without this in some cases. + # See https://github.com/NixOS/nixpkgs/pull/190373#issuecomment-1241310765 + ./minizip-external-missing-include.patch + ]; + + nativeBuildInputs = [ + cmake + pkg-config + wrapQtAppsHook + ]; buildInputs = [ - curl ffmpeg libao libGLU libGL pcre gettext libpthreadstubs libpulseaudio - libXrandr libXext libXxf86vm libXinerama libSM readline openal libXdmcp - portaudio libusb1 libpng hidapi miniupnpc enet mbedtls soundtouch sfml xz + curl + ffmpeg + pugixml + xxHash + libGL + libpulseaudio + openal + libusb1 + libiconv + libpng + hidapi + miniupnpc + enet + mbedtls + soundtouch + sfml + xz qtbase + fmt_8 + bzip2 ] ++ lib.optionals stdenv.isLinux [ - bluez udev libevdev alsa-lib vulkan-loader + libXrandr + libXext + bluez + udev + libevdev + alsa-lib + vulkan-loader ] ++ lib.optionals stdenv.isDarwin [ - CoreBluetooth OpenGL ForceFeedback IOKit + CoreBluetooth + OpenGL + ForceFeedback + IOKit + VideoToolbox + moltenvk ]; cmakeFlags = [ + "-DDISTRIBUTOR=NixOS" "-DUSE_SHARED_ENET=ON" "-DDOLPHIN_WC_REVISION=${src.rev}" "-DDOLPHIN_WC_DESCRIBE=${version}" "-DDOLPHIN_WC_BRANCH=master" ] ++ lib.optionals stdenv.isDarwin [ "-DOSX_USE_DEFAULT_SEARCH_PATH=True" + "-DUSE_BUNDLED_MOLTENVK=OFF" + # Bundles the application folder into a standalone executable, so we cannot devendor libraries + "-DSKIP_POSTPROCESS_BUNDLE=ON" + # Needs xcode so compilation fails with it enabled. We would want the version to be fixed anyways. + # Note: The updater isn't available on linux, so we dont need to disable it there. + "-DENABLE_AUTOUPDATE=OFF" ]; qtWrapperArgs = lib.optionals stdenv.isLinux [ @@ -50,37 +133,51 @@ stdenv.mkDerivation rec { "--set QT_QPA_PLATFORM xcb" ]; - # - Allow Dolphin to use nix-provided libraries instead of building them - postPatch = '' - sed -i -e 's,DISTRIBUTOR "None",DISTRIBUTOR "NixOS",g' CMakeLists.txt - '' + lib.optionalString stdenv.isDarwin '' - sed -i -e 's,if(NOT APPLE),if(true),g' CMakeLists.txt - sed -i -e 's,if(LIBUSB_FOUND AND NOT APPLE),if(LIBUSB_FOUND),g' \ - CMakeLists.txt + # Use nix-provided libraries instead of submodules + postPatch = lib.optionalString stdenv.isDarwin '' + substituteInPlace CMakeLists.txt \ + --replace "if(NOT APPLE)" "if(true)" \ + --replace "if(LIBUSB_FOUND AND NOT APPLE)" "if(LIBUSB_FOUND)" ''; postInstall = lib.optionalString stdenv.hostPlatform.isLinux '' install -D $src/Data/51-usb-device.rules $out/etc/udev/rules.d/51-usb-device.rules + '' + lib.optionalString stdenv.hostPlatform.isDarwin '' + # Only gets installed automatically if the standalone executable is used + mkdir -p $out/Applications + cp -r ./Binaries/Dolphin.app $out/Applications + ln -s $out/Applications/Dolphin.app/Contents/MacOS/Dolphin $out/bin ''; + passthru = { + tests.version = testers.testVersion { + package = dolphin-emu-beta; + command = "dolphin-emu-nogui --version"; + }; - passthru.updateScript = writeScript "dolphin-update-script" '' - #!/usr/bin/env nix-shell - #!nix-shell -i bash -p curl jq common-updater-scripts - set -eou pipefail - json="$(curl -s https://dolphin-emu.org/update/latest/beta)" - version="$(jq -r '.shortrev' <<< "$json")" - rev="$(jq -r '.hash' <<< "$json")" - update-source-version dolphin-emu-beta "$version" --rev="$rev" - ''; + updateScript = writeShellScript "dolphin-update-script" '' + set -eou pipefail + export PATH=${lib.makeBinPath [ curl jq common-updater-scripts ]} + + json="$(curl -s https://dolphin-emu.org/update/latest/beta)" + version="$(jq -r '.shortrev' <<< "$json")" + rev="$(jq -r '.hash' <<< "$json")" + update-source-version dolphin-emu-beta "$version" --rev="$rev" + ''; + }; meta = with lib; { homepage = "https://dolphin-emu.org"; description = "Gamecube/Wii/Triforce emulator for x86_64 and ARMv8"; - license = licenses.gpl2Plus; - maintainers = with maintainers; [ MP2E ashkitten xfix ]; + mainProgram = "Dolphin"; branch = "master"; - broken = stdenv.isDarwin; + license = licenses.gpl2Plus; platforms = platforms.unix; + maintainers = with maintainers; [ + MP2E + ashkitten + xfix + ivar + ]; }; } diff --git a/pkgs/applications/emulators/dolphin-emu/minizip-external-missing-include.patch b/pkgs/applications/emulators/dolphin-emu/minizip-external-missing-include.patch new file mode 100644 index 0000000000000..7da013ecd8f69 --- /dev/null +++ b/pkgs/applications/emulators/dolphin-emu/minizip-external-missing-include.patch @@ -0,0 +1,18 @@ +commit 5e0cb8066fb1653399c54e93e42375295c2562bd +Author: Ivar Scholten <ivar.scholten@protonmail.com> +Date: Fri Sep 9 14:27:55 2022 +0200 + + Externals/minizip: add missing include to CheckFunctionExists + +diff --git a/Externals/minizip/CMakeLists.txt b/Externals/minizip/CMakeLists.txt +index c3d7c5512e..f59f8b295c 100644 +--- a/Externals/minizip/CMakeLists.txt ++++ b/Externals/minizip/CMakeLists.txt +@@ -60,6 +60,7 @@ if (HAVE_INTTYPES_H) + target_compile_definitions(minizip PRIVATE HAVE_INTTYPES_H) + endif() + ++include(CheckFunctionExists) + check_function_exists(fseeko HAVE_FSEEKO) + if (NOT HAVE_FSEEKO) + target_compile_definitions(minizip PRIVATE NO_FSEEKO) diff --git a/pkgs/applications/emulators/pcsx2/default.nix b/pkgs/applications/emulators/pcsx2/default.nix index a4e99b0515bc1..34eba5ed78195 100644 --- a/pkgs/applications/emulators/pcsx2/default.nix +++ b/pkgs/applications/emulators/pcsx2/default.nix @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { pname = "pcsx2"; - version = "1.7.3165"; + version = "1.7.3331"; # nixpkgs-update: no auto update src = fetchFromGitHub { @@ -40,7 +40,7 @@ stdenv.mkDerivation rec { repo = "pcsx2"; fetchSubmodules = true; rev = "v${version}"; - hash = "sha256-FdLmLZLpS8zPmHVn4k0nE6vS/omYVIOal9ej0h3bE/Y="; + hash = "sha256-0RcmBMxKj/gnkNEjn2AUSSO1DzyNSf1lOZWPSUq6764="; }; cmakeFlags = [ @@ -79,13 +79,9 @@ stdenv.mkDerivation rec { zlib ]; - # Wayland doesn't seem to work right now (crashes when booting a game). - # Try removing `--prefix GDK_BACKEND : x11` on the next update. - # (This may be solved when the project finshes migrating to Qt) preFixup = '' gappsWrapperArgs+=( --prefix LD_LIBRARY_PATH : ${lib.makeLibraryPath [ vulkan-loader ]} - --prefix GDK_BACKEND : x11 ) ''; diff --git a/pkgs/applications/misc/mangal/default.nix b/pkgs/applications/misc/mangal/default.nix new file mode 100644 index 0000000000000..e97008ab36cf9 --- /dev/null +++ b/pkgs/applications/misc/mangal/default.nix @@ -0,0 +1,39 @@ +{ lib, stdenv, buildGoModule, fetchFromGitHub, installShellFiles }: + +buildGoModule rec { + pname = "mangal"; + version = "3.10.0"; + + src = fetchFromGitHub { + owner = "metafates"; + repo = pname; + rev = "v${version}"; + hash = "sha256-rWj9CknWNI6SSh0AwaPpj5TxHQzkAmaAhWW7kze3xiY="; + }; + + proxyVendor = true; + vendorSha256 = "sha256-ZgeG8S78/yS9KfEK1bZ3VlQGmZPBo9TXLQLz8rXOEGo="; + + ldflags = [ "-s" "-w" ]; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = lib.optionalString (stdenv.hostPlatform == stdenv.buildPlatform) '' + # Mangal creates a config file in the folder ~/.config/mangal and fails if not possible + export MANGAL_CONFIG_PATH=`mktemp -d` + installShellCompletion --cmd mangal \ + --bash <($out/bin/mangal completion bash) \ + --zsh <($out/bin/mangal completion zsh) \ + --fish <($out/bin/mangal completion fish) + ''; + + doCheck = false; # test fail because of sandbox + + meta = with lib; { + description = + "A fancy CLI app written in Go which scrapes, downloads and packs manga into different formats"; + homepage = "https://github.com/metafates/mangal"; + license = licenses.mit; + maintainers = [ maintainers.bertof ]; + }; +} diff --git a/pkgs/applications/misc/pdfarranger/default.nix b/pkgs/applications/misc/pdfarranger/default.nix index 65d8576aca405..21075dcf5c566 100644 --- a/pkgs/applications/misc/pdfarranger/default.nix +++ b/pkgs/applications/misc/pdfarranger/default.nix @@ -5,13 +5,13 @@ python3Packages.buildPythonApplication rec { pname = "pdfarranger"; - version = "1.9.0"; + version = "1.9.1"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "refs/tags/${version}"; - sha256 = "sha256-T7Uo4WZSmSwMHzi8jWX/fw9ZsNKF+SZFy8O2NeD6R7o="; + sha256 = "sha256-VMFkZsFx2pN0IrWTdc9OqkdQwuk6b4Ay4zsvN9HTHug="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/misc/streamdeck-ui/default.nix b/pkgs/applications/misc/streamdeck-ui/default.nix index 141652e63d69e..be98b3713867a 100644 --- a/pkgs/applications/misc/streamdeck-ui/default.nix +++ b/pkgs/applications/misc/streamdeck-ui/default.nix @@ -11,13 +11,13 @@ python3Packages.buildPythonApplication rec { pname = "streamdeck-ui"; - version = "2.0.4"; + version = "2.0.6"; src = fetchFromGitHub { repo = pname; owner = "timothycrosley"; rev = "v${version}"; - hash = "sha256-NV4BkHEgfxIOuLfmn0vcPNqivmHLD6v7jLdLZgnrb0Q="; + sha256 = "sha256-5dk+5oefg5R68kv038gsZ2p5ixmpj/vBLBp/V7Sdos8="; }; desktopItems = [ (makeDesktopItem { @@ -33,11 +33,7 @@ python3Packages.buildPythonApplication rec { postInstall = let udevRules = '' - SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="0060", TAG+="uaccess" - SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="0063", TAG+="uaccess" - SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="006c", TAG+="uaccess" - SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="006d", TAG+="uaccess" - SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", ATTRS{idProduct}=="0080", TAG+="uaccess" + SUBSYSTEM=="usb", ATTRS{idVendor}=="0fd9", TAG+="uaccess" ''; in '' diff --git a/pkgs/applications/networking/cluster/atmos/default.nix b/pkgs/applications/networking/cluster/atmos/default.nix index 64b39b2ddaeba..ef7c3787bdc92 100644 --- a/pkgs/applications/networking/cluster/atmos/default.nix +++ b/pkgs/applications/networking/cluster/atmos/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "atmos"; - version = "1.8.0"; + version = "1.8.2"; src = fetchFromGitHub { owner = "cloudposse"; repo = pname; rev = "v${version}"; - sha256 = "sha256-Jt8/sB6cpxNr0Mcp0+KrwxQAicOHHRGnHXLruBSvZ4M="; + sha256 = "sha256-rDbnny/qRU31ciAXKLGLXS3FhgOpxmkLT4oatYCbt9g="; }; - vendorSha256 = "sha256-d2Eod1AK6Ei5Az9wPHVqij8K4CVj7Ptewd3dBJ9Wt3o="; + vendorSha256 = "sha256-Kfv3RlH80E/9yf/rvnY5vljaRr4cH5AhgXQn54x72Ds="; ldflags = [ "-s" "-w" "-X github.com/cloudposse/atmos/cmd.Version=v${version}" ]; diff --git a/pkgs/applications/networking/cluster/kubebuilder/default.nix b/pkgs/applications/networking/cluster/kubebuilder/default.nix index bf469c0f4b566..dd6e71a58abe3 100644 --- a/pkgs/applications/networking/cluster/kubebuilder/default.nix +++ b/pkgs/applications/networking/cluster/kubebuilder/default.nix @@ -5,6 +5,9 @@ , git , go , gnumake +, installShellFiles +, testers +, kubebuilder }: buildGoModule rec { @@ -17,32 +20,47 @@ buildGoModule rec { rev = "v${version}"; sha256 = "sha256-nLjmz9OakBLTBWdYA6czgtJmCuP96abNwLcLZo+yZ48="; }; + vendorSha256 = "sha256-xljLDwubwr6rZ/ZpW9/WithClaMo88ivlBhWFb0iAvo="; subPackages = ["cmd"]; + allowGoReference = true; + ldflags = [ "-X main.kubeBuilderVersion=v${version}" "-X main.goos=${go.GOOS}" "-X main.goarch=${go.GOARCH}" - "-X main.gitCommit=v${version}" - "-X main.buildDate=v${version}" + "-X main.gitCommit=unknown" + "-X main.buildDate=unknown" ]; - doCheck = true; + nativeBuildInputs = [ + makeWrapper + git + installShellFiles + ]; postInstall = '' mv $out/bin/cmd $out/bin/kubebuilder wrapProgram $out/bin/kubebuilder \ --prefix PATH : ${lib.makeBinPath [ go gnumake ]} + + installShellCompletion --cmd kubebuilder \ + --bash <($out/bin/kubebuilder completion bash) \ + --fish <($out/bin/kubebuilder completion fish) \ + --zsh <($out/bin/kubebuilder completion zsh) ''; - allowGoReference = true; - nativeBuildInputs = [ makeWrapper git ]; + passthru.tests.version = testers.testVersion { + command = "${kubebuilder}/bin/kubebuilder version"; + package = kubebuilder; + version = "v${version}"; + }; meta = with lib; { - homepage = "https://github.com/kubernetes-sigs/kubebuilder"; description = "SDK for building Kubernetes APIs using CRDs"; + homepage = "https://github.com/kubernetes-sigs/kubebuilder"; license = licenses.asl20; maintainers = with maintainers; [ cmars ]; }; diff --git a/pkgs/applications/networking/instant-messengers/fractal-next/default.nix b/pkgs/applications/networking/instant-messengers/fractal-next/default.nix index f1b8b0a9e9c76..5613fbc899b44 100644 --- a/pkgs/applications/networking/instant-messengers/fractal-next/default.nix +++ b/pkgs/applications/networking/instant-messengers/fractal-next/default.nix @@ -23,19 +23,19 @@ stdenv.mkDerivation rec { pname = "fractal-next"; - version = "unstable-2022-09-09"; + version = "5-alpha1"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "GNOME"; repo = "fractal"; - rev = "5f0a4b48a745ccce202d14e7d02e14f51598fb42"; - hash = "sha256-7s2ytHpM5pZ0dhnVMA8KDWIBaSWds7t9GB6Wav+0dQA="; + rev = version; + hash = "sha256-gHMfBGrq3HiGeqHx2knuc9LomgIW9QA9fCSCcQncvz0="; }; cargoDeps = rustPlatform.fetchCargoTarball { inherit src; - hash = "sha256-CJD9YmL06ELR3X/gIrsVCpDyJnWPbH/JF4HlXvWjiZ8="; + hash = "sha256-fTETUD/OaOati5HvNxto5Cw26wMclt6mxPLm4cyE3+0="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix index e33ef517088ae..251c77951321e 100644 --- a/pkgs/applications/office/gnucash/default.nix +++ b/pkgs/applications/office/gnucash/default.nix @@ -26,12 +26,12 @@ stdenv.mkDerivation rec { pname = "gnucash"; - version = "4.11"; + version = "4.12"; # raw source code doesn't work out of box; fetchFromGitHub not usable src = fetchurl { url = "https://github.com/Gnucash/gnucash/releases/download/${version}/${pname}-${version}.tar.bz2"; - hash = "sha256-+BTt4w174N7Ar7KujQNii5rjTISLaDEuTFre2UwQKxk="; + hash = "sha256-zIwFGla4u0M1ZtbiiQ31nz2JWjlcjPUkbBtygQLOEK4="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/science/biology/last/default.nix b/pkgs/applications/science/biology/last/default.nix index f3c145ec7f455..0b5b8bb5059d0 100644 --- a/pkgs/applications/science/biology/last/default.nix +++ b/pkgs/applications/science/biology/last/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "last"; - version = "1409"; + version = "1411"; src = fetchFromGitLab { owner = "mcfrith"; repo = "last"; rev = version; - sha256 = "sha256-AFK0va1HonSWJdzJLdLraiu4LhUCJFgq6qajbbPmHuY="; + sha256 = "sha256-CO3tlFx9NxGplErENG6iFikgE246swPITsVR+nHzsYw="; }; nativeBuildInputs = [ unzip ]; diff --git a/pkgs/applications/science/biology/seqtk/default.nix b/pkgs/applications/science/biology/seqtk/default.nix new file mode 100644 index 0000000000000..4b855f5c0205b --- /dev/null +++ b/pkgs/applications/science/biology/seqtk/default.nix @@ -0,0 +1,39 @@ +{ lib +, stdenv +, fetchFromGitHub +, zlib +, libdeflate +, isa-l +}: + +stdenv.mkDerivation rec { + pname = "seqtk"; + version = "1.3"; + + src = fetchFromGitHub { + owner = "lh3"; + repo = "seqtk"; + rev = "v${version}"; + hash = "sha256-1Hw/lnoFQumuEJg1n2C6vnWkBa+VLiEiDrosghSm360="; + }; + + buildInputs = [ zlib libdeflate isa-l ]; + + makeFlags = [ "CC=cc" ]; + + installPhase = '' + runHook preInstall + + install -Dm755 -t $out/bin seqtk + + runHook postInstall + ''; + + meta = with lib; { + description = "Toolkit for processing sequences in FASTA/Q formats"; + license = licenses.mit; + homepage = "https://github.com/lh3/seqtk"; + platforms = platforms.all; + maintainers = with maintainers; [ bwlang ]; + }; +} diff --git a/pkgs/applications/version-management/got/default.nix b/pkgs/applications/version-management/got/default.nix index a74fe8b098c30..bda8bb2c066a6 100644 --- a/pkgs/applications/version-management/got/default.nix +++ b/pkgs/applications/version-management/got/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "got"; - version = "0.75.1"; + version = "0.76"; src = fetchurl { url = "https://gameoftrees.org/releases/portable/got-portable-${version}.tar.gz"; - sha256 = "sha256-GlEXB89fZPRZAwvUUHcyKCH3Jj5AOvMSHFodsVKepSQ="; + sha256 = "sha256-05VUIHUqXnES4CmgopzQ2LQ0uldSffsGF5ExedEO+yA="; }; nativeBuildInputs = [ pkg-config bison ]; diff --git a/pkgs/applications/virtualization/crun/default.nix b/pkgs/applications/virtualization/crun/default.nix index fdf60efbdd111..3bd766e7ae948 100644 --- a/pkgs/applications/virtualization/crun/default.nix +++ b/pkgs/applications/virtualization/crun/default.nix @@ -50,9 +50,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ autoreconfHook go-md2man pkg-config python3 ]; - buildInputs = [ libcap libseccomp systemd yajl ] - # Criu currently only builds on x86_64-linux - ++ lib.optional (lib.elem stdenv.hostPlatform.system criu.meta.platforms) criu; + buildInputs = [ criu libcap libseccomp systemd yajl ]; enableParallelBuilding = true; strictDeps = true; diff --git a/pkgs/build-support/appimage/default.nix b/pkgs/build-support/appimage/default.nix index 17d5bca656692..6d4dbfbe421b0 100644 --- a/pkgs/build-support/appimage/default.nix +++ b/pkgs/build-support/appimage/default.nix @@ -156,11 +156,13 @@ rec { wayland mesa libxkbcommon + vulkan-loader flac freeglut libjpeg libpng12 + libpulseaudio libsamplerate libmikmod libtheora diff --git a/pkgs/build-support/portable-service/default.nix b/pkgs/build-support/portable-service/default.nix new file mode 100644 index 0000000000000..6389e8d66fb1d --- /dev/null +++ b/pkgs/build-support/portable-service/default.nix @@ -0,0 +1,111 @@ +{ pkgs, lib, stdenv }: +/* + Create a systemd portable service image + https://systemd.io/PORTABLE_SERVICES/ + + Example: + pkgs.portableService { + pname = "demo"; + version = "1.0"; + units = [ demo-service demo-socket ]; + } +*/ +{ + # The name and version of the portable service. The resulting image will be + # created in result/$pname_$version.raw + pname +, version + + # Units is a list of derivations for systemd unit files. Those files will be + # copied to /etc/systemd/system in the resulting image. Note that the unit + # names must be prefixed with the name of the portable service. +, units + + # Basic info about the portable service image, used for the generated + # /etc/os-release +, description ? null +, homepage ? null + + # A list of attribute sets {object, symlink}. Symlinks will be created + # in the root filesystem of the image to objects in the nix store. +, symlinks ? [ ] + + # A list of additional derivations to be included in the image as-is. +, contents ? [ ] + + # mksquashfs options +, squashfsTools ? pkgs.squashfsTools +, squash-compression ? "xz -Xdict-size 100%" +, squash-block-size ? "1M" +}: + +let + filterNull = lib.filterAttrs (_: v: v != null); + envFileGenerator = lib.generators.toKeyValue { }; + + rootFsScaffold = + let + os-release-params = { + PORTABLE_ID = pname; + PORTABLE_PRETTY_NAME = description; + HOME_URL = homepage; + ID = "nixos"; + PRETTY_NAME = "NixOS"; + BUILD_ID = "rolling"; + }; + os-release = pkgs.writeText "os-release" + (envFileGenerator (filterNull os-release-params)); + + in + stdenv.mkDerivation { + pname = "root-fs-scaffold"; + inherit version; + + buildCommand = '' + # scaffold a file system layout + mkdir -p $out/etc/systemd/system $out/proc $out/sys $out/dev $out/run \ + $out/tmp $out/var/tmp $out/var/lib $out/var/cache $out/var/log + + # empty files to mount over with host's version + touch $out/etc/resolv.conf $out/etc/machine-id + + # required for portable services + cp ${os-release} $out/etc/os-release + '' + # units **must** be copied to /etc/systemd/system/ + + (lib.concatMapStringsSep "\n" (u: "cp ${u} $out/etc/systemd/system/${u.name};") units) + + (lib.concatMapStringsSep "\n" + ({ object, symlink }: '' + mkdir -p $(dirname $out/${symlink}); + ln -s ${object} $out/${symlink}; + '') + symlinks) + ; + }; +in + +assert lib.assertMsg (lib.all (u: lib.hasPrefix pname u.name) units) "Unit names must be prefixed with the service name"; + +stdenv.mkDerivation { + pname = "${pname}-img"; + inherit version; + + nativeBuildInputs = [ squashfsTools ]; + closureInfo = pkgs.closureInfo { rootPaths = [ rootFsScaffold ] ++ contents; }; + + buildCommand = '' + mkdir -p nix/store + for i in $(< $closureInfo/store-paths); do + cp -a "$i" "''${i:1}" + done + + mkdir -p $out + # the '.raw' suffix is mandatory by the portable service spec + mksquashfs nix ${rootFsScaffold}/* $out/"${pname}_${version}.raw" \ + -quiet -noappend \ + -exit-on-error \ + -keep-as-directory \ + -all-root -root-mode 755 \ + -b ${squash-block-size} -comp ${squash-compression} + ''; +} diff --git a/pkgs/development/compilers/julia/1.8.nix b/pkgs/development/compilers/julia/1.8.nix new file mode 100644 index 0000000000000..f09e67f1518fa --- /dev/null +++ b/pkgs/development/compilers/julia/1.8.nix @@ -0,0 +1,153 @@ +{ lib +, stdenv +, fetchurl +, which +, python3 +, gfortran +, gcc +, cmake +, perl +, gnum4 +, libwhich +, libxml2 +, libunwind +, libgit2 +, curl +, nghttp2 +, mbedtls +, libssh2 +, gmp +, mpfr +, suitesparse +, utf8proc +, zlib +, p7zip +, ncurses +, pcre2 +}: + +stdenv.mkDerivation rec { + pname = "julia"; + version = "1.8.1"; + + src = fetchurl { + url = "https://github.com/JuliaLang/julia/releases/download/v${version}/julia-${version}-full.tar.gz"; + sha256 = "sha256-MeRlX0s3fnPW9YPFOdAiHte0gKPqCRgz0ABTFhhcW2E="; + }; + + patches = + let + path = name: "https://raw.githubusercontent.com/archlinux/svntogit-community/6fd126d089d44fdc875c363488a7c7435a223cec/trunk/${name}"; + in + [ + (fetchurl { + url = path "julia-hardcoded-libs.patch"; + sha256 = "sha256-kppSpVA7bRohd0wXDs4Jgct9ocHnpbeiiSz7ElFom1U="; + }) + (fetchurl { + url = path "julia-libgit-1.4.patch"; + sha256 = "sha256-rcVXYoGpAxwAbAl33n0/Rkwsi8ZJz8cnHQ5CalUx+1o="; + }) + (fetchurl { + url = path "julia-libunwind-1.6.patch"; + sha256 = "sha256-zqMh9+Fjgd15XuINe9Xtpk+bRTwB0T6WCWLrJyOQfiQ="; + }) + ./patches/1.8/0001-skip-symlink-system-libraries.patch + ./patches/1.8/0002-skip-building-doc.patch + ./patches/1.8/0003-skip-failing-tests.patch + ./patches/1.8/0004-ignore-absolute-path-when-loading-library.patch + ]; + + nativeBuildInputs = [ + which + python3 + gfortran + cmake + perl + gnum4 + libwhich + ]; + + buildInputs = [ + libxml2 + libunwind + libgit2 + curl + nghttp2 + mbedtls + libssh2 + gmp + mpfr + utf8proc + zlib + p7zip + pcre2 + ]; + + JULIA_RPATH = lib.makeLibraryPath (buildInputs ++ [ stdenv.cc.cc gfortran.cc ncurses ]); + + dontUseCmakeConfigure = true; + + postPatch = '' + patchShebangs . + ''; + + LDFLAGS = "-Wl,-rpath,${JULIA_RPATH}"; + + makeFlags = [ + "prefix=$(out)" + "USE_BINARYBUILDER=0" + "USE_SYSTEM_CSL=1" + "USE_SYSTEM_LLVM=0" # a patched version is required + "USE_SYSTEM_LIBUNWIND=1" + "USE_SYSTEM_PCRE=1" + "USE_SYSTEM_LIBM=0" + "USE_SYSTEM_OPENLIBM=0" + "USE_SYSTEM_DSFMT=0" # not available in nixpkgs + "USE_SYSTEM_LIBBLASTRAMPOLINE=0" # not available in nixpkgs + "USE_SYSTEM_BLAS=0" # test failure + "USE_SYSTEM_LAPACK=0" # test failure + "USE_SYSTEM_GMP=1" + "USE_SYSTEM_MPFR=1" + "USE_SYSTEM_LIBSUITESPARSE=0" # test failure + "USE_SYSTEM_LIBUV=0" # a patched version is required + "USE_SYSTEM_UTF8PROC=1" + "USE_SYSTEM_MBEDTLS=1" + "USE_SYSTEM_LIBSSH2=1" + "USE_SYSTEM_NGHTTP2=1" + "USE_SYSTEM_CURL=1" + "USE_SYSTEM_LIBGIT2=1" + "USE_SYSTEM_PATCHELF=1" + "USE_SYSTEM_LIBWHICH=1" + "USE_SYSTEM_ZLIB=1" + "USE_SYSTEM_P7ZIP=1" + + "PCRE_INCL_PATH=${pcre2.dev}/include/pcre2.h" + ]; + + doInstallCheck = true; + installCheckTarget = "testall"; + + preInstallCheck = '' + export HOME="$TMPDIR" + export JULIA_TEST_USE_MULTIPLE_WORKERS="true" + ''; + + dontStrip = true; + + postFixup = '' + for file in $out/bin/julia $out/lib/libjulia.so $out/lib/julia/libjulia-internal.so $out/lib/julia/libjulia-codegen.so; do + patchelf --set-rpath "$out/lib:$out/lib/julia:${JULIA_RPATH}" $file + done + ''; + + enableParallelBuilding = true; + + meta = with lib; { + description = "High-level performance-oriented dynamical language for technical computing"; + homepage = "https://julialang.org/"; + license = licenses.mit; + maintainers = with maintainers; [ nickcao ]; + platforms = [ "x86_64-linux" "aarch64-linux" ]; + }; +} diff --git a/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch b/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch new file mode 100644 index 0000000000000..5a1fdc1e75fd5 --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.8/0001-skip-symlink-system-libraries.patch @@ -0,0 +1,32 @@ +From f342b6bfab5eee9c7fea9ddc8804d9a5ff6953eb Mon Sep 17 00:00:00 2001 +From: Nick Cao <nickcao@nichi.co> +Date: Tue, 20 Sep 2022 18:42:08 +0800 +Subject: [PATCH 1/4] skip symlink system libraries + +--- + base/Makefile | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/base/Makefile b/base/Makefile +index 23a9c40..12f92aa 100644 +--- a/base/Makefile ++++ b/base/Makefile +@@ -181,7 +181,6 @@ $$(build_private_libdir)/$$(libname_$2): + fi; \ + fi + ifneq ($$(USE_SYSTEM_$1),0) +-SYMLINK_SYSTEM_LIBRARIES += symlink_$2 + endif + endef + +@@ -265,7 +264,6 @@ $(build_private_libdir)/libLLVM.$(SHLIB_EXT): + ln -sf "$$REALPATH" "$@" + ifneq ($(USE_SYSTEM_LLVM),0) + ifneq ($(USE_LLVM_SHLIB),0) +-SYMLINK_SYSTEM_LIBRARIES += symlink_libLLVM + endif + endif + +-- +2.37.2 + diff --git a/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch b/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch new file mode 100644 index 0000000000000..8b3da95ba915e --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.8/0002-skip-building-doc.patch @@ -0,0 +1,25 @@ +From 6a7723be33261cdc302e0f7bdb37fb50d30cc5fc Mon Sep 17 00:00:00 2001 +From: Nick Cao <nickcao@nichi.co> +Date: Tue, 20 Sep 2022 18:42:31 +0800 +Subject: [PATCH 2/4] skip building doc + +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index d38311d..a775d36 100644 +--- a/Makefile ++++ b/Makefile +@@ -227,7 +227,7 @@ define stringreplace + endef + + +-install: $(build_depsbindir)/stringreplace $(BUILDROOT)/doc/_build/html/en/index.html ++install: $(build_depsbindir)/stringreplace + ifeq ($(BUNDLE_DEBUG_LIBS),1) + @$(MAKE) $(QUIET_MAKE) all + else +-- +2.37.2 + diff --git a/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch b/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch new file mode 100644 index 0000000000000..2d6745c8a2154 --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.8/0003-skip-failing-tests.patch @@ -0,0 +1,25 @@ +From a57c582eabc4703ed627b32f7f11893db9676fb6 Mon Sep 17 00:00:00 2001 +From: Nick Cao <nickcao@nichi.co> +Date: Tue, 20 Sep 2022 18:42:59 +0800 +Subject: [PATCH 3/4] skip failing tests + +--- + test/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/Makefile b/test/Makefile +index 24e137a..0e82acf 100644 +--- a/test/Makefile ++++ b/test/Makefile +@@ -23,7 +23,7 @@ default: + + $(TESTS): + @cd $(SRCDIR) && \ +- $(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl $@) ++ $(call PRINT_JULIA, $(call spawn,$(JULIA_EXECUTABLE)) --check-bounds=yes --startup-file=no --depwarn=error ./runtests.jl --skip LibGit2_jll --skip MozillaCACerts_jll --skip NetworkOptions --skip nghttp2_jll $@) + + $(addprefix revise-, $(TESTS)): revise-% : + @cd $(SRCDIR) && \ +-- +2.37.2 + diff --git a/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch b/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch new file mode 100644 index 0000000000000..eefde7c6b03bb --- /dev/null +++ b/pkgs/development/compilers/julia/patches/1.8/0004-ignore-absolute-path-when-loading-library.patch @@ -0,0 +1,27 @@ +From a60100f06f48fbb4697aced65175bf3d41185e3e Mon Sep 17 00:00:00 2001 +From: Nick Cao <nickcao@nichi.co> +Date: Tue, 20 Sep 2022 18:43:15 +0800 +Subject: [PATCH 4/4] ignore absolute path when loading library + +--- + cli/loader_lib.c | 4 +--- + 1 file changed, 1 insertion(+), 3 deletions(-) + +diff --git a/cli/loader_lib.c b/cli/loader_lib.c +index 0301b6e..5cbda61 100644 +--- a/cli/loader_lib.c ++++ b/cli/loader_lib.c +@@ -50,9 +50,7 @@ static void * load_library(const char * rel_path, const char * src_dir, int err) + #endif + + char path[2*JL_PATH_MAX + 1] = {0}; +- strncat(path, src_dir, sizeof(path) - 1); +- strncat(path, PATHSEPSTRING, sizeof(path) - 1); +- strncat(path, rel_path, sizeof(path) - 1); ++ strncat(path, basename, sizeof(path) - 1); + + #if defined(_OS_WINDOWS_) + wchar_t wpath[2*JL_PATH_MAX + 1] = {0}; +-- +2.37.2 + diff --git a/pkgs/development/compilers/swi-prolog/default.nix b/pkgs/development/compilers/swi-prolog/default.nix index d53d1426a94b2..80400516fc86a 100644 --- a/pkgs/development/compilers/swi-prolog/default.nix +++ b/pkgs/development/compilers/swi-prolog/default.nix @@ -34,7 +34,7 @@ }: let - version = "8.3.29"; + version = "8.5.17"; packInstall = swiplPath: pack: ''${swiplPath}/bin/swipl -g "pack_install(${pack}, [package_directory(\"${swiplPath}/lib/swipl/pack\"), silent(true), interactive(false)])." -t "halt." ''; @@ -47,7 +47,7 @@ stdenv.mkDerivation { owner = "SWI-Prolog"; repo = "swipl-devel"; rev = "V${version}"; - sha256 = "sha256-2QYY3VDG3dhbv5gtSid4eMYMxhhpggCedJL+RhtbbaU="; + sha256 = "sha256-n1o6eG40DHnmNXuifQC6UFwGzuiL22V++0qRmq1RSzc="; fetchSubmodules = true; }; diff --git a/pkgs/development/coq-modules/mathcomp-analysis/default.nix b/pkgs/development/coq-modules/mathcomp-analysis/default.nix index 19c4e6a5a187f..99c760fce0cec 100644 --- a/pkgs/development/coq-modules/mathcomp-analysis/default.nix +++ b/pkgs/development/coq-modules/mathcomp-analysis/default.nix @@ -1,11 +1,11 @@ -{ coq, mkCoqDerivation, mathcomp, mathcomp-finmap, mathcomp-bigenough, mathcomp-real-closed, - hierarchy-builder, lib, version ? null }: - -with lib; -let mca = mkCoqDerivation { - - namePrefix = [ "coq" "mathcomp" ]; - pname = "analysis"; +{ lib, + mkCoqDerivation, recurseIntoAttrs, + mathcomp, mathcomp-finmap, mathcomp-bigenough, mathcomp-real-closed, + hierarchy-builder, + coqPackages, coq, version ? null }@args: +with builtins // lib; +let + repo = "math-comp"; owner = "math-comp"; release."0.5.3".sha256 = "sha256-1NjFsi5TITF8ZWx1NyppRmi8g6YaoUtTdS9bU/sUe5k="; @@ -20,7 +20,6 @@ let mca = mkCoqDerivation { release."0.3.1".sha256 = "1iad288yvrjv8ahl9v18vfblgqb1l5z6ax644w49w9hwxs93f2k8"; release."0.2.3".sha256 = "0p9mr8g1qma6h10qf7014dv98ln90dfkwn76ynagpww7qap8s966"; - inherit version; defaultVersion = with versions; switch [ coq.version mathcomp.version ] [ { cases = [ (isGe "8.14") (isGe "1.13.0") ]; out = "0.5.3"; } { cases = [ (isGe "8.14") (range "1.13" "1.15") ]; out = "0.5.2"; } @@ -33,21 +32,55 @@ let mca = mkCoqDerivation { { cases = [ (range "8.8" "8.11") (range "1.8" "1.10") ]; out = "0.2.3"; } ] null; - propagatedBuildInputs = - [ mathcomp.ssreflect mathcomp.field - mathcomp-finmap mathcomp-bigenough mathcomp-real-closed ]; - - meta = { - description = "Analysis library compatible with Mathematical Components"; - maintainers = [ maintainers.cohencyril ]; - license = licenses.cecill-c; - }; -}; in -mca.overrideAttrs (o: - let ext = { propagatedBuildInputs = o.propagatedBuildInputs - ++ [ hierarchy-builder ]; }; - in with versions; switch o.version [ - {case = "dev"; out = ext;} - {case = isGe "0.3.4"; out = ext;} - ] {} -) + # list of analysis packages sorted by dependency order + packages = [ "classical" "analysis" ]; + + mathcomp_ = package: let + analysis-deps = map mathcomp_ (head (splitList (pred.equal package) packages)); + pkgpath = if package == "analysis" then "theories" else "${package}"; + pname = "mathcomp-${package}"; + derivation = mkCoqDerivation ({ + inherit version pname defaultVersion release repo owner; + + namePrefix = [ "coq" "mathcomp" ]; + + propagatedBuildInputs = + (if package == "classical" then + [ mathcomp.ssreflect mathcomp.algebra mathcomp-finmap ] + else + [ mathcomp.field mathcomp-bigenough mathcomp-real-closed ]) + ++ [ analysis-deps ]; + + preBuild = '' + cd ${pkgpath} + ''; + + meta = { + description = "Analysis library compatible with Mathematical Components"; + maintainers = [ maintainers.cohencyril ]; + license = licenses.cecill-c; + }; + + passthru = genAttrs packages mathcomp_; + }); + # split packages didn't exist before 0.6, so bulding nothing in that case + patched-derivation1 = derivation.overrideAttrs (o: + optionalAttrs (o.pname != null && o.pname != "mathcomp-analysis" && + o.version != null && o.version != "dev" && versions.isLt "0.6" o.version) + { preBuild = ""; buildPhase = "echo doing nothing"; installPhase = "echo doing nothing"; } + ); + patched-derivation2 = patched-derivation1.overrideAttrs (o: + optionalAttrs (o.pname != null && o.pname == "mathcomp-analysis" && + o.version != null && o.version != "dev" && versions.isLt "0.6" o.version) + { preBuild = ""; } + ); + patched-derivation = patched-derivation2.overrideAttrs (o: + optionalAttrs (o.version != null + && (o.version == "dev" || versions.isGe "0.3.4" o.version)) + { + propagatedBuildInputs = o.propagatedBuildInputs ++ [ hierarchy-builder ]; + } + ); + in patched-derivation; +in +mathcomp_ "analysis" diff --git a/pkgs/development/libraries/ffmpeg/5.nix b/pkgs/development/libraries/ffmpeg/5.nix index b16bd4ddf3813..d09d7ccd1cece 100644 --- a/pkgs/development/libraries/ffmpeg/5.nix +++ b/pkgs/development/libraries/ffmpeg/5.nix @@ -5,8 +5,8 @@ }@args: callPackage ./generic.nix (rec { - version = "5.1.1"; + version = "5.1.2"; branch = version; - sha256 = "sha256-zQ4W+QNCEmbVzN3t97g7nldUrvS596fwbOnkyALwVFs="; + sha256 = "sha256-OaC8yNmFSfFsVwYkZ4JGpqxzbAZs69tAn5UC6RWyLys="; darwinFrameworks = [ Cocoa CoreMedia VideoToolbox ]; } // args) diff --git a/pkgs/development/libraries/quarto/default.nix b/pkgs/development/libraries/quarto/default.nix new file mode 100644 index 0000000000000..38eea0a70f568 --- /dev/null +++ b/pkgs/development/libraries/quarto/default.nix @@ -0,0 +1,68 @@ +{ stdenv +, lib +, pandoc +, esbuild +, deno +, fetchurl +, nodePackages +, rWrapper +, rPackages +, makeWrapper +, python3 +}: + +stdenv.mkDerivation rec { + pname = "quarto"; + version = "1.1.189"; + src = fetchurl { + url = "https://github.com/quarto-dev/quarto-cli/releases/download/v${version}/quarto-${version}-linux-amd64.tar.gz"; + sha256 = "1a3xsgqdccm4ky1xjnin1idpp8gsansskq37c00mrxz1raxn1mi7"; + }; + + nativeBuildInputs = [ + makeWrapper + ]; + + patches = [ + ./fix-deno-path.patch + ]; + + dontStrip = true; + + preFixup = '' + wrapProgram $out/bin/quarto \ + --prefix PATH : ${lib.makeBinPath [ deno ]} \ + --prefix QUARTO_PANDOC : ${pandoc}/bin/pandoc \ + --prefix QUARTO_ESBUILD : ${esbuild}/bin/esbuild \ + --prefix QUARTO_DART_SASS : ${nodePackages.sass}/bin/sass \ + --prefix QUARTO_R : ${rWrapper.override { packages = [ rPackages.rmarkdown]; }}/bin/R \ + --prefix QUARTO_PYTHON : ${python3.withPackages (ps: with ps; [ jupyter ipython ])}/bin/python3 + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin $out/share + + rm -r bin/tools + + mv bin/* $out/bin + mv share/* $out/share + + runHook preInstall + ''; + + meta = with lib; { + description = "Open-source scientific and technical publishing system built on Pandoc"; + longDescription = '' + Quarto is an open-source scientific and technical publishing system built on Pandoc. + Quarto documents are authored using markdown, an easy to write plain text format. + ''; + homepage = "https://quarto.org/"; + changelog = "https://github.com/quarto-dev/quarto-cli/releases/tag/v${version}"; + license = licenses.gpl2Plus; + maintainers = with maintainers; [ mrtarantoga ]; + platforms = [ "x86_64-linux" ]; + sourceProvenance = with sourceTypes; [ binaryNativeCode binaryBytecode ]; + }; +} diff --git a/pkgs/development/libraries/quarto/fix-deno-path.patch b/pkgs/development/libraries/quarto/fix-deno-path.patch new file mode 100644 index 0000000000000..895419712ad83 --- /dev/null +++ b/pkgs/development/libraries/quarto/fix-deno-path.patch @@ -0,0 +1,8 @@ +--- a/bin/quarto ++++ b/bin/quarto +@@ -125,4 +125,4 @@ fi + # Be sure to include any already defined QUARTO_DENO_OPTIONS + QUARTO_DENO_OPTIONS="--unstable --no-config --cached-only --allow-read --allow-write --allow-run --allow-env --allow-net --allow-ffi ${QUARTO_DENO_OPTIONS}" + +-"${QUARTO_DENO}" ${QUARTO_ACTION} ${QUARTO_DENO_OPTIONS} ${QUARTO_DENO_EXTRA_OPTIONS} "${QUARTO_IMPORT_ARGMAP}" "${QUARTO_TARGET}" "$@" ++deno ${QUARTO_ACTION} ${QUARTO_DENO_OPTIONS} ${QUARTO_DENO_EXTRA_OPTIONS} "${QUARTO_IMPORT_ARGMAP}" "${QUARTO_TARGET}" "$@" diff --git a/pkgs/development/libraries/science/math/cudnn/extension.nix b/pkgs/development/libraries/science/math/cudnn/extension.nix index 01ec5e4b9b5d2..fae958c31d174 100644 --- a/pkgs/development/libraries/science/math/cudnn/extension.nix +++ b/pkgs/development/libraries/science/math/cudnn/extension.nix @@ -111,6 +111,6 @@ final: prev: let "11.4" = "8.3.2"; "11.5" = "8.3.2"; "11.6" = "8.3.2"; - }.${cudaVersion}; + }.${cudaVersion} or "8.3.2"; in cuDnnPackages diff --git a/pkgs/development/libraries/science/math/tensorrt/extension.nix b/pkgs/development/libraries/science/math/tensorrt/extension.nix index 8e9f64885bad4..b76d35a0d84fe 100644 --- a/pkgs/development/libraries/science/math/tensorrt/extension.nix +++ b/pkgs/development/libraries/science/math/tensorrt/extension.nix @@ -58,6 +58,6 @@ final: prev: let "11.4" = "8.4.0"; "11.5" = "8.4.0"; "11.6" = "8.4.0"; - }.${cudaVersion}; + }.${cudaVersion} or "8.4.0"; in tensorRTPackages diff --git a/pkgs/development/php-packages/phpstan/default.nix b/pkgs/development/php-packages/phpstan/default.nix index 31a823ddff75c..b277c996be2ef 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.8.5"; + version = "1.8.6"; in mkDerivation { inherit pname version; src = fetchurl { url = "https://github.com/phpstan/phpstan/releases/download/${version}/phpstan.phar"; - sha256 = "sha256-4OScF/hdzWA4kT7YZ/ltZdkmUO42YaTTtTfbl9iRr1I="; + sha256 = "sha256-8scUd8BT6u9rqBPoaXozkn6H9PIWF/MWNWT9y8RwPkg="; }; dontUnpack = true; diff --git a/pkgs/development/python-modules/canonicaljson/default.nix b/pkgs/development/python-modules/canonicaljson/default.nix index e5ecff7837f94..feee27e852ec6 100644 --- a/pkgs/development/python-modules/canonicaljson/default.nix +++ b/pkgs/development/python-modules/canonicaljson/default.nix @@ -9,21 +9,26 @@ buildPythonPackage rec { pname = "canonicaljson"; - version = "1.6.2"; - format = "setuptools"; + version = "1.6.3"; + format = "pyproject"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-rwC+jOnFiYV98Xa7lFlPDUOw4CfwJ6jXz4l4/bgZAko="; + hash = "sha256-yll2C8J0qJmg2nWAnWkJrkPlEjOB/W7wQKRNGVLAtEg="; }; propagatedBuildInputs = [ - frozendict simplejson ]; + passthru.optional-dependencies = { + frozendict = [ + frozendict + ]; + }; + checkInputs = [ pytestCheckHook ]; diff --git a/pkgs/development/python-modules/distutils_extra/default.nix b/pkgs/development/python-modules/distutils_extra/default.nix index ffa49fec14df9..9214c3b430a92 100644 --- a/pkgs/development/python-modules/distutils_extra/default.nix +++ b/pkgs/development/python-modules/distutils_extra/default.nix @@ -5,17 +5,20 @@ buildPythonPackage rec { pname = "distutils-extra"; - version = "2.45"; + version = "2.47"; + format = "setuptools"; src = fetchurl { url = "https://salsa.debian.org/python-team/modules/python-distutils-extra/-/archive/${version}/python-${pname}-${version}.tar.bz2"; - sha256 = "1aifizd4nkvdnkwdna7i6xgjcqi1cf228bg8kmnwz67f5rflk3z8"; + hash = "sha256-vIl50yDVt5AW5lteWYqhAPlu8ErroOOJ1N/sfE2fbBU="; }; # Tests are out-dated as the last upstream release is from 2016 doCheck = false; - pythonImportsCheck = [ "DistUtilsExtra" ]; + pythonImportsCheck = [ + "DistUtilsExtra" + ]; meta = with lib; { description = "Enhancements to Python's distutils"; diff --git a/pkgs/development/python-modules/dunamai/default.nix b/pkgs/development/python-modules/dunamai/default.nix index 118c2544314a9..ca23b81eba110 100644 --- a/pkgs/development/python-modules/dunamai/default.nix +++ b/pkgs/development/python-modules/dunamai/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "dunamai"; - version = "1.13.0"; + version = "1.13.1"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "mtkennerly"; repo = "dunamai"; rev = "refs/tags/v${version}"; - sha256 = "sha256-0x1bwu5X1P8f51NeupEQc0eghaqQIp3jb2uwZ0JDbgQ="; + sha256 = "sha256-UoqVfRdwOgxNLY17+dPgYO1GIPw3ZUwE/tiVzHjBxcY="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/fastapi/default.nix b/pkgs/development/python-modules/fastapi/default.nix index 05644d43310f3..8815da5dfdee4 100644 --- a/pkgs/development/python-modules/fastapi/default.nix +++ b/pkgs/development/python-modules/fastapi/default.nix @@ -9,6 +9,8 @@ , databases , flask , httpx +, hatchling +, orjson , passlib , peewee , python-jose @@ -19,18 +21,22 @@ buildPythonPackage rec { pname = "fastapi"; - version = "0.79.1"; - format = "flit"; + version = "0.85.0"; + format = "pyproject"; - disabled = pythonOlder "3.6"; + disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "tiangolo"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-vriEwUcdITKLeIy1++dvsl5Guhtjlk2WZQrprVQsYMc="; + hash = "sha256-mgrw5MQMqFcXExtsu/jW01dMlygfE1GzSqXHI6BG7j4="; }; + nativeBuildInputs = [ + hatchling + ]; + postPatch = '' substituteInPlace pyproject.toml \ --replace "starlette==" "starlette>=" @@ -46,6 +52,7 @@ buildPythonPackage rec { databases flask httpx + orjson passlib peewee python-jose diff --git a/pkgs/development/python-modules/geopandas/default.nix b/pkgs/development/python-modules/geopandas/default.nix index 02601febe6a27..74d48ff8a784d 100644 --- a/pkgs/development/python-modules/geopandas/default.nix +++ b/pkgs/development/python-modules/geopandas/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "geopandas"; - version = "0.11.0"; + version = "0.11.1"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -23,7 +23,7 @@ buildPythonPackage rec { owner = "geopandas"; repo = "geopandas"; rev = "v${version}"; - hash = "sha256-w3F2Uqr/+DdG2Td5YmHdF/LII2y29rQkGK5ooMUcfRk="; + hash = "sha256-vL+zC8q7bif5pheq6pz7XRfzMKLaLQ0xDceTz0imw/E="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/jarowinkler/default.nix b/pkgs/development/python-modules/jarowinkler/default.nix index a8e194f1ddd76..03e32e56af317 100644 --- a/pkgs/development/python-modules/jarowinkler/default.nix +++ b/pkgs/development/python-modules/jarowinkler/default.nix @@ -15,7 +15,7 @@ buildPythonPackage rec { pname = "jarowinkler"; - version = "1.2.1"; + version = "1.2.2"; disabled = pythonOlder "3.6"; @@ -25,7 +25,7 @@ buildPythonPackage rec { owner = "maxbachmann"; repo = "JaroWinkler"; rev = "refs/tags/v${version}"; - hash = "sha256-h9sR8j5avUhY+qpzKZ54O67uTjkk2JuOvMBVaohvbUk="; + hash = "sha256-1jImgRvGQ2x3Swkq43gq0IhgZTzIBtedoqN11hvDGns="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/luftdaten/default.nix b/pkgs/development/python-modules/luftdaten/default.nix index e14db125fba52..db43387df27a8 100644 --- a/pkgs/development/python-modules/luftdaten/default.nix +++ b/pkgs/development/python-modules/luftdaten/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "luftdaten"; - version = "0.7.2"; + version = "0.7.3"; format = "pyproject"; disabled = pythonOlder "3.8"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "home-assistant-ecosystem"; repo = "python-luftdaten"; rev = version; - sha256 = "sha256-tYaY/F4mdO5k+Oj+RkNFWP8xqh1xuDyoAKBFzAhamkA="; + sha256 = "sha256-+wIouOHIYgjIrObos21vzdKFQLhwutorarVUBDxCsaA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/nats-py/default.nix b/pkgs/development/python-modules/nats-py/default.nix index 8637580c39d3b..069cda129d1a4 100644 --- a/pkgs/development/python-modules/nats-py/default.nix +++ b/pkgs/development/python-modules/nats-py/default.nix @@ -1,4 +1,5 @@ { lib +, stdenv , buildPythonPackage , ed25519 , fetchFromGitHub @@ -10,7 +11,7 @@ buildPythonPackage rec { pname = "nats-py"; - version = "2.1.4"; + version = "2.1.7"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -19,7 +20,7 @@ buildPythonPackage rec { owner = "nats-io"; repo = "nats.py"; rev = "refs/tags/v${version}"; - hash = "sha256-gLNMKLkufy/+zS5quH/UYXBIBfkZUyHtB0TiPNEBw6I="; + hash = "sha256-K2ugTwfeYrdBnXFV9SHNQP+fNvUmc1yuy53gpGmmvS0="; }; propagatedBuildInputs = [ @@ -38,21 +39,13 @@ buildPythonPackage rec { ''; disabledTests = [ - # RuntimeError: Event loop is closed - "test_subscribe_no_echo" - "test_publish" - "test_publish_verbose" - "test_fetch_max_waiting_fetch_one" + # AssertionError: assert 5 == 0 + "test_pull_subscribe_limits" "test_fetch_n" - "test_consumer_management" - "test_ephemeral_subscribe" - "test_queue_subscribe_deliver_group" - "test_subscribe_push_bound" - "test_double_acking_subscribe" - "test_flow_control" - "test_ordered_consumer" - "test_ordered_consumer_single_loss" - "test_kv_simple" + "test_subscribe_no_echo" + ] ++ lib.optionals stdenv.isDarwin [ + "test_subscribe_iterate_next_msg" + "test_buf_size_force_flush_timeout" ]; pythonImportsCheck = [ diff --git a/pkgs/development/python-modules/pyunifiprotect/default.nix b/pkgs/development/python-modules/pyunifiprotect/default.nix index 03070e5a33749..60a010aa0b057 100644 --- a/pkgs/development/python-modules/pyunifiprotect/default.nix +++ b/pkgs/development/python-modules/pyunifiprotect/default.nix @@ -3,6 +3,7 @@ , aiohttp , aioshutil , buildPythonPackage +, dateparser , fetchFromGitHub , ipython , orjson @@ -27,7 +28,7 @@ buildPythonPackage rec { pname = "pyunifiprotect"; - version = "4.2.0"; + version = "4.3.3"; format = "pyproject"; disabled = pythonOlder "3.9"; @@ -36,13 +37,12 @@ buildPythonPackage rec { owner = "briis"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-DBOPHeSEdM6cev2BZs1AwXmzNPVsekNklu9c+KhECiI="; + hash = "sha256-77vBKca4S0XEa5O4ntuBW8uEwVig7IBH6BX3QEmvHWc="; }; postPatch = '' substituteInPlace pyproject.toml \ - --replace "--cov=pyunifiprotect --cov-append" "" - substituteInPlace setup.cfg \ + --replace "--cov=pyunifiprotect --cov-append" "" \ --replace "pydantic!=1.9.1" "pydantic" ''; @@ -50,6 +50,7 @@ buildPythonPackage rec { aiofiles aiohttp aioshutil + dateparser orjson packaging pillow @@ -57,7 +58,7 @@ buildPythonPackage rec { pyjwt pytz typer - ]; + ] ++ typer.optional-dependencies.all; passthru.optional-dependencies = { shell = [ diff --git a/pkgs/development/python-modules/pyupgrade/default.nix b/pkgs/development/python-modules/pyupgrade/default.nix index 8c7bf8bbb607a..9bb458151a834 100644 --- a/pkgs/development/python-modules/pyupgrade/default.nix +++ b/pkgs/development/python-modules/pyupgrade/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "pyupgrade"; - version = "2.38.0"; + version = "2.38.1"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "asottile"; repo = pname; rev = "v${version}"; - sha256 = "sha256-dSCo6qB7ON0V2BZoVVaV3X2VMgrjBwZ18wiiDj/+U94="; + sha256 = "sha256-OWV8SdxvAYxkBj/3pPXgnEZ5RS3R+wBWJVMkqcQirEU="; }; checkInputs = [ diff --git a/pkgs/development/python-modules/rq/default.nix b/pkgs/development/python-modules/rq/default.nix index 01c3202767b2c..49c55c5d97348 100644 --- a/pkgs/development/python-modules/rq/default.nix +++ b/pkgs/development/python-modules/rq/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "rq"; - version = "1.11"; + version = "1.11.1"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "rq"; repo = "rq"; rev = "refs/tags/v${version}"; - hash = "sha256-fv+b5WmODaQkd8T+O8MuJ+XVC3dQ5hZwxMHtBBuqQ7Y="; + hash = "sha256-7l/ckkDchs+iRDZLHrm4TYwA9wAJAnw9kYSaAbSo0jY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/rstcheck/default.nix b/pkgs/development/python-modules/rstcheck/default.nix index b5a3ccefc08c2..a3789b97088a9 100644 --- a/pkgs/development/python-modules/rstcheck/default.nix +++ b/pkgs/development/python-modules/rstcheck/default.nix @@ -1,6 +1,5 @@ { lib , buildPythonPackage -, colorama , docutils , fetchFromGitHub , importlib-metadata @@ -9,7 +8,6 @@ , pytestCheckHook , pythonOlder , rstcheck-core -, shellingham , typer , types-docutils , typing-extensions @@ -17,7 +15,7 @@ buildPythonPackage rec { pname = "rstcheck"; - version = "6.0.0.post1"; + version = "6.1.0"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -26,7 +24,7 @@ buildPythonPackage rec { owner = "rstcheck"; repo = pname; rev = "v${version}"; - hash = "sha256-Ljg1cciT9qKL9xtBxQ8OLygDpV/1yR5XiJOzHrLr6xw="; + hash = "sha256-dw/KggiZpKaFZMcTIaSBUhR4oQsZI3iSmEj9Sy80wTs="; }; nativeBuildInputs = [ @@ -34,10 +32,8 @@ buildPythonPackage rec { ]; propagatedBuildInputs = [ - colorama docutils rstcheck-core - shellingham types-docutils typing-extensions pydantic @@ -45,7 +41,7 @@ buildPythonPackage rec { ] ++ lib.optionals (pythonOlder "3.8") [ typing-extensions importlib-metadata - ]; + ] ++ typer.optional-dependencies.all; checkInputs = [ pytestCheckHook @@ -53,6 +49,7 @@ buildPythonPackage rec { postPatch = '' substituteInPlace pyproject.toml \ + --replace 'docutils = ">=0.7, <0.19"' 'docutils = ">=0.7"' \ --replace 'types-docutils = ">=0.18, <0.19"' 'types-docutils = ">=0.18"' ''; diff --git a/pkgs/development/python-modules/siosocks/default.nix b/pkgs/development/python-modules/siosocks/default.nix index d588c2dff6254..a1235b41a76a4 100644 --- a/pkgs/development/python-modules/siosocks/default.nix +++ b/pkgs/development/python-modules/siosocks/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "siosocks"; - version = "0.2.0"; + version = "0.3.0"; format = "setuptools"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "sha256-k2+qTtxkF0rT5LLPW8icePbf9jNopdo9uDp3NPA9SRo="; + sha256 = "sha256-uja79vWhPYOhhTUBIh+XpS4GnrYJy0/XpDXXQjnyHWM="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/skodaconnect/default.nix b/pkgs/development/python-modules/skodaconnect/default.nix index 2d389fa4c5c44..a874e668e475d 100644 --- a/pkgs/development/python-modules/skodaconnect/default.nix +++ b/pkgs/development/python-modules/skodaconnect/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "skodaconnect"; - version = "1.1.23"; + version = "1.1.25"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "lendy007"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-nRGuDcllBAJTGjA0CIPOX/WCO04dYCm+AFC/aYKiBdY="; + hash = "sha256-Zky1PShQE/V2pSJURYTQHnsqdfsD3k7DWMnDidmwfxs="; }; SETUPTOOLS_SCM_PRETEND_VERSION = version; diff --git a/pkgs/development/python-modules/typer/default.nix b/pkgs/development/python-modules/typer/default.nix index 2019a956ce548..35a946c6079b8 100644 --- a/pkgs/development/python-modules/typer/default.nix +++ b/pkgs/development/python-modules/typer/default.nix @@ -1,6 +1,7 @@ { lib , stdenv , buildPythonPackage +, colorama , fetchpatch , fetchPypi , flit-core @@ -23,7 +24,7 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "sha256-LVcgpeY/c+rzHtqhX2q4fzXwaQ+MojMBfX0j10OpHXM="; + hash = "sha256-LVcgpeY/c+rzHtqhX2q4fzXwaQ+MojMBfX0j10OpHXM="; }; nativeBuildInputs = [ @@ -34,14 +35,20 @@ buildPythonPackage rec { click ]; + passthru.optional-dependencies = { + all = [ + colorama + shellingham + rich + ]; + }; + checkInputs = [ - pytestCheckHook - pytest-xdist - pytest-sugar - shellingham - rich coverage # execs coverage in tests - ]; + pytest-sugar + pytest-xdist + pytestCheckHook + ] ++ passthru.optional-dependencies.all; preCheck = '' export HOME=$(mktemp -d); @@ -54,10 +61,12 @@ buildPythonPackage rec { "test_install_completion" ]; - pythonImportsCheck = [ "typer" ]; + pythonImportsCheck = [ + "typer" + ]; meta = with lib; { - description = "Python library for building CLI applications"; + description = "Library for building CLI applications"; homepage = "https://typer.tiangolo.com/"; license = licenses.mit; maintainers = with maintainers; [ winpat ]; diff --git a/pkgs/development/tools/gdlv/default.nix b/pkgs/development/tools/gdlv/default.nix new file mode 100644 index 0000000000000..55e44238b495d --- /dev/null +++ b/pkgs/development/tools/gdlv/default.nix @@ -0,0 +1,25 @@ +{ lib, stdenv, buildGoModule, fetchFromGitHub, OpenGL }: + +buildGoModule rec { + pname = "gdlv"; + version = "1.8.0"; + + src = fetchFromGitHub { + owner = "aarzilli"; + repo = "gdlv"; + rev = "v${version}"; + sha256 = "sha256-G1/Wbz836yfGZ/1ArICrNbWU6eh4SHXDmo4FKkjUszY="; + }; + + vendorSha256 = null; + subPackages = "."; + + buildInputs = lib.optionals stdenv.isDarwin [ OpenGL ]; + + meta = with lib; { + description = "GUI frontend for Delve"; + homepage = "https://github.com/aarzilli/gdlv"; + maintainers = with maintainers; [ mmlb ]; + license = licenses.gpl3; + }; +} diff --git a/pkgs/development/tools/godot/export-templates.nix b/pkgs/development/tools/godot/export-templates.nix index bfcf3e3b3dcae..9d306365f1901 100644 --- a/pkgs/development/tools/godot/export-templates.nix +++ b/pkgs/development/tools/godot/export-templates.nix @@ -10,6 +10,14 @@ godot.overrideAttrs (oldAttrs: rec { mkdir -p "$out/share/godot/templates/${oldAttrs.version}.stable" cp bin/godot.x11.opt.64 $out/share/godot/templates/${oldAttrs.version}.stable/linux_x11_64_release ''; + + # https://docs.godotengine.org/en/stable/development/compiling/optimizing_for_size.html + # Stripping reduces the template size from around 500MB to 40MB for Linux. + # This also impacts the size of the exported games. + # This is added explicitly here because mkDerivation does not automatically + # strip binaries in the template directory. + stripAllList = (oldAttrs.stripAllList or []) ++ [ "share/godot/templates" ]; + outputs = [ "out" ]; meta.description = "Free and Open Source 2D and 3D game engine (export templates)"; diff --git a/pkgs/development/tools/misc/texlab/default.nix b/pkgs/development/tools/misc/texlab/default.nix index 8d41b7488e4d6..cd57796b0bc37 100644 --- a/pkgs/development/tools/misc/texlab/default.nix +++ b/pkgs/development/tools/misc/texlab/default.nix @@ -14,16 +14,16 @@ let isCross = stdenv.hostPlatform != stdenv.buildPlatform; in rustPlatform.buildRustPackage rec { pname = "texlab"; - version = "4.2.2"; + version = "4.3.0"; src = fetchFromGitHub { owner = "latex-lsp"; repo = pname; rev = "refs/tags/v${version}"; - sha256 = "sha256-vGKDngFYh24wwR5nAYEz1GXm+K4sqEBvOp9jsioE0wU="; + sha256 = "sha256-PhzxWLkqsHU32vIZwHzdy86bwIzDDmnxp12PS774P3k="; }; - cargoSha256 = "sha256-s2gQuLkPxKQceGl3II9D6vWisYgL+YCI/YhX+mSyPoo="; + cargoSha256 = "sha256-tH566L0oHnI9mNp1KtJYaBaWCkiAOrtBYkfVSCA2N6w="; outputs = [ "out" ] ++ lib.optional (!isCross) "man"; @@ -48,7 +48,7 @@ in rustPlatform.buildRustPackage rec { # generate the man page + lib.optionalString (!isCross) '' # TexLab builds man page separately in CI: - # https://github.com/latex-lsp/texlab/blob/v4.2.2/.github/workflows/publish.yml#L131-L135 + # https://github.com/latex-lsp/texlab/blob/v4.3.0/.github/workflows/publish.yml#L131-L135 help2man --no-info "$out/bin/texlab" > texlab.1 installManPage texlab.1 ''; diff --git a/pkgs/development/tools/nil/default.nix b/pkgs/development/tools/nil/default.nix index f32f4693ed2ff..fca968c909a71 100644 --- a/pkgs/development/tools/nil/default.nix +++ b/pkgs/development/tools/nil/default.nix @@ -1,26 +1,31 @@ -{ lib, rustPlatform, fetchFromGitHub }: - -let - date = "2022-09-19"; -in +{ lib, rustPlatform, fetchFromGitHub, nix, nix-update-script }: rustPlatform.buildRustPackage rec { pname = "nil"; - version = "unstable-${date}"; + version = "2022-09-26"; src = fetchFromGitHub { owner = "oxalica"; repo = pname; - rev = date; - sha256 = "sha256-WdBRfp0shz6Xhwx0fEUQwROK52XNDTkmhC2xkdT+INA="; + rev = version; + hash = "sha256-2bcAXcJiFV+xKSIy3oD2/TkijV4302jAtTF3xtHiOhU="; }; - cargoSha256 = "sha256-J1CRe5xPl428mwOO4kDxLyPBc0mtzl3iU4mUqW5d4+E="; + cargoHash = "sha256-RL9n2kfWPpu17qudqSx5DkZbgxqVCf2IRBu/koCAqFA="; + + CFG_DATE = version; + CFG_REV = "release"; - CFG_DATE = date; + nativeBuildInputs = [ + (lib.getBin nix) + ]; + + passthru.updateScript = nix-update-script { + attrPath = pname; + }; meta = with lib; { - description = "A language server for Nix Expression Language"; + description = "Yet another language server for Nix"; homepage = "https://github.com/oxalica/nil"; license = with licenses; [ mit asl20 ]; maintainers = with maintainers; [ figsoda oxalica ]; diff --git a/pkgs/development/tools/ruff/default.nix b/pkgs/development/tools/ruff/default.nix new file mode 100644 index 0000000000000..0da37f099cea9 --- /dev/null +++ b/pkgs/development/tools/ruff/default.nix @@ -0,0 +1,33 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, stdenv +, CoreServices +, Security +}: + +rustPlatform.buildRustPackage rec { + pname = "ruff"; + version = "0.0.46"; + + src = fetchFromGitHub { + owner = "charliermarsh"; + repo = pname; + rev = "v${version}"; + sha256 = "10khkcv2bjsxkwn18vkm025v2qxdiymy8gmky09xz37s51bysvlh"; + }; + + cargoSha256 = "sha256-i0fQ8oEbZen9LD1dccXc4pczBMadP1/fk1cwaNKvVYQ="; + + buildInputs = lib.optionals stdenv.isDarwin [ + CoreServices + Security + ]; + + meta = with lib; { + description = "An extremely fast Python linter"; + homepage = "https://github.com/charliermarsh/ruff"; + license = licenses.mit; + maintainers = with maintainers; [ figsoda ]; + }; +} diff --git a/pkgs/development/tools/rust/humility/default.nix b/pkgs/development/tools/rust/humility/default.nix new file mode 100644 index 0000000000000..92e3e78077c1e --- /dev/null +++ b/pkgs/development/tools/rust/humility/default.nix @@ -0,0 +1,32 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, libusb +, libftdi +, cargo-readme +, pkg-config +}: + +rustPlatform.buildRustPackage rec { + pname = "humility"; + version = "unstable-2022-09-15"; + + nativeBuildInputs = [ pkg-config cargo-readme ]; + buildInputs = [ libusb libftdi ]; + + src = fetchFromGitHub { + owner = "oxidecomputer"; + repo = pname; + rev = "d336c21c7b6da7f8203a9331c7657581de2bc6ad"; + sha256 = "sha256-yW7QcxTWbL2YsV2bvfhbqQ2nawlPQbYxBfIGCWo28GY="; + }; + + cargoSha256 = "sha256-UhO8VO3OCfYc8Xq/P+l9f5ZrhOD/TBzSClAeAXLJLlc="; + + meta = with lib; { + description = "Debugger for Hubris"; + homepage = "https://github.com/oxidecomputer/humility"; + license = with licenses; [ mpl20 ]; + maintainers = with maintainers; [ therishidesai ]; + }; +} diff --git a/pkgs/games/unciv/default.nix b/pkgs/games/unciv/default.nix index 522c845c471d8..f61e67635903c 100644 --- a/pkgs/games/unciv/default.nix +++ b/pkgs/games/unciv/default.nix @@ -25,11 +25,11 @@ let in stdenv.mkDerivation rec { pname = "unciv"; - version = "4.2.6"; + version = "4.2.11"; src = fetchurl { url = "https://github.com/yairm210/Unciv/releases/download/${version}/Unciv.jar"; - sha256 = "sha256-AJqD8xF+FIKw34NhcnYCexXRs8aIzL8XDHhs5fGBTn0="; + sha256 = "sha256-bA1rz4PvpcdMSGob+KIdSpyq6ePlLj8l61r0+XclfZY="; }; dontUnpack = true; diff --git a/pkgs/os-specific/darwin/defaultbrowser/default.nix b/pkgs/os-specific/darwin/defaultbrowser/default.nix new file mode 100644 index 0000000000000..be3dcd4177319 --- /dev/null +++ b/pkgs/os-specific/darwin/defaultbrowser/default.nix @@ -0,0 +1,26 @@ +{ lib, stdenv, fetchFromGitHub, Foundation }: + +stdenv.mkDerivation rec { + pname = "defaultbrowser"; + version = "unstable-2020-07-23"; + + src = fetchFromGitHub { + owner = "kerma"; + repo = pname; + rev = "d2860c00dd7fbb5d615232cc819d7d492a6a6ddb"; + sha256 = "sha256-SelUQXoKtShcDjq8uKg3wM0kG2opREa2DGQCDd6IsOQ="; + }; + + makeFlags = [ "CC=cc" "PREFIX=$(out)" ]; + + buildInputs = [ Foundation ]; + + meta = with lib; { + mainProgram = "defaultbrowser"; + description = "Command line tool for getting and setting a default browser (HTTP handler) in Mac OS X"; + homepage = "https://github.com/kerma/defaultbrowser"; + platforms = platforms.darwin; + maintainers = with maintainers; [ Enzime ]; + license = licenses.mit; + }; +} diff --git a/pkgs/servers/mastodon/default.nix b/pkgs/servers/mastodon/default.nix index 17ecdc60ef933..a312ecb76da75 100644 --- a/pkgs/servers/mastodon/default.nix +++ b/pkgs/servers/mastodon/default.nix @@ -52,6 +52,9 @@ stdenv.mkDerivation rec { buildPhase = '' export HOME=$PWD + # This option is needed for openssl-3 compatibility + # Otherwise we encounter this upstream issue: https://github.com/mastodon/mastodon/issues/17924 + export NODE_OPTIONS=--openssl-legacy-provider fixup_yarn_lock ~/yarn.lock yarn config --offline set yarn-offline-mirror ${yarnOfflineCache} yarn install --offline --frozen-lockfile --ignore-engines --ignore-scripts --no-progress diff --git a/pkgs/servers/memcached/default.nix b/pkgs/servers/memcached/default.nix index 61f48824ea45e..9d83d12f3e430 100644 --- a/pkgs/servers/memcached/default.nix +++ b/pkgs/servers/memcached/default.nix @@ -1,12 +1,12 @@ {lib, stdenv, fetchurl, cyrus_sasl, libevent, nixosTests }: stdenv.mkDerivation rec { - version = "1.6.16"; + version = "1.6.17"; pname = "memcached"; src = fetchurl { url = "https://memcached.org/files/${pname}-${version}.tar.gz"; - sha256 = "sha256-MFGpO/HdDDry0OWJ/272UR+HY4WjWxjp/4dB5KGrNNo="; + sha256 = "sha256-IFXjc2E9j8IVKa/58K3OPiO5zgG6BHjTDnlB2fK9EiQ="; }; configureFlags = [ diff --git a/pkgs/servers/monitoring/prometheus/kthxbye.nix b/pkgs/servers/monitoring/prometheus/kthxbye.nix new file mode 100644 index 0000000000000..ab7812081fad9 --- /dev/null +++ b/pkgs/servers/monitoring/prometheus/kthxbye.nix @@ -0,0 +1,39 @@ +{ pkgs +, lib +, buildGoModule +, fetchFromGitHub +, nixosTests +}: + +buildGoModule rec { + pname = "kthxbye"; + version = "0.15"; + + src = fetchFromGitHub rec { + owner = "prymitive"; + repo = "kthxbye"; + rev = "v${version}"; + hash = "sha256-N1MzutjzLk9MnE1b7dKRsiS7LL4Nb61+NpmjTBPGohI="; + }; + + vendorHash = "sha256-PtINxblqX/wxJyN42mS+hmwMy0lCd6FcQgmBnxTUdcc="; + + buildPhase = '' + make -j$NIX_BUILD_CORES + ''; + + installPhase = '' + install -Dm755 ./kthxbye -t $out/bin + ''; + + passthru.tests = { + kthxbye = nixosTests.kthxbye; + }; + + meta = with lib; { + description = "Prometheus Alertmanager alert acknowledgement management daemon"; + homepage = "https://github.com/prymitive/kthxbye"; + license = licenses.asl20; + maintainers = with maintainers; [ nukaduka ]; + }; +} diff --git a/pkgs/tools/admin/awscli/default.nix b/pkgs/tools/admin/awscli/default.nix index df3953b030fd9..92f166c9cfbf7 100644 --- a/pkgs/tools/admin/awscli/default.nix +++ b/pkgs/tools/admin/awscli/default.nix @@ -90,6 +90,7 @@ with py.pkgs; buildPythonApplication rec { homepage = "https://aws.amazon.com/cli/"; description = "Unified tool to manage your AWS services"; license = licenses.asl20; + mainProgram = "aws"; maintainers = with maintainers; [ ]; }; } diff --git a/pkgs/tools/backup/discordchatexporter-cli/default.nix b/pkgs/tools/backup/discordchatexporter-cli/default.nix index ba93488625e45..33b072ddcb151 100644 --- a/pkgs/tools/backup/discordchatexporter-cli/default.nix +++ b/pkgs/tools/backup/discordchatexporter-cli/default.nix @@ -8,13 +8,13 @@ buildDotnetModule rec { pname = "discordchatexporter-cli"; - version = "2.36"; + version = "2.36.1"; src = fetchFromGitHub { owner = "tyrrrz"; repo = "discordchatexporter"; rev = version; - sha256 = "0PHTW1fo+bp2OwyNeUfBXMn+aVWQc4mc+T6BEzG/gDA="; + sha256 = "svBVXny8ZsZnXG5cDPDKlR2dNhPzPOW4VGaOZkLrRNA="; }; projectFile = "DiscordChatExporter.Cli/DiscordChatExporter.Cli.csproj"; diff --git a/pkgs/tools/misc/3mux/default.nix b/pkgs/tools/misc/3mux/default.nix index d91a52ddd3e9a..31787467525fb 100644 --- a/pkgs/tools/misc/3mux/default.nix +++ b/pkgs/tools/misc/3mux/default.nix @@ -13,9 +13,10 @@ buildGoModule rec { patches = [ # Fix the build for Darwin when building with Go 1.18. + # https://github.com/aaronjanse/3mux/pull/127 (fetchpatch { name = "darwin-go-1.18-fix.patch"; - url = "https://github.com/aaronjanse/3mux/pull/127/commits/91aed826c50f75a5175b63c72a1fb6a4ad57a008.patch"; + url = "https://github.com/aaronjanse/3mux/commit/91aed826c50f75a5175b63c72a1fb6a4ad57a008.patch"; sha256 = "sha256-MOPAyWAYYWrlCCgw1rBaNmHZO9oTIpIQwLJcs0aY/m8="; }) ]; diff --git a/pkgs/tools/misc/markdown-anki-decks/default.nix b/pkgs/tools/misc/markdown-anki-decks/default.nix index 62c8ca86e6f08..d035c9db73177 100644 --- a/pkgs/tools/misc/markdown-anki-decks/default.nix +++ b/pkgs/tools/misc/markdown-anki-decks/default.nix @@ -4,13 +4,12 @@ python3.pkgs.buildPythonApplication rec { pname = "markdown-anki-decks"; - version = "1.0.0"; - + version = "1.1.1"; format = "pyproject"; src = python3.pkgs.fetchPypi { inherit pname version; - sha256 = "R6T8KOHMb1Neg/RG5JQl9+7LxOkAoZL0L5wvVaqm9O0="; + hash = "sha256-SvKjjE629OwxWsPo2egGf2K6GzlWAYYStarHhA4Ex0w="; }; nativeBuildInputs = with python3.pkgs; [ @@ -18,31 +17,30 @@ python3.pkgs.buildPythonApplication rec { ]; propagatedBuildInputs = with python3.pkgs; [ - genanki - typer - colorama - shellingham beautifulsoup4 + genanki markdown python-frontmatter - ]; + typer + ] ++ typer.optional-dependencies.all; postPatch = '' - # No API changes. substituteInPlace pyproject.toml \ - --replace 'python-frontmatter = "^0.5.0"' 'python-frontmatter = "^1.0.0"' \ - --replace 'genanki = "^0.10.1"' 'genanki = "*"' \ - --replace 'typer = "^0.3.2"' 'typer = "^0.4.0"' + --replace 'typer = "^0.4.0"' 'typer = "*"' ''; # No tests available on Pypi and there is only a failing version assertion test in the repo. doCheck = false; + pythonImportsCheck = [ + "markdown_anki_decks" + ]; + meta = with lib; { - description = "Simple program to convert markdown files into anki decks"; - maintainers = with maintainers; [ jtojnar ]; + description = "Tool to convert Markdown files into Anki Decks"; homepage = "https://github.com/lukesmurray/markdown-anki-decks"; license = licenses.mit; + maintainers = with maintainers; [ jtojnar ]; platforms = platforms.unix; }; } diff --git a/pkgs/tools/misc/plantuml/default.nix b/pkgs/tools/misc/plantuml/default.nix index 126d58cd0ab2b..f023c58bd0e0c 100644 --- a/pkgs/tools/misc/plantuml/default.nix +++ b/pkgs/tools/misc/plantuml/default.nix @@ -1,12 +1,12 @@ { lib, stdenv, fetchurl, makeWrapper, jre, graphviz }: stdenv.mkDerivation rec { - version = "1.2022.7"; + version = "1.2022.8"; pname = "plantuml"; src = fetchurl { url = "https://github.com/plantuml/plantuml/releases/download/v${version}/plantuml-pdf-${version}.jar"; - sha256 = "sha256-GnFueIK4RDGViHmyBtfQqNpId+4ufCsci7c1YCcZjAQ="; + sha256 = "sha256-9K9d7dQnMFTq1zpZU2t0NIhzQVIyk8b6PnI0cRJJ5t0="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/tools/misc/websocat/default.nix b/pkgs/tools/misc/websocat/default.nix index 99714df0e81a1..e2024f623ba92 100644 --- a/pkgs/tools/misc/websocat/default.nix +++ b/pkgs/tools/misc/websocat/default.nix @@ -3,16 +3,16 @@ rustPlatform.buildRustPackage rec { pname = "websocat"; - version = "1.9.0"; + version = "1.11.0"; src = fetchFromGitHub { owner = "vi"; repo = pname; rev = "v${version}"; - sha256 = "sha256-aQWLsdYHmju7tCJfg3a1aOlFYui7qsQ8vJfhyMawXWo="; + sha256 = "sha256-FomP5ykHc5oAA7zF7r+PXHf30KaTmYTmVm6Mwf/tPdQ="; }; - cargoSha256 = "sha256-b/B+K/LMP1XK1QEtFKY4nmy2fAqEmLTN+qL+XlrqA5w="; + cargoSha256 = "sha256-YVI1+WsDMoznRTjnzwlPTdJMRPsQFYtzssoU0sQwQfA="; nativeBuildInputs = [ pkg-config makeWrapper ]; buildInputs = [ openssl ] diff --git a/pkgs/tools/misc/xdg-ninja/default.nix b/pkgs/tools/misc/xdg-ninja/default.nix new file mode 100644 index 0000000000000..e0c59260a454c --- /dev/null +++ b/pkgs/tools/misc/xdg-ninja/default.nix @@ -0,0 +1,36 @@ +{ lib, stdenvNoCC, fetchFromGitHub, makeWrapper, jq, glow }: + +stdenvNoCC.mkDerivation rec { + pname = "xdg-ninja"; + version = "0.2.0.1"; + + src = fetchFromGitHub { + owner = "b3nj5m1n"; + repo = "xdg-ninja"; + rev = "v${version}"; + sha256 = "sha256-ZyqxMlyCB8gEsZTVrxgLdW/mQ/4xeTHTK+lDKIzYs6I="; + }; + + nativeBuildInputs = [ makeWrapper ]; + + installPhase = '' + runHook preInstall + install -Dm755 xdg-ninja.sh "$out/share/xdg-ninja/xdg-ninja.sh" + install -Dm644 programs/* -t "$out/share/xdg-ninja/programs" + + mkdir -p "$out/bin" + ln -s "$out/share/xdg-ninja/xdg-ninja.sh" "$out/bin/xdg-ninja" + + wrapProgram "$out/bin/xdg-ninja" \ + --prefix PATH : "${lib.makeBinPath [ glow jq ]}" + runHook postInstall + ''; + + meta = with lib; { + description = "A shell script which checks your $HOME for unwanted files and directories"; + homepage = "https://github.com/b3nj5m1n/xdg-ninja"; + license = licenses.mit; + platforms = platforms.all; + maintainers = with maintainers; [ patricksjackson ]; + }; +} diff --git a/pkgs/tools/security/gallia/default.nix b/pkgs/tools/security/gallia/default.nix new file mode 100644 index 0000000000000..14657c6ecc7d8 --- /dev/null +++ b/pkgs/tools/security/gallia/default.nix @@ -0,0 +1,62 @@ +{ lib +, stdenv +, fetchFromGitHub +, python3 +}: + +python3.pkgs.buildPythonApplication rec { + pname = "gallia"; + version = "1.0.3"; + format = "pyproject"; + + src = fetchFromGitHub { + owner = "Fraunhofer-AISEC"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-CoZ3niGuEjcaSyIGc0MIy95v64nTbhgqW/0uz4a/f1o="; + }; + + nativeBuildInputs = with python3.pkgs; [ + poetry-core + ]; + + propagatedBuildInputs = with python3.pkgs; [ + aiofiles + aiohttp + aiosqlite + argcomplete + can + construct + msgspec + pydantic + tabulate + tomlkit + xdg + zstandard + ]; + + checkInputs = with python3.pkgs; [ + pytestCheckHook + ]; + + postPatch = '' + substituteInPlace pyproject.toml \ + --replace 'zstandard = "^0.17.0"' 'zstandard = "*"' + ''; + + pythonImportsCheck = [ + "gallia" + ]; + + preCheck = '' + export PATH=$out/bin:$PATH + ''; + + meta = with lib; { + description = "Pentesting framework with the focus on the automotive domain"; + homepage = "https://github.com/Fraunhofer-AISEC/gallia"; + license = with licenses; [ asl20 ]; + maintainers = with maintainers; [ fab ]; + broken = stdenv.isDarwin; + }; +} diff --git a/pkgs/tools/text/scraper/default.nix b/pkgs/tools/text/scraper/default.nix new file mode 100644 index 0000000000000..4118387a34a54 --- /dev/null +++ b/pkgs/tools/text/scraper/default.nix @@ -0,0 +1,26 @@ +{ lib, rustPlatform, fetchCrate, installShellFiles }: + +rustPlatform.buildRustPackage rec { + pname = "scraper"; + version = "0.13.0"; + + src = fetchCrate { + inherit pname version; + sha256 = "sha256-5fFO51I6DqH1BBELt9FW2BCwYcsXVXaQLgocMn446Bs="; + }; + + cargoSha256 = "sha256-Y4m7C7v4ekJfb3BoWwDF+X8uuRH9muaTwPECgu4WaMQ="; + + nativeBuildInputs = [ installShellFiles ]; + + postInstall = '' + installManPage scraper.1 + ''; + + meta = with lib; { + description = "A tool to query HTML files with CSS selectors"; + homepage = "https://github.com/causal-agent/scraper"; + license = licenses.isc; + maintainers = with maintainers; [ figsoda ]; + }; +} diff --git a/pkgs/tools/virtualization/uefi-run/default.nix b/pkgs/tools/virtualization/uefi-run/default.nix new file mode 100644 index 0000000000000..8174f8980897d --- /dev/null +++ b/pkgs/tools/virtualization/uefi-run/default.nix @@ -0,0 +1,25 @@ +{ lib +, fetchFromGitHub +, rustPlatform +}: + +rustPlatform.buildRustPackage rec { + pname = "uefi-run"; + version = "0.5.0"; + + src = fetchFromGitHub { + owner = "Richard-W"; + repo = pname; + rev = "v${version}"; + sha256 = "sha256-fwzWdOinW/ECVI/65pPB1shxPdl2nZThAqlg8wlWg/g="; + }; + + cargoSha256 = "sha256-c+wzMzTkG0FpfQ1rZ8e9dn0ez12vmoecrtNeFk90sdQ="; + + meta = with lib; { + description = "Directly run UEFI applications in qemu"; + homepage = "https://github.com/Richard-W/uefi-run"; + license = licenses.mit; + maintainers = [ maintainers.maddiethecafebabe ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 9e2c228f7a426..1cfba9daf2901 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -723,6 +723,8 @@ with pkgs; graph-easy = callPackage ../tools/graphics/graph-easy { }; + mangal = callPackage ../applications/misc/mangal { }; + graphw00f = callPackage ../tools/security/graphw00f { }; opendrop = python3Packages.callPackage ../tools/networking/opendrop { }; @@ -1661,7 +1663,8 @@ with pkgs; dolphin-emu = callPackage ../applications/emulators/dolphin-emu { }; dolphin-emu-beta = qt5.callPackage ../applications/emulators/dolphin-emu/master.nix { - inherit (darwin.apple_sdk.frameworks) CoreBluetooth ForceFeedback IOKit OpenGL; + inherit (darwin.apple_sdk.frameworks) CoreBluetooth ForceFeedback IOKit OpenGL VideoToolbox; + inherit (darwin) moltenvk; }; dolphin-emu-primehack = qt5.callPackage ../applications/emulators/dolphin-emu/primehack.nix { @@ -10876,6 +10879,8 @@ with pkgs; scfbuild = python3.pkgs.callPackage ../tools/misc/scfbuild { }; + scraper = callPackage ../tools/text/scraper { }; + scriptaculous = callPackage ../development/libraries/scriptaculous { }; scrot = callPackage ../tools/graphics/scrot { }; @@ -12639,6 +12644,8 @@ with pkgs; xdummy = callPackage ../tools/misc/xdummy { }; + xdg-ninja = callPackage ../tools/misc/xdg-ninja { }; + xdxf2slob = callPackage ../tools/misc/xdxf2slob { }; xe-guest-utilities = callPackage ../tools/virtualization/xe-guest-utilities { }; @@ -14188,6 +14195,8 @@ with pkgs; julia_16-bin = callPackage ../development/compilers/julia/1.6-bin.nix { }; julia_18-bin = callPackage ../development/compilers/julia/1.8-bin.nix { }; + julia_18 = callPackage ../development/compilers/julia/1.8.nix { }; + julia-lts-bin = julia_16-bin; julia-stable-bin = julia_18-bin; julia-bin = julia-stable-bin; @@ -17063,6 +17072,8 @@ with pkgs; }; })); + portableService = callPackage ../build-support/portable-service { }; + polar = callPackage ../tools/misc/polar { }; inherit (nodePackages) postcss-cli; @@ -18387,6 +18398,8 @@ with pkgs; galer = callPackage ../tools/security/galer { }; + gallia = callPackage ../tools/security/gallia { }; + gamenetworkingsockets = callPackage ../development/libraries/gamenetworkingsockets { }; game-music-emu = callPackage ../development/libraries/audio/game-music-emu { }; @@ -21364,6 +21377,8 @@ with pkgs; qolibri = libsForQt5.callPackage ../applications/misc/qolibri { }; + quarto = callPackage ../development/libraries/quarto { }; + qt4 = qt48; qt48 = callPackage ../development/libraries/qt-4.x/4.8 { @@ -24303,6 +24318,10 @@ with pkgs; # `.override` clobbered. C.F. `llvmPackages` which does the same. darwin = callPackage ./darwin-packages.nix { }; + defaultbrowser = callPackage ../os-specific/darwin/defaultbrowser { + inherit (darwin.apple_sdk.frameworks) Foundation; + }; + disk_indicator = callPackage ../os-specific/linux/disk-indicator { }; displaylink = callPackage ../os-specific/linux/displaylink { @@ -24443,6 +24462,8 @@ with pkgs; htop-vim = callPackage ../tools/system/htop/htop-vim.nix { }; + humility = callPackage ../development/tools/rust/humility {}; + btop = callPackage ../tools/system/btop { stdenv = gcc11Stdenv; }; @@ -24866,6 +24887,10 @@ with pkgs; ginkgo = callPackage ../development/tools/ginkgo { }; + gdlv = callPackage ../development/tools/gdlv { + inherit (darwin.apple_sdk.frameworks) OpenGL; + }; + go-bindata = callPackage ../development/tools/go-bindata { }; go-bindata-assetfs = callPackage ../development/tools/go-bindata-assetfs { }; @@ -28026,6 +28051,11 @@ with pkgs; filezilla = callPackage ../applications/networking/ftp/filezilla { }; + fire = darwin.apple_sdk_11_0.callPackage ../applications/audio/fire { + inherit (darwin.apple_sdk_11_0.frameworks) Cocoa WebKit CoreServices DiscRecording CoreAudioKit MetalKit; + inherit (darwin.apple_sdk_11_0.libs) simd; + }; + buildMozillaMach = opts: callPackage (import ../applications/networking/browsers/firefox/common.nix opts) {}; firefoxPackages = recurseIntoAttrs (callPackage ../applications/networking/browsers/firefox/packages.nix {}); @@ -28126,13 +28156,13 @@ with pkgs; fractal-next = callPackage ../applications/networking/instant-messengers/fractal-next { inherit (gst_all_1) gstreamer gst-plugins-base gst-plugins-bad; libadwaita = libadwaita.overrideAttrs (finalAtts: rec { - version = "1.2.alpha"; + version = "1.2.0"; src = fetchFromGitLab { domain = "gitlab.gnome.org"; owner = "GNOME"; repo = "libadwaita"; rev = version; - hash = "sha256-JMxUeIOUPp9k5pImQqWLVkQ2GHaKvopvg6ol9pvA+Bk="; + hash = "sha256-3lH7Vi9M8k+GSrCpvruRpLrIpMoOakKbcJlaAc/FK+U="; }; }); }; @@ -29255,6 +29285,10 @@ with pkgs; pinniped = callPackage ../applications/networking/cluster/pinniped { }; + kthxbye = callPackage ../servers/monitoring/prometheus/kthxbye.nix { + buildGoModule = buildGo119Module; + }; + pgo-client = callPackage ../applications/networking/cluster/pgo-client { }; popeye = callPackage ../applications/networking/cluster/popeye { }; @@ -31856,6 +31890,8 @@ with pkgs; ueberzug = with python3Packages; toPythonApplication ueberzug; + uefi-run = callPackage ../tools/virtualization/uefi-run { }; + uhhyou.lv2 = callPackage ../applications/audio/uhhyou.lv2 { }; umurmur = callPackage ../applications/networking/umurmur { @@ -34678,6 +34714,8 @@ with pkgs; stdenv = gccStdenv; }; + seqtk = callPackage ../applications/science/biology/seqtk { }; + snpeff = callPackage ../applications/science/biology/snpeff { }; somafm-cli = callPackage ../tools/misc/somafm-cli { }; @@ -36277,6 +36315,10 @@ with pkgs; rucksack = callPackage ../development/tools/rucksack { }; + ruff = callPackage ../development/tools/ruff { + inherit (darwin.apple_sdk.frameworks) CoreServices Security; + }; + sam-ba = callPackage ../tools/misc/sam-ba { }; sndio = callPackage ../misc/sndio { }; diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix index 51d883be39f1c..87688c53d2da7 100644 --- a/pkgs/top-level/coq-packages.nix +++ b/pkgs/top-level/coq-packages.nix @@ -75,6 +75,7 @@ let mathcomp-character = self.mathcomp.character; mathcomp-abel = callPackage ../development/coq-modules/mathcomp-abel {}; mathcomp-analysis = callPackage ../development/coq-modules/mathcomp-analysis {}; + mathcomp-classical = self.mathcomp-analysis.classical; mathcomp-finmap = callPackage ../development/coq-modules/mathcomp-finmap {}; mathcomp-bigenough = callPackage ../development/coq-modules/mathcomp-bigenough {}; mathcomp-real-closed = callPackage ../development/coq-modules/mathcomp-real-closed {}; |