Merge staging-next into staging
This commit is contained in:
commit
9c362ea601
5
.github/CODEOWNERS
vendored
5
.github/CODEOWNERS
vendored
@ -322,9 +322,8 @@ pkgs/applications/version-management/forgejo @bendlas @emilylange
|
||||
/pkgs/development/ocaml-modules @ulrikstrid
|
||||
|
||||
# ZFS
|
||||
pkgs/os-specific/linux/zfs @raitobezarius
|
||||
nixos/lib/make-single-disk-zfs-image.nix @raitobezarius
|
||||
nixos/lib/make-multi-disk-zfs-image.nix @raitobezarius
|
||||
pkgs/os-specific/linux/zfs/2_1.nix @raitobezarius
|
||||
pkgs/os-specific/linux/zfs/generic.nix @raitobezarius
|
||||
nixos/modules/tasks/filesystems/zfs.nix @raitobezarius
|
||||
nixos/tests/zfs.nix @raitobezarius
|
||||
|
||||
|
@ -15489,6 +15489,12 @@
|
||||
githubId = 69053978;
|
||||
name = "rogarb";
|
||||
};
|
||||
rollf = {
|
||||
email = "rolf.schroeder@limbus-medtec.com";
|
||||
github = "rollf";
|
||||
githubId = 58295931;
|
||||
name = "Rolf Schröder";
|
||||
};
|
||||
roman = {
|
||||
email = "open-source@roman-gonzalez.info";
|
||||
github = "roman";
|
||||
|
@ -378,7 +378,7 @@ in
|
||||
LogsDirectory = mkIf (cfg.logDir == "/var/log/caddy") [ "caddy" ];
|
||||
Restart = "on-failure";
|
||||
RestartPreventExitStatus = 1;
|
||||
RestartSecs = "5s";
|
||||
RestartSec = "5s";
|
||||
|
||||
# TODO: attempt to upstream these options
|
||||
NoNewPrivileges = true;
|
||||
|
@ -16,6 +16,7 @@ let
|
||||
cfgTrim = config.services.zfs.trim;
|
||||
cfgZED = config.services.zfs.zed;
|
||||
|
||||
selectModulePackage = package: config.boot.kernelPackages.${package.kernelModuleAttribute};
|
||||
inInitrd = any (fs: fs == "zfs") config.boot.initrd.supportedFilesystems;
|
||||
inSystem = any (fs: fs == "zfs") config.boot.supportedFilesystems;
|
||||
|
||||
@ -210,11 +211,17 @@ in
|
||||
options = {
|
||||
boot.zfs = {
|
||||
package = mkOption {
|
||||
readOnly = true;
|
||||
type = types.package;
|
||||
default = if config.boot.zfs.enableUnstable then pkgs.zfsUnstable else pkgs.zfs;
|
||||
defaultText = literalExpression "if config.boot.zfs.enableUnstable then pkgs.zfsUnstable else pkgs.zfs";
|
||||
description = lib.mdDoc "Configured ZFS userland tools package.";
|
||||
default = if cfgZfs.enableUnstable then pkgs.zfsUnstable else pkgs.zfs;
|
||||
defaultText = literalExpression "if zfsUnstable is enabled then pkgs.zfsUnstable else pkgs.zfs";
|
||||
description = lib.mdDoc "Configured ZFS userland tools package, use `pkgs.zfsUnstable` if you want to track the latest staging ZFS branch.";
|
||||
};
|
||||
|
||||
modulePackage = mkOption {
|
||||
internal = true; # It is supposed to be selected automatically, but can be overridden by expert users.
|
||||
default = selectModulePackage cfgZfs.package;
|
||||
type = types.package;
|
||||
description = lib.mdDoc "Configured ZFS kernel module package.";
|
||||
};
|
||||
|
||||
enabled = mkOption {
|
||||
@ -533,6 +540,10 @@ in
|
||||
config = mkMerge [
|
||||
(mkIf cfgZfs.enabled {
|
||||
assertions = [
|
||||
{
|
||||
assertion = cfgZfs.modulePackage.version == cfgZfs.package.version;
|
||||
message = "The kernel module and the userspace tooling versions are not matching, this is an unsupported usecase.";
|
||||
}
|
||||
{
|
||||
assertion = cfgZED.enableMail -> cfgZfs.package.enableMail;
|
||||
message = ''
|
||||
@ -571,18 +582,14 @@ in
|
||||
# https://github.com/NixOS/nixpkgs/issues/106093
|
||||
kernelParams = lib.optionals (!config.boot.zfs.allowHibernation) [ "nohibernate" ];
|
||||
|
||||
extraModulePackages = let
|
||||
kernelPkg = if config.boot.zfs.enableUnstable then
|
||||
config.boot.kernelPackages.zfsUnstable
|
||||
else
|
||||
config.boot.kernelPackages.zfs;
|
||||
in [
|
||||
(kernelPkg.override { inherit (cfgZfs) removeLinuxDRM; })
|
||||
extraModulePackages = [
|
||||
(cfgZfs.modulePackage.override { inherit (cfgZfs) removeLinuxDRM; })
|
||||
];
|
||||
};
|
||||
|
||||
boot.initrd = mkIf inInitrd {
|
||||
kernelModules = [ "zfs" ] ++ optional (!cfgZfs.enableUnstable) "spl";
|
||||
# spl has been removed in ≥ 2.2.0.
|
||||
kernelModules = [ "zfs" ] ++ lib.optional (lib.versionOlder "2.2.0" version) "spl";
|
||||
extraUtilsCommands =
|
||||
mkIf (!config.boot.initrd.systemd.enable) ''
|
||||
copy_bin_and_libs ${cfgZfs.package}/sbin/zfs
|
||||
|
@ -13,6 +13,7 @@ let
|
||||
else pkgs.linuxPackages
|
||||
, enableUnstable ? false
|
||||
, enableSystemdStage1 ? false
|
||||
, zfsPackage ? if enableUnstable then pkgs.zfs else pkgs.zfsUnstable
|
||||
, extraTest ? ""
|
||||
}:
|
||||
makeTest {
|
||||
@ -21,7 +22,7 @@ let
|
||||
maintainers = [ adisbladis elvishjerricco ];
|
||||
};
|
||||
|
||||
nodes.machine = { pkgs, lib, ... }:
|
||||
nodes.machine = { config, pkgs, lib, ... }:
|
||||
let
|
||||
usersharePath = "/var/lib/samba/usershares";
|
||||
in {
|
||||
@ -35,8 +36,8 @@ let
|
||||
boot.loader.efi.canTouchEfiVariables = true;
|
||||
networking.hostId = "deadbeef";
|
||||
boot.kernelPackages = kernelPackage;
|
||||
boot.zfs.package = zfsPackage;
|
||||
boot.supportedFilesystems = [ "zfs" ];
|
||||
boot.zfs.enableUnstable = enableUnstable;
|
||||
boot.initrd.systemd.enable = enableSystemdStage1;
|
||||
|
||||
environment.systemPackages = [ pkgs.parted ];
|
||||
@ -193,6 +194,11 @@ let
|
||||
|
||||
in {
|
||||
|
||||
# maintainer: @raitobezarius
|
||||
series_2_1 = makeZfsTest "2.1-series" {
|
||||
zfsPackage = pkgs.zfs_2_1;
|
||||
};
|
||||
|
||||
stable = makeZfsTest "stable" { };
|
||||
|
||||
unstable = makeZfsTest "unstable" {
|
||||
|
@ -93,6 +93,8 @@ in
|
||||
|
||||
wat-mode = callPackage ./manual-packages/wat-mode { };
|
||||
|
||||
xapian-lite = callPackage ./manual-packages/xapian-lite { };
|
||||
|
||||
yes-no = callPackage ./manual-packages/yes-no { };
|
||||
|
||||
youtube-dl = callPackage ./manual-packages/youtube-dl { };
|
||||
|
@ -0,0 +1,36 @@
|
||||
{ lib, stdenv, emacs, fetchFromSourcehut, xapian }:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "xapian-lite";
|
||||
version = "2.0.0";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~casouri";
|
||||
repo = "xapian-lite";
|
||||
rev = "v${finalAttrs.version}";
|
||||
hash = "sha256-uFO5yxPHIUJjT3OV2hZKp7KgT3l73W95X2SAz6vhCpI=";
|
||||
domain = "sr.ht";
|
||||
};
|
||||
|
||||
preBuild = ''
|
||||
rm emacs-module.h
|
||||
'';
|
||||
|
||||
buildInputs = [ xapian emacs ];
|
||||
|
||||
installPhase = ''
|
||||
runHook preInstall
|
||||
|
||||
install -Dm444 -t $out/share/emacs/site-lisp/ xapian-lite${stdenv.targetPlatform.extensions.sharedLibrary}
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://git.sr.ht/~casouri/xapian-lite";
|
||||
description = "A minimal Emacs dynamic module for Xapian";
|
||||
maintainers = [ lib.maintainers.marsam ];
|
||||
license = lib.licenses.gpl3Plus;
|
||||
inherit (emacs.meta) platforms;
|
||||
};
|
||||
})
|
@ -522,12 +522,12 @@ final: prev:
|
||||
|
||||
aerial-nvim = buildVimPlugin {
|
||||
pname = "aerial.nvim";
|
||||
version = "2023-11-18";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "stevearc";
|
||||
repo = "aerial.nvim";
|
||||
rev = "d82a994d66a9c6c700f240498304bd6d68fb33f0";
|
||||
sha256 = "0rjndafp4nz0qbaf614q92zkqcsqmr9i2v1c32q8cm1hxkapaf6q";
|
||||
rev = "712802e73107883a445b36f4197376eb60691b85";
|
||||
sha256 = "1ibsa8n2m9xyzp6air0j2rky69cs1v0pjzd9ni3p7zwh3dnixgh3";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
meta.homepage = "https://github.com/stevearc/aerial.nvim/";
|
||||
@ -2287,12 +2287,12 @@ final: prev:
|
||||
|
||||
conform-nvim = buildVimPlugin {
|
||||
pname = "conform.nvim";
|
||||
version = "2023-11-21";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "stevearc";
|
||||
repo = "conform.nvim";
|
||||
rev = "a5df96556c4c895777bf53177a8704b9b3e884e1";
|
||||
sha256 = "0qg0mcy7i00p93vqycq1nx7svfn758a3qy30lkwgkydvz4g8nhzg";
|
||||
rev = "fd32ed2dc192ec656a0536699336cd2fe3eb543f";
|
||||
sha256 = "0n9klkkmqcvh03dy6kyv3d2k1f5aj8bbqwh23z16wsk43cgayl9m";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
meta.homepage = "https://github.com/stevearc/conform.nvim/";
|
||||
@ -3131,12 +3131,12 @@ final: prev:
|
||||
|
||||
efmls-configs-nvim = buildVimPlugin {
|
||||
pname = "efmls-configs-nvim";
|
||||
version = "2023-11-20";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "creativenull";
|
||||
repo = "efmls-configs-nvim";
|
||||
rev = "1d94c55324045b48123478279443330a054d58cc";
|
||||
sha256 = "08gh1c38n21d2q2zj3dfx5bsgxzzi40s5rdhjd2k4qls8vnlfq53";
|
||||
rev = "a9e9711fc2165c98b3bf6366c4bf020de4a072b4";
|
||||
sha256 = "1clr87r0ipwv2l4vjhw0qh95abag1j0f94n0k74q1ymbdc2jp0qb";
|
||||
};
|
||||
meta.homepage = "https://github.com/creativenull/efmls-configs-nvim/";
|
||||
};
|
||||
@ -3865,12 +3865,12 @@ final: prev:
|
||||
|
||||
go-nvim = buildVimPlugin {
|
||||
pname = "go.nvim";
|
||||
version = "2023-11-23";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "ray-x";
|
||||
repo = "go.nvim";
|
||||
rev = "52ac15547cdca3cf6216efbd0c031644995f3106";
|
||||
sha256 = "0iyp27rsi6y5bkwi8ys72nfjlaq3br9k0m8zgrpij036j45bgrhk";
|
||||
rev = "ad5db6a907160e0d78671acf93d0ebfccd2fae30";
|
||||
sha256 = "1q934rbz3h3pi938jazl4s116kcyfn5n654fpq72xq6qiaq3y6rl";
|
||||
};
|
||||
meta.homepage = "https://github.com/ray-x/go.nvim/";
|
||||
};
|
||||
@ -5472,12 +5472,12 @@ final: prev:
|
||||
|
||||
material-nvim = buildVimPlugin {
|
||||
pname = "material.nvim";
|
||||
version = "2023-11-16";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "marko-cerovac";
|
||||
repo = "material.nvim";
|
||||
rev = "a74108b417cff78d15074f6f68a8f997e718f404";
|
||||
sha256 = "1vfndgk09kvrwj3kviff4c8wsi8gd7pym5wg0r17jflmqr7y2y5m";
|
||||
rev = "d61da5decc7768769314c121a3232b6eadc73f2d";
|
||||
sha256 = "1jsjshi8hwiyazpchhc5smsp2p9n7g54i7px4crc0gdnm3sxk5q0";
|
||||
};
|
||||
meta.homepage = "https://github.com/marko-cerovac/material.nvim/";
|
||||
};
|
||||
@ -5544,12 +5544,12 @@ final: prev:
|
||||
|
||||
mini-nvim = buildVimPlugin {
|
||||
pname = "mini.nvim";
|
||||
version = "2023-11-20";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "echasnovski";
|
||||
repo = "mini.nvim";
|
||||
rev = "05f4a49cd85a67b90328a1bcbae4d9ed2a0a417b";
|
||||
sha256 = "1m1z451p8bx5x9cal3a1yy3a28sjp7pmsisrfgsy2vckkxqf8m05";
|
||||
rev = "baf17e6472b0968661dce5daa372251e934da39f";
|
||||
sha256 = "1icagypgcdqsiz1p4m8kan8wdbjgxcz4qa415rplyrx9rxbpp4rl";
|
||||
};
|
||||
meta.homepage = "https://github.com/echasnovski/mini.nvim/";
|
||||
};
|
||||
@ -6024,12 +6024,12 @@ final: prev:
|
||||
|
||||
neogit = buildVimPlugin {
|
||||
pname = "neogit";
|
||||
version = "2023-11-22";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "NeogitOrg";
|
||||
repo = "neogit";
|
||||
rev = "809187dae9c7df368d08ba95cf034c7929574fa2";
|
||||
sha256 = "1zkkc0hz6x47h0rzfqfb508h24inf35g7679fljw5jpcc5bqjvph";
|
||||
rev = "3be926866a6fdee86f53c13455c9b106f85ca3dc";
|
||||
sha256 = "05wvjzia28wrivvh2a8p145lfiwq46mqamy5s6zay9k5qkn7wmz1";
|
||||
};
|
||||
meta.homepage = "https://github.com/NeogitOrg/neogit/";
|
||||
};
|
||||
@ -6601,12 +6601,12 @@ final: prev:
|
||||
|
||||
none-ls-nvim = buildVimPlugin {
|
||||
pname = "none-ls.nvim";
|
||||
version = "2023-11-23";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvimtools";
|
||||
repo = "none-ls.nvim";
|
||||
rev = "f1c0066bb3e9669d82040ddcf45a4d60c83ecca7";
|
||||
sha256 = "01zm2i867gqhrbrq4a08gw9rax3pmqzx5rmcp3pwydlnlypjdb7v";
|
||||
rev = "358dd357a753f81412397b8a4cc01a2f41a1b594";
|
||||
sha256 = "0pwlhsqkkq9d1i9rgrlf82xqlis48czz2arghjd0xs8vgf5aqypl";
|
||||
};
|
||||
meta.homepage = "https://github.com/nvimtools/none-ls.nvim/";
|
||||
};
|
||||
@ -7284,12 +7284,12 @@ final: prev:
|
||||
|
||||
nvim-metals = buildVimPlugin {
|
||||
pname = "nvim-metals";
|
||||
version = "2023-11-16";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "scalameta";
|
||||
repo = "nvim-metals";
|
||||
rev = "a3a75d094cc880dcd1fd9745fea2f0cd84662110";
|
||||
sha256 = "0zjlcsmz3381ir4sl2n7r2b91d7x5hp12g03v27y381p9q5kg41y";
|
||||
rev = "1a008b324d4f272ed628e5f354f0df61db5cbfbd";
|
||||
sha256 = "0nfv1yw50pgi29wfazapyqkkws50nxh862n586dy3ya2g7b00knf";
|
||||
};
|
||||
meta.homepage = "https://github.com/scalameta/nvim-metals/";
|
||||
};
|
||||
@ -7584,12 +7584,12 @@ final: prev:
|
||||
|
||||
nvim-treesitter = buildVimPlugin {
|
||||
pname = "nvim-treesitter";
|
||||
version = "2023-11-23";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvim-treesitter";
|
||||
repo = "nvim-treesitter";
|
||||
rev = "71bdf97bf6dafc776ad957169533f2f669a8c562";
|
||||
sha256 = "0y8scsr8xy02cnwjr0fddn62f2fv74qash6aspnfdfp3b400v2qm";
|
||||
rev = "649d137371e9214d30b20565e0574824fa3a3670";
|
||||
sha256 = "0i9vjhxg97wbl9mwh914fyv9blbsdmcjhxh3hiji15mmlba73n4d";
|
||||
};
|
||||
meta.homepage = "https://github.com/nvim-treesitter/nvim-treesitter/";
|
||||
};
|
||||
@ -9051,12 +9051,12 @@ final: prev:
|
||||
|
||||
snap = buildVimPlugin {
|
||||
pname = "snap";
|
||||
version = "2023-11-23";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "camspiers";
|
||||
repo = "snap";
|
||||
rev = "019e87e9af0a5c5a9f29c8f2164a61fcb853edf7";
|
||||
sha256 = "0y0s8dyan5kimzm91q61ix60gn3m473s07z7m84vv5g74dpkaykw";
|
||||
rev = "18f337ebe1c5b792f19233071bd95ebd529082b2";
|
||||
sha256 = "1m4iw0zyd3npm8cw9np8qn92gcn3lnybjqdm2n4v5m2ws2g6zmr7";
|
||||
};
|
||||
meta.homepage = "https://github.com/camspiers/snap/";
|
||||
};
|
||||
@ -9727,12 +9727,12 @@ final: prev:
|
||||
|
||||
telescope-frecency-nvim = buildVimPlugin {
|
||||
pname = "telescope-frecency.nvim";
|
||||
version = "2023-10-10";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "nvim-telescope";
|
||||
repo = "telescope-frecency.nvim";
|
||||
rev = "daf59744f60e34cbb48a40a092e9e735553b6f21";
|
||||
sha256 = "0mlfnhyz1daxmrfvvqmwpcqpqkl4nd5dqwz4ac539ffaca2mf6zb";
|
||||
rev = "ca5fa5326fc2b2ebd3269176594c4341ad720ac5";
|
||||
sha256 = "16pqbn4i23j3ynzii5cszfqwrbz54cd8d99hqkqamvsm36q9m5b7";
|
||||
};
|
||||
meta.homepage = "https://github.com/nvim-telescope/telescope-frecency.nvim/";
|
||||
};
|
||||
@ -10065,12 +10065,12 @@ final: prev:
|
||||
|
||||
text-case-nvim = buildVimPlugin {
|
||||
pname = "text-case.nvim";
|
||||
version = "2023-11-23";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "johmsalas";
|
||||
repo = "text-case.nvim";
|
||||
rev = "47c44ef4089e8a1342131c73088bdce2ab88eaa8";
|
||||
sha256 = "0zhmzvqd64bs410mm96h40m0x1dz477nphkkhz33gh8p796hgazm";
|
||||
rev = "f3a6cb7116c3eaa60cc7f6a3648f1dd5b9f6500b";
|
||||
sha256 = "0f30di446zisc1hj4cyfs8n4cyxlnxqr9njx84liff1q5p8h9pj6";
|
||||
};
|
||||
meta.homepage = "https://github.com/johmsalas/text-case.nvim/";
|
||||
};
|
||||
@ -11374,12 +11374,12 @@ final: prev:
|
||||
|
||||
vim-codefmt = buildVimPlugin {
|
||||
pname = "vim-codefmt";
|
||||
version = "2023-08-22";
|
||||
version = "2023-11-24";
|
||||
src = fetchFromGitHub {
|
||||
owner = "google";
|
||||
repo = "vim-codefmt";
|
||||
rev = "03b8f306895137721d9e34ff8d3054cced89661a";
|
||||
sha256 = "059z2gmi32vl078nna58w56fkgn66y80jjb30qigr4gxlgn4r1y5";
|
||||
rev = "22e551acedcd97425d831ecbc881b2012d919e1f";
|
||||
sha256 = "1k30m7yc03i7dcpdz8xisjjm3chnk80cp155jnyahcfkr346ipza";
|
||||
};
|
||||
meta.homepage = "https://github.com/google/vim-codefmt/";
|
||||
};
|
||||
|
@ -538,12 +538,12 @@
|
||||
};
|
||||
erlang = buildGrammar {
|
||||
language = "erlang";
|
||||
version = "0.0.0+rev=35ae91b";
|
||||
version = "0.0.0+rev=b7969b5";
|
||||
src = fetchFromGitHub {
|
||||
owner = "WhatsApp";
|
||||
repo = "tree-sitter-erlang";
|
||||
rev = "35ae91b2e9f5514c0ad6d6887f9859f28907c7d5";
|
||||
hash = "sha256-sA1Sy2yHBACDlicLYX+BLdcy4cnpleaYYVcjPcgHtW0=";
|
||||
rev = "b7969b5f12c44038379901a6f2094c31afa2ec2f";
|
||||
hash = "sha256-wfzfUGulZ3d7En5b/DiTrMcBNi4JHT723nSOS055v6w=";
|
||||
};
|
||||
meta.homepage = "https://github.com/WhatsApp/tree-sitter-erlang";
|
||||
};
|
||||
@ -2165,12 +2165,12 @@
|
||||
};
|
||||
ssh_config = buildGrammar {
|
||||
language = "ssh_config";
|
||||
version = "0.0.0+rev=1651e63";
|
||||
version = "0.0.0+rev=9ff3cab";
|
||||
src = fetchFromGitHub {
|
||||
owner = "ObserverOfTime";
|
||||
repo = "tree-sitter-ssh-config";
|
||||
rev = "1651e637d57c667708add5440d3726f07e97d953";
|
||||
hash = "sha256-jshQhWIeMcsUA7g2RGuH3DSfBfRhRx9dMOJVm/92Jkw=";
|
||||
rev = "9ff3cabeb738f94bfc3c2de4d3857133ad717e3f";
|
||||
hash = "sha256-uEm3Egz2/37TxmF24YklfVaxboQsbh5f9+TVcPAdpd0=";
|
||||
};
|
||||
meta.homepage = "https://github.com/ObserverOfTime/tree-sitter-ssh-config";
|
||||
};
|
||||
@ -2613,12 +2613,12 @@
|
||||
};
|
||||
wing = buildGrammar {
|
||||
language = "wing";
|
||||
version = "0.0.0+rev=635fa4b";
|
||||
version = "0.0.0+rev=d483d21";
|
||||
src = fetchFromGitHub {
|
||||
owner = "winglang";
|
||||
repo = "wing";
|
||||
rev = "635fa4b72ee913f3028bf6be54c40393edbc259d";
|
||||
hash = "sha256-ruhmgc+EhrqPBli7CkXL+MevB+fnCQIeLqQbqZhFfbY=";
|
||||
rev = "d483d21ad212bc9641e88deee0db2dad670eaaf3";
|
||||
hash = "sha256-EmK4xFO1WlIw3zebshrvBqJeEa/C9d2ACCzeKd4EAyM=";
|
||||
};
|
||||
location = "libs/tree-sitter-wing";
|
||||
generate = true;
|
||||
|
@ -4,26 +4,28 @@
|
||||
, pkg-config
|
||||
, river
|
||||
, wayland
|
||||
, zig_0_9
|
||||
, wayland-protocols
|
||||
, zig_0_11
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "rivercarro";
|
||||
version = "0.1.4";
|
||||
version = "0.3.0";
|
||||
|
||||
src = fetchFromSourcehut {
|
||||
owner = "~novakane";
|
||||
repo = "rivercarro";
|
||||
rev = "v${finalAttrs.version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-eATbbwIt5ytEVLPodyq9vFF9Rs5S1xShpvNYQnfwdV4=";
|
||||
hash = "sha256-lucwn9MmyVd4pynuG/ZAXnZ384wdS0gi7JN44vNQA1I=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
river
|
||||
wayland
|
||||
zig_0_9.hook
|
||||
wayland-protocols
|
||||
zig_0_11.hook
|
||||
];
|
||||
|
||||
meta = with lib; {
|
||||
@ -42,6 +44,6 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
changelog = "https://git.sr.ht/~novakane/rivercarro/refs/v${finalAttrs.version}";
|
||||
license = licenses.gpl3Plus;
|
||||
maintainers = with maintainers; [ kraem ];
|
||||
inherit (zig_0_9.meta) platforms;
|
||||
inherit (zig_0_11.meta) platforms;
|
||||
};
|
||||
})
|
||||
|
@ -26,14 +26,14 @@ let
|
||||
stripRoot = false;
|
||||
};
|
||||
|
||||
pname = "qutebrowser";
|
||||
version = "3.0.2";
|
||||
in
|
||||
|
||||
python3.pkgs.buildPythonApplication {
|
||||
inherit pname version;
|
||||
pname = "qutebrowser" + lib.optionalString (!isQt6) "-qt5";
|
||||
inherit version;
|
||||
src = fetchurl {
|
||||
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/${pname}-${version}.tar.gz";
|
||||
url = "https://github.com/qutebrowser/qutebrowser/releases/download/v${version}/qutebrowser-${version}.tar.gz";
|
||||
hash = "sha256-pRiT3koSNRmvuDcjuc7SstmPTKUoUnjIHpvdqR7VvFE=";
|
||||
};
|
||||
|
||||
|
@ -2,13 +2,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "kyverno";
|
||||
version = "1.10.4";
|
||||
version = "1.10.5";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "kyverno";
|
||||
repo = "kyverno";
|
||||
rev = "v${version}";
|
||||
sha256 = "sha256-Qcy+LGvoDJZ+zpIJvC8P0c5pl6GpiDuq7sWdrdMojmg=";
|
||||
sha256 = "sha256-APv9Z8cxcG283sEvC3/xwNMXStytM2dr/pemTES0Ltk=";
|
||||
};
|
||||
|
||||
ldflags = [
|
||||
@ -18,7 +18,7 @@ buildGoModule rec {
|
||||
"-X github.com/kyverno/kyverno/pkg/version.BuildTime=1970-01-01_00:00:00"
|
||||
];
|
||||
|
||||
vendorHash = "sha256-6JM5r/MUETmlMB/8Z82mpUe8bAym9ekb1HL24ik2OlE=";
|
||||
vendorHash = "sha256-R2810TRxKDPOBfdCSNFJ4425tHQC6R4d5Xltd7jK2V8=";
|
||||
|
||||
subPackages = [ "cmd/cli/kubectl-kyverno" ];
|
||||
|
||||
|
@ -258,6 +258,7 @@ stdenv.mkDerivation rec {
|
||||
the MTProto secure protocol.
|
||||
'';
|
||||
license = licenses.gpl3Only;
|
||||
platforms = platforms.all;
|
||||
homepage = "https://desktop.telegram.org/";
|
||||
changelog = "https://github.com/telegramdesktop/tdesktop/releases/tag/v${version}";
|
||||
maintainers = with maintainers; [ nickcao ];
|
||||
|
@ -10,6 +10,7 @@
|
||||
, qtbase
|
||||
, qtsvg
|
||||
, qttools
|
||||
, wrapGAppsHook
|
||||
, wrapQtAppsHook
|
||||
|
||||
, guiSupport ? true
|
||||
@ -41,6 +42,7 @@ stdenv.mkDerivation rec {
|
||||
nativeBuildInputs = [
|
||||
cmake
|
||||
ninja
|
||||
wrapGAppsHook
|
||||
wrapQtAppsHook
|
||||
];
|
||||
|
||||
@ -74,6 +76,8 @@ stdenv.mkDerivation rec {
|
||||
"--prefix PATH : ${lib.makeBinPath [ python3 ]}"
|
||||
];
|
||||
|
||||
dontWrapGApps = true;
|
||||
|
||||
postInstall = lib.optionalString stdenv.isDarwin ''
|
||||
APP_NAME=qbittorrent${lib.optionalString (!guiSupport) "-nox"}
|
||||
mkdir -p $out/{Applications,bin}
|
||||
@ -81,6 +85,10 @@ stdenv.mkDerivation rec {
|
||||
makeWrapper $out/{Applications/$APP_NAME.app/Contents/MacOS,bin}/$APP_NAME
|
||||
'';
|
||||
|
||||
preFixup = ''
|
||||
qtWrapperArgs+=("''${gappsWrapperArgs[@]}")
|
||||
'';
|
||||
|
||||
meta = with lib; {
|
||||
description = "Featureful free software BitTorrent client";
|
||||
homepage = "https://www.qbittorrent.org";
|
||||
|
@ -14,14 +14,14 @@
|
||||
, wayland-protocols
|
||||
, wlroots_0_16
|
||||
, xwayland
|
||||
, zig_0_10
|
||||
, zig_0_11
|
||||
, withManpages ? true
|
||||
, xwaylandSupport ? true
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "river";
|
||||
version = "0.2.4";
|
||||
version = "0.2.5";
|
||||
|
||||
outputs = [ "out" ] ++ lib.optionals withManpages [ "man" ];
|
||||
|
||||
@ -30,14 +30,14 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
repo = "river";
|
||||
rev = "refs/tags/v${finalAttrs.version}";
|
||||
fetchSubmodules = true;
|
||||
hash = "sha256-cIcO6owM6eYn+obYVaBOVQpnBx4++KOqQk5Hzo3GcNs=";
|
||||
hash = "sha256-Xd9hg7UGTBlEyw8BDpTQYq/IRC7vUXhMx9j7YcCaQ20=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
wayland
|
||||
xwayland
|
||||
zig_0_10.hook
|
||||
zig_0_11.hook
|
||||
]
|
||||
++ lib.optional withManpages scdoc;
|
||||
|
||||
|
5053
pkgs/by-name/co/cosmic-osd/Cargo.lock
generated
Normal file
5053
pkgs/by-name/co/cosmic-osd/Cargo.lock
generated
Normal file
File diff suppressed because it is too large
Load Diff
45
pkgs/by-name/co/cosmic-osd/package.nix
Normal file
45
pkgs/by-name/co/cosmic-osd/package.nix
Normal file
@ -0,0 +1,45 @@
|
||||
{ lib
|
||||
, fetchFromGitHub
|
||||
, rustPlatform
|
||||
, pkg-config
|
||||
, libxkbcommon
|
||||
, udev
|
||||
, wayland
|
||||
}:
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "cosmic-osd";
|
||||
version = "unstable-2023-11-15";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "pop-os";
|
||||
repo = pname;
|
||||
rev = "c1d10382dd1132923a4ddc9c86bb89bd9a70cd68";
|
||||
hash = "sha256-KCjWTN6hjbmJU6UfCP5NWbLy2K09+eRY5U4cQ5iV3E4=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
lockFile = ./Cargo.lock;
|
||||
outputHashes = {
|
||||
"accesskit-0.11.0" = "sha256-xVhe6adUb8VmwIKKjHxwCwOo5Y1p3Or3ylcJJdLDrrE=";
|
||||
"cosmic-config-0.1.0" = "sha256-7pfKQvScoahp+Fhv+QfgyIroCyQO6kjXcnTilBL41K8=";
|
||||
"smithay-client-toolkit-0.17.0" = "sha256-vDY4cqz5CZD12twElUWVCsf4N6VO9O+Udl8Dc4arWK4=";
|
||||
"smithay-client-toolkit-0.18.0" = "sha256-2WbDKlSGiyVmi7blNBr2Aih9FfF2dq/bny57hoA4BrE=";
|
||||
"softbuffer-0.2.0" = "sha256-VD2GmxC58z7Qfu/L+sfENE+T8L40mvUKKSfgLmCTmjY=";
|
||||
"taffy-0.3.11" = "sha256-0hXOEj6IjSW8e1t+rvxBFX6V9XRum3QO2Des1XlHJEw=";
|
||||
};
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkg-config ];
|
||||
buildInputs = [ libxkbcommon wayland udev ];
|
||||
|
||||
env.POLKIT_AGENT_HELPER_1 = "/run/wrappers/bin/polkit-agent-helper-1";
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://github.com/pop-os/cosmic-osd";
|
||||
description = "OSD for the COSMIC Desktop Environment";
|
||||
license = licenses.gpl3Only;
|
||||
maintainers = with maintainers; [ nyanbinary ];
|
||||
platforms = platforms.linux;
|
||||
};
|
||||
}
|
37
pkgs/development/compilers/corretto/11.nix
Normal file
37
pkgs/development/compilers/corretto/11.nix
Normal file
@ -0,0 +1,37 @@
|
||||
{ corretto11
|
||||
, fetchFromGitHub
|
||||
, gradle_7
|
||||
, jdk11
|
||||
, lib
|
||||
, stdenv
|
||||
, rsync
|
||||
, runCommand
|
||||
, testers
|
||||
}:
|
||||
|
||||
let
|
||||
corretto = import ./mk-corretto.nix {
|
||||
inherit lib stdenv rsync runCommand testers;
|
||||
jdk = jdk11;
|
||||
gradle = gradle_7;
|
||||
version = "11.0.20.9.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "corretto";
|
||||
repo = "corretto-11";
|
||||
rev = "b880bdc8397ec3dd6b7cd4b837ce846c9e902783";
|
||||
sha256 = "sha256-IomJHQn0ZgqsBZ5BrRqVrEOhTq7wjLiIKMQlz53JxsU=";
|
||||
};
|
||||
};
|
||||
in
|
||||
corretto.overrideAttrs (oldAttrs: {
|
||||
# jdk11 is built with --disable-warnings-as-errors (see openjdk/11.nix)
|
||||
# because of several compile errors. We need to include this parameter for
|
||||
# Corretto, too. Since the build is invoked via `gradle` build.gradle has to
|
||||
# be adapted.
|
||||
postPatch = oldAttrs.postPatch + ''
|
||||
for file in $(find installers -name "build.gradle"); do
|
||||
substituteInPlace $file --replace "command += archSpecificFlags" "command += archSpecificFlags + ['--disable-warnings-as-errors']"
|
||||
done
|
||||
'';
|
||||
|
||||
})
|
26
pkgs/development/compilers/corretto/17.nix
Normal file
26
pkgs/development/compilers/corretto/17.nix
Normal file
@ -0,0 +1,26 @@
|
||||
{ corretto17
|
||||
, fetchFromGitHub
|
||||
, gradle_7
|
||||
, jdk17
|
||||
, lib
|
||||
, stdenv
|
||||
, rsync
|
||||
, runCommand
|
||||
, testers
|
||||
}:
|
||||
|
||||
let
|
||||
corretto = import ./mk-corretto.nix {
|
||||
inherit lib stdenv rsync runCommand testers;
|
||||
jdk = jdk17;
|
||||
gradle = gradle_7;
|
||||
version = "17.0.8.8.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "corretto";
|
||||
repo = "corretto-17";
|
||||
rev = "9a3cc984f76cb5f90598bdb43215bad20e0f7319";
|
||||
sha256 = "sha256-/VuB3ocD5VvDqCU7BoTG+fQ0aKvK1TejegRYmswInqQ=";
|
||||
};
|
||||
};
|
||||
in
|
||||
corretto
|
26
pkgs/development/compilers/corretto/19.nix
Normal file
26
pkgs/development/compilers/corretto/19.nix
Normal file
@ -0,0 +1,26 @@
|
||||
{ corretto19
|
||||
, fetchFromGitHub
|
||||
, gradle_7
|
||||
, jdk19
|
||||
, lib
|
||||
, stdenv
|
||||
, rsync
|
||||
, runCommand
|
||||
, testers
|
||||
}:
|
||||
|
||||
let
|
||||
corretto = import ./mk-corretto.nix {
|
||||
inherit lib stdenv rsync runCommand testers;
|
||||
jdk = jdk19;
|
||||
gradle = gradle_7;
|
||||
version = "19.0.2.7.1";
|
||||
src = fetchFromGitHub {
|
||||
owner = "corretto";
|
||||
repo = "corretto-19";
|
||||
rev = "72f064a1d716272bd17d4e425d4a264b2c2c7d36";
|
||||
sha256 = "sha256-mEj/MIbdXU0+fF5RhqjPuSeyclstesGaXB0e48YlKuw=";
|
||||
};
|
||||
};
|
||||
in
|
||||
corretto
|
115
pkgs/development/compilers/corretto/mk-corretto.nix
Normal file
115
pkgs/development/compilers/corretto/mk-corretto.nix
Normal file
@ -0,0 +1,115 @@
|
||||
{ jdk
|
||||
, version
|
||||
, src
|
||||
, lib
|
||||
, stdenv
|
||||
, gradle
|
||||
, rsync
|
||||
, runCommand
|
||||
, testers
|
||||
}:
|
||||
|
||||
# Each Corretto version is based on a corresponding OpenJDK version. So
|
||||
# building Corretto is more or less the same as building OpenJDK. Hence, the
|
||||
# Corretto derivation overrides the corresponding OpenJDK derivation in order
|
||||
# to have access to all the version-specific fixes for the various OpenJDK
|
||||
# builds. However, Corretto uses `gradle` as build tool (which in turn will
|
||||
# invoke `make`). The configure/build phases are adapted as needed.
|
||||
|
||||
let
|
||||
pname = "corretto";
|
||||
# The version scheme is different between OpenJDK & Corretto.
|
||||
# See https://github.com/corretto/corretto-17/blob/release-17.0.8.8.1/build.gradle#L40
|
||||
# "major.minor.security.build.revision"
|
||||
in
|
||||
jdk.overrideAttrs (finalAttrs: oldAttrs: {
|
||||
inherit pname version src;
|
||||
name = "${pname}-${version}";
|
||||
|
||||
nativeBuildInputs = oldAttrs.nativeBuildInputs ++ [ jdk gradle rsync ];
|
||||
|
||||
dontConfigure = true;
|
||||
|
||||
postPatch = ''
|
||||
# The rpm/deb task definitions require a Gradle plugin which we don't
|
||||
# have and so the build fails. We'll simply remove them here because
|
||||
# they are not needed anyways.
|
||||
rm -rf installers/linux/universal/{rpm,deb}
|
||||
|
||||
# `/usr/bin/rsync` is invoked to copy the source tree. We don't have that.
|
||||
for file in $(find installers -name "build.gradle"); do
|
||||
substituteInPlace $file --replace "workingDir '/usr/bin'" "workingDir '.'"
|
||||
done
|
||||
'';
|
||||
|
||||
|
||||
buildPhase =
|
||||
let
|
||||
# The Linux installer is placed at linux/universal/tar whereas the MacOS
|
||||
# one is at mac/tar.
|
||||
task =
|
||||
if stdenv.isDarwin then
|
||||
":installers:mac:tar:packageBuildResults"
|
||||
else ":installers:linux:universal:tar:packageBuildResults";
|
||||
in
|
||||
''
|
||||
runHook preBuild
|
||||
|
||||
# Corretto's actual built is triggered via `gradle`.
|
||||
gradle --console=plain --no-daemon ${task}
|
||||
|
||||
# Prepare for the installPhase so that it looks like if a normal
|
||||
# OpenJDK had been built.
|
||||
dir=build/jdkImageName/images
|
||||
mkdir -p $dir
|
||||
file=$(find ./installers -name 'amazon-corretto-${version}*.tar.gz')
|
||||
tar -xzf $file -C $dir
|
||||
mv $dir/amazon-corretto-* $dir/jdk
|
||||
|
||||
runHook postBuild
|
||||
'';
|
||||
|
||||
installPhase = oldAttrs.installPhase + ''
|
||||
# The installPhase will place everything in $out/lib/openjdk and
|
||||
# reference through symlinks. We don't rewrite the installPhase but at
|
||||
# least move the folder to convey that this is not OpenJDK anymore.
|
||||
mv $out/lib/openjdk $out/lib/corretto
|
||||
ln -s $out/lib/corretto $out/lib/openjdk
|
||||
'';
|
||||
|
||||
passthru =
|
||||
let
|
||||
pkg = finalAttrs.finalPackage;
|
||||
in
|
||||
oldAttrs.passthru // {
|
||||
tests = {
|
||||
version = testers.testVersion {
|
||||
package = pkg;
|
||||
};
|
||||
vendor = runCommand "${pname}-vendor" { nativeBuildInputs = [ pkg ]; } ''
|
||||
output=$(${pkg.meta.mainProgram} -XshowSettings:properties -version 2>&1 | grep vendor)
|
||||
grep -Fq "java.vendor = Amazon.com Inc." - <<< "$output" && touch $out
|
||||
'';
|
||||
compiler = runCommand "${pname}-compiler" { nativeBuildInputs = [ pkg ]; } ''
|
||||
cat << EOF > Main.java
|
||||
class Main {
|
||||
public static void main(String[] args) {
|
||||
System.out.println("Hello, World!");
|
||||
}
|
||||
}
|
||||
EOF
|
||||
${pkg}/bin/javac Main.java
|
||||
${pkg}/bin/java Main | grep -q "Hello, World!" && touch $out
|
||||
'';
|
||||
};
|
||||
};
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://aws.amazon.com/corretto";
|
||||
license = licenses.gpl2Only;
|
||||
description = "Amazon's distribution of OpenJDK";
|
||||
platforms = jdk.meta.platforms;
|
||||
mainProgram = "java";
|
||||
maintainers = with maintainers; [ rollf ];
|
||||
};
|
||||
})
|
@ -375,6 +375,5 @@ let
|
||||
if stdenv.buildPlatform == stdenv.hostPlatform
|
||||
then bootstrapScope.qttranslations
|
||||
else null;
|
||||
qutebrowser = final.callPackage ../../../../applications/networking/browsers/qutebrowser { };
|
||||
});
|
||||
in finalScope
|
||||
|
@ -1,6 +1,8 @@
|
||||
{ newScope
|
||||
, lib
|
||||
, stdenv
|
||||
, generateSplicesForMkScope
|
||||
, makeScopeWithSplicing'
|
||||
, fetchurl
|
||||
, fetchpatch
|
||||
, fetchpatch2
|
||||
@ -12,6 +14,7 @@
|
||||
, overrideSDK
|
||||
, buildPackages
|
||||
, python3
|
||||
, config
|
||||
|
||||
# options
|
||||
, developerBuild ? false
|
||||
@ -24,10 +27,11 @@ let
|
||||
mirror = "mirror://qt";
|
||||
};
|
||||
|
||||
addPackages = self: with self;
|
||||
addPackages = self:
|
||||
let
|
||||
callPackage = self.newScope ({
|
||||
inherit qtModule srcs python3;
|
||||
inherit (self) qtModule;
|
||||
inherit srcs python3;
|
||||
stdenv = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
|
||||
});
|
||||
in
|
||||
@ -58,7 +62,9 @@ let
|
||||
];
|
||||
};
|
||||
env = callPackage ./qt-env.nix { };
|
||||
full = env "qt-full-${qtbase.version}" ([
|
||||
full = callPackage ({ env, qtbase }: env "qt-full-${qtbase.version}"
|
||||
# `with self` is ok to use here because having these spliced is unnecessary
|
||||
( with self;[
|
||||
qt3d
|
||||
qt5compat
|
||||
qtcharts
|
||||
@ -96,7 +102,7 @@ let
|
||||
qtwebengine
|
||||
qtwebsockets
|
||||
qtwebview
|
||||
] ++ lib.optionals (!stdenv.isDarwin) [ qtwayland libglvnd ]);
|
||||
] ++ lib.optionals (!stdenv.isDarwin) [ qtwayland libglvnd ])) { };
|
||||
|
||||
qt3d = callPackage ./modules/qt3d.nix { };
|
||||
qt5compat = callPackage ./modules/qt5compat.nix { };
|
||||
@ -149,11 +155,11 @@ let
|
||||
GameController ImageCaptureCore LocalAuthentication
|
||||
MediaAccessibility MediaPlayer MetalKit Network OpenDirectory Quartz
|
||||
ReplayKit SecurityInterface Vision;
|
||||
qtModule = qtModule.override {
|
||||
qtModule = callPackage ({ qtModule }: qtModule.override {
|
||||
stdenv = if stdenv.isDarwin
|
||||
then overrideSDK stdenv { darwinMinVersion = "10.13"; darwinSdkVersion = "11.0"; }
|
||||
else stdenv;
|
||||
};
|
||||
}) { };
|
||||
xcbuild = buildPackages.xcbuild.override {
|
||||
productBuildVer = "20A2408";
|
||||
};
|
||||
@ -163,26 +169,32 @@ let
|
||||
inherit (darwin.apple_sdk_11_0.frameworks) WebKit;
|
||||
};
|
||||
|
||||
wrapQtAppsHook = makeSetupHook
|
||||
wrapQtAppsHook = callPackage ({ makeBinaryWrapper }: makeSetupHook
|
||||
{
|
||||
name = "wrap-qt6-apps-hook";
|
||||
propagatedBuildInputs = [ buildPackages.makeBinaryWrapper ];
|
||||
} ./hooks/wrap-qt-apps-hook.sh;
|
||||
propagatedBuildInputs = [ makeBinaryWrapper ];
|
||||
} ./hooks/wrap-qt-apps-hook.sh) { };
|
||||
|
||||
qmake = makeSetupHook
|
||||
qmake = callPackage ({ qtbase }: makeSetupHook
|
||||
{
|
||||
name = "qmake6-hook";
|
||||
propagatedBuildInputs = [ self.qtbase.dev ];
|
||||
propagatedBuildInputs = [ qtbase.dev ];
|
||||
substitutions = {
|
||||
inherit debug;
|
||||
fix_qmake_libtool = ./hooks/fix-qmake-libtool.sh;
|
||||
};
|
||||
} ./hooks/qmake-hook.sh;
|
||||
} ./hooks/qmake-hook.sh) { };
|
||||
} // lib.optionalAttrs config.allowAliases {
|
||||
# Convert to a throw on 03-01-2023 and backport the change.
|
||||
# Warnings show up in various cli tool outputs, throws do not.
|
||||
# Remove completely before 24.05
|
||||
overrideScope' = lib.warnIf (lib.isInOldestRelease 2311) "qt6 now uses makeScopeWithSplicing which does not have \"overrideScope'\", use \"overrideScope\"." self.overrideScope;
|
||||
};
|
||||
|
||||
# TODO(@Artturin): convert to makeScopeWithSplicing'
|
||||
# simple example of how to do that in 5568a4d25ca406809530420996d57e0876ca1a01
|
||||
baseScope = lib.makeScope newScope addPackages;
|
||||
baseScope = makeScopeWithSplicing' {
|
||||
otherSplices = generateSplicesForMkScope "qt6";
|
||||
f = addPackages;
|
||||
};
|
||||
|
||||
bootstrapScope = baseScope.overrideScope(final: prev: {
|
||||
qtbase = prev.qtbase.override { qttranslations = null; };
|
||||
|
@ -14,14 +14,14 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "oauthenticator";
|
||||
version = "16.1.1";
|
||||
version = "16.2.0";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-Obv4MJvO7li+KqI2l6KxfxjpbZVD5KFJwjn/u+UtaQQ=";
|
||||
hash = "sha256-z5CFFfVJYeXaDFVPYaBOfUMzgl+Uvn3LYS5Zn1AHRy0=";
|
||||
};
|
||||
|
||||
postPatch = ''
|
||||
|
@ -8,12 +8,12 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "prometheus-pandas";
|
||||
version = "0.3.2";
|
||||
version = "0.3.3";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-zysdlYPjvhextAfW4vvGN6mSPVUbWLV+AvQ1hGWCAbw=";
|
||||
hash = "sha256-1eaTmNui3cAisKEhBMEpOv+UndJZwb4GGK2M76xiy7k=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "reolink-aio";
|
||||
version = "0.8.0";
|
||||
version = "0.8.1";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.9";
|
||||
@ -18,7 +18,7 @@ buildPythonPackage rec {
|
||||
owner = "starkillerOG";
|
||||
repo = "reolink_aio";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-HcEJwgb912NbRt2RTSNccluchWYBBqADi5LcW3mY8I4=";
|
||||
hash = "sha256-zxIx7+cpYKN811yz+nxjtOagHOMMIs1YU0ZLN9q5T7M=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "sqlalchemy-jsonfield";
|
||||
version = "1.0.1.post0+2023-04-24";
|
||||
version = "1.0.2";
|
||||
format = "setuptools";
|
||||
|
||||
disabled = pythonOlder "3.7";
|
||||
@ -22,8 +22,8 @@ buildPythonPackage rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = "penguinolog";
|
||||
repo = "sqlalchemy_jsonfield";
|
||||
rev = "a1efda9755055c1d382257fb4ef78006b713d07e";
|
||||
hash = "sha256-6l4LEGpA8dKPw8M4quStd1nWyshMNiwQojBCxKwRRXA=";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-4zLXB3UQh6pgQ80KrxkLeC5yiv1R8t2+JmSukmGXr7I=";
|
||||
};
|
||||
|
||||
SETUPTOOLS_SCM_PRETEND_VERSION = "v${version}";
|
||||
|
@ -10,7 +10,7 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "toml-adapt";
|
||||
version = "0.2.11";
|
||||
version = "0.2.12";
|
||||
format = "pyproject";
|
||||
|
||||
disabled = pythonOlder "3.6";
|
||||
@ -18,8 +18,8 @@ buildPythonPackage rec {
|
||||
src = fetchFromGitHub {
|
||||
owner = "firefly-cpp";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-7gQZCjsCtzvmV5NPZNAW4d34TkKemH9FgeN0Iwydwgc=";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-DtxA63lutgjGMH8GYz5r6IFEuuZ9iFGPGup960c4xgE=";
|
||||
};
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
@ -5,12 +5,12 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "types-mock";
|
||||
version = "5.1.0.2";
|
||||
version = "5.1.0.3";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-3kjTdm5OMDTv2LJtqeCeSQjzHlMTel/i778fur7haZY=";
|
||||
hash = "sha256-7urCVIAoe7ch+xf82i6XaNcKR23MFKLB0DiVNcVPgYQ=";
|
||||
};
|
||||
|
||||
# Module has no tests
|
||||
|
@ -7,12 +7,12 @@
|
||||
|
||||
buildPythonPackage rec {
|
||||
pname = "types-redis";
|
||||
version = "4.6.0.10";
|
||||
version = "4.6.0.11";
|
||||
format = "setuptools";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
hash = "sha256-qn+190NTRQDydN3xGrHJEKrhAgSBhlo2t5nh1n3iqvM=";
|
||||
hash = "sha256-yM/IRjUYPeyi20pSiWbFVmRF/TcTmD8ANPsPWgngiQ0=";
|
||||
};
|
||||
|
||||
propagatedBuildInputs = [
|
||||
|
@ -5,14 +5,14 @@
|
||||
|
||||
python3.pkgs.buildPythonApplication rec {
|
||||
pname = "checkov";
|
||||
version = "3.1.10";
|
||||
version = "3.1.11";
|
||||
pyproject = true;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "bridgecrewio";
|
||||
repo = "checkov";
|
||||
rev = "refs/tags/${version}";
|
||||
hash = "sha256-5p8xROB2aBmYMpYAJvm/3Yxxq+DwcyguokeE/9fPzdU=";
|
||||
hash = "sha256-BpMjpdZ7kmHGJZSHggUN0NYhhAo+ludMZQYOMxeGnl8=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
|
@ -204,6 +204,8 @@ stdenv.mkDerivation rec {
|
||||
inherit src;
|
||||
inherit sourceRoot;
|
||||
patches = [
|
||||
./upb-clang16.patch
|
||||
|
||||
# On Darwin, the last argument to gcc is coming up as an empty string. i.e: ''
|
||||
# This is breaking the build of any C target. This patch removes the last
|
||||
# argument if it's found to be an empty string.
|
||||
@ -399,6 +401,8 @@ stdenv.mkDerivation rec {
|
||||
# libcxx includes aren't added by libcxx hook
|
||||
# https://github.com/NixOS/nixpkgs/pull/41589
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${lib.getDev libcxx}/include/c++/v1"
|
||||
# for CLang 16 compatibility in third_party/{zlib}, external/{upb} dependencies
|
||||
export NIX_CFLAGS_COMPILE+=" -Wno-implicit-function-declaration -Wno-gnu-offsetof-extensions"
|
||||
|
||||
# don't use system installed Xcode to run clang, use Nix clang instead
|
||||
sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
|
||||
|
@ -0,0 +1,57 @@
|
||||
diff --git a/WORKSPACE b/WORKSPACE
|
||||
index 2d995f095e..55fddef663 100644
|
||||
--- a/WORKSPACE
|
||||
+++ b/WORKSPACE
|
||||
@@ -1232,7 +1232,7 @@ register_toolchains("//src/main/res:empty_rc_toolchain")
|
||||
http_archive(
|
||||
name = "com_github_grpc_grpc",
|
||||
patch_args = ["-p1"],
|
||||
- patches = ["//third_party/grpc:grpc_1.33.1.patch"],
|
||||
+ patches = ["//third_party/grpc:grpc_1.33.1.patch", "//:grpc-upb-clang16.patch"],
|
||||
sha256 = "58eaee5c0f1bd0b92ebe1fa0606ec8f14798500620e7444726afcaf65041cb63",
|
||||
strip_prefix = "grpc-1.33.1",
|
||||
urls = [
|
||||
diff --git a/grpc-upb-clang16.patch b/grpc-upb-clang16.patch
|
||||
new file mode 100644
|
||||
index 0000000000..ae6a7ad0e0
|
||||
--- /dev/null
|
||||
+++ b/grpc-upb-clang16.patch
|
||||
@@ -0,0 +1,13 @@
|
||||
+diff -r -u a/bazel/grpc_deps.bzl b/bazel/grpc_deps.bzl
|
||||
+--- a/bazel/grpc_deps.bzl
|
||||
++++ b/bazel/grpc_deps.bzl
|
||||
+@@ -285,6 +285,8 @@
|
||||
+ name = "upb",
|
||||
+ sha256 = "7992217989f3156f8109931c1fc6db3434b7414957cb82371552377beaeb9d6c",
|
||||
+ strip_prefix = "upb-382d5afc60e05470c23e8de19b19fc5ad231e732",
|
||||
++ patches = ["//:upb-clang16.patch"],
|
||||
++ patch_args = ["-p1"],
|
||||
+ urls = [
|
||||
+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz",
|
||||
+ "https://github.com/protocolbuffers/upb/archive/382d5afc60e05470c23e8de19b19fc5ad231e732.tar.gz",
|
||||
+
|
||||
diff --git a/upb-clang16.patch b/upb-clang16.patch
|
||||
new file mode 100644
|
||||
index 0000000000..b799737fac
|
||||
--- /dev/null
|
||||
+++ b/upb-clang16.patch
|
||||
@@ -0,0 +1,18 @@
|
||||
+--- a/BUILD
|
||||
++++ b/BUILD
|
||||
+@@ -34,6 +34,7 @@
|
||||
+ "-Wextra",
|
||||
+ # "-Wshorten-64-to-32", # not in GCC (and my Kokoro images doesn't have Clang)
|
||||
+ "-Werror",
|
||||
++ "-Wno-gnu-offsetof-extensions",
|
||||
+ "-Wno-long-long",
|
||||
+ # copybara:strip_end
|
||||
+ ]
|
||||
+@@ -42,6 +43,7 @@
|
||||
+ # copybara:strip_for_google3_begin
|
||||
+ "-pedantic",
|
||||
+ "-Werror=pedantic",
|
||||
++ "-Wno-gnu-offsetof-extensions",
|
||||
+ "-Wstrict-prototypes",
|
||||
+ # copybara:strip_end
|
||||
+ ]
|
||||
|
@ -166,6 +166,8 @@ stdenv.mkDerivation rec {
|
||||
inherit src;
|
||||
inherit sourceRoot;
|
||||
patches = [
|
||||
./upb-clang16.patch
|
||||
|
||||
# On Darwin, the last argument to gcc is coming up as an empty string. i.e: ''
|
||||
# This is breaking the build of any C target. This patch removes the last
|
||||
# argument if it's found to be an empty string.
|
||||
@ -364,6 +366,8 @@ stdenv.mkDerivation rec {
|
||||
# libcxx includes aren't added by libcxx hook
|
||||
# https://github.com/NixOS/nixpkgs/pull/41589
|
||||
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -isystem ${lib.getDev libcxx}/include/c++/v1"
|
||||
# for CLang 16 compatibility in external/{absl,upb} dependencies and in execlog
|
||||
export NIX_CFLAGS_COMPILE+=" -Wno-deprecated-builtins -Wno-gnu-offsetof-extensions -Wno-implicit-function-declaration"
|
||||
|
||||
# don't use system installed Xcode to run clang, use Nix clang instead
|
||||
sed -i -E "s;/usr/bin/xcrun (--sdk macosx )?clang;${stdenv.cc}/bin/clang $NIX_CFLAGS_COMPILE $(bazelLinkFlags) -framework CoreFoundation;g" \
|
||||
|
@ -0,0 +1,83 @@
|
||||
diff --git a/distdir_deps.bzl b/distdir_deps.bzl
|
||||
index 9068f50537..b3f45e8653 100644
|
||||
--- a/distdir_deps.bzl
|
||||
+++ b/distdir_deps.bzl
|
||||
@@ -110,6 +110,8 @@ DIST_DEPS = {
|
||||
"protocolbuffers": {
|
||||
"archive": "2de300726a1ba2de9a468468dc5ff9ed17a3215f.tar.gz",
|
||||
"sha256": "6a5f67874af66b239b709c572ac1a5a00fdb1b29beaf13c3e6f79b1ba10dc7c4",
|
||||
+ "patches": ["//:upb-clang16.patch"],
|
||||
+ "patch_args": ["-p1"],
|
||||
"urls": [
|
||||
"https://mirror.bazel.build/github.com/protocolbuffers/upb/archive/2de300726a1ba2de9a468468dc5ff9ed17a3215f.tar.gz",
|
||||
"https://github.com/protocolbuffers/upb/archive/2de300726a1ba2de9a468468dc5ff9ed17a3215f.tar.gz",
|
||||
@@ -131,6 +133,7 @@ DIST_DEPS = {
|
||||
"patches": [
|
||||
"//third_party/grpc:grpc_1.41.0.patch",
|
||||
"//third_party/grpc:grpc_1.41.0.win_arm64.patch",
|
||||
+ "//:grpc-upb-clang16.patch",
|
||||
],
|
||||
"used_in": [
|
||||
"additional_distfiles",
|
||||
diff --git a/grpc-upb-clang16.patch b/grpc-upb-clang16.patch
|
||||
new file mode 100644
|
||||
index 0000000000..69194099db
|
||||
--- /dev/null
|
||||
+++ b/grpc-upb-clang16.patch
|
||||
@@ -0,0 +1,13 @@
|
||||
+diff -r -u a/bazel/grpc_deps.bzl b/bazel/grpc_deps.bzl
|
||||
+--- a/bazel/grpc_deps.bzl
|
||||
++++ b/bazel/grpc_deps.bzl
|
||||
+@@ -340,6 +340,8 @@
|
||||
+ name = "upb",
|
||||
+ sha256 = "6a5f67874af66b239b709c572ac1a5a00fdb1b29beaf13c3e6f79b1ba10dc7c4",
|
||||
+ strip_prefix = "upb-2de300726a1ba2de9a468468dc5ff9ed17a3215f",
|
||||
++ patches = ["//:upb-clang16.patch"],
|
||||
++ patch_args = ["-p1"],
|
||||
+ urls = [
|
||||
+ "https://storage.googleapis.com/grpc-bazel-mirror/github.com/protocolbuffers/upb/archive/2de300726a1ba2de9a468468dc5ff9ed17a3215f.tar.gz",
|
||||
+ "https://github.com/protocolbuffers/upb/archive/2de300726a1ba2de9a468468dc5ff9ed17a3215f.tar.gz",
|
||||
+
|
||||
+diff -r -u a/third_party/upb/bazel/build_defs.bzl b/third_party/upb/bazel/build_defs.bzl
|
||||
+--- a/third_party/upb/bazel/build_defs.bzl 2021-09-25 04:33:41.000000000 +0200
|
||||
++++ b/third_party/upb/bazel/build_defs.bzl 2023-11-22 22:27:39.421459688 +0100
|
||||
+@@ -34,6 +34,7 @@
|
||||
+ "-Wextra",
|
||||
+ # "-Wshorten-64-to-32", # not in GCC (and my Kokoro images doesn't have Clang)
|
||||
+ "-Werror",
|
||||
++ "-Wno-gnu-offsetof-extensions",
|
||||
+ "-Wno-long-long",
|
||||
+ # copybara:strip_end
|
||||
+ ],
|
||||
+@@ -48,6 +49,7 @@
|
||||
+ "-pedantic",
|
||||
+ "-Werror=pedantic",
|
||||
+ "-Wall",
|
||||
++ "-Wno-gnu-offsetof-extensions",
|
||||
+ "-Wstrict-prototypes",
|
||||
+ # GCC (at least) emits spurious warnings for this that cannot be fixed
|
||||
+ # without introducing redundant initialization (with runtime cost):
|
||||
diff --git a/upb-clang16.patch b/upb-clang16.patch
|
||||
new file mode 100644
|
||||
index 0000000000..f81855181f
|
||||
--- /dev/null
|
||||
+++ upb-clang16.patch
|
||||
@@ -0,0 +1,18 @@
|
||||
+--- a/bazel/build_defs.bzl
|
||||
++++ b/bazel/build_defs.bzl
|
||||
+@@ -34,6 +34,7 @@
|
||||
+ "-Wextra",
|
||||
+ # "-Wshorten-64-to-32", # not in GCC (and my Kokoro images doesn't have Clang)
|
||||
+ "-Werror",
|
||||
++ "-Wno-gnu-offsetof-extensions",
|
||||
+ "-Wno-long-long",
|
||||
+ # copybara:strip_end
|
||||
+ ],
|
||||
+@@ -48,6 +49,7 @@
|
||||
+ "-pedantic",
|
||||
+ "-Werror=pedantic",
|
||||
+ "-Wall",
|
||||
++ "-Wno-gnu-offsetof-extensions",
|
||||
+ "-Wstrict-prototypes",
|
||||
+ # GCC (at least) emits spurious warnings for this that cannot be fixed
|
||||
+ # without introducing redundant initialization (with runtime cost):
|
@ -18,13 +18,13 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "skopeo";
|
||||
version = "1.13.3";
|
||||
version = "1.14.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
owner = "containers";
|
||||
repo = "skopeo";
|
||||
hash = "sha256-FTPBeq/WbrYDEmS1fR8rzDBHBsjdyMHcm+tCxXtYUPg=";
|
||||
hash = "sha256-6PSxYM6u727vHf4FP0ju0TAuqj4R4bxQEdyZHvC4qBA=";
|
||||
};
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
@ -14,16 +14,16 @@
|
||||
let
|
||||
|
||||
pname = "hplip";
|
||||
version = "3.23.3";
|
||||
version = "3.23.8";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://sourceforge/hplip/${pname}-${version}.tar.gz";
|
||||
sha256 = "sha256-5CYKmKKx2I0h6CVi3kGaohyVvJ4qzjWDNGqA/SF+B7Y=";
|
||||
hash = "sha256-98wF9ijAz9dQ5UrkFDHB390p6XaC8YtcW6XLLFtLG0Y=";
|
||||
};
|
||||
|
||||
plugin = fetchurl {
|
||||
url = "https://developers.hp.com/sites/default/files/${pname}-${version}-plugin.run";
|
||||
sha256 = "sha256-AyZBiF1B42dGnJeoJLFSCGNK83c86ZAM2uFciuv2H4A=";
|
||||
hash = "sha256-frsgye3f0M3HE2trKRlfFvMnDEwe+z74IumCdVPrcSY=";
|
||||
};
|
||||
|
||||
hplipState = substituteAll {
|
||||
@ -283,6 +283,6 @@ python3Packages.buildPythonApplication {
|
||||
then licenses.unfree
|
||||
else with licenses; [ mit bsd2 gpl2Plus ];
|
||||
platforms = [ "i686-linux" "x86_64-linux" "armv6l-linux" "armv7l-linux" "aarch64-linux" ];
|
||||
maintainers = with maintainers; [ ttuegel ];
|
||||
maintainers = with maintainers; [ ttuegel arthsmn ];
|
||||
};
|
||||
}
|
||||
|
49
pkgs/os-specific/linux/zfs/2_1.nix
Normal file
49
pkgs/os-specific/linux/zfs/2_1.nix
Normal file
@ -0,0 +1,49 @@
|
||||
{ callPackage
|
||||
, kernel ? null
|
||||
, stdenv
|
||||
, linuxKernel
|
||||
, removeLinuxDRM ? false
|
||||
, lib
|
||||
, nixosTests
|
||||
, fetchpatch
|
||||
, ...
|
||||
} @ args:
|
||||
|
||||
let
|
||||
stdenv' = if kernel == null then stdenv else kernel.stdenv;
|
||||
in
|
||||
callPackage ./generic.nix args {
|
||||
# You have to ensure that in `pkgs/top-level/linux-kernels.nix`
|
||||
# this attribute is the correct one for this package.
|
||||
kernelModuleAttribute = "zfs_2_1";
|
||||
# check the release notes for compatible kernels
|
||||
kernelCompatible =
|
||||
if stdenv'.isx86_64 || removeLinuxDRM
|
||||
then kernel.kernelOlder "6.6"
|
||||
else kernel.kernelOlder "6.2";
|
||||
|
||||
latestCompatibleLinuxPackages = if stdenv'.isx86_64 || removeLinuxDRM
|
||||
then linuxKernel.packages.linux_6_5
|
||||
else linuxKernel.packages.linux_6_1;
|
||||
|
||||
# This is a fixed version to the 2.1.x series, move only
|
||||
# if the 2.1.x series moves.
|
||||
version = "2.1.13";
|
||||
|
||||
extraPatches = [
|
||||
(fetchpatch {
|
||||
# https://github.com/openzfs/zfs/pull/15571
|
||||
# Remove when it's backported to 2.1.x.
|
||||
url = "https://github.com/robn/zfs/commit/617c990a4cf1157b0f8332f35672846ad16ca70a.patch";
|
||||
hash = "sha256-j5YSrud7BaWk2npBl31qwFFLYltbut3CUjI1cjZOpag=";
|
||||
})
|
||||
];
|
||||
|
||||
hash = "sha256-tqUCn/Hf/eEmyWRQthWQdmTJK2sDspnHiiEfn9rz2Kc=";
|
||||
|
||||
tests = [
|
||||
nixosTests.zfs.series_2_1
|
||||
];
|
||||
|
||||
maintainers = [ lib.maintainers.raitobezarius ];
|
||||
}
|
@ -1,222 +1,243 @@
|
||||
{ pkgs, lib, stdenv, fetchFromGitHub, fetchpatch
|
||||
, autoreconfHook269, util-linux, nukeReferences, coreutils
|
||||
, perl, nixosTests
|
||||
, configFile ? "all"
|
||||
|
||||
# Userspace dependencies
|
||||
, zlib, libuuid, python3, attr, openssl
|
||||
, libtirpc
|
||||
, nfs-utils, samba
|
||||
, gawk, gnugrep, gnused, systemd
|
||||
, smartmontools, enableMail ? false
|
||||
, sysstat, pkg-config
|
||||
, curl
|
||||
, pam
|
||||
|
||||
# Kernel dependencies
|
||||
, kernel ? null
|
||||
, enablePython ? true
|
||||
, ...
|
||||
}:
|
||||
|
||||
{ version
|
||||
, sha256
|
||||
, extraPatches ? []
|
||||
, rev ? "zfs-${version}"
|
||||
, isUnstable ? false
|
||||
, latestCompatibleLinuxPackages
|
||||
, kernelCompatible ? null
|
||||
}:
|
||||
|
||||
let
|
||||
inherit (lib) any optionalString optionals optional makeBinPath;
|
||||
genericBuild =
|
||||
{ pkgs, lib, stdenv, fetchFromGitHub, fetchpatch
|
||||
, autoreconfHook269, util-linux, nukeReferences, coreutils
|
||||
, perl
|
||||
, configFile ? "all"
|
||||
|
||||
smartmon = smartmontools.override { inherit enableMail; };
|
||||
# Userspace dependencies
|
||||
, zlib, libuuid, python3, attr, openssl
|
||||
, libtirpc
|
||||
, nfs-utils, samba
|
||||
, gawk, gnugrep, gnused, systemd
|
||||
, smartmontools, enableMail ? false
|
||||
, sysstat, pkg-config
|
||||
, curl
|
||||
, pam
|
||||
|
||||
buildKernel = any (n: n == configFile) [ "kernel" "all" ];
|
||||
buildUser = any (n: n == configFile) [ "user" "all" ];
|
||||
# Kernel dependencies
|
||||
, kernel ? null
|
||||
, enablePython ? true
|
||||
, ...
|
||||
}@outerArgs:
|
||||
|
||||
# XXX: You always want to build kernel modules with the same stdenv as the
|
||||
# kernel was built with. However, since zfs can also be built for userspace we
|
||||
# need to correctly pick between the provided/default stdenv, and the one used
|
||||
# by the kernel.
|
||||
# If you don't do this your ZFS builds will fail on any non-standard (e.g.
|
||||
# clang-built) kernels.
|
||||
stdenv' = if kernel == null then stdenv else kernel.stdenv;
|
||||
in
|
||||
assert (configFile == "kernel") -> (kernel != null);
|
||||
{ version
|
||||
, hash
|
||||
, kernelModuleAttribute
|
||||
, extraPatches ? []
|
||||
, rev ? "zfs-${version}"
|
||||
, isUnstable ? false
|
||||
, latestCompatibleLinuxPackages
|
||||
, kernelCompatible ? null
|
||||
, maintainers ? (with lib.maintainers; [ amarshall adamcstephens ])
|
||||
, tests
|
||||
}@innerArgs:
|
||||
|
||||
stdenv'.mkDerivation {
|
||||
name = "zfs-${configFile}-${version}${optionalString buildKernel "-${kernel.version}"}";
|
||||
let
|
||||
inherit (lib) any optionalString optionals optional makeBinPath versionAtLeast;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "openzfs";
|
||||
repo = "zfs";
|
||||
inherit rev sha256;
|
||||
};
|
||||
smartmon = smartmontools.override { inherit enableMail; };
|
||||
|
||||
patches = extraPatches;
|
||||
buildKernel = any (n: n == configFile) [ "kernel" "all" ];
|
||||
buildUser = any (n: n == configFile) [ "user" "all" ];
|
||||
isAtLeast22Series = versionAtLeast version "2.2.0";
|
||||
|
||||
postPatch = optionalString buildKernel ''
|
||||
patchShebangs scripts
|
||||
# The arrays must remain the same length, so we repeat a flag that is
|
||||
# already part of the command and therefore has no effect.
|
||||
substituteInPlace ./module/os/linux/zfs/zfs_ctldir.c \
|
||||
--replace '"/usr/bin/env", "umount"' '"${util-linux}/bin/umount", "-n"' \
|
||||
--replace '"/usr/bin/env", "mount"' '"${util-linux}/bin/mount", "-n"'
|
||||
'' + optionalString buildUser ''
|
||||
substituteInPlace ./lib/libshare/os/linux/nfs.c --replace "/usr/sbin/exportfs" "${
|
||||
# We don't *need* python support, but we set it like this to minimize closure size:
|
||||
# If it's disabled by default, no need to enable it, even if we have python enabled
|
||||
# And if it's enabled by default, only change that if we explicitly disable python to remove python from the closure
|
||||
nfs-utils.override (old: { enablePython = old.enablePython or true && enablePython; })
|
||||
}/bin/exportfs"
|
||||
substituteInPlace ./lib/libshare/smb.h --replace "/usr/bin/net" "${samba}/bin/net"
|
||||
# Disable dynamic loading of libcurl
|
||||
substituteInPlace ./config/user-libfetch.m4 --replace "curl-config --built-shared" "true"
|
||||
substituteInPlace ./config/user-systemd.m4 --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
|
||||
substituteInPlace ./config/zfs-build.m4 --replace "\$sysconfdir/init.d" "$out/etc/init.d" \
|
||||
--replace "/etc/default" "$out/etc/default"
|
||||
substituteInPlace ./contrib/initramfs/Makefile.am \
|
||||
--replace "/usr/share/initramfs-tools" "$out/usr/share/initramfs-tools"
|
||||
substituteInPlace ./udev/vdev_id \
|
||||
--replace "PATH=/bin:/sbin:/usr/bin:/usr/sbin" \
|
||||
"PATH=${makeBinPath [ coreutils gawk gnused gnugrep systemd ]}"
|
||||
substituteInPlace ./config/zfs-build.m4 \
|
||||
--replace "bashcompletiondir=/etc/bash_completion.d" \
|
||||
"bashcompletiondir=$out/share/bash-completion/completions"
|
||||
'';
|
||||
# XXX: You always want to build kernel modules with the same stdenv as the
|
||||
# kernel was built with. However, since zfs can also be built for userspace we
|
||||
# need to correctly pick between the provided/default stdenv, and the one used
|
||||
# by the kernel.
|
||||
# If you don't do this your ZFS builds will fail on any non-standard (e.g.
|
||||
# clang-built) kernels.
|
||||
stdenv' = if kernel == null then stdenv else kernel.stdenv;
|
||||
in
|
||||
|
||||
nativeBuildInputs = [ autoreconfHook269 nukeReferences ]
|
||||
++ optionals buildKernel (kernel.moduleBuildDependencies ++ [ perl ])
|
||||
++ optional buildUser pkg-config;
|
||||
buildInputs = optionals buildUser [ zlib libuuid attr libtirpc pam ]
|
||||
++ optional buildUser openssl
|
||||
++ optional buildUser curl
|
||||
++ optional (buildUser && enablePython) python3;
|
||||
stdenv'.mkDerivation {
|
||||
name = "zfs-${configFile}-${version}${optionalString buildKernel "-${kernel.version}"}";
|
||||
pname = "zfs";
|
||||
inherit version;
|
||||
|
||||
# for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
|
||||
NIX_CFLAGS_LINK = "-lgcc_s";
|
||||
src = fetchFromGitHub {
|
||||
owner = "openzfs";
|
||||
repo = "zfs";
|
||||
inherit rev hash;
|
||||
};
|
||||
|
||||
hardeningDisable = [ "fortify" "stackprotector" "pic" ];
|
||||
patches = extraPatches;
|
||||
|
||||
configureFlags = [
|
||||
"--with-config=${configFile}"
|
||||
"--with-tirpc=1"
|
||||
(lib.withFeatureAs (buildUser && enablePython) "python" python3.interpreter)
|
||||
] ++ optionals buildUser [
|
||||
"--with-dracutdir=$(out)/lib/dracut"
|
||||
"--with-udevdir=$(out)/lib/udev"
|
||||
"--with-systemdunitdir=$(out)/etc/systemd/system"
|
||||
"--with-systemdpresetdir=$(out)/etc/systemd/system-preset"
|
||||
"--with-systemdgeneratordir=$(out)/lib/systemd/system-generator"
|
||||
"--with-mounthelperdir=$(out)/bin"
|
||||
"--libexecdir=$(out)/libexec"
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
"--enable-systemd"
|
||||
"--enable-pam"
|
||||
] ++ optionals buildKernel ([
|
||||
"--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
|
||||
"--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||
] ++ kernel.makeFlags);
|
||||
postPatch = optionalString buildKernel ''
|
||||
patchShebangs scripts
|
||||
# The arrays must remain the same length, so we repeat a flag that is
|
||||
# already part of the command and therefore has no effect.
|
||||
substituteInPlace ./module/os/linux/zfs/zfs_ctldir.c \
|
||||
--replace '"/usr/bin/env", "umount"' '"${util-linux}/bin/umount", "-n"' \
|
||||
--replace '"/usr/bin/env", "mount"' '"${util-linux}/bin/mount", "-n"'
|
||||
'' + optionalString buildUser ''
|
||||
substituteInPlace ./lib/libshare/os/linux/nfs.c --replace "/usr/sbin/exportfs" "${
|
||||
# We don't *need* python support, but we set it like this to minimize closure size:
|
||||
# If it's disabled by default, no need to enable it, even if we have python enabled
|
||||
# And if it's enabled by default, only change that if we explicitly disable python to remove python from the closure
|
||||
nfs-utils.override (old: { enablePython = old.enablePython or true && enablePython; })
|
||||
}/bin/exportfs"
|
||||
substituteInPlace ./lib/libshare/smb.h --replace "/usr/bin/net" "${samba}/bin/net"
|
||||
# Disable dynamic loading of libcurl
|
||||
substituteInPlace ./config/user-libfetch.m4 --replace "curl-config --built-shared" "true"
|
||||
substituteInPlace ./config/user-systemd.m4 --replace "/usr/lib/modules-load.d" "$out/etc/modules-load.d"
|
||||
substituteInPlace ./config/zfs-build.m4 --replace "\$sysconfdir/init.d" "$out/etc/init.d" \
|
||||
--replace "/etc/default" "$out/etc/default"
|
||||
substituteInPlace ./contrib/initramfs/Makefile.am \
|
||||
--replace "/usr/share/initramfs-tools" "$out/usr/share/initramfs-tools"
|
||||
'' + optionalString isAtLeast22Series ''
|
||||
substituteInPlace ./udev/vdev_id \
|
||||
--replace "PATH=/bin:/sbin:/usr/bin:/usr/sbin" \
|
||||
"PATH=${makeBinPath [ coreutils gawk gnused gnugrep systemd ]}"
|
||||
'' + optionalString (!isAtLeast22Series) ''
|
||||
substituteInPlace ./etc/zfs/Makefile.am --replace "\$(sysconfdir)/zfs" "$out/etc/zfs"
|
||||
|
||||
makeFlags = optionals buildKernel kernel.makeFlags;
|
||||
find ./contrib/initramfs -name Makefile.am -exec sed -i -e 's|/usr/share/initramfs-tools|'$out'/share/initramfs-tools|g' {} \;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
installFlags = [
|
||||
"sysconfdir=\${out}/etc"
|
||||
"DEFAULT_INITCONF_DIR=\${out}/default"
|
||||
"INSTALL_MOD_PATH=\${out}"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# The kernel module builds some tests during the configurePhase, this envvar controls their parallelism
|
||||
export TEST_JOBS=$NIX_BUILD_CORES
|
||||
if [ -z "$enableParallelBuilding" ]; then
|
||||
export TEST_JOBS=1
|
||||
fi
|
||||
'';
|
||||
|
||||
# Enabling BTF causes zfs to be build with debug symbols.
|
||||
# Since zfs compress kernel modules on installation, our strip hooks skip stripping them.
|
||||
# Hence we strip modules prior to compression.
|
||||
postBuild = optionalString buildKernel ''
|
||||
find . -name "*.ko" -print0 | xargs -0 -P$NIX_BUILD_CORES ${stdenv.cc.targetPrefix}strip --strip-debug
|
||||
'';
|
||||
|
||||
postInstall = optionalString buildKernel ''
|
||||
# Add reference that cannot be detected due to compressed kernel module
|
||||
mkdir -p "$out/nix-support"
|
||||
echo "${util-linux}" >> "$out/nix-support/extra-refs"
|
||||
'' + optionalString buildUser ''
|
||||
# Remove provided services as they are buggy
|
||||
rm $out/etc/systemd/system/zfs-import-*.service
|
||||
|
||||
for i in $out/etc/systemd/system/*; do
|
||||
if [ -L $i ]; then
|
||||
continue
|
||||
fi
|
||||
sed -i '/zfs-import-scan.service/d' $i
|
||||
substituteInPlace $i --replace "zfs-import-cache.service" "zfs-import.target"
|
||||
done
|
||||
|
||||
# Remove tests because they add a runtime dependency on gcc
|
||||
rm -rf $out/share/zfs/zfs-tests
|
||||
|
||||
# Add Bash completions.
|
||||
install -v -m444 -D -t $out/share/bash-completion/completions contrib/bash_completion.d/zfs
|
||||
(cd $out/share/bash-completion/completions; ln -s zfs zpool)
|
||||
'';
|
||||
|
||||
postFixup = let
|
||||
path = "PATH=${makeBinPath [ coreutils gawk gnused gnugrep util-linux smartmon sysstat ]}:$PATH";
|
||||
in ''
|
||||
for i in $out/libexec/zfs/zpool.d/*; do
|
||||
sed -i '2i${path}' $i
|
||||
done
|
||||
'';
|
||||
|
||||
outputs = [ "out" ] ++ optionals buildUser [ "dev" ];
|
||||
|
||||
passthru = {
|
||||
inherit enableMail latestCompatibleLinuxPackages;
|
||||
|
||||
tests =
|
||||
if isUnstable then [
|
||||
nixosTests.zfs.unstable
|
||||
] else [
|
||||
nixosTests.zfs.installer
|
||||
nixosTests.zfs.stable
|
||||
];
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "ZFS Filesystem Linux Kernel module";
|
||||
longDescription = ''
|
||||
ZFS is a filesystem that combines a logical volume manager with a
|
||||
Copy-On-Write filesystem with data integrity detection and repair,
|
||||
snapshotting, cloning, block devices, deduplication, and more.
|
||||
substituteInPlace ./cmd/vdev_id/vdev_id \
|
||||
--replace "PATH=/bin:/sbin:/usr/bin:/usr/sbin" \
|
||||
"PATH=${makeBinPath [ coreutils gawk gnused gnugrep systemd ]}"
|
||||
'' + ''
|
||||
substituteInPlace ./config/zfs-build.m4 \
|
||||
--replace "bashcompletiondir=/etc/bash_completion.d" \
|
||||
"bashcompletiondir=$out/share/bash-completion/completions"
|
||||
'';
|
||||
homepage = "https://github.com/openzfs/zfs";
|
||||
changelog = "https://github.com/openzfs/zfs/releases/tag/zfs-${version}";
|
||||
license = lib.licenses.cddl;
|
||||
|
||||
# The case-block for TARGET_CPU has branches for only some CPU families,
|
||||
# which prevents ZFS from building on any other platform. Since the NixOS
|
||||
# `boot.zfs.enabled` property is `readOnly`, excluding platforms where ZFS
|
||||
# does not build is the only way to produce a NixOS installer on such
|
||||
# platforms.
|
||||
# https://github.com/openzfs/zfs/blob/6723d1110f6daf93be93db74d5ea9f6b64c9bce5/config/always-arch.m4#L12
|
||||
platforms =
|
||||
with lib.systems.inspect.patterns;
|
||||
map (p: p // isLinux) ([ isx86_32 isx86_64 isPower isAarch64 isSparc ] ++ isArmv7);
|
||||
nativeBuildInputs = [ autoreconfHook269 nukeReferences ]
|
||||
++ optionals buildKernel (kernel.moduleBuildDependencies ++ [ perl ])
|
||||
++ optional buildUser pkg-config;
|
||||
buildInputs = optionals buildUser [ zlib libuuid attr libtirpc pam ]
|
||||
++ optional buildUser openssl
|
||||
++ optional buildUser curl
|
||||
++ optional (buildUser && enablePython) python3;
|
||||
|
||||
maintainers = with lib.maintainers; [ jcumming jonringer globin raitobezarius ];
|
||||
mainProgram = "zfs";
|
||||
# If your Linux kernel version is not yet supported by zfs, try zfsUnstable.
|
||||
# On NixOS set the option boot.zfs.enableUnstable.
|
||||
broken = buildKernel && (kernelCompatible != null) && !kernelCompatible;
|
||||
# for zdb to get the rpath to libgcc_s, needed for pthread_cancel to work
|
||||
NIX_CFLAGS_LINK = "-lgcc_s";
|
||||
|
||||
hardeningDisable = [ "fortify" "stackprotector" "pic" ];
|
||||
|
||||
configureFlags = [
|
||||
"--with-config=${configFile}"
|
||||
"--with-tirpc=1"
|
||||
(lib.withFeatureAs (buildUser && enablePython) "python" python3.interpreter)
|
||||
] ++ optionals buildUser [
|
||||
"--with-dracutdir=$(out)/lib/dracut"
|
||||
"--with-udevdir=$(out)/lib/udev"
|
||||
"--with-systemdunitdir=$(out)/etc/systemd/system"
|
||||
"--with-systemdpresetdir=$(out)/etc/systemd/system-preset"
|
||||
"--with-systemdgeneratordir=$(out)/lib/systemd/system-generator"
|
||||
"--with-mounthelperdir=$(out)/bin"
|
||||
"--libexecdir=$(out)/libexec"
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
"--enable-systemd"
|
||||
"--enable-pam"
|
||||
] ++ optionals buildKernel ([
|
||||
"--with-linux=${kernel.dev}/lib/modules/${kernel.modDirVersion}/source"
|
||||
"--with-linux-obj=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
|
||||
] ++ kernel.makeFlags);
|
||||
|
||||
makeFlags = optionals buildKernel kernel.makeFlags;
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
installFlags = [
|
||||
"sysconfdir=\${out}/etc"
|
||||
"DEFAULT_INITCONF_DIR=\${out}/default"
|
||||
"INSTALL_MOD_PATH=\${out}"
|
||||
];
|
||||
|
||||
preConfigure = ''
|
||||
# The kernel module builds some tests during the configurePhase, this envvar controls their parallelism
|
||||
export TEST_JOBS=$NIX_BUILD_CORES
|
||||
if [ -z "$enableParallelBuilding" ]; then
|
||||
export TEST_JOBS=1
|
||||
fi
|
||||
'';
|
||||
|
||||
# Enabling BTF causes zfs to be build with debug symbols.
|
||||
# Since zfs compress kernel modules on installation, our strip hooks skip stripping them.
|
||||
# Hence we strip modules prior to compression.
|
||||
postBuild = optionalString buildKernel ''
|
||||
find . -name "*.ko" -print0 | xargs -0 -P$NIX_BUILD_CORES ${stdenv.cc.targetPrefix}strip --strip-debug
|
||||
'';
|
||||
|
||||
postInstall = optionalString buildKernel ''
|
||||
# Add reference that cannot be detected due to compressed kernel module
|
||||
mkdir -p "$out/nix-support"
|
||||
echo "${util-linux}" >> "$out/nix-support/extra-refs"
|
||||
'' + optionalString buildUser ''
|
||||
# Remove provided services as they are buggy
|
||||
rm $out/etc/systemd/system/zfs-import-*.service
|
||||
|
||||
for i in $out/etc/systemd/system/*; do
|
||||
if [ -L $i ]; then
|
||||
continue
|
||||
fi
|
||||
sed -i '/zfs-import-scan.service/d' $i
|
||||
substituteInPlace $i --replace "zfs-import-cache.service" "zfs-import.target"
|
||||
done
|
||||
|
||||
# Remove tests because they add a runtime dependency on gcc
|
||||
rm -rf $out/share/zfs/zfs-tests
|
||||
|
||||
# Add Bash completions.
|
||||
install -v -m444 -D -t $out/share/bash-completion/completions contrib/bash_completion.d/zfs
|
||||
(cd $out/share/bash-completion/completions; ln -s zfs zpool)
|
||||
'';
|
||||
|
||||
postFixup = let
|
||||
path = "PATH=${makeBinPath [ coreutils gawk gnused gnugrep util-linux smartmon sysstat ]}:$PATH";
|
||||
in ''
|
||||
for i in $out/libexec/zfs/zpool.d/*; do
|
||||
sed -i '2i${path}' $i
|
||||
done
|
||||
'';
|
||||
|
||||
outputs = [ "out" ] ++ optionals buildUser [ "dev" ];
|
||||
|
||||
passthru = {
|
||||
inherit enableMail latestCompatibleLinuxPackages kernelModuleAttribute;
|
||||
# The corresponding userspace tools to this instantiation
|
||||
# of the ZFS package set.
|
||||
userspaceTools = genericBuild (outerArgs // {
|
||||
configFile = "user";
|
||||
}) innerArgs;
|
||||
|
||||
inherit tests;
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "ZFS Filesystem Linux" + (if buildUser then " Userspace Tools" else " Kernel Module");
|
||||
longDescription = ''
|
||||
ZFS is a filesystem that combines a logical volume manager with a
|
||||
Copy-On-Write filesystem with data integrity detection and repair,
|
||||
snapshotting, cloning, block devices, deduplication, and more.
|
||||
|
||||
${if buildUser then "This is the userspace tools package." else "This is the kernel module package."}
|
||||
'';
|
||||
homepage = "https://github.com/openzfs/zfs";
|
||||
changelog = "https://github.com/openzfs/zfs/releases/tag/zfs-${version}";
|
||||
license = lib.licenses.cddl;
|
||||
|
||||
# The case-block for TARGET_CPU has branches for only some CPU families,
|
||||
# which prevents ZFS from building on any other platform. Since the NixOS
|
||||
# `boot.zfs.enabled` property is `readOnly`, excluding platforms where ZFS
|
||||
# does not build is the only way to produce a NixOS installer on such
|
||||
# platforms.
|
||||
# https://github.com/openzfs/zfs/blob/6723d1110f6daf93be93db74d5ea9f6b64c9bce5/config/always-arch.m4#L12
|
||||
platforms =
|
||||
with lib.systems.inspect.patterns;
|
||||
map (p: p // isLinux) ([ isx86_32 isx86_64 isPower isAarch64 isSparc ] ++ isArmv7);
|
||||
|
||||
inherit maintainers;
|
||||
mainProgram = "zfs";
|
||||
# If your Linux kernel version is not yet supported by zfs, try zfsUnstable.
|
||||
# On NixOS set the option boot.zfs.enableUnstable.
|
||||
broken = buildKernel && (kernelCompatible != null) && !kernelCompatible;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
in
|
||||
genericBuild
|
||||
|
@ -4,6 +4,7 @@
|
||||
, linuxKernel
|
||||
, removeLinuxDRM ? false
|
||||
, fetchpatch
|
||||
, nixosTests
|
||||
, ...
|
||||
} @ args:
|
||||
|
||||
@ -11,6 +12,9 @@ let
|
||||
stdenv' = if kernel == null then stdenv else kernel.stdenv;
|
||||
in
|
||||
callPackage ./generic.nix args {
|
||||
# You have to ensure that in `pkgs/top-level/linux-kernels.nix`
|
||||
# this attribute is the correct one for this package.
|
||||
kernelModuleAttribute = "zfs";
|
||||
# check the release notes for compatible kernels
|
||||
kernelCompatible =
|
||||
if stdenv'.isx86_64 || removeLinuxDRM
|
||||
@ -24,5 +28,10 @@ callPackage ./generic.nix args {
|
||||
# this package should point to the latest release.
|
||||
version = "2.2.0";
|
||||
|
||||
sha256 = "sha256-s1sdXSrLu6uSOmjprbUa4cFsE2Vj7JX5i75e4vRnlvg=";
|
||||
tests = [
|
||||
nixosTests.zfs.installer
|
||||
nixosTests.zfs.stable
|
||||
];
|
||||
|
||||
hash = "sha256-s1sdXSrLu6uSOmjprbUa4cFsE2Vj7JX5i75e4vRnlvg=";
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
, stdenv
|
||||
, linuxKernel
|
||||
, removeLinuxDRM ? false
|
||||
, nixosTests
|
||||
, ...
|
||||
} @ args:
|
||||
|
||||
@ -10,6 +11,9 @@ let
|
||||
stdenv' = if kernel == null then stdenv else kernel.stdenv;
|
||||
in
|
||||
callPackage ./generic.nix args {
|
||||
# You have to ensure that in `pkgs/top-level/linux-kernels.nix`
|
||||
# this attribute is the correct one for this package.
|
||||
kernelModuleAttribute = "zfsUnstable";
|
||||
# check the release notes for compatible kernels
|
||||
kernelCompatible = if stdenv'.isx86_64 || removeLinuxDRM
|
||||
then kernel.kernelOlder "6.6"
|
||||
@ -26,7 +30,10 @@ callPackage ./generic.nix args {
|
||||
version = "2.2.1-unstable-2023-10-21";
|
||||
rev = "95785196f26e92d82cf4445654ba84e4a9671c57";
|
||||
|
||||
sha256 = "sha256-s1sdXSrLu6uSOmjprbUa4cFsE2Vj7JX5i75e4vRnlvg=";
|
||||
hash = "sha256-s1sdXSrLu6uSOmjprbUa4cFsE2Vj7JX5i75e4vRnlvg=";
|
||||
|
||||
isUnstable = true;
|
||||
tests = [
|
||||
nixosTests.zfs.unstable
|
||||
];
|
||||
}
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ lib, buildGo121Module, fetchFromGitHub, installShellFiles, nixosTests }:
|
||||
{ lib, buildGo121Module, fetchFromGitHub, fetchpatch, installShellFiles, nixosTests }:
|
||||
|
||||
let
|
||||
pname = "miniflux";
|
||||
@ -14,6 +14,15 @@ in buildGo121Module {
|
||||
sha256 = "sha256-+oNF/Zwc1Z/cu3SQC/ZTekAW5Qef9RKrdszunLomGII=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
(fetchpatch {
|
||||
# https://github.com/miniflux/v2/pull/2193, remove after 2.0.50
|
||||
name = "miniflux-user-agent-regression.patch";
|
||||
url = "https://github.com/miniflux/v2/commit/7a03291442a4e35572c73a2fcfe809fa8e03063e.patch";
|
||||
hash = "sha256-tJ1l5rqD0x0xtQs+tDwpFHOY+7k6X02bkwVJo6RAdb8=";
|
||||
})
|
||||
];
|
||||
|
||||
vendorHash = "sha256-jLyjQ+w/QS9uA0pGWF2X6dEfOifcI2gC2sgi1STEzpU=";
|
||||
|
||||
nativeBuildInputs = [ installShellFiles ];
|
||||
|
@ -48,7 +48,7 @@ mkDerivation rec {
|
||||
description = "An equalizer interface for pulseaudio's equalizer sinks";
|
||||
homepage = "http://www.pulseaudio.org/";
|
||||
license = lib.licenses.lgpl2Plus;
|
||||
maintainers = with lib.maintainers; [ lovek323 mkg20001 ];
|
||||
maintainers = with lib.maintainers; [ lovek323 ];
|
||||
platforms = lib.platforms.unix;
|
||||
};
|
||||
}
|
||||
|
@ -2,17 +2,17 @@
|
||||
|
||||
buildGoModule rec {
|
||||
pname = "aliyun-cli";
|
||||
version = "3.0.184";
|
||||
version = "3.0.186";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
rev = "v${version}";
|
||||
owner = "aliyun";
|
||||
repo = pname;
|
||||
fetchSubmodules = true;
|
||||
sha256 = "sha256-VqHyTwSSBAWbeWjQc1RU5mWTqIA2CJDcL83ElaS++5E=";
|
||||
sha256 = "sha256-Uz34+Z9JH9clAFwbTn8RXxokv0yMD05lrYGexUQwmjo=";
|
||||
};
|
||||
|
||||
vendorHash = "sha256-JrzN9ycc3obxOX8NYM1cQ9AfKKPXffugCsiAxEHVBr0=";
|
||||
vendorHash = "sha256-9vrfctA1r0eheCBU0CeTgjs/JVt4CB3o3n5KVeFuaRI=";
|
||||
|
||||
subPackages = [ "main" ];
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
{ rustPlatform, lib, fetchFromGitHub, nixosTests }:
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "envfs";
|
||||
version = "1.0.1";
|
||||
version = "1.0.2";
|
||||
src = fetchFromGitHub {
|
||||
owner = "Mic92";
|
||||
repo = "envfs";
|
||||
rev = version;
|
||||
hash = "sha256-ttW1NUCtwnjAoiu7QgLGrlAB2PyY4oXm91LpWhbz8qk=";
|
||||
hash = "sha256-MfKOfI21sRNEBX+v0Wto1YhzrPu3JI7Q4AU333utGpk=";
|
||||
};
|
||||
cargoHash = "sha256-BgXKwKD6w/GraBQEq61D7S7m2Q9TnkXNFJEIgDYo9L4=";
|
||||
cargoHash = "sha256-vMXmv8p839EPLCwX6So5ebgr5Z68AqdSaLiWqDoBAt4=";
|
||||
|
||||
passthru.tests = {
|
||||
envfs = nixosTests.envfs;
|
||||
|
@ -60,6 +60,7 @@ buildGoModule rec {
|
||||
# Has a sneaky dependency on perl
|
||||
# Include first args to make sure we're patching the right thing
|
||||
substituteInPlace shell/key-bindings.bash \
|
||||
--replace "command -v perl" "command -v ${ourPerl}/bin/perl" \
|
||||
--replace " perl -n " " ${ourPerl}/bin/perl -n "
|
||||
# fzf-tmux depends on bc
|
||||
substituteInPlace bin/fzf-tmux \
|
||||
|
285
pkgs/tools/text/difftastic/Cargo.lock
generated
285
pkgs/tools/text/difftastic/Cargo.lock
generated
@ -15,9 +15,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "aho-corasick"
|
||||
version = "0.7.20"
|
||||
version = "1.1.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cc936419f96fa211c1b9166887b38e5e40b19958e5b895be7c1f93adec7071ac"
|
||||
checksum = "b2969dcb958b36655471fc61f7e416fa76033bdd4bfed0678d8fee1e2d07a1f0"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
]
|
||||
@ -28,7 +28,7 @@ version = "2.0.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d5c2ca00549910ec251e3bd15f87aeeb206c9456b9a77b43ff6c97c54042a472"
|
||||
dependencies = [
|
||||
"bstr",
|
||||
"bstr 0.2.17",
|
||||
"doc-comment",
|
||||
"predicates",
|
||||
"predicates-core",
|
||||
@ -42,7 +42,7 @@ version = "0.2.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8"
|
||||
dependencies = [
|
||||
"hermit-abi",
|
||||
"hermit-abi 0.1.19",
|
||||
"libc",
|
||||
"winapi",
|
||||
]
|
||||
@ -59,6 +59,12 @@ version = "1.3.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
|
||||
|
||||
[[package]]
|
||||
name = "bitflags"
|
||||
version = "2.4.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "327762f6e5a765692301e5bb513e0d9fef63be86bbc14528052b1cd3e6f03e07"
|
||||
|
||||
[[package]]
|
||||
name = "bstr"
|
||||
version = "0.2.17"
|
||||
@ -67,7 +73,17 @@ checksum = "ba3569f383e8f1598449f1a423e72e99569137b47740b1da11ef19af3d5c3223"
|
||||
dependencies = [
|
||||
"lazy_static",
|
||||
"memchr",
|
||||
"regex-automata",
|
||||
"regex-automata 0.1.10",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "bstr"
|
||||
version = "1.6.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6798148dccfbff0fae41c7574d2fa8f1ef3492fba0face179de5d8d447d67b05"
|
||||
dependencies = [
|
||||
"memchr",
|
||||
"serde",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -104,7 +120,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d2dbdf4bdacb33466e854ce889eee8dfd5729abf7ccd7664d0a2d60cd384440b"
|
||||
dependencies = [
|
||||
"atty",
|
||||
"bitflags",
|
||||
"bitflags 1.3.2",
|
||||
"clap_lex",
|
||||
"indexmap",
|
||||
"lazy_static",
|
||||
@ -190,11 +206,11 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "crossterm"
|
||||
version = "0.26.1"
|
||||
version = "0.27.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a84cda67535339806297f1b331d6dd6320470d2a0fe65381e79ee9e156dd3d13"
|
||||
checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"bitflags 2.4.1",
|
||||
"crossterm_winapi",
|
||||
"libc",
|
||||
"mio",
|
||||
@ -206,9 +222,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "crossterm_winapi"
|
||||
version = "0.9.0"
|
||||
version = "0.9.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2ae1b35a484aa10e07fe0638d02301c5ad24de82d310ccbd2f3693da5f09bf1c"
|
||||
checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b"
|
||||
dependencies = [
|
||||
"winapi",
|
||||
]
|
||||
@ -237,7 +253,7 @@ checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
|
||||
|
||||
[[package]]
|
||||
name = "difftastic"
|
||||
version = "0.52.0"
|
||||
version = "0.53.0"
|
||||
dependencies = [
|
||||
"assert_cmd",
|
||||
"bumpalo",
|
||||
@ -248,12 +264,15 @@ dependencies = [
|
||||
"glob",
|
||||
"hashbrown 0.12.3",
|
||||
"humansize",
|
||||
"ignore",
|
||||
"is-terminal",
|
||||
"itertools 0.11.0",
|
||||
"lazy_static",
|
||||
"libc",
|
||||
"libmimalloc-sys",
|
||||
"line-numbers",
|
||||
"log",
|
||||
"memchr",
|
||||
"mimalloc",
|
||||
"owo-colors",
|
||||
"predicates",
|
||||
@ -272,7 +291,6 @@ dependencies = [
|
||||
"typed-arena",
|
||||
"unicode-width",
|
||||
"version_check",
|
||||
"walkdir",
|
||||
"wu-diff",
|
||||
]
|
||||
|
||||
@ -290,17 +308,27 @@ checksum = "e78d4f1cc4ae33bbfc157ed5d5a5ef3bc29227303d595861deb238fcec4e9457"
|
||||
|
||||
[[package]]
|
||||
name = "env_logger"
|
||||
version = "0.7.1"
|
||||
version = "0.10.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36"
|
||||
checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0"
|
||||
dependencies = [
|
||||
"atty",
|
||||
"humantime",
|
||||
"is-terminal",
|
||||
"log",
|
||||
"regex",
|
||||
"termcolor",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "errno"
|
||||
version = "0.3.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ac3e13f66a2f95e32a39eaa81f6b95d42878ca0e1db0c7543723dfe12557e860"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"windows-sys 0.48.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "fixedbitset"
|
||||
version = "0.4.1"
|
||||
@ -339,6 +367,19 @@ version = "0.3.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
|
||||
|
||||
[[package]]
|
||||
name = "globset"
|
||||
version = "0.4.13"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d"
|
||||
dependencies = [
|
||||
"aho-corasick",
|
||||
"bstr 1.6.0",
|
||||
"fnv",
|
||||
"log",
|
||||
"regex",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "hashbrown"
|
||||
version = "0.11.2"
|
||||
@ -369,6 +410,12 @@ dependencies = [
|
||||
"libc",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "hermit-abi"
|
||||
version = "0.3.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "d77f7ec81a6d05a3abb01ab6eb7590f6083d08449fe5a1c8b1e620283546ccb7"
|
||||
|
||||
[[package]]
|
||||
name = "humansize"
|
||||
version = "2.1.3"
|
||||
@ -380,11 +427,26 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "humantime"
|
||||
version = "1.3.0"
|
||||
version = "2.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "df004cfca50ef23c36850aaaa59ad52cc70d0e90243c3c7737a4dd32dc7a3c4f"
|
||||
checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
|
||||
|
||||
[[package]]
|
||||
name = "ignore"
|
||||
version = "0.4.18"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "713f1b139373f96a2e0ce3ac931cd01ee973c3c5dd7c40c0c2efe96ad2b6751d"
|
||||
dependencies = [
|
||||
"quick-error",
|
||||
"crossbeam-utils",
|
||||
"globset",
|
||||
"lazy_static",
|
||||
"log",
|
||||
"memchr",
|
||||
"regex",
|
||||
"same-file",
|
||||
"thread_local",
|
||||
"walkdir",
|
||||
"winapi-util",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -397,6 +459,29 @@ dependencies = [
|
||||
"hashbrown 0.11.2",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "io-lifetimes"
|
||||
version = "1.0.11"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "eae7b9aee968036d54dce06cebaefd919e4472e753296daccd6d344e3e2df0c2"
|
||||
dependencies = [
|
||||
"hermit-abi 0.3.3",
|
||||
"libc",
|
||||
"windows-sys 0.48.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "is-terminal"
|
||||
version = "0.4.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f"
|
||||
dependencies = [
|
||||
"hermit-abi 0.3.3",
|
||||
"io-lifetimes",
|
||||
"rustix",
|
||||
"windows-sys 0.48.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "itertools"
|
||||
version = "0.10.3"
|
||||
@ -429,9 +514,9 @@ checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
|
||||
|
||||
[[package]]
|
||||
name = "libc"
|
||||
version = "0.2.139"
|
||||
version = "0.2.149"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "201de327520df007757c1f0adce6e827fe8562fbc28bfd9c15571c66ca1f5f79"
|
||||
checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b"
|
||||
|
||||
[[package]]
|
||||
name = "libm"
|
||||
@ -450,9 +535,15 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "line-numbers"
|
||||
version = "0.2.2"
|
||||
version = "0.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "793a75315eb63b8699158825bdea85d63eeb850e7543cb834abef3c7b5b53780"
|
||||
checksum = "7b25f5068853805faa3c19f44d0c401446e4eb3f47cc808fa331eec30f0ba35c"
|
||||
|
||||
[[package]]
|
||||
name = "linux-raw-sys"
|
||||
version = "0.3.8"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ef53942eb7bf7ff43a617b3e2c1c4a5ecf5944a7c1bc12d7ee39bbb15e5c1519"
|
||||
|
||||
[[package]]
|
||||
name = "lock_api"
|
||||
@ -512,7 +603,7 @@ dependencies = [
|
||||
"libc",
|
||||
"log",
|
||||
"wasi",
|
||||
"windows-sys",
|
||||
"windows-sys 0.42.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -546,7 +637,7 @@ version = "1.13.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "19e64526ebdee182341572e50e9ad03965aa510cd94427a4549448f285e957a1"
|
||||
dependencies = [
|
||||
"hermit-abi",
|
||||
"hermit-abi 0.1.19",
|
||||
"libc",
|
||||
]
|
||||
|
||||
@ -597,7 +688,7 @@ dependencies = [
|
||||
"libc",
|
||||
"redox_syscall",
|
||||
"smallvec",
|
||||
"windows-sys",
|
||||
"windows-sys 0.42.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -654,9 +745,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "pretty_env_logger"
|
||||
version = "0.4.0"
|
||||
version = "0.5.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "926d36b9553851b8b0005f1275891b392ee4d2d833852c417ed025477350fb9d"
|
||||
checksum = "865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c"
|
||||
dependencies = [
|
||||
"env_logger",
|
||||
"log",
|
||||
@ -671,12 +762,6 @@ dependencies = [
|
||||
"unicode-ident",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "quick-error"
|
||||
version = "1.2.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
|
||||
|
||||
[[package]]
|
||||
name = "quote"
|
||||
version = "1.0.32"
|
||||
@ -720,17 +805,18 @@ version = "0.2.16"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a"
|
||||
dependencies = [
|
||||
"bitflags",
|
||||
"bitflags 1.3.2",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "regex"
|
||||
version = "1.7.3"
|
||||
version = "1.9.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8b1f693b24f6ac912f4893ef08244d70b6067480d2f1a46e950c9691e6749d1d"
|
||||
checksum = "12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29"
|
||||
dependencies = [
|
||||
"aho-corasick",
|
||||
"memchr",
|
||||
"regex-automata 0.3.7",
|
||||
"regex-syntax",
|
||||
]
|
||||
|
||||
@ -741,10 +827,21 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
|
||||
|
||||
[[package]]
|
||||
name = "regex-syntax"
|
||||
version = "0.6.29"
|
||||
name = "regex-automata"
|
||||
version = "0.3.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
|
||||
checksum = "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629"
|
||||
dependencies = [
|
||||
"aho-corasick",
|
||||
"memchr",
|
||||
"regex-syntax",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "regex-syntax"
|
||||
version = "0.7.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da"
|
||||
|
||||
[[package]]
|
||||
name = "rustc-hash"
|
||||
@ -752,6 +849,20 @@ version = "1.1.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
|
||||
|
||||
[[package]]
|
||||
name = "rustix"
|
||||
version = "0.37.27"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fea8ca367a3a01fe35e6943c400addf443c0f57670e6ec51196f71a4b8762dd2"
|
||||
dependencies = [
|
||||
"bitflags 1.3.2",
|
||||
"errno",
|
||||
"io-lifetimes",
|
||||
"libc",
|
||||
"linux-raw-sys",
|
||||
"windows-sys 0.48.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "rustversion"
|
||||
version = "1.0.12"
|
||||
@ -812,9 +923,9 @@ dependencies = [
|
||||
|
||||
[[package]]
|
||||
name = "signal-hook"
|
||||
version = "0.3.14"
|
||||
version = "0.3.17"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a253b5e89e2698464fc26b545c9edceb338e18a89effeeecfea192c3025be29d"
|
||||
checksum = "8621587d4798caf8eb44879d42e56b9a93ea5dcd315a6487c357130095b62801"
|
||||
dependencies = [
|
||||
"libc",
|
||||
"signal-hook-registry",
|
||||
@ -930,6 +1041,16 @@ dependencies = [
|
||||
"terminal_size",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "thread_local"
|
||||
version = "1.1.7"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"once_cell",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tree-sitter"
|
||||
version = "0.20.9"
|
||||
@ -1045,13 +1166,37 @@ version = "0.42.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
|
||||
dependencies = [
|
||||
"windows_aarch64_gnullvm",
|
||||
"windows_aarch64_msvc",
|
||||
"windows_i686_gnu",
|
||||
"windows_i686_msvc",
|
||||
"windows_x86_64_gnu",
|
||||
"windows_x86_64_gnullvm",
|
||||
"windows_x86_64_msvc",
|
||||
"windows_aarch64_gnullvm 0.42.1",
|
||||
"windows_aarch64_msvc 0.42.1",
|
||||
"windows_i686_gnu 0.42.1",
|
||||
"windows_i686_msvc 0.42.1",
|
||||
"windows_x86_64_gnu 0.42.1",
|
||||
"windows_x86_64_gnullvm 0.42.1",
|
||||
"windows_x86_64_msvc 0.42.1",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "windows-sys"
|
||||
version = "0.48.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
|
||||
dependencies = [
|
||||
"windows-targets",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "windows-targets"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
|
||||
dependencies = [
|
||||
"windows_aarch64_gnullvm 0.48.5",
|
||||
"windows_aarch64_msvc 0.48.5",
|
||||
"windows_i686_gnu 0.48.5",
|
||||
"windows_i686_msvc 0.48.5",
|
||||
"windows_x86_64_gnu 0.48.5",
|
||||
"windows_x86_64_gnullvm 0.48.5",
|
||||
"windows_x86_64_msvc 0.48.5",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -1060,42 +1205,84 @@ version = "0.42.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8c9864e83243fdec7fc9c5444389dcbbfd258f745e7853198f365e3c4968a608"
|
||||
|
||||
[[package]]
|
||||
name = "windows_aarch64_gnullvm"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
|
||||
|
||||
[[package]]
|
||||
name = "windows_aarch64_msvc"
|
||||
version = "0.42.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "4c8b1b673ffc16c47a9ff48570a9d85e25d265735c503681332589af6253c6c7"
|
||||
|
||||
[[package]]
|
||||
name = "windows_aarch64_msvc"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
|
||||
|
||||
[[package]]
|
||||
name = "windows_i686_gnu"
|
||||
version = "0.42.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "de3887528ad530ba7bdbb1faa8275ec7a1155a45ffa57c37993960277145d640"
|
||||
|
||||
[[package]]
|
||||
name = "windows_i686_gnu"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
|
||||
|
||||
[[package]]
|
||||
name = "windows_i686_msvc"
|
||||
version = "0.42.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bf4d1122317eddd6ff351aa852118a2418ad4214e6613a50e0191f7004372605"
|
||||
|
||||
[[package]]
|
||||
name = "windows_i686_msvc"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnu"
|
||||
version = "0.42.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c1040f221285e17ebccbc2591ffdc2d44ee1f9186324dd3e84e99ac68d699c45"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnu"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnullvm"
|
||||
version = "0.42.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "628bfdf232daa22b0d64fdb62b09fcc36bb01f05a3939e20ab73aaf9470d0463"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_gnullvm"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_msvc"
|
||||
version = "0.42.1"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "447660ad36a13288b1db4d4248e857b510e8c3a225c822ba4fb748c0aafecffd"
|
||||
|
||||
[[package]]
|
||||
name = "windows_x86_64_msvc"
|
||||
version = "0.48.5"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
|
||||
|
||||
[[package]]
|
||||
name = "wu-diff"
|
||||
version = "0.1.2"
|
||||
|
@ -17,13 +17,13 @@ in
|
||||
|
||||
rustPlatform.buildRustPackage rec {
|
||||
pname = "difftastic";
|
||||
version = "0.52.0";
|
||||
version = "0.53.0";
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "wilfred";
|
||||
repo = pname;
|
||||
rev = version;
|
||||
hash = "sha256-ve5oUvclHGgw56UEIuEQ0tSdzad94MfL6qzc2hoB0dw=";
|
||||
hash = "sha256-fLn+Ibe6i6pI6yDCWkDAUMl2wOVSFXBCqidT6iNCSGM=";
|
||||
};
|
||||
|
||||
cargoLock = {
|
||||
@ -33,6 +33,11 @@ rustPlatform.buildRustPackage rec {
|
||||
};
|
||||
};
|
||||
|
||||
# skip flaky tests
|
||||
checkFlags = [
|
||||
"--skip=options::tests::test_detect_display_width"
|
||||
];
|
||||
|
||||
# Work around https://github.com/NixOS/nixpkgs/issues/166205.
|
||||
env = lib.optionalAttrs stdenv.cc.isClang {
|
||||
NIX_LDFLAGS = "-l${stdenv.cc.libcxx.cxxabi.libName}";
|
||||
|
@ -15751,6 +15751,10 @@ with pkgs;
|
||||
|
||||
copper = callPackage ../development/compilers/copper { };
|
||||
|
||||
corretto11 = javaPackages.compiler.corretto11;
|
||||
corretto17 = javaPackages.compiler.corretto17;
|
||||
corretto19 = javaPackages.compiler.corretto19;
|
||||
|
||||
cotton = callPackage ../development/tools/cotton {
|
||||
inherit (darwin.apple_sdk.frameworks) CoreServices;
|
||||
};
|
||||
@ -24659,7 +24663,7 @@ with pkgs;
|
||||
qt6 = recurseIntoAttrs (callPackage ../development/libraries/qt-6 { });
|
||||
|
||||
qt6Packages = recurseIntoAttrs (import ./qt6-packages.nix {
|
||||
inherit lib pkgs qt6;
|
||||
inherit lib __splicedPackages makeScopeWithSplicing' generateSplicesForMkScope pkgsHostTarget;
|
||||
stdenv = if stdenv.isDarwin then darwin.apple_sdk_11_0.stdenv else stdenv;
|
||||
});
|
||||
|
||||
@ -28980,6 +28984,9 @@ with pkgs;
|
||||
|
||||
zenmonitor = callPackage ../os-specific/linux/zenmonitor { };
|
||||
|
||||
zfs_2_1 = callPackage ../os-specific/linux/zfs/2_1.nix {
|
||||
configFile = "user";
|
||||
};
|
||||
zfsStable = callPackage ../os-specific/linux/zfs/stable.nix {
|
||||
configFile = "user";
|
||||
};
|
||||
@ -35039,7 +35046,11 @@ with pkgs;
|
||||
};
|
||||
|
||||
qutebrowser = callPackage ../applications/networking/browsers/qutebrowser {
|
||||
inherit (qt6Packages) qtbase qtwebengine wrapQtAppsHook qtwayland;
|
||||
inherit (__splicedPackages.qt6Packages) qtbase qtwebengine wrapQtAppsHook qtwayland;
|
||||
};
|
||||
|
||||
qutebrowser-qt5 = callPackage ../applications/networking/browsers/qutebrowser {
|
||||
inherit (__splicedPackages.libsForQt5) qtbase qtwebengine wrapQtAppsHook qtwayland;
|
||||
};
|
||||
|
||||
qxw = callPackage ../applications/editors/qxw { };
|
||||
|
@ -94,6 +94,10 @@ in {
|
||||
../development/compilers/adoptopenjdk-bin/jdk17-linux.nix
|
||||
../development/compilers/adoptopenjdk-bin/jdk17-darwin.nix;
|
||||
|
||||
corretto11 = callPackage ../development/compilers/corretto/11.nix { };
|
||||
corretto17 = callPackage ../development/compilers/corretto/17.nix { };
|
||||
corretto19 = callPackage ../development/compilers/corretto/19.nix { };
|
||||
|
||||
openjdk8-bootstrap = mkBootstrap adoptopenjdk-8
|
||||
../development/compilers/openjdk/bootstrap.nix
|
||||
{ version = "8"; };
|
||||
|
@ -546,6 +546,10 @@ in {
|
||||
|
||||
zenpower = callPackage ../os-specific/linux/zenpower { };
|
||||
|
||||
zfs_2_1 = callPackage ../os-specific/linux/zfs/2_1.nix {
|
||||
configFile = "kernel";
|
||||
inherit pkgs kernel;
|
||||
};
|
||||
zfsStable = callPackage ../os-specific/linux/zfs/stable.nix {
|
||||
configFile = "kernel";
|
||||
inherit pkgs kernel;
|
||||
|
@ -266,8 +266,9 @@ in (noExtraAttrs (kdeFrameworks // plasmaMobileGear // plasma5 // plasma5.thirdP
|
||||
|
||||
yuview = callPackage ../applications/video/yuview { };
|
||||
}) // lib.optionalAttrs pkgs.config.allowAliases {
|
||||
# remove after 23.11 branch-off and backport removal to 23.11
|
||||
# 23.11 will have a warning for this in `makeScope` itself
|
||||
# Convert to a throw on 01-01-2023.
|
||||
# Warnings show up in various cli tool outputs, throws do not.
|
||||
# Remove completely before 24.05
|
||||
overrideScope' = lib.warn "libsForQt5 now uses makeScopeWithSplicing which does not have \"overrideScope'\", use \"overrideScope\"." self.overrideScope;
|
||||
}));
|
||||
}
|
||||
|
@ -5,17 +5,27 @@
|
||||
# this file.
|
||||
|
||||
{ lib
|
||||
, pkgs
|
||||
, qt6
|
||||
, __splicedPackages
|
||||
, makeScopeWithSplicing'
|
||||
, generateSplicesForMkScope
|
||||
, stdenv
|
||||
, pkgsHostTarget
|
||||
}:
|
||||
|
||||
(lib.makeScope pkgs.newScope ( self:
|
||||
|
||||
let
|
||||
callPackage = self.callPackage;
|
||||
pkgs = __splicedPackages;
|
||||
# qt6 set should not be pre-spliced to prevent spliced packages being a part of an unspliced set
|
||||
# 'pkgsCross.aarch64-multiplatform.pkgsBuildTarget.targetPackages.qt6Packages.qtbase' should not have a `__spliced` but if qt6 is pre-spliced then it will have one.
|
||||
# pkgsHostTarget == pkgs
|
||||
qt6 = pkgsHostTarget.qt6;
|
||||
in
|
||||
(qt6 // {
|
||||
|
||||
makeScopeWithSplicing' {
|
||||
otherSplices = generateSplicesForMkScope "qt6Packages";
|
||||
f = (self: let
|
||||
inherit (self) callPackage;
|
||||
noExtraAttrs = set: lib.attrsets.removeAttrs set [ "extend" "override" "overrideScope" "overrideScope'" "overrideDerivation" ];
|
||||
in (noExtraAttrs qt6) // {
|
||||
inherit stdenv;
|
||||
|
||||
# LIBRARIES
|
||||
@ -45,4 +55,11 @@ in
|
||||
qt6Support = true;
|
||||
suffix = "qt6";
|
||||
};
|
||||
})))
|
||||
|
||||
} // lib.optionalAttrs pkgs.config.allowAliases {
|
||||
# Convert to a throw on 01-01-2023.
|
||||
# Warnings show up in various cli tool outputs, throws do not.
|
||||
# Remove completely before 24.05
|
||||
overrideScope' = lib.warn "qt6Packages now uses makeScopeWithSplicing which does not have \"overrideScope'\", use \"overrideScope\"." self.overrideScope;
|
||||
});
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user