Merge staging-next into staging

This commit is contained in:
nixpkgs-ci[bot]
2026-01-10 16:31:33 +00:00
committed by GitHub
44 changed files with 931 additions and 297 deletions
+1 -1
View File
@@ -192,7 +192,7 @@ following are specific to `buildPythonPackage`:
When `__structuredAttrs = false`, the attribute `makeWrapperArgs` is passed as a space-separated string to the build script. Developers should use `prependToVar` or `appendToVar` to add arguments to it in build phases, or use `__structuredAttrs = true` to ensure that `makeWrapperArgs` is passed as a Bash array.
For compatibility purposes,
when `makeWrapperArgs` shell variable is specified as a space-separated string (instead of a Bash array) in the build script, the string content is Bash-expanded before concatenated into the `wrapProgram` command. Still, developers should not rely on such behaviours, but use `__structuredAttrs = true` to specify flags containing spaces (e.g. `makeWrapperArgs = [ "--set" "GREETING" "Hello, world!" ]`), or use -pre and -post phases to specify flags with Bash-expansions (e.g. `preFixup = ''makeWrapperArgs+=(--prefix PATH : "$SOME_PATH")`'').
when `makeWrapperArgs` shell variable is specified as a space-separated string (instead of a Bash array) in the build script, the string content is Bash-expanded before concatenated into the `wrapProgram` command. Still, developers should not rely on such behaviours, but use `__structuredAttrs = true` to specify flags containing spaces (e.g. `makeWrapperArgs = [ "--set" "GREETING" "Hello, world!" ]`), or use -pre and -post phases to specify flags with Bash-expansions (e.g. `preFixup = ''makeWrapperArgs+=(--prefix PATH : "$SOME_PATH")''`).
:::
* `namePrefix`: Prepends text to `${name}` parameter. In case of libraries, this
+60 -43
View File
@@ -12,48 +12,65 @@ let
];
maintainerSetToList =
githubTeam:
lib.mapAttrsToList (
login: id:
maintainersById.${toString id}
or (throw "lib.teams: No maintainer entry for GitHub user @${login} who's part of the @NixOS/${githubTeam} team")
);
in
# TODO: Consider automatically exposing all GitHub teams under `lib.teams`,
# so that no manual PRs are necessary to add such teams anymore
lib.mapAttrs (
name: attrs:
if attrs ? github then
githubTeam: users:
let
githubTeam =
githubTeams.${attrs.github}
or (throw "lib.teams.${name}: Corresponding GitHub team ${attrs.github} not known yet, make sure to create it and wait for the regular team sync");
missingUsers = lib.filter (login: !maintainersById ? ${toString users.${login}}) (
lib.attrNames users
);
in
# TODO: Consider specifying `githubId` in team-list.nix and inferring `github` from it (or even dropping it)
# This would make renames easier because no additional place needs to keep track of them.
# Though in a future where all Nixpkgs GitHub teams are automatically exposed under `lib.teams`,
# this would also not be an issue anymore.
assert lib.assertMsg (!attrs ? githubId)
"lib.teams.${name}: Both `githubId` and `github` is set, but the former is synced from the latter";
assert lib.assertMsg (!attrs ? shortName)
"lib.teams.${name}: Both `shortName` and `github` is set, but the former is synced from the latter";
assert lib.assertMsg (
!attrs ? scope
) "lib.teams.${name}: Both `scope` and `github` is set, but the former is synced from the latter";
assert lib.assertMsg (
!attrs ? members
) "lib.teams.${name}: Both `members` and `github` is set, but the former is synced from the latter";
attrs
// {
githubId = githubTeam.id;
shortName = githubTeam.name;
scope = githubTeam.description;
members =
maintainerSetToList attrs.github githubTeam.maintainers
++ maintainerSetToList attrs.github githubTeam.members;
githubMaintainers = maintainerSetToList attrs.github githubTeam.maintainers;
}
else
attrs
) teams
if missingUsers == [ ] then
lib.mapAttrsToList (login: id: maintainersById.${toString id}) users
else
{
errors = map (
login:
"\n- No maintainer entry for GitHub user @${login} who's part of the @NixOS/${githubTeam} team"
) missingUsers;
};
# TODO: Consider automatically exposing all GitHub teams under `lib.teams`,
# so that no manual PRs are necessary to add such teams anymore
result = lib.mapAttrs (
name: attrs:
if attrs ? github then
let
githubTeam =
githubTeams.${attrs.github}
or (throw "lib.teams.${name}: Corresponding GitHub team ${attrs.github} not known yet, make sure to create it and wait for the regular team sync");
maintainers = maintainerSetToList attrs.github githubTeam.maintainers;
nonMaintainers = maintainerSetToList attrs.github githubTeam.members;
in
# TODO: Consider specifying `githubId` in team-list.nix and inferring `github` from it (or even dropping it)
# This would make renames easier because no additional place needs to keep track of them.
# Though in a future where all Nixpkgs GitHub teams are automatically exposed under `lib.teams`,
# this would also not be an issue anymore.
assert lib.assertMsg (!attrs ? githubId)
"lib.teams.${name}: Both `githubId` and `github` is set, but the former is synced from the latter";
assert lib.assertMsg (!attrs ? shortName)
"lib.teams.${name}: Both `shortName` and `github` is set, but the former is synced from the latter";
assert lib.assertMsg (
!attrs ? scope
) "lib.teams.${name}: Both `scope` and `github` is set, but the former is synced from the latter";
assert lib.assertMsg (
!attrs ? members
) "lib.teams.${name}: Both `members` and `github` is set, but the former is synced from the latter";
if !maintainers ? errors && !nonMaintainers ? errors then
attrs
// {
githubId = githubTeam.id;
shortName = githubTeam.name;
scope = githubTeam.description;
members = maintainers ++ nonMaintainers;
githubMaintainers = maintainers;
}
else
maintainers.errors or [ ] ++ nonMaintainers.errors or [ ]
else
attrs
) teams;
errors = lib.concatLists (
lib.mapAttrsToList (name: value: value) (lib.filterAttrs (name: lib.isList) result)
);
in
if errors == [ ] then result else throw ("lib.teams:" + lib.concatStrings errors)
+7
View File
@@ -1832,6 +1832,13 @@
githubId = 6091755;
name = "Anirrudh Krishnan";
};
anish = {
email = "i@anish.land";
github = "ap-1";
githubId = 67872951;
name = "Anish Pallati";
keys = [ { fingerprint = "2A0A 16F5 E026 BE3B A47F B7A6 841A FB68 9A5B ACCB"; } ];
};
ankhers = {
email = "me@ankhers.dev";
github = "ankhers";
@@ -97,6 +97,8 @@ of pulling the upstream container image from Docker Hub. If you want the old beh
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
- Cinnamon has been updated to 6.6, please check the [upstream announcement](https://www.linuxmint.com/rel_zena_whatsnew.php) for more details.
- `services.frp` now supports multiple instances through `services.frp.instances` to make it possible to run multiple frp clients or servers at the same time.
- `services.openssh` now supports generating host SSH keys by setting `services.openssh.generateHostKeys = true` while leaving `services.openssh.enable` disabled. This is particularly useful for systems that have no need of an SSH daemon but want SSH host keys for other purposes such as using agenix or sops-nix.
+6
View File
@@ -172,6 +172,12 @@ in
# won't fail due to the save dir not existing.
serviceConfig.StateDirectory = "tlp";
};
services.tlp-pd = lib.mkIf cfg.pd.enable {
# have to define again because [Install] in included file not honored
# https://github.com/NixOS/nixpkgs/issues/81138
wantedBy = [ "graphical.target" ];
};
};
};
}
+34 -31
View File
@@ -55,6 +55,10 @@ in
llama-server = lib.getExe' llama-cpp "llama-server";
in
{
# more useful logging output
logLevel = "debug";
logToStdout = "both";
hooks.on_startup.preload = [
"smollm2"
];
@@ -62,14 +66,14 @@ in
models = {
"smollm2" = {
ttl = 10;
cmd = "${llama-server} --port \${PORT} -m ${smollm2-135m} --no-webui --temp 0.2 --top-k 9";
cmd = "${llama-server} --port \${PORT} -m ${smollm2-135m} --alias smollm2 --no-webui --temp 0.2 --top-k 9";
};
"smollm2-group-1" = {
cmd = "${llama-server} --port \${PORT} -m ${smollm2-135m} --no-webui --temp 0.2 --top-k 9 -c 1024";
cmd = "${llama-server} --port \${PORT} -m ${smollm2-135m} --alias smollm2-group-1 --no-webui --temp 0.2 --top-k 9 -c 1024";
};
"smollm2-group-2" = {
proxy = "http://127.0.0.1:5802";
cmd = "${llama-server} --port 5802 -m ${smollm2-135m} --no-webui --temp 0.2 --top-k 9 -c 1024";
cmd = "${llama-server} --port 5802 -m ${smollm2-135m} --alias smollm2-group-2 --no-webui --temp 0.2 --top-k 9 -c 1024";
};
};
groups = {
@@ -115,7 +119,6 @@ in
'-s',
'--fail',
'-H "Content-Type: application/json"',
'-H "Authorization: Bearer no-key"',
"-d '{d}'".format(d=json.dumps(data))
]
return json.loads(machine.succeed('curl {args} http://localhost:8080{route}'.format(args=" ".join(args), route=route)))
@@ -127,7 +130,8 @@ in
machine.succeed('curl --fail http:/localhost:8080/ui/')
with subtest('check is healthy'):
machine.wait_until_succeeds('curl --silent --fail http://localhost:8080/health | grep "OK"')
response_healthy = machine.wait_until_succeeds('curl --silent --fail http://localhost:8080/health')
assert 'OK' in response_healthy, '/health was not OK'
''
+ lib.optionalString useSmollm2-135m ''
@@ -135,10 +139,10 @@ in
with subtest('check `/running` for preloaded smollm2'):
machine.wait_until_succeeds('curl --silent --fail http://localhost:8080/running | grep "smollm2"')
running_response = get_json('/running')
assert len(running_response['running']) == 1
assert len(running_response['running']) == 1, f'running doesn\'t have one entry as expected: {running_response}'
running_model = running_response['running'][0]
assert running_model['model'] == 'smollm2'
assert running_model['state'] == 'ready'
assert running_model['model'] == 'smollm2', f'running model is not smollm2: {running_response}'
assert running_model['state'] == 'ready', f'running smollm2 is not ready: {running_response}'
with subtest('runs smollm2'):
response = None
@@ -155,31 +159,30 @@ in
response = post_json('/v1/chat/completions', data)
with subtest('response is from smollm2'):
assert response['model'] == 'smollm2'
assert response['model'] == 'smollm2', f'response was not from smollm2: {response['model']}'
with subtest('response contains at least one item in "choices"'):
assert len(response['choices']) >= 1
assert len(response['choices']) >= 1, f'response had no choices: {response}'
assistant_choices = None
with subtest('response contains at least one "assistant" message'):
assistant_choices = [c for c in response['choices'] if c['message']['role'] == 'assistant']
assert len(assistant_choices) >= 1
assert len(assistant_choices) >= 1, f'response had no assistant message: {response}'
with subtest('first message (lowercase) starts with "hello"'):
assert assistant_choices[0]['message']['content'].lower()[:5] == 'hello'
assert assistant_choices[0]['message']['content'].lower()[:5] == 'hello', f'response didn\'t start with hello: {response}'
with subtest('check `/running` for just smollm2'):
running_response = get_json('/running')
assert len(running_response['running']) == 1
assert len(running_response['running']) == 1, f'running doesn\'t have one entry as expected: {running_response}'
running_model = running_response['running'][0]
assert running_model['model'] == 'smollm2'
assert running_model['state'] == 'ready'
assert running_model['model'] == 'smollm2', f'running model is not smollm2: {running_response}'
assert running_model['state'] == 'ready', f'running smollm2 is not ready: {running_response}'
with subtest('check `/running` for smollm2 to timeout'):
machine.succeed('curl --silent --fail http://localhost:8080/running | grep "smollm2"')
machine.wait_until_succeeds('curl --silent --fail http://localhost:8080/running | grep -v "smollm2"', timeout=11)
running_response = get_json('/running')
assert len(running_response['running']) == 0
assert len(running_response['running']) == 0, "smollm2 was still running after timeout"
with subtest('runs smollm2-group-1 and smollm2-group-2'):
response_1 = None
@@ -196,25 +199,25 @@ in
response_1 = post_json('/v1/chat/completions', data)
with subtest('response 1 is from smollm2-group-1'):
assert response_1['model'] == 'smollm2-group-1'
assert response_1['model'] == 'smollm2-group-1', f'response was not from smollm2-group-1: {response_1['model']}'
with subtest('response 1 contains at least one item in "choices"'):
assert len(response['choices']) >= 1
assert len(response_1['choices']) >= 1, f'response had no choices: {response_1}'
assistant_choices_1 = None
with subtest('response 1 contains at least one "assistant" message'):
assistant_choices_1 = [c for c in response_1['choices'] if c['message']['role'] == 'assistant']
assert len(assistant_choices_1) >= 1
assert len(assistant_choices_1) >= 1, f'response had no assistant message: {response_1}'
with subtest('first message (lowercase) in response 1 starts with "hello"'):
assert assistant_choices_1[0]['message']['content'].lower()[:5] == 'hello'
assert assistant_choices_1[0]['message']['content'].lower()[:5] == 'hello', f'response didn\'t start with hello: {response_1}'
with subtest('check `/running` for just smollm2-group-1'):
running_response = get_json('/running')
assert len(running_response['running']) == 1
assert len(running_response['running']) == 1, f'running doesn\'t have one entry as expected: {running_response}'
running_model = running_response['running'][0]
assert running_model['model'] == 'smollm2-group-1'
assert running_model['state'] == 'ready'
assert running_model['model'] == 'smollm2-group-1', f'running model is not smollm2-group-1: {running_response}'
assert running_model['state'] == 'ready', f'running smollm2-group-1 is not ready: {running_response}'
response_2 = None
with subtest('send request to smollm2-group-2'):
@@ -230,29 +233,29 @@ in
response_2 = post_json('/v1/chat/completions', data)
with subtest('response 2 is from smollm2-group-2'):
assert response_2['model'] == 'smollm2-group-2'
assert response_2['model'] == 'smollm2-group-2', f'response was not from smollm2-group-2: {response_2['model']}'
with subtest('response 2 contains at least one item in "choices"'):
assert len(response['choices']) >= 1
assert len(response_2['choices']) >= 1, f'response had no choices: {response_2}'
assistant_choices_2 = None
with subtest('response 2 contains at least one "assistant" message'):
assistant_choices_2 = [c for c in response_2['choices'] if c['message']['role'] == 'assistant']
assert len(assistant_choices_2) >= 1
assert len(assistant_choices_2) >= 1, f'response had no assistant message: {response_2}'
with subtest('first message (lowercase) in response 1 starts with "hello"'):
assert assistant_choices_2[0]['message']['content'].lower()[:5] == 'hello'
assert assistant_choices_2[0]['message']['content'].lower()[:5] == 'hello', f'response didn\'t start with hello: {response_2}'
with subtest('check `/running` for both smollm2-group-1 and smollm2-group-2'):
running_response = get_json('/running')['running']
assert len(running_response) == 2
assert len(running_response) == 2, 'expected both in smollm2 group to be running'
assert len([
rm for rm in running_response
if rm['state'] == 'ready' and rm['model'] == 'smollm2-group-1'
]) == 1
]) == 1, f'smollm2-group-1 not in running group and ready {running_response}'
assert len([
rm for rm in running_response
if rm['state'] == 'ready' and rm['model'] == 'smollm2-group-2'
]) == 1
]) == 1, f'smollm2-group-2 not in running group and ready {running_response}'
'';
}
@@ -7,16 +7,16 @@
buildNpmPackage rec {
pname = "all-the-package-names";
version = "2.0.2315";
version = "2.0.2321";
src = fetchFromGitHub {
owner = "nice-registry";
repo = "all-the-package-names";
tag = "v${version}";
hash = "sha256-kVTwrxvNBRVuovgnfjBktgBXgP9tYfl+ivYyS10bPdM=";
hash = "sha256-wkgVhmzfI15GFZ1YDI0MYGdfFIzyfd3ob949kyWA8N4=";
};
npmDepsHash = "sha256-iizozowyq1mVJWLKIC8EPoRX4c1YdyVVWuhLtadNDYI=";
npmDepsHash = "sha256-mikgLEfjusRvmOMjdeENRtC+Vi+yV9zwBIqu3IbLY8A=";
passthru.updateScript = nix-update-script { };
@@ -57,6 +57,7 @@ python3.pkgs.buildPythonApplication rec {
openpyxl
paho-mqtt
panzi-json-logic
playwright
pluggy
price-parser
psutil
+2 -2
View File
@@ -10,7 +10,7 @@ in
buildGoModule rec {
pname = "chroma";
version = "2.20.0";
version = "2.22.0";
# To update:
# nix-prefetch-git --rev v${version} https://github.com/alecthomas/chroma.git > src.json
@@ -21,7 +21,7 @@ buildGoModule rec {
inherit (srcInfo) sha256;
};
vendorHash = "sha256-GiaVgqhhrexSnBWVtQ+/cwdykHVDxR95BFMkrH1s+8Q=";
vendorHash = "sha256-kzlXrIMSa5C4UFt+BiMh6NedelQG49OxYbreeWhCb80=";
modRoot = "./cmd/chroma";
+7 -6
View File
@@ -1,13 +1,14 @@
{
"url": "https://github.com/alecthomas/chroma.git",
"rev": "303b65df3f2d2151cee24bcf9f9b625db474ef51",
"date": "2025-08-04T13:55:06+10:00",
"path": "/nix/store/1f8p33h1srs9knj6sn6mc5rf0wcybf4g-chroma",
"sha256": "05w4hnfcxqdlsz7mkc0m3jbp1aj67wzyhq5jh8ldfgnyjnlafia3",
"hash": "sha256-Q0WnqJXePtcogrJg6D8/RqpwlxwVsFnP17ThzpyFhBc=",
"rev": "467c878aa553cdb4b0d486a534ea744f6ac7ef5e",
"date": "2026-01-10T09:37:30+11:00",
"path": "/nix/store/qkfgjvpw8j5rkfgh687kxzkv8ac9apba-chroma",
"sha256": "1wlvxxlbwaq963rkr9fwxc6qwa77m49icq2gdzf46w7wdc3cygpm",
"hash": "sha256-9T7PBmv8cEPcb09gFhOp5yiODevcpTzzMAkrvmjvm/I=",
"fetchLFS": false,
"fetchSubmodules": false,
"deepClone": false,
"fetchTags": false,
"leaveDotGit": false
"leaveDotGit": false,
"rootDir": ""
}
+11
View File
@@ -0,0 +1,11 @@
--- a/lgmon3/src/common/libcnnet2_type.h
+++ b/lgmon3/src/common/libcnnet2_type.h
@@ -48,7 +48,7 @@
} CNNET2_SETTING_FLAGS;
#ifndef __cplusplus
-typedef char bool;
+#include <stdbool.h>
#endif
typedef struct {
+120 -133
View File
@@ -1,174 +1,161 @@
{
stdenv,
lib,
fetchzip,
autoconf,
automake,
autoPatchelfHook,
cups,
fetchpatch2,
fetchzip,
glib,
libxml2,
libusb1,
lib,
libtool,
withDebug ? false,
libusb1,
libxml2,
stdenv,
}:
let
blobDir = "com/libs_bin_${stdenv.hostPlatform.uname.processor}";
in
stdenv.mkDerivation {
pname = "cnijfilter2";
version = "6.40";
version = "6.90-1";
src = fetchzip {
url = "https://gdlp01.c-wss.com/gds/1/0100011381/01/cnijfilter2-source-6.40-1.tar.gz";
sha256 = "3RoG83jLOsdTEmvUkkxb7wa8oBrJA4v1mGtxTGwSowU=";
url = "https://gdlp01.c-wss.com/gds/9/0100012819/01/cnijfilter2-source-6.90-1.tar.gz";
hash = "sha256-kvMEC2IR448JAM8unoLzF01GDlWhTSk/gi6giHI0u0E=";
};
patches = [
./stdlib.patch
./bool.patch
# See:
# - https://github.com/NixOS/nixpkgs/pull/180681#issuecomment-1192304711
# - https://bugs.gentoo.org/723186
(fetchpatch2 {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/net-print/cnijfilter2/files/cnijfilter2-5.80-fno-common.patch?id=24688d64544b43f2c14be54531ad8764419dde09";
hash = "sha256-ygAfS68100ducWsxeA2Q2eoE8cBFMVO7KiXn/RGIHFw=";
})
];
nativeBuildInputs = [
automake
autoconf
];
buildInputs = [
cups
autoPatchelfHook
glib
libxml2
libusb1
libtool
];
patches = [
./patches/get_protocol.patch
./patches/add_missing_import.patch
buildInputs = [
cups
libusb1
libxml2
];
# lgmon3's --enable-libdir flag is used solely for specifying in which
# directory the cnnnet.ini cache file should reside.
# NixOS uses /var/cache/cups, and given the name, it seems like a reasonable
# place to put the cnnet.ini file, and thus we do so.
#
# Note that the drivers attempt to dlopen
# $out/lib/cups/filter/libcnbpcnclapicom2.so
postPatch = ''
substituteInPlace lgmon3/src/Makefile.am \
--replace-fail /usr/include/libusb-1.0 ${lib.getDev libusb1}/include/libusb-1.0
'';
preConfigure = ''
for i in cmdtocanonij2 cmdtocanonij3 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg; do
cd $i
env NOCONFIGURE=1 ./autogen.sh
cd ..
done
'';
configurePhase = ''
runHook preConfigure
for i in cmdtocanonij2 cmdtocanonij3 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg; do
cd $i
configureFlags="--build=${stdenv.buildPlatform.config}"
configureFlags="$configureFlags --host=${stdenv.hostPlatform.config}"
configureFlags="$configureFlags --target=${stdenv.targetPlatform.config}"
configureFlags="$configureFlags --prefix=$out --disable-dependency-tracking --disable-static"
if [ $i = cnijbe2 -o $i = lgmon3 -o $i = rastertocanonij ]; then
configureFlags="$configureFlags --enable-progpath=$out/bin"
fi
if [ $i = lgmon3 ]; then
# lgmon3's --enable-libdir flag is used solely for specifying in which
# directory the cnnnet.ini cache file should reside.
# NixOS uses /var/cache/cups, and given the name, it seems like a reasonable
# place to put the cnnet.ini file, and thus we do so.
configureFlags="$configureFlags --enable-libpath=/var/cache/cups"
fi
./configure $configureFlags
cd ..
done
runHook postConfigure
'';
buildPhase = ''
mkdir -p $out/lib
cp com/libs_bin_x86_64/* $out/lib
mkdir -p $out/lib/cups/filter
ln -s $out/lib/libcnbpcnclapicom2.so $out/lib/cups/filter
export NIX_LDFLAGS="$NIX_LDFLAGS -L$out/lib"
''
+ lib.optionalString withDebug ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -D__DEBUG__ -DDEBUG_LOG"
''
+ ''
(
cd lgmon3
substituteInPlace src/Makefile.am \
--replace /usr/include/libusb-1.0 \
${libusb1.dev}/include/libusb-1.0
./autogen.sh --prefix=$out --enable-progpath=$out/bin \
--datadir=$out/share \
--enable-libdir=/var/cache/cups
runHook preBuild
for i in cmdtocanonij2 cmdtocanonij3 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg; do
cd $i
make
)
(
cd cmdtocanonij2
./autogen.sh --prefix=$out
make
)
(
cd cmdtocanonij3
./autogen.sh --prefix=$out
make
)
(
cd cnijbe2
substituteInPlace src/Makefile.am \
--replace "/usr/lib/cups/backend" \
"$out/lib/cups/backend"
./autogen.sh --prefix=$out --enable-progpath=$out/bin
make
)
(
cd rastertocanonij
./autogen.sh --prefix=$out --enable-progpath=$out/bin
make
)
(
cd tocanonij
./autogen.sh --prefix=$out --enable-progpath=$out/bin
make
)
(
cd tocnpwg
./autogen.sh --prefix=$out --enable-progpath=$out/bin
make
)
cd ..
done
runHook postBuild
'';
installPhase = ''
(
cd lgmon3
runHook preInstall
for i in cmdtocanonij2 cmdtocanonij3 cnijbe2 lgmon3 rastertocanonij tocanonij tocnpwg; do
cd $i
make install
)
(
cd cmdtocanonij2
make install
)
(
cd cmdtocanonij3
make install
)
(
cd cnijbe2
make install
)
(
cd rastertocanonij
make install
)
(
cd tocanonij
make install
)
(
cd tocnpwg
make install
)
mkdir -p $out/share/cups/model
cp ppd/*.ppd $out/share/cups/model
cd ..
done
runHook postInstall
'';
postInstall = ''
install -Dm755 -t $out/lib ${blobDir}/*
install -Dm644 -t $out/share/cups/model ppd/*.ppd
'';
runtimeDependencies = [ (placeholder "out") ];
env = {
NIX_CFLAGS_COMPILE = "-I${lib.getDev libxml2}/include/libxml2";
NIX_LDFLAGS = "-L../../${blobDir}";
};
meta = {
description = "Canon InkJet printer drivers for many Pixma series printers";
longDescription = ''
Canon InjKet printer drivers for series E200, E300, E3100, E3300, E4200, E450, E470, E480,
G3000, G3010, G4000, G4010, G5000, G5080, G6000, G6050, G6080, G7000, G7050, G7080, GM2000,
GM2080, GM4000, GM4080, iB4000, iB4100, iP110, MB2000, MB2100, MB2300, MB2700, MB5000,
MB5100, MB5300, MB5400, MG2900, MG3000, MG3600, MG5600, MG5700, MG6600, MG6700, MG6800,
MG6900, MG7500, MG7700, MX490, TR4500, TR703, TR7500, TR7530, TR8500, TR8530, TR8580, TR9530,
TS200, TS300, TS3100, TS3300, TS5000, TS5100, TS5300, TS5380, TS6000, TS6100, TS6130, TS6180,
TS6200, TS6230, TS6280, TS6300, TS6330, TS6380, TS700, TS708, TS7330, TS8000, TS8100, TS8130,
TS8180, TS8200, TS8230, TS8280, TS8300, TS8330, TS8380, TS9000, TS9100, TS9180, TS9500,
TS9580, XK50, XK60, XK70, XK80.
Canon InkJet printer drivers for series BX110, E200, E300, E460, E470,
E480, E3100, E3300, E3400, E3600, E4200, E4500, G500, G600, G1020, G1030,
G2020, G2030, G2060, G2070, G3000, G3010, G3020, G3030, G3060, G3070,
G3080, G3090, G4000, G4010, G4070, G4080, G4090, G5000, G5080, G6000,
G6080, G7000, G7080, GM2000, GM2080, GM4000, GM4080, GX1000, GX2000,
GX3000, GX4000, GX4000i, GX5000, GX5100, GX5500, GX6000, GX6100, GX6500,
GX7000, GX7100, GX7100i, iB4000, iB4100, iP110, MB2000, MB2100, MB2300,
MB2700, MB5000, MB5100, MB5300, MB5400, MG2900, MG3000, MG3600, MG5600,
MG5700, MG6600, MG6800, MG6900, MG7500, MG7700, MX490, TR150, TR160,
TR703, TR4500, TR4600, TR4700, TR7000, TR7100, TR7500, TR7530, TR7600,
TR7800, TR8500, TR8530, TR8580, TR8600, TR8630, TR9530, TS200, TS300,
TS700, TS708, TS2400, TS2600, TS3100, TS3300, TS3400, TS3500, TS3600,
TS3700, TS4000, TS4100i, TS4300, TS5000, TS5100, TS5300, TS5350i, TS5380,
TS5400, TS5500, TS5630, TS6000, TS6100, TS6130, TS6180, TS6200, TS6230,
TS6280, TS6300, TS6330, TS6380, TS6400, TS6500, TS6500i, TS6630, TS6730,
TS7330, TS7400, TS7430, TS7450i, TS7500i, TS7530, TS7600i, TS7630, TS7700,
TS7700A, TS7700i, TS8000, TS8100, TS8130, TS8180, TS8200, TS8230, TS8280,
TS8300, TS8330, TS8380, TS8430, TS8530, TS8630, TS8700, TS8800, TS8930,
TS9000, TS9100, TS9180, TS9500, TS9580, XK50, XK60, XK70, XK80, XK90,
XK100, XK110, XK120, XK130, XK140, XK500, XK510.
'';
homepage = "https://hk.canon/en/support/0101048401/1";
downloadPage = "https://hk.canon/en/support/0101281901";
license = lib.licenses.unfree;
sourceProvenance = with lib.sourceTypes; [
fromSource
binaryNativeCode
];
maintainers = with lib.maintainers; [ prince213 ];
platforms = [
"aarch64-linux"
"i686-linux"
"mips64el-linux"
"x86_64-linux"
];
maintainers = [ ];
};
}
@@ -1,14 +0,0 @@
# Resolves the compilation issue reported at https://github.com/NixOS/nixpkgs/pull/180681#issuecomment-1192304711
# An identical issue was previously reported in Gentoo: https://bugs.gentoo.org/723186
# This patch is taken from the solution of Alfredo Tupone (https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=24688d64544b43f2c14be54531ad8764419dde09)
--- a/lgmon3/src/cnijlgmon3.c 2022-07-22 12:44:32.194641628 +0100
+++ b/lgmon3/src/cnijlgmon3.c 2022-07-22 12:43:53.954817724 +0100
@@ -55,7 +55,7 @@
int (*GET_STATUS)(char *, int, int *, int * , char *);
int (*GET_STATUS2)(char *, int, char *, int *, int * , char *, char *);
int (*GET_STATUS2_MAINTENANCE)(char *, int, char *, int *, int * , char *, char *);
-int (*GET_PROTOCOL)(char *, size_t);
+static int (*GET_PROTOCOL)(char *, size_t);
int main(int argc, char *argv[])
@@ -1,5 +1,3 @@
diff --git a/lgmon3/src/keytext.c b/lgmon3/src/keytext.c
index 8c15ff8..b80bbe5 100644
--- a/lgmon3/src/keytext.c
+++ b/lgmon3/src/keytext.c
@@ -37,6 +37,7 @@
+9 -2
View File
@@ -6,7 +6,8 @@
cacert,
openssl,
rustfmt,
nix-update-script,
makeWrapper,
wasm-bindgen-cli_0_2_106,
testers,
dioxus-cli,
withTelemetry ? false,
@@ -35,6 +36,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
nativeBuildInputs = [
pkg-config
cacert
makeWrapper
];
buildInputs = [
@@ -53,7 +55,6 @@ rustPlatform.buildRustPackage (finalAttrs: {
];
passthru = {
updateScript = nix-update-script { };
tests = {
version = testers.testVersion {
package = dioxus-cli;
@@ -65,6 +66,11 @@ rustPlatform.buildRustPackage (finalAttrs: {
};
};
postInstall = ''
wrapProgram $out/bin/dx \
--prefix PATH : ${lib.makeBinPath [ wasm-bindgen-cli_0_2_106 ]}
'';
meta = {
description = "CLI for building fullstack web, desktop, and mobile apps with a single codebase.";
homepage = "https://dioxus.dev";
@@ -75,6 +81,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
];
maintainers = with lib.maintainers; [
cathalmullan
anish
];
platforms = lib.platforms.all;
mainProgram = "dx";
+1 -2
View File
@@ -23,8 +23,7 @@ python3Packages.buildPythonPackage {
pyusb
pyserial
docopt
pylzma
pycryptodome
pycryptodomex
lxml
colorama
capstone
@@ -5,20 +5,21 @@
fetchFromGitHub,
lib,
makeDesktopItem,
nix-update-script,
}:
buildNpmPackage rec {
pname = "google-chat-linux";
version = "5.29.23-1";
version = "5.39.24-1";
src = fetchFromGitHub {
owner = "squalou";
repo = "google-chat-linux";
tag = version;
hash = "sha256-JBjxZUs0HUgAkJJBYhNv2SHjpBtAcP09Ah4ATPwpZsQ=";
hash = "sha256-yQBnqGyTCUr/t+PCCSTsUhKvlT5wV/F/OvCXrgeiceA=";
};
npmDepsHash = "sha256-7lKWbXyDpYh1sP9LAV/oA7rfpckSbIucwKT21vBrJ3Y=";
npmDepsHash = "sha256-8eZAn8zIDcMDKi30AiG1di4T/3xVoCewJ/e4qf7n9nY=";
dontNpmBuild = true;
nativeBuildInputs = [
@@ -56,6 +57,8 @@ buildNpmPackage rec {
})
];
passthru.updateScript = nix-update-script { };
meta = {
description = "Electron-base client for Google Hangouts Chat";
homepage = "https://github.com/squalou/google-chat-linux";
+3 -3
View File
@@ -17,7 +17,7 @@
withDocumentation ? stdenv.buildPlatform.canExecute stdenv.hostPlatform,
}:
let
version = "1.45.0";
version = "1.46.0";
in
rustPlatform.buildRustPackage {
inherit version;
@@ -34,10 +34,10 @@ rustPlatform.buildRustPackage {
owner = "casey";
repo = "just";
tag = version;
hash = "sha256-D+xMPpn8JLX88eIO9zY051K81KPGBhcFvhBIwuTDymk=";
hash = "sha256-NE54LKS2bYBfQL+yLJPaG4iF7EiJfDqBfnsrlPo1+OE=";
};
cargoHash = "sha256-zokI+mWyI/HmzP7GuO59usEsscl3tpeyhNT2tXmLny8=";
cargoHash = "sha256-yyaJAWp6luizA/aQuUGhdxRX2Ofri4CeLIO3/ndSCzc=";
nativeBuildInputs =
lib.optionals (installShellCompletions || installManPages) [ installShellFiles ]
+13
View File
@@ -0,0 +1,13 @@
diff --git a/driver/usb/usb_device_interface.h b/driver/usb/usb_device_interface.h
index 238bca9..54f2f6e 100644
--- a/driver/usb/usb_device_interface.h
+++ b/driver/usb/usb_device_interface.h
@@ -15,6 +15,8 @@
#ifndef DARWINN_DRIVER_USB_USB_DEVICE_INTERFACE_H_
#define DARWINN_DRIVER_USB_USB_DEVICE_INTERFACE_H_
+#include <cstdint>
+
#include "port/array_slice.h"
#include "port/integral_types.h"
#include "port/status.h"
+1
View File
@@ -42,6 +42,7 @@ stdenv.mkDerivation {
hash = "sha256-mMODpQmikfXtsQvtgh26cy97EiykYNLngSjidOBt/3I=";
})
./fix-abseil-20250512.0.patch
./cstdint.patch
];
postPatch = ''
+6 -1
View File
@@ -84,6 +84,8 @@ let
"arm64"
else if stdenv.hostPlatform.isx86_32 then
"x86"
else if (stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian) then
"ppc64le"
else
stdenv.hostPlatform.parsed.cpu.name;
@@ -97,7 +99,10 @@ let
stdenv.hostPlatform.parsed.kernel.name;
isGeneric =
(stdenv.hostPlatform.isPower && stdenv.hostPlatform.isLittleEndian)
(
stdenv.hostPlatform.isPower
&& !(stdenv.hostPlatform.isPower64 && stdenv.hostPlatform.isLittleEndian)
)
|| stdenv.hostPlatform.parsed.cpu.name == "armv6l"
|| stdenv.hostPlatform.isLoongArch64
|| stdenv.hostPlatform.isRiscV;
+3 -3
View File
@@ -17,7 +17,7 @@ let
in
buildGoModule (finalAttrs: {
pname = "llama-swap";
version = "176";
version = "182";
outputs = [
"out"
@@ -28,7 +28,7 @@ buildGoModule (finalAttrs: {
owner = "mostlygeek";
repo = "llama-swap";
tag = "v${finalAttrs.version}";
hash = "sha256-nfkuaiEITOmpkiLft3iNW1VUexHwZ36c8gwcQKGANbQ=";
hash = "sha256-w/VQS8uCpgniwLiJsH/8IG/AGasRxjCv7fADTfpvWLw=";
# populate values that require us to use git. By doing this in postFetch we
# can delete .git afterwards and maintain better reproducibility of the src.
leaveDotGit = true;
@@ -41,7 +41,7 @@ buildGoModule (finalAttrs: {
'';
};
vendorHash = "sha256-/EbFyuCVFxHTTO0UwSV3B/6PYUpudxB2FD8nNx1Bb+M=";
vendorHash = "sha256-XiDYlw/byu8CWvg4KSPC7m8PGCZXtp08Y1velx4BR8U=";
passthru.ui = callPackage ./ui.nix { llama-swap = finalAttrs.finalPackage; };
+2 -1
View File
@@ -87,7 +87,8 @@ stdenv.mkDerivation rec {
install_name_tool -add_rpath ${mesa_glu.out}/lib $out/lib/magic/tcl/magicexec
'';
env.NIX_CFLAGS_COMPILE = "-Wno-implicit-function-declaration";
# gnu89 is needed for GCC 15 that is more strict about K&R style prototypes
env.NIX_CFLAGS_COMPILE = "-std=gnu89 -Wno-implicit-function-declaration";
env.NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isDarwin "-headerpad_max_install_names";
meta = {
+3 -3
View File
@@ -6,16 +6,16 @@
}:
rustPlatform.buildRustPackage rec {
pname = "mdbook-variables";
version = "0.2.4";
version = "0.4.0";
src = fetchFromGitLab {
owner = "tglman";
repo = "mdbook-variables";
rev = version;
hash = "sha256-whvRCV1g2avKegfQpMgYi+E6ETxT2tQqVS2SWRpAqF8=";
hash = "sha256-zverdL4Mrnn/8pxQk6qVyidPJNxnrmaETt+XTp64Rns=";
};
cargoHash = "sha256-WLHXeYNfALa7GfFAHEO9PAlFKB2lbDefgAYCn6G0U6Y=";
cargoHash = "sha256-/zp5Qj2NUVpQqKAFgQP4QatYzg/hMJQE08ANacvNPko=";
nativeInstallCheckInputs = [
versionCheckHook
+2 -2
View File
@@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "mpv-mpris";
version = "1.1";
version = "1.2";
src = fetchFromGitHub {
owner = "hoyon";
repo = "mpv-mpris";
rev = version;
hash = "sha256-vZIO6ILatIWa9nJYOp4AMKwvaZLahqYWRLMDOizyBI0=";
hash = "sha256-Q2kNaXZtI6U+x2f00x5CiHZq4o64xFTNC/3W4IiP0+4=";
};
passthru.updateScript = gitUpdater { };
+3 -3
View File
@@ -9,13 +9,13 @@
}:
let
pname = "open-webui";
version = "0.6.43";
version = "0.7.1";
src = fetchFromGitHub {
owner = "open-webui";
repo = "open-webui";
tag = "v${version}";
hash = "sha256-gkCG2SIYCF89IFi6neslvZNFyoC6PrMM2Vda/a3mc0k=";
hash = "sha256-pjrzZhY886LjkUnbG58r9j/ynq1fjTNCCqLmCPKoeek=";
};
frontend = buildNpmPackage rec {
@@ -32,7 +32,7 @@ let
url = "https://github.com/pyodide/pyodide/releases/download/${pyodideVersion}/pyodide-${pyodideVersion}.tar.bz2";
};
npmDepsHash = "sha256-bw0f6jlA09s7Ptd8+q8RHRFZgnyE+ecsfY30XdKlyRM=";
npmDepsHash = "sha256-useP5o3Hx9I7WY0j+idKaa4KHx2w69/Us5ezN/v2+Ns=";
# See https://github.com/open-webui/open-webui/issues/15880
npmFlags = [
+3 -3
View File
@@ -14,12 +14,12 @@
}:
let
pname = "opencode";
version = "1.1.8";
version = "1.1.11";
src = fetchFromGitHub {
owner = "anomalyco";
repo = "opencode";
tag = "v${version}";
hash = "sha256-i0PYcI3qM52jcl72dqHxiBUQH5n4oBXTlxJqvWNS8CQ=";
hash = "sha256-PZB9XsuUr8EzXDhlzM3tKANFAXc19RheIyxSXjLuZrM=";
};
node_modules = stdenvNoCC.mkDerivation {
@@ -71,7 +71,7 @@ let
# NOTE: Required else we get errors that our fixed-output derivation references store paths
dontFixup = true;
outputHash = "sha256-NbKp1XXTirox/UnBSn/VfLtPXnjrDJxU94MaAh22wk4=";
outputHash = "sha256-vRIWQt02VljcoYG3mwJy8uCihSTB/OLypyw+vt8LuL8=";
outputHashAlgo = "sha256";
outputHashMode = "recursive";
};
+2 -2
View File
@@ -12,13 +12,13 @@
buildGoModule rec {
pname = "orbiton";
version = "2.70.4";
version = "2.70.5";
src = fetchFromGitHub {
owner = "xyproto";
repo = "orbiton";
tag = "v${version}";
hash = "sha256-cdaYD6PyOjgBo83eWD2+YWQj5uJzmeHDo67dlA7Pj1g=";
hash = "sha256-w2t3IxWB8F2QXB0caTP/kTGum6zec5BRxK9+kYwAcDY=";
};
vendorHash = null;
+3 -3
View File
@@ -17,11 +17,11 @@
stdenv.mkDerivation rec {
pname = "photoqt";
version = "4.9.2";
version = "5.0";
src = fetchurl {
url = "https://photoqt.org/pkgs/photoqt-${version}.tar.gz";
hash = "sha256-kPhxWekecE57wY45qLy/EnfmjFLn0cEmZ+4qWHGbL4U=";
url = "https://photoqt.org/downloads/source/photoqt-${version}.tar.gz";
hash = "sha256-BSe95dwzBCVp5jHIX6xh9BZ4OgPl88YUxt0iTSTnx18=";
};
nativeBuildInputs = [
+5 -1
View File
@@ -19,7 +19,11 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-Qu7RM6Ew4hEmoIXO0utDDVmjmNX3yt3FxWZXCQ/Xjp4=";
};
postPatch = lib.optionalString stdenv.hostPlatform.isDarwin ''
postPatch = ''
substituteInPlace include/unit_test_util.h \
--replace-fail "typedef int bool;" "#include <stdbool.h>"
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace Makefile --replace-fail \
".so" \
".dylib"
+10
View File
@@ -4,6 +4,8 @@
fetchFromGitHub,
testers,
svu,
installShellFiles,
stdenv,
}:
buildGoModule rec {
@@ -31,6 +33,14 @@ buildGoModule rec {
rm internal/git/git_test.go
'';
nativeBuildInputs = [ installShellFiles ];
postInstall = lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
installShellCompletion --cmd svu \
--bash <($out/bin/svu completion bash) \
--fish <($out/bin/svu completion fish) \
--zsh <($out/bin/svu completion zsh)
'';
passthru.tests.version = testers.testVersion { package = svu; };
meta = {
+3 -3
View File
@@ -18,16 +18,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "uv";
version = "0.9.22";
version = "0.9.24";
src = fetchFromGitHub {
owner = "astral-sh";
repo = "uv";
tag = finalAttrs.version;
hash = "sha256-6LdOzNnmPPpfoi3/QtsZgiAb39ClZVRpNqzZ0w/gQrE=";
hash = "sha256-ZgZhEgSzCje7penbL1bgSyt2zu42dar9v9RBQUMv96U=";
};
cargoHash = "sha256-2u9OAFoSD4XvEAG4bzQSGFKnMI3XljLL8dgJdk4hlf0=";
cargoHash = "sha256-D00LMdCQ3j5Uguc6aU1TYkSezy35r0+yRtI17HxAX64=";
buildInputs = [
rust-jemalloc-sys
@@ -8,16 +8,16 @@
buildGoModule rec {
pname = "woodpecker-plugin-git";
version = "2.7.0";
version = "2.8.0";
src = fetchFromGitHub {
owner = "woodpecker-ci";
repo = "plugin-git";
tag = version;
hash = "sha256-5P3YCMOrF7X+2ExI4Y/T6PJFyGqxI8gsKIAPJjM0zpk=";
hash = "sha256-fUGTO60ZgMt8t/O4Cb3trSMmTFhKBxG8sjft+hrmUjQ=";
};
vendorHash = "sha256-ZBGDFgS8lYNCBrQRq3/JX3JRaDEJPaRbr9P4grlbG7Q=";
vendorHash = "sha256-FbtktDU6Rl3lu3U2vu20M+hz1HdLMu1krUcqXX3HfeA=";
env.CGO_ENABLED = "0";
@@ -1657,7 +1657,7 @@ builtins.intersectAttrs super {
overrideCabal
(old: {
passthru = old.passthru or { } // {
nixPackage = pkgs.nixVersions.nix_2_28;
nixPackage = pkgs.nixVersions.nix_2_31;
};
})
(
@@ -0,0 +1,24 @@
{
mkDerivation,
base,
Cabal,
containers,
lens,
lib,
process,
}:
mkDerivation {
pname = "cabal-pkg-config-version-hook";
version = "0.1.1.0";
sha256 = "18l87dcq2854vqchg21bvv85sdm4126nbk8sj9ilr5819qslk26f";
libraryHaskellDepends = [
base
Cabal
containers
lens
process
];
homepage = "https://github.com/hercules-ci/hercules-ci-agent/tree/master/cabal-pkg-config-version-hook#readme";
description = "Make Cabal aware of pkg-config package versions";
license = lib.licensesSpdx."BSD-3-Clause";
}
@@ -0,0 +1,255 @@
{
mkDerivation,
aeson,
async,
attoparsec,
base,
base64-bytestring,
bifunctors,
binary,
binary-conduit,
boost,
bytestring,
Cabal,
cabal-pkg-config-version-hook,
cachix,
cachix-api,
conduit,
conduit-extra,
containers,
directory,
dlist,
exceptions,
file-embed,
filepath,
hercules-ci-api,
hercules-ci-api-agent,
hercules-ci-api-core,
hercules-ci-cnix-expr,
hercules-ci-cnix-store,
hostname,
hspec,
hspec-discover,
http-client,
http-client-tls,
http-conduit,
HUnit,
inline-c,
inline-c-cpp,
katip,
lens,
lens-aeson,
lib,
lifted-async,
lifted-base,
monad-control,
mtl,
network,
network-uri,
nix,
optparse-applicative,
process,
process-extras,
profunctors,
protolude,
QuickCheck,
safe-exceptions,
scientific,
servant,
servant-auth-client,
servant-client,
servant-client-core,
stm,
tagged,
temporary,
text,
time,
tls,
tomland,
transformers,
transformers-base,
unbounded-delays,
unix,
unliftio,
unliftio-core,
unordered-containers,
uuid,
vector,
websockets,
wuss,
}:
mkDerivation {
pname = "hercules-ci-agent";
version = "0.10.8";
sha256 = "0f8d5xfix0bsxdvanf6zn1l2qs80aivva86qf3j1clfr2dny4g59";
isLibrary = true;
isExecutable = true;
setupHaskellDepends = [
base
Cabal
cabal-pkg-config-version-hook
];
libraryHaskellDepends = [
aeson
async
base
binary
binary-conduit
bytestring
conduit
containers
directory
dlist
exceptions
file-embed
filepath
hercules-ci-api-agent
hercules-ci-api-core
hercules-ci-cnix-expr
hercules-ci-cnix-store
katip
lens
lens-aeson
lifted-async
lifted-base
monad-control
mtl
network
network-uri
process
process-extras
protolude
safe-exceptions
stm
tagged
temporary
text
time
tls
transformers
transformers-base
unbounded-delays
unix
unliftio
unliftio-core
uuid
vector
websockets
wuss
];
executableHaskellDepends = [
aeson
async
attoparsec
base
base64-bytestring
bifunctors
binary
binary-conduit
bytestring
cachix
cachix-api
conduit
conduit-extra
containers
directory
dlist
exceptions
filepath
hercules-ci-api
hercules-ci-api-agent
hercules-ci-api-core
hercules-ci-cnix-expr
hercules-ci-cnix-store
hostname
http-client
http-client-tls
http-conduit
inline-c
inline-c-cpp
katip
lens
lens-aeson
lifted-async
lifted-base
monad-control
mtl
network
network-uri
optparse-applicative
process
process-extras
profunctors
protolude
safe-exceptions
scientific
servant
servant-auth-client
servant-client
servant-client-core
stm
temporary
text
time
tomland
transformers
transformers-base
unix
unliftio
unliftio-core
unordered-containers
uuid
vector
websockets
wuss
];
executableSystemDepends = [ boost ];
executablePkgconfigDepends = [ nix ];
testHaskellDepends = [
aeson
async
attoparsec
base
bifunctors
binary
binary-conduit
bytestring
conduit
containers
exceptions
filepath
hercules-ci-api-agent
hercules-ci-api-core
hercules-ci-cnix-store
hspec
HUnit
katip
lens
lens-aeson
lifted-async
lifted-base
monad-control
mtl
process
profunctors
protolude
QuickCheck
safe-exceptions
scientific
stm
tagged
temporary
text
tomland
transformers
transformers-base
unliftio-core
unordered-containers
uuid
vector
];
testToolDepends = [ hspec-discover ];
homepage = "https://docs.hercules-ci.com";
description = "Runs Continuous Integration tasks on your machines";
license = lib.licensesSpdx."Apache-2.0";
}
@@ -0,0 +1,132 @@
{
mkDerivation,
aeson,
aeson-pretty,
async,
atomic-write,
attoparsec,
base,
bytestring,
conduit,
containers,
data-has,
directory,
exceptions,
filepath,
hercules-ci-agent,
hercules-ci-api,
hercules-ci-api-agent,
hercules-ci-api-core,
hercules-ci-cnix-expr,
hercules-ci-cnix-store,
hercules-ci-optparse-applicative,
hostname,
hspec,
http-client,
http-client-tls,
http-types,
inline-c-cpp,
katip,
lens,
lens-aeson,
lib,
lifted-base,
monad-control,
network-uri,
process,
protolude,
QuickCheck,
retry,
rio,
safe-exceptions,
servant,
servant-auth-client,
servant-client,
servant-client-core,
servant-conduit,
temporary,
text,
tls,
transformers,
transformers-base,
unix,
unliftio,
unliftio-core,
unordered-containers,
uuid,
}:
mkDerivation {
pname = "hercules-ci-cli";
version = "0.3.9";
sha256 = "091j83ac4byr6vbmd0wq1b86p23d1z7sn5ls6w24l72dp8fvfjjp";
isLibrary = true;
isExecutable = true;
libraryHaskellDepends = [
aeson
aeson-pretty
async
atomic-write
attoparsec
base
bytestring
conduit
containers
data-has
directory
exceptions
filepath
hercules-ci-agent
hercules-ci-api
hercules-ci-api-agent
hercules-ci-api-core
hercules-ci-cnix-expr
hercules-ci-cnix-store
hercules-ci-optparse-applicative
hostname
http-client
http-client-tls
http-types
inline-c-cpp
katip
lens
lens-aeson
lifted-base
monad-control
network-uri
process
protolude
retry
rio
safe-exceptions
servant
servant-auth-client
servant-client
servant-client-core
servant-conduit
temporary
text
tls
transformers
transformers-base
unix
unliftio
unliftio-core
unordered-containers
uuid
];
executableHaskellDepends = [ base ];
testHaskellDepends = [
aeson
base
bytestring
containers
hspec
protolude
QuickCheck
unordered-containers
];
homepage = "https://docs.hercules-ci.com";
description = "The hci command for working with Hercules CI";
license = lib.licenses.asl20;
mainProgram = "hci";
}
@@ -0,0 +1,82 @@
{
mkDerivation,
aeson,
base,
boost,
bytestring,
Cabal,
cabal-pkg-config-version-hook,
conduit,
containers,
directory,
exceptions,
filepath,
hercules-ci-cnix-store,
hspec,
hspec-discover,
inline-c,
inline-c-cpp,
lib,
nix,
process,
protolude,
QuickCheck,
scientific,
temporary,
text,
unliftio,
unordered-containers,
vector,
}:
mkDerivation {
pname = "hercules-ci-cnix-expr";
version = "0.5.1.0";
sha256 = "01m6l915yy3v6qpc53xq48kp3mi39bclsjdwswvgwvp9z9hjvg0p";
setupHaskellDepends = [
base
Cabal
cabal-pkg-config-version-hook
];
libraryHaskellDepends = [
aeson
base
bytestring
conduit
containers
directory
exceptions
filepath
hercules-ci-cnix-store
inline-c
inline-c-cpp
protolude
scientific
text
unliftio
unordered-containers
vector
];
librarySystemDepends = [ boost ];
libraryPkgconfigDepends = [ nix ];
testHaskellDepends = [
aeson
base
bytestring
containers
filepath
hercules-ci-cnix-store
hspec
process
protolude
QuickCheck
scientific
temporary
text
unordered-containers
vector
];
testToolDepends = [ hspec-discover ];
homepage = "https://docs.hercules-ci.com";
description = "Bindings for the Nix evaluator";
license = lib.licensesSpdx."Apache-2.0";
}
@@ -0,0 +1,65 @@
{
mkDerivation,
base,
boost,
bytestring,
Cabal,
cabal-pkg-config-version-hook,
conduit,
containers,
exceptions,
hspec,
hspec-discover,
inline-c,
inline-c-cpp,
lib,
nix,
protolude,
template-haskell,
temporary,
text,
unix,
unliftio-core,
vector,
}:
mkDerivation {
pname = "hercules-ci-cnix-store";
version = "0.4.1.0";
sha256 = "0jy7p69jhv81rg8xikd7smgpg3vwccjzly3k8hs7ipdp2mprwffc";
setupHaskellDepends = [
base
Cabal
cabal-pkg-config-version-hook
];
libraryHaskellDepends = [
base
bytestring
conduit
containers
inline-c
inline-c-cpp
protolude
template-haskell
unix
unliftio-core
vector
];
librarySystemDepends = [ boost ];
libraryPkgconfigDepends = [ nix ];
testHaskellDepends = [
base
bytestring
containers
exceptions
hspec
inline-c
inline-c-cpp
protolude
temporary
text
];
testToolDepends = [ hspec-discover ];
homepage = "https://docs.hercules-ci.com";
description = "Haskell bindings for Nix's libstore";
license = lib.licensesSpdx."Apache-2.0";
}
@@ -27,7 +27,10 @@ buildDunePackage rec {
this part is currently work in progress).
'';
homepage = "https://github.com/Chris00/ANSITerminal";
license = lib.licenses.lgpl3;
license = with lib.licenses; [
lgpl3Plus
ocamlLgplLinkingException
];
maintainers = [ lib.maintainers.jirkamarsik ];
};
}
@@ -1,5 +1,6 @@
{
lib,
stdenv,
buildPythonPackage,
fetchFromGitHub,
pytest-asyncio,
@@ -22,8 +23,6 @@ buildPythonPackage rec {
version = "0.8.2";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "vxgmichel";
repo = "aioconsole";
@@ -52,6 +51,11 @@ buildPythonPackage rec {
"test_interact_multiple_indented_lines"
];
disabledTestPaths = lib.optionals stdenv.hostPlatform.isDarwin [
# OSError: AF_UNIX path too long
"tests/test_server.py::test_uds_server[default]"
];
pythonImportsCheck = [ "aioconsole" ];
meta = {
@@ -3,10 +3,12 @@
buildPythonPackage,
fetchFromGitHub,
hatchling,
anywidget,
ipython,
ipywidgets,
jinja2,
jsonschema,
mistune,
narwhals,
numpy,
packaging,
@@ -17,21 +19,20 @@
pythonOlder,
toolz,
typing-extensions,
vega-datasets,
vl-convert-python,
writableTmpDirAsHomeHook,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "altair";
version = "5.5.0";
version = "6.0.0";
pyproject = true;
disabled = pythonOlder "3.9";
src = fetchFromGitHub {
owner = "altair-viz";
repo = "altair";
tag = "v${version}";
hash = "sha256-lrKC4FYRQEax5E0lQNhO9FLk5UOJ0TnYzqZjndlRpGI=";
tag = "v${finalAttrs.version}";
hash = "sha256-+Qc51L4tL1pRDpWwadxPpTE4tDH3FTO/wH67FtXMN7k=";
};
build-system = [ hatchling ];
@@ -48,16 +49,23 @@ buildPythonPackage rec {
++ lib.optional (pythonOlder "3.14") typing-extensions;
nativeCheckInputs = [
anywidget
ipython
ipywidgets
mistune
polars
pytest-xdist
pytestCheckHook
vega-datasets
vl-convert-python
writableTmpDirAsHomeHook
];
pythonImportsCheck = [ "altair" ];
enabledTestPaths = [
"tests/"
];
disabledTests = [
# ValueError: Saving charts in 'svg' format requires the vl-convert-python or altair_saver package: see http://github.com/altair-viz/altair_saver/
"test_renderer_with_none_embed_options"
@@ -66,13 +74,17 @@ buildPythonPackage rec {
"test_dataframe_to_csv[pandas]"
# Network access
"test_theme_remote_lambda"
"test_chart_validation_errors"
"test_multiple_field_strings_in_condition"
];
disabledTestPaths = [
# Disabled because it requires internet connectivity
"tests/test_examples.py"
"tests/test_datasets.py"
"altair/datasets/_data.py"
# TODO: Disabled because of missing altair_viewer package
"tests/vegalite/v5/test_api.py"
"tests/vegalite/v6/test_api.py"
# avoid updating files and dependency on black
"tests/test_toplevel.py"
# require vl-convert package
@@ -90,4 +102,4 @@ buildPythonPackage rec {
vinetos
];
};
}
})
@@ -8,9 +8,6 @@
ninja,
pkg-config,
# darwin only
CoreFoundation ? null,
# ANTLR 4.8 & 4.9
libuuid,
+5 -7
View File
@@ -5718,13 +5718,11 @@ self: super: with self; {
fontfeatures = callPackage ../development/python-modules/fontfeatures { };
fontforge = disabledIf (pythonOlder "3.10") (
toPythonModule (
pkgs.fontforge.override {
withPython = true;
python3 = python;
}
)
fontforge = toPythonModule (
pkgs.fontforge.override {
withPython = true;
python3 = python;
}
);
fontmake = callPackage ../development/python-modules/fontmake { };