diff --git a/nixos/doc/manual/release-notes/rl-2411.section.md b/nixos/doc/manual/release-notes/rl-2411.section.md index ab951ddb3c25..4ee99750198e 100644 --- a/nixos/doc/manual/release-notes/rl-2411.section.md +++ b/nixos/doc/manual/release-notes/rl-2411.section.md @@ -8,6 +8,14 @@ Starting with release 25.05, the minimum supported version will be macOS Big Sur 11, and we cannot guarantee that packages will continue to work on older versions of macOS. Users on old macOS versions should consider upgrading to a supported version (potentially using [OpenCore Legacy Patcher](https://dortania.github.io/OpenCore-Legacy-Patcher/) for old hardware) or installing NixOS. If neither of those options are viable and you require new versions of software, [MacPorts](https://www.macports.org/) supports back to Mac OS X Snow Leopard 10.6. +- Nix was updated to 2.24, which brings a lot of improvements and fixes. See the release notes for + [2.19](https://nix.dev/manual/nix/latest/release-notes/rl-2.19), + [2.20](https://nix.dev/manual/nix/latest/release-notes/rl-2.20), + [2.21](https://nix.dev/manual/nix/latest/release-notes/rl-2.21), + [2.22](https://nix.dev/manual/nix/latest/release-notes/rl-2.22), + [2.23](https://nix.dev/manual/nix/latest/release-notes/rl-2.23), + [2.24](https://nix.dev/manual/nix/latest/release-notes/rl-2.24). + Notable changes include improvements to Git fetching, documentation comment support in `nix-repl> :doc`, as well as many quality of life improvements. - Convenience options for `amdgpu`, open source driver for Radeon cards, is now available under `hardware.amdgpu`. diff --git a/nixos/modules/installer/tools/nix-fallback-paths.nix b/nixos/modules/installer/tools/nix-fallback-paths.nix index f9ea7eb39597..10b2b5220e75 100644 --- a/nixos/modules/installer/tools/nix-fallback-paths.nix +++ b/nixos/modules/installer/tools/nix-fallback-paths.nix @@ -1,7 +1,8 @@ { - x86_64-linux = "/nix/store/f409bhlpp0xkzvdz95qr2yvfjfi8r9jc-nix-2.18.5"; - i686-linux = "/nix/store/ra39jzrxq3bcpf55aahwv5037akvylf5-nix-2.18.5"; - aarch64-linux = "/nix/store/xiw8a4jbnw18svgdb04hyqzg5bsjspqf-nix-2.18.5"; - x86_64-darwin = "/nix/store/k2gzx7i90x3h2c8g6xdi1jkwbl6ic895-nix-2.18.5"; - aarch64-darwin = "/nix/store/rqwymbndaqxma6p8s5brcl9k32n5xx54-nix-2.18.5"; + x86_64-linux = "/nix/store/fmfy9zigxns8f1wfb4v2arf1jmfdjpjc-nix-2.24.6"; + i686-linux = "/nix/store/bl95c09pcihf2fdqpzjyjk4bdq0bsizm-nix-2.24.6"; + aarch64-linux = "/nix/store/2sbzgmvas19iq3nhg8xbnd8k0khahk34-nix-2.24.6"; + riscv64-linux = "/nix/store/7yy1x9sx83wm77mjawd953d6a6wb669q-nix-riscv64-unknown-linux-gnu-2.24.6"; + x86_64-darwin = "/nix/store/vs6bbxkwxqr828q8rj1xlbmsbnx1ry6z-nix-2.24.6"; + aarch64-darwin = "/nix/store/d88r5b1qv1fvz2j9qndz8sr31mqgz45x-nix-2.24.6"; } diff --git a/nixos/modules/services/networking/wstunnel.nix b/nixos/modules/services/networking/wstunnel.nix index c05e00809357..bf56858a190f 100644 --- a/nixos/modules/services/networking/wstunnel.nix +++ b/nixos/modules/services/networking/wstunnel.nix @@ -318,10 +318,21 @@ let lib.cli.toGNUCommandLineShell { } ( lib.recursiveUpdate { restrict-to = map hostPortToString restrictTo; - tls-certificate = - if useACMEHost != null then "${certConfig.directory}/fullchain.pem" else "${tlsCertificate}"; - tls-private-key = if useACMEHost != null then "${certConfig.directory}/key.pem" else "${tlsKey}"; websocket-ping-frequency-sec = websocketPingInterval; + tls-certificate = + if !enableHTTPS then + null + else if useACMEHost != null then + "${certConfig.directory}/fullchain.pem" + else + "${tlsCertificate}"; + tls-private-key = + if !enableHTTPS then + null + else if useACMEHost != null then + "${certConfig.directory}/key.pem" + else + "${tlsKey}"; } extraArgs ) } \ @@ -475,6 +486,7 @@ in meta.maintainers = with lib.maintainers; [ alyaeanyx + raylas rvdp neverbehave ]; diff --git a/pkgs/applications/audio/strawberry/default.nix b/pkgs/applications/audio/strawberry/default.nix index f46ba519951b..9179ecccef07 100644 --- a/pkgs/applications/audio/strawberry/default.nix +++ b/pkgs/applications/audio/strawberry/default.nix @@ -44,13 +44,13 @@ let in stdenv.mkDerivation rec { pname = "strawberry"; - version = "1.1.1"; + version = "1.1.2"; src = fetchFromGitHub { owner = "jonaski"; repo = pname; rev = version; - hash = "sha256-REoki+8rneQ+4rL9rC7Md5Hrj6ftd7RePEF1fK4FnKY="; + hash = "sha256-86AMmp8R9/NibTsMFTTFcMeIqZ5x8din9RcBvhGO9xg="; fetchSubmodules = true; }; diff --git a/pkgs/applications/editors/vim/plugins/deprecated.json b/pkgs/applications/editors/vim/plugins/deprecated.json index 1c794d394080..4a5214db0be8 100644 --- a/pkgs/applications/editors/vim/plugins/deprecated.json +++ b/pkgs/applications/editors/vim/plugins/deprecated.json @@ -55,6 +55,10 @@ "date": "2021-11-28", "new": "orgmode" }, + "render-markdown": { + "date": "2024-09-16", + "new": "render-markdown-nvim" + }, "sql-nvim": { "date": "2021-09-03", "new": "sqlite-lua" diff --git a/pkgs/applications/editors/vim/plugins/generated.nix b/pkgs/applications/editors/vim/plugins/generated.nix index 55db14c1d0e3..8cb9f69f46d4 100644 --- a/pkgs/applications/editors/vim/plugins/generated.nix +++ b/pkgs/applications/editors/vim/plugins/generated.nix @@ -17903,8 +17903,8 @@ final: prev: meta.homepage = "https://github.com/shaunsingh/moonlight.nvim/"; }; - render-markdown = buildVimPlugin { - pname = "render-markdown"; + render-markdown-nvim = buildVimPlugin { + pname = "render-markdown.nvim"; version = "2024-09-09"; src = fetchFromGitHub { owner = "MeanderingProgrammer"; diff --git a/pkgs/applications/editors/vim/plugins/vim-plugin-names b/pkgs/applications/editors/vim/plugins/vim-plugin-names index 59fa8a6ece60..cba86f4fee7c 100644 --- a/pkgs/applications/editors/vim/plugins/vim-plugin-names +++ b/pkgs/applications/editors/vim/plugins/vim-plugin-names @@ -831,7 +831,7 @@ https://github.com/theprimeagen/refactoring.nvim/,, https://github.com/tversteeg/registers.nvim/,, https://github.com/vladdoster/remember.nvim/,, https://github.com/filipdutescu/renamer.nvim/,, -https://github.com/MeanderingProgrammer/render-markdown.nvim/,,render-markdown +https://github.com/MeanderingProgrammer/render-markdown.nvim/,, https://github.com/gabrielpoca/replacer.nvim/,HEAD, https://github.com/NTBBloodbath/rest.nvim/,, https://github.com/vim-scripts/restore_view.vim/,HEAD,restore-view-vim diff --git a/pkgs/applications/emulators/retroarch/hashes.json b/pkgs/applications/emulators/retroarch/hashes.json index 154725424d97..d8a17157d4d0 100644 --- a/pkgs/applications/emulators/retroarch/hashes.json +++ b/pkgs/applications/emulators/retroarch/hashes.json @@ -674,10 +674,10 @@ "src": { "owner": "libretro", "repo": "libretro-prboom", - "rev": "2a96b2a22cf98bdd508b1efc31afceb78717f4ba", - "hash": "sha256-Pf6U9RTkMUsRl2mOU6ooFPhVu0G9MZQjJYKVQ9WneIE=" + "rev": "0b43954c75760d00737120db9d5009813778c7ae", + "hash": "sha256-mb7hggdwOjWgKNykeOv+0IDYpKLHy9dJqA4+c/8R6Ss=" }, - "version": "unstable-2024-09-05" + "version": "unstable-2024-09-07" }, "prosystem": { "fetcher": "fetchFromGitHub", @@ -794,10 +794,10 @@ "src": { "owner": "stella-emu", "repo": "stella", - "rev": "b1e297153b4e7013a28763253c425a6f4bf31f48", - "hash": "sha256-6LPoFX9m6Ads/pZJcMOrJlllluAoCyzyTT6Ngrr84YI=" + "rev": "03c5d7f1cf3e325e0dc0b41b89ffc17a54834af8", + "hash": "sha256-i7EBcbyoLz6MSeDe2d+HRpaKhig0zZEMC7rQqQrpbvA=" }, - "version": "unstable-2024-09-01" + "version": "unstable-2024-09-09" }, "stella2014": { "fetcher": "fetchFromGitHub", diff --git a/pkgs/applications/networking/cluster/clusterctl/default.nix b/pkgs/applications/networking/cluster/clusterctl/default.nix index 7774248cd30a..1e9183adbaaa 100644 --- a/pkgs/applications/networking/cluster/clusterctl/default.nix +++ b/pkgs/applications/networking/cluster/clusterctl/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "clusterctl"; - version = "1.8.2"; + version = "1.8.3"; src = fetchFromGitHub { owner = "kubernetes-sigs"; repo = "cluster-api"; rev = "v${version}"; - hash = "sha256-7MTl1PzkcvnLZgpGQ+SA29Zb3h0iLMWQcN/FvQflM7s="; + hash = "sha256-zvMjfaEq6EOWVqjVOoS2nb1fuGyEljcNVfTpAWUsiL8="; }; vendorHash = "sha256-0VVaD1vGIGezgkVCvIhNHmZqVFxFu4UcUUh0wuX2viw="; diff --git a/pkgs/applications/networking/instant-messengers/element/pin.nix b/pkgs/applications/networking/instant-messengers/element/pin.nix index ea86d807aafa..9abdf0f463ff 100644 --- a/pkgs/applications/networking/instant-messengers/element/pin.nix +++ b/pkgs/applications/networking/instant-messengers/element/pin.nix @@ -1,9 +1,9 @@ { - "version" = "1.11.76"; + "version" = "1.11.77"; "hashes" = { - "desktopSrcHash" = "sha256-oG1nzOSXl2vjxvxdVg2o5ssKbAqrYHS4pnLCPJsIBCQ="; - "desktopYarnHash" = "0bl78yd7apd5qbsqyhxnwj7lwrjx5820zh22rzgn9jqkcv25jwgw"; - "webSrcHash" = "sha256-1hmSdefNChRcUnwbxS00NYrEexMyg8FIL0BXdEbwm+s="; - "webYarnHash" = "0bnxd7kig2a5scgdsd0yhhmanf7zqi2gd2si6kgnr0v2kc0akc0b"; + "desktopSrcHash" = "sha256-y7cmTSkNzA4aNY7z9sjgyIquTPVvl+nH7BHUx/2nJ5A="; + "desktopYarnHash" = "0fwkdrfhfl6knvx552q2lpp5pd54qbzkm4kx6jvcrdwjk3x4cgqd"; + "webSrcHash" = "sha256-IeBuLlcorsHZ78P6h5LVCCGHauqzwwm2Lc9B07su86Y="; + "webYarnHash" = "0nm70m37kqkb959vi69r8zidsh25nzgn1550yl46pzihzbiqm8nx"; }; } diff --git a/pkgs/applications/networking/instant-messengers/wavebox/default.nix b/pkgs/applications/networking/instant-messengers/wavebox/default.nix index cc244f0c0e4e..211f1af8726e 100644 --- a/pkgs/applications/networking/instant-messengers/wavebox/default.nix +++ b/pkgs/applications/networking/instant-messengers/wavebox/default.nix @@ -156,11 +156,11 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "wavebox"; - version = "10.128.5-2"; + version = "10.128.7-2"; src = fetchurl { url = "https://download.wavebox.app/stable/linux/deb/amd64/wavebox_${finalAttrs.version}_amd64.deb"; - hash = "sha256-eIiFiRlmnARtyd8YHUHrjDaaF8kQYvcOa2AwT3071Ho="; + hash = "sha256-MRMN/xVs80u3MfdQfALhPW7dpTZrjsVhMjEN/zl7K+U="; }; nativeBuildInputs = [ diff --git a/pkgs/applications/networking/ipget/default.nix b/pkgs/applications/networking/ipget/default.nix index 0ad7de8ec468..4beb88feca1f 100644 --- a/pkgs/applications/networking/ipget/default.nix +++ b/pkgs/applications/networking/ipget/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "ipget"; - version = "0.10.0"; + version = "0.11.0"; src = fetchFromGitHub { owner = "ipfs"; repo = "ipget"; rev = "v${version}"; - hash = "sha256-nT0bMy4L1T2rwE6g3Q4tNkmeP3XyPVxCV9yoGqMZjNs="; + hash = "sha256-SCYbfsQ8yF2ggwNyW0+kydpSBQN9NPpz1Hmw4ni3cg0="; }; - vendorHash = "sha256-q8uwijh3y4l4ebFc3u5Z6TLUUiQqUK6Qpqq/m0kLF14="; + vendorHash = "sha256-90iimOtFys12nrT0hHyzHrpB03YGNfHY/a7V8Blijfw="; postPatch = '' # main module (github.com/ipfs/ipget) does not contain package github.com/ipfs/ipget/sharness/dependencies diff --git a/pkgs/applications/science/biology/kallisto/default.nix b/pkgs/applications/science/biology/kallisto/default.nix index 5eb6d40d030c..a375df35dd3e 100644 --- a/pkgs/applications/science/biology/kallisto/default.nix +++ b/pkgs/applications/science/biology/kallisto/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "kallisto"; - version = "0.51.0"; + version = "0.51.1"; src = fetchFromGitHub { repo = "kallisto"; owner = "pachterlab"; rev = "v${version}"; - sha256 = "sha256-+tnuka6uzoNr5pLuE2yV97KmqdThIG0IwiO+SCYiCk8="; + sha256 = "sha256-hfdeztEyHvuOnLS71oSv8sPqFe2UCX5KlANqrT/Gfx8="; }; nativeBuildInputs = [ autoconf cmake ]; diff --git a/pkgs/by-name/co/codeium/package.nix b/pkgs/by-name/co/codeium/package.nix index 19aeb59c7ad1..679050b5cc8a 100644 --- a/pkgs/by-name/co/codeium/package.nix +++ b/pkgs/by-name/co/codeium/package.nix @@ -13,10 +13,10 @@ let }.${system} or throwSystem; hash = { - x86_64-linux = "sha256-BPlegORfDeGBMexdkh+5clfxNqQ5FRawW8BJuzwowg0="; - aarch64-linux = "sha256-UPDA2wlf4K05JpeghHB+yeBFyMCXbZTDGrxFVyA1mlI="; - x86_64-darwin = "sha256-fVqHPfGJBMdEJn6EOh4eRVmPXhmoMskjdlmSls7sm/E="; - aarch64-darwin = "sha256-kIZYFgXj5vpZ1MwZqu1X4i/OZjfZMpvkceHzed8ZKP8="; + x86_64-linux = "sha256-xOP9NOcuBRrX998jF4dTpUtS9jPux4jHu057sPPjGWA="; + aarch64-linux = "sha256-RVy/k1nUbT0MGIuSnEJZqGM+kQhBEUSD/D2uk5ZmYzs="; + x86_64-darwin = "sha256-MtUAO6xvSDcLokjmW1CAOC8+3pTMFy1yteKmb/WUpGs="; + aarch64-darwin = "sha256-OZf74uvuka4S8JKYcGM1f8T2RrdTxelLMmx74Ee83ek="; }.${system} or throwSystem; bin = "$out/bin/codeium_language_server"; @@ -24,7 +24,7 @@ let in stdenv.mkDerivation (finalAttrs: { pname = "codeium"; - version = "1.14.15"; + version = "1.16.11"; src = fetchurl { name = "${finalAttrs.pname}-${finalAttrs.version}.gz"; url = "https://github.com/Exafunction/codeium/releases/download/language-server-v${finalAttrs.version}/language_server_${plat}.gz"; diff --git a/pkgs/by-name/cu/cups-brother-dcpt725dw/package.nix b/pkgs/by-name/cu/cups-brother-dcpt725dw/package.nix new file mode 100644 index 000000000000..b93e8e1fc32f --- /dev/null +++ b/pkgs/by-name/cu/cups-brother-dcpt725dw/package.nix @@ -0,0 +1,113 @@ +{ + stdenv, + lib, + fetchurl, + perl, + ghostscript, + coreutils, + gnugrep, + which, + file, + gnused, + dpkg, + makeWrapper, + libredirect, + debugLvl ? "0", +}: + +stdenv.mkDerivation rec { + pname = "cups-brother-dcpt725dw"; + version = "3.5.0-1"; + src = fetchurl { + url = "https://download.brother.com/welcome/dlf105181/dcpt725dwpdrv-${version}.i386.deb"; + hash = "sha256-fK6RHaW/ej1nFgSaTbzWxVgjIW32YTbJbd1xD37ZE7c="; + }; + + nativeBuildInputs = [ + dpkg + makeWrapper + ]; + buildInputs = [ perl ]; + + dontUnpack = true; + + installPhase = '' + runHook preInstall + + mkdir -p $out + dpkg-deb -x $src $out + + LPDDIR=$out/opt/brother/Printers/dcpt725dw/lpd + WRAPPER=$out/opt/brother/Printers/dcpt725dw/cupswrapper/brother_lpdwrapper_dcpt725dw + + ln -s $LPDDIR/${stdenv.hostPlatform.linuxArch}/* $LPDDIR/ + + substituteInPlace $WRAPPER \ + --replace-fail "PRINTER =~" "PRINTER = \"dcpt725dw\"; #" \ + --replace-fail "basedir =~" "basedir = \"$out/opt/brother/Printers/dcpt725dw/\"; #" \ + --replace-fail "lpdconf = " "lpdconf = \$lpddir.'/'.\$LPDCONFIGEXE.\$PRINTER; #" \ + --replace-fail "\$DEBUG=0;" "\$DEBUG=${debugLvl};" + + substituteInPlace $LPDDIR/filter_dcpt725dw \ + --replace-fail "BR_PRT_PATH =~" "BR_PRT_PATH = \"$out/opt/brother/Printers/dcpt725dw/\"; #" \ + --replace-fail "PRINTER =~" "PRINTER = \"dcpt725dw\"; #" + + wrapProgram $WRAPPER \ + --prefix PATH : ${ + lib.makeBinPath [ + coreutils + gnugrep + gnused + ] + } + + wrapProgram $LPDDIR/filter_dcpt725dw \ + --prefix PATH : ${ + lib.makeBinPath [ + coreutils + ghostscript + gnugrep + gnused + which + file + ] + } + + patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + $LPDDIR/brdcpt725dwfilter + + patchelf --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + $LPDDIR/brprintconf_dcpt725dw + + wrapProgram $LPDDIR/brprintconf_dcpt725dw \ + --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ + --set NIX_REDIRECTS /opt=$out/opt + + wrapProgram $LPDDIR/brdcpt725dwfilter \ + --set LD_PRELOAD "${libredirect}/lib/libredirect.so" \ + --set NIX_REDIRECTS /opt=$out/opt + + mkdir -p "$out/lib/cups/filter" "$out/share/cups/model" + + ln -s $out/opt/brother/Printers/dcpt725dw/cupswrapper/brother_lpdwrapper_dcpt725dw \ + $out/lib/cups/filter/brother_lpdwrapper_dcpt725dw + + ln -s "$out/opt/brother/Printers/dcpt725dw/cupswrapper/brother_dcpt725dw_printer_en.ppd" \ + "$out/share/cups/model/" + + runHook postInstall + ''; + + meta = with lib; { + description = "Brother DCP-T725DW printer driver"; + license = licenses.unfree; + sourceProvenance = with sourceTypes; [ binaryNativeCode ]; + maintainers = with maintainers; [ u2x1 ]; + platforms = [ + "x86_64-linux" + "i686-linux" + ]; + downloadPage = "https://support.brother.com/g/b/downloadtop.aspx?c=cn_ot&lang=en&prod=dcpt725dw_cn"; + homepage = "http://www.brother.com/"; + }; +} diff --git a/pkgs/by-name/e1/e1s/package.nix b/pkgs/by-name/e1/e1s/package.nix index d6759b57deea..edab9766f4a0 100644 --- a/pkgs/by-name/e1/e1s/package.nix +++ b/pkgs/by-name/e1/e1s/package.nix @@ -1,7 +1,7 @@ { lib, buildGoModule, fetchFromGitHub }: let pname = "e1s"; - version = "1.0.38"; + version = "1.0.39"; in buildGoModule { inherit pname version; @@ -10,10 +10,10 @@ buildGoModule { owner = "keidarcy"; repo = "e1s"; rev = "refs/tags/v${version}"; - hash = "sha256-OFnriW+rerVTyonuXe9qilR78Qok6QUYQvTDbsTi5L0="; + hash = "sha256-kfG9Nkt5L2YokTLPzPuIAmjCHlZvr3FqZiYLr8bU+K4="; }; - vendorHash = "sha256-oQVZ1SNXaXOngZazUVeWLvtZu17XvtIcrx+XC6PvGH0="; + vendorHash = "sha256-u6h/sqI0Rqs3ZmVXtMNVuL3h9Cj15+mM+QnIaylzlHI="; meta = with lib; { description = "Easily Manage AWS ECS Resources in Terminal 🐱"; diff --git a/pkgs/by-name/fe/fedimint/package.nix b/pkgs/by-name/fe/fedimint/package.nix index be8bc1f602e3..0e38132affc4 100644 --- a/pkgs/by-name/fe/fedimint/package.nix +++ b/pkgs/by-name/fe/fedimint/package.nix @@ -24,16 +24,16 @@ let in buildRustPackage rec { pname = "fedimint"; - version = "0.4.1"; + version = "0.4.2"; src = fetchFromGitHub { owner = "fedimint"; repo = "fedimint"; rev = "v${version}"; - hash = "sha256-udQxFfLkAysDtD6P3TsW0xEcENA77l+GaDUSnkIBGXo="; + hash = "sha256-ih1ZwH8uItplMJU2/XkQseFlYUsf8/TkX8lGyRl7/KU="; }; - cargoHash = "sha256-w1yQOEoumyam4JsDarAQffTs8Ype4VUyGJ0vgJfuHaU="; + cargoHash = "sha256-scfgUFuS/b4EFfPuhl6uFlTZi4gyTqtEso2a5jhrxno="; nativeBuildInputs = [ protobuf diff --git a/pkgs/by-name/fi/firefly/package.nix b/pkgs/by-name/fi/firefly/package.nix new file mode 100644 index 000000000000..631627c3dd57 --- /dev/null +++ b/pkgs/by-name/fi/firefly/package.nix @@ -0,0 +1,39 @@ +{ + lib, + buildGoModule, + fetchFromGitHub, +}: + +buildGoModule rec { + pname = "firefly"; + version = "1.4.3"; + + src = fetchFromGitHub { + owner = "Brum3ns"; + repo = "firefly"; + rev = "refs/tags/v${version}"; + hash = "sha256-hhZw7u4NX+BvapUZv0k2Xu/UOdL7Pt8Idjat4aJzvIk="; + }; + + vendorHash = "sha256-eeVj0nU+cs1cZNVvwu4LgtQkpddtyYAYS91ANHyOjcY="; + + ldflags = [ + "-s" + "-w" + ]; + + preCheck = '' + # Test fails with invalid memory address or nil pointer dereference + substituteInPlace tests/httpfilter_test.go \ + --replace-fail "Test_HttpFilter" "Skip_HttpFilter" + ''; + + meta = { + description = "Black box fuzzer for web applications"; + homepage = "https://github.com/Brum3ns/firefly"; + # https://github.com/Brum3ns/firefly/issues/12 + license = lib.licenses.unfree; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "firefly"; + }; +} diff --git a/pkgs/by-name/gn/gnucobol/package.nix b/pkgs/by-name/gn/gnucobol/package.nix new file mode 100644 index 000000000000..7c698954e5ab --- /dev/null +++ b/pkgs/by-name/gn/gnucobol/package.nix @@ -0,0 +1,148 @@ +{ + lib, + stdenv, + fetchurl, + autoconf269, + automake, + libtool, + pkg-config, + # libs + cjson, + db, + gmp, + libxml2, + ncurses, + # docs + help2man, + texinfo, + texliveBasic, + # test + perl, +}: +let + nistTestSuite = fetchurl { + # Used to check GnuCOBOL with the NIST test suite + url = "mirror://sourceforge/gnucobol/newcob.val.tar.gz"; + hash = "sha256-5FE/JqmziRH3v4gv49MzmoC0XKvCyvheswVbD1zofuA="; + }; +in +stdenv.mkDerivation (finalAttrs: { + pname = "gnucobol"; + version = "3.2"; + + src = fetchurl { + url = "mirror://gnu/gnucobol/gnucobol-${finalAttrs.version}.tar.xz"; + hash = "sha256-O7SK9GztR3n6z0H9wu5g5My4bqqZ0BCzZoUxXfOcLuI="; + }; + + nativeBuildInputs = [ + pkg-config + autoconf269 + automake + help2man + libtool + perl + texinfo + texliveBasic + ]; + + buildInputs = [ + cjson + db + gmp + libxml2 + ncurses + ]; + + outputs = [ + "bin" + "dev" + "lib" + "out" + ]; + # XXX: Without this, we get a cycle between bin and dev + propagatedBuildOutputs = [ ]; + + # Skips a broken test + postPatch = '' + sed -i '/^AT_CHECK.*crud\.cob/i AT_SKIP_IF([true])' tests/testsuite.src/listings.at + # upstream reports the following tests as known failures + # test 843 (runtime check: write to internal storage (1)) + sed -i "/^843;/d" tests/testsuite + # test 875 (INDEXED sample) + sed -i "/^875;/d" tests/testsuite + ''; + + preConfigure = + '' + autoconf + aclocal + automake + '' + + lib.optionalString stdenv.isDarwin '' + # when building with nix on darwin, configure will use GNU strip, + # which fails due to using --strip-unneeded, which is not supported + substituteInPlace configure --replace-fail '"GNU strip"' 'FAKE GNU strip' + ''; + + # error: call to undeclared function 'xmlCleanupParser' + # ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] + env.CFLAGS = lib.optionalString stdenv.isDarwin "-Wno-error=implicit-function-declaration"; + + enableParallelBuilding = true; + + installFlags = [ + "install-pdf" + "install-html" + "localedir=$out/share/locale" + ]; + + # Tests must run after install. + doCheck = false; + + doInstallCheck = true; + installCheckPhase = '' + runHook preInstallCheck + + # Run tests + TESTSUITEFLAGS="--jobs=$NIX_BUILD_CORES" make check + + # Run NIST tests + cp -v ${nistTestSuite} ./tests/cobol85/newcob.val.tar.gz + TESTSUITEFLAGS="--jobs=$NIX_BUILD_CORES" make test + + # Sanity check + message="Hello, COBOL!" + # XXX: Don't for a second think you can just get rid of these spaces, they + # are load bearing. + tee hello.cbl < { + delete pJson.scripts.prepack; // We don't want to rebuild - all built code will be in the packed content + await fs.writeJson(path.join(OUTPUT_DIR, 'package.json'), pJson); + +- const buildScript = path.join(OUTPUT_DIR, 'build-release.sh'); +- +- // Run build-release in this folder, for each platform. For each bundle, we copy in +- // only the relevant platform-specific NSS files. +- console.log('Building for Linux'); +- await fs.mkdir(path.join(OUTPUT_DIR, 'nss')); +- await fs.copy(path.join(__dirname, 'nss', 'linux'), path.join(OUTPUT_DIR, 'nss', 'linux')); +- await spawn(buildScript, ['linux'], { cwd: OUTPUT_DIR, stdio: 'inherit' }); +- +- console.log('Building for Darwin'); +- await fs.remove(path.join(OUTPUT_DIR, 'nss', 'linux')); +- await fs.copy(path.join(__dirname, 'nss', 'darwin'), path.join(OUTPUT_DIR, 'nss', 'darwin')); +- await spawn(buildScript, ['darwin'], { cwd: OUTPUT_DIR, stdio: 'inherit' }); +- +- console.log('Building for Win32'); +- await fs.remove(path.join(OUTPUT_DIR, 'nss', 'darwin')); +- await fs.copy(path.join(__dirname, 'nss', 'win32'), path.join(OUTPUT_DIR, 'nss', 'win32')); +- await spawn(buildScript, ['win32'], { cwd: OUTPUT_DIR, stdio: 'inherit' }); +- +- // Oclif builds a nodeless platform-agnostic bundle too (although in our case, nothing is +- // really platform agnostic). Not necessary, probably won't work - drop it. +- await fs.remove(path.join( +- OUTPUT_DIR, +- 'dist', +- `v${pJson.version}`, +- `httptoolkit-server-v${pJson.version}.tar.gz` +- )); ++ await spawn('npm', ['exec', '--', 'oclif-dev', 'pack', '--targets=linux-x64'], { cwd: OUTPUT_DIR, stdio: 'inherit' }); + } + + packageApp().catch(e => { diff --git a/pkgs/by-name/ht/httptoolkit-server/package.nix b/pkgs/by-name/ht/httptoolkit-server/package.nix new file mode 100644 index 000000000000..1bc90738b120 --- /dev/null +++ b/pkgs/by-name/ht/httptoolkit-server/package.nix @@ -0,0 +1,173 @@ +{ + lib, + nodejs_20, + buildNpmPackage, + fetchFromGitHub, + writeShellScriptBin, + nss, + cmake, + pkg-config, + openssl, + libdatachannel, +}: + +let + nodejs = nodejs_20; + buildNpmPackage' = buildNpmPackage.override { inherit nodejs; }; + + version = "1.19.0"; + + src = fetchFromGitHub { + owner = "httptoolkit"; + repo = "httptoolkit-server"; + rev = "refs/tags/v${version}"; + hash = "sha256-S4Io4X5Hlvm/5HoKIQ/OTor9jZvMz6me5RyfZ8FwOdM="; + }; + + overridesNodeModules = buildNpmPackage' { + pname = "httptoolkit-server-overrides-node-modules"; + inherit version src; + sourceRoot = "${src.name}/overrides/js"; + + npmDepsHash = "sha256-GRN6ua3FY1AE61bB7PM2wgbKPZI/zJeXa5HOOh/2N2Y="; + + dontBuild = true; + + installPhase = '' + mkdir -p $out + cp -r node_modules $out/node_modules + ''; + }; + + nodeDatachannel = buildNpmPackage' { + pname = "node-datachannel"; + version = "0.4.3"; + + src = fetchFromGitHub { + owner = "murat-dogan"; + repo = "node-datachannel"; + rev = "refs/tags/v${nodeDatachannel.version}"; + hash = "sha256-BlfeocqSG+pqbK0onnCf0VKbQw8Qq4qMxhAcfGlFYR8="; + }; + + npmFlags = [ "--ignore-scripts" ]; + + makeCacheWritable = true; + + npmDepsHash = "sha256-pgcOOjiuWKlpD+WJyPj/c9ZhDjYuEnybpLS/BPmzeFM="; + + nativeBuildInputs = [ + cmake + pkg-config + ]; + + buildInputs = [ + openssl + libdatachannel + ]; + + dontUseCmakeConfigure = true; + + env.NIX_CFLAGS_COMPILE = "-I${nodejs}/include/node"; + env.CXXFLAGS = "-include stdexcept"; # for GCC13 + + preBuild = '' + # don't use static libs and don't use FetchContent + substituteInPlace CMakeLists.txt \ + --replace-fail 'OPENSSL_USE_STATIC_LIBS TRUE' 'OPENSSL_USE_STATIC_LIBS FALSE' \ + --replace-fail 'if(NOT libdatachannel)' 'if(false)' \ + --replace-fail 'datachannel-static' 'datachannel' + + # don't fetch node headers + substituteInPlace node_modules/cmake-js/lib/dist.js \ + --replace-fail '!this.downloaded' 'false' + + npm rebuild --verbose + ''; + + installPhase = '' + runHook preInstall + install -Dm755 build/Release/*.node -t $out/build/Release + runHook postInstall + ''; + }; +in +buildNpmPackage' { + pname = "httptoolkit-server"; + inherit version src; + + patches = [ ./only-build-for-one-platform.patch ]; + + npmDepsHash = "sha256-njSNdpo+CIfS9LTnshawJ7297tFc8ssjUqJcHk8kBZE="; + + npmFlags = [ "--ignore-scripts" ]; + + makeCacheWritable = true; + + nativeBuildInputs = [ + # the build system uses the `git` executable to get the current revision + # we use a fake git to provide it with a fake revision + (writeShellScriptBin "git" "echo '???'") + ]; + + postConfigure = '' + # make sure `oclif-dev' doesn't fetch `node` binary to bundle with the app + substituteInPlace node_modules/@oclif/dev-cli/lib/tarballs/node.js --replace-fail \ + 'async function fetchNodeBinary({ nodeVersion, output, platform, arch, tmp }) {' \ + 'async function fetchNodeBinary({ nodeVersion, output, platform, arch, tmp }) { return;' + + # manually place our prebuilt `node-datachannel` binary into its place, since we used '--ignore-scripts' + ln -s ${nodeDatachannel}/build node_modules/node-datachannel/build + + cp -r ${overridesNodeModules}/node_modules overrides/js/node_modules + + # don't run `npm ci` in `overrides/js` since we already copied node_modules into the directory + substituteInPlace prepare.ts --replace-fail "'ci', '--production'" "'--version'" + + patchShebangs *.sh + ''; + + preBuild = '' + npm run build:src + ''; + + npmBuildScript = "build:release"; + + installPhase = '' + runHook preInstall + + # we don't actually use any of the generated tarballs, we just copy from the tmp directory, since that's easier + mkdir -p $out/share/httptoolkit-server + cp -r build/tmp/httptoolkit-server/* -r $out/share/httptoolkit-server + + # remove unneeded executables + rm -r $out/share/httptoolkit-server/bin/httptoolkit-server* + + # since `oclif-dev pack` ran `npm install` again, we need to place the prebuilt binary here again + ln -s ${nodeDatachannel}/build $out/share/httptoolkit-server/node_modules/node-datachannel/build + + # disable updating functionality + substituteInPlace $out/share/httptoolkit-server/node_modules/@oclif/plugin-update/lib/commands/update.js \ + --replace-fail "await this.skipUpdate()" "'cannot update nix based package'" + + # the app determines if it's in production by checking if HTTPTOOLKIT_SERVER_BINPATH is set to anything + makeWrapper $out/share/httptoolkit-server/bin/run $out/bin/httptoolkit-server \ + --set HTTPTOOLKIT_SERVER_BINPATH dummy \ + --prefix PATH : ${lib.makeBinPath [ nss.tools ]} + + runHook postInstall + ''; + + passthru = { + inherit nodeDatachannel; + }; + + meta = { + description = "Backend for HTTP Toolkit"; + homepage = "https://httptoolkit.com/"; + license = lib.licenses.agpl3Plus; + mainProgram = "httptoolkit-server"; + maintainers = with lib.maintainers; [ tomasajt ]; + platforms = lib.platforms.unix; + }; +} diff --git a/pkgs/by-name/ht/httptoolkit/package.nix b/pkgs/by-name/ht/httptoolkit/package.nix new file mode 100644 index 000000000000..173e093cb71c --- /dev/null +++ b/pkgs/by-name/ht/httptoolkit/package.nix @@ -0,0 +1,101 @@ +{ + lib, + stdenv, + buildNpmPackage, + fetchFromGitHub, + makeWrapper, + makeDesktopItem, + copyDesktopItems, + electron, + httptoolkit-server, +}: + +buildNpmPackage rec { + pname = "httptoolkit"; + version = "1.19.0"; + + src = fetchFromGitHub { + owner = "httptoolkit"; + repo = "httptoolkit-desktop"; + rev = "refs/tags/v${version}"; + hash = "sha256-e+ngBZMwMTvwzY1K7IaxlNoRkZUPDdJvKxvxuCsc9pw="; + }; + + npmDepsHash = "sha256-XgJIs4P1ezCEPPitIIfYpNkX0/3dPdajeIiDwHm7DSU="; + + env = { + ELECTRON_SKIP_BINARY_DOWNLOAD = "1"; + # disable code signing on Darwin + CSC_IDENTITY_AUTO_DISCOVERY = "false"; + }; + + nativeBuildInputs = [ makeWrapper ] ++ lib.optionals stdenv.isLinux [ copyDesktopItems ]; + + npmBuildScript = "build:src"; + + postBuild = '' + substituteInPlace package.json --replace-fail \ + '"forceCodeSigning": true' \ + '"forceCodeSigning": false' + + cp -r ${electron.dist} electron-dist + chmod -R u+w electron-dist + + npm exec electron-builder -- \ + --dir \ + -c.electronDist=electron-dist \ + -c.electronVersion=${electron.version} + ''; + + installPhase = '' + runHook preInstall + + ${lib.optionalString stdenv.isLinux '' + mkdir -p $out/share/httptoolkit + cp -r dist/*-unpacked/{locales,resources{,.pak}} $out/share/httptoolkit + + ln -s ${httptoolkit-server} $out/share/httptoolkit/resources/httptoolkit-server + + install -Dm644 src/icons/icon.svg $out/share/icons/hicolor/scalable/apps/httptoolkit.svg + + makeWrapper ${lib.getExe electron} $out/bin/httptoolkit \ + --add-flags $out/share/httptoolkit/resources/app.asar \ + --add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations}}" \ + --inherit-argv0 + ''} + + ${lib.optionalString stdenv.isDarwin '' + mkdir -p $out/Applications + cp -r dist/mac*/"HTTP Toolkit.app" $out/Applications + + ln -s ${httptoolkit-server} "$out/Applications/HTTP Toolkit.app/Contents/Resources/httptoolkit-server" + + makeWrapper "$out/Applications/HTTP Toolkit.app/Contents/MacOS/HTTP Toolkit" $out/bin/httptoolkit + ''} + + runHook postInstall + ''; + + desktopItems = [ + (makeDesktopItem { + name = "httptoolkit"; + desktopName = "HTTP Toolkit"; + exec = "httptoolkit %U"; + terminal = false; + icon = "httptoolkit"; + startupWMClass = "HTTP Toolkit"; + comment = meta.description; + categories = [ "Development" ]; + startupNotify = true; + }) + ]; + + meta = { + description = "HTTP(S) debugging, development & testing tool"; + homepage = "https://httptoolkit.com/"; + license = lib.licenses.agpl3Plus; + mainProgram = "httptoolkit"; + maintainers = with lib.maintainers; [ tomasajt ]; + platforms = electron.meta.platforms; + }; +} diff --git a/pkgs/by-name/hu/hugo/package.nix b/pkgs/by-name/hu/hugo/package.nix index 1c605b06eed2..439bc97d7a2d 100644 --- a/pkgs/by-name/hu/hugo/package.nix +++ b/pkgs/by-name/hu/hugo/package.nix @@ -10,13 +10,13 @@ buildGo123Module rec { pname = "hugo"; - version = "0.134.0"; + version = "0.134.2"; src = fetchFromGitHub { owner = "gohugoio"; repo = "hugo"; rev = "refs/tags/v${version}"; - hash = "sha256-XglHrV+MD9Nq1qwJB63eATuS+6SwjZVF5u6H5EejEow="; + hash = "sha256-/jq8YMBgADC2Y98HzZNcDYZ9xhh6am6+G/dgouOGowE="; }; vendorHash = "sha256-oDa5uWQ/vFSmTNwZ3zsYtsuLCzddV9DeaEGx5krwWRE="; diff --git a/pkgs/by-name/li/libmatroska/package.nix b/pkgs/by-name/li/libmatroska/package.nix new file mode 100644 index 000000000000..8de6786dfa64 --- /dev/null +++ b/pkgs/by-name/li/libmatroska/package.nix @@ -0,0 +1,59 @@ +{ + lib, + stdenv, + fetchFromGitHub, + cmake, + libebml, + nix-update-script, + pkg-config, + testers, + validatePkgConfig, + libmatroska, +}: + +stdenv.mkDerivation rec { + pname = "libmatroska"; + version = "1.7.1"; + + outputs = [ + "dev" + "out" + ]; + + src = fetchFromGitHub { + owner = "Matroska-Org"; + repo = "libmatroska"; + rev = "release-${version}"; + hash = "sha256-hfu3Q1lIyMlWFWUM2Pu70Hie0rlQmua7Kq8kSIWnfHE="; + }; + + nativeBuildInputs = [ + cmake + pkg-config + validatePkgConfig + ]; + + buildInputs = [ libebml ]; + + cmakeFlags = [ "-DBUILD_SHARED_LIBS=YES" ]; + + passthru = { + tests.pkg-config = testers.hasPkgConfigModules { package = libmatroska; }; + updateScript = nix-update-script { + extraArgs = [ + "--version-regex" + "release-(.*)" + ]; + }; + }; + + meta = { + description = "Library to parse Matroska files"; + homepage = "https://matroska.org/"; + changelog = "https://github.com/Matroska-Org/libmatroska/blob/${src.rev}/NEWS.md"; + license = lib.licenses.lgpl21; + maintainers = with lib.maintainers; [ getchoo ]; + platforms = lib.platforms.unix; + pkgConfigModules = [ "libmatroska" ]; + }; +} diff --git a/pkgs/by-name/ms/msecli/package.nix b/pkgs/by-name/ms/msecli/package.nix new file mode 100644 index 000000000000..6a2991f90ec4 --- /dev/null +++ b/pkgs/by-name/ms/msecli/package.nix @@ -0,0 +1,65 @@ +{ + autoPatchelfHook, + buildFHSEnv, + fetchurl, + lib, + stdenv, + zlib, +}: + +let + pname = "msecli"; + version = "10.01.012024.00"; + + src = fetchurl { + url = "https://web.archive.org/web/20240916144249/https://www.micron.com/content/dam/micron/global/public/products/software/storage-executive-software/msecli/msecli-linux.run"; + hash = "sha256-IszdD/9fAh+JA26bSR1roXSo8LDU/rf4CuRI3HjU1xc="; + }; + + buildEnv = buildFHSEnv { name = "msecli-buildEnv"; }; +in +stdenv.mkDerivation { + inherit pname version src; + + buildInputs = [ zlib ]; + + nativeBuildInputs = [ autoPatchelfHook ]; + + unpackPhase = '' + runHook preUnpack + + cp "$src" ${src.name} + chmod +x ${src.name} + + runHook postUnpack + ''; + + buildPhase = '' + runHook prebuild + + # ignore the exit code as the installer + # fails at optional steps due to read only FHS + ${buildEnv}/bin/${buildEnv.name} -c "./${src.name} --mode unattended --prefix bin || true" + + runHook postbuild + ''; + + installPhase = '' + runHook preInstall + + mkdir -p $out/bin + cp -v bin/msecli $out/bin + + runHook postInstall + ''; + + meta = { + description = "Micron Storage Executive CLI"; + homepage = "https://www.micron.com/sales-support/downloads/software-drivers/storage-executive-software"; + license = lib.licenses.unfree; + mainProgram = "msecli"; + maintainers = with lib.maintainers; [ diadatp ]; + platforms = [ "x86_64-linux" ]; + sourceProvenance = [ lib.sourceTypes.binaryNativeCode ]; + }; +} diff --git a/pkgs/by-name/on/onedrivegui/package.nix b/pkgs/by-name/on/onedrivegui/package.nix index 2277cb5248de..76dac0203c20 100644 --- a/pkgs/by-name/on/onedrivegui/package.nix +++ b/pkgs/by-name/on/onedrivegui/package.nix @@ -10,7 +10,7 @@ }: let - version = "1.1.0rc3"; + version = "1.1.0"; setupPy = writeText "setup.py" '' from setuptools import setup diff --git a/pkgs/by-name/pl/plasticity/package.nix b/pkgs/by-name/pl/plasticity/package.nix index dcc33000da72..08e4020ca72e 100644 --- a/pkgs/by-name/pl/plasticity/package.nix +++ b/pkgs/by-name/pl/plasticity/package.nix @@ -33,11 +33,11 @@ }: stdenv.mkDerivation rec { pname = "plasticity"; - version = "24.1.8"; + version = "24.2.0"; src = fetchurl { url = "https://github.com/nkallen/plasticity/releases/download/v${version}/Plasticity-${version}-1.x86_64.rpm"; - hash = "sha256-Hh1yf3JqzMEvorWztLvoTcnDAk48cNe7NcCLrvNQCzo="; + hash = "sha256-3dHS7chTgoD35AV/q8DHIYl43KbCsoFYEqSQHXm05tg="; }; passthru.updateScript = ./update.sh; diff --git a/pkgs/by-name/pu/pupdate/package.nix b/pkgs/by-name/pu/pupdate/package.nix index 270a08551549..9067c323c3ce 100644 --- a/pkgs/by-name/pu/pupdate/package.nix +++ b/pkgs/by-name/pu/pupdate/package.nix @@ -11,13 +11,13 @@ buildDotnetModule rec { pname = "pupdate"; - version = "3.13.0"; + version = "3.15.0"; src = fetchFromGitHub { owner = "mattpannella"; repo = "pupdate"; rev = "${version}"; - hash = "sha256-czQU5O0z87v8p2GWYkRkhB5te/lub/yW4bMDd5EkVOQ="; + hash = "sha256-oe5Z9psxyPhxwrGVJpq5yXzmCUh3ugBQ4NQ/eoCD9AA="; }; buildInputs = [ diff --git a/pkgs/by-name/qu/quill-log/package.nix b/pkgs/by-name/qu/quill-log/package.nix index b75caea66099..37ceb53ce0f2 100644 --- a/pkgs/by-name/qu/quill-log/package.nix +++ b/pkgs/by-name/qu/quill-log/package.nix @@ -7,13 +7,13 @@ stdenv.mkDerivation rec { pname = "quill-log"; - version = "7.0.0"; + version = "7.1.0"; src = fetchFromGitHub { owner = "odygrd"; repo = "quill"; rev = "v${version}"; - hash = "sha256-lNbr8oPyD/IOP+R2QKTYm9eF3jpYBCXeCtK25ibXtnM="; + hash = "sha256-O+nCznhyoGq4u6bTPKaFMrRdFsH3uZmGFpFr4yjCq3I="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/by-name/se/sendme/package.nix b/pkgs/by-name/se/sendme/package.nix index 204b3e1ca1c1..e355dd99f317 100644 --- a/pkgs/by-name/se/sendme/package.nix +++ b/pkgs/by-name/se/sendme/package.nix @@ -7,16 +7,16 @@ rustPlatform.buildRustPackage rec { pname = "sendme"; - version = "0.15.0"; + version = "0.16.0"; src = fetchFromGitHub { owner = "n0-computer"; repo = pname; rev = "v${version}"; - hash = "sha256-wU9NnHqn/lTiPQB51o+CTNA1UWIOa21winiLW9ih7dM="; + hash = "sha256-nDYsNaR3NQ6ut6gtHwEoiwhj4B4Bac5+NOOq3H2NCYY="; }; - cargoHash = "sha256-y8VnunKmNRMO8VOL6u1FpF3Rec+BD4E1KW9Z2J8/2xs="; + cargoHash = "sha256-U2/GUpWtpTX+RCBojh3N6DsWB0gjFkH1mGA+AS+fH+o="; buildInputs = lib.optionals stdenv.isDarwin ( with darwin.apple_sdk.frameworks; [ diff --git a/pkgs/by-name/si/sirius/package.nix b/pkgs/by-name/si/sirius/package.nix index e286810bcc34..34ee961d1404 100644 --- a/pkgs/by-name/si/sirius/package.nix +++ b/pkgs/by-name/si/sirius/package.nix @@ -21,6 +21,8 @@ , boost , eigen , libvdwxc +, enablePython ? false +, pythonPackages ? null , llvmPackages , cudaPackages , rocmPackages @@ -35,6 +37,7 @@ }: assert builtins.elem gpuBackend [ "none" "cuda" "rocm" ]; +assert enablePython -> pythonPackages != null; stdenv.mkDerivation rec { pname = "SIRIUS"; @@ -81,10 +84,23 @@ stdenv.mkDerivation rec { ] ++ lib.optionals (gpuBackend == "rocm") [ rocmPackages.clr rocmPackages.rocblas - ] ++ lib.optional stdenv.isDarwin llvmPackages.openmp - ; + ] ++ lib.optionals stdenv.isDarwin [ + llvmPackages.openmp + ] ++ lib.optionals enablePython (with pythonPackages; [ + python + pybind11 + ]); - propagatedBuildInputs = [ (lib.getBin mpi) ]; + propagatedBuildInputs = [ + (lib.getBin mpi) + ] ++ lib.optionals enablePython (with pythonPackages; [ + mpi4py + voluptuous + numpy + h5py + scipy + pyyaml + ]); CXXFLAGS = [ # GCC 13: error: 'uintptr_t' in namespace 'std' does not name a type @@ -92,20 +108,20 @@ stdenv.mkDerivation rec { ]; cmakeFlags = [ - "-DUSE_SCALAPACK=ON" + "-DSIRIUS_USE_SCALAPACK=ON" + "-DSIRIUS_USE_VDWXC=ON" + "-DSIRIUS_CREATE_FORTRAN_BINDINGS=ON" + "-DSIRIUS_USE_OPENMP=ON" "-DBUILD_TESTING=ON" - "-DUSE_VDWXC=ON" - "-DCREATE_FORTRAN_BINDINGS=ON" - "-DUSE_OPENMP=ON" - "-DBUILD_TESTING=ON" - ] - ++ lib.optionals (gpuBackend == "cuda") [ - "-DUSE_CUDA=ON" + ] ++ lib.optionals (gpuBackend == "cuda") [ + "-DSIRIUS_USE_CUDA=ON" "-DCUDA_TOOLKIT_ROOT_DIR=${cudaPackages.cudatoolkit}" - ] - ++ lib.optionals (gpuBackend == "rocm") [ - "-DUSE_ROCM=ON" + (lib.cmakeFeature "CMAKE_CUDA_ARCHITECTURES" cudaPackages.flags.cmakeCudaArchitecturesString) + ] ++ lib.optionals (gpuBackend == "rocm") [ + "-DSIRIUS_USE_ROCM=ON" "-DHIP_ROOT_DIR=${rocmPackages.clr}" + ] ++ lib.optionals enablePython [ + "-DSIRIUS_CREATE_PYTHON_MODULE=ON" ]; doCheck = true; diff --git a/pkgs/by-name/ta/tartufo/package.nix b/pkgs/by-name/ta/tartufo/package.nix new file mode 100644 index 000000000000..1ee23cf2516c --- /dev/null +++ b/pkgs/by-name/ta/tartufo/package.nix @@ -0,0 +1,42 @@ +{ + lib, + python3, + fetchFromGitHub, +}: + +python3.pkgs.buildPythonApplication rec { + pname = "tartufo"; + version = "5.0.1"; + pyproject = true; + + src = fetchFromGitHub { + owner = "godaddy"; + repo = "tartufo"; + rev = "refs/tags/v${version}"; + hash = "sha256-mwwenmSCxnzD2DLf1a/dsQjwJ2GetMgRGj/noqWJ/E0="; + }; + + pythonRelaxDeps = [ "tomlkit" ]; + + build-system = with python3.pkgs; [ poetry-core ]; + + dependencies = with python3.pkgs; [ + cached-property + click + colorama + gitpython + pygit2 + tomlkit + ]; + + pythonImportsCheck = [ "tartufo" ]; + + meta = { + description = "Tool to search through git repositories for high entropy strings and secrets"; + homepage = "https://github.com/godaddy/tartufo"; + changelog = "https://github.com/godaddy/tartufo/blob/${src.rev}/CHANGELOG.md"; + license = lib.licenses.gpl2Only; + maintainers = with lib.maintainers; [ fab ]; + mainProgram = "tartufo"; + }; +} diff --git a/pkgs/by-name/um/umpire/package.nix b/pkgs/by-name/um/umpire/package.nix index 17fae99e313f..54340d3fdeca 100644 --- a/pkgs/by-name/um/umpire/package.nix +++ b/pkgs/by-name/um/umpire/package.nix @@ -2,8 +2,13 @@ , lib , fetchFromGitHub , cmake +, config +, cudaSupport ? config.cudaSupport +, cudaPackages ? null }: +assert cudaSupport -> cudaPackages != null; + stdenv.mkDerivation rec { pname = "umpire"; version = "2024.07.0"; @@ -16,7 +21,22 @@ stdenv.mkDerivation rec { fetchSubmodules = true; }; - nativeBuildInputs = [ cmake ]; + nativeBuildInputs = [ + cmake + ] ++ lib.optionals cudaSupport [ + cudaPackages.cuda_nvcc + ]; + + buildInputs = lib.optionals cudaSupport (with cudaPackages; [ + cudatoolkit + cuda_cudart + ]); + + cmakeFlags = lib.optionals cudaSupport [ + "-DCUDA_TOOLKIT_ROOT_DIR=${cudaPackages.cudatoolkit}" + "-DENABLE_CUDA=ON" + (lib.cmakeFeature "CMAKE_CUDA_ARCHITECTURES" cudaPackages.flags.cmakeCudaArchitecturesString) + ]; meta = with lib; { description = "Application-focused API for memory management on NUMA & GPU architectures"; diff --git a/pkgs/data/fonts/last-resort/default.nix b/pkgs/data/fonts/last-resort/default.nix index 10d820bf5f7f..87fb95e96035 100644 --- a/pkgs/data/fonts/last-resort/default.nix +++ b/pkgs/data/fonts/last-resort/default.nix @@ -2,11 +2,11 @@ stdenvNoCC.mkDerivation rec { pname = "last-resort"; - version = "15.100"; + version = "16.000"; src = fetchurl { url = "https://github.com/unicode-org/last-resort-font/releases/download/${version}/LastResortHE-Regular.ttf"; - hash = "sha256-dPk6j7Orh1bg6GyzwsB4P9oQvepvl51YF4abpyhOVso="; + hash = "sha256-YMSKv8BenyujNZnE3LpAEF0eznHTdh8LJvdaOLWxeJU="; }; dontUnpack = true; diff --git a/pkgs/development/compilers/gnu-cobol/default.nix b/pkgs/development/compilers/gnu-cobol/default.nix deleted file mode 100644 index 83f24fff864e..000000000000 --- a/pkgs/development/compilers/gnu-cobol/default.nix +++ /dev/null @@ -1,116 +0,0 @@ -{ lib -, stdenv -, fetchurl -, autoconf269 -, automake -, libtool -, pkg-config -# libs -, cjson -, db -, gmp -, libxml2 -, ncurses -# docs -, help2man -, texinfo -, texliveBasic -# test -}: - -stdenv.mkDerivation rec { - pname = "gnu-cobol"; - version = "3.2"; - - src = fetchurl { - url = "mirror://sourceforge/gnucobol/${lib.versions.majorMinor version}/gnucobol-${version}.tar.xz"; - hash = "sha256-O7SK9GztR3n6z0H9wu5g5My4bqqZ0BCzZoUxXfOcLuI="; - }; - - nativeBuildInputs = [ - pkg-config - autoconf269 - automake - libtool - help2man - texinfo - texliveBasic - ]; - - buildInputs = [ - cjson - db - gmp - libxml2 - ncurses - ]; - - outputs = [ "bin" "dev" "lib" "out" ]; - # XXX: Without this, we get a cycle between bin and dev - propagatedBuildOutputs = []; - - # Skips a broken test - postPatch = '' - sed -i '/^AT_CHECK.*crud\.cob/i AT_SKIP_IF([true])' tests/testsuite.src/listings.at - # upstream reports the following tests as known failures - # test 843: - sed -i '14180i\AT_SKIP_IF([true])' tests/testsuite.src/run_misc.at - # test 875: - sed -i '2894s/^/AT_SKIP_IF([true])/' tests/testsuite.src/run_file.at - ''; - - preConfigure = '' - autoconf - aclocal - automake - '' + lib.optionalString stdenv.isDarwin '' - # when building with nix on darwin, configure will use GNU strip, - # which fails due to using --strip-unneeded, which is not supported - substituteInPlace configure --replace-fail '"GNU strip"' 'FAKE GNU strip' - ''; - - # error: call to undeclared function 'xmlCleanupParser' - # ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] - env.CFLAGS = lib.optionalString stdenv.isDarwin "-Wno-error=implicit-function-declaration"; - - enableParallelBuilding = true; - - installFlags = [ "install-pdf" "install-html" "localedir=$out/share/locale" ]; - - # Tests must run after install. - doCheck = false; - - doInstallCheck = true; - installCheckPhase = '' - runHook preInstallCheck - - # Run tests - TESTSUITEFLAGS="--jobs=$NIX_BUILD_CORES" make check - - # Sanity check - message="Hello, COBOL!" - # XXX: Don't for a second think you can just get rid of these spaces, they - # are load bearing. - tee hello.cbl <