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. : 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` { } `pkgs.formats.cdn` { }
: A function taking an empty attribute set (for future extensibility) : A function taking an empty attribute set (for future extensibility)

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@@ -189,6 +189,7 @@ stdenv.mkDerivation {
mkdir -p $out/app mkdir -p $out/app
cp -r opt/wemeet $out/app/wemeet cp -r opt/wemeet $out/app/wemeet
cp -r usr/share $out/share 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 rm -f $out/app/wemeet/lib/libcurl.so
substituteInPlace $out/share/applications/wemeetapp.desktop \ substituteInPlace $out/share/applications/wemeetapp.desktop \
--replace-fail "/opt/wemeet/wemeetapp.sh" "wemeet" \ --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/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/plugins $out/app/wemeet/lib/plugins
ln -s $out/app/wemeet/resources $out/app/wemeet/lib/resources ln -s $out/app/wemeet/resources $out/app/wemeet/lib/resources
mkdir -p $out/app/wemeet/lib/translations ln -s $out/app/wemeet/translations $out/app/wemeet/lib/translations
ln -s $out/app/wemeet/translations/qtwebengine_locales $out/app/wemeet/lib/translations/qtwebengine_locales
runHook postInstall runHook postInstall
''; '';
@@ -217,9 +217,9 @@ stdenv.mkDerivation {
"--set QT_STYLE_OVERRIDE fusion" "--set QT_STYLE_OVERRIDE fusion"
"--set IBUS_USE_PORTAL 1" "--set IBUS_USE_PORTAL 1"
"--set XKB_CONFIG_ROOT ${xkeyboard_config}/share/X11/xkb" "--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 LD_LIBRARY_PATH : $out/app/wemeet/lib:$out/translations:${xorg.libXext}/lib:${xorg.libXdamage}/lib:${opencv4WithoutCuda}/lib:${xorg.libXrandr}/lib"
"--prefix PATH : $out/bin" "--prefix PATH : $out/app/wemeet/bin"
"--prefix QT_PLUGIN_PATH : $out/plugins" "--prefix QT_PLUGIN_PATH : $out/app/wemeet/plugins"
]; ];
commonWrapperArgs = baseWrapperArgs ++ [ commonWrapperArgs = baseWrapperArgs ++ [
"--prefix LD_PRELOAD : ${libwemeetwrap}/lib/libwemeetwrap.so" "--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-mail = callPackage ./apps/elementary-mail { };
elementary-maps = callPackage ./apps/elementary-maps { };
elementary-music = callPackage ./apps/elementary-music { }; elementary-music = callPackage ./apps/elementary-music { };
elementary-photos = callPackage ./apps/elementary-photos { }; elementary-photos = callPackage ./apps/elementary-photos { };

View File

@@ -2,7 +2,6 @@
lib, lib,
stdenv, stdenv,
fetchFromGitHub, fetchFromGitHub,
fetchpatch,
nix-update-script, nix-update-script,
meson, meson,
ninja, ninja,
@@ -10,6 +9,7 @@
vala, vala,
pkg-config, pkg-config,
libgee, libgee,
libshumate,
gtk4, gtk4,
glib, glib,
gettext, gettext,
@@ -20,7 +20,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "granite"; pname = "granite";
version = "7.6.0"; version = "7.7.0";
outputs = [ outputs = [
"out" "out"
@@ -31,18 +31,9 @@ stdenv.mkDerivation rec {
owner = "elementary"; owner = "elementary";
repo = "granite"; repo = "granite";
rev = version; 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 = [ nativeBuildInputs = [
gettext gettext
gobject-introspection gobject-introspection
@@ -54,6 +45,10 @@ stdenv.mkDerivation rec {
wrapGAppsHook4 wrapGAppsHook4
]; ];
buildInputs = [
libshumate # demo
];
propagatedBuildInputs = [ propagatedBuildInputs = [
glib glib
gsettings-desktop-schemas # is_clock_format_12h uses "org.gnome.desktop.interface clock-format" 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 # nix build .#legacyPackages.x86_64-darwin.mesa .#legacyPackages.aarch64-darwin.mesa
rec { rec {
pname = "mesa"; pname = "mesa";
version = "25.2.3"; version = "25.2.4";
src = fetchFromGitLab { src = fetchFromGitLab {
domain = "gitlab.freedesktop.org"; domain = "gitlab.freedesktop.org";
owner = "mesa"; owner = "mesa";
repo = "mesa"; repo = "mesa";
rev = "mesa-${version}"; rev = "mesa-${version}";
hash = "sha256-3URQ9ZZ22vdZpToZqpWbcpsAI4e8a5X35/5HWOprbPM="; hash = "sha256-75bJyFGaLc8H9w83O1WXIrFFFP7/O5HNzabdqkWI/hQ=";
}; };
meta = { meta = {

View File

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

View File

@@ -988,6 +988,14 @@ optionalAttrs allowAliases aliases
}; };
in in
attrsOf valueType; attrsOf valueType;
lib = {
mkRaw = value: {
inherit value;
_type = "raw";
};
};
generate = generate =
name: value: name: value:
pkgs.callPackage ( pkgs.callPackage (
@@ -1002,16 +1010,43 @@ optionalAttrs allowAliases aliases
python3 python3
black black
]; ];
value = builtins.toJSON value; imports = builtins.toJSON (value._imports or [ ]);
value = builtins.toJSON (removeAttrs value [ "_imports" ]);
pythonGen = '' pythonGen = ''
import json import json
import os 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: with open(os.environ["valuePath"], "r") as f:
for key, value in json.load(f).items(): for key, value in json.load(f).items():
print(f"{key} = {repr(value)}") print(f"{key} = {recursive_repr(value)}")
''; '';
passAsFile = [ passAsFile = [
"imports"
"value" "value"
"pythonGen" "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 { phpReturn = shouldPass {
format = formats.php { }; format = formats.php { };
input = { input = {

View File

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