Merge master into staging-next

This commit is contained in:
nixpkgs-ci[bot]
2025-10-02 06:05:42 +00:00
committed by GitHub
18 changed files with 240 additions and 52 deletions

View File

@@ -358,6 +358,37 @@ have a predefined type and string generator already declared under
: Outputs the xml with header.
`pkgs.formats.pythonVars` { }
: A function taking an empty attribute set (for future extensibility)
and returning a set with python variable specific attributes `type`, `lib`, and
`generate` as specified [below](#pkgs-formats-result).
The `lib` attribute contains functions to be used in settings, for
generating special Python values:
`mkRaw pythonCode`
: Outputs the given string as raw Python code
`_imports`
`_imports` is a special value you can set to specify additional modules to be
imported on top of the file.
`Example usage:`
```nix
let
format = pkgs.formats.pythonVars { };
in {
_imports = [ "re" ];
conditional = format.lib.mkRaw "1 if True else 2";
function_result = format.lib.mkRaw "re.findall(r'\\bf[a-z]*', 'which foot or hand fell fastest')";
}
```
`pkgs.formats.cdn` { }
: A function taking an empty attribute set (for future extensibility)

View File

@@ -321,6 +321,7 @@ in
elementary-code
elementary-files
elementary-mail
elementary-maps
elementary-music
elementary-photos
elementary-screenshot

View File

@@ -13,13 +13,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "clifm";
version = "1.26";
version = "1.26.3";
src = fetchFromGitHub {
owner = "leo-arch";
repo = "clifm";
tag = "v${finalAttrs.version}";
hash = "sha256-eNgghfK2NSSrzn0X1XNcaE+jErlLG5rhg4+RLjERsFU=";
hash = "sha256-lYeYElTeQpOnptL/c/06OWpsmI/Jkd7rlKGw0mKc9/c=";
};
buildInputs = [

View File

@@ -5,17 +5,18 @@
scsh,
feh,
xorg,
xdg-user-dirs,
}:
stdenv.mkDerivation {
pname = "deco";
version = "unstable-2019-04-03";
version = "0-unstable-2025-07-07";
src = fetchFromGitHub {
owner = "ebzzry";
owner = "vedatechnologiesinc";
repo = "deco";
rev = "dd8ec7905bc85d085eb2ee3bddabea451054288c";
sha256 = "sha256-/3GeNvWOCRPOYTUbodXDUxR5QVDEyx6x2Jt5PxsPdvk=";
rev = "2fd28241ed28c07b9d641061d4e1bf3cacfcc7a0";
hash = "sha256-kjXEvgYO1p/dX9nXQ3HHcXmJdtxDM6xzKqDQu3yM4Tw=";
};
installPhase = ''
@@ -25,17 +26,18 @@ stdenv.mkDerivation {
'';
postFixup = ''
substituteInPlace $out/bin/deco --replace "/usr/bin/env scsh" "${scsh}/bin/scsh"
substituteInPlace $out/bin/deco --replace "feh" "${feh}/bin/feh"
substituteInPlace $out/bin/deco --replace "xdpyinfo" "${xorg.xdpyinfo}/bin/xdpyinfo"
substituteInPlace $out/bin/deco --replace-fail "/usr/bin/env scsh" "${scsh}/bin/scsh"
substituteInPlace $out/bin/deco --replace-fail "feh" "${feh}/bin/feh"
substituteInPlace $out/bin/deco --replace-fail "xdpyinfo" "${xorg.xdpyinfo}/bin/xdpyinfo"
substituteInPlace $out/bin/deco --replace-fail "xdg-user-dir" "${xdg-user-dirs}/bin/xdg-user-dir"
'';
meta = with lib; {
homepage = "https://github.com/ebzzry/deco";
meta = {
homepage = "https://github.com/vedatechnologiesinc/deco";
description = "Simple root image setter";
license = licenses.mit;
maintainers = [ maintainers.ebzzry ];
platforms = platforms.unix;
license = lib.licenses.mit;
maintainers = [ lib.maintainers.ebzzry ];
platforms = lib.platforms.unix;
mainProgram = "deco";
};

View File

@@ -15,7 +15,7 @@
}:
let
version = "1.9";
version = "1.9.1";
devenvNixVersion = "2.30.4";
devenv_nix =
@@ -42,10 +42,10 @@ rustPlatform.buildRustPackage {
owner = "cachix";
repo = "devenv";
tag = "v${version}";
hash = "sha256-MG+c0mo4g9UHSuqibX3OVkiADWmMn/PWDfVhD4U29PM=";
hash = "sha256-v86pQGIWHJPkRryglJSXOp0aEoU6ZtURuURsXLqfqSE=";
};
cargoHash = "sha256-7uB9oC0jHWBFeUtIyVpTjeximU6eSxSCiBzo/whoKxQ=";
cargoHash = "sha256-41VmzZvoRd2pL5/o6apHztpS2XrL4HGPIJPBkUbPL1I=";
buildAndTestSubdir = "devenv";

View File

@@ -14,16 +14,16 @@
rustPlatform.buildRustPackage (finalAttrs: {
pname = "jujutsu";
version = "0.33.0";
version = "0.34.0";
src = fetchFromGitHub {
owner = "jj-vcs";
repo = "jj";
tag = "v${finalAttrs.version}";
hash = "sha256-EKYM18UavIbZeI5/F5OKUzyjQip0yb6WPt6BZ2YpYww=";
hash = "sha256-OW8kSDBBSZr0G3U27AAkZ3cH3TJmSARbg9Pc4qZ6tA0=";
};
cargoHash = "sha256-iIMmtuf4uDe2PX/X3UW8sDt3kPTij8Nlh/SU92abvUw=";
cargoHash = "sha256-/zC2z0evYs8VKta0uClTtl4l3tbDRcsVedGF2jtfQGA=";
nativeBuildInputs = [
installShellFiles

View File

@@ -22,13 +22,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "mozillavpn";
version = "2.31.0";
version = "2.31.1";
src = fetchFromGitHub {
owner = "mozilla-mobile";
repo = "mozilla-vpn-client";
tag = "v${finalAttrs.version}";
fetchSubmodules = true;
hash = "sha256-++j3BMTkg5TG09hmsUGDcKbkvTGrd9u0FaRebbOsI3s=";
hash = "sha256-+Aexwj/iNIhriiUrMhtj2c9S3e5jGN7OvREXUzi/03s=";
};
patches = [ ];

View File

@@ -44,13 +44,13 @@
clangStdenv.mkDerivation (finalAttrs: {
pname = "ossia-score";
version = "3.7.0";
version = "3.7.1";
src = fetchFromGitHub {
owner = "ossia";
repo = "score";
tag = "v${finalAttrs.version}";
hash = "sha256-r5JoOzUa70nn5pj9pcuAC4okpnRWTafyukz+ij0VQno=";
hash = "sha256-+RUspDEAQPL6M0/f4lb/SuTD1wdmwE9+8GXQKUClgdE=";
fetchSubmodules = true;
};

View File

@@ -31,6 +31,9 @@ stdenv.mkDerivation {
nativeBuildInputs = [ autoreconfHook ];
buildInputs = [ scheme48 ];
configureFlags = [ "--with-scheme48=${scheme48}" ];
makeFlags = [
"SCHEME48VERSION=${scheme48.version}"
];
passthru.updateScript = unstableGitUpdater { };

View File

@@ -189,6 +189,7 @@ stdenv.mkDerivation {
mkdir -p $out/app
cp -r opt/wemeet $out/app/wemeet
cp -r usr/share $out/share
# bundled libcurl depends on openssl 1.1 which is not available in nixpkgs
rm -f $out/app/wemeet/lib/libcurl.so
substituteInPlace $out/share/applications/wemeetapp.desktop \
--replace-fail "/opt/wemeet/wemeetapp.sh" "wemeet" \
@@ -200,8 +201,7 @@ stdenv.mkDerivation {
ln -s $out/app/wemeet/bin/raw/xcast.conf $out/app/wemeet/bin/xcast.conf
ln -s $out/app/wemeet/plugins $out/app/wemeet/lib/plugins
ln -s $out/app/wemeet/resources $out/app/wemeet/lib/resources
mkdir -p $out/app/wemeet/lib/translations
ln -s $out/app/wemeet/translations/qtwebengine_locales $out/app/wemeet/lib/translations/qtwebengine_locales
ln -s $out/app/wemeet/translations $out/app/wemeet/lib/translations
runHook postInstall
'';
@@ -217,9 +217,9 @@ stdenv.mkDerivation {
"--set QT_STYLE_OVERRIDE fusion"
"--set IBUS_USE_PORTAL 1"
"--set XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb"
"--prefix LD_LIBRARY_PATH : $out/lib:$out/translations:${xorg.libXext}/lib:${xorg.libXdamage}/lib:${opencv4WithoutCuda}/lib:${xorg.libXrandr}/lib"
"--prefix PATH : $out/bin"
"--prefix QT_PLUGIN_PATH : $out/plugins"
"--prefix LD_LIBRARY_PATH : $out/app/wemeet/lib:$out/translations:${xorg.libXext}/lib:${xorg.libXdamage}/lib:${opencv4WithoutCuda}/lib:${xorg.libXrandr}/lib"
"--prefix PATH : $out/app/wemeet/bin"
"--prefix QT_PLUGIN_PATH : $out/app/wemeet/plugins"
];
commonWrapperArgs = baseWrapperArgs ++ [
"--prefix LD_PRELOAD : ${libwemeetwrap}/lib/libwemeetwrap.so"

View File

@@ -0,0 +1,64 @@
{
stdenv,
lib,
fetchFromGitHub,
glib,
meson,
ninja,
pkg-config,
vala,
wrapGAppsHook4,
geoclue2,
geocode-glib_2,
granite7,
gtk4,
libadwaita,
libshumate,
nix-update-script,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "elementary-maps";
version = "8.1.0";
src = fetchFromGitHub {
owner = "elementary";
repo = "maps";
tag = finalAttrs.version;
hash = "sha256-tS8UnW/oNjLaUZ1XgGuAmeMrHEa2jbtBc0xMcTKki1k=";
};
strictDeps = true;
nativeBuildInputs = [
glib
meson
ninja
pkg-config
vala
wrapGAppsHook4
];
buildInputs = [
geoclue2
geocode-glib_2
glib
granite7
gtk4
libadwaita
libshumate
];
passthru = {
updateScript = nix-update-script { };
};
meta = {
homepage = "https://github.com/elementary/maps";
description = "Map viewer designed for elementary OS";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.linux;
teams = [ lib.teams.pantheon ];
mainProgram = "io.elementary.maps";
};
})

View File

@@ -74,6 +74,8 @@ lib.makeScope pkgs.newScope (
elementary-mail = callPackage ./apps/elementary-mail { };
elementary-maps = callPackage ./apps/elementary-maps { };
elementary-music = callPackage ./apps/elementary-music { };
elementary-photos = callPackage ./apps/elementary-photos { };

View File

@@ -2,7 +2,6 @@
lib,
stdenv,
fetchFromGitHub,
fetchpatch,
nix-update-script,
meson,
ninja,
@@ -10,6 +9,7 @@
vala,
pkg-config,
libgee,
libshumate,
gtk4,
glib,
gettext,
@@ -20,7 +20,7 @@
stdenv.mkDerivation rec {
pname = "granite";
version = "7.6.0";
version = "7.7.0";
outputs = [
"out"
@@ -31,18 +31,9 @@ stdenv.mkDerivation rec {
owner = "elementary";
repo = "granite";
rev = version;
sha256 = "sha256-bv2rOq16xg9lCWfcLzAFN4LjBTJBxPhXvEJzutkdYzs=";
sha256 = "sha256-ypSkzz9BaVweR1C0OkkfwDl8tehMK1S5iExL14LuKmI=";
};
patches = [
# Init: Avoid crash with Gtk >= 4.17
# https://github.com/elementary/granite/pull/893
(fetchpatch {
url = "https://github.com/elementary/granite/commit/60cb8c4119b579592e6c7f3b1476e4d729f58699.patch";
hash = "sha256-6NB/Tu3mdmiBd77SOi4twdY/HidyhMn7mNN+54iFLIc=";
})
];
nativeBuildInputs = [
gettext
gobject-introspection
@@ -54,6 +45,10 @@ stdenv.mkDerivation rec {
wrapGAppsHook4
];
buildInputs = [
libshumate # demo
];
propagatedBuildInputs = [
glib
gsettings-desktop-schemas # is_clock_format_12h uses "org.gnome.desktop.interface clock-format"

View File

@@ -5,14 +5,14 @@
# nix build .#legacyPackages.x86_64-darwin.mesa .#legacyPackages.aarch64-darwin.mesa
rec {
pname = "mesa";
version = "25.2.3";
version = "25.2.4";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "mesa";
repo = "mesa";
rev = "mesa-${version}";
hash = "sha256-3URQ9ZZ22vdZpToZqpWbcpsAI4e8a5X35/5HWOprbPM=";
hash = "sha256-75bJyFGaLc8H9w83O1WXIrFFFP7/O5HNzabdqkWI/hQ=";
};
meta = {

View File

@@ -7,19 +7,17 @@
}:
buildDunePackage rec {
version = "1.8.2";
version = "1.9.0";
pname = "ocp-indent";
duneVersion = "3";
src = fetchFromGitHub {
owner = "OCamlPro";
repo = "ocp-indent";
rev = version;
sha256 = "sha256-IyvURw/6R0eKrnahV1fqLV0iIeypykrmxDbliECgbLc=";
tag = version;
hash = "sha256-71dbZ8c842MYZfHad6RT0E48JlgzJSHnQgLVA5dGLv8=";
};
minimalOCamlVersion = "4.03";
minimalOCamlVersion = "4.08";
buildInputs = [ cmdliner ];
propagatedBuildInputs = [ findlib ];

View File

@@ -988,6 +988,14 @@ optionalAttrs allowAliases aliases
};
in
attrsOf valueType;
lib = {
mkRaw = value: {
inherit value;
_type = "raw";
};
};
generate =
name: value:
pkgs.callPackage (
@@ -1002,16 +1010,43 @@ optionalAttrs allowAliases aliases
python3
black
];
value = builtins.toJSON value;
imports = builtins.toJSON (value._imports or [ ]);
value = builtins.toJSON (removeAttrs value [ "_imports" ]);
pythonGen = ''
import json
import os
def recursive_repr(value: any) -> str:
if type(value) is list:
return '\n'.join([
"[",
*[recursive_repr(x) + "," for x in value],
"]",
])
elif type(value) is dict and value.get("_type") == "raw":
return value.get("value")
elif type(value) is dict:
return '\n'.join([
"{",
*[f"'{k.replace('\''', '\\\''')}': {recursive_repr(v)}," for k, v in value.items()],
"}",
])
else:
return repr(value)
with open(os.environ["importsPath"], "r") as f:
imports = json.load(f)
if imports is not None:
for i in imports:
print(f"import {i}")
print()
with open(os.environ["valuePath"], "r") as f:
for key, value in json.load(f).items():
print(f"{key} = {repr(value)}")
print(f"{key} = {recursive_repr(value)}")
'';
passAsFile = [
"imports"
"value"
"pythonGen"
];

View File

@@ -904,6 +904,63 @@ runBuildTests {
'';
};
pythonVars = shouldPass (
let
format = formats.pythonVars { };
in
{
inherit format;
input = {
_imports = [
"re"
"a.b.c"
];
int = 10;
float = 3.141;
bool = true;
str = "foo";
str_special = "foo\ntesthello'''";
null = null;
list = [
null
1
"str"
true
(format.lib.mkRaw "1 if True else 2")
];
attrs = {
foo = null;
conditional = format.lib.mkRaw "1 if True else 2";
};
func = format.lib.mkRaw "re.findall(r'\\bf[a-z]*', 'which foot or hand fell fastest')";
};
expected = ''
import re
import a.b.c
attrs = {
"conditional": 1 if True else 2,
"foo": None,
}
bool = True
float = 3.141
func = re.findall(r"\bf[a-z]*", "which foot or hand fell fastest")
int = 10
list = [
None,
1,
"str",
True,
1 if True else 2,
]
null = None
str = "foo"
str_special = "foo\ntesthello''''"
'';
}
);
phpReturn = shouldPass {
format = formats.php { };
input = {

View File

@@ -2831,7 +2831,7 @@ mapAliases {
openbsdCross = openbsd; # Added 2024-09-06
# LLVM packages for (integration) testing that should not be used inside Nixpkgs:
llvmPackages_latest = llvmPackages_20;
llvmPackages_latest = llvmPackages_21;
/*
If these are in the scope of all-packages.nix, they cause collisions