diff --git a/third_party/nixpkgs/doc/Makefile b/third_party/nixpkgs/doc/Makefile index 49f361ebb6..4f520779f5 100644 --- a/third_party/nixpkgs/doc/Makefile +++ b/third_party/nixpkgs/doc/Makefile @@ -39,6 +39,7 @@ out/html/index.html: doc-support/result manual-full.xml style.css highlightjs mkdir -p out/html/highlightjs/ cp -r highlightjs out/html/ + cp -r media out/html/ cp ./overrides.css out/html/ cp ./style.css out/html/style.css @@ -53,6 +54,7 @@ out/epub/manual.epub: manual-full.xml doc-support/result/epub.xsl \ ./manual-full.xml + cp -r media out/epub/scratch/OEBPS cp ./overrides.css out/epub/scratch/OEBPS cp ./style.css out/epub/scratch/OEBPS mkdir -p out/epub/scratch/OEBPS/images/callouts/ @@ -87,24 +89,16 @@ functions/library/generated: doc-support/result ln -rfs ./doc-support/result/function-docs functions/library/generated %.section.xml: %.section.md - pandoc $^ -w docbook \ + pandoc $^ -t docbook \ + --extract-media=media \ + --lua-filter=$(PANDOC_LUA_FILTERS_DIR)/diagram-generator.lua \ -f markdown+smart \ - | sed -e 's|||' \ - -e 's|||' \ - -e '1s| id=| xml:id=|' \ - -e '1s|\(<[^ ]* \)|\1xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" |' \ | cat > $@ %.chapter.xml: %.chapter.md - pandoc $^ -w docbook \ + pandoc $^ -t docbook \ --top-level-division=chapter \ + --extract-media=media \ + --lua-filter=$(PANDOC_LUA_FILTERS_DIR)/diagram-generator.lua \ -f markdown+smart \ - | sed -e 's|||' \ - -e 's|||' \ - -e '1s| id=| xml:id=|' \ - -e '1s|\(<[^ ]* \)|\1|' \ | cat > $@ diff --git a/third_party/nixpkgs/doc/contributing/submitting-changes.chapter.md b/third_party/nixpkgs/doc/contributing/submitting-changes.chapter.md new file mode 100644 index 0000000000..40fc5ea789 --- /dev/null +++ b/third_party/nixpkgs/doc/contributing/submitting-changes.chapter.md @@ -0,0 +1,217 @@ +# Submitting changes {#chap-submitting-changes} + +## Making patches {#submitting-changes-making-patches} + +- Read [Manual (How to write packages for Nix)](https://nixos.org/nixpkgs/manual/). + +- Fork [the Nixpkgs repository](https://github.com/nixos/nixpkgs/) on GitHub. + +- Create a branch for your future fix. + + - You can make branch from a commit of your local `nixos-version`. That will help you to avoid additional local compilations. Because you will receive packages from binary cache. For example + + ```ShellSession + $ nixos-version --hash + 0998212 + $ git checkout 0998212 + $ git checkout -b 'fix/pkg-name-update' + ``` + + - Please avoid working directly on the `master` branch. + +- Make commits of logical units. + +- If you removed pkgs or made some major NixOS changes, write about it in the release notes for the next stable release. For example `nixos/doc/manual/release-notes/rl-2003.xml`. + +- Check for unnecessary whitespace with `git diff --check` before committing. + +- Format the commit in a following way: + + ``` + (pkg-name | nixos/): (from -> to | init at version | refactor | etc) + Additional information. + ``` + + - Examples: + - `nginx: init at 2.0.1` + - `firefox: 54.0.1 -> 55.0` + - `nixos/hydra: add bazBaz option` + - `nixos/nginx: refactor config generation` + +- Test your changes. If you work with + + - nixpkgs: + + - update pkg + - `nix-env -i pkg-name -f ` + - add pkg + - Make sure it’s in `pkgs/top-level/all-packages.nix` + - `nix-env -i pkg-name -f ` + - _If you don’t want to install pkg in you profile_. + - `nix-build -A pkg-attribute-name /default.nix` and check results in the folder `result`. It will appear in the same directory where you did `nix-build`. + - If you did `nix-env -i pkg-name` you can do `nix-env -e pkg-name` to uninstall it from your system. + + - NixOS and its modules: + - You can add new module to your NixOS configuration file (usually it’s `/etc/nixos/configuration.nix`). And do `sudo nixos-rebuild test -I nixpkgs= --fast`. + +- If you have commits `pkg-name: oh, forgot to insert whitespace`: squash commits in this case. Use `git rebase -i`. + +- [Rebase](https://git-scm.com/book/en/v2/Git-Branching-Rebasing) your branch against current `master`. + +## Submitting changes {#submitting-changes-submitting-changes} + +- Push your changes to your fork of nixpkgs. +- Create the pull request +- Follow [the contribution guidelines](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md#submitting-changes). + +## Submitting security fixes {#submitting-changes-submitting-security-fixes} + +Security fixes are submitted in the same way as other changes and thus the same guidelines apply. + +If the security fix comes in the form of a patch and a CVE is available, then the name of the patch should be the CVE identifier, so e.g. `CVE-2019-13636.patch` in the case of a patch that is included in the Nixpkgs tree. If a patch is fetched the name needs to be set as well, e.g.: + +```nix +(fetchpatch { + name = "CVE-2019-11068.patch"; + url = "https://gitlab.gnome.org/GNOME/libxslt/commit/e03553605b45c88f0b4b2980adfbbb8f6fca2fd6.patch"; + sha256 = "0pkpb4837km15zgg6h57bncp66d5lwrlvkr73h0lanywq7zrwhj8"; +}) +``` + +If a security fix applies to both master and a stable release then, similar to regular changes, they are preferably delivered via master first and cherry-picked to the release branch. + +Critical security fixes may by-pass the staging branches and be delivered directly to release branches such as `master` and `release-*`. + +## Pull Request Template {#submitting-changes-pull-request-template} + +The pull request template helps determine what steps have been made for a contribution so far, and will help guide maintainers on the status of a change. The motivation section of the PR should include any extra details the title does not address and link any existing issues related to the pull request. + +When a PR is created, it will be pre-populated with some checkboxes detailed below: + +### Tested using sandboxing {#submitting-changes-tested-with-sandbox} + +When sandbox builds are enabled, Nix will setup an isolated environment for each build process. It is used to remove further hidden dependencies set by the build environment to improve reproducibility. This includes access to the network during the build outside of `fetch*` functions and files outside the Nix store. Depending on the operating system access to other resources are blocked as well (ex. inter process communication is isolated on Linux); see [sandbox](https://nixos.org/nix/manual/#conf-sandbox) in Nix manual for details. + +Sandboxing is not enabled by default in Nix due to a small performance hit on each build. In pull requests for [nixpkgs](https://github.com/NixOS/nixpkgs/) people are asked to test builds with sandboxing enabled (see `Tested using sandboxing` in the pull request template) because in sandboxing is also used. + +Depending if you use NixOS or other platforms you can use one of the following methods to enable sandboxing **before** building the package: + +- **Globally enable sandboxing on NixOS**: add the following to `configuration.nix` + + ```nix + nix.useSandbox = true; + ``` + +- **Globally enable sandboxing on non-NixOS platforms**: add the following to: `/etc/nix/nix.conf` + + ```ini + sandbox = true + ``` + +### Built on platform(s) {#submitting-changes-platform-diversity} + +Many Nix packages are designed to run on multiple platforms. As such, it’s important to let the maintainer know which platforms your changes have been tested on. It’s not always practical to test a change on all platforms, and is not required for a pull request to be merged. Only check the systems you tested the build on in this section. + +### Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests) {#submitting-changes-nixos-tests} + +Packages with automated tests are much more likely to be merged in a timely fashion because it doesn’t require as much manual testing by the maintainer to verify the functionality of the package. If there are existing tests for the package, they should be run to verify your changes do not break the tests. Tests only apply to packages with NixOS modules defined and can only be run on Linux. For more details on writing and running tests, see the [section in the NixOS manual](https://nixos.org/nixos/manual/index.html#sec-nixos-tests). + +### Tested compilation of all pkgs that depend on this change using `nixpkgs-review` {#submitting-changes-tested-compilation} + +If you are updating a package’s version, you can use nixpkgs-review to make sure all packages that depend on the updated package still compile correctly. The `nixpkgs-review` utility can look for and build all dependencies either based on uncommited changes with the `wip` option or specifying a github pull request number. + +review changes from pull request number 12345: + +```ShellSession +nix run nixpkgs.nixpkgs-review -c nixpkgs-review pr 12345 +``` + +review uncommitted changes: + +```ShellSession +nix run nixpkgs.nixpkgs-review -c nixpkgs-review wip +``` + +review changes from last commit: + +```ShellSession +nix run nixpkgs.nixpkgs-review -c nixpkgs-review rev HEAD +``` + +### Tested execution of all binary files (usually in `./result/bin/`) {#submitting-changes-tested-execution} + +It’s important to test any executables generated by a build when you change or create a package in nixpkgs. This can be done by looking in `./result/bin` and running any files in there, or at a minimum, the main executable for the package. For example, if you make a change to texlive, you probably would only check the binaries associated with the change you made rather than testing all of them. + +### Meets Nixpkgs contribution standards {#submitting-changes-contribution-standards} + +The last checkbox is fits [CONTRIBUTING.md](https://github.com/NixOS/nixpkgs/blob/master/.github/CONTRIBUTING.md). The contributing document has detailed information on standards the Nix community has for commit messages, reviews, licensing of contributions you make to the project, etc\... Everyone should read and understand the standards the community has for contributing before submitting a pull request. + +## Hotfixing pull requests {#submitting-changes-hotfixing-pull-requests} + +- Make the appropriate changes in you branch. +- Don’t create additional commits, do + - `git rebase -i` + - `git push --force` to your branch. + +## Commit policy {#submitting-changes-commit-policy} + +- Commits must be sufficiently tested before being merged, both for the master and staging branches. +- Hydra builds for master and staging should not be used as testing platform, it’s a build farm for changes that have been already tested. +- When changing the bootloader installation process, extra care must be taken. Grub installations cannot be rolled back, hence changes may break people’s installations forever. For any non-trivial change to the bootloader please file a PR asking for review, especially from \@edolstra. + +```{.graphviz caption="Staging workflow"} +digraph { + "small changes" [shape=none] + "mass-rebuilds and other large changes" [shape=none] + "critical security fixes" [shape=none] + "broken staging-next fixes" [shape=none] + + "small changes" -> master + "mass-rebuilds and other large changes" -> staging + "critical security fixes" -> master + "broken staging-next fixes" -> "staging-next" + + "staging-next" -> master [color="#E85EB0"] [label="stabilization ends"] [fontcolor="#E85EB0"] + "staging" -> "staging-next" [color="#E85EB0"] [label="stabilization starts"] [fontcolor="#E85EB0"] + + master -> "staging-next" -> staging [color="#5F5EE8"] [label="every six hours/any time"] [fontcolor="#5F5EE8"] +} +``` + +### Master branch {#submitting-changes-master-branch} + +The `master` branch is the main development branch. It should only see non-breaking commits that do not cause mass rebuilds. + +### Staging branch {#submitting-changes-staging-branch} + +The `staging` branch is a development branch where mass-rebuilds go. It should only see non-breaking mass-rebuild commits. That means it is not to be used for testing, and changes must have been well tested already. If the branch is already in a broken state, please refrain from adding extra new breakages. + +### Staging-next branch {#submitting-changes-staging-next-branch} + +The `staging-next` branch is for stabilizing mass-rebuilds submitted to the `staging` branch prior to merging them into `master`. Mass-rebuilds should go via the `staging` branch. It should only see non-breaking commits that are fixing issues blocking it from being merged into the `master ` branch. + +If the branch is already in a broken state, please refrain from adding extra new breakages. Stabilize it for a few days and then merge into master. + +### Stable release branches {#submitting-changes-stable-release-branches} + +For cherry-picking a commit to a stable release branch (“backporting”), use `git cherry-pick -x ` so that the original commit id is included in the commit. + +Add a reason for the backport by using `git cherry-pick -xe ` instead when it is not obvious from the original commit message. It is not needed when it's a minor version update that includes security and bug fixes but don't add new features or when the commit fixes an otherwise broken package. + +Here is an example of a cherry-picked commit message with good reason description: + +``` +zfs: Keep trying root import until it works + +Works around #11003. + +(cherry picked from commit 98b213a11041af39b39473906b595290e2a4e2f9) + +Reason: several people cannot boot with ZFS on NVMe +``` + +Other examples of reasons are: + +- Previously the build would fail due to, e.g., `getaddrinfo` not being defined +- The previous download links were all broken +- Crash when starting on some X11 systems diff --git a/third_party/nixpkgs/doc/contributing/submitting-changes.xml b/third_party/nixpkgs/doc/contributing/submitting-changes.xml deleted file mode 100644 index 22389c24ea..0000000000 --- a/third_party/nixpkgs/doc/contributing/submitting-changes.xml +++ /dev/null @@ -1,455 +0,0 @@ - - Submitting changes -
- Making patches - - - - - Read Manual (How to write packages for Nix). - - - - - Fork the Nixpkgs repository on GitHub. - - - - - Create a branch for your future fix. - - - - You can make branch from a commit of your local nixos-version. That will help you to avoid additional local compilations. Because you will receive packages from binary cache. For example - -$ nixos-version --hash -0998212 -$ git checkout 0998212 -$ git checkout -b 'fix/pkg-name-update' - - - - - - Please avoid working directly on the master branch. - - - - - - - - Make commits of logical units. - - - - - If you removed pkgs or made some major NixOS changes, write about it in the release notes for the next stable release. For example nixos/doc/manual/release-notes/rl-2003.xml. - - - - - Check for unnecessary whitespace with git diff --check before committing. - - - - - Format the commit in a following way: - - -(pkg-name | nixos/<module>): (from -> to | init at version | refactor | etc) -Additional information. - - - - - Examples: - - - - nginx: init at 2.0.1 - - - - - firefox: 54.0.1 -> 55.0 - - - - - nixos/hydra: add bazBaz option - - - - - nixos/nginx: refactor config generation - - - - - - - - - - Test your changes. If you work with - - - - nixpkgs: - - - - update pkg -> - - - - nix-env -i pkg-name -f <path to your local nixpkgs folder> - - - - - - - - add pkg -> - - - - Make sure it's in pkgs/top-level/all-packages.nix - - - - - nix-env -i pkg-name -f <path to your local nixpkgs folder> - - - - - - - - If you don't want to install pkg in you profile. - - - - nix-build -A pkg-attribute-name <path to your local nixpkgs folder>/default.nix and check results in the folder result. It will appear in the same directory where you did nix-build. - - - - - - - - If you did nix-env -i pkg-name you can do nix-env -e pkg-name to uninstall it from your system. - - - - - - - - NixOS and its modules: - - - - You can add new module to your NixOS configuration file (usually it's /etc/nixos/configuration.nix). And do sudo nixos-rebuild test -I nixpkgs=<path to your local nixpkgs folder> --fast. - - - - - - - - - - - If you have commits pkg-name: oh, forgot to insert whitespace: squash commits in this case. Use git rebase -i. - - - - - Rebase your branch against current master. - - - -
-
- Submitting changes - - - - - Push your changes to your fork of nixpkgs. - - - - - Create the pull request - - - - - Follow the contribution guidelines. - - - -
-
- Submitting security fixes - - - Security fixes are submitted in the same way as other changes and thus the same guidelines apply. - - - - If the security fix comes in the form of a patch and a CVE is available, then the name of the patch should be the CVE identifier, so e.g. CVE-2019-13636.patch in the case of a patch that is included in the Nixpkgs tree. If a patch is fetched the name needs to be set as well, e.g.: - - - -(fetchpatch { - name = "CVE-2019-11068.patch"; - url = "https://gitlab.gnome.org/GNOME/libxslt/commit/e03553605b45c88f0b4b2980adfbbb8f6fca2fd6.patch"; - sha256 = "0pkpb4837km15zgg6h57bncp66d5lwrlvkr73h0lanywq7zrwhj8"; -}) - - - - If a security fix applies to both master and a stable release then, similar to regular changes, they are preferably delivered via master first and cherry-picked to the release branch. - - - - Critical security fixes may by-pass the staging branches and be delivered directly to release branches such as master and release-*. - -
-
- Pull Request Template - - - The pull request template helps determine what steps have been made for a contribution so far, and will help guide maintainers on the status of a change. The motivation section of the PR should include any extra details the title does not address and link any existing issues related to the pull request. - - - - When a PR is created, it will be pre-populated with some checkboxes detailed below: - - -
- Tested using sandboxing - - - When sandbox builds are enabled, Nix will setup an isolated environment for each build process. It is used to remove further hidden dependencies set by the build environment to improve reproducibility. This includes access to the network during the build outside of fetch* functions and files outside the Nix store. Depending on the operating system access to other resources are blocked as well (ex. inter process communication is isolated on Linux); see sandbox in Nix manual for details. - - - - Sandboxing is not enabled by default in Nix due to a small performance hit on each build. In pull requests for nixpkgs people are asked to test builds with sandboxing enabled (see Tested using sandboxing in the pull request template) because inhttps://nixos.org/hydra/ sandboxing is also used. - - - - Depending if you use NixOS or other platforms you can use one of the following methods to enable sandboxing before building the package: - - - - Globally enable sandboxing on NixOS: add the following to configuration.nix -nix.useSandbox = true; - - - - - Globally enable sandboxing on non-NixOS platforms: add the following to: /etc/nix/nix.conf -sandbox = true - - - - -
- -
- Built on platform(s) - - - Many Nix packages are designed to run on multiple platforms. As such, it's important to let the maintainer know which platforms your changes have been tested on. It's not always practical to test a change on all platforms, and is not required for a pull request to be merged. Only check the systems you tested the build on in this section. - -
- -
- Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests) - - - Packages with automated tests are much more likely to be merged in a timely fashion because it doesn't require as much manual testing by the maintainer to verify the functionality of the package. If there are existing tests for the package, they should be run to verify your changes do not break the tests. Tests only apply to packages with NixOS modules defined and can only be run on Linux. For more details on writing and running tests, see the section in the NixOS manual. - -
- -
- Tested compilation of all pkgs that depend on this change using <command>nixpkgs-review</command> - - - If you are updating a package's version, you can use nixpkgs-review to make sure all packages that depend on the updated package still compile correctly. The nixpkgs-review utility can look for and build all dependencies either based on uncommited changes with the wip option or specifying a github pull request number. - - - - review changes from pull request number 12345: - nix run nixpkgs.nixpkgs-review -c nixpkgs-review pr 12345 - - - - review uncommitted changes: - nix run nixpkgs.nixpkgs-review -c nixpkgs-review wip - - - - review changes from last commit: - nix run nixpkgs.nixpkgs-review -c nixpkgs-review rev HEAD - -
- -
- Tested execution of all binary files (usually in <filename>./result/bin/</filename>) - - - It's important to test any executables generated by a build when you change or create a package in nixpkgs. This can be done by looking in ./result/bin and running any files in there, or at a minimum, the main executable for the package. For example, if you make a change to texlive, you probably would only check the binaries associated with the change you made rather than testing all of them. - -
- -
- Meets Nixpkgs contribution standards - - - The last checkbox is fits CONTRIBUTING.md. The contributing document has detailed information on standards the Nix community has for commit messages, reviews, licensing of contributions you make to the project, etc... Everyone should read and understand the standards the community has for contributing before submitting a pull request. - -
-
-
- Hotfixing pull requests - - - - - Make the appropriate changes in you branch. - - - - - Don't create additional commits, do - - - - git rebase -i - - - - - git push --force to your branch. - - - - - - -
-
- Commit policy - - - - - Commits must be sufficiently tested before being merged, both for the master and staging branches. - - - - - Hydra builds for master and staging should not be used as testing platform, it's a build farm for changes that have been already tested. - - - - - When changing the bootloader installation process, extra care must be taken. Grub installations cannot be rolled back, hence changes may break people's installations forever. For any non-trivial change to the bootloader please file a PR asking for review, especially from @edolstra. - - - - -
- Master branch - - The master branch is the main development branch. - It should only see non-breaking commits that do not cause mass rebuilds. - -
- -
- Staging branch - - The staging branch is a development branch where mass-rebuilds go. - It should only see non-breaking mass-rebuild commits. - That means it is not to be used for testing, and changes must have been well tested already. - If the branch is already in a broken state, please refrain from adding extra new breakages. - -
- -
- Staging-next branch - - The staging-next branch is for stabilizing mass-rebuilds submitted to the staging branch prior to merging them into master. - Mass-rebuilds should go via the staging branch. - It should only see non-breaking commits that are fixing issues blocking it from being merged into the master branch. - - - If the branch is already in a broken state, please refrain from adding extra new breakages. Stabilize it for a few days and then merge into master. - -
- -
- Stable release branches - - - For cherry-picking a commit to a stable release branch (backporting), use git cherry-pick -x <original commit> so that the original commit id is included in the commit. - - - - Add a reason for the backport by using git cherry-pick -xe <original commit> instead when it is not obvious from the original commit message. It is not needed when it’s a minor version update that includes security and bug fixes but don’t add new features or when the commit fixes an otherwise broken package. - - - - Here is an example of a cherry-picked commit message with good reason description: - - - -zfs: Keep trying root import until it works - -Works around #11003. - -(cherry picked from commit 98b213a11041af39b39473906b595290e2a4e2f9) - -Reason: several people cannot boot with ZFS on NVMe - - - - Other examples of reasons are: - - - - - - Previously the build would fail due to, e.g., getaddrinfo not being defined - - - - - The previous download links were all broken - - - - - Crash when starting on some X11 systems - - - -
-
-
diff --git a/third_party/nixpkgs/doc/default.nix b/third_party/nixpkgs/doc/default.nix index d9051167de..543a387417 100644 --- a/third_party/nixpkgs/doc/default.nix +++ b/third_party/nixpkgs/doc/default.nix @@ -5,10 +5,22 @@ let in pkgs.stdenv.mkDerivation { name = "nixpkgs-manual"; - buildInputs = with pkgs; [ pandoc libxml2 libxslt zip jing xmlformat ]; + nativeBuildInputs = with pkgs; [ + pandoc + graphviz + libxml2 + libxslt + zip + jing + xmlformat + ]; src = ./.; + makeFlags = [ + "PANDOC_LUA_FILTERS_DIR=${pkgs.pandoc-lua-filters}/share/pandoc/filters" + ]; + postPatch = '' ln -s ${doc-support} ./doc-support/result ''; diff --git a/third_party/nixpkgs/doc/languages-frameworks/bower.section.md b/third_party/nixpkgs/doc/languages-frameworks/bower.section.md new file mode 100644 index 0000000000..f408bd5b2c --- /dev/null +++ b/third_party/nixpkgs/doc/languages-frameworks/bower.section.md @@ -0,0 +1,158 @@ +# Bower {#sec-bower} + +[Bower](https://bower.io) is a package manager for web site front-end components. Bower packages (comprising of build artefacts and sometimes sources) are stored in `git` repositories, typically on Github. The package registry is run by the Bower team with package metadata coming from the `bower.json` file within each package. + +The end result of running Bower is a `bower_components` directory which can be included in the web app's build process. + +Bower can be run interactively, by installing `nodePackages.bower`. More interestingly, the Bower components can be declared in a Nix derivation, with the help of `nodePackages.bower2nix`. + +## bower2nix usage {#ssec-bower2nix-usage} + +Suppose you have a `bower.json` with the following contents: + +### Example bower.json {#ex-bowerJson} + +```json + "name": "my-web-app", + "dependencies": { + "angular": "~1.5.0", + "bootstrap": "~3.3.6" + } +``` + +Running `bower2nix` will produce something like the following output: + +```nix +{ fetchbower, buildEnv }: +buildEnv { name = "bower-env"; ignoreCollisions = true; paths = [ + (fetchbower "angular" "1.5.3" "~1.5.0" "1749xb0firxdra4rzadm4q9x90v6pzkbd7xmcyjk6qfza09ykk9y") + (fetchbower "bootstrap" "3.3.6" "~3.3.6" "1vvqlpbfcy0k5pncfjaiskj3y6scwifxygfqnw393sjfxiviwmbv") + (fetchbower "jquery" "2.2.2" "1.9.1 - 2" "10sp5h98sqwk90y4k6hbdviwqzvzwqf47r3r51pakch5ii2y7js1") +]; +``` + +Using the `bower2nix` command line arguments, the output can be redirected to a file. A name like `bower-packages.nix` would be fine. + +The resulting derivation is a union of all the downloaded Bower packages (and their dependencies). To use it, they still need to be linked together by Bower, which is where `buildBowerComponents` is useful. + +## buildBowerComponents function {#ssec-build-bower-components} + +The function is implemented in [pkgs/development/bower-modules/generic/default.nix](https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/bower-modules/generic/default.nix). + +### Example buildBowerComponents {#ex-buildBowerComponents} + +```{=docbook} + +bowerComponents = buildBowerComponents { + name = "my-web-app"; + generated = ./bower-packages.nix; + src = myWebApp; +}; + +``` + +In ["buildBowerComponents" example](#ex-buildBowerComponents) the following arguments are of special significance to the function: + +```{=docbook} + + + + generated specifies the file which was created by bower2nix. + + + + + src is your project's sources. It needs to contain a bower.json file. + + + +``` + +`buildBowerComponents` will run Bower to link together the output of `bower2nix`, resulting in a `bower_components` directory which can be used. + +Here is an example of a web frontend build process using `gulp`. You might use `grunt`, or anything else. + +### Example build script (gulpfile.js) {#ex-bowerGulpFile} + +```javascript +var gulp = require('gulp'); + +gulp.task('default', [], function () { + gulp.start('build'); +}); + +gulp.task('build', [], function () { + console.log("Just a dummy gulp build"); + gulp + .src(["./bower_components/**/*"]) + .pipe(gulp.dest("./gulpdist/")); +}); +``` + +### Example Full example — default.nix {#ex-buildBowerComponentsDefaultNix} + +```{=docbook} + +{ myWebApp ? { outPath = ./.; name = "myWebApp"; } +, pkgs ? import <nixpkgs> {} +}: + +pkgs.stdenv.mkDerivation { + name = "my-web-app-frontend"; + src = myWebApp; + + buildInputs = [ pkgs.nodePackages.gulp ]; + + bowerComponents = pkgs.buildBowerComponents { + name = "my-web-app"; + generated = ./bower-packages.nix; + src = myWebApp; + }; + + buildPhase = '' + cp --reflink=auto --no-preserve=mode -R $bowerComponents/bower_components . + export HOME=$PWD + ${pkgs.nodePackages.gulp}/bin/gulp build + ''; + + installPhase = "mv gulpdist $out"; +} + +``` + +A few notes about [Full example — `default.nix`](#ex-buildBowerComponentsDefaultNix): + +```{=docbook} + + + + The result of buildBowerComponents is an input to the frontend build. + + + + + Whether to symlink or copy the bower_components directory depends on the build tool in use. In this case a copy is used to avoid gulp silliness with permissions. + + + + + gulp requires HOME to refer to a writeable directory. + + + + + The actual build command. Other tools could be used. + + + +``` + +## Troubleshooting {#ssec-bower2nix-troubleshooting} + +### ENOCACHE errors from buildBowerComponents + +This means that Bower was looking for a package version which doesn't exist in the generated `bower-packages.nix`. + +If `bower.json` has been updated, then run `bower2nix` again. + +It could also be a bug in `bower2nix` or `fetchbower`. If possible, try reformulating the version specification in `bower.json`. diff --git a/third_party/nixpkgs/doc/languages-frameworks/bower.xml b/third_party/nixpkgs/doc/languages-frameworks/bower.xml deleted file mode 100644 index b0738cad29..0000000000 --- a/third_party/nixpkgs/doc/languages-frameworks/bower.xml +++ /dev/null @@ -1,196 +0,0 @@ -
- Bower - - - Bower is a package manager for web site front-end components. Bower packages (comprising of build artefacts and sometimes sources) are stored in git repositories, typically on Github. The package registry is run by the Bower team with package metadata coming from the bower.json file within each package. - - - - The end result of running Bower is a bower_components directory which can be included in the web app's build process. - - - - Bower can be run interactively, by installing nodePackages.bower. More interestingly, the Bower components can be declared in a Nix derivation, with the help of nodePackages.bower2nix. - - -
- <command>bower2nix</command> usage - - - Suppose you have a bower.json with the following contents: - - <filename>bower.json</filename> - - - - - - - - Running bower2nix will produce something like the following output: - - - - - - - Using the bower2nix command line arguments, the output can be redirected to a file. A name like bower-packages.nix would be fine. - - - - The resulting derivation is a union of all the downloaded Bower packages (and their dependencies). To use it, they still need to be linked together by Bower, which is where buildBowerComponents is useful. - -
- -
- <varname>buildBowerComponents</varname> function - - - The function is implemented in pkgs/development/bower-modules/generic/default.nix. Example usage: - - buildBowerComponents - -bowerComponents = buildBowerComponents { - name = "my-web-app"; - generated = ./bower-packages.nix; - src = myWebApp; -}; - - - - - - In , the following arguments are of special significance to the function: - - - - generated specifies the file which was created by bower2nix. - - - - - src is your project's sources. It needs to contain a bower.json file. - - - - - - - buildBowerComponents will run Bower to link together the output of bower2nix, resulting in a bower_components directory which can be used. - - - - Here is an example of a web frontend build process using gulp. You might use grunt, or anything else. - - - - Example build script (<filename>gulpfile.js</filename>) - - - - - - - Full example — <filename>default.nix</filename> - -{ myWebApp ? { outPath = ./.; name = "myWebApp"; } -, pkgs ? import <nixpkgs> {} -}: - -pkgs.stdenv.mkDerivation { - name = "my-web-app-frontend"; - src = myWebApp; - - buildInputs = [ pkgs.nodePackages.gulp ]; - - bowerComponents = pkgs.buildBowerComponents { - name = "my-web-app"; - generated = ./bower-packages.nix; - src = myWebApp; - }; - - buildPhase = '' - cp --reflink=auto --no-preserve=mode -R $bowerComponents/bower_components . - export HOME=$PWD - ${pkgs.nodePackages.gulp}/bin/gulp build - ''; - - installPhase = "mv gulpdist $out"; -} - - - - - A few notes about : - - - - The result of buildBowerComponents is an input to the frontend build. - - - - - Whether to symlink or copy the bower_components directory depends on the build tool in use. In this case a copy is used to avoid gulp silliness with permissions. - - - - - gulp requires HOME to refer to a writeable directory. - - - - - The actual build command. Other tools could be used. - - - - -
- -
- Troubleshooting - - - - - ENOCACHE errors from buildBowerComponents - - - - This means that Bower was looking for a package version which doesn't exist in the generated bower-packages.nix. - - - If bower.json has been updated, then run bower2nix again. - - - It could also be a bug in bower2nix or fetchbower. If possible, try reformulating the version specification in bower.json. - - - - -
-
diff --git a/third_party/nixpkgs/doc/languages-frameworks/gnome.section.md b/third_party/nixpkgs/doc/languages-frameworks/gnome.section.md new file mode 100644 index 0000000000..00bd524b0c --- /dev/null +++ b/third_party/nixpkgs/doc/languages-frameworks/gnome.section.md @@ -0,0 +1,186 @@ +# GNOME {#sec-language-gnome} + +## Packaging GNOME applications {#ssec-gnome-packaging} + +Programs in the GNOME universe are written in various languages but they all use GObject-based libraries like GLib, GTK or GStreamer. These libraries are often modular, relying on looking into certain directories to find their modules. However, due to Nix’s specific file system organization, this will fail without our intervention. Fortunately, the libraries usually allow overriding the directories through environment variables, either natively or thanks to a patch in nixpkgs. [Wrapping](#fun-wrapProgram) the executables to ensure correct paths are available to the application constitutes a significant part of packaging a modern desktop application. In this section, we will describe various modules needed by such applications, environment variables needed to make the modules load, and finally a script that will do the work for us. + +### Settings {#ssec-gnome-settings} + +[GSettings](https://developer.gnome.org/gio/stable/GSettings.html) API is often used for storing settings. GSettings schemas are required, to know the type and other metadata of the stored values. GLib looks for `glib-2.0/schemas/gschemas.compiled` files inside the directories of `XDG_DATA_DIRS`. + +On Linux, GSettings API is implemented using [dconf](https://wiki.gnome.org/Projects/dconf) backend. You will need to add `dconf` GIO module to `GIO_EXTRA_MODULES` variable, otherwise the `memory` backend will be used and the saved settings will not be persistent. + +Last you will need the dconf database D-Bus service itself. You can enable it using `programs.dconf.enable`. + +Some applications will also require `gsettings-desktop-schemas` for things like reading proxy configuration or user interface customization. This dependency is often not mentioned by upstream, you should grep for `org.gnome.desktop` and `org.gnome.system` to see if the schemas are needed. + +### GdkPixbuf loaders {#ssec-gnome-gdk-pixbuf-loaders} + +GTK applications typically use [GdkPixbuf](https://developer.gnome.org/gdk-pixbuf/stable/) to load images. But `gdk-pixbuf` package only supports basic bitmap formats like JPEG, PNG or TIFF, requiring to use third-party loader modules for other formats. This is especially painful since GTK itself includes SVG icons, which cannot be rendered without a loader provided by `librsvg`. + +Unlike other libraries mentioned in this section, GdkPixbuf only supports a single value in its controlling environment variable `GDK_PIXBUF_MODULE_FILE`. It is supposed to point to a cache file containing information about the available loaders. Each loader package will contain a `lib/gdk-pixbuf-2.0/2.10.0/loaders.cache` file describing the default loaders in `gdk-pixbuf` package plus the loader contained in the package itself. If you want to use multiple third-party loaders, you will need to create your own cache file manually. Fortunately, this is pretty rare as [not many loaders exist](https://gitlab.gnome.org/federico/gdk-pixbuf-survey/blob/master/src/modules.md). + +`gdk-pixbuf` contains [a setup hook](#ssec-gnome-hooks-gdk-pixbuf) that sets `GDK_PIXBUF_MODULE_FILE` from dependencies but as mentioned in further section, it is pretty limited. Loaders should propagate this setup hook. + +### Icons {#ssec-gnome-icons} + +When an application uses icons, an icon theme should be available in `XDG_DATA_DIRS` during runtime. The package for the default, icon-less [hicolor-icon-theme](https://www.freedesktop.org/wiki/Software/icon-theme/) (should be propagated by every icon theme) contains [a setup hook](#ssec-gnome-hooks-hicolor-icon-theme) that will pick up icon themes from `buildInputs` and pass it to our wrapper. Unfortunately, relying on that would mean every user has to download the theme included in the package expression no matter their preference. For that reason, we leave the installation of icon theme on the user. If you use one of the desktop environments, you probably already have an icon theme installed. + +To avoid costly file system access when locating icons, GTK, [as well as Qt](https://woboq.com/blog/qicon-reads-gtk-icon-cache-in-qt57.html), can rely on `icon-theme.cache` files from the themes' top-level directories. These files are generated using `gtk-update-icon-cache`, which is expected to be run whenever an icon is added or removed to an icon theme (typically an application icon into `hicolor` theme) and some programs do indeed run this after icon installation. However, since packages are installed into their own prefix by Nix, this would lead to conflicts. For that reason, `gtk3` provides a [setup hook](#ssec-gnome-hooks-gtk-drop-icon-theme-cache) that will clean the file from installation. Since most applications only ship their own icon that will be loaded on start-up, it should not affect them too much. On the other hand, icon themes are much larger and more widely used so we need to cache them. Because we recommend installing icon themes globally, we will generate the cache files from all packages in a profile using a NixOS module. You can enable the cache generation using `gtk.iconCache.enable` option if your desktop environment does not already do that. + +### Packaging icon themes {#ssec-icon-theme-packaging} + +Icon themes may inherit from other icon themes. The inheritance is specified using the `Inherits` key in the `index.theme` file distributed with the icon theme. According to the [icon theme specification](https://specifications.freedesktop.org/icon-theme-spec/icon-theme-spec-latest.html), icons not provided by the theme are looked for in its parent icon themes. Therefore the parent themes should be installed as dependencies for a more complete experience regarding the icon sets used. + +The package `hicolor-icon-theme` provides a setup hook which makes symbolic links for the parent themes into the directory `share/icons` of the current theme directory in the nix store, making sure they can be found at runtime. For that to work the packages providing parent icon themes should be listed as propagated build dependencies, together with `hicolor-icon-theme`. + +Also make sure that `icon-theme.cache` is installed for each theme provided by the package, and set `dontDropIconThemeCache` to `true` so that the cache file is not removed by the `gtk3` setup hook. + +### GTK Themes {#ssec-gnome-themes} + +Previously, a GTK theme needed to be in `XDG_DATA_DIRS`. This is no longer necessary for most programs since GTK incorporated Adwaita theme. Some programs (for example, those designed for [elementary HIG](https://elementary.io/docs/human-interface-guidelines#human-interface-guidelines)) might require a special theme like `pantheon.elementary-gtk-theme`. + +### GObject introspection typelibs {#ssec-gnome-typelibs} + +[GObject introspection](https://wiki.gnome.org/Projects/GObjectIntrospection) allows applications to use C libraries in other languages easily. It does this through `typelib` files searched in `GI_TYPELIB_PATH`. + +### Various plug-ins {#ssec-gnome-plugins} + +If your application uses [GStreamer](https://gstreamer.freedesktop.org/) or [Grilo](https://wiki.gnome.org/Projects/Grilo), you should set `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH`, respectively. + +## Onto `wrapGAppsHook` {#ssec-gnome-hooks} + +Given the requirements above, the package expression would become messy quickly: + +```nix +preFixup = '' + for f in $(find $out/bin/ $out/libexec/ -type f -executable); do + wrapProgram "$f" \ + --prefix GIO_EXTRA_MODULES : "${getLib dconf}/lib/gio/modules" \ + --prefix XDG_DATA_DIRS : "$out/share" \ + --prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas/${name}" \ + --prefix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" \ + --prefix XDG_DATA_DIRS : "${hicolor-icon-theme}/share" \ + --prefix GI_TYPELIB_PATH : "${lib.makeSearchPath "lib/girepository-1.0" [ pango json-glib ]}" + done +''; +``` + +Fortunately, there is [`wrapGAppsHook`]{#ssec-gnome-hooks-wrapgappshook}. It works in conjunction with other setup hooks that populate environment variables, and it will then wrap all executables in `bin` and `libexec` directories using said variables. + +For convenience, it also adds `dconf.lib` for a GIO module implementing a GSettings backend using `dconf`, `gtk3` for GSettings schemas, and `librsvg` for GdkPixbuf loader to the closure. In case you are packaging a program without a graphical interface, you might want to use [`wrapGAppsNoGuiHook`]{#ssec-gnome-hooks-wrapgappsnoguihook}, which runs the same script as `wrapGAppsHook` but does not bring `gtk3` and `librsvg` into the closure. + +- `wrapGAppsHook` itself will add the package’s `share` directory to `XDG_DATA_DIRS`. + +- []{#ssec-gnome-hooks-glib} `glib` setup hook will populate `GSETTINGS_SCHEMAS_PATH` and then `wrapGAppsHook` will prepend it to `XDG_DATA_DIRS`. + +- []{#ssec-gnome-hooks-gdk-pixbuf} `gdk-pixbuf` setup hook will populate `GDK_PIXBUF_MODULE_FILE` with the path to biggest `loaders.cache` file from the dependencies containing [GdkPixbuf loaders](ssec-gnome-gdk-pixbuf-loaders). This works fine when there are only two packages containing loaders (`gdk-pixbuf` and e.g. `librsvg`) – it will choose the second one, reasonably expecting that it will be bigger since it describes extra loader in addition to the default ones. But when there are more than two loader packages, this logic will break. One possible solution would be constructing a custom cache file for each package containing a program like `services/x11/gdk-pixbuf.nix` NixOS module does. `wrapGAppsHook` copies the `GDK_PIXBUF_MODULE_FILE` environment variable into the produced wrapper. + +- []{#ssec-gnome-hooks-gtk-drop-icon-theme-cache} One of `gtk3`’s setup hooks will remove `icon-theme.cache` files from package’s icon theme directories to avoid conflicts. Icon theme packages should prevent this with `dontDropIconThemeCache = true;`. + +- []{#ssec-gnome-hooks-dconf} `dconf.lib` is a dependency of `wrapGAppsHook`, which then also adds it to the `GIO_EXTRA_MODULES` variable. + +- []{#ssec-gnome-hooks-hicolor-icon-theme} `hicolor-icon-theme`’s setup hook will add icon themes to `XDG_ICON_DIRS` which is prepended to `XDG_DATA_DIRS` by `wrapGAppsHook`. + +- []{#ssec-gnome-hooks-gobject-introspection} `gobject-introspection` setup hook populates `GI_TYPELIB_PATH` variable with `lib/girepository-1.0` directories of dependencies, which is then added to wrapper by `wrapGAppsHook`. It also adds `share` directories of dependencies to `XDG_DATA_DIRS`, which is intended to promote GIR files but it also [pollutes the closures](https://github.com/NixOS/nixpkgs/issues/32790) of packages using `wrapGAppsHook`. + + ::: warning + The setup hook [currently](https://github.com/NixOS/nixpkgs/issues/56943) does not work in expressions with `strictDeps` enabled, like Python packages. In those cases, you will need to disable it with `strictDeps = false;`. + ::: + +- []{#ssec-gnome-hooks-gst-grl-plugins} Setup hooks of `gst_all_1.gstreamer` and `gnome3.grilo` will populate the `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH` variables, respectively, which will then be added to the wrapper by `wrapGAppsHook`. + +You can also pass additional arguments to `makeWrapper` using `gappsWrapperArgs` in `preFixup` hook: + +```nix +preFixup = '' + gappsWrapperArgs+=( + # Thumbnailers + --prefix XDG_DATA_DIRS : "${gdk-pixbuf}/share" + --prefix XDG_DATA_DIRS : "${librsvg}/share" + --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" + ) +''; +``` + +## Updating GNOME packages {#ssec-gnome-updating} + +Most GNOME package offer [`updateScript`](#var-passthru-updateScript), it is therefore possible to update to latest source tarball by running `nix-shell maintainers/scripts/update.nix --argstr package gnome3.nautilus` or even en masse with `nix-shell maintainers/scripts/update.nix --argstr path gnome3`. Read the package’s `NEWS` file to see what changed. + +## Frequently encountered issues {#ssec-gnome-common-issues} + +#### `GLib-GIO-ERROR **: 06:04:50.903: No GSettings schemas are installed on the system` {#ssec-gnome-common-issues-no-schemas} + +There are no schemas available in `XDG_DATA_DIRS`. Temporarily add a random package containing schemas like `gsettings-desktop-schemas` to `buildInputs`. [`glib`](#ssec-gnome-hooks-glib) and [`wrapGAppsHook`](#ssec-gnome-hooks-wrapgappshook) setup hooks will take care of making the schemas available to application and you will see the actual missing schemas with the [next error](#ssec-gnome-common-issues-missing-schema). Or you can try looking through the source code for the actual schemas used. + +#### `GLib-GIO-ERROR **: 06:04:50.903: Settings schema ‘org.gnome.foo’ is not installed` {#ssec-gnome-common-issues-missing-schema} + +Package is missing some GSettings schemas. You can find out the package containing the schema with `nix-locate org.gnome.foo.gschema.xml` and let the hooks handle the wrapping as [above](#ssec-gnome-common-issues-no-schemas). + +#### When using `wrapGAppsHook` with special derivers you can end up with double wrapped binaries. {#ssec-gnome-common-issues-double-wrapped} + +This is because derivers like `python.pkgs.buildPythonApplication` or `qt5.mkDerivation` have setup-hooks automatically added that produce wrappers with makeWrapper. The simplest way to workaround that is to disable the `wrapGAppsHook` automatic wrapping with `dontWrapGApps = true;` and pass the arguments it intended to pass to makeWrapper to another. + +In the case of a Python application it could look like: + +```nix +python3.pkgs.buildPythonApplication { + pname = "gnome-music"; + version = "3.32.2"; + + nativeBuildInputs = [ + wrapGAppsHook + gobject-introspection + ... + ]; + + dontWrapGApps = true; + + # Arguments to be passed to `makeWrapper`, only used by buildPython* + preFixup = '' + makeWrapperArgs+=("''${gappsWrapperArgs[@]}") + ''; +} +``` + +And for a QT app like: + +```nix +mkDerivation { + pname = "calibre"; + version = "3.47.0"; + + nativeBuildInputs = [ + wrapGAppsHook + qmake + ... + ]; + + dontWrapGApps = true; + + # Arguments to be passed to `makeWrapper`, only used by qt5’s mkDerivation + preFixup = '' + qtWrapperArgs+=("''${gappsWrapperArgs[@]}") + ''; +} +``` + +#### I am packaging a project that cannot be wrapped, like a library or GNOME Shell extension. {#ssec-gnome-common-issues-unwrappable-package} + +You can rely on applications depending on the library setting the necessary environment variables but that is often easy to miss. Instead we recommend to patch the paths in the source code whenever possible. Here are some examples: + +- []{#ssec-gnome-common-issues-unwrappable-package-gnome-shell-ext} [Replacing a `GI_TYPELIB_PATH` in GNOME Shell extension](https://github.com/NixOS/nixpkgs/blob/7bb8f05f12ca3cff9da72b56caa2f7472d5732bc/pkgs/desktops/gnome-3/core/gnome-shell-extensions/default.nix#L21-L24) – we are using `substituteAll` to include the path to a typelib into a patch. + +- []{#ssec-gnome-common-issues-unwrappable-package-gsettings} The following examples are hardcoding GSettings schema paths. To get the schema paths we use the functions + + * `glib.getSchemaPath` Takes a nix package attribute as an argument. + + * `glib.makeSchemaPath` Takes a package output like `$out` and a derivation name. You should use this if the schemas you need to hardcode are in the same derivation. + + []{#ssec-gnome-common-issues-unwrappable-package-gsettings-vala} [Hard-coding GSettings schema path in Vala plug-in (dynamically loaded library)](https://github.com/NixOS/nixpkgs/blob/7bb8f05f12ca3cff9da72b56caa2f7472d5732bc/pkgs/desktops/pantheon/apps/elementary-files/default.nix#L78-L86) – here, `substituteAll` cannot be used since the schema comes from the same package preventing us from pass its path to the function, probably due to a [Nix bug](https://github.com/NixOS/nix/issues/1846). + + []{#ssec-gnome-common-issues-unwrappable-package-gsettings-c} [Hard-coding GSettings schema path in C library](https://github.com/NixOS/nixpkgs/blob/29c120c065d03b000224872251bed93932d42412/pkgs/development/libraries/glib-networking/default.nix#L31-L34) – nothing special other than using [Coccinelle patch](https://github.com/NixOS/nixpkgs/pull/67957#issuecomment-527717467) to generate the patch itself. + +#### I need to wrap a binary outside `bin` and `libexec` directories. {#ssec-gnome-common-issues-weird-location} + +You can manually trigger the wrapping with `wrapGApp` in `preFixup` phase. It takes a path to a program as a first argument; the remaining arguments are passed directly to [`wrapProgram`](#fun-wrapProgram) function. diff --git a/third_party/nixpkgs/doc/languages-frameworks/gnome.xml b/third_party/nixpkgs/doc/languages-frameworks/gnome.xml deleted file mode 100644 index f555cacbd2..0000000000 --- a/third_party/nixpkgs/doc/languages-frameworks/gnome.xml +++ /dev/null @@ -1,327 +0,0 @@ -
- GNOME - -
- Packaging GNOME applications - - - Programs in the GNOME universe are written in various languages but they all use GObject-based libraries like GLib, GTK or GStreamer. These libraries are often modular, relying on looking into certain directories to find their modules. However, due to Nix’s specific file system organization, this will fail without our intervention. Fortunately, the libraries usually allow overriding the directories through environment variables, either natively or thanks to a patch in nixpkgs. Wrapping the executables to ensure correct paths are available to the application constitutes a significant part of packaging a modern desktop application. In this section, we will describe various modules needed by such applications, environment variables needed to make the modules load, and finally a script that will do the work for us. - - -
- Settings - - - GSettings API is often used for storing settings. GSettings schemas are required, to know the type and other metadata of the stored values. GLib looks for glib-2.0/schemas/gschemas.compiled files inside the directories of XDG_DATA_DIRS. - - - - On Linux, GSettings API is implemented using dconf backend. You will need to add dconf GIO module to GIO_EXTRA_MODULES variable, otherwise the memory backend will be used and the saved settings will not be persistent. - - - - Last you will need the dconf database D-Bus service itself. You can enable it using . - - - - Some applications will also require gsettings-desktop-schemas for things like reading proxy configuration or user interface customization. This dependency is often not mentioned by upstream, you should grep for org.gnome.desktop and org.gnome.system to see if the schemas are needed. - -
- -
- GdkPixbuf loaders - - - GTK applications typically use GdkPixbuf to load images. But gdk-pixbuf package only supports basic bitmap formats like JPEG, PNG or TIFF, requiring to use third-party loader modules for other formats. This is especially painful since GTK itself includes SVG icons, which cannot be rendered without a loader provided by librsvg. - - - - Unlike other libraries mentioned in this section, GdkPixbuf only supports a single value in its controlling environment variable GDK_PIXBUF_MODULE_FILE. It is supposed to point to a cache file containing information about the available loaders. Each loader package will contain a lib/gdk-pixbuf-2.0/2.10.0/loaders.cache file describing the default loaders in gdk-pixbuf package plus the loader contained in the package itself. If you want to use multiple third-party loaders, you will need to create your own cache file manually. Fortunately, this is pretty rare as not many loaders exist. - - - - gdk-pixbuf contains a setup hook that sets GDK_PIXBUF_MODULE_FILE from dependencies but as mentioned in further section, it is pretty limited. Loaders should propagate this setup hook. - -
- -
- Icons - - - When an application uses icons, an icon theme should be available in XDG_DATA_DIRS during runtime. The package for the default, icon-less hicolor-icon-theme (should be propagated by every icon theme) contains a setup hook that will pick up icon themes from buildInputs and pass it to our wrapper. Unfortunately, relying on that would mean every user has to download the theme included in the package expression no matter their preference. For that reason, we leave the installation of icon theme on the user. If you use one of the desktop environments, you probably already have an icon theme installed. - - - - To avoid costly file system access when locating icons, GTK, as well as Qt, can rely on icon-theme.cache files from the themes’ top-level directories. These files are generated using gtk-update-icon-cache, which is expected to be run whenever an icon is added or removed to an icon theme (typically an application icon into hicolor theme) and some programs do indeed run this after icon installation. However, since packages are installed into their own prefix by Nix, this would lead to conflicts. For that reason, gtk3 provides a setup hook that will clean the file from installation. Since most applications only ship their own icon that will be loaded on start-up, it should not affect them too much. On the other hand, icon themes are much larger and more widely used so we need to cache them. Because we recommend installing icon themes globally, we will generate the cache files from all packages in a profile using a NixOS module. You can enable the cache generation using option if your desktop environment does not already do that. - -
- -
- Packaging icon themes - - - Icon themes may inherit from other icon themes. The inheritance is specified using the Inherits key in the index.theme file distributed with the icon theme. According to the icon theme specification, icons not provided by the theme are looked for in its parent icon themes. Therefore the parent themes should be installed as dependencies for a more complete experience regarding the icon sets used. - - - - The package hicolor-icon-theme provides a setup hook which makes symbolic links for the parent themes into the directory share/icons of the current theme directory in the nix store, making sure they can be found at runtime. For that to work the packages providing parent icon themes should be listed as propagated build dependencies, together with hicolor-icon-theme. - - - - Also make sure that icon-theme.cache is installed for each theme provided by the package, and set dontDropIconThemeCache to true so that the cache file is not removed by the gtk3 setup hook. - - -
- -
- GTK Themes - - - Previously, a GTK theme needed to be in XDG_DATA_DIRS. This is no longer necessary for most programs since GTK incorporated Adwaita theme. Some programs (for example, those designed for elementary HIG) might require a special theme like pantheon.elementary-gtk-theme. - -
- -
- GObject introspection typelibs - - - GObject introspection allows applications to use C libraries in other languages easily. It does this through typelib files searched in GI_TYPELIB_PATH. - -
- -
- Various plug-ins - - - If your application uses GStreamer or Grilo, you should set GST_PLUGIN_SYSTEM_PATH_1_0 and GRL_PLUGIN_PATH, respectively. - -
-
- -
- Onto <package>wrapGAppsHook</package> - - - Given the requirements above, the package expression would become messy quickly: - -preFixup = '' - for f in $(find $out/bin/ $out/libexec/ -type f -executable); do - wrapProgram "$f" \ - --prefix GIO_EXTRA_MODULES : "${getLib dconf}/lib/gio/modules" \ - --prefix XDG_DATA_DIRS : "$out/share" \ - --prefix XDG_DATA_DIRS : "$out/share/gsettings-schemas/${name}" \ - --prefix XDG_DATA_DIRS : "${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}" \ - --prefix XDG_DATA_DIRS : "${hicolor-icon-theme}/share" \ - --prefix GI_TYPELIB_PATH : "${lib.makeSearchPath "lib/girepository-1.0" [ pango json-glib ]}" - done -''; - - - - Fortunately, there is wrapGAppsHook. It works in conjunction with other setup hooks that populate environment variables, and it will then wrap all executables in bin and libexec directories using said variables. - - - For convenience, it also adds dconf.lib for a GIO module implementing a GSettings backend using dconf, gtk3 for GSettings schemas, and librsvg for GdkPixbuf loader to the closure. In case you are packaging a program without a graphical interface, you might want to use wrapGAppsNoGuiHook, which runs the same script as wrapGAppsHook but does not bring gtk3 and librsvg into the closure. - - - - - - wrapGAppsHook itself will add the package’s share directory to XDG_DATA_DIRS. - - - - - glib setup hook will populate GSETTINGS_SCHEMAS_PATH and then wrapGAppsHook will prepend it to XDG_DATA_DIRS. - - - - - gdk-pixbuf setup hook will populate GDK_PIXBUF_MODULE_FILE with the path to biggest loaders.cache file from the dependencies containing GdkPixbuf loaders. This works fine when there are only two packages containing loaders (gdk-pixbuf and e.g. librsvg) – it will choose the second one, reasonably expecting that it will be bigger since it describes extra loader in addition to the default ones. But when there are more than two loader packages, this logic will break. One possible solution would be constructing a custom cache file for each package containing a program like services/x11/gdk-pixbuf.nix NixOS module does. wrapGAppsHook copies the GDK_PIXBUF_MODULE_FILE environment variable into the produced wrapper. - - - - - One of gtk3’s setup hooks will remove icon-theme.cache files from package’s icon theme directories to avoid conflicts. Icon theme packages should prevent this with dontDropIconThemeCache = true;. - - - - - dconf.lib is a dependency of wrapGAppsHook, which then also adds it to the GIO_EXTRA_MODULES variable. - - - - - hicolor-icon-theme’s setup hook will add icon themes to XDG_ICON_DIRS which is prepended to XDG_DATA_DIRS by wrapGAppsHook. - - - - - gobject-introspection setup hook populates GI_TYPELIB_PATH variable with lib/girepository-1.0 directories of dependencies, which is then added to wrapper by wrapGAppsHook. It also adds share directories of dependencies to XDG_DATA_DIRS, which is intended to promote GIR files but it also pollutes the closures of packages using wrapGAppsHook. - - - - The setup hook currently does not work in expressions with strictDeps enabled, like Python packages. In those cases, you will need to disable it with strictDeps = false;. - - - - - - Setup hooks of gst_all_1.gstreamer and gnome3.grilo will populate the GST_PLUGIN_SYSTEM_PATH_1_0 and GRL_PLUGIN_PATH variables, respectively, which will then be added to the wrapper by wrapGAppsHook. - - - - - - - You can also pass additional arguments to makeWrapper using gappsWrapperArgs in preFixup hook: - -preFixup = '' - gappsWrapperArgs+=( - # Thumbnailers - --prefix XDG_DATA_DIRS : "${gdk-pixbuf}/share" - --prefix XDG_DATA_DIRS : "${librsvg}/share" - --prefix XDG_DATA_DIRS : "${shared-mime-info}/share" - ) -''; - - -
- -
- Updating GNOME packages - - - Most GNOME package offer updateScript, it is therefore possible to update to latest source tarball by running nix-shell maintainers/scripts/update.nix --argstr package gnome3.nautilus or even en masse with nix-shell maintainers/scripts/update.nix --argstr path gnome3. Read the package’s NEWS file to see what changed. - -
- -
- Frequently encountered issues - - - - - GLib-GIO-ERROR **: 06:04:50.903: No GSettings schemas are installed on the system - - - - There are no schemas available in XDG_DATA_DIRS. Temporarily add a random package containing schemas like gsettings-desktop-schemas to buildInputs. glib and wrapGAppsHook setup hooks will take care of making the schemas available to application and you will see the actual missing schemas with the next error. Or you can try looking through the source code for the actual schemas used. - - - - - - GLib-GIO-ERROR **: 06:04:50.903: Settings schema ‘org.gnome.foo’ is not installed - - - - Package is missing some GSettings schemas. You can find out the package containing the schema with nix-locate org.gnome.foo.gschema.xml and let the hooks handle the wrapping as above. - - - - - - When using wrapGAppsHook with special derivers you can end up with double wrapped binaries. - - - - This is because derivers like python.pkgs.buildPythonApplication or qt5.mkDerivation have setup-hooks automatically added that produce wrappers with makeWrapper. The simplest way to workaround that is to disable the wrapGAppsHook automatic wrapping with dontWrapGApps = true; and pass the arguments it intended to pass to makeWrapper to another. - - - In the case of a Python application it could look like: - -python3.pkgs.buildPythonApplication { - pname = "gnome-music"; - version = "3.32.2"; - - nativeBuildInputs = [ - wrapGAppsHook - gobject-introspection - ... - ]; - - dontWrapGApps = true; - - # Arguments to be passed to `makeWrapper`, only used by buildPython* - preFixup = '' - makeWrapperArgs+=("''${gappsWrapperArgs[@]}") - ''; -} - - And for a QT app like: - -mkDerivation { - pname = "calibre"; - version = "3.47.0"; - - nativeBuildInputs = [ - wrapGAppsHook - qmake - ... - ]; - - dontWrapGApps = true; - - # Arguments to be passed to `makeWrapper`, only used by qt5’s mkDerivation - preFixup = '' - qtWrapperArgs+=("''${gappsWrapperArgs[@]}") - ''; -} - - - - - - - I am packaging a project that cannot be wrapped, like a library or GNOME Shell extension. - - - - You can rely on applications depending on the library setting the necessary environment variables but that is often easy to miss. Instead we recommend to patch the paths in the source code whenever possible. Here are some examples: - - - - Replacing a GI_TYPELIB_PATH in GNOME Shell extension – we are using substituteAll to include the path to a typelib into a patch. - - - - - The following examples are hardcoding GSettings schema paths. To get the schema paths we use the functions - - - - glib.getSchemaPath Takes a nix package attribute as an argument. - - - - - glib.makeSchemaPath Takes a package output like $out and a derivation name. You should use this if the schemas you need to hardcode are in the same derivation. - - - - - - Hard-coding GSettings schema path in Vala plug-in (dynamically loaded library) – here, substituteAll cannot be used since the schema comes from the same package preventing us from pass its path to the function, probably due to a Nix bug. - - - Hard-coding GSettings schema path in C library – nothing special other than using Coccinelle patch to generate the patch itself. - - - - - - - - - I need to wrap a binary outside bin and libexec directories. - - - - You can manually trigger the wrapping with wrapGApp in preFixup phase. It takes a path to a program as a first argument; the remaining arguments are passed directly to wrapProgram function. - - - - -
-
diff --git a/third_party/nixpkgs/doc/languages-frameworks/index.xml b/third_party/nixpkgs/doc/languages-frameworks/index.xml index daa57cf1f8..4d07d2b524 100644 --- a/third_party/nixpkgs/doc/languages-frameworks/index.xml +++ b/third_party/nixpkgs/doc/languages-frameworks/index.xml @@ -8,11 +8,11 @@ - + - + @@ -22,7 +22,7 @@ - + diff --git a/third_party/nixpkgs/doc/languages-frameworks/perl.section.md b/third_party/nixpkgs/doc/languages-frameworks/perl.section.md new file mode 100644 index 0000000000..2b31da8455 --- /dev/null +++ b/third_party/nixpkgs/doc/languages-frameworks/perl.section.md @@ -0,0 +1,163 @@ +# Perl {#sec-language-perl} + +## Running perl programs on the shell {#ssec-perl-running} + +When executing a Perl script, it is possible you get an error such as `./myscript.pl: bad interpreter: /usr/bin/perl: no such file or directory`. This happens when the script expects Perl to be installed at `/usr/bin/perl`, which is not the case when using Perl from nixpkgs. You can fix the script by changing the first line to: + +```perl +#!/usr/bin/env perl +``` + +to take the Perl installation from the `PATH` environment variable, or invoke Perl directly with: + +```ShellSession +$ perl ./myscript.pl +``` + +When the script is using a Perl library that is not installed globally, you might get an error such as `Can't locate DB_File.pm in @INC (you may need to install the DB_File module)`. In that case, you can use `nix-shell` to start an ad-hoc shell with that library installed, for instance: + +```ShellSession +$ nix-shell -p perl perlPackages.DBFile --run ./myscript.pl +``` + +If you are always using the script in places where `nix-shell` is available, you can embed the `nix-shell` invocation in the shebang like this: + +```perl +#!/usr/bin/env nix-shell +#! nix-shell -i perl -p perl perlPackages.DBFile +``` + +## Packaging Perl programs {#ssec-perl-packaging} + +Nixpkgs provides a function `buildPerlPackage`, a generic package builder function for any Perl package that has a standard `Makefile.PL`. It’s implemented in [pkgs/development/perl-modules/generic](https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/perl-modules/generic). + +Perl packages from CPAN are defined in [pkgs/top-level/perl-packages.nix](https://github.com/NixOS/nixpkgs/blob/master/pkgs/top-level/perl-packages.nix) rather than `pkgs/all-packages.nix`. Most Perl packages are so straight-forward to build that they are defined here directly, rather than having a separate function for each package called from `perl-packages.nix`. However, more complicated packages should be put in a separate file, typically in `pkgs/development/perl-modules`. Here is an example of the former: + +```nix +ClassC3 = buildPerlPackage rec { + name = "Class-C3-0.21"; + src = fetchurl { + url = "mirror://cpan/authors/id/F/FL/FLORA/${name}.tar.gz"; + sha256 = "1bl8z095y4js66pwxnm7s853pi9czala4sqc743fdlnk27kq94gz"; + }; +}; +``` + +Note the use of `mirror://cpan/`, and the `${name}` in the URL definition to ensure that the name attribute is consistent with the source that we’re actually downloading. Perl packages are made available in `all-packages.nix` through the variable `perlPackages`. For instance, if you have a package that needs `ClassC3`, you would typically write + +```nix +foo = import ../path/to/foo.nix { + inherit stdenv fetchurl ...; + inherit (perlPackages) ClassC3; +}; +``` + +in `all-packages.nix`. You can test building a Perl package as follows: + +```ShellSession +$ nix-build -A perlPackages.ClassC3 +``` + +`buildPerlPackage` adds `perl-` to the start of the name attribute, so the package above is actually called `perl-Class-C3-0.21`. So to install it, you can say: + +```ShellSession +$ nix-env -i perl-Class-C3 +``` + +(Of course you can also install using the attribute name: `nix-env -i -A perlPackages.ClassC3`.) + +So what does `buildPerlPackage` do? It does the following: + +1. In the configure phase, it calls `perl Makefile.PL` to generate a Makefile. You can set the variable `makeMakerFlags` to pass flags to `Makefile.PL` +2. It adds the contents of the `PERL5LIB` environment variable to `#! .../bin/perl` line of Perl scripts as `-Idir` flags. This ensures that a script can find its dependencies. (This can cause this shebang line to become too long for Darwin to handle; see the note below.) +3. In the fixup phase, it writes the propagated build inputs (`propagatedBuildInputs`) to the file `$out/nix-support/propagated-user-env-packages`. `nix-env` recursively installs all packages listed in this file when you install a package that has it. This ensures that a Perl package can find its dependencies. + +`buildPerlPackage` is built on top of `stdenv`, so everything can be customised in the usual way. For instance, the `BerkeleyDB` module has a `preConfigure` hook to generate a configuration file used by `Makefile.PL`: + +```nix +{ buildPerlPackage, fetchurl, db }: + +buildPerlPackage rec { + name = "BerkeleyDB-0.36"; + + src = fetchurl { + url = "mirror://cpan/authors/id/P/PM/PMQS/${name}.tar.gz"; + sha256 = "07xf50riarb60l1h6m2dqmql8q5dij619712fsgw7ach04d8g3z1"; + }; + + preConfigure = '' + echo "LIB = ${db.out}/lib" > config.in + echo "INCLUDE = ${db.dev}/include" >> config.in + ''; +} +``` + +Dependencies on other Perl packages can be specified in the `buildInputs` and `propagatedBuildInputs` attributes. If something is exclusively a build-time dependency, use `buildInputs`; if it’s (also) a runtime dependency, use `propagatedBuildInputs`. For instance, this builds a Perl module that has runtime dependencies on a bunch of other modules: + +```nix +ClassC3Componentised = buildPerlPackage rec { + name = "Class-C3-Componentised-1.0004"; + src = fetchurl { + url = "mirror://cpan/authors/id/A/AS/ASH/${name}.tar.gz"; + sha256 = "0xql73jkcdbq4q9m0b0rnca6nrlvf5hyzy8is0crdk65bynvs8q1"; + }; + propagatedBuildInputs = [ + ClassC3 ClassInspector TestException MROCompat + ]; +}; +``` + +On Darwin, if a script has too many `-Idir` flags in its first line (its “shebang line”), it will not run. This can be worked around by calling the `shortenPerlShebang` function from the `postInstall` phase: + +```nix +{ stdenv, buildPerlPackage, fetchurl, shortenPerlShebang }: + +ImageExifTool = buildPerlPackage { + pname = "Image-ExifTool"; + version = "11.50"; + + src = fetchurl { + url = "https://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-11.50.tar.gz"; + sha256 = "0d8v48y94z8maxkmw1rv7v9m0jg2dc8xbp581njb6yhr7abwqdv3"; + }; + + buildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; + postInstall = stdenv.lib.optional stdenv.isDarwin '' + shortenPerlShebang $out/bin/exiftool + ''; +}; +``` + +This will remove the `-I` flags from the shebang line, rewrite them in the `use lib` form, and put them on the next line instead. This function can be given any number of Perl scripts as arguments; it will modify them in-place. + +### Generation from CPAN {#ssec-generation-from-CPAN} + +Nix expressions for Perl packages can be generated (almost) automatically from CPAN. This is done by the program `nix-generate-from-cpan`, which can be installed as follows: + +```ShellSession +$ nix-env -i nix-generate-from-cpan +``` + +This program takes a Perl module name, looks it up on CPAN, fetches and unpacks the corresponding package, and prints a Nix expression on standard output. For example: + +```ShellSession +$ nix-generate-from-cpan XML::Simple + XMLSimple = buildPerlPackage rec { + name = "XML-Simple-2.22"; + src = fetchurl { + url = "mirror://cpan/authors/id/G/GR/GRANTM/${name}.tar.gz"; + sha256 = "b9450ef22ea9644ae5d6ada086dc4300fa105be050a2030ebd4efd28c198eb49"; + }; + propagatedBuildInputs = [ XMLNamespaceSupport XMLSAX XMLSAXExpat ]; + meta = { + description = "An API for simple XML files"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + }; + }; +``` + +The output can be pasted into `pkgs/top-level/perl-packages.nix` or wherever else you need it. + +### Cross-compiling modules {#ssec-perl-cross-compilation} + +Nixpkgs has experimental support for cross-compiling Perl modules. In many cases, it will just work out of the box, even for modules with native extensions. Sometimes, however, the Makefile.PL for a module may (indirectly) import a native module. In that case, you will need to make a stub for that module that will satisfy the Makefile.PL and install it into `lib/perl5/site_perl/cross_perl/${perl.version}`. See the `postInstall` for `DBI` for an example. diff --git a/third_party/nixpkgs/doc/languages-frameworks/perl.xml b/third_party/nixpkgs/doc/languages-frameworks/perl.xml deleted file mode 100644 index b017c028f6..0000000000 --- a/third_party/nixpkgs/doc/languages-frameworks/perl.xml +++ /dev/null @@ -1,195 +0,0 @@ -
- Perl - -
- Running perl programs on the shell - - - When executing a Perl script, it is possible you get an error such as ./myscript.pl: bad interpreter: /usr/bin/perl: no such file or directory. This happens when the script expects Perl to be installed at /usr/bin/perl, which is not the case when using Perl from nixpkgs. You can fix the script by changing the first line to: - -#!/usr/bin/env perl - - to take the Perl installation from the PATH environment variable, or invoke Perl directly with: - -$ perl ./myscript.pl - - - - - When the script is using a Perl library that is not installed globally, you might get an error such as Can't locate DB_File.pm in @INC (you may need to install the DB_File module). In that case, you can use nix-shell to start an ad-hoc shell with that library installed, for instance: - -$ nix-shell -p perl perlPackages.DBFile --run ./myscript.pl - - - - - If you are always using the script in places where nix-shell is available, you can embed the nix-shell invocation in the shebang like this: - -#!/usr/bin/env nix-shell -#! nix-shell -i perl -p perl perlPackages.DBFile - - -
- -
- Packaging Perl programs - - - Nixpkgs provides a function buildPerlPackage, a generic package builder function for any Perl package that has a standard Makefile.PL. It’s implemented in pkgs/development/perl-modules/generic. - - - - Perl packages from CPAN are defined in pkgs/top-level/perl-packages.nix, rather than pkgs/all-packages.nix. Most Perl packages are so straight-forward to build that they are defined here directly, rather than having a separate function for each package called from perl-packages.nix. However, more complicated packages should be put in a separate file, typically in pkgs/development/perl-modules. Here is an example of the former: - -ClassC3 = buildPerlPackage rec { - name = "Class-C3-0.21"; - src = fetchurl { - url = "mirror://cpan/authors/id/F/FL/FLORA/${name}.tar.gz"; - sha256 = "1bl8z095y4js66pwxnm7s853pi9czala4sqc743fdlnk27kq94gz"; - }; -}; - - Note the use of mirror://cpan/, and the ${name} in the URL definition to ensure that the name attribute is consistent with the source that we’re actually downloading. Perl packages are made available in all-packages.nix through the variable perlPackages. For instance, if you have a package that needs ClassC3, you would typically write - -foo = import ../path/to/foo.nix { - inherit stdenv fetchurl ...; - inherit (perlPackages) ClassC3; -}; - - in all-packages.nix. You can test building a Perl package as follows: - -$ nix-build -A perlPackages.ClassC3 - - buildPerlPackage adds perl- to the start of the name attribute, so the package above is actually called perl-Class-C3-0.21. So to install it, you can say: - -$ nix-env -i perl-Class-C3 - - (Of course you can also install using the attribute name: nix-env -i -A perlPackages.ClassC3.) - - - - So what does buildPerlPackage do? It does the following: - - - - In the configure phase, it calls perl Makefile.PL to generate a Makefile. You can set the variable makeMakerFlags to pass flags to Makefile.PL - - - - - It adds the contents of the PERL5LIB environment variable to #! .../bin/perl line of Perl scripts as -Idir flags. This ensures that a script can find its dependencies. (This can cause this shebang line to become too long for Darwin to handle; see the note below.) - - - - - In the fixup phase, it writes the propagated build inputs (propagatedBuildInputs) to the file $out/nix-support/propagated-user-env-packages. nix-env recursively installs all packages listed in this file when you install a package that has it. This ensures that a Perl package can find its dependencies. - - - - - - - buildPerlPackage is built on top of stdenv, so everything can be customised in the usual way. For instance, the BerkeleyDB module has a preConfigure hook to generate a configuration file used by Makefile.PL: - -{ buildPerlPackage, fetchurl, db }: - -buildPerlPackage rec { - name = "BerkeleyDB-0.36"; - - src = fetchurl { - url = "mirror://cpan/authors/id/P/PM/PMQS/${name}.tar.gz"; - sha256 = "07xf50riarb60l1h6m2dqmql8q5dij619712fsgw7ach04d8g3z1"; - }; - - preConfigure = '' - echo "LIB = ${db.out}/lib" > config.in - echo "INCLUDE = ${db.dev}/include" >> config.in - ''; -} - - - - - Dependencies on other Perl packages can be specified in the buildInputs and propagatedBuildInputs attributes. If something is exclusively a build-time dependency, use buildInputs; if it’s (also) a runtime dependency, use propagatedBuildInputs. For instance, this builds a Perl module that has runtime dependencies on a bunch of other modules: - -ClassC3Componentised = buildPerlPackage rec { - name = "Class-C3-Componentised-1.0004"; - src = fetchurl { - url = "mirror://cpan/authors/id/A/AS/ASH/${name}.tar.gz"; - sha256 = "0xql73jkcdbq4q9m0b0rnca6nrlvf5hyzy8is0crdk65bynvs8q1"; - }; - propagatedBuildInputs = [ - ClassC3 ClassInspector TestException MROCompat - ]; -}; - - - - - On Darwin, if a script has too many -Idir flags in its first line (its “shebang line”), it will not run. This can be worked around by calling the shortenPerlShebang function from the postInstall phase: - -{ stdenv, buildPerlPackage, fetchurl, shortenPerlShebang }: - -ImageExifTool = buildPerlPackage { - pname = "Image-ExifTool"; - version = "11.50"; - - src = fetchurl { - url = "https://www.sno.phy.queensu.ca/~phil/exiftool/Image-ExifTool-11.50.tar.gz"; - sha256 = "0d8v48y94z8maxkmw1rv7v9m0jg2dc8xbp581njb6yhr7abwqdv3"; - }; - - buildInputs = stdenv.lib.optional stdenv.isDarwin shortenPerlShebang; - postInstall = stdenv.lib.optional stdenv.isDarwin '' - shortenPerlShebang $out/bin/exiftool - ''; -}; - - This will remove the -I flags from the shebang line, rewrite them in the use lib form, and put them on the next line instead. This function can be given any number of Perl scripts as arguments; it will modify them in-place. - - -
- Generation from CPAN - - - Nix expressions for Perl packages can be generated (almost) automatically from CPAN. This is done by the program nix-generate-from-cpan, which can be installed as follows: - - - -$ nix-env -i nix-generate-from-cpan - - - - This program takes a Perl module name, looks it up on CPAN, fetches and unpacks the corresponding package, and prints a Nix expression on standard output. For example: - -$ nix-generate-from-cpan XML::Simple - XMLSimple = buildPerlPackage rec { - name = "XML-Simple-2.22"; - src = fetchurl { - url = "mirror://cpan/authors/id/G/GR/GRANTM/${name}.tar.gz"; - sha256 = "b9450ef22ea9644ae5d6ada086dc4300fa105be050a2030ebd4efd28c198eb49"; - }; - propagatedBuildInputs = [ XMLNamespaceSupport XMLSAX XMLSAXExpat ]; - meta = { - description = "An API for simple XML files"; - license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; - }; - }; - - The output can be pasted into pkgs/top-level/perl-packages.nix or wherever else you need it. - -
- -
- Cross-compiling modules - - - Nixpkgs has experimental support for cross-compiling Perl modules. In many cases, it will just work out of the box, even for modules with native extensions. Sometimes, however, the Makefile.PL for a module may (indirectly) import a native module. In that case, you will need to make a stub for that module that will satisfy the Makefile.PL and install it into lib/perl5/site_perl/cross_perl/${perl.version}. See the postInstall for DBI for an example. - -
-
-
diff --git a/third_party/nixpkgs/doc/manual.xml b/third_party/nixpkgs/doc/manual.xml index 4ca497e234..2c75bd4ec0 100644 --- a/third_party/nixpkgs/doc/manual.xml +++ b/third_party/nixpkgs/doc/manual.xml @@ -34,7 +34,7 @@ Contributing to Nixpkgs - + diff --git a/third_party/nixpkgs/doc/stdenv/stdenv.xml b/third_party/nixpkgs/doc/stdenv/stdenv.xml index 282893b0ca..21485425f2 100644 --- a/third_party/nixpkgs/doc/stdenv/stdenv.xml +++ b/third_party/nixpkgs/doc/stdenv/stdenv.xml @@ -1989,7 +1989,7 @@ addEnvHooks "$hostOffset" myBashFunction - Exports GDK_PIXBUF_MODULE_FILE environment variable to the builder. Add librsvg package to buildInputs to get svg support. See also . + Exports GDK_PIXBUF_MODULE_FILE environment variable to the builder. Add librsvg package to buildInputs to get svg support. See also the setup hook description in GNOME platform docs. diff --git a/third_party/nixpkgs/lib/licenses.nix b/third_party/nixpkgs/lib/licenses.nix index 850de29e7d..6e7cd62515 100644 --- a/third_party/nixpkgs/lib/licenses.nix +++ b/third_party/nixpkgs/lib/licenses.nix @@ -18,6 +18,11 @@ lib.mapAttrs (n: v: v // { shortName = n; }) { fullName = "Abstyles License"; }; + afl20 = spdx { + spdxId = "AFL-2.0"; + fullName = "Academic Free License v2.0"; + }; + afl21 = spdx { spdxId = "AFL-2.1"; fullName = "Academic Free License v2.1"; diff --git a/third_party/nixpkgs/maintainers/maintainer-list.nix b/third_party/nixpkgs/maintainers/maintainer-list.nix index 3454dc7199..31093cc4d7 100644 --- a/third_party/nixpkgs/maintainers/maintainer-list.nix +++ b/third_party/nixpkgs/maintainers/maintainer-list.nix @@ -64,6 +64,12 @@ githubId = 791309; name = "Jan Hrnko"; }; + _3699n = { + email = "nicholas@nvk.pm"; + github = "3699n"; + githubId = 7414843; + name = "Nicholas von Klitzing"; + }; a1russell = { email = "adamlr6+pub@gmail.com"; github = "a1russell"; @@ -378,6 +384,12 @@ githubId = 2822871; name = "Alistair Bill"; }; + alirezameskin = { + email = "alireza.meskin@gmail.com"; + github = "alirezameskin"; + githubId = 36147; + name = "Alireza Meskin"; + }; alkeryn = { email = "plbraundev@gmail.com"; github = "Alkeryn"; @@ -6529,12 +6541,6 @@ githubId = 3359345; name = "obadz"; }; - ocharles = { - email = "ollie@ocharles.org.uk"; - github = "ocharles"; - githubId = 20878; - name = "Oliver Charles"; - }; odi = { email = "oliver.dunkl@gmail.com"; github = "odi"; @@ -7409,6 +7415,12 @@ githubId = 165283; name = "Alexey Kutepov"; }; + rgrunbla = { + email = "remy@grunblatt.org"; + github = "rgrunbla"; + githubId = 42433779; + name = "Rémy Grünblatt"; + }; rht = { email = "rhtbot@protonmail.com"; github = "rht"; @@ -7503,6 +7515,12 @@ githubId = 13752145; name = "Richard Lupton"; }; + rmcgibbo = { + email = "rmcgibbo@gmail.com"; + github = "rmcgibbo"; + githubId = 641278; + name = "Robert T. McGibbon"; + }; rnhmjoj = { email = "rnhmjoj@inventati.org"; github = "rnhmjoj"; @@ -7749,6 +7767,12 @@ github = "s1341"; githubId = 5682183; }; + samb96 = { + email = "samb96@gmail.com"; + github = "samb96"; + githubId = 819426; + name = "Sam Bickley"; + }; samdoshi = { email = "sam@metal-fish.co.uk"; github = "samdoshi"; @@ -9452,6 +9476,16 @@ githubId = 19174984; name = "Alex Whitt"; }; + wildsebastian = { + name = "Sebastian Wild"; + email = "sebastian@wild-siena.com"; + github = "wildsebastian"; + githubId = 1215623; + keys = [{ + longkeyid = "rsa4096/0x366A2940479A06FC"; + fingerprint = "DA03 D6C6 3F58 E796 AD26 E99B 366A 2940 479A 06FC"; + }]; + }; willibutz = { email = "willibutz@posteo.de"; github = "willibutz"; diff --git a/third_party/nixpkgs/nixos/modules/services/hardware/thermald.nix b/third_party/nixpkgs/nixos/modules/services/hardware/thermald.nix index 241490c5aa..6be255cebf 100644 --- a/third_party/nixpkgs/nixos/modules/services/hardware/thermald.nix +++ b/third_party/nixpkgs/nixos/modules/services/hardware/thermald.nix @@ -39,7 +39,7 @@ in { --no-daemon \ ${optionalString cfg.debug "--loglevel=debug"} \ ${optionalString (cfg.configFile != null) "--config-file ${cfg.configFile}"} \ - --dbus-enable + --dbus-enable \ --adaptive ''; }; diff --git a/third_party/nixpkgs/nixos/modules/services/networking/unbound.nix b/third_party/nixpkgs/nixos/modules/services/networking/unbound.nix index 9a46fa3075..622c3d8ea4 100644 --- a/third_party/nixpkgs/nixos/modules/services/networking/unbound.nix +++ b/third_party/nixpkgs/nixos/modules/services/networking/unbound.nix @@ -195,7 +195,7 @@ in RuntimeDirectory = "unbound"; ConfigurationDirectory = "unbound"; StateDirectory = "unbound"; - RestrictAddressFamilies = [ "AF_INET" "AF_INET6" "AF_UNIX" ]; + RestrictAddressFamilies = [ "AF_INET" "AF_INET6" "AF_NETLINK" "AF_UNIX" ]; RestrictRealtime = true; SystemCallArchitectures = "native"; SystemCallFilter = [ diff --git a/third_party/nixpkgs/nixos/tests/all-tests.nix b/third_party/nixpkgs/nixos/tests/all-tests.nix index c58203cc48..807a4bcdd9 100644 --- a/third_party/nixpkgs/nixos/tests/all-tests.nix +++ b/third_party/nixpkgs/nixos/tests/all-tests.nix @@ -103,6 +103,7 @@ in ergo = handleTest ./ergo.nix {}; etcd = handleTestOn ["x86_64-linux"] ./etcd.nix {}; etcd-cluster = handleTestOn ["x86_64-linux"] ./etcd-cluster.nix {}; + etesync-dav = handleTest ./etesync-dav.nix {}; fancontrol = handleTest ./fancontrol.nix {}; fcitx = handleTest ./fcitx {}; ferm = handleTest ./ferm.nix {}; diff --git a/third_party/nixpkgs/nixos/tests/etesync-dav.nix b/third_party/nixpkgs/nixos/tests/etesync-dav.nix new file mode 100644 index 0000000000..286f919aa8 --- /dev/null +++ b/third_party/nixpkgs/nixos/tests/etesync-dav.nix @@ -0,0 +1,21 @@ +import ./make-test-python.nix ({ pkgs, ... }: { + + name = "etesync-dav"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ _3699n ]; + }; + + machine = { config, pkgs, ... }: { + environment.systemPackages = [ pkgs.curl pkgs.etesync-dav ]; + }; + + testScript = + '' + machine.wait_for_unit("multi-user.target") + machine.succeed("etesync-dav --version") + machine.execute("etesync-dav &") + machine.wait_for_open_port(37358) + with subtest("Check that the web interface is accessible"): + assert "Add User" in machine.succeed("curl -s http://localhost:37358/.web/add/") + ''; +}) diff --git a/third_party/nixpkgs/nixos/tests/podman.nix b/third_party/nixpkgs/nixos/tests/podman.nix index dd28563dc4..bccd2de7c9 100644 --- a/third_party/nixpkgs/nixos/tests/podman.nix +++ b/third_party/nixpkgs/nixos/tests/podman.nix @@ -61,12 +61,6 @@ import ./make-test-python.nix ( podman.succeed("podman stop sleeping") podman.succeed("podman rm sleeping") - - podman.succeed( - "mkdir -p /tmp/podman-run-1000/libpod && chown alice -R /tmp/podman-run-1000" - ) - - with subtest("Run container rootless with crun"): podman.succeed(su_cmd("tar cv --files-from /dev/null | podman import - scratchimg")) podman.succeed( diff --git a/third_party/nixpkgs/pkgs/applications/audio/distrho/default.nix b/third_party/nixpkgs/pkgs/applications/audio/distrho/default.nix index 0f651f47a4..e39cef3fb0 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/distrho/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/distrho/default.nix @@ -1,55 +1,77 @@ -{ stdenv, fetchFromGitHub, alsaLib, fftwSinglePrec, freetype, libjack2 -, pkgconfig, ladspa-sdk, premake3 -, libX11, libXcomposite, libXcursor, libXext, libXinerama, libXrender +{ stdenv +, alsaLib +, fetchFromGitHub +, freetype +, libGL +, libX11 +, libXcursor +, libXext +, libXrender +, meson +, ninja +, pkg-config }: -let - premakeos = if stdenv.hostPlatform.isDarwin then "osx" - else if stdenv.hostPlatform.isWindows then "mingw" - else "linux"; -in stdenv.mkDerivation rec { +stdenv.mkDerivation rec { pname = "distrho-ports"; - version = "unstable-2019-10-09"; + version = "2020-07-14"; src = fetchFromGitHub { owner = "DISTRHO"; repo = "DISTRHO-Ports"; - rev = "7e62235e809e59770d0d91d2c48c3f50ce7c027a"; - sha256 = "10hpsjcmk0cgcsic9r1wxyja9x6q9wb8w8254dlrnzyswl54r1f8"; + rev = version; + sha256 = "03ji41i6dpknws1vjwfxnl8c8bgisv2ng8xa4vqy2473k7wgdw4v"; }; - configurePhase = '' - runHook preConfigure + nativeBuildInputs = [ pkg-config meson ninja ]; - sh ./scripts/premake-update.sh ${premakeos} - - runHook postConfigure - ''; - - postPatch = '' - sed -e "s#@./scripts#sh scripts#" -i Makefile - ''; - - nativeBuildInputs = [ pkgconfig premake3 ]; buildInputs = [ - alsaLib fftwSinglePrec freetype libjack2 - libX11 libXcomposite libXcursor libXext - libXinerama libXrender ladspa-sdk + alsaLib + freetype + libGL + libX11 + libXcursor + libXext + libXrender ]; - makeFlags = [ "PREFIX=$(out)" ]; - meta = with stdenv.lib; { - homepage = "http://distrho.sourceforge.net"; - description = "A collection of cross-platform audio effects and plugins"; + homepage = "http://distrho.sourceforge.net/ports"; + description = "Linux audio plugins and LV2 ports"; longDescription = '' Includes: - Dexed drowaudio-distortion drowaudio-distortionshaper drowaudio-flanger - drowaudio-reverb drowaudio-tremolo drumsynth EasySSP eqinox HiReSam - JuceDemoPlugin KlangFalter LUFSMeter LUFSMeterMulti Luftikus Obxd - PitchedDelay ReFine StereoSourceSeparation TAL-Dub-3 TAL-Filter - TAL-Filter-2 TAL-NoiseMaker TAL-Reverb TAL-Reverb-2 TAL-Reverb-3 - TAL-Vocoder-2 TheFunction ThePilgrim Vex Wolpertinger + arctican-function + arctican-pilgrim + dexed + drowaudio-distortion + drowaudio-distortionshaper + drowaudio-flanger + drowaudio-reverb + drowaudio-tremolo + drumsynth + easySSP + eqinox + HiReSam + juce-opl + klangfalter + LUFSMeter + LUFSMeter-Multi + luftikus + obxd + pitchedDelay + refine + stereosourceseparation + tal-dub-3 + tal-filter + tal-filter-2 + tal-noisemaker + tal-reverb + tal-reverb-2 + tal-reverb-3 + tal-vocoder-2 + temper + vex + wolpertinger ''; license = with licenses; [ gpl2 gpl3 gpl2Plus lgpl3 mit ]; maintainers = [ maintainers.goibhniu ]; diff --git a/third_party/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix b/third_party/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix index cf3a8ae419..da51f10507 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/gnome-podcasts/default.nix @@ -55,6 +55,7 @@ rustPlatform.buildRustPackage rec { gst_all_1.gstreamer gst_all_1.gst-plugins-base gst_all_1.gst-plugins-bad + gst_all_1.gst-plugins-good ]; # use Meson/Ninja phases diff --git a/third_party/nixpkgs/pkgs/applications/audio/melmatcheq.lv2/default.nix b/third_party/nixpkgs/pkgs/applications/audio/melmatcheq.lv2/default.nix new file mode 100644 index 0000000000..d5aa481e82 --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/audio/melmatcheq.lv2/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchFromGitHub, xorg, xorgproto, cairo, lv2, pkg-config }: + +stdenv.mkDerivation rec { + pname = "MelMatchEQ.lv2"; + version = "0.1"; + + src = fetchFromGitHub { + owner = "brummer10"; + repo = pname; + rev = "v${version}"; + sha256 = "1s805jgb9msxfq9047s7pxrngizb00w8sm4z94iii80ba65rd20x"; + }; + + nativeBuildInputs = [ pkg-config ]; + buildInputs = [ + xorg.libX11 xorgproto cairo lv2 + ]; + + installFlags = [ "INSTALL_DIR=$(out)/lib/lv2" ]; + + meta = with stdenv.lib; { + homepage = "https://github.com/brummer10/MelMatchEQ.lv2"; + description = "a profiling EQ using a 26 step Mel Frequency Band"; + maintainers = with maintainers; [ magnetophon ]; + license = licenses.gpl2Plus; + platforms = platforms.linux; + }; +} diff --git a/third_party/nixpkgs/pkgs/applications/audio/midi-visualizer/default.nix b/third_party/nixpkgs/pkgs/applications/audio/midi-visualizer/default.nix index 64c0cae7a6..4def69bedc 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/midi-visualizer/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/midi-visualizer/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "MIDIVisualizer"; - version = "5.2"; + version = "6.0"; src = fetchFromGitHub { owner = "kosua20"; repo = pname; rev = "v${version}"; - sha256 = "19z8m6clirz8kwfjp0z1j69fjfna8ar7hkgqnlm3lrc84gyx2rpf"; + sha256 = "052zpabkbkqzqzf8r6mdq9p6arn9mr1ywx6x3y9rqxj6sfprxd65"; }; nativeBuildInputs = [ cmake pkg-config makeWrapper]; diff --git a/third_party/nixpkgs/pkgs/applications/audio/musescore/default.nix b/third_party/nixpkgs/pkgs/applications/audio/musescore/default.nix index c9a1f44ec6..18026808b2 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/musescore/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/musescore/default.nix @@ -21,6 +21,7 @@ mkDerivation rec { ]; cmakeFlags = [ + "-DMUSESCORE_BUILD_CONFIG=release" "-DUSE_SYSTEM_FREETYPE=ON" ]; diff --git a/third_party/nixpkgs/pkgs/applications/audio/musikcube/default.nix b/third_party/nixpkgs/pkgs/applications/audio/musikcube/default.nix index c6d1a264a9..dc936083ca 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/musikcube/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/musikcube/default.nix @@ -17,13 +17,13 @@ stdenv.mkDerivation rec { pname = "musikcube"; - version = "0.95.0"; + version = "0.96.1"; src = fetchFromGitHub { owner = "clangen"; repo = pname; rev = version; - sha256 = "16ksr4yjkg88bpij1i49dzi07ffhqq8b36r090y4fq5czrc420rc"; + sha256 = "0gpyr25q6g9b8f9hi6jx3p4ijl7xrrjc78vw1fyjd59a7690d7kr"; }; nativeBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/applications/audio/mympd/default.nix b/third_party/nixpkgs/pkgs/applications/audio/mympd/default.nix index 5c8c5e7c7b..cc709822d9 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/mympd/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/mympd/default.nix @@ -12,13 +12,13 @@ stdenv.mkDerivation rec { pname = "mympd"; - version = "6.8.1"; + version = "6.8.3"; src = fetchFromGitHub { owner = "jcorporation"; repo = "myMPD"; rev = "v${version}"; - sha256 = "dIGg2mLxN6XBDH3GFXtF7nB9a/zf/qMlPCvIulFRXn8="; + sha256 = "1a3jrqslxk2a9h5gj6kch108lg9z0i5zwr0j9yd5viyfhr3ka4cq"; }; nativeBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/applications/audio/pulseeffects/default.nix b/third_party/nixpkgs/pkgs/applications/audio/pulseeffects/default.nix index 427d29768d..a66cd00527 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/pulseeffects/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/pulseeffects/default.nix @@ -23,6 +23,7 @@ , libsamplerate , libsndfile , libebur128 +, rnnoise , boost , dbus , fftwFloat @@ -44,13 +45,13 @@ let ]; in stdenv.mkDerivation rec { pname = "pulseeffects"; - version = "4.8.2"; + version = "4.8.3"; src = fetchFromGitHub { owner = "wwmm"; repo = "pulseeffects"; rev = "v${version}"; - sha256 = "19h47mrxjm6x83pqcxfsshf48kd1babfk0kwdy1c7fjri7kj0g0s"; + sha256 = "0k5p5y3im7xnf0ikaghh56nfhirkdwf95c8fr17wasgdpw2m86i2"; }; nativeBuildInputs = [ @@ -79,6 +80,7 @@ in stdenv.mkDerivation rec { libebur128 libsamplerate libsndfile + rnnoise boost dbus fftwFloat diff --git a/third_party/nixpkgs/pkgs/applications/audio/quodlibet/default.nix b/third_party/nixpkgs/pkgs/applications/audio/quodlibet/default.nix index 704e20cc8c..386a5110a8 100644 --- a/third_party/nixpkgs/pkgs/applications/audio/quodlibet/default.nix +++ b/third_party/nixpkgs/pkgs/applications/audio/quodlibet/default.nix @@ -1,5 +1,5 @@ -{ stdenv, fetchurl, python3, wrapGAppsHook, gettext, libsoup, gnome3, gtk3, gdk-pixbuf, - tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobject-introspection, +{ stdenv, fetchurl, python3, wrapGAppsHook, gettext, libsoup, gnome3, gtk3, gdk-pixbuf, librsvg, + tag ? "", xvfb_run, dbus, glibcLocales, glib, glib-networking, gobject-introspection, hicolor-icon-theme, gst_all_1, withGstPlugins ? true, xineBackend ? false, xineLib, withDbusPython ? false, withPyInotify ? false, withMusicBrainzNgs ? false, withPahoMqtt ? false, @@ -9,16 +9,18 @@ let optionals = stdenv.lib.optionals; in python3.pkgs.buildPythonApplication rec { pname = "quodlibet${tag}"; - version = "4.2.1"; + version = "4.3.0"; src = fetchurl { url = "https://github.com/quodlibet/quodlibet/releases/download/release-${version}/quodlibet-${version}.tar.gz"; - sha256 = "0b1rvr4hqs2bjmhayms7vxxkn3d92k9v7p1269rjhf11hpk122l7"; + sha256 = "1q17ckblfa4fcs7wsjwsq1dj7360ymrdyjkyqmj864wzlqkw1rd2"; }; + patches = [ ./quodlibet-feedparser6.patch ]; + nativeBuildInputs = [ wrapGAppsHook gettext ]; - checkInputs = [ gdk-pixbuf ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb_run dbus.daemon glibcLocales ]); + checkInputs = [ gdk-pixbuf hicolor-icon-theme ] ++ (with python3.pkgs; [ pytest pytest_xdist polib xvfb_run dbus.daemon glibcLocales ]); buildInputs = [ gnome3.adwaita-icon-theme libsoup glib glib-networking gtk3 webkitgtk gdk-pixbuf keybinder3 gtksourceview libmodplug libappindicator-gtk3 kakasi gobject-introspection ] ++ (if xineBackend then [ xineLib ] else with gst_all_1; @@ -36,6 +38,10 @@ python3.pkgs.buildPythonApplication rec { pytestFlags = stdenv.lib.optionals (xineBackend || !withGstPlugins) [ "--ignore=tests/plugin/test_replaygain.py" ] ++ [ + # requires networking + "--ignore=tests/test_browsers_iradio.py" + # the default theme doesn't have the required icons + "--ignore=tests/plugin/test_trayicon.py" # upstream does actually not enforce source code linting "--ignore=tests/quality" # build failure on Arch Linux @@ -45,7 +51,13 @@ python3.pkgs.buildPythonApplication rec { checkPhase = '' runHook preCheck + # newer gettext spews some warnings which fail the tests + substituteInPlace tests/test_po.py --replace "strict=True" "strict=False" + # otherwise tests can't find the app icons; instead of creating index.theme from scratch + # I re-used the one from hicolor-icon-theme which seems to work + cp "${hicolor-icon-theme}/share/icons/hicolor/index.theme" quodlibet/images/hicolor env XDG_DATA_DIRS="$out/share:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_ICON_DIRS:$XDG_DATA_DIRS" \ + GDK_PIXBUF_MODULE_FILE=${librsvg}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache \ HOME=$(mktemp -d) \ xvfb-run -s '-screen 0 800x600x24' dbus-run-session \ --config-file=${dbus.daemon}/share/dbus-1/session.conf \ @@ -73,7 +85,7 @@ python3.pkgs.buildPythonApplication rec { & internet radio, and all major audio formats. ''; - maintainers = with maintainers; [ coroa sauyon ]; + maintainers = with maintainers; [ coroa pbogdan ]; homepage = "https://quodlibet.readthedocs.io/en/latest/"; }; } diff --git a/third_party/nixpkgs/pkgs/applications/audio/quodlibet/quodlibet-feedparser6.patch b/third_party/nixpkgs/pkgs/applications/audio/quodlibet/quodlibet-feedparser6.patch new file mode 100644 index 0000000000..41c6c75cea --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/audio/quodlibet/quodlibet-feedparser6.patch @@ -0,0 +1,12 @@ +Support feedparser 6, based on https://github.com/quodlibet/quodlibet/pull/3464 + +--- a/quodlibet/browsers/audiofeeds.py ++++ b/quodlibet/browsers/audiofeeds.py +@@ -137,7 +137,4 @@ class Feed(list): + def parse(self): + try: +- if not self._check_feed(): +- return False +- + doc = feedparser.parse(self.uri) + except Exception as e: diff --git a/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/default.nix b/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/default.nix index 19ebedf1ea..9858f04d7d 100644 --- a/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/default.nix +++ b/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/default.nix @@ -140,6 +140,6 @@ stdenv.mkDerivation rec { description = "A cross-desktop display manager"; platforms = platforms.linux; license = licenses.gpl3; - maintainers = with maintainers; [ ocharles worldofpeace ]; + maintainers = with maintainers; [ worldofpeace ]; }; } diff --git a/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/gtk-greeter.nix b/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/gtk-greeter.nix index ab7dd90801..a89e2b0711 100644 --- a/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/gtk-greeter.nix +++ b/third_party/nixpkgs/pkgs/applications/display-managers/lightdm/gtk-greeter.nix @@ -67,6 +67,6 @@ stdenv.mkDerivation rec { homepage = "https://launchpad.net/lightdm-gtk-greeter"; platforms = platforms.linux; license = licenses.gpl3; - maintainers = with maintainers; [ ocharles ]; + maintainers = with maintainers; [ ]; }; } diff --git a/third_party/nixpkgs/pkgs/applications/editors/mg/default.nix b/third_party/nixpkgs/pkgs/applications/editors/mg/default.nix index ef6943001b..6ba315e541 100644 --- a/third_party/nixpkgs/pkgs/applications/editors/mg/default.nix +++ b/third_party/nixpkgs/pkgs/applications/editors/mg/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "mg"; - version = "6.7"; + version = "6.8.1"; src = fetchFromGitHub { owner = "ibara"; repo = "mg"; - rev = "mg-6.7"; - sha256 = "15adwibq6xrfxbrxzk765g9250iyfn4wbcxd7kcsabiwn6apm0ai"; + rev = "mg-6.8.1"; + sha256 = "0fyqyi5sag13jx8bc22bvkgybddvsr0wdili9ikxnpnqg2w84fx7"; }; enableParallelBuilding = true; diff --git a/third_party/nixpkgs/pkgs/applications/editors/netbeans/default.nix b/third_party/nixpkgs/pkgs/applications/editors/netbeans/default.nix index 718b1b8dcb..eb4698c69d 100644 --- a/third_party/nixpkgs/pkgs/applications/editors/netbeans/default.nix +++ b/third_party/nixpkgs/pkgs/applications/editors/netbeans/default.nix @@ -3,7 +3,7 @@ }: let - version = "12.1"; + version = "12.2"; desktopItem = makeDesktopItem { name = "netbeans"; exec = "netbeans"; @@ -19,7 +19,7 @@ stdenv.mkDerivation { inherit version; src = fetchurl { url = "mirror://apache/netbeans/netbeans/${version}/netbeans-${version}-bin.zip"; - sha512 = "ad4bb5b191c784ed144b0b4831a8b95e0707c362917833c279d3f6fad11d7b3fb1f004f30121a941b694fc2ce323974b15072aa31cb5449111bc5d33d0d77103"; + sha512 = "b25cda9830e8fe1d05687b08cc5fa9bcac7e8e6d12776998a4da7e483b3be0d04493345e56be7e6198fa8f86428d57d4459bfa7372c2e3f918f4a1101d0a31a7"; }; buildCommand = '' @@ -27,6 +27,8 @@ stdenv.mkDerivation { unzip $src patchShebangs . + rm netbeans/bin/*.exe + # Copy to installation directory and create a wrapper capable of starting # it. mkdir -pv $out/bin diff --git a/third_party/nixpkgs/pkgs/applications/editors/rednotebook/default.nix b/third_party/nixpkgs/pkgs/applications/editors/rednotebook/default.nix index a6e69cf869..698eca91a8 100644 --- a/third_party/nixpkgs/pkgs/applications/editors/rednotebook/default.nix +++ b/third_party/nixpkgs/pkgs/applications/editors/rednotebook/default.nix @@ -5,13 +5,13 @@ buildPythonApplication rec { pname = "rednotebook"; - version = "2.20"; + version = "2.21"; src = fetchFromGitHub { owner = "jendrikseipp"; repo = "rednotebook"; rev = "v${version}"; - sha256 = "1n0zwrzrjh6sg8vmb95mgscsqrylhgm51zsirblqmpvs392jxrk3"; + sha256 = "07zm4q9h583sg82ayhn9d0ra3wbsfaqrl5sfw6a1kwhyxxkwp8ad"; }; # We have not packaged tests. diff --git a/third_party/nixpkgs/pkgs/applications/editors/spacevim/default.nix b/third_party/nixpkgs/pkgs/applications/editors/spacevim/default.nix new file mode 100644 index 0000000000..b2eb6eecc1 --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/editors/spacevim/default.nix @@ -0,0 +1,55 @@ +{ ripgrep, gitAndTools, fzf, makeWrapper, vim_configurable, vimPlugins, fetchFromGitHub, writeTextDir +, stdenv, runCommandNoCC, remarshal, formats, spacevim_config ? import ./init.nix }: +with stdenv; +let + format = formats.toml {}; + vim-customized = vim_configurable.customize { + name = "vim"; + # Not clear at the moment how to import plugins such that + # SpaceVim finds them and does not auto download them to + # ~/.cache/vimfiles/repos + vimrcConfig.packages.myVimPackage = with vimPlugins; { start = [ ]; }; + }; + spacevimdir = format.generate "init.toml" spacevim_config; +in mkDerivation rec { + pname = "spacevim"; + version = "1.5.0"; + src = fetchFromGitHub { + owner = "SpaceVim"; + repo = "SpaceVim"; + rev = "v${version}"; + sha256 = "1xw4l262x7wzs1m65bddwqf3qx4254ykddsw3c3p844pb3mzqhh7"; + }; + + nativeBuildInputs = [ makeWrapper vim-customized]; + buildInputs = [ vim-customized ]; + + buildPhase = '' + # generate the helptags + vim -u NONE -c "helptags $(pwd)/doc" -c q + ''; + + patches = [ ./helptags.patch ]; + + installPhase = '' + mkdir -p $out/bin + + cp -r $(pwd) $out/SpaceVim + + # trailing slash very important for SPACEVIMDIR + makeWrapper "${vim-customized}/bin/vim" "$out/bin/spacevim" \ + --add-flags "-u $out/SpaceVim/vimrc" --set SPACEVIMDIR "${spacevimdir}/" \ + --prefix PATH : ${lib.makeBinPath [ fzf gitAndTools.git ripgrep]} + ''; + + meta = with stdenv.lib; { + description = "Modern Vim distribution"; + longDescription = '' + SpaceVim is a distribution of the Vim editor that’s inspired by spacemacs. + ''; + homepage = "https://spacevim.org/"; + license = licenses.gpl3Plus; + maintainers = [ maintainers.fzakaria ]; + platforms = platforms.all; + }; +} diff --git a/third_party/nixpkgs/pkgs/applications/editors/spacevim/helptags.patch b/third_party/nixpkgs/pkgs/applications/editors/spacevim/helptags.patch new file mode 100644 index 0000000000..e8b31c5741 --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/editors/spacevim/helptags.patch @@ -0,0 +1,18 @@ +diff --git a/autoload/SpaceVim.vim b/autoload/SpaceVim.vim +index 16688680..fcafd6f7 100644 +--- a/autoload/SpaceVim.vim ++++ b/autoload/SpaceVim.vim +@@ -1255,13 +1255,6 @@ function! SpaceVim#end() abort + let &helplang = 'jp' + endif + "" +- " generate tags for SpaceVim +- let help = fnamemodify(g:_spacevim_root_dir, ':p:h') . '/doc' +- try +- exe 'helptags ' . help +- catch +- call SpaceVim#logger#warn('Failed to generate helptags for SpaceVim') +- endtry + + "" + " set language diff --git a/third_party/nixpkgs/pkgs/applications/editors/spacevim/init.nix b/third_party/nixpkgs/pkgs/applications/editors/spacevim/init.nix new file mode 100644 index 0000000000..7174e45c0b --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/editors/spacevim/init.nix @@ -0,0 +1,46 @@ +# The Nix expression is a 1:1 mapping of the spacevim toml config which you can find on their website: spacevim.org/quick-start-guide/#configuration + +{ + custom_plugins = [{ + merged = false; + name = "lilydjwg/colorizer"; + }]; + layers = [ + { name = "default"; } + { + enable = true; + name = "colorscheme"; + } + { name = "fzf"; } + { + default_height = 30; + default_position = "top"; + name = "shell"; + } + { name = "edit"; } + { name = "VersionControl"; } + { name = "git"; } + { + auto-completion-return-key-behavior = "complete"; + auto-completion-tab-key-behavior = "cycle"; + autocomplete_method = "coc"; + name = "autocomplete"; + } + { name = "lang#ruby"; } + { name = "lang#nix"; } + { name = "lang#java"; } + { name = "lang#kotlin"; } + { name = "lang#sh"; } + { name = "lang#html"; } + ]; + options = { + buffer_index_type = 4; + colorscheme = "gruvbox"; + colorscheme_bg = "dark"; + enable_guicolors = true; + enable_statusline_mode = true; + enable_tabline_filetype_icon = true; + statusline_separator = "fire"; + timeoutlen = 500; + }; +} diff --git a/third_party/nixpkgs/pkgs/applications/editors/standardnotes/default.nix b/third_party/nixpkgs/pkgs/applications/editors/standardnotes/default.nix index 18d9338f90..e019814b3d 100644 --- a/third_party/nixpkgs/pkgs/applications/editors/standardnotes/default.nix +++ b/third_party/nixpkgs/pkgs/applications/editors/standardnotes/default.nix @@ -2,22 +2,22 @@ , fetchurl, runtimeShell }: let - version = "3.3.3"; + version = "3.5.11"; pname = "standardnotes"; name = "${pname}-${version}"; plat = { i386-linux = "-i386"; - x86_64-linux = ""; + x86_64-linux = "x86_64"; }.${stdenv.hostPlatform.system}; sha256 = { - i386-linux = "2ccdf23588b09d645811e562d4fd7e02ac0e367bf2b34e373d8470d48544036d"; - x86_64-linux = "6366d0a37cbf2cf51008a666e40bada763dd1539173de01e093bcbe4146a6bd8"; + i386-linux = "009fnnd7ysxkyykkbmhvr0vn13b21j1j5mzwdvqdkhm9v3c9rbgj"; + x86_64-linux = "1fij00d03ky57jlnhf9n2iqvfa4dgmkgawrxd773gg03hdsk7xcf"; }.${stdenv.hostPlatform.system}; src = fetchurl { - url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}${plat}.AppImage"; + url = "https://github.com/standardnotes/desktop/releases/download/v${version}/standard-notes-${version}-linux-${plat}.AppImage"; inherit sha256; }; diff --git a/third_party/nixpkgs/pkgs/applications/editors/thonny/default.nix b/third_party/nixpkgs/pkgs/applications/editors/thonny/default.nix index c3710cf5b2..0f05bf23c0 100644 --- a/third_party/nixpkgs/pkgs/applications/editors/thonny/default.nix +++ b/third_party/nixpkgs/pkgs/applications/editors/thonny/default.nix @@ -4,13 +4,13 @@ with python3.pkgs; buildPythonApplication rec { pname = "thonny"; - version = "3.3.0"; + version = "3.3.1"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "1k1iy01az65w463j6id7iyrbinjbjd220i100mrnxyn569dxmf34"; + sha256 = "0nk4kx6apmnd6fyd9zw77yprjzgjf7micvcws2i2sci0d9fff34c"; }; propagatedBuildInputs = with python3.pkgs; [ diff --git a/third_party/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix b/third_party/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix index a1e39cfebe..558112763a 100644 --- a/third_party/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix +++ b/third_party/nixpkgs/pkgs/applications/graphics/ImageMagick/7.0.nix @@ -14,8 +14,8 @@ let else throw "ImageMagick is not supported on this platform."; cfg = { - version = "7.0.10-35"; - sha256 = "0hcqvn3n3ip2fia48d1nb1m4r5ir00vbaa62xqni30kglh3n2sfh"; + version = "7.0.10-46"; + sha256 = "019l1qv8ds8hvyjwi1g21293a7v28bxf8ycnvr9828kpdhf4jxaa"; patches = []; }; in diff --git a/third_party/nixpkgs/pkgs/applications/graphics/feh/default.nix b/third_party/nixpkgs/pkgs/applications/graphics/feh/default.nix index 0c7f3e8fe1..a7d26f5300 100644 --- a/third_party/nixpkgs/pkgs/applications/graphics/feh/default.nix +++ b/third_party/nixpkgs/pkgs/applications/graphics/feh/default.nix @@ -7,11 +7,11 @@ with stdenv.lib; stdenv.mkDerivation rec { pname = "feh"; - version = "3.6"; + version = "3.6.1"; src = fetchurl { url = "https://feh.finalrewind.org/${pname}-${version}.tar.bz2"; - sha256 = "1n6gbyzlc3kx2cq9wfz7azn7mrjmcc9pq436k1n4mrh0lik5sxw7"; + sha256 = "1a0ygdpyvpcsr0hdi9ai7ycbkgvacq8dpd8cacbppsds5k2xw7lv"; }; outputs = [ "out" "man" "doc" ]; diff --git a/third_party/nixpkgs/pkgs/applications/graphics/fondo/default.nix b/third_party/nixpkgs/pkgs/applications/graphics/fondo/default.nix index a4d925da3d..73cfdccea8 100644 --- a/third_party/nixpkgs/pkgs/applications/graphics/fondo/default.nix +++ b/third_party/nixpkgs/pkgs/applications/graphics/fondo/default.nix @@ -21,13 +21,13 @@ stdenv.mkDerivation rec { pname = "fondo"; - version = "1.4.0"; + version = "1.5.0"; src = fetchFromGitHub { owner = "calo001"; repo = pname; rev = version; - sha256 = "0cdcn4qmdryk2x327f1z3pq8pg4cb0q1jr779gh8s6nqajyk8nqm"; + sha256 = "1zmrpk0b5z6m956j923njn6dpqdm2p8653a325hgjjjq0sgwbhj2"; }; nativeBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/applications/graphics/freecad/default.nix b/third_party/nixpkgs/pkgs/applications/graphics/freecad/default.nix index 3a5d36dfac..f1e366b656 100644 --- a/third_party/nixpkgs/pkgs/applications/graphics/freecad/default.nix +++ b/third_party/nixpkgs/pkgs/applications/graphics/freecad/default.nix @@ -9,13 +9,13 @@ let pythonPackages = python3Packages; in mkDerivation rec { pname = "freecad-unstable"; - version = "2020-10-17"; + version = "2020-12-08"; src = fetchFromGitHub { owner = "FreeCAD"; repo = "FreeCAD"; - rev = "f3bdaaa55a6c03b297924c40819d23e4603fa55b"; - sha256 = "1q1iy4i9k65v8z7h8a6r4bf5ycn124jp26xwp0xwbar4gnkx2jiq"; + rev = "daea30341ea2d5eaf2bfb65614128a5fa2abc8b7"; + sha256 = "1fza64lygqq35v7kzgqmiq5dvl5rpgkhlzv06f9dszdz44hznina"; }; nativeBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/applications/graphics/goxel/default.nix b/third_party/nixpkgs/pkgs/applications/graphics/goxel/default.nix index 40d0f4a3db..771109fb55 100644 --- a/third_party/nixpkgs/pkgs/applications/graphics/goxel/default.nix +++ b/third_party/nixpkgs/pkgs/applications/graphics/goxel/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "goxel"; - version = "0.10.6"; + version = "0.10.7"; src = fetchFromGitHub { owner = "guillaumechereau"; repo = "goxel"; rev = "v${version}"; - sha256 = "1wmxy5wfk1xrqgz0y0zcr4vkddylqc70cv4vzk117x6whjnldsm3"; + sha256 = "1v6m6nhl1if8ik5bmblhq46bip6y2qz18a04s8a9awb4yh9ls039"; }; patches = [ ./disable-imgui_ini.patch ]; diff --git a/third_party/nixpkgs/pkgs/applications/graphics/img-cat/default.nix b/third_party/nixpkgs/pkgs/applications/graphics/img-cat/default.nix new file mode 100644 index 0000000000..a4985c4e2c --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/graphics/img-cat/default.nix @@ -0,0 +1,22 @@ +{ lib, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "imgcat"; + version = "1.2.0"; + + src = fetchFromGitHub { + owner = "trashhalo"; + repo = "imgcat"; + rev = "v${version}"; + sha256 = "0x7a1izsbrbfph7wa9ny9r4a8lp6z15qpb6jf8wsxshiwnkjyrig"; + }; + + vendorSha256 = "191gi4c5jk8p9xvbm1cdhk5yi8q2cp2jvjq1sgxqw1ad0lppwhg2"; + + meta = with lib; { + description = "A tool to output images as RGB ANSI graphics on the terminal"; + homepage = "https://github.com/trashhalo/imgcat"; + license = licenses.mit; + maintainers = with maintainers; [ penguwin ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/applications/graphics/meme/default.nix b/third_party/nixpkgs/pkgs/applications/graphics/meme/default.nix index 8cbc776132..5425b8bef2 100644 --- a/third_party/nixpkgs/pkgs/applications/graphics/meme/default.nix +++ b/third_party/nixpkgs/pkgs/applications/graphics/meme/default.nix @@ -1,23 +1,22 @@ { stdenv -, buildGoPackage , unstableGitUpdater +, buildGoModule , fetchFromGitHub }: -buildGoPackage rec { +buildGoModule { pname = "meme"; - version = "unstable-2017-09-10"; - - owner = "nomad-software"; - repo = "meme"; - goPackagePath = "github.com/${owner}/${repo}"; + version = "unstable-2020-05-28"; src = fetchFromGitHub { - inherit owner repo; - rev = "a6521f2eecb0aac22937b0013747ed9cb40b81ea"; - sha256 = "1gbsv1d58ck6mj89q31s5b0ppw51ab76yqgz39jgwqnkidvzdfly"; + owner = "nomad-software"; + repo = "meme"; + rev = "33a8b7d0de6996294a0464a605dacc17b26a6b02"; + sha256 = "05h8d6pjszhr49xqg02nw94hm95kb7w1i7nw8jxi582fxxm2qbnm"; }; + vendorSha256 = null; + passthru.updateScript = unstableGitUpdater { }; meta = with stdenv.lib; { diff --git a/third_party/nixpkgs/pkgs/applications/graphics/odafileconverter/default.nix b/third_party/nixpkgs/pkgs/applications/graphics/odafileconverter/default.nix index 0378c4db13..0d1d64f3dd 100644 --- a/third_party/nixpkgs/pkgs/applications/graphics/odafileconverter/default.nix +++ b/third_party/nixpkgs/pkgs/applications/graphics/odafileconverter/default.nix @@ -4,7 +4,7 @@ let # To obtain the version you will need to run the following command: # # dpkg-deb -I ${odafileconverter.src} | grep Version - version = "21.7.0.0"; + version = "21.11.0.0"; rpath = "$ORIGIN:${lib.makeLibraryPath [ stdenv.cc.cc qtbase ]}"; in mkDerivation { @@ -14,8 +14,8 @@ in mkDerivation { src = fetchurl { # NB: this URL is not stable (i.e. the underlying file and the corresponding version will change over time) - url = "https://download.opendesign.com/guestfiles/ODAFileConverter/ODAFileConverter_QT5_lnxX64_7.2dll.deb"; - sha256 = "0sa21nnwzqb6g7gl0z43smqgcd9h3xipj3cq2cl7ybfh3cvcxfi9"; + url = "http://web.archive.org/web/20201206221727if_/https://download.opendesign.com/guestfiles/Demo/ODAFileConverter_QT5_lnxX64_7.2dll_21.11.deb"; + sha256 = "10027a3ab18efd04ca75aa699ff550eca3bdfe6f7084460d3c00001bffb50070"; }; unpackPhase = '' diff --git a/third_party/nixpkgs/pkgs/applications/misc/calibre/default.nix b/third_party/nixpkgs/pkgs/applications/misc/calibre/default.nix index 92a491a005..8ea1dba54e 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/calibre/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/calibre/default.nix @@ -99,7 +99,7 @@ mkDerivation rec { sip # the following are distributed with calibre, but we use upstream instead odfpy - ] + ] ++ lib.optional (unrarSupport) unrardll ); installPhase = '' diff --git a/third_party/nixpkgs/pkgs/applications/misc/etesync-dav/default.nix b/third_party/nixpkgs/pkgs/applications/misc/etesync-dav/default.nix index 5e3a85c3b9..0cbb3cc75a 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/etesync-dav/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/etesync-dav/default.nix @@ -2,31 +2,22 @@ python3Packages.buildPythonApplication rec { pname = "etesync-dav"; - version = "0.20.0"; + version = "0.30.6"; src = python3Packages.fetchPypi { inherit pname version; - sha256 = "1q8h89hqi4kxphn1g5nbcia0haz5k57is9rycwaabm55mj9s9fah"; + sha256 = "0cjz4p3a750fwvrxbzwda0sidw7nscahvppdshbsx49i6qrczpbg"; }; - postPatch = '' - substituteInPlace setup.py --replace "Radicale==" "Radicale>=" - ''; - propagatedBuildInputs = with python3Packages; [ + etebase etesync flask flask_wtf radicale3 ]; - checkInputs = with python3Packages; [ - pytest - ]; - - checkPhase = '' - pytest - ''; + doCheck = false; meta = with lib; { homepage = "https://www.etesync.com/"; diff --git a/third_party/nixpkgs/pkgs/applications/misc/garmin-plugin/default.nix b/third_party/nixpkgs/pkgs/applications/misc/garmin-plugin/default.nix index 95cbdd9c19..37cf8fc18a 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/garmin-plugin/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/garmin-plugin/default.nix @@ -20,7 +20,7 @@ stdenv.mkDerivation { meta = { homepage = "http://www.andreas-diesner.de/garminplugin"; license = stdenv.lib.licenses.gpl3; - maintainers = [ stdenv.lib.maintainers.ocharles ]; + maintainers = [ ]; platforms = stdenv.lib.platforms.linux; }; } diff --git a/third_party/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix b/third_party/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix index c3161ed875..362ba4a3a1 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/golden-cheetah/default.nix @@ -72,7 +72,7 @@ in mkDerivation rec { meta = with stdenv.lib; { description = "Performance software for cyclists, runners and triathletes"; platforms = platforms.linux; - maintainers = [ maintainers.ocharles ]; + maintainers = [ ]; license = licenses.gpl3; }; } diff --git a/third_party/nixpkgs/pkgs/applications/misc/octoprint/default.nix b/third_party/nixpkgs/pkgs/applications/misc/octoprint/default.nix index 82cdf18b48..974b733ae6 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/octoprint/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/octoprint/default.nix @@ -25,13 +25,30 @@ let [ # the following dependencies are non trivial to update since later versions introduce backwards incompatible # changes that might affect plugins, or due to other observed problems - (mkOverride "markupsafe" "1.1.1" "29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b") + (mkOverride "flask-babel" "1.0.0" "0gmb165vkwv5v7dxsxa2i3zhafns0fh938m2zdcrv4d8z5l099yn") (mkOverride "rsa" "4.0" "1a836406405730121ae9823e19c6e806c62bbad73f890574fff50efa4122c487") (mkOverride "markdown" "3.1.1" "2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a") (mkOverride "tornado" "5.1.1" "4e5158d97583502a7e2739951553cbd88a72076f152b4b11b64b9a10c4c49409") (mkOverride "unidecode" "0.04.21" "280a6ab88e1f2eb5af79edff450021a0d3f0448952847cd79677e55e58bad051") (mkOverride "sarge" "0.1.5.post0" "1c1ll7pys9vra5cfi8jxlgrgaql6c27l6inpy15aprgqhc4ck36s") + # Octoprint needs zeroconf >=0.24 <0.25. While this should be done in + # the mkOverride aboves, this package also has broken tests, so we need + # a proper override. + ( + self: super: { + zeroconf = super.zeroconf.overrideAttrs (oldAttrs: rec { + version = "0.24.5"; + src = oldAttrs.src.override { + inherit version; + sha256 = "0jpgd0rk91si93857mjrizan5gc42kj1q4fi4160qgk68la88fl9"; + }; + buildInputs = [ self.nose ]; + checkPhase = "nosetests"; + }); + } + ) + # Built-in dependency ( self: super: { @@ -55,13 +72,13 @@ let self: super: { octoprint-firmwarecheck = self.buildPythonPackage rec { pname = "OctoPrint-FirmwareCheck"; - version = "2020.06.22"; + version = "2020.09.23"; src = fetchFromGitHub { owner = "OctoPrint"; repo = "OctoPrint-FirmwareCheck"; rev = version; - sha256 = "19y7hrgg9z8hl7cwqkvg8nc8bk0wwrsfvjd1wawy33wn60psqv1h"; + sha256 = "1l1ajhnsc39prgk59mp93h90dgl9gh660cci00z5b5gj2h6dv1d1"; }; doCheck = false; }; @@ -72,53 +89,54 @@ let self: super: { octoprint = self.buildPythonPackage rec { pname = "OctoPrint"; - version = "1.4.2"; + version = "1.5.1"; src = fetchFromGitHub { owner = "OctoPrint"; repo = "OctoPrint"; rev = version; - sha256 = "1bblrjwkccy1ifw7lf55g3k9lq1sqzwd49vj8bfzj2w07a7qda62"; + sha256 = "04x58cjivslsrld341ip11c50d50p2q01090nsyji0j255v986j9"; }; propagatedBuildInputs = with super; [ - octoprint-firmwarecheck - octoprint-filecheck - markupsafe - tornado - markdown - rsa - regex + blinker + cachelib + click + emoji + feedparser + filetype flask - jinja2 - flask_login flask-babel flask_assets - werkzeug - itsdangerous - cachelib - pyyaml - pyserial - netaddr - watchdog - sarge - netifaces - pylru - pkginfo - requests - semantic-version - psutil - click - feedparser - future - websocket_client - wrapt - emoji + flask_login frozendict + future + itsdangerous + jinja2 + markdown + markupsafe + netaddr + netifaces + octoprint-filecheck + octoprint-firmwarecheck + pkginfo + psutil + pylru + pyserial + pyyaml + regex + requests + rsa + sarge + semantic-version sentry-sdk - filetype + tornado unidecode - blinker + watchdog + websocket_client + werkzeug + wrapt + zeroconf ] ++ lib.optionals stdenv.isDarwin [ py.pkgs.appdirs ]; checkInputs = with super; [ pytestCheckHook mock ddt ]; diff --git a/third_party/nixpkgs/pkgs/applications/misc/openrgb/default.nix b/third_party/nixpkgs/pkgs/applications/misc/openrgb/default.nix index 09a09811ab..df9e149d9a 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/openrgb/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/openrgb/default.nix @@ -1,35 +1,30 @@ -{ mkDerivation, lib, fetchFromGitHub, qmake, libusb1, hidapi, pkg-config, fetchpatch }: +{ lib, mkDerivation, fetchFromGitLab, qmake, libusb1, hidapi, pkg-config }: mkDerivation rec { pname = "openrgb"; - version = "0.4"; + version = "0.5"; - src = fetchFromGitHub { + src = fetchFromGitLab { owner = "CalcProgrammer1"; repo = "OpenRGB"; rev = "release_${version}"; - sha256 = "sha256-tHrRG2Zx7NYqn+WPiRpAlWA/QmxuAYidENanTkC1XVw"; + sha256 = "001x2ycfmlb9s21sp91aw5gxizcn6kzm8x7bvkps4b1iq0ap5fzv"; }; nativeBuildInputs = [ qmake pkg-config ]; buildInputs = [ libusb1 hidapi ]; - patches = [ - # Make build SOURCE_DATE_EPOCH aware, merged in master - (fetchpatch { - url = "https://gitlab.com/CalcProgrammer1/OpenRGB/-/commit/f1b7b8ba900db58a1119d8d3e21c1c79de5666aa.patch"; - sha256 = "17m1hn1kjxfcmd4p3zjhmr5ar9ng0zfbllq78qxrfcq1a0xrkybx"; - }) - ]; - installPhase = '' mkdir -p $out/bin - cp OpenRGB $out/bin + cp openrgb $out/bin + + mkdir -p $out/etc/udev/rules.d + cp 60-openrgb.rules $out/etc/udev/rules.d ''; doInstallCheck = true; installCheckPhase = '' - $out/bin/OpenRGB --help > /dev/null + HOME=$TMPDIR $out/bin/openrgb --help > /dev/null ''; enableParallelBuilding = true; diff --git a/third_party/nixpkgs/pkgs/applications/misc/plater/default.nix b/third_party/nixpkgs/pkgs/applications/misc/plater/default.nix index 9d29390870..9b034f9f90 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/plater/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/plater/default.nix @@ -3,7 +3,9 @@ , fetchFromGitHub , lib , libGLU +, makeDesktopItem , qtbase +, wrapQtAppsHook }: mkDerivation rec { @@ -17,9 +19,24 @@ mkDerivation rec { sha256 = "0r20mbzd16zv1aiadjqdy7z6sp09rr6lgfxhvir4ll3cpakkynr4"; }; - nativeBuildInputs = [ cmake ]; + nativeBuildInputs = [ cmake wrapQtAppsHook ]; buildInputs = [ libGLU qtbase ]; + desktopItem = makeDesktopItem { + name = pname; + exec = pname; + icon = pname; + desktopName = "Ideamaker"; + genericName = meta.description; + categories = "Utility;Engineering;"; + }; + + postInstall = '' + mkdir -p $out/share/pixmaps + ln -s ${desktopItem}/share/applications $out/share/ + cp $src/gui/img/plater.png $out/share/pixmaps/${pname}.png + ''; + meta = with lib; { description = "3D-printer parts placer and plate generator"; homepage = "https://github.com/Rhoban/Plater"; diff --git a/third_party/nixpkgs/pkgs/applications/misc/stog/default.nix b/third_party/nixpkgs/pkgs/applications/misc/stog/default.nix index 038d04adea..7b497dc60e 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/stog/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/stog/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { createFindlibDestdir = true; - patches = [ ./install.patch ]; + patches = [ ./install.patch ./uri.patch ]; meta = with stdenv.lib; { description = "XML documents and web site compiler"; diff --git a/third_party/nixpkgs/pkgs/applications/misc/stog/uri.patch b/third_party/nixpkgs/pkgs/applications/misc/stog/uri.patch new file mode 100644 index 0000000000..08063a38ad --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/misc/stog/uri.patch @@ -0,0 +1,13 @@ +diff --git a/src/stog_url.ml b/src/stog_url.ml +index 5d30a43f..c67bfc36 100644 +--- a/src/stog_url.ml ++++ b/src/stog_url.ml +@@ -40,7 +40,7 @@ let of_string s = + with _ -> + failwith (Printf.sprintf "Malformed URL %S" s) + ;; +-let to_string = Uri.to_string ;; ++let to_string u = Uri.to_string u;; + + let path url = + let l = diff --git a/third_party/nixpkgs/pkgs/applications/misc/taskwarrior/0001-bash-completion-quote-pattern-argument-to-grep.patch b/third_party/nixpkgs/pkgs/applications/misc/taskwarrior/0001-bash-completion-quote-pattern-argument-to-grep.patch deleted file mode 100644 index 8e5c0139e5..0000000000 --- a/third_party/nixpkgs/pkgs/applications/misc/taskwarrior/0001-bash-completion-quote-pattern-argument-to-grep.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 0d677475b710b9bb61d4b3ac5435c36b47d3a155 Mon Sep 17 00:00:00 2001 -From: Peter Simons -Date: Wed, 8 Feb 2017 11:28:42 +0100 -Subject: [PATCH] bash-completion: quote pattern argument to grep - -Without the quotes, bash might expand that pattern based on the contents of the -current working directory or -- if nullglob is set -- the argument disappears -outright if no directory entry matches. ---- - scripts/bash/task.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/scripts/bash/task.sh b/scripts/bash/task.sh -index e0c7fb03..d15ed3eb 100644 ---- a/scripts/bash/task.sh -+++ b/scripts/bash/task.sh -@@ -72,7 +72,7 @@ _task_offer_contexts() { - COMPREPLY=( $(compgen -W "$($taskcommand _context) define delete list none show" -- $cur) ) - } - --_task_context_alias=$($taskcommand show | grep alias.*context | cut -d' ' -f1 | cut -d. -f2) -+_task_context_alias=$($taskcommand show | grep "alias.*context" | cut -d' ' -f1 | cut -d. -f2) - - _task() - { --- -2.11.1 - diff --git a/third_party/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix b/third_party/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix index 67f2fd8927..e18b8d697f 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/taskwarrior/default.nix @@ -1,16 +1,17 @@ -{ stdenv, fetchurl, cmake, libuuid, gnutls }: +{ stdenv, fetchFromGitHub, cmake, libuuid, gnutls }: stdenv.mkDerivation rec { pname = "taskwarrior"; - version = "2.5.1"; + version = "2.5.2"; - src = fetchurl { - url = "https://taskwarrior.org/download/task-${version}.tar.gz"; - sha256 = "059a9yc58wcicc6xxsjh1ph7k2yrag0spsahp1wqmsq6h7jwwyyq"; + src = fetchFromGitHub { + owner = "GothenburgBitFactory"; + repo = "taskwarrior"; + rev = "v${version}"; + sha256 = "0jv5b56v75qhdqbrfsddfwizmbizcsv3mn8gp92nckwlx9hrk5id"; + fetchSubmodules = true; }; - patches = [ ./0001-bash-completion-quote-pattern-argument-to-grep.patch ]; - nativeBuildInputs = [ cmake libuuid gnutls ]; postInstall = '' diff --git a/third_party/nixpkgs/pkgs/applications/misc/visidata/default.nix b/third_party/nixpkgs/pkgs/applications/misc/visidata/default.nix index e23df96efe..450be72a28 100644 --- a/third_party/nixpkgs/pkgs/applications/misc/visidata/default.nix +++ b/third_party/nixpkgs/pkgs/applications/misc/visidata/default.nix @@ -15,13 +15,13 @@ }: buildPythonApplication rec { pname = "visidata"; - version = "2.0.1"; + version = "2.1"; src = fetchFromGitHub { owner = "saulpw"; repo = "visidata"; rev = "v${version}"; - sha256 = "sha256-AkGU9p00y+psBS/fL2YLyQYRSMOp1aPs21E9bpN9z0M="; + sha256 = "1psb3ycrb7k00b5blg9zr52bzdxs1mkdc7rpjn4m9kh09yfs3sx4"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/applications/misc/zktree/default.nix b/third_party/nixpkgs/pkgs/applications/misc/zktree/default.nix new file mode 100644 index 0000000000..fe7b42dcc9 --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/misc/zktree/default.nix @@ -0,0 +1,25 @@ +{ lib +, fetchFromGitHub +, rustPlatform +}: + +rustPlatform.buildRustPackage rec { + pname = "zktree"; + version = "0.0.1"; + + src = fetchFromGitHub { + owner = "alirezameskin"; + repo = "zktree"; + rev = version; + sha256 = "11w86k1w5zryiq6bqr98pjhffd3l76377yz53qx0n76vc5374fk9"; + }; + + cargoSha256 = "1d35jrxvhf7m04s1kh0yrfhy9j9i6qzwbw2mwapgsrcsr5vhxasn"; + + meta = with lib; { + description = "A small tool to display Znodes in Zookeeper in tree structure."; + homepage = "https://github.com/alirezameskin/zktree"; + license = licenses.unlicense; + maintainers = with lib.maintainers; [ alirezameskin ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/plugins.nix b/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/plugins.nix index c725f87d3a..54e1284aa6 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/plugins.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/plugins.nix @@ -44,11 +44,11 @@ let flash = stdenv.mkDerivation rec { pname = "flashplayer-ppapi"; - version = "32.0.0.445"; + version = "32.0.0.453"; src = fetchzip { url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz"; - sha256 = "1r9vd210d2qp501q40pjx60mzah08rg0f8jk5rpp52ddajwggalv"; + sha256 = "1d0hxn6snvx15clhcwncw40z0mf5p1pw68wrp7w1l3jkkw4brsgj"; stripRoot = false; }; diff --git a/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json b/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json index 6343dd4b24..15899d31e7 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json +++ b/third_party/nixpkgs/pkgs/applications/networking/browsers/chromium/upstream-info.json @@ -13,7 +13,7 @@ }, "chromedriver": { "version": "87.0.4280.88", - "sha256_linux": "141mr2jiy3nslwd3s43m4i6plkv9wv5fgi78cn7mz0ac9x6fpcgx", + "sha256_linux": "11plh2hs2zpa14ymlbnj92pa58krl28yw4c0s55wk8qsxvzvl02m", "sha256_darwin": "048hsqp6575r980m769lzznvxypmfcwn89f1d3ik751ymzmb5r78" } }, diff --git a/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix b/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix index 3affcba863..82015b6f13 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/default.nix @@ -74,7 +74,7 @@ let in stdenv.mkDerivation rec { pname = "flashplayer"; - version = "32.0.0.445"; + version = "32.0.0.453"; src = fetchurl { url = @@ -85,14 +85,14 @@ stdenv.mkDerivation rec { sha256 = if debug then if arch == "x86_64" then - "0jn1g8k8fkikhi0xlcsx5a43lxrj6ynwbxn55b17wacsqw20b9ii" + "0jjzx7jpaz2a4p5x5535v8286pakhfymrq6zi16skv4cfixc0q99" else - "104af8sy0qq45agg3lpjwn1cp8lhpcjiim6gqn4cymcfp8d7ngg0" + "1ikgxl33g503bm7v1209bmwppx0j40dnlm01hddx5i2qzv7dwh2v" else if arch == "x86_64" then - "1dd52nhnl3f1d7r82gq28scna5qr39gpfqkgrhzd6cxd2vnhnhjn" + "0dryf849xjr767zlpvg8wsy4fh4dl8gbca4l7a1yc47lgq1ffzsq" else - "09ayb637cyf5x06xmhvad2znss7ak7r4n8z3wq7qmn0pmjdsa5a3"; + "1y0xawsm9qsk0js6p6n5g5yy24kh2kn1kbmsla59g204l6xwsla1"; }; nativeBuildInputs = [ unzip ]; diff --git a/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix b/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix index 75c97cdd34..7d54cfe401 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/browsers/mozilla-plugins/flashplayer/standalone.nix @@ -50,7 +50,7 @@ stdenv.mkDerivation { pname = "flashplayer-standalone"; - version = "32.0.0.445"; + version = "32.0.0.453"; src = fetchurl { url = @@ -60,9 +60,9 @@ stdenv.mkDerivation { "https://fpdownload.macromedia.com/pub/flashplayer/updaters/32/flash_player_sa_linux.x86_64.tar.gz"; sha256 = if debug then - "0iqmdd222mjsf3rdbcm4z974i5q9y4i5agnhn039k0hpydi4zdcr" + "1qnmr8y9rzb8f9j4pn0cr7nxrdfn1pqkwfrzq8rf3nw9np4lxyfv" else - "07vz17zhwh31phccpbmwgfa3fdb2f7bnc3sf66ipsw1xcqgncpsx"; + "0s0xcbha72y0wybnmalgsx7nv3b9jcwv7p3rakj6ij9l1wf73b7g"; }; nativeBuildInputs = [ unzip ]; diff --git a/third_party/nixpkgs/pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix b/third_party/nixpkgs/pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix index c725f87d3a..54e1284aa6 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/browsers/ungoogled-chromium/plugins.nix @@ -44,11 +44,11 @@ let flash = stdenv.mkDerivation rec { pname = "flashplayer-ppapi"; - version = "32.0.0.445"; + version = "32.0.0.453"; src = fetchzip { url = "https://fpdownload.adobe.com/pub/flashplayer/pdc/${version}/flash_player_ppapi_linux.x86_64.tar.gz"; - sha256 = "1r9vd210d2qp501q40pjx60mzah08rg0f8jk5rpp52ddajwggalv"; + sha256 = "1d0hxn6snvx15clhcwncw40z0mf5p1pw68wrp7w1l3jkkw4brsgj"; stripRoot = false; }; diff --git a/third_party/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix b/third_party/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix index 9163347d7b..a97bf509fe 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/cluster/kube3d/default.nix @@ -1,11 +1,11 @@ { lib, buildGoModule, fetchFromGitHub, installShellFiles }: let - k3sVersion = "1.19.3-k3s3"; + k3sVersion = "1.19.4-k3s1"; in buildGoModule rec { pname = "kube3d"; - version = "3.3.0"; + version = "3.4.0"; excludedPackages = "tools"; @@ -13,7 +13,7 @@ buildGoModule rec { owner = "rancher"; repo = "k3d"; rev = "v${version}"; - sha256 = "1pq5x4fyn98f01mzfjv335gx29c61zd85qc5vhx9rk27hi825ima"; + sha256 = "1fisbzv786n841pagy7zbanll7k1g5ib805j9azs2s30cfhvi08b"; }; vendorSha256 = null; diff --git a/third_party/nixpkgs/pkgs/applications/networking/cluster/kubectl/default.nix b/third_party/nixpkgs/pkgs/applications/networking/cluster/kubectl/default.nix index fed40523a9..c550a0e2f2 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/cluster/kubectl/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/cluster/kubectl/default.nix @@ -1,27 +1,24 @@ -{ stdenv, kubernetes }: +{ stdenv, kubernetes, installShellFiles }: stdenv.mkDerivation { name = "kubectl-${kubernetes.version}"; # kubectl is currently part of the main distribution but will eventially be # split out (see homepage) - src = kubernetes; + dontUnpack = true; + + nativeBuildInputs = [ installShellFiles ]; outputs = [ "out" "man" ]; installPhase = '' - mkdir -p \ - "$out/bin" \ - "$out/share/bash-completion/completions" \ - "$out/share/zsh/site-functions" \ - "$man/share/man/man1" + install -D ${kubernetes}/bin/kubectl -t $out/bin - cp bin/kubectl $out/bin/kubectl + installManPage "${kubernetes.man}/share/man/man1"/kubectl* - cp "${kubernetes.man}/share/man/man1"/kubectl* "$man/share/man/man1" - - $out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl - $out/bin/kubectl completion zsh > $out/share/zsh/site-functions/_kubectl + installShellCompletion --cmd kubectl \ + --bash <($out/bin/kubectl completion bash) \ + --zsh <($out/bin/kubectl completion zsh) ''; meta = kubernetes.meta // { diff --git a/third_party/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix b/third_party/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix index 9a8bbe09a5..cdda1487a4 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/cluster/kubernetes/default.nix @@ -1,7 +1,14 @@ -{ stdenv, lib, fetchFromGitHub, removeReferencesTo, which, go, go-bindata, makeWrapper, rsync +{ stdenv +, lib +, fetchFromGitHub +, removeReferencesTo +, which +, go +, makeWrapper +, rsync +, installShellFiles + , components ? [ - "cmd/kubeadm" - "cmd/kubectl" "cmd/kubelet" "cmd/kube-apiserver" "cmd/kube-controller-manager" @@ -11,8 +18,6 @@ ] }: -with lib; - stdenv.mkDerivation rec { pname = "kubernetes"; version = "1.19.4"; @@ -24,9 +29,9 @@ stdenv.mkDerivation rec { sha256 = "05gisihrklkzsdsrrmvmqlfwfdx73jbwd5668n5wa5hp432qyvwi"; }; - nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync go-bindata ]; + nativeBuildInputs = [ removeReferencesTo makeWrapper which go rsync installShellFiles ]; - outputs = ["out" "man" "pause"]; + outputs = [ "out" "man" "pause" ]; postPatch = '' # go env breaks the sandbox @@ -41,7 +46,10 @@ stdenv.mkDerivation rec { patchShebangs ./hack ''; - WHAT=concatStringsSep " " components; + WHAT = lib.concatStringsSep " " ([ + "cmd/kubeadm" + "cmd/kubectl" + ] ++ components); postBuild = '' ./hack/update-generated-docs.sh @@ -49,11 +57,12 @@ stdenv.mkDerivation rec { ''; installPhase = '' - mkdir -p "$out/bin" "$out/share/bash-completion/completions" "$out/share/zsh/site-functions" "$man/share/man" "$pause/bin" + for p in $WHAT; do + install -D _output/local/go/bin/''${p##*/} -t $out/bin + done - cp _output/local/go/bin/* "$out/bin/" - cp build/pause/pause "$pause/bin/pause" - cp -R docs/man/man1 "$man/share/man" + install -D build/pause/pause -t $pause/bin + installManPage docs/man/man1/*.[1-9] cp cluster/addons/addon-manager/kube-addons.sh $out/bin/kube-addons patchShebangs $out/bin/kube-addons @@ -61,19 +70,22 @@ stdenv.mkDerivation rec { cp ${./mk-docker-opts.sh} $out/bin/mk-docker-opts.sh - $out/bin/kubectl completion bash > $out/share/bash-completion/completions/kubectl - $out/bin/kubectl completion zsh > $out/share/zsh/site-functions/_kubectl + for tool in kubeadm kubectl; do + installShellCompletion --cmd $tool \ + --bash <($out/bin/$tool completion bash) \ + --zsh <($out/bin/$tool completion zsh) + done ''; preFixup = '' find $out/bin $pause/bin -type f -exec remove-references-to -t ${go} '{}' + ''; - meta = { + meta = with lib; { description = "Production-Grade Container Scheduling and Management"; license = licenses.asl20; homepage = "https://kubernetes.io"; - maintainers = with maintainers; [johanot offline saschagrunert]; + maintainers = with maintainers; [ johanot offline saschagrunert ]; platforms = platforms.unix; }; } diff --git a/third_party/nixpkgs/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix b/third_party/nixpkgs/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix index 1c9f21afdd..293c2ed31c 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/cluster/octant/plugins/starboard-octant-plugin.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "starboard-octant-plugin"; - version = "0.6.0"; + version = "0.7.0"; src = fetchFromGitHub { owner = "aquasecurity"; repo = pname; rev = "v${version}"; - sha256 = "1rgfk8l3yz7xwghr06vcgpi6zzjynxxvyg2r78fgp7wpw7bh3rmd"; + sha256 = "140m7mnpqhfbp2qqpr3jjsc770xdph98mm5zpgwzg0jwgpsrcxsm"; }; - vendorSha256 = "1f6x66zgrmm7x661d0d0qqharrpyb2bsi10swlgx68y5yz285296"; + vendorSha256 = "0aphx2rpnvzmfyfs11hf8j5b7s5lgw4kcq4jpdrkjwx7zhl6qx2g"; meta = with lib; { description = "Octant plugin for viewing Starboard security information"; diff --git a/third_party/nixpkgs/pkgs/applications/networking/cluster/starboard/default.nix b/third_party/nixpkgs/pkgs/applications/networking/cluster/starboard/default.nix index bb43270645..e8ffa35353 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/cluster/starboard/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/cluster/starboard/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "starboard"; - version = "0.7.0"; + version = "0.7.1"; src = fetchFromGitHub { owner = "aquasecurity"; repo = pname; rev = "v${version}"; - sha256 = "1xj0fa52973h7cg3scxn85lav98q6fz82dwd5cls3p39ghnhzn5l"; + sha256 = "0p0c459xih580ix3279fr45mm3q9w887rs7w1yrikh09xpcisdfr"; }; vendorSha256 = "07cz4p8k927ash5ncw1r56bcn592imgywbyzkvhnn50pap91m0q0"; diff --git a/third_party/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix b/third_party/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix index 4d27ad5361..c120ac0964 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/dnscontrol/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "dnscontrol"; - version = "3.4.2"; + version = "3.5.0"; src = fetchFromGitHub { owner = "StackExchange"; repo = pname; rev = "v${version}"; - sha256 = "0bvvh68k2xjmmwafwdsijf3yb4ff9wbsl2ibad627l1y4js5615z"; + sha256 = "0bnsd1kx0ji2s3w1v7sskc3x82avaqjn2arnax55bmh1yjma6z8p"; }; - vendorSha256 = "05nwfxqgkpbv5i0365wpsnnaq528a7srycd1dsdlssz1cy7i0d31"; + vendorSha256 = "0ppcrp6jp23ycn70mcgi5bsa0hr20hk7044ldw304krawy2vjgz8"; subPackages = [ "." ]; diff --git a/third_party/nixpkgs/pkgs/applications/networking/feedreaders/rss2email/default.nix b/third_party/nixpkgs/pkgs/applications/networking/feedreaders/rss2email/default.nix index 0a28f9e074..23b79dccd6 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/feedreaders/rss2email/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/feedreaders/rss2email/default.nix @@ -1,4 +1,4 @@ -{ pythonPackages, fetchurl, lib, nixosTests }: +{ pythonPackages, fetchurl, fetchpatch, lib, nixosTests }: with pythonPackages; @@ -14,6 +14,19 @@ buildPythonApplication rec { sha256 = "12w6x80wsw6xm17fxyymnl45aavsagg932zw621wcjz154vjghjr"; }; + patches = [ + (fetchpatch { + name = "rss2email-feedparser6.patch"; + url = "https://github.com/rss2email/rss2email/pull/149/commits/338343c92f956c31ff5249ef4bcf7aeea81f687e.patch"; + sha256 = "0h8b3g9332vdrkqbh6lp00k97asrhmlxi13zghrgc78ia13czy3z"; + }) + (fetchpatch { + name = "rss2email-feedparser6-test.patch"; + url = "https://github.com/rss2email/rss2email/pull/149/commits/8c99651eced3f29f05ba2c0ca02abb8bb9a18967.patch"; + sha256 = "1scljak6xyqxlilg3j39v4qm9a9jks1bnvnrh62hyf3g53yw2xlg"; + }) + ]; + outputs = [ "out" "man" "doc" ]; postPatch = '' diff --git a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/amsn/default.nix b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/amsn/default.nix deleted file mode 100644 index 60d4ec829c..0000000000 --- a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/amsn/default.nix +++ /dev/null @@ -1,28 +0,0 @@ -{stdenv, fetchurl, which, tcl, tk, xlibsWrapper, libpng, libjpeg, makeWrapper}: - -stdenv.mkDerivation { - name = "amsn-0.98.9"; - src = fetchurl { - url = "mirror://sourceforge/amsn/amsn-0.98.9-src.tar.gz"; - sha256 = "0b8ir7spxnsz8f7kvr9f1k91nsy8cb65q6jv2l55b04fl20x4z7r"; - }; - - configureFlags = [ - "--with-tcl=${tcl}/lib" - "--with-tk=${tk}/lib" - "--enable-static" - ]; - - buildInputs = [which tcl tk xlibsWrapper libpng libjpeg makeWrapper]; - - postInstall = '' - wrapProgram $out/bin/amsn --prefix PATH : ${tk}/bin - ''; - - meta = { - description = "Instant messaging (MSN Messenger clone)"; - homepage = "http://amsn-project.net"; - platforms = stdenv.lib.platforms.linux; - license = stdenv.lib.licenses.gpl2; - }; -} diff --git a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/default.nix b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/default.nix index e278358514..c055718f47 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/default.nix @@ -31,6 +31,7 @@ , mbedtls , mediastreamer , mediastreamer-openh264 +, minizip2 , mkDerivation , openldap , ortp @@ -47,81 +48,30 @@ , stdenv , udev , zlib - # For Minizip 2.2.7: -, fetchFromGitHub -, libbsd }: -let - # Linphone Desktop requires Minizip 2.2.7. Nixpkgs contains a very old version - # from the time when it was part of zlib. The most recent release of Minizip - # is currently 2.9.2 but Linphone Desktop didn't work with that. So, even if - # we added most recent Minizip version to nixpkgs, probably Minizip 2.2.7 is - # only needed here and we shouldn't add this semi-old version to - # all-packages.nix. Therefore, just define it here locally. - minizip2 = stdenv.mkDerivation rec { - pname = "minizip"; - version = "2.2.7"; - disabled = stdenv.isAarch32; - - src = fetchFromGitHub { - owner = "nmoinvaz"; - repo = pname; - rev = version; - sha256 = "1a88v1gjlflsd17mlrgxh420rpa38q0d17yh9q8j1zzqfrd1azch"; - }; - - nativeBuildInputs = [ cmake pkgconfig ]; - - cmakeFlags = [ - "-DBUILD_SHARED_LIBS=YES" - ]; - - buildInputs = [ - zlib - libbsd # required in 2.2.7 but not in 2.9.2? - ]; - - meta = with stdenv.lib; { - description = "Compression library implementing the deflate compression method found in gzip and PKZIP"; - homepage = "https://github.com/nmoinvaz/minizip"; - license = licenses.zlib; - platforms = platforms.unix; - }; - }; -in mkDerivation rec { pname = "linphone-desktop"; - # Latest release is 4.1.1 old and doesn't build with the latest releases of - # some of the dependencies so let's use the latest commit. - version = "unstable-2020-03-06"; + version = "4.2.4"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; owner = "public"; group = "BC"; repo = pname; - rev = "971997e162558d37051f89c9c34bbc240135f704"; - sha256 = "02ji4r8bpcm2kyisn9d3054m026l33g2574i1ag1cmb2dz2p8i1c"; + rev = version; + sha256 = "1gq4l9p21rbrcksa7fbkzn9fzbbynqmn6ni6lhnvzk359sb1xvbz"; }; - # Without this patch, the build fails with: - # - # No rule to make target - # 'minizip_OUTPUT/nix/store/...linphone-desktop.../lib/libminizip.so', - # - # So, the makefile tries to use a full absolute path to the library but does - # it incorrectly. As we have installed Minizip properly, it's sufficient to - # just use "minizip" and the library is found automatically. If this patched - # target_link_libraries line was removed entirely, the build would fail at the - # very end when linking minizip. patches = [ - ./fix_minizip_linking.patch + ./do-not-build-linphone-sdk.patch + ./remove-bc_compute_full_version-usage.patch ]; # See: https://gitlab.linphone.org/BC/public/linphone-desktop/issues/21 postPatch = '' - substituteInPlace src/app/AppController.cpp \ + echo "project(linphoneqt VERSION ${version})" >linphone-app/linphoneqt_version.cmake + substituteInPlace linphone-app/src/app/AppController.cpp \ --replace "LINPHONE_QT_GIT_VERSION" "\"${version}\"" ''; @@ -214,18 +164,18 @@ mkDerivation rec { # those just need to be copied manually below. installPhase = '' mkdir -p $out/bin - cp linphone $out/bin/ + cp linphone-app/linphone $out/bin/ wrapProgram $out/bin/linphone \ --set MEDIASTREAMER_PLUGINS_DIR \ ${mediastreamer-openh264}/lib/mediastreamer/plugins mkdir -p $out/share/applications - sed -i "s@/build/.*/OUTPUT/bin@$out/bin@" linphone.desktop - cp linphone.desktop $out/share/applications/ - cp -r ../assets/icons $out/share/ + cp linphone-app/linphone.desktop $out/share/applications/ + cp -r ../linphone-app/assets/icons $out/share/ mkdir -p $out/share/belr/grammars ln -s ${liblinphone}/share/belr/grammars/* $out/share/belr/grammars/ mkdir -p $out/share/linphone ln -s ${liblinphone}/share/linphone/* $out/share/linphone/ + mkdir $out/lib # prevent warning ''; meta = with lib; { diff --git a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/do-not-build-linphone-sdk.patch b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/do-not-build-linphone-sdk.patch new file mode 100644 index 0000000000..fe774a479f --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/do-not-build-linphone-sdk.patch @@ -0,0 +1,118 @@ +From 08b8b1811a1ad079fa713d19a8cc6bf2dc782bb7 Mon Sep 17 00:00:00 2001 +From: David P +Date: Thu, 26 Nov 2020 15:56:30 -0300 +Subject: [PATCH 1/2] do not build linphone-sdk + +Signed-off-by: David P +--- + CMakeLists.txt | 61 +------------------ + .../cmake_builder/additional_steps.cmake | 9 --- + 2 files changed, 3 insertions(+), 67 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index f7eb05f2..5921ee5b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -118,7 +118,6 @@ list(APPEND APP_OPTIONS "-DENABLE_RELATIVE_PREFIX=${ENABLE_RELATIVE_PREFIX}") + + list(APPEND APP_OPTIONS "-DLINPHONE_OUTPUT_DIR=${LINPHONE_OUTPUT_DIR}") + +-include(ExternalProject) + set(PROJECT_BUILD_COMMAND "") + if(CMAKE_BUILD_PARALLEL_LEVEL) + list(APPEND APP_OPTIONS "-DCMAKE_BUILD_PARALLEL_LEVEL=${CMAKE_BUILD_PARALLEL_LEVEL}") +@@ -136,29 +135,8 @@ if(UNIX AND NOT APPLE) + set(CMAKE_INSTALL_RPATH "$ORIGIN:$ORIGIN/lib64:$ORIGIN/../lib64:$ORIGIN/lib:$ORIGIN/../lib:${LINPHONE_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}") + list(APPEND APP_OPTIONS "-DCMAKE_INSTALL_RPATH=${CMAKE_INSTALL_RPATH}") + endif() +-ExternalProject_Add(sdk PREFIX "${CMAKE_BINARY_DIR}/sdk" +- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-sdk" +- INSTALL_DIR "${LINPHONE_OUTPUT_DIR}" +- STAMP_DIR "${SDK_BUILD_DIR}/stamp" +- BINARY_DIR "${SDK_BUILD_DIR}" +- STEP_TARGETS build +- BUILD_COMMAND ${CMAKE_COMMAND} --build --config $ ${PROJECT_BUILD_COMMAND} +- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time." +- LIST_SEPARATOR | # Use the alternate list separator +- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH=${PREFIX_PATH} +- #BUILD_ALWAYS NO #${DO_BUILD} +-) +-ExternalProject_Add_Step(sdk force_build +- COMMENT "Forcing build for 'desktop'" +- DEPENDEES configure +- DEPENDERS build +- ALWAYS 1 +-) + include(FindPkgConfig) + +-set(APP_DEPENDS sdk) +- +- + find_package(Qt5 5.12 COMPONENTS Core REQUIRED) + + if ( NOT Qt5_FOUND ) +@@ -173,39 +151,6 @@ find_package(Mediastreamer2 CONFIG QUIET) + find_package(ortp CONFIG QUIET) + + +-if(NOT (LinphoneCxx_FOUND) OR NOT (Linphone_FOUND) OR NOT (bctoolbox_FOUND) OR NOT (belcard_FOUND) OR NOT (Mediastreamer2_FOUND) OR NOT (ortp_FOUND) OR FORCE_APP_EXTERNAL_PROJECTS) +- message("Projects are set as External projects. You can start building them by using for example : cmake --build . --target install") +- ExternalProject_Add(linphone-qt PREFIX "${CMAKE_BINARY_DIR}/linphone-app" +- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-app" +- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}" +- BINARY_DIR "${CMAKE_BINARY_DIR}/linphone-app" +- DEPENDS ${APP_DEPENDS} +- BUILD_COMMAND ${CMAKE_COMMAND} --build --config $ ${PROJECT_BUILD_COMMAND} +- INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step will not be done by external project" +- LIST_SEPARATOR | # Use the alternate list separator +- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH=${PREFIX_PATH} +- # ${APP_OPTIONS} +- BUILD_ALWAYS ON +- ) +- install(CODE "message(STATUS Running install)") +- set(AUTO_REGENERATION auto_regeneration) +- add_custom_target(${AUTO_REGENERATION} ALL +- COMMAND ${CMAKE_COMMAND} ${CMAKE_CURRENT_SOURCE_DIR} +- DEPENDS linphone-qt) +-else() +- message("Adding Linphone Desktop in an IDE-friendly state") +- set(CMAKE_INSTALL_PREFIX "${APPLICATION_OUTPUT_DIR}") +- add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app) +- add_dependencies(app-library ${APP_DEPENDS}) +-endif() +-ExternalProject_Add(linphone-qt-only PREFIX "${CMAKE_BINARY_DIR}/linphone-app" +- SOURCE_DIR "${CMAKE_SOURCE_DIR}/linphone-app" +- INSTALL_DIR "${APPLICATION_OUTPUT_DIR}" +- BINARY_DIR "${CMAKE_BINARY_DIR}/linphone-app" +- BUILD_COMMAND ${CMAKE_COMMAND} --build --config $ ${PROJECT_BUILD_COMMAND} +-# INSTALL_COMMAND ${CMAKE_COMMAND} -E echo "Install step is already done at build time." +- LIST_SEPARATOR | # Use the alternate list separator +- CMAKE_ARGS ${APP_OPTIONS} ${USER_ARGS} -DCMAKE_INSTALL_PREFIX:PATH= -DCMAKE_PREFIX_PATH=${PREFIX_PATH} +- EXCLUDE_FROM_ALL ON +- BUILD_ALWAYS ON +-) ++message("Adding Linphone Desktop in an IDE-friendly state") ++set(CMAKE_INSTALL_PREFIX "${APPLICATION_OUTPUT_DIR}") ++add_subdirectory(${CMAKE_SOURCE_DIR}/linphone-app) +diff --git a/linphone-app/cmake_builder/additional_steps.cmake b/linphone-app/cmake_builder/additional_steps.cmake +index 7f7fd573..a69a04e8 100644 +--- a/linphone-app/cmake_builder/additional_steps.cmake ++++ b/linphone-app/cmake_builder/additional_steps.cmake +@@ -54,14 +54,5 @@ if (ENABLE_PACKAGING) + linphone_builder_apply_flags() + linphone_builder_set_ep_directories(linphone_package) + linphone_builder_expand_external_project_vars() +- ExternalProject_Add(TARGET_linphone_package +- DEPENDS TARGET_linphone_builder +- TMP_DIR ${ep_tmp} +- BINARY_DIR ${ep_build} +- SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/linphone_package" +- DOWNLOAD_COMMAND "" +- CMAKE_GENERATOR ${CMAKE_GENERATOR} +- CMAKE_ARGS ${LINPHONE_BUILDER_EP_ARGS} -DCMAKE_INSTALL_PREFIX=${LINPHONE_BUILDER_WORK_DIR}/PACKAGE -DTOOLS_DIR=${CMAKE_BINARY_DIR}/programs -DLINPHONE_OUTPUT_DIR=${CMAKE_INSTALL_PREFIX} -DLINPHONE_DESKTOP_DIR=${CMAKE_CURRENT_LIST_DIR}/.. -DLINPHONE_SOURCE_DIR=${EP_linphone_SOURCE_DIR} ${ENABLE_VARIABLES} -DLINPHONE_BUILDER_SIGNING_IDENTITY=${LINPHONE_BUILDER_SIGNING_IDENTITY} +- ) + endif () + endif () +-- +2.29.2 + diff --git a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch deleted file mode 100644 index bb88d0030f..0000000000 --- a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/fix_minizip_linking.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 3ee77441..18ea5c27 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -517,7 +517,7 @@ else() - target_link_libraries(${TARGET_NAME} "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.dylib") - execute_process(COMMAND install_name_tool -id "@executable_path/../Frameworks/libminizip.dylib" "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.dylib") - elseif(NOT WIN32) -- target_link_libraries(${TARGET_NAME} "${MINIZIP_OUTPUT_DIR}/${CMAKE_INSTALL_LIBDIR}/libminizip.so") -+ target_link_libraries(${TARGET_NAME} "minizip") - endif() - endif()#If (LinphoneCxx_FOUND AND Minizip_FOUND) - endif()#If (LinphoneCxx_FOUND) diff --git a/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/remove-bc_compute_full_version-usage.patch b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/remove-bc_compute_full_version-usage.patch new file mode 100644 index 0000000000..547652d3af --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/networking/instant-messengers/linphone/remove-bc_compute_full_version-usage.patch @@ -0,0 +1,74 @@ +From 6fc23da651d54979e73776fcda38614e290d65dc Mon Sep 17 00:00:00 2001 +From: David P +Date: Fri, 23 Oct 2020 16:44:17 -0300 +Subject: [PATCH 2/2] remove bc_compute_full_version usage + +--- + linphone-app/CMakeLists.txt | 11 +---------- + linphone-app/build/CMakeLists.txt | 5 ----- + .../cmake_builder/linphone_package/CMakeLists.txt | 10 +--------- + 3 files changed, 2 insertions(+), 24 deletions(-) + +diff --git a/linphone-app/CMakeLists.txt b/linphone-app/CMakeLists.txt +index 3bc9420a..27b418ee 100644 +--- a/linphone-app/CMakeLists.txt ++++ b/linphone-app/CMakeLists.txt +@@ -21,17 +21,8 @@ + ################################################################################ + cmake_minimum_required(VERSION 3.1) + ++include(linphoneqt_version.cmake) + find_package(bctoolbox CONFIG) +-set(FULL_VERSION ) +-bc_compute_full_version(FULL_VERSION) +-set(version_major ) +-set(version_minor ) +-set(version_patch ) +-set(identifiers ) +-set(metadata ) +-bc_parse_full_version("${FULL_VERSION}" version_major version_minor version_patch identifiers metadata) +- +-project(linphoneqt VERSION "${version_major}.${version_minor}.${version_patch}") + + if(ENABLE_BUILD_VERBOSE) + #message("CMAKE_PREFIX_PATH ${CMAKE_PREFIX_PATH}") +diff --git a/linphone-app/build/CMakeLists.txt b/linphone-app/build/CMakeLists.txt +index 8ef03faa..97d94bd6 100644 +--- a/linphone-app/build/CMakeLists.txt ++++ b/linphone-app/build/CMakeLists.txt +@@ -46,11 +46,6 @@ set(CPACK_SOURCE_IGNORE_FILES + "libmng.spec" + ) + +-bc_compute_full_version(PROJECT_VERSION_BUILD) +-if(PROJECT_VERSION_BUILD) +- set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${PROJECT_VERSION_BUILD}") +-endif() +- + message("-- Package file name is ${CPACK_PACKAGE_FILE_NAME}") + + set(CPACK_SOURCE_PACKAGE_FILE_NAME ${CPACK_PACKAGE_FILE_NAME}) +diff --git a/linphone-app/cmake_builder/linphone_package/CMakeLists.txt b/linphone-app/cmake_builder/linphone_package/CMakeLists.txt +index baea03cf..08ffc1b5 100644 +--- a/linphone-app/cmake_builder/linphone_package/CMakeLists.txt ++++ b/linphone-app/cmake_builder/linphone_package/CMakeLists.txt +@@ -38,15 +38,7 @@ set(LINPHONE_QML_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../../ui") + # ============================================================================== + # Build package version. + # ============================================================================== +-bc_compute_full_version(APP_PROJECT_VERSION) +-if (GIT_EXECUTABLE AND NOT(APP_PROJECT_VERSION)) +- execute_process( +- COMMAND ${GIT_EXECUTABLE} describe --always +- OUTPUT_VARIABLE APP_PROJECT_VERSION +- OUTPUT_STRIP_TRAILING_WHITESPACE +- WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../.." +- ) +-elseif (NOT(APP_PROJECT_VERSION)) ++if (NOT(APP_PROJECT_VERSION)) + set(APP_PROJECT_VERSION "0.0.0") + endif () + string(REGEX REPLACE "([0-9.]+)-?.*" "\\1" LINPHONE_VERSION "${APP_PROJECT_VERSION}") +-- +2.29.2 + diff --git a/third_party/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/muchsync.nix b/third_party/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/muchsync.nix index a0dbf98f27..953cfed3c6 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/muchsync.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/mailreaders/notmuch/muchsync.nix @@ -17,7 +17,7 @@ stdenv.mkDerivation rec { description = "Synchronize maildirs and notmuch databases"; homepage = "http://www.muchsync.org/"; platforms = stdenv.lib.platforms.unix; - maintainers = with stdenv.lib.maintainers; [ ocharles ]; + maintainers = with stdenv.lib.maintainers; []; license = stdenv.lib.licenses.gpl2Plus; }; } diff --git a/third_party/nixpkgs/pkgs/applications/networking/p2p/opentracker/default.nix b/third_party/nixpkgs/pkgs/applications/networking/p2p/opentracker/default.nix index 82480b1ed2..8beb2f7d37 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/p2p/opentracker/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/p2p/opentracker/default.nix @@ -11,6 +11,11 @@ stdenv.mkDerivation { buildInputs = [ libowfat zlib ]; + makeFlags = [ + "LIBOWFAT_HEADERS=${libowfat}/include/libowfat" + "LIBOWFAT_LIBRARY=${libowfat}/lib" + ]; + installPhase = '' runHook preInstall install -D opentracker $out/bin/opentracker diff --git a/third_party/nixpkgs/pkgs/applications/networking/remote/nice-dcv-client/default.nix b/third_party/nixpkgs/pkgs/applications/networking/remote/nice-dcv-client/default.nix new file mode 100644 index 0000000000..19e65c0bdb --- /dev/null +++ b/third_party/nixpkgs/pkgs/applications/networking/remote/nice-dcv-client/default.nix @@ -0,0 +1,87 @@ +{ stdenv +, fetchurl +, glib +, libX11 +, gst_all_1 +, sqlite +, epoxy +, pango +, cairo +, gdk-pixbuf +, e2fsprogs +, libkrb5 +, libva +, openssl +, pcsclite +, gtk3 +, libselinux +, libxml2 +, python3Packages +, cpio +, autoPatchelfHook +}: + +stdenv.mkDerivation rec { + pname = "nice-dcv-client"; + version = "2020.2.1737-1"; + + src = + fetchurl { + url = "https://d1uj6qtbmh3dt5.cloudfront.net/2020.2/Clients/nice-dcv-viewer-${version}.el8.x86_64.rpm"; + sha256 = "sha256-SUpfHd/Btc07cfjc3zx5I5BiNatr/c4E2/mfJuU4R1E="; + }; + + nativeBuildInputs = [ autoPatchelfHook python3Packages.rpm ]; + unpackPhase = '' + rpm2cpio $src | ${cpio}/bin/cpio -idm + ''; + + buildInputs = [ + libselinux + libkrb5 + libxml2 + libva + e2fsprogs + libX11 + openssl + pcsclite + gtk3 + cairo + epoxy + pango + gdk-pixbuf + gst_all_1.gstreamer + gst_all_1.gst-plugins-base + ]; + + installPhase = '' + mkdir -p $out/bin/ + mkdir -p $out/lib64/ + + mv usr/bin/dcvviewer $out/bin/dcvviewer + mv usr/lib64/* $out/lib64/ + + mkdir -p $out/libexec/dcvviewer + mv usr/libexec/dcvviewer/dcvviewer $out/libexec/dcvviewer/dcvviewer + patchelf \ + --set-interpreter $(cat $NIX_CC/nix-support/dynamic-linker) \ + $out/libexec/dcvviewer/dcvviewer + + # Fix the wrapper script to have the right basedir. + sed -i "s#basedir=/usr#basedir=$out#" $out/bin/dcvviewer + + mv usr/share $out/ + ${glib.dev}/bin/glib-compile-schemas $out/share/glib-2.0/schemas + + # broken symlink, seems to give a warning message if i don't delete it + rm $out/lib64/dcvviewer/gio/modules/libdconfsettings.so + ''; + + meta = with stdenv.lib; { + description = "High-performance remote display protocol"; + homepage = "https://aws.amazon.com/hpc/dcv/"; + license = licenses.unfree; + platforms = platforms.linux; + maintainers = with maintainers; [ rmcgibbo ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/applications/networking/seaweedfs/default.nix b/third_party/nixpkgs/pkgs/applications/networking/seaweedfs/default.nix index d0a396d6a9..e38acf244d 100644 --- a/third_party/nixpkgs/pkgs/applications/networking/seaweedfs/default.nix +++ b/third_party/nixpkgs/pkgs/applications/networking/seaweedfs/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "seaweedfs"; - version = "2.13"; + version = "2.14"; src = fetchFromGitHub { owner = "chrislusf"; repo = "seaweedfs"; rev = version; - sha256 = "0w41p2fm26ml5dvdg2cnxcw0xzsbjq26chpa3bkn1adpazlpivp4"; + sha256 = "1sfchh5qiylxxmph0hgjfaj80mv5pnrm1s34g5lx0vj64jxr5nzb"; }; vendorSha256 = "0g344dj325d35i0myrzhg5chspqnly40qp910ml6zrmp7iszc1mw"; diff --git a/third_party/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix b/third_party/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix index 7c1ee8099e..fd6b2c8d14 100644 --- a/third_party/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix +++ b/third_party/nixpkgs/pkgs/applications/science/logic/potassco/clingo.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "clingo"; - version = "5.4.0"; + version = "5.4.1"; src = fetchzip { url = "https://github.com/potassco/clingo/archive/v${version}.tar.gz"; - sha256 = "0gfqlgwg3qx042w6hdc9qpmr50n4vci3p0ddk28f3kqacf6q9q7m"; + sha256 = "1f0q5f71s696ywxcjlfz7z134m1h7i39j9sfdv8hlw2w3g5nppc3"; }; nativeBuildInputs = [ cmake ]; diff --git a/third_party/nixpkgs/pkgs/applications/science/molecular-dynamics/gromacs/default.nix b/third_party/nixpkgs/pkgs/applications/science/molecular-dynamics/gromacs/default.nix index bfa4a1f433..84dd3b729b 100644 --- a/third_party/nixpkgs/pkgs/applications/science/molecular-dynamics/gromacs/default.nix +++ b/third_party/nixpkgs/pkgs/applications/science/molecular-dynamics/gromacs/default.nix @@ -1,26 +1,44 @@ { stdenv , fetchurl , cmake -, singlePrec ? true -, mpiEnabled ? false +, hwloc , fftw , openmpi , perl +, singlePrec ? true +, mpiEnabled ? false +, cpuAcceleration ? null }: -stdenv.mkDerivation { - name = "gromacs-2020.4"; +let + # Select reasonable defaults for all major platforms + # The possible values are defined in CMakeLists.txt: + # AUTO None SSE2 SSE4.1 AVX_128_FMA AVX_256 AVX2_256 + # AVX2_128 AVX_512 AVX_512_KNL MIC ARM_NEON ARM_NEON_ASIMD + SIMD = x: if (cpuAcceleration != null) then x else + if stdenv.hostPlatform.system == "i686-linux" then "SSE2" else + if stdenv.hostPlatform.system == "x86_64-linux" then "SSE4.1" else + if stdenv.hostPlatform.system == "x86_64-darwin" then "SSE4.1" else + if stdenv.hostPlatform.system == "aarch64-linux" then "ARM_NEON" else + "None"; + +in stdenv.mkDerivation rec { + pname = "gromacs"; + version = "2020.4"; src = fetchurl { - url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-2020.4.tar.gz"; + url = "ftp://ftp.gromacs.org/pub/gromacs/gromacs-${version}.tar.gz"; sha256 = "1rplvgna60nqyb8nspaz3bfkwb044kv3zxdaa5whql5m441nj6am"; }; nativeBuildInputs = [ cmake ]; - buildInputs = [ fftw perl ] + buildInputs = [ fftw perl hwloc ] ++ (stdenv.lib.optionals mpiEnabled [ openmpi ]); - cmakeFlags = ( + cmakeFlags = [ + "-DGMX_SIMD:STRING=${SIMD cpuAcceleration}" + "-DGMX_OPENMP:BOOL=TRUE" + ] ++ ( if singlePrec then [ "-DGMX_DOUBLE=OFF" ] else [ @@ -30,8 +48,6 @@ stdenv.mkDerivation { ) ++ ( if mpiEnabled then [ "-DGMX_MPI:BOOL=TRUE" - "-DGMX_CPU_ACCELERATION:STRING=SSE4.1" - "-DGMX_OPENMP:BOOL=TRUE" "-DGMX_THREAD_MPI:BOOL=FALSE" ] else [ "-DGMX_MPI:BOOL=FALSE" diff --git a/third_party/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix b/third_party/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix index d403ddc8b2..481c725544 100644 --- a/third_party/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix +++ b/third_party/nixpkgs/pkgs/applications/terminal-emulators/guake/default.nix @@ -1,7 +1,7 @@ { stdenv , fetchFromGitHub , python3 -, gettext +, glibcLocales , gobject-introspection , wrapGAppsHook , gtk3 @@ -31,13 +31,13 @@ python3.pkgs.buildPythonApplication rec { strictDeps = false; nativeBuildInputs = [ - gettext gobject-introspection wrapGAppsHook python3.pkgs.pip ]; buildInputs = [ + glibcLocales gtk3 keybinder3 libnotify @@ -46,6 +46,8 @@ python3.pkgs.buildPythonApplication rec { vte ]; + makeWrapperArgs = [ "--set LOCALE_ARCHIVE ${glibcLocales}/lib/locale/locale-archive" ]; + propagatedBuildInputs = with python3.pkgs; [ dbus-python pbr diff --git a/third_party/nixpkgs/pkgs/applications/virtualization/podman/default.nix b/third_party/nixpkgs/pkgs/applications/virtualization/podman/default.nix index dd56efe60f..cd32c80f74 100644 --- a/third_party/nixpkgs/pkgs/applications/virtualization/podman/default.nix +++ b/third_party/nixpkgs/pkgs/applications/virtualization/podman/default.nix @@ -16,13 +16,13 @@ buildGoModule rec { pname = "podman"; - version = "2.2.0"; + version = "2.2.1"; src = fetchFromGitHub { owner = "containers"; repo = "podman"; rev = "v${version}"; - sha256 = "13na6ms0dapcmfb4pg8z3sds9nprr1lyyjs0v2izqifcyb1r1c00"; + sha256 = "166ch73pqx76ppfkhfg3zqxr71jf5pk5asl5bb5rwhyzf7f057q5"; }; vendorSha256 = null; diff --git a/third_party/nixpkgs/pkgs/applications/window-managers/berry/default.nix b/third_party/nixpkgs/pkgs/applications/window-managers/berry/default.nix index 367d021412..64b7f2c1d2 100644 --- a/third_party/nixpkgs/pkgs/applications/window-managers/berry/default.nix +++ b/third_party/nixpkgs/pkgs/applications/window-managers/berry/default.nix @@ -1,6 +1,7 @@ { stdenv , fetchFromGitHub , libX11 +, libXext , libXft , libXinerama , fontconfig @@ -20,6 +21,7 @@ stdenv.mkDerivation rec { buildInputs =[ libX11 + libXext libXft libXinerama fontconfig diff --git a/third_party/nixpkgs/pkgs/build-support/fetchfirefoxaddon/default.nix b/third_party/nixpkgs/pkgs/build-support/fetchfirefoxaddon/default.nix index 3426743b2c..4b7c68484d 100644 --- a/third_party/nixpkgs/pkgs/build-support/fetchfirefoxaddon/default.nix +++ b/third_party/nixpkgs/pkgs/build-support/fetchfirefoxaddon/default.nix @@ -5,6 +5,7 @@ , sha1 ? "" , sha256 ? "" , sha512 ? "" +, hash ? "" }: stdenv.mkDerivation rec { @@ -30,7 +31,7 @@ stdenv.mkDerivation rec { ''; src = fetchurl { url = url; - inherit md5 sha1 sha256 sha512; + inherit md5 sha1 sha256 sha512 hash; }; nativeBuildInputs = [ coreutils unzip zip jq ]; } diff --git a/third_party/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix b/third_party/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix index 0eba8816b6..b61cd9a0d9 100644 --- a/third_party/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix +++ b/third_party/nixpkgs/pkgs/build-support/fetchurl/mirrors.nix @@ -9,10 +9,10 @@ # "sourceforge", "gnu", etc. luarocks = [ - "https://luarocks.org" + "https://luarocks.org/" "https://raw.githubusercontent.com/rocks-moonscript-org/moonrocks-mirror/master/" - "http://luafr.org/moonrocks" - "http://luarocks.logiceditor.com/rocks" + "http://luafr.org/moonrocks/" + "http://luarocks.logiceditor.com/rocks/" ]; # SourceForge. diff --git a/third_party/nixpkgs/pkgs/build-support/nix-gitignore/default.nix b/third_party/nixpkgs/pkgs/build-support/nix-gitignore/default.nix index 28ee6bad55..fba09adc2d 100644 --- a/third_party/nixpkgs/pkgs/build-support/nix-gitignore/default.nix +++ b/third_party/nixpkgs/pkgs/build-support/nix-gitignore/default.nix @@ -20,14 +20,13 @@ let in rec { # [["good/relative/source/file" true] ["bad.tmpfile" false]] -> root -> path filterPattern = patterns: root: - (name: _type: - let - relPath = lib.removePrefix ((toString root) + "/") name; - matches = pair: (match (head pair) relPath) != null; - matched = map (pair: [(matches pair) (last pair)]) patterns; - in - last (last ([[true true]] ++ (filter head matched))) - ); + let + filters = map (pair: relPath: if match (head pair) relPath == null then true else last pair) patterns; + in + name: _type: + let + relPath = lib.removePrefix ((toString root) + "/") name; + in foldl' (acc: f: if acc == true then f relPath else acc) true filters; # string -> [[regex bool]] gitignoreToPatterns = gitignore: @@ -91,7 +90,9 @@ in rec { (filter (l: !isList l && !isComment l) (split "\n" gitignore)); - gitignoreFilter = ign: root: filterPattern (gitignoreToPatterns ign) root; + gitignoreFilter = ign: let + patterns = gitignoreToPatterns ign; + in root: filterPattern patterns root; # string|[string|file] (→ [string|file] → [string]) -> string gitignoreCompileIgnore = file_str_patterns: root: @@ -100,9 +101,10 @@ in rec { str_patterns = map (onPath readFile) (lib.toList file_str_patterns); in concatStringsSep "\n" str_patterns; - gitignoreFilterPure = filter: patterns: root: name: type: - gitignoreFilter (gitignoreCompileIgnore patterns root) root name type - && filter name type; + gitignoreFilterPure = filter: patterns: root: let + compiledFilter = gitignoreCompileIgnore patterns root; + filterFn = gitignoreFilter compiledFilter; + in name: type: filterFn root name type && filter name type; # This is a very hacky way of programming this! # A better way would be to reuse existing filtering by making multiple gitignore functions per each root. diff --git a/third_party/nixpkgs/pkgs/data/fonts/iosevka/bin.nix b/third_party/nixpkgs/pkgs/data/fonts/iosevka/bin.nix index 90b64c5f15..97b0f3b76b 100644 --- a/third_party/nixpkgs/pkgs/data/fonts/iosevka/bin.nix +++ b/third_party/nixpkgs/pkgs/data/fonts/iosevka/bin.nix @@ -10,7 +10,7 @@ let (builtins.attrNames (builtins.removeAttrs variantHashes [ "iosevka" ])); in stdenv.mkDerivation rec { pname = "${name}-bin"; - version = "4.0.0"; + version = "4.0.2"; src = fetchurl { url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/ttc-${name}-${version}.zip"; diff --git a/third_party/nixpkgs/pkgs/data/fonts/iosevka/variants.nix b/third_party/nixpkgs/pkgs/data/fonts/iosevka/variants.nix index e3157db6c9..4ce815b093 100644 --- a/third_party/nixpkgs/pkgs/data/fonts/iosevka/variants.nix +++ b/third_party/nixpkgs/pkgs/data/fonts/iosevka/variants.nix @@ -1,24 +1,24 @@ # This file was autogenerated. DO NOT EDIT! { - iosevka = "05wlap8r7kfg5zyj8gf7i1cypgs6lwpkh51g4cyj01zjkkv9g7k8"; - iosevka-aile = "18qa6q1djjr34aj340ab47ajkkcq4wfv7m36f303kabgwfif247r"; - iosevka-curly = "138hl95n3c2cfblzgh8adi1aljwn1xljjbffd0nrb12hipmgddql"; - iosevka-curly-slab = "0x18zzphri1fx4lql51n8bam0pq2xb61p1gx50km3wlvkrbmbj23"; - iosevka-etoile = "0byv8x3nqjka4ivpa8h6hq2k18cjnf69qmcc06dy4ym45a34qqsw"; - iosevka-slab = "0a2h1g69r9nmp5cskgciywsiq07rxn0cskhvwbwaq64rsqbr1l58"; - iosevka-sparkle = "13kwdgziylicwkl9s9v9bx9zbbrsrys6n7gx2jzgkdlsj8wkd73i"; - iosevka-ss01 = "0achcgfcya6sl15wknlyyghpz3d7q62wa0fikl74wr5xyl7h7f1f"; - iosevka-ss02 = "09gsawl61acykpd2429g1mz0l7i4gl0j1fl0lzc1giy6kbvrkggb"; - iosevka-ss03 = "07fdxmlpqv6z5hbly8l344x96m80jbz8rq5h9qkfz63xlq0376sj"; - iosevka-ss04 = "0q3v6spylhaxsf6spv6q5kh87mxbkh9x04s3h1g3rjv6gdlxi9n4"; - iosevka-ss05 = "1zzdx4d6zrc1qbhsp0bfg91v63h1y943pylfxns09bzk9wjppvba"; - iosevka-ss06 = "1a3ar8xhn9rf5isxvwqvifczl20ddgs4dw9ypjflmdbyhr3n0yw5"; - iosevka-ss07 = "01x33sx5d54mdph7csnk6mhkhyc879rwp9spxwyrajghzd0ql8w6"; - iosevka-ss08 = "0a1kmyr5q2w7qky0ya0gaqmg0lhdafyag8c8idacl7gnra944hi0"; - iosevka-ss09 = "0m7cm8c3795a8kfy19d9wjmii6ycimcclg5pn9g91kg49q8y9gi2"; - iosevka-ss10 = "1gfdjz6yifbyb9gl19q3q69as3fnmih17ghhrzzhc7qll68r6k6z"; - iosevka-ss11 = "119ivw6kcqvzbj46xv8avpg56w3nqdkhhl176gj3bpk1jbjip1wh"; - iosevka-ss12 = "1vx8rc328whsjjj87fa29kpp9ibk6x52r1brjp37cywjd5ix6l78"; - iosevka-ss13 = "1gmmm2jlvrl6pzcsc2bhy3qvmzmsns8hlc52ddrwdbw0wi28zhs3"; - iosevka-ss14 = "0mwg2bvkpxzpsdhky9k6fn81061pk0f23whj1hj4mn191xpw41fy"; + iosevka = "1p85mrgz63h4q09xy9gchf93fpzwxjnmr5acrfdp9ybrqzpv6gza"; + iosevka-aile = "01kaawf0slhgj21shlvnlq5has4iz0prq89c4xg3k3dhnxdyfkaz"; + iosevka-curly = "1rbmnxwkihfah5y9vi1zz2qvdx2f3a5lrkgwn46wcxmn0y3hk0ii"; + iosevka-curly-slab = "0svvqs8ybimaq7rad1vh1b6jxkszaan407zm7j66576pf3djkg2f"; + iosevka-etoile = "1aiwrjk5590l7hwiis448bwfjhz5shbc3cq74lbvk56130nv0d96"; + iosevka-slab = "0rsx8sr2f446jax5dk42r19kgpja8cvb8d0hwfv1aqqs3xp7k4zr"; + iosevka-sparkle = "0nfg9ibzz1dqr4bw5gnslvx7b7zdd8mfvjyriwkvpkxycwsaa60k"; + iosevka-ss01 = "044y1drbdv5xcxxg9vgxms95b97zi6bgy4im2mvhhxphx6sa8zdr"; + iosevka-ss02 = "0ndp38fsswz5fcdvh3577q4pxmfss7czyvsnswyka5rz2q40dyrd"; + iosevka-ss03 = "1ypdlsirkgcnakbgd585jqxiafsjdrwmgdd5h9ppf4giaiclsv5w"; + iosevka-ss04 = "0l7xbv7mcdsqw50lb7ldrwrswc0gb02l19ccv073xinpf3lh1d91"; + iosevka-ss05 = "0qd2dvfrv9wjynaqbhzr2bsrbsgp4db5s32jmxnf3y92qinr91sc"; + iosevka-ss06 = "0vkvs772lmzcqyg7wrjqjjkk7ij0rrqbr2i8y63f3hsgwm9g6chw"; + iosevka-ss07 = "1s0dpxfzy5sk82cv5ipp1c5813rl98izbzr06w44ss1bma3zr5af"; + iosevka-ss08 = "12fhw8fw264pybavpdpqywaqvrinap6bp9gspsd788im1fqzm5mw"; + iosevka-ss09 = "1h2i82h9lj3lncc0im8v53jk31jpiaxxydwlrrks9sii56705ddf"; + iosevka-ss10 = "0km8yj5p1g03ykpx1v2zrflw6ixbk31ps6qknacc06n6xxmlqj09"; + iosevka-ss11 = "0kcgp4pbqrlcggv2774zygiw2klx9340sxxk708y4yjd9ha6gznn"; + iosevka-ss12 = "0fbp9lxc6qw8ahgvyjf52qy5p4c5qyqcyfbqy3qlaj0iasprp9fi"; + iosevka-ss13 = "1jpgvhsxzshdx6ww4zyznzybc5q1ss8l07v9011grmxil7lr0hya"; + iosevka-ss14 = "1ssz9m3b7ls34y8rgi185xzx8avzkzjs9jkn79ir240gmi77s161"; } diff --git a/third_party/nixpkgs/pkgs/data/misc/fedora-backgrounds/generic.nix b/third_party/nixpkgs/pkgs/data/misc/fedora-backgrounds/generic.nix index 25043c34e5..e191dd027e 100644 --- a/third_party/nixpkgs/pkgs/data/misc/fedora-backgrounds/generic.nix +++ b/third_party/nixpkgs/pkgs/data/misc/fedora-backgrounds/generic.nix @@ -1,4 +1,4 @@ -{ stdenv +{ stdenvNoCC , coreutils }: @@ -7,10 +7,10 @@ , patches ? [ ] }: -stdenv.mkDerivation { +stdenvNoCC.mkDerivation { inherit patches src version; - pname = "fedora${stdenv.lib.versions.major version}-backgrounds"; + pname = "fedora${stdenvNoCC.lib.versions.major version}-backgrounds"; dontBuild = true; @@ -32,7 +32,7 @@ stdenv.mkDerivation { "DESTDIR=$(out)" ]; - meta = with stdenv.lib; { + meta = with stdenvNoCC.lib; { homepage = "https://github.com/fedoradesign/backgrounds"; description = "A set of default and supplemental wallpapers for Fedora"; license = licenses.cc-by-sa-40; diff --git a/third_party/nixpkgs/pkgs/desktops/gnome-3/core/gnome-shell/default.nix b/third_party/nixpkgs/pkgs/desktops/gnome-3/core/gnome-shell/default.nix index 3ebf409f03..53b9bc5d73 100644 --- a/third_party/nixpkgs/pkgs/desktops/gnome-3/core/gnome-shell/default.nix +++ b/third_party/nixpkgs/pkgs/desktops/gnome-3/core/gnome-shell/default.nix @@ -65,13 +65,13 @@ let in stdenv.mkDerivation rec { pname = "gnome-shell"; - version = "3.38.1"; + version = "3.38.2"; outputs = [ "out" "devdoc" ]; src = fetchurl { url = "mirror://gnome/sources/gnome-shell/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "1d0br74gxwnqbh102yjkszkc6fc4yd6p5lcs6bxcpi33chly72dp"; + sha256 = "05fm7kxyvws2lbb156wfa2wf4xmkxr49rrjxg0yaxf68v000yq2k"; }; patches = [ diff --git a/third_party/nixpkgs/pkgs/desktops/gnome-3/core/mutter/default.nix b/third_party/nixpkgs/pkgs/desktops/gnome-3/core/mutter/default.nix index d0acdd5133..7f26e615a1 100644 --- a/third_party/nixpkgs/pkgs/desktops/gnome-3/core/mutter/default.nix +++ b/third_party/nixpkgs/pkgs/desktops/gnome-3/core/mutter/default.nix @@ -42,13 +42,13 @@ let self = stdenv.mkDerivation rec { pname = "mutter"; - version = "3.38.1"; + version = "3.38.2"; outputs = [ "out" "dev" "man" ]; src = fetchurl { url = "mirror://gnome/sources/mutter/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "0cvs47h7xhalkh8xcchllaws212ml3d23aj0pmfq0qyzkw65f8g9"; + sha256 = "03a612m0c7v6y72bs3ghmpyk49177fzq6gdy1jrz4608vnalx5yr"; }; patches = [ diff --git a/third_party/nixpkgs/pkgs/desktops/gnome-3/extensions/caffeine/default.nix b/third_party/nixpkgs/pkgs/desktops/gnome-3/extensions/caffeine/default.nix index 770c32f21e..1dbb52e856 100644 --- a/third_party/nixpkgs/pkgs/desktops/gnome-3/extensions/caffeine/default.nix +++ b/third_party/nixpkgs/pkgs/desktops/gnome-3/extensions/caffeine/default.nix @@ -1,14 +1,14 @@ { stdenv, fetchFromGitHub, glib, gettext, bash, gnome3 }: stdenv.mkDerivation rec { - pname = "gnome-shell-extension-caffeine-unstable"; - version = "2020-03-13"; + pname = "gnome-shell-extension-caffeine"; + version = "37"; src = fetchFromGitHub { owner = "eonpatapon"; repo = "gnome-shell-extension-caffeine"; - rev = "f25fa5cd586271f080c2304d0ad1273b55e864f5"; - sha256 = "12a76g1ydw677pjnj00r3vw31k4xybc63ynqzx3s4g0wi6lipng7"; + rev = "v${version}"; + sha256 = "1mpa0fbpmv3pblb20dxj8iykn4ayvx89qffpcs67bzlq597zsbkb"; }; uuid = "caffeine@patapon.info"; diff --git a/third_party/nixpkgs/pkgs/desktops/gnome-3/games/gnome-chess/default.nix b/third_party/nixpkgs/pkgs/desktops/gnome-3/games/gnome-chess/default.nix index d2f9cfaa2d..17ac13ebbc 100644 --- a/third_party/nixpkgs/pkgs/desktops/gnome-3/games/gnome-chess/default.nix +++ b/third_party/nixpkgs/pkgs/desktops/gnome-3/games/gnome-chess/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "gnome-chess"; - version = "3.38.0"; + version = "3.38.1"; src = fetchurl { url = "mirror://gnome/sources/gnome-chess/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; - sha256 = "10y248xdjx9b0izxii9fjyvkra65jxfx66ivwznmn0cadda9gdqg"; + sha256 = "1bpmi5p5vvjdq2rlm5x9k4gpci8jbrjvdxr1q62h5znzq0vz0w0l"; }; nativeBuildInputs = [ meson ninja vala pkgconfig gettext itstool libxml2 python3 wrapGAppsHook gobject-introspection ]; diff --git a/third_party/nixpkgs/pkgs/development/compilers/compcert/default.nix b/third_party/nixpkgs/pkgs/development/compilers/compcert/default.nix index 3dea91970e..99bd09d8d9 100644 --- a/third_party/nixpkgs/pkgs/development/compilers/compcert/default.nix +++ b/third_party/nixpkgs/pkgs/development/compilers/compcert/default.nix @@ -1,36 +1,52 @@ -{ stdenv, lib, fetchFromGitHub, fetchpatch, makeWrapper -, coq, ocamlPackages, coq2html +{ stdenv, fetchFromGitHub, fetchpatch, makeWrapper +, coqPackages, ocamlPackages, coq2html , tools ? stdenv.cc +, version ? "3.8" }: let ocaml-pkgs = with ocamlPackages; [ ocaml findlib menhir ]; ccomp-platform = if stdenv.isDarwin then "x86_64-macosx" else "x86_64-linux"; + inherit (coqPackages) coq flocq; + inherit (stdenv.lib) optional optionalString; in + +let param = { + "3.7" = { + sha256 = "1h4zhk9rrqki193nxs9vjvya7nl9yxjcf07hfqb6g77riy1vd2jr"; + patches = [ + (fetchpatch { + url = "https://github.com/AbsInt/CompCert/commit/0a2db0269809539ccc66f8ec73637c37fbd23580.patch"; + sha256 = "0n8qrba70x8f422jdvq9ddgsx6avf2dkg892g4ldh3jiiidyhspy"; + }) + (fetchpatch { + url = "https://github.com/AbsInt/CompCert/commit/5e29f8b5ba9582ecf2a1d0baeaef195873640607.patch"; + sha256 = "184nfdgxrkci880lkaj5pgnify3plka7xfgqrgv16275sqppc5hc"; + }) + ]; + }; + "3.8" = { + sha256 = "1gzlyxvw64ca12qql3wnq3bidcx9ygsklv9grjma3ib4hvg7vnr7"; + useExternalFlocq = true; + }; +}."${version}"; in + stdenv.mkDerivation rec { pname = "compcert"; - version = "3.7"; + inherit version; src = fetchFromGitHub { owner = "AbsInt"; repo = "CompCert"; rev = "v${version}"; - sha256 = "1h4zhk9rrqki193nxs9vjvya7nl9yxjcf07hfqb6g77riy1vd2jr"; + inherit (param) sha256; }; - patches = [ - (fetchpatch { - url = "https://github.com/AbsInt/CompCert/commit/0a2db0269809539ccc66f8ec73637c37fbd23580.patch"; - sha256 = "0n8qrba70x8f422jdvq9ddgsx6avf2dkg892g4ldh3jiiidyhspy"; - }) - (fetchpatch { - url = "https://github.com/AbsInt/CompCert/commit/5e29f8b5ba9582ecf2a1d0baeaef195873640607.patch"; - sha256 = "184nfdgxrkci880lkaj5pgnify3plka7xfgqrgv16275sqppc5hc"; - }) - ]; + patches = param.patches or []; nativeBuildInputs = [ makeWrapper ]; buildInputs = ocaml-pkgs ++ [ coq coq2html ]; + propagatedBuildInputs = optional (param.useExternalFlocq or false) flocq; enableParallelBuilding = true; postPatch = '' @@ -43,6 +59,7 @@ stdenv.mkDerivation rec { -prefix $out \ -coqdevdir $lib/lib/coq/${coq.coq-version}/user-contrib/compcert/ \ -toolprefix ${tools}/bin/ \ + ${optionalString (param.useExternalFlocq or false) "-use-external-Flocq"} \ ${ccomp-platform} ''; @@ -68,7 +85,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "Formally verified C compiler"; - homepage = "http://compcert.inria.fr"; + homepage = "https://compcert.org"; license = licenses.inria-compcert; platforms = [ "x86_64-linux" "x86_64-darwin" ]; maintainers = with maintainers; [ thoughtpolice jwiegley vbgl ]; diff --git a/third_party/nixpkgs/pkgs/development/compilers/nim/default.nix b/third_party/nixpkgs/pkgs/development/compilers/nim/default.nix index 59061c0a2f..5b6da3cbef 100644 --- a/third_party/nixpkgs/pkgs/development/compilers/nim/default.nix +++ b/third_party/nixpkgs/pkgs/development/compilers/nim/default.nix @@ -4,10 +4,10 @@ , pcre, readline, boehmgc, sqlite, nim-unwrapped, nimble-unwrapped }: let - version = "1.4.0"; + version = "1.4.2"; src = fetchurl { url = "https://nim-lang.org/download/nim-${version}.tar.xz"; - sha256 = "0gf2lqkqzai6mg7mf4y04gdy1ddiavans09i8aisa88ssfza5ywx"; + sha256 = "0q8i56343b69f1bh48a8vxkqman9i2kscyj0lf017n3xfy1pb903"; }; meta = with lib; { diff --git a/third_party/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix b/third_party/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix index 9fa5d62423..444d332817 100644 --- a/third_party/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix +++ b/third_party/nixpkgs/pkgs/development/compilers/ocaml/4.12.nix @@ -1,9 +1,9 @@ import ./generic.nix { major_version = "4"; minor_version = "12"; - patch_version = "0-alpha1"; + patch_version = "0-alpha2"; src = fetchTarball { - url = "http://caml.inria.fr/pub/distrib/ocaml-4.12/ocaml-4.12.0~alpha1.tar.xz"; - sha256 = "1p9nnj7l43b697b6bm767znbf1h0s2lyc1qb8izr1vfpsmnm11ws"; + url = "http://caml.inria.fr/pub/distrib/ocaml-4.12/ocaml-4.12.0~alpha2.tar.xz"; + sha256 = "148vgjcfajjvrvh0q9kb2y7fszqd02cikb5wyznz7kjxka6xxyn9"; }; } diff --git a/third_party/nixpkgs/pkgs/development/compilers/scala/2.x.nix b/third_party/nixpkgs/pkgs/development/compilers/scala/2.x.nix index 6b9ab7d483..15c73f8140 100644 --- a/third_party/nixpkgs/pkgs/development/compilers/scala/2.x.nix +++ b/third_party/nixpkgs/pkgs/development/compilers/scala/2.x.nix @@ -1,117 +1,117 @@ { stdenv, lib, fetchurl, makeWrapper, jre, gnugrep, coreutils, nixosTests -, writeScript, common-updater-scripts, git, gnused, nix, nixfmt }: +, writeScript, common-updater-scripts, git, gnused, nix, nixfmt, majorVersion }: with lib; let repo = "git@github.com:scala/scala.git"; - common = { version, sha256, tests, pname }: - stdenv.mkDerivation rec { - inherit version; - - name = "scala-${version}"; - - src = fetchurl { - inherit sha256; - url = "https://www.scala-lang.org/files/archive/scala-${version}.tgz"; - }; - - propagatedBuildInputs = [ jre ]; - buildInputs = [ makeWrapper ]; - - installPhase = '' - mkdir -p $out - rm bin/*.bat - mv * $out - - # put docs in correct subdirectory - mkdir -p $out/share/doc - mv $out/doc $out/share/doc/${name} - mv $out/man $out/share/man - - for p in $(ls $out/bin/) ; do - wrapProgram $out/bin/$p \ - --prefix PATH ":" ${coreutils}/bin \ - --prefix PATH ":" ${gnugrep}/bin \ - --prefix PATH ":" ${jre}/bin \ - --set JAVA_HOME ${jre} - done - ''; - - passthru = { - inherit tests; - - updateScript = writeScript "update.sh" '' - #!${stdenv.shell} - set -o errexit - PATH=${ - stdenv.lib.makeBinPath [ - common-updater-scripts - coreutils - git - gnused - nix - nixfmt - ] - } - versionSelect='v${versions.major version}.${versions.minor version}.*' - oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion ${pname}" | tr -d '"')" - latestTag="$(git -c 'versionsort.suffix=-' ls-remote --exit-code --refs --sort='version:refname' --tags ${repo} "$versionSelect" | tail --lines=1 | cut --delimiter='/' --fields=3 | sed 's|^v||g')" - if [ "$oldVersion" != "$latestTag" ]; then - nixpkgs="$(git rev-parse --show-toplevel)" - default_nix="$nixpkgs/pkgs/development/compilers/scala/2.x.nix" - update-source-version ${pname} "$latestTag" --version-key=version --print-changes - nixfmt "$default_nix" - else - echo "${pname} is already up-to-date" - fi - ''; - }; - - meta = { - description = "A general purpose programming language"; - longDescription = '' - Scala is a general purpose programming language designed to express - common programming patterns in a concise, elegant, and type-safe way. - It smoothly integrates features of object-oriented and functional - languages, enabling Java and other programmers to be more productive. - Code sizes are typically reduced by a factor of two to three when - compared to an equivalent Java application. - ''; - homepage = "https://www.scala-lang.org/"; - license = licenses.bsd3; - platforms = platforms.all; - branch = versions.majorMinor version; - maintainers = [ maintainers.nequissimus ]; - }; + versionMap = { + "2.10" = { + version = "2.10.7"; + sha256 = "koMRmRb2u3cU4HaihAzPItWIGbNVIo7RWRrm92kp8RE="; + tests = [ nixosTests.scala.scala_2_10 ]; + pname = "scala_2_10"; + }; + + "2.11" = { + version = "2.11.12"; + sha256 = "sR19M2mcpPYLw7K2hY/ZU+PeK4UiyUP0zaS2dDFhlqg="; + tests = [ nixosTests.scala.scala_2_11 ]; + pname = "scala_2_11"; + }; + + "2.12" = { + version = "2.12.12"; + sha256 = "NSDNHzye//YrrudfMuUtHl3BIL4szzQGSeRw5I9Sfis="; + tests = [ nixosTests.scala.scala_2_12 ]; + pname = "scala_2_12"; + }; + + "2.13" = { + version = "2.13.4"; + sha256 = "1alcnzmxga00nsvgy8yky91zw5b4q0xg2697vrrdgjlglpxiqwdw"; + tests = [ nixosTests.scala.scala_2_13 ]; + pname = "scala_2_13"; }; -in { - scala_2_10 = common { - version = "2.10.7"; - sha256 = "koMRmRb2u3cU4HaihAzPItWIGbNVIo7RWRrm92kp8RE="; - tests = [ nixosTests.scala.scala_2_10 ]; - pname = "scala_2_10"; }; - scala_2_11 = common { - version = "2.11.12"; - sha256 = "sR19M2mcpPYLw7K2hY/ZU+PeK4UiyUP0zaS2dDFhlqg="; - tests = [ nixosTests.scala.scala_2_11 ]; - pname = "scala_2_11"; +in with versionMap.${majorVersion}; + +stdenv.mkDerivation rec { + inherit version; + + name = "scala-${version}"; + + src = fetchurl { + inherit sha256; + url = "https://www.scala-lang.org/files/archive/scala-${version}.tgz"; }; - scala_2_12 = common { - version = "2.12.12"; - sha256 = "NSDNHzye//YrrudfMuUtHl3BIL4szzQGSeRw5I9Sfis="; - tests = [ nixosTests.scala.scala_2_12 ]; - pname = "scala_2_12"; + propagatedBuildInputs = [ jre ]; + + buildInputs = [ makeWrapper ]; + + installPhase = '' + mkdir -p $out + rm bin/*.bat + mv * $out + # put docs in correct subdirectory + mkdir -p $out/share/doc + mv $out/doc $out/share/doc/${name} + mv $out/man $out/share/man + for p in $(ls $out/bin/) ; do + wrapProgram $out/bin/$p \ + --prefix PATH ":" ${coreutils}/bin \ + --prefix PATH ":" ${gnugrep}/bin \ + --prefix PATH ":" ${jre}/bin \ + --set JAVA_HOME ${jre} + done + ''; + + passthru = { + inherit tests; + updateScript = writeScript "update.sh" '' + #!${stdenv.shell} + set -o errexit + PATH=${ + stdenv.lib.makeBinPath [ + common-updater-scripts + coreutils + git + gnused + nix + nixfmt + ] + } + versionSelect='v${versions.major version}.${versions.minor version}.*' + oldVersion="$(nix-instantiate --eval -E "with import ./. {}; lib.getVersion ${pname}" | tr -d '"')" + latestTag="$(git -c 'versionsort.suffix=-' ls-remote --exit-code --refs --sort='version:refname' --tags ${repo} "$versionSelect" | tail --lines=1 | cut --delimiter='/' --fields=3 | sed 's|^v||g')" + if [ "$oldVersion" != "$latestTag" ]; then + nixpkgs="$(git rev-parse --show-toplevel)" + default_nix="$nixpkgs/pkgs/development/compilers/scala/2.x.nix" + update-source-version ${pname} "$latestTag" --version-key=version --print-changes + nixfmt "$default_nix" + else + echo "${pname} is already up-to-date" + fi + ''; }; - scala_2_13 = common { - version = "2.13.4"; - sha256 = "1alcnzmxga00nsvgy8yky91zw5b4q0xg2697vrrdgjlglpxiqwdw"; - tests = [ nixosTests.scala.scala_2_13 ]; - pname = "scala_2_13"; + meta = { + description = "A general purpose programming language"; + longDescription = '' + Scala is a general purpose programming language designed to express + common programming patterns in a concise, elegant, and type-safe way. + It smoothly integrates features of object-oriented and functional + languages, enabling Java and other programmers to be more productive. + Code sizes are typically reduced by a factor of two to three when + compared to an equivalent Java application. + ''; + homepage = "https://www.scala-lang.org/"; + license = licenses.bsd3; + platforms = platforms.all; + branch = versions.majorMinor version; + maintainers = [ maintainers.nequissimus ]; }; } diff --git a/third_party/nixpkgs/pkgs/development/compilers/tvm/default.nix b/third_party/nixpkgs/pkgs/development/compilers/tvm/default.nix new file mode 100644 index 0000000000..01c44718f1 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/compilers/tvm/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchFromGitHub, cmake }: + +stdenv.mkDerivation rec { + pname = "tvm"; + version = "0.7.0"; + + src = fetchFromGitHub { + owner = "apache"; + repo = "incubator-tvm"; + rev = "v${version}"; + fetchSubmodules = true; + sha256 = "0qflpd3lw0jslyk5lqpv2v42lkqs8mkvnn6i3fdms32iskdfk6p5"; + }; + + nativeBuildInputs = [ cmake ]; + # TVM CMake build uses some sources in the project's ./src/target/opt/ + # directory which errneously gets mangled by the eager `fixCmakeFiles` + # function in Nix's CMake setup-hook.sh to ./src/target/var/empty/, + # which then breaks the build. Toggling this flag instructs Nix to + # not mangle the legitimate use of the opt/ folder. + dontFixCmake = true; + + meta = with stdenv.lib; { + homepage = "https://tvm.apache.org/"; + description = "An End to End Deep Learning Compiler Stack for CPUs, GPUs and accelerators"; + license = licenses.asl20; + platforms = platforms.all; + maintainers = with maintainers; [ adelbertc ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/interpreters/erlang/R23.nix b/third_party/nixpkgs/pkgs/development/interpreters/erlang/R23.nix index 3ad55d806a..53d1b49c37 100644 --- a/third_party/nixpkgs/pkgs/development/interpreters/erlang/R23.nix +++ b/third_party/nixpkgs/pkgs/development/interpreters/erlang/R23.nix @@ -3,8 +3,8 @@ # How to obtain `sha256`: # nix-prefetch-url --unpack https://github.com/erlang/otp/archive/OTP-${version}.tar.gz mkDerivation { - version = "23.1.2"; - sha256 = "06dp2sw486khy2lc34cw5dca58ii5jvi26dpchiqxnmyvd6995z0"; + version = "23.1.4"; + sha256 = "16ssxmrgjgvzg06aa1l4wz9rrdjfy39k22amgabxwb5if1g8bg8z"; prePatch = '' substituteInPlace make/configure.in --replace '`sw_vers -productVersion`' "''${MACOSX_DEPLOYMENT_TARGET:-10.12}" diff --git a/third_party/nixpkgs/pkgs/development/interpreters/tclreadline/default.nix b/third_party/nixpkgs/pkgs/development/interpreters/tclreadline/default.nix new file mode 100644 index 0000000000..bbd34f71d2 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/interpreters/tclreadline/default.nix @@ -0,0 +1,68 @@ +{ stdenv +, fetchFromGitHub +, automake +, autoconf +, libtool +, readline +, tcl +, tk +}: + +stdenv.mkDerivation rec { + pname = "tclreadline"; + version = "2.3.8"; + + src = fetchFromGitHub { + owner = "flightaware"; + repo = "tclreadline"; + rev = "v${version}"; + sha256 = "18jl56p0hwgynxpvr0v7b5mvvzc1m64fn61c0957bgb45mc250yq"; + }; + + nativeBuildInputs = [ + automake + autoconf + libtool + ]; + buildInputs = [ + readline + tcl + tk + ]; + + preConfigure = "NOCONFIGURE=1 ./autogen.sh"; + + configureFlags = [ + "--enable-tclshrl" + "--enable-wishrl" + "--with-tcl=${tcl}/lib" + "--with-tk=${tk}/lib" + "--with-readline-includes=${readline.dev}/include/readline" + "--with-libtool=${libtool}" + ]; + + # The provided makefile leaves a wrong reference to /build/ in RPATH, + # so we fix it after checking that everything is also present in $out + preFixup = stdenv.lib.optionalString stdenv.isLinux '' + needed_libraries=$(ls .libs | grep '\.\(so\|la\)$') + for lib in $needed_libraries; do + if ! ls $out/lib | grep "$lib"; then + echo "$lib was not installed correctly" + exit 1 + fi + done + for executable in $out/bin/{wishrl,tclshrl}; do + patchelf --set-rpath \ + "$(patchelf --print-rpath "$executable" | sed "s@$builddir/.libs@$out/lib@")" \ + "$executable" + done + ''; + + meta = with stdenv.lib; { + description = "GNU readline for interactive tcl shells"; + homepage = "https://github.com/flightaware/tclreadline"; + license = licenses.bsd3; + maintainers = with maintainers; [ fgaz ]; + platforms = platforms.all; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/libraries/belcard/default.nix b/third_party/nixpkgs/pkgs/development/libraries/belcard/default.nix index 34b0560f3f..ae9b1e6e43 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/belcard/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/belcard/default.nix @@ -7,7 +7,7 @@ stdenv.mkDerivation rec { pname = "belcard"; - version = "4.4.0"; + version = "4.4.13"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; diff --git a/third_party/nixpkgs/pkgs/development/libraries/belle-sip/default.nix b/third_party/nixpkgs/pkgs/development/libraries/belle-sip/default.nix index a935372656..788e656301 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/belle-sip/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/belle-sip/default.nix @@ -2,7 +2,6 @@ , bctoolbox , cmake , fetchFromGitLab -, jre , libantlr3c , mbedtls , stdenv @@ -11,20 +10,18 @@ stdenv.mkDerivation rec { pname = "belle-sip"; - # Using master branch for linphone-desktop caused a chain reaction that many - # of its dependencies needed to use master branch too. - version = "unstable-2020-02-18"; + version = "4.4.13"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; owner = "public"; group = "BC"; repo = pname; - rev = "0dcb13416eae87edf140771b886aedaf6be8cf60"; - sha256 = "0pzxk8mkkg6zsnmj1bwggbdjv864psx89gglfm51h8s501kg11fv"; + rev = version; + sha256 = "1ad7sqc5y4f3gc8glwmb3rvfzapnvhg981g13x90cg4nzikjvka0"; }; - nativeBuildInputs = [ jre cmake ]; + nativeBuildInputs = [ cmake antlr3_4 ]; buildInputs = [ zlib ]; @@ -37,10 +34,7 @@ stdenv.mkDerivation rec { "-Wno-error=cast-function-type" ]; - propagatedBuildInputs = [ antlr3_4 libantlr3c mbedtls bctoolbox ]; - - # Fails to build with lots of parallel jobs - enableParallelBuilding = false; + propagatedBuildInputs = [ libantlr3c mbedtls bctoolbox ]; meta = with stdenv.lib; { homepage = "https://linphone.org/technical-corner/belle-sip"; diff --git a/third_party/nixpkgs/pkgs/development/libraries/cmark-gfm/default.nix b/third_party/nixpkgs/pkgs/development/libraries/cmark-gfm/default.nix new file mode 100644 index 0000000000..52a0277226 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/libraries/cmark-gfm/default.nix @@ -0,0 +1,24 @@ +{ stdenv, fetchFromGitHub, cmake }: +stdenv.mkDerivation rec { + pname = "cmark-gfm"; + version = "0.29.0.gfm.0"; + + src = fetchFromGitHub { + owner = "github"; + repo = "cmark-gfm"; + rev = version; + sha256 = "0wfr3xwl4wria8vld71flv6vpsdj9aj81yqvj0azidyb8p229a1l"; + }; + + nativeBuildInputs = [ cmake ]; + # tests load the library dynamically which for unknown reason failed + doCheck = false; + + meta = with stdenv.lib; { + description = "GitHub's fork of cmark, a CommonMark parsing and rendering library and program in C"; + homepage = "https://github.com/github/cmark-gfm"; + maintainers = with maintainers; [ cyplo ]; + platforms = platforms.unix; + license = licenses.bsd2; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/libraries/coin3d/default.nix b/third_party/nixpkgs/pkgs/development/libraries/coin3d/default.nix index 7fd6763725..c76aaa4c8e 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/coin3d/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/coin3d/default.nix @@ -1,14 +1,15 @@ -{ fetchFromGitHub, stdenv, boost, cmake, libGL, libGLU }: +{ fetchFromGitHub, stdenv, boost, cmake, libX11, libGL, libGLU }: stdenv.mkDerivation rec { pname = "coin"; - version = "4.0.0"; + version = "2020-12-07-unstable"; src = fetchFromGitHub { owner = "coin3d"; repo = "coin"; - rev = "Coin-${version}"; - sha256 = "1ayg0hl8wanhadahm5xbghghxw1qjwqbrs3dl3ngnff027hsyf8p"; + # rev = "Coin-${version}"; + rev = "d5539998aff272b349590fe74d068659682ecd0d"; + sha256 = "11jaz8p9nn8jpd6dsgwgkldwr7z829gyf64g014qyyh8l6p7jzzd"; }; postPatch = '' @@ -16,7 +17,7 @@ stdenv.mkDerivation rec { ''; nativeBuildInputs = [ cmake ]; - buildInputs = [ boost libGL libGLU ]; + buildInputs = [ boost libX11 libGL libGLU ]; meta = with stdenv.lib; { homepage = "https://github.com/coin3d/coin"; diff --git a/third_party/nixpkgs/pkgs/development/libraries/garmintools/default.nix b/third_party/nixpkgs/pkgs/development/libraries/garmintools/default.nix index aa6ebfd339..97449d944e 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/garmintools/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/garmintools/default.nix @@ -10,7 +10,7 @@ stdenv.mkDerivation { description = "Provides the ability to communicate with the Garmin Forerunner 305 via the USB interface"; homepage = "https://code.google.com/archive/p/garmintools/"; # community clone at https://github.com/ianmartin/garmintools license = stdenv.lib.licenses.gpl2; - maintainers = [ stdenv.lib.maintainers.ocharles ]; + maintainers = [ ]; platforms = stdenv.lib.platforms.unix; }; } diff --git a/third_party/nixpkgs/pkgs/development/libraries/genann/default.nix b/third_party/nixpkgs/pkgs/development/libraries/genann/default.nix new file mode 100644 index 0000000000..6529d4f363 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/libraries/genann/default.nix @@ -0,0 +1,34 @@ +{ stdenv, fetchFromGitHub }: + +stdenv.mkDerivation rec { + pname = "genann"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "codeplea"; + repo = "genann"; + rev = "v${version}"; + sha256 = "0z45ndpd4a64i6jayr4yxfcr5h87bsmhm7lfgnbp35pnfywiclmq"; + }; + + dontBuild = true; + doCheck = true; + + # Nix doesn't seem to recognize this by default. + checkPhase = '' + make check + ''; + + installPhase = '' + mkdir -p $out/include + cp ./genann.{h,c} $out/include + ''; + + meta = with stdenv.lib; { + homepage = "https://github.com/codeplea/genann"; + description = "Simple neural network library in ANSI C"; + license = licenses.zlib; + maintainers = [ maintainers.ivar ]; + platforms = platforms.all; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/libraries/gnutls/default.nix b/third_party/nixpkgs/pkgs/development/libraries/gnutls/default.nix index d3d50fd6d6..ae3775002e 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/gnutls/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/gnutls/default.nix @@ -34,7 +34,10 @@ stdenv.mkDerivation { patches = [ ./nix-ssl-cert-file.patch ] # Disable native add_system_trust. - ++ lib.optional (isDarwin && !withSecurity) ./no-security-framework.patch; + ++ lib.optional (isDarwin && !withSecurity) ./no-security-framework.patch + # fix gnulib tests on 32-bit ARM. Included on gnutls master. + # https://lists.gnu.org/r/bug-gnulib/2020-08/msg00225.html + ++ lib.optional stdenv.hostPlatform.isAarch32 ./fix-gnulib-tests-arm.patch; # Skip some tests: # - pkgconfig: building against the result won't work before installing (3.5.11) diff --git a/third_party/nixpkgs/pkgs/development/libraries/gnutls/fix-gnulib-tests-arm.patch b/third_party/nixpkgs/pkgs/development/libraries/gnutls/fix-gnulib-tests-arm.patch new file mode 100644 index 0000000000..5a222a9cb8 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/libraries/gnutls/fix-gnulib-tests-arm.patch @@ -0,0 +1,45 @@ +>From 175e0bc72808d564074c4adcc72aeadb74adfcc6 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Thu, 27 Aug 2020 17:52:58 -0700 +Subject: [PATCH] perror, strerror_r: remove unportable tests + +Problem reported by Florian Weimer in: +https://lists.gnu.org/r/bug-gnulib/2020-08/msg00220.html +* tests/test-perror2.c (main): +* tests/test-strerror_r.c (main): Omit unportable tests. +--- + tests/test-perror2.c | 3 --- + tests/test-strerror_r.c | 3 --- + 2 files changed, 6 deletions(-) + +diff --git a/gl/tests/test-perror2.c b/gl/tests/test-perror2.c +index 1d14eda7b..c6214dd25 100644 +--- a/gl/tests/test-perror2.c ++++ b/gl/tests/test-perror2.c +@@ -79,9 +79,6 @@ main (void) + errno = -5; + perror (""); + ASSERT (!ferror (stderr)); +- ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1)); +- ASSERT (msg2 == msg4 || STREQ (msg2, str2)); +- ASSERT (msg3 == msg4 || STREQ (msg3, str3)); + ASSERT (STREQ (msg4, str4)); + + free (str1); +diff --git a/gl/tests/test-strerror_r.c b/gl/tests/test-strerror_r.c +index b11d6fd9f..c1dbcf837 100644 +--- a/gl/tests/test-strerror_r.c ++++ b/gl/tests/test-strerror_r.c +@@ -165,9 +165,6 @@ main (void) + + strerror_r (EACCES, buf, sizeof buf); + strerror_r (-5, buf, sizeof buf); +- ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1)); +- ASSERT (msg2 == msg4 || STREQ (msg2, str2)); +- ASSERT (msg3 == msg4 || STREQ (msg3, str3)); + ASSERT (STREQ (msg4, str4)); + + free (str1); +-- +2.17.1 + diff --git a/third_party/nixpkgs/pkgs/development/libraries/inchi/default.nix b/third_party/nixpkgs/pkgs/development/libraries/inchi/default.nix new file mode 100644 index 0000000000..8690110075 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/libraries/inchi/default.nix @@ -0,0 +1,51 @@ +{ pkgs, fetchurl, stdenv, unzip }: +stdenv.mkDerivation { + pname = "inchi"; + version = "1.05"; + src = fetchurl { + url = "http://www.inchi-trust.org/download/105/INCHI-1-SRC.zip"; + sha1 = "e3872a46d58cb321a98f4fd4b93a989fb6920b9c"; + }; + + nativeBuildInputs = [ pkgs.unzip ]; + outputs = [ "out" "doc" ]; + + enableParallelBuilding = true; + + preBuild = '' + cd ./INCHI_API/libinchi/gcc + ''; + installPhase = '' + cd ../../.. + mkdir -p $out/lib + mkdir -p $out/include/inchi + mkdir -p $doc/share/ + + install -m 755 INCHI_API/bin/Linux/libinchi.so.1.05.00 $out/lib + ln -s $out/lib/libinchi.so.1.05.00 $out/lib/libinchi.so.1 + ln -s $out/lib/libinchi.so.1.05.00 $out/lib/libinchi.so + install -m 644 INCHI_BASE/src/*.h $out/include/inchi + + runHook postInstall + ''; + + postInstall = + let + src-doc = fetchurl { + url = "http://www.inchi-trust.org/download/105/INCHI-1-DOC.zip"; + sha1 = "2f54y0san34v01c215kk0cigzsn76js5"; + }; + in + '' + unzip '${src-doc}' + install -m 644 INCHI-1-DOC/*.pdf $doc/share + ''; + + meta = with stdenv.lib; { + homepage = "https://www.inchi-trust.org/"; + description = "IUPAC International Chemical Identifier library"; + license = licenses.lgpl2Plus; + platforms = platforms.all; + maintainers = with maintainers; [ rmcgibbo ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/libraries/libgpod/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libgpod/default.nix index e30e05d44c..d23a523829 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/libgpod/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/libgpod/default.nix @@ -1,5 +1,5 @@ -{ stdenv, lib, fetchurl, gettext, perlPackages, intltool, pkgconfig, glib, - libxml2, sqlite, zlib, sg3_utils, gdk-pixbuf, taglib, +{ stdenv, lib, fetchurl, perlPackages, intltool, autoreconfHook, + pkg-config, glib, libxml2, sqlite, zlib, sg3_utils, gdk-pixbuf, taglib, libimobiledevice, monoSupport ? false, mono, gtk-sharp-2_0 }: @@ -15,11 +15,15 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" ]; - preConfigure = "configureFlagsArray=( --with-udev-dir=$out/lib/udev )"; + postPatch = '' + # support libplist 2.2 + substituteInPlace configure.ac --replace 'libplist >= 1.0' 'libplist-2.0 >= 2.2' + ''; configureFlags = [ "--without-hal" "--enable-udev" + "--with-udev-dir=${placeholder "out"}/lib/udev" ] ++ lib.optionals monoSupport [ "--with-mono" ]; dontStrip = true; @@ -27,7 +31,7 @@ stdenv.mkDerivation rec { propagatedBuildInputs = [ glib libxml2 sqlite zlib sg3_utils gdk-pixbuf taglib libimobiledevice ]; - nativeBuildInputs = [ gettext intltool pkgconfig ] + nativeBuildInputs = [ autoreconfHook intltool pkg-config ] ++ (with perlPackages; [ perl XMLParser ]) ++ lib.optionals monoSupport [ mono gtk-sharp-2_0 ]; diff --git a/third_party/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix index dcbb71c7c3..a9a2fb6b4c 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/libimobiledevice/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "libimobiledevice"; - version = "2020-01-20"; + version = "1.3.0"; src = fetchFromGitHub { owner = pname; repo = pname; - rev = "61babf5f54e7734ebf3044af4c6294524d4b29b5"; - sha256 = "02dnq6xza72li52kk4p2ak0gq2js3ssfp2fpjlgsv0bbn5mkg2hi"; + rev = version; + sha256 = "1jkq3hpg4n5a6s1k618ib0s80pwf00nlfcby7xckysq8mnd2pp39"; }; outputs = [ "out" "dev" ]; diff --git a/third_party/nixpkgs/pkgs/development/libraries/libinklevel/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libinklevel/default.nix new file mode 100644 index 0000000000..90f6936d45 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/libraries/libinklevel/default.nix @@ -0,0 +1,35 @@ +{ stdenv, fetchurl, pkg-config, libusb1 }: + +stdenv.mkDerivation rec { + pname = "libinklevel"; + version = "0.9.3"; + + src = fetchurl { + url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz"; + sha256 = "1zwkicjznkzw81ax745inv4n29y20vq82w8249vizaal76739n19"; + }; + + buildInputs = [ + pkg-config + libusb1 + ]; + + outputs = [ "out" "dev" "doc" ]; + + meta = with stdenv.lib; { + description = "A library for checking the ink level of your printer"; + longDescription = '' + Libinklevel is a library for checking the ink level of your printer on a + system which runs Linux or FreeBSD. It supports printers attached via + USB. Currently printers of the following brands are supported: HP, Epson + and Canon. Canon BJNP network printers are supported too. This is not + official software from the printer manufacturers. The goal of this + project is to create a vendor independent API for retrieving the ink + level of a printer connected to a Linux or FreeBSD box. + ''; + homepage = "http://libinklevel.sourceforge.net/"; + license = licenses.gpl2; + platforms = platforms.linux ++ platforms.freebsd; + maintainers = with maintainers; [ samb96 ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/libraries/libirecovery/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libirecovery/default.nix index 5b0b60b16b..bc91593a96 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/libirecovery/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/libirecovery/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "libirecovery"; - version = "2020-01-14"; + version = "1.0.0"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = pname; - rev = "10a1f8dd11a11a0b8980fbf26f11e3ce74e7a923"; - sha256 = "1v5c9dbbkrsplj1zkcczzm0i31ar3wcx6fpxb0pi4dsgj8846aic"; + rev = version; + sha256 = "0p9ncqnz5kb7qisw00ynvasw1hax5qx241h9nwppi2g544i9lbnr"; }; outputs = [ "out" "dev" ]; diff --git a/third_party/nixpkgs/pkgs/development/libraries/liblinphone/default.nix b/third_party/nixpkgs/pkgs/development/libraries/liblinphone/default.nix index 1c414b9dd8..21f9833a5d 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/liblinphone/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/liblinphone/default.nix @@ -46,43 +46,18 @@ , xsd , zlib }: -let - # Got the following error when building: - # - # Your version of Doxygen (1.8.17) is known to malfunction with some of our - # macro definitions, which causes errors while wrapprers generation. Please - # install an older version of Doxygen (< 1.8.17) or disable documentation - # and wrapper generation. - # - # So, let's then use 1.8.16 version of doxygen in this derivation. Hopefully - # this workaround can be removed with some newer release of liblinphone. - doxygen_1_8_16 = doxygen.overrideAttrs ( - oldAttrs: rec { - name = "doxygen-1.8.16"; - src = fetchurl { - urls = [ - "mirror://sourceforge/doxygen/${name}.src.tar.gz" # faster, with https, etc. - "http://doxygen.nl/files/${name}.src.tar.gz" - ]; - sha256 = "10iwv8bcz5b5cd85gg8pgn0bmyg04n9hs36xn7ggjjnvynv1z67z"; - }; - buildInputs = oldAttrs.buildInputs ++ [ git ]; - } - ); -in + stdenv.mkDerivation rec { pname = "liblinphone"; - # Using master branch for linphone-desktop caused a chain reaction that many - # of its dependencies needed to use master branch too. - version = "unstable-2020-03-20"; + version = "4.4.15"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; owner = "public"; group = "BC"; repo = pname; - rev = "1d762a3e0e304aa579798aed4400d2cee2c1ffa0"; - sha256 = "0ja38payyqbd8z6q5l5w6hi7xarmfj5021gh0qdk0j832br4c6c3"; + rev = version; + sha256 = "16a31c0n5lix4r5xk7p447xlxbrhdlmj11kb4y1krb5fx8hf65cl"; }; # Do not build static libraries @@ -103,7 +78,6 @@ stdenv.mkDerivation rec { cyrus_sasl ffmpeg_3 gdk-pixbuf - git glib gtk2 libX11 @@ -133,7 +107,7 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ bcunit cmake - doxygen_1_8_16 + doxygen graphviz intltool makeWrapper diff --git a/third_party/nixpkgs/pkgs/development/libraries/libowfat/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libowfat/default.nix index 5f434a7ae7..0687115860 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/libowfat/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/libowfat/default.nix @@ -8,17 +8,6 @@ stdenv.mkDerivation rec { sha256 = "1hcqg7pvy093bxx8wk7i4gvbmgnxz2grxpyy7b4mphidjbcv7fgl"; }; - # Dirty patch because 0.32 "moved headers to upon install" - # but it breaks gatling-0.15 and opentracker-2018-05-26 ... - postPatch = '' - substituteInPlace GNUmakefile --replace \ - 'install -d $(DESTDIR)$(INCLUDEDIR)/libowfat' \ - 'install -d $(DESTDIR)$(INCLUDEDIR)' - substituteInPlace GNUmakefile --replace \ - 'install -m 644 $(INCLUDES) $(DESTDIR)$(INCLUDEDIR)/libowfat' \ - 'install -m 644 $(INCLUDES) $(DESTDIR)$(INCLUDEDIR)' - ''; - makeFlags = [ "prefix=$(out)" ]; enableParallelBuilding = true; diff --git a/third_party/nixpkgs/pkgs/development/libraries/libplist/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libplist/default.nix index a626e7a537..1f311dda9f 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/libplist/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/libplist/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libplist"; - version = "2019-04-04"; + version = "2.2.0"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = pname; - rev = "42bb64ba966082b440cb68cbdadf317f44710017"; - sha256 = "19yw80yblq29i2jx9yb7bx0lfychy9dncri3fk4as35kq5bf26i8"; + rev = version; + sha256 = "1vxhpjxniybqsg5wcygmdmr5dv7p2zb34dqnd3bi813rnnzsdjm6"; }; outputs = ["bin" "dev" "out" ] ++ stdenv.lib.optional enablePython "py"; diff --git a/third_party/nixpkgs/pkgs/development/libraries/libusbmuxd/default.nix b/third_party/nixpkgs/pkgs/development/libraries/libusbmuxd/default.nix index 9d81c5d0fb..e2e0a6d9d7 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/libusbmuxd/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/libusbmuxd/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "libusbmuxd"; - version = "2019-03-23"; + version = "2.0.2"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = pname; - rev = "873252dc8b4e469c7dc692064ac616104fca5f65"; - sha256 = "0qx3q0n1f2ajfm3vnairikayzln6iyb2y0i7sqfl8mj45ahl6wyj"; + rev = version; + sha256 = "139pzsnixkck6ly1q6p0diqr0hgd0mx0pr4xx1jamm3f3656kpf9"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; diff --git a/third_party/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix b/third_party/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix index 81c7c8fcac..64ddba517d 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/mediastreamer/default.nix @@ -33,17 +33,15 @@ stdenv.mkDerivation rec { pname = "mediastreamer2"; - # Using master branch for linphone-desktop caused a chain reaction that many - # of its dependencies needed to use master branch too. - version = "unstable-2020-03-20"; + version = "4.4.13"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; owner = "public"; group = "BC"; repo = pname; - rev = "c5eecb72cb44376d142949051dd0cb7c982608fb"; - sha256 = "1vp260jxvjlmrmjdl4p23prg4cjln20a7z6zq8dqvfh4iq3ya033"; + rev = version; + sha256 = "0w84v1ajhyysr41qaj7x4njwdak84cc10lq33hl8lq68a52fc2vw"; }; patches = [ diff --git a/third_party/nixpkgs/pkgs/development/libraries/minizip2/default.nix b/third_party/nixpkgs/pkgs/development/libraries/minizip2/default.nix new file mode 100644 index 0000000000..6c6d8b3ef8 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/libraries/minizip2/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchFromGitHub, cmake, pkg-config, zlib, bzip2, xz, zstd, openssl }: + +stdenv.mkDerivation rec { + pname = "minizip"; + version = "2.10.4"; + + src = fetchFromGitHub { + owner = "nmoinvaz"; + repo = pname; + rev = version; + sha256 = "15bbagngvm738prkzv7lfs64pn4pq7jkhwz571j0w0nb5nw9c01x"; + }; + + nativeBuildInputs = [ cmake pkg-config ]; + + cmakeFlags = [ + "-DBUILD_SHARED_LIBS=YES" + "-DMZ_OPENSSL=ON" + ]; + + buildInputs = [ zlib bzip2 xz zstd openssl ]; + + meta = with stdenv.lib; { + description = "Compression library implementing the deflate compression method found in gzip and PKZIP"; + homepage = "https://github.com/nmoinvaz/minizip"; + license = licenses.zlib; + maintainers = with maintainers; [ gebner ]; + platforms = platforms.unix; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/libraries/ngt/default.nix b/third_party/nixpkgs/pkgs/development/libraries/ngt/default.nix index 114a438ea1..977bdf9afe 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/ngt/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/ngt/default.nix @@ -1,15 +1,20 @@ -{ stdenv, fetchFromGitHub, cmake }: +{ stdenv, fetchFromGitHub, cmake, llvmPackages, enableAVX ? false }: stdenv.mkDerivation rec { pname = "NGT"; - version = "v1.8.4"; + version = "v1.12.3-alpha"; nativeBuildInputs = [ cmake ]; + src = fetchFromGitHub { owner = "yahoojapan"; repo = "NGT"; - rev = version; - sha256 = "f2019e7916b81f8aeabc57d682904c8447776bf9ba94525d20265b329aa43eb5"; + rev = "29c88ff6cd5824d3196986d1f50b834565b6c9dd"; + sha256 = "sha256-nu0MJNpaenOB4+evoSVLKmPIuZXVj1Rm9x53+TfhezY="; }; + buildInputs = [ llvmPackages.openmp ]; + NIX_ENFORCE_NO_NATIVE=! enableAVX; + __AVX2__ = if enableAVX then 1 else 0; + enableParallelBuilding = true; meta = with stdenv.lib; { diff --git a/third_party/nixpkgs/pkgs/development/libraries/ortp/default.nix b/third_party/nixpkgs/pkgs/development/libraries/ortp/default.nix index 53636f05b7..f84f3ab1d8 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/ortp/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/ortp/default.nix @@ -6,17 +6,15 @@ stdenv.mkDerivation rec { pname = "ortp"; - # Using master branch for linphone-desktop caused a chain reaction that many - # of its dependencies needed to use master branch too. - version = "unstable-2020-03-17"; + version = "4.4.9"; src = fetchFromGitLab { domain = "gitlab.linphone.org"; owner = "public"; group = "BC"; repo = pname; - rev = "804dfc4f90d1a4301127c7af10a74fd2935dd5d8"; - sha256 = "1yr8j8am68spyy5d9vna8zcq3qn039mi16cv9jf5n4chs9rxf7xx"; + rev = version; + sha256 = "0igiw863gnf9f626v0igg1pj3fv4anvlvlk6xx3bk2zdi52a9kcc"; }; # Do not build static libraries diff --git a/third_party/nixpkgs/pkgs/development/libraries/pugixml/default.nix b/third_party/nixpkgs/pkgs/development/libraries/pugixml/default.nix index 7436641a2f..14ef813043 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/pugixml/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/pugixml/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "pugixml"; - version = "1.11"; + version = "1.11.1"; src = fetchFromGitHub { owner = "zeux"; repo = "pugixml"; rev = "v${version}"; - sha256 = "0q620bfd9lnph68jhqn7iv9bqmks7qk90riq6f6nr4kqc4xnravd"; + sha256 = "0iwn627wynrqrwb2ddm38p6y6cpgcavgbkrrxwxa0d26m9v2avpr"; }; outputs = if shared then [ "out" "dev" ] else [ "out" ]; diff --git a/third_party/nixpkgs/pkgs/development/libraries/rapidcheck/default.nix b/third_party/nixpkgs/pkgs/development/libraries/rapidcheck/default.nix index bf96e8e76b..492e122897 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/rapidcheck/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/rapidcheck/default.nix @@ -13,8 +13,12 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ cmake ]; + # Install the extras headers postInstall = '' - cp ../extras/boost_test/include/rapidcheck/boost_test.h $out/include/rapidcheck + cp -r $src/extras $out + chmod -R +w $out/extras + rm $out/extras/CMakeLists.txt + rm $out/extras/**/CMakeLists.txt ''; meta = with stdenv.lib; { diff --git a/third_party/nixpkgs/pkgs/development/libraries/soqt/default.nix b/third_party/nixpkgs/pkgs/development/libraries/soqt/default.nix index de11407e12..8d69c328ee 100644 --- a/third_party/nixpkgs/pkgs/development/libraries/soqt/default.nix +++ b/third_party/nixpkgs/pkgs/development/libraries/soqt/default.nix @@ -1,12 +1,16 @@ -{ fetchurl, stdenv, coin3d, qtbase, cmake, pkgconfig }: +{ fetchFromGitHub, stdenv, coin3d, qtbase, cmake, pkgconfig }: stdenv.mkDerivation rec { pname = "soqt"; - version = "1.6.0"; + version = "2020-12-05-unstable"; - src = fetchurl { - url = "https://github.com/coin3d/soqt/releases/download/SoQt-${version}/soqt-${version}-src.tar.gz"; - sha256 = "07qfljy286vb7y1p93205zn9sp1lpn0rcrqm5010gj87kzsmllwz"; + src = fetchFromGitHub { + owner = "coin3d"; + repo = "soqt"; + # rev = "SoQt-${version}"; + rev = "fb8f655632bb9c9c60e0ff9fa69a5ba22d3ff99d"; + sha256 = "sha256-YoBq8P3Tag2Sepqxf/qIcJDBhH/gladBmDUj78aacZs="; + fetchSubmodules = true; }; buildInputs = [ coin3d qtbase ]; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix index 3ebf0f3ed6..94626f3c17 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/default.nix @@ -1,17 +1,21 @@ { lib, buildDunePackage, fetchurl -, astring, cmdliner, fmt, uuidm, re, stdlib-shims +, astring, cmdliner, fmt, uuidm, re, stdlib-shims, uutf }: buildDunePackage rec { pname = "alcotest"; - version = "1.0.1"; + version = "1.2.3"; + + useDune2 = true; src = fetchurl { - url = "https://github.com/mirage/alcotest/releases/download/${version}/alcotest-${version}.tbz"; - sha256 = "1xlklxb83gamqbg8j5dzm5jk4mvcwkspxajh93p6vpw9ia1li1qc"; + url = "https://github.com/mirage/alcotest/releases/download/${version}/alcotest-mirage-${version}.tbz"; + sha256 = "1bmjcivbmd4vib15v4chycgd1gl8js9dk94vzxkdg06zxqd4hp08"; }; - propagatedBuildInputs = [ astring cmdliner fmt uuidm re stdlib-shims ]; + propagatedBuildInputs = [ astring cmdliner fmt uuidm re stdlib-shims uutf ]; + + doCheck = true; meta = with lib; { homepage = "https://github.com/mirage/alcotest"; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/lwt.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/lwt.nix index f005421a6f..82efbe91a0 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/lwt.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/alcotest/lwt.nix @@ -3,7 +3,7 @@ buildDunePackage { pname = "alcotest-lwt"; - inherit (alcotest) version src; + inherit (alcotest) version src useDune2; propagatedBuildInputs = [ alcotest logs ocaml_lwt ]; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/domain-name/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/domain-name/default.nix index cb0105ff46..a34c06aa8e 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/domain-name/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/domain-name/default.nix @@ -7,6 +7,8 @@ buildDunePackage rec { pname = "domain-name"; version = "0.3.0"; + useDune2 = true; + src = fetchurl { url = "https://github.com/hannesm/domain-name/releases/download/v${version}/domain-name-v${version}.tbz"; sha256 = "12kc9p2a2fi1ipc2hyhbzivxpph3npglxwdgvhd6v20rqqdyvnad"; @@ -14,7 +16,7 @@ buildDunePackage rec { minimumOCamlVersion = "4.03"; - buildInputs = [ alcotest ]; + checkInputs = [ alcotest ]; propagatedBuildInputs = [ astring fmt ]; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix index 7b3c1c65fc..a547a919c3 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/duration/default.nix @@ -1,16 +1,18 @@ -{ lib, buildDunePackage, fetchurl, alcotest }: +{ lib, buildDunePackage, ocaml, fetchurl, alcotest }: buildDunePackage rec { pname = "duration"; version = "0.1.3"; + useDune2 = true; + src = fetchurl { url = "https://github.com/hannesm/duration/releases/download/${version}/duration-${version}.tbz"; sha256 = "0m9r0ayhpl98g9vdxrbjdcllns274jilic5v8xj1x7dphw21p95h"; }; - doCheck = true; - checkInputs = lib.optional doCheck alcotest; + doCheck = lib.versionAtLeast ocaml.version "4.05"; + checkInputs = [ alcotest ]; meta = { homepage = "https://github.com/hannesm/duration"; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/gmap/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/gmap/default.nix index 2585dfcaa9..407919f91b 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/gmap/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/gmap/default.nix @@ -1,9 +1,11 @@ -{ lib, buildDunePackage, fetchurl, alcotest }: +{ lib, buildDunePackage, ocaml, fetchurl, alcotest }: buildDunePackage rec { pname = "gmap"; version = "0.3.0"; + useDune2 = true; + src = fetchurl { url = "https://github.com/hannesm/gmap/releases/download/${version}/gmap-${version}.tbz"; sha256 = "073wa0lrb0jj706j87cwzf1a8d1ff14100mnrjs8z3xc4ri9xp84"; @@ -11,9 +13,9 @@ buildDunePackage rec { minimumOCamlVersion = "4.03"; - buildInputs = [ alcotest ]; + checkInputs = [ alcotest ]; - doCheck = true; + doCheck = lib.versionAtLeast ocaml.version "4.05"; meta = { description = "Heterogenous maps over a GADT"; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/default.nix index 22b7bf35f8..f3adfdc87a 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/default.nix @@ -1,13 +1,13 @@ -{ lib, buildDunePackage, alcotest, graphql_parser, rresult, yojson }: +{ buildDunePackage, alcotest, graphql_parser, rresult, yojson }: buildDunePackage rec { pname = "graphql"; - inherit (graphql_parser) version src; + inherit (graphql_parser) version useDune2 src; propagatedBuildInputs = [ graphql_parser rresult yojson ]; - checkInputs = lib.optional doCheck alcotest; + checkInputs = [ alcotest ]; doCheck = true; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/lwt.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/lwt.nix index 37d75f9e22..187856da0d 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/lwt.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/lwt.nix @@ -1,13 +1,13 @@ -{ lib, buildDunePackage, alcotest, graphql, ocaml_lwt }: +{ buildDunePackage, alcotest, graphql, ocaml_lwt }: buildDunePackage rec { pname = "graphql-lwt"; - inherit (graphql) version src; + inherit (graphql) version useDune2 src; propagatedBuildInputs = [ graphql ocaml_lwt ]; - checkInputs = lib.optional doCheck alcotest; + checkInputs = [ alcotest ]; doCheck = true; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/parser.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/parser.nix index 4172ccd8d0..62f8ca1ef1 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/parser.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/graphql/parser.nix @@ -4,6 +4,8 @@ buildDunePackage rec { pname = "graphql_parser"; version = "0.13.0"; + useDune2 = true; + minimumOCamlVersion = "4.03"; src = fetchurl { @@ -14,7 +16,7 @@ buildDunePackage rec { nativeBuildInputs = [ menhir ]; propagatedBuildInputs = [ fmt re ]; - checkInputs = lib.optional doCheck alcotest; + checkInputs = [ alcotest ]; doCheck = true; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix index b98fd3b627..2e91bda61d 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/default.nix @@ -6,6 +6,8 @@ buildDunePackage rec { pname = "mirage-time"; version = "2.0.1"; + useDune2 = true; + src = fetchurl { url = "https://github.com/mirage/mirage-time/releases/download/v${version}/mirage-time-v${version}.tbz"; sha256 = "1w6mm4g7fc19cs0ncs0s9fsnb1k1s04qqzs9bsqvq8ngsb90cbh0"; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/unix.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/unix.nix index da5326bc07..c19ca30fe0 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/unix.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/mirage-time/unix.nix @@ -3,7 +3,7 @@ buildDunePackage { pname = "mirage-time-unix"; - inherit (mirage-time) src version minimumOCamlVersion; + inherit (mirage-time) src useDune2 version minimumOCamlVersion; propagatedBuildInputs = [ mirage-time ocaml_lwt duration ]; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/bson.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/bson.nix index 350c31a381..f95a25d25f 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/bson.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/bson.nix @@ -2,7 +2,7 @@ buildDunePackage { pname = "ocplib-json-typed-bson"; - inherit (ocplib-json-typed) version src; + inherit (ocplib-json-typed) version useDune2 src; propagatedBuildInputs = [ ocplib-json-typed ocplib-endian ]; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/default.nix index 6a1b906d7f..6a3de6292d 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/ocplib-json-typed/default.nix @@ -3,6 +3,7 @@ buildDunePackage rec { pname = "ocplib-json-typed"; version = "0.7.1"; + useDune2 = true; src = fetchFromGitHub { owner = "OCamlPro"; repo = "ocplib-json-typed"; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix index 8dde7ba56f..fad5917a5a 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/odoc/default.nix @@ -1,24 +1,30 @@ -{ lib, fetchFromGitHub, buildDunePackage +{ lib, fetchurl, buildDunePackage, ocaml , astring, cmdliner, cppo, fpath, result, tyxml +, markup, alcotest, yojson, sexplib, jq }: buildDunePackage rec { pname = "odoc"; - version = "1.5.1"; + version = "1.5.2"; - src = fetchFromGitHub { - owner = "ocaml"; - repo = pname; - rev = version; - sha256 = "0z2nisg1vb5xlk41hqw8drvj90v52wli7zvnih6a844cg6xsvvj2"; + minimumOCamlVersion = "4.02"; + + src = fetchurl { + url = "https://github.com/ocaml/odoc/releases/download/${version}/odoc-${version}.tbz"; + sha256 = "0wa87h8q6izcc6rkzqn944vrb3hmc21lf0d0rmr8rhhbcvr66i6j"; }; + useDune2 = true; + buildInputs = [ astring cmdliner cppo fpath result tyxml ]; + checkInputs = [ alcotest markup yojson sexplib jq ]; + doCheck = lib.versionAtLeast ocaml.version "4.05"; + meta = { description = "A documentation generator for OCaml"; license = lib.licenses.isc; maintainers = [ lib.maintainers.vbgl ]; - inherit (src.meta) homepage; + homepage = "https://github.com/ocaml/odoc"; }; } diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix index 5aa3ecb0bf..2ee01ed821 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/tls/default.nix @@ -6,12 +6,12 @@ buildDunePackage rec { minimumOCamlVersion = "4.08"; - version = "0.12.7"; + version = "0.12.8"; pname = "tls"; src = fetchurl { url = "https://github.com/mirleft/ocaml-tls/releases/download/v${version}/tls-v${version}.tbz"; - sha256 = "1c7hmcpcxn1bfa9cavqzriv7py2q7xfbdpb7kh1kb3j1qjap17dc"; + sha256 = "0sgppvfnamfnsglw1cl801i1xqkxbs33g40kwmmqj2vqjcarm26a"; }; useDune2 = true; diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix index 6a7c03b9bb..7933b3bd8d 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/default.nix @@ -1,19 +1,21 @@ { lib, fetchurl, buildDunePackage, ounit -, re, stringext +, angstrom, stringext }: buildDunePackage rec { minimumOCamlVersion = "4.03"; pname = "uri"; - version = "3.1.0"; + version = "4.0.0"; + + useDune2 = true; src = fetchurl { url = "https://github.com/mirage/ocaml-${pname}/releases/download/v${version}/${pname}-v${version}.tbz"; - sha256 = "0hxc2mshmqxz2qmjya47dzf858s6lsf3xvqswpzprkvhv0zq4ln4"; + sha256 = "13r9nkgym9z3dqxkyf0yyaqlrk5r3pjdw0kfzvrc90bmhwl9j380"; }; - buildInputs = [ ounit ]; - propagatedBuildInputs = [ re stringext ]; + checkInputs = [ ounit ]; + propagatedBuildInputs = [ angstrom stringext ]; doCheck = true; meta = { diff --git a/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/sexp.nix b/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/sexp.nix index c6f979e5a3..83be70c364 100644 --- a/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/sexp.nix +++ b/third_party/nixpkgs/pkgs/development/ocaml-modules/uri/sexp.nix @@ -6,8 +6,9 @@ else buildDunePackage { pname = "uri-sexp"; - inherit (uri) version src doCheck meta; + inherit (uri) version useDune2 src meta; - buildInputs = [ ounit ]; + checkInputs = [ ounit ]; propagatedBuildInputs = [ ppx_sexp_conv sexplib0 uri ]; + doCheck = lib.versionAtLeast ocaml.version "4.08"; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/alerta/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/alerta/default.nix index 579f017872..71463efb91 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/alerta/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/alerta/default.nix @@ -4,11 +4,11 @@ buildPythonPackage rec { pname = "alerta"; - version = "8.0.0"; + version = "8.2.0"; src = fetchPypi { inherit pname version; - sha256 = "49e0862c756d644e9349f5040dd59d135cd871ffeaea5fc288eb3a2e818cf61a"; + sha256 = "a689b2551655ffeb1fa0af2b652653c9355e4f612a3cb8265fcb53c47f83f7c0"; }; propagatedBuildInputs = [ six click requests requests-hawk pytz tabulate ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix index e5222b64e9..97e79e4e8e 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/aniso8601/default.nix @@ -3,7 +3,7 @@ buildPythonPackage rec { pname = "aniso8601"; - version = "8.0.0"; + version = "8.1.0"; meta = with stdenv.lib; { description = "Parses ISO 8601 strings."; @@ -17,6 +17,6 @@ buildPythonPackage rec { src = fetchPypi { inherit pname version; - sha256 = "529dcb1f5f26ee0df6c0a1ee84b7b27197c3c50fc3a6321d66c544689237d072"; + sha256 = "246bf8d3611527030889e6df970878969d3a2f760ba3eb694fa1fb10e6ce53f9"; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/avro-python3/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/avro-python3/default.nix index 332bcf4d4d..3e9a0e492d 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/avro-python3/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/avro-python3/default.nix @@ -2,12 +2,12 @@ buildPythonPackage rec { pname = "avro-python3"; - version = "1.10.0"; + version = "1.10.1"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "a455c215540b1fceb1823e2a918e94959b54cb363307c97869aa46b5b55bde05"; + sha256 = "9027abeab63dd9b66bd3c564fa0670c70f78027ecb1978d96c6af7ed415b626b"; }; buildInputs = [ pycodestyle isort ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/azure-batch/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/azure-batch/default.nix index 906461252d..942ae218fd 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/azure-batch/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/azure-batch/default.nix @@ -8,12 +8,12 @@ buildPythonPackage rec { pname = "azure-batch"; - version = "9.0.0"; + version = "10.0.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "112d73gxjqng348mcvi36ska6pxyg8qc3qswvhf5x4a0lr86zjj7"; + sha256 = "83d7a2b0be42ca456ac2b56fa3dc6ce704c130e888d37d924072c1d3718f32d0"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix index 46bd196a3d..bbdc06d52d 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/azure-keyvault-keys/default.nix @@ -10,13 +10,13 @@ buildPythonPackage rec { pname = "azure-keyvault-keys"; - version = "4.3.0"; + version = "4.3.1"; disabled = isPy27; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "064a98791fe447a0e57850bb5ec1ec43e7d5fd39266319b5acc44a9704a3b966"; + sha256 = "fbf67bca913ebf68b9075ee9d2e2b899dc3c7892cc40abfe1b08220a382f6ed9"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix index 172e33d08c..41d0387da2 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-cdn/default.nix @@ -10,12 +10,12 @@ buildPythonPackage rec { pname = "azure-mgmt-cdn"; - version = "5.1.0"; + version = "5.2.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "5af79f80e6c5f4766bcb5b8c62273445fb2beaeae85c5b9d2ab9aa369d60ede3"; + sha256 = "3e470ba07918a4f97dadb6f50c6f64068da423b735fad38d31d9535c56f06881"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix index da1ec78a8c..95bcd9dbc4 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-network/default.nix @@ -10,14 +10,14 @@ }: buildPythonPackage rec { - version = "16.0.0"; + version = "17.0.0"; pname = "azure-mgmt-network"; disabled = !isPy3k; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "6159a8c44590cc58841690c27c7d4acb0cd9ad0a1e5178c1d35e0f48e3c3c0e9"; + sha256 = "3694f2675e152afccb1588a6cc7bb4b4795d442a4e5d7082cdf1f4e32a779199"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix index ed40cb69c7..8a06199105 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/azure-mgmt-recoveryservicesbackup/default.nix @@ -9,12 +9,12 @@ buildPythonPackage rec { pname = "azure-mgmt-recoveryservicesbackup"; - version = "0.8.0"; + version = "0.9.0"; src = fetchPypi { inherit pname version; extension = "zip"; - sha256 = "a0ee89691b21945cc4b892a9194320f50c1cd242d98f00a82d7e3848c28517a5"; + sha256 = "6b902eb7b9ccdf612e0a1738f42096f591dbf9c19d20b6d398a6361db278d4a7"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/bandit/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/bandit/default.nix index 64ef8ec53f..20dcbbc21a 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/bandit/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/bandit/default.nix @@ -13,12 +13,12 @@ buildPythonPackage rec { pname = "bandit"; - version = "1.6.2"; + version = "1.6.3"; disabled = !isPy3k; src = fetchPypi { inherit pname version; - sha256 = "0rb034c99pyhb4a60z7f2kz40cjydhm8m9v2blaal1rmhlam7rs1"; + sha256 = "d02dfe250f4aa2d166c127ad81d192579e2bfcdb8501717c0e2005e35a6bcf60"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/boto3/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/boto3/default.nix index 889d829bee..1688882e57 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/boto3/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/boto3/default.nix @@ -13,11 +13,11 @@ buildPythonPackage rec { pname = "boto3"; - version = "1.16.25"; # N.B: if you change this, change botocore too + version = "1.16.31"; # N.B: if you change this, change botocore too src = fetchPypi { inherit pname version; - sha256 = "05qxcfis4rnkjxh8wyks3gcpg14cshpd2rrhb1adxd0hpq5aprhk"; + sha256 = "0c9q7njargrhxcl99mdc7xbb29imp8kpyg3d0vwq2crlzxln8y49"; }; propagatedBuildInputs = [ botocore jmespath s3transfer ] ++ lib.optionals (!isPy3k) [ futures ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/botocore/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/botocore/default.nix index 35d8113e83..add0f54e29 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/botocore/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/botocore/default.nix @@ -12,11 +12,11 @@ buildPythonPackage rec { pname = "botocore"; - version = "1.19.25"; # N.B: if you change this, change boto3 and awscli to a matching version + version = "1.19.31"; # N.B: if you change this, change boto3 and awscli to a matching version src = fetchPypi { inherit pname version; - sha256 = "15hd5f2ars1hd3y2gh846fd0ydcgyjmkvncr6rdn4whbb5wkkbyc"; + sha256 = "0z8pmkr7j2w90qpd25wv0j1z4kqx90j6ch8c8irlyj84wx61skk2"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/breathe/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/breathe/default.nix index 1ebc230f61..729b9f9f24 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/breathe/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/breathe/default.nix @@ -1,13 +1,13 @@ { lib, fetchPypi, buildPythonPackage, docutils, six, sphinx, isPy3k, isPy27 }: buildPythonPackage rec { - version = "4.24.0"; + version = "4.24.1"; pname = "breathe"; disabled = isPy27; src = fetchPypi { inherit pname version; - sha256 = "cd959f259361473896857d5720386963800f8401d29b696705ebb01711d96e35"; + sha256 = "d8e47ba4b975f3228a13daf481762f784f87d1e6e87a01619360d59e558d2fc0"; }; propagatedBuildInputs = [ docutils six sphinx ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/breezy/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/breezy/default.nix index 55fb8deb5f..21d0b6d9f3 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/breezy/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/breezy/default.nix @@ -2,6 +2,7 @@ , buildPythonPackage , fetchPypi , configobj +, patiencediff , six , fastimport , dulwich @@ -18,7 +19,7 @@ buildPythonPackage rec { sha256 = "1eff207403f48898fa3b3ffa7a4275197c6c58fec105ef267caf1f5fd5a6c7be"; }; - propagatedBuildInputs = [ configobj six fastimport dulwich launchpadlib ]; + propagatedBuildInputs = [ configobj patiencediff six fastimport dulwich launchpadlib ]; checkInputs = [ testtools ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/bugsnag/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/bugsnag/default.nix index a2c41599b3..603e6f42e4 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/bugsnag/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/bugsnag/default.nix @@ -8,12 +8,12 @@ buildPythonPackage rec { pname = "bugsnag"; - version = "4.0.1"; + version = "4.0.2"; disabled = pythonOlder "3.5"; src = fetchPypi { inherit pname version; - sha256 = "01c2186f6c2a6f801b66d8fc73b8986bd2d4931a6ab40b720e5fd0b66757facc"; + sha256 = "7a49dacf055a8c6dda4ce714acd91fabe9546f1ad826276918a26603a8b5489a"; }; propagatedBuildInputs = [ six webob ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/celery/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/celery/default.nix index 11dfd294f5..3ba06c92a5 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/celery/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/celery/default.nix @@ -1,5 +1,6 @@ -{ lib, buildPythonPackage, fetchPypi, libredirect -, case, pytest, boto3, moto, kombu, billiard, pytz, future, vine +{ lib, buildPythonPackage, fetchPypi +, billiard, click, click-didyoumean, click-repl, kombu, pytz, vine +, boto3, case, moto, pytest, pytest-celery, pytest-subtests, pytest-timeout }: buildPythonPackage rec { @@ -12,13 +13,14 @@ buildPythonPackage rec { }; postPatch = '' - substituteInPlace requirements/default.txt \ - --replace "kombu>=4.6.10,<4.7" "kombu" substituteInPlace requirements/test.txt \ - --replace "moto==1.3.7" moto \ - --replace "pytest>=4.3.1,<4.4.0" pytest + --replace "moto==1.3.7" moto ''; + propagatedBuildInputs = [ billiard click click-didyoumean click-repl kombu pytz vine ]; + + checkInputs = [ boto3 case moto pytest pytest-celery pytest-subtests pytest-timeout ]; + # ignore test that's incompatible with pytest5 # test_eventlet touches network # test_mongodb requires pymongo @@ -32,9 +34,6 @@ buildPythonPackage rec { --ignore=t/unit/backends/test_mongodb.py ''; - checkInputs = [ case pytest boto3 moto ]; - propagatedBuildInputs = [ kombu billiard pytz future vine ]; - meta = with lib; { homepage = "https://github.com/celery/celery/"; description = "Distributed task queue"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/chalice/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/chalice/default.nix index 7eb06e2645..a28acadbd7 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/chalice/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/chalice/default.nix @@ -52,10 +52,8 @@ buildPythonPackage rec { postPatch = '' sed -i setup.py -e "/pip>=/c\'pip'," substituteInPlace setup.py \ - --replace 'pip>=9,<=19.4' 'pip' \ --replace 'typing==3.6.4' 'typing' \ - --replace 'attrs==17.4.0' 'attrs' \ - --replace 'click>=6.6,<7.0' 'click' + --replace 'attrs>=19.3.0,<20.3.0' 'attrs' ''; checkPhase = '' diff --git a/third_party/nixpkgs/pkgs/development/python-modules/click-help-colors/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/click-help-colors/default.nix index ac1cab90d0..e66f23d09b 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/click-help-colors/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/click-help-colors/default.nix @@ -4,11 +4,11 @@ buildPythonPackage rec { pname = "click-help-colors"; - version = "0.8"; + version = "0.9"; src = fetchPypi { inherit pname version; - sha256 = "EZ5fr2nPyRnJlcWWIyasj9h/EeVqNxr1lOPf2EWPTG4="; + sha256 = "eb037a2dd95a9e20b3897c2b3ca57e7f6797f76a8d93f7eeedda7fcdcbc9b635"; }; propagatedBuildInputs = [ click ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/cocotb/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/cocotb/default.nix index 300376b8a6..9e6ebbe260 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/cocotb/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/cocotb/default.nix @@ -2,13 +2,13 @@ buildPythonPackage rec { pname = "cocotb"; - version = "1.3.2"; + version = "1.4.0"; src = fetchFromGitHub { owner = pname; repo = pname; rev = "v${version}"; - sha256 = "0akkxcj11543c0jn4zdw4a668lk0xg7pghs8mch3xjk8nn8wfblc"; + sha256 = "0fv0mg8zh40ffq0q39s195y6hvjrzihpx0i3f7ba5881syw3x7p4"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/csvs-to-sqlite/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/csvs-to-sqlite/default.nix index 19d0fa4f7b..4105d98138 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/csvs-to-sqlite/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/csvs-to-sqlite/default.nix @@ -13,14 +13,14 @@ buildPythonPackage rec { pname = "csvs-to-sqlite"; - version = "1.1"; + version = "1.2"; disabled = !isPy3k; src = fetchFromGitHub { owner = "simonw"; repo = pname; rev = version; - sha256 = "1xi9d8l1sf9vixzvqpz8lvhl6yqmz9x5659nvpsxinl317qzmc8m"; + sha256 = "0p99cg76d3s7jxvigh5ad04dzhmr6g62qzzh4i6h7x9aiyvdhvk4"; }; postPatch = '' diff --git a/third_party/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix index 31616f015f..8961d82341 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/dependency-injector/default.nix @@ -9,11 +9,11 @@ in buildPythonPackage rec { pname = "dependency-injector"; - version = "4.5.1"; + version = "4.5.3"; src = fetchPypi { inherit pname version; - sha256 = "1d5d42a3547a8a8d3b7aa8f4325e5042231bbc86718c89e123c0c62c103cd9d5"; + sha256 = "345bfa4185802a712e27903b5612d4748a1e2483c3d5da8d840d8a401aeb75ea"; }; propagatedBuildInputs = [ six ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/etebase/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/etebase/default.nix new file mode 100644 index 0000000000..366c447ed9 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/etebase/default.nix @@ -0,0 +1,61 @@ +{ stdenv +, wheel +, rustPlatform +, pipInstallHook +, setuptools-rust +, python +, msgpack +, requests +, openssl +, perl +, rustfmt +, fetchFromGitHub +, Security +}: + +rustPlatform.buildRustPackage rec { + pname = "etebase"; + version = "0.31.1"; + + src = fetchFromGitHub { + owner = "etesync"; + repo = "etebase-py"; + rev = "v${version}"; + sha256 = "163iw64l8lwawf84qswcjsq9p8qddv9ysjrr3dzqpqxb2yb0sy39"; + }; + + cargoSha256 = "0w8ypl6kj1mf6ahbdiwbd4jw6ldxdaig47zwk91jjsww5lbyx4lf"; + + nativeBuildInputs = [ + rustfmt + perl + openssl + pipInstallHook + setuptools-rust + wheel + ]; + + buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ]; + + propagatedBuildInputs = [ + python + msgpack + ]; + + doCheck = true; + + buildPhase = '' + ${python.interpreter} setup.py bdist_wheel + ''; + + installPhase = '' + pipInstallPhase + ''; + + meta = with stdenv.lib; { + homepage = "https://www.etebase.com/"; + description = "A Python client library for Etebase"; + license = licenses.bsd3; + maintainers = with maintainers; [ _3699n ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/feedparser/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/feedparser/default.nix index 55ed8d7f6e..aeeb9b3e49 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/feedparser/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/feedparser/default.nix @@ -1,19 +1,25 @@ { stdenv , buildPythonPackage , fetchPypi +, isPy27 +, sgmllib3k }: buildPythonPackage rec { pname = "feedparser"; version = "6.0.2"; + disabled = isPy27; src = fetchPypi { inherit pname version; sha256 = "1b00a105425f492f3954fd346e5b524ca9cef3a4bbf95b8809470e9857aa1074"; }; - # lots of networking failures - doCheck = false; + propagatedBuildInputs = [ sgmllib3k ]; + + checkPhase = '' + python -Wd tests/runtests.py + ''; meta = with stdenv.lib; { homepage = "https://github.com/kurtmckee/feedparser"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix index 5119d3c39a..60dc18a987 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/flask-appbuilder/default.nix @@ -67,7 +67,8 @@ buildPythonPackage rec { --replace "PyJWT>=1.7.1" "PyJWT" \ --replace "Flask-SQLAlchemy>=2.4, <3" "Flask-SQLAlchemy" \ --replace "Flask-JWT-Extended>=3.18, <4" "Flask-JWT-Extended" \ - --replace "Flask-Login>=0.3, <0.5" "Flask-Login" + --replace "Flask-Login>=0.3, <0.5" "Flask-Login" \ + --replace "Flask-Babel>=1, <2" "Flask-Babel" ''; # majority of tests require network access or mongo diff --git a/third_party/nixpkgs/pkgs/development/python-modules/flask-socketio/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/flask-socketio/default.nix index b7bd0fe7f3..80f6edb79d 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/flask-socketio/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/flask-socketio/default.nix @@ -8,11 +8,11 @@ buildPythonPackage rec { pname = "Flask-SocketIO"; - version = "4.3.1"; + version = "4.3.2"; src = fetchPypi { inherit pname version; - sha256 = "36c1d5765010d1f4e4f05b4cc9c20c289d9dc70698c88d1addd0afcfedc5b062"; + sha256 = "37001b3507f2fa5d1c8d9c8e211dd88da6c5286ff0ebce16f27cb1b467d25d68"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/flufl/i18n.nix b/third_party/nixpkgs/pkgs/development/python-modules/flufl/i18n.nix index 6e8d77bf4f..b980449661 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/flufl/i18n.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/flufl/i18n.nix @@ -2,12 +2,16 @@ buildPythonPackage rec { pname = "flufl.i18n"; - version = "2.0.2"; + version = "3.1.3"; propagatedBuildInputs = [ atpublic ]; + doCheck = false; + + pythonImportsCheck = [ "flufl.i18n" ]; + src = fetchPypi { inherit pname version; - sha256 = "1csgds59nx0ann9v2alqr69lakp1cnc1ikmbgn96l6n23js7c2ah"; + sha256 = "dcca738be27f2c43ddf6f9307667a17478353190071f38a9f92c9af8d2252ba4"; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/fs/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/fs/default.nix index 77aee7a3bd..1f784a06e2 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/fs/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/fs/default.nix @@ -47,6 +47,10 @@ buildPythonPackage rec { "user_data_repr" ] ++ lib.optionals (stdenv.isDarwin) [ # remove if https://github.com/PyFilesystem/pyfilesystem2/issues/430#issue-707878112 resolved "test_ftpfs" + ] ++ lib.optionals (pythonAtLeast "3.9") [ + # update friend version of this commit: https://github.com/PyFilesystem/pyfilesystem2/commit/3e02968ce7da7099dd19167815c5628293e00040 + # merged into master, able to be removed after >2.4.1 + "test_copy_sendfile" ]; __darwinAllowLocalNetworking = true; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_pubsub/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_pubsub/default.nix index 4af622dc66..b7b810370f 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_pubsub/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_pubsub/default.nix @@ -4,11 +4,11 @@ buildPythonPackage rec { pname = "google-cloud-pubsub"; - version = "2.1.0"; + version = "2.2.0"; src = fetchPypi { inherit pname version; - sha256 = "0358g5q4igq1pgy8dznbbkc6y7zf36y4m81hhh8hvzzhaa37vc22"; + sha256 = "bc50a60803f5c409a295ec0e31cdd4acc271611ce3f4963a072036bbfa5ccde5"; }; disabled = pythonOlder "3.6"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_secret_manager/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_secret_manager/default.nix index df3ec14c4d..c744701c77 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_secret_manager/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/google_cloud_secret_manager/default.nix @@ -5,11 +5,11 @@ buildPythonPackage rec { pname = "google-cloud-secret-manager"; - version = "2.0.0"; + version = "2.1.0"; src = fetchPypi { inherit pname version; - sha256 = "c2b0c93b559c3b6eb2dc75f7ab33d49fad8fe954f6094ac2b14323ce053058f0"; + sha256 = "2f08b49164aca8623b2e4ee07352980b3ffca909ce205c03568e203bbc455c30"; }; propagatedBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix index d19d05276e..c092da7358 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/gtimelog/default.nix @@ -54,7 +54,7 @@ buildPythonPackage rec { ''; homepage = "https://gtimelog.org/"; license = licenses.gpl2Plus; - maintainers = with maintainers; [ ocharles oxzi ]; + maintainers = with maintainers; [ oxzi ]; platforms = platforms.unix; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/h5netcdf/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/h5netcdf/default.nix index 316c5bc4d4..23a8c4ddcb 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/h5netcdf/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/h5netcdf/default.nix @@ -1,6 +1,7 @@ { lib , buildPythonPackage , fetchPypi +, fetchpatch , h5py , pytestCheckHook , netcdf4 @@ -16,6 +17,13 @@ buildPythonPackage rec { sha256 = "09bbnpsvwksb07wijn7flyyza56h5b2g2cw0hb3slmwxz6cgcjmr"; }; + patches = [ + (fetchpatch{ + url = "https://patch-diff.githubusercontent.com/raw/h5netcdf/h5netcdf/pull/82.patch"; + sha256 = "0x9bq9jl4kvw152adkpcyqslhpi7miv80hrnpl2w2y798mmbs0s4"; + }) + ]; + propagatedBuildInputs = [ h5py ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/hjson/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/hjson/default.nix index 6a86a2000d..13dce54b9c 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/hjson/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/hjson/default.nix @@ -1,6 +1,8 @@ { stdenv , buildPythonPackage , fetchFromGitHub +, pythonImportsCheckHook +, makeWrapper }: buildPythonPackage rec { @@ -15,6 +17,15 @@ buildPythonPackage rec { sha256 = "1jc7j790rcqnhbrfj4lhnz3f6768dc55aij840wmx16jylfqpc2n"; }; + nativeBuildInputs = [ makeWrapper pythonImportsCheckHook ]; + + pythonImportsCheck = [ "hjson" ]; + + postInstall = '' + rm $out/bin/hjson.cmd + wrapProgram $out/bin/hjson --set PYTHONPATH "$PYTHONPATH" + ''; + meta = with stdenv.lib; { description = "A user interface for JSON"; homepage = "https://github.com/hjson/hjson-py"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix new file mode 100644 index 0000000000..9042498664 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/jsonstreams/default.nix @@ -0,0 +1,25 @@ +{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, six, }: + +buildPythonPackage rec { + pname = "jsonstreams"; + version = "0.5.0"; + + src = fetchFromGitHub { + owner = "dcbaker"; + repo = pname; + rev = version; + sha256 = "0c85fdqkj5k4b0v0ngx2d9qbmzdsvglh4j9k9h7508bvn7l8fa4b"; + }; + + propagatedBuildInputs = [ six ]; + + checkInputs = [ pytestCheckHook ]; + pytestFlagsArray = [ "tests --doctest-modules jsonstreams" ]; + + meta = with lib; { + description = "A JSON streaming writer"; + homepage = "https://github.com/dcbaker/jsonstreams"; + license = licenses.mit; + maintainers = with maintainers; [ chkno ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/jupytext/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/jupytext/default.nix index 6f4c188c2f..ba627449c1 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/jupytext/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/jupytext/default.nix @@ -1,5 +1,5 @@ { lib, buildPythonPackage, fetchPypi, isPy27 -, mock +, markdown-it-py , nbformat , pytest , pyyaml @@ -10,16 +10,19 @@ buildPythonPackage rec { pname = "jupytext"; version = "1.7.1"; + disabled = isPy27; + src = fetchPypi { inherit pname version; sha256 = "23123b90c267c67716fe6a022dfae49b84fd3809370d83211f2920eb3106bf40"; }; propagatedBuildInputs = [ - pyyaml + markdown-it-py nbformat + pyyaml toml - ] ++ lib.optionals isPy27 [ mock ]; # why they put it in install_requires, who knows + ]; checkInputs = [ pytest diff --git a/third_party/nixpkgs/pkgs/development/python-modules/kaggle/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/kaggle/default.nix index 15fecba258..8ff1296373 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/kaggle/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/kaggle/default.nix @@ -12,11 +12,11 @@ buildPythonPackage rec { pname = "kaggle"; - version = "1.5.9"; + version = "1.5.10"; src = fetchPypi { inherit pname version; - sha256 = "444aeecfb646dbb889c767ee2ab071f63fe3a2b85f72f08f2bd772353d3e3b93"; + sha256 = "05a2a3d4adeebc8a465d037999ba8db2cb471a24b41d623d4bcb80aac02ddbc9"; }; # The version bounds in the setup.py file are unnecessarily restrictive. diff --git a/third_party/nixpkgs/pkgs/development/python-modules/ledgerwallet/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/ledgerwallet/default.nix new file mode 100644 index 0000000000..e25e9d5d2a --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/ledgerwallet/default.nix @@ -0,0 +1,41 @@ +{ stdenv +, fetchFromGitHub +, buildPythonPackage +, cryptography +, click +, construct +, ecdsa +, hidapi +, intelhex +, pillow +, protobuf +, requests +, tabulate +, AppKit +}: + +buildPythonPackage rec { + pname = "ledgerwallet"; + version = "0.1.2"; + + src = fetchFromGitHub { + owner = "LedgerHQ"; + repo = "ledgerctl"; + rev = "v${version}"; + sha256 = "0fb93h2wxm9as9rsywlgz2ng4wrlbjphn6mgbhj6nls2i86rrdxk"; + }; + + buildInputs = stdenv.lib.optionals stdenv.isDarwin [ AppKit ]; + propagatedBuildInputs = [ + cryptography click construct ecdsa hidapi intelhex pillow protobuf requests tabulate + ]; + + pythonImportsCheck = [ "ledgerwallet" ]; + + meta = with stdenv.lib; { + homepage = "https://github.com/LedgerHQ/ledgerctl"; + description = "A library to control Ledger devices"; + license = licenses.mit; + maintainers = with maintainers; [ xwvvvvwx ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/llfuse/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/llfuse/default.nix index 1fa97d2949..ac9360cb02 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/llfuse/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/llfuse/default.nix @@ -1,4 +1,4 @@ -{ stdenv, fetchurl, fetchpatch, buildPythonPackage, pkgconfig, pytest, fuse, attr, which +{ stdenv, fetchPypi, fetchpatch, buildPythonPackage, pkgconfig, pytest, fuse, attr, which , contextlib2, osxfuse }: @@ -8,22 +8,18 @@ in buildPythonPackage rec { pname = "llfuse"; - version = "1.3.6"; + version = "1.3.8"; - src = fetchurl { - url = "mirror://pypi/l/llfuse/${pname}-${version}.tar.bz2"; - sha256 = "1j9fzxpgmb4rxxyl9jcf84zvznhgi3hnh4hg5vb0qaslxkvng8ii"; + src = fetchPypi { + inherit pname version; + sha256 = "1g2cdhdqrb6m7655qp61pn61pwj1ql61cdzhr2jvl3w4i8877ddr"; }; patches = [ - # https://github.com/python-llfuse/python-llfuse/pull/23 (2 commits) + # fix tests with pytest 6 (fetchpatch { - url = "https://github.com/python-llfuse/python-llfuse/commit/7579b0e626da1a7882b13caedcdbd4a834702e94.diff"; - sha256 = "0vpybj4k222h20lyn0q7hz86ziqlapqs5701cknw8d11jakbhhb0"; - }) - (fetchpatch { - url = "https://github.com/python-llfuse/python-llfuse/commit/438c00ab9e10d6c485bb054211c01b7f8524a736.diff"; - sha256 = "1zhb05b7k3c9mjqshy9in8yzpbihy7f33x1myq5kdjip1k50cwrn"; + url = "https://github.com/python-llfuse/python-llfuse/commit/1ed8b280d2544eedf8bf209761bef0d2519edd17.diff"; + sha256 = "0wailfrr1i0n2m9ylwpr00jh79s7z3l36w7x19jx1x4djcz2hdps"; }) ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix new file mode 100644 index 0000000000..2d915762fc --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/markdown-it-py/default.nix @@ -0,0 +1,47 @@ +{ lib, buildPythonPackage, fetchFromGitHub, pytestCheckHook, pythonOlder +, attrs +, coverage +, psutil +, pytest-benchmark +}: + +buildPythonPackage rec { + pname = "markdown-it-py"; + version = "0.5.6"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "executablebooks"; + repo = "markdown-it-py"; + rev = "v${version}"; + sha256 = "1m9g8xvd7jiz80x9hl8bw9x0ppndqq5nlcn5y8bjxnfj5s31vpbi"; + }; + + propagatedBuildInputs = [ attrs ]; + + checkInputs = [ + coverage + pytest-benchmark + psutil + pytestCheckHook + ]; + + disabledTests = [ + # Requires the unpackaged pytest-regressions fixture plugin + "test_amsmath" + "test_container" + "test_deflist" + "test_dollarmath" + "test_spec" + "test_texmath" + ]; + + meta = with lib; { + description = "Markdown parser done right"; + homepage = "https://markdown-it-py.readthedocs.io/en/latest"; + changelog = "https://github.com/executablebooks/markdown-it-py/blob/${src.rev}/CHANGELOG.md"; + license = licenses.mit; + maintainers = with maintainers; [ bhipple ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/mne-python/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/mne-python/default.nix new file mode 100644 index 0000000000..84babe1718 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/mne-python/default.nix @@ -0,0 +1,59 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, isPy27 +, numpy +, scipy +, pytestCheckHook +, pytestcov +, pytest-timeout +, h5py +, matplotlib +, nibabel +, pandas +, scikitlearn +}: + +buildPythonPackage rec { + pname = "mne-python"; + version = "0.21.2"; + + disabled = isPy27; + + # PyPI dist insufficient to run tests + src = fetchFromGitHub { + owner = "mne-tools"; + repo = pname; + rev = "v${version}"; + sha256 = "18nfdbkffmxzkkbp3d4w8r2kfi0sxip3hy997d3mx6dy74jc7nmg"; + }; + + propagatedBuildInputs = [ numpy scipy ]; + + # all tests pass, but Pytest hangs afterwards - probably some thread hasn't terminated + doCheck = false; + checkInputs = [ + pytestCheckHook + pytestcov + pytest-timeout + h5py + matplotlib + nibabel + pandas + scikitlearn + ]; + preCheck = '' + export HOME=$TMP + export MNE_SKIP_TESTING_DATASET_TESTS=true + export MNE_SKIP_NETWORK_TESTS=1 + ''; + + pythonImportsCheck = [ "mne" ]; + + meta = with lib; { + homepage = "https://mne.tools"; + description = "Magnetoencephelography and electroencephalography in Python"; + license = licenses.bsd3; + maintainers = with maintainers; [ bcdarwin ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix index 874ca53d34..432603d620 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/netcdf4/default.nix @@ -3,13 +3,13 @@ }: buildPythonPackage rec { pname = "netCDF4"; - version = "1.5.4"; + version = "1.5.5"; disabled = isPyPy; src = fetchPypi { inherit pname version; - sha256 = "941de6f3623b6474ecb4d043be5990690f7af4cf0d593b31be912627fe5aad03"; + sha256 = "910b0c9d1ca7bef9c5796c45e2f5f30b91df70997ac655c51a58073eff2634f9"; }; checkInputs = [ pytest ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix index d7f203aa4d..d4817480e5 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/nix-prefetch-github/default.nix @@ -1,41 +1,38 @@ -{ fetchPypi +{ fetchFromGitHub , lib , buildPythonPackage -, pythonOlder , attrs , click , effect -, jinja2 , git , pytestCheckHook , pytestcov -, pytest-isort +, pythonOlder }: buildPythonPackage rec { pname = "nix-prefetch-github"; - version = "4.0.2"; + version = "4.0.3"; - src = fetchPypi { - inherit pname version; - sha256 = "ZdaWIkpJk8AvTZmA76VMTXeOUTrWLe+W3vh/e0zwWB4="; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "seppeljordan"; + repo = "nix-prefetch-github"; + rev = "v${version}"; + sha256 = "CLcmwobPrL6NiI/nw+/Dwho/r15owV16Jmt5OcfFqvo="; }; propagatedBuildInputs = [ attrs click effect - jinja2 ]; - checkInputs = [ pytestCheckHook pytestcov pytest-isort git ]; - checkPhase = '' - pytest -m 'not network' - ''; + checkInputs = [ pytestCheckHook pytestcov git ]; - # latest version of isort will cause tests to fail # ignore tests which are impure - disabledTests = [ "isort" "life" "outputs" "fetch_submodules" ]; + disabledTests = [ "network" "requires_nix_build" ]; meta = with lib; { description = "Prefetch sources from github"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix index e7b61b70fa..2394e32403 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/oauthenticator/default.nix @@ -16,11 +16,11 @@ buildPythonPackage rec { pname = "oauthenticator"; - version = "0.12.2"; + version = "0.12.3"; src = fetchPypi { inherit pname version; - sha256 = "a4e8d8c528b0386340fc59ba98118a2aeb668a3741288b7ac15fd35124a91813"; + sha256 = "f86e18e954ae37796ee149fe01ab0be0707d9e0415d62336ba3447e7b4383461"; }; checkPhase = '' diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pandas/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pandas/default.nix index 9d2d32d428..46348deca8 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pandas/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pandas/default.nix @@ -33,11 +33,11 @@ let in buildPythonPackage rec { pname = "pandas"; - version = "1.1.4"; + version = "1.1.5"; src = fetchPypi { inherit pname version; - sha256 = "a979d0404b135c63954dea79e6246c45dd45371a88631cdbb4877d844e6de3b6"; + sha256 = "06vhk75hmzgv1sfbjzgnsw9x10h7y6bd6s6z7d6lfnn7wcgc83zi"; }; nativeBuildInputs = [ cython ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/patiencediff/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/patiencediff/default.nix new file mode 100644 index 0000000000..921fbe4c43 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/patiencediff/default.nix @@ -0,0 +1,18 @@ +{ lib, buildPythonPackage, fetchPypi }: + +buildPythonPackage rec { + pname = "patiencediff"; + version = "0.2.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "0nm2242xgg59l06m54rzxp41aly3lxjh0a1s7h6dk7ryxjh002lv"; + }; + + meta = with lib; { + description = "C implementation of patiencediff algorithm for Python"; + homepage = "https://github.com/breezy-team/patiencediff"; + license = licenses.gpl2Plus; + maintainers = [ maintainers.wildsebastian ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/poetry/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/poetry/default.nix index bad38ea582..1519187d17 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/poetry/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/poetry/default.nix @@ -88,6 +88,16 @@ buildPythonPackage rec { "test_builder_should_execute_build_scripts" ]; + patches = [ + # The following patch addresses a minor incompatibility with + # pytest-mock. This is addressed upstream in + # https://github.com/python-poetry/poetry/pull/3457 + (fetchpatch { + url = "https://github.com/python-poetry/poetry/commit/8ddceb7c52b3b1f35412479707fa790e5d60e691.diff"; + sha256 = "yHjFb9xJBLFOqkOZaJolKviTdtST9PMFwH9n8ud2Y+U="; + }) + ]; + meta = with lib; { homepage = "https://python-poetry.org/"; description = "Python dependency management and packaging made easy"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix index 99a0df654f..665aca5f8e 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/py-air-control-exporter/default.nix @@ -3,12 +3,12 @@ buildPythonPackage rec { pname = "py-air-control-exporter"; - version = "0.1.4"; + version = "0.1.5"; disabled = isPy27; src = fetchPypi { inherit pname version; - sha256 = "1f13d3mlj6c3xvkclimahx7gpqqn8z56lh4kwy1d3gkjm7zs9zw9"; + sha256 = "46eff1c801a299cf2ad37e6bd0c579449779cb6a47f1007264bfcabf12739f8b"; }; nativeBuildInputs = [ setuptools_scm ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix new file mode 100644 index 0000000000..33479cc66e --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/pyfuse3/default.nix @@ -0,0 +1,42 @@ +{ lib, buildPythonPackage, fetchPypi, fetchpatch, pkg-config, fuse3, trio, pytestCheckHook, pytest-trio, which }: + +buildPythonPackage rec { + pname = "pyfuse3"; + version = "3.1.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "9feb42a8639dc4815522ee6af6f7221552cfd2df1c7a7e9df96767be65e18667"; + }; + + patches = [ + # Fixes tests with pytest 6, to be removed in next stable version + (fetchpatch { + url = "https://github.com/libfuse/pyfuse3/commit/0070eddfc33fc2fba8eb4fe9353a2d2fa1ae575b.patch"; + sha256 = "0lb4x1j31ihs3qkn61x41k2vqwcjl2fp1c2qx2jg9br6yqhjmg3b"; + }) + ]; + + nativeBuildInputs = [ pkg-config ]; + + buildInputs = [ fuse3 ]; + + propagatedBuildInputs = [ trio ]; + + checkInputs = [ + pytestCheckHook + pytest-trio + which + fuse3 + ]; + + # Checks if a /usr/bin directory exists, can't work on NixOS + disabledTests = [ "test_listdir" ]; + + meta = with lib; { + description = "Python 3 bindings for libfuse 3 with async I/O support"; + homepage = "https://github.com/libfuse/pyfuse3"; + license = licenses.gpl2; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pygame/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pygame/default.nix index 81c4d4a4b9..673b14bfe4 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pygame/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pygame/default.nix @@ -1,5 +1,5 @@ { lib, fetchPypi, buildPythonPackage, python, pkg-config, libX11 -, SDL, SDL_image, SDL_mixer, SDL_ttf, libpng, libjpeg, portmidi, freetype +, SDL2, SDL2_image, SDL2_mixer, SDL2_ttf, libpng, libjpeg, portmidi, freetype }: buildPythonPackage rec { @@ -12,11 +12,11 @@ buildPythonPackage rec { }; nativeBuildInputs = [ - pkg-config SDL + pkg-config SDL2 ]; buildInputs = [ - SDL SDL_image SDL_mixer SDL_ttf libpng libjpeg + SDL2 SDL2_image SDL2_mixer SDL2_ttf libpng libjpeg portmidi libX11 freetype ]; @@ -27,8 +27,7 @@ buildPythonPackage rec { sed \ -e "s/origincdirs = .*/origincdirs = []/" \ -e "s/origlibdirs = .*/origlibdirs = []/" \ - -e "/'\/lib\/i386-linux-gnu', '\/lib\/x86_64-linux-gnu']/d" \ - -e "/\/include\/smpeg/d" \ + -e "/linux-gnu/d" \ -i buildconfig/config_unix.py ${lib.concatMapStrings (dep: '' sed \ diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pygmt/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pygmt/default.nix index 378419cc83..28e7db2a99 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pygmt/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pygmt/default.nix @@ -1,4 +1,4 @@ -{ lib +{ stdenv , pythonOlder , buildPythonPackage , fetchFromGitHub @@ -36,10 +36,12 @@ buildPythonPackage rec { pythonImportsCheck = [ "pygmt" ]; - meta = with lib; { + meta = with stdenv.lib; { description = "A Python interface for the Generic Mapping Tools"; homepage = "https://github.com/GenericMappingTools/pygmt"; license = licenses.bsd3; + # pygmt.exceptions.GMTCLibNotFoundError: Error loading the GMT shared library '/nix/store/r3xnnqgl89vrnq0kzxx0bmjwzks45mz8-gmt-6.1.1/lib/libgmt.dylib' + broken = stdenv.isDarwin; maintainers = with maintainers; [ sikmir ]; }; } diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pymatgen/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pymatgen/default.nix index 6a059eae5b..ce89cb1e07 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pymatgen/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pymatgen/default.nix @@ -21,11 +21,11 @@ buildPythonPackage rec { pname = "pymatgen"; - version = "2020.11.11"; + version = "2020.12.3"; src = fetchPypi { inherit pname version; - sha256 = "2c51c2c8862ea0d59346114f43be9e65ea134ed5b2bbd8dae766c4f6b02f5e3c"; + sha256 = "a7ae7aba87e88965c3e1490f5b9742c95e06150f2fc73da69647a9366dd88018"; }; nativeBuildInputs = [ glibcLocales ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix new file mode 100644 index 0000000000..e3d463a39a --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/pytest-celery/default.nix @@ -0,0 +1,21 @@ +{ stdenv, buildPythonPackage, fetchPypi, pytest, setuptools_scm }: + +buildPythonPackage rec { + pname = "pytest-celery"; + version = "0.0.0a1"; + + src = fetchPypi { + inherit pname version; + sha256 = "0qifwi7q8dfwbzz2vm5m40lw23qh2fzibngbmw6qgwnkq8bhh3iy"; + }; + + patches = [ ./no-celery.patch ]; + + doCheck = false; # This package has nothing to test or import. + + meta = with stdenv.lib; { + description = "pytest plugin for unittest subTest() support and subtests fixture"; + homepage = "https://github.com/pytest-dev/pytest-subtests"; + license = licenses.mit; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pytest-celery/no-celery.patch b/third_party/nixpkgs/pkgs/development/python-modules/pytest-celery/no-celery.patch new file mode 100644 index 0000000000..6533748988 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/pytest-celery/no-celery.patch @@ -0,0 +1,9 @@ +This plugin is needed to test celery itself, so it can't depend on celery. + +--- a/setup.py ++++ b/setup.py +@@ -6,3 +6,3 @@ from distutils.core import setup + install_requires = \ +-['celery >= 4.4.0'] ++[] + diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix index 3ad238f553..23f50347c4 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pytest-html/default.nix @@ -3,12 +3,12 @@ buildPythonPackage rec { pname = "pytest-html"; - version = "3.0.0"; + version = "3.1.0"; disabled = pythonOlder "3.6"; src = fetchPypi { inherit pname version; - sha256 = "407adfe8c748a6bb7e68a430ebe3766ffe51e43fc5442f78b261229c03078be4"; + sha256 = "8a7979e2411aac445870d8cad9a251ab3823bc14f77d065e9ce9a5dff86f697d"; }; nativeBuildInputs = [ setuptools_scm ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pytest-mpl/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pytest-mpl/default.nix index d238d7565f..78d5243cf6 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pytest-mpl/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pytest-mpl/default.nix @@ -5,6 +5,7 @@ , matplotlib , nose , pillow +, pytestCheckHook }: buildPythonPackage rec { @@ -16,7 +17,9 @@ buildPythonPackage rec { sha256 = "4a223909e5148c99bd18891848c7871457729322c752c9c470bd8dd6bdf9f940"; }; - buildInputs = [ pytest ]; + buildInputs = [ + pytest + ]; propagatedBuildInputs = [ matplotlib @@ -25,16 +28,20 @@ buildPythonPackage rec { ]; checkInputs = [ - pytest + pytestCheckHook ]; - checkPhase = '' + # Broken since b6e98f18950c2b5dbdc725c1181df2ad1be19fee + disabledTests = [ + "test_hash_fails" + "test_hash_missing" + ]; + + preCheck = '' export HOME=$(mktemp -d) mkdir -p $HOME/.config/matplotlib echo "backend: ps" > $HOME/.config/matplotlib/matplotlibrc ln -s $HOME/.config/matplotlib $HOME/.matplotlib - - pytest ''; meta = with stdenv.lib; { diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pytest-subtests/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pytest-subtests/default.nix new file mode 100644 index 0000000000..3be2adc11a --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/pytest-subtests/default.nix @@ -0,0 +1,22 @@ +{ lib, buildPythonPackage, isPy27, fetchPypi, setuptools_scm, pytestCheckHook }: + +buildPythonPackage rec { + pname = "pytest-subtests"; + version = "0.3.2"; + disabled = isPy27; + + src = fetchPypi { + inherit pname version; + sha256 = "1mxg91mrn8672f8hwg0f31xkyarnq7q0hr4fvb9hcb09jshq2wk7"; + }; + + nativeBuildInputs = [ setuptools_scm ]; + + checkInputs = [ pytestCheckHook ]; + + meta = with lib; { + description = "pytest plugin for unittest subTest() support and subtests fixture"; + homepage = "https://github.com/pytest-dev/pytest-subtests"; + license = licenses.mit; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/pyxdg/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/pyxdg/default.nix index 48c9512168..c0e8b8063b 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/pyxdg/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/pyxdg/default.nix @@ -1,30 +1,25 @@ -{ stdenv +{ lib , buildPythonPackage -, fetchPypi -, fetchpatch +, fetchFromGitLab +, nose }: buildPythonPackage rec { pname = "pyxdg"; - version = "0.26"; + version = "0.27"; - src = fetchPypi { - inherit pname version; - sha256 = "fe2928d3f532ed32b39c32a482b54136fe766d19936afc96c8f00645f9da1a06"; + src = fetchFromGitLab { + domain = "gitlab.freedesktop.org"; + owner = "xdg"; + repo = pname; + rev = "rel-${version}"; + sha256 = "1dg826vrc7ifkk4lnf648h61cqfamaqmngkn9hgmxnf9gqmkbn0k"; }; - # error: invalid command 'test' + # Tests failed (errors=4, failures=4) on NixOS doCheck = false; - patches = [ - # see: https://gitlab.freedesktop.org/xdg/pyxdg/-/merge_requests/5 - (fetchpatch { - url = "https://gitlab.freedesktop.org/xdg/pyxdg/-/commit/78405aaa34463db2c6f33ca28ae2293dd3bb1e91.patch"; - sha256 = "17cjax546rkqv5kvwczjqjdd6vmlvcxjanz0296dlfq23j2wbx63"; - }) - ]; - - meta = with stdenv.lib; { + meta = with lib; { homepage = "http://freedesktop.org/wiki/Software/pyxdg"; description = "Contains implementations of freedesktop.org standards"; license = licenses.lgpl2; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix index 68927cc9ca..a1d8102fec 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/rtmidi-python/default.nix @@ -1,6 +1,4 @@ -{ lib, buildPythonPackage, fetchPypi -, alsaLib -}: +{ lib, buildPythonPackage, fetchPypi, cython, alsaLib }: buildPythonPackage rec { pname = "rtmidi-python"; @@ -11,8 +9,15 @@ buildPythonPackage rec { sha256 = "1wpcaxfpbmsjc78g8841kpixr0a3v6zn0ak058s3mm25kcysp4m0"; }; + postPatch = '' + rm rtmidi_python.cpp + ''; + + nativeBuildInputs = [ cython ]; buildInputs = [ alsaLib ]; + setupPyBuildFlags = [ "--from-cython" ]; + # package has no tests doCheck = false; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/sanic/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/sanic/default.nix index c4f56e2d4c..aaedaa5ef8 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/sanic/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/sanic/default.nix @@ -1,130 +1,40 @@ -{ lib -, buildPythonPackage -, fetchPypi -, httptools -, aiofiles -, websockets -, multidict -, uvloop -, ujson -, pytest -, gunicorn -, aiohttp -, beautifulsoup4 -, pytest-sanic -, pytest-benchmark - -# required just httpcore / requests-async -, h11 -, h2 -, certifi -, chardet -, idna -, requests -, rfc3986 -, uvicorn +{ lib, buildPythonPackage, fetchPypi +, aiofiles, httptools, httpx, multidict, ujson, uvloop, websockets +, pytestCheckHook, beautifulsoup4, gunicorn, httpcore, uvicorn +, pytest-asyncio, pytest-benchmark, pytest-dependency, pytest-sanic, pytest-sugar, pytestcov }: -let - - # This version of sanic depends on two packages that have been deprecated by - # their development teams: - # - # - requests-async [where first line of pypi says to use `http3` instead now] - # - httpcore [where the homepage redirects to `http3` now] - # - # Since no other packages in nixpkg depend on these right now, define these - # packages just as local dependencies here, to avoid bloat. - - httpcore = buildPythonPackage rec { - pname = "httpcore"; - version = "0.3.0"; - src = fetchPypi { - inherit pname version; - sha256 = "0n3bamaixxhcm27gf1ws3g6rkamvqx87087c88r6hyyl52si1ycn"; - }; - - propagatedBuildInputs = [ certifi chardet h11 h2 idna rfc3986 ]; - - # relax pinned old version of h11 - postConfigure = '' - substituteInPlace setup.py \ - --replace "h11==0.8.*" "h11" - ''; - - # LICENCE.md gets propagated without this, causing collisions - postInstall = '' - rm $out/LICENSE.md - ''; - }; - - requests-async = buildPythonPackage rec { - pname = "requests-async"; - version = "0.5.0"; - src = fetchPypi { - inherit pname version; - sha256 = "8731420451383196ecf2fd96082bfc8ae5103ada90aba185888499d7784dde6f"; - }; - - propagatedBuildInputs = [ requests httpcore ]; - - # LICENCE.md gets propagated without this, causing collisions - postInstall = '' - rm $out/LICENSE.md - ''; - }; - -in - buildPythonPackage rec { pname = "sanic"; - version = "19.6.3"; + version = "20.9.1"; src = fetchPypi { inherit pname version; - sha256 = "0b1qqsvdjkibrw5kgr0pm7n7jzb1403132wjmb0lx3k5wyvqfi95"; + sha256 = "06p0lsxqbfbka2yaqlpp0bg5pf7ma44zi6kq7qbb6hhry48dp1w6"; }; + patchPhase = '' + substituteInPlace setup.py \ + --replace '"multidict==5.0.0"' '"multidict"' \ + --replace '"httpx==0.15.4"' '"httpx"' \ + --replace '"httpcore==0.3.0"' '"httpcore"' \ + --replace '"pytest==5.2.1"' '"pytest"' + ''; + propagatedBuildInputs = [ - httptools - aiofiles - websockets - multidict - requests-async - uvloop - ujson + aiofiles httptools httpx multidict ujson uvloop websockets ]; checkInputs = [ - pytest - gunicorn - aiohttp - beautifulsoup4 - pytest-sanic - pytest-benchmark - uvicorn + pytestCheckHook beautifulsoup4 gunicorn httpcore uvicorn + pytest-asyncio pytest-benchmark pytest-dependency pytest-sanic pytest-sugar pytestcov ]; - # Sanic says it needs websockets 7.x, but the changelog for 8.x is actually - # nearly compatible with sanic's use. So relax this constraint, with a small - # required code change. - postConfigure = '' - substituteInPlace setup.py --replace \ - "websockets>=7.0,<8.0" \ - "websockets>=7.0,<9.0" - substituteInPlace sanic/websocket.py --replace \ - "self.websocket.subprotocol = subprotocol" \ - "self.websocket.subprotocol = subprotocol - self.websocket.is_client = False" - ''; - - # 10/500 tests ignored due to missing directory and - # requiring network access - checkPhase = '' - pytest --ignore tests/test_blueprints.py \ - --ignore tests/test_routes.py \ - --ignore tests/test_worker.py - ''; + disabledTests = [ + "test_gunicorn" # No "examples" directory in pypi distribution. + "test_logo" # Fails to filter out "DEBUG asyncio:selector_events.py:59 Using selector: EpollSelector" + "test_zero_downtime" # No "examples.delayed_response.app" module in pypi distribution. + ]; meta = with lib; { description = "A microframework based on uvloop, httptools, and learnings of flask"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix index 9db28aef2e..9df9453b2b 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/sentry-sdk/default.nix @@ -1,8 +1,11 @@ { aiohttp +, blinker +, botocore , bottle , buildPythonPackage , celery , certifi +, chalice , django , falcon , fetchPypi @@ -33,7 +36,7 @@ buildPythonPackage rec { sha256 = "1052f0ed084e532f66cb3e4ba617960d820152aee8b93fc6c05bd53861768c1c"; }; - checkInputs = [ django flask tornado bottle rq falcon sqlalchemy werkzeug trytond + checkInputs = [ blinker botocore chalice django flask tornado bottle rq falcon sqlalchemy werkzeug trytond executing pure-eval asttokens ] ++ stdenv.lib.optionals isPy3k [ celery pyramid sanic aiohttp ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/sgmllib3k/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/sgmllib3k/default.nix new file mode 100644 index 0000000000..6884bed274 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/sgmllib3k/default.nix @@ -0,0 +1,27 @@ +{ stdenv +, buildPythonPackage +, fetchFromGitHub +, isPy27 +, lib +}: + +buildPythonPackage rec { + pname = "sgmllib3k"; + version = "1.0.0"; + disabled = isPy27; + + # fetchFromGitHub instead of fetchPypi to run tests. + src = fetchFromGitHub { + owner = "hsoft"; + repo = "sgmllib"; + rev = "799964676f35349ca2dd04503e34c2b3ad522c0d"; + sha256 = "0bzf6pv85dzfxfysm6zbj8m40hp0xzr9h8qlk4hp3nmy88rznqvr"; + }; + + meta = with lib; { + homepage = "https://pypi.org/project/sgmllib3k/"; + description = "Python 3 port of sgmllib"; + license = licenses.bsd2; + maintainers = with maintainers; [ lovesegfault ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/traitlets/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/traitlets/default.nix index bfbb297cdc..5d304c61f5 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/traitlets/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/traitlets/default.nix @@ -1,5 +1,6 @@ { lib , buildPythonPackage +, isPy27 , fetchPypi , glibcLocales , pytest @@ -14,6 +15,7 @@ buildPythonPackage rec { pname = "traitlets"; version = "5.0.5"; + disabled = isPy27; src = fetchPypi { inherit pname version; @@ -27,8 +29,6 @@ buildPythonPackage rec { LC_ALL="en_US.UTF-8" py.test ''; -# doCheck = false; - meta = { description = "Traitlets Python config system"; homepage = "http://ipython.org/"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/trimesh/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/trimesh/default.nix index 91c1ec38e9..c6a7493695 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/trimesh/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/trimesh/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "trimesh"; - version = "3.8.15"; + version = "3.8.17"; src = fetchPypi { inherit pname version; - sha256 = "3ab9c15e53916fd68d0c0ca9b46d95693d3238f164ffcf528a974c6e15cd353e"; + sha256 = "10834032ff314ea9c8a6a9f4f1f846422fe8825657dfd2d9db3ae2fa5a838fdb"; }; propagatedBuildInputs = [ numpy ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/ueberzug/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/ueberzug/default.nix index c1672849c9..d433b1a6b4 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/ueberzug/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/ueberzug/default.nix @@ -4,18 +4,23 @@ buildPythonPackage rec { pname = "ueberzug"; - version = "18.1.6"; + version = "18.1.7"; disabled = isPy27; src = fetchPypi { inherit pname version; - sha256 = "13a9q9rvkbsym5nrc1y2anhyx317vj1vi8k8kln8gin2yw311pyb"; + sha256 = "ef0d6ac5815446ede654a38da550d2c44abd0fc05c901b2232935a65bcbca875"; }; buildInputs = [ libX11 libXext ]; + propagatedBuildInputs = [ attrs docopt pillow psutil xlib ]; + doCheck = false; + + pythonImportsCheck = [ "ueberzug" ]; + meta = with lib; { homepage = "https://github.com/seebye/ueberzug"; description = "An alternative for w3mimgdisplay"; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/unrardll/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/unrardll/default.nix new file mode 100644 index 0000000000..49e070b846 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/python-modules/unrardll/default.nix @@ -0,0 +1,22 @@ +{ lib, buildPythonPackage, fetchPypi, unrar }: + +buildPythonPackage rec { + pname = "unrardll"; + version = "0.1.4"; + + src = fetchPypi { + inherit pname version; + sha256 = "4149c0729cf96a0bae80360e7d94dc40af1088c8da7f6eb8d10e09b8632e92ad"; + }; + + buildInputs = [ unrar ]; + + pythonImportsCheck = [ "unrardll" ]; + + meta = with lib; { + description = "Wrap the Unrar DLL to enable unraring of files in python"; + homepage = "https://github.com/kovidgoyal/unrardll"; + license = licenses.bsd3; + maintainers = with maintainers; [ nyanloutre ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix index 5e704cdcb2..823d2820e1 100644 --- a/third_party/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/vertica-python/default.nix @@ -2,11 +2,11 @@ buildPythonPackage rec { pname = "vertica-python"; - version = "1.0.0"; + version = "1.0.1"; src = fetchPypi { inherit pname version; - sha256 = "f042cf60ddd69eeb17c9f1586bae25da5b7282ca53d9afe0be30b943b4194d52"; + sha256 = "94cff37e03f89fc4c5e4b2d4c913c7d5d7450f5a205d14f709b39e0a4202be95"; }; propagatedBuildInputs = [ future dateutil six ]; diff --git a/third_party/nixpkgs/pkgs/development/python-modules/zstandard/default.nix b/third_party/nixpkgs/pkgs/development/python-modules/zstandard/default.nix index 58b3c5af82..126fe1377f 100755 --- a/third_party/nixpkgs/pkgs/development/python-modules/zstandard/default.nix +++ b/third_party/nixpkgs/pkgs/development/python-modules/zstandard/default.nix @@ -7,11 +7,11 @@ buildPythonPackage rec { pname = "zstandard"; - version = "0.14.0"; + version = "0.14.1"; src = fetchPypi { inherit pname version; - sha256 = "0lkn7n3bfp7zip6hkqwkqwc8pxmhhs4rr699k77h51rfln6kjllh"; + sha256 = "5dd700e52ec28c64d43f681ccde76b6436c8f89a332d6c9e22a6b629f28daeb5"; }; propagatedBuildInputs = [ cffi ]; diff --git a/third_party/nixpkgs/pkgs/development/tools/ameba/default.nix b/third_party/nixpkgs/pkgs/development/tools/ameba/default.nix index 9b7cf3f1de..b46f6efd63 100644 --- a/third_party/nixpkgs/pkgs/development/tools/ameba/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/ameba/default.nix @@ -2,13 +2,13 @@ crystal.buildCrystalPackage rec { pname = "ameba"; - version = "0.13.2"; + version = "0.13.3"; src = fetchFromGitHub { owner = "crystal-ameba"; repo = "ameba"; rev = "v${version}"; - sha256 = "0wyfx9nwda0s3arpdalz5zgh83v6wfz1a3l2k5v0jglpczq3m04m"; + sha256 = "0yhb8vfrfzsm3a45h2jmcrn1n7jy3zn2hwims3dikgq8kaggws9y"; }; meta = with stdenv.lib; { diff --git a/third_party/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix b/third_party/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix index 8858ac59ae..91bcecbb43 100644 --- a/third_party/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/analysis/cppcheck/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "cppcheck"; - version = "2.2"; + version = "2.3"; src = fetchurl { url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2"; - sha256 = "1dcf053cqci2ha3yy817y02yz9mhrkgddcbnn6gj82j6k87a4rq4"; + sha256 = "0mlw0z20qf0g9qrmdmbykzf87wlcgmah8bacmp4mk6dwfzr9g9n3"; }; buildInputs = [ pcre ] ++ stdenv.lib.optionals withZ3 [ z3 ]; diff --git a/third_party/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix b/third_party/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix index 59a345faf2..e0a7febb87 100644 --- a/third_party/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/bazel-watcher/default.nix @@ -13,13 +13,13 @@ let in buildBazelPackage rec { name = "bazel-watcher-${version}"; - version = "0.13.1"; + version = "0.14.0"; src = fetchFromGitHub { owner = "bazelbuild"; repo = "bazel-watcher"; rev = "v${version}"; - sha256 = "0n28q27510ymg5d455hrbk7z8wawszgjmqjjhb4zximqhvxks7kh"; + sha256 = "0gigl1lg8sb4bj5crvj54329ws4yirldbncs15f96db6vhp0ig7r"; }; nativeBuildInputs = [ go git python ]; @@ -56,7 +56,7 @@ buildBazelPackage rec { sed -e '/^FILE:@bazel_gazelle_go_repository_tools.*/d' -i $bazelOut/external/\@*.marker ''; - sha256 = "0rfdwss8aahydiybwhi3j0qw12j1l91k9lbn1vaip0bmnq5qfwh9"; + sha256 = "0yl5rs6y1xifxjfsa9zv8bjcwiky7rxk9y3rmi01pqpsm7ik12a9"; }; buildAttrs = { @@ -64,6 +64,8 @@ buildBazelPackage rec { preBuild = '' patchShebangs . + + substituteInPlace ibazel/BUILD --replace '{STABLE_GIT_VERSION}' ${version} ''; installPhase = '' @@ -77,5 +79,7 @@ buildBazelPackage rec { license = licenses.asl20; maintainers = with maintainers; [ kalbasit ]; platforms = platforms.all; + # broken on darwin, see https://github.com/NixOS/nixpkgs/issues/105573 + broken = stdenv.isDarwin; }; } diff --git a/third_party/nixpkgs/pkgs/development/tools/doctl/default.nix b/third_party/nixpkgs/pkgs/development/tools/doctl/default.nix index bca11130c7..2b4bf66a01 100644 --- a/third_party/nixpkgs/pkgs/development/tools/doctl/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/doctl/default.nix @@ -2,7 +2,7 @@ buildGoModule rec { pname = "doctl"; - version = "1.53.0"; + version = "1.54.0"; vendorSha256 = null; @@ -32,7 +32,7 @@ buildGoModule rec { owner = "digitalocean"; repo = "doctl"; rev = "v${version}"; - sha256 = "1zw6gdmy1jlwi7rrbdxg7pkiq54ha0h1gmzphn3mflfk7lmgyikm"; + sha256 = "163n3d07vv9d4356ql6hbw2vg6n5c834axz7y4gk8gm9badbna82"; }; meta = with lib; { diff --git a/third_party/nixpkgs/pkgs/development/tools/fedora-coreos-config-transpiler/default.nix b/third_party/nixpkgs/pkgs/development/tools/fedora-coreos-config-transpiler/default.nix index 0d9bad0e41..b53b03d26e 100644 --- a/third_party/nixpkgs/pkgs/development/tools/fedora-coreos-config-transpiler/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/fedora-coreos-config-transpiler/default.nix @@ -4,13 +4,13 @@ with lib; buildGoModule rec { pname = "fcct"; - version = "0.7.0"; + version = "0.8.0"; src = fetchFromGitHub { owner = "coreos"; repo = "fcct"; rev = "v${version}"; - sha256 = "1ffjn0l38szpkgd11mfaiynf9n8ljndv122l8amwiwp5mrh3hsl6"; + sha256 = "0w3vhfjpmpahb08fp6czixhlqhk6izglmwdpj2l19ksz8fc8aq54"; }; vendorSha256 = null; diff --git a/third_party/nixpkgs/pkgs/development/tools/gauge/default.nix b/third_party/nixpkgs/pkgs/development/tools/gauge/default.nix index d7ec8564cf..dd48998c74 100644 --- a/third_party/nixpkgs/pkgs/development/tools/gauge/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/gauge/default.nix @@ -2,7 +2,7 @@ buildGoPackage rec { pname = "gauge"; - version = "1.1.5"; + version = "1.1.6"; goPackagePath = "github.com/getgauge/gauge"; excludedPackages = ''\(build\|man\)''; @@ -11,7 +11,7 @@ buildGoPackage rec { owner = "getgauge"; repo = "gauge"; rev = "v${version}"; - sha256 = "0jijw9x1ccqbb9kkzx1bj3wsq6v1415hvlbiihswqbb559bcmira"; + sha256 = "02yrk4d5mm4j2grlhqkf4grxawx91kd2vhdn7k5wd2dl6wsnlgcl"; }; meta = with stdenv.lib; { diff --git a/third_party/nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix b/third_party/nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix new file mode 100644 index 0000000000..ed8cc3587c --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/tools/gojsontoyaml/default.nix @@ -0,0 +1,22 @@ +{ stdenv, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "gojsontoyaml"; + version = "unstable-2020-06-02"; + + src = fetchFromGitHub { + owner = "brancz"; + repo = "gojsontoyaml"; + rev = "3697ded27e8cfea8e547eb082ebfbde36f1b5ee6"; + sha256 = "07sisadpfnzbylzirs5ski8wl9fl18dm7xhbv8imw6ksxq4v467a"; + }; + + vendorSha256 = null; + + meta = with stdenv.lib; { + description = "Simply tool to convert json to yaml written in Go"; + homepage = "https://github.com/brancz/gojsontoyaml"; + license = licenses.mit; + maintainers = [ maintainers.bryanasdev000 ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/tools/krew/default.nix b/third_party/nixpkgs/pkgs/development/tools/krew/default.nix new file mode 100644 index 0000000000..b5fc91b62d --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/tools/krew/default.nix @@ -0,0 +1,25 @@ +{ stdenv, buildGoModule, fetchFromGitHub }: + +buildGoModule rec { + pname = "krew"; + version = "0.4.0"; + + src = fetchFromGitHub { + owner = "kubernetes-sigs"; + repo = "krew"; + rev = "v${version}"; + sha256 = "1fcbpipnbms096c36b2z06ysfwyjj22lm1zd1r5xlv5gp24qimlv"; + }; + + vendorSha256 = "1bmsjv5snrabd9h9szkpcl15rwxm54jgm361ghhy234d2s45c3gn"; + + subPackages = [ "cmd/krew" ]; + + meta = with stdenv.lib; { + description = "Package manager for kubectl plugins"; + homepage = "https://github.com/kubernetes-sigs/krew"; + maintainers = with maintainers; [ vdemeester ]; + license = stdenv.lib.licenses.asl20; + platforms = platforms.unix; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/tools/lc3tools/0002-lc3os-path.patch b/third_party/nixpkgs/pkgs/development/tools/lc3tools/0002-lc3os-path.patch new file mode 100644 index 0000000000..413c95e12f --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/tools/lc3tools/0002-lc3os-path.patch @@ -0,0 +1,21 @@ +diff --git a/lc3sim.c b/lc3sim.c +index dac7f7a..736fd7c 100644 +--- a/lc3sim.c ++++ b/lc3sim.c +@@ -665,14 +665,14 @@ init_machine () + bzero (lc3_sym_hash, sizeof (lc3_sym_hash)); + clear_all_breakpoints (); + +- if (read_obj_file (INSTALL_DIR "/lc3os.obj", &os_start, &os_end) == -1) { ++ if (read_obj_file (INSTALL_DIR "/share/lc3tools/lc3os.obj", &os_start, &os_end) == -1) { + if (gui_mode) + puts ("ERR {Failed to read LC-3 OS code.}"); + else + puts ("Failed to read LC-3 OS code."); + show_state_if_stop_visible (); + } else { +- if (read_sym_file (INSTALL_DIR "/lc3os.sym") == -1) { ++ if (read_sym_file (INSTALL_DIR "/share/lc3tools/lc3os.sym") == -1) { + if (gui_mode) + puts ("ERR {Failed to read LC-3 OS symbols.}"); + else diff --git a/third_party/nixpkgs/pkgs/development/tools/lc3tools/0003-lc3sim-tk-path.patch b/third_party/nixpkgs/pkgs/development/tools/lc3tools/0003-lc3sim-tk-path.patch new file mode 100644 index 0000000000..38bc9daaf5 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/tools/lc3tools/0003-lc3sim-tk-path.patch @@ -0,0 +1,13 @@ +diff --git a/Makefile.def b/Makefile.def +index 34f7df3..05dc86c 100644 +--- a/Makefile.def ++++ b/Makefile.def +@@ -155,7 +155,7 @@ dist_lc3sim-tk: lc3sim-tk + + lc3sim-tk: lc3sim-tk.def + ${SED} -e 's @@WISH@@ ${WISH} g' \ +- -e 's*@@LC3_SIM@@*"${INSTALL_DIR}/lc3sim"*g' \ ++ -e 's*@@LC3_SIM@@*"${INSTALL_DIR}/bin/lc3sim"*g' \ + -e 's!@@CODE_FONT@@!${CODE_FONT}!g' \ + -e 's!@@BUTTON_FONT@@!${BUTTON_FONT}!g' \ + -e 's!@@CONSOLE_FONT@@!${CONSOLE_FONT}!g' \ diff --git a/third_party/nixpkgs/pkgs/development/tools/lc3tools/default.nix b/third_party/nixpkgs/pkgs/development/tools/lc3tools/default.nix index 25b476f68c..122271c34a 100644 --- a/third_party/nixpkgs/pkgs/development/tools/lc3tools/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/lc3tools/default.nix @@ -13,6 +13,12 @@ stdenv.mkDerivation { # the original configure looks for things in the FHS path # I have modified it to take environment vars ./0001-mangle-configure.patch + + # lc3sim looks for the LC3 OS in $out/share/lc3tools instead of $out + ./0002-lc3os-path.patch + + # lc3sim-tk looks for lc3sim in $out/bin instead of $out + ./0003-lc3sim-tk-path.patch ]; nativeBuildInputs = [ unzip ]; @@ -27,10 +33,9 @@ stdenv.mkDerivation { prefixKey = "--installdir "; postInstall = '' - rm $out/{COPYING,NO_WARRANTY,README} mkdir -p $out/{bin,share/lc3tools} - mv -t $out/share/lc3tools $out/lc3os* + mv -t $out/share/lc3tools $out/{COPYING,NO_WARRANTY,README} $out/lc3os* mv -t $out/bin $out/lc3* ''; diff --git a/third_party/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix b/third_party/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix index 1641df1562..5b992df12b 100644 --- a/third_party/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/misc/clojure-lsp/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "clojure-lsp"; - version = "20201009T224414"; + version = "20201205T230541"; src = fetchurl { url = "https://github.com/snoe/clojure-lsp/releases/download/release-${version}/${pname}"; - sha256 = "1az87b4cq6yyibs4knd0ywd0qfgmfzai4bqry4b7h2ycnfhfxdpa"; + sha256 = "06sismbv7wrcwfgr0brw9gsdvl2plrryhxs1v08a2sd5rdf2qi3b"; }; dontUnpack = true; diff --git a/third_party/nixpkgs/pkgs/development/tools/misc/perfect-hash/default.nix b/third_party/nixpkgs/pkgs/development/tools/misc/perfect-hash/default.nix new file mode 100644 index 0000000000..4e405413e3 --- /dev/null +++ b/third_party/nixpkgs/pkgs/development/tools/misc/perfect-hash/default.nix @@ -0,0 +1,35 @@ +{ stdenv, python3, fetchFromGitHub }: +python3.pkgs.buildPythonApplication rec { + pname = "perfect-hash"; + version = "0.4.1"; + + # Archive on pypi does not contain examples, which are very helpful to + # understand how to use this program, so we use git source. + src = fetchFromGitHub { + owner = "ilanschnell"; + repo = "perfect-hash"; + rev = version; + sha256 = "0gkc3n613hl0q4jknrh2nm1n96j97p36q9jjgarb9d8yii9q7792"; + }; + + postInstall = '' + mkdir -p $out/share/doc/perfect-hash + cp README.md $out/share/doc/perfect-hash + cp -r examples $out/share/doc/perfect-hash + ''; + + meta = with stdenv.lib; { + description = "Minimal perfect hash function generator"; + longDescription = '' + Generate a minimal perfect hash function for a given set of keys. + A given code template is filled with parameters, such that the + output is code which implements the hash function. Templates can + easily be constructed for any programming language. + ''; + license = licenses.bsd3; + maintainers = [ maintainers.kaction ]; + + homepage = "https://github.com/ilanschnell/perfect-hash"; + platforms = platforms.unix; + }; +} diff --git a/third_party/nixpkgs/pkgs/development/tools/misc/svls/default.nix b/third_party/nixpkgs/pkgs/development/tools/misc/svls/default.nix index f04c93e7a1..9cae7b9016 100644 --- a/third_party/nixpkgs/pkgs/development/tools/misc/svls/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/misc/svls/default.nix @@ -5,16 +5,16 @@ rustPlatform.buildRustPackage rec { pname = "svls"; - version = "0.1.17"; + version = "0.1.18"; src = fetchFromGitHub { owner = "dalance"; repo = "svls"; rev = "v${version}"; - sha256 = "0qcd9pkshk94c6skzld8cyzppl05hk4vcmmaya8r9l6kdi1f4b5m"; + sha256 = "08n2sp0yj7ql5aagxw94dn8bx2jkigs9zlylf5zkg673bh54829x"; }; - cargoSha256 = "0dqa7iw0sffzh07qysznh7ma3d3vl5fhd0i2qmz7a3dvw8mvyvsm"; + cargoSha256 = "0k8x6kgxc2w7ldi456s4kg4v80b064drfa26zg5chcmcrr5zgmyv"; meta = with lib; { description = "SystemVerilog language server"; diff --git a/third_party/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix b/third_party/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix index c39ade7c07..59c77f6e14 100644 --- a/third_party/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix +++ b/third_party/nixpkgs/pkgs/development/tools/ocaml/ocamlformat/generic.nix @@ -30,7 +30,7 @@ buildDunePackage rec { minimumOCamlVersion = "4.06"; - useDune2 = lib.versionAtLeast version "0.14"; + useDune2 = true; buildInputs = if lib.versionAtLeast version "0.14" diff --git a/third_party/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix b/third_party/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix index 58e8163420..6b76516232 100644 --- a/third_party/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/open-policy-agent/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "open-policy-agent"; - version = "0.25.0"; + version = "0.25.1"; src = fetchFromGitHub { owner = "open-policy-agent"; repo = "opa"; rev = "v${version}"; - sha256 = "078ksgdl34yrr1w4l2p9r0zysxwzq7ml00mixhdr86rkmjii85zl"; + sha256 = "1vwyp46lxjar7wl4qjj1mlii4c1vm65kwgmnf1kkwh8i4c202zkx"; }; vendorSha256 = null; diff --git a/third_party/nixpkgs/pkgs/development/tools/pandoc/default.nix b/third_party/nixpkgs/pkgs/development/tools/pandoc/default.nix index 0bf9ce71e4..dbee7631fe 100644 --- a/third_party/nixpkgs/pkgs/development/tools/pandoc/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/pandoc/default.nix @@ -1,4 +1,4 @@ -{ haskellPackages, haskell, removeReferencesTo }: +{ haskellPackages, fetchpatch, haskell, removeReferencesTo }: let static = haskell.lib.justStaticExecutables haskellPackages.pandoc; @@ -8,6 +8,30 @@ in configureFlags = drv.configureFlags or [] ++ ["-fembed_data_files"]; buildDepends = drv.buildDepends or [] ++ [haskellPackages.file-embed]; buildTools = (drv.buildTools or []) ++ [ removeReferencesTo ]; + patches = (drv.patches or []) ++ [ + # Add xmlns to top-level tags in Docbook, required for nixpkgs manual. + # https://github.com/jgm/pandoc/pull/6923 + (fetchpatch { + url = "https://github.com/jgm/pandoc/commit/6f35600204132c5a0907bb7cccb2e10ffb27506a.patch"; + sha256 = "gRUqc4YG4lZdCZn21fPmlcrFyZ3/VlDx71lU8GMuGSs="; + }) + # Generate admonitions in DocBook, required for nixpkgs manual. + # https://github.com/jgm/pandoc/pull/6922 + (fetchpatch { + url = "https://github.com/jgm/pandoc/commit/dc6856530c2cb6ca58ed82721ab895b86cfe0c1c.patch"; + sha256 = "EdsUDlHzsfRscXBR4EP2Z5ZEz+NfrmFHnV7c1hJczio="; + }) + # Use correct id attributes in DocBook, required for nixpkgs manual. + (fetchpatch { + url = "https://github.com/jgm/pandoc/commit/16ef87745702f69d5aa948fbe6d2101577dee8f4.patch"; + sha256 = "WyWTqrO6hGsMgJ7o7QL1BNvhkm0yIO1XJOcfPBDy6ag="; + }) + # Allow using admonition titles from Markdown in DocBook. + (fetchpatch { + url = "https://github.com/jgm/pandoc/commit/70c7c5703afcbd1cbf2a80c2be515e038abcd419.patch"; + sha256 = "2kHQ1qy/UdDi/chwCBvMjAPA/XFH42vWFCjR46Jgt6M="; + }) + ]; })).overrideAttrs (drv: { # These libraries are still referenced, because they generate diff --git a/third_party/nixpkgs/pkgs/development/tools/rust/cargo-geiger/cargo-lock.patch b/third_party/nixpkgs/pkgs/development/tools/rust/cargo-geiger/cargo-lock.patch deleted file mode 100644 index 85c7a73c14..0000000000 --- a/third_party/nixpkgs/pkgs/development/tools/rust/cargo-geiger/cargo-lock.patch +++ /dev/null @@ -1,318 +0,0 @@ -diff --git a/Cargo.lock b/Cargo.lock -index b354f9b..5a17ec2 100644 ---- a/Cargo.lock -+++ b/Cargo.lock -@@ -7,7 +7,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" - - [[package]] - name = "aho-corasick" --version = "0.7.6" -+version = "0.7.7" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ - "memchr 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -55,7 +55,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" - - [[package]] - name = "backtrace" --version = "0.3.42" -+version = "0.3.43" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ - "backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -78,8 +78,8 @@ name = "better-panic" - version = "0.2.0" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "backtrace 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)", -- "console 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", -+ "backtrace 0.3.43 (registry+https://github.com/rust-lang/crates.io-index)", -+ "console 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - ] - - [[package]] -@@ -170,17 +170,17 @@ dependencies = [ - - [[package]] - name = "cargo-geiger" --version = "0.9.0" -+version = "0.9.1" - dependencies = [ - "assert_cmd 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)", - "better-panic 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cargo 0.41.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cargo-platform 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "colored 1.9.2 (registry+https://github.com/rust-lang/crates.io-index)", -- "console 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", -+ "console 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)", - "geiger 0.4.3", -- "insta 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)", -+ "insta 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)", - "petgraph 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)", - "pico-args 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)", - "regex 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -262,7 +262,7 @@ dependencies = [ - - [[package]] - name = "console" --version = "0.9.1" -+version = "0.9.2" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ - "clicolors-control 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -345,7 +345,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ - "commoncrypto 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", -- "openssl 0.10.26 (registry+https://github.com/rust-lang/crates.io-index)", -+ "openssl 0.10.27 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", - ] - -@@ -357,7 +357,7 @@ dependencies = [ - "curl-sys 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", -- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)", -+ "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", - "schannel 0.1.16 (registry+https://github.com/rust-lang/crates.io-index)", - "socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -372,7 +372,7 @@ dependencies = [ - "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", - "libnghttp2-sys 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", -- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)", -+ "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - "winapi 0.3.8 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -390,7 +390,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" - - [[package]] - name = "dtoa" --version = "0.4.4" -+version = "0.4.5" - source = "registry+https://github.com/rust-lang/crates.io-index" - - [[package]] -@@ -426,7 +426,7 @@ name = "failure" - version = "0.1.6" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "backtrace 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)", -+ "backtrace 0.3.43 (registry+https://github.com/rust-lang/crates.io-index)", - "failure_derive 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)", - ] - -@@ -533,7 +533,7 @@ dependencies = [ - "libgit2-sys 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", -- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)", -+ "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", - "url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)", - ] - -@@ -558,7 +558,7 @@ name = "globset" - version = "0.4.4" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)", -+ "aho-corasick 0.7.7 (registry+https://github.com/rust-lang/crates.io-index)", - "bstr 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)", - "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -646,16 +646,15 @@ dependencies = [ - - [[package]] - name = "insta" --version = "0.13.0" -+version = "0.13.1" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "console 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", -+ "console 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)", - "difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_json 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)", - "serde_yaml 0.8.11 (registry+https://github.com/rust-lang/crates.io-index)", -- "uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)", - ] - - [[package]] -@@ -695,7 +694,7 @@ dependencies = [ - "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", - "libssh2-sys 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)", - "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", -- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)", -+ "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", - ] - -@@ -716,7 +715,7 @@ dependencies = [ - "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", - "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", -- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)", -+ "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)", - ] -@@ -791,7 +790,7 @@ dependencies = [ - - [[package]] - name = "openssl" --version = "0.10.26" -+version = "0.10.27" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ - "bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -799,7 +798,7 @@ dependencies = [ - "foreign-types 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)", - "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", -- "openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)", -+ "openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)", - ] - - [[package]] -@@ -809,10 +808,10 @@ source = "registry+https://github.com/rust-lang/crates.io-index" - - [[package]] - name = "openssl-sys" --version = "0.9.53" -+version = "0.9.54" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)", -+ "autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)", - "cc 1.0.50 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.66 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.17 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -939,7 +938,7 @@ name = "regex" - version = "1.3.3" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)", -+ "aho-corasick 0.7.7 (registry+https://github.com/rust-lang/crates.io-index)", - "memchr 2.3.0 (registry+https://github.com/rust-lang/crates.io-index)", - "regex-syntax 0.6.13 (registry+https://github.com/rust-lang/crates.io-index)", - "thread_local 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -1076,7 +1075,7 @@ name = "serde_yaml" - version = "0.8.11" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)", -+ "dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)", - "linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)", - "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)", - "yaml-rust 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", -@@ -1097,7 +1096,7 @@ dependencies = [ - - [[package]] - name = "smallvec" --version = "1.1.0" -+version = "1.2.0" - source = "registry+https://github.com/rust-lang/crates.io-index" - - [[package]] -@@ -1231,7 +1230,7 @@ name = "unicode-normalization" - version = "0.1.12" - source = "registry+https://github.com/rust-lang/crates.io-index" - dependencies = [ -- "smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -+ "smallvec 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)", - ] - - [[package]] -@@ -1259,15 +1258,6 @@ name = "utf8parse" - version = "0.1.1" - source = "registry+https://github.com/rust-lang/crates.io-index" - --[[package]] --name = "uuid" --version = "0.8.1" --source = "registry+https://github.com/rust-lang/crates.io-index" --dependencies = [ -- "rand 0.7.3 (registry+https://github.com/rust-lang/crates.io-index)", -- "serde 1.0.104 (registry+https://github.com/rust-lang/crates.io-index)", --] -- - [[package]] - name = "vcpkg" - version = "0.2.8" -@@ -1338,13 +1328,13 @@ dependencies = [ - - [metadata] - "checksum adler32 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "5d2e7343e7fc9de883d1b0341e0b13970f764c14101234857d2ddafa1cb1cac2" --"checksum aho-corasick 0.7.6 (registry+https://github.com/rust-lang/crates.io-index)" = "58fb5e95d83b38284460a5fda7d6470aa0b8844d283a0b614b8535e880800d2d" -+"checksum aho-corasick 0.7.7 (registry+https://github.com/rust-lang/crates.io-index)" = "5f56c476256dc249def911d6f7580b5fc7e875895b5d7ee88f5d602208035744" - "checksum ansi_term 0.11.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" - "checksum assert_cmd 0.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6283bac8dd7226470d491bc4737816fea4ca1fba7a2847f2e9097fd6bfb4624c" - "checksum atty 0.2.14 (registry+https://github.com/rust-lang/crates.io-index)" = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" - "checksum autocfg 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "1d49d90015b3c36167a20fe2810c5cd875ad504b39cff3d4eae7977e6b7c1cb2" - "checksum autocfg 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "f8aac770f1885fd7e387acedd76065302551364496e46b3dd00860b2f8359b9d" --"checksum backtrace 0.3.42 (registry+https://github.com/rust-lang/crates.io-index)" = "b4b1549d804b6c73f4817df2ba073709e96e426f12987127c48e6745568c350b" -+"checksum backtrace 0.3.43 (registry+https://github.com/rust-lang/crates.io-index)" = "7f80256bc78f67e7df7e36d77366f636ed976895d91fe2ab9efa3973e8fe8c4f" - "checksum backtrace-sys 0.1.32 (registry+https://github.com/rust-lang/crates.io-index)" = "5d6575f128516de27e3ce99689419835fce9643a9b215a14d2b5b685be018491" - "checksum better-panic 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3d12a680cc74d8c4a44ee08be4a00dedf671b089c2440b2e3fdaa776cd468476" - "checksum bitflags 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" -@@ -1360,7 +1350,7 @@ dependencies = [ - "checksum colored 1.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "8815e2ab78f3a59928fc32e141fbeece88320a240e43f47b2fd64ea3a88a5b3d" - "checksum commoncrypto 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d056a8586ba25a1e4d61cb090900e495952c7886786fc55f909ab2f819b69007" - "checksum commoncrypto-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "1fed34f46747aa73dfaa578069fd8279d2818ade2b55f38f22a9401c7f4083e2" --"checksum console 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f5d540c2d34ac9dd0deb5f3b5f54c36c79efa78f6b3ad19106a554d07a7b5d9f" -+"checksum console 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "45e0f3986890b3acbc782009e2629dfe2baa430ac091519ce3be26164a2ae6c0" - "checksum core-foundation 0.6.4 (registry+https://github.com/rust-lang/crates.io-index)" = "25b9e03f145fd4f2bf705e07b900cd41fc636598fe5dc452fd0db1441c3f496d" - "checksum core-foundation-sys 0.6.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e7ca8a5221364ef15ce201e8ed2f609fc312682a8f4e0e3d4aa5879764e0fa3b" - "checksum crates-io 0.29.0 (registry+https://github.com/rust-lang/crates.io-index)" = "54a5db4b026e2d3bad49a9775b01722035ebc6976b95ec556716852d640f3ad5" -@@ -1373,7 +1363,7 @@ dependencies = [ - "checksum curl-sys 0.4.25 (registry+https://github.com/rust-lang/crates.io-index)" = "0c38ca47d60b86d0cc9d42caa90a0885669c2abc9791f871c81f58cdf39e979b" - "checksum difference 2.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198" - "checksum doc-comment 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "923dea538cea0aa3025e8685b20d6ee21ef99c4f77e954a30febbaac5ec73a97" --"checksum dtoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "ea57b42383d091c85abcc2706240b94ab2a8fa1fc81c10ff23c4de06e2a90b5e" -+"checksum dtoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "4358a9e11b9a09cf52383b451b49a169e8d797b68aa02301ff586d70d9661ea3" - "checksum encode_unicode 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)" = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" - "checksum env_logger 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36" - "checksum escargot 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "74cf96bec282dcdb07099f7e31d9fed323bca9435a09aba7b6d99b7617bca96d" -@@ -1401,7 +1391,7 @@ dependencies = [ - "checksum ignore 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "522daefc3b69036f80c7d2990b28ff9e0471c683bad05ca258e0a01dd22c5a1e" - "checksum im-rc 13.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0a0197597d095c0d11107975d3175173f810ee572c2501ff4de64f4f3f119806" - "checksum indexmap 1.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0b54058f0a6ff80b6803da8faf8997cde53872b38f4023728f6830b06cd3c0dc" --"checksum insta 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d07d2003a61f1eae49feeb2aea003d0da6c80587c20ac505d695805c744d4847" -+"checksum insta 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8df742abee84dbf27d20869c9adf77b0d8f7ea3eead13c2c9e3998d136a97058" - "checksum itoa 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "b8b7a7c0c47db5545ed3fef7468ee7bb5b74691498139e4b3f6a20685dc6dd8e" - "checksum jobserver 0.1.19 (registry+https://github.com/rust-lang/crates.io-index)" = "67b06c1b455f1cf4269a8cfc320ab930a810e2375a42af5075eb8a8b36405ce0" - "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" -@@ -1419,9 +1409,9 @@ dependencies = [ - "checksum miow 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "396aa0f2003d7df8395cb93e09871561ccc3e785f0acb369170e8cc74ddf9226" - "checksum num_cpus 1.12.0 (registry+https://github.com/rust-lang/crates.io-index)" = "46203554f085ff89c235cd12f7075f3233af9b11ed7c9e16dfe2560d03313ce6" - "checksum opener 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "13117407ca9d0caf3a0e74f97b490a7e64c0ae3aa90a8b7085544d0c37b6f3ae" --"checksum openssl 0.10.26 (registry+https://github.com/rust-lang/crates.io-index)" = "3a3cc5799d98e1088141b8e01ff760112bbd9f19d850c124500566ca6901a585" -+"checksum openssl 0.10.27 (registry+https://github.com/rust-lang/crates.io-index)" = "e176a45fedd4c990e26580847a525e39e16ec32ac78957dbf62ded31b3abfd6f" - "checksum openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "77af24da69f9d9341038eba93a073b1fdaaa1b788221b00a69bce9e762cb32de" --"checksum openssl-sys 0.9.53 (registry+https://github.com/rust-lang/crates.io-index)" = "465d16ae7fc0e313318f7de5cecf57b2fbe7511fd213978b457e1c96ff46736f" -+"checksum openssl-sys 0.9.54 (registry+https://github.com/rust-lang/crates.io-index)" = "1024c0a59774200a555087a6da3f253a9095a5f344e353b212ac4c8b8e450986" - "checksum percent-encoding 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" - "checksum petgraph 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "29c127eea4a29ec6c85d153c59dc1213f33ec74cead30fe4730aecc88cc1fd92" - "checksum pico-args 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3ad1f1b834a05d42dae330066e9699a173b28185b3bdc3dbf14ca239585de8cc" -@@ -1458,7 +1448,7 @@ dependencies = [ - "checksum serde_yaml 0.8.11 (registry+https://github.com/rust-lang/crates.io-index)" = "691b17f19fc1ec9d94ec0b5864859290dff279dbd7b03f017afda54eb36c3c35" - "checksum shell-escape 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "170a13e64f2a51b77a45702ba77287f5c6829375b04a69cf2222acd17d0cfab9" - "checksum sized-chunks 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)" = "f01db57d7ee89c8e053245deb77040a6cc8508311f381c88749c33d4b9b78785" --"checksum smallvec 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "44e59e0c9fa00817912ae6e4e6e3c4fe04455e75699d06eedc7d85917ed8e8f4" -+"checksum smallvec 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5c2fb2ec9bcd216a5b0d0ccf31ab17b5ed1d627960edff65bbe95d3ce221cefc" - "checksum socket2 0.3.11 (registry+https://github.com/rust-lang/crates.io-index)" = "e8b74de517221a2cb01a53349cf54182acdc31a074727d3079068448c0676d85" - "checksum strip-ansi-escapes 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "9d63676e2abafa709460982ddc02a3bb586b6d15a49b75c212e06edd3933acee" - "checksum strsim 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" -@@ -1479,7 +1469,6 @@ dependencies = [ - "checksum unicode-xid 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "826e7639553986605ec5979c7dd957c7895e93eabed50ab2ffa7f6128a75097c" - "checksum url 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "829d4a8476c35c9bf0bbce5a3b23f4106f79728039b726d292bb93bc106787cb" - "checksum utf8parse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8772a4ccbb4e89959023bc5b7cb8623a795caa7092d99f3aa9501b9484d4557d" --"checksum uuid 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9fde2f6a4bea1d6e007c4ad38c6839fa71cbb63b6dbf5b595aa38dc9b1093c11" - "checksum vcpkg 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "3fc439f2794e98976c88a2a2dafce96b930fe8010b0a256b3c2199a773933168" - "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a" - "checksum vte 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4f42f536e22f7fcbb407639765c8fd78707a33109301f834a594758bedd6e8cf" diff --git a/third_party/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix b/third_party/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix index 1e79a720a5..1a5273feec 100644 --- a/third_party/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix +++ b/third_party/nixpkgs/pkgs/development/tools/rust/cargo-geiger/default.nix @@ -1,38 +1,26 @@ { stdenv, lib, fetchFromGitHub , rustPlatform, pkgconfig, openssl +# testing packages +, cargo-insta # darwin dependencies , Security, CoreFoundation, libiconv }: rustPlatform.buildRustPackage rec { pname = "cargo-geiger"; - version = "0.9.1"; + version = "0.10.2"; src = fetchFromGitHub { owner = "rust-secure-code"; repo = pname; rev = "${pname}-${version}"; - sha256 = "0kvmjahyx5dcjhry2hkvcshi0lbgipfj0as74a3h3bllfvdfkkg0"; + sha256 = "1z920p8i3gkjadyd6bqjk4i5yr5ds3m3sbcnf7plcqr69dsjr4b8"; }; - cargoSha256 = "0v50fkyf0a77l7whxalwnfqfi8lxy82z2gpd0fa0ib80qjla2n5z"; - cargoPatches = [ ./cargo-lock.patch ]; + cargoSha256 = "1zh6fjfynkn4kgk1chigzd0sh4x1bagizyn7x6qyxgzc57a49bp7"; - # Multiple tests require internet connectivity, so they are disabled here. - # If we ever get cargo-insta (https://crates.io/crates/insta) in tree, - # we might be able to run these with something like - # `cargo insta review` in the `preCheck` phase. checkPhase = '' - cd cargo-geiger/tests/snapshots - for file in * - do - mv $file r#$file - done - cd - - cargo test -- \ - --skip test_package::case_2 \ - --skip test_package::case_3 \ - --skip test_package::case_6 + ${cargo-insta}/bin/cargo-insta test ''; buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ Security libiconv ]; diff --git a/third_party/nixpkgs/pkgs/development/web/kore/default.nix b/third_party/nixpkgs/pkgs/development/web/kore/default.nix index 9cf74354f6..5a6b9930d2 100644 --- a/third_party/nixpkgs/pkgs/development/web/kore/default.nix +++ b/third_party/nixpkgs/pkgs/development/web/kore/default.nix @@ -1,19 +1,31 @@ -{ stdenv, fetchFromGitHub, openssl }: +{ stdenv, fetchFromGitHub, openssl, curl, postgresql, yajl }: stdenv.mkDerivation rec { pname = "kore"; - version = "3.3.1"; + version = "4.0.1"; src = fetchFromGitHub { owner = "jorisvink"; repo = pname; - rev = "${version}-release"; - sha256 = "0jlvry9p1f7284cscfsg04ngbaq038yx3nz815jcr5s3d2jzps3h"; + rev = version; + sha256 = "0186lih30zps2d4600ikafbgsml269jzpcszdggzzkdw8p628qw9"; }; - buildInputs = [ openssl ]; + buildInputs = [ openssl curl postgresql yajl ]; - makeFlags = [ "PREFIX=${placeholder "out"}" ]; + makeFlags = [ + "PREFIX=${placeholder "out"}" + "ACME=1" + "CURL=1" + "TASKS=1" + "PGSQL=1" + "JSONRPC=1" + "DEBUG=1" + ]; + + preBuild = '' + make platform.h + ''; # added to fix build w/gcc7 and clang5 NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.cc.isGNU "-Wno-error=pointer-compare" diff --git a/third_party/nixpkgs/pkgs/development/web/xmlindent/default.nix b/third_party/nixpkgs/pkgs/development/web/xmlindent/default.nix index 4d31641036..b093a8008d 100644 --- a/third_party/nixpkgs/pkgs/development/web/xmlindent/default.nix +++ b/third_party/nixpkgs/pkgs/development/web/xmlindent/default.nix @@ -20,6 +20,6 @@ stdenv.mkDerivation rec { homepage = "http://xmlindent.sourceforge.net/"; license = stdenv.lib.licenses.gpl3; platforms = stdenv.lib.platforms.linux; - maintainers = [ stdenv.lib.maintainers.ocharles ]; + maintainers = [ ]; }; } diff --git a/third_party/nixpkgs/pkgs/games/sauerbraten/default.nix b/third_party/nixpkgs/pkgs/games/sauerbraten/default.nix index c4119ee436..e1f482cc7d 100644 --- a/third_party/nixpkgs/pkgs/games/sauerbraten/default.nix +++ b/third_party/nixpkgs/pkgs/games/sauerbraten/default.nix @@ -1,50 +1,43 @@ -{ stdenv, fetchsvn, SDL2, SDL2_image, SDL2_mixer -, zlib, runtimeShell +{ stdenv, fetchzip, SDL2, SDL2_image, SDL2_mixer +, zlib, makeWrapper }: stdenv.mkDerivation rec { - name = "sauerbraten-r${version}"; - version = "5492"; + pname = "sauerbraten"; + version = "2020-12-04"; - src = fetchsvn { - url = "https://svn.code.sf.net/p/sauerbraten/code"; - sha256 = "0pin7ggy84fadjvran18db5v0l81qfv42faknpfaxx47xqz00l5s"; - rev = version; + src = fetchzip { + url = "mirror://sourceforge/sauerbraten/sauerbraten_${builtins.replaceStrings [ "-" ] [ "_" ] version}_linux.tar.bz2"; + sha256 = "1hknwpnvsakz6s7l7j1r5aqmgrzp4wcbn8yg8nxmvsddbhxdj1kc"; }; + nativeBuildInputs = [ + makeWrapper + ]; + buildInputs = [ SDL2 SDL2_mixer SDL2_image zlib ]; - preBuild = '' - export NIX_LDFLAGS="$NIX_LDFLAGS -lX11" - pushd src - ''; + sourceRoot = "source/src"; installPhase = '' - popd mkdir -p $out/bin $out/share/sauerbraten $out/share/doc/sauerbraten - cp -rv "docs/"* $out/share/doc/sauerbraten/ - cp -v src/sauer_client src/sauer_server $out/share/sauerbraten/ - cp -rv packages $out/share/sauerbraten/ - cp -rv data $out/share/sauerbraten/ - cat > $out/bin/sauerbraten_server < $out/bin/sauerbraten_client <=0.3.0,<0.4.0" "sqlparse" + ''; + + meta = with lib; { inherit version; description = "Command-line interface for MySQL"; longDescription = '' @@ -36,7 +51,7 @@ buildPythonApplication rec { syntax highlighting. ''; homepage = "http://mycli.net"; - license = lib.licenses.bsd3; - maintainers = [ lib.maintainers.jojosch ]; + license = licenses.bsd3; + maintainers = with maintainers; [ jojosch ]; }; } diff --git a/third_party/nixpkgs/pkgs/tools/admin/swiftclient/default.nix b/third_party/nixpkgs/pkgs/tools/admin/swiftclient/default.nix index 82480d38d1..512a7f6209 100644 --- a/third_party/nixpkgs/pkgs/tools/admin/swiftclient/default.nix +++ b/third_party/nixpkgs/pkgs/tools/admin/swiftclient/default.nix @@ -2,11 +2,11 @@ buildPythonApplication rec { pname = "python-swiftclient"; - version = "3.10.1"; + version = "3.11.0"; src = fetchPypi { inherit pname version; - sha256 = "0176b17aa14cc2ef82a327dc70b66af670bdb39dcf836896f81269db376932ea"; + sha256 = "3972f8b1986e60ea786ad01697e6882f331209ae947ef8b795531940f1e0732b"; }; propagatedBuildInputs = [ requests six pbr setuptools ]; diff --git a/third_party/nixpkgs/pkgs/tools/audio/abcm2ps/default.nix b/third_party/nixpkgs/pkgs/tools/audio/abcm2ps/default.nix index 5088cdeb96..139d684fb6 100644 --- a/third_party/nixpkgs/pkgs/tools/audio/abcm2ps/default.nix +++ b/third_party/nixpkgs/pkgs/tools/audio/abcm2ps/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "abcm2ps"; - version = "8.14.10"; + version = "8.14.11"; src = fetchFromGitHub { owner = "leesavide"; repo = "abcm2ps"; rev = "v${version}"; - sha256 = "0x20vmf94n9s4r2q45543yi39fkc0jg9wd1imihjcqmb2sz3x3vm"; + sha256 = "0lzzr2nkfg27gljcrdxkmli1wp08vap3vgxq1zgkv7f43rbm0qnw"; }; configureFlags = [ diff --git a/third_party/nixpkgs/pkgs/tools/backup/wal-g/default.nix b/third_party/nixpkgs/pkgs/tools/backup/wal-g/default.nix index a2702f993a..f3c415f3cd 100644 --- a/third_party/nixpkgs/pkgs/tools/backup/wal-g/default.nix +++ b/third_party/nixpkgs/pkgs/tools/backup/wal-g/default.nix @@ -27,6 +27,6 @@ buildGoModule rec { homepage = "https://github.com/wal-g/wal-g"; license = licenses.asl20; description = "An archival restoration tool for PostgreSQL"; - maintainers = with maintainers; [ ocharles marsam ]; + maintainers = with maintainers; [ marsam ]; }; } diff --git a/third_party/nixpkgs/pkgs/tools/filesystems/ceph/default.nix b/third_party/nixpkgs/pkgs/tools/filesystems/ceph/default.nix index b75a902681..1a43d792ad 100644 --- a/third_party/nixpkgs/pkgs/tools/filesystems/ceph/default.nix +++ b/third_party/nixpkgs/pkgs/tools/filesystems/ceph/default.nix @@ -122,10 +122,10 @@ let ]); sitePackages = ceph-python-env.python.sitePackages; - version = "15.2.6"; + version = "15.2.7"; src = fetchurl { url = "http://download.ceph.com/tarballs/ceph-${version}.tar.gz"; - sha256 = "093pphgqrkrbv3484ayl0vac6a6s53zxa01yad0cbvnx0kyj55hh"; + sha256 = "082lpx1rsifjh636zypxy6ccs6nfkcm9azxp5ghvr5mvx9chmyrj"; }; in rec { ceph = stdenv.mkDerivation { diff --git a/third_party/nixpkgs/pkgs/tools/filesystems/ifuse/default.nix b/third_party/nixpkgs/pkgs/tools/filesystems/ifuse/default.nix index 5e6025c034..96a8c1d630 100644 --- a/third_party/nixpkgs/pkgs/tools/filesystems/ifuse/default.nix +++ b/third_party/nixpkgs/pkgs/tools/filesystems/ifuse/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "ifuse"; - version = "2018-10-08"; + version = "1.1.4"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = pname; - rev = "e75d32c34d0e8b80320f0a007d5ecbb3f55ef7f0"; - sha256 = "1b9w2i0sliswlkkb890l9i0rxrf631xywxf8ihygfmjdsfw47h1m"; + rev = version; + sha256 = "1r12y3h1j7ikkwk874h9969kr4ksyamvrwywx19ml6rsr01arw84"; }; nativeBuildInputs = [ autoreconfHook pkgconfig fuse usbmuxd libimobiledevice ]; diff --git a/third_party/nixpkgs/pkgs/tools/graphics/resvg/default.nix b/third_party/nixpkgs/pkgs/tools/graphics/resvg/default.nix index ea6a75eb3a..71df018606 100644 --- a/third_party/nixpkgs/pkgs/tools/graphics/resvg/default.nix +++ b/third_party/nixpkgs/pkgs/tools/graphics/resvg/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "resvg"; - version = "0.11.0"; + version = "0.12.0"; src = fetchFromGitHub { owner = "RazrFalcon"; repo = pname; rev = "v${version}"; - sha256 = "1qaca8wqwi2wqqx1yladjb4clgqdzsm8b7qsiaw0qascddjw1mcc"; + sha256 = "0iqlg0wmx9y81ncbw4ihd6pr7ddpfsvk35zmhzsq4plwzbxgp0w1"; }; - cargoSha256 = "1y10xzdf5kxbi9930qfsmryrbrkx1wmc5b216l9wcxq6cd77hxy2"; + cargoSha256 = "0jgczhvm5rsv4vwd5wx6gshy6322im4c3wi79klk249czr6vlwsg"; doCheck = false; diff --git a/third_party/nixpkgs/pkgs/tools/inputmethods/netevent/default.nix b/third_party/nixpkgs/pkgs/tools/inputmethods/netevent/default.nix new file mode 100644 index 0000000000..f845111f4b --- /dev/null +++ b/third_party/nixpkgs/pkgs/tools/inputmethods/netevent/default.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchFromGitHub, docutils, installShellFiles }: + +stdenv.mkDerivation { + pname = "netevent"; + version = "20201018"; + + src = fetchFromGitHub { + owner = "Blub"; + repo = "netevent"; + rev = "ddd330f0dc956a95a111c58ad10546071058e4c1"; + sha256 = "0myk91pmim0m51h4b8hplkbxvns0icvfmv0401r0hw8md828nh5c"; + }; + + buildInputs = [ docutils ]; + nativeBuildInputs = [ installShellFiles ]; + + outputs = [ "out" "doc" "man" ]; + + configurePhase = '' + export RST2MAN=rst2man + ./configure + ''; + + installPhase = '' + mkdir -p $out/bin + install -m 0755 netevent $out/bin/ + + installManPage doc/netevent.1 + + mkdir -p $doc/share/doc/netevent + cp doc/netevent.rst $doc/share/doc/netevent/netevent.rst + ''; + + meta = with stdenv.lib; { + description = "Share linux event devices with other machines"; + homepage = "https://github.com/Blub/netevent"; + license = licenses.gpl2Only; + platforms = platforms.linux; + maintainers = with maintainers; [ rgrunbla ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/tools/misc/coreutils/default.nix b/third_party/nixpkgs/pkgs/tools/misc/coreutils/default.nix index e3e2e167e3..d0e032b7c1 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/coreutils/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/coreutils/default.nix @@ -31,7 +31,10 @@ stdenv.mkDerivation (rec { patches = optional stdenv.hostPlatform.isCygwin ./coreutils-8.23-4.cygwin.patch # included on coreutils master; TODO: apply unconditionally, I guess - ++ optional stdenv.hostPlatform.isAarch64 ./sys-getdents-undeclared.patch; + ++ optional stdenv.hostPlatform.isAarch64 ./sys-getdents-undeclared.patch + # fix gnulib tests on 32-bit ARM. Included on coreutils master. + # https://lists.gnu.org/r/bug-gnulib/2020-08/msg00225.html + ++ optional stdenv.hostPlatform.isAarch32 ./fix-gnulib-tests-arm.patch; postPatch = '' # The test tends to fail on btrfs,f2fs and maybe other unusual filesystems. diff --git a/third_party/nixpkgs/pkgs/tools/misc/coreutils/fix-gnulib-tests-arm.patch b/third_party/nixpkgs/pkgs/tools/misc/coreutils/fix-gnulib-tests-arm.patch new file mode 100644 index 0000000000..39bd29f843 --- /dev/null +++ b/third_party/nixpkgs/pkgs/tools/misc/coreutils/fix-gnulib-tests-arm.patch @@ -0,0 +1,45 @@ +>From 175e0bc72808d564074c4adcc72aeadb74adfcc6 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Thu, 27 Aug 2020 17:52:58 -0700 +Subject: [PATCH] perror, strerror_r: remove unportable tests + +Problem reported by Florian Weimer in: +https://lists.gnu.org/r/bug-gnulib/2020-08/msg00220.html +* tests/test-perror2.c (main): +* tests/test-strerror_r.c (main): Omit unportable tests. +--- + tests/test-perror2.c | 3 --- + tests/test-strerror_r.c | 3 --- + 2 files changed, 6 deletions(-) + +diff --git a/gnulib-tests/test-perror2.c b/gnulib-tests/test-perror2.c +index 1d14eda7b..c6214dd25 100644 +--- a/gnulib-tests/test-perror2.c ++++ b/gnulib-tests/test-perror2.c +@@ -79,9 +79,6 @@ main (void) + errno = -5; + perror (""); + ASSERT (!ferror (stderr)); +- ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1)); +- ASSERT (msg2 == msg4 || STREQ (msg2, str2)); +- ASSERT (msg3 == msg4 || STREQ (msg3, str3)); + ASSERT (STREQ (msg4, str4)); + + free (str1); +diff --git a/gnulib-tests/test-strerror_r.c b/gnulib-tests/test-strerror_r.c +index b11d6fd9f..c1dbcf837 100644 +--- a/gnulib-tests/test-strerror_r.c ++++ b/gnulib-tests/test-strerror_r.c +@@ -165,9 +165,6 @@ main (void) + + strerror_r (EACCES, buf, sizeof buf); + strerror_r (-5, buf, sizeof buf); +- ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1)); +- ASSERT (msg2 == msg4 || STREQ (msg2, str2)); +- ASSERT (msg3 == msg4 || STREQ (msg3, str3)); + ASSERT (STREQ (msg4, str4)); + + free (str1); +-- +2.17.1 + diff --git a/third_party/nixpkgs/pkgs/tools/misc/fd/default.nix b/third_party/nixpkgs/pkgs/tools/misc/fd/default.nix index 56b3e770e8..ec5dda52a1 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/fd/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/fd/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "fd"; - version = "8.2.0"; + version = "8.2.1"; src = fetchFromGitHub { owner = "sharkdp"; repo = "fd"; rev = "v${version}"; - sha256 = "1g9jnf9h2s33l5q9z892vmvj78phwd4hfvspvnraxj4lvjp707ia"; + sha256 = "00vlifbri021z8nf7xvbaay8mqvnq58h19va9bqr5lhsqj1f82wq"; }; - cargoSha256 = "0yavp67fb4vqygww9kjzdi7gr7dj4aw47s03dkwlz526rhkhappw"; + cargoSha256 = "0jyqnl6rski1vv2ah21xmwai3rfb542mv14laws4kc2wh63k68i4"; nativeBuildInputs = [ installShellFiles ]; diff --git a/third_party/nixpkgs/pkgs/tools/misc/findutils/default.nix b/third_party/nixpkgs/pkgs/tools/misc/findutils/default.nix index 84dd187e1f..6e07125ab7 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/findutils/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/findutils/default.nix @@ -20,9 +20,10 @@ stdenv.mkDerivation rec { substituteInPlace xargs/xargs.c --replace 'char default_cmd[] = "echo";' 'char default_cmd[] = "${coreutils}/bin/echo";' ''; - patches = [ - ./no-install-statedir.patch - ]; + patches = [ ./no-install-statedir.patch ] + # fix gnulib tests on 32-bit ARM. Included on findutils master. + # https://lists.gnu.org/r/bug-gnulib/2020-08/msg00225.html + ++ stdenv.lib.optional stdenv.hostPlatform.isAarch32 ./fix-gnulib-tests-arm.patch; buildInputs = [ coreutils ]; # bin/updatedb script needs to call sort diff --git a/third_party/nixpkgs/pkgs/tools/misc/findutils/fix-gnulib-tests-arm.patch b/third_party/nixpkgs/pkgs/tools/misc/findutils/fix-gnulib-tests-arm.patch new file mode 100644 index 0000000000..39bd29f843 --- /dev/null +++ b/third_party/nixpkgs/pkgs/tools/misc/findutils/fix-gnulib-tests-arm.patch @@ -0,0 +1,45 @@ +>From 175e0bc72808d564074c4adcc72aeadb74adfcc6 Mon Sep 17 00:00:00 2001 +From: Paul Eggert +Date: Thu, 27 Aug 2020 17:52:58 -0700 +Subject: [PATCH] perror, strerror_r: remove unportable tests + +Problem reported by Florian Weimer in: +https://lists.gnu.org/r/bug-gnulib/2020-08/msg00220.html +* tests/test-perror2.c (main): +* tests/test-strerror_r.c (main): Omit unportable tests. +--- + tests/test-perror2.c | 3 --- + tests/test-strerror_r.c | 3 --- + 2 files changed, 6 deletions(-) + +diff --git a/gnulib-tests/test-perror2.c b/gnulib-tests/test-perror2.c +index 1d14eda7b..c6214dd25 100644 +--- a/gnulib-tests/test-perror2.c ++++ b/gnulib-tests/test-perror2.c +@@ -79,9 +79,6 @@ main (void) + errno = -5; + perror (""); + ASSERT (!ferror (stderr)); +- ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1)); +- ASSERT (msg2 == msg4 || STREQ (msg2, str2)); +- ASSERT (msg3 == msg4 || STREQ (msg3, str3)); + ASSERT (STREQ (msg4, str4)); + + free (str1); +diff --git a/gnulib-tests/test-strerror_r.c b/gnulib-tests/test-strerror_r.c +index b11d6fd9f..c1dbcf837 100644 +--- a/gnulib-tests/test-strerror_r.c ++++ b/gnulib-tests/test-strerror_r.c +@@ -165,9 +165,6 @@ main (void) + + strerror_r (EACCES, buf, sizeof buf); + strerror_r (-5, buf, sizeof buf); +- ASSERT (msg1 == msg2 || msg1 == msg4 || STREQ (msg1, str1)); +- ASSERT (msg2 == msg4 || STREQ (msg2, str2)); +- ASSERT (msg3 == msg4 || STREQ (msg3, str3)); + ASSERT (STREQ (msg4, str4)); + + free (str1); +-- +2.17.1 + diff --git a/third_party/nixpkgs/pkgs/tools/misc/fluent-bit/default.nix b/third_party/nixpkgs/pkgs/tools/misc/fluent-bit/default.nix index ec1a0072a5..60860c197e 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/fluent-bit/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/fluent-bit/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "fluent-bit"; - version = "1.6.7"; + version = "1.6.8"; src = fetchFromGitHub { owner = "fluent"; repo = "fluent-bit"; rev = "v${version}"; - sha256 = "1rybz69yhjm1g8m6wmn6v143a65y69w2fvs62yr8n1r92cadzbia"; + sha256 = "1k8ghz8xwy7v4y4r4xc690ig7qmn0mkvynplwn66j44fgdpg0v1s"; }; nativeBuildInputs = [ cmake flex bison ]; diff --git a/third_party/nixpkgs/pkgs/tools/misc/ideviceinstaller/default.nix b/third_party/nixpkgs/pkgs/tools/misc/ideviceinstaller/default.nix index 4046d775a5..3dd5365803 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/ideviceinstaller/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/ideviceinstaller/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "ideviceinstaller"; - version = "2018-10-01"; + version = "1.1.1"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = pname; - rev = "f14def7cd9303a0fe622732fae9830ae702fdd7c"; - sha256 = "1biwhbldvgdhn8ygp7w79ca0rivzdjpykr76pyhy7r2fa56mrwq8"; + rev = version; + sha256 = "1xp0sjgfx2z19x9mxihn18ybsmrnrcfc55zbh5a44g3vrmagmlzz"; }; nativeBuildInputs = [ autoreconfHook pkgconfig usbmuxd libimobiledevice libzip ]; @@ -22,7 +22,7 @@ stdenv.mkDerivation rec { and enumerate installed or archived apps. ''; license = licenses.gpl2; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; maintainers = with maintainers; [ aristid infinisil ]; }; } diff --git a/third_party/nixpkgs/pkgs/tools/misc/idevicerestore/default.nix b/third_party/nixpkgs/pkgs/tools/misc/idevicerestore/default.nix index ab22e413b0..cbb0e1058a 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/idevicerestore/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/idevicerestore/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "idevicerestore"; - version = "2019-12-26"; + version = "1.0.0"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = pname; - rev = "8207daaa2ac3cb3a5107aae6aefee8ecbe39b6d4"; - sha256 = "1jz72bzk1fh12bs65pv06l85135hgfz1aqnbb084bvqcpj4gl40h"; + rev = version; + sha256 = "1w7ywp77xc6v4hifi3j9ywrj447vv7fkwg2w26w0lq95f3bkblqr"; }; nativeBuildInputs = [ diff --git a/third_party/nixpkgs/pkgs/tools/misc/ink/default.nix b/third_party/nixpkgs/pkgs/tools/misc/ink/default.nix new file mode 100644 index 0000000000..266298d9ec --- /dev/null +++ b/third_party/nixpkgs/pkgs/tools/misc/ink/default.nix @@ -0,0 +1,28 @@ +{ stdenv, fetchurl, libinklevel }: + +stdenv.mkDerivation rec { + pname = "ink"; + version = "0.5.3"; + + src = fetchurl { + url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.gz"; + sha256 = "1fk0b8vic04a3i3vmq73hbk7mzbi57s8ks6ighn3mvr6m2v8yc9d"; + }; + + buildInputs = [ + libinklevel + ]; + + outputs = [ "out" "man" ]; + + meta = with stdenv.lib; { + description = "A command line tool for checking the ink level of your locally connected printer"; + longDescription = '' + Ink is a command line tool for checking the ink level of your locally connected printer on a system which runs Linux or FreeBSD. Canon BJNP network printers are supported too. + ''; + homepage = "http://ink.sourceforge.net/"; + license = licenses.gpl2; + platforms = platforms.linux ++ platforms.freebsd; + maintainers = with maintainers; [ samb96 ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/tools/misc/less/default.nix b/third_party/nixpkgs/pkgs/tools/misc/less/default.nix index 9b1aa0dc59..4ffbf8634a 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/less/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/less/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "less"; - version = "551"; + version = "563"; src = fetchurl { url = "http://www.greenwoodsoftware.com/${pname}/${pname}-${version}.tar.gz"; - sha256 = "0ggyjl3yzn7c450zk1rixi9ls6asdhgqynhk34zsd0ckhmsm45pz"; + sha256 = "16lsvk88vwjwp5ax1wnll44wxwnzs8lb2fn90xx2si64kwmnsnyf"; }; configureFlags = [ "--sysconfdir=/etc" ] # Look for ‘sysless’ in /etc. diff --git a/third_party/nixpkgs/pkgs/tools/misc/mcfly/default.nix b/third_party/nixpkgs/pkgs/tools/misc/mcfly/default.nix index 39f9b47f46..ef35383211 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/mcfly/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/mcfly/default.nix @@ -2,13 +2,13 @@ rustPlatform.buildRustPackage rec { pname = "mcfly"; - version = "0.5.0"; + version = "0.5.1"; src = fetchFromGitHub { owner = "cantino"; repo = "mcfly"; rev = "v${version}"; - sha256 = "155x745jakfcpr6kmp24cy8xwdhv81jdfjjhd149bnw5ilg0z037"; + sha256 = "1biahx4bji8kasqcxnixnpmfx3qwwibw1vdd172px3i75pbyybqn"; }; postInstall = '' @@ -20,7 +20,7 @@ rustPlatform.buildRustPackage rec { install -Dm644 -t $out/share/mcfly mcfly.fish ''; - cargoSha256 = "0y6sjbzg5qqqip9sc9ajyd5ra3n2wwvarj6nhpzjhh05kqz3qja4"; + cargoSha256 = "139pdhrqgl0ai94w2c948aal1j73qw4jxxdd4gxn4apglbnma1xz"; meta = with stdenv.lib; { homepage = "https://github.com/cantino/mcfly"; diff --git a/third_party/nixpkgs/pkgs/tools/misc/opentsdb/default.nix b/third_party/nixpkgs/pkgs/tools/misc/opentsdb/default.nix index 5429ecea2c..ed80f62031 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/opentsdb/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/opentsdb/default.nix @@ -31,6 +31,6 @@ stdenv.mkDerivation rec { homepage = "http://opentsdb.net"; license = licenses.lgpl21Plus; platforms = stdenv.lib.platforms.linux; - maintainers = [ maintainers.ocharles ]; + maintainers = [ ]; }; } diff --git a/third_party/nixpkgs/pkgs/tools/misc/pandoc-lua-filters/default.nix b/third_party/nixpkgs/pkgs/tools/misc/pandoc-lua-filters/default.nix new file mode 100644 index 0000000000..b7c081c1dd --- /dev/null +++ b/third_party/nixpkgs/pkgs/tools/misc/pandoc-lua-filters/default.nix @@ -0,0 +1,33 @@ +{ stdenv +, fetchFromGitHub +}: + +stdenv.mkDerivation rec { + pname = "pandoc-lua-filters"; + version = "2020-11-30"; + + src = fetchFromGitHub { + owner = "pandoc"; + repo = "lua-filters"; + rev = "v${version}"; + sha256 = "HWBlmlIuJOSgRVrUmXOAI4XTxs1PbZhcwZgZFX0x2wM="; + }; + + dontBuild = true; + + installPhase = '' + runHook preInstall + + install -Dt $out/share/pandoc/filters **/*.lua + + runHook postInstall + ''; + + meta = with stdenv.lib; { + description = "A collection of lua filters for pandoc"; + homepage = "https://github.com/pandoc/lua-filters"; + license = licenses.mit; + maintainers = with maintainers; [ jtojnar ]; + platforms = platforms.all; + }; +} diff --git a/third_party/nixpkgs/pkgs/tools/misc/pfsshell/default.nix b/third_party/nixpkgs/pkgs/tools/misc/pfsshell/default.nix new file mode 100644 index 0000000000..e941cbd84c --- /dev/null +++ b/third_party/nixpkgs/pkgs/tools/misc/pfsshell/default.nix @@ -0,0 +1,30 @@ +{ stdenv, fetchFromGitHub, meson, ninja }: + +stdenv.mkDerivation rec { + version = "1.1.1"; + pname = "pfsshell"; + + src = fetchFromGitHub { + owner = "uyjulian"; + repo = "pfsshell"; + rev = "v${version}"; + sha256 = "0cr91al3knsbfim75rzl7rxdsglcc144x0nizn7q4jx5cad3zbn8"; + }; + + nativeBuildInputs = [ meson ninja ]; + + # Build errors since 1.1.1 when format hardening is enabled: + # cc1: error: '-Wformat-security' ignored without '-Wformat' [-Werror=format-security] + hardeningDisable = [ "format" ]; + + meta = with stdenv.lib; { + inherit (src.meta) homepage; + description = "PFS (PlayStation File System) shell for POSIX-based systems"; + platforms = platforms.unix; + license = with licenses; [ + gpl2Only # the pfsshell software itself + afl20 # APA, PFS, and iomanX libraries which are compiled together with this package + ]; + maintainers = with maintainers; [ makefu ]; + }; +} diff --git a/third_party/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix b/third_party/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix index ff1b6c01f4..e516847767 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/pgmetrics/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "pgmetrics"; - version = "1.10.2"; + version = "1.10.3"; src = fetchFromGitHub { owner = "rapidloop"; repo = pname; rev = "v${version}"; - sha256 = "0mhdw985gs9gh44iz78a588nnnapirpnd7s0zh35jyripx8pgw47"; + sha256 = "1acdak3m9782hr5bn26ck3dnnv1jxwz5yrkyv8kivavjww88m9h2"; }; vendorSha256 = "16x33fmh4q993rw0jr65337yimska4fwgyyw3kmq84q0x28a3zg5"; diff --git a/third_party/nixpkgs/pkgs/tools/misc/usbmuxd/default.nix b/third_party/nixpkgs/pkgs/tools/misc/usbmuxd/default.nix index 1c1da7597e..968b4e0072 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/usbmuxd/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/usbmuxd/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "usbmuxd"; - version = "2019-11-11"; + version = "1.1.1"; src = fetchFromGitHub { owner = "libimobiledevice"; repo = pname; - rev = "9af2b12552693a47601347e1eafc1e94132d727e"; - sha256 = "0w8mf2wfpqijg882vhb8xarlp6zja23xf0b59z5zi774pnpjbqvj"; + rev = version; + sha256 = "0a2xgrb4b3ndam448z74wh1267nmrz1wcbpx4xz86pwbdc93snab"; }; nativeBuildInputs = [ autoreconfHook pkgconfig ]; @@ -32,7 +32,7 @@ stdenv.mkDerivation rec { in parallel. The higher-level layers are handled by libimobiledevice. ''; license = licenses.gpl2Plus; - platforms = platforms.linux; + platforms = platforms.linux ++ platforms.darwin; maintainers = with maintainers; [ infinisil ]; }; } diff --git a/third_party/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix b/third_party/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix index b037a982ed..efa39f4509 100644 --- a/third_party/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix +++ b/third_party/nixpkgs/pkgs/tools/misc/youtube-dl/default.nix @@ -18,11 +18,11 @@ buildPythonPackage rec { # The websites youtube-dl deals with are a very moving target. That means that # downloads break constantly. Because of that, updates should always be backported # to the latest stable release. - version = "2020.12.05"; + version = "2020.12.07"; src = fetchurl { url = "https://yt-dl.org/downloads/${version}/${pname}-${version}.tar.gz"; - sha256 = "065s45l8qz7wlkaxw9bj20gq9647zpwdj9vc6chhqjscl63z1aqm"; + sha256 = "0sbrwak9c0pbacg15q2wj5fcsj5k5k1sx9jm7rcjwkjdhqcjqrsi"; }; nativeBuildInputs = [ installShellFiles makeWrapper ]; diff --git a/third_party/nixpkgs/pkgs/tools/networking/gping/default.nix b/third_party/nixpkgs/pkgs/tools/networking/gping/default.nix index fdf5c9ad70..329302ae35 100644 --- a/third_party/nixpkgs/pkgs/tools/networking/gping/default.nix +++ b/third_party/nixpkgs/pkgs/tools/networking/gping/default.nix @@ -5,16 +5,16 @@ rustPlatform.buildRustPackage rec { pname = "gping"; - version = "1.1.0"; + version = "1.2.0-post"; src = fetchFromGitHub { owner = "orf"; repo = "gping"; rev = "v${version}"; - sha256 = "10hvzgn98qbzs7mmql9wlbll814mkki29lvg71lbvr81wlbdn6mr"; + sha256 = "0h4cd36lrhr64p3m2l7yvkq22h8fzzm3g61m39d303s1viibm6dg"; }; - cargoSha256 = "0kkfrdzyy5068k8nz08pfc4cl1dvn0vd6i01gax5dblk122ybbag"; + cargoSha256 = "0aadalgs5p7wqbbkidm49ccfl716xairb4pirrgm3749zdg55bi9"; meta = with lib; { description = "Ping, but with a graph"; diff --git a/third_party/nixpkgs/pkgs/tools/networking/siege/default.nix b/third_party/nixpkgs/pkgs/tools/networking/siege/default.nix index 7e85973cbd..4df008364d 100644 --- a/third_party/nixpkgs/pkgs/tools/networking/siege/default.nix +++ b/third_party/nixpkgs/pkgs/tools/networking/siege/default.nix @@ -23,7 +23,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "HTTP load tester"; - maintainers = with maintainers; [ ocharles raskin ]; + maintainers = with maintainers; [ raskin ]; platforms = platforms.unix; license = licenses.gpl2Plus; }; diff --git a/third_party/nixpkgs/pkgs/tools/networking/v2ray/default.nix b/third_party/nixpkgs/pkgs/tools/networking/v2ray/default.nix index ecc2c24384..4d553670e3 100644 --- a/third_party/nixpkgs/pkgs/tools/networking/v2ray/default.nix +++ b/third_party/nixpkgs/pkgs/tools/networking/v2ray/default.nix @@ -3,22 +3,22 @@ }: let - version = "4.32.1"; + version = "4.33.0"; src = fetchFromGitHub { owner = "v2fly"; repo = "v2ray-core"; rev = "v${version}"; - sha256 = "1mlrl5fz1v3bcb83pczqp859d8w9mi7jj600a2yw7xm372w2irk8"; + sha256 = "05w714i56nipp7m985g6zqq6ljz0w5ihxrgs93j10llfdd089iig"; }; - vendorSha256 = "1mz1acdj8ailgyqrr1v47n36qc24ggzw5rmj4p2awfwz3gp2yz6z"; + vendorSha256 = "0ix5kxldgbcb10jh0l64lrh8qzla4qvsxi6vanb73y7lbsix120w"; assets = { # MIT licensed "geoip.dat" = let - geoipRev = "202011050012"; - geoipSha256 = "1d2n3hskgdmcfk1nl7a8lxxz325p84i7gz44cs77z1m9r7c2vsjy"; + geoipRev = "202012030015"; + geoipSha256 = "1qy9h0721y5kjcp0s859lhj253jfi3d3i658gpc4kmij2l5dxm5w"; in fetchurl { url = "https://github.com/v2fly/geoip/releases/download/${geoipRev}/geoip.dat"; sha256 = geoipSha256; @@ -26,8 +26,8 @@ let # MIT licensed "geosite.dat" = let - geositeRev = "20201102141726"; - geositeSha256 = "0sn2f5vd6w94ryh845mnbfyjzycg7cvb66rkzh37pg9l7fvgs4jh"; + geositeRev = "20201207123222"; + geositeSha256 = "03xckk39rrda42cam2awbsh0gib6rhmz28asc8vx29lsp9g2bj6n"; in fetchurl { url = "https://github.com/v2fly/domain-list-community/releases/download/${geositeRev}/dlc.dat"; sha256 = geositeSha256; @@ -61,11 +61,9 @@ let ''; meta = { - homepage = "https://www.v2ray.com/en/index.html"; + homepage = "https://www.v2fly.org/en_US/"; description = "A platform for building proxies to bypass network restrictions"; - # The license of the dependency `https://github.com/XTLS/Go` doesn't allowed user to modify its source code, - # which made it unfree. - license = with lib.licenses; [ mit unfree ]; + license = with lib.licenses; [ mit ]; maintainers = with lib.maintainers; [ servalcatty ]; }; }; @@ -77,6 +75,7 @@ in runCommand "v2ray-${version}" { nativeBuildInputs = [ makeWrapper ]; passthru = { + inherit core; updateScript = ./update.sh; tests = { simple-vmess-proxy-test = nixosTests.v2ray; diff --git a/third_party/nixpkgs/pkgs/tools/package-management/apk-tools/default.nix b/third_party/nixpkgs/pkgs/tools/package-management/apk-tools/default.nix index 33c08636e4..c1141362f8 100644 --- a/third_party/nixpkgs/pkgs/tools/package-management/apk-tools/default.nix +++ b/third_party/nixpkgs/pkgs/tools/package-management/apk-tools/default.nix @@ -32,5 +32,6 @@ stdenv.mkDerivation rec { maintainers = with maintainers; [ qyliss ]; license = licenses.gpl2; platforms = platforms.unix; + broken = stdenv.isDarwin; }; } diff --git a/third_party/nixpkgs/pkgs/tools/security/clamav/default.nix b/third_party/nixpkgs/pkgs/tools/security/clamav/default.nix index 3c09951f24..e3c57cbc9e 100644 --- a/third_party/nixpkgs/pkgs/tools/security/clamav/default.nix +++ b/third_party/nixpkgs/pkgs/tools/security/clamav/default.nix @@ -1,6 +1,6 @@ -{ stdenv, fetchurl, pkgconfig +{ stdenv, fetchurl, pkg-config , zlib, bzip2, libiconv, libxml2, openssl, ncurses, curl, libmilter, pcre2 -, libmspack, systemd, Foundation +, libmspack, systemd, Foundation, json_c, check }: stdenv.mkDerivation rec { @@ -17,9 +17,10 @@ stdenv.mkDerivation rec { substituteInPlace Makefile.in --replace ' etc ' ' ' ''; - nativeBuildInputs = [ pkgconfig ]; + enableParallelBuilding = true; + nativeBuildInputs = [ pkg-config ]; buildInputs = [ - zlib bzip2 libxml2 openssl ncurses curl libiconv libmilter pcre2 libmspack + zlib bzip2 libxml2 openssl ncurses curl libiconv libmilter pcre2 libmspack json_c check ] ++ stdenv.lib.optional stdenv.isLinux systemd ++ stdenv.lib.optional stdenv.isDarwin Foundation; @@ -31,8 +32,11 @@ stdenv.mkDerivation rec { "--with-xml=${libxml2.dev}" "--with-openssl=${openssl.dev}" "--with-libcurl=${curl.dev}" + "--with-libjson=${json_c.dev}" "--with-system-libmspack" "--enable-milter" + "--disable-unrar" # disable unrar because it's non-free and requires some extra patching to work properly + "--enable-check" ] ++ stdenv.lib.optional stdenv.isLinux "--with-systemdsystemunitdir=$(out)/lib/systemd"; @@ -41,6 +45,10 @@ stdenv.mkDerivation rec { cp etc/*.sample $out/etc ''; + # Only required for the unit tests + hardeningDisable = [ "format" ]; + doCheck = true; + meta = with stdenv.lib; { homepage = "https://www.clamav.net"; description = "Antivirus engine designed for detecting Trojans, viruses, malware and other malicious threats"; diff --git a/third_party/nixpkgs/pkgs/tools/system/htop/default.nix b/third_party/nixpkgs/pkgs/tools/system/htop/default.nix index 29f361195d..a36cb905d2 100644 --- a/third_party/nixpkgs/pkgs/tools/system/htop/default.nix +++ b/third_party/nixpkgs/pkgs/tools/system/htop/default.nix @@ -4,13 +4,13 @@ stdenv.mkDerivation rec { pname = "htop"; - version = "3.0.2"; + version = "3.0.3"; src = fetchFromGitHub { owner = "htop-dev"; repo = pname; rev = version; - sha256 = "1qmqhbnc5yw4brd24yrp85k09770c1c00nl03mkv5pdz2bvqivk7"; + sha256 = "0ylig6g2w4r3qfb16cf922iriqyn64frkzpk87vpga16kclvf08y"; }; nativeBuildInputs = [ autoreconfHook ]; diff --git a/third_party/nixpkgs/pkgs/tools/system/thinkfan/default.nix b/third_party/nixpkgs/pkgs/tools/system/thinkfan/default.nix index 62c299cce7..bf594b6b9c 100644 --- a/third_party/nixpkgs/pkgs/tools/system/thinkfan/default.nix +++ b/third_party/nixpkgs/pkgs/tools/system/thinkfan/default.nix @@ -3,13 +3,13 @@ stdenv.mkDerivation rec { pname = "thinkfan"; - version = "1.1"; + version = "1.2.1"; src = fetchFromGitHub { owner = "vmatare"; repo = "thinkfan"; rev = version; - sha256 = "1fxd1w3z65glw6y04myn7ihgswkx6sqnkky159mik4n96pfrsvr5"; + sha256 = "18vgm5w5pjnpipa34j4x87q10695w2jnqwvc2f027afy7mnzw7kz"; }; cmakeFlags = [ @@ -27,7 +27,7 @@ stdenv.mkDerivation rec { install -Dm755 {.,$out/bin}/thinkfan cd "$NIX_BUILD_TOP"; cd "$sourceRoot" # attempt to be a bit robust - install -Dm644 {.,$out/share/doc/thinkfan}/README + install -Dm644 {.,$out/share/doc/thinkfan}/README.md cp -R examples $out/share/doc/thinkfan install -Dm644 {src,$out/share/man/man1}/thinkfan.1 diff --git a/third_party/nixpkgs/pkgs/tools/text/pbgopy/default.nix b/third_party/nixpkgs/pkgs/tools/text/pbgopy/default.nix index 3972d3dc9b..0982fbf28b 100644 --- a/third_party/nixpkgs/pkgs/tools/text/pbgopy/default.nix +++ b/third_party/nixpkgs/pkgs/tools/text/pbgopy/default.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "pbgopy"; - version = "0.1.1"; + version = "0.2.0"; src = fetchFromGitHub { owner = "nakabonne"; repo = pname; rev = "v${version}"; - sha256 = "17rk15hs7kg9m1vphh1gjny7sqnk80qw61jn8qyxcmw2n55rkmfp"; + sha256 = "0impgx9w9lk93b7p1vhjnbslr04655fn6csx7hj04kffzhyb3p1q"; }; - vendorSha256 = "1ak3hd979395grbns9p5sw5f45plcqq6vg7j7v8n7xqc20s2l8m9"; + vendorSha256 = "09hn92bi2rmixpsgckbi8f70widls40fwqqm7y7rqglyjqi7rdmw"; meta = with stdenv.lib; { description = "Copy and paste between devices"; diff --git a/third_party/nixpkgs/pkgs/tools/text/ugrep/default.nix b/third_party/nixpkgs/pkgs/tools/text/ugrep/default.nix index 06c8b0d3d6..353d85931a 100644 --- a/third_party/nixpkgs/pkgs/tools/text/ugrep/default.nix +++ b/third_party/nixpkgs/pkgs/tools/text/ugrep/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "ugrep"; - version = "3.0.5"; + version = "3.0.6"; src = fetchFromGitHub { owner = "Genivia"; repo = pname; rev = "v${version}"; - sha256 = "17yrlgn18kkx7m03dr0hamv0jny6z4x6sk6an41l807i1xaqjyg6"; + sha256 = "1s8glpk7li45rcf2xi21qv65dldl8sd3mmalf54pbzfcjri5fwz6"; }; buildInputs = [ boost bzip2 lz4 pcre2 xz zlib ]; diff --git a/third_party/nixpkgs/pkgs/tools/text/vale/default.nix b/third_party/nixpkgs/pkgs/tools/text/vale/default.nix index 893f54eedc..11c611710c 100644 --- a/third_party/nixpkgs/pkgs/tools/text/vale/default.nix +++ b/third_party/nixpkgs/pkgs/tools/text/vale/default.nix @@ -2,7 +2,7 @@ buildGoModule rec { pname = "vale"; - version = "2.6.4"; + version = "2.6.5"; subPackages = [ "." ]; outputs = [ "out" "data" ]; @@ -11,7 +11,7 @@ buildGoModule rec { owner = "errata-ai"; repo = "vale"; rev = "v${version}"; - sha256 = "192w98ghfldxamkx717wqa4v3lsr2imlf8xd6ygjpgx78b5zvvcx"; + sha256 = "0rvcxlw8xd7sjcsvr6di04l8ml990im2c8yl3hn8054wkp51yb4l"; }; vendorSha256 = null; diff --git a/third_party/nixpkgs/pkgs/tools/virtualization/alpine-make-vm-image/default.nix b/third_party/nixpkgs/pkgs/tools/virtualization/alpine-make-vm-image/default.nix index d6dad6433e..239a00a665 100644 --- a/third_party/nixpkgs/pkgs/tools/virtualization/alpine-make-vm-image/default.nix +++ b/third_party/nixpkgs/pkgs/tools/virtualization/alpine-make-vm-image/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "alpine-make-vm-image"; - version = "0.6.0"; + version = "0.7.0"; src = fetchFromGitHub { owner = "alpinelinux"; repo = "alpine-make-vm-image"; rev = "v${version}"; - sha256 = "0955kd2ddqfynjwk2xfzys96l7abxp30hhrs2968hl78rhmkvpnq"; + sha256 = "0cjcwq957nsml06kdnnvgzki84agjfvqw3mpyiix4i4q5by91lcl"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/third_party/nixpkgs/pkgs/tools/virtualization/nixos-shell/default.nix b/third_party/nixpkgs/pkgs/tools/virtualization/nixos-shell/default.nix index 0c6d7e7b9b..d529986c5d 100644 --- a/third_party/nixpkgs/pkgs/tools/virtualization/nixos-shell/default.nix +++ b/third_party/nixpkgs/pkgs/tools/virtualization/nixos-shell/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "nixos-shell"; - version = "0.1.1"; + version = "0.2"; src = fetchFromGitHub { owner = "Mic92"; repo = "nixos-shell"; rev = version; - sha256 = "1qk5a01vh6wbbkib8xr57w1j4l3n6xdjd46nsw9bsa444fzlc0wr"; + sha256 = "sha256-C0K20X0P4SYQV+xtQAUcEiX32kr3IF1RoYdkJ4R3aRM="; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/third_party/nixpkgs/pkgs/top-level/all-packages.nix b/third_party/nixpkgs/pkgs/top-level/all-packages.nix index 184632f492..8d4fab92a5 100644 --- a/third_party/nixpkgs/pkgs/top-level/all-packages.nix +++ b/third_party/nixpkgs/pkgs/top-level/all-packages.nix @@ -182,6 +182,8 @@ in cmark = callPackage ../development/libraries/cmark { }; + cmark-gfm = callPackage ../development/libraries/cmark-gfm { }; + cm256cc = callPackage ../development/libraries/cm256cc { }; conftest = callPackage ../development/tools/conftest { }; @@ -1182,6 +1184,8 @@ in fxlinuxprintutil = callPackage ../tools/misc/fxlinuxprintutil { }; + genann = callPackage ../development/libraries/genann { }; + genpass = callPackage ../tools/security/genpass { inherit (darwin.apple_sdk.frameworks) CoreFoundation Security; }; @@ -1224,6 +1228,8 @@ in goimapnotify = callPackage ../tools/networking/goimapnotify { }; + gojsontoyaml = callPackage ../development/tools/gojsontoyaml { }; + gomatrix = callPackage ../applications/misc/gomatrix { }; gopacked = callPackage ../applications/misc/gopacked { }; @@ -2306,8 +2312,12 @@ in icdiff = callPackage ../tools/text/icdiff {}; + inchi = callPackage ../development/libraries/inchi {}; + ifm = callPackage ../tools/graphics/ifm {}; + ink = callPackage ../tools/misc/ink { }; + interlock = callPackage ../servers/interlock {}; jellyfin = callPackage ../servers/jellyfin { }; @@ -2570,6 +2580,8 @@ in socklog = callPackage ../tools/system/socklog { }; + spacevim = callPackage ../applications/editors/spacevim { }; + ssmsh = callPackage ../tools/admin/ssmsh { }; stagit = callPackage ../development/tools/stagit { }; @@ -3015,6 +3027,8 @@ in inherit (xorg) libXaw; }; + netevent = callPackage ../tools/inputmethods/netevent { }; + skktools = callPackage ../tools/inputmethods/skk/skktools { }; skk-dicts = callPackage ../tools/inputmethods/skk/skk-dicts { }; @@ -6366,6 +6380,8 @@ in pandoc = callPackage ../development/tools/pandoc { }; + pandoc-lua-filters = callPackage ../tools/misc/pandoc-lua-filters { }; + pamtester = callPackage ../tools/security/pamtester { }; paperless = callPackage ../applications/office/paperless { }; @@ -7854,6 +7870,8 @@ in turses = callPackage ../applications/networking/instant-messengers/turses { }; + tvm = callPackage ../development/compilers/tvm { }; + oysttyer = callPackage ../applications/networking/instant-messengers/oysttyer { }; twilight = callPackage ../tools/graphics/twilight { @@ -10129,11 +10147,10 @@ in sbcl_2_0_9 = callPackage ../development/compilers/sbcl/2.0.9.nix {}; sbcl = callPackage ../development/compilers/sbcl {}; - inherit (callPackage ../development/compilers/scala/2.x.nix { jre = jre8; }) - scala_2_10 - scala_2_11 - scala_2_12 - scala_2_13; + scala_2_10 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.10"; jre = jdk8; }; + scala_2_11 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.11"; jre = jdk8; }; + scala_2_12 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.12"; jre = jdk8; }; + scala_2_13 = callPackage ../development/compilers/scala/2.x.nix { majorVersion = "2.13"; jre = jdk8; }; scala = scala_2_13; @@ -10769,6 +10786,8 @@ in tcl-8_5 = callPackage ../development/interpreters/tcl/8.5.nix { }; tcl-8_6 = callPackage ../development/interpreters/tcl/8.6.nix { }; + tclreadline = callPackage ../development/interpreters/tclreadline { }; + wasm = ocamlPackages.wasm; proglodyte-wasm = callPackage ../development/interpreters/proglodyte-wasm { }; @@ -11638,6 +11657,9 @@ in khronos-ocl-icd-loader = callPackage ../development/libraries/khronos-ocl-icd-loader { }; + + krew = callPackage ../development/tools/krew { }; + kube-aws = callPackage ../development/tools/kube-aws { }; kubectx = callPackage ../development/tools/kubectx { }; @@ -11819,6 +11841,8 @@ in pax-rs = callPackage ../development/tools/pax-rs { }; + perfect-hash = callPackage ../development/tools/misc/perfect-hash { }; + peg = callPackage ../development/tools/parsing/peg { }; pgcli = pkgs.python3Packages.pgcli; @@ -12388,10 +12412,7 @@ in inherit (llvmPackages_6) llvm clang-unwrapped; }; - belle-sip = callPackage ../development/libraries/belle-sip { - stdenv = gcc8Stdenv; - jre = jre8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731 - }; + belle-sip = callPackage ../development/libraries/belle-sip { }; libbfd = callPackage ../development/libraries/libbfd { }; @@ -14014,6 +14035,8 @@ in libinjection = callPackage ../development/libraries/libinjection { }; + libinklevel = callPackage ../development/libraries/libinklevel { }; + libnats-c = callPackage ../development/libraries/libnats-c { openssl = openssl_1_0_2; }; @@ -14930,6 +14953,8 @@ in minizip = callPackage ../development/libraries/minizip { }; + minizip2 = callPackage ../development/libraries/minizip2 { }; + mkvtoolnix = libsForQt5.callPackage ../applications/video/mkvtoolnix { }; mkvtoolnix-cli = callPackage ../applications/video/mkvtoolnix { @@ -18106,7 +18131,8 @@ in iotop = callPackage ../os-specific/linux/iotop { }; - iproute = callPackage ../os-specific/linux/iproute { }; + iproute2 = callPackage ../os-specific/linux/iproute { }; + iproute = iproute2; # Alias added 2020-11-15 (TODO: deprecate and move to pkgs/top-level/aliases.nix) iproute_mptcp = callPackage ../os-specific/linux/iproute/mptcp.nix { }; @@ -18323,6 +18349,14 @@ in ]; }; + linux-rt_5_9 = callPackage ../os-specific/linux/kernel/linux-rt-5.9.nix { + kernelPatches = [ + kernelPatches.bridge_stp_helper + kernelPatches.request_key_helper + kernelPatches.export_kernel_fpu_functions."5.3" + ]; + }; + linux_testing = callPackage ../os-specific/linux/kernel/linux-testing.nix { kernelPatches = [ kernelPatches.bridge_stp_helper @@ -18572,10 +18606,11 @@ in # Realtime kernel packages. linuxPackages-rt_5_4 = linuxPackagesFor pkgs.linux-rt_5_4; - linuxPackages-rt = linuxPackages-rt_5_4; - linux-rt = linuxPackages-rt.kernel; linuxPackages-rt_5_6 = linuxPackagesFor pkgs.linux-rt_5_6; - linuxPackages-rt_latest = linuxPackages-rt_5_6; + linuxPackages-rt_5_9 = linuxPackagesFor pkgs.linux-rt_5_9; + linuxPackages-rt = linuxPackages-rt_5_4; + linuxPackages-rt_latest = linuxPackages-rt_5_9; + linux-rt = linuxPackages-rt.kernel; linux-rt_latest = linuxPackages-rt_latest.kernel; linuxPackages_mptcp = linuxPackagesFor pkgs.linux_mptcp; @@ -20221,8 +20256,6 @@ in ams-lv2 = callPackage ../applications/audio/ams-lv2 { }; - amsn = callPackage ../applications/networking/instant-messengers/amsn { }; - androidStudioPackages = recurseIntoAttrs (callPackage ../applications/editors/android-studio { buildFHSUserEnv = buildFHSUserEnvBubblewrap; @@ -22047,6 +22080,8 @@ in imgcat = callPackage ../applications/graphics/imgcat { }; + img-cat = callPackage ../applications/graphics/img-cat { }; + imgp = python3Packages.callPackage ../applications/graphics/imgp { }; # Impressive, formerly known as "KeyJNote". @@ -22568,6 +22603,8 @@ in meli = callPackage ../applications/networking/mailreaders/meli { }; + melmatcheq.lv2 = callPackage ../applications/audio/melmatcheq.lv2 { }; + melonDS = callPackage ../misc/emulators/melonDS { }; meme = callPackage ../applications/graphics/meme { }; @@ -22853,6 +22890,8 @@ in geoip = geoipWithDatabase; }; + nice-dcv-client = callPackage ../applications/networking/remote/nice-dcv-client { }; + nixos-shell = callPackage ../tools/virtualization/nixos-shell {}; noaa-apt = callPackage ../applications/radio/noaa-apt { }; @@ -23080,7 +23119,7 @@ in nedit = callPackage ../applications/editors/nedit { }; - ngt = callPackage ../development/libraries/ngt { }; + ngt = callPackage ../development/libraries/ngt { enableAVX = false; }; nheko = libsForQt5.callPackage ../applications/networking/instant-messengers/nheko { }; @@ -23297,6 +23336,8 @@ in pflask = callPackage ../os-specific/linux/pflask {}; + pfsshell = callPackage ../tools/misc/pfsshell { }; + photoqt = libsForQt5.callPackage ../applications/graphics/photoqt { }; photoflare = libsForQt5.callPackage ../applications/graphics/photoflare { }; @@ -28831,4 +28872,6 @@ in psftools = callPackage ../os-specific/linux/psftools {}; lc3tools = callPackage ../development/tools/lc3tools {}; + + zktree = callPackage ../applications/misc/zktree {}; } diff --git a/third_party/nixpkgs/pkgs/top-level/coq-packages.nix b/third_party/nixpkgs/pkgs/top-level/coq-packages.nix index 605db55436..46b7094cb3 100644 --- a/third_party/nixpkgs/pkgs/top-level/coq-packages.nix +++ b/third_party/nixpkgs/pkgs/top-level/coq-packages.nix @@ -1,4 +1,6 @@ -{ lib, callPackage, newScope, recurseIntoAttrs, ocamlPackages_4_05, ocamlPackages_4_09 }: +{ lib, callPackage, newScope, recurseIntoAttrs, ocamlPackages_4_05, ocamlPackages_4_09 +, compcert +}: let mkCoqPackages' = self: coq: @@ -59,7 +61,9 @@ let tlc = callPackage ../development/coq-modules/tlc {}; Velisarios = callPackage ../development/coq-modules/Velisarios {}; Verdi = callPackage ../development/coq-modules/Verdi {}; - VST = callPackage ../development/coq-modules/VST {}; + VST = callPackage ../development/coq-modules/VST { + compcert = compcert.override { version = "3.7"; }; + }; filterPackages = filterCoqPackages; }; diff --git a/third_party/nixpkgs/pkgs/top-level/perl-packages.nix b/third_party/nixpkgs/pkgs/top-level/perl-packages.nix index 2c789d4f8b..bdcece18ad 100644 --- a/third_party/nixpkgs/pkgs/top-level/perl-packages.nix +++ b/third_party/nixpkgs/pkgs/top-level/perl-packages.nix @@ -8266,6 +8266,22 @@ let }; }; + FileUtilTempdir = buildPerlPackage { + pname = "File-Util-Tempdir"; + version = "0.034"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/File-Util-Tempdir-0.034.tar.gz"; + sha256 = "076wdwbvqsg64wr5np8j6pnmmhs9li64g9mw2h33zbbgbv7f47fi"; + }; + buildInputs = [ Perlosnames TestException ]; + meta = { + homepage = "https://metacpan.org/release/File-Util-Tempdir"; + description = "Cross-platform way to get system-wide & user private temporary directory"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + FileWhich = buildPerlPackage { pname = "File-Which"; version = "1.23"; @@ -9884,6 +9900,22 @@ let }; }; + HTTPTinyCache = buildPerlPackage { + pname = "HTTP-Tiny-Cache"; + version = "0.002"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/HTTP-Tiny-Cache-0.002.tar.gz"; + sha256 = "08c6274x7fxl9r7cw1yiq21wv2mjgxw7db0wv5r80dyw377vfzbk"; + }; + propagatedBuildInputs = [ FileUtilTempdir Logger ]; + meta = { + homepage = "https://metacpan.org/release/HTTP-Tiny-Cache"; + description = "Cache HTTP::Tiny responses"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + HTTPTinyish = buildPerlPackage { pname = "HTTP-Tinyish"; version = "0.17"; @@ -11531,6 +11563,21 @@ let buildInputs = [ PathTiny TestWarn ]; }; + Logger = buildPerlPackage { + pname = "Log-ger"; + version = "0.037"; + src = fetchurl { + url = "mirror://cpan/authors/id/P/PE/PERLANCAR/Log-ger-0.037.tar.gz"; + sha256 = "0f5078g8lkyw09ijpz7dna5xw6yvpd0m283fdrw3s152xmr43qn2"; + }; + meta = { + homepage = "https://metacpan.org/release/Log-ger"; + description = "A lightweight, flexible logging framework"; + license = with stdenv.lib.licenses; [ artistic1 gpl1Plus ]; + maintainers = [ maintainers.sgo ]; + }; + }; + LogHandler = buildPerlModule { pname = "Log-Handler"; version = "0.90"; diff --git a/third_party/nixpkgs/pkgs/top-level/python-packages.nix b/third_party/nixpkgs/pkgs/top-level/python-packages.nix index c6770420c3..2ff6441631 100644 --- a/third_party/nixpkgs/pkgs/top-level/python-packages.nix +++ b/third_party/nixpkgs/pkgs/top-level/python-packages.nix @@ -1957,6 +1957,10 @@ in { etelemetry = callPackage ../development/python-modules/etelemetry { }; + etebase = callPackage ../development/python-modules/etebase { + inherit (pkgs.darwin.apple_sdk.frameworks) Security; + }; + etesync = callPackage ../development/python-modules/etesync { }; eth-hash = callPackage ../development/python-modules/eth-hash { }; @@ -3199,6 +3203,8 @@ in { jsonschema = callPackage ../development/python-modules/jsonschema { }; + jsonstreams = callPackage ../development/python-modules/jsonstreams { }; + jsonwatch = callPackage ../development/python-modules/jsonwatch { }; jug = callPackage ../development/python-modules/jug { }; @@ -3382,6 +3388,10 @@ in { ledgerblue = callPackage ../development/python-modules/ledgerblue { }; + ledgerwallet = callPackage ../development/python-modules/ledgerwallet { + inherit (pkgs.darwin.apple_sdk.frameworks) AppKit; + }; + lektor = callPackage ../development/python-modules/lektor { }; leveldb = callPackage ../development/python-modules/leveldb { }; @@ -3693,6 +3703,8 @@ in { else callPackage ../development/python-modules/markdown/3_1.nix { }; + markdown-it-py = callPackage ../development/python-modules/markdown-it-py { }; + markdown-macros = callPackage ../development/python-modules/markdown-macros { }; markdownsuperscript = callPackage ../development/python-modules/markdownsuperscript { }; @@ -3832,6 +3844,8 @@ in { mnemonic = callPackage ../development/python-modules/mnemonic { }; + mne-python = callPackage ../development/python-modules/mne-python { }; + mnist = callPackage ../development/python-modules/mnist { }; mocket = callPackage ../development/python-modules/mocket { }; @@ -4474,6 +4488,8 @@ in { pathtools = callPackage ../development/python-modules/pathtools { }; + patiencediff = callPackage ../development/python-modules/patiencediff { }; + patool = callPackage ../development/python-modules/patool { }; patsy = callPackage ../development/python-modules/patsy { }; @@ -5115,6 +5131,8 @@ in { pyfttt = callPackage ../development/python-modules/pyfttt { }; + pyfuse3 = callPackage ../development/python-modules/pyfuse3 { }; + pyfxa = callPackage ../development/python-modules/pyfxa { }; pygal = callPackage ../development/python-modules/pygal { }; @@ -5708,6 +5726,8 @@ in { pytest-catchlog = callPackage ../development/python-modules/pytest-catchlog { }; + pytest-celery = callPackage ../development/python-modules/pytest-celery { }; + pytest-check = callPackage ../development/python-modules/pytest-check { }; pytest-click = callPackage ../development/python-modules/pytest-click { }; @@ -5815,6 +5835,8 @@ in { pytest-subtesthack = callPackage ../development/python-modules/pytest-subtesthack { }; + pytest-subtests = callPackage ../development/python-modules/pytest-subtests { }; + pytest-sugar = callPackage ../development/python-modules/pytest-sugar { }; pytest-testmon = callPackage ../development/python-modules/pytest-testmon { }; @@ -6688,6 +6710,8 @@ in { sfepy = callPackage ../development/python-modules/sfepy { }; + sgmllib3k = callPackage ../development/python-modules/sgmllib3k { }; + shamir-mnemonic = callPackage ../development/python-modules/shamir-mnemonic { }; shap = callPackage ../development/python-modules/shap { }; @@ -7558,6 +7582,8 @@ in { unpaddedbase64 = callPackage ../development/python-modules/unpaddedbase64 { }; + unrardll = callPackage ../development/python-modules/unrardll { }; + unrpa = callPackage ../development/python-modules/unrpa { }; untangle = callPackage ../development/python-modules/untangle { }; diff --git a/third_party/nixpkgs/pkgs/top-level/static.nix b/third_party/nixpkgs/pkgs/top-level/static.nix index b3851ba20f..b8d0d16e97 100644 --- a/third_party/nixpkgs/pkgs/top-level/static.nix +++ b/third_party/nixpkgs/pkgs/top-level/static.nix @@ -34,14 +34,18 @@ self: super: let }); }; - staticAdapters = [ makeStaticLibraries propagateBuildInputs ] + staticAdapters = + # makeStaticDarwin must go first so that the extraBuildInputs + # override does not recreate mkDerivation, removing subsequent + # adapters. + optional super.stdenv.hostPlatform.isDarwin makeStaticDarwin + + ++ [ makeStaticLibraries propagateBuildInputs ] # Apple does not provide a static version of libSystem or crt0.o # So we can’t build static binaries without extensive hacks. ++ optional (!super.stdenv.hostPlatform.isDarwin) makeStaticBinaries - ++ optional super.stdenv.hostPlatform.isDarwin makeStaticDarwin - # Glibc doesn’t come with static runtimes by default. # ++ optional (super.stdenv.hostPlatform.libc == "glibc") ((flip overrideInStdenv) [ self.stdenv.glibc.static ]) ; @@ -163,6 +167,7 @@ in { }; mkl = super.mkl.override { enableStatic = true; }; nix = super.nix.override { enableStatic = true; }; + nixUnstable = super.nixUnstable.override { enableStatic = true; }; openssl = (super.openssl_1_1.override { static = true; }).overrideAttrs (o: { # OpenSSL doesn't like the `--enable-static` / `--disable-shared` flags. configureFlags = (removeUnknownConfigureFlags o.configureFlags); @@ -281,8 +286,8 @@ in { python39 = super.python39.override { static = true; }; python3Minimal = super.python3Minimal.override { static = true; }; - - libev = super.libev.override { static = true; }; + # Note: -static doesn’t work on darwin + libev = super.libev.override { static = !super.stdenv.hostPlatform.isDarwin; }; libexecinfo = super.libexecinfo.override { enableShared = false; };