Merge master into staging-next
This commit is contained in:
@@ -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)
|
||||
|
||||
@@ -321,6 +321,7 @@ in
|
||||
elementary-code
|
||||
elementary-files
|
||||
elementary-mail
|
||||
elementary-maps
|
||||
elementary-music
|
||||
elementary-photos
|
||||
elementary-screenshot
|
||||
|
||||
@@ -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 = [
|
||||
|
||||
@@ -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";
|
||||
};
|
||||
|
||||
|
||||
@@ -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";
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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 = [ ];
|
||||
|
||||
|
||||
@@ -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;
|
||||
};
|
||||
|
||||
|
||||
@@ -31,6 +31,9 @@ stdenv.mkDerivation {
|
||||
nativeBuildInputs = [ autoreconfHook ];
|
||||
buildInputs = [ scheme48 ];
|
||||
configureFlags = [ "--with-scheme48=${scheme48}" ];
|
||||
makeFlags = [
|
||||
"SCHEME48VERSION=${scheme48.version}"
|
||||
];
|
||||
|
||||
passthru.updateScript = unstableGitUpdater { };
|
||||
|
||||
|
||||
@@ -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"
|
||||
|
||||
64
pkgs/desktops/pantheon/apps/elementary-maps/default.nix
Normal file
64
pkgs/desktops/pantheon/apps/elementary-maps/default.nix
Normal 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";
|
||||
};
|
||||
})
|
||||
@@ -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 { };
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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 ];
|
||||
|
||||
@@ -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"
|
||||
];
|
||||
|
||||
@@ -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 = {
|
||||
|
||||
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user