Merge master into staging-next

This commit is contained in:
nixpkgs-ci[bot]
2026-05-06 18:34:52 +00:00
committed by GitHub
107 changed files with 961 additions and 510 deletions
+25 -9
View File
@@ -2,6 +2,17 @@
const { promisify } = require('node:util')
const execFile = promisify(require('node:child_process').execFile)
/**
* @typedef {{
* subject: string,
* sha: string,
* author: { name: string, email: string },
* committer: { name: string, email: string}
* changedPaths: string[],
* changedPathSegments: Set<string>,
* }} Commit
*/
/**
* @param {{
* args: string[]
@@ -34,12 +45,7 @@ async function runGit({ args, repoPath, core, quiet }) {
* repoPath?: string,
* }} GetCommitMessagesForPRProps
*
* @returns {Promise<{
* subject: string,
* sha: string,
* changedPaths: string[],
* changedPathSegments: Set<string>,
* }[]>}
* @returns {Promise<Commit[]>}
*/
async function getCommitDetailsForPR({ core, pr, repoPath }) {
await runGit({
@@ -70,17 +76,25 @@ async function getCommitDetailsForPR({ core, pr, repoPath }) {
return Promise.all(
shas.map(async (sha) => {
// Subject first, then a blank line, then filenames.
// Subject, author name, author email, committer name, committer email (all tab-seperated)
// then a blank line, then filenames.
const result = (
await runGit({
args: ['log', '--format=%s', '--name-only', '-1', sha],
args: [
'log',
'--format=%s\t%aN\t%aE\t%cN\t%cE',
'--name-only',
'-1',
sha,
],
repoPath,
core,
quiet: true,
})
).stdout.split('\n')
const subject = result[0]
const [subject, authorName, authorEmail, committerName, committerEmail] =
result[0].split('\t')
const changedPaths = result.slice(2, -1)
@@ -91,6 +105,8 @@ async function getCommitDetailsForPR({ core, pr, repoPath }) {
return {
sha,
subject,
author: { name: authorName, email: authorEmail },
committer: { name: committerName, email: committerEmail },
changedPaths,
changedPathSegments,
}
+72 -4
View File
@@ -2,15 +2,17 @@
const { classify } = require('../supportedBranches.js')
const { getCommitDetailsForPR } = require('./get-pr-commit-details.js')
/** @typedef {import('./get-pr-commit-details.js').Commit} Commit */
/**
* @param {{
* github: InstanceType<import('@actions/github/lib/utils').GitHub>,
* context: import('@actions/github/lib/context').Context,
* context: typeof import('@actions/github').context,
* core: import('@actions/core'),
* repoPath?: string,
* }} CheckCommitMessagesProps
* }} LintCommitsProps
*/
async function checkCommitMessages({ github, context, core, repoPath }) {
async function lintCommits({ github, context, core, repoPath }) {
// This check should only be run when we have the pull_request context.
const pull_number = context.payload.pull_request?.number
if (!pull_number) {
@@ -48,6 +50,17 @@ async function checkCommitMessages({ github, context, core, repoPath }) {
const commits = await getCommitDetailsForPR({ core, pr, repoPath })
await checkCommitMessages({ commits, core })
await checkCommitMetadata({ commits, core })
}
/**
* @param {{
* commits: Commit[],
* core: import('@actions/core'),
* }} CheckCommitMessagesProps
*/
async function checkCommitMessages({ commits, core }) {
const failures = new Set()
const conventionalCommitTypes = [
@@ -152,4 +165,59 @@ async function checkCommitMessages({ github, context, core, repoPath }) {
}
}
module.exports = checkCommitMessages
/**
* @param {{
* commits: Commit[],
* core: import('@actions/core'),
* }} CheckGitFieldsProps
*/
async function checkCommitMetadata({ commits, core }) {
const failures = new Set()
/** @type {(s: string) => boolean} */
const isEmail = (s) => /^.+@.*$/.test(s)
for (const commit of commits) {
if (!commit.author.name) {
core.error(`Commit ${commit.sha} author's name field is missing`)
failures.add(commit.sha)
}
if (!commit.author.email || !isEmail(commit.author.email)) {
core.error(
`Commit ${commit.sha} author's email field is missing or invalid`,
)
failures.add(commit.sha)
}
if (!commit.committer.name) {
core.error(`Commit ${commit.sha} committer's name field is missing`)
failures.add(commit.sha)
}
if (!commit.committer.email || !isEmail(commit.committer.email)) {
core.error(
`Commit ${commit.sha} committer's email field is missing or invalid`,
)
failures.add(commit.sha)
}
if (!failures.has(commit.sha)) {
core.info(
`Commit ${commit.sha}'s git fields passed our automated checks!`,
)
}
}
if (failures.size !== 0) {
core.error(
'Please add the missing commit fields. ' +
'You can use the noreply email address generated for you by GitHub ' +
'(https://docs.github.com/en/account-and-profile/reference/email-addresses-reference#your-noreply-email-address) ' +
"if you'd like.",
)
core.setFailed('Committers: merging is discouraged.')
}
}
module.exports = lintCommits
+2
View File
@@ -310,6 +310,8 @@
If your SQLite database is corrupted, the migration might fail and require [manual intervention](https://github.com/louislam/uptime-kuma/issues/5281).
See the [migration guide](https://github.com/louislam/uptime-kuma/wiki/Migration-From-v1-To-v2) for more information.
- `incus-lts` has been updated from v6 to v7
- The `libcxxhardeningextensive` hardening flag has been **disabled** by default. Enabling it by default in 25.11 was unintentional and may have had a negative effect on performance in some cases. `libcxxhardeningfast` remains enabled by default.
- The packages `ibtool`, `actool` and `re-plistbuddy` have been added, providing reimplementations of the corresponding proprietary Apple tools. They are more compatible with the originals than the previously existing `xcbuild` package, and should enable more darwin software to be built from source.
+58
View File
@@ -621,6 +621,64 @@ let
else
null;
};
nim = {
# See these locations for a known list of cpu/os idntifeiers:
# - https://nim-lang.org/docs/system.html#hostCPU
# - https://nim-lang.org/docs/system.html#hostOS
cpu =
if final.isAarch32 then
"arm"
else if final.isAarch64 then
"arm64"
else if final.isAlpha then
"alpha"
else if final.isAvr then
"avr"
else if final.isMips && final.is32Bit then
"mips"
else if final.isMips && final.is64Bit then
"mips64"
else if final.isMsp430 then
"msp430"
else if final.isPower && final.is32bit then
"powerpc"
else if final.isPower && final.is64bit then
"powerpc64"
else if final.isRiscV && final.is64bit then
"riscv64"
else if final.isSparc then
"sparc"
else if final.isx86_32 then
"i386"
else if final.isx86_64 then
"amd64"
else
null;
os =
if final.isAndroid then
"Android"
else if final.isDarwin then
"MacOSX"
else if final.isFreeBSD then
"FreeBSD"
else if final.isGenode then
"Genode"
else if final.isLinux then
"Linux"
else if final.isNetBSD then
"NetBSD"
else if final.isNone then
"Standalone"
else if final.isOpenBSD then
"OpenBSD"
else if final.isWindows then
"Windows"
else if final.isiOS then
"iOS"
else
null;
};
};
in
assert final.useAndroidPrebuilt -> final.isAndroid;
+5
View File
@@ -25335,6 +25335,11 @@
github = "Simarra";
githubId = 14372987;
};
Simon-Weij = {
name = "Simon";
github = "Simon-Weij";
githubId = 175155691;
};
simonchatts = {
email = "code@chatts.net";
github = "simonchatts";
@@ -32,6 +32,9 @@
};
};
# Disable the cloneConfig module. We have our own Service to generate a configuration.nix.
installer.cloneConfig = false;
networking = {
dhcpcd.enable = false;
useDHCP = false;
@@ -32,6 +32,9 @@
};
};
# Disable the cloneConfig module. We have our own Service to generate a configuration.nix.
installer.cloneConfig = false;
# Network
networking = {
dhcpcd.enable = false;
+11 -20
View File
@@ -39,8 +39,8 @@ let
dnsmasq
e2fsprogs
findutils
getent
gawk
getent
gnugrep
gnused
gnutar
@@ -50,33 +50,29 @@ let
iptables
iw
kmod
lego
libxfs
lvm2
lz4
lxcfs
lz4
nftables
qemu-utils
qemu_kvm
rsync
skopeo
squashfs-tools-ng
squashfsTools
sshfs
swtpm
systemd
thin-provisioning-tools
umoci
util-linux
virtiofsd
xdelta
xz
zstd
]
++ lib.optionals (lib.versionAtLeast cfg.package.version "6.3.0") [
skopeo
umoci
]
++ lib.optionals (lib.versionAtLeast cfg.package.version "6.11.0") [
lego
]
++ lib.optionals config.security.apparmor.enable [
apparmor-bin-utils
@@ -97,10 +93,6 @@ let
]
++ lib.optionals nvidiaEnabled [
libnvidia-container
]
++ lib.optionals cfg.bucketSupport [
minio
minio-client
];
# https://github.com/lxc/incus/blob/cff35a29ee3d7a2af1f937cbb6cf23776941854b/internal/server/instance/drivers/driver_qemu.go#L123
@@ -213,13 +205,6 @@ in
description = "The incus client package to use. This package is added to PATH.";
};
bucketSupport = lib.mkOption {
type = lib.types.bool;
description = "Enable bucket support using minio, which is an insecure and unmaintained S3 provider.";
default = if lib.versionAtLeast config.system.stateVersion "26.11" then false else null;
defaultText = lib.literalExpression ''if lib.versionAtLeast config.system.stateVersion "26.11" then false else null;'';
};
softDaemonRestart = lib.mkOption {
type = lib.types.bool;
default = true;
@@ -573,4 +558,10 @@ in
virtualisation.lxc.lxcfs.enable = true;
};
imports = [
(lib.mkRemovedOptionModule [ "virtualisation" "incus" "bucketSupport" ] ''
The option was only a temporary workaround to gate the insecure minio dependency until it could be dropped.
'')
];
}
+5 -4
View File
@@ -142,11 +142,11 @@ in
server.succeed("systemctl start incus")
with subtest("[${image_id}] CPU limits can be managed"):
server.set_instance_config(instance_name, "limits.cpu 1", restart=True)
server.set_instance_config(instance_name, "limits.cpu=1", restart=True)
server.wait_instance_exec_success(instance_name, "nproc | grep '^1$'", timeout=90)
with subtest("[${image_id}] CPU limits can be hotplug changed"):
server.set_instance_config(instance_name, "limits.cpu 2")
server.set_instance_config(instance_name, "limits.cpu=2")
server.wait_instance_exec_success(instance_name, "nproc | grep '^2$'", timeout=90)
with subtest("[${image_id}] exec has a valid path"):
@@ -164,6 +164,7 @@ in
with subtest("[${image_id}] default configuration.nix is created on first boot"):
server.succeed(f"incus exec {instance_name} -- test -f /etc/nixos/configuration.nix")
server.succeed(f"incus exec {instance_name} -- grep -q 'default incus configuration' /etc/nixos/configuration.nix")
with subtest("[${image_id}] configuration.nix create service does not overwrite existing config"):
server.succeed(f"incus exec {instance_name} -- systemctl restart incus-create-nixos-config.service")
@@ -195,7 +196,7 @@ in
# TODO troubleshoot VM hot memory resizing which was introduced in 6.12
with subtest("[${image_id}] memory limits can be hotplug changed"):
server.set_instance_config(instance_name, "limits.memory 512MB")
server.set_instance_config(instance_name, "limits.memory=512MB")
# can't use lsmem since it sees the host's memory size
server.wait_instance_exec_success(instance_name, "grep 'MemTotal:[[:space:]]*500000 kB' /proc/meminfo", timeout=1)
@@ -244,7 +245,7 @@ in
# python
''
with subtest("[${image_id}] memory limits can be managed"):
server.set_instance_config(instance_name, "limits.memory 384MB", restart=True)
server.set_instance_config(instance_name, "limits.memory=384MB", restart=True)
lsmem = json.loads(server.instance_succeed(instance_name, "lsmem --json"))
memsize = lsmem["memory"][0]["size"]
assert memsize == "384M", f"failed to manage memory limit. {memsize} != 384M"
-1
View File
@@ -51,7 +51,6 @@ in
incus = {
enable = true;
package = cfg.package;
bucketSupport = false;
preseed = {
networks = [
+15 -10
View File
@@ -23,23 +23,23 @@
USER_1_CREDS="foobar"
'';
settings = {
turn = {
server = {
realm = "localhost";
interfaces = [
{
transport = "udp";
bind = "127.0.0.1:3478";
listen = "127.0.0.1:3478";
external = "127.0.0.1:3478";
}
{
transport = "tcp";
bind = "127.0.0.1:3478";
listen = "127.0.0.1:3478";
external = "127.0.0.1:3478";
}
];
};
auth.static_credentials.user1 = "$USER_1_CREDS";
auth."static-credentials".user1 = "$USER_1_CREDS";
};
};
};
@@ -47,15 +47,20 @@
testScript = # python
''
import json
start_all()
server.wait_for_unit('turn-rs.service')
server.wait_for_open_port(3000, "127.0.0.1")
server.wait_for_open_port(3478, "127.0.0.1")
info = server.succeed('curl http://localhost:3000/info')
jsonInfo = json.loads(info)
assert len(jsonInfo['interfaces']) == 2, f'Interfaces doesn\'t contain two entries:\n{json.dumps(jsonInfo, indent=2)}'
base = (
"${pkgs.coturn}/bin/turnutils_uclient"
" -L 127.0.0.1 -e 127.0.0.1 -u user1 -w foobar -X -y -t"
)
for extra in ["", "-s", "-t", "-t -s"]:
out = server.succeed(f"{base} {extra} 127.0.0.1")
assert "ERROR" not in out, f"turnutils_uclient errors:\n{out}"
assert "Total lost packets 0 (0.000000%)" in out, (
f"turnutils_uclient reported packet loss or did not finish:\n{out}"
)
config = server.succeed('cat /run/turn-rs/config.toml')
assert 'foobar' in config, f'Secrets are not properly injected:\n{config}'
@@ -7,16 +7,16 @@
buildNpmPackage rec {
pname = "all-the-package-names";
version = "2.0.2429";
version = "2.0.2437";
src = fetchFromGitHub {
owner = "nice-registry";
repo = "all-the-package-names";
tag = "v${version}";
hash = "sha256-ut3YoTGpHEoSIafkimU31Mt45Q14oiTGWXQQfsxia9s=";
hash = "sha256-wPmsxxlgWsh0LvLgvlJbqci8vqfz8Z2/1RC3Sc0krp8=";
};
npmDepsHash = "sha256-pxei6HxmUyMajVG+thFp3pOTWqBC6yL/nOvp6c8DXp0=";
npmDepsHash = "sha256-UlflkWK2lyQMvuJQ0OkI1cuR8rhZxyDjeHUsdFjWfQk=";
passthru.updateScript = nix-update-script { };
@@ -2,7 +2,6 @@
lib,
anki-utils,
fetchFromGitHub,
nix-update-script,
}:
anki-utils.buildAnkiAddon (finalAttrs: {
pname = "adjust-sound-volume";
@@ -13,7 +12,6 @@ anki-utils.buildAnkiAddon (finalAttrs: {
tag = "v${finalAttrs.version}";
hash = "sha256-6reIUz+tHKd4KQpuofLa/tIL5lCloj3yODZ8Cz29jFU=";
};
passthru.updateScript = nix-update-script { };
meta = {
description = "Add a new menu item for adjusting the sound volume";
homepage = "https://github.com/mnogu/adjust-sound-volume";
@@ -2,7 +2,6 @@
lib,
anki-utils,
fetchFromGitHub,
nix-update-script,
}:
anki-utils.buildAnkiAddon (finalAttrs: {
@@ -26,7 +25,6 @@ anki-utils.buildAnkiAddon (finalAttrs: {
};
});
sourceRoot = "${finalAttrs.src.name}/card_management";
passthru.updateScript = nix-update-script { };
meta = {
description = "Reset, Learn, and Grade cards from the card browser";
longDescription = ''
@@ -2,7 +2,6 @@
lib,
anki-utils,
fetchFromGitHub,
nix-update-script,
}:
anki-utils.buildAnkiAddon (finalAttrs: {
pname = "anki-quizlet-importer-extended";
@@ -13,7 +12,6 @@ anki-utils.buildAnkiAddon (finalAttrs: {
tag = "v${finalAttrs.version}";
hash = "sha256-BTddZColXM193x8xFa1axHeiWukjxXvwkXGpHxsLtR0=";
};
passthru.updateScript = nix-update-script { };
meta = {
description = "Import Quizlet Decks into Anki";
homepage = "https://ankiweb.net/shared/info/1362209126";
@@ -5,6 +5,7 @@
lndir,
formats,
runCommand,
nix-update-script,
}:
{
buildAnkiAddon = lib.extendMkDerivation {
@@ -55,6 +56,7 @@
'';
passthru = {
updateScript = nix-update-script { };
withConfig =
{
# JSON add-on config. The available options for an add-on are in its
@@ -2,7 +2,6 @@
lib,
anki-utils,
fetchFromGitHub,
nix-update-script,
}:
anki-utils.buildAnkiAddon (finalAttrs: {
pname = "image-occlusion-enhanced";
@@ -15,7 +14,6 @@ anki-utils.buildAnkiAddon (finalAttrs: {
hash = "sha256-YR1hicBDb08J+1Qc+SDiJDXLo5FzLqCQGeVe7brbPME=";
};
sourceRoot = "${finalAttrs.src.name}/src/image_occlusion_enhanced";
passthru.updateScript = nix-update-script { };
meta = {
description = ''
Adds extra features for creating image-based cloze-deletions
@@ -2,7 +2,6 @@
lib,
anki-utils,
fetchFromGitHub,
nix-update-script,
}:
anki-utils.buildAnkiAddon (finalAttrs: {
pname = "passfail2";
@@ -21,7 +20,6 @@ anki-utils.buildAnkiAddon (finalAttrs: {
runHook postBuild
'';
passthru.updateScript = nix-update-script { };
meta = {
description = ''
Replaces the default Anki review buttons with only two options:
@@ -2,7 +2,6 @@
lib,
anki-utils,
fetchFromGitHub,
nix-update-script,
}:
anki-utils.buildAnkiAddon (finalAttrs: {
pname = "puppy-reinforcement";
@@ -14,7 +13,6 @@ anki-utils.buildAnkiAddon (finalAttrs: {
hash = "sha256-y52AjmYrFTcTwd4QAcJzK5R9wwxUSlvnN3C2O/r5cHk=";
};
sourceRoot = "${finalAttrs.src.name}/src/puppy_reinforcement";
passthru.updateScript = nix-update-script { };
meta = {
description = "Encourage learners with pictures of cute puppies";
longDescription = ''
@@ -2,7 +2,6 @@
lib,
anki-utils,
fetchFromGitHub,
nix-update-script,
}:
anki-utils.buildAnkiAddon (finalAttrs: {
pname = "recolor";
@@ -25,8 +24,6 @@ anki-utils.buildAnkiAddon (finalAttrs: {
./only-update-config-version-when-migration-happens.patch
];
passthru.updateScript = nix-update-script { };
meta = {
description = "ReColor your Anki desktop to whatever aesthetic you like";
longDescription = ''
+3 -3
View File
@@ -11,16 +11,16 @@
}:
buildGoModule (finalAttrs: {
pname = "clive";
version = "0.12.16";
version = "0.12.17";
src = fetchFromGitHub {
owner = "koki-develop";
repo = "clive";
tag = "v${finalAttrs.version}";
hash = "sha256-bZzK7RLAStRb9R3V/TK6tZV6yv1C7MGslAhhpWDzdWk=";
hash = "sha256-omHxs2hTzjddelPkJWj2sVmK9nI5bCELUS8EmEH7JXM=";
};
vendorHash = "sha256-BDspmaATLIfwyqxwJNJ24vpEETUWGVbobHWD2NRaOi4=";
vendorHash = "sha256-M3cU2051lOzm9hXuVwC1eFI8Ftpmk32h/98dHUkRfts=";
subPackages = [ "." ];
buildInputs = [ ttyd ];
nativeBuildInputs = [
+4 -4
View File
@@ -7,16 +7,16 @@
buildNpmPackage {
pname = "coc-clangd";
version = "0-unstable-2026-04-01";
version = "0-unstable-2026-05-01";
src = fetchFromGitHub {
owner = "clangd";
repo = "coc-clangd";
rev = "34d9ed8e7a08f29e398720802401455733e6a481";
hash = "sha256-PiPH9kXmVdu9Ul0t28E1jumZILX7IwIr2OBDfCepobs=";
rev = "1a9f68c7266621fd8cb5aa5863ec63927232fbfc";
hash = "sha256-FhJzJAf5jcdYCpPAKlJUNcVb0U8mkAiS5MoCTQpj/mM=";
};
npmDepsHash = "sha256-QVsNztjTuHU0vu53IxjfFqllj1JxHnLwT9B9jaUnWIo=";
npmDepsHash = "sha256-jPgvi+Wz39d56d0YQSF99HqZ3rYi97kfGv7r0IY5WbY=";
passthru.updateScript = nix-update-script { extraArgs = [ "--version=branch" ]; };
+3 -3
View File
@@ -8,15 +8,15 @@
let
pname = "everest";
version = "6249";
version = "6286";
phome = "$out/lib/Celeste";
in
stdenvNoCC.mkDerivation {
inherit pname version;
src = fetchzip {
url = "https://github.com/EverestAPI/Everest/releases/download/stable-1.6249.0/main.zip";
url = "https://github.com/EverestAPI/Everest/releases/download/stable-1.6286.0/main.zip";
extension = "zip";
hash = "sha256-xcWscldogSI7vmljg8uU0zV8gREVe5rLHj0l6X+0z9E=";
hash = "sha256-QhC/VZTy7TxIuJZKjqIKWvX/t8d+5EAFhQiS1R9AnQ4=";
};
buildInputs = [
icu
+3 -3
View File
@@ -11,8 +11,8 @@
let
pname = "everest";
version = "6249";
rev = "201a0dc2e0851f2bc601ed48cc1a64b17952e5ea";
version = "6286";
rev = "dcc400b1724b4762ca92b50e8d274f66ddeafa0c";
phome = "$out/lib/Celeste";
in
buildDotnetModule {
@@ -25,7 +25,7 @@ buildDotnetModule {
fetchSubmodules = true;
# TODO: use leaveDotGit = true and modify external/MonoMod in postFetch to please SourceLink
# Microsoft.SourceLink.Common.targets(53,5): warning : Source control information is not available - the generated source link is empty.
hash = "sha256-ISCL6C1Zj18fMsfBAte9cqAWCA6/4eewKmefYmTm2uA=";
hash = "sha256-I2Cy3gGAqD9Irxg44qFH48piJQSn1CpmetyUvJs35cE=";
};
nativeBuildInputs = [ autoPatchelfHook ];
+2 -2
View File
@@ -7,13 +7,13 @@
buildGoModule (finalAttrs: {
pname = "fn";
version = "0.6.49";
version = "0.6.50";
src = fetchFromGitHub {
owner = "fnproject";
repo = "cli";
rev = finalAttrs.version;
hash = "sha256-qDLBwxMDVPY2WWCAGw7jFwHX9qAnqOuz9Tgfg1EC1bc=";
hash = "sha256-j6UJXBi+q61gQwOhGuI9vIG5i+xkUOTdNRMRYPoc284=";
};
vendorHash = null;
+3 -3
View File
@@ -52,17 +52,17 @@ let
in
buildGoModule (finalAttrs: {
pname = "forgejo-runner";
version = "12.9.0";
version = "12.10.1";
src = fetchFromGitea {
domain = "code.forgejo.org";
owner = "forgejo";
repo = "runner";
rev = "v${finalAttrs.version}";
hash = "sha256-yhcD+FiRuo+WAvKFtgAI+36/uIci9O1s9RtXT0Q75Uo=";
hash = "sha256-OBMduRaGSVPojSAr6DKPbAdUyuw1MSCpipRv+EA5OGw=";
};
vendorHash = "sha256-CCUyL6ZxLRQy30TQUj1yOAuR7Ctp06/0jG8Q3De6/oo=";
vendorHash = "sha256-V9dEHNp80oS7NfsGIlKgFyHD1PmMm2bCqydVADpphuA=";
nativeBuildInputs = [ makeWrapper ];
+3 -3
View File
@@ -14,16 +14,16 @@
buildGo126Module (finalAttrs: {
pname = "golangci-lint";
version = "2.12.1";
version = "2.12.2";
src = fetchFromGitHub {
owner = "golangci";
repo = "golangci-lint";
tag = "v${finalAttrs.version}";
hash = "sha256-dMXjfMPdqOPJDC7t6+X4GgfmSf/9ThOuUdp4JgVSmmI=";
hash = "sha256-qR7fp1x2S+EwEAcplRHTvA3jWwLr/XSiYKSZtAwkrNU=";
};
vendorHash = "sha256-qTvBE+c1frDZj3NOy0VKYVbsdxEunun67QrKTye5Rx8=";
vendorHash = "sha256-AG5wtLwWLz55bdp1oi3cW+9O3yj1W1P7MV9zxym7Pb4=";
subPackages = [ "cmd/golangci-lint" ];
+18 -1
View File
@@ -1,7 +1,7 @@
{
lib,
stdenv,
python3Packages,
python3,
fetchFromGitHub,
nix-update-script,
glibcLocales,
@@ -10,6 +10,23 @@
withPostgresAdapter ? true,
withBigQueryAdapter ? true,
}:
let
python = python3.override {
packageOverrides = _final: prev: {
# throws a runtime error with textual 8.2.5:
# KeyError: 'textual-ansi'
textual = prev.textual.overridePythonAttrs (old: rec {
version = "8.2.4";
src = old.src.override {
tag = "v${version}";
hash = "sha256-827cm9pcj1o1FYeaoWKCJ6dEyXeDop4kYd205cySTfg=";
};
});
};
};
python3Packages = python.pkgs;
in
python3Packages.buildPythonApplication (finalAttrs: {
pname = "harlequin";
version = "2.5.2";
@@ -1,29 +0,0 @@
From 0c37b7e3ec65b4d0e166e2127d9f1835320165b8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgraber@stgraber.org>
Date: Fri, 6 Sep 2024 17:07:11 -0400
Subject: [PATCH] incusd/instance/qemu: Make O_DIRECT conditional on
directCache
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
---
internal/server/instance/drivers/driver_qemu.go | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/internal/server/instance/drivers/driver_qemu.go b/internal/server/instance/drivers/driver_qemu.go
index 5a94c9db43..9609b73c1b 100644
--- a/internal/server/instance/drivers/driver_qemu.go
+++ b/internal/server/instance/drivers/driver_qemu.go
@@ -4276,7 +4276,9 @@ func (d *qemu) addDriveConfig(qemuDev map[string]string, bootIndexes map[string]
permissions = unix.O_RDONLY
}
- permissions |= unix.O_DIRECT
+ if directCache {
+ permissions |= unix.O_DIRECT
+ }
f, err := os.OpenFile(driveConf.DevPath, permissions, 0)
if err != nil {
@@ -1,28 +0,0 @@
From 572afb06f66f83ca95efa1b9386fceeaa1c9e11b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?St=C3=A9phane=20Graber?= <stgraber@stgraber.org>
Date: Fri, 6 Sep 2024 15:51:35 -0400
Subject: [PATCH] incusd/instance/qemu: Set O_DIRECT when passing in FDs
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This is required in most cases with QEMU 9.1.0.
Signed-off-by: Stéphane Graber <stgraber@stgraber.org>
---
internal/server/instance/drivers/driver_qemu.go | 2 ++
1 file changed, 2 insertions(+)
diff --git a/internal/server/instance/drivers/driver_qemu.go b/internal/server/instance/drivers/driver_qemu.go
index 37da21f42f..e25aab0667 100644
--- a/internal/server/instance/drivers/driver_qemu.go
+++ b/internal/server/instance/drivers/driver_qemu.go
@@ -4277,6 +4277,8 @@ func (d *qemu) addDriveConfig(qemuDev map[string]string, bootIndexes map[string]
permissions = unix.O_RDONLY
}
+ permissions |= unix.O_DIRECT
+
f, err := os.OpenFile(driveConf.DevPath, permissions, 0)
if err != nil {
return fmt.Errorf("Failed opening file descriptor for disk device %q: %w", driveConf.DevName, err)
+4 -1
View File
@@ -9,14 +9,15 @@
lib,
buildGoModule,
installShellFiles,
fetchpatch2,
}:
let
pname = "incus${lib.optionalString lts "-lts"}-client";
evaluatedPatches = if lib.isFunction patches then patches fetchpatch2 else patches;
in
buildGoModule {
inherit
patches
pname
src
vendorHash
@@ -29,6 +30,8 @@ buildGoModule {
subPackages = [ "cmd/incus" ];
patches = evaluatedPatches;
postInstall = ''
# Needed for builds on systems with auto-allocate-uids to pass.
# Incus tries to read ~/.config/incus while generating completions
+23 -19
View File
@@ -14,6 +14,7 @@
stdenv,
buildGoModule,
fetchFromGitHub,
fetchpatch2,
acl,
buildPackages,
cowsql,
@@ -51,6 +52,7 @@ let
sphinxext-opengraph
]
);
evaluatedPatches = if lib.isFunction patches then patches fetchpatch2 else patches;
in
buildGoModule (finalAttrs: {
@@ -75,7 +77,7 @@ buildGoModule (finalAttrs: {
// (if (rev == null) then { tag = "v${version}"; } else { inherit rev; })
);
patches = [ ./docs.patch ] ++ patches;
patches = [ ./docs.patch ] ++ evaluatedPatches;
excludedPackages = [
# statically compile these
@@ -161,25 +163,27 @@ buildGoModule (finalAttrs: {
doInstallCheck = true;
postInstall = ''
installShellCompletion --cmd incus \
--bash <($out/bin/incus completion bash) \
--fish <($out/bin/incus completion fish) \
--zsh <($out/bin/incus completion zsh)
postInstall =
lib.optionalString (stdenv.hostPlatform.canExecute stdenv.buildPlatform) ''
installShellCompletion --cmd incus \
--bash <($out/bin/incus completion bash) \
--fish <($out/bin/incus completion fish) \
--zsh <($out/bin/incus completion zsh)
''
+ ''
mkdir -p $agent_loader/bin $agent_loader/etc/systemd/system $agent_loader/lib/udev/rules.d
# the agent_loader output is used by virtualisation.incus.agent
cp internal/server/instance/drivers/agent-loader/incus-agent-linux $agent_loader/bin/incus-agent
cp internal/server/instance/drivers/agent-loader/incus-agent-setup-linux $agent_loader/bin/incus-agent-setup
chmod +x $agent_loader/bin/incus-agent{,-setup}
patchShebangs $agent_loader/bin/incus-agent{,-setup}
cp internal/server/instance/drivers/agent-loader/systemd/incus-agent.service $agent_loader/etc/systemd/system/
cp internal/server/instance/drivers/agent-loader/systemd/incus-agent.rules $agent_loader/lib/udev/rules.d/99-incus-agent.rules
substituteInPlace $agent_loader/etc/systemd/system/incus-agent.service --replace-fail 'TARGET/systemd' "$agent_loader/bin"
mkdir -p $agent_loader/bin $agent_loader/etc/systemd/system $agent_loader/lib/udev/rules.d
# the agent_loader output is used by virtualisation.incus.agent
cp internal/server/instance/drivers/agent-loader/incus-agent-linux $agent_loader/bin/incus-agent
cp internal/server/instance/drivers/agent-loader/incus-agent-setup-linux $agent_loader/bin/incus-agent-setup
chmod +x $agent_loader/bin/incus-agent{,-setup}
patchShebangs $agent_loader/bin/incus-agent{,-setup}
cp internal/server/instance/drivers/agent-loader/systemd/incus-agent.service $agent_loader/etc/systemd/system/
cp internal/server/instance/drivers/agent-loader/systemd/incus-agent.rules $agent_loader/lib/udev/rules.d/99-incus-agent.rules
substituteInPlace $agent_loader/etc/systemd/system/incus-agent.service --replace-fail 'TARGET/systemd' "$agent_loader/bin"
mkdir $doc
cp -R doc/html $doc/
'';
mkdir $doc
cp -R doc/html $doc/
'';
passthru = {
client = callPackage ./client.nix {
+81 -10
View File
@@ -1,16 +1,87 @@
import ./generic.nix {
hash = "sha256-DgPSH5t1Zx2X9T8dbpz54M5nXNcCJbdfcq9AEd8kmYo=";
version = "6.0.6-unstable-2026-03-27";
vendorHash = "sha256-bVJwg9VaiSgfpKo+e2oMsYgmaKk42dktq0pahcfbjp0=";
rev = "d0f2c86fcb4a7d38343807c83ea3541bb4661e1e";
patches = [
# qemu 9.1 compat, remove when added to LTS
./572afb06f66f83ca95efa1b9386fceeaa1c9e11b.patch
./0c37b7e3ec65b4d0e166e2127d9f1835320165b8.patch
];
hash = "sha256-7s2gc+78O8jKypVe1itaUrsLPa2mLjNgUUrR/cv7ITA=";
version = "7.0.0";
vendorHash = "sha256-6irMB3hpWcxDuMQBxWXnhMLAOwTAl63JX6JJZMQXf5E=";
lts = true;
patches = fetchpatch2: [
(fetchpatch2 {
name = "doc-devices-disk_Fix-broken-link.patch";
url = "https://github.com/lxc/incus/commit/faa636b70c05a5cca0346492a0586d5747e4b117.patch?full_index=1";
hash = "sha256-UsfzSeLJq0B9xDmd124ITzFBJzg2w1xXNK6TavQ5iMs=";
})
(fetchpatch2 {
name = "incusd-instance-qemu_Fix-version-detection-for-qemu-kvm.patch";
url = "https://github.com/lxc/incus/commit/a5f50d36eaa41580f2233b05936bd29fe1b15100.patch?full_index=1";
hash = "sha256-Qwu2oljB7COZB2m3W/9Y5wCCZyxvLj4ZUHcNqtoDGzk=";
})
(fetchpatch2 {
name = "incusd_Re-introduce-core-scheduling-detection.patch";
url = "https://github.com/lxc/incus/commit/1e6ce18e8cd92b5b3eb4346e7bd27fd4a7d1fb9b.patch?full_index=1";
hash = "sha256-RLy8bcod55g8vtXxChte4oalApw7d/gZg8No6BUZQS0=";
})
(fetchpatch2 {
name = "incusd-instance-lxc_Fix-swap=false-failure.patch";
url = "https://github.com/lxc/incus/commit/5f2cdf7545c5398290dc507313de9ee547fe803f.patch?full_index=1";
hash = "sha256-Ux6mm8Y4q68fj//hG7k+bXMjqhGDOxGNm64De1pwcYY=";
})
(fetchpatch2 {
name = "incusd-forknet_Persist-DHCPv6-client-DUID-across-restarts.patch";
url = "https://github.com/lxc/incus/commit/47377e345930e77d3fbce29d037fc7dbd6823dcf.patch?full_index=1";
hash = "sha256-CWaNaDYuBBLahxkqnM0FQZraVkvBSbrx1+8dcB8Vfbg=";
})
(fetchpatch2 {
name = "incusd-forknet_Include-FQDN-in-DHCPv6-INFO-requests.patch";
url = "https://github.com/lxc/incus/commit/d7f1c9d75ca33eb2ddb0bf10cec934fd6e352089.patch?full_index=1";
hash = "sha256-3zyADLiPUuiGLwdeISj5lUk3tkAayQGaRI+/yBHrvuM=";
})
(fetchpatch2 {
name = "incusd-forknet_Properly-renew-stateful-DHCPv6.patch";
url = "https://github.com/lxc/incus/commit/3b127758c17752302b3f4bf907f42e926ab664e4.patch?full_index=1";
hash = "sha256-+dcdeZwuyTWH7yfPEDqKOax/lS1Yqvwn9ooqJxKD3jA=";
})
(fetchpatch2 {
name = "incusd-forknet_Add-jitter-to-DHCPv6-renewal.patch";
url = "https://github.com/lxc/incus/commit/2b24a260b6177c033047f270286933563f05a999.patch?full_index=1";
hash = "sha256-grMspYyqn4Zl1Kn+hFeUfeIevdwszJc0x2YDC2JILKw=";
})
(fetchpatch2 {
name = "incusd-device-nic_bridged_Fix-swapped-IPv4-IPv6-DNS-record.patch";
url = "https://github.com/lxc/incus/commit/33ffcf71745e138dd4f3546839115c293e6be083.patch?full_index=1";
hash = "sha256-E8Plz9qdoTt3id9I5jbZYMKQt+kUrKmXmtMJ6IXlRJg=";
})
(fetchpatch2 {
name = "doc-authorization_Fix-reference-to-old-manager-relation.patch";
url = "https://github.com/lxc/incus/commit/c65ac0f4e6e94859b8565bce41bbf1595f4a8085.patch?full_index=1";
hash = "sha256-6wEz3uxWauIibBkH+OdB7+VsFySmugt6wk61qMayzYo=";
})
(fetchpatch2 {
name = "incusd-network-acl_Fix-issue-with-instances-in-different-project-than-ACL.patch";
url = "https://github.com/lxc/incus/commit/2a3584b6fccf152be42cf5614e54241bdb13e671.patch?full_index=1";
hash = "sha256-CXE5Bowk3ZPup6oVDEJb9ucsJoXhXu/kU7gGCghhtjQ=";
})
(fetchpatch2 {
name = "incusd-projects_Fix-targeting-on-project-delete.patch";
url = "https://github.com/lxc/incus/commit/3a104e4dc24897f0d6543136bb1043fcd4a33632.patch?full_index=1";
hash = "sha256-kTFkJqbjzdq5jvNxKw8YMPR04WRj4t5IS6ymoGyXDXE=";
})
(fetchpatch2 {
name = "test-network_acl_Add-test-for-ACL-used-by-instance-in-different-project.patch";
url = "https://github.com/lxc/incus/commit/41878729f06e9c31df9d4fac20fb8c384608577c.patch?full_index=1";
hash = "sha256-YR2Akus4vp3vNvHEmsJUh/3gbEf3R/cFUOVvt9u/wEU=";
})
(fetchpatch2 {
name = "incusd-instance-qemu_Remove-deprecated-QEMU-flag.patch";
url = "https://github.com/lxc/incus/commit/c1f18c78fc6bc4850df20574bdcc541e5eefc4ac.patch?full_index=1";
hash = "sha256-kbn4Yd/G23FCFA0Ch0+d81HUxCbcoiOzHfZ0MW+VlzE=";
})
(fetchpatch2 {
name = "incusd-cluster_Re-order-evacuations-to-happen-earlier-on-shutdown.patch";
url = "https://github.com/lxc/incus/commit/5b29ecc164ef28239d2e2a874a7c871a2e419083.patch?full_index=1";
hash = "sha256-jpyJYjiZvRw/aOGsykEx8uotRBF7p1q5O08PVhyQtvk=";
})
];
nixUpdateExtraArgs = [
"--version-regex=^v(6\\.0\\.[0-9]+)$"
"--version-regex=^v(7\\.0\\.[0-9]+)$"
"--override-filename=pkgs/by-name/in/incus/lts.nix"
];
}
+80 -4
View File
@@ -1,8 +1,84 @@
import ./generic.nix {
hash = "sha256-I+wwpsFGDX0W7pwzROGW1ZDHx+C7uc61ypO45BzOhoE=";
version = "6.23.0";
vendorHash = "sha256-R4q0FNu33qZrHrZQTqPCfw7FNUv6itl7y2AxdRF19CQ=";
patches = [ ];
hash = "sha256-7s2gc+78O8jKypVe1itaUrsLPa2mLjNgUUrR/cv7ITA=";
version = "7.0.0";
vendorHash = "sha256-6irMB3hpWcxDuMQBxWXnhMLAOwTAl63JX6JJZMQXf5E=";
patches = fetchpatch2: [
(fetchpatch2 {
name = "doc-devices-disk_Fix-broken-link.patch";
url = "https://github.com/lxc/incus/commit/faa636b70c05a5cca0346492a0586d5747e4b117.patch?full_index=1";
hash = "sha256-UsfzSeLJq0B9xDmd124ITzFBJzg2w1xXNK6TavQ5iMs=";
})
(fetchpatch2 {
name = "incusd-instance-qemu_Fix-version-detection-for-qemu-kvm.patch";
url = "https://github.com/lxc/incus/commit/a5f50d36eaa41580f2233b05936bd29fe1b15100.patch?full_index=1";
hash = "sha256-Qwu2oljB7COZB2m3W/9Y5wCCZyxvLj4ZUHcNqtoDGzk=";
})
(fetchpatch2 {
name = "incusd_Re-introduce-core-scheduling-detection.patch";
url = "https://github.com/lxc/incus/commit/1e6ce18e8cd92b5b3eb4346e7bd27fd4a7d1fb9b.patch?full_index=1";
hash = "sha256-RLy8bcod55g8vtXxChte4oalApw7d/gZg8No6BUZQS0=";
})
(fetchpatch2 {
name = "incusd-instance-lxc_Fix-swap=false-failure.patch";
url = "https://github.com/lxc/incus/commit/5f2cdf7545c5398290dc507313de9ee547fe803f.patch?full_index=1";
hash = "sha256-Ux6mm8Y4q68fj//hG7k+bXMjqhGDOxGNm64De1pwcYY=";
})
(fetchpatch2 {
name = "incusd-forknet_Persist-DHCPv6-client-DUID-across-restarts.patch";
url = "https://github.com/lxc/incus/commit/47377e345930e77d3fbce29d037fc7dbd6823dcf.patch?full_index=1";
hash = "sha256-CWaNaDYuBBLahxkqnM0FQZraVkvBSbrx1+8dcB8Vfbg=";
})
(fetchpatch2 {
name = "incusd-forknet_Include-FQDN-in-DHCPv6-INFO-requests.patch";
url = "https://github.com/lxc/incus/commit/d7f1c9d75ca33eb2ddb0bf10cec934fd6e352089.patch?full_index=1";
hash = "sha256-3zyADLiPUuiGLwdeISj5lUk3tkAayQGaRI+/yBHrvuM=";
})
(fetchpatch2 {
name = "incusd-forknet_Properly-renew-stateful-DHCPv6.patch";
url = "https://github.com/lxc/incus/commit/3b127758c17752302b3f4bf907f42e926ab664e4.patch?full_index=1";
hash = "sha256-+dcdeZwuyTWH7yfPEDqKOax/lS1Yqvwn9ooqJxKD3jA=";
})
(fetchpatch2 {
name = "incusd-forknet_Add-jitter-to-DHCPv6-renewal.patch";
url = "https://github.com/lxc/incus/commit/2b24a260b6177c033047f270286933563f05a999.patch?full_index=1";
hash = "sha256-grMspYyqn4Zl1Kn+hFeUfeIevdwszJc0x2YDC2JILKw=";
})
(fetchpatch2 {
name = "incusd-device-nic_bridged_Fix-swapped-IPv4-IPv6-DNS-record.patch";
url = "https://github.com/lxc/incus/commit/33ffcf71745e138dd4f3546839115c293e6be083.patch?full_index=1";
hash = "sha256-E8Plz9qdoTt3id9I5jbZYMKQt+kUrKmXmtMJ6IXlRJg=";
})
(fetchpatch2 {
name = "doc-authorization_Fix-reference-to-old-manager-relation.patch";
url = "https://github.com/lxc/incus/commit/c65ac0f4e6e94859b8565bce41bbf1595f4a8085.patch?full_index=1";
hash = "sha256-6wEz3uxWauIibBkH+OdB7+VsFySmugt6wk61qMayzYo=";
})
(fetchpatch2 {
name = "incusd-network-acl_Fix-issue-with-instances-in-different-project-than-ACL.patch";
url = "https://github.com/lxc/incus/commit/2a3584b6fccf152be42cf5614e54241bdb13e671.patch?full_index=1";
hash = "sha256-CXE5Bowk3ZPup6oVDEJb9ucsJoXhXu/kU7gGCghhtjQ=";
})
(fetchpatch2 {
name = "incusd-projects_Fix-targeting-on-project-delete.patch";
url = "https://github.com/lxc/incus/commit/3a104e4dc24897f0d6543136bb1043fcd4a33632.patch?full_index=1";
hash = "sha256-kTFkJqbjzdq5jvNxKw8YMPR04WRj4t5IS6ymoGyXDXE=";
})
(fetchpatch2 {
name = "test-network_acl_Add-test-for-ACL-used-by-instance-in-different-project.patch";
url = "https://github.com/lxc/incus/commit/41878729f06e9c31df9d4fac20fb8c384608577c.patch?full_index=1";
hash = "sha256-YR2Akus4vp3vNvHEmsJUh/3gbEf3R/cFUOVvt9u/wEU=";
})
(fetchpatch2 {
name = "incusd-instance-qemu_Remove-deprecated-QEMU-flag.patch";
url = "https://github.com/lxc/incus/commit/c1f18c78fc6bc4850df20574bdcc541e5eefc4ac.patch?full_index=1";
hash = "sha256-kbn4Yd/G23FCFA0Ch0+d81HUxCbcoiOzHfZ0MW+VlzE=";
})
(fetchpatch2 {
name = "incusd-cluster_Re-order-evacuations-to-happen-earlier-on-shutdown.patch";
url = "https://github.com/lxc/incus/commit/5b29ecc164ef28239d2e2a874a7c871a2e419083.patch?full_index=1";
hash = "sha256-jpyJYjiZvRw/aOGsykEx8uotRBF7p1q5O08PVhyQtvk=";
})
];
nixUpdateExtraArgs = [
"--override-filename=pkgs/by-name/in/incus/package.nix"
];
+2 -2
View File
@@ -7,14 +7,14 @@
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "instawow";
version = "7.0.0";
version = "7.0.0.post1";
pyproject = true;
src = fetchFromGitHub {
owner = "layday";
repo = "instawow";
tag = "v${finalAttrs.version}";
hash = "sha256-dT1oiPX+id0g28I9I/WJS9G6hyeHHGx5mWvNKXX1Wus=";
hash = "sha256-z7O3BHi0OECHSJF6v1ran5ALWe9PU4DxPijuN7yQJ+Q=";
};
extras = [ ]; # Disable GUI, most dependencies are not packaged.
+2 -2
View File
@@ -22,13 +22,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "lagrange";
version = "1.20.4";
version = "1.20.5";
src = fetchFromGitHub {
owner = "skyjake";
repo = "lagrange";
tag = "v${finalAttrs.version}";
hash = "sha256-Pm8ITbMlFnJLeUTUOrY4WRG17v/JIi+ZF9Y5LutCz40=";
hash = "sha256-U6SrUmTn43IleeVCLkh9NONyWtUe2Oja3e6VmYKOHvQ=";
};
nativeBuildInputs = [
+2 -2
View File
@@ -7,13 +7,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "lastools";
version = "2.0.4";
version = "2.0.5";
src = fetchFromGitHub {
owner = "LAStools";
repo = "LAStools";
tag = "v${finalAttrs.version}";
hash = "sha256-ow7zcvkenJ2j+tj2TxuEtK0dQEwzUtJ9f0wzt5/qimM=";
hash = "sha256-eXBrx8gKagxp1J4BOX+f2cH0GkMX0GJ8ebVZw7qqioA=";
};
patches = [
+74
View File
@@ -0,0 +1,74 @@
{
lib,
python313Packages,
fetchFromGitHub,
makeWrapper,
makeDesktopItem,
copyDesktopItems,
}:
python313Packages.buildPythonApplication (finalAttrs: {
pname = "lufus";
version = "1.0.0b1.1";
src = fetchFromGitHub {
owner = "Hog185";
repo = "Lufus";
tag = "v${finalAttrs.version}";
sha256 = "sha256-3i0CnhGvLTXutz8CQoH5q4PwZ23lAwnUo8H5TRJx+KE=";
};
propagatedBuildInputs = with python313Packages; [
psutil
pyqt6
pyudev
requests
platformdirs
];
pyproject = true;
build-system = with python313Packages; [
setuptools
wheel
];
nativeBuildInputs = [
makeWrapper
copyDesktopItems
];
__structuredAttrs = true;
postInstall = ''
makeWrapper ${python313Packages.python.interpreter} $out/bin/lufus \
--add-flags "-m lufus" \
--prefix PYTHONPATH : "$out/${python313Packages.python.sitePackages}:${python313Packages.makePythonPath finalAttrs.propagatedBuildInputs}"
install -Dm644 src/lufus/gui/assets/lufus.png $out/share/pixmaps/lufus.png
copyDesktopItems
'';
desktopItems = [
(makeDesktopItem {
name = "lufus";
desktopName = "Lufus";
comment = "A rufus clone written in py and designed to work with linux";
exec = "lufus";
icon = "lufus";
categories = [
"Utility"
"System"
];
})
];
meta = {
description = "A rufus clone written in py and designed to work with linux";
homepage = "https://github.com/Hog185/Lufus";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ Simon-Weij ];
platforms = lib.platforms.linux;
mainProgram = "lufus";
};
})
@@ -8,16 +8,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "markdown-code-runner";
version = "0.4.2";
version = "0.5.1";
src = fetchFromGitHub {
owner = "drupol";
repo = "markdown-code-runner";
tag = finalAttrs.version;
hash = "sha256-IMI9hjZDjgzReLIuNOISIkiLlPmnX+DWlrylP108wDc=";
hash = "sha256-GcPMkwXwLyHoVljOpfnhmysDYIFXSyvNL5P3f6q/KJw=";
};
cargoHash = "sha256-aUbavxCObgZlhlv5DyoC/yAq79UM4tR77jwTsVqN4yU=";
cargoHash = "sha256-ul5cl6FDYkW02HGtQmLHkOsSaTIn2lCaTpKjCUzdcjM=";
dontUseCargoParallelTests = true;
+9
View File
@@ -22,6 +22,15 @@ let
hash = "sha256-1KVy9s+zjlB4w7E45PMCWRxPus24bgBmmM3k2R9d+Jg=";
};
});
# 112/2907 tests fail with textual 8.2.5:
# textual.app.InvalidThemeError: Theme 'textual-ansi' has not been registered.
textual = prev.textual.overridePythonAttrs (old: rec {
version = "8.2.4";
src = old.src.override {
tag = "v${version}";
hash = "sha256-827cm9pcj1o1FYeaoWKCJ6dEyXeDop4kYd205cySTfg=";
};
});
};
};
python3Packages = python.pkgs;
+4 -4
View File
@@ -48,8 +48,8 @@ let
runHook preBuild
cat >> config/config.nims << WTF
switch("os", "${nimUnwrapped.passthru.nimTarget.os}")
switch("cpu", "${nimUnwrapped.passthru.nimTarget.cpu}")
switch("os", "${stdenv.targetPlatform.nim.os}")
switch("cpu", "${stdenv.targetPlatform.nim.cpu}")
switch("define", "nixbuild")
# Configure the compiler using the $CC set by Nix at build time
@@ -63,8 +63,8 @@ let
mv config/nim.cfg config/nim.cfg.old
cat > config/nim.cfg << WTF
os = "${nimUnwrapped.passthru.nimTarget.os}"
cpu = "${nimUnwrapped.passthru.nimTarget.cpu}"
os = "${stdenv.targetPlatform.nim.os}"
cpu = "${stdenv.targetPlatform.nim.cpu}"
define:"nixbuild"
WTF
+4 -74
View File
@@ -11,77 +11,6 @@
sqlite,
darwin,
}:
let
parseCpu =
platform:
with platform;
# Derive a Nim CPU identifier
if isAarch32 then
"arm"
else if isAarch64 then
"arm64"
else if isAlpha then
"alpha"
else if isAvr then
"avr"
else if isMips && is32bit then
"mips"
else if isMips && is64bit then
"mips64"
else if isMsp430 then
"msp430"
else if isPower && is32bit then
"powerpc"
else if isPower && is64bit then
"powerpc64"
else if isRiscV && is64bit then
"riscv64"
else if isSparc then
"sparc"
else if isx86_32 then
"i386"
else if isx86_64 then
"amd64"
else
throw "no Nim CPU support known for ${config}";
parseOs =
platform:
with platform;
# Derive a Nim OS identifier
if isAndroid then
"Android"
else if isDarwin then
"MacOSX"
else if isFreeBSD then
"FreeBSD"
else if isGenode then
"Genode"
else if isLinux then
"Linux"
else if isNetBSD then
"NetBSD"
else if isNone then
"Standalone"
else if isOpenBSD then
"OpenBSD"
else if isWindows then
"Windows"
else if isiOS then
"iOS"
else
throw "no Nim OS support known for ${config}";
parsePlatform = p: {
cpu = parseCpu p;
os = parseOs p;
};
nimHost = parsePlatform stdenv.hostPlatform;
nimTarget = parsePlatform stdenv.targetPlatform;
in
stdenv.mkDerivation (finalAttrs: {
pname = "nim-unwrapped";
version = "2.2.4";
@@ -135,8 +64,8 @@ stdenv.mkDerivation (finalAttrs: {
'';
kochArgs = [
"--cpu:${nimHost.cpu}"
"--os:${nimHost.os}"
"--cpu:${stdenv.hostPlatform.nim.cpu}"
"--os:${stdenv.hostPlatform.nim.os}"
"-d:release"
"-d:useGnuReadline"
]
@@ -168,7 +97,8 @@ stdenv.mkDerivation (finalAttrs: {
'';
passthru = {
inherit nimHost nimTarget;
nimHost = lib.warn "nimHost is deprecated, please use stdenv.hostPlatform.nim.os instead." stdenv.hostPlatform.nim.os;
nimTarget = lib.warn "nimTarget is deprecated, please use stdenv.hostPlatform.nim.cpu instead." stdenv.hostPlatform.cpu;
};
meta = {
+2 -2
View File
@@ -13,8 +13,8 @@
}:
stdenv.mkDerivation (finalAttrs: {
pname = "nomacs";
version = "3.22.0";
hash = "sha256-yheDM92AtojGXCx0UrK5gBvQgyGSxcsKPzl93HpHRt8=";
version = "3.22.1";
hash = "sha256-20ieFrIkoz4/T4QLK2PNdGPhw9Aj1+a9PimDvTKLqpg=";
src = fetchFromGitHub {
owner = "nomacs";
+2 -2
View File
@@ -13,7 +13,7 @@
}:
let
version = "1.3.0";
version = "1.3.1";
setupPy = writeText "setup.py" ''
from setuptools import setup
@@ -36,7 +36,7 @@ python3Packages.buildPythonApplication rec {
owner = "bpozdena";
repo = "OneDriveGUI";
tag = "v${version}";
hash = "sha256-Y2+5f8/v4SPO6uUnjVTaHrHcGGPEhzm2WExJvmF9M1A=";
hash = "sha256-hqo3e9YjfPpR4hLRfqozxEFN0LnEcgigleROOZqY6WY=";
};
build-system = with python3Packages; [
+2 -2
View File
@@ -37,14 +37,14 @@
}:
stdenv.mkDerivation (finalAttrs: {
version = "29.0";
version = "29.2";
pname = "owntone";
src = fetchFromGitHub {
owner = "owntone";
repo = "owntone-server";
tag = finalAttrs.version;
hash = "sha256-Z9u5clC6m5gDAKkvyvrQs9muNK/P0ipHgQUmTHLRumE=";
hash = "sha256-cCbCShIgopm3HhNVyvr6Q8fe8LkxwNE/51/0qkS27WE=";
};
nativeBuildInputs = [
+92 -92
View File
@@ -11,13 +11,13 @@
},
{
"pname": "Autofac",
"version": "9.0.0",
"hash": "sha256-9H9NGKwigUQ0x2pbCM3cgJXJsbZVzY7BvQRfa5sSi5g="
"version": "9.1.0",
"hash": "sha256-TygJLo8rvWC/KCExg+Hy3eYc0sP+AdhpdlU6fOj11f0="
},
{
"pname": "Autofac.Extensions.DependencyInjection",
"version": "10.0.0",
"hash": "sha256-ACQwFG8a5LMoqGyHI/YpwVyXZQYqM5+wnk0q2BbGVZ4="
"version": "11.0.0",
"hash": "sha256-GjvG67HWkyam/GWtdU4Wh3pXY1cJ1i3loPVG9lga7vk="
},
{
"pname": "Autofac.Extras.AggregateService",
@@ -76,13 +76,13 @@
},
{
"pname": "CliWrap",
"version": "3.10.0",
"hash": "sha256-XMGTr0gkZxSOC72hrCjpIChpN0c0A19X3TqOAdBtgb4="
"version": "3.10.1",
"hash": "sha256-uH4SXiMkUIPw5RRyKtDTTCSkkr3BhBAPrxnC4O4ES4c="
},
{
"pname": "coverlet.collector",
"version": "8.0.0",
"hash": "sha256-Gwqyodb0UVbrnV5GlEiTyKYSDqhRHjN9/UZBwkh4vnM="
"version": "10.0.0",
"hash": "sha256-0cU5wHZfwQFJFXugC19kiRo9XU1jV4ApbDKuRaL72Vc="
},
{
"pname": "Docker.DotNet.Enhanced",
@@ -106,8 +106,8 @@
},
{
"pname": "GitVersion.MsBuild",
"version": "6.6.0",
"hash": "sha256-LCaB96Y73kAb36XHXZFYeMRtVOpEZ3Q/OWon9hHgr4k="
"version": "6.7.0",
"hash": "sha256-yUiPTONPgRdES6Bt6VYdGSj9exT6744Za7QeF4v0jW8="
},
{
"pname": "JetBrains.Annotations",
@@ -121,68 +121,73 @@
},
{
"pname": "Microsoft.CodeCoverage",
"version": "18.3.0",
"hash": "sha256-fqKglbYvEb/77+rmUvLyLZSwROM1P9OW03Ub307WYZ8="
"version": "18.4.0",
"hash": "sha256-px8qchiuY5rkujAZ1wGEjuuhZdZmsRSp+FCiTmRUA1A="
},
{
"pname": "Microsoft.Extensions.Configuration",
"version": "10.0.5",
"hash": "sha256-6rOmJD7Jzq5MPLDd1aV+7gCQwIM9j4c+iT1pGea/daI="
"version": "10.0.6",
"hash": "sha256-CSd5RC5pMsmglpnE6Vm3JabMnbmziqtUGrZE5Rg7uF4="
},
{
"pname": "Microsoft.Extensions.Configuration.Abstractions",
"version": "10.0.5",
"hash": "sha256-DNK+lL2jeHFYyd43zfgVY32UskEfQ4YsTapztuQbYwo="
"version": "10.0.6",
"hash": "sha256-jxtne26QF7bASCRmLNwYsKruY3QhsnuzN9Us11WUdSQ="
},
{
"pname": "Microsoft.Extensions.Configuration.Binder",
"version": "10.0.5",
"hash": "sha256-cVG2NEW1rgLfeq/Gnh/XXqzDx2Tt8ecvgCAB4uFzcQo="
"version": "10.0.6",
"hash": "sha256-34blBlrQ3FRS7iCS7/gxPZMa9xgDW0p3iEERqwgXFMA="
},
{
"pname": "Microsoft.Extensions.DependencyInjection",
"version": "10.0.5",
"hash": "sha256-ofDRirUV9XLSz4oksCqErwBJFtAieHACFfyZukHKFng="
"version": "10.0.6",
"hash": "sha256-K3ODZC+Bwd3Tze5wF7BQvJJGlNObdf2PNA35F41jHTE="
},
{
"pname": "Microsoft.Extensions.DependencyInjection.Abstractions",
"version": "10.0.5",
"hash": "sha256-KrP+hE3gk7pATbJYZsJ1LHiXjzLA+ntHW7G/VGgHk2g="
"version": "10.0.4",
"hash": "sha256-0QhVYjk9Cxy6NFef9VKftGmscTZnvcD1bhBQoXz3mwA="
},
{
"pname": "Microsoft.Extensions.DependencyInjection.Abstractions",
"version": "8.0.1",
"hash": "sha256-lzTYLpRDAi3wW9uRrkTNJtMmaYdtGJJHdBLbUKu60PM="
"version": "10.0.6",
"hash": "sha256-lFiZb81kfBJK7J0b0A2UIpydPRT73Xcs57Gzf/+1xXc="
},
{
"pname": "Microsoft.Extensions.DependencyInjection.Abstractions",
"version": "8.0.2",
"hash": "sha256-UfLfEQAkXxDaVPC7foE/J3FVEXd31Pu6uQIhTic3JgY="
},
{
"pname": "Microsoft.Extensions.DependencyModel",
"version": "8.0.2",
"hash": "sha256-PyuO/MyCR9JtYqpA1l/nXGh+WLKCq34QuAXN9qNza9Q="
},
{
"pname": "Microsoft.Extensions.Diagnostics",
"version": "10.0.5",
"hash": "sha256-LlFT3ZzFH9QfymvP9DY4NteJKTdT+mqSGpzUDpsLNhM="
"version": "10.0.6",
"hash": "sha256-TGJjvsztoajNzOe0KeuOvtb2ZuNDbjq2NfPs15zo3kA="
},
{
"pname": "Microsoft.Extensions.Diagnostics.Abstractions",
"version": "10.0.5",
"hash": "sha256-pwQltVfaqx0jRpO0d9k/dYtyOpnGixK2MB3aHVVbo0E="
"version": "10.0.6",
"hash": "sha256-9AbUvHuHhDPjtf6vsci2r6VfSg0BlmkJkMYmIqAQ2QA="
},
{
"pname": "Microsoft.Extensions.Http",
"version": "10.0.5",
"hash": "sha256-72/sp94yZdM9dX870eibFuUc4Tvyp0tgc4/SanMAqDw="
"version": "10.0.6",
"hash": "sha256-3REMteQjA7j5LDJ7wDnlWkJlVHHXx0+dgbiVlZQAi/c="
},
{
"pname": "Microsoft.Extensions.Logging",
"version": "10.0.5",
"hash": "sha256-4gVrKZfo/YHZKgKNsgGZZYqa79XWK9wDUuiVfguUV6U="
"version": "10.0.6",
"hash": "sha256-tskLj/WXLK35gkuJAWaAhPjMW92N1JKOTzTLupR30pE="
},
{
"pname": "Microsoft.Extensions.Logging.Abstractions",
"version": "10.0.5",
"hash": "sha256-e3A/l+II+n+D7/OPwjdyQM1IBtKHfHeIdlkJmuRw77w="
"version": "10.0.6",
"hash": "sha256-4ijpXt4PoTNcmF5dl/rEZkRWBAjukB229lXtBtJhxn4="
},
{
"pname": "Microsoft.Extensions.Logging.Abstractions",
@@ -191,23 +196,23 @@
},
{
"pname": "Microsoft.Extensions.Options",
"version": "10.0.5",
"hash": "sha256-nw+m6VWXjmaBqZ1aH/l9SR9Oy62N9dmiMKloJ78kxv8="
"version": "10.0.6",
"hash": "sha256-GJCULaUcN2FxCA9fKOLe5EDEtkKLrEuP2Kw0jRqospA="
},
{
"pname": "Microsoft.Extensions.Options.ConfigurationExtensions",
"version": "10.0.5",
"hash": "sha256-VQPPvrvYWY/QpmilerCyTNLVejWeBE9mHtGTMOxXUlg="
"version": "10.0.6",
"hash": "sha256-T0HNAYrIsm1xzfBD1qLqziI5qwSsGXGmXSDdOgpC5s0="
},
{
"pname": "Microsoft.Extensions.Primitives",
"version": "10.0.5",
"hash": "sha256-uvrur+0dg4zAAQcpLkkhPA77ST0tA3+EpGdDlCckC+E="
"version": "10.0.6",
"hash": "sha256-/iSFDryQIl8rl+TtrzunT5LcbPsQCeC2V+9CnS1P4Cc="
},
{
"pname": "Microsoft.NET.Test.Sdk",
"version": "18.3.0",
"hash": "sha256-o2bILLF5i+XUoi8xZYgolU3CxLTdql5R/tEVWVnKFPU="
"version": "18.4.0",
"hash": "sha256-ak/emX4C4KQVzc0bSNK4bChS+dvb3FvxZbJNrmf/2+w="
},
{
"pname": "Microsoft.NETCore.Platforms",
@@ -216,33 +221,28 @@
},
{
"pname": "Microsoft.Testing.Extensions.Telemetry",
"version": "2.0.2",
"hash": "sha256-8f23W3125L2ZAExRVwvXSft3a93k+pSb/0CZV0HlFi4="
"version": "2.1.0",
"hash": "sha256-SawLiz1fB3QbkkyEVloEj8UpQTAIZR7U9FZfqwCkGr0="
},
{
"pname": "Microsoft.Testing.Extensions.TrxReport.Abstractions",
"version": "2.0.2",
"hash": "sha256-ePhFIkoWZVt79Tkhu62MxYyIheFMBhf1NUbIimZIZ9c="
"version": "2.1.0",
"hash": "sha256-X54qc4Ey+3hm0e5eCY1R2me8b4zGrWzjesm9fGJWXys="
},
{
"pname": "Microsoft.Testing.Extensions.VSTestBridge",
"version": "2.0.2",
"hash": "sha256-odn6fZO7yaPs3EaEUr12GraVH5anp0r/BabJpJl8q/c="
"version": "2.1.0",
"hash": "sha256-2m14uEmuEELn4Ci/CZNpKjhlnzq9vYvhgeiM03DZj7A="
},
{
"pname": "Microsoft.Testing.Platform",
"version": "2.0.2",
"hash": "sha256-K8B4tQaYslm+njUQ59nyvh4f4UgrbOo6DQgO9Hwt0aY="
"version": "2.1.0",
"hash": "sha256-CbR0j0Dh65cMccO7L6ppx4b5iiXjqxjjfC9A85HeLuM="
},
{
"pname": "Microsoft.Testing.Platform.MSBuild",
"version": "2.0.2",
"hash": "sha256-RbL2Ie/sQx07hffiao8ScR+yMyYqI8astlC0/uf3bzM="
},
{
"pname": "Microsoft.TestPlatform.AdapterUtilities",
"version": "18.0.1",
"hash": "sha256-LE5xsyc75ERflV/EA4A4DV+ja2LAb0KR/DPinAG+AgI="
"version": "2.1.0",
"hash": "sha256-6T2tBSokr5/oiwqKASk18BieKqkIzDbYX32j1Hl1z1g="
},
{
"pname": "Microsoft.TestPlatform.ObjectModel",
@@ -251,13 +251,13 @@
},
{
"pname": "Microsoft.TestPlatform.ObjectModel",
"version": "18.3.0",
"hash": "sha256-3Y3OxAQsXl6sunQlSjfq31aLWykHQTj2o/TOVI/uy88="
"version": "18.4.0",
"hash": "sha256-ERL2goDaM0vUElW25DM/5lI2WplE5E6g9mhTegY0bC8="
},
{
"pname": "Microsoft.TestPlatform.TestHost",
"version": "18.3.0",
"hash": "sha256-OkR+XvipAHPQbHywTwN8lVcMpyRs2MUJKCxJ5OfKAFk="
"version": "18.4.0",
"hash": "sha256-S4T/6xHvov8jDcbcuZAOoutMAEudUb3dMP7MyxVa8Fo="
},
{
"pname": "NETStandard.Library",
@@ -291,23 +291,23 @@
},
{
"pname": "NUnit3TestAdapter",
"version": "6.1.0",
"hash": "sha256-ApKCpMldOi4NIHU+1FedlqvpkLmgIs1hnBSy02tzv5s="
"version": "6.2.0",
"hash": "sha256-sKQjvF/qlEgfrCKHt1OzT+QZdtPt4RBBZd2f0oD1ldg="
},
{
"pname": "ReferenceTrimmer",
"version": "3.4.5",
"hash": "sha256-GS6njxeBRH0avSmrFjuEw2tNPWg8Sa/P6BplHsjmFNI="
"version": "3.4.7",
"hash": "sha256-LgRvN1CYOZGj9Cx5SrOghx3KTJVPZZ22T8EgyKMyDJc="
},
{
"pname": "Refit",
"version": "10.0.1",
"hash": "sha256-oS6MCd4cvhXlJCKMy6Dlr9gjxx0VUGaXG/reKrxKK7M="
"version": "10.1.6",
"hash": "sha256-KC0PVsbqx5RHZxItYgJaBeUQBlPLQbTx643BzEhXIc0="
},
{
"pname": "Refit.HttpClientFactory",
"version": "10.0.1",
"hash": "sha256-xn7mqLxfVpTq8EmDiKvbj/zGWupw/SabxQMmJRKOY9U="
"version": "10.1.6",
"hash": "sha256-/fkHB7cFXIRVUDnznQVJBgpwLS8KdhtiASF78xp4C8Q="
},
{
"pname": "Refitter.MSBuild",
@@ -351,28 +351,28 @@
},
{
"pname": "Spectre.Console",
"version": "0.53.1",
"hash": "sha256-uj/DD9y9MFWh5ugfQ1nTpbDP5xj55Sa8KX06B8CluMc="
},
{
"pname": "Spectre.Console",
"version": "0.54.0",
"hash": "sha256-qlZQkT5KzACqJ1bLgBOylq9qO0L7XCh/RY8L8PnkpcU="
"version": "0.55.0",
"hash": "sha256-YPW3qtPFW2Hud+y6vmZidrD8a42oDJefPW8MIwdb4rs="
},
{
"pname": "Spectre.Console.Analyzer",
"version": "1.0.0",
"hash": "sha256-Om2PRAfm4LoPImty4zpGo/uoqha6ZnuCU6iNcAvKiUE="
},
{
"pname": "Spectre.Console.Ansi",
"version": "0.55.0",
"hash": "sha256-6nV1xQurUlpKCPVkbBcn0YLTaF3vvFFRoCjV+NjYox8="
},
{
"pname": "Spectre.Console.Cli",
"version": "0.53.1",
"hash": "sha256-WN79g+F9jRsqXAwVFLYS/lfaQish2yFwL40GB/PpdTo="
"version": "0.55.0",
"hash": "sha256-VJvGl38caKtrLqc1P8HMG8T2Ny2OgEumZzqk2rUcJNw="
},
{
"pname": "Spectre.Console.Testing",
"version": "0.54.0",
"hash": "sha256-0ENVkihGqT1bS1ulKQ6Legnko56fSeY6c5C1ZU6OA6k="
"version": "0.55.0",
"hash": "sha256-Rgro4QZBqQiKHB6LP3H2nII2Tp2Lpp+wNMFoQwQCv+E="
},
{
"pname": "SSH.NET",
@@ -426,8 +426,8 @@
},
{
"pname": "TestableIO.System.IO.Abstractions",
"version": "22.1.0",
"hash": "sha256-C+zj0Xiv/wMSIqGMFSxQ06QePt7PChP1yl3EfHUAggU="
"version": "22.1.1",
"hash": "sha256-nBLPa/4R7gHmKltK260ZX6e+aOLlVkw5+2kuhraF2ec="
},
{
"pname": "TestableIO.System.IO.Abstractions.Extensions",
@@ -436,27 +436,27 @@
},
{
"pname": "TestableIO.System.IO.Abstractions.TestingHelpers",
"version": "22.1.0",
"hash": "sha256-49BRx8rx+4k8tdX+O3KOdi2NJF6uC9fVtnjnhcezK54="
"version": "22.1.1",
"hash": "sha256-tCAMji9DqF+kbA+ArJn6Lsux2bpvQwBI+d2MvzNVQn4="
},
{
"pname": "TestableIO.System.IO.Abstractions.Wrappers",
"version": "22.1.0",
"hash": "sha256-lT9YUMBZ2YRP4DSajhzACDJVlR0jm8hdZnGncXbhLxA="
"version": "22.1.1",
"hash": "sha256-1dLAGZ6XaKlxWsYljNgEsQXG8ET4mubrYxLBNpdee6I="
},
{
"pname": "Testably.Abstractions.FileSystem.Interface",
"version": "10.0.0",
"hash": "sha256-xEDpDTiT1lBFJHoWfJ9htPlwi5nrL5J/QJVj/9Slu48="
"version": "10.1.0",
"hash": "sha256-zS5HAJ+iZbjsiiqPE0+M+0PMGxOH1Bsmm3vdNSKoYPU="
},
{
"pname": "Testcontainers",
"version": "4.10.0",
"hash": "sha256-9FZz37LV8arTeK3C5SLcg0SjCczXdY1nPbfKsxZMQl4="
"version": "4.11.0",
"hash": "sha256-SbrnISUOL0sQntC/z9/jOutewfLHQVT6vqjl2MfIjmw="
},
{
"pname": "YamlDotNet",
"version": "16.3.0",
"hash": "sha256-4Gi8wSQ8Rsi/3+LyegJr//A83nxn2fN8LN1wvSSp39Q="
"version": "17.0.1",
"hash": "sha256-z23qb/L7DcjLgVsvROjyD7gr342u3QKjcPA2mZ0xz2g="
}
]
+2 -2
View File
@@ -9,13 +9,13 @@
}:
buildDotnetModule (finalAttrs: {
pname = "recyclarr";
version = "8.5.1";
version = "8.6.0";
src = fetchFromGitHub {
owner = "recyclarr";
repo = "recyclarr";
tag = "v${finalAttrs.version}";
hash = "sha256-q2WEa28TYmmg2KDTIsT7AHQC5o0YwpOw+zmepvhoLaI=";
hash = "sha256-Uu6fBKODzKGYA6vSJPw0OV/+bi3y2F/SHfrdd5pdyzs=";
};
projectFile = "Recyclarr.slnx";
+3 -3
View File
@@ -9,16 +9,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "reindeer";
version = "2026.02.23.00";
version = "2026.05.04.00";
src = fetchFromGitHub {
owner = "facebookincubator";
repo = "reindeer";
tag = "v${finalAttrs.version}";
hash = "sha256-m2IqtOzkrKhFfpwNX1KGW2HZz9DLskGXHum8mc4SVuc=";
hash = "sha256-m27zMZbDv/2bXhb16rFxUUokEn0bxyrhpxlOSZvVcfk=";
};
cargoHash = "sha256-fWpxIQJOcqzUwHNID+Wc+3QOY9P9hIAYSb9wP8x4pVU=";
cargoHash = "sha256-nJU9ClYxRkAfFkOq1V7k34pjdqJntDr3gJekUibq304=";
nativeBuildInputs = [ pkg-config ];
+3 -4
View File
@@ -6,19 +6,18 @@
pkg-config,
nix-update-script,
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "rsrpc";
version = "0.26.0";
version = "0.27.1";
src = fetchFromGitHub {
owner = "SpikeHD";
repo = "rsRPC";
tag = "v${finalAttrs.version}";
hash = "sha256-BH7Ov4WuI34tN3lFRkifTMHuZTHNPA7nZFsAdOKDF/c=";
hash = "sha256-QzPFhdnZXiJZ4g+J9kB2v8duM2PgShptNRHliTYW3AU=";
};
cargoHash = "sha256-pMxlbOiNxmsnx6v9cTo51iu9zdK/Mzjms+6EGd3tpFs=";
cargoHash = "sha256-6Krtsj9hm8NqkFQMQ0MAPrFAjnzcTt4q5C1Fs5mx2SM=";
nativeBuildInputs = [
pkg-config
+57
View File
@@ -0,0 +1,57 @@
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -33,7 +33,7 @@
sentry-actix = "0.35.0"
mime = "0.3.17"
mime_guess = "2.0.5"
-mobc = "0.8.5"
+mobc = "0.9.0"
rust-s3 = "~0.35.1"
futures = "^0.3.31"
lapin = "^2.5.0"
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2295,12 +2295,12 @@
[[package]]
name = "metrics"
-version = "0.23.0"
+version = "0.24.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "884adb57038347dfbaf2d5065887b6cf4312330dc8e94bc30a1a839bd79d3261"
+checksum = "ff56c2e7dce6bd462e3b8919986a617027481b1dcc703175b58cf9dd98a2f071"
dependencies = [
- "ahash",
"portable-atomic",
+ "rapidhash",
]
[[package]]
@@ -2357,9 +2357,9 @@
[[package]]
name = "mobc"
-version = "0.8.5"
+version = "0.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "316a7d198b51958a0ab57248bf5f42d8409551203cb3c821d5925819a8d5415f"
+checksum = "4ee4c321f7581ff6d3b02c1fd05dc0b1f17c05f23c8532d1af9413890ab5fab5"
dependencies = [
"async-trait",
"futures-channel",
@@ -2930,6 +2930,15 @@
]
[[package]]
+name = "rapidhash"
+version = "4.4.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b5e48930979c155e2f33aa36ab3119b5ee81332beb6482199a8ecd6029b80b59"
+dependencies = [
+ "rustversion",
+]
+
+[[package]]
name = "rc2"
version = "0.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
+8 -1
View File
@@ -19,7 +19,11 @@ rustPlatform.buildRustPackage (finalAttrs: {
hash = "sha256-ALnb6ICg+TZRuHayhozwJ5+imabgjBYX4W42ydhkzv0=";
};
cargoHash = "sha256-df92+gp/DtdHwPxJF89zKHjmVWzfrjnD8wAlrPRyyxk=";
# Bump mobc 0.8.5 -> 0.9.0 to pull in metrics >= 0.24.2, which fixes a borrow-checker error under newer rustc
# (https://github.com/rust-lang/rust/issues/141402).
cargoPatches = [ ./bump-mobc.patch ];
cargoHash = "sha256-FyuUdskTEGiBs7qC7cv1u8d4BCZ2IEOduhAe3m4IDV0=";
env = {
OPENSSL_NO_VENDOR = 1;
@@ -54,6 +58,9 @@ rustPlatform.buildRustPackage (finalAttrs: {
"--skip=notifiers::impls::http_notifier::tests::unknown_url"
"--skip=notifiers::impls::kafka_notifier::test::simple_success_on_prefix"
"--skip=notifiers::impls::kafka_notifier::test::simple_success_on_topic"
# flaky: ETXTBSY race on parallel fork/exec
"--skip=notifiers::impls::file_notifier::tests::success"
];
meta = {
+4 -4
View File
@@ -15,8 +15,8 @@
}:
let
sabctoolsVersion = "8.2.6";
sabctoolsHash = "sha256-olZSIjfP2E1tkCG8WzEZfrBJuDEp3PZyFFE5LJODEZE=";
sabctoolsVersion = "9.4.0";
sabctoolsHash = "sha256-JkRRtZnzp83dMKXiuqOXaTm8UOpkkhmjH2ysS8TY0DI=";
pythonEnv = python3.withPackages (
ps: with ps; [
@@ -73,14 +73,14 @@ let
];
in
stdenv.mkDerivation rec {
version = "4.5.5";
version = "5.0.1";
pname = "sabnzbd";
src = fetchFromGitHub {
owner = "sabnzbd";
repo = "sabnzbd";
rev = version;
hash = "sha256-XEWMy+Ph47neyQubehegcOxucClB1Z9t1QDLN7FrxaY=";
hash = "sha256-wx3lNGeHsNvd+nLiI9jfIKHcsVstfjEpZry6o3xbWd4=";
};
nativeBuildInputs = [ makeWrapper ];
+9
View File
@@ -2,6 +2,7 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
python3,
which,
ldc,
@@ -31,6 +32,14 @@ stdenv.mkDerivation (finalAttrs: {
lz4
];
patches = [
# remove on next release; add missing break
(fetchpatch {
url = "https://github.com/biod/sambamba/commit/5fdcf6f3015cb17b805514397223f7513bc92613.patch";
hash = "sha256-9iJmR9rJgGKH1kSFTnUCqZ4IU+Xz923SIloeBiYmIk4=";
})
];
buildFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
];
+2 -2
View File
@@ -6,14 +6,14 @@
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "soco-cli";
version = "0.4.83";
version = "0.4.85";
pyproject = true;
src = fetchFromGitHub {
owner = "avantrec";
repo = "soco-cli";
tag = "v${finalAttrs.version}";
hash = "sha256-sVu6mizqUy9AdwGRciez1wnBPTnUcIRBjkAM+IY3n0E=";
hash = "sha256-g/tUK6S9uk4PxE3xscJag8fPYA2PdsCccfP+7Wi1ji0=";
};
build-system = with python3.pkgs; [ setuptools ];
+3 -3
View File
@@ -26,13 +26,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "solanum";
version = "0-unstable-2026-04-09";
version = "0-unstable-2026-04-29";
src = fetchFromGitHub {
owner = "solanum-ircd";
repo = "solanum";
rev = "54286cf59235c8688104ee20d4e1d74fe8934317";
hash = "sha256-0som1lYheX/GVbqwEXwpIWonYKYqFwpAfcRRojlHlmc=";
rev = "eacc3388cd75060a1ece9209c24c85bc20b65ff7";
hash = "sha256-kZEjGq6kcm5sjP81at+1qVbIu1Ik3k+vJKb+cisg3IE=";
};
postPatch = ''
+1
View File
@@ -56,5 +56,6 @@ stdenv.mkDerivation (finalAttrs: {
homepage = "https://github.com/CuarzoSoftware/SRM";
maintainers = [ ];
platforms = lib.platforms.linux;
license = lib.licenses.lgpl21Only;
};
})
+2 -2
View File
@@ -9,7 +9,7 @@
buildGoModule (finalAttrs: {
pname = "starboard";
version = "0.15.33";
version = "0.15.37";
__darwinAllowLocalNetworking = true; # for tests
@@ -17,7 +17,7 @@ buildGoModule (finalAttrs: {
owner = "aquasecurity";
repo = "starboard";
tag = "v${finalAttrs.version}";
hash = "sha256-wVjwDb7VKjZSPHROTpjpR8rJvgqXJmXKJbJJXHYYxzY=";
hash = "sha256-WIgXKw+PWS1A+npYL99t0Du7BJESTvrUckWtCzq1VS4=";
# 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;
+3 -3
View File
@@ -10,16 +10,16 @@
buildGoModule (finalAttrs: {
pname = "supabase-cli";
version = "2.95.4";
version = "2.98.1";
src = fetchFromGitHub {
owner = "supabase";
repo = "cli";
rev = "v${finalAttrs.version}";
hash = "sha256-qg2b3fzmsGhVyqGQVA0Iffnna72TgH+2j0CHljG2BWg=";
hash = "sha256-BDmd9SXHe5dYvn37XNweFUqKjF4LkiNUeeAyV6nd4ZA=";
};
vendorHash = "sha256-SAqxD60UeP0jxigMQfddJlZs7EWkdws2v47smidAisk=";
vendorHash = "sha256-5HP9NMd0ByepiJOU3G9fNcz6XYFl71Pm0ZZE9Qg94vo=";
ldflags = [
"-s"
+3 -3
View File
@@ -19,18 +19,18 @@ in
rustPlatform.buildRustPackage (finalAttrs: {
pname = "surfpool-cli";
version = "1.2.0";
version = "1.2.1";
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "solana-foundation";
repo = "surfpool";
tag = "v${finalAttrs.version}";
hash = "sha256-PGCzlnu7YxueQ16uae2818I9vXWdMRFRGaFzg2DIIgo=";
hash = "sha256-oO6K8OJXj2HQOExhT/6auCjfCOpUrSkHJJncztCjRWU=";
fetchSubmodules = true;
};
cargoHash = "sha256-ephKNAJ9PtTz/EN9dGFn6LnIySU0g/GNz8Jg9JDKTSI=";
cargoHash = "sha256-MLWXYVVmJXxUY6LRsi8LiVJbVAAvcA3wbT8eiz4pAaE=";
postPatch = ''
# instead of downloading the surfpool-web-ui at build time, we fetch it beforehand and use it
+3 -3
View File
@@ -18,16 +18,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "termusic";
version = "0.12.1";
version = "0.13.2";
src = fetchFromGitHub {
owner = "tramhao";
repo = "termusic";
rev = "v${finalAttrs.version}";
hash = "sha256-e+D7ykqGX2UprakCZc9Gmaxct+b19DMfTRMkeIANXqg=";
hash = "sha256-GAbUvxRWKy5tDjf+G5cKXgwNs9Rm52h7mICyDFlrCoo=";
};
cargoHash = "sha256-0JVKY3A3W3vJgDtlZE6gtrXQa2e+4YA6R6mFUYhuQkk=";
cargoHash = "sha256-xFQObWhONoRBAdEZblBDQeQtq/KmaCWWnCwv3XEmG2k=";
useNextest = true;
+2 -2
View File
@@ -13,13 +13,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "texstudio";
version = "4.9.2";
version = "4.9.3";
src = fetchFromGitHub {
owner = "texstudio-org";
repo = "texstudio";
rev = finalAttrs.version;
hash = "sha256-u4+QUL3bOGo81+8adovqkpCKw3H6Mw6I2V3PfcKhb60=";
hash = "sha256-NTabdGaB87otc1zzKQLWXx4/nU5rXeTIw2O9nWXUMi0=";
};
nativeBuildInputs = [
+4 -4
View File
@@ -10,7 +10,7 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "tideways-daemon";
version = "1.16.0";
version = "1.17.0";
src =
finalAttrs.passthru.sources.${stdenvNoCC.hostPlatform.system}
@@ -28,15 +28,15 @@ stdenvNoCC.mkDerivation (finalAttrs: {
sources = {
"x86_64-linux" = fetchurl {
url = "https://tideways.s3.amazonaws.com/daemon/${finalAttrs.version}/tideways-daemon_linux_amd64-${finalAttrs.version}.tar.gz";
hash = "sha256-D9pD0SZsMzKLxf23w2sNHewYHXVbMxECQXuZY0yhV2o=";
hash = "sha256-ST1wQs2Z9/3fX95YAQqoHZjKsYtxPjR+VlUv3VJmESA=";
};
"aarch64-linux" = fetchurl {
url = "https://tideways.s3.amazonaws.com/daemon/${finalAttrs.version}/tideways-daemon_linux_aarch64-${finalAttrs.version}.tar.gz";
hash = "sha256-0GIffwJ+AZsUniiVrkHNEtx2IThpu9zoamDsMeBsJHg=";
hash = "sha256-TswqlF8Nmc3zyzPnJNg5yMo2Y2gKJWBo7MdUMZfc7Ms=";
};
"aarch64-darwin" = fetchurl {
url = "https://tideways.s3.amazonaws.com/daemon/${finalAttrs.version}/tideways-daemon_macos_arm64-${finalAttrs.version}.tar.gz";
hash = "sha256-MZkIdnQrfFU3i7HQg8MRmIX80PIkGQ1xeZorTP0X/mM=";
hash = "sha256-ePEJIJcG3745RVsXm4rvc6ZXVX2Ugv6fCoqezihV30M=";
};
};
updateScript = "${
+8 -3
View File
@@ -4,6 +4,7 @@
fetchFromGitHub,
# Dependencies
protobuf,
coturn,
# Tests
versionCheckHook,
nix-update-script,
@@ -12,16 +13,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "turn-rs";
version = "4.0.1";
version = "4.1.2";
src = fetchFromGitHub {
owner = "mycrl";
repo = "turn-rs";
tag = "v${finalAttrs.version}";
hash = "sha256-CtDlkHHOkU0mwNiyP9PNw/40szBNKeGYvVep9Z/aoDg=";
hash = "sha256-YZPKcLePLX+Mdu4J31VNofiX/qCLjcxydc4iVhonhkU=";
};
cargoHash = "sha256-x45GDuhxqoB/DZvccdzxBoS/7nnFvHtjkRgfM/LOOE8=";
cargoHash = "sha256-vvhj0B/KYdOeddALh38MvAwrg8sIAIlEzTj0yFNEjFk=";
# By default, no features are enabled
# https://github.com/mycrl/turn-rs?tab=readme-ov-file#features-1
@@ -31,6 +32,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
protobuf
];
# Fix coturn needed
nativeCheckInputs = [ coturn ];
env.COTURN_UCLIENT_PATH = lib.getExe' coturn "turnutils_uclient";
nativeInstallCheckInputs = [
versionCheckHook
];
+4 -3
View File
@@ -30,18 +30,19 @@
stdenv.mkDerivation (finalAttrs: {
pname = "typesetter";
version = "0.12.3";
version = "0.12.6";
__structuredAttrs = true;
src = fetchFromCodeberg {
owner = "haydn";
repo = "typesetter";
tag = "v${finalAttrs.version}";
hash = "sha256-p2MKLcMtguz/oRrNenD+jlIJ62DYyDm0eW7bZ/FhajA=";
hash = "sha256-BN/gxJzJ2rjSztVWCid8y9NiHCqMVSQIW4b6VmjJGTo=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
inherit (finalAttrs) pname version src;
hash = "sha256-vQQ9xMuzv+5DPXDw2GUXBwbkBf5YOFZwA05NwidRKzQ=";
hash = "sha256-6GM3c4Pq/U5dvpR8R/d78nwoWfbUQTwhjlCOhN5UG0s=";
};
strictDeps = true;
+3 -3
View File
@@ -16,18 +16,18 @@
buildGoModule (finalAttrs: {
pname = "wails";
version = "2.11.0";
version = "2.12.0";
src = fetchFromGitHub {
owner = "wailsapp";
repo = "wails";
tag = "v${finalAttrs.version}";
hash = "sha256-H1Nml2vhCx4IB/CT+kDro5joAw8ewpxoQjDgvqamAr8=";
hash = "sha256-XngfbEbXhPRRKbNp/aaVCleISABTs90d5JjmwIq7nsk=";
};
sourceRoot = "${finalAttrs.src.name}/v2";
vendorHash = "sha256-RgRrKok06HDg6j5tbOmtX9mOl/t6eXuCwQ2OhOXbHUU=";
vendorHash = "sha256-dmSH5I+bOErmtCxQdjkJXp1x2G5bpElL1VK6aZOv69I=";
proxyVendor = true;
+3 -3
View File
@@ -11,16 +11,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "yara-x";
version = "1.15.0";
version = "1.16.0";
src = fetchFromGitHub {
owner = "VirusTotal";
repo = "yara-x";
tag = "v${finalAttrs.version}";
hash = "sha256-P0VxfsyjtgLNJcZMh+BHj7ujg/ReB4xycinfCS3NJyU=";
hash = "sha256-n/AhEKlQmjbTtPncal6NDn7BcXb4HfnkuJctvDjW2V0=";
};
cargoHash = "sha256-FIZihLzpP9EhqQU/L6hKQQsMAhd1SsVzKap3GlghHSk=";
cargoHash = "sha256-MbMjrrPN1ctlYoE6R5p8g354OOmu4NplcGwSm3IcHRI=";
env = {
CARGO_PROFILE_RELEASE_LTO = "fat";
@@ -19,13 +19,13 @@
stdenv.mkDerivation rec {
pname = "switchboard-plug-sound";
version = "8.0.2";
version = "8.0.3";
src = fetchFromGitHub {
owner = "elementary";
repo = "settings-sound";
tag = version;
hash = "sha256-eemNFGTh/QQJst04t+fzyDkowpAVRQpMS8EFUiLIMok=";
hash = "sha256-jiaxb8aQuGrPcIaR28L2i2J3z4eL+OdrbCJ/abuXvuY=";
};
nativeBuildInputs = [
@@ -4,7 +4,6 @@
coq,
flocq,
MenhirLib,
ocamlPackages,
fetchpatch,
makeWrapper,
coq2html,
@@ -71,7 +70,7 @@ let
strictDeps = true;
nativeBuildInputs = with ocamlPackages; [
nativeBuildInputs = with coq.ocamlPackages; [
makeWrapper
ocaml
findlib
@@ -79,7 +78,7 @@ let
coq
coq2html
];
buildInputs = with ocamlPackages; [ menhirLib ];
buildInputs = with coq.ocamlPackages; [ menhirLib ];
propagatedBuildInputs = [
flocq
MenhirLib
@@ -52,10 +52,12 @@ mkCoqDerivation {
mathcomp.algebra
mathcomp-finmap
mathcomp.fingroup
mathcomp-algebra-tactics
fourcolor
stdlib
];
]
++ lib.optional (
mathcomp.version != "dev" && lib.versions.isLe "2.5" mathcomp.version
) mathcomp-algebra-tactics;
meta = {
description = "Library of formalized graph theory results in Coq";
@@ -38,9 +38,11 @@
release."2024.07.2".sha256 = "sha256-aF8SYY5jRxQ6iEr7t6mRN3BEmIDhJ53PGhuZiJGB+i8=";
propagatedBuildInputs = [
mathcomp-algebra-tactics
mathcomp-word
];
]
++ lib.optional (
mathcomp.version != "dev" && lib.versions.isLe "2.5" mathcomp.version
) mathcomp-algebra-tactics;
makeFlags = [
"-C"
@@ -32,13 +32,13 @@ mkCoqDerivation {
lib.switch
[ coq.coq-version mathcomp-algebra.version ]
[
(case (range "8.20" "9.1") (isGe "2.4") "1.2.7")
(case (range "8.20" "9.1") (isGe "2.4") "1.2.6")
(case (range "8.20" "9.1") (isGe "2.4") "1.2.5")
(case (range "8.16" "9.0") (isGe "2.0") "1.2.4")
(case (range "8.16" "8.18") (isGe "2.0") "1.2.2")
(case (range "8.16" "8.19") (isGe "1.15") "1.1.1")
(case (range "8.13" "8.16") (isGe "1.12") "1.0.0")
(case (range "8.20" "9.1") (range "2.4" "2.5") "1.2.7")
(case (range "8.20" "9.1") (range "2.4" "2.4") "1.2.6")
(case (range "8.20" "9.1") (range "2.4" "2.4") "1.2.5")
(case (range "8.16" "9.0") (range "2.0" "2.3") "1.2.4")
(case (range "8.16" "8.18") (range "2.0" "2.2") "1.2.2")
(case (range "8.16" "8.19") (range "1.15" "1.19") "1.1.1")
(case (range "8.13" "8.16") (range "1.12" "1.17") "1.0.0")
]
null;
@@ -1,6 +1,7 @@
{
coq,
mkCoqDerivation,
mathcomp,
mathcomp-analysis,
mathcomp-analysis-stdlib,
mathcomp-algebra-tactics,
@@ -71,6 +72,10 @@
(o: {
propagatedBuildInputs =
o.propagatedBuildInputs
++ lib.optional (lib.versions.isGe "0.6.1" o.version || o.version == "dev") mathcomp-algebra-tactics
++ lib.optional (
mathcomp.version != "dev"
&& lib.versions.isLe "2.5" mathcomp.version
&& (lib.versions.isGe "0.6.1" o.version || o.version == "dev")
) mathcomp-algebra-tactics
++ lib.optional (lib.versions.isGe "0.7.2" o.version || o.version == "dev") interval;
})
@@ -256,7 +256,7 @@ if coq.rocqPackages ? mathcomp && version != "2.3.0" && version != "2.4.0" then
fetchzip
hierarchy-builder
;
inherit (coq.rocqPackages) rocq-core;
inherit (coq.rocqPackages) rocq-core micromega-plugin;
};
in
mc
@@ -27,6 +27,5 @@ buildPecl {
homepage = "https://github.com/grpc/grpc/tree/master/src/php/ext/grpc";
license = lib.licenses.asl20;
teams = [ lib.teams.php ];
broken = lib.versionAtLeast php.version "8.5";
};
}
@@ -26,16 +26,21 @@
buildPythonPackage (finalAttrs: {
pname = "aioesphomeapi";
version = "44.13.3";
version = "44.23.0";
pyproject = true;
src = fetchFromGitHub {
owner = "esphome";
repo = "aioesphomeapi";
tag = "v${finalAttrs.version}";
hash = "sha256-PCCz12AAZuhDzqgJGhYpncr2ICN6xWefi/s9icbMSck=";
hash = "sha256-mKk4NO44mVTV5Fe8oDhQYcNp8V1OLsPt4xk+kztXwrM=";
};
postPatch = ''
substituteInPlace pyproject.toml \
--replace-fail "setuptools>=82.0.1" setuptools
'';
build-system = [
setuptools
cython
@@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "bellows";
version = "0.49.0";
version = "0.49.1";
pyproject = true;
src = fetchFromGitHub {
owner = "zigpy";
repo = "bellows";
tag = version;
hash = "sha256-haWej3ZcUPd9Rpqf2PH8r0useylnLDaPiSctrwLz71Q=";
hash = "sha256-dt4cwew/jRpmXaZORfjNCivUMynFbRJITOnmP34Aq+I=";
};
postPatch = ''
@@ -2,7 +2,6 @@
lib,
buildPythonPackage,
fetchFromGitHub,
stdenv,
# build-system
hatchling,
@@ -108,11 +107,12 @@ buildPythonPackage (finalAttrs: {
"test_convex_convex"
"test_dumps"
"test_dumps_invalidstate_raises"
]
++ lib.optionals stdenv.hostPlatform.isAarch64 [
# Flaky:
# AssertionError: Array(-0.00135638, dtype=float32) != 0.0 within 0.001 delta (Array(0.00135638, dtype=float32) difference)
"test_pendulum_period2"
# AssertionError: Array(837.4592, dtype=float32) not greater than 990.0
"testSpeed1"
];
disabledTestPaths = [
@@ -10,16 +10,16 @@
six,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "ecdsa";
version = "0.19.1";
version = "0.19.2";
pyproject = true;
src = fetchFromGitHub {
owner = "tlsfuzzer";
repo = "python-ecdsa";
tag = "python-ecdsa-${version}";
hash = "sha256-PjOjHQziQ9ohXH82Ocaowj/AtsXHMHDhatFPQNccyC8=";
tag = "python-ecdsa-${finalAttrs.version}";
hash = "sha256-u+EwAF/EnF33l/gy5y8eoA7aVeI/0cq9DDL9UUwgPFw=";
};
build-system = [ setuptools ];
@@ -39,7 +39,7 @@ buildPythonPackage rec {
};
meta = {
changelog = "https://github.com/tlsfuzzer/python-ecdsa/blob/${src.tag}/NEWS";
changelog = "https://github.com/tlsfuzzer/python-ecdsa/blob/${finalAttrs.src.tag}/NEWS";
description = "ECDSA cryptographic signature library";
homepage = "https://github.com/warner/python-ecdsa";
license = lib.licenses.mit;
@@ -51,4 +51,4 @@ buildPythonPackage rec {
"CVE-2024-23342"
];
};
}
})
@@ -1,7 +1,7 @@
{
lib,
aiohttp,
aresponses,
aioresponses,
awesomeversion,
backoff,
buildPythonPackage,
@@ -20,14 +20,14 @@
buildPythonPackage rec {
pname = "gotailwind";
version = "0.3.0";
version = "0.4.0";
pyproject = true;
src = fetchFromGitHub {
owner = "frenck";
repo = "python-gotailwind";
tag = "v${version}";
hash = "sha256-kNyqSyJ1ha+BumYX4ruWaN0akEvUEsRxPs7Fj7LDHOw=";
hash = "sha256-sDQnweGVDyewvTPkRlmk9f7YMnUdPmvB9VrvegAC2B8=";
};
postPatch = ''
@@ -53,19 +53,20 @@ buildPythonPackage rec {
};
nativeCheckInputs = [
aresponses
aioresponses
pytest-asyncio
pytest-cov-stub
pytestCheckHook
syrupy
];
]
++ lib.concatAttrValues optional-dependencies;
pythonImportsCheck = [ "gotailwind" ];
meta = {
description = "Modul to communicate with Tailwind garage door openers";
homepage = "https://github.com/frenck/python-gotailwind";
changelog = "https://github.com/frenck/python-gotailwind/releases/tag/v$version";
changelog = "https://github.com/frenck/python-gotailwind/releases/tag/${src.tag}";
license = lib.licenses.mit;
maintainers = with lib.maintainers; [ fab ];
mainProgram = "tailwind";
@@ -8,12 +8,12 @@
buildPythonPackage (finalAttrs: {
pname = "intbitset";
version = "4.1.0";
version = "4.1.2";
pyproject = true;
src = fetchPypi {
inherit (finalAttrs) pname version;
hash = "sha256-cxRf8F5CJ8dlhf+FUGOLagg80TABC3gQRdga9Y97aSA=";
hash = "sha256-+C+v4Ly0/noBDZQgmbWoTXIdN8iXU47WMveIliwUEfg=";
};
build-system = [ setuptools ];
@@ -103,6 +103,8 @@ buildPythonPackage rec {
"test_subscribe_websocket"
# test is presumable broken in sandbox
"test_authorized_requests"
# Fails under load on Hydra; kernel stays in 'starting' state due to a zmq socket error
"test_cull_connected"
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
# attempts to use trashcan, build env doesn't allow this
@@ -119,8 +121,6 @@ buildPythonPackage rec {
++ lib.optionals (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) [
# TypeError: the JSON object must be str, bytes or bytearray, not NoneType
"test_terminal_create_with_cwd"
# Fails under load (which causes failure on Hydra)
"test_cull_connected"
];
disabledTestPaths = [
@@ -38,14 +38,15 @@
buildPythonPackage (finalAttrs: {
pname = "kagglehub";
version = "1.0.0";
version = "1.0.1";
pyproject = true;
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "Kaggle";
repo = "kagglehub";
tag = "v${finalAttrs.version}";
hash = "sha256-TwyOC4ym46zjTyikOQk5qyHoMcaY6jHEzHddXKYJwhc=";
hash = "sha256-HyPFGde1v++7Ef5dSLHLA2u2RfnlwM+63RAV+lulTjw=";
};
build-system = [
@@ -16,14 +16,15 @@
buildPythonPackage (finalAttrs: {
pname = "moyopy";
version = "0.7.9";
version = "0.8.0";
pyproject = true;
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "spglib";
repo = "moyo";
tag = "v${finalAttrs.version}";
hash = "sha256-XPXLBEGDGX8MTaM91K0Y7Zjyafq6zscSVELRk3HWIYM=";
hash = "sha256-+rSB6y9dEbUSMaWwZYhKAabxBx8jkCiUQesPJbxii8w=";
};
sourceRoot = "${finalAttrs.src.name}/moyopy";
@@ -46,7 +47,7 @@ buildPythonPackage (finalAttrs: {
sourceRoot
cargoRoot
;
hash = "sha256-DB9hyf1z6tEt7ErswfyFtXCrhEG9z8DSlGqvRRho0xo=";
hash = "sha256-Hy//xgkF3UToKq135WT2Gp6fCz0uHzhU8DtGDtgM76o=";
};
build-system = [
@@ -15,14 +15,14 @@
buildPythonPackage rec {
pname = "music-assistant-client";
version = "1.3.3";
version = "1.3.5";
pyproject = true;
src = fetchFromGitHub {
owner = "music-assistant";
repo = "client";
tag = version;
hash = "sha256-f5+25MWuovG/g3PscWt0jls/5Y/Qdt2kq9Ai7/9P4aI=";
hash = "sha256-1yJTn8gnEFkoWGQHItpdO77ltE1Ai5z9hmJvakxyi24=";
};
postPatch = ''
@@ -23,14 +23,14 @@ buildPythonPackage (finalAttrs: {
pname = "music-assistant-models";
# Must be compatible with music-assistant-client package
# nixpkgs-update: no auto update
version = "1.1.89";
version = "1.1.115";
pyproject = true;
src = fetchFromGitHub {
owner = "music-assistant";
repo = "models";
tag = finalAttrs.version;
hash = "sha256-/eNCgAB5G8g1r2fcW27lySEqg+q/1bJvwwyntigGWjo=";
hash = "sha256-oEXL0B8JNH4PcltpES375ov7QGs+gtYKlMGr1B7BlKY=";
};
postPatch = ''
@@ -21,14 +21,15 @@
buildPythonPackage (finalAttrs: {
pname = "pydantic-zarr";
version = "0.9.2";
version = "0.10.0";
pyproject = true;
__structuredAttrs = true;
src = fetchFromGitHub {
owner = "zarr-developers";
repo = "pydantic-zarr";
tag = "v${finalAttrs.version}";
hash = "sha256-zwC1qds2/KbwdBvoB2Eep0nL+6WLZBNEtxgKmvrRYE4=";
hash = "sha256-SzvYiZWnknGdJexYnGEWQaVQpHo1520RaNjuzCA4xtQ=";
};
build-system = [
@@ -6,16 +6,16 @@
dnspython,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "pynslookup";
version = "1.8.1";
version = "1.9.0";
pyproject = true;
src = fetchFromGitHub {
owner = "wesinator";
repo = "pynslookup";
tag = "v${version}";
hash = "sha256-cb8oyI8D8SzBP+tm1jGPPshJYhPegYOH0RwIH03/K/A=";
tag = "v${finalAttrs.version}";
hash = "sha256-GdI5Jg/+HjdtbzpLa28z/ZUGPJL9vEbJ+Jd4HP4pQCY=";
};
build-system = [ setuptools ];
@@ -33,4 +33,4 @@ buildPythonPackage rec {
license = lib.licenses.mpl20;
maintainers = with lib.maintainers; [ fab ];
};
}
})
@@ -16,14 +16,14 @@
buildPythonPackage rec {
pname = "pypugjs";
version = "6.0.2";
version = "6.0.3";
pyproject = true;
src = fetchFromGitHub {
owner = "kakulukia";
repo = "pypugjs";
tag = "v${version}";
hash = "sha256-PABd0aa+KMrHGGaOLCqUcsw91bhytHJn06/d/k9RvCg=";
hash = "sha256-7w+YTNBxDQ8UZdvX3JfBQc9HQR3zNTGsEp+OR/LWcmU=";
};
build-system = [
@@ -18,14 +18,14 @@
buildPythonPackage (finalAttrs: {
pname = "serialx";
version = "1.6.0";
version = "1.7.0";
pyproject = true;
src = fetchFromGitHub {
owner = "puddly";
repo = "serialx";
tag = "v${finalAttrs.version}";
hash = "sha256-6yTYR66MzcXv9e0l+my5UunD493a7c3bPYwvDKMH3gI=";
hash = "sha256-yULTP7aaA/O7cz3NBMpdIybvply3ADQZENxjuexKxo8=";
};
cargoDeps = rustPlatform.fetchCargoVendor {
@@ -37,14 +37,14 @@
buildPythonPackage rec {
pname = "textual";
version = "8.2.4";
version = "8.2.5";
pyproject = true;
src = fetchFromGitHub {
owner = "Textualize";
repo = "textual";
tag = "v${version}";
hash = "sha256-827cm9pcj1o1FYeaoWKCJ6dEyXeDop4kYd205cySTfg=";
hash = "sha256-bQnyTnoG/3Lcrn9cHwNHUYw6piOg8U9bAoPfZW7SDmQ=";
};
build-system = [ poetry-core ];
@@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "zha-quirks";
version = "1.1.1";
version = "1.2.0";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "zha-device-handlers";
tag = version;
hash = "sha256-GxNxc+cu3wBjz/1VF2+0DJ/PBTLlJKm0ncgzeaw5Fxw=";
hash = "sha256-mDcvVwqzSmszaJDahzkRNteiO4C/eU+BqTdBpWj5yGw=";
};
postPatch = ''
@@ -23,7 +23,7 @@
buildPythonPackage rec {
pname = "zha";
version = "1.1.2";
version = "1.3.0";
pyproject = true;
disabled = pythonOlder "3.12";
@@ -32,7 +32,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "zha";
tag = version;
hash = "sha256-GPl3nXi24ukNHDE81keyu8m1xgS0MSRdo7ULxy6foGQ=";
hash = "sha256-oB4vxq/DJjmypmcKS6IeYEh+dTvC0Wt9X79vPbtDJgE=";
};
postPatch = ''
@@ -93,6 +93,7 @@ buildPythonPackage rec {
"test_startup_concurrency_limit"
"test_fan_ikea"
"test_background"
"test_gateway_startup_failure" # Failed first attempt, passed second, flaky
];
disabledTestPaths = [ "tests/test_cluster_handlers.py" ];
@@ -4,6 +4,7 @@
fetchFromGitHub,
pytest-asyncio,
pytestCheckHook,
pyserial-asyncio-fast,
setuptools,
zigpy,
}:
@@ -35,6 +36,11 @@ buildPythonPackage rec {
nativeCheckInputs = [
pytest-asyncio
pytestCheckHook
pyserial-asyncio-fast
];
disabledTests = [
"test_connect" # Attempts to test ioctl
];
meta = {
@@ -68,6 +68,13 @@ buildPythonPackage rec {
"tests/application/test_startup.py"
"tests/application/test_zdo_requests.py"
"tests/application/test_zigpy_callbacks.py"
# This hasn't been updated in 2 years, and we're getting new failing tests. Best I can do for now is disable them.
# If this recieves an update, please give reenabling these tests a try.
"tests/api/test_listeners.py"
"tests/api/test_request.py"
"tests/api/test_response.py"
"tests/api/test_connect.py"
"tests/test_uart.py"
];
meta = {
@@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "zigpy-zigate";
version = "0.13.4";
version = "0.14.0";
pyproject = true;
src = fetchFromGitHub {
owner = "zigpy";
repo = "zigpy-zigate";
tag = version;
hash = "sha256-pVDqb2/7Pe9zvhNNTVQfl5EphEjOPdJwvCIoTdZm7S0=";
hash = "sha256-kimlUwwlecXIBxKkBUJC8JqzMdt6Swf5SuOypOnXZCM=";
};
postPatch = ''
@@ -17,14 +17,14 @@
buildPythonPackage rec {
pname = "zigpy-znp";
version = "0.14.3";
version = "1.0.0";
pyproject = true;
src = fetchFromGitHub {
owner = "zigpy";
repo = "zigpy-znp";
tag = "v${version}";
hash = "sha256-XH/nStEGI7jmhwT5JhII4Mc+uO7B9Ur3s5MLvUOFl9c=";
hash = "sha256-beIFbmJ6h1wj+e+g+JvXedvBFjnjaTZ60PCYTbiUqic=";
};
postPatch = ''
@@ -13,10 +13,10 @@
freezegun,
frozendict,
jsonschema,
pyserial-asyncio-fast,
pytest-asyncio_0,
pytest-asyncio,
pytest-timeout,
pytestCheckHook,
serialx,
setuptools,
typing-extensions,
voluptuous,
@@ -24,14 +24,14 @@
buildPythonPackage rec {
pname = "zigpy";
version = "1.2.2";
version = "1.4.0";
pyproject = true;
src = fetchFromGitHub {
owner = "zigpy";
repo = "zigpy";
tag = version;
hash = "sha256-xCgQJYZJTjt81RC6rLb5hEyauJD3qxMK5TXTxTgXwT4=";
hash = "sha256-iBv7FKPeVzHc8xNvRLHDgWAuwHgTf4ByI1fA6Z134v8=";
};
postPatch = ''
@@ -50,7 +50,7 @@ buildPythonPackage rec {
cryptography
frozendict
jsonschema
pyserial-asyncio-fast
serialx
typing-extensions
voluptuous
];
@@ -59,7 +59,7 @@ buildPythonPackage rec {
aioresponses
filelock
freezegun
pytest-asyncio_0
pytest-asyncio
pytest-timeout
pytestCheckHook
];
@@ -21,6 +21,7 @@
single ? false,
rocq-core,
hierarchy-builder,
micromega-plugin,
version ? null,
}@args:
@@ -139,8 +140,22 @@ let
extraInstallFlags = [ "-f Makefile.coq" ];
}
);
# patched-derivation1 = derivation.overrideAttrs ...
patched-derivation1 = derivation.overrideAttrs (
o:
lib.optionalAttrs
(
lib.elem package [
"algebra"
"single"
]
&& o.version != null
&& (o.version == "dev" || lib.versions.isGe "2.6.0" o.version)
)
{
propagatedBuildInputs = o.propagatedBuildInputs ++ [ micromega-plugin ];
}
);
in
derivation;
patched-derivation1;
in
mathcomp_ (if single then "single" else "all")
@@ -0,0 +1,55 @@
{
lib,
mkRocqDerivation,
rocq-core,
version ? null,
}:
mkRocqDerivation {
pname = "micromega-plugin";
owner = "rocq-community";
inherit version;
defaultVersion =
let
case = case: out: { inherit case out; };
in
with lib.versions;
lib.switch rocq-core.rocq-version [
(case (range "9.0" "9.2") "1.0.0")
] null;
release = {
"1.0.0".sha256 = "sha256-srDOrGC4h21O9MIHfmOMJ0BKQhamaWyzQT72TwgfDYc=";
};
releaseRev = v: "v${v}";
mlPlugin = true;
useDune = true;
nativeBuildInputs = [
rocq-core.ocamlPackages.ppx_optcomp
];
propagatedBuildInputs = [
rocq-core.ocamlPackages.findlib
];
configurePhase = ''
patchShebangs etc/with-rocq-wrap.sh
'';
buildPhase = ''
etc/with-rocq-wrap.sh dune build -p micromega-plugin @install ''${enableParallelBuilding:+-j $NIX_BUILD_CORES}
'';
installPhase = ''
etc/with-rocq-wrap.sh dune install --root . micromega-plugin --prefix=$out --libdir $OCAMLFIND_DESTDIR
mkdir $out/lib/coq/
mv $OCAMLFIND_DESTDIR/coq $out/lib/coq/${rocq-core.rocq-version}
'';
meta = {
description = "Plugin for (semi)decision procedures for arithmetic.";
license = lib.licenses.lgpl21;
};
}
@@ -1,7 +1,7 @@
{
lib,
fetchFromGitHub,
fetchpatch,
fetchpatch2,
stdenv,
# for passthru.plugins
pkgs,
@@ -35,6 +35,14 @@ let
fetchSubmodules = true;
};
patches = [
(fetchpatch2 {
name = "fix-shiboken6-type-index-case.patch";
url = "https://github.com/rizinorg/cutter/commit/07fea9c772dc573588dc2e5771f0740ee1883738.patch?full_index=1";
hash = "sha256-/C/s+Ui5F7MCxbzbChQ5Tv/oUHUQxXmk9xOnNI80xwQ=";
})
];
nativeBuildInputs = [
cmake
pkg-config

Some files were not shown because too many files have changed in this diff Show More