mirror of
https://github.com/CHN-beta/nixpkgs.git
synced 2026-01-12 02:40:31 +08:00
Compare commits
71 Commits
1bd2e49c5b
...
new-machin
| Author | SHA1 | Date | |
|---|---|---|---|
| ca10437094 | |||
| 961ff6f7b4 | |||
| d18ed60d15 | |||
| 0e3191967b | |||
| 73c72c32c2 | |||
| 2054a5ccef | |||
| dc3d9927c7 | |||
| a2c376d595 | |||
| a1f2441df9 | |||
|
|
d40b54153f | ||
| 7a747486c9 | |||
| b1aefd8166 | |||
| d048bc5060 | |||
| 18e098aae9 | |||
| a1a25b7ba4 | |||
| ff6d951b36 | |||
| 156e1c5d41 | |||
| d5f2b02c7d | |||
| c8069f502b | |||
| 8dc7782ee4 | |||
| a8b44b35c2 | |||
| 23b44ef952 | |||
| ec622d2440 | |||
| 17ab015c05 | |||
| 68d2d86543 | |||
| 28156b2bbf | |||
| a14b371dc3 | |||
| b568ffd587 | |||
| a5ef91a2e3 | |||
| a0e65839b8 | |||
| ece52e0080 | |||
| b043f18e6c | |||
| 06f6e1dafa | |||
| 63b4ec6cdb | |||
| 8e22575b0c | |||
| f5057ba99b | |||
| e7fb5b6249 | |||
| ea3c13e01e | |||
| 00c280989f | |||
| a350e78a35 | |||
| eb89545d4b | |||
| faed709424 | |||
| c691ac6da5 | |||
| 1394c0cb5b | |||
| 5305c1a026 | |||
| 7cecdb24b1 | |||
| bbc8663bd6 | |||
| fc405d7756 | |||
| f94ee5e8df | |||
| ec0ddf03a2 | |||
| b8662bb47a | |||
| af2718df35 | |||
| a837e80e8e | |||
| 57902dfe3d | |||
| 1d946017fc | |||
| e0fa7e81f3 | |||
| e139732a08 | |||
| bb8af33b9c | |||
| 9c7ef6f03c | |||
| c250f39f78 | |||
| 01a9f90b52 | |||
| 68827fc777 | |||
| 8bb2fac893 | |||
| a92a7900e5 | |||
| 4e868d7ccb | |||
| 802b4d6d5c | |||
|
|
07678f07d6 | ||
| 03b8e6642f | |||
| 22435341dd | |||
| f52f47099b | |||
| cca9ac9e48 |
11
.github/ISSUE_TEMPLATE.md
vendored
11
.github/ISSUE_TEMPLATE.md
vendored
@@ -1,11 +0,0 @@
|
||||
## Issue description
|
||||
|
||||
|
||||
|
||||
### Steps to reproduce
|
||||
|
||||
|
||||
|
||||
## Technical details
|
||||
|
||||
Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.
|
||||
41
.github/ISSUE_TEMPLATE/bug_report.md
vendored
41
.github/ISSUE_TEMPLATE/bug_report.md
vendored
@@ -1,41 +0,0 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Create a report to help us improve
|
||||
title: ''
|
||||
labels: '0.kind: bug'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
### Describe the bug
|
||||
A clear and concise description of what the bug is.
|
||||
|
||||
### Steps To Reproduce
|
||||
Steps to reproduce the behavior:
|
||||
1. ...
|
||||
2. ...
|
||||
3. ...
|
||||
|
||||
### Expected behavior
|
||||
A clear and concise description of what you expected to happen.
|
||||
|
||||
### Screenshots
|
||||
If applicable, add screenshots to help explain your problem.
|
||||
|
||||
### Additional context
|
||||
Add any other context about the problem here.
|
||||
|
||||
### Notify maintainers
|
||||
|
||||
<!--
|
||||
Please @ people who are in the `meta.maintainers` list of the offending package or module.
|
||||
If in doubt, check `git blame` for whoever last touched something.
|
||||
-->
|
||||
|
||||
### Metadata
|
||||
Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.
|
||||
|
||||
```console
|
||||
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
|
||||
output here
|
||||
```
|
||||
39
.github/ISSUE_TEMPLATE/build_failure.md
vendored
39
.github/ISSUE_TEMPLATE/build_failure.md
vendored
@@ -1,39 +0,0 @@
|
||||
---
|
||||
name: Build failure
|
||||
about: Create a report to help us improve
|
||||
title: 'Build failure: PACKAGENAME'
|
||||
labels: '0.kind: build failure'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
### Steps To Reproduce
|
||||
|
||||
Steps to reproduce the behavior:
|
||||
1. build *X*
|
||||
|
||||
### Build log
|
||||
|
||||
```
|
||||
log here if short otherwise a link to a gist
|
||||
```
|
||||
|
||||
### Additional context
|
||||
|
||||
Add any other context about the problem here.
|
||||
|
||||
### Notify maintainers
|
||||
|
||||
<!--
|
||||
Please @ people who are in the `meta.maintainers` list of the offending package or module.
|
||||
If in doubt, check `git blame` for whoever last touched something.
|
||||
-->
|
||||
|
||||
### Metadata
|
||||
|
||||
Please run `nix-shell -p nix-info --run "nix-info -m"` and paste the result.
|
||||
|
||||
```console
|
||||
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
|
||||
output here
|
||||
```
|
||||
32
.github/ISSUE_TEMPLATE/missing_documentation.md
vendored
32
.github/ISSUE_TEMPLATE/missing_documentation.md
vendored
@@ -1,32 +0,0 @@
|
||||
---
|
||||
name: Missing or incorrect documentation
|
||||
about: Help us improve the Nixpkgs and NixOS reference manuals
|
||||
title: 'Documentation: '
|
||||
labels: '9.needs: documentation'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
## Problem
|
||||
|
||||
<!-- describe your problem -->
|
||||
|
||||
## Proposal
|
||||
|
||||
<!-- propose a solution (optional) -->
|
||||
|
||||
## Checklist
|
||||
|
||||
<!-- make sure this issue is not redundant or obsolete -->
|
||||
|
||||
- [ ] checked [latest Nixpkgs manual] \([source][nixpkgs-source]) and [latest NixOS manual] \([source][nixos-source])
|
||||
- [ ] checked [open documentation issues] for possible duplicates
|
||||
- [ ] checked [open documentation pull requests] for possible solutions
|
||||
|
||||
[latest Nixpkgs manual]: https://nixos.org/manual/nixpkgs/unstable/
|
||||
[latest NixOS manual]: https://nixos.org/manual/nixos/unstable/
|
||||
[nixpkgs-source]: https://github.com/NixOS/nixpkgs/tree/master/doc
|
||||
[nixos-source]: https://github.com/NixOS/nixpkgs/tree/master/nixos/doc/manual
|
||||
[open documentation issues]: https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+label%3A%229.needs%3A+documentation%22
|
||||
[open documentation pull requests]: https://github.com/NixOS/nixpkgs/pulls?q=is%3Aopen+is%3Apr+label%3A%228.has%3A+documentation%22%2C%226.topic%3A+documentation%22
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
---
|
||||
name: Out-of-date package reports
|
||||
about: For packages that are out-of-date
|
||||
title: 'Update request: PACKAGENAME OLDVERSION → NEWVERSION'
|
||||
labels: '9.needs: package (update)'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
- Package name:
|
||||
- Latest released version:
|
||||
<!-- Search your package here: https://search.nixos.org/packages?channel=unstable -->
|
||||
- Current version on the unstable channel:
|
||||
- Current version on the stable/release channel:
|
||||
<!--
|
||||
Type the name of your package and try to find an open pull request for the package
|
||||
If you find an open pull request, you can review it!
|
||||
There's a high chance that you'll have the new version right away while helping the community!
|
||||
-->
|
||||
- [ ] Checked the [nixpkgs pull requests](https://github.com/NixOS/nixpkgs/pulls)
|
||||
|
||||
**Notify maintainers**
|
||||
|
||||
<!-- If the search.nixos.org result shows no maintainers, tag the person that last updated the package. -->
|
||||
|
||||
-----
|
||||
|
||||
Note for maintainers: Please tag this issue in your PR.
|
||||
19
.github/ISSUE_TEMPLATE/packaging_request.md
vendored
19
.github/ISSUE_TEMPLATE/packaging_request.md
vendored
@@ -1,19 +0,0 @@
|
||||
---
|
||||
name: Packaging requests
|
||||
about: For packages that are missing
|
||||
title: 'Package request: PACKAGENAME'
|
||||
labels: '0.kind: packaging request'
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
**Project description**
|
||||
|
||||
<!-- Describe the project a little: -->
|
||||
|
||||
**Metadata**
|
||||
|
||||
* homepage URL:
|
||||
* source URL:
|
||||
* license: mit, bsd, gpl2+ , ...
|
||||
* platforms: unix, linux, darwin, ...
|
||||
31
.github/ISSUE_TEMPLATE/unreproducible_package.md
vendored
31
.github/ISSUE_TEMPLATE/unreproducible_package.md
vendored
@@ -1,31 +0,0 @@
|
||||
---
|
||||
name: Unreproducible package
|
||||
about: A package that does not produce a bit-by-bit reproducible result each time it is built
|
||||
title: ''
|
||||
labels: [ '0.kind: enhancement', '6.topic: reproducible builds' ]
|
||||
assignees: ''
|
||||
|
||||
---
|
||||
|
||||
Building this package twice does not produce the bit-by-bit identical result each time, making it harder to detect CI breaches. You can read more about this at https://reproducible-builds.org/ .
|
||||
|
||||
Fixing bit-by-bit reproducibility also has additional advantages, such as avoiding hard-to-reproduce bugs, making content-addressed storage more effective and reducing rebuilds in such systems.
|
||||
|
||||
### Steps To Reproduce
|
||||
|
||||
```
|
||||
nix-build '<nixpkgs>' -A ... --check --keep-failed
|
||||
```
|
||||
|
||||
You can use `diffoscope` to analyze the differences in the output of the two builds.
|
||||
|
||||
To view the build log of the build that produced the artifact in the binary cache:
|
||||
|
||||
```
|
||||
nix-store --read-log $(nix-instantiate '<nixpkgs>' -A ...)
|
||||
```
|
||||
|
||||
### Additional context
|
||||
|
||||
(please share the relevant fragment of the diffoscope output here,
|
||||
and any additional analysis you may have done)
|
||||
36
.github/STALE-BOT.md
vendored
36
.github/STALE-BOT.md
vendored
@@ -1,36 +0,0 @@
|
||||
# Stale bot information
|
||||
|
||||
- Thanks for your contribution!
|
||||
- Our stale bot will never close an issue or PR.
|
||||
- To remove the stale label, just leave a new comment.
|
||||
- _How to find the right people to ping?_ → [`git blame`](https://git-scm.com/docs/git-blame) to the rescue! (or GitHub's history and blame buttons.)
|
||||
- You can always ask for help on [our Discourse Forum](https://discourse.nixos.org/), [our Matrix room](https://matrix.to/#/#nix:nixos.org), or on the [#nixos IRC channel](https://web.libera.chat/#nixos).
|
||||
|
||||
## Suggestions for PRs
|
||||
|
||||
1. GitHub sometimes doesn't notify people who commented / reviewed a PR previously, when you (force) push commits. If you have addressed the reviews you can [officially ask for a review](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review) from those who commented to you or anyone else.
|
||||
2. If it is unfinished but you plan to finish it, please mark it as a draft.
|
||||
3. If you don't expect to work on it any time soon, closing it with a short comment may encourage someone else to pick up your work.
|
||||
4. To get things rolling again, rebase the PR against the target branch and address valid comments.
|
||||
5. If you need a review to move forward, ask in [the Discourse thread for PRs that need help](https://discourse.nixos.org/t/prs-in-distress/3604).
|
||||
6. If all you need is a merge, check the git history to find and [request reviews](https://docs.github.com/en/github/collaborating-with-issues-and-pull-requests/requesting-a-pull-request-review) from people who usually merge related contributions.
|
||||
|
||||
## Suggestions for issues
|
||||
|
||||
1. If it is resolved (either for you personally, or in general), please consider closing it.
|
||||
2. If this might still be an issue, but you are not interested in promoting its resolution, please consider closing it while encouraging others to take over and reopen an issue if they care enough.
|
||||
3. If you still have interest in resolving it, try to ping somebody who you believe might have an interest in the topic. Consider discussing the problem in [our Discourse Forum](https://discourse.nixos.org/).
|
||||
4. As with all open source projects, your best option is to submit a Pull Request that addresses this issue. We :heart: this attitude!
|
||||
|
||||
**Memorandum on closing issues**
|
||||
|
||||
Don't be afraid to close an issue that holds valuable information. Closed issues stay in the system for people to search, read, cross-reference, or even reopen--nothing is lost! Closing obsolete issues is an important way to help maintainers focus their time and effort.
|
||||
|
||||
## Useful GitHub search queries
|
||||
|
||||
- [Open PRs with any stale-bot interaction](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+)
|
||||
- [Open PRs with any stale-bot interaction and `2.status: stale`](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+label%3A%222.status%3A+stale%22)
|
||||
- [Open PRs with any stale-bot interaction and NOT `2.status: stale`](https://github.com/NixOS/nixpkgs/pulls?q=is%3Apr+is%3Aopen+commenter%3Aapp%2Fstale+-label%3A%222.status%3A+stale%22+)
|
||||
- [Open Issues with any stale-bot interaction](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+)
|
||||
- [Open Issues with any stale-bot interaction and `2.status: stale`](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+label%3A%222.status%3A+stale%22+)
|
||||
- [Open Issues with any stale-bot interaction and NOT `2.status: stale`](https://github.com/NixOS/nixpkgs/issues?q=is%3Aissue+is%3Aopen+commenter%3Aapp%2Fstale+-label%3A%222.status%3A+stale%22+)
|
||||
6
.github/dependabot.yml
vendored
6
.github/dependabot.yml
vendored
@@ -1,6 +0,0 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "github-actions"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "weekly"
|
||||
199
.github/labeler.yml
vendored
199
.github/labeler.yml
vendored
@@ -1,199 +0,0 @@
|
||||
"6.topic: agda":
|
||||
- doc/languages-frameworks/agda.section.md
|
||||
- nixos/tests/agda.nix
|
||||
- pkgs/build-support/agda/**/*
|
||||
- pkgs/development/libraries/agda/**/*
|
||||
- pkgs/top-level/agda-packages.nix
|
||||
|
||||
"6.topic: cinnamon":
|
||||
- pkgs/desktops/cinnamon/**/*
|
||||
- nixos/modules/services/x11/desktop-managers/cinnamon.nix
|
||||
- nixos/tests/cinnamon.nix
|
||||
|
||||
"6.topic: emacs":
|
||||
- nixos/modules/services/editors/emacs.nix
|
||||
- nixos/modules/services/editors/emacs.xml
|
||||
- nixos/tests/emacs-daemon.nix
|
||||
- pkgs/applications/editors/emacs/elisp-packages/**/*
|
||||
- pkgs/applications/editors/emacs/**/*
|
||||
- pkgs/build-support/emacs/**/*
|
||||
- pkgs/top-level/emacs-packages.nix
|
||||
|
||||
"6.topic: Enlightenment DE":
|
||||
- nixos/modules/services/x11/desktop-managers/enlightenment.nix
|
||||
- pkgs/desktops/enlightenment/**/*
|
||||
- pkgs/development/python-modules/python-efl/*
|
||||
|
||||
"6.topic: erlang":
|
||||
- doc/languages-frameworks/beam.section.md
|
||||
- pkgs/development/beam-modules/**/*
|
||||
- pkgs/development/interpreters/elixir/**/*
|
||||
- pkgs/development/interpreters/erlang/**/*
|
||||
- pkgs/development/tools/build-managers/rebar/**/*
|
||||
- pkgs/development/tools/build-managers/rebar3/**/*
|
||||
- pkgs/development/tools/erlang/**/*
|
||||
- pkgs/top-level/beam-packages.nix
|
||||
|
||||
"6.topic: fetch":
|
||||
- pkgs/build-support/fetch*/**/*
|
||||
|
||||
"6.topic: GNOME":
|
||||
- doc/languages-frameworks/gnome.section.md
|
||||
- nixos/modules/services/desktops/gnome/**/*
|
||||
- nixos/modules/services/x11/desktop-managers/gnome.nix
|
||||
- nixos/tests/gnome-xorg.nix
|
||||
- nixos/tests/gnome.nix
|
||||
- pkgs/desktops/gnome/**/*
|
||||
|
||||
"6.topic: golang":
|
||||
- doc/languages-frameworks/go.section.md
|
||||
- pkgs/build-support/go/**/*
|
||||
- pkgs/development/compilers/go/**/*
|
||||
|
||||
"6.topic: haskell":
|
||||
- doc/languages-frameworks/haskell.section.md
|
||||
- maintainers/scripts/haskell/**/*
|
||||
- pkgs/development/compilers/ghc/**/*
|
||||
- pkgs/development/haskell-modules/**/*
|
||||
- pkgs/development/tools/haskell/**/*
|
||||
- pkgs/test/haskell/**/*
|
||||
- pkgs/top-level/haskell-packages.nix
|
||||
- pkgs/top-level/release-haskell.nix
|
||||
|
||||
"6.topic: kernel":
|
||||
- pkgs/build-support/kernel/**/*
|
||||
- pkgs/os-specific/linux/kernel/**/*
|
||||
|
||||
"6.topic: lib":
|
||||
- lib/**
|
||||
|
||||
"6.topic: lua":
|
||||
- pkgs/development/interpreters/lua-5/**/*
|
||||
- pkgs/development/interpreters/luajit/**/*
|
||||
- pkgs/development/lua-modules/**/*
|
||||
- pkgs/top-level/lua-packages.nix
|
||||
|
||||
"6.topic: Lumina DE":
|
||||
- nixos/modules/services/x11/desktop-managers/lumina.nix
|
||||
- pkgs/desktops/lumina/**/*
|
||||
|
||||
"6.topic: LXQt":
|
||||
- nixos/modules/services/x11/desktop-managers/lxqt.nix
|
||||
- pkgs/desktops/lxqt/**/*
|
||||
|
||||
"6.topic: mate":
|
||||
- nixos/modules/services/x11/desktop-managers/mate.nix
|
||||
- nixos/tests/mate.nix
|
||||
- pkgs/desktops/mate/**/*
|
||||
|
||||
"6.topic: module system":
|
||||
- lib/modules.nix
|
||||
- lib/types.nix
|
||||
- lib/options.nix
|
||||
- lib/tests/modules.sh
|
||||
- lib/tests/modules/**
|
||||
|
||||
"6.topic: nixos":
|
||||
- nixos/**/*
|
||||
- pkgs/os-specific/linux/nixos-rebuild/**/*
|
||||
|
||||
"6.topic: nim":
|
||||
- doc/languages-frameworks/nim.section.md
|
||||
- pkgs/development/compilers/nim/*
|
||||
- pkgs/development/nim-packages/**/*
|
||||
- pkgs/top-level/nim-packages.nix
|
||||
|
||||
"6.topic: nodejs":
|
||||
- doc/languages-frameworks/javascript.section.md
|
||||
- pkgs/build-support/node/**/*
|
||||
- pkgs/development/node-packages/**/*
|
||||
- pkgs/development/tools/yarn/*
|
||||
- pkgs/development/tools/yarn2nix-moretea/**/*
|
||||
- pkgs/development/web/nodejs/*
|
||||
|
||||
"6.topic: ocaml":
|
||||
- doc/languages-frameworks/ocaml.section.md
|
||||
- pkgs/development/compilers/ocaml/**/*
|
||||
- pkgs/development/compilers/reason/**/*
|
||||
- pkgs/development/ocaml-modules/**/*
|
||||
- pkgs/development/tools/ocaml/**/*
|
||||
- pkgs/top-level/ocaml-packages.nix
|
||||
|
||||
"6.topic: pantheon":
|
||||
- nixos/modules/services/desktops/pantheon/**/*
|
||||
- nixos/modules/services/x11/desktop-managers/pantheon.nix
|
||||
- nixos/modules/services/x11/display-managers/lightdm-greeters/pantheon.nix
|
||||
- nixos/tests/pantheon.nix
|
||||
- pkgs/desktops/pantheon/**/*
|
||||
|
||||
"6.topic: policy discussion":
|
||||
- .github/**/*
|
||||
|
||||
"6.topic: printing":
|
||||
- nixos/modules/services/printing/cupsd.nix
|
||||
- pkgs/misc/cups/**/*
|
||||
|
||||
"6.topic: python":
|
||||
- doc/languages-frameworks/python.section.md
|
||||
- pkgs/development/interpreters/python/**/*
|
||||
- pkgs/development/python-modules/**/*
|
||||
- pkgs/top-level/python-packages.nix
|
||||
|
||||
"6.topic: qt/kde":
|
||||
- doc/languages-frameworks/qt.section.md
|
||||
- nixos/modules/services/x11/desktop-managers/plasma5.nix
|
||||
- nixos/tests/plasma5.nix
|
||||
- pkgs/applications/kde/**/*
|
||||
- pkgs/desktops/plasma-5/**/*
|
||||
- pkgs/development/libraries/kde-frameworks/**/*
|
||||
- pkgs/development/libraries/qt-5/**/*
|
||||
|
||||
"6.topic: ruby":
|
||||
- doc/languages-frameworks/ruby.section.md
|
||||
- pkgs/development/interpreters/ruby/**/*
|
||||
- pkgs/development/ruby-modules/**/*
|
||||
|
||||
"6.topic: rust":
|
||||
- doc/languages-frameworks/rust.section.md
|
||||
- pkgs/build-support/rust/**/*
|
||||
- pkgs/development/compilers/rust/**/*
|
||||
|
||||
"6.topic: stdenv":
|
||||
- pkgs/stdenv/**/*
|
||||
|
||||
"6.topic: steam":
|
||||
- pkgs/games/steam/**/*
|
||||
|
||||
"6.topic: systemd":
|
||||
- pkgs/os-specific/linux/systemd/**/*
|
||||
- nixos/modules/system/boot/systemd*/**/*
|
||||
|
||||
"6.topic: TeX":
|
||||
- doc/languages-frameworks/texlive.section.md
|
||||
- pkgs/tools/typesetting/tex/**/*
|
||||
|
||||
"6.topic: vim":
|
||||
- doc/languages-frameworks/vim.section.md
|
||||
- pkgs/applications/editors/vim/**/*
|
||||
- pkgs/applications/editors/vim/plugins/**/*
|
||||
- nixos/modules/programs/neovim.nix
|
||||
- pkgs/applications/editors/neovim/**/*
|
||||
|
||||
"6.topic: vscode":
|
||||
- pkgs/applications/editors/vscode/**/*
|
||||
|
||||
"6.topic: xfce":
|
||||
- nixos/doc/manual/configuration/xfce.xml
|
||||
- nixos/modules/services/x11/desktop-managers/xfce.nix
|
||||
- nixos/tests/xfce.nix
|
||||
- pkgs/desktops/xfce/**/*
|
||||
|
||||
"8.has: changelog":
|
||||
- nixos/doc/manual/release-notes/**/*
|
||||
|
||||
"8.has: documentation":
|
||||
- doc/**/*
|
||||
- nixos/doc/**/*
|
||||
|
||||
"8.has: module (update)":
|
||||
- nixos/modules/**/*
|
||||
9
.github/stale.yml
vendored
9
.github/stale.yml
vendored
@@ -1,9 +0,0 @@
|
||||
# Configuration for probot-stale - https://github.com/probot/stale
|
||||
daysUntilStale: 180
|
||||
daysUntilClose: false
|
||||
exemptLabels:
|
||||
- "1.severity: security"
|
||||
- "2.status: never-stale"
|
||||
staleLabel: "2.status: stale"
|
||||
markComment: false
|
||||
closeComment: false
|
||||
35
.github/workflows/backport.yml
vendored
35
.github/workflows/backport.yml
vendored
@@ -1,35 +0,0 @@
|
||||
name: Backport
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [closed, labeled]
|
||||
|
||||
# WARNING:
|
||||
# When extending this action, be aware that $GITHUB_TOKEN allows write access to
|
||||
# the GitHub repository. This means that it should not evaluate user input in a
|
||||
# way that allows code injection.
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
backport:
|
||||
permissions:
|
||||
contents: write # for korthout/backport-action to create branch
|
||||
pull-requests: write # for korthout/backport-action to create PR to backport
|
||||
name: Backport Pull Request
|
||||
if: github.repository_owner == 'NixOS' && github.event.pull_request.merged == true && (github.event_name != 'labeled' || startsWith('backport', github.event.label.name))
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
ref: ${{ github.event.pull_request.head.sha }}
|
||||
- name: Create backport PRs
|
||||
uses: korthout/backport-action@v1.3.1
|
||||
with:
|
||||
# Config README: https://github.com/korthout/backport-action#backport-action
|
||||
copy_labels_pattern: 'severity:\ssecurity'
|
||||
pull_description: |-
|
||||
Bot-based backport to `${target_branch}`, triggered by a label in #${pull_number}.
|
||||
|
||||
* [ ] Before merging, ensure that this backport complies with the [Criteria for Backporting](https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#criteria-for-backporting-changes).
|
||||
* Even as a non-commiter, if you find that it does not comply, leave a comment.
|
||||
29
.github/workflows/basic-eval.yml
vendored
29
.github/workflows/basic-eval.yml
vendored
@@ -1,29 +0,0 @@
|
||||
name: Basic evaluation checks
|
||||
|
||||
on:
|
||||
workflow_dispatch
|
||||
# pull_request:
|
||||
# branches:
|
||||
# - master
|
||||
# - release-**
|
||||
# push:
|
||||
# branches:
|
||||
# - master
|
||||
# - release-**
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
tests:
|
||||
runs-on: ubuntu-latest
|
||||
# we don't limit this action to only NixOS repo since the checks are cheap and useful developer feedback
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: cachix/install-nix-action@v22
|
||||
- uses: cachix/cachix-action@v12
|
||||
with:
|
||||
# This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere.
|
||||
name: nixpkgs-ci
|
||||
signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
|
||||
# explicit list of supportedSystems is needed until aarch64-darwin becomes part of the trunk jobset
|
||||
- run: nix-build pkgs/top-level/release.nix -A tarball.nixpkgs-basic-release-checks --arg supportedSystems '[ "aarch64-darwin" "aarch64-linux" "x86_64-linux" "x86_64-darwin" ]'
|
||||
24
.github/workflows/check-maintainers-sorted.yaml
vendored
24
.github/workflows/check-maintainers-sorted.yaml
vendored
@@ -1,24 +0,0 @@
|
||||
name: "Check that maintainer list is sorted"
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
paths:
|
||||
- 'maintainers/maintainer-list.nix'
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
nixos:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'NixOS'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
# pull_request_target checks out the base branch by default
|
||||
ref: refs/pull/${{ github.event.pull_request.number }}/merge
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
# explicitly enable sandbox
|
||||
extra_nix_config: sandbox = true
|
||||
- name: Check that maintainer-list.nix is sorted
|
||||
run: nix-instantiate --eval maintainers/scripts/check-maintainers-sorted.nix
|
||||
37
.github/workflows/direct-push.yml
vendored
37
.github/workflows/direct-push.yml
vendored
@@ -1,37 +0,0 @@
|
||||
name: "Direct Push Warning"
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
- release-**
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
build:
|
||||
permissions:
|
||||
contents: write # for peter-evans/commit-comment to comment on commit
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'NixOS'
|
||||
env:
|
||||
GITHUB_SHA: ${{ github.sha }}
|
||||
GITHUB_REPOSITORY: ${{ github.repository }}
|
||||
steps:
|
||||
- name: Check if commit is a merge commit
|
||||
id: ismerge
|
||||
run: |
|
||||
ISMERGE=$(curl -H 'Accept: application/vnd.github.groot-preview+json' -H "authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" https://api.github.com/repos/${{ env.GITHUB_REPOSITORY }}/commits/${{ env.GITHUB_SHA }}/pulls | jq -r '.[] | select(.merge_commit_sha == "${{ env.GITHUB_SHA }}") | any')
|
||||
echo "ismerge=$ISMERGE" >> $GITHUB_OUTPUT
|
||||
# github events are eventually consistent, so wait until changes propagate to thier DB
|
||||
- run: sleep 60
|
||||
if: steps.ismerge.outputs.ismerge != 'true'
|
||||
- name: Warn if the commit was a direct push
|
||||
if: steps.ismerge.outputs.ismerge != 'true'
|
||||
uses: peter-evans/commit-comment@v2
|
||||
with:
|
||||
body: |
|
||||
@${{ github.actor }}, you pushed a commit directly to master/release branch
|
||||
instead of going through a Pull Request.
|
||||
|
||||
That's highly discouraged beyond the few exceptions listed
|
||||
on https://github.com/NixOS/nixpkgs/issues/118661
|
||||
41
.github/workflows/editorconfig.yml
vendored
41
.github/workflows/editorconfig.yml
vendored
@@ -1,41 +0,0 @@
|
||||
name: "Checking EditorConfig"
|
||||
|
||||
permissions: read-all
|
||||
|
||||
on:
|
||||
# avoids approving first time contributors
|
||||
pull_request_target:
|
||||
branches-ignore:
|
||||
- 'release-**'
|
||||
|
||||
jobs:
|
||||
tests:
|
||||
runs-on: ubuntu-latest
|
||||
if: "github.repository_owner == 'NixOS' && !contains(github.event.pull_request.title, '[skip treewide]')"
|
||||
steps:
|
||||
- name: Get list of changed files from PR
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
gh api \
|
||||
repos/NixOS/nixpkgs/pulls/${{github.event.number}}/files --paginate \
|
||||
| jq '.[] | select(.status != "removed") | .filename' \
|
||||
> "$HOME/changed_files"
|
||||
- name: print list of changed files
|
||||
run: |
|
||||
cat "$HOME/changed_files"
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
# pull_request_target checks out the base branch by default
|
||||
ref: refs/pull/${{ github.event.pull_request.number }}/merge
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
# nixpkgs commit is pinned so that it doesn't break
|
||||
# editorconfig-checker 2.4.0
|
||||
nix_path: nixpkgs=https://github.com/NixOS/nixpkgs/archive/c473cc8714710179df205b153f4e9fa007107ff9.tar.gz
|
||||
- name: Checking EditorConfig
|
||||
run: |
|
||||
cat "$HOME/changed_files" | nix-shell -p editorconfig-checker --run 'xargs -r editorconfig-checker -disable-indent-size'
|
||||
- if: ${{ failure() }}
|
||||
run: |
|
||||
echo "::error :: Hey! It looks like your changes don't follow our editorconfig settings. Read https://editorconfig.org/#download to configure your editor so you never see this error again."
|
||||
24
.github/workflows/labels.yml
vendored
24
.github/workflows/labels.yml
vendored
@@ -1,24 +0,0 @@
|
||||
name: "Label PR"
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
types: [edited, opened, synchronize, reopened]
|
||||
|
||||
# WARNING:
|
||||
# When extending this action, be aware that $GITHUB_TOKEN allows some write
|
||||
# access to the GitHub API. This means that it should not evaluate user input in
|
||||
# a way that allows code injection.
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
pull-requests: write
|
||||
|
||||
jobs:
|
||||
labels:
|
||||
runs-on: ubuntu-latest
|
||||
if: "github.repository_owner == 'NixOS' && !contains(github.event.pull_request.title, '[skip treewide]')"
|
||||
steps:
|
||||
- uses: actions/labeler@v4
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
sync-labels: true
|
||||
31
.github/workflows/manual-nixos.yml
vendored
31
.github/workflows/manual-nixos.yml
vendored
@@ -1,31 +0,0 @@
|
||||
name: "Build NixOS manual"
|
||||
|
||||
permissions: read-all
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- 'nixos/**'
|
||||
|
||||
jobs:
|
||||
nixos:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'NixOS'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
# pull_request_target checks out the base branch by default
|
||||
ref: refs/pull/${{ github.event.pull_request.number }}/merge
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
# explicitly enable sandbox
|
||||
extra_nix_config: sandbox = true
|
||||
- uses: cachix/cachix-action@v12
|
||||
with:
|
||||
# This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere.
|
||||
name: nixpkgs-ci
|
||||
signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
|
||||
- name: Building NixOS manual
|
||||
run: NIX_PATH=nixpkgs=$(pwd) nix-build --option restrict-eval true nixos/release.nix -A manual.x86_64-linux
|
||||
32
.github/workflows/manual-nixpkgs.yml
vendored
32
.github/workflows/manual-nixpkgs.yml
vendored
@@ -1,32 +0,0 @@
|
||||
name: "Build Nixpkgs manual"
|
||||
|
||||
permissions: read-all
|
||||
|
||||
on:
|
||||
pull_request_target:
|
||||
branches:
|
||||
- master
|
||||
paths:
|
||||
- 'doc/**'
|
||||
- 'lib/**'
|
||||
|
||||
jobs:
|
||||
nixpkgs:
|
||||
runs-on: ubuntu-latest
|
||||
if: github.repository_owner == 'NixOS'
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
# pull_request_target checks out the base branch by default
|
||||
ref: refs/pull/${{ github.event.pull_request.number }}/merge
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
# explicitly enable sandbox
|
||||
extra_nix_config: sandbox = true
|
||||
- uses: cachix/cachix-action@v12
|
||||
with:
|
||||
# This cache is for the nixpkgs repo checks and should not be trusted or used elsewhere.
|
||||
name: nixpkgs-ci
|
||||
signingKey: '${{ secrets.CACHIX_SIGNING_KEY }}'
|
||||
- name: Building Nixpkgs manual
|
||||
run: NIX_PATH=nixpkgs=$(pwd) nix-build --option restrict-eval true pkgs/top-level/release.nix -A manual
|
||||
26
.github/workflows/no-channel.yml
vendored
26
.github/workflows/no-channel.yml
vendored
@@ -1,26 +0,0 @@
|
||||
name: "No channel PR"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- 'nixos-**'
|
||||
- 'nixpkgs-**'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
fail:
|
||||
permissions:
|
||||
contents: none
|
||||
name: "This PR is is targeting a channel branch"
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- run: |
|
||||
cat <<EOF
|
||||
The nixos-* and nixpkgs-* branches are pushed to by the channel
|
||||
release script and should not be merged into directly.
|
||||
|
||||
Please target the equivalent release-* branch or master instead.
|
||||
EOF
|
||||
exit 1
|
||||
33
.github/workflows/ofborg-pending.yml
vendored
33
.github/workflows/ofborg-pending.yml
vendored
@@ -1,33 +0,0 @@
|
||||
name: "Set pending OfBorg status"
|
||||
on:
|
||||
pull_request_target:
|
||||
|
||||
# Sets the ofborg-eval status to "pending" to signal that we are waiting for
|
||||
# OfBorg even if it is running late. The status will be overwritten by OfBorg
|
||||
# once it starts evaluation.
|
||||
|
||||
# WARNING:
|
||||
# When extending this action, be aware that $GITHUB_TOKEN allows (restricted) write access to
|
||||
# the GitHub repository. This means that it should not evaluate user input in a
|
||||
# way that allows code injection.
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
action:
|
||||
if: github.repository_owner == 'NixOS'
|
||||
permissions:
|
||||
statuses: write
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: "Set pending OfBorg status"
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
curl \
|
||||
-X POST \
|
||||
-H "Accept: application/vnd.github.v3+json" \
|
||||
-H "Authorization: Bearer $GITHUB_TOKEN" \
|
||||
-d '{"context": "ofborg-eval", "state": "pending", "description": "Waiting for OfBorg..."}' \
|
||||
"https://api.github.com/repos/NixOS/nixpkgs/commits/${{ github.event.pull_request.head.sha }}/statuses"
|
||||
59
.github/workflows/periodic-merge-24h.yml
vendored
59
.github/workflows/periodic-merge-24h.yml
vendored
@@ -1,59 +0,0 @@
|
||||
# This action periodically merges base branches into staging branches.
|
||||
# This is done to
|
||||
# * prevent conflicts or rather resolve them early
|
||||
# * make all potential breakage happen on the staging branch
|
||||
# * and make sure that all major rebuilds happen before the staging
|
||||
# branch get’s merged back into its base branch.
|
||||
|
||||
name: "Periodic Merges (24h)"
|
||||
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# * is a special character in YAML so you have to quote this string
|
||||
# Merge every 24 hours
|
||||
- cron: '0 0 * * *'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
periodic-merge:
|
||||
permissions:
|
||||
contents: write # for devmasx/merge-branch to merge branches
|
||||
pull-requests: write # for peter-evans/create-or-update-comment to create or update comment
|
||||
if: github.repository_owner == 'NixOS'
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
# don't fail fast, so that all pairs are tried
|
||||
fail-fast: false
|
||||
# certain branches need to be merged in order, like master->staging-next->staging
|
||||
# and disabling parallelism ensures the order of the pairs below.
|
||||
max-parallel: 1
|
||||
matrix:
|
||||
pairs:
|
||||
- from: master
|
||||
into: haskell-updates
|
||||
- from: release-23.05
|
||||
into: staging-next-23.05
|
||||
- from: staging-next-23.05
|
||||
into: staging-23.05
|
||||
name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||
uses: devmasx/merge-branch@1.4.0
|
||||
with:
|
||||
type: now
|
||||
from_branch: ${{ matrix.pairs.from }}
|
||||
target_branch: ${{ matrix.pairs.into }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Comment on failure
|
||||
uses: peter-evans/create-or-update-comment@v3
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
issue-number: 105153
|
||||
body: |
|
||||
Periodic merge from `${{ matrix.pairs.from }}` into `${{ matrix.pairs.into }}` has [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
|
||||
57
.github/workflows/periodic-merge-6h.yml
vendored
57
.github/workflows/periodic-merge-6h.yml
vendored
@@ -1,57 +0,0 @@
|
||||
# This action periodically merges base branches into staging branches.
|
||||
# This is done to
|
||||
# * prevent conflicts or rather resolve them early
|
||||
# * make all potential breakage happen on the staging branch
|
||||
# * and make sure that all major rebuilds happen before the staging
|
||||
# branch get’s merged back into its base branch.
|
||||
|
||||
name: "Periodic Merges (6h)"
|
||||
|
||||
|
||||
on:
|
||||
schedule:
|
||||
# * is a special character in YAML so you have to quote this string
|
||||
# Merge every 6 hours
|
||||
- cron: '0 */6 * * *'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
periodic-merge:
|
||||
permissions:
|
||||
contents: write # for devmasx/merge-branch to merge branches
|
||||
pull-requests: write # for peter-evans/create-or-update-comment to create or update comment
|
||||
if: github.repository_owner == 'NixOS'
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
# don't fail fast, so that all pairs are tried
|
||||
fail-fast: false
|
||||
# certain branches need to be merged in order, like master->staging-next->staging
|
||||
# and disabling parallelism ensures the order of the pairs below.
|
||||
max-parallel: 1
|
||||
matrix:
|
||||
pairs:
|
||||
- from: master
|
||||
into: staging-next
|
||||
- from: staging-next
|
||||
into: staging
|
||||
name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: ${{ matrix.pairs.from }} → ${{ matrix.pairs.into }}
|
||||
uses: devmasx/merge-branch@1.4.0
|
||||
with:
|
||||
type: now
|
||||
from_branch: ${{ matrix.pairs.from }}
|
||||
target_branch: ${{ matrix.pairs.into }}
|
||||
github_token: ${{ secrets.GITHUB_TOKEN }}
|
||||
|
||||
- name: Comment on failure
|
||||
uses: peter-evans/create-or-update-comment@v3
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
issue-number: 105153
|
||||
body: |
|
||||
Periodic merge from `${{ matrix.pairs.from }}` into `${{ matrix.pairs.into }}` has [failed](https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}).
|
||||
69
.github/workflows/update-terraform-providers.yml
vendored
69
.github/workflows/update-terraform-providers.yml
vendored
@@ -1,69 +0,0 @@
|
||||
name: "Update terraform-providers"
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: "0 3 * * *"
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
tf-providers:
|
||||
permissions:
|
||||
contents: write # for peter-evans/create-pull-request to create branch
|
||||
pull-requests: write # for peter-evans/create-pull-request to create a PR
|
||||
if: github.repository_owner == 'NixOS' && github.ref == 'refs/heads/master' # ensure workflow_dispatch only runs on master
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: cachix/install-nix-action@v22
|
||||
with:
|
||||
nix_path: nixpkgs=channel:nixpkgs-unstable
|
||||
- name: setup
|
||||
id: setup
|
||||
run: |
|
||||
echo "title=terraform-providers: update $(date -u +"%Y-%m-%d")" >> $GITHUB_OUTPUT
|
||||
- name: update terraform-providers
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
run: |
|
||||
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
|
||||
git config user.name "github-actions[bot]"
|
||||
echo | nix-shell \
|
||||
maintainers/scripts/update.nix \
|
||||
--argstr commit true \
|
||||
--argstr keep-going true \
|
||||
--argstr max-workers 2 \
|
||||
--argstr path terraform-providers
|
||||
- name: get failed updates
|
||||
run: |
|
||||
echo 'FAILED<<EOF' >> $GITHUB_ENV
|
||||
git ls-files --others >> $GITHUB_ENV
|
||||
echo 'EOF' >> $GITHUB_ENV
|
||||
# cleanup logs of failed updates so they aren't included in the PR
|
||||
- name: clean repo
|
||||
run: |
|
||||
git clean -f
|
||||
- name: create PR
|
||||
uses: peter-evans/create-pull-request@v5
|
||||
with:
|
||||
body: |
|
||||
Automatic update by [update-terraform-providers](https://github.com/NixOS/nixpkgs/blob/master/.github/workflows/update-terraform-providers.yml) action.
|
||||
|
||||
https://github.com/NixOS/nixpkgs/actions/runs/${{ github.run_id }}
|
||||
|
||||
These providers failed to update:
|
||||
```
|
||||
${{ env.FAILED }}
|
||||
```
|
||||
|
||||
Check that all providers build with:
|
||||
```
|
||||
@ofborg build terraform.full
|
||||
```
|
||||
If there is more than ten commits in the PR `ofborg` won't build it automatically and you will need to use the above command.
|
||||
branch: terraform-providers-update
|
||||
delete-branch: false
|
||||
title: ${{ steps.setup.outputs.title }}
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
16
README.md
16
README.md
@@ -1,3 +1,19 @@
|
||||
Modified for personal use, mainly for compiling natively on Alderlake.
|
||||
|
||||
The following files were modified:
|
||||
|
||||
* `lib/systems/architectures.nix`
|
||||
* `pkgs/development`:
|
||||
* `haskell-modules/default.nix`
|
||||
* `libraries`:
|
||||
* `thrift/default.nix`
|
||||
* `openexr`:
|
||||
* `3.nix`
|
||||
* `fix_nan_compare.patch`
|
||||
* `python-modules`:
|
||||
* `debugpy/default.nix`
|
||||
* `aiohttp/default.nix`
|
||||
|
||||
<p align="center">
|
||||
<a href="https://nixos.org#gh-light-mode-only">
|
||||
<img src="https://raw.githubusercontent.com/NixOS/nixos-homepage/master/logo/nixos-hires.png" width="500px" alt="NixOS logo"/>
|
||||
|
||||
@@ -52,14 +52,17 @@ in {
|
||||
# target configuration
|
||||
(mkIf (cfg.packageNames != []) {
|
||||
nixpkgs.overlays = [
|
||||
(self: super: genAttrs cfg.packageNames (pn: super.${pn}.override { stdenv = builtins.trace "with ccache: ${pn}" self.ccacheStdenv; }))
|
||||
(self: super: genAttrs cfg.packageNames (pn: super.${pn}.override { stdenv = builtins.trace "with ccache: ${pn}" self.ccacheStdenv; }))];})
|
||||
|
||||
(mkIf cfg.enable {
|
||||
nixpkgs.overlays = [
|
||||
(self: super: {
|
||||
ccacheWrapper = super.ccacheWrapper.override {
|
||||
extraConfig = ''
|
||||
export CCACHE_COMPRESS=1
|
||||
export CCACHE_NOCOMPRESS=true
|
||||
export CCACHE_DIR="${cfg.cacheDir}"
|
||||
export CCACHE_UMASK=007
|
||||
export CCACHE_MAXSIZE=300G
|
||||
if [ ! -d "$CCACHE_DIR" ]; then
|
||||
echo "====="
|
||||
echo "Directory '$CCACHE_DIR' does not exist"
|
||||
|
||||
@@ -75,8 +75,7 @@ let
|
||||
};
|
||||
|
||||
yubicoAuth = mkOption {
|
||||
default = config.security.pam.yubico.enable;
|
||||
defaultText = literalExpression "config.security.pam.yubico.enable";
|
||||
default = false;
|
||||
type = types.bool;
|
||||
description = lib.mdDoc ''
|
||||
If set, users listed in
|
||||
@@ -546,7 +545,7 @@ let
|
||||
auth requisite ${pkgs.oath-toolkit}/lib/security/pam_oath.so window=${toString oath.window} usersfile=${toString oath.usersFile} digits=${toString oath.digits}
|
||||
'') +
|
||||
(let yubi = config.security.pam.yubico; in optionalString cfg.yubicoAuth ''
|
||||
auth ${yubi.control} ${pkgs.yubico-pam}/lib/security/pam_yubico.so mode=${toString yubi.mode} ${optionalString (yubi.challengeResponsePath != null) "chalresp_path=${yubi.challengeResponsePath}"} ${optionalString (yubi.mode == "client") "id=${toString yubi.id}"} ${optionalString yubi.debug "debug"}
|
||||
auth ${yubi.control} ${pkgs.yubico-pam}/lib/security/pam_yubico.so mode=${toString yubi.mode} ${optionalString (yubi.challengeResponsePath != null) "chalresp_path=${yubi.challengeResponsePath}"} ${optionalString (yubi.mode == "client") "id=${toString yubi.id}${optionalString (yubi.authFile != null)" authfile=${yubi.authFile}"}"} ${optionalString yubi.debug "debug"}
|
||||
'') +
|
||||
(let dp9ik = config.security.pam.dp9ik; in optionalString dp9ik.enable ''
|
||||
auth ${dp9ik.control} ${pkgs.pam_dp9ik}/lib/security/pam_p9.so ${dp9ik.authserver}
|
||||
@@ -1261,6 +1260,11 @@ in
|
||||
More information can be found [here](https://developers.yubico.com/yubico-pam/Authentication_Using_Challenge-Response.html).
|
||||
'';
|
||||
};
|
||||
authFile = mkOption {
|
||||
default = null;
|
||||
type = types.nullOr types.path;
|
||||
description = lib.mdDoc ''For personal use only'';
|
||||
};
|
||||
};
|
||||
|
||||
security.pam.zfs = {
|
||||
|
||||
@@ -19,11 +19,11 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "crow-translate";
|
||||
version = "2.10.7";
|
||||
version = "2.10.10";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://github.com/${pname}/${pname}/releases/download/${version}/${pname}-${version}-source.tar.gz";
|
||||
hash = "sha256-OVRl9yQKK3hJgRVV/W4Fl3LxdFpJs01Mo3pwxLg2RXg=";
|
||||
sha256 = "sha256-PvfruCqmTBFLWLeIL9NV6+H2AifXcY97ImHzD1zEs28=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
||||
@@ -389,7 +389,12 @@ in
|
||||
sed -i '/gb_LinkTarget_LDFLAGS/{ n; /rpath-link/d;}' solenv/gbuild/platform/unxgcc.mk
|
||||
|
||||
find -name "*.cmd" -exec sed -i s,/lib:/usr/lib,, {} \;
|
||||
'';
|
||||
''
|
||||
|
||||
+ (if builtins.elem stdenv.hostPlatform.gcc.arch or "" [ "alderlake" "znver3" ] then
|
||||
''
|
||||
sed -e '/CPPUNIT_TEST(testDubiousArrayFormulasFODS);/d' -i './sc/qa/unit/functions_array.cxx'
|
||||
'' else "");
|
||||
|
||||
makeFlags = [ "SHELL=${bash}/bin/bash" ];
|
||||
|
||||
|
||||
@@ -25,7 +25,10 @@ let
|
||||
(configurationArm { inherit pkgs haskellLib; })
|
||||
] ++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
(configurationDarwin { inherit pkgs haskellLib; })
|
||||
];
|
||||
]
|
||||
# override for alderlake
|
||||
++ lib.optionals (stdenv.hostPlatform.gcc.arch or "" == "alderlake")
|
||||
[( self: super: { cryptonite = haskellLib.dontCheck super.cryptonite; } )];
|
||||
|
||||
extensions = lib.composeManyExtensions ([
|
||||
nonHackagePackages
|
||||
|
||||
@@ -73135,7 +73135,7 @@ self: {
|
||||
"cryptonite" = callPackage
|
||||
({ mkDerivation, base, basement, bytestring, deepseq, gauge
|
||||
, ghc-prim, integer-gmp, memory, random, tasty, tasty-hunit
|
||||
, tasty-kat, tasty-quickcheck
|
||||
, tasty-kat, tasty-quickcheck, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "cryptonite";
|
||||
@@ -73152,6 +73152,7 @@ self: {
|
||||
];
|
||||
description = "Cryptography Primitives sink";
|
||||
license = lib.licenses.bsd3;
|
||||
doCheck = !(builtins.elem (stdenv.hostPlatform.gcc.arch or "") [ "znver2" "znver3" ]);
|
||||
}) {};
|
||||
|
||||
"cryptonite-cd" = callPackage
|
||||
@@ -296220,7 +296221,7 @@ self: {
|
||||
({ mkDerivation, asn1-encoding, asn1-types, async, base, bytestring
|
||||
, cereal, cryptonite, data-default-class, gauge, hourglass, memory
|
||||
, mtl, network, QuickCheck, tasty, tasty-quickcheck, transformers
|
||||
, x509, x509-store, x509-validation
|
||||
, x509, x509-store, x509-validation, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "tls";
|
||||
@@ -296239,6 +296240,7 @@ self: {
|
||||
asn1-types async base bytestring cryptonite data-default-class
|
||||
gauge hourglass QuickCheck tasty-quickcheck x509 x509-validation
|
||||
];
|
||||
doCheck = !(builtins.elem (stdenv.hostPlatform.gcc.arch or "") [ "alderlake" "znver2" "znver3" ]);
|
||||
description = "TLS/SSL protocol native implementation (Server and Client)";
|
||||
license = lib.licenses.bsd3;
|
||||
}) {};
|
||||
@@ -319154,7 +319156,7 @@ self: {
|
||||
"x509" = callPackage
|
||||
({ mkDerivation, asn1-encoding, asn1-parse, asn1-types, base
|
||||
, bytestring, containers, cryptonite, hourglass, memory, mtl, pem
|
||||
, tasty, tasty-quickcheck, transformers
|
||||
, tasty, tasty-quickcheck, transformers, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "x509";
|
||||
@@ -319170,6 +319172,7 @@ self: {
|
||||
];
|
||||
description = "X509 reader and writer";
|
||||
license = lib.licenses.bsd3;
|
||||
doCheck = !(builtins.elem (stdenv.hostPlatform.gcc.arch or "") [ "alderlake" "znver2" "znver3" ]);
|
||||
}) {};
|
||||
|
||||
"x509-store" = callPackage
|
||||
@@ -319229,7 +319232,7 @@ self: {
|
||||
"x509-validation" = callPackage
|
||||
({ mkDerivation, asn1-encoding, asn1-types, base, bytestring
|
||||
, containers, cryptonite, data-default-class, hourglass, memory
|
||||
, mtl, pem, tasty, tasty-hunit, x509, x509-store
|
||||
, mtl, pem, tasty, tasty-hunit, x509, x509-store, stdenv
|
||||
}:
|
||||
mkDerivation {
|
||||
pname = "x509-validation";
|
||||
@@ -319244,6 +319247,7 @@ self: {
|
||||
data-default-class hourglass memory tasty tasty-hunit x509
|
||||
x509-store
|
||||
];
|
||||
doCheck = !(builtins.elem (stdenv.hostPlatform.gcc.arch or "") [ "alderlake" "znver2" "znver3" ]);
|
||||
description = "X.509 Certificate and CRL validation";
|
||||
license = lib.licenses.bsd3;
|
||||
}) {};
|
||||
|
||||
@@ -3,30 +3,22 @@
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "embree";
|
||||
version = "3.13.5";
|
||||
version = "4.2.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "embree";
|
||||
repo = "embree";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-tfM4SGOFVBG0pQK9B/iN2xDaW3yjefnTtsoUad75m80=";
|
||||
sha256 = "sha256-yYCbYVuazDZjNA0Y/90/IOOKK3rgzj/G25ZVJ5+dTXc=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
name = "fixed-compilation-issues-for-arm-aarch64-processor-under-linux.patch";
|
||||
url = "https://github.com/embree/embree/commit/82ca6b5ccb7abe0403a658a0e079926478f04cb1.patch";
|
||||
hash = "sha256-l9S4PBk+yQUypQ22l05daD0ruouZKE4VHkGvzKxkH4o=";
|
||||
})
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
# Fix duplicate /nix/store/.../nix/store/.../ paths
|
||||
sed -i "s|SET(EMBREE_ROOT_DIR .*)|set(EMBREE_ROOT_DIR $out)|" \
|
||||
common/cmake/embree-config.cmake
|
||||
sed -i "s|$""{EMBREE_ROOT_DIR}/||" common/cmake/embree-config.cmake
|
||||
substituteInPlace common/math/math.h --replace 'defined(__MACOSX__) && !defined(__INTEL_COMPILER)' 0
|
||||
substituteInPlace common/math/math.h --replace 'defined(__WIN32__) || defined(__FreeBSD__)' 'defined(__WIN32__) || defined(__FreeBSD__) || defined(__MACOSX__)'
|
||||
# substituteInPlace common/math/math.h --replace 'defined(__MACOSX__) && !defined(__INTEL_COMPILER)' 0
|
||||
# substituteInPlace common/math/math.h --replace 'defined(__WIN32__) || defined(__FreeBSD__)' 'defined(__WIN32__) || defined(__FreeBSD__) || defined(__MACOSX__)'
|
||||
'';
|
||||
|
||||
cmakeFlags = [
|
||||
|
||||
@@ -210,6 +210,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"test_rda_download_queue"
|
||||
] ++ lib.optionals (lib.versionOlder proj.version "8") [
|
||||
"test_ogr_parquet_write_crs_without_id_in_datum_ensemble_members"
|
||||
] ++ lib.optionals (builtins.elem stdenv.hostPlatform.gcc.arch or "" [ "alderlake" "znver3" ]) [
|
||||
"test_jp2openjpeg_22"
|
||||
];
|
||||
postCheck = ''
|
||||
popd # autotest
|
||||
|
||||
@@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
||||
"-DGLM_TEST_ENABLE=${if doCheck then "ON" else "OFF"}"
|
||||
];
|
||||
|
||||
doCheck = true;
|
||||
doCheck = stdenv.hostPlatform.gcc.arch or "" != "alderlake";
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
@@ -88,7 +88,7 @@ stdenv.mkDerivation rec {
|
||||
++ lib.optional (!buildApps) "-DOCIO_BUILD_APPS=OFF";
|
||||
|
||||
# precision issues on non-x86
|
||||
doCheck = stdenv.isx86_64;
|
||||
doCheck = stdenv.isx86_64 && (!builtins.elem stdenv.hostPlatform.gcc.arch or "" [ "alderlake" "znver3" ]);
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://opencolorio.org";
|
||||
|
||||
@@ -18,6 +18,9 @@ stdenv.mkDerivation rec {
|
||||
sha256 = "sha256-Kl+aOA797aZvrvW4ZQNHdSU7YFPieZEzX3aYeaoH6eU=";
|
||||
};
|
||||
|
||||
patches = [] ++ lib.optionals (builtins.elem (stdenv.hostPlatform.gcc.arch or "") [ "alderlake" "znver2" "znver3" ])
|
||||
[ ./fix_nan_compare.patch ];
|
||||
|
||||
outputs = [ "bin" "dev" "out" "doc" ];
|
||||
|
||||
# tests are determined to use /var/tmp on unix
|
||||
|
||||
13
pkgs/development/libraries/openexr/fix_nan_compare.patch
Normal file
13
pkgs/development/libraries/openexr/fix_nan_compare.patch
Normal file
@@ -0,0 +1,13 @@
|
||||
diff --git a/src/test/OpenEXRTest/testOptimizedInterleavePatterns.cpp b/src/test/OpenEXRTest/testOptimizedInterleavePatterns.cpp
|
||||
index b1e92cab..0d2bd93f 100644
|
||||
--- a/src/test/OpenEXRTest/testOptimizedInterleavePatterns.cpp
|
||||
+++ b/src/test/OpenEXRTest/testOptimizedInterleavePatterns.cpp
|
||||
@@ -221,7 +221,7 @@ bool compare(const FrameBuffer& asRead,
|
||||
writtenHalf=half(i.slice().fillValue);
|
||||
}
|
||||
|
||||
- if (writtenHalf.bits()!=readHalf.bits())
|
||||
+ if (!(writtenHalf.bits() == readHalf.bits() || (writtenHalf.isNan() && readHalf.isNan())))
|
||||
{
|
||||
if (nonfatal)
|
||||
{
|
||||
@@ -115,7 +115,7 @@ stdenv.mkDerivation rec {
|
||||
"StressTest"
|
||||
"StressTestConcurrent"
|
||||
"StressTestNonBlocking"
|
||||
];
|
||||
] ++ lib.optionals (stdenv.hostPlatform.gcc.arch or "" == "alderlake") [ "TInterruptTest" ];
|
||||
|
||||
doCheck = !static;
|
||||
|
||||
|
||||
@@ -67,6 +67,7 @@
|
||||
, withLibsecret ? true
|
||||
, systemdSupport ? lib.meta.availableOn stdenv.hostPlatform systemd
|
||||
, testers
|
||||
, enableUnifiedBuilds ? null
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
@@ -221,6 +222,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"-DENABLE_JOURNALD_LOG=OFF"
|
||||
] ++ lib.optionals (stdenv.isLinux && enableGLES) [
|
||||
"-DENABLE_GLES2=ON"
|
||||
] ++ lib.optionals (enableUnifiedBuilds != null) [
|
||||
"-DENABLE_UNIFIED_BUILDS=${cmakeBool enableUnifiedBuilds}"
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -110,7 +110,9 @@ buildPythonPackage rec {
|
||||
] ++ lib.optionals stdenv.isDarwin [
|
||||
"test_addresses" # https://github.com/aio-libs/aiohttp/issues/3572, remove >= v4.0.0
|
||||
"test_close"
|
||||
];
|
||||
]
|
||||
# issue https://github.com/NixOS/nixpkgs/issues/236552
|
||||
++ lib.optionals (stdenv.hostPlatform.gcc.arch or "" == "alderlake") [ "test_web_sendfile_functional" ];
|
||||
|
||||
disabledTestPaths = [
|
||||
"test_proxy_functional.py" # FIXME package proxy.py
|
||||
|
||||
@@ -116,7 +116,7 @@ buildPythonPackage rec {
|
||||
disabledTests = [
|
||||
# https://github.com/microsoft/debugpy/issues/1241
|
||||
"test_flask_breakpoint_multiproc"
|
||||
];
|
||||
] ++ lib.optionals (stdenv.hostPlatform.gcc.arch or "" == "alderlake") [ "test_attach_pid_client" ];
|
||||
|
||||
pythonImportsCheck = [
|
||||
"debugpy"
|
||||
|
||||
@@ -103,6 +103,10 @@ buildPythonPackage rec {
|
||||
};
|
||||
};
|
||||
|
||||
disabledTests = [] ++ lib.optionals (stdenv.hostPlatform.gcc.arch or "" == "alderlake") [
|
||||
"test_initialize_rule_populate_bundle"
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
description = "Library for property based testing";
|
||||
homepage = "https://github.com/HypothesisWorks/hypothesis";
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
, requests
|
||||
, requests-mock
|
||||
, six
|
||||
, stdenv
|
||||
}:
|
||||
|
||||
buildPythonPackage rec {
|
||||
@@ -52,6 +53,7 @@ buildPythonPackage rec {
|
||||
# Reponse is not empty but `s = '孝'` and the JSON decoder chokes on that
|
||||
"test_query_with_empty_result"
|
||||
];
|
||||
doCheck = !builtins.elem stdenv.hostPlatform.gcc.arch or "" [ "alderlake" "znver3" ];
|
||||
|
||||
pythonImportsCheck = [ "influxdb" ];
|
||||
|
||||
|
||||
@@ -69,7 +69,9 @@ in buildPythonPackage rec {
|
||||
# patch to distutils.
|
||||
++ lib.optionals python.hasDistutilsCxxPatch [
|
||||
./numpy-distutils-C++.patch
|
||||
];
|
||||
]
|
||||
++ (if (builtins.elem (stdenv.hostPlatform.gcc.arch or "") [ "alderlake" "znver3" ])
|
||||
then [ ./disable-failed-test.patch ] else []);
|
||||
|
||||
postPatch = ''
|
||||
# fails with multiple errors because we are not using the pinned setuptools version
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
--- a/numpy/core/tests/test_umath_accuracy.py 2023-07-09 03:25:45.476263000 +0800
|
||||
+++ b/numpy/core/tests/test_umath_accuracy.py 2023-08-10 16:42:01.847961778 +0800
|
||||
@@ -38,33 +38,6 @@
|
||||
str_to_float = np.vectorize(convert)
|
||||
|
||||
class TestAccuracy:
|
||||
- @platform_skip
|
||||
- def test_validate_transcendentals(self):
|
||||
- with np.errstate(all='ignore'):
|
||||
- data_dir = path.join(path.dirname(__file__), 'data')
|
||||
- files = os.listdir(data_dir)
|
||||
- files = list(filter(lambda f: f.endswith('.csv'), files))
|
||||
- for filename in files:
|
||||
- filepath = path.join(data_dir, filename)
|
||||
- with open(filepath) as fid:
|
||||
- file_without_comments = (r for r in fid if not r[0] in ('$', '#'))
|
||||
- data = np.genfromtxt(file_without_comments,
|
||||
- dtype=('|S39','|S39','|S39',int),
|
||||
- names=('type','input','output','ulperr'),
|
||||
- delimiter=',',
|
||||
- skip_header=1)
|
||||
- npname = path.splitext(filename)[0].split('-')[3]
|
||||
- npfunc = getattr(np, npname)
|
||||
- for datatype in np.unique(data['type']):
|
||||
- data_subset = data[data['type'] == datatype]
|
||||
- inval = np.array(str_to_float(data_subset['input'].astype(str), data_subset['type'].astype(str)), dtype=eval(datatype))
|
||||
- outval = np.array(str_to_float(data_subset['output'].astype(str), data_subset['type'].astype(str)), dtype=eval(datatype))
|
||||
- perm = np.random.permutation(len(inval))
|
||||
- inval = inval[perm]
|
||||
- outval = outval[perm]
|
||||
- maxulperr = data_subset['ulperr'].max()
|
||||
- assert_array_max_ulp(npfunc(inval), outval, maxulperr)
|
||||
-
|
||||
@pytest.mark.parametrize("ufunc", UNARY_OBJECT_UFUNCS)
|
||||
def test_validate_fp16_transcendentals(self, ufunc):
|
||||
with np.errstate(all='ignore'):
|
||||
@@ -206,7 +206,9 @@ buildPythonPackage rec {
|
||||
] ++ lib.optionals (stdenv.isDarwin && stdenv.isAarch64) [
|
||||
# tests/generic/test_finalize.py::test_binops[and_-args4-right] - AssertionError: assert {} == {'a': 1}
|
||||
"test_binops"
|
||||
];
|
||||
]
|
||||
++ lib.optionals (builtins.elem stdenv.hostPlatform.gcc.arch or "" [ "alderlake" "znver3" ])
|
||||
[ "test_rolling_var_numerical_issues" ];
|
||||
|
||||
# Tests have relative paths, and need to reference compiled C extensions
|
||||
# so change directory where `import .test` is able to be resolved
|
||||
|
||||
@@ -19,16 +19,16 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "python-telegram-bot";
|
||||
version = "20.2";
|
||||
version = "20.4";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
disabled = pythonOlder "3.8";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = pname;
|
||||
repo = pname;
|
||||
rev = "refs/tags/v${version}";
|
||||
hash = "sha256-OdjTlVUjlw+5K/kvL1Yx+7c/lIE52udUo6Ux18M9xmE=";
|
||||
hash = "sha256-owbJJZjBkMjsgfBLRl+rnePrIvQ0sUZs7rP9ie912pw=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
||||
@@ -240,7 +240,8 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
# TODO: wrapGAppsHook wraps efi capsule even though it is not ELF
|
||||
dontWrapGApps = true;
|
||||
|
||||
doCheck = true;
|
||||
doCheck = !(builtins.elem (stdenv.hostPlatform.gcc.arch or "")
|
||||
[ "alderlake" "sandybridge" "silvermont" "znver2" "znver3" ]);
|
||||
|
||||
# Environment variables
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ stdenv.mkDerivation rec {
|
||||
env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [ "-std=c11" ]);
|
||||
|
||||
# darwin currently lacks a pure `pgrep` which is extensively used here
|
||||
doCheck = !stdenv.isDarwin;
|
||||
doCheck = !stdenv.isDarwin && !(stdenv.hostPlatform.gcc.arch or "" == "alderlake");
|
||||
nativeCheckInputs = [ which tcl ps ] ++ lib.optionals stdenv.hostPlatform.isStatic [ getconf ];
|
||||
checkPhase = ''
|
||||
runHook preCheck
|
||||
|
||||
@@ -1,5 +1,10 @@
|
||||
{ python3Packages, fetchFromGitHub, lib, yubikey-personalization, libu2f-host, libusb1, procps
|
||||
, stdenv }:
|
||||
{ lib
|
||||
, stdenv
|
||||
, fetchFromGitHub
|
||||
, python3Packages
|
||||
, installShellFiles
|
||||
, procps
|
||||
}:
|
||||
|
||||
python3Packages.buildPythonPackage rec {
|
||||
pname = "yubikey-manager";
|
||||
@@ -14,55 +19,50 @@ python3Packages.buildPythonPackage rec {
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace pyproject.toml \
|
||||
--replace 'fido2 = ">=0.9, <1.0"' 'fido2 = ">*"'
|
||||
substituteInPlace "ykman/pcsc/__init__.py" \
|
||||
--replace 'pkill' '${if stdenv.isLinux then "${procps}" else "/usr"}/bin/pkill'
|
||||
'';
|
||||
|
||||
nativeBuildInputs = with python3Packages; [ poetry-core ];
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
poetry-core
|
||||
pythonRelaxDepsHook
|
||||
installShellFiles
|
||||
];
|
||||
|
||||
propagatedBuildInputs =
|
||||
with python3Packages; [
|
||||
click
|
||||
cryptography
|
||||
pyscard
|
||||
pyusb
|
||||
six
|
||||
fido2
|
||||
keyring
|
||||
] ++ [
|
||||
libu2f-host
|
||||
libusb1
|
||||
yubikey-personalization
|
||||
];
|
||||
propagatedBuildInputs = with python3Packages; [
|
||||
cryptography
|
||||
pyscard
|
||||
fido2
|
||||
click
|
||||
keyring
|
||||
];
|
||||
|
||||
makeWrapperArgs = [
|
||||
"--prefix" "LD_LIBRARY_PATH" ":"
|
||||
(lib.makeLibraryPath [ libu2f-host libusb1 yubikey-personalization ])
|
||||
pythonRelaxDeps = [
|
||||
"keyring"
|
||||
];
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p "$out/man/man1"
|
||||
cp man/ykman.1 "$out/man/man1"
|
||||
installManPage man/ykman.1
|
||||
|
||||
mkdir -p $out/share/bash-completion/completions
|
||||
_YKMAN_COMPLETE=source $out/bin/ykman > $out/share/bash-completion/completions/ykman || :
|
||||
mkdir -p $out/share/zsh/site-functions/
|
||||
_YKMAN_COMPLETE=source_zsh "$out/bin/ykman" > "$out/share/zsh/site-functions/_ykman" || :
|
||||
substituteInPlace "$out/share/zsh/site-functions/_ykman" \
|
||||
--replace 'compdef _ykman_completion ykman;' '_ykman_completion "$@"'
|
||||
installShellCompletion --cmd ykman \
|
||||
--bash <(_YKMAN_COMPLETE=bash_source "$out/bin/ykman") \
|
||||
--zsh <(_YKMAN_COMPLETE=zsh_source "$out/bin/ykman") \
|
||||
--fish <(_YKMAN_COMPLETE=fish_source "$out/bin/ykman") \
|
||||
'';
|
||||
|
||||
nativeCheckInputs = with python3Packages; [ pytestCheckHook makefun ];
|
||||
nativeCheckInputs = with python3Packages; [
|
||||
pytestCheckHook
|
||||
makefun
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://developers.yubico.com/yubikey-manager";
|
||||
changelog = "https://github.com/Yubico/yubikey-manager/releases/tag/${version}";
|
||||
description = "Command line tool for configuring any YubiKey over all USB transports";
|
||||
|
||||
license = licenses.bsd2;
|
||||
platforms = platforms.unix;
|
||||
maintainers = with maintainers; [ benley lassulus pinpox ];
|
||||
maintainers = with maintainers; [ benley lassulus pinpox nickcao ];
|
||||
mainProgram = "ykman";
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user