mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 23:03:40 +01:00
Merge master into staging-next
This commit is contained in:
commit
d4d107cf3d
26 changed files with 410 additions and 47 deletions
|
@ -9,6 +9,7 @@ let
|
|||
_fileFilter
|
||||
_printFileset
|
||||
_intersection
|
||||
_difference
|
||||
;
|
||||
|
||||
inherit (builtins)
|
||||
|
@ -368,6 +369,58 @@ If a directory does not recursively contain any file, it is omitted from the sto
|
|||
(elemAt filesets 0)
|
||||
(elemAt filesets 1);
|
||||
|
||||
/*
|
||||
The file set containing all files from the first file set that are not in the second file set.
|
||||
See also [Difference (set theory)](https://en.wikipedia.org/wiki/Complement_(set_theory)#Relative_complement).
|
||||
|
||||
The given file sets are evaluated as lazily as possible,
|
||||
with the first argument being evaluated first if needed.
|
||||
|
||||
Type:
|
||||
union :: FileSet -> FileSet -> FileSet
|
||||
|
||||
Example:
|
||||
# Create a file set containing all files from the current directory,
|
||||
# except ones under ./tests
|
||||
difference ./. ./tests
|
||||
|
||||
let
|
||||
# A set of Nix-related files
|
||||
nixFiles = unions [ ./default.nix ./nix ./tests/default.nix ];
|
||||
in
|
||||
# Create a file set containing all files under ./tests, except ones in `nixFiles`,
|
||||
# meaning only without ./tests/default.nix
|
||||
difference ./tests nixFiles
|
||||
*/
|
||||
difference =
|
||||
# The positive file set.
|
||||
# The result can only contain files that are also in this file set.
|
||||
#
|
||||
# This argument can also be a path,
|
||||
# which gets [implicitly coerced to a file set](#sec-fileset-path-coercion).
|
||||
positive:
|
||||
# The negative file set.
|
||||
# The result will never contain files that are also in this file set.
|
||||
#
|
||||
# This argument can also be a path,
|
||||
# which gets [implicitly coerced to a file set](#sec-fileset-path-coercion).
|
||||
negative:
|
||||
let
|
||||
filesets = _coerceMany "lib.fileset.difference" [
|
||||
{
|
||||
context = "first argument (positive set)";
|
||||
value = positive;
|
||||
}
|
||||
{
|
||||
context = "second argument (negative set)";
|
||||
value = negative;
|
||||
}
|
||||
];
|
||||
in
|
||||
_difference
|
||||
(elemAt filesets 0)
|
||||
(elemAt filesets 1);
|
||||
|
||||
/*
|
||||
Incrementally evaluate and trace a file set in a pretty way.
|
||||
This function is only intended for debugging purposes.
|
||||
|
|
|
@ -651,6 +651,86 @@ rec {
|
|||
# In all other cases it's the rhs
|
||||
rhs;
|
||||
|
||||
# Compute the set difference between two file sets.
|
||||
# The filesets must already be coerced and validated to be in the same filesystem root.
|
||||
# Type: Fileset -> Fileset -> Fileset
|
||||
_difference = positive: negative:
|
||||
let
|
||||
# The common base components prefix, e.g.
|
||||
# (/foo/bar, /foo/bar/baz) -> /foo/bar
|
||||
# (/foo/bar, /foo/baz) -> /foo
|
||||
commonBaseComponentsLength =
|
||||
# TODO: Have a `lib.lists.commonPrefixLength` function such that we don't need the list allocation from commonPrefix here
|
||||
length (
|
||||
commonPrefix
|
||||
positive._internalBaseComponents
|
||||
negative._internalBaseComponents
|
||||
);
|
||||
|
||||
# We need filesetTree's with the same base to be able to compute the difference between them
|
||||
# This here is the filesetTree from the negative file set, but for a base path that matches the positive file set.
|
||||
# Examples:
|
||||
# For `difference /foo /foo/bar`, `negativeTreeWithPositiveBase = { bar = "directory"; }`
|
||||
# because under the base path of `/foo`, only `bar` from the negative file set is included
|
||||
# For `difference /foo/bar /foo`, `negativeTreeWithPositiveBase = "directory"`
|
||||
# because under the base path of `/foo/bar`, everything from the negative file set is included
|
||||
# For `difference /foo /bar`, `negativeTreeWithPositiveBase = null`
|
||||
# because under the base path of `/foo`, nothing from the negative file set is included
|
||||
negativeTreeWithPositiveBase =
|
||||
if commonBaseComponentsLength == length positive._internalBaseComponents then
|
||||
# The common prefix is the same as the positive base path, so the second path is equal or longer.
|
||||
# We need to _shorten_ the negative filesetTree to the same base path as the positive one
|
||||
# E.g. for `difference /foo /foo/bar` the common prefix is /foo, equal to the positive file set's base
|
||||
# So we need to shorten the base of the tree for the negative argument from /foo/bar to just /foo
|
||||
_shortenTreeBase positive._internalBaseComponents negative
|
||||
else if commonBaseComponentsLength == length negative._internalBaseComponents then
|
||||
# The common prefix is the same as the negative base path, so the first path is longer.
|
||||
# We need to lengthen the negative filesetTree to the same base path as the positive one.
|
||||
# E.g. for `difference /foo/bar /foo` the common prefix is /foo, equal to the negative file set's base
|
||||
# So we need to lengthen the base of the tree for the negative argument from /foo to /foo/bar
|
||||
_lengthenTreeBase positive._internalBaseComponents negative
|
||||
else
|
||||
# The common prefix is neither the first nor the second path.
|
||||
# This means there's no overlap between the two file sets,
|
||||
# and nothing from the negative argument should get removed from the positive one
|
||||
# E.g for `difference /foo /bar`, we remove nothing to get the same as `/foo`
|
||||
null;
|
||||
|
||||
resultingTree =
|
||||
_differenceTree
|
||||
positive._internalBase
|
||||
positive._internalTree
|
||||
negativeTreeWithPositiveBase;
|
||||
in
|
||||
# If the first file set is empty, we can never have any files in the result
|
||||
if positive._internalIsEmptyWithoutBase then
|
||||
_emptyWithoutBase
|
||||
# If the second file set is empty, nothing gets removed, so the result is just the first file set
|
||||
else if negative._internalIsEmptyWithoutBase then
|
||||
positive
|
||||
else
|
||||
# We use the positive file set base for the result,
|
||||
# because only files from the positive side may be included,
|
||||
# which is what base path is for
|
||||
_create positive._internalBase resultingTree;
|
||||
|
||||
# Computes the set difference of two filesetTree's
|
||||
# Type: Path -> filesetTree -> filesetTree
|
||||
_differenceTree = path: lhs: rhs:
|
||||
# If the lhs doesn't have any files, or the right hand side includes all files
|
||||
if lhs == null || isString rhs then
|
||||
# The result will always be empty
|
||||
null
|
||||
# If the right hand side has no files
|
||||
else if rhs == null then
|
||||
# The result is always the left hand side, because nothing gets removed
|
||||
lhs
|
||||
else
|
||||
# Otherwise we always have two attribute sets to recurse into
|
||||
mapAttrs (name: lhsValue:
|
||||
_differenceTree (path + "/${name}") lhsValue (rhs.${name} or null)
|
||||
) (_directoryEntries path lhs);
|
||||
|
||||
_fileFilter = predicate: fileset:
|
||||
let
|
||||
recurse = path: tree:
|
||||
|
|
|
@ -684,6 +684,104 @@ tree=(
|
|||
)
|
||||
checkFileset 'intersection (unions [ ./a/b ./c/d ./c/e ]) (unions [ ./a ./c/d/f ./c/e ])'
|
||||
|
||||
## Difference
|
||||
|
||||
# Subtracting something from itself results in nothing
|
||||
tree=(
|
||||
[a]=0
|
||||
)
|
||||
checkFileset 'difference ./. ./.'
|
||||
|
||||
# The tree of the second argument should not be evaluated if not needed
|
||||
checkFileset 'difference _emptyWithoutBase (_create ./. (abort "This should not be used!"))'
|
||||
checkFileset 'difference (_create ./. null) (_create ./. (abort "This should not be used!"))'
|
||||
|
||||
# Subtracting nothing gives the same thing back
|
||||
tree=(
|
||||
[a]=1
|
||||
)
|
||||
checkFileset 'difference ./. _emptyWithoutBase'
|
||||
checkFileset 'difference ./. (_create ./. null)'
|
||||
|
||||
# Subtracting doesn't influence the base path
|
||||
mkdir a b
|
||||
touch {a,b}/x
|
||||
expectEqual 'toSource { root = ./a; fileset = difference ./a ./b; }' 'toSource { root = ./a; fileset = ./a; }'
|
||||
rm -rf -- *
|
||||
|
||||
# Also not the other way around
|
||||
mkdir a
|
||||
expectFailure 'toSource { root = ./a; fileset = difference ./. ./a; }' 'lib.fileset.toSource: `fileset` could contain files in '"$work"', which is not under the `root` \('"$work"'/a\). Potential solutions:
|
||||
\s*- Set `root` to '"$work"' or any directory higher up. This changes the layout of the resulting store path.
|
||||
\s*- Set `fileset` to a file set that cannot contain files outside the `root` \('"$work"'/a\). This could change the files included in the result.'
|
||||
rm -rf -- *
|
||||
|
||||
# Difference actually works
|
||||
# We test all combinations of ./., ./a, ./a/x and ./b
|
||||
tree=(
|
||||
[a/x]=0
|
||||
[a/y]=0
|
||||
[b]=0
|
||||
[c]=0
|
||||
)
|
||||
checkFileset 'difference ./. ./.'
|
||||
checkFileset 'difference ./a ./.'
|
||||
checkFileset 'difference ./a/x ./.'
|
||||
checkFileset 'difference ./b ./.'
|
||||
checkFileset 'difference ./a ./a'
|
||||
checkFileset 'difference ./a/x ./a'
|
||||
checkFileset 'difference ./a/x ./a/x'
|
||||
checkFileset 'difference ./b ./b'
|
||||
tree=(
|
||||
[a/x]=0
|
||||
[a/y]=0
|
||||
[b]=1
|
||||
[c]=1
|
||||
)
|
||||
checkFileset 'difference ./. ./a'
|
||||
tree=(
|
||||
[a/x]=1
|
||||
[a/y]=1
|
||||
[b]=0
|
||||
[c]=0
|
||||
)
|
||||
checkFileset 'difference ./a ./b'
|
||||
tree=(
|
||||
[a/x]=1
|
||||
[a/y]=0
|
||||
[b]=0
|
||||
[c]=0
|
||||
)
|
||||
checkFileset 'difference ./a/x ./b'
|
||||
tree=(
|
||||
[a/x]=0
|
||||
[a/y]=1
|
||||
[b]=0
|
||||
[c]=0
|
||||
)
|
||||
checkFileset 'difference ./a ./a/x'
|
||||
tree=(
|
||||
[a/x]=0
|
||||
[a/y]=0
|
||||
[b]=1
|
||||
[c]=0
|
||||
)
|
||||
checkFileset 'difference ./b ./a'
|
||||
checkFileset 'difference ./b ./a/x'
|
||||
tree=(
|
||||
[a/x]=0
|
||||
[a/y]=1
|
||||
[b]=1
|
||||
[c]=1
|
||||
)
|
||||
checkFileset 'difference ./. ./a/x'
|
||||
tree=(
|
||||
[a/x]=1
|
||||
[a/y]=1
|
||||
[b]=0
|
||||
[c]=1
|
||||
)
|
||||
checkFileset 'difference ./. ./b'
|
||||
|
||||
## File filter
|
||||
|
||||
|
|
|
@ -64,8 +64,14 @@ expectSuccess "pathType $PWD/directory" '"directory"'
|
|||
expectSuccess "pathType $PWD/regular" '"regular"'
|
||||
expectSuccess "pathType $PWD/symlink" '"symlink"'
|
||||
expectSuccess "pathType $PWD/fifo" '"unknown"'
|
||||
# Different errors depending on whether the builtins.readFilePath primop is available or not
|
||||
expectFailure "pathType $PWD/non-existent" "error: (evaluation aborted with the following error message: 'lib.filesystem.pathType: Path $PWD/non-existent does not exist.'|getting status of '$PWD/non-existent': No such file or directory)"
|
||||
|
||||
# Only check error message when a Nixpkgs-specified error is thrown,
|
||||
# which is only the case when `readFileType` is not available
|
||||
# and the fallback implementation needs to be used.
|
||||
if [[ "$(nix-instantiate --eval --expr 'builtins ? readFileType')" == false ]]; then
|
||||
expectFailure "pathType $PWD/non-existent" \
|
||||
"error: evaluation aborted with the following error message: 'lib.filesystem.pathType: Path $PWD/non-existent does not exist.'"
|
||||
fi
|
||||
|
||||
expectSuccess "pathIsDirectory /." "true"
|
||||
expectSuccess "pathIsDirectory $PWD/directory" "true"
|
||||
|
|
|
@ -17167,6 +17167,12 @@
|
|||
githubId = 7075751;
|
||||
name = "Patrick Hilhorst";
|
||||
};
|
||||
sysedwinistrator = {
|
||||
email = "edwin.mowen@gmail.com";
|
||||
github = "sysedwinistrator";
|
||||
githubId = 71331875;
|
||||
name = "Edwin Mackenzie-Owen";
|
||||
};
|
||||
szczyp = {
|
||||
email = "qb@szczyp.com";
|
||||
github = "Szczyp";
|
||||
|
|
|
@ -36,7 +36,7 @@ in pkgs.lib.listToAttrs (builtins.map ({ predictable, withNetworkd, systemdStage
|
|||
networking.useDHCP = !withNetworkd;
|
||||
|
||||
# Check if predictable interface names are working in stage-1
|
||||
boot.initrd.postDeviceCommands = script;
|
||||
boot.initrd.postDeviceCommands = lib.mkIf (!systemdStage1) script;
|
||||
|
||||
boot.initrd.systemd = lib.mkIf systemdStage1 {
|
||||
enable = true;
|
||||
|
|
|
@ -25,13 +25,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "reaper";
|
||||
version = "7.0";
|
||||
version = "7.02";
|
||||
|
||||
src = fetchurl {
|
||||
url = url_for_platform version stdenv.hostPlatform.qemuArch;
|
||||
hash = {
|
||||
x86_64-linux = "sha256-lHXy1xSwhNht6dt30e35nE1ZpOm8oTMMpoZJI7ELsjg=";
|
||||
aarch64-linux = "sha256-a/e8DQ9NvbLyZHqg7pUxm+kV7i5vKCjeq9EOO0/5TJk=";
|
||||
x86_64-linux = "sha256-86BGWaZ+zkxgC1Tz14lkBniwhs26G4EPpG2LjsSe9io=";
|
||||
aarch64-linux = "sha256-kJfy4ji5YBv5ztilkAIuPswu3O9pwBL0coD6wU1gU5c=";
|
||||
}.${stdenv.hostPlatform.system};
|
||||
};
|
||||
|
||||
|
|
|
@ -167,9 +167,9 @@ rec {
|
|||
mkTerraform = attrs: pluggable (generic attrs);
|
||||
|
||||
terraform_1 = mkTerraform {
|
||||
version = "1.6.2";
|
||||
hash = "sha256-24B8YlorL00OqmYYVM1xg5dM9hZ4enDWJ1XIGmeEAiM=";
|
||||
vendorHash = "sha256-fIirGWt4Os2uZHo4ui7wmZEp+DRUHu/0p+cQCbUbzjc=";
|
||||
version = "1.6.3";
|
||||
hash = "sha256-2ai0WAknz4rt33BuBoqnTCsfPNHmet9+PdgYeeJKQkQ=";
|
||||
vendorHash = "sha256-ZtaXUX0PgL1nwXgohcfCyj/fLPAodx8amHEsQnlOQrc=";
|
||||
patches = [ ./provider-path-0_15.patch ];
|
||||
passthru = {
|
||||
inherit plugins;
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "gh";
|
||||
version = "2.37.0";
|
||||
version = "2.38.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "cli";
|
||||
repo = "cli";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-EAvBPUm2U31gzpfyjEPClT1lbBYiITXpdc+T3nUMOeg=";
|
||||
hash = "sha256-t+JpCxJM2PO9nT9nYn/Rsz/s2lQQviggbjuEy0OQV88=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-G3cpR5S+upk3js5anZHXxcRayTEGMqnBpmtp4HO0pjQ=";
|
||||
vendorHash = "sha256-XZhZDYdbjA/1g7/mPxm5u1b+z/TmwoH60/sJZ63LQMg=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
||||
|
|
|
@ -6,12 +6,12 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "streamlink";
|
||||
version = "6.2.1";
|
||||
version = "6.3.1";
|
||||
format = "pyproject";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-64Jmkva7L0oaik1UcCTQlUricL2us+O5CEc6pVsgnRI=";
|
||||
hash = "sha256-k8Dfrl0Xie5zF/GhVdP/RKGajDyGblAwu49UekX1WEQ=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = with python3Packages; [
|
||||
|
@ -23,10 +23,6 @@ python3Packages.buildPythonApplication rec {
|
|||
pytest-trio
|
||||
];
|
||||
|
||||
nativeBuildInputs = with python3Packages; [
|
||||
versioningit
|
||||
];
|
||||
|
||||
propagatedBuildInputs = (with python3Packages; [
|
||||
certifi
|
||||
isodate
|
||||
|
|
|
@ -39,13 +39,13 @@ let
|
|||
in
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "crun";
|
||||
version = "1.11";
|
||||
version = "1.11.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "containers";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-38IqVt/XZeZQRXjiPNz4qDibBHMBVZwzAcxrobzEWdI=";
|
||||
hash = "sha256-D4Y+n/6R2v3U/BhYQitsHd6ckda1vfAzciFbTM/1J80=";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
|
|
|
@ -14,13 +14,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "runc";
|
||||
version = "1.1.9";
|
||||
version = "1.1.10";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "opencontainers";
|
||||
repo = "runc";
|
||||
rev = "v${version}";
|
||||
hash = "sha256-9vNzKoG+0Ze4+dhluNM6QtsUjV8/bpkuvEF8ASBfBRo=";
|
||||
hash = "sha256-YoRwr5imolblix1st/YeVTrAUdQXTqrx1BdNMdYlt/0=";
|
||||
};
|
||||
|
||||
vendorHash = null;
|
||||
|
|
42
pkgs/by-name/co/cosmic-icons/package.nix
Normal file
42
pkgs/by-name/co/cosmic-icons/package.nix
Normal file
|
@ -0,0 +1,42 @@
|
|||
{ lib
|
||||
, stdenvNoCC
|
||||
, fetchFromGitHub
|
||||
, just
|
||||
, pop-icon-theme
|
||||
, hicolor-icon-theme
|
||||
}:
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "cosmic-icons";
|
||||
version = "unstable-2023-08-30";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pop-os";
|
||||
repo = pname;
|
||||
rev = "14d8e2048087be1ad444f9b3ebb75885509f72c6";
|
||||
sha256 = "sha256-WbdgHmTn403x95x9wEYL0T9ksbN+YLzEB2yE0UrF9T0=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ just ];
|
||||
|
||||
justFlags = [
|
||||
"--set"
|
||||
"prefix"
|
||||
(placeholder "out")
|
||||
];
|
||||
|
||||
propagatedBuildInputs = [
|
||||
pop-icon-theme
|
||||
hicolor-icon-theme
|
||||
];
|
||||
|
||||
dontDropIconThemeCache = true;
|
||||
|
||||
meta = with lib; {
|
||||
description = "System76 Cosmic icon theme for Linux";
|
||||
homepage = "https://github.com/pop-os/cosmic-icons";
|
||||
license = with licenses; [
|
||||
cc-by-sa-40
|
||||
];
|
||||
maintainers = with maintainers; [ a-kenji ];
|
||||
};
|
||||
}
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "owl-lisp";
|
||||
version = "0.2.1";
|
||||
version = "0.2.2";
|
||||
|
||||
src = fetchFromGitLab {
|
||||
owner = "owl-lisp";
|
||||
repo = "owl";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-TQOj3DYmzFT4ClZ/sBAOs5XJWRgGTaVQjH+8JotSb1A=";
|
||||
sha256 = "sha256-GfvOkYLo8fgAvGuUa59hDy+sWJSwyntwqMO8TAK/lUo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ which ];
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "brev-cli";
|
||||
version = "0.6.262";
|
||||
version = "0.6.264";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "brevdev";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-JzAhoeEwSqeZOVXZCVw/MmpUMh/ufEa8CdOYc1mvReY=";
|
||||
sha256 = "sha256-bE1tQgFg01FsR/rYgKZCDkhor0NZrHN3ACDbXHcpO6Q=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-IR/tgqh8rS4uN5jSOcopCutbHCKHSU9icUfRhOgu4t8=";
|
||||
|
|
|
@ -222,6 +222,9 @@ buildPythonPackage rec {
|
|||
"test_binops"
|
||||
# These tests are unreliable on aarch64-darwin. See https://github.com/pandas-dev/pandas/issues/38921.
|
||||
"test_rolling"
|
||||
] ++ lib.optional stdenv.is32bit [
|
||||
# https://github.com/pandas-dev/pandas/issues/37398
|
||||
"test_rolling_var_numerical_issues"
|
||||
];
|
||||
|
||||
# Tests have relative paths, and need to reference compiled C extensions
|
||||
|
@ -246,9 +249,8 @@ buildPythonPackage rec {
|
|||
];
|
||||
|
||||
meta = with lib; {
|
||||
# https://github.com/pandas-dev/pandas/issues/14866
|
||||
# pandas devs are no longer testing i686 so safer to assume it's broken
|
||||
broken = stdenv.isi686;
|
||||
# pandas devs no longer test i686, it's commonly broken
|
||||
# broken = stdenv.isi686;
|
||||
changelog = "https://pandas.pydata.org/docs/whatsnew/index.html";
|
||||
description = "Powerful data structures for data analysis, time series, and statistics";
|
||||
downloadPage = "https://github.com/pandas-dev/pandas";
|
||||
|
|
|
@ -1,19 +1,20 @@
|
|||
{ lib
|
||||
, stdenvNoCC
|
||||
, fetchFromGitHub
|
||||
, gitUpdater
|
||||
, makeWrapper
|
||||
, babashka-unwrapped
|
||||
}:
|
||||
|
||||
stdenvNoCC.mkDerivation rec {
|
||||
pname = "bbin";
|
||||
version = "0.1.5";
|
||||
version = "0.2.1";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "babashka";
|
||||
repo = "bbin";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-5hohAr6a8C9jPwhQi3E66onSa6+P9plS939fQM/fl9Q=";
|
||||
sha256 = "sha256-mF8+Fm1vwLUw5l2PqV+vFFlr6y2JpKBwc+J3PdKQ6Fo=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper ];
|
||||
|
@ -33,6 +34,10 @@ stdenvNoCC.mkDerivation rec {
|
|||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
updateScript = gitUpdater { rev-prefix = "v"; };
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/babashka/bbin";
|
||||
description = "Install any Babashka script or project with one command";
|
||||
|
|
|
@ -2,16 +2,16 @@
|
|||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "fblog";
|
||||
version = "4.4.0";
|
||||
version = "4.5.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "brocode";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
hash = "sha256-f4iJ9Fp6Rd1jv2ywRCjvFHjbdCGb116NiQ42fvQUE8A=";
|
||||
hash = "sha256-T0NvcNg2UeUpEf1hjSdoaUkIzCAP29vo6edfeno/oyo=";
|
||||
};
|
||||
|
||||
cargoHash = "sha256-dt8OMlqNxd78sDxMPHG6jHEmF4LuFIMSo0BuQDWOM6o=";
|
||||
cargoHash = "sha256-3/j/TjsQjXFe+rTfCncjoownXzaUiUBUkCXbFc5RM2o=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "A small command-line JSON log viewer";
|
||||
|
|
26
pkgs/development/tools/language-servers/jq-lsp/default.nix
Normal file
26
pkgs/development/tools/language-servers/jq-lsp/default.nix
Normal file
|
@ -0,0 +1,26 @@
|
|||
{ lib
|
||||
, buildGoModule
|
||||
, fetchFromGitHub
|
||||
}:
|
||||
|
||||
buildGoModule {
|
||||
pname = "jq-lsp";
|
||||
version = "unstable-2023-10-27";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wader";
|
||||
repo = "jq-lsp";
|
||||
rev = "b4707e7776a4eb3093b1a7533ebd41368240095a";
|
||||
hash = "sha256-AU4xGweeFx+kSsrqkTtSjl+N77cITF/qvAVZGUZY5SE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-ppQ81uERHBgOr/bm/CoDSWcK+IqHwvcL6RFi0DgoLuw=";
|
||||
|
||||
meta = with lib; {
|
||||
description = "jq language server";
|
||||
homepage = "https://github.com/wader/jq-lsp";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ sysedwinistrator ];
|
||||
mainProgram = "jq-lsp";
|
||||
};
|
||||
}
|
|
@ -1,12 +1,12 @@
|
|||
{ lib, stdenv, fetchzip, jdk, makeWrapper, installShellFiles, coreutils }:
|
||||
{ lib, stdenv, fetchzip, jdk, makeWrapper, installShellFiles, coreutils, testers, gitUpdater }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "spring-boot-cli";
|
||||
version = "2.3.2";
|
||||
version = "3.1.5";
|
||||
|
||||
src = fetchzip {
|
||||
url = "https://repo.spring.io/release/org/springframework/boot/${pname}/${version}.RELEASE/${pname}-${version}.RELEASE-bin.zip";
|
||||
sha256 = "1zqfnxz57234227rp303iwis0mjkkjkpcqnj9jgw78gykjnqdmmq";
|
||||
url = "mirror://maven/org/springframework/boot/${finalAttrs.pname}/${finalAttrs.version}/${finalAttrs.pname}-${finalAttrs.version}-bin.zip";
|
||||
hash = "sha256-5Q6bAuEEBkiRHjX8Ie5FFhPfzwKRdlNIQucTqDEIZuQ=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ makeWrapper installShellFiles ];
|
||||
|
@ -24,6 +24,19 @@ stdenv.mkDerivation rec {
|
|||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
tests.version = testers.testVersion {
|
||||
package = finalAttrs.finalPackage;
|
||||
command = "${lib.getExe finalAttrs.finalPackage} --version";
|
||||
version = "v${finalAttrs.version}";
|
||||
};
|
||||
updateScript = gitUpdater {
|
||||
url = "https://github.com/spring-projects/spring-boot";
|
||||
ignoredVersions = ".*-(RC|M).*";
|
||||
rev-prefix = "v";
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
description = ''
|
||||
CLI which makes it easy to create spring-based applications
|
||||
|
@ -40,9 +53,11 @@ stdenv.mkDerivation rec {
|
|||
a command line tool that runs “spring scripts”.
|
||||
'';
|
||||
homepage = "https://spring.io/projects/spring-boot";
|
||||
changelog = "https://github.com/spring-projects/spring-boot/releases/tag/v${finalAttrs.version}";
|
||||
sourceProvenance = with sourceTypes; [ binaryBytecode ];
|
||||
mainProgram = "spring";
|
||||
license = licenses.asl20;
|
||||
platforms = platforms.all;
|
||||
maintainers = with maintainers; [ moaxcp ];
|
||||
};
|
||||
}
|
||||
})
|
||||
|
|
30
pkgs/servers/sql/postgresql/ext/pg_embedding.nix
Normal file
30
pkgs/servers/sql/postgresql/ext/pg_embedding.nix
Normal file
|
@ -0,0 +1,30 @@
|
|||
{ lib, stdenv, fetchFromGitHub, postgresql }:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "pg_embedding";
|
||||
version = "0.3.6";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "neondatabase";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-NTBxsQB8mR7e/CWwkCEyDiYhi3Nxl/aKgRBwqc0THcI=";
|
||||
};
|
||||
|
||||
buildInputs = [ postgresql ];
|
||||
|
||||
installPhase = ''
|
||||
install -D -t $out/lib *.so
|
||||
install -D -t $out/share/postgresql/extension *.sql
|
||||
install -D -t $out/share/postgresql/extension *.control
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "PostgreSQL extension implementing the HNSW algorithm for vector similarity search";
|
||||
homepage = "https://github.com/neondatabase/pg_embedding";
|
||||
maintainers = with maintainers; [ ivan ];
|
||||
platforms = postgresql.meta.platforms;
|
||||
license = licenses.asl20;
|
||||
broken = versionOlder postgresql.version "12";
|
||||
};
|
||||
}
|
|
@ -18,6 +18,8 @@ self: super: {
|
|||
|
||||
pg_ed25519 = super.callPackage ./ext/pg_ed25519.nix { };
|
||||
|
||||
pg_embedding = super.callPackage ./ext/pg_embedding.nix { };
|
||||
|
||||
pg_hint_plan = super.callPackage ./ext/pg_hint_plan.nix { };
|
||||
|
||||
pg_ivm = super.callPackage ./ext/pg_ivm.nix { };
|
||||
|
|
|
@ -8,16 +8,16 @@
|
|||
|
||||
buildNpmPackage rec {
|
||||
pname = "triton";
|
||||
version = "7.15.4";
|
||||
version = "7.16.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "TritonDataCenter";
|
||||
repo = "node-triton";
|
||||
rev = version;
|
||||
hash = "sha256-RjYJT8Iw9JZzvd2d9zh2CS27qUx12nDi12k+YuTh7tk=";
|
||||
hash = "sha256-JjQAf1pbNraatWvrfys3ydqk3FPOoJ5XWJH/4qgfINk=";
|
||||
};
|
||||
|
||||
npmDepsHash = "sha256-2ZTTgJ4LzmlfFoNNNPrrmna5pbREshdw5x9w5N7nasc=";
|
||||
npmDepsHash = "sha256-E5yJwLSNLkK3OfwJrm59C4qfrd2y3nw/45B68MVBqV8=";
|
||||
|
||||
dontBuild = true;
|
||||
|
||||
|
|
|
@ -2,13 +2,13 @@
|
|||
|
||||
buildGoModule rec {
|
||||
pname = "wander";
|
||||
version = "0.11.1";
|
||||
version = "0.11.2";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "robinovitch61";
|
||||
repo = pname;
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-EIMHCal4jt8tMEfx2Lol2/7IK8uROaNC1ABB+0d0YTg=";
|
||||
sha256 = "sha256-zAvPtTUrSHeIMy9MgJviyMvMJ0Ny5Nkx6oLwWPSc9bE=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-SqDGXV8MpvEQFAkcE1NWvWjdzYsvbO5vA6k+hpY0js0=";
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
stdenv.mkDerivation rec {
|
||||
pname = "ispell";
|
||||
version = "3.4.05";
|
||||
version = "3.4.06";
|
||||
|
||||
src = fetchurl {
|
||||
url = "https://www.cs.hmc.edu/~geoff/tars/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-zwxt7eP9JfraQ3XYasr+WDy5bY/lRt50apLrtt+JVgI=";
|
||||
sha256 = "sha256-F8kWM9TIB1rMUDFjoWRj/FSrHHRTKArTnNPbdceD66Y=";
|
||||
};
|
||||
|
||||
buildInputs = [ bison ncurses ];
|
||||
|
|
|
@ -40456,6 +40456,8 @@ with pkgs;
|
|||
|
||||
j2cli = with python3Packages; toPythonApplication j2cli;
|
||||
|
||||
jq-lsp = callPackage ../development/tools/language-servers/jq-lsp { };
|
||||
|
||||
jquake = callPackage ../applications/misc/jquake { };
|
||||
|
||||
jstest-gtk = callPackage ../tools/misc/jstest-gtk { };
|
||||
|
|
Loading…
Reference in a new issue