Merge master into haskell-updates

This commit is contained in:
github-actions[bot] 2023-03-15 00:13:19 +00:00 committed by GitHub
commit 6ff24bf612
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
185 changed files with 2538 additions and 1423 deletions

View File

@ -15,6 +15,9 @@ let
last
genList
elemAt
all
concatMap
foldl'
;
inherit (lib.strings)
@ -190,6 +193,80 @@ in /* No rec! Add dependencies on this file at the top. */ {
subpathInvalidReason value == null;
/* Join subpath strings together using `/`, returning a normalised subpath string.
Like `concatStringsSep "/"` but safer, specifically:
- All elements must be valid subpath strings, see `lib.path.subpath.isValid`
- The result gets normalised, see `lib.path.subpath.normalise`
- The edge case of an empty list gets properly handled by returning the neutral subpath `"./."`
Laws:
- Associativity:
subpath.join [ x (subpath.join [ y z ]) ] == subpath.join [ (subpath.join [ x y ]) z ]
- Identity - `"./."` is the neutral element for normalised paths:
subpath.join [ ] == "./."
subpath.join [ (subpath.normalise p) "./." ] == subpath.normalise p
subpath.join [ "./." (subpath.normalise p) ] == subpath.normalise p
- Normalisation - the result is normalised according to `lib.path.subpath.normalise`:
subpath.join ps == subpath.normalise (subpath.join ps)
- For non-empty lists, the implementation is equivalent to normalising the result of `concatStringsSep "/"`.
Note that the above laws can be derived from this one.
ps != [] -> subpath.join ps == subpath.normalise (concatStringsSep "/" ps)
Type:
subpath.join :: [ String ] -> String
Example:
subpath.join [ "foo" "bar/baz" ]
=> "./foo/bar/baz"
# normalise the result
subpath.join [ "./foo" "." "bar//./baz/" ]
=> "./foo/bar/baz"
# passing an empty list results in the current directory
subpath.join [ ]
=> "./."
# elements must be valid subpath strings
subpath.join [ /foo ]
=> <error>
subpath.join [ "" ]
=> <error>
subpath.join [ "/foo" ]
=> <error>
subpath.join [ "../foo" ]
=> <error>
*/
subpath.join =
# The list of subpaths to join together
subpaths:
# Fast in case all paths are valid
if all isValid subpaths
then joinRelPath (concatMap splitRelPath subpaths)
else
# Otherwise we take our time to gather more info for a better error message
# Strictly go through each path, throwing on the first invalid one
# Tracks the list index in the fold accumulator
foldl' (i: path:
if isValid path
then i + 1
else throw ''
lib.path.subpath.join: Element at index ${toString i} is not a valid subpath string:
${subpathInvalidReason path}''
) 0 subpaths;
/* Normalise a subpath. Throw an error if the subpath isn't valid, see
`lib.path.subpath.isValid`

View File

@ -107,6 +107,36 @@ let
expected = true;
};
# Test examples from the lib.path.subpath.join documentation
testSubpathJoinExample1 = {
expr = subpath.join [ "foo" "bar/baz" ];
expected = "./foo/bar/baz";
};
testSubpathJoinExample2 = {
expr = subpath.join [ "./foo" "." "bar//./baz/" ];
expected = "./foo/bar/baz";
};
testSubpathJoinExample3 = {
expr = subpath.join [ ];
expected = "./.";
};
testSubpathJoinExample4 = {
expr = (builtins.tryEval (subpath.join [ /foo ])).success;
expected = false;
};
testSubpathJoinExample5 = {
expr = (builtins.tryEval (subpath.join [ "" ])).success;
expected = false;
};
testSubpathJoinExample6 = {
expr = (builtins.tryEval (subpath.join [ "/foo" ])).success;
expected = false;
};
testSubpathJoinExample7 = {
expr = (builtins.tryEval (subpath.join [ "../foo" ])).success;
expected = false;
};
# Test examples from the lib.path.subpath.normalise documentation
testSubpathNormaliseExample1 = {
expr = subpath.normalise "foo//bar";

View File

@ -2503,6 +2503,12 @@
matrix = "@cawilliamson:nixos.dev";
name = "Christopher A. Williamson";
};
cbleslie = {
email = "cameronleslie@gmail.com";
github = "cbleslie";
githubId = 500963;
name = "C.B.Leslie";
};
cbley = {
email = "claudio.bley@gmail.com";
github = "avdv";
@ -16675,7 +16681,8 @@
}];
};
yuu = {
email = "yuuyin@protonmail.com";
email = "yuunix@grrlz.net";
matrix = "@yuu:matrix.org";
github = "yuuyins";
githubId = 86538850;
name = "Yuu Yin";

View File

@ -71,6 +71,10 @@ In addition to numerous new and upgraded packages, this release has the followin
- [nimdow](https://github.com/avahe-kellenberger/nimdow), a window manager written in Nim, inspired by dwm.
- [woodpecker-agent](https://woodpecker-ci.org/), a simple CI engine with great extensibility. Available as [services.woodpecker-agent](#opt-services.woodpecker-agent.enable).
- [woodpecker-server](https://woodpecker-ci.org/), a simple CI engine with great extensibility. Available as [services.woodpecker-server](#opt-services.woodpecker-server.enable).
## Backward Incompatibilities {#sec-release-23.05-incompatibilities}
<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. -->
@ -200,6 +204,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- To reduce closure size in `nixos/modules/profiles/minimal.nix` profile disabled installation documentations and manuals. Also disabled `logrotate` and `udisks2` services.
- To reduce closure size in `nixos/modules/installer/netboot/netboot-minimal.nix` profile disabled load linux firmwares, pre-installing the complete stdenv and `networking.wireless` service.
- The minimal ISO image now uses the `nixos/modules/profiles/minimal.nix` profile.
- The `ghcWithPackages` and `ghcWithHoogle` wrappers will now also symlink GHC's

View File

@ -9,4 +9,7 @@
];
documentation.man.enable = lib.mkOverride 500 true;
hardware.enableRedistributableFirmware = lib.mkOverride 70 false;
system.extraDependencies = lib.mkOverride 70 [];
networking.wireless.enable = lib.mkOverride 500 false;
}

View File

@ -377,6 +377,8 @@
./services/continuous-integration/jenkins/default.nix
./services/continuous-integration/jenkins/job-builder.nix
./services/continuous-integration/jenkins/slave.nix
./services/continuous-integration/woodpecker/agent.nix
./services/continuous-integration/woodpecker/server.nix
./services/databases/aerospike.nix
./services/databases/cassandra.nix
./services/databases/clickhouse.nix

View File

@ -1,5 +1,5 @@
# This module defines the software packages included in the "minimal"
# installation CD. It might be useful elsewhere.
# installation CD. It might be useful elsewhere.
{ config, lib, pkgs, ... }:
@ -17,7 +17,6 @@
pkgs.ddrescue
pkgs.ccrypt
pkgs.cryptsetup # needed for dm-crypt volumes
pkgs.mkpasswd # for generating password files
# Some text editors.
(pkgs.vim.customize {
@ -32,7 +31,6 @@
pkgs.fuse
pkgs.fuse3
pkgs.sshfs-fuse
pkgs.rsync
pkgs.socat
pkgs.screen
pkgs.tcpdump
@ -45,22 +43,14 @@
pkgs.usbutils
pkgs.nvme-cli
# Tools to create / manipulate filesystems.
pkgs.ntfsprogs # for resizing NTFS partitions
pkgs.dosfstools
pkgs.mtools
pkgs.xfsprogs.bin
pkgs.jfsutils
pkgs.f2fs-tools
# Some compression/archiver tools.
pkgs.unzip
pkgs.zip
];
# Include support for various filesystems.
# Include support for various filesystems and tools to create / manipulate them.
boot.supportedFilesystems =
[ "btrfs" "reiserfs" "vfat" "f2fs" "xfs" "ntfs" "cifs" ] ++
[ "btrfs" "cifs" "f2fs" "jfs" "ntfs" "reiserfs" "vfat" "xfs" ] ++
lib.optional (lib.meta.availableOn pkgs.stdenv.hostPlatform config.boot.zfs.package) "zfs";
# Configure host id for ZFS to work

View File

@ -3,7 +3,7 @@
with lib;
let
version = "1.7.1";
version = "1.10.1";
cfg = config.services.kubernetes.addons.dns;
ports = {
dns = 10053;
@ -59,9 +59,9 @@ in {
type = types.attrs;
default = {
imageName = "coredns/coredns";
imageDigest = "sha256:4a6e0769130686518325b21b0c1d0688b54e7c79244d48e1b15634e98e40c6ef";
imageDigest = "sha256:a0ead06651cf580044aeb0a0feba63591858fb2e43ade8c9dea45a6a89ae7e5e";
finalImageTag = version;
sha256 = "02r440xcdsgi137k5lmmvp0z5w5fmk8g9mysq5pnysq1wl8sj6mw";
sha256 = "0wg696920smmal7552a2zdhfncndn5kfammfa8bk8l7dz9bhk0y1";
};
};
@ -136,6 +136,11 @@ in {
resources = [ "nodes" ];
verbs = [ "get" ];
}
{
apiGroups = [ "discovery.k8s.io" ];
resources = [ "endpointslices" ];
verbs = [ "list" "watch" ];
}
];
};

View File

@ -0,0 +1,99 @@
{ config
, lib
, pkgs
, ...
}:
let
cfg = config.services.woodpecker-agent;
in
{
meta.maintainers = [ lib.maintainers.janik ];
options = {
services.woodpecker-agent = {
enable = lib.mkEnableOption (lib.mdDoc "the Woodpecker-Agent, Agents execute tasks generated by a Server, every install will need one server and at least one agent");
package = lib.mkPackageOptionMD pkgs "woodpecker-agent" { };
environment = lib.mkOption {
default = { };
type = lib.types.attrsOf lib.types.str;
example = lib.literalExpression ''
{
WOODPECKER_SERVER = "localhost:9000";
WOODPECKER_BACKEND = "docker";
DOCKER_HOST = "unix:///run/podman/podman.sock";
}
'';
description = lib.mdDoc "woodpecker-agent config envrionment variables, for other options read the [documentation](https://woodpecker-ci.org/docs/administration/agent-config)";
};
extraGroups = lib.mkOption {
default = null;
type = lib.types.nullOr (lib.types.listOf lib.types.str);
example = [ "podman" ];
description = lib.mdDoc ''
Additional groups for the systemd service.
'';
};
environmentFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
default = null;
example = "/root/woodpecker-agent.env";
description = lib.mdDoc ''
File to load environment variables
from. This is helpful for specifying secrets.
Example content of environmentFile:
```
WOODPECKER_AGENT_SECRET=your-shared-secret-goes-here
```
'';
};
};
};
config = lib.mkIf cfg.enable {
systemd.services = {
woodpecker-agent = {
description = "Woodpecker-Agent Service";
wantedBy = [ "multi-user.target" ];
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
serviceConfig = {
DynamicUser = true;
SupplementaryGroups = lib.optionals (cfg.extraGroups != null) cfg.extraGroups;
EnvironmentFile = lib.optional (cfg.environmentFile != null) cfg.environmentFile;
ExecStart = "${cfg.package}/bin/woodpecker-agent";
Restart = "on-failure";
RestartSec = 15;
CapabilityBoundingSet = "";
# Security
NoNewPrivileges = true;
# Sandboxing
ProtectSystem = "strict";
PrivateTmp = true;
PrivateDevices = true;
PrivateUsers = true;
ProtectHostname = true;
ProtectClock = true;
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectKernelLogs = true;
ProtectControlGroups = true;
RestrictAddressFamilies = [ "AF_UNIX AF_INET AF_INET6" ];
LockPersonality = true;
MemoryDenyWriteExecute = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
PrivateMounts = true;
# System Call Filtering
SystemCallArchitectures = "native";
SystemCallFilter = "~@clock @privileged @cpu-emulation @debug @keyring @module @mount @obsolete @raw-io @reboot @setuid @swap";
};
inherit (cfg) environment;
};
};
};
}

View File

@ -0,0 +1,98 @@
{ config
, lib
, pkgs
, ...
}:
let
cfg = config.services.woodpecker-server;
in
{
meta.maintainers = [ lib.maintainers.janik ];
options = {
services.woodpecker-server = {
enable = lib.mkEnableOption (lib.mdDoc "the Woodpecker-Server, a CI/CD application for automatic builds, deployments and tests");
package = lib.mkPackageOptionMD pkgs "woodpecker-server" { };
environment = lib.mkOption {
default = { };
type = lib.types.attrsOf lib.types.str;
example = lib.literalExpression
''
{
WOODPECKER_HOST = "https://woodpecker.example.com";
WOODPECKER_OPEN = "true";
WOODPECKER_GITEA = "true";
WOODPECKER_GITEA_CLIENT = "ffffffff-ffff-ffff-ffff-ffffffffffff";
WOODPECKER_GITEA_URL = "https://git.example.com";
}
'';
description = lib.mdDoc "woodpecker-server config envrionment variables, for other options read the [documentation](https://woodpecker-ci.org/docs/administration/server-config)";
};
environmentFile = lib.mkOption {
type = lib.types.nullOr lib.types.path;
default = null;
example = "/root/woodpecker-server.env";
description = lib.mdDoc ''
File to load environment variables
from. This is helpful for specifying secrets.
Example content of environmentFile:
```
WOODPECKER_AGENT_SECRET=your-shared-secret-goes-here
WOODPECKER_GITEA_SECRET=gto_**************************************
```
'';
};
};
};
config = lib.mkIf cfg.enable {
systemd.services = {
woodpecker-server = {
description = "Woodpecker-Server Service";
wantedBy = [ "multi-user.target" ];
after = [ "network-online.target" ];
wants = [ "network-online.target" ];
serviceConfig = {
DynamicUser = true;
WorkingDirectory = "%S/woodpecker-server";
StateDirectory = "woodpecker-server";
StateDirectoryMode = "0700";
UMask = "0007";
ConfigurationDirectory = "woodpecker-server";
EnvironmentFile = lib.optional (cfg.environmentFile != null) cfg.environmentFile;
ExecStart = "${cfg.package}/bin/woodpecker-server";
Restart = "on-failure";
RestartSec = 15;
CapabilityBoundingSet = "";
# Security
NoNewPrivileges = true;
# Sandboxing
ProtectSystem = "strict";
ProtectHome = true;
PrivateTmp = true;
PrivateDevices = true;
PrivateUsers = true;
ProtectHostname = true;
ProtectClock = true;
ProtectKernelTunables = true;
ProtectKernelModules = true;
ProtectKernelLogs = true;
ProtectControlGroups = true;
RestrictAddressFamilies = [ "AF_UNIX AF_INET AF_INET6" ];
LockPersonality = true;
MemoryDenyWriteExecute = true;
RestrictRealtime = true;
RestrictSUIDSGID = true;
PrivateMounts = true;
# System Call Filtering
SystemCallArchitectures = "native";
SystemCallFilter = "~@clock @privileged @cpu-emulation @debug @keyring @module @mount @obsolete @raw-io @reboot @setuid @swap";
};
inherit (cfg) environment;
};
};
};
}

View File

@ -283,7 +283,8 @@ in {
phpfpm = lib.mkIf useNginx {
pools.zoneminder = {
inherit user group;
phpPackage = pkgs.php.withExtensions ({ enabled, all }: enabled ++ [ all.apcu ]);
phpPackage = pkgs.php.withExtensions (
{ enabled, all }: enabled ++ [ all.apcu all.sysvsem ]);
phpOptions = ''
date.timezone = "${config.time.timeZone}"
'';
@ -326,6 +327,15 @@ in {
fi
${zoneminder}/bin/zmupdate.pl -nointeractive
${zoneminder}/bin/zmupdate.pl --nointeractive -f
# Update ZM's Nix store path in the configuration table. Do nothing if the config doesn't
# contain ZM's Nix store path.
${config.services.mysql.package}/bin/mysql -u zoneminder zm << EOF
UPDATE Config
SET Value = REGEXP_REPLACE(Value, "^/nix/store/[^-/]+-zoneminder-[^/]+", "${pkgs.zoneminder}")
WHERE Name = "ZM_FONT_FILE_LOCATION";
EOF
'';
serviceConfig = {
User = user;

View File

@ -1300,7 +1300,7 @@ in {
SystemCallFilter = [
"@system-service"
"~@privileged"
] ++ lib.optional (cfg.settings.server.protocol == "socket") [ "@chown" ];
] ++ lib.optionals (cfg.settings.server.protocol == "socket") [ "@chown" ];
UMask = "0027";
};
preStart = ''

View File

@ -31,7 +31,7 @@ let
if checkConfigEnabled then
pkgs.runCommandLocal
"${name}-${replaceStrings [" "] [""] what}-checked"
{ buildInputs = [ cfg.package ]; } ''
{ buildInputs = [ cfg.package.cli ]; } ''
ln -s ${file} $out
promtool ${what} $out
'' else file;

View File

@ -25,7 +25,7 @@ in
compressionLevel = mkOption {
type = types.nullOr types.int;
description = lib.mdDoc "The compression level for XZ compression (between 0 and 9)";
description = lib.mdDoc "The compression level for ZSTD compression (between 0 and 16)";
default = null;
};

View File

@ -11,7 +11,7 @@ in
{
config = mkIf (any (fs: fs == "vfat") config.boot.supportedFilesystems) {
system.fsPackages = [ pkgs.dosfstools ];
system.fsPackages = [ pkgs.dosfstools pkgs.mtools ];
boot.initrd.kernelModules = mkIf inInitrd [ "vfat" "nls_cp437" "nls_iso8859-1" ];

View File

@ -1,25 +1,38 @@
{ lib, stdenv, fetchFromGitHub, alsa-lib, file, fluidsynth, jack2,
liblo, libpulseaudio, libsndfile, pkg-config, python3Packages,
which, withFrontend ? true,
withQt ? true, qtbase ? null, wrapQtAppsHook ? null,
withGtk2 ? true, gtk2 ? null,
withGtk3 ? true, gtk3 ? null }:
{ lib
, stdenv
, fetchFromGitHub
, alsa-lib
, file
, fluidsynth
, jack2
, liblo
, libpulseaudio
, libsndfile
, pkg-config
, python3Packages
, which
, gtk2 ? null
, gtk3 ? null
, qtbase ? null
, withFrontend ? true
, withGtk2 ? true
, withGtk3 ? true
, withQt ? true
, wrapQtAppsHook ? null
}:
assert withFrontend -> python3Packages ? pyqt5;
assert withQt -> qtbase != null;
assert withQt -> wrapQtAppsHook != null;
assert withGtk2 -> gtk2 != null;
assert withGtk3 -> gtk3 != null;
stdenv.mkDerivation rec {
pname = "carla";
version = "2.5.1";
version = "2.5.3";
src = fetchFromGitHub {
owner = "falkTX";
repo = pname;
rev = "v${version}";
sha256 = "sha256-SN+9Q5v0bv+kQcYLBJmSCd9WIGSeQuOZze8LVwF20EA=";
hash = "sha256-J0C3GLdlLMkm3LHl6l3OI2rA73A6z5MMcNJ1I1T0pbI=";
};
nativeBuildInputs = [
@ -60,7 +73,6 @@ stdenv.mkDerivation rec {
patchPythonScript "$f"
done
patchPythonScript "$out/share/carla/carla_settings.py"
patchPythonScript "$out/share/carla/carla_database.py"
for program in $out/bin/*; do
wrapQtApp "$program" \

View File

@ -5,25 +5,26 @@
, stdenv
, openssl
, libiconv
, sqlite
, Security }:
rustPlatform.buildRustPackage rec {
pname = "listenbrainz-mpd";
version = "2.0.2";
version = "2.1.0";
src = fetchFromGitea {
domain = "codeberg.org";
owner = "elomatreb";
repo = "listenbrainz-mpd";
rev = "v${version}";
hash = "sha256-DO7YUqaJZyVWjiAZ9WIVNTTvOU0qdsI2ct7aT/6O5dQ=";
hash = "sha256-AalZTlizaw93KlVffFDjGNoKkCHUFQTiElZgJo64shs=";
};
cargoHash = "sha256-MiAalxe0drRHrST3maVvi8GM2y3d0z4Zl7R7Zx8VjEM=";
cargoHash = "sha256-n24P56ZrF8qEpM45uIFr7bJhlzuAexNr6siEsF219uA=";
nativeBuildInputs = [ pkg-config ];
buildInputs = if stdenv.isDarwin then [ libiconv Security ] else [ openssl ];
buildInputs = [ sqlite ] ++ (if stdenv.isDarwin then [ libiconv Security ] else [ openssl ]);
meta = with lib; {
homepage = "https://codeberg.org/elomatreb/listenbrainz-mpd";

View File

@ -70,9 +70,9 @@ stdenv.mkDerivation rec {
Cocoa SystemConfiguration
] ++ lib.optionals coreaudioSupport [
CoreAudio
] ++ lib.optional sndioSupport [
] ++ lib.optionals sndioSupport [
sndio
] ++ lib.optional pipewireSupport [
] ++ lib.optionals pipewireSupport [
pipewire
];
@ -80,7 +80,7 @@ stdenv.mkDerivation rec {
"-DDISABLE_STRIP=true"
];
postFixup = lib.optionals stdenv.isDarwin ''
postFixup = lib.optionalString stdenv.isDarwin ''
install_name_tool -add_rpath $out/share/${pname} $out/share/${pname}/${pname}
install_name_tool -add_rpath $out/share/${pname} $out/share/${pname}/${pname}d
'';

View File

@ -1,34 +1,43 @@
{ stdenv
, lib
, fetchFromGitHub
, fetchFromSourcehut
, SDL2
, alsa-lib
, libaudec
, appstream
, appstream-glib
, bash-completion
, boost
, breeze-icons
, carla
, chromaprint
, cmake
, curl
, dbus
, dconf
, libepoxy
, faust2lv2
, fftw
, fftwFloat
, flex
, glib
, graphviz
, gtk4
, gtksourceview5
, guile
, graphviz
, help2man
, json-glib
, jq
, json-glib
, libadwaita
, libaudec
, libbacktrace
, libcyaml
, libepoxy
, libgtop
, libjack2
, libpanel
, libpulseaudio
, libsamplerate
, libsass
, libsndfile
, libsoundio
, libxml2
@ -46,31 +55,48 @@
, rtaudio
, rtmidi
, rubberband
, sassc
, serd
, sord
, sox
, sratom
, texi2html
, vamp-plugin-sdk
, wrapGAppsHook
, xdg-utils
, xxHash
, vamp-plugin-sdk
, zix
, zstd
, libadwaita
, sassc
}:
stdenv.mkDerivation rec {
pname = "zrythm";
version = "1.0.0-alpha.28.1.3";
let
# As of zrythm-1.0.0-beta.4.5.62, Zrythm needs clap
# https://github.com/falktx/carla/tree/main/source/includes/clap, which is
# only available on Carla unstable as of 2023-02-24.
carla-unstable = carla.overrideAttrs (oldAttrs: rec {
pname = "carla";
version = "unstable-2023-02-24";
src = fetchFromGitHub {
owner = pname;
src = fetchFromGitHub {
owner = "falkTX";
repo = pname;
rev = "33a142f447925f55d00532933a1f28e9745c13eb";
hash = "sha256-hQj0HlcOYfwsxG05pq/qcuKcOwDMV1ED+YdxBToBzvk=";
};
});
in stdenv.mkDerivation rec {
pname = "zrythm";
version = "1.0.0-beta.4.5.62";
src = fetchFromSourcehut {
owner = "~alextee";
repo = pname;
rev = "v${version}";
sha256 = "sha256-ERE7I6E3+RmmpnZEtcJL/1v9a37IwFauVsbJvI9gsRQ=";
hash = "sha256-K93Y4Adh9TqoetSn7nrbbruIri1MKYoSGzoRBGHwbPA=";
};
nativeBuildInputs = [
cmake
help2man
jq
libaudec
@ -81,36 +107,44 @@ stdenv.mkDerivation rec {
pkg-config
python3
python3.pkgs.sphinx
sassc
texi2html
wrapGAppsHook
cmake
];
buildInputs = [
SDL2
alsa-lib
appstream
appstream-glib
bash-completion
carla
boost
breeze-icons
carla-unstable
chromaprint
curl
dbus
dconf
libepoxy
faust2lv2
fftw
fftwFloat
flex
breeze-icons
glib
graphviz
gtk4
gtksourceview5
graphviz
guile
json-glib
libadwaita
libbacktrace
libcyaml
libepoxy
libgtop
libjack2
libpanel
libpulseaudio
libsamplerate
libsass
libsndfile
libsoundio
libyaml
@ -124,34 +158,46 @@ stdenv.mkDerivation rec {
rubberband
serd
sord
sox
sratom
vamp-plugin-sdk
xdg-utils
xxHash
zix
zstd
libadwaita
sassc
];
# Zrythm uses meson to build, but requires cmake for dependency detection.
dontUseCmakeConfigure = true;
mesonFlags = [
"-Drtmidi=enabled"
"-Drtaudio=enabled"
"-Dsdl=enabled"
"-Dcarla=enabled"
"-Dmanpage=true"
# "-Duser_manual=true" # needs sphinx-intl
"-Dlsp_dsp=disabled"
"-Db_lto=false"
"-Dcarla=enabled"
"-Dcarla_binaries_dir=${carla-unstable}/lib/carla"
"-Ddebug=true"
"-Dfftw3_threads_separate=false"
"-Dfftw3_threads_separate_type=library"
"-Dfftw3f_separate=false"
"-Dlsp_dsp=disabled"
"-Dmanpage=true"
"-Drtaudio=enabled"
"-Drtmidi=enabled"
"-Dsdl=enabled"
# "-Duser_manual=true" # needs sphinx-intl
];
NIX_LDFLAGS = ''
-lfftw3_threads -lfftw3f_threads
'';
GUILE_AUTO_COMPILE = 0;
dontStrip = true;
postPatch = ''
substituteInPlace meson.build \
--replace "'/usr/lib', '/usr/local/lib', '/opt/homebrew/lib'" "'${fftw}/lib'"
chmod +x scripts/meson-post-install.sh
patchShebangs ext/sh-manpage-completions/run.sh scripts/generic_guile_wrap.sh \
scripts/meson-post-install.sh tools/check_have_unlimited_memlock.sh
@ -160,13 +206,13 @@ stdenv.mkDerivation rec {
preFixup = ''
gappsWrapperArgs+=(
--prefix GSETTINGS_SCHEMA_DIR : "$out/share/gsettings-schemas/${pname}-${version}/glib-2.0/schemas/"
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS"
)
--prefix XDG_DATA_DIRS : "$XDG_ICON_DIRS:${breeze-icons}/share"
)
'';
meta = with lib; {
homepage = "https://www.zrythm.org";
description = "Highly automated and intuitive digital audio workstation";
description = "Automated and intuitive digital audio workstation";
maintainers = with maintainers; [ tshaynik magnetophon ];
platforms = platforms.linux;
license = licenses.agpl3Plus;

View File

@ -12,8 +12,8 @@ stdenv.mkDerivation rec {
sha256 = "sha256-ly2w9jmRlprm/PnyC0LYjrxBVK+J0DLiSpzuTUMZpWA=";
};
nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook ];
buildInputs = [ intltool gtk3 ];
nativeBuildInputs = [ pkg-config autoreconfHook wrapGAppsHook intltool ];
buildInputs = [ gtk3 ];
meta = with lib; {
description = "Simple text editor forked from Leafpad using GTK+ 3.x";

View File

@ -18,17 +18,17 @@ let
archive_fmt = if stdenv.isDarwin then "zip" else "tar.gz";
sha256 = {
x86_64-linux = "00n7mykr8dyn9chiwsp0s8pk53c39by4wl0hyx1inb0zqxaszw25";
x86_64-darwin = "1q41x23jbpisbwcxgmx18g0bcdsj5g1w3pbj9m6mxlssvbc2xiw6";
aarch64-linux = "1kaj8g50m8imk34whf6sq41a2b1751mjqxvpwnprlx0i7xj2l832";
aarch64-darwin = "1h6plmyv3xkkbpwka5rrkc1bdrgj9d8jp0q6qyhch368x8mp781m";
armv7l-linux = "0q46nzhn8agsif9s50dbdbx6ds3ll39yp5lrp9n7y9a26m4cwjmv";
x86_64-linux = "0dqwjc606z8qizg9hcfjlpq92hmaxh3a09368ffz7irl5sgwp300";
x86_64-darwin = "00795gr9dmshz6sfgsp70fii6m76fqdmqskwkdwqwxddl0i07sw5";
aarch64-linux = "04ckk6l9ym1igaqk1zfyy4zx05yryi641lc0i1l38k3mbv1k3gvw";
aarch64-darwin = "16z96h8s9irgb17gy6ng3r6cbiwrxa7q7qazqamnmgvvahg08kvj";
armv7l-linux = "042ihy4bg39y4m2djkqcx099w9710ikprbw3z7gh1gqvj3qyxy6i";
}.${system} or throwSystem;
in
callPackage ./generic.nix rec {
# Please backport all compatible updates to the stable release.
# This is important for the extension ecosystem.
version = "1.76.0";
version = "1.76.1";
pname = "vscode";
executableName = "code" + lib.optionalString isInsiders "-insiders";

View File

@ -26,13 +26,13 @@ stdenv.mkDerivation {
gtk3
libGL
libGLU
pkg-config
libX11
xcbutil
];
nativeBuildInputs = [
upx
pkg-config
];
postPatch = ''

View File

@ -26,8 +26,8 @@ stdenv.mkDerivation rec {
buildInputs = with pkgs; [
ffmpegthumbnailer ffmpeg
] ++ lib.optional waylandSupport [ chafa ]
++ lib.optional x11Support [ ueberzug ];
] ++ lib.optionals waylandSupport [ chafa ]
++ lib.optionals x11Support [ ueberzug ];
makeFlags = [ "PREFIX=$(out)" ];

View File

@ -53,7 +53,7 @@ stdenv.mkDerivation (finalAttrs: {
gtksourceview5
libadwaita
poppler
] ++ lib.optional stdenv.isDarwin [
] ++ lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Foundation
];

View File

@ -1,20 +1,10 @@
{ lib
, buildPythonApplication
, fetchFromGitHub
, fetchpatch
, poetry-core
, pandas
, prompt-toolkit
, databricks-sql-connector
, pygments
, configobj
, sqlparse
, cli-helpers
, click
, pytestCheckHook
, python3
}:
buildPythonApplication rec {
python3.pkgs.buildPythonApplication rec {
pname = "databricks-sql-cli";
version = "0.1.4";
format = "pyproject";
@ -22,8 +12,8 @@ buildPythonApplication rec {
src = fetchFromGitHub {
owner = "databricks";
repo = "databricks-sql-cli";
rev = "v${version}";
sha256 = "sha256-gr7LJfnvIu2Jf1XgILqfZoi8CbXeQyq0g1wLEBa5TPM=";
rev = "refs/tags/v${version}";
hash = "sha256-gr7LJfnvIu2Jf1XgILqfZoi8CbXeQyq0g1wLEBa5TPM=";
};
patches = [
@ -37,27 +27,32 @@ buildPythonApplication rec {
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'python = ">=3.7.1,<4.0"' 'python = ">=3.8,<4.0"' \
--replace 'pandas = "1.3.4"' 'pandas = "~1.4"'
--replace 'pandas = "1.3.4"' 'pandas = "~1.5"'
'';
nativeBuildInputs = [ poetry-core ];
propagatedBuildInputs = [
prompt-toolkit
pandas
databricks-sql-connector
pygments
configobj
sqlparse
cli-helpers
click
nativeBuildInputs = with python3.pkgs; [
poetry-core
];
nativeCheckInputs = [ pytestCheckHook ];
propagatedBuildInputs = with python3.pkgs; [
cli-helpers
click
configobj
databricks-sql-connector
pandas
prompt-toolkit
pygments
sqlparse
];
nativeCheckInputs = with python3.pkgs; [
pytestCheckHook
];
meta = with lib; {
description = "CLI for querying Databricks SQL";
homepage = "https://github.com/databricks/databricks-sql-cli";
changelog = "https://github.com/databricks/databricks-sql-cli/releases/tag/v${version}";
license = licenses.databricks;
maintainers = with maintainers; [ kfollesdal ];
};

View File

@ -8,16 +8,16 @@
buildGoModule rec {
pname = "deckmaster";
version = "0.8.0";
version = "0.9.0";
src = fetchFromGitHub {
owner = "muesli";
repo = "deckmaster";
rev = "v${version}";
sha256 = "sha256-q2rUHfAvTGXBAGrZUtHMuZr6fYWmpha+al2FG8sCC0Y=";
rev = "refs/tags/v${version}";
hash = "sha256-1hZ7yAKTvkk20ho+QOqFEtspBvFztAtfmITs2uxhdmQ=";
};
vendorSha256 = "sha256-kj4lRHuQ9e0TOC4p4Ak3AB3Lx0JN1jqXaVKlee9EtCg=";
vendorHash = "sha256-d38s5sSvENIou+rlphXIrrOcGOdsvkNaMJlhiXVWN6c=";
proxyVendor = true;
@ -39,6 +39,7 @@ buildGoModule rec {
meta = with lib; {
description = "An application to control your Elgato Stream Deck on Linux";
homepage = "https://github.com/muesli/deckmaster";
changelog = "https://github.com/muesli/deckmaster/releases/tag/v${version}";
license = licenses.mit;
maintainers = with maintainers; [ ianmjones ];
platforms = platforms.linux;

View File

@ -50,7 +50,7 @@ stdenv.mkDerivation rec {
qtsvg
qtwayland
quazip
] ++ lib.optional (qtVersion == "6") [
] ++ lib.optionals (qtVersion == "6") [
qt5compat
];

View File

@ -0,0 +1,33 @@
{ lib, fetchurl, stdenv, undmg }:
# This cannot be built from source due to the problematic nature of XCode - so
# this is what it's like when doves cry?
stdenv.mkDerivation rec {
pname = "MonitorControl";
version = "4.1.0";
src = fetchurl {
url =
"https://github.com/MonitorControl/${pname}/releases/download/v${version}/MonitorControl.${version}.dmg";
sha256 = "iaxM9j78Sq1EH5TCY240N+D5bG6quk2dZj8T7nt9ATo=";
};
nativeBuildInputs = [ undmg ];
sourceRoot = "MonitorControl.app";
installPhase = ''
mkdir -p "$out/Applications/MonitorControl.app"
cp -R . "$out/Applications/MonitorControl.app"
'';
meta = with lib; {
description = "A macOS system extension to control brightness and volume of external displays with native OSD";
longDescription = "Controls your external display brightness and volume and shows native OSD. Use menulet sliders or the keyboard, including native Apple keys!";
homepage = "https://github.com/MonitorControl/MonitorControl#readme";
license = licenses.mit;
maintainers = with maintainers; [ cbleslie ];
platforms = platforms.darwin;
};
}

View File

@ -0,0 +1,67 @@
{ lib
, stdenv
, fetchFromGitHub
, desktop-file-utils
, meson
, ninja
, pkg-config
, wrapGAppsHook
, evolution-data-server-gtk4
, glib
, gnutls
, gst_all_1
, json-glib
, libadwaita
, libpeas
, libportal-gtk4
, pulseaudio
, sqlite
}:
stdenv.mkDerivation rec {
pname = "valent";
version = "unstable-2023-03-02";
src = fetchFromGitHub {
owner = "andyholmes";
repo = "valent";
rev = "4b60f28f46bc948c5f3b30189bb9b5fbe29d2745";
fetchSubmodules = true;
sha256 = "sha256-ltf/srQLqtqE71sxEh7VTQqXy2wOpTSdGDsjITOt3f8=";
};
nativeBuildInputs = [
desktop-file-utils
meson
ninja
pkg-config
wrapGAppsHook
];
buildInputs = [
evolution-data-server-gtk4
glib
gnutls
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
json-glib
libadwaita
libpeas
libportal-gtk4
pulseaudio
sqlite
];
mesonFlags = [
"-Dplugin_bluez=true"
];
meta = with lib; {
description = "An implementation of the KDE Connect protocol, built on GNOME platform libraries";
homepage = "https://github.com/andyholmes/valent/";
changelog = "https://github.com/andyholmes/valent/blob/${src.rev}/CHANGELOG.md";
license = with licenses; [ gpl3Plus cc0 ];
maintainers = with maintainers; [ federicoschonborn ];
platforms = platforms.linux;
};
}

View File

@ -228,7 +228,8 @@ buildStdenv.mkDerivation ({
hash = "sha256-+wNZhkDB3HSknPRD4N6cQXY7zMT/DzNXx29jQH0Gb1o=";
})
]
++ lib.optional (lib.versionAtLeast version "86") ./env_var_for_system_dir-ff86.patch
++ lib.optional (lib.versionOlder version "111") ./env_var_for_system_dir-ff86.patch
++ lib.optional (lib.versionAtLeast version "111") ./env_var_for_system_dir-ff111.patch
++ lib.optional (lib.versionAtLeast version "96") ./no-buildconfig-ffx96.patch
++ extraPatches;

View File

@ -0,0 +1,22 @@
diff --git a/toolkit/xre/nsXREDirProvider.cpp b/toolkit/xre/nsXREDirProvider.cpp
index 6db876975187..5882c5d7f1d6 100644
--- a/toolkit/xre/nsXREDirProvider.cpp
+++ b/toolkit/xre/nsXREDirProvider.cpp
@@ -11,6 +11,7 @@
#include "jsapi.h"
#include "xpcpublic.h"
+#include "prenv.h"
#include "prprf.h"
#include "nsIAppStartup.h"
@@ -309,7 +310,8 @@ static nsresult GetSystemParentDirectory(nsIFile** aFile) {
"/usr/lib/mozilla"_ns
# endif
;
- rv = NS_NewNativeLocalFile(dirname, false, getter_AddRefs(localDir));
+ const char* pathVar = PR_GetEnv("MOZ_SYSTEM_DIR");
+ rv = NS_NewNativeLocalFile((pathVar && *pathVar) ? nsDependentCString(pathVar) : reinterpret_cast<const nsCString&>(dirname), false, getter_AddRefs(localDir));
# endif
if (NS_SUCCEEDED(rv)) {

View File

@ -3,10 +3,10 @@
rec {
firefox = buildMozillaMach rec {
pname = "firefox";
version = "110.0.1";
version = "111.0";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "42c6a99a3874a0f60121188c43788fb35577734d9366c3f89ad41b8328cc542ce172ec81ca35b9ea551eaa698197ccdb43922ec3215d311e0770aaaa59625d21";
sha512 = "cdb300fdbb2b60068b0fc10a18df587b417e484901d36f52dd174d320d3440a42b02ea000f325c5781fd8853a5171b1a5184562fb535ece90619e4c64d46bb82";
};
meta = {
@ -29,11 +29,11 @@ rec {
firefox-esr-102 = buildMozillaMach rec {
pname = "firefox-esr-102";
version = "102.8.0esr";
version = "102.9.0esr";
applicationName = "Mozilla Firefox ESR";
src = fetchurl {
url = "mirror://mozilla/firefox/releases/${version}/source/firefox-${version}.source.tar.xz";
sha512 = "93ea87997b66088b94c6e943b6e99e9a71d1908444d096c0f65b6876d2c584e55ff6120266f3851f986b664bd1f12fa31206b03479c2b751e7c3ca097ac14275";
sha512 = "3923212ce4b7d1f589129025961ff1b380b8aaf1dd074674f3bd63cf14e9a44ff051bda556b7796c25634e153de00ce62243ece15a520f63dd0791a19b2a6685";
};
meta = {

View File

@ -118,7 +118,7 @@ stdenv.mkDerivation rec {
# "Illegal instruction (core dumped)"
gtk3
gtk4
] ++ lib.optional proprietaryCodecs [
] ++ lib.optionals proprietaryCodecs [
vivaldi-ffmpeg-codecs
];

View File

@ -2,16 +2,16 @@
buildGoModule rec {
pname = "circumflex";
version = "2.8.1";
version = "2.8.2";
src = fetchFromGitHub {
owner = "bensadeh";
repo = "circumflex";
rev = version;
hash = "sha256-hFhK1/ck37lfZJ2wpk1MGCfYEANhh8qzTb8m1t7EoBo=";
hash = "sha256-6g1x19FLC7IdShlcCNlKMuPQX1sBU5+eFr0CzTSu4nE=";
};
vendorHash = "sha256-rwqY6illp5+h/oHOnVg6QfZ6tRFJOamwqJxQx/zlpyI=";
vendorHash = "sha256-rztg2mIuyoqpI9SKQsp0ASMT4HO4h0/bxLX7+xtfLzo=";
nativeBuildInputs = [ makeWrapper ];

View File

@ -0,0 +1,23 @@
{ lib, buildGoModule, fetchFromGitHub }:
buildGoModule rec {
pname = "eks-node-viewer";
version = "0.2.0";
src = fetchFromGitHub {
owner = "awslabs";
repo = pname;
rev = "v${version}";
sha256 = "sha256-utn0OJX3NLCyAV4F01GIkvh/KFPv7vfLQMwso7x7yCw";
};
vendorSha256 = "sha256-28TKZYZM2kddXAusxmjhrKFy+ATU7kZM4Ad7zvP/F3A";
meta = with lib; {
description = "Tool to visualize dynamic node usage within a cluster";
homepage = "https://github.com/awslabs/eks-node-viewer";
changelog = "https://github.com/awslabs/eks-node-viewer/releases/tag/${version}";
license = licenses.afl20;
maintainers = [ maintainers.ivankovnatsky ];
};
}

View File

@ -46,10 +46,10 @@
# Those pieces of software we entirely ignore upstream's handling of, and just
# make sure they're in the path if desired.
let
k3sVersion = "1.26.1+k3s1"; # k3s git tag
k3sCommit = "f10af367c3c96863c081ada4018e94e085c9404d"; # k3s git commit at the above version
k3sRepoSha256 = "13h20yb9gyrclhv2r0vv7fnsr73i06686rm6r0pcvy72hw26i848";
k3sVendorSha256 = "sha256-WvkuXHG6NM9eScuu7qG3HDZbBPAJ6xVPz3RRuAxP994=";
k3sVersion = "1.26.2+k3s1"; # k3s git tag
k3sCommit = "ea094d1d497b26538b61b5cbc27c1a4a1f2f3f24"; # k3s git commit at the above version
k3sRepoSha256 = "13jrxr0imgkwl7bay4rrq9iv7ipak9hlmn82x9shr63hihlw7z9l";
k3sVendorSha256 = "sha256-4uIOjHStU/DZk6YBdfC0F4L9z+csekMTjENJKpMmgx0=";
# nix generated by update.sh
# Based on the traefik charts here: https://github.com/k3s-io/k3s/blob/d71ab6317e22dd34673faa307a412a37a16767f6/scripts/download#L29-L32

View File

@ -438,22 +438,22 @@
"vendorHash": "sha256-yK2M07+FmMEE9YuCJk86qLncHr2ToeZQAzWRQz1lLNM="
},
"google": {
"hash": "sha256-FdchvDE8aTGKZADeN1peeWMz2jVN4VL1pUf1Tf3e/3E=",
"hash": "sha256-tdsMjgGR9Tmk5wonihYlFqy8wzx60jEfnIh4dujvabY=",
"homepage": "https://registry.terraform.io/providers/hashicorp/google",
"owner": "hashicorp",
"proxyVendor": true,
"repo": "terraform-provider-google",
"rev": "v4.56.0",
"rev": "v4.57.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-2dJAoDisGQOE21NBTjbFPM0hAYjHqo6QH/ONiHQU6hk="
},
"google-beta": {
"hash": "sha256-u7tGES1uiKpn47msir3rn118eWJsD9bnUAM+HHNZUyA=",
"hash": "sha256-e0Qnlu1O6h9s9+vo9yELifl5AmNNqhQc3Y6XorNCRQ8=",
"homepage": "https://registry.terraform.io/providers/hashicorp/google-beta",
"owner": "hashicorp",
"proxyVendor": true,
"repo": "terraform-provider-google-beta",
"rev": "v4.56.0",
"rev": "v4.57.0",
"spdx": "MPL-2.0",
"vendorHash": "sha256-2dJAoDisGQOE21NBTjbFPM0hAYjHqo6QH/ONiHQU6hk="
},

View File

@ -28,7 +28,7 @@ stdenv.mkDerivation rec {
readline
sqlite
zlib
] ++ lib.optional stdenv.isDarwin [ AppKit Cocoa Foundation ];
] ++ lib.optionals stdenv.isDarwin [ AppKit Cocoa Foundation ];
cmakeFlags = [
"-DHAS_WHATSAPP=OFF" # go module build required

View File

@ -19,16 +19,16 @@
}:
rustPlatform.buildRustPackage rec {
pname = "mullvad";
version = "2023.1";
version = "2023.2";
src = fetchFromGitHub {
owner = "mullvad";
repo = "mullvadvpn-app";
rev = version;
hash = "sha256-BoduliiDOpzEPYHAjr636e7DbrhFnC/v9au6Mp9T/Qs=";
hash = "sha256-UozgUsew6MRplahTW/y688R2VetO50UGQevmVo8/QNs=";
};
cargoHash = "sha256-5kK2IA0Z1dQbHlnGXNZHD+BycurshfpqrwcIEveWKT0=";
cargoHash = "sha256-/DYEG/8FlDbyWsvnxM+0tbKG4/DbwEnNX2KiC3ryyGI=";
patches = [
# https://github.com/mullvad/mullvadvpn-app/pull/4389

View File

@ -5,14 +5,14 @@
stdenv.mkDerivation rec {
pname = "waypipe";
version = "0.8.4";
version = "0.8.5";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "mstoeckl";
repo = "waypipe";
rev = "v${version}";
sha256 = "sha256-ee3RKlcZQf8o8cQfz1ckiLDFNzdFJesBJKJTTrUmcpU=";
sha256 = "sha256-uf2+PSqgZ+RShuVYlR42xMV38tuYbGV+bW1tdXgiZYU=";
};
strictDeps = true;

View File

@ -1,6 +1,6 @@
{ lib, stdenv
, fetchFromGitHub
, xen_4_10
, xen
}:
stdenv.mkDerivation rec {
@ -14,7 +14,7 @@ stdenv.mkDerivation rec {
sha256 = "sha256:02l1vs5c2jfw22gxvl2fb66m0d99n8ya1i7rphsb5cxsljvxary0";
};
buildInputs = [ xen_4_10 ];
buildInputs = [ xen ];
buildPhase = ''
make all PREFIX=/ LIBDIR="$out/lib" INCLUDEDIR="$out/include"

View File

@ -31,10 +31,10 @@ stdenv.mkDerivation rec {
bison
flex
git
] ++ lib.optional useCore [ perl gsl ]
++ lib.optional stdenv.isDarwin [ xcbuild ];
] ++ lib.optionals useCore [ perl gsl ]
++ lib.optionals stdenv.isDarwin [ xcbuild ];
buildInputs = lib.optional useIv [
buildInputs = lib.optionals useIv [
xorg.libX11.dev
xorg.libXcomposite.dev
xorg.libXext.dev
@ -47,11 +47,11 @@ stdenv.mkDerivation rec {
python3.pkgs.setuptools
python3.pkgs.scikit-build
python3.pkgs.matplotlib
] ++ lib.optional useMpi [
] ++ lib.optionals useMpi [
mpi
] ++ lib.optional useMpi [
] ++ lib.optionals useMpi [
python3.pkgs.mpi4py
] ++ lib.optional useRx3d [
] ++ lib.optionals useRx3d [
python3.pkgs.cython
python3.pkgs.numpy
];

View File

@ -1,4 +1,4 @@
{ haskellPackages, mkDerivation, fetchFromGitHub, lib
{ haskellPackages, mkDerivation, fetchFromGitHub, lib, stdenv
# the following are non-haskell dependencies
, makeWrapper, which, maude, graphviz, glibcLocales
}:
@ -76,7 +76,9 @@ mkDerivation (common "tamarin-prover" src // {
executableToolDepends = [ makeWrapper which maude graphviz ];
postInstall = ''
wrapProgram $out/bin/tamarin-prover \
'' + lib.optionalString stdenv.isLinux ''
--set LOCALE_ARCHIVE "${glibcLocales}/lib/locale/locale-archive" \
'' + ''
--prefix PATH : ${lib.makeBinPath [ which maude graphviz ]}
# so that the package can be used as a vim plugin to install syntax coloration
install -Dt $out/share/vim-plugins/tamarin-prover/syntax/ etc/syntax/spthy.vim

View File

@ -3,14 +3,14 @@
stdenv.mkDerivation rec {
pname = "calc";
version = "2.14.1.3";
version = "2.14.1.5";
src = fetchurl {
urls = [
"https://github.com/lcn2/calc/releases/download/v${version}/${pname}-${version}.tar.bz2"
"http://www.isthe.com/chongo/src/calc/${pname}-${version}.tar.bz2"
];
sha256 = "sha256-5aAvYzjAkpLZGf9UE+Ta18Io9EwP769yYlVykiH4qd0=";
sha256 = "sha256-bPacYnEJBdQsIP+Z8D/ODskyEcvhgAy3ra4wasYMo6A=";
};
postPatch = ''

View File

@ -79,9 +79,9 @@ mkDerivation rec {
python3Packages.mutagen
xapian
zlib
] ++ lib.optional withGui [
] ++ lib.optionals withGui [
qtbase
] ++ lib.optional stdenv.isDarwin [
] ++ lib.optionals stdenv.isDarwin [
libiconv
];

View File

@ -1,4 +1,5 @@
{ buildPythonApplication
, charset-normalizer
, colorama
, commitizen
, decli
@ -41,10 +42,12 @@ buildPythonApplication rec {
postPatch = ''
substituteInPlace pyproject.toml \
--replace 'charset-normalizer = "^2.1.0"' 'charset-normalizer = "*"'
--replace 'charset-normalizer = "^2.1.0"' 'charset-normalizer = "*"' \
--replace 'argcomplete = ">=1.12.1,<2.1"' 'argcomplete = ">=1.12.1"'
'';
propagatedBuildInputs = [
charset-normalizer
termcolor
questionary
colorama

View File

@ -1,10 +1,10 @@
tools/python/install-wrap script brakes shebangs patching, disable
diff --git a/tools/Rules.mk b/tools/Rules.mk
index 87a56dc..a7da869 100644
index 444e5bacdd..c99ea959ff 100644
--- a/tools/Rules.mk
+++ b/tools/Rules.mk
@@ -90,8 +90,7 @@ CFLAGS += $(CFLAGS-y)
@@ -135,8 +135,7 @@ CFLAGS += $(CFLAGS-y)
CFLAGS += $(EXTRA_CFLAGS_XEN_TOOLS)

View File

@ -1,7 +1,7 @@
hack to make etherboot use prefetched ipxe
diff --git a/tools/firmware/etherboot/Makefile b/tools/firmware/etherboot/Makefile
index a0578d2..64428a0 100644
index ed9e11305f..979a3acea8 100644
--- a/tools/firmware/etherboot/Makefile
+++ b/tools/firmware/etherboot/Makefile
@@ -16,6 +16,7 @@ IPXE_TARBALL_URL ?= $(XEN_EXTFILES_URL)/ipxe-git-$(IPXE_GIT_TAG).tar.gz
@ -11,8 +11,8 @@ index a0578d2..64428a0 100644
+G=ipxe.git
ROMS = $(addprefix $D/src/bin/, $(addsuffix .rom, $(ETHERBOOT_NICS)))
@@ -36,9 +37,9 @@ $T:
ROM = $D/src/bin/ipxe.bin
@@ -41,9 +42,9 @@ $T:
fi
mv _$T $T

View File

@ -0,0 +1,42 @@
diff --git a/xen/arch/x86/Makefile b/xen/arch/x86/Makefile
index b6567c4127..83defeee95 100644
--- a/xen/arch/x86/Makefile
+++ b/xen/arch/x86/Makefile
@@ -124,11 +124,11 @@ ifneq ($(efi-y),)
export XEN_BUILD_EFI := $(shell $(CC) $(XEN_CFLAGS) -c efi/check.c -o efi/check.o 2>/dev/null && echo y)
# Check if the linker supports PE.
EFI_LDFLAGS = $(patsubst -m%,-mi386pep,$(XEN_LDFLAGS)) --subsystem=10 --strip-debug
-XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
+XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(EFI_LD) $(EFI_LDFLAGS) -o efi/check.efi efi/check.o 2>/dev/null && echo y))
CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
# Check if the linker produces fixups in PE by default (we need to disable it doing so for now).
XEN_NO_PE_FIXUPS := $(if $(XEN_BUILD_EFI), \
- $(shell $(LD) $(EFI_LDFLAGS) --disable-reloc-section -o efi/check.efi efi/check.o 2>/dev/null && \
+ $(shell $(EFI_LD) $(EFI_LDFLAGS) --disable-reloc-section -o efi/check.efi efi/check.o 2>/dev/null && \
echo --disable-reloc-section))
endif
@@ -217,20 +217,20 @@ note_file_option ?= $(note_file)
ifeq ($(XEN_BUILD_PE),y)
$(TARGET).efi: prelink-efi.o $(note_file) efi.lds efi/relocs-dummy.o efi/mkreloc
$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
- $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< efi/relocs-dummy.o \
+ $(EFI_LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< efi/relocs-dummy.o \
$(BASEDIR)/common/symbols-dummy.o $(note_file_option) -o $(@D)/.$(@F).$(base).0 &&) :
efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).0) >$(@D)/.$(@F).0r.S
$(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).0 \
| $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).0s.S
$(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o
$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
- $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< \
+ $(EFI_LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< \
$(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o $(note_file_option) -o $(@D)/.$(@F).$(base).1 &&) :
efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).1) >$(@D)/.$(@F).1r.S
$(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).1 \
| $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).1s.S
$(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o
- $(LD) $(call EFI_LDFLAGS,$(VIRT_BASE)) -T efi.lds -N $< \
+ $(EFI_LD) $(call EFI_LDFLAGS,$(VIRT_BASE)) -T efi.lds -N $< \
$(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o $(note_file_option) -o $@
$(NM) -pa --format=sysv $(@D)/$(@F) \
| $(BASEDIR)/tools/symbols --all-symbols --xensyms --sysv --sort >$(@D)/$(@F).map

View File

@ -1,36 +0,0 @@
diff -Naur xen-4.10.4-orig/xen/arch/x86/Makefile xen-4.10.4-patched/xen/arch/x86/Makefile
--- xen-4.10.4-orig/xen/arch/x86/Makefile 2019-07-04 01:28:50.000000000 +1000
+++ xen-4.10.4-patched/xen/arch/x86/Makefile 2020-03-03 13:32:34.607951507 +1100
@@ -166,7 +166,7 @@
# Check if the compiler supports the MS ABI.
export XEN_BUILD_EFI := $(shell $(CC) $(filter-out $(CFLAGS-y) .%.d,$(CFLAGS)) -c efi/check.c -o efi/check.o 2>/dev/null && echo y)
# Check if the linker supports PE.
-XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(LD) -mi386pep --subsystem=10 -o efi/check.efi efi/check.o 2>/dev/null && echo y))
+XEN_BUILD_PE := $(if $(XEN_BUILD_EFI),$(shell $(EFI_LD) -mi386pep --subsystem=10 -o efi/check.efi efi/check.o 2>/dev/null && echo y))
CFLAGS-$(XEN_BUILD_EFI) += -DXEN_BUILD_EFI
$(TARGET).efi: VIRT_BASE = 0x$(shell $(NM) efi/relocs-dummy.o | sed -n 's, A VIRT_START$$,,p')
@@ -188,20 +188,20 @@
$(TARGET).efi: prelink-efi.o $(note_file) efi.lds efi/relocs-dummy.o $(BASEDIR)/common/symbols-dummy.o efi/mkreloc
$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
- $(guard) $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< efi/relocs-dummy.o \
+ $(guard) $(EFI_LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< efi/relocs-dummy.o \
$(BASEDIR)/common/symbols-dummy.o $(note_file) -o $(@D)/.$(@F).$(base).0 &&) :
$(guard) efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).0) >$(@D)/.$(@F).0r.S
$(guard) $(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).0 \
| $(guard) $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).0s.S
$(guard) $(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o
$(foreach base, $(VIRT_BASE) $(ALT_BASE), \
- $(guard) $(LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< \
+ $(guard) $(EFI_LD) $(call EFI_LDFLAGS,$(base)) -T efi.lds -N $< \
$(@D)/.$(@F).0r.o $(@D)/.$(@F).0s.o $(note_file) -o $(@D)/.$(@F).$(base).1 &&) :
$(guard) efi/mkreloc $(foreach base,$(VIRT_BASE) $(ALT_BASE),$(@D)/.$(@F).$(base).1) >$(@D)/.$(@F).1r.S
$(guard) $(NM) -pa --format=sysv $(@D)/.$(@F).$(VIRT_BASE).1 \
| $(guard) $(BASEDIR)/tools/symbols $(all_symbols) --sysv --sort >$(@D)/.$(@F).1s.S
$(guard) $(MAKE) -f $(BASEDIR)/Rules.mk $(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o
- $(guard) $(LD) $(call EFI_LDFLAGS,$(VIRT_BASE)) -T efi.lds -N $< \
+ $(guard) $(EFI_LD) $(call EFI_LDFLAGS,$(VIRT_BASE)) -T efi.lds -N $< \
$(@D)/.$(@F).1r.o $(@D)/.$(@F).1s.o $(note_file) -o $@
if $(guard) false; then rm -f $@; echo 'EFI support disabled'; \
else $(NM) -pa --format=sysv $(@D)/$(@F) \

View File

@ -11,9 +11,11 @@ because I can't see why we have it
2) Ensures the said directory exists
--- a/xen/Makefile 2016-01-08 01:50:58.028045657 +0000
+++ b/xen/Makefile 2016-01-08 01:51:33.560268718 +0000
@@ -49,7 +49,9 @@
diff --git a/xen/Makefile b/xen/Makefile
index acb2d28891..d0763fbbe7 100644
--- a/xen/Makefile
+++ b/xen/Makefile
@@ -289,7 +289,9 @@ _install: $(TARGET)$(CONFIG_XEN_INSTALL_SUFFIX)
ln -sf $(T)-$(XEN_FULLVERSION).efi $(D)$(EFI_DIR)/$(T)-$(XEN_VERSION).efi; \
ln -sf $(T)-$(XEN_FULLVERSION).efi $(D)$(EFI_DIR)/$(T).efi; \
if [ -n '$(EFI_MOUNTPOINT)' -a -n '$(EFI_VENDOR)' ]; then \
@ -24,8 +26,8 @@ because I can't see why we have it
elif [ "$(D)" = "$(patsubst $(shell cd $(XEN_ROOT) && pwd)/%,%,$(D))" ]; then \
echo 'EFI installation only partially done (EFI_VENDOR not set)' >&2; \
fi; \
@@ -69,7 +69,7 @@
rm -f $(D)$(EFI_DIR)/$(T)-$(XEN_VERSION).$(XEN_SUBVERSION).efi
@@ -319,7 +321,7 @@ _uninstall:
rm -f $(D)$(DEBUG_DIR)/$(T)-$(XEN_FULLVERSION).efi.map
rm -f $(D)$(EFI_DIR)/$(T)-$(XEN_VERSION).efi
rm -f $(D)$(EFI_DIR)/$(T).efi
- rm -f $(D)$(EFI_MOUNTPOINT)/efi/$(EFI_VENDOR)/$(T)-$(XEN_FULLVERSION).efi

View File

@ -3,18 +3,22 @@
, withInternalQemu ? true
, withInternalTraditionalQemu ? true
, withInternalSeabios ? true
, withSeabios ? !withInternalSeabios, seabios ? null
, withSeabios ? !withInternalSeabios, seabios
, withInternalOVMF ? false # FIXME: tricky to build
, withOVMF ? false, OVMF
, withLibHVM ? true
, withLibHVM ? false
# xen
, python3Packages
# qemu
, udev, pciutils, xorg, SDL, pixman, acl, glusterfs, spice-protocol, usbredir
, alsa-lib, glib, python2
, alsa-lib, glib, python3
, ... } @ args:
assert withInternalSeabios -> !withSeabios;
assert withInternalOVMF -> !withOVMF;
assert !withLibHVM;
with lib;
@ -33,16 +37,16 @@ let
qemuDeps = [
udev pciutils xorg.libX11 SDL pixman acl glusterfs spice-protocol usbredir
alsa-lib glib python2
alsa-lib glib python3
];
in
callPackage (import ./generic.nix (rec {
version = "4.10.4";
version = "4.15.1";
src = fetchurl {
url = "https://downloads.xenproject.org/release/xen/${version}/xen-${version}.tar.gz";
sha256 = "0ipkr7b3v3y183n6nfmz7q3gnzxa20011df4jpvxi6pmr8cpnkwh";
sha256 = "1rmc7gb72xwhr3h9rc3bkac41s8kjjzz45miwdq6yalyq7j7vss5";
};
# Sources needed to build tools and firmwares.
@ -52,25 +56,26 @@ callPackage (import ./generic.nix (rec {
url = "https://xenbits.xen.org/git-http/qemu-xen.git";
# rev = "refs/tags/qemu-xen-${version}";
# use revision hash - reproducible but must be updated with each new version
rev = "qemu-xen-${version}";
sha256 = "0laxvhdjz1njxjvq3jzw2yqvdr9gdn188kqjf2gcrfzgih7xv2ym";
rev = "e2af2d050338c99e8436e251ad67aafb3ebbd501";
sha256 = "sha256-gVykPtzAA7tmpe6iVvnulaW+b0jD3gwL1JXC5yeIA7M=";
};
buildInputs = qemuDeps;
postPatch = ''
# needed in build but /usr/bin/env is not available in sandbox
substituteInPlace scripts/tracetool.py \
--replace "/usr/bin/env python" "${python2}/bin/python"
--replace "/usr/bin/env python" "${python3}/bin/python"
'';
meta.description = "Xen's fork of upstream Qemu";
};
} // optionalAttrs withInternalTraditionalQemu {
# TODO 4.15: something happened with traditional in this release?
qemu-xen-traditional = {
src = fetchgit {
url = "https://xenbits.xen.org/git-http/qemu-xen-traditional.git";
# rev = "refs/tags/xen-${version}";
# use revision hash - reproducible but must be updated with each new version
rev = "c8ea0457495342c417c3dc033bba25148b279f60";
sha256 = "0v5nl3c08kpjg57fb8l191h1y57ykp786kz6l525jgplif28vx13";
rev = "3d273dd05e51e5a1ffba3d98c7437ee84e8f8764";
sha256 = "1dc6dhjp4y2irmi9yiyw1kzmm1habyy8j1s2zkf6qyak850krqj7";
};
buildInputs = qemuDeps;
patches = [
@ -85,8 +90,8 @@ callPackage (import ./generic.nix (rec {
"firmware/seabios-dir-remote" = {
src = fetchgit {
url = "https://xenbits.xen.org/git-http/seabios.git";
rev = "f0cdc36d2f2424f6b40438f7ee7cc502c0eff4df";
sha256 = "1wq5pjkjrfzqnq3wyr15mcn1l4c563m65gdyf8jm97kgb13pwwfm";
rev = "155821a1990b6de78dde5f98fa5ab90e802021e0";
sha256 = "sha256-F3lzr00CMAObJtpz0eZFT/rwjFx+bvlI37/JtHXP5Eo=";
};
patches = [ ./0000-qemu-seabios-enable-ATA_DMA.patch ];
meta.description = "Xen's fork of Seabios";
@ -95,8 +100,8 @@ callPackage (import ./generic.nix (rec {
"firmware/ovmf-dir-remote" = {
src = fetchgit {
url = "https://xenbits.xen.org/git-http/ovmf.git";
rev = "173bf5c847e3ca8b42c11796ce048d8e2e916ff8";
sha256 = "07zmdj90zjrzip74fvd4ss8n8njk6cim85s58mc6snxmqqv7gmcr";
rev = "a3741780fe3535e19e02efa869a7cac481891129";
sha256 = "0000000000000000000000000000000000000000000000000000";
};
meta.description = "Xen's fork of OVMF";
};
@ -105,36 +110,11 @@ callPackage (import ./generic.nix (rec {
"firmware/etherboot/ipxe.git" = {
src = fetchgit {
url = "https://git.ipxe.org/ipxe.git";
rev = "356f6c1b64d7a97746d1816cef8ca22bdd8d0b5d";
sha256 = "15n400vm3id5r8y3k6lrp9ab2911a9vh9856f5gvphkazfnmns09";
rev = "988d2c13cdf0f0b4140685af35ced70ac5b3283c";
sha256 = "1pkf1n1c0rdlzfls8fvjvi1sd9xjd9ijqlyz3wigr70ijcv6x8i9";
};
meta.description = "Xen's fork of iPXE";
};
} // optionalAttrs withLibHVM {
xen-libhvm-dir-remote = {
src = fetchgit {
name = "xen-libhvm";
url = "https://github.com/michalpalka/xen-libhvm";
rev = "83065d36b36d6d527c2a4e0f5aaf0a09ee83122c";
sha256 = "1jzv479wvgjkazprqdzcdjy199azmx2xl3pnxli39kc5mvjz3lzd";
};
buildPhase = ''
make
cd biospt
cc -Wall -g -D_LINUX -Wstrict-prototypes biospt.c -o biospt -I../libhvm -L../libhvm -lxenhvm
'';
installPhase = ''
make install
cp biospt/biospt $out/bin/
'';
meta = {
description = ''
Helper library for reading ACPI and SMBIOS firmware values
from the host system for use with the HVM guest firmware
pass-through feature in Xen'';
license = licenses.bsd2;
};
};
};
configureFlags = []
@ -148,7 +128,8 @@ callPackage (import ./generic.nix (rec {
++ optional (withOVMF) "--with-system-ovmf=${OVMF.fd}/FV/OVMF.fd"
++ optional (withInternalOVMF) "--enable-ovmf";
env.NIX_CFLAGS_COMPILE = toString [
NIX_CFLAGS_COMPILE = toString [
# TODO 4.15: drop unneeded ones
# Fix build on Glibc 2.24.
"-Wno-error=deprecated-declarations"
# Fix build with GCC 8
@ -163,16 +144,32 @@ callPackage (import ./generic.nix (rec {
# Fix build with GCC 10
"-Wno-error=enum-conversion"
"-Wno-error=zero-length-bounds"
# Fix build with GCC 12
# xentoollog_stubs.c:57: error: "Some_val" redefined [-Werror]
"-Wno-error"
];
patches = with xsa; flatten [
./0000-fix-ipxe-src.4.15.patch
./0000-fix-install-python.4.15.patch
./0004-makefile-use-efi-ld.4.15.patch
./0005-makefile-fix-efi-mountdir-use.4.15.patch
XSA_386
];
postPatch = ''
# Avoid a glibc >= 2.25 deprecation warnings that get fatal via -Werror.
sed 1i'#include <sys/sysmacros.h>' \
-i tools/blktap2/control/tap-ctl-allocate.c \
-i tools/libxl/libxl_device.c
# Makefile didn't include previous PKG_CONFIG_PATH so glib wasn't found
substituteInPlace tools/Makefile \
--replace 'PKG_CONFIG_PATH=$(XEN_ROOT)/tools/pkg-config' 'PKG_CONFIG_PATH=$(XEN_ROOT)/tools/pkg-config:$(PKG_CONFIG_PATH)'
-i tools/libs/light/libxl_device.c
# Fix missing pkg-config dir
mkdir -p tools/pkg-config
'';
preBuild = ''
# PKG_CONFIG env var collides with variables used in tools Makefiles.
unset PKG_CONFIG
'';
passthru = {
@ -181,4 +178,6 @@ callPackage (import ./generic.nix (rec {
else throw "this xen has no qemu builtin";
};
})) ({ ocamlPackages = ocaml-ng.ocamlPackages_4_05; } // args)
})) ({
ocamlPackages = ocaml-ng.ocamlPackages_4_14;
} // args)

View File

@ -4,9 +4,8 @@ config:
# Xen
, bison, bzip2, checkpolicy, dev86, figlet, flex, gettext, glib
, acpica-tools, libaio, libiconv, libuuid, ncurses, openssl, perl
, python2Packages
# python2Packages.python
, xz, yajl, zlib
, python3Packages
# Xen Optional
, ocamlPackages
@ -14,10 +13,10 @@ config:
# Scripts
, coreutils, gawk, gnused, gnugrep, diffutils, multipath-tools
, iproute2, inetutils, iptables, bridge-utils, openvswitch, nbd, drbd
, lvm2, util-linux, procps, systemd
, util-linux, procps, systemd
# Documentation
# python2Packages.markdown
# python3Packages.markdown
, fig2dev, ghostscript, texinfo, pandoc
, binutils-unwrapped
@ -72,16 +71,16 @@ stdenv.mkDerivation (rec {
# Xen
bison bzip2 checkpolicy dev86 figlet flex gettext glib acpica-tools libaio
libiconv libuuid ncurses openssl perl python2Packages.python xz yajl zlib
libiconv libuuid ncurses openssl perl python3Packages.python xz yajl zlib
# oxenstored
ocamlPackages.findlib ocamlPackages.ocaml systemd
# Python fixes
python2Packages.wrapPython
python3Packages.wrapPython
# Documentation
python2Packages.markdown fig2dev ghostscript texinfo pandoc
python3Packages.markdown fig2dev ghostscript texinfo pandoc
# Others
] ++ (concatMap (x: x.buildInputs or []) (attrValues config.xenfiles))
@ -133,10 +132,6 @@ stdenv.mkDerivation (rec {
'';
patches = [
./0000-fix-ipxe-src.patch
./0000-fix-install-python.patch
./0004-makefile-use-efi-ld.patch
./0005-makefile-fix-efi-mountdir-use.patch
] ++ (config.patches or []);
postPatch = ''
@ -156,10 +151,6 @@ stdenv.mkDerivation (rec {
substituteInPlace tools/libfsimage/common/fsimage_plugin.c \
--replace /usr $out
substituteInPlace tools/blktap2/lvm/lvm-util.c \
--replace /usr/sbin/vgs ${lvm2}/bin/vgs \
--replace /usr/sbin/lvs ${lvm2}/bin/lvs
substituteInPlace tools/misc/xenpvnetboot \
--replace /usr/sbin/mount ${util-linux}/bin/mount \
--replace /usr/sbin/umount ${util-linux}/bin/umount
@ -167,9 +158,6 @@ stdenv.mkDerivation (rec {
substituteInPlace tools/xenmon/xenmon.py \
--replace /usr/bin/pkill ${procps}/bin/pkill
substituteInPlace tools/xenstat/Makefile \
--replace /usr/include/curses.h ${ncurses.dev}/include/curses.h
${optionalString (builtins.compareVersions config.version "4.8" >= 0) ''
substituteInPlace tools/hotplug/Linux/launch-xenstore.in \
--replace /bin/mkdir mkdir
@ -209,6 +197,10 @@ stdenv.mkDerivation (rec {
makeFlags = [ "PREFIX=$(out) CONFIG_DIR=/etc" "XEN_SCRIPT_DIR=/etc/xen/scripts" ]
++ (config.makeFlags or []);
preBuild = ''
${config.preBuild or ""}
'';
buildFlags = [ "xen" "tools" ];
postBuild = ''

View File

@ -6,7 +6,7 @@
# light] for each ./<version>.nix.
rec {
xen_4_10-vanilla = callPackage ./4.10.nix {
xen_4_15-vanilla = callPackage ./4.15.nix {
meta = {
description = "vanilla";
longDescription = ''
@ -19,7 +19,7 @@ rec {
};
};
xen_4_10-slim = xen_4_10-vanilla.override {
xen_4_15-slim = xen_4_15-vanilla.override {
withInternalQemu = false;
withInternalTraditionalQemu = true;
withInternalSeabios = false;
@ -36,7 +36,7 @@ rec {
};
};
xen_4_10-light = xen_4_10-vanilla.override {
xen_4_15-light = xen_4_15-vanilla.override {
withInternalQemu = false;
withInternalTraditionalQemu = false;
withInternalSeabios = false;
@ -52,8 +52,7 @@ rec {
};
};
xen-vanilla = xen_4_10-vanilla;
xen-slim = xen_4_10-slim;
xen-light = xen_4_10-light;
xen-vanilla = xen_4_15-vanilla;
xen-slim = xen_4_15-slim;
xen-light = xen_4_15-light;
}

View File

@ -485,4 +485,9 @@ in {
sha256 = "0lc94cx271z09r0mhxaypyd9d4740051p28idf5calx5228dqjgm";
})
];
XSA_386 = (xsaPatch {
name = "386";
sha256 = "sha256-pAuLgt3sDeL73NSDqZCWxRGZk1tWaYlDbh7cUcJ4s+w=";
});
}

View File

@ -20,28 +20,19 @@
, xmodmap
}:
stdenv.mkDerivation (finalAttrs: {
stdenv.mkDerivation (self: {
pname = "hypr";
version = "unstable-2022-05-25";
version = "unstable-2023-01-26";
src = fetchFromGitHub {
owner = "hyprwm";
repo = "Hypr";
rev = "3e3d943c446ae77c289611a1a875c8dff8883c1e";
hash = "sha256-lyaGGm53qxg7WVoFxZ7kerLe12P1N3JbN8nut6oZS50=";
rev = "af4641847b578b233a6f06806f575b3f320d74da";
hash = "sha256-FUKR5nceEhm9GWa61hHO8+y4GBz7LYKXPB0OpQcQ674=";
};
patches = [
./000-dont-set-compiler.diff
# TODO: remove on next release
(fetchpatch {
url = "https://github.com/hyprwm/Hypr/commit/08d6af2caf882247943f0e8518ad782f35d1aba4.patch";
sha256 = "sha256-WjR12ZH8CE+l9xSeQUAPYW5r5HzoPpod5YqDPJTdTY8=";
})
(fetchpatch {
url = "https://github.com/hyprwm/Hypr/commit/7512a3ab91865b1e11b8c4a9dfdffb25c2b153de.patch";
sha256 = "sha256-0Hq5n115z0U44op7A1FO9tUOeMEPV0QgD5E5zcmend0=";
})
];
nativeBuildInputs = [
@ -81,7 +72,7 @@ stdenv.mkDerivation (finalAttrs: {
'';
meta = with lib; {
inherit (finalAttrs.src.meta) homepage;
inherit (self.src.meta) homepage;
description = "A tiling X11 window manager written in modern C++";
license = licenses.bsd3;
maintainers = with maintainers; [ AndersonTorres ];

View File

@ -3,11 +3,15 @@ source $stdenv/setup
tagtext=""
tagflags=""
if test -n "$rev"; then
tagtext="(tag $rev) "
# Darcs hashes are sha1 (120 bits, 40-character hex)
if [[ "$rev" =~ [a-fA-F0-9]{40} ]]; then
tagtext="(hash $rev)"
tagflags="--to-hash=$rev"
elif test -n "$rev"; then
tagtext="(tag $rev)"
tagflags="--tag=$rev"
elif test -n "$context"; then
tagtext="(context) "
tagtext="(context)"
tagflags="--context=$context"
fi

View File

@ -1,12 +1,17 @@
{stdenvNoCC, darcs, cacert}:
{url, rev ? null, context ? null, md5 ? "", sha256 ? ""}:
{ url
, rev ? null
, context ? null
, md5 ? ""
, sha256 ? ""
, name ? "fetchdarcs"
}:
if md5 != "" then
throw "fetchdarcs does not support md5 anymore, please use sha256"
else
stdenvNoCC.mkDerivation {
name = "fetchdarcs";
builder = ./builder.sh;
nativeBuildInputs = [cacert darcs];
@ -14,5 +19,5 @@ stdenvNoCC.mkDerivation {
outputHashMode = "recursive";
outputHash = sha256;
inherit url rev context;
inherit url rev context name;
}

View File

@ -32,7 +32,7 @@ stdenv.mkDerivation ({
runHook preInstall
dune install --prefix $out --libdir $OCAMLFIND_DESTDIR ${pname} \
${if lib.versionAtLeast Dune.version "2.9"
then "--docdir $out/share/doc"
then "--docdir $out/share/doc --man $out/share/man"
else ""}
runHook postInstall
'';

View File

@ -24,7 +24,9 @@
, src ? null
, srcs ? null
, preUnpack ? null
, unpackPhase ? null
, postUnpack ? null
, cargoPatches ? []
, patches ? []
, sourceRoot ? null
@ -68,7 +70,7 @@ let
if cargoVendorDir != null then null
else if cargoLock != null then importCargoLock cargoLock
else fetchCargoTarball ({
inherit src srcs sourceRoot unpackPhase cargoUpdateHook;
inherit src srcs sourceRoot preUnpack unpackPhase postUnpack cargoUpdateHook;
name = cargoDepsName;
patches = cargoPatches;
} // lib.optionalAttrs (args ? cargoHash) {

View File

@ -76,6 +76,11 @@ let
passAsFile = [ "content" ];
} else {
contentPath = content;
} // lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) {
# post-link-hook expects codesign_allocate to be in PATH
# https://github.com/NixOS/nixpkgs/issues/154203
# https://github.com/NixOS/nixpkgs/issues/148189
nativeBuildInputs = [ stdenv.cc.bintools ];
}) ''
${compileScript}
${lib.optionalString strip

View File

@ -2,13 +2,13 @@
stdenvNoCC.mkDerivation rec {
pname = "sarasa-gothic";
version = "0.40.2";
version = "0.40.3";
src = fetchurl {
# Use the 'ttc' files here for a smaller closure size.
# (Using 'ttf' files gives a closure size about 15x larger, as of November 2021.)
url = "https://github.com/be5invis/Sarasa-Gothic/releases/download/v${version}/sarasa-gothic-ttc-${version}.7z";
hash = "sha256-ZarDttwwZzBb0+iBipVHZGLf1K3lQ7xvjMR6jE3hmh8=";
hash = "sha256-lhjsmsgFEXMX5byp50qRoHoX9nuKcsrAp6NGDdfXo3I=";
};
sourceRoot = ".";

View File

@ -2,11 +2,11 @@
stdenvNoCC.mkDerivation rec {
pname = "clash-geoip";
version = "20230212";
version = "20230312";
src = fetchurl {
url = "https://github.com/Dreamacro/maxmind-geoip/releases/download/${version}/Country.mmdb";
sha256 = "sha256-Tnma6tpET4Vrm5G8KmLpsVnpD2JIKts56kZQsBIbRZ8=";
sha256 = "sha256-Y/glz6HUfjox9Mn+gPzA8+tUHqV/KkIInUn4SyajUiE=";
};
dontUnpack = true;

View File

@ -8,6 +8,7 @@
, dde-qt-dbus-factory
, cmake
, qtbase
, qtsvg
, qttools
, qtx11extras
, pkg-config
@ -21,13 +22,13 @@
stdenv.mkDerivation rec {
pname = "deepin-terminal";
version = "5.4.34";
version = "5.9.40";
src = fetchFromGitHub {
owner = "linuxdeepin";
repo = pname;
rev = version;
sha256 = "sha256-CpI7dyQwrYOYzqVZ6aa+/OAUC3xRyY4ZwzH1mqURTfY=";
sha256 = "sha256-GtrbR59IUYNAOmioW5NYhDsPKBmK4uybyDjHsbelkE4=";
};
patches = [
@ -49,6 +50,8 @@ stdenv.mkDerivation rec {
];
buildInputs = [
qtbase
qtsvg
dtkwidget
qt5platform-plugins
dde-qt-dbus-factory

View File

@ -26,12 +26,12 @@ stdenv.mkDerivation rec {
cmake
pkg-config
wrapQtAppsHook
] ++ lib.optional buildDocs [ doxygen qttools.dev ];
] ++ lib.optionals buildDocs [ doxygen qttools.dev ];
cmakeFlags = [
"-DCMAKE_INSTALL_LIBDIR=lib"
"-DPROJECT_VERSION=${version}"
] ++ lib.optional (!buildDocs) [ "-DBUILD_DOCS=OFF" ];
] ++ lib.optionals (!buildDocs) [ "-DBUILD_DOCS=OFF" ];
propagatedBuildInputs = [ glibmm ];

View File

@ -43,7 +43,7 @@ stdenv.mkDerivation rec {
qmakeFlags = [
"INSTALL_PATH=${placeholder "out"}/${qtbase.qtPluginPrefix}/platforms"
]
++ lib.optional (!waylandSupport) [ "CONFIG+=DISABLE_WAYLAND" ];
++ lib.optionals (!waylandSupport) [ "CONFIG+=DISABLE_WAYLAND" ];
meta = with lib; {
description = "Qt platform plugins for DDE";

View File

@ -241,6 +241,10 @@
"workspace-indicator@gnome-shell-extensions.gcampax.github.com",
"horizontal-workspace-indicator@tty2.io"
],
"persian-calendar": [
"PersianCalendar@oxygenws.com",
"persian-calendar@iamrezamousavi.gmail.com"
],
"clipboard-indicator": [
"clipboard-indicator@tudmotu.com",
"clipboard-indicator@Dieg0Js.github.io"

View File

@ -12,6 +12,9 @@
"workspace-indicator@gnome-shell-extensions.gcampax.github.com" = "workspace-indicator";
"horizontal-workspace-indicator@tty2.io" = "workspace-indicator-2";
"PersianCalendar@oxygenws.com" = "persian-calendar";
"persian-calendar@iamrezamousavi.gmail.com" = "persian-calendar-2";
"clipboard-indicator@tudmotu.com" = "clipboard-indicator";
"clipboard-indicator@Dieg0Js.github.io" = "clipboard-indicator-2";

File diff suppressed because one or more lines are too long

View File

@ -1 +1 @@
WGET_ARGS=( https://download.kde.org/stable/plasma/5.27.2/ -A '*.tar.xz' )
WGET_ARGS=( https://download.kde.org/stable/plasma/5.27.3/ -A '*.tar.xz' )

View File

@ -4,483 +4,483 @@
{
aura-browser = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/aura-browser-5.27.2.tar.xz";
sha256 = "0ri1zv3xbd2wivnfi404zv8baf0h2a7wclmnbqjn0z5i898icmsr";
name = "aura-browser-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/aura-browser-5.27.3.tar.xz";
sha256 = "00ysfwf4r9x5csyxws7c7fazvcpr6240f8wshrg9dqsp5bwd86bl";
name = "aura-browser-5.27.3.tar.xz";
};
};
bluedevil = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/bluedevil-5.27.2.tar.xz";
sha256 = "0v3nq4yiqiyh3crizv3nilriqxvhajm5hghhqdrgabw9a7svp001";
name = "bluedevil-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/bluedevil-5.27.3.tar.xz";
sha256 = "1n8v2vdjp3mby2p9dpf53rjzsjwgw5z63s4lhm17090a152jwc1b";
name = "bluedevil-5.27.3.tar.xz";
};
};
breeze = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/breeze-5.27.2.tar.xz";
sha256 = "1ajr8ljn5nias0smjr3wlqwisgb59qzmmkmm4yc5il21ib20lp8l";
name = "breeze-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/breeze-5.27.3.tar.xz";
sha256 = "12krg073i08dly13zhy8jxpw6asdl7cc1dvafp48gr4irsygar3p";
name = "breeze-5.27.3.tar.xz";
};
};
breeze-grub = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/breeze-grub-5.27.2.tar.xz";
sha256 = "1fr84vylyvpba1z81sf6qj46ya7s853l7a2lflzrjrg41k84q7g4";
name = "breeze-grub-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/breeze-grub-5.27.3.tar.xz";
sha256 = "0mpjvll5ca0rg4nxsplqynrnc6bmlwg9m2xdvgbljpa7yiwymw06";
name = "breeze-grub-5.27.3.tar.xz";
};
};
breeze-gtk = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/breeze-gtk-5.27.2.tar.xz";
sha256 = "00k5b2cmz9b5l0mabj47pjaw5wn13laga2z3m5p2dz4y6m8gm3f1";
name = "breeze-gtk-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/breeze-gtk-5.27.3.tar.xz";
sha256 = "0ydz7xrmjfwq4nmdrazhyzm8n0jlqi3p8srydk2ivcjaq24v3f9p";
name = "breeze-gtk-5.27.3.tar.xz";
};
};
breeze-plymouth = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/breeze-plymouth-5.27.2.tar.xz";
sha256 = "1zbkj0mjpzkgbkl47zbrg9cxfk68245jm5i5p3194sqbw9l104mx";
name = "breeze-plymouth-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/breeze-plymouth-5.27.3.tar.xz";
sha256 = "0kqls4ss7m0dxzhqm747b2wig4nfbwcj1fi7qdwqy4lf1fw3r4sm";
name = "breeze-plymouth-5.27.3.tar.xz";
};
};
discover = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/discover-5.27.2.tar.xz";
sha256 = "0bcnm1ccvwhhvcdz8a44canrzfjl03hkrqfjwrr89y0mxiws46rc";
name = "discover-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/discover-5.27.3.tar.xz";
sha256 = "1nqav8zh6290c5jxjs1vfgxxbq5szzln7skhqvx0v0mkd1889i48";
name = "discover-5.27.3.tar.xz";
};
};
drkonqi = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/drkonqi-5.27.2.tar.xz";
sha256 = "0fwjz7qxal0dixrh1wjb17vpr6jx8fki91xxbbdfnr8ykixfsx56";
name = "drkonqi-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/drkonqi-5.27.3.tar.xz";
sha256 = "1p1mv0qbnbpj640sv4w965jry4w9179w0mvq1avv2hkpj6mx7jy3";
name = "drkonqi-5.27.3.tar.xz";
};
};
flatpak-kcm = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/flatpak-kcm-5.27.2.tar.xz";
sha256 = "0rrw6v8vwgxj78v16wwa3d4gamymjvgpi27lmcqmf9588chnn8xf";
name = "flatpak-kcm-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/flatpak-kcm-5.27.3.tar.xz";
sha256 = "1zjv7p8r3bic9jkla629n9a1g347d7mv22w0znpiah4xcdzci49n";
name = "flatpak-kcm-5.27.3.tar.xz";
};
};
kactivitymanagerd = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kactivitymanagerd-5.27.2.tar.xz";
sha256 = "1ni2yqk51qf23ck6j4kbli6pqhbnlix2w51la4af45ma8wr2gvix";
name = "kactivitymanagerd-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kactivitymanagerd-5.27.3.tar.xz";
sha256 = "097fx3rqilqihgs4miylgx7vwgmrrwac7c1g9l7ydc20ihx4l434";
name = "kactivitymanagerd-5.27.3.tar.xz";
};
};
kde-cli-tools = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kde-cli-tools-5.27.2.tar.xz";
sha256 = "189n92i79yxj6v2rwawg3grav4k5kdazh9fgnhijkwg2s6m7pdfm";
name = "kde-cli-tools-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kde-cli-tools-5.27.3.tar.xz";
sha256 = "191sz7v39fzhhpf81hjdxhw08p45fx83s1mfyyd3w39bfmv038m1";
name = "kde-cli-tools-5.27.3.tar.xz";
};
};
kde-gtk-config = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kde-gtk-config-5.27.2.tar.xz";
sha256 = "1m4qzv6haa9vq8z0m9v6i2y05syagazpg6inrgf6bvyrwh0zwbfa";
name = "kde-gtk-config-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kde-gtk-config-5.27.3.tar.xz";
sha256 = "04bix5d6n480qwfkhihss3nqpra3kcp939ppa4kws5ry1s759b5a";
name = "kde-gtk-config-5.27.3.tar.xz";
};
};
kdecoration = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kdecoration-5.27.2.tar.xz";
sha256 = "0xds1xx6jj6qy7jrl9wsnpcm1w4qd4im1bl21b9g1gmz7m53zvdm";
name = "kdecoration-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kdecoration-5.27.3.tar.xz";
sha256 = "1nzym6qf7pqsk03qs3583lisf9vzcy13mwwhcjpri0bng57ih3h7";
name = "kdecoration-5.27.3.tar.xz";
};
};
kdeplasma-addons = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kdeplasma-addons-5.27.2.tar.xz";
sha256 = "1fr0fnw1k9jm55dhk22wxfxl4asyk7712gmyrmc8w93i1lnnwd19";
name = "kdeplasma-addons-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kdeplasma-addons-5.27.3.tar.xz";
sha256 = "17rvsxg1fsbm5vyrm4sq4q0x720wj2y89i9n5w4v41fygarbia8w";
name = "kdeplasma-addons-5.27.3.tar.xz";
};
};
kgamma5 = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kgamma5-5.27.2.tar.xz";
sha256 = "03drd26nmy4q1vdw4kyzj6dvyfydzjybbzffyjdnnfc3yflhc32g";
name = "kgamma5-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kgamma5-5.27.3.tar.xz";
sha256 = "0z5ngivlg9zz844k55m2sxvzpjdivlggml38l0rzcqpzdqaab2fy";
name = "kgamma5-5.27.3.tar.xz";
};
};
khotkeys = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/khotkeys-5.27.2.tar.xz";
sha256 = "02fv67x68dlxk9q80qpfkyjrd4bgwqhzi6c6jari5f24ajl2kfqp";
name = "khotkeys-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/khotkeys-5.27.3.tar.xz";
sha256 = "1sq6p22bikjdxbb43l9s8rgzamyl83h00y5ksp281287k3swn6z6";
name = "khotkeys-5.27.3.tar.xz";
};
};
kinfocenter = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kinfocenter-5.27.2.tar.xz";
sha256 = "1v10xfqcrj16ljasz8v0f0isjrc2brdmblfq6il4f4nckb23qmmw";
name = "kinfocenter-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kinfocenter-5.27.3.tar.xz";
sha256 = "12wqryghhvs1a1l80k7zmwldyclvp3c2cdaaank7xwy3nyrnnzw4";
name = "kinfocenter-5.27.3.tar.xz";
};
};
kmenuedit = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kmenuedit-5.27.2.tar.xz";
sha256 = "1v6147x23rbp9nfmznbwf550ycml8zh6xa85vjj8gw7dma0zfx97";
name = "kmenuedit-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kmenuedit-5.27.3.tar.xz";
sha256 = "126wcw38abnwpfcapkbhk8xi2m5gp7qshvayzh23xdajg0lkh47p";
name = "kmenuedit-5.27.3.tar.xz";
};
};
kpipewire = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kpipewire-5.27.2.tar.xz";
sha256 = "1w15w49ali3v8sf3ahcsbbaynd20an5jy5305diza0g5ivyz0xh9";
name = "kpipewire-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kpipewire-5.27.3.tar.xz";
sha256 = "0b95jjkfpkvc2ld3x6p7nw6kn6fkqba9q7x95ywvgag2b00jdb56";
name = "kpipewire-5.27.3.tar.xz";
};
};
kscreen = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kscreen-5.27.2.tar.xz";
sha256 = "0xfj57xszxyrfpn2wq9sbmy6psxk81zirwz5x85sdlbzdz9cz28w";
name = "kscreen-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kscreen-5.27.3.tar.xz";
sha256 = "0ddxd0rmzq6bp00nw65z854pc8dsgiqdvwhkfrs9cprjdprnf3n1";
name = "kscreen-5.27.3.tar.xz";
};
};
kscreenlocker = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kscreenlocker-5.27.2.tar.xz";
sha256 = "0683rr6jg6zf12h00hypwb2hsvbngfq3vpf08qms0lcl78r5c41s";
name = "kscreenlocker-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kscreenlocker-5.27.3.tar.xz";
sha256 = "0m48bjrq95psmd11hny15nwqb4ypbfp7sik40hzzx216pqs9ma8s";
name = "kscreenlocker-5.27.3.tar.xz";
};
};
ksshaskpass = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/ksshaskpass-5.27.2.tar.xz";
sha256 = "1ianh4zqdym9a8r2rzffryyn1bwv6v8fbcha5ac2qi57mdkhk5fr";
name = "ksshaskpass-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/ksshaskpass-5.27.3.tar.xz";
sha256 = "0bgnxx0k62a26pkq2alvb8r9kqyd80wnxci3sxa7rppdx8z3ahd5";
name = "ksshaskpass-5.27.3.tar.xz";
};
};
ksystemstats = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/ksystemstats-5.27.2.tar.xz";
sha256 = "1wm3xf4h3y7cz8gpmyz3nm6lrdz31v7hf7cah9hzsk6i8ahc8bpr";
name = "ksystemstats-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/ksystemstats-5.27.3.tar.xz";
sha256 = "0rk34pav5zkw01h51m97i7jhq2wslhzap3wdp32v1xgsgmjlhs22";
name = "ksystemstats-5.27.3.tar.xz";
};
};
kwallet-pam = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kwallet-pam-5.27.2.tar.xz";
sha256 = "04krmcvkbpm8m0yx7gr1n53w0j9ifi1yl4p3b9z5ammkbrw7xrb8";
name = "kwallet-pam-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kwallet-pam-5.27.3.tar.xz";
sha256 = "1nqzx8pxk9yqqxpmra3mi8m61b7vl03vjpmnyrlh7krzynfjj672";
name = "kwallet-pam-5.27.3.tar.xz";
};
};
kwayland-integration = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kwayland-integration-5.27.2.tar.xz";
sha256 = "00qwrihgy2xxjpcshkhygvq15wyclsn4s9hl0m29y6d34j1m4awn";
name = "kwayland-integration-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kwayland-integration-5.27.3.tar.xz";
sha256 = "0jkgkzh9zp1yb72npzgfbhq79zmgwzf7vzw8xxbz3vsmk3rih0fd";
name = "kwayland-integration-5.27.3.tar.xz";
};
};
kwin = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kwin-5.27.2.tar.xz";
sha256 = "1xanx9yx0gzn75mkns5dpp65hlvijr85lxapac0rj8nw1hkfrcnh";
name = "kwin-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kwin-5.27.3.tar.xz";
sha256 = "1ry0mwah77ly1b4ywhiprjq5aqrb0njawqik11997q0k720i4b78";
name = "kwin-5.27.3.tar.xz";
};
};
kwrited = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/kwrited-5.27.2.tar.xz";
sha256 = "12sb6g4dj5188iq7yv37js65999api8r60vcqcap3gjzsrxn1ilw";
name = "kwrited-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/kwrited-5.27.3.tar.xz";
sha256 = "1m2qcqnsq3nbqa00y0fa0bnya8j7741pp3zgn58hjvhfbrh52262";
name = "kwrited-5.27.3.tar.xz";
};
};
layer-shell-qt = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/layer-shell-qt-5.27.2.tar.xz";
sha256 = "1zq82q035wf9dfs8imk2dbkxczjihlm23gc6pbnkpn1c3g7q1a1s";
name = "layer-shell-qt-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/layer-shell-qt-5.27.3.tar.xz";
sha256 = "1rvjkw11nxcj0fl9b45hfv20xaqq87jvfrxz72xkmixnsv3wv70f";
name = "layer-shell-qt-5.27.3.tar.xz";
};
};
libkscreen = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/libkscreen-5.27.2.tar.xz";
sha256 = "1kr9nkxsa3a3d4pdwlv89rw9c8rqhh9wcr3ii4hh791179v82wkb";
name = "libkscreen-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/libkscreen-5.27.3.tar.xz";
sha256 = "0py6x6l0bc64wakd3x6j4lmcnqzjxx0a4qr2p3i94rrx68b73mw5";
name = "libkscreen-5.27.3.tar.xz";
};
};
libksysguard = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/libksysguard-5.27.2.tar.xz";
sha256 = "01ksfg07a2q6f1jisfrfk3j4zvcvpspc8xakc9a14dpzkib7ifnn";
name = "libksysguard-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/libksysguard-5.27.3.tar.xz";
sha256 = "07xvs6pr605p9mjm6s8f5x53lyv2mscxvm4xfa0y056ngipvpwiz";
name = "libksysguard-5.27.3.tar.xz";
};
};
milou = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/milou-5.27.2.tar.xz";
sha256 = "1qxsnqdxw3y3jpdnx1wz0q17ll3gwqq4jrx2sddz887yf8kmbhsk";
name = "milou-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/milou-5.27.3.tar.xz";
sha256 = "07vf2mi6jnmw28r8bw5qj7f7467ja5mhsdp1k8hb32ivls92sv7b";
name = "milou-5.27.3.tar.xz";
};
};
oxygen = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/oxygen-5.27.2.tar.xz";
sha256 = "0gz03yskna0sjf4mpzpgh8s8xy9vxk2rp3w5d2vwvq798yqj4i36";
name = "oxygen-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/oxygen-5.27.3.tar.xz";
sha256 = "1drmjf8bgzm9gzpy887wbyi4zd71vlilhx7057qr8df6sbnzh4ch";
name = "oxygen-5.27.3.tar.xz";
};
};
oxygen-sounds = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/oxygen-sounds-5.27.2.tar.xz";
sha256 = "0v0rdcd08fhjbh5lhl7n77pady278lxb6sid4486ip050wzgmdhk";
name = "oxygen-sounds-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/oxygen-sounds-5.27.3.tar.xz";
sha256 = "1kppckhyll3v973jg2csp5z3ryxbipp9jpg6hfqrw1rqkv83rf8d";
name = "oxygen-sounds-5.27.3.tar.xz";
};
};
plank-player = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plank-player-5.27.2.tar.xz";
sha256 = "1zksd833sm4khjm7qaaxf2zlg1lscf2mdcqqcgxa590kb6cdk4g7";
name = "plank-player-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plank-player-5.27.3.tar.xz";
sha256 = "0iv26dics4w89j9xfms9bi4fs9b1cq4wnjgz1jv5w6834imvplrw";
name = "plank-player-5.27.3.tar.xz";
};
};
plasma-bigscreen = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-bigscreen-5.27.2.tar.xz";
sha256 = "1ap6w8s8lzsk4qlkjbig5vaq2kkghg4jc4rmmrmh55qb5805d29j";
name = "plasma-bigscreen-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-bigscreen-5.27.3.tar.xz";
sha256 = "0vp1n2048d9f15hnfiz2jkkk209n6zn6z45s9xa4a622xrqbvr3x";
name = "plasma-bigscreen-5.27.3.tar.xz";
};
};
plasma-browser-integration = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-browser-integration-5.27.2.tar.xz";
sha256 = "0cj46jsd8piy773qdamhpihywdl9qk2qpiigyyhbnsbwxcvl4fbw";
name = "plasma-browser-integration-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-browser-integration-5.27.3.tar.xz";
sha256 = "10ivly31xb2s1d2cizjppm805qxdh8lij8cry46fbgg51r5w1qnd";
name = "plasma-browser-integration-5.27.3.tar.xz";
};
};
plasma-desktop = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-desktop-5.27.2.tar.xz";
sha256 = "0dsic9had0nihw5k8a6vw5svdxsysa2kphk295kirf6k9qm2k2v5";
name = "plasma-desktop-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-desktop-5.27.3.tar.xz";
sha256 = "1q9lyc213fyvrjv816mhm0b0dzsjqy2m2hli9a70cy5i36id3pg2";
name = "plasma-desktop-5.27.3.tar.xz";
};
};
plasma-disks = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-disks-5.27.2.tar.xz";
sha256 = "0mapi9bclsnn6mv3gl5c87jxygm3pr3cc6ksvkpwqah46c76mmi3";
name = "plasma-disks-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-disks-5.27.3.tar.xz";
sha256 = "0m9wdqf1k346kbpc6c2d5z2xiqiyp598k1973g06jr1af0b2pi9f";
name = "plasma-disks-5.27.3.tar.xz";
};
};
plasma-firewall = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-firewall-5.27.2.tar.xz";
sha256 = "0vi64wkc9vxrfc2h1m4f8q8sqc2wl6s610ajs12r0sf8c4297fv1";
name = "plasma-firewall-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-firewall-5.27.3.tar.xz";
sha256 = "0qd40ihgd60znxmsr6s7vpr9af8r5dbasm4yjld4p7250pjvvn01";
name = "plasma-firewall-5.27.3.tar.xz";
};
};
plasma-integration = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-integration-5.27.2.tar.xz";
sha256 = "1220f4f2ykmrrxngmlc8xdjip63fidlhh42vslgy9bll6ag0qkys";
name = "plasma-integration-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-integration-5.27.3.tar.xz";
sha256 = "13lrg0r4zq71wvfah8brm53v9cbsn7zpknafi948nq3smbd1h196";
name = "plasma-integration-5.27.3.tar.xz";
};
};
plasma-mobile = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-mobile-5.27.2.tar.xz";
sha256 = "0v0cli1fyhzv80vhav4nablss0p9mzflll48f6lvx2sdqpiypcgq";
name = "plasma-mobile-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-mobile-5.27.3.tar.xz";
sha256 = "0rf09rqc2avcma61r6ngc6bc1lmrivrvi7rkv73mrw8klnh3vf9f";
name = "plasma-mobile-5.27.3.tar.xz";
};
};
plasma-nano = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-nano-5.27.2.tar.xz";
sha256 = "1lk7pg2j6fkvys849qfvd0crxkalrvmvqxl6ifw12d7kvdmz91nx";
name = "plasma-nano-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-nano-5.27.3.tar.xz";
sha256 = "11ivbr03dv75ryp0lcmj9iyw7y2x7pplybglpavmfz2ryq2vsy93";
name = "plasma-nano-5.27.3.tar.xz";
};
};
plasma-nm = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-nm-5.27.2.tar.xz";
sha256 = "15lh7nxryvv66hbf43bwarfw38jzr6405waf1z8dsvn5wckp093v";
name = "plasma-nm-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-nm-5.27.3.tar.xz";
sha256 = "02646jl8qq28b11hgxg73xycb2biy6girxkgpxnpdb1gxmfmfnvn";
name = "plasma-nm-5.27.3.tar.xz";
};
};
plasma-pa = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-pa-5.27.2.tar.xz";
sha256 = "0imwyv0w6xkbcyafhqsg4h3w56sclfaxnjfjkjbzn1hgmizx7n7k";
name = "plasma-pa-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-pa-5.27.3.tar.xz";
sha256 = "177hwsr75xif0r36hib1gh6bjyljnilb4s9zyzvr5z1lwiz10y91";
name = "plasma-pa-5.27.3.tar.xz";
};
};
plasma-remotecontrollers = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-remotecontrollers-5.27.2.tar.xz";
sha256 = "1ash4z6fi0kzdysnnlbh7vxpdwbfi0xyyyg845pmvhwhv6i82c7y";
name = "plasma-remotecontrollers-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-remotecontrollers-5.27.3.tar.xz";
sha256 = "04am5shh882k86yic1ca42j60l2rnqn9487i30k0332kzd0wir1w";
name = "plasma-remotecontrollers-5.27.3.tar.xz";
};
};
plasma-sdk = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-sdk-5.27.2.tar.xz";
sha256 = "1p68hfa884jym5mb22lrssxg5xwdnwsichdvmmqfy50szsv2n7mf";
name = "plasma-sdk-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-sdk-5.27.3.tar.xz";
sha256 = "0rsz846x3rldz950zm31aj8192b0h5d33fvizmgxnxjibxxf2q24";
name = "plasma-sdk-5.27.3.tar.xz";
};
};
plasma-systemmonitor = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-systemmonitor-5.27.2.tar.xz";
sha256 = "1kl9xjfkwy36nzva1hkq5pabczl174w29lxkzhim3q8laap6dql6";
name = "plasma-systemmonitor-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-systemmonitor-5.27.3.tar.xz";
sha256 = "122rw8nfzhk0808d1bk54ld41b45616fg3hca9jg4ib6k7nka367";
name = "plasma-systemmonitor-5.27.3.tar.xz";
};
};
plasma-tests = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-tests-5.27.2.tar.xz";
sha256 = "0q5qb4c1lbd7jpww382h86h74llvpm1zdnjb8a66x1nfnnws7db3";
name = "plasma-tests-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-tests-5.27.3.tar.xz";
sha256 = "1ijh1lfr81bwdw8nla55n6snxkmmz95qf3j8wbf61v64r9n3w2zp";
name = "plasma-tests-5.27.3.tar.xz";
};
};
plasma-thunderbolt = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-thunderbolt-5.27.2.tar.xz";
sha256 = "0aml4xx3bdnyx367lz3crnd21f08w239ps77wy41a0pdp47i5nfd";
name = "plasma-thunderbolt-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-thunderbolt-5.27.3.tar.xz";
sha256 = "17hs1mrr7lkd9nkxs9269bs3hs4c8qxg3ksirksrgnbz4zas1m55";
name = "plasma-thunderbolt-5.27.3.tar.xz";
};
};
plasma-vault = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-vault-5.27.2.tar.xz";
sha256 = "0hqxjmm236bivvlhivrzcypsa0kki4pc44l46jzvm5a0dsljv827";
name = "plasma-vault-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-vault-5.27.3.tar.xz";
sha256 = "0ilpkdd0nfg9z2klyf5s02npmqr1ypb0wgm584zi27q048hnicls";
name = "plasma-vault-5.27.3.tar.xz";
};
};
plasma-welcome = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-welcome-5.27.2.tar.xz";
sha256 = "06g8hnqnja2g17cx3vwx21zlrywmhiqb6zk0d72c02avr67px3gn";
name = "plasma-welcome-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-welcome-5.27.3.tar.xz";
sha256 = "1m6mpzbcyy7cimhcsbbmk1v86pibcrp86b22dh7pwgrg309ihsm4";
name = "plasma-welcome-5.27.3.tar.xz";
};
};
plasma-workspace = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-workspace-5.27.2.tar.xz";
sha256 = "19hlbp2ihblw5ynk44lasfgr4nk5z2mqm3gza5zvf08zpzwc437i";
name = "plasma-workspace-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-workspace-5.27.3.tar.xz";
sha256 = "0g710y1l2hpxnjg6r1k60dkvn6gf98fg5yhx72wa2y1in3nkglzl";
name = "plasma-workspace-5.27.3.tar.xz";
};
};
plasma-workspace-wallpapers = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plasma-workspace-wallpapers-5.27.2.tar.xz";
sha256 = "1x4mxs6b90z0rz3lacxr20ii8ihjq3z36vi2y9rllhcdzvpcbzy6";
name = "plasma-workspace-wallpapers-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plasma-workspace-wallpapers-5.27.3.tar.xz";
sha256 = "1ppsi5ic6yp9wnqwmz37jsmjs3l5jxafjarxa0xasalg69k10k4c";
name = "plasma-workspace-wallpapers-5.27.3.tar.xz";
};
};
plymouth-kcm = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/plymouth-kcm-5.27.2.tar.xz";
sha256 = "1nkxz8jmqwm8js16j9pcbbhjns7vhs98k70lsj0mc7mgh3y5bdf6";
name = "plymouth-kcm-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/plymouth-kcm-5.27.3.tar.xz";
sha256 = "09p6ii29lq08h8999zb1ddbaa4l7piykcr5xmhwir75pi7gnnacg";
name = "plymouth-kcm-5.27.3.tar.xz";
};
};
polkit-kde-agent = {
version = "1-5.27.2";
version = "1-5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/polkit-kde-agent-1-5.27.2.tar.xz";
sha256 = "0pz7dnrh10lzxlxnfsg06k012wb3qlqgvn0wwv7xb76yis75jmi4";
name = "polkit-kde-agent-1-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/polkit-kde-agent-1-5.27.3.tar.xz";
sha256 = "1axgqg07xm12qrrww8jvbh8yvhi7pf2x4ssq65qja0zz9kxiahcx";
name = "polkit-kde-agent-1-5.27.3.tar.xz";
};
};
powerdevil = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/powerdevil-5.27.2.tar.xz";
sha256 = "1awrfwki1ldmvwamdss4vkb5mlclw58zijpg6ip732ripiawhx1x";
name = "powerdevil-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/powerdevil-5.27.3.tar.xz";
sha256 = "16bcnm56g5amwygzkdz0sy396dfn47n6wiynnvr7nfhpzbfx81y8";
name = "powerdevil-5.27.3.tar.xz";
};
};
qqc2-breeze-style = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/qqc2-breeze-style-5.27.2.tar.xz";
sha256 = "0j2dy64sr0giagyi3yw9c40lnjmn1wsdi5vmj6cakvglhklnwl5w";
name = "qqc2-breeze-style-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/qqc2-breeze-style-5.27.3.tar.xz";
sha256 = "13hd2f08cb6gjdyns1qfszq7sn1ckr78l3lhl6g6yiab3jn1v6b4";
name = "qqc2-breeze-style-5.27.3.tar.xz";
};
};
sddm-kcm = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/sddm-kcm-5.27.2.tar.xz";
sha256 = "1lnciz566iz7alpz51j27cvdpkxnv88v5nnfjlql80d8a74gq3vs";
name = "sddm-kcm-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/sddm-kcm-5.27.3.tar.xz";
sha256 = "0hicpzsyym1r3amd6crz964gk19rhg5z9g87fr6i77r77iavb1ds";
name = "sddm-kcm-5.27.3.tar.xz";
};
};
systemsettings = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/systemsettings-5.27.2.tar.xz";
sha256 = "1qdj18plsi4l3z4hlm4c41gz3xmv9rkishs9a45kib2avd0sxvnd";
name = "systemsettings-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/systemsettings-5.27.3.tar.xz";
sha256 = "0gjh9hny0h2x5cqqsn5scm1k9hjfl3vgpmsjqqc66hb1ac8a9g04";
name = "systemsettings-5.27.3.tar.xz";
};
};
xdg-desktop-portal-kde = {
version = "5.27.2";
version = "5.27.3";
src = fetchurl {
url = "${mirror}/stable/plasma/5.27.2/xdg-desktop-portal-kde-5.27.2.tar.xz";
sha256 = "05rjm8h375bmmsslpm6nl1m7zsd8f7n3vm15nq4771hnlv8dml4p";
name = "xdg-desktop-portal-kde-5.27.2.tar.xz";
url = "${mirror}/stable/plasma/5.27.3/xdg-desktop-portal-kde-5.27.3.tar.xz";
sha256 = "0d47kx9y4bfylmn3q4s11vg6fzz1yjlcbxmpgpd9al8nils2ifnd";
name = "xdg-desktop-portal-kde-5.27.3.tar.xz";
};
};
}

View File

@ -61,7 +61,7 @@ stdenv.mkDerivation rec {
sourceHighlight
xz
zlib
] ++ lib.optional stdenv.buildPlatform.isLinux [
] ++ lib.optionals stdenv.buildPlatform.isLinux [
autoPatchelfHook
elfutils
glibc

View File

@ -27,13 +27,13 @@ let
in
stdenv.mkDerivation rec {
pname = "p4c";
version = "1.2.3.6";
version = "1.2.3.7";
src = fetchFromGitHub {
owner = "p4lang";
repo = "p4c";
rev = "v${version}";
sha256 = "sha256-3i2L1wORVN+X5sr4Hs+zGD/GgM1sAXt34R4kGMkd4qk=";
sha256 = "sha256-s9uUq86xbqU21jfAF42blbbIvHlkv7W75rotjSbMxHc=";
fetchSubmodules = true;
};

View File

@ -22,13 +22,13 @@
resholve.mkDerivation rec {
pname = "bats";
version = "1.8.2";
version = "1.9.0";
src = fetchFromGitHub {
owner = "bats-core";
repo = "bats-core";
rev = "v${version}";
sha256 = "sha256-Kitlx26cK2RiAC+PdRIdDLF5crorg6UB6uSzbKCrDHE=";
sha256 = "sha256-nKBNbqJYRd/3tO85E6KrOh32yOaNKpLXxz5gQ5Uvmcc=";
};
patchPhase = ''
@ -91,6 +91,8 @@ resholve.mkDerivation rec {
"$pre_command" = true;
"$BATS_TEST_NAME" = true;
"${placeholder "out"}/libexec/bats-core/bats-exec-test" = true;
"$BATS_LINE_REFERENCE_FORMAT" = "comma_line";
"$BATS_LOCKING_IMPLEMENTATION" = "${flock}/bin/flock";
};
execer = [
/*
@ -136,8 +138,15 @@ resholve.mkDerivation rec {
setup() {
bats_load_library bats-support
bats_load_library bats-assert
bats_load_library bats-file
bats_require_minimum_version 1.5.0
TEST_TEMP_DIR="$(temp_make --prefix 'nixpkgs-bats-test')"
}
teardown() {
temp_del "$TEST_TEMP_DIR"
}
@test echo_hi {
@ -150,10 +159,17 @@ resholve.mkDerivation rec {
assert_line --index 0 "cp: missing file operand"
assert_line --index 1 "Try 'cp --help' for more information."
}
@test file_exists {
echo "hi" > "$TEST_TEMP_DIR/hello.txt"
assert_file_exist "$TEST_TEMP_DIR/hello.txt"
run cat "$TEST_TEMP_DIR/hello.txt"
assert_output "hi"
}
'';
passAsFile = [ "testScript" ];
} ''
${bats.withLibraries (p: [ p.bats-support p.bats-assert ])}/bin/bats "$testScriptPath"
${bats.withLibraries (p: [ p.bats-support p.bats-assert p.bats-file ])}/bin/bats "$testScriptPath"
touch "$out"
'';

View File

@ -1,12 +1,12 @@
{ lib, stdenv, fetchFromGitHub }: {
bats-assert = stdenv.mkDerivation {
bats-assert = stdenv.mkDerivation rec {
pname = "bats-assert";
version = "2.0.0";
version = "2.1.0";
src = fetchFromGitHub {
owner = "bats-core";
repo = "bats-assert";
rev = "v2.0.0";
sha256 = "sha256-whSbAj8Xmnqclf78dYcjf1oq099ePtn4XX9TUJ9AlyQ=";
rev = "v${version}";
sha256 = "sha256-opgyrkqTwtnn/lUjMebbLfS/3sbI2axSusWd5i/5wm4=";
};
dontBuild = true;
installPhase = ''
@ -23,13 +23,13 @@
};
};
bats-file = stdenv.mkDerivation {
bats-file = stdenv.mkDerivation rec {
pname = "bats-file";
version = "0.3.0";
src = fetchFromGitHub {
owner = "bats-core";
repo = "bats-file";
rev = "v0.3.0";
rev = "v${version}";
sha256 = "sha256-3xevy0QpwNZrEe+2IJq58tKyxQzYx8cz6dD2nz7fYUM=";
};
dontBuild = true;
@ -47,13 +47,13 @@
};
};
bats-support = stdenv.mkDerivation {
bats-support = stdenv.mkDerivation rec {
pname = "bats-support";
version = "0.3.0";
src = fetchFromGitHub {
owner = "bats-core";
repo = "bats-support";
rev = "v0.3.0";
rev = "v${version}";
sha256 = "sha256-4N7XJS5XOKxMCXNC7ef9halhRpg79kUqDuRnKcrxoeo=";
};
dontBuild = true;

View File

@ -0,0 +1,42 @@
{ lib
, stdenv
, fetchFromGitLab
, meson
, ninja
, pkg-config
}:
stdenv.mkDerivation rec {
pname = "zix";
version = "unstable-2023-02-13";
src = fetchFromGitLab {
owner = "drobilla";
repo = pname;
rev = "262d4a1522c38be0588746e874159da5c7bb457d";
hash = "sha256-3vuefgnirM4ksK3j9sjBHgOmx0JpL+6tCPb69/7jI00=";
};
nativeBuildInputs = [
meson
ninja
pkg-config
];
mesonFlags = [
"-Dbenchmarks=disabled"
"-Ddocs=disabled"
];
meta = with lib; {
description = "A lightweight C99 portability and data structure library";
homepage = "https://gitlab.com/drobilla/zix";
changelog = "https://gitlab.com/drobilla/zix/-/blob/${src.rev}/NEWS";
license = licenses.isc;
platforms = platforms.unix;
maintainers = with maintainers; [
yuu
zseri
];
};
}

View File

@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "babl";
version = "0.1.100";
version = "0.1.102";
outputs = [ "out" "dev" ];
src = fetchurl {
url = "https://download.gimp.org/pub/babl/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "pebhk2diFdZdfN/q8RWKBgtCoUKjbxqwdtGDMhL50tQ=";
sha256 = "a88bb28506575f95158c8c89df6e23686e50c8b9fea412bf49fe8b80002d84f0";
};
nativeBuildInputs = [

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "geographiclib";
version = "2.1.2";
version = "2.2";
src = fetchFromGitHub {
owner = "geographiclib";
repo = "geographiclib";
rev = "v${version}";
hash = "sha256-DVJi6EosJOPoVJEgZYsro5C/lrHrXEfbjLWiQVJk4+U=";
hash = "sha256-W2YbeUYr6rjzdufVGzJ1k56uHHMzq8eidDZbRxTyzAU=";
};
nativeBuildInputs = [ cmake doxygen ];

View File

@ -23,7 +23,7 @@ stdenv.mkDerivation rec {
hash = "sha256-IAL4egXgaGmCilzcryjuvOoHhahyrfGWY68GBfXXgAM=";
};
buildInputs = [ autoreconfHook ];
nativeBuildInputs = [ autoreconfHook ];
propagatedBuildInputs = [
leptonica
zlib

View File

@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
pname = "libax25";
version = "0.0.12-rc5";
buildInputs = [ glibc ] ++ lib.optional stdenv.hostPlatform.isStatic [ glibc.static ];
buildInputs = [ glibc ] ++ lib.optionals stdenv.hostPlatform.isStatic [ glibc.static ];
# Due to recent unsolvable administrative domain problems with linux-ax25.org,
# the new domain is linux-ax25.in-berlin.de

View File

@ -30,7 +30,8 @@ stdenv.mkDerivation rec {
"--with-docbook-xsl-stylesheets=${docbook_xsl}/xml/xsl/docbook"
];
buildInputs = [ pkg-config autoreconfHook expat gpgme libgcrypt libxml2 libxslt gnutls curl docbook_xsl ];
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = [ expat gpgme libgcrypt libxml2 libxslt gnutls curl docbook_xsl ];
meta = with lib; {
description = "Client library for accessing SOAP services of Czech government-provided Databox infomation system";

View File

@ -25,7 +25,7 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkg-config autoreconfHook ];
buildInputs = lib.optionals enableOpx [ libuuid numactl ] ++ lib.optional enablePsm2 [ libpsm2 ];
buildInputs = lib.optionals enableOpx [ libuuid numactl ] ++ lib.optionals enablePsm2 [ libpsm2 ];
configureFlags = [
(if enablePsm2 then "--enable-psm2=${libpsm2}" else "--disable-psm2")

View File

@ -26,13 +26,13 @@ let
in
stdenv.mkDerivation rec {
pname = "libime";
version = "1.0.15";
version = "1.0.17";
src = fetchFromGitHub {
owner = "fcitx";
repo = "libime";
rev = version;
sha256 = "sha256-QZxXhrrSkxe7bDY7V7Ns5YZaaYJiEnGmHgGLstGMBzc=";
sha256 = "sha256-mc0Mknqki0pY4oKf8B6H67N+1eMu7wbqF7wES22Kw1A=";
fetchSubmodules = true;
};

View File

@ -26,6 +26,6 @@ stdenv.mkDerivation rec {
license = licenses.bsd3;
# https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/-/blob/v0.3.1/webrtc/rtc_base/system/arch.h
# + our patches
platforms = intersectLists platforms.unix (platforms.aarch64 ++ platforms.mips ++ platforms.power ++ platforms.riscv ++ platforms.x86);
platforms = intersectLists platforms.unix (platforms.arm ++ platforms.aarch64 ++ platforms.mips ++ platforms.power ++ platforms.riscv ++ platforms.x86);
};
}

View File

@ -10,13 +10,13 @@
stdenv.mkDerivation rec {
pname = "xcb-imdkit";
version = "1.0.4";
version = "1.0.5";
src = fetchFromGitHub {
owner = "fcitx";
repo = "xcb-imdkit";
rev = version;
sha256 = "sha256-WSJBEB6VHRYUkzXr7frdLLpKihuS00ZUINW7e4oYOlY=";
sha256 = "sha256-jbIhcxZzGlklpoMjLAYkKlh/CBE8R4jARO6nfnzSXOQ=";
};
nativeBuildInputs = [

View File

@ -19,7 +19,7 @@ rustPlatform.buildRustPackage rec {
cargoSha256 = "sha256-w+/5Ig+U8y4nwu7QisnZvc3UlZaEU/kovV6birOWndE=";
buildInputs = lib.optional stdenv.isDarwin [
buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.Security
];

View File

@ -1,38 +1,44 @@
{ buildPythonPackage, fetchPypi, lib
, dicttoxml
, importlib-metadata
{ lib
, buildPythonPackage
, fetchPypi
, pexpect
, prettytable
, requests-toolbelt
, pythonOlder
}:
buildPythonPackage rec {
pname = "argcomplete";
version = "2.0.0";
version = "2.1.1";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
sha256 = "6372ad78c89d662035101418ae253668445b391755cfe94ea52f1b9d22425b20";
hash = "sha256-cuCDQIUtMlREWcDBmq0bSKosOpbejG5XQkVrT1OMpS8=";
};
doCheck = false; # meant to be ran with interactive interpreter
# re-enable if we are able to make testing work
# nativeCheckInputs = [ bashInteractive coverage flake8 ];
postPatch = ''
substituteInPlace setup.py \
--replace '"coverage",' "" \
--replace " + lint_require" ""
'';
propagatedBuildInputs = [
dicttoxml
importlib-metadata
pexpect
prettytable
requests-toolbelt
];
pythonImportsCheck = [ "argcomplete" ];
# tries to build and install test packages which fails
doCheck = false;
pythonImportsCheck = [
"argcomplete"
];
meta = with lib; {
description = "Bash tab completion for argparse";
homepage = "https://kislyuk.github.io/argcomplete/";
maintainers = [ maintainers.womfoo ];
license = [ licenses.asl20 ];
changelog = "https://github.com/kislyuk/argcomplete/blob/v${version}/Changes.rst";
license = licenses.asl20;
maintainers = with maintainers; [ womfoo ];
};
}

View File

@ -1,5 +1,5 @@
{ stdenv
, lib
{ lib
, stdenv
, bcrypt
, buildPythonPackage
, cryptography
@ -31,23 +31,38 @@ buildPythonPackage rec {
};
propagatedBuildInputs = [
bcrypt
cryptography
fido2
gssapi
libnacl
libsodium
nettle
pyopenssl
python-pkcs11
typing-extensions
];
passthru.optional-dependencies = {
bcrypt = [
bcrypt
];
fido2 = [
fido2
];
gssapi = [
gssapi
];
libnacl = [
libnacl
];
pkcs11 = [
python-pkcs11
];
pyOpenSSL = [
pyopenssl
];
};
nativeCheckInputs = [
openssh
openssl
pytestCheckHook
];
] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
patches = [
# Reverts https://github.com/ronf/asyncssh/commit/4b3dec994b3aa821dba4db507030b569c3a32730

View File

@ -0,0 +1,80 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, gibberish-detector
, mock
, pkgs
, pyahocorasick
, pytestCheckHook
, pythonOlder
, pyyaml
, requests
, responses
, unidiff
}:
buildPythonPackage rec {
pname = "bc-detect-secrets";
version = "1.4.14";
format = "setuptools";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "bridgecrewio";
repo = "detect-secrets";
rev = "refs/tags/${version}";
hash = "sha256-WgUbVpn5KoayiWv3sYp+hZxqfQg73k0pXkxgUK8wrPg=";
};
propagatedBuildInputs = [
pyyaml
requests
unidiff
];
passthru.optional-dependencies = {
word_list = [
pyahocorasick
];
gibberish = [
gibberish-detector
];
};
nativeCheckInputs = [
mock
pkgs.gitMinimal
pytestCheckHook
responses
] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies);
preCheck = ''
export HOME=$(mktemp -d);
'';
disabledTests = [
# Tests are failing for various reasons (missing git repo, missing test data, etc.)
"test_baseline_filters_out_known_secrets"
"test_make_decisions"
"test_saves_to_baseline"
"test_start_halfway"
"TestCreate"
"TestDiff"
"TestGetFilesToScan"
"TestLineNumberChanges"
"TestModifiesBaselineFromVersionChange"
];
pythonImportsCheck = [
"detect_secrets"
];
meta = with lib; {
description = "Tool to detect secrets in the code";
homepage = "https://github.com/bridgecrewio/detect-secrets";
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -0,0 +1,48 @@
{ lib
, buildPythonPackage
, decorator
, fetchFromGitHub
, ply
, pytestCheckHook
, pythonOlder
}:
buildPythonPackage rec {
pname = "bc-jsonpath-ng";
version = "1.5.9";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "bridgecrewio";
repo = "jsonpath-ng";
rev = "refs/tags/${version}";
hash = "sha256-Uho+slKmKkTrcJBKi+9GJv1JrvDrTP4/6uqmMn3qptU=";
};
propagatedBuildInputs = [
decorator
ply
];
nativeCheckInputs = [
pytestCheckHook
];
disabledTestPaths = [
# Exclude tests that require oslotest
"tests/test_jsonpath_rw_ext.py"
];
pythonImportsCheck = [
"bc_jsonpath_ng"
];
meta = with lib; {
description = "JSONPath implementation for Python";
homepage = "https://github.com/bridgecrewio/jsonpath-ng";
license = with licenses; [ asl20 ];
maintainers = with maintainers; [ fab ];
};
}

View File

@ -16,7 +16,7 @@
buildPythonPackage rec {
pname = "bellows";
version = "0.34.9";
version = "0.34.10";
format = "setuptools";
disabled = pythonOlder "3.7";
@ -25,7 +25,7 @@ buildPythonPackage rec {
owner = "zigpy";
repo = "bellows";
rev = "refs/tags/${version}";
hash = "sha256-2QTY6mZkhaXHeZcLKxW7BkzOj2jYJx1v4TKG5YBcSC0=";
hash = "sha256-eD9E/NbM3t1kWhPwY2SmjuCk+XVwklm4rwzISlQHtq0=";
};
propagatedBuildInputs = [

View File

@ -10,6 +10,8 @@
, pytest-timeout
, pytestCheckHook
, pythonOlder
, setuptools
, stdenv
, typing-extensions
, wrapt
, uptime
@ -37,6 +39,7 @@ buildPythonPackage rec {
propagatedBuildInputs = [
msgpack
packaging
setuptools
typing-extensions
wrapt
];
@ -73,10 +76,16 @@ buildPythonPackage rec {
# pytest.approx is not supported in a boolean context (since pytest7)
"test_pack_unpack"
"test_receive"
] ++ lib.optionals stdenv.isDarwin [
# timing sensitive
"test_general"
"test_gap"
];
preCheck = ''
export PATH="$PATH:$out/bin";
# skips timing senstive tests
export CI=1
'';
pythonImportsCheck = [

View File

@ -1,21 +1,24 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, alembic
, lz4
, numpy
, oauthlib
, openpyxl
, pandas
, poetry-core
, pyarrow
, pytestCheckHook
, pythonOlder
, pythonRelaxDepsHook
, sqlalchemy
, thrift
}:
buildPythonPackage rec {
pname = "databricks-sql-connector";
version = "2.3.0";
version = "2.4.0";
format = "pyproject";
disabled = pythonOlder "3.7";
@ -24,7 +27,7 @@ buildPythonPackage rec {
owner = "databricks";
repo = "databricks-sql-python";
rev = "refs/tags/v${version}";
hash = "sha256-XyDkL/bGnivx7MRG86vGS69mKdrWw7kKiuvQfBYFKVQ=";
hash = "sha256-V8Nl6xr96Xnd1gkw9R0aqXkitLESsAyW7ufTYn6ttLg=";
};
pythonRelaxDeps = [
@ -38,11 +41,14 @@ buildPythonPackage rec {
];
propagatedBuildInputs = [
alembic
lz4
numpy
oauthlib
openpyxl
pandas
pyarrow
sqlalchemy
thrift
];

View File

@ -0,0 +1,53 @@
{ lib
, aiohttp-retry
, buildPythonPackage
, fetchFromGitHub
, dvc-objects
, fsspec
, pythonOlder
, pythonRelaxDepsHook
, setuptools-scm
}:
buildPythonPackage rec {
pname = "dvc-http";
version = "2.30.2";
format = "pyproject";
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "iterative";
repo = pname;
rev = "refs/tags/${version}";
hash = "sha256-IlgJEnS+rHSg5cw7SCc3vVtG1mJA5voGViya7nkpL2M=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;
nativeBuildInputs = [
setuptools-scm
];
propagatedBuildInputs = [
dvc-objects
fsspec
aiohttp-retry
];
# Currently it's not possible to run the tests
# ModuleNotFoundError: No module named 'dvc.testing'
doCheck = false;
pythonImportsCheck = [
"dvc_http"
];
meta = with lib; {
description = "HTTP plugin for dvc";
homepage = "https://github.com/iterative/dvc-http";
changelog = "https://github.com/iterative/dvc-http/releases/tag/${version}";
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -13,7 +13,7 @@
buildPythonPackage rec {
pname = "easyenergy";
version = "0.2.0";
version = "0.2.1";
format = "pyproject";
disabled = pythonOlder "3.9";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "klaasnicolaas";
repo = "python-easyenergy";
rev = "refs/tags/v${version}";
hash = "sha256-EhpZKwoayT53lhyuM/DlyLQ/1OSGuiAaiBdjM0UTZ8E=";
hash = "sha256-FjqkePMD55LWLwL6ZWzKwCI0tcYACPdRuci5fy6n02s=";
};
postPatch = ''

View File

@ -12,13 +12,13 @@
buildPythonPackage rec {
pname = "eve";
version = "2.0.4";
version = "2.1.0";
format = "setuptools";
src = fetchPypi {
inherit version;
pname = "Eve";
sha256 = "sha256-RZ6dwekCKA+PomBp2Ht7/0elOLLUs/sO0KgdxxTOjtc=";
sha256 = "sha256-NobIzu+7+NI7M4NRQKjrhye3v6YGMeGnbDRB39b3Dy8=";
};
disabled = pythonOlder "3.7";
@ -34,11 +34,12 @@ buildPythonPackage rec {
postPatch = ''
substituteInPlace setup.py \
--replace "flask<2.2" "flask" \
--replace "events>=0.3,<0.4" "events>=0.3"
'';
pythonImportsCheck = [ "eve" ];
pythonImportsCheck = [
"eve"
];
# tests call a running mongodb instance
doCheck = false;

View File

@ -12,7 +12,7 @@
buildPythonPackage rec {
pname = "idasen";
version = "0.9.4";
version = "0.9.5";
format = "pyproject";
disabled = pythonOlder "3.8";
@ -20,8 +20,8 @@ buildPythonPackage rec {
src = fetchFromGitHub {
owner = "newAM";
repo = "idasen";
rev = "v${version}";
hash = "sha256-GYQj7hiwyrCQDK19tZ7gN/pS1mFDSHgRfz7eCsKise4=";
rev = "refs/tags/v${version}";
hash = "sha256-tjjoKUaX1v06I43TkkvKRHmd1rDuXqjEIHSTatbzyQk=";
};
nativeBuildInputs = [

View File

@ -16,11 +16,11 @@
buildPythonPackage rec {
pname = "imageio";
version = "2.25.0";
version = "2.26.0";
disabled = pythonOlder "3.7";
src = fetchPypi {
sha256 = "sha256-uAeWofjDjGl6lAoq1zl+4okA1cTlEGG5pn0WrKhn8z4=";
sha256 = "sha256-Fp8WQs23IxM/6P6QGIf08bObwDZFjEZk8fnSViJs7TU=";
inherit pname version;
};

View File

@ -1,20 +1,24 @@
{ lib
, attrs
, buildPythonPackage
, commonmark
, fetchFromGitHub
, flit-core
, linkify-it-py
, markdown
, mdurl
, psutil
, py
, pytest-benchmark
, mistletoe
, mistune
, myst-parser
, panflute
, pyyaml
, sphinx
, sphinx-book-theme
, sphinx-copybutton
, sphinx-design
, pytest-regressions
, pytestCheckHook
, pythonOlder
, typing-extensions
# allow disabling tests for the nixos manual build.
# the test suite closure is just too large.
, disableTests ? false
}:
buildPythonPackage rec {
@ -36,30 +40,29 @@ buildPythonPackage rec {
];
propagatedBuildInputs = [
attrs
linkify-it-py
mdurl
] ++ lib.optionals (pythonOlder "3.8") [
typing-extensions
];
nativeCheckInputs = [
psutil
py
] ++ lib.optionals (! disableTests) [
pytest-benchmark
pytest-regressions
pytestCheckHook
];
] ++ passthru.optional-dependencies.linkify;
pytestFlagsArray = [
"--benchmark-skip"
];
# disable and remove benchmark tests
preCheck = ''
rm -r benchmarking
'';
pythonImportsCheck = [
"markdown_it"
];
passthru.optional-dependencies = {
compare = [ commonmark markdown mistletoe mistune panflute ];
linkify = [ linkify-it-py ];
rtd = [ attrs myst-parser pyyaml sphinx sphinx-copybutton sphinx-design sphinx-book-theme ];
};
meta = with lib; {
description = "Markdown parser in Python";
homepage = "https://markdown-it-py.readthedocs.io/";

Some files were not shown because too many files have changed in this diff Show More