···2121in
2222stdenv.mkDerivation rec {
2323 pname = "clightning";
2424- version = "0.11.0.1";
2424+ version = "0.11.1";
25252626 src = fetchurl {
2727 url = "https://github.com/ElementsProject/lightning/releases/download/v${version}/clightning-v${version}.zip";
2828- sha256 = "e2ad6eead19a0cd8869e291c27d318cf553bb015339c1f0e8d8b30e7bc0910d8";
2828+ sha256 = "0vsh6gpv3458pfc5cggay9pw7bxjzyxpcniks9b2s3y1rxwk15xi";
2929 };
30303131 # when building on darwin we need dawin.cctools to provide the correct libtool
···4848 logo64 = "${sage-src}/src/doc/common/themes/sage/static/sageicon.png";
4949 };
50505151+ jupyter-kernel-specs = pkgs.jupyter-kernel.create {
5252+ definitions = pkgs.jupyter-kernel.default // {
5353+ sagemath = jupyter-kernel-definition;
5454+ };
5555+ };
5656+5157 three = callPackage ./threejs-sage.nix { };
52585359 # A bash script setting various environment variables to tell sage where
···7379 # The documentation for sage, building it takes a lot of ram.
7480 sagedoc = callPackage ./sagedoc.nix {
7581 inherit sage-with-env;
7676- inherit python3 maxima;
8282+ inherit python3 maxima jupyter-kernel-specs;
7783 };
78847985 # sagelib with added wrappers and a dependency on sage-tests to make sure thet tests were run.
···167173in
168174# A wrapper around sage that makes sure sage finds its docs (if they were build).
169175callPackage ./sage.nix {
170170- inherit sage-tests sage-with-env sagedoc jupyter-kernel-definition;
176176+ inherit sage-tests sage-with-env sagedoc jupyter-kernel-specs;
171177 inherit withDoc requireSageTests;
172178}
···186186 export SAGE_EXTCODE='${sagelib.src}/src/sage/ext_data'
187187188188 # for find_library
189189- export DYLD_LIBRARY_PATH="${lib.makeLibraryPath [stdenv.cc.libc singular]}''${DYLD_LIBRARY_PATH:+:}$DYLD_LIBRARY_PATH"
189189+ export DYLD_LIBRARY_PATH="${lib.makeLibraryPath [stdenv.cc.libc singular giac]}''${DYLD_LIBRARY_PATH:+:}$DYLD_LIBRARY_PATH"
190190 '';
191191} // { # equivalent of `passthru`, which `writeTextFile` doesn't support
192192 lib = sagelib;
+5-84
pkgs/applications/science/math/sage/sage-src.nix
···5858 );
5959in
6060stdenv.mkDerivation rec {
6161- version = "9.5";
6161+ version = "9.6";
6262 pname = "sage-src";
63636464 src = fetchFromGitHub {
6565 owner = "sagemath";
6666 repo = "sage";
6767 rev = version;
6868- sha256 = "sha256-uOsLpsGpcIGs8Xr82X82MElnTB2E908gytyNJ8WVD5w=";
6868+ sha256 = "sha256-QY8Yga3hD1WhSCtA2/PVry8hHlMmC31J8jCBFtWgIU0=";
6969 };
70707171 # Patches needed because of particularities of nix or the way this is packaged.
7272 # The goal is to upstream all of them and get rid of this list.
7373 nixPatches = [
7474- # Since https://trac.sagemath.org/ticket/32174, some external features are
7575- # marked as "safe" and get auto-detected, in which case the corresponding
7676- # optional tests are executed. We disable auto-detection of safe features if
7777- # we are doctesting with an "--optional" argument which does not include
7878- # "sage", because tests from autodetected features expect context provided
7979- # by running basic sage tests. This is necessary to test sagemath_doc_html
8080- # separately. See https://trac.sagemath.org/ticket/26110 for a related
8181- # upstream discussion (from the time when Sage still had optional py2/py3
8282- # tags).
8383- ./patches/Only-test-external-software-when-all-of-sage-is.patch
8484-8574 # Fixes a potential race condition which can lead to transient doctest failures.
8675 ./patches/fix-ecl-race.patch
8776···120109 # https://trac.sagemath.org/ticket/32959
121110 ./patches/linbox-1.7-upgrade.patch
122111123123- # https://trac.sagemath.org/ticket/33170
124124- (fetchSageDiff {
125125- base = "9.6.beta5";
126126- name = "ipython-8.1-update.patch";
127127- rev = "4d2b53f1541375861310af3a7f7109c1c2ed475d";
128128- sha256 = "sha256-ELda/VBzsQH7NdFas69fQ35QPUoJCeLx/gxT1j7qGR8=";
129129- })
130130-131131- # https://trac.sagemath.org/ticket/32968
132132- (fetchSageDiff {
133133- base = "9.5";
134134- name = "sphinx-4.3-update.patch";
135135- rev = "fc84f82f52b6f05f512cb359ec7c100f93cf8841";
136136- sha256 = "sha256-bBbfdcnw/9LUOlY8rHJRbFJEdMXK4shosqTNaobTS1Q=";
137137- })
138138-139139- # https://trac.sagemath.org/ticket/33189
140140- (fetchSageDiff {
141141- base = "9.5";
142142- name = "arb-2.22-update.patch";
143143- rev = "53532ddd4e2dc92469c1590ebf0c40f8f69bf579";
144144- sha256 = "sha256-6SoSBvIlqvNwZV3jTB6uPdUtaWIOeNmddi2poK/WvGs=";
145145- })
146146-147147- # TODO: This will not be necessary when Sphinx 4.4.1 is released,
148148- # since some warnings introduced in 4.4.0 will be disabled by then
149149- # (https://github.com/sphinx-doc/sphinx/pull/10126).
150150- # https://trac.sagemath.org/ticket/33272
151151- (fetchSageDiff {
152152- base = "9.5";
153153- name = "sphinx-4.4-warnings.patch";
154154- rev = "97d7958bed441cf2ccc714d88f83d3a8426bc085";
155155- sha256 = "sha256-y1STE0oxswnijGCsBw8eHWWqpmT1XMznIfA0vvX9pFA=";
156156- })
157157-158112 # adapted from https://trac.sagemath.org/ticket/23712#comment:22
159113 ./patches/tachyon-renamed-focallength.patch
160114161161- # https://trac.sagemath.org/ticket/33336
162162- (fetchSageDiff {
163163- base = "9.6.beta2";
164164- name = "scipy-1.8-update.patch";
165165- rev = "9c8235e44ffb509efa8a3ca6cdb55154e2b5066d";
166166- sha256 = "sha256-bfc4ljNOxVnhlmxIuNbjbKl4vJXYq2tlF3Z8bbC8PWw=";
167167- })
168168-169169- # https://trac.sagemath.org/ticket/33495
170170- (fetchSageDiff {
171171- base = "9.6.beta5";
172172- name = "networkx-2.7-update.patch";
173173- rev = "8452003846a7303100847d8d0ed642fc642c11d6";
174174- sha256 = "sha256-A/XMouPlc2sjFp30L+56fBGJXydS2EtzfPOV98FCDqI=";
175175- })
176176-177177- # https://trac.sagemath.org/ticket/33226
178178- (fetchSageDiff {
179179- base = "9.6.beta0";
180180- name = "giac-1.7.0-45-update.patch";
181181- rev = "33ea2adf01e9e2ce9f1e33779f0b1ac0d9d1989c";
182182- sha256 = "sha256-DOyxahf3+IaYdkgmAReNDCorRzMgO8+yiVrJ5TW1km0=";
183183- })
184184-185185- # https://trac.sagemath.org/ticket/33398
186186- (fetchSageDiff {
187187- base = "9.6.beta4";
188188- name = "sympy-1.10-update.patch";
189189- rev = "6b7c3a28656180e42163dc10f7b4a571b93e5f27";
190190- sha256 = "sha256-fnUyM2yjHkCykKRfzQQ4glcUYmCS/fYzDzmCf0nuebk=";
191191- # The patch contains a whitespace change to a file that didn't exist in Sage 9.5.
192192- excludes = [ "build/*" "src/sage/manifolds/vector_bundle_fiber_element.py" ];
193193- })
194194-195115 # docutils 0.18.1 now triggers Sphinx warnings. tolerate them for
196196- # now, because patching Sphinx is not feasible.
197197- # https://github.com/sphinx-doc/sphinx/issues/9777#issuecomment-1104481271
116116+ # now, because patching Sphinx is not feasible. remove when Sphinx
117117+ # 5.0 hits nixpkgs.
118118+ # https://github.com/sphinx-doc/sphinx/pull/10372
198119 ./patches/docutils-0.18.1-deprecation.patch
199120 ];
200121
+3-12
pkgs/applications/science/math/sage/sage.nix
···22, makeWrapper
33, sage-tests
44, sage-with-env
55-, jupyter-kernel-definition
66-, jupyter-kernel
55+, jupyter-kernel-specs
76, sagedoc
87, withDoc
98, requireSageTests
···1211# A wrapper that makes sure sage finds its docs (if they were build) and the
1312# jupyter kernel spec.
14131515-let
1616- # generate kernel spec + default kernels
1717- kernel-specs = jupyter-kernel.create {
1818- definitions = jupyter-kernel.default // {
1919- sagemath = jupyter-kernel-definition;
2020- };
2121- };
2222-in
2314stdenv.mkDerivation rec {
2415 version = src.version;
2516 pname = "sage";
···4334 --set SAGE_DOC_SRC_OVERRIDE "${src}/src/doc" ${
4435 lib.optionalString withDoc "--set SAGE_DOC_OVERRIDE ${sagedoc}/share/doc/sage"
4536 } \
4646- --prefix JUPYTER_PATH : "${kernel-specs}"
3737+ --prefix JUPYTER_PATH : "${jupyter-kernel-specs}"
4738 '';
48394940 doInstallCheck = withDoc;
···5849 quicktest = sage-tests.override { longTests = false; timeLimit = 600; }; # as many tests as possible in ~10m
5950 doc = sagedoc;
6051 lib = sage-with-env.env.lib;
6161- kernelspec = jupyter-kernel-definition;
5252+ kernelspec = jupyter-kernel-specs.definition.sagemath;
6253 };
63546455 meta = with lib; {
+13-3
pkgs/applications/science/math/sage/sagedoc.nix
···11{ stdenv
22, sage-with-env
33, python3
44+, jupyter-kernel-specs
45, maxima
56, tachyon
67, jmol
···5960 OUTPUT="$OUTPUT_DIR/options.txt"
6061 ${sage-with-env}/bin/sage -advanced > "$OUTPUT"
61626262- ${sage-with-env}/bin/sage --docbuild \
6363+ # jupyter-sphinx calls the sagemath jupyter kernel during docbuild
6464+ export JUPYTER_PATH=${jupyter-kernel-specs}
6565+6666+ # sage --docbuild unsets JUPYTER_PATH, so we call sage_docbuild directly
6767+ # https://trac.sagemath.org/ticket/33650#comment:32
6868+ ${sage-with-env}/bin/sage --python3 -m sage_docbuild \
6369 --mathjax \
6470 --no-pdf-links \
6565- all html
7171+ all html < /dev/null
6672 '';
67736874 installPhase = ''
···83898490 doCheck = true;
8591 checkPhase = ''
8686- ${sage-with-env}/bin/sage -t --optional=sagemath_doc_html --all
9292+ # sagemath_doc_html tests assume sage tests are being run, so we
9393+ # compromise: we run standard tests, but only on files containing
9494+ # relevant tests. as of Sage 9.6, there are only 4 such files.
9595+ grep -PRl "#.*optional.*sagemath_doc_html" ${src}/src/sage{,_docbuild} | \
9696+ xargs ${sage-with-env}/bin/sage -t --optional=sage,sagemath_doc_html
8797 '';
8898}
+6-2
pkgs/applications/science/math/sage/sagelib.nix
···6767, pillow
6868, ipykernel
6969, networkx
7070-, sphinx # TODO: this is in setup.cfg, bug should we override it?
7070+, ptyprocess
7171+, lrcalc-python
7272+, sphinx # TODO: this is in setup.cfg, should we override it?
7173}:
72747375assert (!blas.isILP64) && (!lapack.isILP64);
···157159 networkx
158160 jupyter-client
159161 ipywidgets
162162+ ptyprocess
163163+ lrcalc-python
160164 sphinx
161165 ];
162166···188192 # Sage tests already catch any relevant API breakage.
189193 # according to the discussion at https://trac.sagemath.org/ticket/33520,
190194 # upper bounds will be less noisy starting from Sage 9.6.
191191- sed -i 's/==2.1.0rc1/>=2.1.1/' ../gmpy2/install-requires.txt
195195+ sed -i 's/==0.5.1/>=0.5.1/' ../ptyprocess/install-requires.txt
192196 sed -i 's/, <[^, ]*//' ../*/install-requires.txt
193197194198 for infile in src/*.m4; do
···4747 uuid = uuid.replace("@", "")
4848 url: str = f"https://extensions.gnome.org/extension-data/{uuid}.v{version}.shell-extension.zip"
49495050- # TODO remove when Vitals@CoreCoding.com version != 53, this extension has a missing manifest.json
5151- if url == 'https://extensions.gnome.org/extension-data/VitalsCoreCoding.com.v53.shell-extension.zip':
5252- url = 'https://extensions.gnome.org/extension-data/VitalsCoreCoding.com.v53.shell-extension_v1BI2FB.zip'
5353-5450 # Download extension and add the zip content to nix-store
5551 process = subprocess.run(
5652 ["nix-prefetch-url", "--unpack", "--print-path", url], capture_output=True, text=True
+86-13
pkgs/development/interpreters/bats/default.nix
···66, coreutils
77, gnugrep
88, ncurses
99+, findutils
1010+, hostname
1111+, parallel
1212+, flock
1313+, ps
1414+, bats
915, lsof
1016, doInstallCheck ? true
1117}:
···31373238 solutions = {
3339 bats = {
3434- scripts = [ "bin/bats" ];
4040+ scripts = [
4141+ "bin/bats"
4242+ "libexec/bats-core/*"
4343+ "lib/bats-core/*"
4444+ ];
3545 interpreter = "${bash}/bin/bash";
3636- inputs = [ bash coreutils gnugrep ];
4646+ inputs = [
4747+ bash
4848+ coreutils
4949+ gnugrep
5050+ ncurses
5151+ findutils
5252+ hostname
5353+ parallel
5454+ flock
5555+ "lib/bats-core"
5656+ "libexec/bats-core"
5757+ ];
3758 fake = {
3838- external = [ "greadlink" ];
5959+ external = [
6060+ "greadlink"
6161+ "shlock"
6262+ ];
3963 };
4064 fix = {
4165 "$BATS_ROOT" = [ "${placeholder "out"}" ];
6666+ "$BATS_LIBEXEC" = [ "${placeholder "out"}/libexec/bats-core" ];
4267 };
4368 keep = {
4469 "${placeholder "out"}/libexec/bats-core/bats" = true;
7070+ source = [
7171+ "${placeholder "out"}/lib/bats-core/validator.bash"
7272+ "${placeholder "out"}/lib/bats-core/preprocessing.bash"
7373+ "$BATS_TEST_SOURCE"
7474+ "${placeholder "out"}/lib/bats-core/tracing.bash"
7575+ "${placeholder "out"}/lib/bats-core/test_functions.bash"
7676+ "$library_load_path"
7777+ "${placeholder "out"}/lib/bats-core/common.bash"
7878+ "${placeholder "out"}/lib/bats-core/semaphore.bash"
7979+ "${placeholder "out"}/lib/bats-core/formatter.bash"
8080+ ];
8181+ "$report_formatter" = true;
8282+ "$formatter" = true;
8383+ "$pre_command" = true;
8484+ "$BATS_TEST_NAME" = true;
8585+ "${placeholder "out"}/libexec/bats-core/bats-exec-test" = true;
4586 };
8787+ execer = [
8888+ /*
8989+ both blatant lies for expedience; these can certainly exec args
9090+ they may be safe here, because they may always run things that
9191+ are ultimately in libexec?
9292+ TODO: handle parallel and flock in binlore/resholve
9393+ */
9494+ "cannot:${parallel}/bin/parallel"
9595+ "cannot:${flock}/bin/flock"
9696+9797+ "cannot:libexec/bats-core/bats-preprocess"
9898+9999+ # these do exec, but other internal files
100100+ "cannot:libexec/bats-core/bats-exec-file"
101101+ "cannot:libexec/bats-core/bats-exec-suite"
102102+ ];
46103 };
47104 };
481054949- inherit doInstallCheck;
5050- installCheckInputs = [ ncurses ] ++ lib.optionals stdenv.isDarwin [ lsof ];
5151- installCheckPhase = ''
5252- # TODO: cut if https://github.com/bats-core/bats-core/issues/418 allows
5353- sed -i '/test works even if PATH is reset/a skip' test/bats.bats
106106+ passthru.tests.upstream = bats.unresholved.overrideAttrs (old: {
107107+ name = "${bats.name}-tests";
108108+ installCheckInputs = [
109109+ ncurses
110110+ parallel # skips some tests if it can't detect
111111+ flock # skips some tests if it can't detect
112112+ ps
113113+ ] ++ lib.optionals stdenv.isDarwin [ lsof ];
114114+ inherit doInstallCheck;
115115+ installCheckPhase = ''
116116+ # TODO: cut if https://github.com/bats-core/bats-core/issues/418 allows
117117+ sed -i '/test works even if PATH is reset/a skip "disabled for nix build"' test/bats.bats
118118+ # TODO: cut when https://github.com/bats-core/bats-core/pull/554 allows
119119+ substituteInPlace test/parallel.bats --replace '&& type -p shlock' '|| type -p shlock'
541205555- # test generates file with absolute shebang dynamically
5656- substituteInPlace test/install.bats --replace \
5757- "/usr/bin/env bash" "${bash}/bin/bash"
5858- bin/bats test
5959- '';
121121+ # skip tests that assume bats `install.sh` will be in BATS_ROOT
122122+ rm test/root.bats
123123+124124+ # test generates file with absolute shebang dynamically
125125+ substituteInPlace test/install.bats --replace \
126126+ "/usr/bin/env bash" "${bash}/bin/bash"
127127+128128+ ${bats}/bin/bats test
129129+ rm -rf $out
130130+ touch $out
131131+ '';
132132+ });
6013361134 meta = with lib; {
62135 homepage = "https://github.com/bats-core/bats-core";
···11111212 buildInputs = [ readline bzip2 ];
13131414+ # Workaround build failure on -fno-common toolchains like upstream
1515+ # gcc-10. Otherwise build fails as:
1616+ # ld: ../util/libutil.a(estream-printf.o):/build/gnupg-1.4.23/util/../include/memory.h:100: multiple definition of
1717+ # `memory_debug_mode'; gpgsplit.o:/build/gnupg-1.4.23/tools/../include/memory.h:100: first defined here
1818+ NIX_CFLAGS_COMPILE = "-fcommon";
1919+1420 doCheck = true;
15211622 meta = with lib; {
+1
pkgs/top-level/aliases.nix
···904904 ### O ###
905905906906 oathToolkit = oath-toolkit; # Added 2022-04-04
907907+ oci-image-tool = throw "oci-image-tool is no longer actively maintained, and has had major deficiencies for several years."; # Added 2022-05-14;
907908 oracleXE = throw "oracleXE has been removed, as it's heavily outdated and unmaintained"; # Added 2020-10-09
908909 OVMF-CSM = throw "OVMF-CSM has been removed in favor of OVMFFull"; # Added 2021-10-16
909910 OVMF-secureBoot = throw "OVMF-secureBoot has been removed in favor of OVMFFull"; # Added 2021-10-16