Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2024-02-25 18:01:23 +00:00 committed by GitHub
commit 41e7732291
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
127 changed files with 938 additions and 495 deletions

View File

@ -15935,6 +15935,12 @@
githubId = 11351304; githubId = 11351304;
name = "Ricardo Ardissone"; name = "Ricardo Ardissone";
}; };
raroh73 = {
email = "me@raroh73.com";
github = "Raroh73";
githubId = 96078496;
name = "Raroh73";
};
rasendubi = { rasendubi = {
email = "rasen.dubi@gmail.com"; email = "rasen.dubi@gmail.com";
github = "rasendubi"; github = "rasendubi";

View File

@ -111,6 +111,8 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- `nitter` requires a `guest_accounts.jsonl` to be provided as a path or loaded into the default location at `/var/lib/nitter/guest_accounts.jsonl`. See [Guest Account Branch Deployment](https://github.com/zedeus/nitter/wiki/Guest-Account-Branch-Deployment) for details. - `nitter` requires a `guest_accounts.jsonl` to be provided as a path or loaded into the default location at `/var/lib/nitter/guest_accounts.jsonl`. See [Guest Account Branch Deployment](https://github.com/zedeus/nitter/wiki/Guest-Account-Branch-Deployment) for details.
- `boot.supportedFilesystems` and `boot.initrd.supportedFilesystems` are now attribute sets instead of lists. Assignment from lists as done previously is still supported, but checking whether a filesystem is enabled must now by done using `supportedFilesystems.fs or false` instead of using `lib.elem "fs" supportedFilesystems` as was done previously.
- `services.aria2.rpcSecret` has been replaced with `services.aria2.rpcSecretFile`. - `services.aria2.rpcSecret` has been replaced with `services.aria2.rpcSecretFile`.
This was done so that secrets aren't stored in the world-readable nix store. This was done so that secrets aren't stored in the world-readable nix store.
To migrate, you will have create a file with the same exact string, and change To migrate, you will have create a file with the same exact string, and change
@ -173,6 +175,10 @@ The pre-existing [services.ankisyncd](#opt-services.ankisyncd.enable) has been m
- The `cudaPackages` package scope has been updated to `cudaPackages_12`. - The `cudaPackages` package scope has been updated to `cudaPackages_12`.
- Ada packages (libraries and tools) have been moved into the `gnatPackages` scope. `gnatPackages` uses the default GNAT compiler, `gnat12Packages` and `gnat13Packages` use the respective matching compiler version.
- `spark2014` has been renamed to `gnatprove`. A version of `gnatprove` matching different GNAT versions is available from the different `gnatPackages` sets.
- `services.resolved.fallbackDns` can now be used to disable the upstream fallback servers entirely by setting it to an empty list. To get the previous behaviour of the upstream defaults set it to null, the new default, instead. - `services.resolved.fallbackDns` can now be used to disable the upstream fallback servers entirely by setting it to an empty list. To get the previous behaviour of the upstream defaults set it to null, the new default, instead.
- `xxd` has been moved from `vim` default output to its own output to reduce closure size. The canonical way to reference it across all platforms is `unixtools.xxd`. - `xxd` has been moved from `vim` default output to its own output to reduce closure size. The canonical way to reference it across all platforms is `unixtools.xxd`.

View File

@ -1,15 +1,7 @@
{ pkgs, ... }: { lib, ... }:
{ {
imports = [ ./installation-cd-minimal-new-kernel.nix ]; imports = [ ./installation-cd-minimal-new-kernel.nix ];
# Makes `availableOn` fail for zfs, see <nixos/modules/profiles/base.nix>. boot.supportedFilesystems.zfs = lib.mkForce false;
# This is a workaround since we cannot remove the `"zfs"` string from `supportedFilesystems`.
# The proper fix would be to make `supportedFilesystems` an attrset with true/false which we
# could then `lib.mkForce false`
nixpkgs.overlays = [(final: super: {
zfs = super.zfs.overrideAttrs(_: {
meta.platforms = [];
});
})];
} }

View File

@ -1,15 +1,7 @@
{ pkgs, ... }: { lib, ... }:
{ {
imports = [ ./sd-image-aarch64-new-kernel-installer.nix ]; imports = [ ./sd-image-aarch64-new-kernel-installer.nix ];
# Makes `availableOn` fail for zfs, see <nixos/modules/profiles/base.nix>. boot.supportedFilesystems.zfs = lib.mkForce false;
# This is a workaround since we cannot remove the `"zfs"` string from `supportedFilesystems`.
# The proper fix would be to make `supportedFilesystems` an attrset with true/false which we
# could then `lib.mkForce false`
nixpkgs.overlays = [(final: super: {
zfs = super.zfs.overrideAttrs(_: {
meta.platforms = [];
});
})];
} }

View File

@ -3,7 +3,7 @@
# the modules necessary to mount the root file system, then calls the # the modules necessary to mount the root file system, then calls the
# init in the root file system to start the second boot stage. # init in the root file system to start the second boot stage.
{ config, lib, utils, pkgs, ... }: { config, options, lib, utils, pkgs, ... }:
with lib; with lib;
@ -636,10 +636,8 @@ in
}; };
boot.initrd.supportedFilesystems = mkOption { boot.initrd.supportedFilesystems = mkOption {
default = [ ]; default = { };
example = [ "btrfs" ]; inherit (options.boot.supportedFilesystems) example type description;
type = types.listOf types.str;
description = lib.mdDoc "Names of supported filesystem types in the initial ramdisk.";
}; };
boot.initrd.verbose = mkOption { boot.initrd.verbose = mkOption {

View File

@ -246,10 +246,23 @@ in
}; };
boot.supportedFilesystems = mkOption { boot.supportedFilesystems = mkOption {
default = [ ]; default = { };
example = [ "btrfs" ]; example = lib.literalExpression ''
type = types.listOf types.str; {
description = lib.mdDoc "Names of supported filesystem types."; btrfs = true;
zfs = lib.mkForce false;
}
'';
type = types.coercedTo
(types.listOf types.str)
(enabled: lib.listToAttrs (map (fs: lib.nameValuePair fs true) enabled))
(types.attrsOf types.bool);
description = lib.mdDoc ''
Names of supported filesystem types, or an attribute set of file system types
and their state. The set form may be used together with `lib.mkForce` to
explicitly disable support for specific filesystems, e.g. to disable ZFS
with an unsupported kernel.
'';
}; };
boot.specialFileSystems = mkOption { boot.specialFileSystems = mkOption {

View File

@ -4,12 +4,12 @@ with lib;
let let
inInitrd = any (fs: fs == "apfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.apfs or false;
in in
{ {
config = mkIf (any (fs: fs == "apfs") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.apfs or false) {
system.fsPackages = [ pkgs.apfsprogs ]; system.fsPackages = [ pkgs.apfsprogs ];

View File

@ -118,7 +118,7 @@ let
in in
{ {
config = lib.mkIf (lib.elem "bcachefs" config.boot.supportedFilesystems) (lib.mkMerge [ config = lib.mkIf (config.boot.supportedFilesystems.bcachefs or false) (lib.mkMerge [
{ {
inherit assertions; inherit assertions;
# needed for systemd-remount-fs # needed for systemd-remount-fs
@ -133,7 +133,7 @@ in
}; };
} }
(lib.mkIf ((lib.elem "bcachefs" config.boot.initrd.supportedFilesystems) || (bootFs != {})) { (lib.mkIf ((config.boot.initrd.supportedFilesystems.bcachefs or false) || (bootFs != {})) {
inherit assertions; inherit assertions;
# chacha20 and poly1305 are required only for decryption attempts # chacha20 and poly1305 are required only for decryption attempts
boot.initrd.availableKernelModules = [ "bcachefs" "sha256" "chacha20" "poly1305" ]; boot.initrd.availableKernelModules = [ "bcachefs" "sha256" "chacha20" "poly1305" ];

View File

@ -4,8 +4,8 @@ with lib;
let let
inInitrd = any (fs: fs == "btrfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.btrfs or false;
inSystem = any (fs: fs == "btrfs") config.boot.supportedFilesystems; inSystem = config.boot.supportedFilesystems.btrfs or false;
cfgScrub = config.services.btrfs.autoScrub; cfgScrub = config.services.btrfs.autoScrub;

View File

@ -4,14 +4,14 @@ with lib;
let let
inInitrd = any (fs: fs == "cifs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.cifs or false;
in in
{ {
config = { config = {
system.fsPackages = mkIf (any (fs: fs == "cifs") config.boot.supportedFilesystems) [ pkgs.cifs-utils ]; system.fsPackages = mkIf (config.boot.supportedFilesystems.cifs or false) [ pkgs.cifs-utils ];
boot.initrd.availableKernelModules = mkIf inInitrd boot.initrd.availableKernelModules = mkIf inInitrd
[ "cifs" "nls_utf8" "hmac" "md4" "ecb" "des_generic" "sha256" ]; [ "cifs" "nls_utf8" "hmac" "md4" "ecb" "des_generic" "sha256" ];

View File

@ -4,7 +4,7 @@
with lib; with lib;
{ {
config = mkIf (any (fs: fs == "ecryptfs") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.ecryptfs or false) {
system.fsPackages = [ pkgs.ecryptfs ]; system.fsPackages = [ pkgs.ecryptfs ];
security.wrappers = { security.wrappers = {
"mount.ecryptfs_private" = "mount.ecryptfs_private" =

View File

@ -2,8 +2,8 @@
let let
inInitrd = lib.any (fs: fs == "erofs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.erofs or false;
inSystem = lib.any (fs: fs == "erofs") config.boot.supportedFilesystems; inSystem = config.boot.supportedFilesystems.erofs or false;
in in

View File

@ -3,7 +3,7 @@
with lib; with lib;
{ {
config = mkIf (any (fs: fs == "exfat") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.exfat or false) {
system.fsPackages = if config.boot.kernelPackages.kernelOlder "5.7" then [ system.fsPackages = if config.boot.kernelPackages.kernelOlder "5.7" then [
pkgs.exfat # FUSE pkgs.exfat # FUSE
] else [ ] else [

View File

@ -2,8 +2,10 @@
let let
inInitrd = lib.any (fs: fs == "ext2" || fs == "ext3" || fs == "ext4") config.boot.initrd.supportedFilesystems; hasExtX = s: s.ext2 or s.ext3 or s.ext4 or false;
inSystem = lib.any (fs: fs == "ext2" || fs == "ext3" || fs == "ext4") config.boot.supportedFilesystems;
inInitrd = hasExtX config.boot.initrd.supportedFilesystems;
inSystem = hasExtX config.boot.supportedFilesystems;
in in

View File

@ -3,11 +3,10 @@
with lib; with lib;
let let
inInitrd = any (fs: fs == "f2fs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.f2fs or false;
fileSystems = filter (x: x.fsType == "f2fs") config.system.build.fileSystems;
in in
{ {
config = mkIf (any (fs: fs == "f2fs") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.f2fs or false) {
system.fsPackages = [ pkgs.f2fs-tools ]; system.fsPackages = [ pkgs.f2fs-tools ];

View File

@ -3,7 +3,7 @@
with lib; with lib;
{ {
config = mkIf (any (fs: fs == "glusterfs") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.glusterfs or false) {
system.fsPackages = [ pkgs.glusterfs ]; system.fsPackages = [ pkgs.glusterfs ];

View File

@ -3,10 +3,10 @@
with lib; with lib;
let let
inInitrd = any (fs: fs == "jfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.jfs or false;
in in
{ {
config = mkIf (any (fs: fs == "jfs") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.jfs or false) {
system.fsPackages = [ pkgs.jfsutils ]; system.fsPackages = [ pkgs.jfsutils ];

View File

@ -4,7 +4,7 @@ with lib;
let let
inInitrd = any (fs: fs == "nfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.nfs or false;
nfsStateDir = "/var/lib/nfs"; nfsStateDir = "/var/lib/nfs";
@ -58,7 +58,7 @@ in
###### implementation ###### implementation
config = mkIf (any (fs: fs == "nfs" || fs == "nfs4") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.nfs or config.boot.supportedFilesystems.nfs4 or false) {
services.rpcbind.enable = true; services.rpcbind.enable = true;

View File

@ -3,7 +3,7 @@
with lib; with lib;
{ {
config = mkIf (any (fs: fs == "ntfs" || fs == "ntfs-3g") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.ntfs or config.boot.supportedFilesystems.ntfs-3g or false) {
system.fsPackages = [ pkgs.ntfs3g ]; system.fsPackages = [ pkgs.ntfs3g ];

View File

@ -4,12 +4,12 @@ with lib;
let let
inInitrd = any (fs: fs == "reiserfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.reiserfs or false;
in in
{ {
config = mkIf (any (fs: fs == "reiserfs") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.reiserfs or false) {
system.fsPackages = [ pkgs.reiserfsprogs ]; system.fsPackages = [ pkgs.reiserfsprogs ];

View File

@ -2,7 +2,7 @@
let let
inInitrd = lib.any (fs: fs == "squashfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.squashfs or false;
in in

View File

@ -1,7 +1,11 @@
{ config, lib, pkgs, ... }: { config, lib, pkgs, ... }:
{ {
config = lib.mkIf (lib.any (fs: fs == "sshfs" || fs == "fuse.sshfs") config.boot.supportedFilesystems) { config = lib.mkIf
system.fsPackages = [ pkgs.sshfs ]; (config.boot.supportedFilesystems.sshfs
}; or config.boot.supportedFilesystems."fuse.sshfs"
or false)
{
system.fsPackages = [ pkgs.sshfs ];
};
} }

View File

@ -3,7 +3,7 @@
{ {
config = lib.mkMerge [ config = lib.mkMerge [
(lib.mkIf (lib.any (fs: fs == "unionfs-fuse") config.boot.initrd.supportedFilesystems) { (lib.mkIf (config.boot.initrd.supportedFilesystems.unionfs-fuse or false) {
boot.initrd.kernelModules = [ "fuse" ]; boot.initrd.kernelModules = [ "fuse" ];
boot.initrd.extraUtilsCommands = lib.mkIf (!config.boot.initrd.systemd.enable) '' boot.initrd.extraUtilsCommands = lib.mkIf (!config.boot.initrd.systemd.enable) ''
@ -35,7 +35,7 @@
}; };
}) })
(lib.mkIf (lib.any (fs: fs == "unionfs-fuse") config.boot.supportedFilesystems) { (lib.mkIf (config.boot.supportedFilesystems.unionfs-fuse or false) {
system.fsPackages = [ pkgs.unionfs-fuse ]; system.fsPackages = [ pkgs.unionfs-fuse ];
}) })

View File

@ -4,7 +4,7 @@ with lib;
let let
inInitrd = any (fs: fs == "vboxsf") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.vboxsf or false;
package = pkgs.runCommand "mount.vboxsf" { preferLocalBuild = true; } '' package = pkgs.runCommand "mount.vboxsf" { preferLocalBuild = true; } ''
mkdir -p $out/bin mkdir -p $out/bin
@ -13,7 +13,7 @@ let
in in
{ {
config = mkIf (any (fs: fs == "vboxsf") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.vboxsf or false) {
system.fsPackages = [ package ]; system.fsPackages = [ package ];

View File

@ -4,12 +4,12 @@ with lib;
let let
inInitrd = any (fs: fs == "vfat") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.vfat or false;
in in
{ {
config = mkIf (any (fs: fs == "vfat") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.vfat or false) {
system.fsPackages = [ pkgs.dosfstools pkgs.mtools ]; system.fsPackages = [ pkgs.dosfstools pkgs.mtools ];

View File

@ -4,12 +4,12 @@ with lib;
let let
inInitrd = any (fs: fs == "xfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.xfs or false;
in in
{ {
config = mkIf (any (fs: fs == "xfs") config.boot.supportedFilesystems) { config = mkIf (config.boot.supportedFilesystems.xfs or false) {
system.fsPackages = [ pkgs.xfsprogs.bin ]; system.fsPackages = [ pkgs.xfsprogs.bin ];

View File

@ -20,8 +20,8 @@ let
clevisDatasets = map (e: e.device) (filter (e: e.device != null && (hasAttr e.device config.boot.initrd.clevis.devices) && e.fsType == "zfs" && (fsNeededForBoot e)) config.system.build.fileSystems); clevisDatasets = map (e: e.device) (filter (e: e.device != null && (hasAttr e.device config.boot.initrd.clevis.devices) && e.fsType == "zfs" && (fsNeededForBoot e)) config.system.build.fileSystems);
inInitrd = any (fs: fs == "zfs") config.boot.initrd.supportedFilesystems; inInitrd = config.boot.initrd.supportedFilesystems.zfs or false;
inSystem = any (fs: fs == "zfs") config.boot.supportedFilesystems; inSystem = config.boot.supportedFilesystems.zfs or false;
autosnapPkg = pkgs.zfstools.override { autosnapPkg = pkgs.zfstools.override {
zfs = cfgZfs.package; zfs = cfgZfs.package;

View File

@ -6,7 +6,7 @@ let
crioPackage = pkgs.cri-o.override { crioPackage = pkgs.cri-o.override {
extraPackages = cfg.extraPackages extraPackages = cfg.extraPackages
++ lib.optional (builtins.elem "zfs" config.boot.supportedFilesystems) config.boot.zfs.package; ++ lib.optional (config.boot.supportedFilesystems.zfs or false) config.boot.zfs.package;
}; };
format = pkgs.formats.toml { }; format = pkgs.formats.toml { };

View File

@ -60,7 +60,6 @@ in {
boot.growPartition = true; boot.growPartition = true;
boot.loader.grub = { boot.loader.grub = {
version = 2;
device = "nodev"; device = "nodev";
efiSupport = true; efiSupport = true;
efiInstallAsRemovable = true; efiInstallAsRemovable = true;

View File

@ -59,7 +59,6 @@ with lib;
grub = { grub = {
enable = true; enable = true;
version = 2;
forceInstall = true; forceInstall = true;
device = "nodev"; device = "nodev";

View File

@ -252,10 +252,13 @@ let
text = '' text = ''
${cfg.backend} rm -f ${name} || true ${cfg.backend} rm -f ${name} || true
${optionalString (isValidLogin container.login) '' ${optionalString (isValidLogin container.login) ''
# try logging in, if it fails, check if image exists locally
${cfg.backend} login \ ${cfg.backend} login \
${container.login.registry} \ ${container.login.registry} \
--username ${container.login.username} \ --username ${container.login.username} \
--password-stdin < ${container.login.passwordFile} --password-stdin < ${container.login.passwordFile} \
|| ${cfg.backend} image inspect ${container.image} >/dev/null \
|| { echo "image doesn't exist locally and login failed" >&2 ; exit 1; }
''} ''}
${optionalString (container.imageFile != null) '' ${optionalString (container.imageFile != null) ''
${cfg.backend} load -i ${container.imageFile} ${cfg.backend} load -i ${container.imageFile}

View File

@ -9,7 +9,7 @@ let
extraPackages = cfg.extraPackages extraPackages = cfg.extraPackages
# setuid shadow # setuid shadow
++ [ "/run/wrappers" ] ++ [ "/run/wrappers" ]
++ lib.optional (builtins.elem "zfs" config.boot.supportedFilesystems) config.boot.zfs.package; ++ lib.optional (config.boot.supportedFilesystems.zfs or false) config.boot.zfs.package;
}); });
# Provides a fake "docker" binary mapping to podman # Provides a fake "docker" binary mapping to podman

View File

@ -80,7 +80,6 @@ in {
boot.growPartition = true; boot.growPartition = true;
boot.loader.grub = { boot.loader.grub = {
version = 2;
device = "nodev"; device = "nodev";
efiSupport = true; efiSupport = true;
efiInstallAsRemovable = true; efiInstallAsRemovable = true;

View File

@ -526,8 +526,7 @@ let
curl curl
] ]
++ optionals (bootLoader == "grub") (let ++ optionals (bootLoader == "grub") (let
zfsSupport = lib.any (x: x == "zfs") zfsSupport = extraInstallerConfig.boot.supportedFilesystems.zfs or false;
(extraInstallerConfig.boot.supportedFilesystems or []);
in [ in [
(pkgs.grub2.override { inherit zfsSupport; }) (pkgs.grub2.override { inherit zfsSupport; })
(pkgs.grub2_efi.override { inherit zfsSupport; }) (pkgs.grub2_efi.override { inherit zfsSupport; })

View File

@ -9,18 +9,18 @@
buildGoModule rec { buildGoModule rec {
pname = "go-musicfox"; pname = "go-musicfox";
version = "4.3.0"; version = "4.3.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "go-musicfox"; owner = "go-musicfox";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-JDR3D3tILT0q9jqcZmbfQC3yn7cmaSL/GEpCguqCFXI="; hash = "sha256-QZHuQAOnthSm7Kb82i3NUWTnKk+9OMHV5vzOU72inX0=";
}; };
deleteVendor = true; deleteVendor = true;
vendorHash = "sha256-ILO4v4ii1l9JokXG7R3vuN7i5hDi/hLHTFiClA2vdf0="; vendorHash = "sha256-6DeoxpjVfykBI3fJAJpMZwJ4VTooIbxGpk5+SW198hU=";
subPackages = [ "cmd/musicfox.go" ]; subPackages = [ "cmd/musicfox.go" ];

View File

@ -28,11 +28,11 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "kid3"; pname = "kid3";
version = "3.9.4"; version = "3.9.5";
src = fetchurl { src = fetchurl {
url = "mirror://kde/stable/kid3/${finalAttrs.version}/kid3-${finalAttrs.version}.tar.xz"; url = "mirror://kde/stable/kid3/${finalAttrs.version}/kid3-${finalAttrs.version}.tar.xz";
hash = "sha256-xBCWDpYiXeChxIiMPqHG3CyiRau2kUdDJtzcPtvWpSA="; hash = "sha256-pCT+3eNcF247RDNEIqrUOEhBh3LaAgdR0A0IdOXOgUU=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -88,7 +88,7 @@ self: let
]; ];
buildInputs = [ buildInputs = [
pkgs.gnatcoll-xref pkgs.gnatPackages.gnatcoll-xref
]; ];
buildPhase = '' buildPhase = ''

View File

@ -33,6 +33,7 @@ in
nativeBuildInputs = oa.nativeBuildInputs or [] ++ [ nativeBuildInputs = oa.nativeBuildInputs or [] ++ [
lua.pkgs.luarocksMoveDataFolder lua.pkgs.luarocksMoveDataFolder
]; ];
version = "${originalLuaDrv.version}-unstable-${oa.version}";
})); }));
in in
finalDrv finalDrv

View File

@ -2,13 +2,13 @@
mkDerivation rec { mkDerivation rec {
pname = "notepad-next"; pname = "notepad-next";
version = "0.6.4"; version = "0.7";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "dail8859"; owner = "dail8859";
repo = "NotepadNext"; repo = "NotepadNext";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-m8+kM9uz3gJ3kvpgZdoonSvYlh/f1WiGZlB8JKMTXh4="; sha256 = "sha256-I2bS8oT/TGf6fuXpTwOKo2MaUo0jLFIU/DfW9h1toOk=";
# External dependencies - https://github.com/dail8859/NotepadNext/issues/135 # External dependencies - https://github.com/dail8859/NotepadNext/issues/135
fetchSubmodules = true; fetchSubmodules = true;
}; };

View File

@ -955,6 +955,54 @@ let
contextmapper.context-mapper-vscode-extension = callPackage ./contextmapper.context-mapper-vscode-extension { }; contextmapper.context-mapper-vscode-extension = callPackage ./contextmapper.context-mapper-vscode-extension { };
continue.continue = buildVscodeMarketplaceExtension {
mktplcRef =
let
sources = {
"x86_64-linux" = {
arch = "linux-x64";
sha256 = "05kh6sf3jv3510q33chf8s5n1kfp9wcm7650va7mcrdkfr9g8ysq";
};
"x86_64-darwin" = {
arch = "darwin-x64";
sha256 = "0242h9kq47qvs1xynr5x8dzxkc5pwgb6km0iqpyy9kydg8ng1vp3";
};
"aarch64-linux" = {
arch = "linux-arm64";
sha256 = "1qm3f2lh8mi3hnyp2bmx7j2lir6fmbbxkzh6b8zf579khhbapnaz";
};
"aarch64-darwin" = {
arch = "darwin-arm64";
sha256 = "18w22z1c5qgkpw2zlwmi9gs9dx1pcm51f0r8my7ynnvgl6mp12sg";
};
};
in
{
name = "continue";
publisher = "Continue";
version = "0.8.12";
} // sources.${stdenv.system};
nativeBuildInputs = [
autoPatchelfHook
];
buildInputs = [
stdenv.cc.cc.lib
];
postInstall = ''
cd "$out/$installPrefix"
substituteInPlace "out/extension.js" \
--replace-fail 'await showTutorial();' '//await showTutorial();'
'';
meta = {
description = "Open-source autopilot for software development - bring the power of ChatGPT to your IDE";
downloadPage = "https://marketplace.visualstudio.com/items?itemName=Continue.continue";
homepage = "https://github.com/continuedev/continue";
license = lib.licenses.asl20;
maintainers = [ lib.maintainers.raroh73 ];
platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" "aarch64-linux" ];
};
};
coolbear.systemd-unit-file = buildVscodeMarketplaceExtension { coolbear.systemd-unit-file = buildVscodeMarketplaceExtension {
mktplcRef = { mktplcRef = {
publisher = "coolbear"; publisher = "coolbear";

View File

@ -4,11 +4,11 @@
lib, lib,
}: let }: let
pname = "upscayl"; pname = "upscayl";
version = "2.9.8"; version = "2.9.9";
src = fetchurl { src = fetchurl {
url = "https://github.com/upscayl/upscayl/releases/download/v${version}/upscayl-${version}-linux.AppImage"; url = "https://github.com/upscayl/upscayl/releases/download/v${version}/upscayl-${version}-linux.AppImage";
hash = "sha256-hLK9AX87WbJdKTV/rzEzNeaUWeDz1+bvp/R2LkjHp+w="; hash = "sha256-33jJRMvRQxL7rPJ6VigEKcDhge46CAA0jJUOhzEyWzA=";
}; };
appimageContents = appimageTools.extractType2 { appimageContents = appimageTools.extractType2 {

View File

@ -1,4 +1,4 @@
{ config, stdenv, lib, fetchurl, fetchzip, boost, cmake, ffmpeg, gettext, glew { config, stdenv, lib, fetchurl, fetchzip, fetchpatch, boost, cmake, ffmpeg, gettext, glew
, libepoxy, libXi, libX11, libXext, libXrender , libepoxy, libXi, libX11, libXext, libXrender
, libjpeg, libpng, libsamplerate, libsndfile , libjpeg, libpng, libsamplerate, libsndfile
, libtiff, libwebp, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio, openjpeg, python310Packages , libtiff, libwebp, libGLU, libGL, openal, opencolorio, openexr, openimagedenoise, openimageio, openjpeg, python310Packages
@ -47,6 +47,10 @@ stdenv.mkDerivation (finalAttrs: rec {
patches = [ patches = [
./draco.patch ./draco.patch
(fetchpatch {
url = "https://projects.blender.org/blender/blender/commit/cf4365e555a759d5b3225bce77858374cb07faad.diff";
hash = "sha256-Nypd04yFSHYa7RBa8kNmoApqJrU4qpaOle3tkj44d4g=";
})
] ++ lib.optional stdenv.isDarwin ./darwin.patch; ] ++ lib.optional stdenv.isDarwin ./darwin.patch;
nativeBuildInputs = nativeBuildInputs =

View File

@ -7,16 +7,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "gimoji"; pname = "gimoji";
version = "0.7.3"; version = "0.7.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "zeenix"; owner = "zeenix";
repo = "gimoji"; repo = "gimoji";
rev = version; rev = version;
hash = "sha256-xQ02jmPuu1IHkQCCJn2FVPcJRbwN+k8FhsZyDX0oHaw="; hash = "sha256-ipsEFZGC3JYOeNVI4AUb2c/9tt+TTIbeXuJ15ShEH6U=";
}; };
cargoHash = "sha256-DSLIH6swVQXHrqKBxlrhNTG5maRmUi6Ndmuuv0Vo3Ak="; cargoHash = "sha256-786OPEaIHQtgUHlkjLprKfJ7VoeSW+IzHto3XXZ6Fu8=";
buildInputs = lib.optionals stdenv.isDarwin [ buildInputs = lib.optionals stdenv.isDarwin [
darwin.apple_sdk.frameworks.AppKit darwin.apple_sdk.frameworks.AppKit

View File

@ -15,13 +15,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "asn"; pname = "asn";
version = "0.75.3"; version = "0.76.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "nitefood"; owner = "nitefood";
repo = "asn"; repo = "asn";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-KOwXOGw6gv8YFTrFFkD6BNKChTIbD2Soy3gvvSzNQgM="; hash = "sha256-pdtRf9VKEdNg1UeYSaLNLm9O057dT+n5g3Dd0bcP4EI=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -7,13 +7,13 @@
buildGoModule rec { buildGoModule rec {
pname = "cloudflared"; pname = "cloudflared";
version = "2024.2.0"; version = "2024.2.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "cloudflare"; owner = "cloudflare";
repo = "cloudflared"; repo = "cloudflared";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-jcIHpRHcAgzzSKvZH9SLfu5Ake3zCgsSw1iv64yXW2E="; hash = "sha256-aSAwDz7QSYbHfDA+/usGh7xCxSq+kBTB3eqMBf5XEa8=";
}; };
vendorHash = null; vendorHash = null;

View File

@ -7,13 +7,13 @@
buildGoModule rec { buildGoModule rec {
pname = "arkade"; pname = "arkade";
version = "0.11.1"; version = "0.11.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alexellis"; owner = "alexellis";
repo = "arkade"; repo = "arkade";
rev = version; rev = version;
hash = "sha256-DsKc+AT+0vIaJftBFLqVXx/CJRNNgE/vzSxlHkCSJaI="; hash = "sha256-G8zWPz5pTDjfZJ8DtY1DQRGYMOsGhNXWZEgFYKM/y6I=";
}; };
CGO_ENABLED = 0; CGO_ENABLED = 0;

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "kubetail"; pname = "kubetail";
version = "1.6.18"; version = "1.6.19";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "johanhaleby"; owner = "johanhaleby";
repo = "kubetail"; repo = "kubetail";
rev = version; rev = version;
sha256 = "sha256-Gde5thEpMX3h0e1eoC8SeDdkZfa02CmQf3ELLMeEWGU="; sha256 = "sha256-s+rz30VWG4RijeJuRYEhCmgFDjaxJ+4twgXrGkNc5c8=";
}; };
nativeBuildInputs = [ installShellFiles makeWrapper ]; nativeBuildInputs = [ installShellFiles makeWrapper ];

View File

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "vcluster"; pname = "vcluster";
version = "0.18.1"; version = "0.19.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "loft-sh"; owner = "loft-sh";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-TJjMB7x8MOlr3GexsnOZBFPJovVkf4ByRn1aGprvZFQ="; hash = "sha256-W9BSLGUrW8Us+yYQLIz3oY8JKJSo43cL+oWQQf3xWJE=";
}; };
vendorHash = null; vendorHash = null;

View File

@ -4,7 +4,7 @@ let
if stdenv.isLinux then { if stdenv.isLinux then {
stable = "0.0.43"; stable = "0.0.43";
ptb = "0.0.71"; ptb = "0.0.71";
canary = "0.0.278"; canary = "0.0.282";
development = "0.0.13"; development = "0.0.13";
} else { } else {
stable = "0.0.294"; stable = "0.0.294";
@ -25,7 +25,7 @@ let
}; };
canary = fetchurl { canary = fetchurl {
url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz"; url = "https://dl-canary.discordapp.net/apps/linux/${version}/discord-canary-${version}.tar.gz";
hash = "sha256-ypnw/CDY02jD8xLpJvS4Y7GjahgvUhcmV7zSDaVkNpk="; hash = "sha256-+Ijl/yPa7DVzVKOWTxCu6FxIsschIqYa+tYBnnKdCBA=";
}; };
development = fetchurl { development = fetchurl {
url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz"; url = "https://dl-development.discordapp.net/apps/linux/${version}/discord-development-${version}.tar.gz";

View File

@ -21,8 +21,6 @@ python3.pkgs.buildPythonApplication rec {
postPatch = '' postPatch = ''
# relax version bounds # relax version bounds
sed -i 's/\([A-z0-9]*\)~=.*$/\1/' setup.cfg sed -i 's/\([A-z0-9]*\)~=.*$/\1/' setup.cfg
# not sure what Flask-Session2 is but flask-session works just fine
sed -i '/Flask-Session2/d' setup.cfg
''; '';
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python3.pkgs; [

View File

@ -5,18 +5,18 @@
buildGoModule rec { buildGoModule rec {
pname = "storj-uplink"; pname = "storj-uplink";
version = "1.96.2"; version = "1.98.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "storj"; owner = "storj";
repo = "storj"; repo = "storj";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-mQIrXDEfMMrubQyn90eu0k3isvnpaF237Tpd84HhUfU="; hash = "sha256-XnTrQIDUHdW9HwnYRigGFMGmcSCBhdoTXT4xlMCMeCw=";
}; };
subPackages = [ "cmd/uplink" ]; subPackages = [ "cmd/uplink" ];
vendorHash = "sha256-cUhdl0jqgkA89NeOdFSifR5LsTjeYifOXqBu3qCAovk="; vendorHash = "sha256-n7exLjiDyvnoKAKnJXo1Ag+jh1Ccb2eA3Yv5fg7gkDk=";
ldflags = [ "-s" "-w" ]; ldflags = [ "-s" "-w" ];

View File

@ -14,13 +14,13 @@
stdenv.mkDerivation { stdenv.mkDerivation {
pname = "wdt"; pname = "wdt";
version = "unstable-2023-12-01"; version = "unstable-2024-02-05";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "facebook"; owner = "facebook";
repo = "wdt"; repo = "wdt";
rev = "66f17af009ef6eaf2707bb8bb511ba6bcf3d9bbe"; rev = "d94b2d5df6f1c803f9f3b8ed9247b752fa853865";
sha256 = "sha256-ucnFcpH9Duru35kRT769zMX2BMqufZJopd2srKPJkrU="; sha256 = "sha256-9TeJbZZq9uQ6KaEBFGDyIGcXgxi2y1aj55vxv5dAIzw=";
}; };
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];

View File

@ -32,6 +32,10 @@ stdenv.mkDerivation rec {
substituteInPlace src/sortmerna/CMakeLists.txt \ substituteInPlace src/sortmerna/CMakeLists.txt \
--replace "target_link_libraries(sortmerna" \ --replace "target_link_libraries(sortmerna" \
"target_link_libraries(sortmerna Threads::Threads" "target_link_libraries(sortmerna Threads::Threads"
# Fix gcc-13 build by adding missing <cstdint> includes:
# https://github.com/sortmerna/sortmerna/issues/412
sed -e '1i #include <cstdint>' -i include/kseq_load.hpp
''; '';
meta = with lib; { meta = with lib; {

View File

@ -3,26 +3,27 @@
, fetchFromGitHub , fetchFromGitHub
, rustPlatform , rustPlatform
, Security , Security
, SystemConfiguration
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "git-cliff"; pname = "git-cliff";
version = "1.4.0"; version = "2.0.4";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "orhun"; owner = "orhun";
repo = "git-cliff"; repo = "git-cliff";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-OK2eoWlqlpf/X8EGMnWTv9Gs5FkYvW5rmQDB/Mkbp60="; hash = "sha256-0ReMn37sYpS5uX9Nem7M9LthAvGNdJaAob+tEnjIrMw=";
}; };
cargoHash = "sha256-gtkpZKOaG5p79uJ9cbbGdiOX57bDFTf2/Bd8+WToJrw="; cargoHash = "sha256-xDIXXHoykEtRzWm5NDE1rcFgC4iFxhUPgwlvaoHmV6Y=";
# attempts to run the program on .git in src which is not deterministic # attempts to run the program on .git in src which is not deterministic
doCheck = false; doCheck = false;
buildInputs = lib.optionals stdenv.isDarwin [ buildInputs = lib.optionals stdenv.isDarwin [
Security Security SystemConfiguration
]; ];
meta = with lib; { meta = with lib; {

View File

@ -2,13 +2,13 @@
buildGoModule rec { buildGoModule rec {
pname = "git-credential-oauth"; pname = "git-credential-oauth";
version = "0.11.0"; version = "0.11.1";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "hickford"; owner = "hickford";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-Zxdd4JhSoaAFx8neZqdOZSZEOTtupZHnX+5ziYxbw6s="; hash = "sha256-bqyoAAqli0L6Kf+W1sTh2vmmfaIj2OdpQyvQZnYOWWA=";
}; };
ldflags = [ ldflags = [

View File

@ -8,16 +8,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "git-ignore"; pname = "git-ignore";
version = "1.3.1"; version = "1.3.3";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "sondr3"; owner = "sondr3";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-kfc4LIFjLMltCn3BPaEfxc/yOZxFjYioyobTQZN/RmY="; hash = "sha256-OVKRNj3tRi/PGY1m4rdpmH87laYzTkCiwoBc3txVJ3U=";
}; };
cargoHash = "sha256-HoW10XzWIjxsqoKVKQkMf5in7pOODGnUM0cRZP1OJpg="; cargoHash = "sha256-dAQKL+sMThpTqBoN5MZvm8tQUJhaSH7lT8DwbjzFq40=";
nativeBuildInputs = [ nativeBuildInputs = [
installShellFiles installShellFiles

View File

@ -377,7 +377,7 @@ stdenv.mkDerivation {
# this symlink points to the unwrapped gnat's output "out". It is used by # this symlink points to the unwrapped gnat's output "out". It is used by
# our custom gprconfig compiler description to find GNAT's ada runtime. See # our custom gprconfig compiler description to find GNAT's ada runtime. See
# ../../development/tools/build-managers/gprbuild/{boot.nix, nixpkgs-gnat.xml} # ../../development/ada-modules/gprbuild/{boot.nix, nixpkgs-gnat.xml}
ln -sf ${cc} $out/nix-support/gprconfig-gnat-unwrapped ln -sf ${cc} $out/nix-support/gprconfig-gnat-unwrapped
'' ''

View File

@ -8,13 +8,13 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "bonsai"; pname = "bonsai";
version = "1.0.2"; version = "1.1.0";
src = fetchFromSourcehut { src = fetchFromSourcehut {
owner = "~stacyharper"; owner = "~stacyharper";
repo = "bonsai"; repo = "bonsai";
rev = "v${finalAttrs.version}"; rev = "v${finalAttrs.version}";
hash = "sha256-Yosf07KUOQv4O5111tLGgI270g0KVGwzdTPtPOsTcP8="; hash = "sha256-Wsr76OQOIqRPCx/8GK9NovxxPZ3dEP8pSo8wgMK1Hfo=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -6,13 +6,13 @@
python3.pkgs.buildPythonApplication rec { python3.pkgs.buildPythonApplication rec {
pname = "oelint-adv"; pname = "oelint-adv";
version = "4.3.1"; version = "4.4.0";
format = "setuptools"; format = "setuptools";
src = fetchPypi { src = fetchPypi {
inherit version; inherit version;
pname = "oelint_adv"; pname = "oelint_adv";
hash = "sha256-N8QNX6JuHVDKBLwGNwBROH8f+tcLrc1Mk21CiiOVHkI="; hash = "sha256-Sg7qn/yZUJEJdMmaGm27kyL+fKkUsZo25eExZPOem40=";
}; };
propagatedBuildInputs = with python3.pkgs; [ propagatedBuildInputs = with python3.pkgs; [

View File

@ -0,0 +1,79 @@
{ lib
, stdenv
, fetchurl
, autoPatchelfHook
, alsa-lib
, freetype
, libjack2
, libglvnd
, libpulseaudio
, makeDesktopItem
, makeWrapper
}:
stdenv.mkDerivation rec {
pname = "outfox";
version = "0.5.0-pre042";
src = {
i686-linux = fetchurl {
url = "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Linux-14.04-32bit-i386-i386-legacy-date-20231227.tar.gz";
sha256 = "sha256-NFjNoqJ7Fq4A7Y0k6oQcWjykV+/b/MiRtJ1p6qlZdjs=";
};
x86_64-linux = fetchurl {
url = "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Linux-22.04-amd64-current-date-20231224.tar.gz";
hash = "sha256-dW+g/JYav3rUuI+nHDi6rXu/O5KYiEdk/HH82jgOUnI=";
};
aarch64-linux = fetchurl {
url = "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Raspberry-Pi-Linux-18.04-arm64-arm64v8-modern-date-20231225.tar.gz";
hash = "sha256-7Qrq6t8KmUSIK4Rskkxw5l4UZ2vsb9/orzPegHySaJ4=";
};
armv7l-linux = fetchurl {
url = "https://github.com/TeamRizu/OutFox/releases/download/OF5.0.0-042/OutFox-alpha-0.5.0-pre042-Raspberry-Pi-Linux-14.04-arm32-arm32v7-legacy-date-20231227.tar.gz";
hash = "sha256-PRp7kuqFBRy7nextTCB+/poc+A9AX2EiQphx6aUfT8E=";
};
}.${stdenv.hostPlatform.system} or (throw "Unsupported system: ${stdenv.hostPlatform.system}");
nativeBuildInputs = [
autoPatchelfHook
makeWrapper
];
buildInputs = [
alsa-lib
freetype
libjack2
libglvnd
libpulseaudio
];
desktop = makeDesktopItem {
name = "project-outfox";
desktopName = "Project OutFox";
genericName = "Rhythm game engine";
exec = "OutFox";
tryExec = "OutFox";
categories = [ "Game" ];
};
patchPhase = ''
find ./Appearance -type f -executable -exec chmod -x {} \;
'';
installPhase = ''
mkdir -p $out/bin $out/share/OutFox $out/share/applications
cp -r ./. $out/share/OutFox
ln -s ${desktop}/share/applications/project-outfox.desktop $out/share/applications/project-outfox.desktop
makeWrapper $out/share/OutFox/OutFox $out/bin/OutFox --argv0
'';
meta = with lib; {
description = "A rhythm game engine forked from StepMania";
homepage = "https://projectoutfox.com";
sourceProvenance = with sourceTypes; [ binaryNativeCode ];
license = licenses.unfree;
platforms = [ "x86_64-linux" "i686-linux" "aarch64-linux" "armv7l-linux" ];
maintainers = with maintainers; [ maxwell-lt ];
mainProgram = "OutFox";
};
}

View File

@ -6,14 +6,14 @@
python3.pkgs.buildPythonApplication { python3.pkgs.buildPythonApplication {
pname = "renode-dts2repl"; pname = "renode-dts2repl";
version = "unstable-2024-02-19"; version = "unstable-2024-02-23";
pyproject = true; pyproject = true;
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "antmicro"; owner = "antmicro";
repo = "dts2repl"; repo = "dts2repl";
rev = "d0bf509a04327bfe5a8542fdbcc71cf368bb9ac7"; rev = "ae616f4f6a70a2f497c2a9ce8c9c64b34238e553";
hash = "sha256-era8iyKOk5JzemSWk20ojjtoRsjSA43uzQC1ZFXUkZc="; hash = "sha256-2Q7hfXf9nCrmHxJ0S8njF5zIgcGXaRPPVogtsPgLLsI=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -14,9 +14,9 @@
}: }:
stdenv.mkDerivation (self: { stdenv.mkDerivation (self: {
pname = "srm-cuarzo"; pname = "srm-cuarzo";
version = "0.5.2-1"; version = "0.5.3-1";
rev = "v${self.version}"; rev = "v${self.version}";
hash = "sha256-FMd1v0K+H7DlSD0osmWrnuSKqQZxw3RUZq8JwZFm/f4="; hash = "sha256-KRp+rTpiUbOmUPE9vASwTF+c8TDveFnAEqptcGO5luc=";
src = fetchFromGitHub { src = fetchFromGitHub {
inherit (self) rev hash; inherit (self) rev hash;

View File

@ -4,16 +4,16 @@
}: }:
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "typos-lsp"; pname = "typos-lsp";
version = "0.1.12"; version = "0.1.13";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "tekumara"; owner = "tekumara";
repo = "typos-lsp"; repo = "typos-lsp";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-LzemgHVCuLkLaJyyrJhIsOOn+OnYuiJsMSxITNz6R8g="; hash = "sha256-2nNOUeuDDBi7Ak7ATKYyRqmGwebk0JqIdHN6GV+v+aA=";
}; };
cargoHash = "sha256-LFRg/Y/nudrdPw/o3WUH6aM+ThE8N/HII5J0Ikid8GI="; cargoHash = "sha256-hQoxaavR4cefmpr+znXOs1OFJJ83mGk4TidFf13l7Ho=";
# fix for compilation on aarch64 # fix for compilation on aarch64
# see https://github.com/NixOS/nixpkgs/issues/145726 # see https://github.com/NixOS/nixpkgs/issues/145726

View File

@ -0,0 +1,96 @@
{ stdenv
, lib
, fetchFromGitHub
, gnat
, gnatcoll-core
, gprbuild
, python3
, ocamlPackages
, makeWrapper
}:
let
gnat_version = lib.versions.major gnat.version;
fetchSpark2014 = { rev, sha256 } : fetchFromGitHub {
owner = "AdaCore";
repo = "spark2014";
fetchSubmodules = true;
inherit rev sha256;
};
spark2014 = {
"12" = {
src = fetchSpark2014 {
rev = "ab34e07080a769b63beacc141707b5885c49d375"; # branch fsf-12
sha256 = "sha256-7pe3eWitpxmqzjW6qEIEuN0qr2IR+kJ7Ssc9pTBcCD8=";
};
commit_date = "2022-05-25";
};
"13" = {
src = fetchSpark2014 {
rev = "12db22e854defa9d1c993ef904af1e72330a68ca"; # branch fsf-13
sha256 = "sha256-mZWP9yF1O4knCiXx8CqolnS+93bM+hTQy40cd0HZmwI=";
};
commit_date = "2023-01-05";
};
};
thisSpark = spark2014.${gnat_version} or
(builtins.throw "GNATprove depend on a specific GNAT version and can't be built using GNAT ${gnat_version}.");
in
stdenv.mkDerivation rec {
pname = "gnatprove";
version = "fsf-${gnat_version}_${thisSpark.commit_date}";
src = thisSpark.src;
nativeBuildInputs = [
gnat
gprbuild
python3
ocamlPackages.ocaml
makeWrapper
];
buildInputs = [
gnatcoll-core
ocamlPackages.camlzip
ocamlPackages.findlib
ocamlPackages.menhir
ocamlPackages.menhirLib
ocamlPackages.num
ocamlPackages.yojson
ocamlPackages.zarith
];
propagatedBuildInputs = [
gprbuild
];
postPatch = ''
# gnat2why/gnat_src points to the GNAT sources
tar xf ${gnat.cc.src} gcc-${gnat.cc.version}/gcc/ada
mv gcc-${gnat.cc.version}/gcc/ada gnat2why/gnat_src
'';
configurePhase = ''
make setup
'';
installPhase = ''
make install-all
cp -a ./install/. $out
mkdir $out/share/gpr
ln -s $out/lib/gnat/* $out/share/gpr/
'';
meta = with lib; {
description = "a software development technology specifically designed for engineering high-reliability applications";
homepage = "https://github.com/AdaCore/spark2014";
maintainers = [ maintainers.jiegec ];
license = licenses.gpl3;
platforms = platforms.all;
};
}

View File

@ -54,7 +54,10 @@ stdenv.mkDerivation {
# link gprconfig_kb db from gprbuild-boot into build dir, # link gprconfig_kb db from gprbuild-boot into build dir,
# the install process copies its contents to $out # the install process copies its contents to $out
preInstall = '' preInstall = ''
ln -sf ${gprbuild-boot}/share/gprconfig share/gprconfig # Use PATH to discover spliced gprbuild-boot from buildPackages,
# since path interpolation would give us gprbuild-boot from pkgsHostTarget
gprbuild_boot="$(dirname "$(type -p gprbuild)")/.."
ln -sf "$gprbuild_boot/share/gprconfig" share/gprconfig
''; '';
# no need for the install script # no need for the install script

View File

@ -65,6 +65,11 @@ stdenv.mkDerivation rec {
hardeningDisable = [ "format" ]; hardeningDisable = [ "format" ];
# ECLs make check only works after install, making it a de-facto
# installCheck.
doInstallCheck = true;
installCheckTarget = "check";
postInstall = '' postInstall = ''
sed -e 's/@[-a-zA-Z_]*@//g' -i $out/bin/ecl-config sed -e 's/@[-a-zA-Z_]*@//g' -i $out/bin/ecl-config
wrapProgram "$out/bin/ecl" --prefix PATH ':' "${ wrapProgram "$out/bin/ecl" --prefix PATH ':' "${

View File

@ -1,4 +1,4 @@
{ lib, stdenv, callPackage, clisp, fetchurl, fetchpatch, writeText, zstd { lib, stdenv, callPackage, clisp, coreutils, fetchurl, strace, texinfo, which, writeText, zstd
, threadSupport ? (stdenv.hostPlatform.isx86 || "aarch64-linux" == stdenv.hostPlatform.system || "aarch64-darwin" == stdenv.hostPlatform.system) , threadSupport ? (stdenv.hostPlatform.isx86 || "aarch64-linux" == stdenv.hostPlatform.system || "aarch64-darwin" == stdenv.hostPlatform.system)
, linkableRuntime ? stdenv.hostPlatform.isx86 , linkableRuntime ? stdenv.hostPlatform.isx86
, disableImmobileSpace ? false , disableImmobileSpace ? false
@ -8,8 +8,13 @@
, purgeNixReferences ? false , purgeNixReferences ? false
, coreCompression ? lib.versionAtLeast version "2.2.6" , coreCompression ? lib.versionAtLeast version "2.2.6"
, markRegionGC ? lib.versionAtLeast version "2.4.0" , markRegionGC ? lib.versionAtLeast version "2.4.0"
, texinfo
, version , version
# Set this to a lisp binary to use a custom bootstrap lisp compiler for
# SBCL. Leave as null to use the default. This is useful for local development
# of SBCL, because you can use your existing stock SBCL as a boostrap. On Hydra
# of course we cant do that because SBCL hasnt been built yet, so we use
# CLISP, but thats much slower.
, bootstrapLisp ? null
}: }:
let let
@ -62,14 +67,16 @@ let
sbclBootstrap = callPackage ./bootstrap.nix { sbclBootstrap = callPackage ./bootstrap.nix {
cfg = bootstrapBinaries.${stdenv.hostPlatform.system}; cfg = bootstrapBinaries.${stdenv.hostPlatform.system};
}; };
bootstrapLisp = bootstrapLisp' =
if (builtins.hasAttr stdenv.hostPlatform.system bootstrapBinaries) if bootstrapLisp != null
then bootstrapLisp
else if (builtins.hasAttr stdenv.hostPlatform.system bootstrapBinaries)
then "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit" then "${sbclBootstrap}/bin/sbcl --disable-debugger --no-userinit --no-sysinit"
else "${clisp}/bin/clisp -E UTF-8 --silent -norc"; else "${clisp}/bin/clisp -E UTF-8 --silent -norc";
in in
stdenv.mkDerivation rec { stdenv.mkDerivation (self: rec {
pname = "sbcl"; pname = "sbcl";
inherit version; inherit version;
@ -78,48 +85,62 @@ stdenv.mkDerivation rec {
inherit (versionMap.${version}) sha256; inherit (versionMap.${version}) sha256;
}; };
nativeBuildInputs = [ texinfo ]; nativeBuildInputs = [
texinfo
] ++ lib.optionals self.doCheck (
[
which
] ++ lib.optionals (builtins.elem stdenv.system strace.meta.platforms) [
strace
]
);
buildInputs = lib.optionals coreCompression [ zstd ]; buildInputs = lib.optionals coreCompression [ zstd ];
patches = lib.optionals (version == "2.4.0") [ patches = [
./search-for-binaries-in-PATH.patch
] ++ lib.optionals (version == "2.4.0") [
./fix-2.4.0-aarch64-darwin.patch ./fix-2.4.0-aarch64-darwin.patch
]; ];
postPatch = '' # I dont know why these are failing (on ofBorg), and Id rather just disable
echo '"${version}.nixos"' > version.lisp-expr # them and move forward with the succeeding tests than block testing
# altogether. One by one hopefully we can fix these (on ofBorg,
# SBCL checks whether files are up-to-date in many places.. # upstream--somehow some way) in due time.
# Unfortunately, same timestamp is not good enough disabledTestFiles = lib.optionals (builtins.elem stdenv.hostPlatform.system [
sed -e 's@> x y@>= x y@' -i contrib/sb-aclrepl/repl.lisp "x86_64-linux"
#sed -e '/(date)/i((= date 2208988801) 2208988800)' -i contrib/asdf/asdf.lisp "aarch64-linux"
sed -i src/cold/slam.lisp -e \ ]) [
'/file-write-date input/a)' "foreign-stack-alignment.impure.lisp"
sed -i src/cold/slam.lisp -e \ # Floating point tests are fragile
'/file-write-date output/i(or (and (= 2208988801 (file-write-date output)) (= 2208988801 (file-write-date input)))' # https://sourceforge.net/p/sbcl/mailman/message/58728554/
sed -i src/code/target-load.lisp -e \ "compiler.pure.lisp"
'/date defaulted-fasl/a)' "float.pure.lisp"
sed -i src/code/target-load.lisp -e \ ] ++ lib.optionals (stdenv.hostPlatform.system == "aarch64-linux") [
'/date defaulted-source/i(or (and (= 2208988801 (file-write-date defaulted-source-truename)) (= 2208988801 (file-write-date defaulted-fasl-truename)))' # This is failing on aarch64-linux on ofBorg. Not on my local machine nor on
# a VM on my laptop. Not sure whats wrong.
# Fix the tests "traceroot.impure.lisp"
sed -e '5,$d' -i contrib/sb-bsd-sockets/tests.lisp ];
sed -e '5,$d' -i contrib/sb-simple-streams/*test*.lisp postPatch = lib.optionalString (self.disabledTestFiles != [ ]) ''
(cd tests ; rm -f ${lib.concatStringsSep " " self.disabledTestFiles})
'' ''
+ (if purgeNixReferences + lib.optionalString purgeNixReferences ''
then # This is the default location to look for the core; by default in $out/lib/sbcl
# This is the default location to look for the core; by default in $out/lib/sbcl sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \
'' -i src/runtime/runtime.c
sed 's@^\(#define SBCL_HOME\) .*$@\1 "/no-such-path"@' \ ''
-i src/runtime/runtime.c + ''
'' (
else shopt -s nullglob
# Fix software version retrieval # Tests need patching regardless of purging of paths from the final
'' # binary. There are some tricky files in nested directories which should
sed -e "s@/bin/uname@$(command -v uname)@g" -i src/code/*-os.lisp \ # definitely NOT be patched this way, hence just a single * (and no
src/code/run-program.lisp # globstar).
'' substituteInPlace ${if purgeNixReferences then "tests" else "{tests,src/code}"}/*.{lisp,sh} \
); --replace-quiet /usr/bin/env "${coreutils}/bin/env" \
--replace-quiet /bin/uname "${coreutils}/bin/uname" \
--replace-quiet /bin/sh "${stdenv.shell}"
)
'';
preBuild = '' preBuild = ''
export INSTALL_ROOT=$out export INSTALL_ROOT=$out
@ -138,7 +159,16 @@ stdenv.mkDerivation rec {
optional (!threadSupport) "sb-thread" ++ optional (!threadSupport) "sb-thread" ++
optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ]; optionals disableImmobileSpace [ "immobile-space" "immobile-code" "compact-instance-header" ];
env.NIX_CFLAGS_COMPILE = toString (lib.optionals (lib.versionOlder version "2.1.10") [ buildArgs = [
"--prefix=$out"
"--xc-host=${lib.escapeShellArg bootstrapLisp'}"
] ++ builtins.map (x: "--with-${x}") self.enableFeatures
++ builtins.map (x: "--without-${x}") self.disableFeatures
++ lib.optionals (stdenv.hostPlatform.system == "aarch64-darwin") [
"--arch=arm64"
];
env.NIX_CFLAGS_COMPILE = toString (lib.optionals (lib.versionOlder self.version "2.1.10") [
# Workaround build failure on -fno-common toolchains like upstream # Workaround build failure on -fno-common toolchains like upstream
# clang-13. Without the change build fails as: # clang-13. Without the change build fails as:
# duplicate symbol '_static_code_space_free_pointer' in: alloc.o traceroot.o # duplicate symbol '_static_code_space_free_pointer' in: alloc.o traceroot.o
@ -151,22 +181,32 @@ stdenv.mkDerivation rec {
buildPhase = '' buildPhase = ''
runHook preBuild runHook preBuild
sh make.sh --prefix=$out --xc-host="${bootstrapLisp}" ${ sh make.sh ${lib.concatStringsSep " " self.buildArgs}
lib.concatStringsSep " "
(builtins.map (x: "--with-${x}") enableFeatures ++
builtins.map (x: "--without-${x}") disableFeatures)
} ${lib.optionalString (stdenv.hostPlatform.system == "aarch64-darwin") "--arch=arm64"}
(cd doc/manual ; make info) (cd doc/manual ; make info)
runHook postBuild runHook postBuild
''; '';
# Tests on ofBorgs x86_64-darwin platforms are so unstable that a random one
# will fail every other run. Theres a deeper problem here; we might as well
# disable them entirely so at least the other platforms get to benefit from
# testing.
doCheck = stdenv.hostPlatform.system != "x86_64-darwin";
# From the INSTALL docs
checkPhase = ''
runHook preCheck
(cd tests && sh run-tests.sh)
runHook postCheck
'';
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
INSTALL_ROOT=$out sh install.sh INSTALL_ROOT=$out sh install.sh
runHook postInstall
'' ''
+ lib.optionalString (!purgeNixReferences) '' + lib.optionalString (!purgeNixReferences) ''
cp -r src $out/lib/sbcl cp -r src $out/lib/sbcl
@ -176,6 +216,8 @@ stdenv.mkDerivation rec {
'(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*") '(("SYS:SRC;**;*.*.*" #P"$out/lib/sbcl/src/**/*.*")
("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*"))) ("SYS:CONTRIB;**;*.*.*" #P"$out/lib/sbcl/contrib/**/*.*")))
EOF EOF
'' + ''
runHook postInstall
''; '';
setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" '' setupHook = lib.optional purgeNixReferences (writeText "setupHook.sh" ''
@ -186,7 +228,7 @@ stdenv.mkDerivation rec {
''); '');
meta = with lib; { meta = with lib; {
description = "Lisp compiler"; description = "Common Lisp compiler";
homepage = "https://sbcl.org"; homepage = "https://sbcl.org";
license = licenses.publicDomain; # and FreeBSD license = licenses.publicDomain; # and FreeBSD
maintainers = lib.teams.lisp.members; maintainers = lib.teams.lisp.members;
@ -198,4 +240,4 @@ stdenv.mkDerivation rec {
"aarch64-linux" "aarch64-linux"
]; ];
}; };
} })

View File

@ -0,0 +1,108 @@
From 35856b09e3606361b17f21225c759632be1cdf34 Mon Sep 17 00:00:00 2001
From: Hraban Luyat <hraban@0brg.net>
Date: Wed, 24 Jan 2024 14:58:53 -0500
Subject: [PATCH] Search for binaries in tests in PATH, not /usr/bin
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Same as 8ed662fbfeb5dde35eb265f390b55b01f79f70c1 but for tests, and for more
than just cat. For the same reasons as that diff.
---
tests/run-program.impure.lisp | 18 ++++++++++--------
tests/run-program.test.sh | 9 ++++-----
2 files changed, 14 insertions(+), 13 deletions(-)
diff --git a/tests/run-program.impure.lisp b/tests/run-program.impure.lisp
index 0eab8884c..b07d1e4fb 100644
--- a/tests/run-program.impure.lisp
+++ b/tests/run-program.impure.lisp
@@ -15,7 +15,7 @@
(defun bin-pwd-ignoring-result ()
(let ((initially-open-fds (directory "/proc/self/fd/*" :resolve-symlinks nil)))
- (sb-ext:run-program "/usr/bin/pwd" nil :input :stream :output :stream :wait nil)
+ (sb-ext:run-program "pwd" nil :search t :input :stream :output :stream :wait nil)
(length initially-open-fds)))
(with-test (:name (run-program :autoclose-streams)
@@ -49,7 +49,7 @@
(with-test (:name (run-program :cat 2)
:skipped-on (or (not :sb-thread) :win32))
;; Tests that reading from a FIFO is interruptible.
- (let* ((process (run-program "/bin/cat" '()
+ (let* ((process (run-program "cat" '() :search t
:wait nil :output :stream :input :stream))
(in (process-input process))
(out (process-output process))
@@ -167,7 +167,7 @@
(defparameter *cat-out* (make-synonym-stream '*cat-out-pipe*)))
(with-test (:name (run-program :cat 5) :fails-on :win32)
- (let ((cat (run-program "/bin/cat" nil :input *cat-in* :output *cat-out*
+ (let ((cat (run-program "cat" nil :search t :input *cat-in* :output *cat-out*
:wait nil)))
(dolist (test '("This is a test!"
"This is another test!"
@@ -310,14 +310,16 @@
(let ((had-error-p nil))
(flet ((barf (&optional (format :default))
(with-output-to-string (stream)
- (run-program #-netbsd "/usr/bin/perl" #+netbsd "/usr/pkg/bin/perl"
+ (run-program #-netbsd "perl" #+netbsd "/usr/pkg/bin/perl"
'("-e" "print \"\\x20\\xfe\\xff\\x0a\"")
+ :search #-netbsd t #+netbsd nil
:output stream
:external-format format)))
(no-barf ()
(with-output-to-string (stream)
- (run-program "/bin/echo"
+ (run-program "echo"
'("This is a test")
+ :search t
:output stream))))
(handler-case
(barf :utf-8)
@@ -353,9 +355,9 @@
;; If the permitted inputs are :ANY then leave it be
(listp (symbol-value 'run-tests::*allowed-inputs*)))
(push (namestring file) (symbol-value 'run-tests::*allowed-inputs*)))
- (assert (null (run-program "/bin/cat" '() :input file)))
- (assert (null (run-program "/bin/cat" '() :output #.(or *compile-file-truename*
- *load-truename*)
+ (assert (null (run-program "cat" '() :search t :input file)))
+ (assert (null (run-program "cat" '() :search t :output #.(or *compile-file-truename*
+ *load-truename*)
:if-output-exists nil)))))
diff --git a/tests/run-program.test.sh b/tests/run-program.test.sh
index 48eaef889..c926e5a05 100755
--- a/tests/run-program.test.sh
+++ b/tests/run-program.test.sh
@@ -39,9 +39,8 @@ run_sbcl --eval "(defvar *exit-ok* $EXIT_LISP_WIN)" <<'EOF'
(assert (not (zerop (sb-ext:process-exit-code
(sb-ext:run-program "false" () :search t :wait t)))))
(let ((string (with-output-to-string (stream)
- (our-run-program "/bin/echo"
- '("foo" "bar")
- :output stream))))
+ (run-program "echo" '("foo" "bar")
+ :search t :output stream))))
(assert (string= string "foo bar
")))
(format t ";;; Smoke tests: PASS~%")
@@ -103,8 +102,8 @@ run_sbcl --eval "(defvar *exit-ok* $EXIT_LISP_WIN)" <<'EOF'
;; make sure that a stream input argument is basically reasonable.
(let ((string (let ((i (make-string-input-stream "abcdef")))
(with-output-to-string (stream)
- (our-run-program "/bin/cat" ()
- :input i :output stream)))))
+ (run-program "cat" ()
+ :search t :input i :output stream)))))
(assert (= (length string) 6))
(assert (string= string "abcdef")))
--
2.43.0

View File

@ -43,6 +43,11 @@ with python3Packages; buildPythonApplication rec {
}) })
]; ];
postPatch = ''
# Disable update checks at runtime
substituteInPlace platformio/maintenance.py --replace-fail ' check_platformio_upgrade()' ""
'';
nativeBuildInputs = [ nativeBuildInputs = [
installShellFiles installShellFiles
pythonRelaxDepsHook pythonRelaxDepsHook

View File

@ -57,7 +57,8 @@ def find_packages(store_path: Path, site_packages_path: str, parents: List[str])
with open(propagated_build_inputs, "r") as f: with open(propagated_build_inputs, "r") as f:
build_inputs: List[str] = f.read().strip().split(" ") build_inputs: List[str] = f.read().strip().split(" ")
for build_input in build_inputs: for build_input in build_inputs:
find_packages(Path(build_input), site_packages_path, parents + [build_input]) if build_input not in parents:
find_packages(Path(build_input), site_packages_path, parents + [build_input])
find_packages(out_path, site_packages_path, [f"this derivation: {out_path}"]) find_packages(out_path, site_packages_path, [f"this derivation: {out_path}"])

View File

@ -78,6 +78,15 @@ in {
]; ];
}; };
# multi-output derivation with dependency on itself must not crash
cyclic-dependencies =
generatePythonPackage {
pname = "cyclic-dependencies";
preFixup = ''
propagatedBuildInputs+=("$out")
'';
};
# Simplest test case that should trigger a conflict # Simplest test case that should trigger a conflict
catches-simple-conflict = let catches-simple-conflict = let
# this build must fail due to conflicts # this build must fail due to conflicts

View File

@ -1,67 +0,0 @@
{ stdenv
, lib
, fetchFromGitHub
, gnat12
, gnatcoll-core
, gprbuild
, python3
, ocamlPackages
, makeWrapper
}:
stdenv.mkDerivation rec {
pname = "spark2014";
version = "unstable-2022-05-25";
src = fetchFromGitHub {
owner = "AdaCore";
repo = "spark2014";
# commit on fsf-12 branch
rev = "ab34e07080a769b63beacc141707b5885c49d375";
sha256 = "sha256-7pe3eWitpxmqzjW6qEIEuN0qr2IR+kJ7Ssc9pTBcCD8=";
fetchSubmodules = true;
};
nativeBuildInputs = [
gnat12
gprbuild
python3
ocamlPackages.ocaml
makeWrapper
];
buildInputs = [
gnatcoll-core
ocamlPackages.camlzip
ocamlPackages.findlib
ocamlPackages.menhir
ocamlPackages.menhirLib
ocamlPackages.num
ocamlPackages.yojson
ocamlPackages.zarith
];
postPatch = ''
# gnat2why/gnat_src points to the GNAT sources
tar xf ${gnat12.cc.src} gcc-${gnat12.cc.version}/gcc/ada
mv gcc-${gnat12.cc.version}/gcc/ada gnat2why/gnat_src
'';
configurePhase = ''
make setup
'';
installPhase = ''
make install-all
cp -a ./install/. $out
'';
meta = with lib; {
description = "a software development technology specifically designed for engineering high-reliability applications";
homepage = "https://github.com/AdaCore/spark2014";
maintainers = [ maintainers.jiegec ];
license = licenses.gpl3;
platforms = platforms.all;
};
}

View File

@ -2,10 +2,10 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "leatherman"; pname = "leatherman";
version = "1.12.11"; version = "1.12.12";
src = fetchFromGitHub { src = fetchFromGitHub {
sha256 = "sha256-XB5qIXPe1Tu+cfxuL+HAfR9QQNiUY/noO51CVEz9hsU="; sha256 = "sha256-V/AMdJ3ldlgBaO8gS0FOqb5tTdRGGW/+3LZq/TKkdog=";
rev = version; rev = version;
repo = "leatherman"; repo = "leatherman";
owner = "puppetlabs"; owner = "puppetlabs";

View File

@ -1,89 +0,0 @@
From 768be8b9f98e30a8bd2d51576be9dfcf2cb838ea Mon Sep 17 00:00:00 2001
From: Kiskae <Kiskae@users.noreply.github.com>
Date: Tue, 26 Sep 2023 20:53:00 +0200
Subject: [PATCH] simplify compilation of static/shared with cmake
Signed-off-by: Kiskae <Kiskae@users.noreply.github.com>
---
CMakeLists.txt | 2 ++
example/CMakeLists.txt | 2 +-
perf/CMakeLists.txt | 2 +-
src/CMakeLists.txt | 7 ++-----
test/parsing/CMakeLists.txt | 2 +-
5 files changed, 7 insertions(+), 8 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 471eee13..9af25203 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -16,6 +16,8 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
PROJECT(YetAnotherJSONParser C)
+option(BUILD_SHARED_LIBS "Build using shared libraries" ON)
+
SET (YAJL_MAJOR 2)
SET (YAJL_MINOR 1)
SET (YAJL_MICRO 1)
diff --git a/example/CMakeLists.txt b/example/CMakeLists.txt
index 0a7f6220..62ddf14c 100644
--- a/example/CMakeLists.txt
+++ b/example/CMakeLists.txt
@@ -20,4 +20,4 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(parse_config ${SRCS})
-TARGET_LINK_LIBRARIES(parse_config yajl_s)
+TARGET_LINK_LIBRARIES(parse_config yajl)
diff --git a/perf/CMakeLists.txt b/perf/CMakeLists.txt
index b438d7a1..924a2681 100644
--- a/perf/CMakeLists.txt
+++ b/perf/CMakeLists.txt
@@ -20,4 +20,4 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(perftest ${SRCS})
-TARGET_LINK_LIBRARIES(perftest yajl_s)
+TARGET_LINK_LIBRARIES(perftest yajl)
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 789ddf99..78875032 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -35,9 +35,7 @@ SET (pkgconfigDir ${CMAKE_CURRENT_BINARY_DIR}/../${YAJL_DIST_NAME}/lib/pkgconfig
# set the output path for libraries
SET(LIBRARY_OUTPUT_PATH ${libDir})
-ADD_LIBRARY(yajl_s STATIC ${SRCS} ${HDRS} ${PUB_HDRS})
-
-ADD_LIBRARY(yajl SHARED ${SRCS} ${HDRS} ${PUB_HDRS})
+ADD_LIBRARY(yajl ${SRCS} ${HDRS} ${PUB_HDRS})
#### setup shared library version number
SET_TARGET_PROPERTIES(yajl PROPERTIES
@@ -69,7 +67,7 @@ FOREACH (header ${PUB_HDRS})
EXEC_PROGRAM(${CMAKE_COMMAND} ARGS -E copy_if_different ${header} ${incDir})
- ADD_CUSTOM_COMMAND(TARGET yajl_s POST_BUILD
+ ADD_CUSTOM_COMMAND(TARGET yajl POST_BUILD
COMMAND ${CMAKE_COMMAND} -E copy_if_different ${header} ${incDir})
ENDFOREACH (header ${PUB_HDRS})
@@ -81,7 +79,6 @@ INSTALL(TARGETS yajl
RUNTIME DESTINATION lib${LIB_SUFFIX}
LIBRARY DESTINATION lib${LIB_SUFFIX}
ARCHIVE DESTINATION lib${LIB_SUFFIX})
-INSTALL(TARGETS yajl_s ARCHIVE DESTINATION lib${LIB_SUFFIX})
INSTALL(FILES ${PUB_HDRS} DESTINATION include/yajl)
INSTALL(FILES ${incDir}/yajl_version.h DESTINATION include/yajl)
INSTALL(FILES ${pkgconfigDir}/yajl.pc DESTINATION lib${LIB_SUFFIX}/pkgconfig)
diff --git a/test/parsing/CMakeLists.txt b/test/parsing/CMakeLists.txt
index c22a3887..f445920d 100644
--- a/test/parsing/CMakeLists.txt
+++ b/test/parsing/CMakeLists.txt
@@ -20,4 +20,4 @@ LINK_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/../../${YAJL_DIST_NAME}/lib)
ADD_EXECUTABLE(yajl_test ${SRCS})
-TARGET_LINK_LIBRARIES(yajl_test yajl_s)
+TARGET_LINK_LIBRARIES(yajl_test yajl)

View File

@ -2,20 +2,15 @@
stdenv.mkDerivation (finalAttrs: { stdenv.mkDerivation (finalAttrs: {
pname = "yajl"; pname = "yajl";
version = "unstable-2022-04-20"; version = "2.1.0-unstable-2024-02-01";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "containers"; owner = "containers";
repo = "yajl"; repo = "yajl";
rev = "49923ccb2143e36850bcdeb781e2bcdf5ce22f15"; rev = "6bc5219389fd2752631682b0a8368e6d8218a8c5";
hash = "sha256-9bMPA5FpyBp8fvG/kkT/MnhYtdqg3QzOnmDFXKwJVW0="; hash = "sha256-vY0tqCkz6PN00Qbip5ViO64L3C06fJ4JjFuIk0TWgCo=";
}; };
patches = [
# https://github.com/containers/yajl/pull/1
./cmake-shared-static-fix.patch
];
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
doCheck = true; doCheck = true;

View File

@ -17,7 +17,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "appthreat-vulnerability-db"; pname = "appthreat-vulnerability-db";
version = "5.6.2"; version = "5.6.3";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "AppThreat"; owner = "AppThreat";
repo = "vulnerability-db"; repo = "vulnerability-db";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-/Un5Jh/3UjhJApL0eQzj545F9q+55xwFsIa5M+U93w0="; hash = "sha256-aOHnuZdjXiIqd/SeQdVB1qB7v8DfnEFH0zHctA74MPw=";
}; };
postPatch = '' postPatch = ''

View File

@ -11,7 +11,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "clarifai-grpc"; pname = "clarifai-grpc";
version = "10.1.4"; version = "10.1.6";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "Clarifai"; owner = "Clarifai";
repo = "clarifai-python-grpc"; repo = "clarifai-python-grpc";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-cYYAEen/RY5TG2jLxUS38Acehg/X8pni6T1zxhJAi1Y="; hash = "sha256-VRI4mAYWJUP9kxf+xOlcys07Jsa7Zy9bP8BDKDEYli4=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -1,12 +1,10 @@
{ lib { lib
, aiohttp
, platformdirs , platformdirs
, buildPythonPackage , buildPythonPackage
, docutils , docutils
, fetchFromGitHub , fetchFromGitHub
, flaky , flaky
, installShellFiles , installShellFiles
, packaging
, pycurl , pycurl
, pytest-asyncio , pytest-asyncio
, pytest-httpbin , pytest-httpbin
@ -20,31 +18,29 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "nvchecker"; pname = "nvchecker";
version = "2.12"; version = "2.13.1";
format = "pyproject"; pyproject = true;
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "lilydjwg"; owner = "lilydjwg";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
hash = "sha256-6mhVDC2jpIIOZeoKz4AxxU7jj8dqPVBKRWupbuY/T7E="; hash = "sha256-q+az9oaxxIOv/vLFpkT3cF5GDJsa0Cid4oPWEKg5s7M=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
setuptools
docutils docutils
installShellFiles installShellFiles
]; ];
propagatedBuildInputs = [ propagatedBuildInputs = [
aiohttp
platformdirs
packaging
pycurl
setuptools
structlog structlog
platformdirs
tornado tornado
pycurl
] ++ lib.optionals (pythonOlder "3.11") [ ] ++ lib.optionals (pythonOlder "3.11") [
tomli tomli
]; ];

View File

@ -7,7 +7,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "puremagic"; pname = "puremagic";
version = "1.20"; version = "1.21";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -16,7 +16,7 @@ buildPythonPackage rec {
owner = "cdgriffith"; owner = "cdgriffith";
repo = pname; repo = pname;
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-Iyf/Vf1uqdtHlaP9Petpp88aIGCGmHu//cH6bindL6c="; hash = "sha256-ObJp3+gk1tf1+9wBpvzs0wwP7ptDlfGwX9b4wlCb1RI=";
}; };
nativeCheckInputs = [ nativeCheckInputs = [

View File

@ -8,7 +8,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pytedee-async"; pname = "pytedee-async";
version = "0.2.13"; version = "0.2.14";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
@ -17,7 +17,7 @@ buildPythonPackage rec {
owner = "zweckj"; owner = "zweckj";
repo = "pytedee_async"; repo = "pytedee_async";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-3W+eqkniDMoDKeute5w1QyklOc/aren/Q8txBEI/4ys="; hash = "sha256-BtBHiDOYe8BkrqJEGG4eGKFMnCspCQK4fvcj2vvGmFM=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -13,7 +13,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "python-homewizard-energy"; pname = "python-homewizard-energy";
version = "4.3.0"; version = "4.3.1";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.9"; disabled = pythonOlder "3.9";
@ -22,7 +22,7 @@ buildPythonPackage rec {
owner = "DCSBL"; owner = "DCSBL";
repo = "python-homewizard-energy"; repo = "python-homewizard-energy";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-5e2PzH+kDOopH4LYOq49SlHsfBbZZk60U1BSN8OnrKI="; hash = "sha256-LpxXTzUb+N15lGno3pAhRSEJCb4NmwBcGQ/PshI9gYA=";
}; };
postPatch = '' postPatch = ''

View File

@ -0,0 +1,47 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, setuptools
, aiohttp
, incremental
, systembridgemodels
}:
buildPythonPackage rec {
pname = "systembridgeconnector";
version = "4.0.1";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "timmo001";
repo = "system-bridge-connector";
rev = "refs/tags/${version}";
hash = "sha256-dMOhw7e2sCmGItsgGcGxYVCIJM2FBm6IyxIQXPtY+Pg=";
};
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [
aiohttp
incremental
systembridgemodels
];
pythonImportsCheck = [ "systembridgeconnector" ];
# upstream has no tests
doCheck = false;
meta = {
changelog = "https://github.com/timmo001/system-bridge-connector/releases/tag/${version}";
description = "This is the connector package for the System Bridge project";
homepage = "https://github.com/timmo001/system-bridge-connector";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -0,0 +1,51 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, fetchpatch2
, setuptools
, incremental
}:
buildPythonPackage rec {
pname = "systembridgemodels";
version = "4.0.0";
pyproject = true;
disabled = pythonOlder "3.11";
src = fetchFromGitHub {
owner = "timmo001";
repo = "system-bridge-models";
rev = "refs/tags/${version}";
hash = "sha256-4nbTsVRqtoX4UhTrQS4HwoLtx0RO1VA8UewSAWOSsik=";
};
patches = [
(fetchpatch2 {
url = "https://github.com/timmo001/system-bridge-models/commit/7cd506760fd47c0f3717b6fcfe127b673e3198f8.patch";
hash = "sha256-i+GCcoyX07ii9Kj46dtAlT85jUKfF0KHEH9++UTjiik=";
})
];
nativeBuildInputs = [
setuptools
];
propagatedBuildInputs = [
incremental
];
pythonImportsCheck = [ "systembridgemodels" ];
# upstream has no tests
doCheck = false;
meta = {
changelog = "https://github.com/timmo001/system-bridge-models/releases/tag/${version}";
description = "This is the models package used by the System Bridge project";
homepage = "https://github.com/timmo001/system-bridge-models";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ dotlambda ];
};
}

View File

@ -17,7 +17,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "teslajsonpy"; pname = "teslajsonpy";
version = "3.9.11"; version = "3.10.0";
format = "pyproject"; format = "pyproject";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
@ -26,7 +26,7 @@ buildPythonPackage rec {
owner = "zabuldon"; owner = "zabuldon";
repo = pname; repo = pname;
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-oGYXhSMwG566xdGCDMz9ajJ4HJXXcYBAJQf035iJQvE="; hash = "sha256-7pT3LXBbE4/QRfmTWAJG6yarU787r2tjXRiv7ySvuSs=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -9,7 +9,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "ytmusicapi"; pname = "ytmusicapi";
version = "1.5.2"; version = "1.5.3";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "sigma67"; owner = "sigma67";
repo = "ytmusicapi"; repo = "ytmusicapi";
rev = "refs/tags/${version}"; rev = "refs/tags/${version}";
hash = "sha256-3dJ9Mu1cblBJh3BVEyxdfO+RD8kSxpdvnvox7ljMWT4="; hash = "sha256-X4bfGYFttuEMwDyjqzDe3RJGkAvVUs91hEL0JfXrdIM=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -9,7 +9,7 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "zamg"; pname = "zamg";
version = "0.3.5"; version = "0.3.6";
pyproject = true; pyproject = true;
disabled = pythonOlder "3.8"; disabled = pythonOlder "3.8";
@ -18,7 +18,7 @@ buildPythonPackage rec {
owner = "killer0071234"; owner = "killer0071234";
repo = "python-zamg"; repo = "python-zamg";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-lT345G0apo4ncM4FMs69+ql+QxvTlsEtG2KRX4oYvlo="; hash = "sha256-j864+3c0GDDftdLqLDD0hizT54c0IgTjT77jOneXlq0=";
}; };
postPatch = '' postPatch = ''

View File

@ -620,14 +620,6 @@ in
ovirt-engine-sdk = attrs: { ovirt-engine-sdk = attrs: {
buildInputs = [ curl libxml2 ]; buildInputs = [ curl libxml2 ];
dontBuild = false; dontBuild = false;
patches = [
# fix ruby 3.1 https://github.com/oVirt/ovirt-engine-sdk-ruby/pull/3
(fetchpatch {
url = "https://github.com/oVirt/ovirt-engine-sdk-ruby/pull/3/commits/b596b919bc7857fdc0fc1c61a8cb7eab32cfc2db.patch";
hash = "sha256-AzGTQaD/e6X4LOMuXhy/WhbayhWKYCGHXPFlzLRWyPM=";
stripLen = 1;
})
];
}; };
pango = attrs: { pango = attrs: {

View File

@ -2,13 +2,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "flow"; pname = "flow";
version = "0.229.1"; version = "0.229.2";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "facebook"; owner = "facebook";
repo = "flow"; repo = "flow";
rev = "v${version}"; rev = "v${version}";
hash = "sha256-zovtSY37f7WKwE0Mjl9Vc+RcYjqMRhPHafN50XAj5cE="; hash = "sha256-PoEtXk8EqlFgy33akd6na50P/tT6uWtEq+kfbayDo5s=";
}; };
postPatch = '' postPatch = ''

View File

@ -7,13 +7,13 @@
buildGoModule rec { buildGoModule rec {
pname = "kool"; pname = "kool";
version = "3.0.0"; version = "3.1.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "kool-dev"; owner = "kool-dev";
repo = "kool"; repo = "kool";
rev = version; rev = version;
hash = "sha256-+vdizU2/q2nrEanpRPy1scgfTYh/I7feW4jz8efelWY="; hash = "sha256-apecHILrtvzD1bAOuyhSokDqBB2UgCavQXOw4dQSPwc=";
}; };
vendorHash = "sha256-PmS96KVhe9TDmtYBx2hROLCbGMQ0OY3MN405dUmxPzk="; vendorHash = "sha256-PmS96KVhe9TDmtYBx2hROLCbGMQ0OY3MN405dUmxPzk=";

View File

@ -10,14 +10,14 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "ravedude"; pname = "ravedude";
version = "0.1.6"; version = "0.1.7";
src = fetchCrate { src = fetchCrate {
inherit pname version; inherit pname version;
hash = "sha256-LhPRz3DUMDoe50Hq3yO+2BHpyh5fQ4sMNGLttjkdSZw="; hash = "sha256-p5pbxnoUBhdDf7acpLStgBvoWZyFYNHxTwzDhGSApRM=";
}; };
cargoHash = "sha256-Uo8wlTAHBkn/WeGPhPP+BU80wjSyNHsWQj8QvA7mHrk="; cargoHash = "sha256-L7eXSji+irjwuOZ5uxqWK9SesRZrqEeoenJgMzqpszo=";
nativeBuildInputs = [ pkg-config ]; nativeBuildInputs = [ pkg-config ];

View File

@ -7,7 +7,7 @@
}: }:
stdenvNoCC.mkDerivation (finalAttrs: { stdenvNoCC.mkDerivation (finalAttrs: {
pname = "papermc"; pname = "papermc";
version = "1.20.2.234"; version = "1.20.4.435";
src = src =
let let
@ -16,7 +16,7 @@ stdenvNoCC.mkDerivation (finalAttrs: {
in in
fetchurl { fetchurl {
url = "https://papermc.io/api/v2/projects/paper/versions/${mcVersion}/builds/${buildNum}/downloads/paper-${mcVersion}-${buildNum}.jar"; url = "https://papermc.io/api/v2/projects/paper/versions/${mcVersion}/builds/${buildNum}/downloads/paper-${mcVersion}-${buildNum}.jar";
hash = "sha256-fR7Dq09iFGVXodQjrS7Hg4NcrKPJbNg0hexU520JC6c="; hash = "sha256-NrIsYLoAAWORw/S26NDFjYBVwpNITJxuWGZow3696wM=";
}; };
installPhase = '' installPhase = ''

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