Merge staging-next into staging
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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.
|
||||
|
||||
@@ -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" ];
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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";
|
||||
|
||||
|
||||
@@ -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": ""
|
||||
}
|
||||
|
||||
@@ -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 {
|
||||
@@ -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[])
|
||||
-2
@@ -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 @@
|
||||
@@ -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";
|
||||
|
||||
@@ -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";
|
||||
|
||||
@@ -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 ]
|
||||
|
||||
@@ -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"
|
||||
@@ -42,6 +42,7 @@ stdenv.mkDerivation {
|
||||
hash = "sha256-mMODpQmikfXtsQvtgh26cy97EiykYNLngSjidOBt/3I=";
|
||||
})
|
||||
./fix-abseil-20250512.0.patch
|
||||
./cstdint.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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; };
|
||||
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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 { };
|
||||
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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";
|
||||
};
|
||||
|
||||
@@ -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;
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
})
|
||||
(
|
||||
|
||||
+24
@@ -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,
|
||||
|
||||
|
||||
@@ -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 { };
|
||||
|
||||
Reference in New Issue
Block a user