Merge release-26.05 into staging-nixos-26.05

This commit is contained in:
nixpkgs-ci[bot] 2026-06-10 00:55:45 +00:00 committed by GitHub
commit 7a3cfec410
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
128 changed files with 1579 additions and 1619 deletions

View file

@ -9,9 +9,9 @@
},
"branch": "nixpkgs-unstable",
"submodules": false,
"revision": "02f3fa0374fa13707d42d55d58ecc76b091f223c",
"url": "https://github.com/NixOS/nixpkgs/archive/02f3fa0374fa13707d42d55d58ecc76b091f223c.tar.gz",
"hash": "0z8d33c5g0gk9a74ppqq77npisf9xx9c8ai9isxa2hyjx4lv1pki"
"revision": "cbb5cf358f50aa6acc9efd6113b7bcfbc352cd73",
"url": "https://github.com/NixOS/nixpkgs/archive/cbb5cf358f50aa6acc9efd6113b7bcfbc352cd73.tar.gz",
"hash": "sha256-IX7G1dlKrOqPOImfbo7ADDfV5yU1+j+MRChI3TL4tAA="
},
"treefmt-nix": {
"type": "Git",
@ -22,10 +22,10 @@
},
"branch": "main",
"submodules": false,
"revision": "790751ff7fd3801feeaf96d7dc416a8d581265ba",
"url": "https://github.com/numtide/treefmt-nix/archive/790751ff7fd3801feeaf96d7dc416a8d581265ba.tar.gz",
"hash": "1zah3dmbpn3ap5acg22kq1j19dg32gj73l43yamjcxhc38sv9kd5"
"revision": "db947814a175b7ca6ded66e21383d938df01c227",
"url": "https://github.com/numtide/treefmt-nix/archive/db947814a175b7ca6ded66e21383d938df01c227.tar.gz",
"hash": "sha256-eynAfOmbmxJnkp7YewvCEbShNnnYJ9gLLqkzsYtBPeM="
}
},
"version": 5
"version": 8
}

View file

@ -1,8 +1,9 @@
#!/usr/bin/env nix-shell
#!nix-shell -i bash -p npins
#!nix-shell -i bash -p npins -I nixpkgs=../
set -euo pipefail
cd "$(dirname "${BASH_SOURCE[0]}")"
npins --lock-file pinned.json upgrade
npins --lock-file pinned.json update

View file

@ -7919,6 +7919,11 @@
githubId = 18375468;
name = "Elliot Xu";
};
elliotberman = {
name = "Elliot Berman";
github = "elliotberman";
githubId = 210410075;
};
elliottslaughter = {
name = "Elliott Slaughter";
email = "elliottslaughter@gmail.com";

View file

@ -304,7 +304,6 @@ in
meta = {
maintainers = with lib.maintainers; [
happysalada
euxane
onny
norpol
];

View file

@ -252,12 +252,13 @@ in
in
{
"/" = {
# recommendedProxySettings sets the standard headers (Host, X-Forwarded-*), so
# don't also set them via proxy_set_header in extraConfig below. Nginx would then
# send Host twice and Django rejects it with DisallowedHost. Enabled per-location
# so it works even if the host's global recommendedProxySettings is off.
recommendedProxySettings = true;
extraConfig = ''
proxy_set_header Host $host;
proxy_set_header X-Forwarded-By $server_addr:$server_port;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header CLIENT_IP $remote_addr;
proxy_pass_request_headers on;
@ -272,6 +273,8 @@ in
proxyPass = "http://unix:${unixPath}";
};
"/auth" = {
# same reasoning as "/"; this subrequest also reaches Django
recommendedProxySettings = true;
extraConfig = ''
internal;
proxy_pass_request_body off;

View file

@ -146,5 +146,5 @@ in
};
};
meta.maintainers = with lib.maintainers; [ euxane ];
meta.maintainers = with lib.maintainers; [ martinetd ];
}

View file

@ -29,7 +29,7 @@ let
resolution = cfg.resolution;
maxGenerations = if cfg.maxGenerations == null then 0 else cfg.maxGenerations;
hostArchitecture = pkgs.stdenv.hostPlatform.parsed.cpu;
timeout = if config.boot.loader.timeout != null then config.boot.loader.timeout else 10;
timeout = if config.boot.loader.timeout == null then "no" else config.boot.loader.timeout;
enableEditor = cfg.enableEditor;
extraConfig = cfg.extraConfig;
extraEntries = cfg.extraEntries;

View file

@ -79,7 +79,6 @@ in
meta = {
maintainers = with lib.maintainers; [
happysalada
euxane
onny
];
};

View file

@ -12,20 +12,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.2.tar.gz";
hash = "sha256-DaAqg6Xce1RkvEM6++7CxC72AvB1SHKFBWOzJD9RIuY=";
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.3.tar.gz";
hash = "sha256-XxwvXiaWAfK318BjbzKPLVDeMBlOr5BFuD2bqU8+12o=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.2-aarch64.tar.gz";
hash = "sha256-QY7ZX4OiON7km4wjBEDCIcD8HxALAW9PRAHJNZ0t+YM=";
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.3-aarch64.tar.gz";
hash = "sha256-G+tinD/+qM5HVR4u2E0cNXtdVsbwgK8/PdZ3ic6hf4M=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.2.dmg";
hash = "sha256-CdhVxjc7wbvTSA/RU39bnek6kU3/G8z9Tj2uEadsZKA=";
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.3.dmg";
hash = "sha256-vW2LEonl0D9S0VxbeJX4jRrwhELGBwlOXwiHslvh06E=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.2-aarch64.dmg";
hash = "sha256-rMiVEmkbJIIeBfOXpPVXFBFLmkW6TLnzsPCheQWszhc=";
url = "https://download.jetbrains.com/datagrip/datagrip-2026.1.3-aarch64.dmg";
hash = "sha256-Kyt3fYPXzwTVxPFVKd+atiHWb/i7gjGahz1MJ4iXxy8=";
};
};
# update-script-end: urls
@ -39,8 +39,8 @@ mkJetBrainsProduct {
product = "DataGrip";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.23567.23";
version = "2026.1.3";
buildNumber = "261.24374.56";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -14,20 +14,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/python/dataspell-2026.1.tar.gz";
hash = "sha256-FcbflBzHsSWvkXVtrlltvb3PjihP91s0gm3wmV3zuRA=";
url = "https://download.jetbrains.com/python/dataspell-2026.1.2.tar.gz";
hash = "sha256-D5eONrO+5EL1cuskUU4cRYLgcbG7RCvlucnmw9t2COM=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/python/dataspell-2026.1-aarch64.tar.gz";
hash = "sha256-JKAW0YtwNDjk3Un4e/cWipreAI8pJaJgLNvx7oOw4RQ=";
url = "https://download.jetbrains.com/python/dataspell-2026.1.2-aarch64.tar.gz";
hash = "sha256-SSmIPF0pDMolxeXL21UaHMbZdtYbChWVxTKZOsPhH+I=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/python/dataspell-2026.1.dmg";
hash = "sha256-w/nFLddHi/l7VqQKngxhYm/LL49eiawXhK+xGBU6Ej0=";
url = "https://download.jetbrains.com/python/dataspell-2026.1.2.dmg";
hash = "sha256-2qzwzGMYuy1qEuTprxwNa5gOPgCZq2MadSKN8FT8w8c=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/python/dataspell-2026.1-aarch64.dmg";
hash = "sha256-/yZpE2aY07AedubVG6yarO4uObdaIZ4KCtKl9DaRU4c=";
url = "https://download.jetbrains.com/python/dataspell-2026.1.2-aarch64.dmg";
hash = "sha256-MGWufS0nlswdqhACNQWtlXJwfPiYw8wUx7olIxPS15k=";
};
};
# update-script-end: urls
@ -41,8 +41,8 @@ mkJetBrainsProduct {
product = "DataSpell";
# update-script-start: version
version = "2026.1";
buildNumber = "261.22158.332";
version = "2026.1.2";
buildNumber = "261.25134.18";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -12,20 +12,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.2.tar.gz";
hash = "sha256-9NEHD9FXekwjRHTrPMeK4xU4sHnXPge+wRXyCFMmPBk=";
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.3.tar.gz";
hash = "sha256-HizogKH6goX1NdcI/Fj4YsCRzDWfFvQGYSaMM9wVDCA=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.2-aarch64.tar.gz";
hash = "sha256-M7XiLlIl7JFKbARb9Zli0c3cHUo2X0nPVrGhs3pK2bQ=";
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.3-aarch64.tar.gz";
hash = "sha256-CSe04BBo4jS1cIhu4NfZqaSHMaNue2eFUPa+1gOxuoo=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.2.dmg";
hash = "sha256-Wuuj6/K/5xoM9+d59IGzBo19iOJusbIMigoflPLQ+ts=";
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.3.dmg";
hash = "sha256-WKwIP19y5EKO98JgEm468ofaRp/JO5z8lqNhtpsH4tY=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.2-aarch64.dmg";
hash = "sha256-ADWFPMC4ptj2mZk4RJgtIQjOT2xwOkL67UahoKte6mQ=";
url = "https://download.jetbrains.com/idea/gateway/JetBrainsGateway-2026.1.3-aarch64.dmg";
hash = "sha256-AHY/lY0ARkW0VoSgy0t7LLNXA965PLooWBSWxBKBV5M=";
};
};
# update-script-end: urls
@ -40,8 +40,8 @@ mkJetBrainsProduct {
productShort = "Gateway";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.24374.120";
version = "2026.1.3";
buildNumber = "261.25134.98";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -15,20 +15,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.1.tar.gz";
hash = "sha256-eljThvKi5ajNfkWRZXtP5ZmurCLZYMesz1+SeEZQe/s=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3.tar.gz";
hash = "sha256-pvBJcW2h0J2eDsFQDGC/AaX/ig/iQZF43R/y/bK3dWM=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.1-aarch64.tar.gz";
hash = "sha256-jnVqDCmBix3njTxDga0aG89C9fvDW70gnE3I/nvHtXA=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3-aarch64.tar.gz";
hash = "sha256-dlnnkWCSM8Pmv2fBv8yG9foRdkd8pYFa5hJbDq6EqIs=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.1.dmg";
hash = "sha256-lPNwVLPSrmlQVFY9AD3+xzYeMG7JZnUTMl43rXjvtWM=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3.dmg";
hash = "sha256-Sv6A37Y5yIkaE+qnFEGDBq/q9fSSSZPjJC59NB2Fsns=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.1-aarch64.dmg";
hash = "sha256-0nOcHiGOHS9QoncuJwtD6cl4v34mp9cOx2oOB0tFIOM=";
url = "https://download.jetbrains.com/idea/ideaIU-2026.1.3-aarch64.dmg";
hash = "sha256-LRyg2DLmTgChdFKR8NMGGjWDZTAWnjQpoTp3NIBvYrI=";
};
};
# update-script-end: urls
@ -43,8 +43,8 @@ mkJetBrainsProduct {
productShort = "IDEA";
# update-script-start: version
version = "2026.1.1";
buildNumber = "261.23567.138";
version = "2026.1.3";
buildNumber = "261.25134.95";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -12,20 +12,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.2.tar.gz";
hash = "sha256-VbXsfKahp1X4AwAC10VghE+ZkxThovnYHHYyvkOTtFc=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3.tar.gz";
hash = "sha256-hXb2KcCaNKIJOGbN0ZUDxMKuX++dO1FRoxvC580VIHQ=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.2-aarch64.tar.gz";
hash = "sha256-f0Owuq0OjVwnp4Gj/diiPFn9F1Hf4gm/MwHzkabIH2w=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3-aarch64.tar.gz";
hash = "sha256-+As41qcyCvAICIttMEi30b8mBTZoWKK4rjxjkVx4TXs=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.2.dmg";
hash = "sha256-XzYv58bR8ts6MTREUjqQinCzHvTdrLVEDH5vg1vQ3so=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3.dmg";
hash = "sha256-Q9m/XIgDg4F4yH0P35IaInk/se5CXqewvp248VqA4uc=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.2-aarch64.dmg";
hash = "sha256-dJOqdY+D5FssDAvocMOXk9O22qk+QLxwDm2MHK2Wggg=";
url = "https://download.jetbrains.com/webide/PhpStorm-2026.1.3-aarch64.dmg";
hash = "sha256-Yo50EhVQDg7c/C3JZ9utZxpsOY0DuZfgYzYtBN9Nmwk=";
};
};
# update-script-end: urls
@ -39,8 +39,8 @@ mkJetBrainsProduct {
product = "PhpStorm";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.24374.185";
version = "2026.1.3";
buildNumber = "261.25134.104";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -13,20 +13,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.1.tar.gz";
hash = "sha256-b4HFh0Q4ll8lZgAa0mXnJ8AuTbfQtXKH2G80ef1keJE=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.2.tar.gz";
hash = "sha256-kcd1vhb7CFn5sY69RW2I4THK3zN7DOn52O0YeIZWGWY=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.1-aarch64.tar.gz";
hash = "sha256-13cDbgcmKL6sb1MAFJ/e8m6DNR29hMOZR2uo2iCaDqo=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.2-aarch64.tar.gz";
hash = "sha256-5rTyUmevreBL5nZPa7FuodFhWcrjSQ+7T1jMFo7P/uM=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.1.dmg";
hash = "sha256-noy9KK6nVN/dldf4wUV+er/44aB/5xjHawAAvt5WkZw=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.2.dmg";
hash = "sha256-Fej8KylKSFKVxCMrBAcUIDwb0v5B5r1RysMAvcBVgh8=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/python/pycharm-2026.1.1-aarch64.dmg";
hash = "sha256-3cYWkYcwHM+BiRpogcc8v9JaRoNZZKz/UpnhWBB1MD4=";
url = "https://download.jetbrains.com/python/pycharm-2026.1.2-aarch64.dmg";
hash = "sha256-oau/wa9spYnn7XE07NGsINyqof3Mu9t9WQLuPAQ4TDc=";
};
};
# update-script-end: urls
@ -40,8 +40,8 @@ in
product = "PyCharm";
# update-script-start: version
version = "2026.1.1";
buildNumber = "261.23567.174";
version = "2026.1.2";
buildNumber = "261.24374.152";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -12,20 +12,20 @@ let
# update-script-start: urls
urls = {
x86_64-linux = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.2.tar.gz";
hash = "sha256-6rvtK1TsZsuuVqfya9eh7fHk7LJyyxg4SYrU/yXnK1I=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3.tar.gz";
hash = "sha256-0KF/IEVRT8kgHpULEmqMy9gOf06IIDA4vEV3RujjQoE=";
};
aarch64-linux = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.2-aarch64.tar.gz";
hash = "sha256-EvKpY3zbUHT03GVIT/HJxVkOtJgsCG+jYNcKfiX0mTI=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3-aarch64.tar.gz";
hash = "sha256-kiuRp9JhdS0aUFPX1brI1T9ik/iWhglIckHvv4bdPWk=";
};
x86_64-darwin = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.2.dmg";
hash = "sha256-KWbysSPVHM0BS09rntD78i8BuP3v26zha8GatFMZtg0=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3.dmg";
hash = "sha256-UjpwMCXhI+bMOvyyEbRBoNW3GGCDpi7aF6hUxffW/h0=";
};
aarch64-darwin = {
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.2-aarch64.dmg";
hash = "sha256-NEmps3wxao9cb2wgbmIndXPs78Tmona4wC9+8DBv7cI=";
url = "https://download.jetbrains.com/ruby/RubyMine-2026.1.3-aarch64.dmg";
hash = "sha256-lqa3L+rBiEH/hPmFcevWBumvvyBBzoUR3ttvA8s0uT0=";
};
};
# update-script-end: urls
@ -39,8 +39,8 @@ mkJetBrainsProduct {
product = "RubyMine";
# update-script-start: version
version = "2026.1.2";
buildNumber = "261.24374.145";
version = "2026.1.3";
buildNumber = "261.25134.97";
# update-script-end: version
src = fetchurl (urls.${system} or (throw "Unsupported system: ${system}"));

View file

@ -1,6 +1,6 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
gdk-pixbuf,
glib,
@ -9,12 +9,9 @@
gtksourceview,
pango,
webkitgtk_4_1,
pygobject3,
pyyaml,
setuptools,
}:
buildPythonApplication (finalAttrs: {
python3Packages.buildPythonApplication (finalAttrs: {
pname = "rednotebook";
version = "2.42";
pyproject = true;
@ -31,7 +28,7 @@ buildPythonApplication (finalAttrs: {
nativeBuildInputs = [ gobject-introspection ];
build-system = [ setuptools ];
build-system = with python3Packages; [ setuptools ];
propagatedBuildInputs = [
gdk-pixbuf
@ -40,9 +37,11 @@ buildPythonApplication (finalAttrs: {
gtksourceview
pango
webkitgtk_4_1
]
++ (with python3Packages; [
pygobject3
pyyaml
];
]);
makeWrapperArgs = [
"--set GI_TYPELIB_PATH $GI_TYPELIB_PATH"

View file

@ -1,14 +1,10 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchPypi,
hatch-vcs,
hatchling,
pynput,
xdg-base-dirs,
}:
buildPythonApplication (finalAttrs: {
python3Packages.buildPythonApplication (finalAttrs: {
pname = "bitwarden-menu";
version = "0.4.5";
pyproject = true;
@ -19,12 +15,12 @@ buildPythonApplication (finalAttrs: {
hash = "sha256-vUlNqSVdGhfN5WjDjf1ub32Y2WoBndIdFzfCNwo5+Vg=";
};
nativeBuildInputs = [
nativeBuildInputs = with python3Packages; [
hatch-vcs
hatchling
];
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
pynput
xdg-base-dirs
];

View file

@ -1,11 +1,10 @@
{
lib,
python3Packages,
fetchFromGitHub,
buildPythonApplication,
pybluez,
}:
buildPythonApplication (finalAttrs: {
python3Packages.buildPythonApplication (finalAttrs: {
pname = "bluetooth_battery";
version = "1.3.1";
@ -16,7 +15,7 @@ buildPythonApplication (finalAttrs: {
sha256 = "067qfxh228cy1x95bnjp88dx4k00ajj7ay7fz5vr1gkj2yfa203s";
};
propagatedBuildInputs = [ pybluez ];
propagatedBuildInputs = with python3Packages; [ pybluez ];
pyproject = false;

View file

@ -1,14 +1,13 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
pytestCheckHook,
git,
testers,
mu-repo,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "mu-repo";
version = "1.9.0";
format = "setuptools";
@ -23,7 +22,7 @@ buildPythonApplication rec {
dependencies = [ git ];
nativeCheckInputs = [
pytestCheckHook
python3Packages.pytestCheckHook
git
];

View file

@ -1,16 +1,10 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
libevdev,
paramiko,
pynput,
setuptools,
screeninfo,
tkinter,
}:
buildPythonApplication {
python3Packages.buildPythonApplication {
pname = "remarkable-mouse";
version = "unstable-2024-02-23";
@ -22,9 +16,9 @@ buildPythonApplication {
};
pyproject = true;
build-system = [ setuptools ];
build-system = with python3Packages; [ setuptools ];
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
screeninfo
paramiko
pynput

View file

@ -1,19 +1,11 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
bibtool,
pybtex,
pymupdf,
pynvim,
pyperclip,
roman,
pdfrw,
pagelabels,
setuptools,
}:
buildPythonApplication {
python3Packages.buildPythonApplication {
pname = "termpdf.py";
version = "2022-03-28";
format = "setuptools";
@ -27,6 +19,8 @@ buildPythonApplication {
propagatedBuildInputs = [
bibtool
]
++ (with python3Packages; [
pybtex
pymupdf
pyperclip
@ -35,7 +29,7 @@ buildPythonApplication {
pdfrw
pynvim
setuptools
];
]);
# upstream doesn't contain tests
doCheck = false;

View file

@ -1,15 +1,10 @@
{
lib,
python3Packages,
fetchurl,
buildPythonApplication,
python-dateutil,
sqlalchemy,
setproctitle,
icalendar,
colorama,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "yokadi";
version = "1.3.0";
format = "setuptools";
@ -19,7 +14,7 @@ buildPythonApplication rec {
hash = "sha256-zF2ffHeU+i7wzu1u4DhQ5zJXr8AjXboiyFAisXNX6TM=";
};
dependencies = [
dependencies = with python3Packages; [
python-dateutil
sqlalchemy
setproctitle

View file

@ -1,10 +1,10 @@
{
"chromium": {
"version": "149.0.7827.53",
"version": "149.0.7827.102",
"chromedriver": {
"version": "149.0.7827.53",
"hash_darwin": "sha256-JzeQy8O9gcoV195sQrfUV1TclUyAI4lzOcE5+BmgKrM=",
"hash_darwin_aarch64": "sha256-nEkMVGUVYP0q9UECGT0ibc2vzjVRIO69dFrYOB05lqg="
"version": "149.0.7827.103",
"hash_darwin": "sha256-3ws6RyF5SwjRcdo4IY+MzqcaZ6214dCVV3YB4YL+h6k=",
"hash_darwin_aarch64": "sha256-S8/dGAlipcYXzZIEJEGAnvsu3ilqjnBb8IdXUxGrp2o="
},
"deps": {
"depot_tools": {
@ -21,8 +21,8 @@
"DEPS": {
"src": {
"url": "https://chromium.googlesource.com/chromium/src.git",
"rev": "9d2c8156a72129edca4785abb98866fad60ea338",
"hash": "sha256-RPFeHTWAeJUzbWU7QyRPmT3sqf3bAEuJ7/IJ3TP40pA=",
"rev": "112f665d98a2fe84b156c74fbea2aed742f16c15",
"hash": "sha256-75PYsss5Qob493WCc28XHncjFIlvUr2HQx79w5UmK/k=",
"recompress": true
},
"src/third_party/clang-format/script": {
@ -92,8 +92,8 @@
},
"src/third_party/angle": {
"url": "https://chromium.googlesource.com/angle/angle.git",
"rev": "ded782bca9d5f165d1c4a70124cdc5384043a8b3",
"hash": "sha256-7+Hhx/V554hO3zzGuIZswkaRVDElz7ost7vbnf2wyZc="
"rev": "4b8c7f0f321952bba4f81056b4aa57d0d6428642",
"hash": "sha256-ADG0WfkeFRq4NF0m+s3a/N5+u3q4ApExuWUnV3m5uAI="
},
"src/third_party/angle/third_party/glmark2/src": {
"url": "https://chromium.googlesource.com/external/github.com/glmark2/glmark2",
@ -132,8 +132,8 @@
},
"src/third_party/dawn": {
"url": "https://dawn.googlesource.com/dawn.git",
"rev": "1815a06195d9c74ac737a96f87c05111926e04f8",
"hash": "sha256-71KbW0w60VB67+HM48WpOo18hrVId4/4QBDl+xl5pgo="
"rev": "c1179de12ec3ed8feb91e922f12a90ae33f4a8cf",
"hash": "sha256-VFEBqbSsn/3jqRGJgTM/r5DEtfhvTOIfS9fGIKzYo9I="
},
"src/third_party/dawn/third_party/glfw3/src": {
"url": "https://chromium.googlesource.com/external/github.com/glfw/glfw",
@ -552,8 +552,8 @@
},
"src/third_party/libyuv": {
"url": "https://chromium.googlesource.com/libyuv/libyuv.git",
"rev": "a7849e8a5e9c996bef2332efae897e7301055a20",
"hash": "sha256-ftOTwWULKNplqjQQ9oM9t+PU3S6/ySDOBoE5E/HWuHg="
"rev": "644251f252a84bf8ce91ff0aca86a9b16b069ab8",
"hash": "sha256-DsoOY8bg0sPOF8tF67Gk7fRqdQzG1hc9fVMlZVjKWU4="
},
"src/third_party/lss": {
"url": "https://chromium.googlesource.com/linux-syscall-support.git",
@ -607,8 +607,8 @@
},
"src/third_party/perfetto": {
"url": "https://chromium.googlesource.com/external/github.com/google/perfetto.git",
"rev": "846203c4b3b25f834a0bebc101fa8e1b8f9d0ca9",
"hash": "sha256-YOgOau9vNrOOqyUf6WylI/oQ2drCxoW7jnrHt7fAfQM="
"rev": "97c58a94bb6495c4e202467fb1c55eaa22b5670f",
"hash": "sha256-qtClkWAluLDRZn7yrHLU7qp9szP+/WsiG5JZZzRKd38="
},
"src/third_party/protobuf-javascript/src": {
"url": "https://chromium.googlesource.com/external/github.com/protocolbuffers/protobuf-javascript",
@ -652,8 +652,8 @@
},
"src/third_party/skia": {
"url": "https://skia.googlesource.com/skia.git",
"rev": "53348aa333da02b77c4b5797e2de722f5abde7d0",
"hash": "sha256-Qh0ytA45zP67VQE417iUtjPcJmJmDzcu4BAatyh6p0w="
"rev": "92a56ebeef43061f4878aa869aa1f2160265c24c",
"hash": "sha256-QEY9Wy2guRuS4CXeXHUhUNigCJWWndnNCbWQmaSYJ/A="
},
"src/third_party/smhasher/src": {
"url": "https://chromium.googlesource.com/external/smhasher.git",
@ -787,8 +787,8 @@
},
"src/third_party/webrtc": {
"url": "https://webrtc.googlesource.com/src.git",
"rev": "5a7e0ff57a52e12f834d64c57d040d1105ea17f2",
"hash": "sha256-V1accCSU6LV5Ixhd+HBOvqZ7GxT57ALsvaF8ABLIXxM="
"rev": "e8b4d4c5952a8fb7b35c2a6cba4e8c3de2ea2e1e",
"hash": "sha256-94U9URlFGLYe94KCFU0giY9bBbrHNDCBr9GEwbRbOK4="
},
"src/third_party/wuffs/src": {
"url": "https://skia.googlesource.com/external/github.com/google/wuffs-mirror-release-c.git",
@ -817,8 +817,8 @@
},
"src/v8": {
"url": "https://chromium.googlesource.com/v8/v8.git",
"rev": "5a39b146dd810a52812202fae891281d5dc4db7d",
"hash": "sha256-UbX88nE4VyWUm4PvFTOy3mC04MzSdgC006ZpQrEY8cQ="
"rev": "16ef80c1f5d3cfade812bd1743952a4cfd480a31",
"hash": "sha256-GI0NWA0XYGocxZp3+lPen6BkwaG7X3EDaEWM9rejgkI="
}
}
},

View file

@ -9,10 +9,10 @@
buildMozillaMach rec {
pname = "firefox";
version = "151.0.3";
version = "151.0.4";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "511723e5cf042abb66cbeda89b78d42de8d1b53544565670173f3e69c2a7ceefc76468c90576221418bfc9b122151ec117978caa4823cfb9b80797f3064bd895";
sha512 = "7df6099411843764321e1480b058530193bf134f590b97aadf053603c356c34599f42d6b83d739c2d6440a78cd81dd0b19fd2ddc2a59746d6bbe7e39f00b7e04";
};
meta = {

View file

@ -1,9 +1,9 @@
{
stdenv,
lib,
stdenv,
fetchFromGitHub,
wrapPython,
fetchpatch,
python3Packages,
}:
stdenv.mkDerivation {
@ -28,7 +28,7 @@ stdenv.mkDerivation {
})
];
nativeBuildInputs = [ wrapPython ];
nativeBuildInputs = [ python3Packages.wrapPython ];
installPhase = ''
install -vD droopy $out/bin/droopy
@ -43,5 +43,4 @@ stdenv.mkDerivation {
maintainers = [ ];
mainProgram = "droopy";
};
}

View file

@ -1,22 +1,11 @@
{
lib,
python3Packages,
fetchFromGitHub,
buildPythonApplication,
cacert,
setuptools,
matrix-nio,
python-magic,
markdown,
pillow,
aiofiles,
notify2,
dbus-python,
pyxdg,
python-olm,
emoji,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "matrix-commander";
version = "8.0.5";
@ -41,6 +30,8 @@ buildPythonApplication rec {
propagatedBuildInputs = [
cacert
]
++ (with python3Packages; [
setuptools
(matrix-nio.override { withOlm = true; })
python-magic
@ -52,7 +43,7 @@ buildPythonApplication rec {
pyxdg
python-olm
emoji
];
]);
meta = {
description = "Simple but convenient CLI-based Matrix client app for sending and receiving";

View file

@ -1,24 +1,13 @@
{
stdenv,
lib,
billiard,
buildPythonApplication,
stdenv,
python3Packages,
fetchFromGitHub,
fetchpatch,
gnureadline,
lxml,
matplotlib,
numpy,
opencv-python,
pymavlink,
pynmeagps,
pyserial,
setuptools,
versionCheckHook,
wxpython,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "MAVProxy";
version = "1.8.74";
pyproject = true;
@ -38,23 +27,25 @@ buildPythonApplication rec {
})
];
build-system = [ setuptools ];
build-system = with python3Packages; [ setuptools ];
dependencies = [
lxml
matplotlib
numpy
opencv-python
pymavlink
pynmeagps
pyserial
setuptools # Imports `pkg_resources` at runtime
wxpython
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
billiard
gnureadline
];
dependencies =
with python3Packages;
[
lxml
matplotlib
numpy
opencv-python
pymavlink
pynmeagps
pyserial
setuptools # Imports `pkg_resources` at runtime
wxpython
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
billiard
gnureadline
];
pythonImportsCheck = [ "MAVProxy" ];

View file

@ -1,12 +1,9 @@
{
lib,
stdenv,
python,
python3Packages,
qt5,
fetchFromGitHub,
wrapPython,
pyqt5,
pyserial,
dos2unix,
}:
@ -21,14 +18,15 @@ stdenv.mkDerivation rec {
sha256 = "07snhwmqqp52vdgr66vx50zxx0nmpmns5cdjgh50hzlhji2z1fl9";
};
buildInputs = [ python ];
pythonPath = [
buildInputs = [ python3Packages.python ];
pythonPath = with python3Packages; [
pyqt5.dev
pyserial
];
nativeBuildInputs = [
wrapPython
python3Packages.wrapPython
qt5.wrapQtAppsHook
dos2unix
];

View file

@ -1,25 +1,14 @@
{
lib,
buildPythonApplication,
python3Packages,
copyDesktopItems,
fetchPypi,
gobject-introspection,
jellyfin-apiclient-python,
jinja2,
makeDesktopItem,
mpv,
pillow,
pystray,
python,
python-mpv-jsonipc,
pywebview,
setuptools,
tkinter,
wrapGAppsHook3,
pypresence,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "jellyfin-mpv-shim";
version = "2.9.0";
pyproject = true;
@ -35,9 +24,9 @@ buildPythonApplication rec {
gobject-introspection
];
build-system = [ setuptools ];
build-system = with python3Packages; [ setuptools ];
dependencies = [
dependencies = with python3Packages; [
jellyfin-apiclient-python
mpv
pillow
@ -51,7 +40,7 @@ buildPythonApplication rec {
jinja2
pywebview
# discord rich presence dependencie
# discord rich presence dependency
pypresence
];
@ -80,7 +69,7 @@ buildPythonApplication rec {
postInstall = ''
for s in 16 32 48 64 128 256; do
mkdir -p $out/share/icons/hicolor/''${s}x''${s}/apps
ln -s $out/${python.sitePackages}/jellyfin_mpv_shim/integration/jellyfin-''${s}.png \
ln -s $out/${python3Packages.python.sitePackages}/jellyfin_mpv_shim/integration/jellyfin-''${s}.png \
$out/share/icons/hicolor/''${s}x''${s}/apps/${pname}.png
done
'';

View file

@ -1,20 +1,13 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
fetchpatch,
python,
mpv,
requests,
python-mpv-jsonipc,
pystray,
tkinter,
wrapGAppsHook3,
gobject-introspection,
mpv-shim-default-shaders,
}:
buildPythonApplication {
python3Packages.buildPythonApplication {
pname = "plex-mpv-shim";
version = "1.11.0-unstable-2025-03-17";
format = "setuptools";
@ -31,7 +24,7 @@ buildPythonApplication {
gobject-introspection
];
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
mpv
requests
python-mpv-jsonipc
@ -47,7 +40,7 @@ buildPythonApplication {
postInstall = ''
# put link to shaders where upstream package expects them
ln -s ${mpv-shim-default-shaders}/share/mpv-shim-default-shaders $out/${python.sitePackages}/plex_mpv_shim/default_shader_pack
ln -s ${mpv-shim-default-shaders}/share/mpv-shim-default-shaders $out/${python3Packages.python.sitePackages}/plex_mpv_shim/default_shader_pack
'';
# does not contain tests

View file

@ -7,13 +7,13 @@
mkHyprlandPlugin {
pluginName = "hyprspace";
version = "0-unstable-2025-09-28";
version = "0-unstable-2026-05-28";
src = fetchFromGitHub {
owner = "KZDKM";
repo = "hyprspace";
rev = "e54884da1d6a1af76af9d053887bf3750dd554fd";
hash = "sha256-QhcOFLJYC9CiSVPkci62ghMEAJChzl+L98To1pKvnRQ=";
rev = "c109256f5a79a8694acd6176971c4a273d32264c";
hash = "sha256-q+5ETwj+oiZBT9j6/huwB8nwV4nbZdZmCrchL2E7tDQ=";
};
dontUseCmakeConfigure = true;

View file

@ -1,15 +1,12 @@
{
lib,
buildPythonPackage,
python3Packages,
fetchFromGitHub,
hatchling,
more-itertools,
click,
hyprland,
makeWrapper,
}:
buildPythonPackage (finalAttrs: {
python3Packages.buildPythonPackage (finalAttrs: {
pname = "hyprshade";
version = "4.0.1";
pyproject = true;
@ -22,11 +19,11 @@ buildPythonPackage (finalAttrs: {
};
nativeBuildInputs = [
hatchling
python3Packages.hatchling
makeWrapper
];
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
more-itertools
click
];

View file

@ -0,0 +1,38 @@
{
lib,
ffmpeg_6,
alvr,
}:
(ffmpeg_6.override {
version = "6.0";
hash = "sha256-RVbgsafIbeUUNXmUbDQ03ZN42oaUo0njqROo7KOQgv0=";
withHardcodedTables = false;
withHtmlDoc = false;
withManPages = false;
withPodDoc = false;
withTxtDoc = false;
withDocumentation = false;
}).overrideAttrs
(old: {
# apply our own ffmpeg patches, but skip texinfo-7.1.patch as it does not apply to 6.0.
# apply upstream patches for ALVR as well.
patches =
(lib.filter (p: !(lib.hasSuffix "texinfo-7.1.patch" (baseNameOf (toString p)))) old.patches)
++ [
(alvr.src + "/alvr/xtask/patches/0001-Add-AV_VAAPI_DRIVER_QUIRK_HEVC_ENCODER_ALIGN_64_16-f.patch")
(alvr.src + "/alvr/xtask/patches/0001-av1-encode-backport.patch")
(alvr.src + "/alvr/xtask/patches/0001-clip-constants-used-with-shift-instr.patch")
(alvr.src + "/alvr/xtask/patches/0001-guid-conftest.patch")
(alvr.src + "/alvr/xtask/patches/0001-lavu-hwcontext_vulkan-Fix-importing-RGBx-frames-to-C.patch")
(alvr.src + "/alvr/xtask/patches/0001-update-rc-modes.patch")
(alvr.src + "/alvr/xtask/patches/0001-vaapi_encode-Add-filler_data-option.patch")
(alvr.src + "/alvr/xtask/patches/0001-vaapi_encode-Allow-to-dynamically-change-bitrate-and.patch")
(alvr.src + "/alvr/xtask/patches/0001-vaapi_encode-Enable-global-header.patch")
(alvr.src + "/alvr/xtask/patches/0001-vaapi_encode_h265-Set-vui_parameters_present_flag.patch")
];
doCheck = false;
})

View file

@ -2,8 +2,10 @@
lib,
rustPlatform,
fetchFromGitHub,
fetchpatch,
replaceVars,
nix-update-script,
callPackage,
pkg-config,
autoAddDriverRunpath,
alsa-lib,
@ -11,7 +13,7 @@
brotli,
bzip2,
celt,
ffmpeg_7,
ffmpeg-alvr ? callPackage ./ffmpeg.nix { },
gmp,
jack2,
lame,
@ -42,6 +44,7 @@
}:
rustPlatform.buildRustPackage (finalAttrs: {
pname = "alvr";
version = "20.14.1";
src = fetchFromGitHub {
@ -56,20 +59,15 @@ rustPlatform.buildRustPackage (finalAttrs: {
patches = [
(replaceVars ./fix-finding-libs.patch {
ffmpeg = lib.getDev ffmpeg_7;
ffmpeg = lib.getDev ffmpeg-alvr;
x264 = lib.getDev x264;
})
(fetchpatch {
url = "https://github.com/alvr-org/ALVR/commit/12a238b9ac9d63438163ff82cbd689733558a1e4.patch";
hash = "sha256-yvIGjopXIwGXajs5/RlAo+eqfVNnXlomKy/VO/dL+gc=";
})
];
postPatch = ''
substituteInPlace alvr/server_openvr/cpp/platform/linux/EncodePipelineVAAPI.cpp \
--replace-fail 'FF_PROFILE_H264_MAIN' 'AV_PROFILE_H264_MAIN' \
--replace-fail 'FF_PROFILE_H264_BASELINE' 'AV_PROFILE_H264_BASELINE' \
--replace-fail 'FF_PROFILE_H264_HIGH' 'AV_PROFILE_H264_HIGH' \
--replace-fail 'FF_PROFILE_HEVC_MAIN' 'AV_PROFILE_HEVC_MAIN' \
--replace-fail 'FF_PROFILE_AV1_MAIN' 'AV_PROFILE_AV1_MAIN'
'';
env = {
NIX_CFLAGS_COMPILE = toString [
"-lbrotlicommon"
@ -107,7 +105,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
brotli
bzip2
celt
ffmpeg_7
ffmpeg-alvr
gmp
jack2
lame
@ -153,7 +151,10 @@ rustPlatform.buildRustPackage (finalAttrs: {
ln -s $out/lib $out/lib64
'';
passthru.updateScript = nix-update-script { };
passthru = {
inherit ffmpeg-alvr;
updateScript = nix-update-script { };
};
meta = {
description = "Stream VR games from your PC to your headset via Wi-Fi";
@ -164,6 +165,7 @@ rustPlatform.buildRustPackage (finalAttrs: {
maintainers = with lib.maintainers; [
luNeder
jopejoe1
eyjhb
];
platforms = lib.platforms.linux;
};

View file

@ -26,7 +26,7 @@ buildGoModule (finalAttrs: {
# Use only versions specified in anytype-ts middleware.version file:
# https://github.com/anyproto/anytype-ts/blob/v<anytype-ts-version>/middleware.version
version = "0.49.0-rc08";
version = "0.50.8";
# Update only together with 'anytype' package.
# nixpkgs-update: no auto update
@ -34,10 +34,10 @@ buildGoModule (finalAttrs: {
owner = "anyproto";
repo = "anytype-heart";
tag = "v${finalAttrs.version}";
hash = "sha256-gTUesFf6cDwsFCEUjpcy9VA67GwuZ9mNTih4HC0Vi7g=";
hash = "sha256-h59Vnmv+iB0NbLQPCHPlmHBDaYoFimrZP/4Cv/IQ7b8=";
};
vendorHash = "sha256-1D7v/lgmoKOOHNG3vgpzDpWQ66lmmP8IeZ5rvXe4D9M=";
vendorHash = "sha256-uJ/Z2zxqIne3UuxAglZejoqHV/IchYdPhefL9K51U2I=";
subPackages = [ "cmd/grpcserver" ];
tags = [
@ -59,16 +59,11 @@ buildGoModule (finalAttrs: {
cp ${tantivy-go}/lib/libtantivy_go.a deps/libs/${arch}
'';
postBuild = ''
protoc -I ./ --js_out=import_style=commonjs,binary:./dist/js/pb pb/protos/service/*.proto pb/protos/*.proto pkg/lib/pb/model/protos/*.proto
protoc -I ./ --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:./dist/js/pb pb/protos/service/*.proto pb/protos/*.proto pkg/lib/pb/model/protos/*.proto
'';
postInstall = ''
mv $out/bin/grpcserver $out/bin/anytypeHelper
mkdir -p $out/lib
cp -r dist/js/pb/* $out/lib
cp -r dist/js/pb/* $out/lib
mkdir -p $out/lib/protos
find pb -type f -name "*.proto" -exec cp {} $out/lib/protos/ \;
find pkg/lib/pb -type f -name "*.proto" -exec cp {} $out/lib/protos/ \;
mkdir -p $out/lib/json/generated
cp pkg/lib/bundle/system*.json $out/lib/json/generated

View file

@ -1,18 +1,8 @@
From d236396b1da80a7233168e01e8164256e7f69cc1 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?David=20Chocholat=C3=BD?= <chocholaty.david@protonmail.com>
Date: Fri, 25 Apr 2025 12:29:37 +0200
Subject: [PATCH] feat(update): Disable auto checking for updates and updating
manually
---
electron/js/update.js | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/electron/js/update.js b/electron/js/update.js
index 0e34efa..9386c90 100644
--- a/electron/js/update.js
+++ b/electron/js/update.js
@@ -29,7 +29,8 @@ class UpdateManager {
diff --git a/electron/ts/update.ts b/electron/ts/update.ts
index 8d63cb8eb7..ea2dadf0c9 100644
--- a/electron/ts/update.ts
+++ b/electron/ts/update.ts
@@ -31,7 +31,8 @@ class UpdateManager {
autoUpdater.autoInstallOnAppQuit = false;
autoUpdater.channel = channel;
@ -22,16 +12,13 @@ index 0e34efa..9386c90 100644
autoUpdater.on('checking-for-update', () => {
Util.log('info', 'Checking for update');
@@ -93,6 +94,9 @@ class UpdateManager {
@@ -79,6 +80,9 @@ class UpdateManager {
};
isAllowed () {
isAllowed (): boolean {
+ // PATCH(update): Always disallow update check, even when requested by the user manually or when Anytype starts.
+ return false;
+
const { config } = ConfigManager;
if (config.updateDisabled) {
--
2.49.0

View file

@ -1,12 +1,12 @@
diff --git a/electron.js b/electron.js
index c5d6760882..17afc05e26 100644
--- a/electron.js
+++ b/electron.js
@@ -15,7 +15,6 @@ const store = new Store({ name: [ 'localStorage', suffix ].join('-') });
// gRPC DevTools extension ID
const GRPC_DEVTOOLS_ID = 'fohdnlaeecihjiendkfhifhlgldpeopm';
-const { installExtension } = require('@tomjs/electron-devtools-installer');
// Fix notifications app name
if (is.windows) {
diff --git a/electron/ts/main.ts b/electron/ts/main.ts
index 373518ee2d..8eefcd58be 100644
--- a/electron/ts/main.ts
+++ b/electron/ts/main.ts
@@ -15,7 +15,6 @@ import storage from 'electron-json-storage';
import * as remote from '@electron/remote/main';
import { installNativeMessagingHost } from './lib/installNativeMessagingHost';
import { getSafeStorage } from './safeStorage';
-import { installExtension } from '@tomjs/electron-devtools-installer';
import Api from './api';
import ConfigManager from './config';
import UpdateManager from './update';

View file

@ -1,13 +1,12 @@
diff --git a/electron/js/util.js b/electron/js/util.js
index da18f41ad0..bb07ec9f21 100644
--- a/electron/js/util.js
+++ b/electron/js/util.js
@@ -314,7 +314,9 @@ class Util {
if (!is.linux) {
diff --git a/electron/ts/util.ts b/electron/ts/util.ts
index 1c5d6fd4b4..8c7811b58e 100644
--- a/electron/ts/util.ts
+++ b/electron/ts/util.ts
@@ -318,6 +318,9 @@ class Util {
return;
};
-
+ // NixOS: desktop entries are managed by the package, avoid
+ // NixOS: desktop entries are managed by the package, avoid
+ // writing user-local anytype.desktop which goes stale on updates
+ return;
const { execFile } = require('child_process');

View file

@ -1,57 +1,115 @@
{
lib,
stdenv,
stdenvNoCC,
fetchFromGitHub,
buildNpmPackage,
nodejs_22,
makeWrapper,
coreutils,
nodejs,
node-gyp,
python3,
bun,
pkg-config,
anytype-heart,
libsecret,
electron,
go,
lsof,
protobuf,
makeDesktopItem,
copyDesktopItems,
writableTmpDirAsHomeHook,
commandLineArgs ? "",
}:
buildNpmPackage (finalAttrs: {
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "anytype";
version = "0.54.11";
version = "0.55.5";
strictDeps = true;
src = fetchFromGitHub {
owner = "anyproto";
repo = "anytype-ts";
tag = "v${finalAttrs.version}";
hash = "sha256-HF7bP3Ry3djNQnFDl0v6x9hzMpSLMXyI6UBItgGT+DI=";
hash = "sha256-9myOd7LTH/NoRY4SjU7+FSSNIhDMGKRPTBOQOURk/Hs=";
};
locales = fetchFromGitHub {
owner = "anyproto";
repo = "l10n-anytype-ts";
rev = "afa12aeb0cea6c77ce38c3e3bfd082d532948a1c";
hash = "sha256-YpOkmm7vW97t19twfLNExRHQvLVcrC+oDtHjwJL9dx8=";
rev = "b96bf7b76f10e764e7a60c7f284854aaabedcec6";
hash = "sha256-+vkProHi25CWxG74QB5eo0Pnwj0u5vXoZeeCoXyMOv4=";
};
npmDepsHash = "sha256-/QWHJ2grw34LOEIDn93WDTEpQH001vVtuQgncR2SRYQ=";
node_modules = stdenvNoCC.mkDerivation {
pname = "${finalAttrs.pname}-node_modules";
inherit (finalAttrs) version src;
# npm dependency install fails with nodejs_24: https://github.com/NixOS/nixpkgs/issues/474535
nodejs = nodejs_22;
impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [
"GIT_PROXY_COMMAND"
"SOCKS_SERVER"
];
nativeBuildInputs = [
bun
writableTmpDirAsHomeHook
];
dontConfigure = true;
buildPhase = ''
runHook preBuild
export BUN_INSTALL_CACHE_DIR=$(mktemp -d)
# https://bun.com/docs/pm/cli/install#configuring-with-environment-variables
# Bun always tries to use the fastest available installation method for the target platform. On macOS, thats clonefile and on Linux, thats hardlink.
bun install \
--backend=copyfile \
--cpu="*" \
--frozen-lockfile \
--ignore-scripts \
--no-progress \
--os="*"
runHook postBuild
'';
installPhase = ''
runHook preInstall
mkdir -p $out
find . -type d -name node_modules -exec cp -R --parents {} $out \;
runHook postInstall
'';
dontFixup = true;
outputHash = "sha256-6IHFidjVDDzUOCRXVwjvzcLGKV6dWWS7k2jwrOuJ748=";
outputHashMode = "recursive";
};
env = {
ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
};
nativeBuildInputs = [
bun
nodejs
pkg-config
go
protobuf
copyDesktopItems
makeWrapper
node-gyp
stdenv.cc
python3
];
buildInputs = [ libsecret ];
npmFlags = [
# keytar needs to be built against electron's ABI
"--nodedir=${electron.headers}"
buildInputs = [
libsecret
];
patches = [
@ -60,26 +118,54 @@ buildNpmPackage (finalAttrs: {
./0003-remove-desktop-entry.patch
];
configurePhase = ''
runHook preConfigure
cp -R ${finalAttrs.node_modules}/. .
patchShebangs node_modules
runHook postConfigure
'';
buildPhase = ''
runHook preBuild
# Building keytar against electron's ABI
# Trying to build in temp dir, will not work due to the keytar calling the node -p require('node-addon-api').include_dir
# but building inside the node_modules/keytar will find the ../node-addon-api automatically
chmod -R u+w node_modules/keytar node_modules/node-addon-api
pushd node_modules/keytar
HOME=$(mktemp -d) node-gyp rebuild --nodedir=${electron.headers}
popd
substituteInPlace scripts/generate-protos.sh \
--replace-fail "/usr/bin/env" "${coreutils}/bin/env"
cp -r ${anytype-heart}/lib dist/
cp -r ${anytype-heart}/bin/anytypeHelper dist/
# Without this, build fails when trying to copy/write into that directory during the js bundle step
chmod -R u+w dist/
bash ./scripts/generate-protos.sh --from-dist
bun run build
for lang in ${finalAttrs.locales}/locales/*; do
cp "$lang" "dist/lib/json/lang/$(basename $lang)"
done
npm run build
npm run build:nmh
# $HOME/.cache/go-build.
export GOCACHE=$(mktemp -d)
# Runs "go build -o dist/nativeMessagingHost ./go/nativeMessagingHost.go"
bun run build:nmh
runHook postBuild
'';
# remove unnecessary files
preInstall = ''
npm prune --omit=dev
chmod u+w -R dist
chmod u+w -R dist node_modules
find -type f \( -name "*.ts" -o -name "*.map" \) -exec rm -rf {} +
'';
@ -103,7 +189,7 @@ buildNpmPackage (finalAttrs: {
--add-flags ${lib.escapeShellArg commandLineArgs}
wrapProgram $out/lib/anytype/dist/nativeMessagingHost \
--prefix PATH : ${lib.makeBinPath [ lsof ]}
--prefix PATH : ${lib.makeBinPath [ lsof ]}
runHook postInstall
'';

View file

@ -57,5 +57,6 @@ tantivy_go_version=${tantivy_go_version//v}
nix-update tantivy-go --version "$tantivy_go_version" --generate-lockfile
nix-update anytype-heart --version "$middleware_version"
update-source-version anytype --ignore-same-version --source-key=locales --rev="$locales_rev"
update-source-version anytype --source-key=locales --rev="$locales_rev" --ignore-same-version
nix-update anytype --version "$anytype_version"
update-source-version anytype --source-key=node_modules --ignore-same-version --ignore-same-hash

View file

@ -12,14 +12,14 @@
stdenv.mkDerivation (finalAttrs: {
pname = "bird";
version = "2.19.0";
version = "2.19.1";
src = fetchFromGitLab {
domain = "gitlab.nic.cz";
owner = "labs";
repo = "bird";
tag = "v${finalAttrs.version}";
hash = "sha256-xk3z5kkjnInmIwtE6Q7kCJ5P5Njt/Oz1+HPO0vcr93E=";
hash = "sha256-8D83U9IgNQ0HDWk2WSQsRsy82bDmjkgectkCOXy2RyI=";
};
nativeBuildInputs = [

View file

@ -12,14 +12,14 @@
stdenv.mkDerivation (finalAttrs: {
pname = "bird";
version = "3.3.0";
version = "3.3.1";
src = fetchFromGitLab {
domain = "gitlab.nic.cz";
owner = "labs";
repo = "bird";
tag = "v${finalAttrs.version}";
hash = "sha256-mH9CM9Emie2B9c5PeW4DKUQUzvgxTExPBGG06YbWqGo=";
hash = "sha256-aJo6Ut/ULBDGoekSXgN1WvmFmonTzNA3TES1FHqCiOM=";
};
nativeBuildInputs = [

View file

@ -8,7 +8,7 @@
fetchPnpmDeps,
pnpmConfigHook,
fetchFromGitHub,
nodejs_22,
nodejs_24,
vips,
pkg-config,
nixosTests,
@ -18,22 +18,22 @@
}:
let
# build failure against better-sqlite3, so we use nodejs_22; upstream
# bluesky-pds uses 20
nodejs = nodejs_22;
# upstream bluesky-social/atproto uses nodejs 22+
nodejs = nodejs_24;
nodeSources = srcOnly nodejs;
pythonEnv = python3.withPackages (p: [ p.setuptools ]);
pnpm = pnpm_9;
in
stdenv.mkDerivation (finalAttrs: {
pname = "pds";
version = "0.4.219";
version = "0.4.5001";
src = fetchFromGitHub {
owner = "bluesky-social";
repo = "pds";
tag = "v${finalAttrs.version}";
hash = "sha256-zXNg1rtXN9qdTBvRlSiPlRu6k1Pv3T8nhROsEarev5U=";
hash = "sha256-j7XNZYZHHj5HdtEuTAhNU9TD7S7eMILMflZJn0nDVaY=";
};
sourceRoot = "${finalAttrs.src.name}/service";
@ -44,7 +44,7 @@ stdenv.mkDerivation (finalAttrs: {
pythonEnv
pkg-config
pnpmConfigHook
pnpm_9
pnpm
removeReferencesTo
]
++ lib.optionals stdenv.hostPlatform.isDarwin [
@ -61,9 +61,9 @@ stdenv.mkDerivation (finalAttrs: {
src
sourceRoot
;
pnpm = pnpm_9;
fetcherVersion = 3;
hash = "sha256-rZpimxX4oDXIaUdAkkNPEff6qYJ9C8KptsPWJKwPiFo=";
inherit pnpm;
fetcherVersion = 4;
hash = "sha256-3/gjhQIMxI/mwqmKV1wZ6oMiCGHutXuDY2CFSN3QnE4=";
};
buildPhase = ''
@ -76,7 +76,7 @@ stdenv.mkDerivation (finalAttrs: {
makeWrapper "${lib.getExe nodejs}" "$out/bin/pds" \
--add-flags --enable-source-maps \
--add-flags "$out/lib/pds/index.js" \
--add-flags "$out/lib/pds/index.ts" \
--set-default NODE_ENV production
runHook postBuild
@ -87,7 +87,7 @@ stdenv.mkDerivation (finalAttrs: {
mkdir -p $out/{bin,lib/pds}
mv node_modules $out/lib/pds
mv index.js $out/lib/pds
mv index.ts $out/lib/pds
runHook postInstall
'';

View file

@ -21,13 +21,13 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "cinny-desktop";
# We have to be using the same version as cinny-web or this isn't going to work.
version = "4.12.1";
version = "4.12.2";
src = fetchFromGitHub {
owner = "cinnyapp";
repo = "cinny-desktop";
tag = "v${finalAttrs.version}";
hash = "sha256-SRtnib5C9YlNOC1YgXZVFgO2dIHSmk+I20Ltf4XkJ6E=";
hash = "sha256-gaTgNTn0/HHzULHRL03+t73MEUOGdqcEyqaIt8CWA0k=";
};
sourceRoot = "${finalAttrs.src.name}/src-tauri";

View file

@ -7,17 +7,17 @@
buildNpmPackage (finalAttrs: {
pname = "cinny-unwrapped";
# Remember to update cinny-desktop when bumping this version.
version = "4.12.1";
version = "4.12.2";
# nixpkgs-update: no auto update
src = fetchFromGitHub {
owner = "cinnyapp";
repo = "cinny";
tag = "v${finalAttrs.version}";
hash = "sha256-s9nu6hYe0OvRcp8n2cOJnhEzIV+nyjnfwTrY477XDT8=";
hash = "sha256-UF5MwV02G0oYIXtvyzHn+DifYM8PFlyb9DZ4w1fuyDE=";
};
npmDepsHash = "sha256-e37tSrqrEXGH2uInFAiikHNwJ13gXlG50SeYF/HO0z4=";
npmDepsHash = "sha256-8SyUFv1wgnqfSyBlykmeGI8RAmFt5Q5uS6OFLi+qPPY=";
# Skip rebuilding native modules since they're not needed for the web app
npmRebuildFlags = [

View file

@ -9,13 +9,13 @@
buildGoModule (finalAttrs: {
pname = "cloudflared";
version = "2026.5.0";
version = "2026.5.2";
src = fetchFromGitHub {
owner = "cloudflare";
repo = "cloudflared";
tag = finalAttrs.version;
hash = "sha256-3Znww+QsG7voek6XfwXVUmHCG+dIrMif2rMZXpZyNn0=";
hash = "sha256-3rMA+DsyC1/ycscL4VfSCS8fZcJzMdDUw8zgmmUhRyQ=";
};
vendorHash = null;

View file

@ -75,7 +75,6 @@ stdenv.mkDerivation (finalAttrs: {
runHook postConfigure
'';
# electron builds must be writable to support electron fuses
preBuild = ''
# Validate electron version matches upstream package.json
if [ "`jq -r '.devDependencies.electron' < package.json | cut -d. -f1 | tr -d '^'`" != "${lib.versions.major electron.version}" ]
@ -83,12 +82,8 @@ stdenv.mkDerivation (finalAttrs: {
echo "ERROR: electron version mismatch between package.json and nixpkgs"
exit 1
fi
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
cp -r ${electron.dist}/Electron.app .
chmod -R u+w Electron.app
''
+ lib.optionalString stdenv.hostPlatform.isLinux ''
# electron builds must be writable to support electron fuses
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
'';
@ -103,7 +98,7 @@ stdenv.mkDerivation (finalAttrs: {
# can't run it via bunx / npx since fixupPhase was skipped for node_modules
node node_modules/electron-builder/out/cli/cli.js \
--dir \
-c.electronDist=${if stdenv.hostPlatform.isDarwin then "." else "electron-dist"} \
-c.electronDist=electron-dist \
-c.electronVersion=${electron.version} \
-c.npmRebuild=false

View file

@ -73,20 +73,17 @@ buildNpmPackage {
ln -s ${dart-sass}/bin/dart-sass "$dir"/sass
'';
postBuild =
lib.optionalString stdenv.hostPlatform.isDarwin ''
# electron-builder appears to build directly on top of Electron.app, by overwriting the files in the bundle.
cp -r ${electron.dist}/Electron.app ./
find ./Electron.app -name 'Info.plist' | xargs -d '\n' chmod +rw
''
+ ''
npm exec electron-builder -- \
--dir \
-c.electronDist=${if stdenv.hostPlatform.isDarwin then "./" else electron.dist} \
-c.electronVersion=${electron.version} \
-c.npmRebuild=false \
${lib.optionalString stdenv.hostPlatform.isDarwin "-c.mac.identity=null"}
'';
postBuild = ''
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
npm exec electron-builder -- \
--dir \
-c.electronDist=electron-dist \
-c.electronVersion=${electron.version} \
-c.npmRebuild=false \
${lib.optionalString stdenv.hostPlatform.isDarwin "-c.mac.identity=null"}
'';
installPhase = ''
runHook preInstall

View file

@ -20,13 +20,13 @@ let
in
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "freetube";
version = "0.24.0";
version = "0.24.1";
src = fetchFromGitHub {
owner = "FreeTubeApp";
repo = "FreeTube";
tag = "v${finalAttrs.version}-beta";
hash = "sha256-4XyN7ENsDwLNB/dt7pp8z0sbdmHSNIyVEHlp5GXIues=";
hash = "sha256-oo5ozdP3d82jY8OOYrt568MoSfPmwBoitdtgESiRMlE=";
};
# Darwin requires writable Electron dist

View file

@ -10,15 +10,15 @@
buildGoModule (finalAttrs: {
pname = "gitsign";
version = "0.16.0";
version = "0.16.1";
src = fetchFromGitHub {
owner = "sigstore";
repo = "gitsign";
rev = "v${finalAttrs.version}";
hash = "sha256-XFeKU956FIfQhaca2M/OtYgCF8qErzPcyMBEGvzPAcc=";
hash = "sha256-BkaEI3YSnfMbRQ0r/rGUgZqUaCe3L1BXGxO4Ft19TdQ=";
};
vendorHash = "sha256-fjrdQZVXgBvdKQFnmjtLShBHsKNIp5Y/uW7aU2cP1aY=";
vendorHash = "sha256-Sltj/DwS3T7puIaH5HAZ+BE9vlv79+FlvK+t5O2VSM0=";
subPackages = [
"."

View file

@ -64,19 +64,17 @@ stdenv.mkDerivation (finalAttrs: {
runHook postConfigure
'';
preBuild = lib.optionalString stdenv.hostPlatform.isLinux ''
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
'';
buildPhase = ''
runHook preBuild
bun run build -- --skipTypecheck
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
node node_modules/electron-builder/out/cli/cli.js \
--dir \
-c.electronDist="${if stdenv.hostPlatform.isLinux then "electron-dist" else electron.dist}" \
-c.electronDist=electron-dist \
-c.electronVersion="${electron.version}" \
-c.npmRebuild=false

View file

@ -179,11 +179,11 @@ let
linux = stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname meta passthru;
version = "149.0.7827.53";
version = "149.0.7827.102";
src = fetchurl {
url = "https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${finalAttrs.version}-1_amd64.deb";
hash = "sha256-iqNNjJy9Wje5jcpJrQYHu/gZptaBwZg0WZzbZTKUmPg=";
hash = "sha256-ETp7EURoN0p45cNnwcp6/aoPyKHSf+WPyUvKh+R7bp4=";
};
# With strictDeps on, some shebangs were not being patched correctly
@ -289,11 +289,11 @@ let
darwin = stdenvNoCC.mkDerivation (finalAttrs: {
inherit pname meta passthru;
version = "149.0.7827.54";
version = "149.0.7827.103";
src = fetchurl {
url = "http://dl.google.com/release2/chrome/dk75rnebngodpmukle2jjrfx6u_149.0.7827.54/GoogleChrome-149.0.7827.54.dmg";
hash = "sha256-O48opD0Ea336/mbs5RFjBITjf8MWOL2BAuf6gX+pnmo=";
url = "http://dl.google.com/release2/chrome/kfbyzxups2p7z7m5ltrjh7htrm_149.0.7827.103/GoogleChrome-149.0.7827.103.dmg";
hash = "sha256-N3U6RkBaPzVHl5JMkq+m17DJg3+XiwyS2AHinOs0sjo=";
};
dontPatch = true;

View file

@ -6,6 +6,7 @@
python3,
python3Packages,
gettext,
gitMinimal,
stdenv,
yarnBuildHook,
yarnConfigHook,
@ -13,12 +14,16 @@
}:
let
version = "1.2.6";
version = "1.3.0";
src = fetchFromGitHub {
owner = "inventree";
repo = "inventree";
tag = "${version}";
hash = "sha256-JJtjW0PAsGiDnM8vwqrSdDtO6QuzdVoyY4MeEyaSH4w=";
hash = "sha256-nsGqfm7XTwHblvqHmsMo8yQgl7ZtbtPdjOfrpXSQbn0=";
postCheckout = ''
git -C $out rev-parse HEAD > $out/commit_hash.txt
git -C $out show -s --format=%cd --date=short HEAD > $out/commit_date.txt
'';
};
frontend =
@ -34,7 +39,7 @@ let
yarnOfflineCache = fetchYarnDeps {
yarnLock = finalAttrs.src + "/yarn.lock";
hash = "sha256-tZHrl6NC4MGpmH7+Ge2V/y9FRNd9NdbQ/NreHE10b10=";
hash = "sha256-PIhmMIFHW+6jVZcS394yU9L5Zn+wkfrWmJH7lAbevbU=";
};
nativeBuildInputs = [
@ -119,6 +124,7 @@ python3Packages.buildPythonApplication rec {
feedparser
gunicorn
jinja2
nh3
pdf2image
pillow
pint
@ -161,7 +167,10 @@ python3Packages.buildPythonApplication rec {
++ django-allauth.optional-dependencies.mfa;
build-system = [ python3Packages.setuptools ];
nativeBuildInputs = [ gettext ];
nativeBuildInputs = [
gettext
gitMinimal
];
prePatch =
let
@ -188,7 +197,7 @@ python3Packages.buildPythonApplication rec {
# TODO figure out why this fails
"test_setting_object"
];
skippedFuncScripts = builtins.map (funcName: ''
skippedFuncScripts = map (funcName: ''
grep -rlZ ${funcName} . | while IFS= read -r -d "" file; do
substituteInPlace "$file" --replace-fail "${funcName}" "skip_${funcName}"
done
@ -208,24 +217,27 @@ python3Packages.buildPythonApplication rec {
# Don't need to bother with a non-maintained library from ages ago
substituteInPlace src/backend/InvenTree/InvenTree/settings.py --replace-fail "django_slowtests.testrunner.DiscoverSlowestTestsRunner" "django.test.runner.DiscoverRunner"
mkdir -p $out/lib/${pname}/src/backend/InvenTree/web/
cp -r src $out/lib/${pname}
ln -s ${frontend}/static $out/lib/${pname}/src/backend/InvenTree/web
mkdir -p $out/lib/inventree/src/backend/InvenTree/web/
cp -r src $out/lib/inventree
ln -s ${frontend}/static $out/lib/inventree/src/backend/InvenTree/web
chmod +x $out/lib/${pname}/src/backend/InvenTree/manage.py
chmod +x $out/lib/inventree/src/backend/InvenTree/manage.py
makeWrapper $out/lib/${pname}/src/backend/InvenTree/manage.py $out/bin/${pname} \
--prefix PYTHONPATH : "${pythonPath}:$out/lib/${pname}/src/backend/InvenTree" \
--set INVENTREE_COMMIT_HASH abcdef \
--set INVENTREE_COMMIT_DATE 1970-01-01
INVENTREE_COMMIT_HASH=$(cat $src/commit_hash.txt)
INVENTREE_COMMIT_DATE=$(cat $src/commit_date.txt)
makeWrapper $out/lib/inventree/src/backend/InvenTree/manage.py $out/bin/inventree \
--prefix PYTHONPATH : "${pythonPath}:$out/lib/inventree/src/backend/InvenTree" \
--set INVENTREE_COMMIT_HASH $INVENTREE_COMMIT_HASH \
--set INVENTREE_COMMIT_DATE $INVENTREE_COMMIT_DATE
makeWrapper ${lib.getExe python3Packages.gunicorn} $out/bin/gunicorn \
--prefix PYTHONPATH : "${pythonPath}:$out/${python3.sitePackages}":"${pythonPath}:$out/lib/${pname}/src/backend/InvenTree" \
--set INVENTREE_COMMIT_HASH abcdef \
--set INVENTREE_COMMIT_DATE 1970-01-01
--prefix PYTHONPATH : "${pythonPath}:$out/${python3.sitePackages}":"${pythonPath}:$out/lib/inventree/src/backend/InvenTree" \
--set INVENTREE_COMMIT_HASH $INVENTREE_COMMIT_HASH \
--set INVENTREE_COMMIT_DATE $INVENTREE_COMMIT_DATE
# Generate static assets
pushd $out/lib/${pname}/src/backend/InvenTree &>/dev/null
pushd $out/lib/inventree/src/backend/InvenTree &>/dev/null
export INVENTREE_STATIC_ROOT=$out/lib/inventree/static
export INVENTREE_MEDIA_ROOT=$(mktemp -d)
export INVENTREE_BACKUP_DIR=$(mktemp -d)

View file

@ -1,12 +1,11 @@
{
ffmpeg_7-full,
fetchFromGitHub,
fetchpatch2,
lib,
}:
let
version = "7.1.2-2";
version = "7.1.4-3";
in
(ffmpeg_7-full.override {
@ -14,8 +13,8 @@ in
source = fetchFromGitHub {
owner = "jellyfin";
repo = "jellyfin-ffmpeg";
rev = "v${version}";
hash = "sha256-0dUQ/3843wWpb10XZl3ddCbjjbFGWh3eoNH4EuWSQiQ=";
tag = "v${version}";
hash = "sha256-3aPiR4BJrR/5UFKRbrK8IbyW6HN9wC6oTSYKH4Ak4EU=";
};
}).overrideAttrs
(old: {
@ -26,15 +25,6 @@ in
"--disable-ptx-compression" # https://github.com/jellyfin/jellyfin/issues/7944#issuecomment-1156880067
];
# Clobber upstream patches as they don't apply to the Jellyfin fork
patches = [
(fetchpatch2 {
name = "lcevcdec-4.0.0-compat.patch";
url = "https://code.ffmpeg.org/FFmpeg/FFmpeg/commit/fa23202cc7baab899894e8d22d82851a84967848.patch";
hash = "sha256-Ixkf1xzuDGk5t8J/apXKtghY0X9cfqSj/q987zrUuLQ=";
})
];
postPatch = ''
for file in $(cat debian/patches/series); do
patch -p1 < debian/patches/$file

View file

@ -13,7 +13,7 @@
}:
buildNpmPackage (finalAttrs: {
pname = "jellyfin-web";
version = "10.11.10";
version = "10.11.11";
src =
assert finalAttrs.version == jellyfin.version;
@ -21,7 +21,7 @@ buildNpmPackage (finalAttrs: {
owner = "jellyfin";
repo = "jellyfin-web";
tag = "v${finalAttrs.version}";
hash = "sha256-fSpzF6Arx0JfL9fuQHjzf3m82XZR2BZkV0lA37L4DN4=";
hash = "sha256-3Gyg0eSbOXO0wgdgzuOtD8nDmSM37z7Bc0fKcbo9ffA=";
};
nodejs = nodejs_22;
@ -31,7 +31,7 @@ buildNpmPackage (finalAttrs: {
--replace-fail "git describe --always --dirty" "echo ${finalAttrs.src.rev}"
'';
npmDepsHash = "sha256-DCFgivbZrDufRaB+4PeFxO6ISbEM9lXhXmlzc/5GbVU=";
npmDepsHash = "sha256-4kZo50xY/SvjpHToeIt0E91yeM7ab6Q6XtBMU5zSrF4=";
preBuild = ''
# using sass-embedded fails at executing node_modules/sass-embedded-linux-x64/dart-sass/src/dart

View file

@ -14,13 +14,13 @@
buildDotnetModule (finalAttrs: {
pname = "jellyfin";
version = "10.11.10"; # ensure that jellyfin-web has matching version
version = "10.11.11"; # ensure that jellyfin-web has matching version
src = fetchFromGitHub {
owner = "jellyfin";
repo = "jellyfin";
tag = "v${finalAttrs.version}";
hash = "sha256-bad532F8Ln5Y3TV4x5c7mgsiI+ZJGTZoahuSZhefMvQ=";
hash = "sha256-HCs4ZsutVoVH+bBZANjpPeMyV8e63Yemjg9DSr0R9zg=";
};
propagatedBuildInputs = [ sqlite ];

View file

@ -6,20 +6,26 @@
krita-plugin-gmic
],
krita-unwrapped,
wrapGAppsHook3,
}:
symlinkJoin {
pname = "krita";
inherit (krita-unwrapped)
version
buildInputs
nativeBuildInputs
meta
;
nativeBuildInputs = krita-unwrapped.nativeBuildInputs ++ [
wrapGAppsHook3
];
paths = [ krita-unwrapped ] ++ binaryPlugins;
postBuild = ''
gappsWrapperArgsHook
wrapQtApp "$out/bin/krita" \
"''${gappsWrapperArgs[@]}" \
--prefix PYTHONPATH : "$PYTHONPATH" \
--set KRITA_PLUGIN_PATH "$out/lib/kritaplugins"
'';

View file

@ -47,14 +47,14 @@ in
# as bootloader for various platforms and corresponding binary and helper files.
stdenv.mkDerivation (finalAttrs: {
pname = "limine";
version = "12.3.1";
version = "12.3.2";
# We don't use the Git source but the release tarball, as the source has a
# `./bootstrap` script performing network access to download resources.
# Packaging that in Nix is very cumbersome.
src = fetchurl {
url = "https://github.com/Limine-Bootloader/Limine/releases/download/v${finalAttrs.version}/limine-${finalAttrs.version}.tar.gz";
hash = "sha256-orkotxbusV4giozDLkUZuLZAHNS4GZnfj+EXi5tSRWU=";
hash = "sha256-xQUoMQbq3fpbvFbYwbHPMz0SZU3LN/gOaF01duhwKGU=";
};
enableParallelBuilding = true;

View file

@ -11,13 +11,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "lprint";
version = "1.3.1";
version = "1.4.0";
src = fetchFromGitHub {
owner = "michaelrsweet";
repo = "lprint";
rev = "v${finalAttrs.version}";
hash = "sha256-1OOLGQ8S4oRNSJanX/AzJ+g5F+jYnE/+o+ie5ucY22U=";
hash = "sha256-r5mOwkU828btDdt0y7JrEl6KSim8VaF/y4R58zPX3eI=";
};
outputs = [

View file

@ -5,25 +5,29 @@
fetchFromGitHub,
nix-update-script,
nodejs,
pnpm_9,
pnpm_11,
fetchPnpmDeps,
pnpmConfigHook,
makeWrapper,
python3,
dart-sass,
bash,
jemalloc,
ffmpeg-headless,
writeShellScript,
}:
let
pnpm = pnpm_11;
in
stdenv.mkDerivation (finalAttrs: {
pname = "misskey";
version = "2025.12.2";
version = "2026.5.4";
src = fetchFromGitHub {
owner = "misskey-dev";
repo = "misskey";
tag = finalAttrs.version;
hash = "sha256-7S6m97wHFeITABLcnQiPVGLg6d1xcPCHCp7/7d/w48E=";
hash = "sha256-ENq5V1lIFGKIr1xZccy1LFRYVqZVEhDzBhAbDNcG5sM=";
fetchSubmodules = true;
};
@ -35,7 +39,7 @@ stdenv.mkDerivation (finalAttrs: {
postPatch = ''
substituteInPlace packages/backend/src/config.ts \
--replace-fail \
"resolve(_dirname, '../../../built/.config.json')" \
"resolve(projectBuiltDir, '.config.json')" \
"resolve('/run/misskey/default.json')"
substituteInPlace {.,packages/backend}/package.json \
--replace-fail "pnpm compile-config && " ""
@ -44,21 +48,21 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
nodejs
pnpmConfigHook
pnpm_9
pnpm
makeWrapper
python3
dart-sass
];
# https://nixos.org/manual/nixpkgs/unstable/#javascript-pnpm
pnpmDeps = fetchPnpmDeps {
inherit (finalAttrs)
pname
version
src
;
pnpm = pnpm_9;
fetcherVersion = 3;
hash = "sha256-iMS+sFDnGShOQfFQjGtj4+7McqMQvfE8KK1MV/jPC2s=";
inherit pnpm;
fetcherVersion = 4;
hash = "sha256-wEbYkfp+zfytOPBjEcyTHCaoohGRNRjG5oTUefI5BVw=";
};
buildPhase = ''
@ -74,13 +78,17 @@ stdenv.mkDerivation (finalAttrs: {
export npm_config_nodedir=${nodejs}
(
cd node_modules/.pnpm/node_modules/re2
pnpm run rebuild
pnpm run rebuild --nodedir=${nodejs}
)
(
cd node_modules/.pnpm/node_modules/sharp
pnpm run install
)
# Force sass-embedded npm package to use our dart-sass instead of bundled binaries.
substituteInPlace node_modules/.pnpm/sass-embedded@*/node_modules/sass-embedded/dist/lib/src/compiler-path.js \
--replace-fail 'compilerCommand = (() => {' 'compilerCommand = (() => { return ["${lib.getExe dart-sass}"];'
pnpm build
runHook postBuild
@ -100,6 +108,7 @@ stdenv.mkDerivation (finalAttrs: {
runHook preInstall
mkdir -p $out/data
sed -i '/"packageManager":/d' package.json
cp -r . $out/data
# Set up symlink for use at runtime
@ -108,15 +117,17 @@ stdenv.mkDerivation (finalAttrs: {
# Otherwise, maybe somehow bindmount a writable directory into <package>/data/files.
ln -s /var/lib/misskey $out/data/files
makeWrapper ${pnpm_9}/bin/pnpm $out/bin/misskey \
makeWrapper ${pnpm}/bin/pnpm $out/bin/misskey \
--run "${checkEnvVarScript} || exit" \
--chdir $out/data \
--add-flags run \
--add-flag "--config.store-dir=/tmp/pnpm-store" \
--add-flag "--config.verify-deps-before-run=false" \
--add-flag run \
--set-default NODE_ENV production \
--prefix PATH : ${
lib.makeBinPath [
nodejs
pnpm_9
pnpm
bash
]
} \

View file

@ -12,14 +12,14 @@
let
pname = "mochi";
version = "1.21.11";
version = "1.21.14";
linux = appimageTools.wrapType2 rec {
inherit pname version meta;
src = fetchurl {
url = "https://download.mochi.cards/releases/Mochi-${version}.AppImage";
hash = "sha256-BJqExdJ8Li7tCEZ+2QBsrJ32OQoBsnngVjs3cXzrMv4=";
hash = "sha256-+iMT8xofQB2m1V4rNZHR6loRfxNGgcptD3FPlFXC5Mw=";
};
appimageContents = appimageTools.extractType2 { inherit pname version src; };
@ -44,9 +44,9 @@ let
url = "https://download.mochi.cards/releases/Mochi-${version}${lib.optionalString stdenv.hostPlatform.isAarch64 "-arm64"}.dmg";
hash =
if stdenv.hostPlatform.isAarch64 then
"sha256-PNsCI93TKmvaGvHGu2fR6mvWvdbnhjsOro386fAiBaM="
"sha256-/ML5jWTBVLzitZDaBoU6sVJ0iNmq0jjMIV33yLnX1io="
else
"sha256-qe76TDQiIIH41FsEmT7fJUcFnf5WM2gXx9rrCZd7/6Y=";
"sha256-vldyC/VkHf+BofpKvOxzCTM8F77k2aX9CxFP+frKvKc=";
};
sourceRoot = ".";

View file

@ -7,16 +7,16 @@
buildGoModule (finalAttrs: {
pname = "muffet";
version = "2.11.4";
version = "2.11.5";
src = fetchFromGitHub {
owner = "raviqqe";
repo = "muffet";
tag = "v${finalAttrs.version}";
hash = "sha256-xczs3H1Jcr+WH8SCOhXRZx7Aft2BNpI+Kg4He8YEVVA=";
hash = "sha256-dPScTdOGR3cgcFBa09iez0/DkCugXseIGGRMiCPJeYo=";
};
vendorHash = "sha256-94ytPGPbpXADIyDl28wWU2KmtwT17GyQFUe/bUc4RkA=";
vendorHash = "sha256-FXV+wP22R3gPAMGbhyz/v1Rk7w6z2ovoWirbLM1Wl24=";
doInstallCheck = true;
nativeInstallCheckInputs = [ versionCheckHook ];

View file

@ -6,7 +6,7 @@
}:
let
version = "1.2.0-22728942";
version = "1.2.0-23522718";
urlVersion = lib.replaceStrings [ "." ] [ "-" ] version;
in
@ -15,8 +15,8 @@ stdenvNoCC.mkDerivation {
inherit version;
src = fetchzip {
url = "https://necessegame.com/content/server/${urlVersion}/necesse-server-linux64-${urlVersion}.zip";
hash = "sha256-kSBql3oHG368DczSM7FkWeAZcfTrNP1x31LX7HRrgTE=";
url = "https://necesse.pwn.sh/server/necesse-server-linux64-${urlVersion}.zip";
hash = "sha256-PIguTYULddLKj6PpoSvX3gNSvqrS7oRTOPuwoA0/XOc=";
};
# removing packaged jre since we use our own

View file

@ -3,13 +3,30 @@
set -eu -o pipefail
website=$(curl -sL https://necessegame.com/server)
version=$(
curl -s http://www.necessegame.com/server \
echo "$website" \
| pup 'a[href*="linux64"] text{}' \
| awk -F'[v ]' '/Linux64/ {print $4"-"$6}' \
| sort -Vu \
| tail -n1
)
[[ $version =~ ^[0-9]+\.[0-9]+\.[0-9]+\-[0-9]+$ ]] \
&& update-source-version necesse-server "$version"
if [[ $version =~ ^[0-9]+\.[0-9]+\.[0-9]+\-[0-9]+$ ]]; then
version_url=${version//./-}
# extract the expiring presigned S3 URL for the new zip
url=$(
echo "$website" \
| pup "a[href*=\"linux64-${version_url}\"] attr{href}" \
| sed 's/\&amp;/\&/g'
)
# call API to remote-fetch the zip immediately and keep it cached,
# then fetch the zip locally to get the SRI hash, then update.
# fails early if the zip cannot be remote-fetched / cached.
curl -s --fail-with-body "https://necesse.pwn.sh/cache.php?version=${version_url}" \
&& sri=$(nix-prefetch-url --unpack "$url" | xargs nix hash convert --hash-algo sha256 --to sri) \
&& update-source-version necesse-server "$version" "$sri"
fi

View file

@ -2,6 +2,7 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
cmake,
gettext,
libuv,
@ -123,6 +124,11 @@ stdenv.mkDerivation (
# necessary so that nix can handle `UpdateRemotePlugins` for the plugins
# it installs. See https://github.com/neovim/neovim/issues/9413.
./system_rplugin_manifest.patch
(fetchpatch {
name = "CVE-2026-11487.patch";
url = "https://github.com/neovim/neovim/commit/f83e0dcaf8cf18de94828341b0a1a61a86c75baf.patch";
hash = "sha256-iWnq0ezbKYJqjvevVlcTJBvUc17ZvrhsanhtuKrh8zM=";
})
];
inherit lua;

View file

@ -13,9 +13,11 @@
wrapGAppsHook4,
gdk-pixbuf,
clapper-unwrapped,
glycin-loaders,
gtk4,
gtksourceview5,
libadwaita,
libglycin,
libseccomp,
libxml2,
openssl,
@ -57,6 +59,7 @@ stdenv.mkDerivation (finalAttrs: {
blueprint-compiler
cargo
desktop-file-utils
libglycin.patchVendorHook
meson
ninja
pkg-config
@ -71,9 +74,11 @@ stdenv.mkDerivation (finalAttrs: {
buildInputs = [
clapper-unwrapped
glycin-loaders
gtk4
gtksourceview5
libadwaita
libglycin
libseccomp
libxml2
openssl

View file

@ -15,14 +15,14 @@
python3Packages.buildPythonApplication (finalAttrs: {
pname = "nwg-displays";
version = "0.4.1";
version = "0.4.3";
format = "setuptools";
src = fetchFromGitHub {
owner = "nwg-piotr";
repo = "nwg-displays";
tag = "v${finalAttrs.version}";
hash = "sha256-07rsLClG4OIErzC+6qnFHn9cwa2XBYl5diN0KUglh/g=";
hash = "sha256-f7x6PTsND0eprhqvIdkZdHujcCbkJnqoXIKeE0O/YPE=";
};
nativeBuildInputs = [

View file

@ -14,14 +14,14 @@
python3.pkgs.buildPythonApplication (finalAttrs: {
pname = "offlineimap";
version = "8.0.2";
version = "8.0.3";
pyproject = true;
src = fetchFromGitHub {
owner = "OfflineIMAP";
repo = "offlineimap3";
rev = "v${finalAttrs.version}";
hash = "sha256-mysvqltO4x2dD8V+FAGOnDw5lQ8bgDwXFK9n15fbUdI=";
hash = "sha256-JWWv3zpiKzQmG8FRFb9h+TnCyR+f7LY3SBgYlcZA+1A=";
};
postPatch = ''

View file

@ -152,13 +152,13 @@ let
in
goBuild (finalAttrs: {
pname = "ollama";
version = "0.30.5";
version = "0.30.6";
src = fetchFromGitHub {
owner = "ollama";
repo = "ollama";
tag = "v${finalAttrs.version}";
hash = "sha256-jh/B/FkmAliCVzqc8DGCPYa5+XejE3cFZTzSuRxjPvw=";
hash = "sha256-qO+Tsjg64QekGHNNiNy5YGSDoToGSnqiN5hN+0LCp4Q=";
};
vendorHash = "sha256-lZdGzGb9xRjTm1Rm7/wHjqM490gLznLEndmb4mNbCX0=";

View file

@ -2,6 +2,7 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
nix-update-script,
autoreconfHook,
pkg-config,
@ -24,6 +25,28 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-/IqWB0s39t8BeqpRIa8MZn4HgXlIMuU2UbYbpZGNo1s=";
};
# TODO: remove when is merge
patches = [
(fetchpatch {
# https://github.com/trusteddomainproject/OpenDKIM/pull/288
name = "CVE-2020-35766.patch";
url = "https://github.com/trusteddomainproject/OpenDKIM/commit/520338d25af68cf263b97ba63037e3f5856a10da.patch";
hash = "sha256-O4a4boa67tj0nqxee6V+u7rd3l3RGaiWE+Mu0ib4DWE=";
})
(fetchpatch {
# https://github.com/trusteddomainproject/OpenDKIM/pull/287
name = "CVE-2022-48521.patch";
url = "https://github.com/trusteddomainproject/OpenDKIM/commit/e67c33e1a08cca793470e6a6ff44082f73f6d222.patch";
hash = "sha256-QtxiRM+/NDlQhfGB8XNX1M1PtQyXXarawoF+8pTTMVo=";
})
(fetchpatch {
# https://github.com/trusteddomainproject/OpenDKIM/pull/261
name = "fix-old-style-dkimf_base64_encode_file.patch";
url = "https://github.com/trusteddomainproject/OpenDKIM/commit/3f0aa0a31c11b9924f826708535071b68c22b731.patch";
hash = "sha256-nQCBGef2kjs9ZyHwPreNPQYW6jBOBTDhVq9RyeGSN/Y=";
})
];
configureFlags = [
"--with-milter=${libmilter}"
"ac_cv_func_malloc_0_nonnull=yes"
@ -63,11 +86,6 @@ stdenv.mkDerivation (finalAttrs: {
license = lib.licenses.bsd3;
platforms = lib.platforms.unix;
mainProgram = "opendkim";
knownVulnerabilities = [
"CVE-2020-35766: Privilege escalation in test suite"
"CVE-2022-48521: Specially crafted e-mails can bypass DKIM signature validation"
"Upstream OpenDKIM hasn't been updated in years, and is assumed to be unmaintained. Consider using an alternative such as rspamd."
];
maintainers = with lib.maintainers; [ maevii ];
};
})

View file

@ -1,6 +1,6 @@
source 'https://rubygems.org'
gem 'oxidized', '0.36.0'
gem 'oxidized', '0.37.0'
gem 'oxidized-web', '0.18.1'
gem 'oxidized-script', '0.7.0'
gem 'psych', '~> 5.0'

View file

@ -30,7 +30,7 @@ GEM
net-ssh (7.3.2)
net-telnet (0.2.0)
nio4r (2.7.5)
oxidized (0.36.0)
oxidized (0.37.0)
asetus (~> 0.4)
bcrypt_pbkdf (~> 1.0)
ed25519 (~> 1.2)
@ -103,7 +103,7 @@ PLATFORMS
DEPENDENCIES
net-scp (~> 4.1)
oxidized (= 0.36.0)
oxidized (= 0.37.0)
oxidized-script (= 0.7.0)
oxidized-web (= 0.18.1)
psych (~> 5.0)

View file

@ -241,10 +241,10 @@
platforms = [ ];
source = {
remotes = [ "https://rubygems.org" ];
sha256 = "0g2a60bwpjidwkksai6l2ndnq3qbvqj33jv53c800m7m4hgr5r0n";
sha256 = "0apg5psqdkc0h71qpgiq52qnifr41g57agvgyxiq10335gh6c2v0";
type = "gem";
};
version = "0.36.0";
version = "0.37.0";
};
oxidized-script = {
dependencies = [

View file

@ -47,18 +47,17 @@ stdenv.mkDerivation (finalAttrs: {
env.ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
postBuild =
lib.optionalString stdenv.hostPlatform.isDarwin ''
cp -R ${electron.dist}/Electron.app Electron.app
chmod -R u+w Electron.app
''
+ ''
pnpm build
./node_modules/.bin/electron-builder \
--dir \
-c.electronDist=${if stdenv.hostPlatform.isDarwin then "." else electron.dist} \
-c.electronVersion=${electron.version}
'';
postBuild = ''
pnpm build
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
./node_modules/.bin/electron-builder \
--dir \
-c.electronDist=electron-dist \
-c.electronVersion=${electron.version}
'';
desktopItems = [
(makeDesktopItem {

View file

@ -8,13 +8,13 @@
stdenvNoCC.mkDerivation rec {
pname = "pfetch";
version = "1.10.0";
version = "1.11.0";
src = fetchFromGitHub {
owner = "Un1q32";
repo = "pfetch";
tag = version;
hash = "sha256-0EI5D33lVm/lJ0m47wDBE5fGmx/7tDRAC/AE58nJ2ao=";
hash = "sha256-QxHbk27A45awUqLGS/HZmOLOi0sQ1DVfwCFhyOlSCKk=";
};
dontBuild = true;

View file

@ -51,13 +51,13 @@ let
};
pname = "pretix";
version = "2026.4.2";
version = "2026.4.3";
src = fetchFromGitHub {
owner = "pretix";
repo = "pretix";
tag = "v${version}";
hash = "sha256-OECVdtPnr7qqLriPZWOyRm6ZqU8yO+SYzU69zaO+9rU=";
hash = "sha256-fzM6WlqXH+ehPxHsvzNeM21Vupj0GBYXhFL0tpBp1uY=";
};
npmDeps = buildNpmPackage {

View file

@ -26,13 +26,13 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "radicle-desktop";
version = "0.11.0";
version = "0.12.0";
src = fetchFromRadicle {
seed = "seed.radicle.dev";
repo = "z4D5UCArafTzTQpDZNQRuqswh3ury";
tag = "releases/${finalAttrs.version}";
hash = "sha256-LKV69Yr06KI46GNl+Xk3sb9sn9Yr6A3i0+WuPsbvW7g=";
hash = "sha256-lbLBtLOBLf+w2Oq56JwXtouDykNrRZyrMxYX9131lf8=";
leaveDotGit = true;
postFetch = ''
git -C $out rev-parse --short HEAD > $out/.git_head

View file

@ -7,13 +7,13 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "rime-ice";
version = "2026.03.26";
version = "2026.06.03";
src = fetchFromGitHub {
owner = "iDvel";
repo = "rime-ice";
tag = finalAttrs.version;
hash = "sha256-hRtA1cYAQm7M+dPSThedqKogr8YMkP9WQFEZw5pdCbU=";
hash = "sha256-MHPvFGdCnmHtgPqLkV+JJ3LHjcDeIs5yqexmHnWgRIc=";
};
installPhase = ''

View file

@ -70,7 +70,6 @@ buildGoModule rec {
homepage = "https://ddvk.github.io/rmfakecloud/";
license = lib.licenses.agpl3Only;
maintainers = with lib.maintainers; [
euxane
martinetd
];
mainProgram = "rmfakecloud";

View file

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "routinator";
version = "0.15.1";
version = "0.15.2";
src = fetchFromGitHub {
owner = "NLnetLabs";
repo = "routinator";
rev = "v${finalAttrs.version}";
hash = "sha256-tgDhIM8Dw4k/ocXa3U1xqS/TDmqNbjnNzIyCxEmu294=";
hash = "sha256-y/L9l++uB627lEHK+mASNwLohqWk+R0FUNYMKKNg38A=";
};
cargoHash = "sha256-XOy8sm6nzmihFYsgLcusoYKwgTvx0qX8o8XWV4EMXZ8=";
cargoHash = "sha256-rDFwfRXd8oMNh8iOPEWM1eADFQjys0GwPVr2r5hLW4Y=";
meta = {
description = "RPKI Validator written in Rust";

View file

@ -9,7 +9,7 @@
nodejs,
openssl,
pkg-config,
pnpm_9,
pnpm_10,
fetchPnpmDeps,
pnpmConfigHook,
protobuf,
@ -18,6 +18,10 @@
webkitgtk_4_1,
wrapGAppsHook4,
}:
let
# upstream still uses pnpm 8 though
pnpm = pnpm_10;
in
rustPlatform.buildRustPackage rec {
pname = "rquickshare";
version = "0.11.5";
@ -31,7 +35,7 @@ rustPlatform.buildRustPackage rec {
patches = [
./fix-pnpm-outdated-lockfile.patch
./fix-pnpm-lock-file-tauri-minor-verison-mismatch.patch
./fix-pnpm-lock-file-tauri-minor-version-mismatch.patch
];
# from https://github.com/NixOS/nixpkgs/blob/04e40bca2a68d7ca85f1c47f00598abb062a8b12/pkgs/by-name/ca/cargo-tauri/test-app.nix#L23-L26
@ -47,20 +51,19 @@ rustPlatform.buildRustPackage rec {
version
src
patches
pnpm
;
pnpm = pnpm_9;
postPatch = "cd ${pnpmRoot}";
fetcherVersion = 3;
hash = "sha256-ESm7YVVbsfjpgYeNf3aVhJawpWhbeNdo0u7cBzLmEMw=";
fetcherVersion = 4;
hash = "sha256-uugI9ztwHPYn7WdXfo3XlBxjhVczGnpWvTb3IEMJUqg=";
};
cargoRoot = "app/main/src-tauri";
buildAndTestSubdir = cargoRoot;
cargoPatches = [
./remove-duplicate-versions-of-sys-metrics.patch
./remove-code-signing-darwin.patch
];
cargoHash = "sha256-XfN+/oC3lttDquLfoyJWBaFfdjW/wyODCIiZZksypLM=";
cargoHash = "sha256-9LFMWr/TQZ0nolQykrsGR2aqrSWIXoPZRLYO4mjTmpg=";
nativeBuildInputs = [
cargo-tauri.hook
@ -68,7 +71,7 @@ rustPlatform.buildRustPackage rec {
# Setup pnpm
nodejs
pnpmConfigHook
pnpm_9
pnpm
protobuf
]

View file

@ -1,114 +0,0 @@
diff --git a/app/legacy/src-tauri/Cargo.lock b/app/legacy/src-tauri/Cargo.lock
index 14872dc..341fcc8 100644
--- a/app/legacy/src-tauri/Cargo.lock
+++ b/app/legacy/src-tauri/Cargo.lock
@@ -4296,7 +4296,7 @@ dependencies = [
"rand 0.9.0",
"serde",
"sha2",
- "sys_metrics 0.2.7 (git+https://github.com/Martichou/sys_metrics)",
+ "sys_metrics",
"tokio",
"tokio-util",
"tracing-subscriber",
@@ -4316,7 +4316,7 @@ dependencies = [
"rqs_lib",
"serde",
"serde_json",
- "sys_metrics 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sys_metrics",
"tauri",
"tauri-build",
"tauri-plugin-autostart",
@@ -4920,21 +4920,6 @@ dependencies = [
"libc",
]
-[[package]]
-name = "sys_metrics"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9b266b80f59f86e2e1e0a4938e316e32c3730d94a749f236305152279f77484"
-dependencies = [
- "core-foundation-sys",
- "glob",
- "io-kit-sys",
- "lazy_static",
- "libc",
- "mach",
- "serde",
-]
-
[[package]]
name = "sys_metrics"
version = "0.2.7"
diff --git a/app/legacy/src-tauri/Cargo.toml b/app/legacy/src-tauri/Cargo.toml
index fb735b2..cfd1349 100644
--- a/app/legacy/src-tauri/Cargo.toml
+++ b/app/legacy/src-tauri/Cargo.toml
@@ -20,7 +20,7 @@ notify-rust = "4.10"
rqs_lib = { path = "../../../core_lib", features = ["experimental"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
-sys_metrics = "0.2"
+sys_metrics = { git = "https://github.com/Martichou/sys_metrics" }
tauri = { version = "1.8", features = ["api-all", "reqwest-native-tls-vendored", "devtools", "system-tray"] }
tauri-plugin-autostart = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1" }
tauri-plugin-single-instance = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v1" }
diff --git a/app/main/src-tauri/Cargo.lock b/app/main/src-tauri/Cargo.lock
index 5580ef5..4327d4c 100644
--- a/app/main/src-tauri/Cargo.lock
+++ b/app/main/src-tauri/Cargo.lock
@@ -4247,7 +4247,7 @@ dependencies = [
"rand 0.9.0",
"serde",
"sha2",
- "sys_metrics 0.2.7 (git+https://github.com/Martichou/sys_metrics)",
+ "sys_metrics",
"tokio",
"tokio-util",
"tracing-subscriber",
@@ -4267,7 +4267,7 @@ dependencies = [
"rqs_lib",
"serde",
"serde_json",
- "sys_metrics 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "sys_metrics",
"tauri",
"tauri-build",
"tauri-plugin-autostart",
@@ -4932,21 +4932,6 @@ dependencies = [
"syn 2.0.95",
]
-[[package]]
-name = "sys_metrics"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c9b266b80f59f86e2e1e0a4938e316e32c3730d94a749f236305152279f77484"
-dependencies = [
- "core-foundation-sys",
- "glob",
- "io-kit-sys",
- "lazy_static",
- "libc",
- "mach",
- "serde",
-]
-
[[package]]
name = "sys_metrics"
version = "0.2.7"
diff --git a/app/main/src-tauri/Cargo.toml b/app/main/src-tauri/Cargo.toml
index 8864112..7707922 100644
--- a/app/main/src-tauri/Cargo.toml
+++ b/app/main/src-tauri/Cargo.toml
@@ -20,7 +20,7 @@ notify-rust = "4.10"
rqs_lib = { path = "../../../core_lib", features = ["experimental"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
-sys_metrics = "0.2"
+sys_metrics = { git = "https://github.com/Martichou/sys_metrics" }
tauri = { version = "2.2", features = [ "devtools", "tray-icon", "native-tls-vendored", "image-png"] }
tauri-plugin-autostart = "2.2"
tauri-plugin-process = "2.2"

View file

@ -8,16 +8,16 @@
buildNpmPackage (finalAttrs: {
pname = "scanservjs";
version = "3.0.4";
version = "3.1.0";
src = fetchFromGitHub {
owner = "sbs20";
repo = "scanservjs";
tag = "v${finalAttrs.version}";
hash = "sha256-qCJyQO/hSDF4NOupV7sepwvpNyjSElnqT71LJuIKe+A=";
hash = "sha256-VfFahIyn2MIW4E0sMCpqdduP7F0U7t4a5c1fwpQl7Dc=";
};
npmDepsHash = "sha256-HIWT09G8gqSFt9CIjsjJaDRnj2GO0G6JOGeI0p4/1vw=";
npmDepsHash = "sha256-VB4z7PCOUzhSbSbxLj/47oppMdTvd2lT7WZKDqd+jfo=";
patches = [
./nix-compatibility.patch

View file

@ -7,13 +7,13 @@
stdenvNoCC.mkDerivation (finalAttrs: {
pname = "sdl_gamecontrollerdb";
version = "0-unstable-2026-05-28";
version = "0-unstable-2026-06-07";
src = fetchFromGitHub {
owner = "mdqinc";
repo = "SDL_GameControllerDB";
rev = "cbdb3678270cf5bf14a127934fd7ab332ecd3cbc";
hash = "sha256-bjsss+ifkCqJKzirqbBS5PtD80fG9JPY6yPiHsf9DO8=";
rev = "0499a01224c056cb915e9fcc1bac37aedbf2253c";
hash = "sha256-DQUg/53TVECZFHEFDfJSI8c3kKQdpNS6ivjzStMuUcc=";
};
dontBuild = true;

View file

@ -5,25 +5,30 @@
installShellFiles,
scdoc,
nix-update-script,
versionCheckHook,
}:
buildGoModule (finalAttrs: {
pname = "senpai";
version = "0.4.1";
version = "0.5.0";
src = fetchFromSourcehut {
owner = "~delthas";
repo = "senpai";
rev = "v${finalAttrs.version}";
sha256 = "sha256-lwfhRnaHGOIp6NyugPEu6P+3WXkVgQEWaz7DUfHiJrQ=";
sha256 = "sha256-VjXgKdy4IpBhAP6uw/NtlexPki7nJzQi/HuY/+5lE/o=";
};
vendorHash = "sha256-6glslBPjJr0TmrAkDGbOQ4sDzvODlavVeTugs6RXsCU=";
vendorHash = "sha256-4Ax9YVa9z1Unk3Z2iy9ZEqKjNmdgK0aF4GrD9ucXtjk=";
subPackages = [
"cmd/senpai"
];
ldflags = [
"-X git.sr.ht/~delthas/senpai.version=${finalAttrs.version}"
];
nativeBuildInputs = [
scdoc
installShellFiles
@ -39,6 +44,9 @@ buildGoModule (finalAttrs: {
install -D -m 444 res/icon.svg $out/share/icons/hicolor/scalable/apps/senpai.svg
'';
nativeInstallCheckInputs = [ versionCheckHook ];
doInstallCheck = true;
passthru.updateScript = nix-update-script { };
meta = {

View file

@ -0,0 +1,50 @@
{
lib,
gitMinimal,
runCommandLocal,
stdenv,
wrapper,
}:
/**
Test that the given project tree is formatted with the treefmt config.
Input argument is the path to the project tree.
*/
project:
runCommandLocal "${lib.getName wrapper}-check"
{
__structuredAttrs = true;
strictDeps = true;
nativeBuildInputs = [
gitMinimal
wrapper
];
inherit project;
env = {
LANG = if stdenv.buildPlatform.isDarwin then "en_US.UTF-8" else "C.UTF-8";
LC_ALL = if stdenv.buildPlatform.isDarwin then "en_US.UTF-8" else "C.UTF-8";
};
meta.description = "Check that the project tree is formatted";
}
''
# Copy project files into the build-dir
cp -r "$project" project
chmod -R a+w project
cd project
# Setup a git repo
git init --initial-branch main
git config user.name nixbld
git config user.email nixbld@example.com
git add .
git commit -m init --quiet
# Run treefmt
treefmt --version
treefmt --no-cache
# Ensure nothing changed
git status
git --no-pager diff --exit-code
touch "$out"
''

View file

@ -40,6 +40,20 @@
/**
Wrap treefmt, configured using structured settings.
# Check
The resulting package has a `check` attribute of type `Path -> Derivation`.
The derivation returned will only build if the path supplied is already formatted correctly.
```
{ pkgs }:
let
myTreefmt = pkgs.treefmt.withConfig ./treefmt-config.nix;
project = ../.;
in
myTreefmt.check project
```
# Type
```

View file

@ -15,7 +15,7 @@
internal = true;
};
config.result = pkgs.symlinkJoin {
config.result = pkgs.symlinkJoin (finalAttrs: {
pname = config.name;
inherit (config.package) meta version;
nativeBuildInputs = [ pkgs.makeBinaryWrapper ];
@ -27,11 +27,14 @@
passthru = {
inherit (config) runtimeInputs;
inherit config options;
check = pkgs.callPackage ../check-wrapper.nix {
wrapper = finalAttrs.finalPackage;
};
};
postBuild = ''
wrapProgram "$out/bin/treefmt" \
--prefix PATH : "$binPath" \
--add-flags "--config-file $configFile"
'';
};
});
}

View file

@ -1,6 +1,7 @@
{
lib,
runCommand,
runCommandLocal,
testers,
treefmt,
nixfmt,
@ -31,6 +32,28 @@ let
settings = nixfmtExampleConfig;
runtimeInputs = [ nixfmt ];
};
wellFormattedTree = runCommandLocal "well-formatted-project" { } ''
mkdir "$out"
cat > "$out/file.nix" <<EOF
{
foo = "bar";
attrs = { };
list = [ ];
}
EOF
'';
unformattedTree = runCommandLocal "unformatted-project" { } ''
mkdir "$out"
cat > "$out/file.nix" <<EOF
{
foo="bar";
attrs={};
list=[];
}
EOF
'';
in
{
buildConfigEmpty = testEqualContents {
@ -68,6 +91,22 @@ in
'';
};
nixfmtExampleCheckPasses = nixfmtExamplePackage.check wellFormattedTree;
nixfmtExampleCheckFails = testers.testBuildFailure' {
drv = nixfmtExamplePackage.check unformattedTree;
expectedBuilderExitCode = 1;
expectedBuilderLogEntries = [
"diff --git a/file.nix b/file.nix"
"- foo=\"bar\";"
"+ foo = \"bar\";"
"- attrs={};"
"+ attrs = { };"
"- list=[];"
"+ list = [ ];"
];
};
runNixfmtExample =
runCommand "run-nixfmt-example"
{

View file

@ -10,13 +10,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "usbmuxd";
version = "1.1.1+date=2023-05-05";
version = "1.1.1+date=2025-12-06";
src = fetchFromGitHub {
owner = "libimobiledevice";
repo = "usbmuxd";
rev = "01c94c77f59404924f1c46d99c4e5e0c7817281b";
hash = "sha256-WqbobkzlJ9g5fb9S2QPi3qdpCLx3pxtNlT7qDI63Zp4=";
rev = "3ded00c9985a5108cfc7591a309f9a23d57a8cba";
hash = "sha256-0ZxEdU6LAUT0XfRk/PnRGl+r2ofttpffI8MiQljukVA=";
};
nativeBuildInputs = [
@ -54,7 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
'';
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.unix;
maintainers = [ ];
maintainers = with lib.maintainers; [ ProxyVT ];
mainProgram = "usbmuxd";
};
})

View file

@ -87,7 +87,6 @@ stdenv.mkDerivation (finalAttrs: {
ELECTRON_SKIP_BINARY_DOWNLOAD = 1;
};
# electron builds must be writable
preBuild = ''
# Validate electron version matches upstream package.json
if [ "`jq -r '.devDependencies.electron' < package.json | cut -d. -f1 | tr -d '^'`" != "${lib.versions.major electron.version}" ]
@ -95,12 +94,8 @@ stdenv.mkDerivation (finalAttrs: {
echo "ERROR: electron version mismatch between package.json and nixpkgs"
exit 1
fi
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
cp -r ${electron.dist}/Electron.app .
chmod -R u+w Electron.app
''
+ lib.optionalString stdenv.hostPlatform.isLinux ''
# electron builds must be writable
cp -r ${electron.dist} electron-dist
chmod -R u+w electron-dist
'';
@ -112,7 +107,7 @@ stdenv.mkDerivation (finalAttrs: {
pnpm exec electron-builder \
--dir \
-c.asarUnpack="**/*.node" \
-c.electronDist=${if stdenv.hostPlatform.isDarwin then "." else "electron-dist"} \
-c.electronDist=electron-dist \
-c.electronVersion=${electron.version} \
${lib.optionalString stdenv.hostPlatform.isDarwin "-c.mac.identity=null"} # disable code signing on macos, https://github.com/electron-userland/electron-builder/blob/77f977435c99247d5db395895618b150f5006e8f/docs/code-signing.md#how-to-disable-code-signing-during-the-build-process-on-macos

View file

@ -4,6 +4,7 @@
aiofiles,
async-timeout,
buildPythonPackage,
setuptools,
cryptography,
fetchFromGitHub,
isPy3k,
@ -15,21 +16,23 @@
rsa,
}:
buildPythonPackage rec {
buildPythonPackage (finalAttrs: {
pname = "adb-shell";
version = "0.4.4";
format = "setuptools";
pyproject = true;
disabled = !isPy3k;
src = fetchFromGitHub {
owner = "JeffLIrion";
repo = "adb_shell";
rev = "v${version}";
rev = "v${finalAttrs.version}";
hash = "sha256-pOkFUh3SEu/ch9R1lVoQn50nufQp8oI+D4/+Ybal5CA=";
};
propagatedBuildInputs = [
build-system = [ setuptools ];
dependencies = [
cryptography
pyasn1
rsa
@ -50,7 +53,7 @@ buildPythonPackage rec {
pycryptodome
pytestCheckHook
]
++ lib.concatAttrValues optional-dependencies;
++ lib.concatAttrValues finalAttrs.optional-dependencies;
pythonImportsCheck = [ "adb_shell" ];
@ -60,4 +63,4 @@ buildPythonPackage rec {
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ jamiemagee ];
};
}
})

View file

@ -26,6 +26,7 @@ buildPythonPackage rec {
};
env.HATCH_BUILD_HOOK_VCS_VERSION = version;
__darwinAllowLocalNetworking = true;
build-system = [
hatchling

View file

@ -2,20 +2,21 @@
fetchFromGitHub,
lib,
buildPythonPackage,
nix-update-script,
setuptools,
wheel,
}:
buildPythonPackage (finalAttrs: {
pname = "uefi-firmware-parser";
version = "1.13";
version = "1.16";
pyproject = true;
src = fetchFromGitHub {
owner = "theopolis";
repo = "uefi-firmware-parser";
tag = "v${finalAttrs.version}";
hash = "sha256-Yiw9idmvSpx4CcVrXHznR8vK/xl7DTL+L7k4Nvql2B8=";
hash = "sha256-2vYTOC7cOiQXPMhYM+hqmFyCJeXCkx6RSxgaTIZqbds=";
};
build-system = [
@ -27,13 +28,15 @@ buildPythonPackage (finalAttrs: {
pythonImportsCheck = [ "uefi_firmware" ];
passthru.updateScript = nix-update-script { };
meta = {
description = "Tool for parsing, extracting, and recreating UEFI firmware volumes";
homepage = "https://github.com/theopolis/uefi-firmware-parser";
changelog = "https://github.com/theopolis/uefi-firmware-parser/releases/tag/${finalAttrs.src.rev}";
license = lib.licenses.mit;
mainProgram = "uefi-firmware-parser";
maintainers = [ ];
maintainers = [ lib.maintainers.elliotberman ];
platforms = lib.platforms.unix;
};
})

View file

@ -1,16 +1,11 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitLab,
makeWrapper,
cmake,
six,
pyparsing,
asn1ate,
colored,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "asn2quickder";
version = "1.7.1";
format = "setuptools";
@ -33,10 +28,10 @@ buildPythonApplication rec {
nativeBuildInputs = [
makeWrapper
cmake
python3Packages.cmake
];
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
pyparsing
asn1ate
six

View file

@ -1,25 +1,10 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchPypi,
certifi,
charset-normalizer,
enochecker-core,
exceptiongroup,
idna,
iniconfig,
jsons,
packaging,
pluggy,
pytest,
requests,
tomli,
typish,
urllib3,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "enochecker-test";
version = "0.9.0";
format = "setuptools";
@ -35,7 +20,7 @@ buildPythonApplication rec {
pythonRelaxDeps = true;
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
certifi
charset-normalizer
enochecker-core

View file

@ -1,23 +1,18 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchFromGitHub,
clang-tools,
cmake,
colordiff,
flex,
libclang,
llvm,
unifdef,
chardet,
pebble,
psutil,
pytestCheckHook,
testers,
cvise,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "cvise";
version = "2.12.0";
pyproject = false;
@ -46,7 +41,7 @@ buildPythonApplication rec {
'';
nativeBuildInputs = [
cmake
python3Packages.cmake # TODO: swap this out for the non-python cmake
flex
llvm.dev
];
@ -58,14 +53,14 @@ buildPythonApplication rec {
unifdef
];
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
chardet
pebble
psutil
];
nativeCheckInputs = [
pytestCheckHook
python3Packages.pytestCheckHook
unifdef
];

View file

@ -1,23 +1,19 @@
{
lib,
buildPythonApplication,
python3Packages,
fetchPypi,
gdb,
eventlet,
flask-compress,
flask-socketio,
pygdbmi,
pygments,
}:
buildPythonApplication rec {
python3Packages.buildPythonApplication rec {
pname = "gdbgui";
version = "0.15.3.0";
format = "setuptools";
buildInputs = [ gdb ];
propagatedBuildInputs = [
propagatedBuildInputs = with python3Packages; [
eventlet
flask-compress
flask-socketio

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