Skip to content

Commit

Permalink
Merge branch 'NixOS:master' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
prinzdezibel authored Dec 11, 2024
2 parents a5d2112 + e91d796 commit 652cd86
Show file tree
Hide file tree
Showing 112 changed files with 1,624 additions and 942 deletions.
19 changes: 19 additions & 0 deletions maintainers/maintainer-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2304,6 +2304,12 @@
githubId = 99703210;
name = "Katherine Jamison";
};
axka = {
name = "Axel Karjalainen";
email = "[email protected]";
github = "axelkar";
githubId = 120189068;
};
ayazhafiz = {
email = "[email protected]";
github = "hafiz";
Expand Down Expand Up @@ -5829,6 +5835,12 @@
githubId = 129093;
name = "Desmond O. Chang";
};
dod-101 = {
email = "[email protected]";
github = "DOD-101";
githubId = 131907205;
name = "David Thievon";
};
domenkozar = {
email = "[email protected]";
github = "domenkozar";
Expand Down Expand Up @@ -16348,6 +16360,13 @@
github = "oaksoaj";
githubId = 103952141;
};
ob7 = {
name = "ob7";
email = "[email protected]";
github = "ob7";
githubId = 6877929;
keys = [ { fingerprint = "5C1C 0251 FA85 8C62 0E96 7AC5 2766 5625 0571 34E4"; } ];
};
obadz = {
email = "[email protected]";
github = "obadz";
Expand Down
18 changes: 18 additions & 0 deletions maintainers/team-list.nix
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,24 @@ with lib.maintainers;
shortName = "c3d2";
};

categorization = {
members = [
aleksana
fgaz
getpsyched
lyndeno
natsukium
philiptaron
pyrotelekinetic
raskin
sigmasquadron
tomodachi94
];
githubTeams = [ "categorization" ];
scope = "Maintain the categorization system in Nixpkgs, per RFC 146. This team has authority over all categorization issues in Nixpkgs.";
shortName = "Categorization";
};

cinnamon = {
members = [
bobby285271
Expand Down
2 changes: 1 addition & 1 deletion nixos/doc/manual/release-notes/rl-2505.section.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,7 +121,7 @@

- Cinnamon has been updated to 6.4.

- `networking.wireguard` now has an optional networkd backend. It is enabled by default when `networking.useNetworkd` is enabled, and it can be enabled alongside scripted networking with `networking.wireguard.useNetworkd`. Some `networking.wireguard` options have slightly different behavior with the networkd and script-based backends, documented in each option. Before upgrading, make sure the `privateKeyFile` and `presharedKeyFile` paths are readable by the `systemd-network` user if using the networkd backend.
- `networking.wireguard` now has an optional networkd backend. It is enabled by default when `networking.useNetworkd` is enabled, and it can be enabled alongside scripted networking with `networking.wireguard.useNetworkd`. Some `networking.wireguard` options have slightly different behavior with the networkd and script-based backends, documented in each option.

- `services.avahi.ipv6` now defaults to true.

Expand Down
6 changes: 4 additions & 2 deletions nixos/modules/services/networking/v2ray.nix
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@

with lib;

{
let
json = pkgs.formats.json { };
in {
options = {

services.v2ray = {
Expand Down Expand Up @@ -32,7 +34,7 @@ with lib;
};

config = mkOption {
type = types.nullOr (types.attrsOf types.unspecified);
type = types.nullOr json.type;
default = null;
example = {
inbounds = [{
Expand Down
30 changes: 22 additions & 8 deletions nixos/modules/services/networking/wireguard-networkd.nix
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,26 @@ let
mapAttrsToList
nameValuePair
;
inherit (lib.lists) concatMap concatLists;
inherit (lib.lists) concatMap concatLists filter;
inherit (lib.modules) mkIf;
inherit (lib.options) literalExpression mkOption;
inherit (lib.strings) hasInfix;
inherit (lib.trivial) flip;
inherit (lib.trivial) flip pipe;

removeNulls = filterAttrs (_: v: v != null);

privateKeyCredential = interfaceName: "wireguard-${interfaceName}-private-key";
presharedKeyCredential =
interfaceName: peer: "wireguard-${interfaceName}-${peer.name}-preshared-key";

interfaceCredentials =
interfaceName: interface:
[ "${privateKeyCredential interfaceName}:${interface.privateKeyFile}" ]
++ pipe interface.peers [
(filter (peer: peer.presharedKeyFile != null))
(map (peer: "${presharedKeyCredential interfaceName peer}:${peer.presharedKeyFile}"))
];

generateNetdev =
name: interface:
nameValuePair "40-${name}" {
Expand All @@ -31,20 +43,20 @@ let
MTUBytes = interface.mtu;
};
wireguardConfig = removeNulls {
PrivateKeyFile = interface.privateKeyFile;
PrivateKey = "@${privateKeyCredential name}";
ListenPort = interface.listenPort;
FirewallMark = interface.fwMark;
RouteTable = if interface.allowedIPsAsRoutes then interface.table else null;
RouteMetric = interface.metric;
};
wireguardPeers = map generateWireguardPeer interface.peers;
wireguardPeers = map (generateWireguardPeer name) interface.peers;
};

generateWireguardPeer =
peer:
interfaceName: peer:
removeNulls {
PublicKey = peer.publicKey;
PresharedKeyFile = peer.presharedKeyFile;
PresharedKey = "@${presharedKeyCredential interfaceName peer}";
AllowedIPs = peer.allowedIPs;
Endpoint = peer.endpoint;
PersistentKeepalive = peer.persistentKeepalive;
Expand Down Expand Up @@ -129,7 +141,7 @@ in
#
# socketNamespace and interfaceNamespace can be implemented once networkd
# supports setting a netdev's namespace. See:
# https://github.com/systemd/systemd/issues/11629
# https://github.com/systemd/systemd/issues/11103
# https://github.com/systemd/systemd/pull/14915

assertions = concatLists (
Expand Down Expand Up @@ -202,6 +214,8 @@ in
};

systemd.timers = mapAttrs' generateRefreshTimer refreshEnabledInterfaces;
systemd.services = mapAttrs' generateRefreshService refreshEnabledInterfaces;
systemd.services = (mapAttrs' generateRefreshService refreshEnabledInterfaces) // {
systemd-networkd.serviceConfig.LoadCredential = mapAttrsToList interfaceCredentials cfg.interfaces;
};
};
}
6 changes: 0 additions & 6 deletions nixos/modules/services/networking/wireguard.nix
Original file line number Diff line number Diff line change
Expand Up @@ -49,9 +49,6 @@ let
default = null;
description = ''
Private key file as generated by {command}`wg genkey`.
When {option}`networking.wireguard.useNetworkd` is enabled, this file
must be readable by the `systemd-network` user.
'';
};

Expand Down Expand Up @@ -259,9 +256,6 @@ let
Optional, and may be omitted. This option adds an additional layer of
symmetric-key cryptography to be mixed into the already existing
public-key cryptography, for post-quantum resistance.
When {option}`networking.wireguard.useNetworkd` is enabled, this file
must be readable by the `systemd-network` user.
'';
};

Expand Down
4 changes: 2 additions & 2 deletions pkgs/applications/editors/vim/plugins/blink-cmp/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,12 @@
nix-update-script,
}:
let
version = "0.7.3";
version = "0.7.6";
src = fetchFromGitHub {
owner = "Saghen";
repo = "blink.cmp";
rev = "refs/tags/v${version}";
hash = "sha256-nxiODLKgGeXzN5sqkLWU0PcsuSSB1scSzTC5qyCxLCI=";
hash = "sha256-fzAqUqMx4zqN9dtTYRAibhWd5CKh2pvai9g7E/xxnE8=";
};
libExt = if stdenv.hostPlatform.isDarwin then "dylib" else "so";
blink-fuzzy-lib = rustPlatform.buildRustPackage {
Expand Down
85 changes: 45 additions & 40 deletions pkgs/applications/graphics/inkscape/default.nix
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
, cmake
, desktopToDarwinBundle
, fetchurl
, fetchpatch
, fd
, gettext
, ghostscript
, glib
Expand All @@ -27,7 +27,6 @@
, librevenge
, librsvg
, libsigcxx
, libsoup_2_4
, libvisio
, libwpg
, libXft
Expand All @@ -40,40 +39,43 @@
, popt
, potrace
, python3
, runCommand
, substituteAll
, wrapGAppsHook3
, libepoxy
, zlib
, yq
}:
let
python3Env = python3.withPackages
(ps: with ps; [
# List taken almost verbatim from the output of nix-build -A inkscape.passthru.pythonDependencies
appdirs
beautifulsoup4
cachecontrol
]
# CacheControl requires extra runtime dependencies for FileCache
# https://gitlab.com/inkscape/extras/extension-manager/-/commit/9a4acde6c1c028725187ff5972e29e0dbfa99b06
++ cachecontrol.optional-dependencies.filecache
++ [
numpy
cssselect
filelock
inkex
lxml
numpy
packaging
pillow
scour
pygobject3
pyparsing
pyserial
requests
pygobject3
] ++ inkex.propagatedBuildInputs);
scour
tinycss2
zstandard
]);
in
stdenv.mkDerivation rec {
stdenv.mkDerivation (finalAttrs: {
pname = "inkscape";
version = "1.3.2";
version = "1.4";

src = fetchurl {
url = "https://inkscape.org/release/inkscape-${version}/source/archive/xz/dl/inkscape-${version}.tar.xz";
sha256 = "sha256-29GETcRD/l4Q0+mohxROX7ciOFL/8ZHPte963qsOCGs=";
url = "https://inkscape.org/release/inkscape-${finalAttrs.version}/source/archive/xz/dl/inkscape-${finalAttrs.version}.tar.xz";
sha256 = "sha256-xZqFRTtpmt3rzVHB3AdoTdlqEMiuxxaxlVHbUFYuE/U=";
};

# Inkscape hits the ARGMAX when linking on macOS. It appears to be
Expand All @@ -87,29 +89,13 @@ stdenv.mkDerivation rec {
src = ./fix-python-paths.patch;
# Python is used at run-time to execute scripts,
# e.g., those from the "Effects" menu.
python3 = "${python3Env}/bin/python";
python3 = lib.getExe python3Env;
})
(substituteAll {
# Fix path to ps2pdf binary
src = ./fix-ps2pdf-path.patch;
inherit ghostscript;
})

# Fix build with libxml2 2.12
# https://gitlab.com/inkscape/inkscape/-/merge_requests/6089
(fetchpatch {
url = "https://gitlab.com/inkscape/inkscape/-/commit/694d8ae43d06efff21adebf377ce614d660b24cd.patch";
hash = "sha256-9IXJzpZbNU5fnt7XKgqCzUDrwr08qxGwo8TqnL+xc6E=";
})

# Improve distribute along path precision
# https://gitlab.com/inkscape/extensions/-/issues/580
(fetchpatch {
url = "https://gitlab.com/inkscape/extensions/-/commit/c576043c195cd044bdfc975e6367afb9b655eb14.patch";
extraPrefix = "share/extensions/";
stripLen = 1;
hash = "sha256-D9HxBx8RNkD7hHuExJqdu3oqlrXX6IOUw9m9Gx6+Dr8=";
})
];

postPatch = ''
Expand All @@ -119,7 +105,7 @@ stdenv.mkDerivation rec {
# double-conversion is a dependency of 2geom
substituteInPlace CMakeScripts/DefineDependsandFlags.cmake \
--replace 'find_package(DoubleConversion REQUIRED)' ""
--replace-fail 'find_package(DoubleConversion REQUIRED)' ""
'';

nativeBuildInputs = [
Expand Down Expand Up @@ -155,7 +141,6 @@ stdenv.mkDerivation rec {
librevenge
librsvg # for loading icons
libsigcxx
libsoup_2_4
libvisio
libwpg
libXft
Expand All @@ -182,14 +167,34 @@ stdenv.mkDerivation rec {
done
'';

passthru.tests.ps2pdf-plugin = callPackage ./test-ps2pdf-plugin.nix { };
passthru = {
tests = {
ps2pdf-plugin = callPackage ./test-ps2pdf-plugin.nix { };
inherit (python3.pkgs) inkex;
};

pythonDependencies = runCommand "python-dependency-list" {
nativeBuildInputs = [
fd
yq
];
inherit (finalAttrs) src;
} ''
unpackPhase
tomlq --slurp 'map(.tool.poetry.dependencies | to_entries | map(.key)) | flatten | map(ascii_downcase) | unique' $(fd pyproject.toml) > "$out"
'';
};

meta = with lib; {
meta = {
description = "Vector graphics editor";
homepage = "https://www.inkscape.org";
license = licenses.gpl3Plus;
maintainers = [ maintainers.jtojnar ];
platforms = platforms.all;
license = lib.licenses.gpl3Plus;
maintainers = with lib.maintainers; [
jtojnar
x123
Luflosi
];
platforms = lib.platforms.all;
mainProgram = "inkscape";
longDescription = ''
Inkscape is a feature-rich vector graphics editor that edits
Expand All @@ -198,4 +203,4 @@ stdenv.mkDerivation rec {
If you want to import .eps files install ps2edit.
'';
};
}
})
1 change: 1 addition & 0 deletions pkgs/applications/graphics/inkscape/extensions.nix
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
mkdir -p $out/share/inkscape/extensions
cp ${inkcut}/share/inkscape/extensions/* $out/share/inkscape/extensions
'');
inkstitch = callPackage ./extensions/inkstitch { };
silhouette = callPackage ./extensions/silhouette { };
textext = callPackage ./extensions/textext {
pdflatex = texlive.combined.scheme-basic;
Expand Down
Loading

0 comments on commit 652cd86

Please sign in to comment.