mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-07-13 21:50:33 +03:00
Merge master into staging-next
This commit is contained in:
commit
f5096bbfa6
141 changed files with 364 additions and 352 deletions
7
.github/labeler-no-sync.yml
vendored
7
.github/labeler-no-sync.yml
vendored
|
@ -22,6 +22,13 @@
|
||||||
- doc/**/*
|
- doc/**/*
|
||||||
- nixos/doc/**/*
|
- nixos/doc/**/*
|
||||||
|
|
||||||
|
"backport release-24.11":
|
||||||
|
- any:
|
||||||
|
- changed-files:
|
||||||
|
- any-glob-to-any-file:
|
||||||
|
- .github/workflows/*
|
||||||
|
- ci/**/*.*
|
||||||
|
|
||||||
"backport release-25.05":
|
"backport release-25.05":
|
||||||
- any:
|
- any:
|
||||||
- changed-files:
|
- changed-files:
|
||||||
|
|
30
.github/workflows/dismissed-review.yml
vendored
30
.github/workflows/dismissed-review.yml
vendored
|
@ -1,30 +0,0 @@
|
||||||
name: Dismissed Review
|
|
||||||
|
|
||||||
on:
|
|
||||||
pull_request_review:
|
|
||||||
types: [dismissed]
|
|
||||||
|
|
||||||
permissions:
|
|
||||||
pull-requests: write
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
# The check-cherry-picks workflow creates review comments,
|
|
||||||
# that should sometimes be manually dismissed.
|
|
||||||
# When a CI-generated review is dismissed, this job automatically
|
|
||||||
# minimizes it, to prevent it from cluttering the PR.
|
|
||||||
minimize:
|
|
||||||
name: Minimize as resolved
|
|
||||||
if: github.event.review.user.login == 'github-actions[bot]'
|
|
||||||
runs-on: ubuntu-24.04-arm
|
|
||||||
steps:
|
|
||||||
- uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
|
|
||||||
with:
|
|
||||||
script: |
|
|
||||||
await github.graphql(`mutation($node_id:ID!) {
|
|
||||||
minimizeComment(input: {
|
|
||||||
classifier: RESOLVED,
|
|
||||||
subjectId: $node_id
|
|
||||||
})
|
|
||||||
{ clientMutationId }
|
|
||||||
}`, { node_id: context.payload.review.node_id })
|
|
||||||
|
|
|
@ -227,6 +227,7 @@ nixos/modules/installer/tools/nix-fallback-paths.nix @NixOS/nix-team @raitobeza
|
||||||
/nixos/tests/snapcast.nix @mweinelt
|
/nixos/tests/snapcast.nix @mweinelt
|
||||||
|
|
||||||
# Browsers
|
# Browsers
|
||||||
|
/pkgs/applications/networking/browsers/librewolf @squalus @DominicWrege @fpletz @LordGrimmauld
|
||||||
/pkgs/applications/networking/browsers/firefox @mweinelt
|
/pkgs/applications/networking/browsers/firefox @mweinelt
|
||||||
/pkgs/applications/networking/browsers/chromium @emilylange @networkException
|
/pkgs/applications/networking/browsers/chromium @emilylange @networkException
|
||||||
/nixos/tests/chromium.nix @emilylange @networkException
|
/nixos/tests/chromium.nix @emilylange @networkException
|
||||||
|
|
24
ci/README.md
24
ci/README.md
|
@ -7,9 +7,9 @@ This is in contrast with [`maintainers/scripts`](../maintainers/scripts) which i
|
||||||
|
|
||||||
CI may need certain packages from Nixpkgs.
|
CI may need certain packages from Nixpkgs.
|
||||||
In order to ensure that the needed packages are generally available without building,
|
In order to ensure that the needed packages are generally available without building,
|
||||||
[`pinned-nixpkgs.json`](./pinned-nixpkgs.json) contains a pinned Nixpkgs version tested by Hydra.
|
[`pinned.json`](./pinned.json) contains a pinned Nixpkgs version tested by Hydra.
|
||||||
|
|
||||||
Run [`update-pinned-nixpkgs.sh`](./update-pinned-nixpkgs.sh) to update it.
|
Run [`update-pinned.sh`](./update-pinned.sh) to update it.
|
||||||
|
|
||||||
## `ci/nixpkgs-vet.sh BASE_BRANCH [REPOSITORY]`
|
## `ci/nixpkgs-vet.sh BASE_BRANCH [REPOSITORY]`
|
||||||
|
|
||||||
|
@ -20,23 +20,3 @@ Arguments:
|
||||||
|
|
||||||
- `BASE_BRANCH`: The base branch to use, e.g. master or release-24.05
|
- `BASE_BRANCH`: The base branch to use, e.g. master or release-24.05
|
||||||
- `REPOSITORY`: The repository from which to fetch the base branch. Defaults to <https://github.com/NixOS/nixpkgs.git>.
|
- `REPOSITORY`: The repository from which to fetch the base branch. Defaults to <https://github.com/NixOS/nixpkgs.git>.
|
||||||
|
|
||||||
## `ci/nixpkgs-vet`
|
|
||||||
|
|
||||||
This directory contains scripts and files used and related to [`nixpkgs-vet`](https://github.com/NixOS/nixpkgs-vet/), which the CI uses to implement `pkgs/by-name` checks, along with many other Nixpkgs architecture rules.
|
|
||||||
See also the [CI GitHub Action](../.github/workflows/nixpkgs-vet.yml).
|
|
||||||
|
|
||||||
## `ci/nixpkgs-vet/update-pinned-tool.sh`
|
|
||||||
|
|
||||||
Updates the pinned [`nixpkgs-vet` tool](https://github.com/NixOS/nixpkgs-vet) in [`ci/nixpkgs-vet/pinned-version.txt`](./nixpkgs-vet/pinned-version.txt) to the latest [release](https://github.com/NixOS/nixpkgs-vet/releases).
|
|
||||||
|
|
||||||
Each release contains a pre-built `x86_64-linux` version of the tool which is used by CI.
|
|
||||||
|
|
||||||
This script currently needs to be called manually when the CI tooling needs to be updated.
|
|
||||||
|
|
||||||
Why not just build the tooling right from the PRs Nixpkgs version?
|
|
||||||
|
|
||||||
- Because it allows CI to check all PRs, even if they would break the CI tooling.
|
|
||||||
- Because it makes the CI check very fast, since no Nix builds need to be done, even for mass rebuilds.
|
|
||||||
- Because it improves security, since we don't have to build potentially untrusted code from PRs.
|
|
||||||
The tool only needs a very minimal Nix evaluation at runtime, which can work with [readonly-mode](https://nixos.org/manual/nix/stable/command-ref/opt-common.html#opt-readonly-mode) and [restrict-eval](https://nixos.org/manual/nix/stable/command-ref/conf-file.html#conf-restrict-eval).
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ buildGoModule {
|
||||||
})
|
})
|
||||||
# Undoes part of the above PR: We don't want to require write access
|
# Undoes part of the above PR: We don't want to require write access
|
||||||
# to the repository, that's only needed for GitHub's native CODEOWNERS.
|
# to the repository, that's only needed for GitHub's native CODEOWNERS.
|
||||||
# Furthermore, it removes an unneccessary check from the code
|
# Furthermore, it removes an unnecessary check from the code
|
||||||
# that breaks tokens generated for GitHub Apps.
|
# that breaks tokens generated for GitHub Apps.
|
||||||
./permissions.patch
|
./permissions.patch
|
||||||
# Allows setting a custom CODEOWNERS path using the OWNERS_FILE env var
|
# Allows setting a custom CODEOWNERS path using the OWNERS_FILE env var
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
let
|
let
|
||||||
pinnedNixpkgs = builtins.fromJSON (builtins.readFile ./pinned-nixpkgs.json);
|
pinned = (builtins.fromJSON (builtins.readFile ./pinned.json)).pins;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
system ? builtins.currentSystem,
|
system ? builtins.currentSystem,
|
||||||
|
@ -10,8 +10,8 @@ let
|
||||||
nixpkgs' =
|
nixpkgs' =
|
||||||
if nixpkgs == null then
|
if nixpkgs == null then
|
||||||
fetchTarball {
|
fetchTarball {
|
||||||
url = "https://github.com/NixOS/nixpkgs/archive/${pinnedNixpkgs.rev}.tar.gz";
|
inherit (pinned.nixpkgs) url;
|
||||||
sha256 = pinnedNixpkgs.sha256;
|
sha256 = pinned.nixpkgs.hash;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
nixpkgs;
|
nixpkgs;
|
||||||
|
@ -25,9 +25,8 @@ let
|
||||||
fmt =
|
fmt =
|
||||||
let
|
let
|
||||||
treefmtNixSrc = fetchTarball {
|
treefmtNixSrc = fetchTarball {
|
||||||
# Master at 2025-02-12
|
inherit (pinned.treefmt-nix) url;
|
||||||
url = "https://github.com/numtide/treefmt-nix/archive/4f09b473c936d41582dd744e19f34ec27592c5fd.tar.gz";
|
sha256 = pinned.treefmt-nix.hash;
|
||||||
sha256 = "051vh6raskrxw5k6jncm8zbk9fhbzgm1gxpq9gm5xw1b6wgbgcna";
|
|
||||||
};
|
};
|
||||||
treefmtEval = (import treefmtNixSrc).evalModule pkgs {
|
treefmtEval = (import treefmtNixSrc).evalModule pkgs {
|
||||||
# Important: The auto-rebase script uses `git filter-branch --tree-filter`,
|
# Important: The auto-rebase script uses `git filter-branch --tree-filter`,
|
||||||
|
|
|
@ -61,9 +61,6 @@ trace "Done"
|
||||||
trace -n "Merging base branch into the HEAD commit in $tmp/merged.. "
|
trace -n "Merging base branch into the HEAD commit in $tmp/merged.. "
|
||||||
git -C "$tmp/merged" merge -q --no-edit "$baseSha"
|
git -C "$tmp/merged" merge -q --no-edit "$baseSha"
|
||||||
trace -e "\e[34m$(git -C "$tmp/merged" rev-parse HEAD)\e[0m"
|
trace -e "\e[34m$(git -C "$tmp/merged" rev-parse HEAD)\e[0m"
|
||||||
trace -n "Reading pinned nixpkgs-vet version from pinned-version.txt.. "
|
|
||||||
toolVersion=$(<"$tmp/merged/ci/nixpkgs-vet/pinned-version.txt")
|
|
||||||
trace -e "\e[34m$toolVersion\e[0m"
|
|
||||||
|
|
||||||
trace "Running nixpkgs-vet.."
|
trace "Running nixpkgs-vet.."
|
||||||
nix-build ci -A nixpkgs-vet --argstr base "$tmp/base" --argstr head "$tmp/merged"
|
nix-build ci -A nixpkgs-vet --argstr base "$tmp/base" --argstr head "$tmp/merged"
|
||||||
|
|
|
@ -1 +0,0 @@
|
||||||
0.1.4
|
|
|
@ -1,22 +0,0 @@
|
||||||
#!/usr/bin/env nix-shell
|
|
||||||
#!nix-shell -i bash -p jq curl
|
|
||||||
|
|
||||||
set -o pipefail -o errexit -o nounset
|
|
||||||
|
|
||||||
trace() { echo >&2 "$@"; }
|
|
||||||
|
|
||||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
|
||||||
|
|
||||||
repository=NixOS/nixpkgs-vet
|
|
||||||
pin_file=$SCRIPT_DIR/pinned-version.txt
|
|
||||||
|
|
||||||
trace -n "Fetching latest release of $repository.. "
|
|
||||||
latestRelease=$(curl -sSfL \
|
|
||||||
-H "Accept: application/vnd.github+json" \
|
|
||||||
-H "X-GitHub-Api-Version: 2022-11-28" \
|
|
||||||
https://api.github.com/repos/"$repository"/releases/latest)
|
|
||||||
latestVersion=$(jq .tag_name -r <<< "$latestRelease")
|
|
||||||
trace "$latestVersion"
|
|
||||||
|
|
||||||
trace "Updating $pin_file"
|
|
||||||
echo "$latestVersion" > "$pin_file"
|
|
|
@ -1,4 +0,0 @@
|
||||||
{
|
|
||||||
"rev": "3d1f29646e4b57ed468d60f9d286cde23a8d1707",
|
|
||||||
"sha256": "1wzvc9h9a6l9wyhzh892xb5x88kxmbzxb1k8s7fizyyw2q4nqw07"
|
|
||||||
}
|
|
31
ci/pinned.json
Normal file
31
ci/pinned.json
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
{
|
||||||
|
"pins": {
|
||||||
|
"nixpkgs": {
|
||||||
|
"type": "Git",
|
||||||
|
"repository": {
|
||||||
|
"type": "GitHub",
|
||||||
|
"owner": "NixOS",
|
||||||
|
"repo": "nixpkgs"
|
||||||
|
},
|
||||||
|
"branch": "nixpkgs-unstable",
|
||||||
|
"submodules": false,
|
||||||
|
"revision": "8ca7ec685bbee55d6dcb326abe23945c0806c39e",
|
||||||
|
"url": "https://github.com/NixOS/nixpkgs/archive/8ca7ec685bbee55d6dcb326abe23945c0806c39e.tar.gz",
|
||||||
|
"hash": "1hkxm871m66mjsc4acdki32qqnpgk3n6vi3zrzns2bwlwp6ivcjx"
|
||||||
|
},
|
||||||
|
"treefmt-nix": {
|
||||||
|
"type": "Git",
|
||||||
|
"repository": {
|
||||||
|
"type": "GitHub",
|
||||||
|
"owner": "numtide",
|
||||||
|
"repo": "treefmt-nix"
|
||||||
|
},
|
||||||
|
"branch": "main",
|
||||||
|
"submodules": false,
|
||||||
|
"revision": "1f3f7b784643d488ba4bf315638b2b0a4c5fb007",
|
||||||
|
"url": "https://github.com/numtide/treefmt-nix/archive/1f3f7b784643d488ba4bf315638b2b0a4c5fb007.tar.gz",
|
||||||
|
"hash": "13qisjalw9qvd6lkd9g8225r46j5wdjrp3zw6jrs81q2vxwdz37m"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"version": 5
|
||||||
|
}
|
|
@ -1,17 +0,0 @@
|
||||||
#!/usr/bin/env nix-shell
|
|
||||||
#!nix-shell -i bash -p jq
|
|
||||||
|
|
||||||
set -euo pipefail
|
|
||||||
|
|
||||||
# https://stackoverflow.com/a/246128
|
|
||||||
SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
|
|
||||||
|
|
||||||
repo=https://github.com/nixos/nixpkgs
|
|
||||||
branch=nixpkgs-unstable
|
|
||||||
file=$SCRIPT_DIR/pinned-nixpkgs.json
|
|
||||||
|
|
||||||
defaultRev=$(git ls-remote "$repo" refs/heads/"$branch" | cut -f1)
|
|
||||||
rev=${1:-$defaultRev}
|
|
||||||
sha256=$(nix-prefetch-url --unpack "$repo/archive/$rev.tar.gz" --name source)
|
|
||||||
|
|
||||||
jq -n --arg rev "$rev" --arg sha256 "$sha256" '$ARGS.named' | tee /dev/stderr > $file
|
|
8
ci/update-pinned.sh
Executable file
8
ci/update-pinned.sh
Executable file
|
@ -0,0 +1,8 @@
|
||||||
|
#!/usr/bin/env nix-shell
|
||||||
|
#!nix-shell -i bash -p npins
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
cd "$(dirname "${BASH_SOURCE[0]}")"
|
||||||
|
|
||||||
|
npins --lock-file pinned.json update
|
|
@ -195,6 +195,21 @@ Specifies the contents of the `go.sum` file and triggers rebuilds when it change
|
||||||
Defaults to `null`
|
Defaults to `null`
|
||||||
|
|
||||||
|
|
||||||
|
## Versioned toolchains and builders {#ssec-go-toolchain-versions}
|
||||||
|
|
||||||
|
Beside `buildGoModule`, there are also versioned builders available that pin a specific Go version, like `buildGo124Module` for Go 1.24.
|
||||||
|
Similar, versioned toolchains are available, like `go_1_24` for Go 1.24.
|
||||||
|
Both builder and toolchain of a certain version will be removed as soon as the Go version reaches end of life.
|
||||||
|
|
||||||
|
As toolchain updates in nixpkgs cause mass rebuilds and must go through the staging cycle, it can take a while until a new Go minor version is available to consumers of nixpkgs.
|
||||||
|
If you want quicker access to the latest minor, use `go_latest` toolchain and `buildGoLatestModule` builder.
|
||||||
|
To learn more about the Go maintenance and upgrade procedure in nixpkgs, check out the [Go toolchain/builder upgrade policy](https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/go/README.md#go-toolchainbuilder-upgrade-policy).
|
||||||
|
|
||||||
|
::: {.warning}
|
||||||
|
The use of `go_latest` and `buildGoLatestModule` is restricted within nixpkgs.
|
||||||
|
The [Go toolchain/builder upgrade policy](https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/go/README.md#go-toolchainbuilder-upgrade-policy) must be followed.
|
||||||
|
:::
|
||||||
|
|
||||||
## Overriding `goModules` {#buildGoModule-goModules-override}
|
## Overriding `goModules` {#buildGoModule-goModules-override}
|
||||||
|
|
||||||
Overriding `<pkg>.goModules` by calling `goModules.overrideAttrs` is unsupported. Still, it is possible to override the `vendorHash` (`goModules`'s `outputHash`) and the `pre`/`post` hooks for both the build and patch phases of the primary and `goModules` derivation.
|
Overriding `<pkg>.goModules` by calling `goModules.overrideAttrs` is unsupported. Still, it is possible to override the `vendorHash` (`goModules`'s `outputHash`) and the `pre`/`post` hooks for both the build and patch phases of the primary and `goModules` derivation.
|
||||||
|
|
|
@ -3012,6 +3012,9 @@
|
||||||
"ex-buildGoModule": [
|
"ex-buildGoModule": [
|
||||||
"index.html#ex-buildGoModule"
|
"index.html#ex-buildGoModule"
|
||||||
],
|
],
|
||||||
|
"ssec-go-toolchain-versions" : [
|
||||||
|
"index.html#ssec-go-toolchain-versions"
|
||||||
|
],
|
||||||
"buildGoModule-goModules-override": [
|
"buildGoModule-goModules-override": [
|
||||||
"index.html#buildGoModule-goModules-override"
|
"index.html#buildGoModule-goModules-override"
|
||||||
],
|
],
|
||||||
|
|
|
@ -230,6 +230,11 @@
|
||||||
|
|
||||||
- `buildGoModule` now supports a `goSum` attribute (`null` by default) to optionally provide a path to `go.sum` and correctly enabling rebuilds when the file changes.
|
- `buildGoModule` now supports a `goSum` attribute (`null` by default) to optionally provide a path to `go.sum` and correctly enabling rebuilds when the file changes.
|
||||||
|
|
||||||
|
- The newly added aliases `go_latest` and `buildGoLatestModule` are now available and can be use to prevent packages like `gopls` from breaking whenever the default toolchain minor version is lagging behind.
|
||||||
|
It can also be used _outside of nixpkgs_ to get fast access to new Go minor versions without having to wait for a staging cycle that will update the default builder/toolchain.
|
||||||
|
|
||||||
|
- A [policy documenting the details of Go toolchain and builder upgrades](https://github.com/NixOS/nixpkgs/blob/master/pkgs/build-support/go/README.md#go-toolchainbuilder-upgrade-policy) in nixpkgs, as well as rules related to using non-default builders like `buildGo1xxModule` and `buildGoLatestModule` has been added in-tree.
|
||||||
|
|
||||||
- top-level `playwright` now refers to the github Microsoft/playwright package
|
- top-level `playwright` now refers to the github Microsoft/playwright package
|
||||||
instead of the python tester launcher. You can still refer to the python
|
instead of the python tester launcher. You can still refer to the python
|
||||||
launcher via `python3Packages.toPythonApplication python3Packages.playwright`
|
launcher via `python3Packages.toPythonApplication python3Packages.playwright`
|
||||||
|
|
|
@ -1747,7 +1747,7 @@ rec {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
Get the first of the `outputs` provided by the package, or the default.
|
Get the first of the `outputs` provided by the package, or the default.
|
||||||
This function is alligned with `_overrideFirst()` from the `multiple-outputs.sh` setup hook.
|
This function is aligned with `_overrideFirst()` from the `multiple-outputs.sh` setup hook.
|
||||||
Like `getOutput`, the function is idempotent.
|
Like `getOutput`, the function is idempotent.
|
||||||
|
|
||||||
# Inputs
|
# Inputs
|
||||||
|
|
|
@ -389,7 +389,7 @@ rec {
|
||||||
|
|
||||||
extensions = composeManyExtensions [ overlayA overlayB ];
|
extensions = composeManyExtensions [ overlayA overlayB ];
|
||||||
|
|
||||||
# Caluculate the fixed point of all composed overlays.
|
# Calculate the fixed point of all composed overlays.
|
||||||
fixedpoint = lib.fix (lib.extends extensions original );
|
fixedpoint = lib.fix (lib.extends extensions original );
|
||||||
|
|
||||||
in fixedpoint
|
in fixedpoint
|
||||||
|
|
|
@ -404,7 +404,7 @@ rec {
|
||||||
```nix
|
```nix
|
||||||
myType = mkOptionType {
|
myType = mkOptionType {
|
||||||
name = "myType";
|
name = "myType";
|
||||||
merge = mergeDefaultOption; # <- This line is redundant. It is the default aready.
|
merge = mergeDefaultOption; # <- This line is redundant. It is the default already.
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -470,7 +470,7 @@ rec {
|
||||||
args@{
|
args@{
|
||||||
message,
|
message,
|
||||||
# WARNING: the default merge function assumes that the definition is a valid (option) value. You MUST pass a merge function if the return value needs to be
|
# WARNING: the default merge function assumes that the definition is a valid (option) value. You MUST pass a merge function if the return value needs to be
|
||||||
# - type checked beyond what .check does (which should be very litte; only on the value head; not attribute values, etc)
|
# - type checked beyond what .check does (which should be very little; only on the value head; not attribute values, etc)
|
||||||
# - if you want attribute values to be checked, or list items
|
# - if you want attribute values to be checked, or list items
|
||||||
# - if you want coercedTo-like behavior to work
|
# - if you want coercedTo-like behavior to work
|
||||||
merge ? loc: defs: (head defs).value,
|
merge ? loc: defs: (head defs).value,
|
||||||
|
|
|
@ -75,7 +75,7 @@ let
|
||||||
if pos == null then "" else " at ${pos.file}:${toString pos.line}:${toString pos.column}";
|
if pos == null then "" else " at ${pos.file}:${toString pos.line}:${toString pos.column}";
|
||||||
|
|
||||||
# Internal functor to help for migrating functor.wrapped to functor.payload.elemType
|
# Internal functor to help for migrating functor.wrapped to functor.payload.elemType
|
||||||
# Note that individual attributes can be overriden if needed.
|
# Note that individual attributes can be overridden if needed.
|
||||||
elemTypeFunctor =
|
elemTypeFunctor =
|
||||||
name:
|
name:
|
||||||
{ elemType, ... }@payload:
|
{ elemType, ... }@payload:
|
||||||
|
@ -1455,8 +1455,14 @@ let
|
||||||
nestedTypes.coercedType = coercedType;
|
nestedTypes.coercedType = coercedType;
|
||||||
nestedTypes.finalType = finalType;
|
nestedTypes.finalType = finalType;
|
||||||
};
|
};
|
||||||
|
/**
|
||||||
|
Augment the given type with an additional type check function.
|
||||||
|
|
||||||
# Augment the given type with an additional type check function.
|
:::{.warning}
|
||||||
|
This function has some broken behavior see: [#396021](https://github.com/NixOS/nixpkgs/issues/396021)
|
||||||
|
Fixing is not trivial, we appreciate any help!
|
||||||
|
:::
|
||||||
|
*/
|
||||||
addCheck = elemType: check: elemType // { check = x: elemType.check x && check x; };
|
addCheck = elemType: check: elemType // { check = x: elemType.check x && check x; };
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
|
@ -45,7 +45,7 @@
|
||||||
|
|
||||||
Documentation rendered as AsciiDoc. This is useful for e.g. man pages.
|
Documentation rendered as AsciiDoc. This is useful for e.g. man pages.
|
||||||
|
|
||||||
> Note: NixOS itself uses this ouput to to build the configuration.nix man page"
|
> Note: NixOS itself uses this output to to build the configuration.nix man page"
|
||||||
|
|
||||||
## optionsNix
|
## optionsNix
|
||||||
|
|
||||||
|
@ -59,7 +59,7 @@
|
||||||
let
|
let
|
||||||
# Evaluate a NixOS configuration
|
# Evaluate a NixOS configuration
|
||||||
eval = import (pkgs.path + "/nixos/lib/eval-config.nix") {
|
eval = import (pkgs.path + "/nixos/lib/eval-config.nix") {
|
||||||
# Overriden explicitly here, this would include all modules from NixOS otherwise.
|
# Overridden explicitly here, this would include all modules from NixOS otherwise.
|
||||||
# See: docs of eval-config.nix for more details
|
# See: docs of eval-config.nix for more details
|
||||||
baseModules = [];
|
baseModules = [];
|
||||||
modules = [
|
modules = [
|
||||||
|
|
|
@ -15,7 +15,6 @@ let
|
||||||
inherit (lib)
|
inherit (lib)
|
||||||
any
|
any
|
||||||
concatMap
|
concatMap
|
||||||
filterOverrides
|
|
||||||
isList
|
isList
|
||||||
literalExpression
|
literalExpression
|
||||||
mergeEqualOption
|
mergeEqualOption
|
||||||
|
@ -56,13 +55,10 @@ rec {
|
||||||
name = "systemd option";
|
name = "systemd option";
|
||||||
merge =
|
merge =
|
||||||
loc: defs:
|
loc: defs:
|
||||||
let
|
if any (def: isList def.value) defs then
|
||||||
defs' = filterOverrides defs;
|
concatMap (def: toList def.value) defs
|
||||||
in
|
|
||||||
if any (def: isList def.value) defs' then
|
|
||||||
concatMap (def: toList def.value) defs'
|
|
||||||
else
|
else
|
||||||
mergeEqualOption loc defs';
|
mergeEqualOption loc defs;
|
||||||
};
|
};
|
||||||
|
|
||||||
sharedOptions = {
|
sharedOptions = {
|
||||||
|
|
|
@ -130,7 +130,7 @@ let
|
||||||
virtualisation.test.nodeName = mkOption {
|
virtualisation.test.nodeName = mkOption {
|
||||||
internal = true;
|
internal = true;
|
||||||
default = name;
|
default = name;
|
||||||
# We need to force this in specilisations, otherwise it'd be
|
# We need to force this in specialisations, otherwise it'd be
|
||||||
# readOnly = true;
|
# readOnly = true;
|
||||||
description = ''
|
description = ''
|
||||||
The `name` in `nodes.<name>`; stable across `specialisations`.
|
The `name` in `nodes.<name>`; stable across `specialisations`.
|
||||||
|
|
|
@ -60,7 +60,7 @@ let
|
||||||
inherit (eval) pkgs;
|
inherit (eval) pkgs;
|
||||||
|
|
||||||
excludedTestOptions = [
|
excludedTestOptions = [
|
||||||
# We cannot evluate _module.args, as it is used during the computation
|
# We cannot evaluate _module.args, as it is used during the computation
|
||||||
# of the modules list.
|
# of the modules list.
|
||||||
"_module.args"
|
"_module.args"
|
||||||
|
|
||||||
|
|
|
@ -9,7 +9,7 @@ let
|
||||||
checkType = x: lib.isBool x || lib.isString x || lib.isInt x || x == null;
|
checkType = x: lib.isBool x || lib.isString x || lib.isInt x || x == null;
|
||||||
in
|
in
|
||||||
checkType val || (val._type or "" == "override" && checkType val.content);
|
checkType val || (val._type or "" == "override" && checkType val.content);
|
||||||
merge = loc: defs: lib.mergeOneOption loc (lib.filterOverrides defs);
|
merge = loc: defs: lib.mergeOneOption loc defs;
|
||||||
};
|
};
|
||||||
|
|
||||||
in
|
in
|
||||||
|
@ -22,9 +22,7 @@ in
|
||||||
type =
|
type =
|
||||||
let
|
let
|
||||||
highestValueType = lib.types.ints.unsigned // {
|
highestValueType = lib.types.ints.unsigned // {
|
||||||
merge =
|
merge = loc: defs: lib.foldl (a: b: if b.value == null then null else lib.max a b.value) 0 defs;
|
||||||
loc: defs:
|
|
||||||
lib.foldl (a: b: if b.value == null then null else lib.max a b.value) 0 (lib.filterOverrides defs);
|
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
lib.types.submodule {
|
lib.types.submodule {
|
||||||
|
|
|
@ -273,7 +273,7 @@ in
|
||||||
caddy = 239;
|
caddy = 239;
|
||||||
taskd = 240;
|
taskd = 240;
|
||||||
# factorio = 241; # DynamicUser = true
|
# factorio = 241; # DynamicUser = true
|
||||||
# emby = 242; # unusued, removed 2019-05-01
|
# emby = 242; # unused, removed 2019-05-01
|
||||||
#graylog = 243;# dynamically allocated as of 2021-09-03
|
#graylog = 243;# dynamically allocated as of 2021-09-03
|
||||||
sniproxy = 244;
|
sniproxy = 244;
|
||||||
nzbget = 245;
|
nzbget = 245;
|
||||||
|
@ -371,7 +371,7 @@ in
|
||||||
# system user or group of the same id in someone else's NixOS.
|
# system user or group of the same id in someone else's NixOS.
|
||||||
# This could break their system and make that person upset for a whole day.
|
# This could break their system and make that person upset for a whole day.
|
||||||
#
|
#
|
||||||
# Sidenote: the default is defined in `shadow` module[2], and the relavent change
|
# Sidenote: the default is defined in `shadow` module[2], and the relevant change
|
||||||
# was made way back in 2014[3].
|
# was made way back in 2014[3].
|
||||||
#
|
#
|
||||||
# [1]: https://man7.org/linux/man-pages/man5/login.defs.5.html#:~:text=SYS_UID_MAX%20(number)%2C%20SYS_UID_MIN%20(number)
|
# [1]: https://man7.org/linux/man-pages/man5/login.defs.5.html#:~:text=SYS_UID_MAX%20(number)%2C%20SYS_UID_MIN%20(number)
|
||||||
|
@ -700,7 +700,7 @@ in
|
||||||
# system user or group of the same id in someone else's NixOS.
|
# system user or group of the same id in someone else's NixOS.
|
||||||
# This could break their system and make that person upset for a whole day.
|
# This could break their system and make that person upset for a whole day.
|
||||||
#
|
#
|
||||||
# Sidenote: the default is defined in `shadow` module[2], and the relavent change
|
# Sidenote: the default is defined in `shadow` module[2], and the relevant change
|
||||||
# was made way back in 2014[3].
|
# was made way back in 2014[3].
|
||||||
#
|
#
|
||||||
# [1]: https://man7.org/linux/man-pages/man5/login.defs.5.html#:~:text=SYS_UID_MAX%20(number)%2C%20SYS_UID_MIN%20(number)
|
# [1]: https://man7.org/linux/man-pages/man5/login.defs.5.html#:~:text=SYS_UID_MAX%20(number)%2C%20SYS_UID_MIN%20(number)
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# This profile sets up a sytem for image based appliance usage. An appliance is
|
# This profile sets up a system for image based appliance usage. An appliance is
|
||||||
# installed as an image, cannot be re-built, has no Nix available, and is
|
# installed as an image, cannot be re-built, has no Nix available, and is
|
||||||
# generally not meant for interactive use. Updates to such an appliance are
|
# generally not meant for interactive use. Updates to such an appliance are
|
||||||
# handled by updating whole partition images via a tool like systemd-sysupdate.
|
# handled by updating whole partition images via a tool like systemd-sysupdate.
|
||||||
|
|
|
@ -45,7 +45,7 @@ in
|
||||||
# software rendering to implement GLX (OpenGL on Xorg).
|
# software rendering to implement GLX (OpenGL on Xorg).
|
||||||
# However, just building TurboVNC with support for that is not enough
|
# However, just building TurboVNC with support for that is not enough
|
||||||
# (it only takes care of the X server side part of OpenGL);
|
# (it only takes care of the X server side part of OpenGL);
|
||||||
# the indiviudual applications (e.g. `glxgears`) also need to directly load
|
# the individual applications (e.g. `glxgears`) also need to directly load
|
||||||
# the OpenGL libs.
|
# the OpenGL libs.
|
||||||
# Thus, this creates `/run/opengl-driver` populated by Mesa so that the applications
|
# Thus, this creates `/run/opengl-driver` populated by Mesa so that the applications
|
||||||
# can find the llvmpipe `swrast.so` software rendering DRI lib via `libglvnd`.
|
# can find the llvmpipe `swrast.so` software rendering DRI lib via `libglvnd`.
|
||||||
|
|
|
@ -139,7 +139,7 @@ let
|
||||||
[
|
[
|
||||||
(yamlFormat.generate "helm-chart-manifest-${name}.yaml" (mkHelmChartCR name value))
|
(yamlFormat.generate "helm-chart-manifest-${name}.yaml" (mkHelmChartCR name value))
|
||||||
]
|
]
|
||||||
# alternate the YAML doc seperator (---) and extraDeploy manifests to create
|
# alternate the YAML doc separator (---) and extraDeploy manifests to create
|
||||||
# multi document YAMLs
|
# multi document YAMLs
|
||||||
++ (lib.concatMap (x: [
|
++ (lib.concatMap (x: [
|
||||||
yamlDocSeparator
|
yamlDocSeparator
|
||||||
|
|
|
@ -143,7 +143,7 @@ in
|
||||||
lib.mkDefault (json.generate "bonsai_tree.json" (filterNulls cfg.settings));
|
lib.mkDefault (json.generate "bonsai_tree.json" (filterNulls cfg.settings));
|
||||||
|
|
||||||
# bonsaid is controlled by bonsaictl, so place the latter in the environment by default.
|
# bonsaid is controlled by bonsaictl, so place the latter in the environment by default.
|
||||||
# bonsaictl is typically invoked by scripts or a DE so this isn't strictly necesssary,
|
# bonsaictl is typically invoked by scripts or a DE so this isn't strictly necessary,
|
||||||
# but it's helpful while administering the service generally.
|
# but it's helpful while administering the service generally.
|
||||||
environment.systemPackages = [ cfg.package ];
|
environment.systemPackages = [ cfg.package ];
|
||||||
|
|
||||||
|
|
|
@ -176,7 +176,7 @@ in
|
||||||
# need to be writeable, so we can't just point at the ones in the nix
|
# need to be writeable, so we can't just point at the ones in the nix
|
||||||
# store. Instead we take the approach of copying them out of the store
|
# store. Instead we take the approach of copying them out of the store
|
||||||
# on first run. If `bookarch` already exists, we assume the rest of the
|
# on first run. If `bookarch` already exists, we assume the rest of the
|
||||||
# files do as well, and copy nothing -- otherwise we risk ovewriting
|
# files do as well, and copy nothing -- otherwise we risk overwriting
|
||||||
# server state information every time the server is upgraded.
|
# server state information every time the server is upgraded.
|
||||||
preStart = ''
|
preStart = ''
|
||||||
if [ ! -e "${cfg.stateDir}"/bookarch ]; then
|
if [ ! -e "${cfg.stateDir}"/bookarch ]; then
|
||||||
|
|
|
@ -201,7 +201,7 @@ let
|
||||||
# the old service and then starts the new service after config updates.
|
# the old service and then starts the new service after config updates.
|
||||||
# Since we use path-based activation[1] here, the service unit will
|
# Since we use path-based activation[1] here, the service unit will
|
||||||
# immediately[2] be started by the path unit. Probably that start is
|
# immediately[2] be started by the path unit. Probably that start is
|
||||||
# before config updates, whcih causes the service unit to use the old
|
# before config updates, which causes the service unit to use the old
|
||||||
# config after nixos-rebuild switch. Setting stopIfChanged to false works
|
# config after nixos-rebuild switch. Setting stopIfChanged to false works
|
||||||
# around this issue by restarting the service after config updates.
|
# around this issue by restarting the service after config updates.
|
||||||
# [0]: https://nixos.org/manual/nixos/unstable/#sec-switching-systems
|
# [0]: https://nixos.org/manual/nixos/unstable/#sec-switching-systems
|
||||||
|
|
|
@ -107,7 +107,7 @@ in
|
||||||
RestrictNamespaces = true;
|
RestrictNamespaces = true;
|
||||||
RestrictRealtime = true;
|
RestrictRealtime = true;
|
||||||
MemoryDenyWriteExecute = true;
|
MemoryDenyWriteExecute = true;
|
||||||
# Upstream Recommandation
|
# Upstream Recommendation
|
||||||
LimitNOFILE = 20500;
|
LimitNOFILE = 20500;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -91,7 +91,7 @@ in
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
environment.systemPackages = [ pkgs.below ];
|
environment.systemPackages = [ pkgs.below ];
|
||||||
# /etc/below.conf is also refered to by the `below` CLI tool,
|
# /etc/below.conf is also referred to by the `below` CLI tool,
|
||||||
# so this can't be a store-only file whose path is passed to the service
|
# so this can't be a store-only file whose path is passed to the service
|
||||||
environment.etc."below/below.conf".text = cfgContents;
|
environment.etc."below/below.conf".text = cfgContents;
|
||||||
|
|
||||||
|
|
|
@ -55,7 +55,7 @@ in
|
||||||
wantedBy = [ "multi-user.target" ];
|
wantedBy = [ "multi-user.target" ];
|
||||||
};
|
};
|
||||||
|
|
||||||
# set up Security wrapper Same as inteded in deb post install
|
# set up Security wrapper Same as intended in deb post install
|
||||||
security.wrappers.cato-clientd = {
|
security.wrappers.cato-clientd = {
|
||||||
source = "${cfg.package}/bin/cato-clientd";
|
source = "${cfg.package}/bin/cato-clientd";
|
||||||
owner = "root";
|
owner = "root";
|
||||||
|
|
|
@ -289,7 +289,7 @@ in
|
||||||
|
|
||||||
{
|
{
|
||||||
# Note: we want by default to enable OpenSSL, but it seems anything 100 and above is
|
# Note: we want by default to enable OpenSSL, but it seems anything 100 and above is
|
||||||
# overriden by default value from vhost-options.nix
|
# overridden by default value from vhost-options.nix
|
||||||
enableACME = mkOverride 99 true;
|
enableACME = mkOverride 99 true;
|
||||||
forceSSL = mkOverride 99 true;
|
forceSSL = mkOverride 99 true;
|
||||||
locations.${cfg.nginx.path} = {
|
locations.${cfg.nginx.path} = {
|
||||||
|
|
|
@ -550,7 +550,7 @@ in
|
||||||
User = client.user.name;
|
User = client.user.name;
|
||||||
Group = client.user.group;
|
Group = client.user.group;
|
||||||
|
|
||||||
# settings implied by DynamicUser=true, without actully using it,
|
# settings implied by DynamicUser=true, without actually using it,
|
||||||
# see https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html#DynamicUser=
|
# see https://www.freedesktop.org/software/systemd/man/latest/systemd.exec.html#DynamicUser=
|
||||||
RemoveIPC = true;
|
RemoveIPC = true;
|
||||||
PrivateTmp = true;
|
PrivateTmp = true;
|
||||||
|
|
|
@ -102,7 +102,7 @@ in
|
||||||
# special options as its public anyway
|
# special options as its public anyway
|
||||||
# As far as I know leaking this secret is just
|
# As far as I know leaking this secret is just
|
||||||
# an information leak as one can fetch some basic app
|
# an information leak as one can fetch some basic app
|
||||||
# informations from the IDP
|
# information from the IDP
|
||||||
# To actually do something one still needs to have login
|
# To actually do something one still needs to have login
|
||||||
# data and this secret so this being public will not
|
# data and this secret so this being public will not
|
||||||
# suffice for anything just decreasing security
|
# suffice for anything just decreasing security
|
||||||
|
|
|
@ -42,7 +42,7 @@ let
|
||||||
# values must be separated by whitespace or even commas.
|
# values must be separated by whitespace or even commas.
|
||||||
# Consult either sshd_config(5) or, as last resort, the OpehSSH source for parsing
|
# Consult either sshd_config(5) or, as last resort, the OpehSSH source for parsing
|
||||||
# the options at servconf.c:process_server_config_line_depth() to determine the right "mode"
|
# the options at servconf.c:process_server_config_line_depth() to determine the right "mode"
|
||||||
# for each. But fortunaly this fact is documented for most of them in the manpage.
|
# for each. But fortunately this fact is documented for most of them in the manpage.
|
||||||
commaSeparated = [
|
commaSeparated = [
|
||||||
"Ciphers"
|
"Ciphers"
|
||||||
"KexAlgorithms"
|
"KexAlgorithms"
|
||||||
|
|
|
@ -133,7 +133,7 @@ in
|
||||||
|
|
||||||
services.yggdrasil.settings.Listen =
|
services.yggdrasil.settings.Listen =
|
||||||
let
|
let
|
||||||
# By default linux dynamically alocates ports in range 32768..60999
|
# By default linux dynamically allocates ports in range 32768..60999
|
||||||
# `sysctl net.ipv4.ip_local_port_range`
|
# `sysctl net.ipv4.ip_local_port_range`
|
||||||
# See: https://xkcd.com/221/
|
# See: https://xkcd.com/221/
|
||||||
prot_port = {
|
prot_port = {
|
||||||
|
|
|
@ -295,7 +295,7 @@ let
|
||||||
(
|
(
|
||||||
lib.mapAttrs (
|
lib.mapAttrs (
|
||||||
k: v:
|
k: v:
|
||||||
# Not necesssary, but prettier rendering
|
# Not necessary, but prettier rendering
|
||||||
if
|
if
|
||||||
lib.elem k [
|
lib.elem k [
|
||||||
"AutomapHostsSuffixes"
|
"AutomapHostsSuffixes"
|
||||||
|
|
|
@ -348,7 +348,7 @@ in
|
||||||
else if
|
else if
|
||||||
pgsqlLocal
|
pgsqlLocal
|
||||||
# note: davis expects a non-standard postgres uri (due to the underlying doctrine library)
|
# note: davis expects a non-standard postgres uri (due to the underlying doctrine library)
|
||||||
# specifically the dummy hostname which is overriden by the host query parameter
|
# specifically the dummy hostname which is overridden by the host query parameter
|
||||||
then
|
then
|
||||||
"postgres://${user}@localhost/${db.name}?host=/run/postgresql"
|
"postgres://${user}@localhost/${db.name}?host=/run/postgresql"
|
||||||
else if mysqlLocal then
|
else if mysqlLocal then
|
||||||
|
|
|
@ -224,7 +224,7 @@ in
|
||||||
# Thus, disable distribution for improved simplicity and security:
|
# Thus, disable distribution for improved simplicity and security:
|
||||||
#
|
#
|
||||||
# When distribution is enabled,
|
# When distribution is enabled,
|
||||||
# Elixir spwans the Erlang VM, which will listen by default on all
|
# Elixir spawns the Erlang VM, which will listen by default on all
|
||||||
# interfaces for messages between Erlang nodes (capable of
|
# interfaces for messages between Erlang nodes (capable of
|
||||||
# remote code execution); it can be protected by a cookie; see
|
# remote code execution); it can be protected by a cookie; see
|
||||||
# https://erlang.org/doc/reference_manual/distributed.html#security).
|
# https://erlang.org/doc/reference_manual/distributed.html#security).
|
||||||
|
|
|
@ -132,7 +132,7 @@ in
|
||||||
{
|
{
|
||||||
|
|
||||||
# coming from https://github.com/windmill-labs/windmill/blob/main/init-db-as-superuser.sql
|
# coming from https://github.com/windmill-labs/windmill/blob/main/init-db-as-superuser.sql
|
||||||
# modified to not grant priviledges on all tables
|
# modified to not grant privileges on all tables
|
||||||
# create role windmill_user and windmill_admin only if they don't exist
|
# create role windmill_user and windmill_admin only if they don't exist
|
||||||
postgresql.postStart = lib.mkIf cfg.database.createLocally (
|
postgresql.postStart = lib.mkIf cfg.database.createLocally (
|
||||||
lib.mkAfter ''
|
lib.mkAfter ''
|
||||||
|
|
|
@ -26,7 +26,7 @@ in
|
||||||
|
|
||||||
# Enable cloud-init by default for waagent.
|
# Enable cloud-init by default for waagent.
|
||||||
# Otherwise waagent would try manage networking using ifupdown,
|
# Otherwise waagent would try manage networking using ifupdown,
|
||||||
# which is currently not availeble in nixpkgs.
|
# which is currently not available in nixpkgs.
|
||||||
services.cloud-init.enable = true;
|
services.cloud-init.enable = true;
|
||||||
services.cloud-init.network.enable = true;
|
services.cloud-init.network.enable = true;
|
||||||
systemd.services.cloud-config.serviceConfig.Restart = "on-failure";
|
systemd.services.cloud-config.serviceConfig.Restart = "on-failure";
|
||||||
|
|
|
@ -105,7 +105,7 @@ in
|
||||||
splashImage = null;
|
splashImage = null;
|
||||||
# For Gen 1 VM, configurate grub output to serial_com0.
|
# For Gen 1 VM, configurate grub output to serial_com0.
|
||||||
# Not needed for Gen 2 VM wbere serial_com0 does not exist,
|
# Not needed for Gen 2 VM wbere serial_com0 does not exist,
|
||||||
# and outputing to console is enough to make Azure Serial Console working
|
# and outputting to console is enough to make Azure Serial Console working
|
||||||
extraConfig = lib.mkIf (!efiSupport) ''
|
extraConfig = lib.mkIf (!efiSupport) ''
|
||||||
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
|
serial --unit=0 --speed=115200 --word=8 --parity=no --stop=1
|
||||||
terminal_input --append serial
|
terminal_input --append serial
|
||||||
|
|
|
@ -67,7 +67,7 @@ let
|
||||||
convert =
|
convert =
|
||||||
attrs:
|
attrs:
|
||||||
pipe (recurse [ ] attrs) [
|
pipe (recurse [ ] attrs) [
|
||||||
# Filter out null values and emoty lists
|
# Filter out null values and empty lists
|
||||||
(filter (kv: kv.value != null && kv.value != [ ]))
|
(filter (kv: kv.value != null && kv.value != [ ]))
|
||||||
# Transform to Key=Value form, then concatenate
|
# Transform to Key=Value form, then concatenate
|
||||||
(map (kv: "${kv.name}=${transform kv.value}"))
|
(map (kv: "${kv.name}=${transform kv.value}"))
|
||||||
|
|
|
@ -65,8 +65,8 @@ in
|
||||||
repartConfig = {
|
repartConfig = {
|
||||||
Type = "esp";
|
Type = "esp";
|
||||||
Format = "vfat";
|
Format = "vfat";
|
||||||
# Minimize = "guess" seems to not work very vell for vfat
|
# Minimize = "guess" seems to not work very well for vfat
|
||||||
# partitons. It's better to set a sensible default instead. The
|
# partitions. It's better to set a sensible default instead. The
|
||||||
# aarch64 kernel seems to generally be a little bigger than the
|
# aarch64 kernel seems to generally be a little bigger than the
|
||||||
# x86_64 kernel. To stay on the safe side, leave some more slack
|
# x86_64 kernel. To stay on the safe side, leave some more slack
|
||||||
# for every platform other than x86_64.
|
# for every platform other than x86_64.
|
||||||
|
|
|
@ -94,7 +94,7 @@ in
|
||||||
) cfg.configuration.security.acme.certs
|
) cfg.configuration.security.acme.certs
|
||||||
)
|
)
|
||||||
# A specialisation's config is nested under its configuration attribute.
|
# A specialisation's config is nested under its configuration attribute.
|
||||||
# For ease of use, nest the root node's configuration simiarly.
|
# For ease of use, nest the root node's configuration similarly.
|
||||||
([ { configuration = node; } ] ++ (builtins.attrValues node.specialisation))
|
([ { configuration = node; } ] ++ (builtins.attrValues node.specialisation))
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
# this test works doing a migration and asserting ntfy-sh runs properly. first,
|
# this test works doing a migration and asserting ntfy-sh runs properly. first,
|
||||||
# ntfy-sh is configured to use a static user and group. then ntfy-sh is
|
# ntfy-sh is configured to use a static user and group. then ntfy-sh is
|
||||||
# started and tested. after that, ntfy-sh is shut down and a systemd drop
|
# started and tested. after that, ntfy-sh is shut down and a systemd drop
|
||||||
# in configuration file is used to upate the service configuration to use
|
# in configuration file is used to update the service configuration to use
|
||||||
# DynamicUser=true. then the ntfy-sh is started again and tested.
|
# DynamicUser=true. then the ntfy-sh is started again and tested.
|
||||||
|
|
||||||
import ./make-test-python.nix {
|
import ./make-test-python.nix {
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
# - downloading the file over sftp
|
# - downloading the file over sftp
|
||||||
# - assert that the ACLs are respected
|
# - assert that the ACLs are respected
|
||||||
# - share a file between alice and bob (using sftp)
|
# - share a file between alice and bob (using sftp)
|
||||||
# - assert that eve cannot acceess the shared folder between alice and bob.
|
# - assert that eve cannot access the shared folder between alice and bob.
|
||||||
#
|
#
|
||||||
# Additional test coverage for the remaining protocols (i.e. ftp, http and webdav)
|
# Additional test coverage for the remaining protocols (i.e. ftp, http and webdav)
|
||||||
# would be a nice to have for the future.
|
# would be a nice to have for the future.
|
||||||
|
@ -333,7 +333,7 @@ in
|
||||||
testScript =
|
testScript =
|
||||||
{ nodes, ... }:
|
{ nodes, ... }:
|
||||||
let
|
let
|
||||||
# A function to generate test cases for wheter
|
# A function to generate test cases for whether
|
||||||
# a specified username is expected to access the shared folder.
|
# a specified username is expected to access the shared folder.
|
||||||
accessSharedFoldersSubtest =
|
accessSharedFoldersSubtest =
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
# Tests downloading a signed update aritfact from a server to a target machine.
|
# Tests downloading a signed update artifact from a server to a target machine.
|
||||||
# This test does not rely on the `systemd.timer` units provided by the
|
# This test does not rely on the `systemd.timer` units provided by the
|
||||||
# `systemd-sysupdate` module but triggers the `systemd-sysupdate` service
|
# `systemd-sysupdate` module but triggers the `systemd-sysupdate` service
|
||||||
# manually to make the test more robust.
|
# manually to make the test more robust.
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
# correct time, we need to connect to an NTP server, which usually requires resolving its hostname.
|
# correct time, we need to connect to an NTP server, which usually requires resolving its hostname.
|
||||||
#
|
#
|
||||||
# This test does the following:
|
# This test does the following:
|
||||||
# - Sets up a DNS server (tinydns) listening on the eth1 ip addess, serving .ntp and fake.ntp records.
|
# - Sets up a DNS server (tinydns) listening on the eth1 ip address, serving .ntp and fake.ntp records.
|
||||||
# - Configures that DNS server as a resolver and enables DNSSEC in systemd-resolved settings.
|
# - Configures that DNS server as a resolver and enables DNSSEC in systemd-resolved settings.
|
||||||
# - Configures systemd-timesyncd to use fake.ntp hostname as an NTP server.
|
# - Configures systemd-timesyncd to use fake.ntp hostname as an NTP server.
|
||||||
# - Performs a regular DNS lookup, to ensure it fails due to broken DNSSEC.
|
# - Performs a regular DNS lookup, to ensure it fails due to broken DNSSEC.
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
./update-from-overlay
|
./update-from-overlay
|
||||||
|
|
||||||
It will update both melpa and elpa packages using
|
It will update both melpa and elpa packages using
|
||||||
https://github.com/nix-community/emacs-overlay. It's almost instantenous and
|
https://github.com/nix-community/emacs-overlay. It's almost instantaneous and
|
||||||
formats commits for you.
|
formats commits for you.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@ -1355,7 +1355,7 @@ let
|
||||||
hyperbole = ignoreCompilationError (addPackageRequires (mkHome super.hyperbole) [ self.el-mock ]); # elisp error
|
hyperbole = ignoreCompilationError (addPackageRequires (mkHome super.hyperbole) [ self.el-mock ]); # elisp error
|
||||||
|
|
||||||
# needs non-existent "browser database directory" during compilation
|
# needs non-existent "browser database directory" during compilation
|
||||||
# TODO report to upsteam about missing dependency websocket
|
# TODO report to upstream about missing dependency websocket
|
||||||
ibrowse = ignoreCompilationError (addPackageRequires super.ibrowse [ self.websocket ]);
|
ibrowse = ignoreCompilationError (addPackageRequires super.ibrowse [ self.websocket ]);
|
||||||
|
|
||||||
# elisp error and missing optional dependencies
|
# elisp error and missing optional dependencies
|
||||||
|
@ -1368,7 +1368,7 @@ let
|
||||||
|
|
||||||
indium = mkHome super.indium;
|
indium = mkHome super.indium;
|
||||||
|
|
||||||
# TODO report to upsteam
|
# TODO report to upstream
|
||||||
inlineR = addPackageRequires super.inlineR [ self.ess ];
|
inlineR = addPackageRequires super.inlineR [ self.ess ];
|
||||||
|
|
||||||
# https://github.com/duelinmarkers/insfactor.el/issues/7
|
# https://github.com/duelinmarkers/insfactor.el/issues/7
|
||||||
|
@ -1547,7 +1547,7 @@ let
|
||||||
|
|
||||||
org-gtd = ignoreCompilationError super.org-gtd; # elisp error
|
org-gtd = ignoreCompilationError super.org-gtd; # elisp error
|
||||||
|
|
||||||
# needs newer org than the Eamcs 29.4 builtin one
|
# needs newer org than the Emacs 29.4 builtin one
|
||||||
org-link-beautify = addPackageRequires super.org-link-beautify [
|
org-link-beautify = addPackageRequires super.org-link-beautify [
|
||||||
self.org
|
self.org
|
||||||
self.qrencode
|
self.qrencode
|
||||||
|
|
|
@ -1240,8 +1240,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "dart-code";
|
name = "dart-code";
|
||||||
publisher = "dart-code";
|
publisher = "dart-code";
|
||||||
version = "3.110.0";
|
version = "3.112.0";
|
||||||
hash = "sha256-YLdhL5xNj8sidZUzMVZgOK6zTXgQnWdKWRrDg0on90s=";
|
hash = "sha256-nnEEKijl5ZdsHyBAWCL+MucjNGIuup75xSJaVzNawrs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta.license = lib.licenses.mit;
|
meta.license = lib.licenses.mit;
|
||||||
|
@ -1251,8 +1251,8 @@ let
|
||||||
mktplcRef = {
|
mktplcRef = {
|
||||||
name = "flutter";
|
name = "flutter";
|
||||||
publisher = "dart-code";
|
publisher = "dart-code";
|
||||||
version = "3.110.0";
|
version = "3.112.0";
|
||||||
hash = "sha256-Zi+q56XcHZGUKgF3TNpaYSwwdqLT8Q1fxf8dFVAEuQY=";
|
hash = "sha256-S+srv0zUCobM3IPXOME5oT0xdXdPmMHSs7rwNTBcnhk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
meta.license = lib.licenses.mit;
|
meta.license = lib.licenses.mit;
|
||||||
|
@ -5709,7 +5709,7 @@ let
|
||||||
};
|
};
|
||||||
|
|
||||||
# TODO: add overrides overlay, so that we can have a generated.nix
|
# TODO: add overrides overlay, so that we can have a generated.nix
|
||||||
# then apply extension specific modifcations to packages.
|
# then apply extension specific modifications to packages.
|
||||||
|
|
||||||
# overlays will be applied left to right, overrides should come after aliases.
|
# overlays will be applied left to right, overrides should come after aliases.
|
||||||
overlays = lib.optionals config.allowAliases [
|
overlays = lib.optionals config.allowAliases [
|
||||||
|
|
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
<https://github.com/Microsoft/vscode-cpptools/issues/35>
|
<https://github.com/Microsoft/vscode-cpptools/issues/35>
|
||||||
|
|
||||||
Once the symbolic link temporary solution taken, everything shoud run smootly.
|
Once the symbolic link temporary solution taken, everything should run smootly.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
|
@ -49,7 +49,7 @@ stdenv.mkDerivation rec {
|
||||||
libsForQt5.qtmacextras # can be removed when using qt6
|
libsForQt5.qtmacextras # can be removed when using qt6
|
||||||
];
|
];
|
||||||
|
|
||||||
# custom Darwin install instructions taken from the upsteam compileOSX.sh script
|
# custom Darwin install instructions taken from the upstream compileOSX.sh script
|
||||||
installPhase = lib.optionalString stdenv.hostPlatform.isDarwin ''
|
installPhase = lib.optionalString stdenv.hostPlatform.isDarwin ''
|
||||||
runHook preInstall
|
runHook preInstall
|
||||||
|
|
||||||
|
|
|
@ -29,6 +29,7 @@ in
|
||||||
description = "Fork of Firefox, focused on privacy, security and freedom";
|
description = "Fork of Firefox, focused on privacy, security and freedom";
|
||||||
homepage = "https://librewolf.net/";
|
homepage = "https://librewolf.net/";
|
||||||
maintainers = with lib.maintainers; [
|
maintainers = with lib.maintainers; [
|
||||||
|
# Also update ci/OWNERS entry when changing maintainers
|
||||||
squalus
|
squalus
|
||||||
dwrege
|
dwrege
|
||||||
fpletz
|
fpletz
|
||||||
|
|
|
@ -26,13 +26,13 @@
|
||||||
}:
|
}:
|
||||||
|
|
||||||
let
|
let
|
||||||
version = "0.20.1";
|
version = "0.20.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "f-koehler";
|
owner = "f-koehler";
|
||||||
repo = "KTailctl";
|
repo = "KTailctl";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-8vtNAqCDXbzEuGXqUZL26EMmVLJqSFu+E/zhK8VafLE=";
|
hash = "sha256-yMP+oAc1ZHr402j3NQOFLGFT/AK/PQ+figoVyOMEaus=";
|
||||||
};
|
};
|
||||||
|
|
||||||
goDeps =
|
goDeps =
|
||||||
|
@ -40,7 +40,7 @@ let
|
||||||
pname = "ktailctl-go-wrapper";
|
pname = "ktailctl-go-wrapper";
|
||||||
inherit src version;
|
inherit src version;
|
||||||
modRoot = "src/wrapper";
|
modRoot = "src/wrapper";
|
||||||
vendorHash = "sha256-F0fY9ZqibZNIUQSIlLRO3rX4gYAFHWMdFtwRNigpGZE=";
|
vendorHash = "sha256-kX2L/ET6saxn73T4414ShRSeOIpX8i1HHjKkPbdjse0=";
|
||||||
}).goModules;
|
}).goModules;
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
|
|
|
@ -96,8 +96,8 @@ let
|
||||||
"debian/python"
|
"debian/python"
|
||||||
"debian/PkKek-1-*.pem"
|
"debian/PkKek-1-*.pem"
|
||||||
];
|
];
|
||||||
rev = "refs/tags/debian/2024.05-1";
|
rev = "refs/tags/debian/2025.02-8";
|
||||||
hash = "sha256-uAjXJaHOVh944ZxcA2IgCsrsncxuhc0JKlsXs0E03s0=";
|
hash = "sha256-kAwfS8TBdN1PTm5kxTvqFuA9edBfBuMt6XmRWnFnolQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildPrefix = "Build/*/*";
|
buildPrefix = "Build/*/*";
|
||||||
|
|
|
@ -3,14 +3,13 @@
|
||||||
Go promises that "programs written to the Go 1 specification will continue to compile and run correctly, unchanged, over the lifetime of that specification" [1].
|
Go promises that "programs written to the Go 1 specification will continue to compile and run correctly, unchanged, over the lifetime of that specification" [1].
|
||||||
Newer toolchain versions should build projects developed against older toolchains without problems.
|
Newer toolchain versions should build projects developed against older toolchains without problems.
|
||||||
|
|
||||||
|
**Definition(a "toolchain-breaking" package):**
|
||||||
There are however Go packages depending on internal APIs of the toolchain/runtime/stdlib that are not covered by the Go compatibility promise.
|
There are however Go packages depending on internal APIs of the toolchain/runtime/stdlib that are not covered by the Go compatibility promise.
|
||||||
These packages may break on toolchain updates.
|
These packages may break on toolchain minor version upgrades.
|
||||||
We name packages that (often) break on toolchain updates `toolchain-breaking`.
|
|
||||||
|
|
||||||
There is another set of packages that depends on the toolchain, but in another way:
|
**Definition(a "toolchain-latest" package):**
|
||||||
Packages providing development support for the Go language (like `gopls`, `golangci-lint`,...) must be compiled with the version they should be used for.
|
Packages providing development support for the Go language (like `gopls`, `golangci-lint`,...) depend on the toolchain in another way: they must be compiled at least with the version they should be used for.
|
||||||
If `gopls` is compiled for Go 1.23, it won't work for projects that require Go 1.24.
|
If `gopls` is compiled for Go 1.23, it won't work for projects that require Go 1.24.
|
||||||
We name packages that must be built with the latest toolchain to work as expected `toolchain-latest`.
|
|
||||||
|
|
||||||
Go only ever has two supported toolchains. With a new minor release, the second last Go toolchain is automatically end of life, meaning it won't receive security updates anymore.
|
Go only ever has two supported toolchains. With a new minor release, the second last Go toolchain is automatically end of life, meaning it won't receive security updates anymore.
|
||||||
|
|
||||||
|
@ -26,7 +25,9 @@ Based on this, we align on the following policy for toolchain/builder upgrades:
|
||||||
A comment MUST be added explaining why this is the case for a certain package.
|
A comment MUST be added explaining why this is the case for a certain package.
|
||||||
It is important to keep the number of packages using this builder within nixpkgs low, so the bump won't cause a mass rebuild.
|
It is important to keep the number of packages using this builder within nixpkgs low, so the bump won't cause a mass rebuild.
|
||||||
|
|
||||||
Consumer outside of nixpkgs on the other hand MAY rely on this toolchain/builder if they prefer being upgraded earlier to the newest toolchain.
|
`go_latest` MUST not point to release candidates of Go.
|
||||||
|
|
||||||
|
Consumer outside of nixpkgs on the other hand MAY rely on this toolchain/builder if they prefer being upgraded earlier to the newest toolchain minor version.
|
||||||
|
|
||||||
3. Packages in `toolchain-breaking` SHOULD pin a toolchain version by using a builder with a fixed Go version (`buildGo1xxModule`).
|
3. Packages in `toolchain-breaking` SHOULD pin a toolchain version by using a builder with a fixed Go version (`buildGo1xxModule`).
|
||||||
The use of `buildGo1xxModule` MUST be accompanied with a comment explaining why this has a dependency on a specific Go version.
|
The use of `buildGo1xxModule` MUST be accompanied with a comment explaining why this has a dependency on a specific Go version.
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
jq,
|
jq,
|
||||||
libiconv,
|
libiconv,
|
||||||
# Controls codegen parallelization for all crates.
|
# Controls codegen parallelization for all crates.
|
||||||
# May be overriden on a per-crate level.
|
# May be overridden on a per-crate level.
|
||||||
# See <https://doc.rust-lang.org/rustc/codegen-options/index.html#codegen-units>
|
# See <https://doc.rust-lang.org/rustc/codegen-options/index.html#codegen-units>
|
||||||
defaultCodegenUnits ? 1,
|
defaultCodegenUnits ? 1,
|
||||||
}:
|
}:
|
||||||
|
|
|
@ -20,7 +20,7 @@
|
||||||
defaultCrateOverrides ? pkgs.defaultCrateOverrides,
|
defaultCrateOverrides ? pkgs.defaultCrateOverrides,
|
||||||
# The features to enable for the root_crate or the workspace_members.
|
# The features to enable for the root_crate or the workspace_members.
|
||||||
rootFeatures ? [ "default" ],
|
rootFeatures ? [ "default" ],
|
||||||
# If true, throw errors instead of issueing deprecation warnings.
|
# If true, throw errors instead of issuing deprecation warnings.
|
||||||
strictDeprecation ? false,
|
strictDeprecation ? false,
|
||||||
# Used for conditional compilation based on CPU feature detection.
|
# Used for conditional compilation based on CPU feature detection.
|
||||||
targetFeatures ? [ ],
|
targetFeatures ? [ ],
|
||||||
|
@ -4485,9 +4485,9 @@ rec {
|
||||||
runTests ? false,
|
runTests ? false,
|
||||||
testCrateFlags ? [ ],
|
testCrateFlags ? [ ],
|
||||||
testInputs ? [ ],
|
testInputs ? [ ],
|
||||||
# Any command to run immediatelly before a test is executed.
|
# Any command to run immediately before a test is executed.
|
||||||
testPreRun ? "",
|
testPreRun ? "",
|
||||||
# Any command run immediatelly after a test is executed.
|
# Any command run immediately after a test is executed.
|
||||||
testPostRun ? "",
|
testPostRun ? "",
|
||||||
}:
|
}:
|
||||||
lib.makeOverridable
|
lib.makeOverridable
|
||||||
|
|
|
@ -85,7 +85,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
yaml-cpp
|
yaml-cpp
|
||||||
nlohmann_json
|
nlohmann_json
|
||||||
|
|
||||||
# Todo: add these optional dependcies in nixpkgs.
|
# Todo: add these optional dependencies in nixpkgs.
|
||||||
# sz
|
# sz
|
||||||
# mgard
|
# mgard
|
||||||
# catalyst
|
# catalyst
|
||||||
|
|
8
pkgs/by-name/am/amp-cli/package-lock.json
generated
8
pkgs/by-name/am/amp-cli/package-lock.json
generated
|
@ -5,7 +5,7 @@
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@sourcegraph/amp": "^0.0.1748404992-ga3f78f"
|
"@sourcegraph/amp": "^0.0.1748865683-g71e54e"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@colors/colors": {
|
"node_modules/@colors/colors": {
|
||||||
|
@ -29,9 +29,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@sourcegraph/amp": {
|
"node_modules/@sourcegraph/amp": {
|
||||||
"version": "0.0.1748404992-ga3f78f",
|
"version": "0.0.1748865683-g71e54e",
|
||||||
"resolved": "https://registry.npmjs.org/@sourcegraph/amp/-/amp-0.0.1748404992-ga3f78f.tgz",
|
"resolved": "https://registry.npmjs.org/@sourcegraph/amp/-/amp-0.0.1748865683-g71e54e.tgz",
|
||||||
"integrity": "sha512-+BvCW8zrbO7ENRzMg0LdAeKigjzL+ASIDBjJ/m2uL2CVT8WPk1h34FTNCbvnO6kssimEtdP8FcxR/2O4AHwUbA==",
|
"integrity": "sha512-ZiNbIbgCb/l7Q7wRT0sva6Ju7VDtq7+lijMWK8jotPorTq1DYUy3h7XJIOjyJEdvqlQkEfwrnbOfREmsnwlPyg==",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@types/runes": "^0.4.3",
|
"@types/runes": "^0.4.3",
|
||||||
"@vscode/ripgrep": "1.15.11",
|
"@vscode/ripgrep": "1.15.11",
|
||||||
|
|
|
@ -4,15 +4,16 @@
|
||||||
fetchzip,
|
fetchzip,
|
||||||
ripgrep,
|
ripgrep,
|
||||||
makeWrapper,
|
makeWrapper,
|
||||||
|
testers,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildNpmPackage rec {
|
buildNpmPackage (finalAttrs: {
|
||||||
pname = "amp-cli";
|
pname = "amp-cli";
|
||||||
version = "0.0.1748404992-ga3f78f";
|
version = "0.0.1748865683-g71e54e";
|
||||||
|
|
||||||
src = fetchzip {
|
src = fetchzip {
|
||||||
url = "https://registry.npmjs.org/@sourcegraph/amp/-/amp-${version}.tgz";
|
url = "https://registry.npmjs.org/@sourcegraph/amp/-/amp-${finalAttrs.version}.tgz";
|
||||||
hash = "sha256-axd5VP7afa4ptAl/y8CEVguqoRKVRhWfRDSI0sgyXqA=";
|
hash = "sha256-kkQKjw1SzDjV8/206i+NUyxeDhZ/35My9gyXRe/U7I8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
postPatch = ''
|
postPatch = ''
|
||||||
|
@ -25,7 +26,7 @@ buildNpmPackage rec {
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"license": "UNLICENSED",
|
"license": "UNLICENSED",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@sourcegraph/amp": "${version}"
|
"@sourcegraph/amp": "${finalAttrs.version}"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"amp": "./bin/amp-wrapper.js"
|
"amp": "./bin/amp-wrapper.js"
|
||||||
|
@ -44,7 +45,7 @@ buildNpmPackage rec {
|
||||||
chmod +x bin/amp-wrapper.js
|
chmod +x bin/amp-wrapper.js
|
||||||
'';
|
'';
|
||||||
|
|
||||||
npmDepsHash = "sha256-05+hBr+eX3I92U9TsqPQrYcJCmKXTvz3n6ZTxR1XvC8=";
|
npmDepsHash = "sha256-yeZ5UCVUCbVjpYTYYN5mI6eCkShtnCKxumjpb5GRCws=";
|
||||||
|
|
||||||
propagatedBuildInputs = [
|
propagatedBuildInputs = [
|
||||||
ripgrep
|
ripgrep
|
||||||
|
@ -69,6 +70,10 @@ buildNpmPackage rec {
|
||||||
'';
|
'';
|
||||||
|
|
||||||
passthru.updateScript = ./update.sh;
|
passthru.updateScript = ./update.sh;
|
||||||
|
passthru.tests.version = testers.testVersion {
|
||||||
|
package = finalAttrs.finalPackage;
|
||||||
|
command = "HOME=$(mktemp -d) amp --version";
|
||||||
|
};
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "CLI for Amp, an agentic coding agent in research preview from Sourcegraph";
|
description = "CLI for Amp, an agentic coding agent in research preview from Sourcegraph";
|
||||||
|
@ -81,4 +86,4 @@ buildNpmPackage rec {
|
||||||
];
|
];
|
||||||
mainProgram = "amp";
|
mainProgram = "amp";
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
|
@ -6,26 +6,29 @@
|
||||||
versionCheckHook,
|
versionCheckHook,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule (finalAttrs: {
|
||||||
pname = "containerlab";
|
pname = "containerlab";
|
||||||
version = "0.68.0";
|
version = "0.68.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "srl-labs";
|
owner = "srl-labs";
|
||||||
repo = "containerlab";
|
repo = "containerlab";
|
||||||
rev = "v${version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-x6QDwduAMCD+Trj0awQXW0Tdleb2U6YBi/7mdMB6V/8=";
|
hash = "sha256-x6QDwduAMCD+Trj0awQXW0Tdleb2U6YBi/7mdMB6V/8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-XRgKfRw6VGg+lkbtPWUVNfAk5a7ZdFwVmhjtM7uSwHs=";
|
vendorHash = "sha256-XRgKfRw6VGg+lkbtPWUVNfAk5a7ZdFwVmhjtM7uSwHs=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [
|
||||||
|
installShellFiles
|
||||||
|
versionCheckHook
|
||||||
|
];
|
||||||
|
|
||||||
ldflags = [
|
ldflags = [
|
||||||
"-s"
|
"-s"
|
||||||
"-w"
|
"-w"
|
||||||
"-X github.com/srl-labs/containerlab/cmd/version.Version=${version}"
|
"-X github.com/srl-labs/containerlab/cmd/version.Version=${finalAttrs.version}"
|
||||||
"-X github.com/srl-labs/containerlab/cmd/version.commit=${src.rev}"
|
"-X github.com/srl-labs/containerlab/cmd/version.commit=${finalAttrs.src.rev}"
|
||||||
"-X github.com/srl-labs/containerlab/cmd/version.date=1970-01-01T00:00:00Z"
|
"-X github.com/srl-labs/containerlab/cmd/version.date=1970-01-01T00:00:00Z"
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -42,19 +45,16 @@ buildGoModule rec {
|
||||||
--zsh <($out/bin/containerlab completion zsh)
|
--zsh <($out/bin/containerlab completion zsh)
|
||||||
'';
|
'';
|
||||||
|
|
||||||
nativeInstallCheckInputs = [
|
|
||||||
versionCheckHook
|
|
||||||
];
|
|
||||||
doInstallCheck = true;
|
doInstallCheck = true;
|
||||||
versionCheckProgramArg = "version";
|
versionCheckProgramArg = "version";
|
||||||
|
|
||||||
meta = {
|
meta = {
|
||||||
description = "Container-based networking lab";
|
description = "Container-based networking lab";
|
||||||
homepage = "https://containerlab.dev/";
|
homepage = "https://containerlab.dev/";
|
||||||
changelog = "https://github.com/srl-labs/containerlab/releases/tag/${src.rev}";
|
changelog = "https://github.com/srl-labs/containerlab/releases/tag/v${finalAttrs.version}";
|
||||||
license = lib.licenses.bsd3;
|
license = lib.licenses.bsd3;
|
||||||
platforms = lib.platforms.linux;
|
platforms = lib.platforms.linux;
|
||||||
maintainers = with lib.maintainers; [ aaronjheng ];
|
maintainers = with lib.maintainers; [ aaronjheng ];
|
||||||
mainProgram = "containerlab";
|
mainProgram = "containerlab";
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
|
@ -22,13 +22,13 @@
|
||||||
let
|
let
|
||||||
self = python3.pkgs.buildPythonApplication rec {
|
self = python3.pkgs.buildPythonApplication rec {
|
||||||
pname = "duplicity";
|
pname = "duplicity";
|
||||||
version = "3.0.4";
|
version = "3.0.4.1";
|
||||||
|
|
||||||
src = fetchFromGitLab {
|
src = fetchFromGitLab {
|
||||||
owner = "duplicity";
|
owner = "duplicity";
|
||||||
repo = "duplicity";
|
repo = "duplicity";
|
||||||
rev = "rel.${version}";
|
rev = "rel.${version}";
|
||||||
hash = "sha256-FoaKuB0mo2RFksMHnIUx984+h/U0tdvk+bvsuYt3r5g=";
|
hash = "sha256-cVzGdn3a9/Kvu/QYWaTXJ1llkPRvj0g8qb7TUjennws=";
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
|
|
|
@ -8,13 +8,13 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "fly";
|
pname = "fly";
|
||||||
version = "7.13.0";
|
version = "7.13.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "concourse";
|
owner = "concourse";
|
||||||
repo = "concourse";
|
repo = "concourse";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-myvYACdTqnEb8aBpBeCA1qvcnF0lwYbSo6kMgSz7iiA=";
|
hash = "sha256-onowKvN8YLDWRRn3rGEMoMxc6XaAcBKJcFOHSVh9Yy8=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-WC4uzTgvW15IumwmsWXXeiF5qagbeb5XWRaSjd1XLvA=";
|
vendorHash = "sha256-WC4uzTgvW15IumwmsWXXeiF5qagbeb5XWRaSjd1XLvA=";
|
||||||
|
|
|
@ -45,7 +45,7 @@ stdenv.mkDerivation rec {
|
||||||
];
|
];
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# Allow completly unvendoring hyperhdr
|
# Allow completely unvendoring hyperhdr
|
||||||
# This can be removed on the next hyperhdr release
|
# This can be removed on the next hyperhdr release
|
||||||
./unvendor.patch
|
./unvendor.patch
|
||||||
];
|
];
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
lib,
|
lib,
|
||||||
buildPackages,
|
buildPackages,
|
||||||
cmake,
|
cmake,
|
||||||
# explicitely depending on openexr_2 because ilmbase doesn't exist for v3
|
# explicitly depending on openexr_2 because ilmbase doesn't exist for v3
|
||||||
openexr_2,
|
openexr_2,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
|
|
|
@ -75,7 +75,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
enableParallelBuilding = true;
|
enableParallelBuilding = true;
|
||||||
|
|
||||||
# Do not build amd64 assembly code on Darwin, because it fails to compile
|
# Do not build amd64 assembly code on Darwin, because it fails to compile
|
||||||
# with unknow directive errors
|
# with unknown directive errors
|
||||||
configureFlags =
|
configureFlags =
|
||||||
optional stdenv.hostPlatform.isDarwin "--enable-amd64=no"
|
optional stdenv.hostPlatform.isDarwin "--enable-amd64=no"
|
||||||
++ optional (!svgSupport) "--without-svg"
|
++ optional (!svgSupport) "--without-svg"
|
||||||
|
|
|
@ -57,7 +57,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
(lib.cmakeFeature "KISSFFT_DATATYPE" datatype)
|
(lib.cmakeFeature "KISSFFT_DATATYPE" datatype)
|
||||||
(lib.cmakeBool "KISSFFT_STATIC" enableStatic)
|
(lib.cmakeBool "KISSFFT_STATIC" enableStatic)
|
||||||
# `test/testkiss.py` expects this…
|
# `test/testkiss.py` expects this…
|
||||||
(lib.cmakeFeature "KISSFFT_OPENMP" (if enableOpenmp then "ON" else "OFF"))
|
(lib.cmakeBool "KISSFFT_OPENMP" enableOpenmp)
|
||||||
];
|
];
|
||||||
|
|
||||||
# Required for `test/testcpp.c`.
|
# Required for `test/testcpp.c`.
|
||||||
|
|
|
@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
||||||
sha256 = "1l3hlw9rrc11qggbg9a2303p3bhxxx2vqkmlk8avsrbqw15r1ayr";
|
sha256 = "1l3hlw9rrc11qggbg9a2303p3bhxxx2vqkmlk8avsrbqw15r1ayr";
|
||||||
};
|
};
|
||||||
|
|
||||||
# credis build system has no install actions, provide our own.
|
# credits build system has no install actions, provide our own.
|
||||||
installPhase = ''
|
installPhase = ''
|
||||||
mkdir -p "$out/bin"
|
mkdir -p "$out/bin"
|
||||||
mkdir -p "$out/lib"
|
mkdir -p "$out/lib"
|
||||||
|
|
|
@ -106,7 +106,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
patches = [
|
patches = [
|
||||||
./startup-config-support-nix-store.patch
|
./startup-config-support-nix-store.patch
|
||||||
# Miktex will search exectables in "GetMyPrefix(true)/bin".
|
# Miktex will search exectables in "GetMyPrefix(true)/bin".
|
||||||
# The path evalutate to "/usr/bin" in FHS style linux distrubution,
|
# The path evaluate to "/usr/bin" in FHS style linux distribution,
|
||||||
# compared to "/nix/store/.../bin" in NixOS.
|
# compared to "/nix/store/.../bin" in NixOS.
|
||||||
# As a result, miktex will fail to find e.g. 'pkexec','ksudo','gksu'
|
# As a result, miktex will fail to find e.g. 'pkexec','ksudo','gksu'
|
||||||
# under /run/wrappers/bin in NixOS.
|
# under /run/wrappers/bin in NixOS.
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
perl,
|
perl,
|
||||||
# mxnet cuda support is turned off, but dependencies like opencv can still be built with cudaSupport
|
# mxnet cuda support is turned off, but dependencies like opencv can still be built with cudaSupport
|
||||||
# and fail to compile without the cudatoolkit
|
# and fail to compile without the cudatoolkit
|
||||||
# mxnet cuda support will not be availaible, as mxnet requires version <=11
|
# mxnet cuda support will not be available, as mxnet requires version <=11
|
||||||
cudaSupport ? config.cudaSupport,
|
cudaSupport ? config.cudaSupport,
|
||||||
cudaPackages ? { },
|
cudaPackages ? { },
|
||||||
}:
|
}:
|
||||||
|
|
|
@ -6,16 +6,16 @@
|
||||||
|
|
||||||
buildGoModule rec {
|
buildGoModule rec {
|
||||||
pname = "namespace-cli";
|
pname = "namespace-cli";
|
||||||
version = "0.0.415";
|
version = "0.0.416";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "namespacelabs";
|
owner = "namespacelabs";
|
||||||
repo = "foundation";
|
repo = "foundation";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-mWiY2HbOE7R9ltunpSLiM84iscTuSJTQtWCbk2O/HIQ=";
|
hash = "sha256-Te2BFbzrGU7iw+CqDafOiIByUfHEb8QGBAci+6imIm4=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-waO9D0wSluzLl0pULeWMCYKh5IUqcS+VIvwDVwedx64=";
|
vendorHash = "sha256-hPZmNH4bhIds+Ps0pQCjYPfvVBaX8e3Bq/onq91Fzq8=";
|
||||||
|
|
||||||
subPackages = [
|
subPackages = [
|
||||||
"cmd/nsc"
|
"cmd/nsc"
|
||||||
|
|
|
@ -12,13 +12,13 @@
|
||||||
xorg,
|
xorg,
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
version = "0.3.0";
|
version = "0.3.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "PolyMeilex";
|
owner = "PolyMeilex";
|
||||||
repo = "Neothesia";
|
repo = "Neothesia";
|
||||||
rev = "v${version}";
|
rev = "v${version}";
|
||||||
hash = "sha256-JD1jQ/a6GHtB/d/fRMCiE4ZOO676BIiZ980VIYUloU0=";
|
hash = "sha256-qYwBSye6RYClSlWmHwuy/rxq9w5932tR33Z+o2S1l8k=";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage {
|
rustPlatform.buildRustPackage {
|
||||||
|
@ -38,7 +38,7 @@ rustPlatform.buildRustPackage {
|
||||||
];
|
];
|
||||||
|
|
||||||
useFetchCargoVendor = true;
|
useFetchCargoVendor = true;
|
||||||
cargoHash = "sha256-OYdKuYOL3X6eqVYANvmfTRA8TGd4+QLg0zodDH0jxXk=";
|
cargoHash = "sha256-mXeNAVYqPsBWiUZFV/atx/xjLgFNarm2HwI7k/NaAbc=";
|
||||||
|
|
||||||
cargoBuildFlags = [
|
cargoBuildFlags = [
|
||||||
"-p neothesia -p neothesia-cli"
|
"-p neothesia -p neothesia-cli"
|
||||||
|
|
|
@ -14,12 +14,12 @@
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "ocenaudio";
|
pname = "ocenaudio";
|
||||||
version = "3.14.11";
|
version = "3.15";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
name = "ocenaudio.deb";
|
name = "ocenaudio.deb";
|
||||||
url = "https://www.ocenaudio.com/downloads/index.php/ocenaudio_debian12.deb?version=v${finalAttrs.version}";
|
url = "https://www.ocenaudio.com/downloads/index.php/ocenaudio_debian12.deb?version=v${finalAttrs.version}";
|
||||||
hash = "sha256-+UQ4veSoqwNC6ENQVWmOFebiI6RQlV7rBL7n238xxyc=";
|
hash = "sha256-MZjgdCBE+3dG6Ov+wwDKa/0Y8XIihwM50Gc/cgEf2FQ=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -12,14 +12,14 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "pdfarranger";
|
pname = "pdfarranger";
|
||||||
version = "1.11.1";
|
version = "1.12.0";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "pdfarranger";
|
owner = "pdfarranger";
|
||||||
repo = "pdfarranger";
|
repo = "pdfarranger";
|
||||||
tag = version;
|
tag = version;
|
||||||
hash = "sha256-94qziqJaKW8/L/6+U1yojxdG8BmeAStn+qbfGemTrVA=";
|
hash = "sha256-//JjIPDeyI+JZoFT2GU+wCP+tkKCchgS9ftMT5rUEOM=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [ wrapGAppsHook3 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ gettext ];
|
nativeBuildInputs = [ wrapGAppsHook3 ] ++ lib.optionals stdenv.hostPlatform.isDarwin [ gettext ];
|
||||||
|
@ -64,6 +64,6 @@ python3Packages.buildPythonApplication rec {
|
||||||
endle
|
endle
|
||||||
];
|
];
|
||||||
license = lib.licenses.gpl3Plus;
|
license = lib.licenses.gpl3Plus;
|
||||||
changelog = "https://github.com/pdfarranger/pdfarranger/releases/tag/${version}";
|
changelog = "https://github.com/pdfarranger/pdfarranger/releases/tag/${src.tag}";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,16 +7,16 @@
|
||||||
|
|
||||||
php.buildComposerProject2 (finalAttrs: {
|
php.buildComposerProject2 (finalAttrs: {
|
||||||
pname = "phel";
|
pname = "phel";
|
||||||
version = "0.16.1";
|
version = "0.17.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "phel-lang";
|
owner = "phel-lang";
|
||||||
repo = "phel-lang";
|
repo = "phel-lang";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-irN1Dnov6vDiU4xGsf2nxz7/kz1YOMq0yOLYt4HY1EM=";
|
hash = "sha256-iS887QNUphe+czx1IEz+uESBqee73/mHzmg2Fvi26do=";
|
||||||
};
|
};
|
||||||
|
|
||||||
vendorHash = "sha256-SDLpl2gBvtVjREfcy1WDFqsGRK1fKr2wKPuBkPhApNI=";
|
vendorHash = "sha256-lhxgL41gyHVOv1MqjwwnWQTQZz4WU2kWGCSV2EZoJrg=";
|
||||||
|
|
||||||
doInstallCheck = true;
|
doInstallCheck = true;
|
||||||
nativeInstallCheckInputs = [ versionCheckHook ];
|
nativeInstallCheckInputs = [ versionCheckHook ];
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
|
|
||||||
let
|
let
|
||||||
baseName = "scalafmt";
|
baseName = "scalafmt";
|
||||||
version = "3.9.6";
|
version = "3.9.7";
|
||||||
deps = stdenv.mkDerivation {
|
deps = stdenv.mkDerivation {
|
||||||
name = "${baseName}-deps-${version}";
|
name = "${baseName}-deps-${version}";
|
||||||
buildCommand = ''
|
buildCommand = ''
|
||||||
|
@ -19,7 +19,7 @@ let
|
||||||
cp $(< deps) $out/share/java/
|
cp $(< deps) $out/share/java/
|
||||||
'';
|
'';
|
||||||
outputHashMode = "recursive";
|
outputHashMode = "recursive";
|
||||||
outputHash = "sha256-qn3by++aYx/azaoDJFQfo8PHyjd3w4qI7g6NMIzLiPE=";
|
outputHash = "sha256-x1hEJtzZ0DmFDc7X5Tua3F0BcWz/Atm2zmMr7GgfkUM=";
|
||||||
};
|
};
|
||||||
in
|
in
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
|
|
|
@ -2,20 +2,24 @@
|
||||||
cmake,
|
cmake,
|
||||||
lib,
|
lib,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
monado,
|
|
||||||
ninja,
|
ninja,
|
||||||
|
sdl3,
|
||||||
|
stdenv,
|
||||||
|
testers,
|
||||||
|
libX11,
|
||||||
|
libGL,
|
||||||
nix-update-script,
|
nix-update-script,
|
||||||
|
|
||||||
|
# passthru tests
|
||||||
SDL2_ttf,
|
SDL2_ttf,
|
||||||
SDL2_net,
|
SDL2_net,
|
||||||
SDL2_gfx,
|
SDL2_gfx,
|
||||||
SDL2_sound,
|
SDL2_sound,
|
||||||
SDL2_mixer,
|
SDL2_mixer,
|
||||||
SDL2_image,
|
SDL2_image,
|
||||||
sdl3,
|
SDL_compat,
|
||||||
stdenv,
|
ffmpeg,
|
||||||
testers,
|
qemu,
|
||||||
libX11,
|
|
||||||
libGL,
|
|
||||||
}:
|
}:
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
|
@ -76,16 +80,18 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
|
||||||
|
|
||||||
inherit
|
inherit
|
||||||
|
SDL_compat
|
||||||
SDL2_ttf
|
SDL2_ttf
|
||||||
SDL2_net
|
SDL2_net
|
||||||
SDL2_gfx
|
SDL2_gfx
|
||||||
SDL2_sound
|
SDL2_sound
|
||||||
SDL2_mixer
|
SDL2_mixer
|
||||||
SDL2_image
|
SDL2_image
|
||||||
|
ffmpeg
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
// lib.optionalAttrs stdenv.hostPlatform.isLinux {
|
// lib.optionalAttrs stdenv.hostPlatform.isLinux {
|
||||||
inherit monado;
|
inherit qemu;
|
||||||
};
|
};
|
||||||
|
|
||||||
updateScript = nix-update-script {
|
updateScript = nix-update-script {
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
diff --git a/node/build_node_bridge.py b/node/build_node_bridge.py
|
||||||
|
index c983fc3..2ab06dc 100755
|
||||||
|
--- a/node/build_node_bridge.py
|
||||||
|
+++ b/node/build_node_bridge.py
|
||||||
|
@@ -138,9 +138,6 @@ def main(args: Optional[List[str]] = None) -> int:
|
||||||
|
cargo_env['CARGO_PROFILE_RELEASE_LTO'] = 'thin'
|
||||||
|
# Enable ARMv8 cryptography acceleration when available
|
||||||
|
cargo_env['RUSTFLAGS'] += ' --cfg aes_armv8'
|
||||||
|
- # Strip absolute paths
|
||||||
|
- for path in build_helpers.rust_paths_to_remap():
|
||||||
|
- cargo_env['RUSTFLAGS'] += f' --remap-path-prefix {path}='
|
||||||
|
|
||||||
|
# If set (below), will post-process the build library using this instead of just `cp`-ing it.
|
||||||
|
objcopy = None
|
|
@ -24,23 +24,23 @@ let
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage (finalAttrs: {
|
rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
pname = "libsignal-node";
|
pname = "libsignal-node";
|
||||||
version = "0.70.0";
|
version = "0.72.1";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "signalapp";
|
owner = "signalapp";
|
||||||
repo = "libsignal";
|
repo = "libsignal";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-6CBhLvD0UflLzJHAMB21wSH8MWTUNx0uPdqOUo/Eq44=";
|
hash = "sha256-A8EAHHcBFSD4ZlvFig64g4+eoZQCuqE/qv509hA3I4s=";
|
||||||
};
|
};
|
||||||
useFetchCargoVendor = true;
|
useFetchCargoVendor = true;
|
||||||
cargoHash = "sha256-4bSPPf16nUQTl6INa3mLhPIe8iiFfpPw1E5fpNvnKqs=";
|
cargoHash = "sha256-+vJrywIi/RcGGGns42XlN6S63RBil3fB4XByTLsaFVc=";
|
||||||
|
|
||||||
npmRoot = "node";
|
npmRoot = "node";
|
||||||
npmDeps = fetchNpmDeps {
|
npmDeps = fetchNpmDeps {
|
||||||
name = "${finalAttrs.pname}-npm-deps";
|
name = "${finalAttrs.pname}-npm-deps";
|
||||||
inherit (finalAttrs) version src;
|
inherit (finalAttrs) version src;
|
||||||
sourceRoot = "${finalAttrs.src.name}/${finalAttrs.npmRoot}";
|
sourceRoot = "${finalAttrs.src.name}/${finalAttrs.npmRoot}";
|
||||||
hash = "sha256-djk+YGZ/eUq6MXjUEE47bgKnQlUSuaoUPx8hUMtjvyQ=";
|
hash = "sha256-ZD0ZN2b7KReGbnvarqvGpOlQ5TsJfnaHmmOWQ42Y48E=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
@ -56,9 +56,12 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
env.BORING_BSSL_PATH = "${boringssl-wrapper}";
|
env.BORING_BSSL_PATH = "${boringssl-wrapper}";
|
||||||
env.NIX_LDFLAGS = if stdenv.hostPlatform.isDarwin then "-lc++" else "-lstdc++";
|
env.NIX_LDFLAGS = if stdenv.hostPlatform.isDarwin then "-lc++" else "-lstdc++";
|
||||||
|
|
||||||
patchPhase = ''
|
patches = [
|
||||||
runHook prePatch
|
# This is used to strip absolute paths of dependencies to avoid leaking info about build machine. Nix builders
|
||||||
|
# already solve this problem by chrooting os this is not needed.
|
||||||
|
./dont-strip-absolute-paths.patch
|
||||||
|
];
|
||||||
|
postPatch = ''
|
||||||
substituteInPlace node/binding.gyp \
|
substituteInPlace node/binding.gyp \
|
||||||
--replace-fail "'--out-dir', '<(PRODUCT_DIR)/'," \
|
--replace-fail "'--out-dir', '<(PRODUCT_DIR)/'," \
|
||||||
"'--out-dir', '$out/lib/<(NODE_OS_NAME)-<(target_arch)/'," \
|
"'--out-dir', '$out/lib/<(NODE_OS_NAME)-<(target_arch)/'," \
|
||||||
|
@ -68,8 +71,6 @@ rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
substituteInPlace node/build_node_bridge.py \
|
substituteInPlace node/build_node_bridge.py \
|
||||||
--replace-fail "dst_base = 'libsignal_client_%s_%s' % (node_os_name, node_arch)" \
|
--replace-fail "dst_base = 'libsignal_client_%s_%s' % (node_os_name, node_arch)" \
|
||||||
"dst_base = '@signalapp+libsignal-client'"
|
"dst_base = '@signalapp+libsignal-client'"
|
||||||
|
|
||||||
runHook postPatch
|
|
||||||
'';
|
'';
|
||||||
|
|
||||||
buildPhase = ''
|
buildPhase = ''
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
lib,
|
lib,
|
||||||
nodejs_22,
|
nodejs_22,
|
||||||
pnpm_10,
|
pnpm_10,
|
||||||
electron_35,
|
electron_36,
|
||||||
python3,
|
python3,
|
||||||
makeWrapper,
|
makeWrapper,
|
||||||
callPackage,
|
callPackage,
|
||||||
|
@ -19,7 +19,7 @@
|
||||||
let
|
let
|
||||||
nodejs = nodejs_22;
|
nodejs = nodejs_22;
|
||||||
pnpm = pnpm_10.override { inherit nodejs; };
|
pnpm = pnpm_10.override { inherit nodejs; };
|
||||||
electron = electron_35;
|
electron = electron_36;
|
||||||
|
|
||||||
libsignal-node = callPackage ./libsignal-node.nix { inherit nodejs; };
|
libsignal-node = callPackage ./libsignal-node.nix { inherit nodejs; };
|
||||||
signal-sqlcipher = callPackage ./signal-sqlcipher.nix { inherit pnpm nodejs; };
|
signal-sqlcipher = callPackage ./signal-sqlcipher.nix { inherit pnpm nodejs; };
|
||||||
|
@ -48,13 +48,13 @@ let
|
||||||
'';
|
'';
|
||||||
});
|
});
|
||||||
|
|
||||||
version = "7.54.0";
|
version = "7.56.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "signalapp";
|
owner = "signalapp";
|
||||||
repo = "Signal-Desktop";
|
repo = "Signal-Desktop";
|
||||||
tag = "v${version}";
|
tag = "v${version}";
|
||||||
hash = "sha256-dv1Yi7gSd7kY3MSrsPjcaf2hAEq6Y+XoWtlBfvd86ac=";
|
hash = "sha256-BrgBlDEgb08oX7Mh/P4nuoM+dkSDpB45zOtDNMYeZr0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
sticker-creator = stdenv.mkDerivation (finalAttrs: {
|
sticker-creator = stdenv.mkDerivation (finalAttrs: {
|
||||||
|
@ -64,7 +64,7 @@ let
|
||||||
|
|
||||||
pnpmDeps = pnpm.fetchDeps {
|
pnpmDeps = pnpm.fetchDeps {
|
||||||
inherit (finalAttrs) pname src version;
|
inherit (finalAttrs) pname src version;
|
||||||
hash = "sha256-TuPyRVNFIlR0A4YHMpQsQ6m+lm2fsp79FzQ1P5qqjIc=";
|
hash = "sha256-cT7Ixl/V/mesPHvJUsG63Y/wXwKjbjkjdjP3S7uEOa0=";
|
||||||
};
|
};
|
||||||
|
|
||||||
strictDeps = true;
|
strictDeps = true;
|
||||||
|
@ -116,15 +116,15 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
;
|
;
|
||||||
hash =
|
hash =
|
||||||
if withAppleEmojis then
|
if withAppleEmojis then
|
||||||
"sha256-Kdg0+kLEDFobWEEhJgKuaou/pYwn1dTugye7OcMYfEQ="
|
"sha256-RP3d1t4bbvehdCDSL3bHrlJEnn65TDViI5jVjSiuJw8="
|
||||||
else
|
else
|
||||||
"sha256-cit/Hn7L6qmfIJCDF2wlx/4aKygRYy+zvBQGX6Mg+og=";
|
"sha256-KJvc+kVcwRKsUVW3lK7fPXUSqDQlJFPbYAzQjhFtfoU=";
|
||||||
};
|
};
|
||||||
|
|
||||||
env = {
|
env = {
|
||||||
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
|
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
|
||||||
SIGNAL_ENV = "production";
|
SIGNAL_ENV = "production";
|
||||||
SOURCE_DATE_EPOCH = 1747170390;
|
SOURCE_DATE_EPOCH = 1748456277;
|
||||||
};
|
};
|
||||||
|
|
||||||
preBuild = ''
|
preBuild = ''
|
||||||
|
|
|
@ -19,16 +19,16 @@ let
|
||||||
in
|
in
|
||||||
rustPlatform.buildRustPackage (finalAttrs: {
|
rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
pname = "ringrtc";
|
pname = "ringrtc";
|
||||||
version = "2.51.0";
|
version = "2.52.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "signalapp";
|
owner = "signalapp";
|
||||||
repo = "ringrtc";
|
repo = "ringrtc";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-PLrGLW6pDoCNpbWASxAqockAJRoeBrkBdxNOHYrQu4s=";
|
hash = "sha256-Ao1mFJYPnV3lfg4SERwq4dGnBhOVI9pwsqPAsUtV/iY=";
|
||||||
};
|
};
|
||||||
useFetchCargoVendor = true;
|
useFetchCargoVendor = true;
|
||||||
cargoHash = "sha256-u38VOV2xdNG1WFox+SWT9ejJD1TjK0yAI6lCB9r75iY=";
|
cargoHash = "sha256-mO9t4ZDDM5Y9cMkmdrYrdGYukN1xfGogPSNq+S1t4Us=";
|
||||||
|
|
||||||
cargoBuildFlags = [
|
cargoBuildFlags = [
|
||||||
"-p"
|
"-p"
|
||||||
|
|
|
@ -11,13 +11,13 @@
|
||||||
}:
|
}:
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "node-sqlcipher";
|
pname = "node-sqlcipher";
|
||||||
version = "2.0.1";
|
version = "2.0.3";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "signalapp";
|
owner = "signalapp";
|
||||||
repo = "node-sqlcipher";
|
repo = "node-sqlcipher";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-15t2HuEYdCxShK703/z3bb1VCgSNpziaK5+wM3TqSHg=";
|
hash = "sha256-H5/+XcXnINRL5BWItWx6YaPP46+k1xTbyfDqHPCRDXk=";
|
||||||
};
|
};
|
||||||
|
|
||||||
pnpmDeps = pnpm.fetchDeps {
|
pnpmDeps = pnpm.fetchDeps {
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
{
|
{
|
||||||
"src": {
|
"src": {
|
||||||
"args": {
|
"args": {
|
||||||
"hash": "sha256-yomovlwRmrzsN+dvmUgOM6pzBTH41QuHQXnEJBhQglY=",
|
"hash": "sha256-AFMJmIo7O4fYrVWABciQphTxHQSj4CdfhluIIPpPWAw=",
|
||||||
"owner": "signalapp",
|
"owner": "signalapp",
|
||||||
"repo": "webrtc",
|
"repo": "webrtc",
|
||||||
"tag": "6998b"
|
"tag": "6998c"
|
||||||
},
|
},
|
||||||
"fetcher": "fetchFromGitHub"
|
"fetcher": "fetchFromGitHub"
|
||||||
},
|
},
|
||||||
|
|
|
@ -30,7 +30,7 @@ rustPlatform.buildRustPackage rec {
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# Related to https://github.com/stepchowfun/typical/pull/501
|
# Related to https://github.com/stepchowfun/typical/pull/501
|
||||||
# Commiting a slightly different patch because the upstream one doesn't apply cleanly
|
# Committing a slightly different patch because the upstream one doesn't apply cleanly
|
||||||
./lifetime.patch
|
./lifetime.patch
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
stdenv.mkDerivation {
|
stdenv.mkDerivation {
|
||||||
pname = "usb-reset";
|
pname = "usb-reset";
|
||||||
# not tagged, but changelog has this with the date of the e9a9d6c commit
|
# not tagged, but changelog has this with the date of the e9a9d6c commit
|
||||||
# and no significant change occured between bumping the version in the Makefile and that
|
# and no significant change occurred between bumping the version in the Makefile and that
|
||||||
# and the changes since then (up to ff822d8) seem snap related
|
# and the changes since then (up to ff822d8) seem snap related
|
||||||
version = "0.3";
|
version = "0.3";
|
||||||
|
|
||||||
|
|
|
@ -66,10 +66,10 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
];
|
];
|
||||||
|
|
||||||
cmakeFlags = [
|
cmakeFlags = [
|
||||||
(lib.cmakeFeature "BUILD_VANILLATD" (if appName == "vanillatd" then "ON" else "OFF"))
|
(lib.cmakeBool "BUILD_VANILLATD" (appName == "vanillatd"))
|
||||||
(lib.cmakeFeature "BUILD_VANILLARA" (if appName == "vanillara" then "ON" else "OFF"))
|
(lib.cmakeBool "BUILD_VANILLARA" (appName == "vanillara"))
|
||||||
(lib.cmakeFeature "BUILD_REMASTERTD" (if appName == "remastertd" then "ON" else "OFF"))
|
(lib.cmakeBool "BUILD_REMASTERTD" (appName == "remastertd"))
|
||||||
(lib.cmakeFeature "BUILD_REMASTERRA" (if appName == "remasterra" then "ON" else "OFF"))
|
(lib.cmakeBool "BUILD_REMASTERRA" (appName == "remasterra"))
|
||||||
(lib.cmakeFeature "CMAKE_BUILD_TYPE" CMAKE_BUILD_TYPE)
|
(lib.cmakeFeature "CMAKE_BUILD_TYPE" CMAKE_BUILD_TYPE)
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -10,14 +10,14 @@
|
||||||
|
|
||||||
python3Packages.buildPythonApplication rec {
|
python3Packages.buildPythonApplication rec {
|
||||||
pname = "vectorcode";
|
pname = "vectorcode";
|
||||||
version = "0.6.9";
|
version = "0.6.10";
|
||||||
pyproject = true;
|
pyproject = true;
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Davidyz";
|
owner = "Davidyz";
|
||||||
repo = "VectorCode";
|
repo = "VectorCode";
|
||||||
tag = version;
|
tag = version;
|
||||||
hash = "sha256-qXrXNt5uI/gePFyJ79y+zksSekq7BzsbL+1tvMQ/zKM=";
|
hash = "sha256-k9YpsVFV1HkIIIFPB7Iz7Jar+lY5vK6gpzNIlX55ZDY=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = with python3Packages; [
|
build-system = with python3Packages; [
|
||||||
|
|
|
@ -4,21 +4,22 @@
|
||||||
rustPlatform,
|
rustPlatform,
|
||||||
fetchFromGitHub,
|
fetchFromGitHub,
|
||||||
installShellFiles,
|
installShellFiles,
|
||||||
|
nix-update-script,
|
||||||
}:
|
}:
|
||||||
|
|
||||||
rustPlatform.buildRustPackage rec {
|
rustPlatform.buildRustPackage (finalAttrs: {
|
||||||
pname = "watchexec";
|
pname = "watchexec";
|
||||||
version = "2.3.1";
|
version = "2.3.2";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "watchexec";
|
owner = "watchexec";
|
||||||
repo = "watchexec";
|
repo = "watchexec";
|
||||||
rev = "v${version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-ldxB1/WgOe1uGfKXkMEtGHIlWiKJgnZz6j/7eCOGD8s=";
|
hash = "sha256-BJRvz3rFLaOCNhOsEo0rSOgB9BCJ2LMB9XEw8RBWXXs=";
|
||||||
};
|
};
|
||||||
|
|
||||||
useFetchCargoVendor = true;
|
useFetchCargoVendor = true;
|
||||||
cargoHash = "sha256-LdjJlf4HPN+kZOQKPNSdbYApGBD4Z6tKV9Y0FFKpAf0=";
|
cargoHash = "sha256-VtSRC4lyjMo2O9dNbVllcDEx08zQWJMQmQ/2bNMup6U=";
|
||||||
|
|
||||||
nativeBuildInputs = [ installShellFiles ];
|
nativeBuildInputs = [ installShellFiles ];
|
||||||
|
|
||||||
|
@ -35,14 +36,22 @@ rustPlatform.buildRustPackage rec {
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
installManPage doc/watchexec.1
|
installManPage doc/watchexec.1
|
||||||
installShellCompletion --zsh --name _watchexec completions/zsh
|
installShellCompletion --cmd watchexec \
|
||||||
|
--bash completions/bash \
|
||||||
|
--fish completions/fish \
|
||||||
|
--zsh completions/zsh
|
||||||
'';
|
'';
|
||||||
|
|
||||||
meta = with lib; {
|
passthru.updateScript = nix-update-script { };
|
||||||
|
|
||||||
|
meta = {
|
||||||
description = "Executes commands in response to file modifications";
|
description = "Executes commands in response to file modifications";
|
||||||
homepage = "https://watchexec.github.io/";
|
homepage = "https://watchexec.github.io/";
|
||||||
license = with licenses; [ asl20 ];
|
license = with lib.licenses; [ asl20 ];
|
||||||
maintainers = [ maintainers.michalrus ];
|
maintainers = with lib.maintainers; [
|
||||||
|
michalrus
|
||||||
|
prince213
|
||||||
|
];
|
||||||
mainProgram = "watchexec";
|
mainProgram = "watchexec";
|
||||||
};
|
};
|
||||||
}
|
})
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
}:
|
}:
|
||||||
let
|
let
|
||||||
pname = "whisper-ctranslate2";
|
pname = "whisper-ctranslate2";
|
||||||
version = "0.5.2";
|
version = "0.5.3";
|
||||||
in
|
in
|
||||||
python3Packages.buildPythonApplication {
|
python3Packages.buildPythonApplication {
|
||||||
inherit pname version;
|
inherit pname version;
|
||||||
|
@ -17,7 +17,7 @@ python3Packages.buildPythonApplication {
|
||||||
owner = "Softcatala";
|
owner = "Softcatala";
|
||||||
repo = "whisper-ctranslate2";
|
repo = "whisper-ctranslate2";
|
||||||
tag = version;
|
tag = version;
|
||||||
hash = "sha256-53sKuaZJcH/i2C4oeKcvxRs3OmkvR3USw6nnPh+i+Eo=";
|
hash = "sha256-rRxadVYv69Jgzai+ANS6oKHOArTI9vPDPeTybtOySww=";
|
||||||
};
|
};
|
||||||
|
|
||||||
build-system = [ python3Packages.setuptools ];
|
build-system = [ python3Packages.setuptools ];
|
||||||
|
|
|
@ -38,7 +38,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||||
};
|
};
|
||||||
|
|
||||||
patches = [
|
patches = [
|
||||||
# instead of runnning git during the build process
|
# instead of running git during the build process
|
||||||
# use the .COMMIT file generated in the fetcher FOD
|
# use the .COMMIT file generated in the fetcher FOD
|
||||||
./git-rev-parse.patch
|
./git-rev-parse.patch
|
||||||
];
|
];
|
||||||
|
|
|
@ -9,13 +9,13 @@
|
||||||
|
|
||||||
stdenv.mkDerivation (finalAttrs: {
|
stdenv.mkDerivation (finalAttrs: {
|
||||||
pname = "zashboard";
|
pname = "zashboard";
|
||||||
version = "1.90.0";
|
version = "1.93.0";
|
||||||
|
|
||||||
src = fetchFromGitHub {
|
src = fetchFromGitHub {
|
||||||
owner = "Zephyruso";
|
owner = "Zephyruso";
|
||||||
repo = "zashboard";
|
repo = "zashboard";
|
||||||
tag = "v${finalAttrs.version}";
|
tag = "v${finalAttrs.version}";
|
||||||
hash = "sha256-LxA0X2E9Xue79xLAYuCz0ZA0v8hYVxkb+1h6qB4MiDI=";
|
hash = "sha256-0YlFDmn5XAQiGxGpFJtVgtFdPbxApVlsqRLwIun0YtI=";
|
||||||
};
|
};
|
||||||
|
|
||||||
nativeBuildInputs = [
|
nativeBuildInputs = [
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
copyDesktopItems,
|
copyDesktopItems,
|
||||||
autoPatchelfHook,
|
autoPatchelfHook,
|
||||||
|
|
||||||
# Upstream is officialy built with Electron 18
|
# Upstream is officially built with Electron 18
|
||||||
# (but it works with latest Electron with minor changes, see HACK below)
|
# (but it works with latest Electron with minor changes, see HACK below)
|
||||||
electron,
|
electron,
|
||||||
asar,
|
asar,
|
||||||
|
|
|
@ -38,7 +38,7 @@ assert !enablePlugin -> disableGdbPlugin;
|
||||||
|
|
||||||
# Note [Windows Exception Handling]
|
# Note [Windows Exception Handling]
|
||||||
# sjlj (short jump long jump) exception handling makes no sense on x86_64,
|
# sjlj (short jump long jump) exception handling makes no sense on x86_64,
|
||||||
# it's forcably slowing programs down as it produces a constant overhead.
|
# it's forcibly slowing programs down as it produces a constant overhead.
|
||||||
# On x86_64 we have SEH (Structured Exception Handling) and we should use
|
# On x86_64 we have SEH (Structured Exception Handling) and we should use
|
||||||
# that. On i686, we do not have SEH, and have to use sjlj with dwarf2.
|
# that. On i686, we do not have SEH, and have to use sjlj with dwarf2.
|
||||||
# Hence it's now conditional on x86_32 (i686 is 32bit).
|
# Hence it's now conditional on x86_32 (i686 is 32bit).
|
||||||
|
|
|
@ -21,7 +21,7 @@ with haskellLib;
|
||||||
# To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead.
|
# To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead.
|
||||||
self: super:
|
self: super:
|
||||||
{
|
{
|
||||||
# Hackage's accelerate is from 2020 and incomptible with our GHC.
|
# Hackage's accelerate is from 2020 and incompatible with our GHC.
|
||||||
# The existing derivation also has missing dependencies
|
# The existing derivation also has missing dependencies
|
||||||
# compared to the source from github.
|
# compared to the source from github.
|
||||||
# https://github.com/AccelerateHS/accelerate/issues/553
|
# https://github.com/AccelerateHS/accelerate/issues/553
|
||||||
|
@ -820,7 +820,7 @@ self: super:
|
||||||
katt = dontCheck super.katt;
|
katt = dontCheck super.katt;
|
||||||
language-slice = dontCheck super.language-slice;
|
language-slice = dontCheck super.language-slice;
|
||||||
|
|
||||||
# Bogus lower bound on data-default-class added via Hackage revison
|
# Bogus lower bound on data-default-class added via Hackage revision
|
||||||
# https://github.com/mrkkrp/req/pull/180#issuecomment-2628201485
|
# https://github.com/mrkkrp/req/pull/180#issuecomment-2628201485
|
||||||
req = overrideCabal {
|
req = overrideCabal {
|
||||||
revision = null;
|
revision = null;
|
||||||
|
@ -1979,7 +1979,7 @@ self: super:
|
||||||
license = lib.licenses.bsd3;
|
license = lib.licenses.bsd3;
|
||||||
# ghc-bignum is not buildable if none of the three backends
|
# ghc-bignum is not buildable if none of the three backends
|
||||||
# is explicitly enabled. We enable Native for now as it doesn't
|
# is explicitly enabled. We enable Native for now as it doesn't
|
||||||
# depend on anything else as oppossed to GMP and FFI.
|
# depend on anything else as opposed to GMP and FFI.
|
||||||
# Apply patch which fixes a compilation failure we encountered.
|
# Apply patch which fixes a compilation failure we encountered.
|
||||||
# Will need to be kept until we can drop ghc-bignum entirely,
|
# Will need to be kept until we can drop ghc-bignum entirely,
|
||||||
# i. e. if GHC 8.10.* and 8.8.* have been removed.
|
# i. e. if GHC 8.10.* and 8.8.* have been removed.
|
||||||
|
@ -2542,7 +2542,7 @@ self: super:
|
||||||
# Missing test files https://github.com/kephas/xdg-basedir-compliant/issues/1
|
# Missing test files https://github.com/kephas/xdg-basedir-compliant/issues/1
|
||||||
xdg-basedir-compliant = dontCheck super.xdg-basedir-compliant;
|
xdg-basedir-compliant = dontCheck super.xdg-basedir-compliant;
|
||||||
|
|
||||||
# Test failure after libxcrypt migration, reported upstrem at
|
# Test failure after libxcrypt migration, reported upstream at
|
||||||
# https://github.com/phadej/crypt-sha512/issues/13
|
# https://github.com/phadej/crypt-sha512/issues/13
|
||||||
crypt-sha512 = dontCheck super.crypt-sha512;
|
crypt-sha512 = dontCheck super.crypt-sha512;
|
||||||
|
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue