Merge remote-tracking branch 'origin/master' into staging-next

This commit is contained in:
K900
2025-06-10 13:47:04 +03:00
38 changed files with 777 additions and 558 deletions
+13
View File
@@ -13947,6 +13947,12 @@
githubId = 567634;
name = "Daniel Kuehn";
};
leleuvilela = {
email = "viniciusvilela19@gmail.com";
github = "leleuvilela";
githubId = 19839085;
name = "Vinicius Vilela";
};
lelgenio = {
email = "lelgenio@lelgenio.com";
github = "lelgenio";
@@ -14950,6 +14956,13 @@
name = "Mæve";
keys = [ { fingerprint = "96C9 D086 CC9D 7BD7 EF24 80E2 9168 796A 1CC3 AEA2"; } ];
};
maeve-oake = {
email = "maeve@oa.ke";
matrix = "@maeve:oa.ke";
github = "maeve-oake";
githubId = 38541651;
name = "maeve";
};
mafo = {
email = "Marc.Fontaine@gmx.de";
github = "MarcFontaine";
@@ -20,8 +20,8 @@ let
sha256Hash = "sha256-L8s8l1/Q4AJEGvdzTLLu9sRZlkNyRDMQvK8moZXOeIE=";
};
betaVersion = {
version = "2024.3.2.13"; # "Android Studio Meerkat Feature Drop | 2024.3.2 RC 4"
sha256Hash = "sha256-tPRTDFyKGPR1DKuJRBcwjWjNxylS/8Zv/Nd6vBmcujg=";
version = "2025.1.1.11"; # "Android Studio Narwhal | 2025.1.1 RC 1"
sha256Hash = "sha256-upx+qcrd+E4XVV94iaqZPN8w1RpcD8KfV37397nkznU=";
};
latestVersion = {
version = "2025.1.2.4"; # "Android Studio Narwhal Feature Drop | 2025.1.2 Canary 4"
@@ -3689,6 +3689,8 @@ let
myriad-dreamin.tinymist = callPackage ./myriad-dreamin.tinymist { };
natqe.reload = callPackage ./natqe.reload { };
naumovs.color-highlight = buildVscodeMarketplaceExtension {
mktplcRef = {
name = "color-highlight";
@@ -0,0 +1,19 @@
{
lib,
vscode-utils,
}:
vscode-utils.buildVscodeMarketplaceExtension {
mktplcRef = {
name = "reload";
publisher = "natqe";
version = "0.0.7";
hash = "sha256-j0Dj7YiawhPAMHe8wk8Ph4vo26IneidoGJ4C9O7Z/64=";
};
meta = {
description = "This extension will add reload button to status bar in the right-bottom of your VSCode editor.";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=natqe.reload";
homepage = "https://github.com/natqe/reload";
license = lib.licenses.unfree;
maintainers = [ lib.maintainers.therobot2105 ];
};
}
+21 -12
View File
@@ -6,47 +6,56 @@
meson,
ninja,
vala,
wrapGAppsHook3,
wrapGAppsHook4,
desktop-file-utils,
gtk3,
libgee,
pantheon,
libxml2,
libhandy,
libportal-gtk4,
}:
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "annotator";
version = "1.2.1";
version = "2.0.0";
src = fetchFromGitHub {
owner = "phase1geo";
repo = "annotator";
rev = version;
hash = "sha256-VHvznkGvrE8o9qq+ijrIStSavq46dS8BqclWEWZ8mG8=";
tag = finalAttrs.version;
hash = "sha256-mv3fMlYB4XcAWI6O6wN8ujNRDLZlX3ef/gKdOMYEHq0=";
};
postPatch = ''
substituteInPlace src/Application.vala \
--replace-fail 'Environment.set_variable( "GDK_BACKEND", "x11", true );' ""
'';
nativeBuildInputs = [
pkg-config
meson
ninja
vala
wrapGAppsHook3
wrapGAppsHook4
desktop-file-utils
];
buildInputs = [
libgee
pantheon.granite
pantheon.granite7
libportal-gtk4
libxml2
libhandy
gtk3
];
meta = with lib; {
meta = {
description = "Image annotation for Elementary OS";
homepage = "https://github.com/phase1geo/Annotator";
license = licenses.gpl3Plus;
license = lib.licenses.gpl3Plus;
mainProgram = "com.github.phase1geo.annotator";
maintainers = with maintainers; [ aleksana ];
platforms = platforms.linux;
maintainers = with lib.maintainers; [ aleksana ];
platforms = lib.platforms.linux;
};
}
})
+59 -79
View File
@@ -11,8 +11,8 @@
},
{
"pname": "Azure.Bicep.Types.Az",
"version": "0.2.756",
"hash": "sha256-fYnDKiUhKY0aWz1GFkUVGWnRJQdHaTzYaj6fP7nJkqs="
"version": "0.2.771",
"hash": "sha256-VByaJddUXteY5SNE6EsMW6s1p8bJZuM3DdPZ9jPOBkE="
},
{
"pname": "Azure.Bicep.Types.K8s",
@@ -46,43 +46,33 @@
},
{
"pname": "Azure.Deployments.Core",
"version": "1.224.0",
"hash": "sha256-T6z0ZTanppSVlsPMmtSiVdNJWReAg+snvM4qvMgNNNk="
},
{
"pname": "Azure.Deployments.Core",
"version": "1.241.0",
"hash": "sha256-f5GLoXqPz4MQa5XLKYzNCnGq/p3nWzom0o476xnSjOA="
"version": "1.384.0",
"hash": "sha256-GkARRAP79e4QtCCVF+YU8o2Lr/tMtlJB2q3UvZJ5zvw="
},
{
"pname": "Azure.Deployments.DiffEngine",
"version": "1.241.0",
"hash": "sha256-qdBEMoqHD9aWeb1hMQm/QctNTtct2Y1HKzejLP8LeEg="
"version": "1.384.0",
"hash": "sha256-i+3LW2XtndizGWCjrLAfhmckicU6fFzSEhJeNL4+Rh4="
},
{
"pname": "Azure.Deployments.Engine",
"version": "1.241.0",
"hash": "sha256-rOq/2I0ZErMfg/4Z3odusCIiIJHFQj6hoOqYlcmGOko="
"version": "1.384.0",
"hash": "sha256-l1yKQPexJO11HMKWhFWFdWmUidJAgzhFrudxHVF+KdA="
},
{
"pname": "Azure.Deployments.Expression",
"version": "1.224.0",
"hash": "sha256-P0bncRi4VntjtNQHNZL02fa2tH8aho1Y0+lxvssY5AM="
},
{
"pname": "Azure.Deployments.Expression",
"version": "1.241.0",
"hash": "sha256-fu3gJsqarSjj6Qp2f4SDhTLU2rYtf6ld9J7ywwPVeqY="
"version": "1.384.0",
"hash": "sha256-FFu6uNZWXH/54EpyM2KH9cm3YYF66Lnq+w7470oTqhk="
},
{
"pname": "Azure.Deployments.Extensibility",
"version": "1.241.0",
"hash": "sha256-PQyUoide4V5YZpnBzu5g2grCLr7jAgek+D5Xu9AIrag="
"version": "1.384.0",
"hash": "sha256-lOz0lIdB7RCqQJJrpjRocgJCN/luHj0GFbIrsUN5SWU="
},
{
"pname": "Azure.Deployments.Extensibility.Core",
"version": "0.1.55",
"hash": "sha256-u5Xo/TkFJSOeI+/T1fWuEeFVQVT4gM6pE09jhY6b2vU="
"version": "0.1.67",
"hash": "sha256-BsBW4qFrdg8B639uc+JH0UoT/kned0rcDW8gh465VoY="
},
{
"pname": "Azure.Deployments.Internal.GenerateNotice",
@@ -91,23 +81,18 @@
},
{
"pname": "Azure.Deployments.JsonPath",
"version": "1.17.0",
"hash": "sha256-o0rJ3pgwijC/7h1sajlukFQOLBD5RW0d3wbXJgVvt8Q="
"version": "1.71.0",
"hash": "sha256-8nlhSCky9FB+dRYeJYgnwrQif0xa9bgB8eU6+JFVlcA="
},
{
"pname": "Azure.Deployments.ResourceMetadata",
"version": "1.17.0",
"hash": "sha256-vpJNeQQw4XazLfAlgkSwhCWFZOjWkdOnTHxB1fOfv4k="
"version": "1.71.0",
"hash": "sha256-eeyDl+yiAt3BEJOU+RQ6j1NXqTbz49emHrJLUWb+Tt8="
},
{
"pname": "Azure.Deployments.Templates",
"version": "1.224.0",
"hash": "sha256-4O4tUhuWhEQpw3UywSbUQvvTOUNION7sZHGEZ8M1xWo="
},
{
"pname": "Azure.Deployments.Templates",
"version": "1.241.0",
"hash": "sha256-DWvdU3ipGUg5c5kyJXzFQ4x1l60x+qsWGZ++7XHMNcI="
"version": "1.384.0",
"hash": "sha256-yuWJqgh0hDzQNOjMhN1Wg0MxDgvMpFaNCsvumtldrZA="
},
{
"pname": "Azure.Identity",
@@ -156,18 +141,18 @@
},
{
"pname": "Grpc.Core.Api",
"version": "2.67.0",
"hash": "sha256-e20szw18ddOV4euAfsJEHr74HIVzdfjV5pYvGpLVmn4="
"version": "2.70.0",
"hash": "sha256-ChN4sEBtz78sKoVMr3UY+1zsNe/Wm6I8pmaKISofVj8="
},
{
"pname": "Grpc.Net.Client",
"version": "2.67.0",
"hash": "sha256-93Q3+bBl4Z4saeYq25uPFucrsdrm0fgFB+URiVRU6Ec="
"version": "2.70.0",
"hash": "sha256-THt2IXw/iMasq7kihCwEMtFo3urygINt/IR4XPjqOKM="
},
{
"pname": "Grpc.Net.Common",
"version": "2.67.0",
"hash": "sha256-czx/y3JgMmxXPL/LkqFcjXhAZRllFTW2rTnm7iLtSI4="
"version": "2.70.0",
"hash": "sha256-6SuGfGOa9aKbEsPvBQc/HdoHMeQIP0AndjxK5PCp7WU="
},
{
"pname": "Grpc.Tools",
@@ -179,11 +164,6 @@
"version": "2.14.1",
"hash": "sha256-EXvojddPu+9JKgOG9NSQgUTfWq1RpOYw7adxDPKDJ6o="
},
{
"pname": "IPNetwork2",
"version": "2.6.548",
"hash": "sha256-6N61UG/WrJWNv+bO/l9BNWA17iPIMn5G4J7maw54UPg="
},
{
"pname": "IPNetwork2",
"version": "2.6.598",
@@ -204,20 +184,30 @@
"version": "2.0.1.2",
"hash": "sha256-fnp/By8n8xKa8bhvUbO2p8rlze5AvgA+z9ZvWEpL/Ls="
},
{
"pname": "Json.More.Net",
"version": "2.0.2",
"hash": "sha256-a05C4llKu1sOBjjV+GXQqSD1FWaj7twjkx4L95qixDQ="
},
{
"pname": "Json.More.Net",
"version": "2.1.0",
"hash": "sha256-AdQdfQa4nD5e1QCwiEiJOn/DGs5ogyaaTwN+14E/bho="
},
{
"pname": "Json.More.Net",
"version": "2.1.1",
"hash": "sha256-GeSZS/bROemFLq4uq7Fj5eRupOu/rqWKR58PkbJqWBU="
},
{
"pname": "JsonDiffPatch.Net",
"version": "2.1.0",
"hash": "sha256-lyUOusPMv1ZF3EcrEFG4Fze603CVPxLwOPmTVOy/HmU="
"version": "2.3.0",
"hash": "sha256-bnTRsBaBi8wBxMi2stp7NZ+kLYUr2+WbqWhfGIVqnb4="
},
{
"pname": "JsonPatch.Net",
"version": "3.1.0",
"hash": "sha256-bvCOOiH2SruZXF+jPYlAaEkinZ040YDp9QjP3QXlCbc="
"version": "3.1.1",
"hash": "sha256-j8MZwl96BUPBSFnsb42d/JZIccDQQ1TvgBjqwafv9SQ="
},
{
"pname": "JsonPatch.Net",
@@ -226,18 +216,18 @@
},
{
"pname": "JsonPath.Net",
"version": "1.1.0",
"hash": "sha256-FQGPodaxHwyfRN3HhEl7N39SKsn922FiZAiDzKOYxUo="
"version": "1.1.6",
"hash": "sha256-E9lXAJOPBZA3623ggLUKmtiG1AR/ldPtCBnH6TX6bOk="
},
{
"pname": "JsonPath.Net",
"version": "2.0.1",
"hash": "sha256-4UWnu5iTzOupiGYR6X9xoDQoF2KMJ30h2sn0p5TfUu4="
"version": "2.1.1",
"hash": "sha256-hE4fRI/w4VfsJFk5dU3/QnnNaLN2ZTmL3CDq1+W4YDI="
},
{
"pname": "JsonPointer.Net",
"version": "5.0.0",
"hash": "sha256-OCeXHpJyHJSyh2vpnrY8nSuM4u3eNXtN6YXnJZyHnWc="
"version": "5.0.2",
"hash": "sha256-S04fnxMCJm86yc1FYHSqHznhA+90NW6QI+7rxYIyhs0="
},
{
"pname": "JsonPointer.Net",
@@ -246,8 +236,8 @@
},
{
"pname": "JsonSchema.Net",
"version": "7.0.4",
"hash": "sha256-sCaGr8m20DzNEkF3TS7Cb+wmvo3hYZPZwQ2bTqwlB5g="
"version": "7.2.3",
"hash": "sha256-EtIc4Sq5fv7LLWj1+WtZPYE4u/0e4+mUSMfKp2vBruo="
},
{
"pname": "MediatR",
@@ -274,11 +264,6 @@
"version": "6.0.0",
"hash": "sha256-lNL5C4W7/p8homWooO/3ZKDZQ2M0FUTDixJwqWBPVbo="
},
{
"pname": "Microsoft.Automata.SRM",
"version": "1.2.2",
"hash": "sha256-cVVxKqguV48WRuk2HyRP5A2b4kZd3nSVY3rMe0SRSQw="
},
{
"pname": "Microsoft.Bcl.AsyncInterfaces",
"version": "1.1.1",
@@ -371,13 +356,13 @@
},
{
"pname": "Microsoft.Extensions.Configuration.Abstractions",
"version": "9.0.1",
"hash": "sha256-r3iWP+kwKo4Aib8SGo91kKWR5WusLrbFHUAw5uKQeNA="
"version": "9.0.2",
"hash": "sha256-icRtfbi0nDRUYDErtKYx0z6A1gWo5xdswsSM6o4ozxc="
},
{
"pname": "Microsoft.Extensions.Configuration.Abstractions",
"version": "9.0.2",
"hash": "sha256-icRtfbi0nDRUYDErtKYx0z6A1gWo5xdswsSM6o4ozxc="
"version": "9.0.4",
"hash": "sha256-5hwq73FCWAJJ8Yb1VHaaryJJhUUiVsetPTrPLlo8N9o="
},
{
"pname": "Microsoft.Extensions.Configuration.Binder",
@@ -391,8 +376,8 @@
},
{
"pname": "Microsoft.Extensions.Configuration.Binder",
"version": "9.0.1",
"hash": "sha256-uq6i0gTobSTqaNm/0XZuv8GGjFpnvgwXnCCPWl9FP9g="
"version": "9.0.4",
"hash": "sha256-l+qlHrdrqgvnveSMCO4qQx1QObAe5lMl80a4Kc3idzw="
},
{
"pname": "Microsoft.Extensions.Configuration.FileExtensions",
@@ -569,6 +554,11 @@
"version": "9.0.2",
"hash": "sha256-zy/YNMaY47o6yNv2WuYiAJEjtoOF8jlWgsWHqXeSm4s="
},
{
"pname": "Microsoft.Extensions.Primitives",
"version": "9.0.4",
"hash": "sha256-v/Ygyo1TMTUbnhdQSV2wzD4FOgAEWd1mpESo3kZ557g="
},
{
"pname": "Microsoft.Identity.Client",
"version": "4.67.2",
@@ -1114,11 +1104,6 @@
"version": "4.3.0",
"hash": "sha256-afY7VUtD6w/5mYqrce8kQrvDIfS2GXDINDh73IjxJKc="
},
{
"pname": "System.Collections.Immutable",
"version": "1.6.0",
"hash": "sha256-gnu+8nN48GAd4GRgeB5cAQmW7VnCubL/8h7zO377fd0="
},
{
"pname": "System.Collections.Immutable",
"version": "5.0.0",
@@ -1494,11 +1479,6 @@
"version": "8.0.1",
"hash": "sha256-Uj9k5meIDXlEm8V5MWyzaWz4YA+8OWHE5K8kMq0kTR4="
},
{
"pname": "System.Runtime.CompilerServices.Unsafe",
"version": "4.5.2",
"hash": "sha256-8eUXXGWO2LL7uATMZye2iCpQOETn2jCcjUhG6coR5O8="
},
{
"pname": "System.Runtime.CompilerServices.Unsafe",
"version": "5.0.0",
+2 -2
View File
@@ -10,13 +10,13 @@
buildDotnetModule rec {
pname = "bicep";
version = "0.34.44";
version = "0.36.1";
src = fetchFromGitHub {
owner = "Azure";
repo = "bicep";
rev = "v${version}";
hash = "sha256-vyPRLPTvQkwN7unlIHs6DvpjXnXyW1PDtH9hhIOgN1A=";
hash = "sha256-I7FBJhRLzRCsDS4pKJqi/IwuRCpjbJeeYY0BjQ2UiMk=";
};
patches = [
+3 -3
View File
@@ -10,16 +10,16 @@
buildGoModule rec {
pname = "gocatcli";
version = "1.0.6";
version = "1.1.2";
src = fetchFromGitHub {
owner = "deadc0de6";
repo = "gocatcli";
tag = "v${version}";
hash = "sha256-qB7BDPDGcngPhd82V4FrsycFd7CNb6hPaHJQ+ECmo48=";
hash = "sha256-kNXuQlBLiDEbKwtSmdX4XPLyMZFyBvLKEmQdCDug4ao=";
};
vendorHash = "sha256-gJfqnxCTKXmTH8L4qjSXzTr+LsP+jzzivfQOplRkfao=";
vendorHash = "sha256-gi4/ekLGh5T5D3ifW/FF+ewHesWOyhY01ZZIG6+OENo=";
nativeBuildInputs = [ installShellFiles ];
+69
View File
@@ -0,0 +1,69 @@
{
cmake,
enableGUI ? false,
fetchFromSourcehut,
gitUpdater,
lib,
libusb1,
pkg-config,
qt6,
stdenv,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "heimdall";
version = "2.2.1";
src = fetchFromSourcehut {
owner = "~grimler";
repo = "Heimdall";
rev = "v${finalAttrs.version}";
hash = "sha256-x+mDTT+oUJ4ffZOmn+UDk3+YE5IevXM8jSxLKhGxXSM=";
};
passthru.updateScript = gitUpdater { rev-prefix = "v"; };
outputs = [
"out"
"udev"
];
strictDeps = true;
nativeBuildInputs = [
cmake
pkg-config
] ++ lib.optional enableGUI qt6.wrapQtAppsHook;
buildInputs = [
(libusb1.override { withStatic = stdenv.hostPlatform.isWindows; })
] ++ lib.optional enableGUI qt6.qtbase;
preInstall = ''
mkdir -p $udev/lib/udev/rules.d
install -m644 -t $udev/lib/udev/rules.d $src/heimdall/60-heimdall.rules
'';
doInstallCheck = true;
# heimdall cli looked up from PATH by gui
preFixup = lib.optional enableGUI ''
qtWrapperArgs+=(--prefix PATH : "$out/bin")
'';
cmakeFlags = [
(lib.cmakeBool "DISABLE_FRONTEND" (!enableGUI))
];
meta = {
broken = enableGUI && !stdenv.hostPlatform.isLinux;
description = "Cross-platform open-source tool suite used to flash firmware onto Samsung Galaxy devices";
homepage = "https://git.sr.ht/~grimler/Heimdall";
license = lib.licenses.mit;
mainProgram = if enableGUI then "heimdall-frontend" else "heimdall";
maintainers = with lib.maintainers; [
surfaceflinger
];
platforms = with lib.platforms; unix ++ windows;
};
})
@@ -1,39 +0,0 @@
{
lib,
stdenv,
fetchurl,
dpkg,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "insync-emblem-icons";
version = "3.8.7.50516";
src = fetchurl rec {
urls = [
"https://cdn.insynchq.com/builds/linux/insync-emblem-icons_${finalAttrs.version}_all.deb"
"https://web.archive.org/web/20240409081214/${builtins.elemAt urls 0}"
];
hash = "sha256-uALaIxETEEkjDTx331uIsb4VswWk2K0dGuDMYH8v5U8=";
};
nativeBuildInputs = [ dpkg ];
installPhase = ''
runHook preInstall
mkdir -p $out
cp -R usr/* $out/
runHook postInstall
'';
meta = with lib; {
platforms = [ "x86_64-linux" ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
license = licenses.unfree;
maintainers = with maintainers; [ hellwolf ];
homepage = "https://www.insynchq.com";
description = "This package contains the file manager emblem icons for Insync file manager extensions";
};
})
+2 -2
View File
@@ -15,12 +15,12 @@
}:
stdenvNoCC.mkDerivation (finalAttrs: {
name = "lug-helper";
version = "3.10";
version = "3.11";
src = fetchFromGitHub {
owner = "starcitizen-lug";
repo = "lug-helper";
tag = "v${finalAttrs.version}";
hash = "sha256-AEHFyKoxIdckir/S96hwR3h9PuzlB5EMWF7PPbeVPYg=";
hash = "sha256-RVjtAfabmBfEYUfgoXK4EZSyFC00qdo5CMkW2Op0P5A=";
};
buildInputs = [
+3 -3
View File
@@ -7,13 +7,13 @@
}:
stdenvNoCC.mkDerivation {
pname = "material-symbols";
version = "4.0.0-unstable-2024-05-17";
version = "4.0.0-unstable-2025-04-11";
src = fetchFromGitHub {
owner = "google";
repo = "material-design-icons";
rev = "ace1af08508a6562ef05055a606cf44ea583ce3b";
hash = "sha256-d5lojgYCXCcvcSfLWfcSKFsBGKB6Si/XreRqpkEKsa0=";
rev = "941fa95d7f6084a599a54ca71bc565f48e7c6d9e";
hash = "sha256-5bcEh7Oetd2JmFEPCcoweDrLGQTpcuaCU8hCjz8ls3M=";
sparseCheckout = [ "variablefont" ];
};
+299
View File
@@ -0,0 +1,299 @@
{
lib,
stdenv,
fetchurl,
makeWrapper,
patchelf,
dpkg,
# Linked dynamic libraries.
alsa-lib,
at-spi2-atk,
at-spi2-core,
atk,
cairo,
cups,
dbus,
expat,
fontconfig,
freetype,
gcc-unwrapped,
gdk-pixbuf,
glib,
gtk3,
gtk4,
libdrm,
libglvnd,
libkrb5,
libX11,
libxcb,
libXcomposite,
libXcursor,
libXdamage,
libXext,
libXfixes,
libXi,
libxkbcommon,
libXrandr,
libXrender,
libXScrnSaver,
libxshmfence,
libXtst,
libgbm,
nspr,
nss,
pango,
pipewire,
vulkan-loader,
wayland, # ozone/wayland
# Command line programs
coreutils,
# command line arguments which are always set e.g "--disable-gpu"
commandLineArgs ? "",
# Will crash without.
systemd,
# Loaded at runtime.
libexif,
pciutils,
# Additional dependencies according to other distros.
## Ubuntu
curl,
liberation_ttf,
util-linux,
wget,
xdg-utils,
## Arch Linux.
flac,
harfbuzz,
icu,
libopus,
libpng,
snappy,
speechd-minimal,
## Gentoo
bzip2,
libcap,
# Necessary for USB audio devices.
libpulseaudio,
pulseSupport ? true,
adwaita-icon-theme,
gsettings-desktop-schemas,
# For video acceleration via VA-API (--enable-features=VaapiVideoDecoder)
libva,
libvaSupport ? true,
# For Vulkan support (--enable-features=Vulkan)
addDriverRunpath,
# For QT support
qt6,
# Edge AAD sync
cacert,
libsecret,
# Edge Specific
libuuid,
}:
let
opusWithCustomModes = libopus.override { withCustomModes = true; };
deps =
[
alsa-lib
at-spi2-atk
at-spi2-core
atk
bzip2
cacert
cairo
coreutils
cups
curl
dbus
expat
flac
fontconfig
freetype
gcc-unwrapped.lib
gdk-pixbuf
glib
harfbuzz
icu
libcap
libdrm
liberation_ttf
libexif
libglvnd
libkrb5
libpng
libX11
libxcb
libXcomposite
libXcursor
libXdamage
libXext
libXfixes
libXi
libxkbcommon
libXrandr
libXrender
libXScrnSaver
libxshmfence
libXtst
libgbm
nspr
nss
opusWithCustomModes
pango
pciutils
pipewire
snappy
speechd-minimal
systemd
util-linux
vulkan-loader
wayland
wget
libsecret
libuuid
gtk3
gtk4
qt6.qtbase
qt6.qtwayland
]
++ lib.optionals pulseSupport [ libpulseaudio ]
++ lib.optionals libvaSupport [ libva ];
in
stdenv.mkDerivation (finalAttrs: {
pname = "microsoft-edge";
version = "137.0.3296.68";
src = fetchurl {
url = "https://packages.microsoft.com/repos/edge/pool/main/m/microsoft-edge-stable/microsoft-edge-stable_${finalAttrs.version}-1_amd64.deb";
hash = "sha256-dgmQF6zpd8dAYKoTSiidk8VU6dZ/ZWEDlYD91IPaDEE=";
};
# With strictDeps on, some shebangs were not being patched correctly
# ie, $out/share/microsoft/msedge/microsoft-edge
strictDeps = false;
nativeBuildInputs = [
makeWrapper
patchelf
dpkg
];
buildInputs = [
# needed for XDG_ICON_DIRS
adwaita-icon-theme
glib
gtk3
gtk4
# needed for GSETTINGS_SCHEMAS_PATH
gsettings-desktop-schemas
];
rpath = lib.makeLibraryPath deps + ":" + lib.makeSearchPathOutput "lib" "lib64" deps;
binpath = lib.makeBinPath deps;
installPhase = ''
runHook preInstall
appname=msedge
dist=stable
exe=$out/bin/microsoft-edge
mkdir -p $out/bin
cp -v -a usr/share $out/share
cp -v -a opt/microsoft $out/share/microsoft
# replace bundled vulkan-loader
rm -v $out/share/microsoft/$appname/libvulkan.so.1
ln -v -s -t "$out/share/microsoft/$appname" "${lib.getLib vulkan-loader}/lib/libvulkan.so.1"
substituteInPlace $out/share/microsoft/$appname/microsoft-edge \
--replace-fail 'CHROME_WRAPPER' 'WRAPPER'
substituteInPlace $out/share/applications/microsoft-edge.desktop \
--replace-fail /usr/bin/microsoft-edge-$dist $exe
substituteInPlace $out/share/applications/com.microsoft.Edge.desktop \
--replace-fail /usr/bin/microsoft-edge-$dist $exe
substituteInPlace $out/share/gnome-control-center/default-apps/microsoft-edge.xml \
--replace-fail /opt/microsoft/msedge $exe
substituteInPlace $out/share/menu/microsoft-edge.menu \
--replace-fail /opt $out/share \
--replace-fail $out/share/microsoft/$appname/microsoft-edge $exe
for icon_file in $out/share/microsoft/msedge/product_logo_[0-9]*.png; do
num_and_suffix="''${icon_file##*logo_}"
if [ $dist = "stable" ]; then
icon_size="''${num_and_suffix%.*}"
else
icon_size="''${num_and_suffix%_*}"
fi
logo_output_prefix="$out/share/icons/hicolor"
logo_output_path="$logo_output_prefix/''${icon_size}x''${icon_size}/apps"
mkdir -p "$logo_output_path"
mv "$icon_file" "$logo_output_path/microsoft-edge.png"
done
# "--simulate-outdated-no-au" disables auto updates and browser outdated popup
makeWrapper "$out/share/microsoft/$appname/microsoft-edge" "$exe" \
--prefix QT_PLUGIN_PATH : "${qt6.qtbase}/lib/qt-6/plugins" \
--prefix QT_PLUGIN_PATH : "${qt6.qtwayland}/lib/qt-6/plugins" \
--prefix NIXPKGS_QT6_QML_IMPORT_PATH : "${qt6.qtwayland}/lib/qt-6/qml" \
--prefix LD_LIBRARY_PATH : "$rpath" \
--prefix PATH : "$binpath" \
--suffix PATH : "${lib.makeBinPath [ xdg-utils ]}" \
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH:${addDriverRunpath.driverLink}/share" \
--set SSL_CERT_FILE "${cacert}/etc/ssl/certs/ca-bundle.crt" \
--set CHROME_WRAPPER "microsoft-edge-$dist" \
--add-flags "\''${NIXOS_OZONE_WL:+\''${WAYLAND_DISPLAY:+--ozone-platform-hint=auto --enable-features=WaylandWindowDecorations --enable-wayland-ime=true --wayland-text-input-version=3}}" \
--add-flags "--simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'" \
--add-flags ${lib.escapeShellArg commandLineArgs}
# Make sure that libGL and libvulkan are found by ANGLE libGLESv2.so
patchelf --set-rpath $rpath $out/share/microsoft/$appname/lib*GL*
# Edge specific set liboneauth
patchelf --set-rpath $rpath $out/share/microsoft/$appname/liboneauth.so
for elf in $out/share/microsoft/$appname/{msedge,msedge-sandbox,msedge_crashpad_handler}; do
patchelf --set-rpath $rpath $elf
patchelf --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" $elf
done
runHook postInstall
'';
passthru.updateScript = ./update.py;
meta = {
changelog = "https://learn.microsoft.com/en-us/deployedge/microsoft-edge-relnote-stable-channel";
description = "Web browser from Microsoft";
homepage = "https://www.microsoft.com/en-us/edge";
license = lib.licenses.unfree;
mainProgram = "microsoft-edge";
maintainers = with lib.maintainers; [
cholli
ulrikstrid
emaryn
maeve-oake
leleuvilela
];
platforms = [ "x86_64-linux" ];
sourceProvenance = with lib.sourceTypes; [ binaryNativeCode ];
};
})
+45
View File
@@ -0,0 +1,45 @@
#! /usr/bin/env nix-shell
#! nix-shell -i python3 -p python3Packages.packaging python3Packages.python-debian common-updater-scripts
import os
from collections import OrderedDict
from os.path import abspath, dirname
from urllib import request
from debian.deb822 import Packages
from debian.debian_support import Version
PIN_PATH = dirname(abspath(__file__)) + "/default.nix"
def packages():
packages_url = "https://packages.microsoft.com/repos/edge/dists/stable/main/binary-amd64/Packages"
handle = request.urlopen(packages_url)
return handle
def latest_packages(packages: bytes):
latest_packages: OrderedDict[str, Packages] = {}
for package in Packages.iter_paragraphs(packages, use_apt_pkg=False):
name: str = package["Package"]
if not name.startswith("microsoft-edge-stable"):
continue
channel = name.replace("microsoft-edge-", "")
if channel not in latest_packages:
latest_packages[channel] = package
else:
old_package = latest_packages[channel]
if old_package.get_version() < package.get_version(): # type: ignore
latest_packages[channel] = package
return OrderedDict(sorted(latest_packages.items(), key=lambda x: x[0]))
def write_expression():
latest = latest_packages(packages())
version = Version.re_valid_version.match(latest["stable"]["Version"]).group(
"upstream_version"
)
os.system(f'update-source-version microsoft-edge "{version}"')
write_expression()
+23 -12
View File
@@ -2,6 +2,7 @@
lib,
stdenv,
fetchFromGitHub,
fetchzip,
meson,
ninja,
pkg-config,
@@ -9,22 +10,33 @@
libusb1,
ncurses,
SDL2,
libelf,
}:
stdenv.mkDerivation rec {
let
libdwarf = fetchzip {
url = "https://www.prevanders.net/libdwarf-0.7.0.tar.xz";
hash = "sha256-YTTbBJkDu2BSAVpvucqtg7/hFxXrxLnNAlvAL7rmkdE=";
};
in
stdenv.mkDerivation (finalAttrs: {
pname = "orbuculum";
version = "2.1.0";
version = "2.2.0";
src = fetchFromGitHub {
owner = "orbcode";
repo = "orbuculum";
rev = "V${version}";
sha256 = "sha256-Ohcc8739W/EmDjOYhcMgzEPVhzbWrUYgsPLdy4qzxhY=";
tag = "V${finalAttrs.version}";
hash = "sha256-n3+cfeN6G9n8pD5WyiHPENMJ0FN+bRVZe9pl81uvIrc=";
};
prePatch = ''
substituteInPlace meson.build --replace \
"/etc/udev/rules.d" "$out/etc/udev/rules.d"
postPatch = ''
cp --recursive --no-preserve=mode ${libdwarf} subprojects/libdwarf-0.7.0
pushd subprojects/libdwarf-0.7.0
patch -p1 < ../packagefiles/libdwarf/0001-fix-Use-project_source_root-for-subproject-compatibi.patch
patch -p1 < ../packagefiles/libdwarf/0002-fix-compilation-clang.patch
patch -p1 < ../packagefiles/libdwarf/0003-Fixed-calloc-arguments-order.patch
popd
'';
nativeBuildInputs = [
@@ -38,13 +50,12 @@ stdenv.mkDerivation rec {
libusb1
ncurses
SDL2
libelf
];
doInstallCheck = true;
installFlags = [
"INSTALL_ROOT=$(out)/"
];
installFlags = [ "INSTALL_ROOT=$(out)/" ];
postInstall = ''
mkdir -p $out/etc/udev/rules.d/
@@ -54,9 +65,9 @@ stdenv.mkDerivation rec {
meta = {
description = "Cortex M SWO SWV Demux and Postprocess for the ORBTrace";
homepage = "https://orbcode.org";
changelog = "https://github.com/orbcode/orbuculum/blob/V${version}/CHANGES.md";
changelog = "https://github.com/orbcode/orbuculum/blob/V${finalAttrs.version}/CHANGES.md";
license = lib.licenses.bsd3;
maintainers = with lib.maintainers; [ newam ];
platforms = lib.platforms.linux;
};
}
})
+3 -13
View File
@@ -5,30 +5,20 @@
fetchFromGitHub,
libax25,
installShellFiles,
fetchpatch,
}:
buildGoModule rec {
pname = "pat";
version = "0.16.0";
version = "0.17.0";
src = fetchFromGitHub {
owner = "la5nta";
repo = "pat";
rev = "v${version}";
hash = "sha256-JlqYdsAXs3pS5i59tiel+gxQsTrn5mUs0qLzjHxGZU0=";
hash = "sha256-2CQQKZ9ZnabMhvmbFeYBZ2iv9WJo6QR5IqROUXy7sck=";
};
# Remove upon next release since upstream is fixed
# https://github.com/la5nta/pat/pull/449
patches = [
(fetchpatch {
url = "https://github.com/la5nta/pat/commit/5604eac8853216d96d49d7d9947bdc514e195538.patch";
sha256 = "sha256-Z9uoZLlhdCslULUxGkc4ao4ptC4ImWzSrfabSA5S/PE=";
})
];
vendorHash = "sha256-Z6p0wiOY5l++nch64BJWGXleBgUNecTDm+yVCnmXvtU=";
vendorHash = "sha256-ajkRUnfYHCrFBxZsJLd6ypRl9+gYz+q4C/asOJZrVYg=";
ldflags = [
"-s"
+3 -3
View File
@@ -7,13 +7,13 @@
rustPlatform.buildRustPackage rec {
pname = "polarity";
version = "latest-unstable-2025-05-19";
version = "latest-unstable-2025-06-06";
src = fetchFromGitHub {
owner = "polarity-lang";
repo = "polarity";
rev = "b715e6529210242d79f304d34170eba8473174b2";
hash = "sha256-/yq6fqjkZoEw4MhsOWlRdQciA/Wqds9TgCczcVQV8Rw=";
rev = "421e73a38f57d0453d821332d4e25aa53476254d";
hash = "sha256-eugXy+BhjshhALT8ZLhA8OvtqCM8wmiuG1yuNWsAGyo=";
};
useFetchCargoVendor = true;
@@ -7,16 +7,16 @@
php.buildComposerProject2 (finalAttrs: {
pname = "roave-backward-compatibility-check";
version = "8.13.0";
version = "8.14.0";
src = fetchFromGitHub {
owner = "Roave";
repo = "BackwardCompatibilityCheck";
tag = finalAttrs.version;
hash = "sha256-bxjrk//n8HdHyYJpsW4qwgHptyeaNqCbiR3wWKJwPiM=";
hash = "sha256-4rhIaPdyyLiIhVYC4KNKbPAbVsHKnK6BOsebFjmmDeI=";
};
vendorHash = "sha256-fhSByQzSwFrNCKr7KwJ7CYFt4zqbk4iW5JXK3iSVTnM=";
vendorHash = "sha256-k+zFpBHE+r0a67gqUry+luMIhJZ5wo1RpEaF4c7vAmI=";
nativeInstallCheckInputs = [
versionCheckHook
+41
View File
@@ -0,0 +1,41 @@
{
lib,
stdenv,
fetchFromGitHub,
meson,
ninja,
cmake,
pkg-config,
wayland-scanner,
wayland,
libGL,
}:
stdenv.mkDerivation {
pname = "shaderbg";
version = "0-unstable-2024-11-26";
src = fetchFromGitHub {
owner = "Mr-Pine";
repo = "shaderbg";
rev = "cf9b135069550f8d7c8411d8a53285882034331c";
hash = "sha256-J+fRzSTEMlT9oLVZqbstrDxuKiJTAHNTLxB8IPgdom0=";
};
nativeBuildInputs = [
meson
ninja
cmake
pkg-config
wayland-scanner
];
buildInputs = [
wayland
libGL
];
meta = {
description = "Shader-based live wallpaper program for compositors that support wlr-layer-shell (Sway and others)";
homepage = "https://github.com/Mr-Pine/shaderbg";
license = lib.licenses.gpl3Only;
maintainers = with lib.maintainers; [ bokicoder ];
mainProgram = "shaderbg";
platforms = lib.platforms.linux;
};
}
+27 -1
View File
@@ -1,11 +1,37 @@
{
lib,
python3Packages,
python3,
fetchFromGitHub,
texinfo,
versionCheckHook,
}:
let
python = python3.override {
self = python;
packageOverrides = self: super: {
# tahoe-lafs is incompatible with magic-wormhole >= 0.19.0
# TODO: unpin, when https://tahoe-lafs.org/trac/tahoe-lafs/ticket/4180 is fixed
magic-wormhole = super.magic-wormhole.overridePythonAttrs (oldAttrs: rec {
version = "0.18.0";
src = fetchFromGitHub {
owner = "magic-wormhole";
repo = "magic-wormhole";
tag = version;
hash = "sha256-FQ7m6hkJcFZaE+ptDALq/gijn/RcAM1Zvzi2+xpoXBU=";
};
nativeCheckInputs = lib.filter (
input: (input.pname or null) != "pytest-twisted"
) oldAttrs.nativeCheckInputs;
pytestFlagsArray = null;
});
};
};
python3Packages = python.pkgs;
in
python3Packages.buildPythonApplication rec {
pname = "tahoe-lafs";
version = "1.20.0";
+51
View File
@@ -0,0 +1,51 @@
{
lib,
buildGoModule,
fetchFromGitHub,
writableTmpDirAsHomeHook,
nix-update-script,
}:
buildGoModule (finalAttrs: {
pname = "vfox";
version = "0.6.10";
src = fetchFromGitHub {
owner = "version-fox";
repo = "vfox";
tag = "v${finalAttrs.version}";
hash = "sha256-bH7rHhjmfXCOAv+K0HDyPAi+ZBfLllsGyhLSo8rpcl4=";
};
vendorHash = "sha256-TmWhzjjv+DkFHV4kEKpVYgQpI0Vl4aYvKR9QVpawrYA=";
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [ writableTmpDirAsHomeHook ];
checkFlags =
let
skippedTests = [
# need network
"TestGetRequest"
"TestHeadRequest"
"TestDownloadFile"
];
in
[ "-skip=^${builtins.concatStringsSep "$|^" skippedTests}$" ];
preCheck = ''
export CI=1
'';
passthru.updateScript = nix-update-script { };
meta = {
description = "Extendable version manager";
homepage = "https://github.com/version-fox/vfox";
changelog = "https://github.com/version-fox/vfox/releases/tag/v${finalAttrs.version}";
mainProgram = "vfox";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ emaryn ];
};
})
+2 -2
View File
@@ -17,13 +17,13 @@ python3Packages.buildPythonApplication rec {
# The websites yt-dlp deals with are a very moving target. That means that
# downloads break constantly. Because of that, updates should always be backported
# to the latest stable release.
version = "2025.5.22";
version = "2025.6.9";
pyproject = true;
src = fetchPypi {
inherit version;
pname = "yt_dlp";
hash = "sha256-6nOFTF2rwSTymjWo+um8XUIu8yMb6+6ivfqCrBkanCk=";
hash = "sha256-dR9To7YTU1Ir+AX6MLvL0WZmEmU345cG6rT4w2jxEaw=";
};
build-system = with python3Packages; [
@@ -1,95 +0,0 @@
{
stdenv,
lib,
fetchFromGitHub,
cmake,
libetpan,
icu,
cyrus_sasl,
libctemplate,
libuchardet,
pkg-config,
glib,
html-tidy,
libxml2,
libuuid,
openssl,
}:
stdenv.mkDerivation rec {
pname = "mailcore2";
version = "0.6.4";
src = fetchFromGitHub {
owner = "MailCore";
repo = "mailcore2";
rev = version;
sha256 = "0a69q11z194fdfwyazjyyylx57sqs9j4lz7jwh5qcws8syqgb23z";
};
nativeBuildInputs = [
cmake
pkg-config
];
buildInputs =
[
libetpan
cyrus_sasl
libctemplate
libuchardet
html-tidy
libxml2
openssl
]
++ lib.optionals stdenv.hostPlatform.isLinux [
glib
icu
libuuid
];
postPatch =
''
substituteInPlace CMakeLists.txt \
--replace " icule iculx" "" \
--replace "tidy/tidy.h" "tidy.h" \
--replace "/usr/include/tidy" "${html-tidy}/include" \
--replace "/usr/include/libxml2" "${libxml2.dev}/include/libxml2"
substituteInPlace src/core/basetypes/MCHTMLCleaner.cpp \
--replace buffio.h tidybuffio.h
substituteInPlace src/core/basetypes/MCString.cpp \
--replace "xmlErrorPtr" "const xmlError *"
''
+ lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
substituteInPlace src/core/basetypes/MCICUTypes.h \
--replace "__CHAR16_TYPE__ UChar" "char16_t UChar"
'';
cmakeFlags = lib.optionals (!stdenv.hostPlatform.isDarwin) [
"-DBUILD_SHARED_LIBS=ON"
];
installPhase = ''
mkdir $out
cp -r src/include $out
mkdir $out/lib
cp src/libMailCore.* $out/lib
'';
doCheck = !stdenv.hostPlatform.isDarwin;
checkPhase = ''
(
cd unittest
TZ=PST8PDT ./unittestcpp ../../unittest/data
)
'';
meta = with lib; {
description = "Simple and asynchronous API to work with e-mail protocols IMAP, POP and SMTP";
homepage = "http://libmailcore.com";
license = licenses.bsd3;
maintainers = [ ];
platforms = platforms.unix;
};
}
@@ -5,6 +5,7 @@
dns-client-lwt,
dns-server,
dns-certify,
dns-resolver,
dnssec,
bos,
cmdliner,
@@ -13,6 +14,7 @@
mirage-crypto,
mirage-crypto-pk,
mirage-crypto-rng,
mirage-mtime,
ohex,
ptime,
mtime,
@@ -39,6 +41,7 @@ buildDunePackage {
dns-client-lwt
dns-server
dns-certify
dns-resolver
dnssec
bos
cmdliner
@@ -47,6 +50,7 @@ buildDunePackage {
mirage-crypto
mirage-crypto-pk
mirage-crypto-rng
mirage-mtime
ohex
ptime
mtime
@@ -18,13 +18,13 @@
buildDunePackage rec {
pname = "dns";
version = "10.0.0";
version = "10.1.0";
minimalOCamlVersion = "4.13";
src = fetchurl {
url = "https://github.com/mirage/ocaml-dns/releases/download/v${version}/dns-${version}.tbz";
hash = "sha256-dPO9BjvTE0UrpxKrmtgPrgfV/2uG/E9Wd/BNYSMtFwI=";
hash = "sha256-XG/qUUzsOccy5xdkZD6PuViN7gOMmRwYSsy+07QeN9I=";
};
propagatedBuildInputs = [
@@ -14,7 +14,6 @@
tcpip,
tls,
tls-mirage,
mirage-crypto-rng-mirage,
dnssec,
alcotest,
}:
@@ -40,7 +39,6 @@ buildDunePackage {
tcpip
tls
tls-mirage
mirage-crypto-rng-mirage
];
doCheck = true;
@@ -30,7 +30,7 @@
buildPythonPackage rec {
pname = "craft-parts";
version = "2.10.0";
version = "2.12.0";
pyproject = true;
@@ -38,7 +38,7 @@ buildPythonPackage rec {
owner = "canonical";
repo = "craft-parts";
tag = version;
hash = "sha256-nGOLzQ+mlLHmqkknWklCIEN7HOgQznuYO1rbqUvL1N4=";
hash = "sha256-mm5s7lHbU9SJsS9wTkXkJpmVsGG0qVXIeaQ+TiGz/7o=";
};
patches = [ ./bash-path.patch ];
@@ -1,6 +1,5 @@
{
lib,
stdenv,
fetchFromGitHub,
rustPlatform,
cacert,
@@ -14,7 +13,6 @@
pytest-asyncio,
websockets,
httpx,
rust-jemalloc-sys,
sniffio,
nix-update-script,
}:
@@ -31,6 +29,14 @@ buildPythonPackage rec {
hash = "sha256-qJ65ILj7xLqOWmpn1UzNQHUnzFg714gntVSmYHpI65I=";
};
# Granian forces a custom allocator for all the things it runs,
# which breaks some libraries in funny ways. Make it not do that,
# and allow the final application to make the allocator decision
# via LD_PRELOAD or similar.
patches = [
./no-alloc.patch
];
cargoDeps = rustPlatform.fetchCargoVendor {
inherit pname version src;
hash = "sha256-swfqKp8AsxNAUc7dlce6J4dNQbNGWrCcUDc31AhuMmI=";
@@ -41,22 +47,6 @@ buildPythonPackage rec {
maturinBuildHook
];
buildInputs = lib.optionals (stdenv.hostPlatform.isAarch64) [
# fix "Unsupported system page size" on aarch64-linux with 16k pages
# https://github.com/NixOS/nixpkgs/issues/410572
# only enabled on aarch64 due to https://github.com/NixOS/nixpkgs/pull/410611#issuecomment-2939564567
(rust-jemalloc-sys.overrideAttrs (
{ configureFlags, ... }:
{
configureFlags = configureFlags ++ [
# otherwise import check fails with:
# ImportError: {{storeDir}}/lib/libjemalloc.so.2: cannot allocate memory in static TLS block
"--disable-initial-exec-tls"
];
}
))
];
dependencies = [
click
];
@@ -0,0 +1,50 @@
diff --git a/Cargo.toml b/Cargo.toml
index 4e6676f..1657d61 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -40,7 +40,6 @@ hyper = { version = "=1.6", features = ["http1", "http2", "server"] }
hyper-util = { version = "=0.1", features = ["server-auto", "tokio"] }
itertools = "0.14"
log = "0.4"
-mimalloc = { version = "0.1.43", default-features = false, features = ["local_dynamic_tls"], optional = true }
mime_guess = "=2.0"
pem = "=3.0"
percent-encoding = "=2.3"
@@ -56,15 +55,9 @@ tokio-stream = "0.1"
tokio-tungstenite = "=0.26"
tokio-util = { version = "0.7", features = ["codec", "rt"] }
-[target.'cfg(not(any(target_env = "musl", target_os = "freebsd", target_os = "openbsd", target_os = "windows")))'.dependencies]
-tikv-jemallocator = { version = "0.6.0", default-features = false, features = ["disable_initial_exec_tls"] }
-
[build-dependencies]
pyo3-build-config = "=0.25"
-[features]
-mimalloc = ["dep:mimalloc"]
-
[profile.release]
codegen-units = 1
debug = false
diff --git a/src/lib.rs b/src/lib.rs
index 9172842..6c41005 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -1,17 +1,3 @@
-#[cfg(not(any(
- target_env = "musl",
- target_os = "freebsd",
- target_os = "openbsd",
- target_os = "windows",
- feature = "mimalloc"
-)))]
-#[global_allocator]
-static GLOBAL: tikv_jemallocator::Jemalloc = tikv_jemallocator::Jemalloc;
-
-#[cfg(feature = "mimalloc")]
-#[global_allocator]
-static GLOBAL: mimalloc::MiMalloc = mimalloc::MiMalloc;
-
use pyo3::prelude::*;
use std::sync::OnceLock;
@@ -34,18 +34,21 @@
magic-wormhole-transit-relay,
magic-wormhole-mailbox-server,
pytestCheckHook,
pytest-twisted,
gitUpdater,
}:
buildPythonPackage rec {
pname = "magic-wormhole";
version = "0.18.0";
version = "0.19.2";
pyproject = true;
src = fetchFromGitHub {
owner = "magic-wormhole";
repo = "magic-wormhole";
tag = version;
hash = "sha256-FQ7m6hkJcFZaE+ptDALq/gijn/RcAM1Zvzi2+xpoXBU=";
hash = "sha256-5Tipcood5RktXY05p20hQpWhSMMnZm67I4iybjV8TcA=";
};
postPatch =
@@ -98,10 +101,13 @@ buildPythonPackage rec {
magic-wormhole-mailbox-server
magic-wormhole-transit-relay
pytestCheckHook
pytest-twisted
]
++ optional-dependencies.dilation
++ lib.optionals stdenv.hostPlatform.isDarwin [ unixtools.locale ];
pytestFlagsArray = [ "src/wormhole/test" ];
__darwinAllowLocalNetworking = true;
postInstall = ''
@@ -112,10 +118,12 @@ buildPythonPackage rec {
--zsh wormhole_complete.zsh
'';
passthru.updateScript = gitUpdater { };
meta = {
changelog = "https://github.com/magic-wormhole/magic-wormhole/blob/${version}/NEWS.md";
description = "Securely transfer data between computers";
homepage = "https://github.com/magic-wormhole/magic-wormhole";
homepage = "https://magic-wormhole.readthedocs.io/";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.mjoerg ];
mainProgram = "wormhole";
@@ -11,14 +11,14 @@
buildPythonPackage rec {
pname = "publicsuffixlist";
version = "1.0.2.20250606";
version = "1.0.2.20250608";
pyproject = true;
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
hash = "sha256-N4Lp8bRrD18DvSyg0Ye9wV/T1w2prNjHEdVDSq0wJoM=";
hash = "sha256-C4RywYvx5bNuor4agXBN6XpoLkxHJGMAuBocZ9FcGYM=";
};
build-system = [ setuptools ];
+2 -2
View File
@@ -25,13 +25,13 @@
stdenv.mkDerivation rec {
pname = "scummvm";
version = "2.9.0";
version = "2.9.1";
src = fetchFromGitHub {
owner = "scummvm";
repo = "scummvm";
rev = "v${version}";
hash = "sha256-4/h1bzauYWNvG7skn6afF79t0KEdgYLZoeqeqRudH7I=";
hash = "sha256-+MM47piuXuIBmAQd0g/cAg5t02qSQ0sw/DwFrMUSIAA=";
};
nativeBuildInputs = [ nasm ];
-69
View File
@@ -1,69 +0,0 @@
{
lib,
stdenv,
mkDerivation,
fetchFromGitHub,
cmake,
zlib,
libusb1,
enableGUI ? false,
qtbase ? null,
}:
mkDerivation rec {
pname = "heimdall${lib.optionalString enableGUI "-gui"}";
version = "1.4.2";
src = fetchFromGitHub {
owner = "Benjamin-Dobell";
repo = "Heimdall";
rev = "v${version}";
sha256 = "1ygn4snvcmi98rgldgxf5hwm7zzi1zcsihfvm6awf9s6mpcjzbqz";
};
buildInputs = [
zlib
libusb1
] ++ lib.optional enableGUI qtbase;
nativeBuildInputs = [ cmake ];
cmakeFlags = [
"-DDISABLE_FRONTEND=${if enableGUI then "OFF" else "ON"}"
"-DLIBUSB_LIBRARY=${libusb1}"
];
preConfigure =
''
# Give ownership of the Galaxy S USB device to the logged in user.
substituteInPlace heimdall/60-heimdall.rules --replace 'MODE="0666"' 'TAG+="uaccess"'
''
+ lib.optionalString stdenv.hostPlatform.isDarwin ''
substituteInPlace libpit/CMakeLists.txt --replace "-std=gnu++11" ""
'';
doInstallCheck = true;
installPhase =
lib.optionalString (stdenv.hostPlatform.isDarwin && enableGUI) ''
mkdir -p $out/Applications
mv bin/heimdall-frontend.app $out/Applications/heimdall-frontend.app
wrapQtApp $out/Applications/heimdall-frontend.app/Contents/MacOS/heimdall-frontend
''
+ ''
mkdir -p $out/{bin,share/doc/heimdall,lib/udev/rules.d}
install -m755 -t $out/bin bin/*
install -m644 -t $out/lib/udev/rules.d ../heimdall/60-heimdall.rules
install -m644 ../Linux/README $out/share/doc/heimdall/README.linux
install -m644 ../OSX/README.txt $out/share/doc/heimdall/README.osx
'';
meta = with lib; {
broken = stdenv.hostPlatform.isDarwin;
homepage = "http://www.glassechidna.com.au/products/heimdall/";
description = "Cross-platform tool suite to flash firmware onto Samsung Galaxy S devices";
license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ];
platforms = platforms.unix;
mainProgram = "heimdall";
};
}
@@ -1,98 +0,0 @@
{
lib,
mkDerivation,
fetchurl,
imagemagick,
pcsclite,
pyotherside,
python3,
qmake,
qtbase,
qtgraphicaleffects,
qtquickcontrols2,
yubikey-manager,
yubikey-personalization,
}:
mkDerivation rec {
pname = "yubikey-manager-qt";
version = "1.2.5";
src = fetchurl {
url = "https://developers.yubico.com/yubikey-manager-qt/Releases/yubikey-manager-qt-${version}.tar.gz";
hash = "sha256-6bKeR3UX2DhXGcKJ1bxvT1aLTgCfc+aNo6ckE89NV+I=";
};
patches = [ ./remove-upload-import.diff ];
nativeBuildInputs = [
python3.pkgs.wrapPython
qmake
imagemagick
];
postPatch = ''
substituteInPlace ykman-gui/deployment.pri --replace '/usr/bin' "$out/bin"
'';
buildInputs = [
pyotherside
python3
qtbase
qtgraphicaleffects
qtquickcontrols2
];
pythonPath = [
(yubikey-manager.override { python3Packages = python3.pkgs; })
];
postInstall = ''
# Desktop files
install -D -m0644 resources/ykman-gui.desktop "$out/share/applications/ykman-gui.desktop"
substituteInPlace "$out/share/applications/ykman-gui.desktop" \
--replace Exec=ykman-gui "Exec=$out/bin/ykman-gui"
# Icons
install -Dt $out/share/ykman-gui/icons resources/icons/*.{icns,ico}
install -D -m0644 resources/icons/ykman.png "$out/share/icons/hicolor/128x128/apps/ykman.png"
ln -s -- "$out/share/icons/hicolor/128x128/apps/ykman.png" "$out/share/icons/hicolor/128x128/apps/ykman-gui.png"
for SIZE in 16 24 32 48 64 96; do
# set modify/create for reproducible builds
convert -scale ''${SIZE} +set date:create +set date:modify \
resources/icons/ykman.png ykman.png
imageFolder="$out/share/icons/hicolor/''${SIZE}x''${SIZE}/apps"
install -D -m0644 ykman.png "$imageFolder/ykman.png"
ln -s -- "$imageFolder/ykman.png" "$imageFolder/ykman-gui.png"
done
unset SIZE imageFolder
'';
qtWrapperArgs = [
"--prefix"
"LD_LIBRARY_PATH"
":"
(lib.makeLibraryPath [
pcsclite
yubikey-personalization
])
];
preFixup = ''
buildPythonPath "$pythonPath"
qtWrapperArgs+=(--prefix PYTHONPATH : "$program_PYTHONPATH")
'';
meta = with lib; {
description = "Cross-platform application for configuring any YubiKey over all USB interfaces";
homepage = "https://developers.yubico.com/yubikey-manager-qt/";
knownVulnerabilities = [
"Yubico has announced the End of Life of YubiKey Manager QT. Upstream recommends yubioath-flutter to configure a YubiKey. yubikey-manager-qt will be dropped after NixOS 25.05."
];
license = licenses.bsd2;
maintainers = [ maintainers.cbley ];
mainProgram = "ykman-gui";
platforms = platforms.linux;
};
}
@@ -1,16 +0,0 @@
--- a/ykman-gui/py/yubikey.py 2025-01-08 19:42:20.058393985 +0100
+++ b/ykman-gui/py/yubikey.py 2025-01-08 19:44:12.520364702 +0100
@@ -50,12 +50,10 @@
if int(ykman_v.split(".")[0] ) > 4:
from yubikit.support import get_name
from ykman.device import list_all_devices, scan_devices
- from ykman.otp import (
- _PrepareUploadFailed as PrepareUploadFailed
- , _prepare_upload_key as prepare_upload_key, generate_static_pw)
+ from ykman.otp import generate_static_pw
else:
from ykman import connect_to_device, scan_devices, get_name
from ykman.otp import PrepareUploadFailed, prepare_upload_key, generate_static_pw
from fido2.ctap2 import Ctap2, ClientPin
@@ -1,62 +0,0 @@
{
stdenv,
lib,
fetchurl,
mkDerivation,
pkg-config,
qtbase,
qmake,
imagemagick,
libyubikey,
yubikey-personalization,
}:
mkDerivation rec {
pname = "yubikey-personalization-gui";
version = "3.1.25";
src = fetchurl {
url = "https://developers.yubico.com/yubikey-personalization-gui/Releases/yubikey-personalization-gui-${version}.tar.gz";
sha256 = "1knyv5yss8lhzaff6jpfqv12fjf1b8b21mfxzx3qi0hw4nl8n2v8";
};
nativeBuildInputs = [
pkg-config
qmake
imagemagick
];
buildInputs = [
yubikey-personalization
qtbase
libyubikey
];
installPhase = ''
install -D -m0755 build/release/yubikey-personalization-gui "$out/bin/yubikey-personalization-gui"
install -D -m0644 resources/lin/yubikey-personalization-gui.1 "$out/share/man/man1/yubikey-personalization-gui.1"
# Desktop files
install -D -m0644 resources/lin/yubikey-personalization-gui.desktop "$out/share/applications/yubikey-personalization-gui.desktop"
# Icons
install -D -m0644 resources/lin/yubikey-personalization-gui.xpm "$out/share/pixmaps/yubikey-personalization-gui.xpm"
install -D -m0644 resources/lin/yubikey-personalization-gui.png "$out/share/icons/hicolor/128x128/apps/yubikey-personalization-gui.png"
for SIZE in 16 24 32 48 64 96; do
# set modify/create for reproducible builds
convert -scale ''${SIZE} +set date:create +set date:modify \
resources/lin/yubikey-personalization-gui.png \
yubikey-personalization-gui.png
install -D -m0644 yubikey-personalization-gui.png "$out/share/icons/hicolor/''${SIZE}x''${SIZE}/apps/yubikey-personalization-gui.png"
done
'';
meta = with lib; {
broken = stdenv.hostPlatform.isDarwin;
homepage = "https://developers.yubico.com/yubikey-personalization-gui";
description = "QT based cross-platform utility designed to facilitate reconfiguration of the Yubikey";
license = licenses.bsd2;
platforms = platforms.unix;
mainProgram = "yubikey-personalization-gui";
};
}
+4 -1
View File
@@ -912,6 +912,7 @@ mapAliases {
input-utils = throw "The input-utils package was dropped since it was unmaintained."; # Added 2024-06-21
index-fm = libsForQt5.mauiPackages.index; # added 2022-05-17
inotifyTools = inotify-tools;
insync-emblem-icons = throw "'insync-emblem-icons' has been removed, use 'insync-nautilus' instead"; # Added 2025-05-14
inter-ui = throw "'inter-ui' has been renamed to/replaced by 'inter'"; # Converted to throw 2024-10-17
ipfs = kubo; # Added 2022-09-27
ipfs-migrator-all-fs-repo-migrations = kubo-fs-repo-migrations; # Added 2022-09-27
@@ -1177,6 +1178,7 @@ mapAliases {
ma1sd = throw "ma1sd was dropped as it is unmaintained"; # Added 2024-07-10
mac = monkeysAudio; # Added 2024-11-30
MACS2 = macs2; # Added 2023-06-12
mailcore2 = throw "'mailcore2' has been removed due to lack of upstream maintenance."; # Added 2025-06-09
mailctl = throw "mailctl has been renamed to oama"; # Added 2024-08-19
mailman-rss = throw "The mailman-rss package was dropped since it was unmaintained."; # Added 2024-06-21
mariadb_105 = throw "'mariadb_105' has been removed because it reached its End of Life. Consider upgrading to 'mariadb_106'."; # Added 2025-04-26
@@ -1244,7 +1246,6 @@ mapAliases {
microcodeAmd = microcode-amd; # Added 2024-09-08
microcodeIntel = microcode-intel; # Added 2024-09-08
micropad = throw "micropad has been removed, since it was unmaintained and blocked the Electron 27 removal."; # Added 2025-02-24
microsoft-edge = throw "microsoft-edge has been removed due to lack of maintenance in nixpkgs"; # Added 2025-05-19
microsoft_gsl = microsoft-gsl; # Added 2023-05-26
midori = throw "'midori' original project has been abandonned upstream and the package was broken for a while in nixpkgs"; # Added 2025-05-19
midori-unwrapped = midori; # Added 2025-05-19
@@ -2115,6 +2116,8 @@ mapAliases {
yandex-browser-corporate = throw "'yandex-browser-corporate' has been removed, as it was broken and unmaintained"; # Added 2025-04-17
youtrack_2022_3 = throw "'youtrack_2022_3' has been removed as it was deprecated. Please update to the 'youtrack' package."; # Added 2024-10-17
yrd = throw "'yrd' has been removed, as it was broken and unmaintained"; # added 2024-05-27
yubikey-manager-qt = throw "'yubikey-manager-qt' has been removed due to being archived upstream. Consider using 'yubioath-flutter' instead."; # Added 2025-06-07
yubikey-personalization-gui = throw "'yubikey-personalization-gui' has been removed due to being archived upstream. Consider using 'yubioath-flutter' instead."; # Added 2025-06-07
yuzu-ea = throw "yuzu-ea has been removed from nixpkgs, as it has been taken down upstream"; # Added 2024-03-04
yuzu-early-access = throw "yuzu-early-access has been removed from nixpkgs, as it has been taken down upstream"; # Added 2024-03-04
yuzu = throw "yuzu has been removed from nixpkgs, as it has been taken down upstream"; # Added 2024-03-04
-10
View File
@@ -3286,8 +3286,6 @@ with pkgs;
heaptrack = libsForQt5.callPackage ../development/tools/profiling/heaptrack { };
heimdall = libsForQt5.callPackage ../tools/misc/heimdall { };
heimdall-gui = heimdall.override { enableGUI = true; };
headscale = callPackage ../servers/headscale { };
@@ -9813,10 +9811,6 @@ with pkgs;
xgboostWithCuda = xgboost.override { cudaSupport = true; };
yubikey-manager-qt = libsForQt5.callPackage ../tools/misc/yubikey-manager-qt { };
yubikey-personalization-gui = libsForQt5.callPackage ../tools/misc/yubikey-personalization-gui { };
zlib = callPackage ../development/libraries/zlib {
stdenv =
# zlib is a dependency of xcbuild. Avoid an infinite recursion by using a bootstrap stdenv
@@ -16230,10 +16224,6 @@ with pkgs;
openlilylib-fonts = callPackage ../misc/lilypond/fonts.nix { };
mailcore2 = callPackage ../development/libraries/mailcore2 {
icu = icu71;
};
meilisearch_1_11 = callPackage ../by-name/me/meilisearch/package.nix { version = "1.11.3"; };
mongocxx = callPackage ../development/libraries/mongocxx/default.nix { };