monorepo/kifu/kifu-gtk/Cargo.nix

4919 lines
157 KiB
Nix

# This file was @generated by crate2nix 0.10.0 with the command:
# "generate"
# See https://github.com/kolloch/crate2nix for more info.
{ nixpkgs ? <nixpkgs>
, pkgs ? import nixpkgs { config = {}; }
, lib ? pkgs.lib
, stdenv ? pkgs.stdenv
, buildRustCrateForPkgs ? if buildRustCrate != null
then lib.warn "crate2nix: Passing `buildRustCrate` as argument to Cargo.nix is deprecated. If you don't customize `buildRustCrate`, replace `callPackage ./Cargo.nix {}` by `import ./Cargo.nix { inherit pkgs; }`, and if you need to customize `buildRustCrate`, use `buildRustCrateForPkgs` instead." (_: buildRustCrate)
else pkgs: pkgs.buildRustCrate
# Deprecated
, buildRustCrate ? null
# This is used as the `crateOverrides` argument for `buildRustCrate`.
, defaultCrateOverrides ? pkgs.defaultCrateOverrides
# The features to enable for the root_crate or the workspace_members.
, rootFeatures ? [ "default" ]
# If true, throw errors instead of issueing deprecation warnings.
, strictDeprecation ? false
# Used for conditional compilation based on CPU feature detection.
, targetFeatures ? []
# Whether to perform release builds: longer compile times, faster binaries.
, release ? true
# Additional crate2nix configuration if it exists.
, crateConfig
? if builtins.pathExists ./crate-config.nix
then pkgs.callPackage ./crate-config.nix {}
else {}
}:
rec {
#
# "public" attributes that we attempt to keep stable with new versions of crate2nix.
#
rootCrate = rec {
packageId = "kifu-gtk";
# Use this attribute to refer to the derivation building your root crate package.
# You can override the features with rootCrate.build.override { features = [ "default" "feature1" ... ]; }.
build = internal.buildRustCrateWithFeatures {
inherit packageId;
};
# Debug support which might change between releases.
# File a bug if you depend on any for non-debug work!
debug = internal.debugCrate { inherit packageId; };
};
# Refer your crate build derivation by name here.
# You can override the features with
# workspaceMembers."${crateName}".build.override { features = [ "default" "feature1" ... ]; }.
workspaceMembers = {
"kifu-gtk" = rec {
packageId = "kifu-gtk";
build = internal.buildRustCrateWithFeatures {
packageId = "kifu-gtk";
};
# Debug support which might change between releases.
# File a bug if you depend on any for non-debug work!
debug = internal.debugCrate { inherit packageId; };
};
};
# A derivation that joins the outputs of all workspace members together.
allWorkspaceMembers = pkgs.symlinkJoin {
name = "all-workspace-members";
paths =
let members = builtins.attrValues workspaceMembers;
in builtins.map (m: m.build) members;
};
#
# "internal" ("private") attributes that may change in every new version of crate2nix.
#
internal = rec {
# Build and dependency information for crates.
# Many of the fields are passed one-to-one to buildRustCrate.
#
# Noteworthy:
# * `dependencies`/`buildDependencies`: similar to the corresponding fields for buildRustCrate.
# but with additional information which is used during dependency/feature resolution.
# * `resolvedDependencies`: the selected default features reported by cargo - only included for debugging.
# * `devDependencies` as of now not used by `buildRustCrate` but used to
# inject test dependencies into the build
crates = {
"adler" = rec {
crateName = "adler";
version = "1.0.2";
edition = "2015";
sha256 = "1zim79cvzd5yrkzl3nyfx0avijwgk9fqv3yrscdy1cc79ih02qpj";
authors = [
"Jonas Schievink <jonasschievink@gmail.com>"
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "std" ];
"rustc-dep-of-std" = [ "core" "compiler_builtins" ];
};
};
"anyhow" = rec {
crateName = "anyhow";
version = "1.0.70";
edition = "2018";
sha256 = "1r1py8nk0xj6h21jgww8f0zazdvjimbnl1hiacj8i3cz1xgcxs3x";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
features = {
"backtrace" = [ "dep:backtrace" ];
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"autocfg" = rec {
crateName = "autocfg";
version = "1.1.0";
edition = "2015";
sha256 = "1ylp3cb47ylzabimazvbz9ms6ap784zhb6syaz6c1jqpmcmq0s6l";
authors = [
"Josh Stone <cuviper@gmail.com>"
];
};
"bit_field" = rec {
crateName = "bit_field";
version = "0.10.2";
edition = "2015";
sha256 = "0qav5rpm4hqc33vmf4vc4r0mh51yjx5vmd9zhih26n9yjs3730nw";
authors = [
"Philipp Oppermann <dev@phil-opp.com>"
];
};
"bitflags" = rec {
crateName = "bitflags";
version = "1.3.2";
edition = "2018";
sha256 = "12ki6w8gn1ldq7yz9y680llwk5gmrhrzszaa17g1sbrw2r2qvwxy";
authors = [
"The Rust Project Developers"
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"rustc-dep-of-std" = [ "core" "compiler_builtins" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"bumpalo" = rec {
crateName = "bumpalo";
version = "3.12.0";
edition = "2021";
sha256 = "0damxqdgqqzp3zyfwvbrg5hzx39kqgxnxl3yyq3kk4ald0jiw9hd";
authors = [
"Nick Fitzgerald <fitzgen@gmail.com>"
];
features = {
};
resolvedDefaultFeatures = [ "default" ];
};
"bytemuck" = rec {
crateName = "bytemuck";
version = "1.13.1";
edition = "2018";
sha256 = "1sifp93886b552fwbywmp5f4gysar7z62mhh4y8dh5gxhkkbrzhp";
authors = [
"Lokathor <zefria@gmail.com>"
];
features = {
"bytemuck_derive" = [ "dep:bytemuck_derive" ];
"derive" = [ "bytemuck_derive" ];
"extern_crate_std" = [ "extern_crate_alloc" ];
};
resolvedDefaultFeatures = [ "extern_crate_alloc" ];
};
"byteorder" = rec {
crateName = "byteorder";
version = "1.4.3";
edition = "2018";
sha256 = "0456lv9xi1a5bcm32arknf33ikv76p3fr9yzki4lb2897p2qkh8l";
authors = [
"Andrew Gallant <jamslam@gmail.com>"
];
features = {
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"bytes" = rec {
crateName = "bytes";
version = "1.4.0";
edition = "2018";
sha256 = "1gkh3fk4fm9xv5znlib723h5md5sxsvbd5113sbxff6g1lmgvcl9";
authors = [
"Carl Lerche <me@carllerche.com>"
"Sean McArthur <sean@seanmonstar.com>"
];
features = {
"default" = [ "std" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"cairo-rs" = rec {
crateName = "cairo-rs";
version = "0.17.0";
edition = "2021";
sha256 = "0wg8n0yz8p71db4iznp7949xzx92vmzgbhdd51lj5wcasksm9bx8";
libName = "cairo";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "cairo-sys-rs";
packageId = "cairo-sys-rs";
rename = "ffi";
}
{
name = "glib";
packageId = "glib";
optional = true;
}
{
name = "libc";
packageId = "libc";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "thiserror";
packageId = "thiserror";
}
];
features = {
"default" = [ "use_glib" ];
"dox" = [ "ffi/dox" "glib/dox" "freetype" ];
"freetype" = [ "ffi/freetype" "freetype-rs" ];
"freetype-rs" = [ "dep:freetype-rs" ];
"glib" = [ "dep:glib" ];
"pdf" = [ "ffi/pdf" ];
"png" = [ "ffi/png" ];
"ps" = [ "ffi/ps" ];
"script" = [ "ffi/script" ];
"svg" = [ "ffi/svg" ];
"use_glib" = [ "glib" "ffi/use_glib" ];
"v1_16" = [ "ffi/v1_16" ];
"v1_18" = [ "v1_16" "ffi/v1_18" ];
"win32-surface" = [ "ffi/win32-surface" ];
"xcb" = [ "ffi/xcb" ];
"xlib" = [ "ffi/xlib" ];
};
resolvedDefaultFeatures = [ "default" "glib" "use_glib" ];
};
"cairo-sys-rs" = rec {
crateName = "cairo-sys-rs";
version = "0.17.0";
edition = "2021";
sha256 = "0kjrcfsgp397a4kqfnsr4ssimqpm4j8jdvjy30zybr9h3nh84lzm";
libName = "cairo_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
optional = true;
}
{
name = "libc";
packageId = "libc";
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "x11/dox" "glib/dox" ];
"glib" = [ "dep:glib" ];
"use_glib" = [ "glib" ];
"v1_18" = [ "v1_16" ];
"win32-surface" = [ "winapi" ];
"winapi" = [ "dep:winapi" ];
"x11" = [ "dep:x11" ];
"xlib" = [ "x11" ];
};
resolvedDefaultFeatures = [ "glib" "use_glib" ];
};
"cfg-expr" = rec {
crateName = "cfg-expr";
version = "0.11.0";
edition = "2021";
sha256 = "1ai8cgpmf9b6v9miivqzyi0jxh26vy28w55whqxcm5dj09j7lddh";
authors = [
"Embark <opensource@embark-studios.com>"
"Jake Shadle <jake.shadle@embark-studios.com>"
];
dependencies = [
{
name = "smallvec";
packageId = "smallvec";
}
];
features = {
"target-lexicon" = [ "dep:target-lexicon" ];
"targets" = [ "target-lexicon" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"cfg-if" = rec {
crateName = "cfg-if";
version = "1.0.0";
edition = "2018";
sha256 = "1za0vb97n4brpzpv8lsbnzmq5r8f2b0cpqqr0sy8h5bn751xxwds";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"rustc-dep-of-std" = [ "core" "compiler_builtins" ];
};
};
"color_quant" = rec {
crateName = "color_quant";
version = "1.1.0";
edition = "2015";
sha256 = "12q1n427h2bbmmm1mnglr57jaz2dj9apk0plcxw7nwqiai7qjyrx";
authors = [
"nwin <nwin@users.noreply.github.com>"
];
};
"crc32fast" = rec {
crateName = "crc32fast";
version = "1.3.2";
edition = "2015";
sha256 = "03c8f29yx293yf43xar946xbls1g60c207m9drf8ilqhr25vsh5m";
authors = [
"Sam Rijs <srijs@airpost.net>"
"Alex Crichton <alex@alexcrichton.com>"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
];
features = {
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"crossbeam-channel" = rec {
crateName = "crossbeam-channel";
version = "0.5.7";
edition = "2018";
sha256 = "130j2k6872gqim4as8g6hfhsp7xmzjx09vwi9i8lcx3rg223wayg";
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "crossbeam-utils";
packageId = "crossbeam-utils";
optional = true;
usesDefaultFeatures = false;
}
];
features = {
"crossbeam-utils" = [ "dep:crossbeam-utils" ];
"default" = [ "std" ];
"std" = [ "crossbeam-utils/std" ];
};
resolvedDefaultFeatures = [ "crossbeam-utils" "default" "std" ];
};
"crossbeam-deque" = rec {
crateName = "crossbeam-deque";
version = "0.8.3";
edition = "2018";
sha256 = "1vqczbcild7nczh5z116w8w46z991kpjyw7qxkf24c14apwdcvyf";
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "crossbeam-epoch";
packageId = "crossbeam-epoch";
optional = true;
usesDefaultFeatures = false;
}
{
name = "crossbeam-utils";
packageId = "crossbeam-utils";
optional = true;
usesDefaultFeatures = false;
}
];
features = {
"crossbeam-epoch" = [ "dep:crossbeam-epoch" ];
"crossbeam-utils" = [ "dep:crossbeam-utils" ];
"default" = [ "std" ];
"std" = [ "crossbeam-epoch/std" "crossbeam-utils/std" ];
};
resolvedDefaultFeatures = [ "crossbeam-epoch" "crossbeam-utils" "default" "std" ];
};
"crossbeam-epoch" = rec {
crateName = "crossbeam-epoch";
version = "0.9.14";
edition = "2018";
sha256 = "15anryfq33mhxnlw95ajixnzznxays3gpvaas6lraci7hlzmzga6";
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "crossbeam-utils";
packageId = "crossbeam-utils";
usesDefaultFeatures = false;
}
{
name = "memoffset";
packageId = "memoffset";
}
{
name = "scopeguard";
packageId = "scopeguard";
usesDefaultFeatures = false;
}
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"default" = [ "std" ];
"loom" = [ "loom-crate" "crossbeam-utils/loom" ];
"loom-crate" = [ "dep:loom-crate" ];
"nightly" = [ "crossbeam-utils/nightly" ];
"std" = [ "alloc" "crossbeam-utils/std" ];
};
resolvedDefaultFeatures = [ "alloc" "std" ];
};
"crossbeam-utils" = rec {
crateName = "crossbeam-utils";
version = "0.8.15";
edition = "2018";
sha256 = "0jwq8srmjcwvq9q883k9zyb26qqznaj4jjqdxmvw7xcmrkc3q1iw";
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
];
features = {
"default" = [ "std" ];
"loom" = [ "dep:loom" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"crunchy" = rec {
crateName = "crunchy";
version = "0.2.2";
edition = "2015";
sha256 = "1dx9mypwd5mpfbbajm78xcrg5lirqk7934ik980mmaffg3hdm0bs";
authors = [
"Vurich <jackefransham@hotmail.co.uk>"
];
features = {
"default" = [ "limit_128" ];
};
resolvedDefaultFeatures = [ "default" "limit_128" ];
};
"either" = rec {
crateName = "either";
version = "1.8.1";
edition = "2018";
sha256 = "14bdy4qsxlfnm4626z4shwaiffi8l5krzkn7ykki1jgqzsrapjkz";
authors = [
"bluss"
];
features = {
"default" = [ "use_std" ];
"serde" = [ "dep:serde" ];
};
};
"exr" = rec {
crateName = "exr";
version = "1.6.3";
edition = "2018";
sha256 = "1d1mpcd9bk8kag5gyl2ajh5dbqyw7qnnch260ldajh81f8midlmx";
authors = [
"johannesvollmer <johannes596@t-online.de>"
];
dependencies = [
{
name = "bit_field";
packageId = "bit_field";
}
{
name = "flume";
packageId = "flume";
}
{
name = "half";
packageId = "half";
}
{
name = "lebe";
packageId = "lebe";
}
{
name = "miniz_oxide";
packageId = "miniz_oxide";
}
{
name = "rayon-core";
packageId = "rayon-core";
}
{
name = "smallvec";
packageId = "smallvec";
}
{
name = "zune-inflate";
packageId = "zune-inflate";
usesDefaultFeatures = false;
features = [ "zlib" ];
}
];
};
"field-offset" = rec {
crateName = "field-offset";
version = "0.3.5";
edition = "2015";
sha256 = "0dc58qzbfis0i031d741aavvi7crzlb4nvfacg461s7n1y03mkx3";
authors = [
"Diggory Blake <diggsey@googlemail.com>"
];
dependencies = [
{
name = "memoffset";
packageId = "memoffset";
}
];
buildDependencies = [
{
name = "rustc_version";
packageId = "rustc_version";
}
];
};
"flate2" = rec {
crateName = "flate2";
version = "1.0.25";
edition = "2018";
sha256 = "0hg8ih51lx5xkz2zlzpsy1j1xka8gs8vhk2964ppgj5ighwxp8m8";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
"Josh Triplett <josh@joshtriplett.org>"
];
dependencies = [
{
name = "crc32fast";
packageId = "crc32fast";
}
{
name = "miniz_oxide";
packageId = "miniz_oxide";
optional = true;
usesDefaultFeatures = false;
features = [ "with-alloc" ];
}
{
name = "miniz_oxide";
packageId = "miniz_oxide";
usesDefaultFeatures = false;
target = { target, features }: ((target."arch" == "wasm32") && (!(target."os" == "emscripten")));
features = [ "with-alloc" ];
}
];
features = {
"cloudflare-zlib-sys" = [ "dep:cloudflare-zlib-sys" ];
"cloudflare_zlib" = [ "any_zlib" "cloudflare-zlib-sys" ];
"default" = [ "rust_backend" ];
"libz-ng-sys" = [ "dep:libz-ng-sys" ];
"libz-sys" = [ "dep:libz-sys" ];
"miniz-sys" = [ "rust_backend" ];
"miniz_oxide" = [ "dep:miniz_oxide" ];
"rust_backend" = [ "miniz_oxide" ];
"zlib" = [ "any_zlib" "libz-sys" ];
"zlib-ng" = [ "any_zlib" "libz-ng-sys" ];
"zlib-ng-compat" = [ "zlib" "libz-sys/zlib-ng" ];
};
resolvedDefaultFeatures = [ "default" "miniz_oxide" "rust_backend" ];
};
"flume" = rec {
crateName = "flume";
version = "0.10.14";
edition = "2018";
sha256 = "0xvm1wpzkjvf99jxy9jp3dxw5nipa9blg7j0ngvxj0rl3i2b8mqn";
authors = [
"Joshua Barretto <joshua.s.barretto@gmail.com>"
];
dependencies = [
{
name = "futures-core";
packageId = "futures-core";
optional = true;
usesDefaultFeatures = false;
}
{
name = "futures-sink";
packageId = "futures-sink";
optional = true;
usesDefaultFeatures = false;
}
{
name = "nanorand";
packageId = "nanorand";
optional = true;
features = [ "getrandom" ];
}
{
name = "pin-project";
packageId = "pin-project";
optional = true;
}
{
name = "spin";
packageId = "spin";
rename = "spin1";
features = [ "mutex" ];
}
];
features = {
"async" = [ "futures-sink" "futures-core" "pin-project" ];
"default" = [ "async" "select" "eventual-fairness" ];
"eventual-fairness" = [ "async" "nanorand" ];
"futures-core" = [ "dep:futures-core" ];
"futures-sink" = [ "dep:futures-sink" ];
"nanorand" = [ "dep:nanorand" ];
"pin-project" = [ "dep:pin-project" ];
};
resolvedDefaultFeatures = [ "async" "default" "eventual-fairness" "futures-core" "futures-sink" "nanorand" "pin-project" "select" ];
};
"futures-channel" = rec {
crateName = "futures-channel";
version = "0.3.27";
edition = "2018";
sha256 = "1b7p7jb1bbwddqs3k4vg70jq1hdb7i1knzgdn6sfghywl2ji6iqn";
dependencies = [
{
name = "futures-core";
packageId = "futures-core";
usesDefaultFeatures = false;
}
];
features = {
"alloc" = [ "futures-core/alloc" ];
"default" = [ "std" ];
"futures-sink" = [ "dep:futures-sink" ];
"sink" = [ "futures-sink" ];
"std" = [ "alloc" "futures-core/std" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "std" ];
};
"futures-core" = rec {
crateName = "futures-core";
version = "0.3.27";
edition = "2018";
sha256 = "1pb9vsvh6xnv0xpzj73g6wl1357nzacyxq0x96n3sdknmb0s1mw6";
features = {
"default" = [ "std" ];
"portable-atomic" = [ "dep:portable-atomic" ];
"std" = [ "alloc" ];
};
resolvedDefaultFeatures = [ "alloc" "std" ];
};
"futures-executor" = rec {
crateName = "futures-executor";
version = "0.3.27";
edition = "2018";
sha256 = "10qgp9hfvwvywx7ylhij12n4yyfm3r678lk2qwswknjcyyfxv5qr";
dependencies = [
{
name = "futures-core";
packageId = "futures-core";
usesDefaultFeatures = false;
}
{
name = "futures-task";
packageId = "futures-task";
usesDefaultFeatures = false;
}
{
name = "futures-util";
packageId = "futures-util";
usesDefaultFeatures = false;
}
];
features = {
"default" = [ "std" ];
"num_cpus" = [ "dep:num_cpus" ];
"std" = [ "futures-core/std" "futures-task/std" "futures-util/std" ];
"thread-pool" = [ "std" "num_cpus" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"futures-io" = rec {
crateName = "futures-io";
version = "0.3.27";
edition = "2018";
sha256 = "14cbfwn1d9qzdzys7vjpx9c85javpdx0iavllpf40fxy7kx25m49";
features = {
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"futures-macro" = rec {
crateName = "futures-macro";
version = "0.3.27";
edition = "2018";
sha256 = "1dk3m7jpbj9qkxcwmqxnan1pli23hhcjqzwpp2wdh6v36zclxc9y";
procMacro = true;
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
features = [ "full" ];
}
];
};
"futures-sink" = rec {
crateName = "futures-sink";
version = "0.3.28";
edition = "2018";
sha256 = "0vkv4frf4c6gm1ag9imjz8d0xvpnn22lkylsls0rffx147zf8fzl";
features = {
"default" = [ "std" ];
"std" = [ "alloc" ];
};
};
"futures-task" = rec {
crateName = "futures-task";
version = "0.3.27";
edition = "2018";
sha256 = "0y98b6mkb3svh0zvs1axmka11bgfd8pc2f0459a1cyxk6c6m8rgx";
features = {
"default" = [ "std" ];
"std" = [ "alloc" ];
};
resolvedDefaultFeatures = [ "alloc" "std" ];
};
"futures-util" = rec {
crateName = "futures-util";
version = "0.3.27";
edition = "2018";
sha256 = "1aw45s2adi1asd6827ya6n4i43wps4wqzv8z462yq0qm91zb3xiy";
dependencies = [
{
name = "futures-core";
packageId = "futures-core";
usesDefaultFeatures = false;
}
{
name = "futures-macro";
packageId = "futures-macro";
optional = true;
usesDefaultFeatures = false;
}
{
name = "futures-task";
packageId = "futures-task";
usesDefaultFeatures = false;
}
{
name = "pin-project-lite";
packageId = "pin-project-lite";
}
{
name = "pin-utils";
packageId = "pin-utils";
}
{
name = "slab";
packageId = "slab";
optional = true;
}
];
features = {
"alloc" = [ "futures-core/alloc" "futures-task/alloc" ];
"async-await-macro" = [ "async-await" "futures-macro" ];
"channel" = [ "std" "futures-channel" ];
"compat" = [ "std" "futures_01" ];
"default" = [ "std" "async-await" "async-await-macro" ];
"futures-channel" = [ "dep:futures-channel" ];
"futures-io" = [ "dep:futures-io" ];
"futures-macro" = [ "dep:futures-macro" ];
"futures-sink" = [ "dep:futures-sink" ];
"futures_01" = [ "dep:futures_01" ];
"io" = [ "std" "futures-io" "memchr" ];
"io-compat" = [ "io" "compat" "tokio-io" ];
"memchr" = [ "dep:memchr" ];
"portable-atomic" = [ "futures-core/portable-atomic" ];
"sink" = [ "futures-sink" ];
"slab" = [ "dep:slab" ];
"std" = [ "alloc" "futures-core/std" "futures-task/std" "slab" ];
"tokio-io" = [ "dep:tokio-io" ];
"unstable" = [ "futures-core/unstable" "futures-task/unstable" ];
"write-all-vectored" = [ "io" ];
};
resolvedDefaultFeatures = [ "alloc" "async-await" "async-await-macro" "default" "futures-macro" "slab" "std" ];
};
"gdk-pixbuf" = rec {
crateName = "gdk-pixbuf";
version = "0.17.0";
edition = "2021";
sha256 = "1gsrgxnz3mgi20r6axm6qnfq58qdh3chgl85k0yvs1xlqvhgn8xh";
libName = "gdk_pixbuf";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "gdk-pixbuf-sys";
packageId = "gdk-pixbuf-sys";
rename = "ffi";
}
{
name = "gio";
packageId = "gio";
}
{
name = "glib";
packageId = "glib";
}
{
name = "libc";
packageId = "libc";
}
{
name = "once_cell";
packageId = "once_cell";
}
];
features = {
"dox" = [ "glib/dox" "gio/dox" "ffi/dox" ];
"v2_40" = [ "ffi/v2_40" ];
"v2_42" = [ "v2_40" "ffi/v2_42" ];
};
};
"gdk-pixbuf-sys" = rec {
crateName = "gdk-pixbuf-sys";
version = "0.17.0";
edition = "2021";
sha256 = "0fqy77sb5zrqjf0cjgllxpaqn0v3l595d4nkfy9djjgd8hmvshbv";
libName = "gdk_pixbuf_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "gio-sys";
packageId = "gio-sys";
rename = "gio";
}
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "gobject-sys";
packageId = "gobject-sys";
rename = "gobject";
}
{
name = "libc";
packageId = "libc";
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" "gobject/dox" "gio/dox" ];
"v2_42" = [ "v2_40" ];
};
};
"gdk4" = rec {
crateName = "gdk4";
version = "0.6.3";
edition = "2021";
sha256 = "1zri4z8nxsp88mvk8vhk6xqpc4g1l69zi9w1z3fkwvm211jgkay3";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "cairo-rs";
packageId = "cairo-rs";
}
{
name = "gdk-pixbuf";
packageId = "gdk-pixbuf";
}
{
name = "gdk4-sys";
packageId = "gdk4-sys";
rename = "ffi";
}
{
name = "gio";
packageId = "gio";
features = [ "v2_66" ];
}
{
name = "glib";
packageId = "glib";
features = [ "v2_66" ];
}
{
name = "libc";
packageId = "libc";
}
{
name = "pango";
packageId = "pango";
features = [ "v1_46" ];
}
];
features = {
"dox" = [ "ffi/dox" "glib/dox" "gio/dox" "gdk-pixbuf/dox" "cairo-rs/dox" "pango/dox" ];
"v4_10" = [ "ffi/v4_10" "v4_8" ];
"v4_2" = [ "ffi/v4_2" ];
"v4_4" = [ "ffi/v4_4" "v4_2" ];
"v4_6" = [ "ffi/v4_6" "v4_4" ];
"v4_8" = [ "ffi/v4_8" "v4_6" ];
};
};
"gdk4-sys" = rec {
crateName = "gdk4-sys";
version = "0.6.3";
edition = "2021";
sha256 = "0r7dm9vyzg2xlzdgxqa190gd1403mhw4q09x754rq24cc2hjmj8v";
libName = "gdk4_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "cairo-sys-rs";
packageId = "cairo-sys-rs";
rename = "cairo";
}
{
name = "gdk-pixbuf-sys";
packageId = "gdk-pixbuf-sys";
rename = "gdk_pixbuf";
}
{
name = "gio-sys";
packageId = "gio-sys";
rename = "gio";
}
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "gobject-sys";
packageId = "gobject-sys";
rename = "gobject";
}
{
name = "libc";
packageId = "libc";
}
{
name = "pango-sys";
packageId = "pango-sys";
rename = "pango";
}
];
buildDependencies = [
{
name = "pkg-config";
packageId = "pkg-config";
}
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" "gobject/dox" "gio/dox" "gdk_pixbuf/dox" "pango/dox" "cairo/dox" ];
"v4_10" = [ "v4_8" ];
"v4_4" = [ "v4_2" ];
"v4_6" = [ "v4_4" ];
"v4_8" = [ "v4_6" ];
};
};
"getrandom" = rec {
crateName = "getrandom";
version = "0.2.8";
edition = "2018";
sha256 = "0cbb766pcyi7sws0fnp1pxkz0nhiya0ckallq502bxmq49mfnnn0";
authors = [
"The Rand Project Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "js-sys";
packageId = "js-sys";
optional = true;
target = { target, features }: ((target."arch" == "wasm32") && (target."os" == "unknown"));
}
{
name = "libc";
packageId = "libc";
usesDefaultFeatures = false;
target = { target, features }: (target."unix" or false);
}
{
name = "wasi";
packageId = "wasi";
target = { target, features }: (target."os" == "wasi");
}
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
optional = true;
usesDefaultFeatures = false;
target = { target, features }: ((target."arch" == "wasm32") && (target."os" == "unknown"));
}
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"js" = [ "wasm-bindgen" "js-sys" ];
"js-sys" = [ "dep:js-sys" ];
"rustc-dep-of-std" = [ "compiler_builtins" "core" "libc/rustc-dep-of-std" "wasi/rustc-dep-of-std" ];
"wasm-bindgen" = [ "dep:wasm-bindgen" ];
};
resolvedDefaultFeatures = [ "js" "js-sys" "rdrand" "wasm-bindgen" ];
};
"gif" = rec {
crateName = "gif";
version = "0.12.0";
edition = "2018";
sha256 = "0ibhjyrslfv9qm400gp4hd50v9ibva01j4ab9bwiq1aycy9jayc0";
authors = [
"The image-rs Developers"
];
dependencies = [
{
name = "color_quant";
packageId = "color_quant";
optional = true;
}
{
name = "weezl";
packageId = "weezl";
}
];
features = {
"color_quant" = [ "dep:color_quant" ];
"default" = [ "raii_no_panic" "std" "color_quant" ];
};
resolvedDefaultFeatures = [ "color_quant" "default" "raii_no_panic" "std" ];
};
"gio" = rec {
crateName = "gio";
version = "0.17.4";
edition = "2021";
sha256 = "09918ip09dabwllr2xcsnkfgb36331i4db173inngv12x6sa6q92";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "futures-channel";
packageId = "futures-channel";
}
{
name = "futures-core";
packageId = "futures-core";
usesDefaultFeatures = false;
}
{
name = "futures-io";
packageId = "futures-io";
}
{
name = "futures-util";
packageId = "futures-util";
usesDefaultFeatures = false;
}
{
name = "gio-sys";
packageId = "gio-sys";
rename = "ffi";
}
{
name = "glib";
packageId = "glib";
}
{
name = "libc";
packageId = "libc";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "pin-project-lite";
packageId = "pin-project-lite";
}
{
name = "smallvec";
packageId = "smallvec";
}
{
name = "thiserror";
packageId = "thiserror";
}
];
devDependencies = [
{
name = "futures-util";
packageId = "futures-util";
features = [ "io" ];
}
];
features = {
"dox" = [ "ffi/dox" "glib/dox" ];
"v2_58" = [ "ffi/v2_58" "glib/v2_58" ];
"v2_60" = [ "v2_58" "ffi/v2_60" "glib/v2_60" ];
"v2_62" = [ "v2_60" "ffi/v2_62" "glib/v2_62" ];
"v2_64" = [ "v2_62" "ffi/v2_64" "glib/v2_64" ];
"v2_66" = [ "v2_64" "ffi/v2_66" "glib/v2_66" ];
"v2_68" = [ "v2_66" "ffi/v2_68" "glib/v2_68" ];
"v2_70" = [ "v2_68" "ffi/v2_70" "glib/v2_70" ];
"v2_72" = [ "v2_70" "ffi/v2_72" "glib/v2_72" ];
"v2_74" = [ "v2_72" "ffi/v2_74" "glib/v2_74" ];
"v2_76" = [ "v2_74" "ffi/v2_76" "glib/v2_76" ];
};
resolvedDefaultFeatures = [ "v2_58" "v2_60" "v2_62" "v2_64" "v2_66" ];
};
"gio-sys" = rec {
crateName = "gio-sys";
version = "0.17.4";
edition = "2021";
sha256 = "19b2wdwdn6gbjnqac2klymbi51wj27jazv24a92li2wnsyq467bb";
libName = "gio_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "gobject-sys";
packageId = "gobject-sys";
rename = "gobject";
}
{
name = "libc";
packageId = "libc";
}
{
name = "winapi";
packageId = "winapi";
target = { target, features }: (target."windows" or false);
features = [ "ws2def" "winsock2" ];
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" "gobject/dox" ];
"v2_60" = [ "v2_58" ];
"v2_62" = [ "v2_60" ];
"v2_64" = [ "v2_62" ];
"v2_66" = [ "v2_64" ];
"v2_68" = [ "v2_66" ];
"v2_70" = [ "v2_68" ];
"v2_72" = [ "v2_70" ];
"v2_74" = [ "v2_72" ];
"v2_76" = [ "v2_74" ];
};
resolvedDefaultFeatures = [ "v2_58" "v2_60" "v2_62" "v2_64" "v2_66" ];
};
"glib" = rec {
crateName = "glib";
version = "0.17.5";
edition = "2021";
sha256 = "0ws7hmiaywwvdjp9njjjfs92a0cy68p2sb19d5lxg5b1fmhk1dfg";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "futures-channel";
packageId = "futures-channel";
}
{
name = "futures-core";
packageId = "futures-core";
usesDefaultFeatures = false;
}
{
name = "futures-executor";
packageId = "futures-executor";
}
{
name = "futures-task";
packageId = "futures-task";
usesDefaultFeatures = false;
}
{
name = "futures-util";
packageId = "futures-util";
}
{
name = "gio-sys";
packageId = "gio-sys";
rename = "gio_ffi";
optional = true;
}
{
name = "glib-macros";
packageId = "glib-macros";
}
{
name = "glib-sys";
packageId = "glib-sys";
rename = "ffi";
}
{
name = "gobject-sys";
packageId = "gobject-sys";
rename = "gobject_ffi";
}
{
name = "libc";
packageId = "libc";
}
{
name = "memchr";
packageId = "memchr";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "smallvec";
packageId = "smallvec";
}
{
name = "thiserror";
packageId = "thiserror";
}
];
features = {
"default" = [ "gio" ];
"dox" = [ "ffi/dox" "gobject_ffi/dox" "log_macros" ];
"gio" = [ "gio_ffi" ];
"gio_ffi" = [ "dep:gio_ffi" ];
"log" = [ "rs-log" ];
"log_macros" = [ "log" ];
"rs-log" = [ "dep:rs-log" ];
"v2_58" = [ "ffi/v2_58" "gobject_ffi/v2_58" ];
"v2_60" = [ "v2_58" "ffi/v2_60" ];
"v2_62" = [ "v2_60" "ffi/v2_62" "gobject_ffi/v2_62" ];
"v2_64" = [ "v2_62" "ffi/v2_64" ];
"v2_66" = [ "v2_64" "ffi/v2_66" "gobject_ffi/v2_66" ];
"v2_68" = [ "v2_66" "ffi/v2_68" "gobject_ffi/v2_68" ];
"v2_70" = [ "v2_68" "ffi/v2_70" "gobject_ffi/v2_70" ];
"v2_72" = [ "v2_70" "ffi/v2_72" "gobject_ffi/v2_72" ];
"v2_74" = [ "v2_72" "ffi/v2_74" "gobject_ffi/v2_74" ];
"v2_76" = [ "v2_74" "ffi/v2_76" "gobject_ffi/v2_76" ];
};
resolvedDefaultFeatures = [ "default" "gio" "gio_ffi" "v2_58" "v2_60" "v2_62" "v2_64" "v2_66" ];
};
"glib-build-tools" = rec {
crateName = "glib-build-tools";
version = "0.17.0";
edition = "2021";
sha256 = "184f7llpxny4h0hbds97w6z3ghldgw1ldx5ssnl6mh4wpb4q114g";
authors = [
"The gtk-rs Project Developers"
];
features = {
"dox" = [ "gio" "gio/dox" ];
"gio" = [ "dep:gio" ];
};
};
"glib-macros" = rec {
crateName = "glib-macros";
version = "0.17.5";
edition = "2021";
sha256 = "0h0sc37qv8i2am8gzsgm20ycvmkiw8gjcwi9qd6ignaqzv528ja5";
procMacro = true;
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "anyhow";
packageId = "anyhow";
}
{
name = "heck";
packageId = "heck";
}
{
name = "proc-macro-crate";
packageId = "proc-macro-crate";
}
{
name = "proc-macro-error";
packageId = "proc-macro-error";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
usesDefaultFeatures = false;
features = [ "full" ];
}
];
};
"glib-sys" = rec {
crateName = "glib-sys";
version = "0.17.4";
edition = "2021";
sha256 = "19c0ars1rpcyfx7k63k2pghxjh898f1mvwgzmmhqwm5zl780mw29";
libName = "glib_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "libc";
packageId = "libc";
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"v2_60" = [ "v2_58" ];
"v2_62" = [ "v2_60" ];
"v2_64" = [ "v2_62" ];
"v2_66" = [ "v2_64" ];
"v2_68" = [ "v2_66" ];
"v2_70" = [ "v2_68" ];
"v2_72" = [ "v2_70" ];
"v2_74" = [ "v2_72" ];
"v2_76" = [ "v2_74" ];
};
resolvedDefaultFeatures = [ "v2_58" "v2_60" "v2_62" "v2_64" "v2_66" ];
};
"gobject-sys" = rec {
crateName = "gobject-sys";
version = "0.17.4";
edition = "2021";
sha256 = "1l4kcw17y6dxb6b6wkw4f2ly624kmxbghg6av2r34im60005prqm";
libName = "gobject_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "libc";
packageId = "libc";
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" ];
"v2_62" = [ "v2_58" ];
"v2_66" = [ "v2_62" ];
"v2_68" = [ "v2_66" ];
"v2_70" = [ "v2_68" ];
"v2_72" = [ "v2_70" ];
"v2_74" = [ "v2_72" ];
"v2_76" = [ "v2_74" ];
};
resolvedDefaultFeatures = [ "v2_58" "v2_62" "v2_66" ];
};
"graphene-rs" = rec {
crateName = "graphene-rs";
version = "0.17.1";
edition = "2021";
sha256 = "0mk2nkhs0cad45k0177z5h5d9w19qfv7aiwxz71dzr5hbdb13kr1";
libName = "graphene";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "glib";
packageId = "glib";
}
{
name = "graphene-sys";
packageId = "graphene-sys";
rename = "ffi";
}
{
name = "libc";
packageId = "libc";
}
];
features = {
"dox" = [ "ffi/dox" "glib/dox" ];
};
};
"graphene-sys" = rec {
crateName = "graphene-sys";
version = "0.17.0";
edition = "2021";
sha256 = "1ybsw0b51dsslln1ign799zn374fcz1nzv4g190nb5cdka2a906g";
libName = "graphene_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "libc";
packageId = "libc";
}
];
buildDependencies = [
{
name = "pkg-config";
packageId = "pkg-config";
}
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" ];
};
};
"gsk4" = rec {
crateName = "gsk4";
version = "0.6.3";
edition = "2021";
sha256 = "0g1srhahmhdl6rqbz98bawzf1gp6hf9m4y4rvbi1bb3wz92fy0bg";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "cairo-rs";
packageId = "cairo-rs";
}
{
name = "gdk4";
packageId = "gdk4";
rename = "gdk";
}
{
name = "glib";
packageId = "glib";
features = [ "v2_66" ];
}
{
name = "graphene-rs";
packageId = "graphene-rs";
rename = "graphene";
}
{
name = "gsk4-sys";
packageId = "gsk4-sys";
rename = "ffi";
}
{
name = "libc";
packageId = "libc";
}
{
name = "pango";
packageId = "pango";
features = [ "v1_46" ];
}
];
features = {
"dox" = [ "ffi/dox" "gdk/dox" "graphene/dox" "glib/dox" "cairo-rs/dox" "pango/dox" ];
"v4_10" = [ "ffi/v4_10" "gdk/v4_10" "v4_6" ];
"v4_2" = [ "ffi/v4_2" "gdk/v4_2" ];
"v4_4" = [ "ffi/v4_4" "gdk/v4_4" "v4_2" ];
"v4_6" = [ "ffi/v4_6" "gdk/v4_6" "v4_4" ];
};
};
"gsk4-sys" = rec {
crateName = "gsk4-sys";
version = "0.6.3";
edition = "2021";
sha256 = "1c013zdd0yzcfmkz1gj28dbfz2zmypi8baimjk9264yg9pxq8yn0";
libName = "gsk4_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "cairo-sys-rs";
packageId = "cairo-sys-rs";
rename = "cairo";
}
{
name = "gdk4-sys";
packageId = "gdk4-sys";
rename = "gdk";
}
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "gobject-sys";
packageId = "gobject-sys";
rename = "gobject";
}
{
name = "graphene-sys";
packageId = "graphene-sys";
rename = "graphene";
}
{
name = "libc";
packageId = "libc";
}
{
name = "pango-sys";
packageId = "pango-sys";
rename = "pango";
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" "gobject/dox" "pango/dox" "cairo/dox" "graphene/dox" "gdk/dox" ];
"v4_10" = [ "v4_6" ];
"v4_4" = [ "v4_2" ];
"v4_6" = [ "v4_4" ];
};
};
"gtk4" = rec {
crateName = "gtk4";
version = "0.6.4";
edition = "2021";
sha256 = "1vbl68q3xcqqnxxvq83vc13dflfdpxc3kc9xa7szc1d6nljf2c0y";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "cairo-rs";
packageId = "cairo-rs";
}
{
name = "field-offset";
packageId = "field-offset";
}
{
name = "futures-channel";
packageId = "futures-channel";
}
{
name = "gdk-pixbuf";
packageId = "gdk-pixbuf";
}
{
name = "gdk4";
packageId = "gdk4";
rename = "gdk";
}
{
name = "gio";
packageId = "gio";
features = [ "v2_66" ];
}
{
name = "glib";
packageId = "glib";
features = [ "v2_66" ];
}
{
name = "graphene-rs";
packageId = "graphene-rs";
rename = "graphene";
}
{
name = "gsk4";
packageId = "gsk4";
rename = "gsk";
}
{
name = "gtk4-macros";
packageId = "gtk4-macros";
}
{
name = "gtk4-sys";
packageId = "gtk4-sys";
rename = "ffi";
}
{
name = "libc";
packageId = "libc";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "pango";
packageId = "pango";
features = [ "v1_46" ];
}
];
features = {
"blueprint" = [ "gtk4-macros/blueprint" ];
"dox" = [ "gdk/dox" "gsk/dox" "ffi/dox" "cairo-rs/dox" "gdk-pixbuf/dox" "gio/dox" "glib/dox" "graphene/dox" "pango/dox" ];
"gnome_42" = [ "v4_6" "cairo-rs/v1_16" "gdk-pixbuf/v2_42" "gio/v2_72" ];
"gnome_43" = [ "v4_8" "cairo-rs/v1_16" "gdk-pixbuf/v2_42" "gio/v2_74" ];
"gnome_44" = [ "v4_10" "cairo-rs/v1_16" "gdk-pixbuf/v2_42" "gio/v2_76" ];
"v4_10" = [ "ffi/v4_10" "v4_8" "gdk/v4_10" "gsk/v4_10" ];
"v4_2" = [ "ffi/v4_2" "gdk/v4_2" "gsk/v4_2" ];
"v4_4" = [ "ffi/v4_4" "v4_2" "gdk/v4_4" "gsk/v4_4" ];
"v4_6" = [ "ffi/v4_6" "v4_4" "gdk/v4_6" "gsk/v4_6" "pango/v1_50" ];
"v4_8" = [ "ffi/v4_8" "v4_6" "gdk/v4_8" ];
"xml_validation" = [ "gtk4-macros/xml_validation" ];
};
};
"gtk4-macros" = rec {
crateName = "gtk4-macros";
version = "0.6.3";
edition = "2021";
sha256 = "12394nvcc93h809i23z5hmvrfpx4iaxsyr9ym35vh0lsxg6imqih";
procMacro = true;
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "anyhow";
packageId = "anyhow";
}
{
name = "proc-macro-crate";
packageId = "proc-macro-crate";
}
{
name = "proc-macro-error";
packageId = "proc-macro-error";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
usesDefaultFeatures = false;
features = [ "full" ];
}
];
features = {
"quick-xml" = [ "dep:quick-xml" ];
"xml_validation" = [ "quick-xml" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"gtk4-sys" = rec {
crateName = "gtk4-sys";
version = "0.6.3";
edition = "2021";
sha256 = "0bz26ix7pl4d1m63zacaw1vw5021vm5r7wn7fsg02zmh0zvq70jz";
libName = "gtk4_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "cairo-sys-rs";
packageId = "cairo-sys-rs";
rename = "cairo";
}
{
name = "gdk-pixbuf-sys";
packageId = "gdk-pixbuf-sys";
rename = "gdk_pixbuf";
}
{
name = "gdk4-sys";
packageId = "gdk4-sys";
rename = "gdk";
}
{
name = "gio-sys";
packageId = "gio-sys";
rename = "gio";
}
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "gobject-sys";
packageId = "gobject-sys";
rename = "gobject";
}
{
name = "graphene-sys";
packageId = "graphene-sys";
rename = "graphene";
}
{
name = "gsk4-sys";
packageId = "gsk4-sys";
rename = "gsk";
}
{
name = "libc";
packageId = "libc";
}
{
name = "pango-sys";
packageId = "pango-sys";
rename = "pango";
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" "gobject/dox" "gio/dox" "gdk_pixbuf/dox" "pango/dox" "cairo/dox" "graphene/dox" "gdk/dox" "gsk/dox" ];
"v4_10" = [ "v4_8" ];
"v4_12" = [ "v4_10" ];
"v4_4" = [ "v4_2" ];
"v4_6" = [ "v4_4" ];
"v4_8" = [ "v4_6" ];
};
};
"half" = rec {
crateName = "half";
version = "2.2.1";
edition = "2021";
sha256 = "1l1gdlzxgm7wc8xl5fxas20kfi1j35iyb7vfjkghbdzijcvazd02";
authors = [
"Kathryn Long <squeeself@gmail.com>"
];
dependencies = [
{
name = "crunchy";
packageId = "crunchy";
target = { target, features }: (target."arch" == "spirv");
}
];
devDependencies = [
{
name = "crunchy";
packageId = "crunchy";
}
];
features = {
"bytemuck" = [ "dep:bytemuck" ];
"default" = [ "std" ];
"num-traits" = [ "dep:num-traits" ];
"serde" = [ "dep:serde" ];
"std" = [ "alloc" ];
"zerocopy" = [ "dep:zerocopy" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "std" ];
};
"hashbrown" = rec {
crateName = "hashbrown";
version = "0.12.3";
edition = "2021";
sha256 = "1268ka4750pyg2pbgsr43f0289l5zah4arir2k4igx5a8c6fg7la";
authors = [
"Amanieu d'Antras <amanieu@gmail.com>"
];
features = {
"ahash" = [ "dep:ahash" ];
"ahash-compile-time-rng" = [ "ahash/compile-time-rng" ];
"alloc" = [ "dep:alloc" ];
"bumpalo" = [ "dep:bumpalo" ];
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "ahash" "inline-more" ];
"rayon" = [ "dep:rayon" ];
"rustc-dep-of-std" = [ "nightly" "core" "compiler_builtins" "alloc" "rustc-internal-api" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "raw" ];
};
"heck" = rec {
crateName = "heck";
version = "0.4.1";
edition = "2018";
sha256 = "1a7mqsnycv5z4z5vnv1k34548jzmc0ajic7c1j8jsaspnhw5ql4m";
authors = [
"Without Boats <woboats@gmail.com>"
];
features = {
"unicode" = [ "unicode-segmentation" ];
"unicode-segmentation" = [ "dep:unicode-segmentation" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"hermit-abi" = rec {
crateName = "hermit-abi";
version = "0.2.6";
edition = "2021";
sha256 = "1iz439yz9qzk3rh9pqx2rz5c4107v3qbd7bppfsbzb1mzr02clgf";
authors = [
"Stefan Lankes"
];
dependencies = [
{
name = "libc";
packageId = "libc";
usesDefaultFeatures = false;
}
];
features = {
"alloc" = [ "dep:alloc" ];
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins/rustc-dep-of-std" "libc/rustc-dep-of-std" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"image" = rec {
crateName = "image";
version = "0.24.6";
edition = "2018";
sha256 = "0fhaypwc4ngal4pjq30knl4hymb5lx1i8lh392jc62p2h6m0jyaj";
authors = [
"The image-rs Developers"
];
dependencies = [
{
name = "bytemuck";
packageId = "bytemuck";
features = [ "extern_crate_alloc" ];
}
{
name = "byteorder";
packageId = "byteorder";
}
{
name = "color_quant";
packageId = "color_quant";
}
{
name = "exr";
packageId = "exr";
optional = true;
}
{
name = "gif";
packageId = "gif";
optional = true;
}
{
name = "jpeg-decoder";
packageId = "jpeg-decoder";
rename = "jpeg";
optional = true;
usesDefaultFeatures = false;
}
{
name = "num-rational";
packageId = "num-rational";
usesDefaultFeatures = false;
}
{
name = "num-traits";
packageId = "num-traits";
}
{
name = "png";
packageId = "png";
optional = true;
}
{
name = "qoi";
packageId = "qoi";
optional = true;
}
{
name = "tiff";
packageId = "tiff";
optional = true;
}
];
devDependencies = [
{
name = "jpeg-decoder";
packageId = "jpeg-decoder";
usesDefaultFeatures = false;
features = [ "platform_independent" ];
}
];
features = {
"avif" = [ "avif-encoder" ];
"avif-decoder" = [ "mp4parse" "dcv-color-primitives" "dav1d" ];
"avif-encoder" = [ "ravif" "rgb" ];
"dav1d" = [ "dep:dav1d" ];
"dcv-color-primitives" = [ "dep:dcv-color-primitives" ];
"dds" = [ "dxt" ];
"default" = [ "gif" "jpeg" "ico" "png" "pnm" "tga" "tiff" "webp" "bmp" "hdr" "dxt" "dds" "farbfeld" "jpeg_rayon" "openexr" "qoi" ];
"exr" = [ "dep:exr" ];
"gif" = [ "dep:gif" ];
"ico" = [ "bmp" "png" ];
"jpeg" = [ "dep:jpeg" ];
"jpeg_rayon" = [ "jpeg/rayon" ];
"libwebp" = [ "dep:libwebp" ];
"mp4parse" = [ "dep:mp4parse" ];
"openexr" = [ "exr" ];
"png" = [ "dep:png" ];
"qoi" = [ "dep:qoi" ];
"ravif" = [ "dep:ravif" ];
"rgb" = [ "dep:rgb" ];
"tiff" = [ "dep:tiff" ];
"webp-encoder" = [ "libwebp" ];
};
resolvedDefaultFeatures = [ "bmp" "dds" "default" "dxt" "exr" "farbfeld" "gif" "hdr" "ico" "jpeg" "jpeg_rayon" "openexr" "png" "pnm" "qoi" "tga" "tiff" "webp" ];
};
"indexmap" = rec {
crateName = "indexmap";
version = "1.9.2";
edition = "2021";
sha256 = "16dkr2h5p379jcr8rnb420396yvzid2myirc2w70zcf43yffg18q";
dependencies = [
{
name = "hashbrown";
packageId = "hashbrown";
usesDefaultFeatures = false;
features = [ "raw" ];
}
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"arbitrary" = [ "dep:arbitrary" ];
"quickcheck" = [ "dep:quickcheck" ];
"rayon" = [ "dep:rayon" ];
"rustc-rayon" = [ "dep:rustc-rayon" ];
"serde" = [ "dep:serde" ];
"serde-1" = [ "serde" ];
};
resolvedDefaultFeatures = [ "std" ];
};
"jpeg-decoder" = rec {
crateName = "jpeg-decoder";
version = "0.3.0";
edition = "2018";
sha256 = "0gkv0zx95i4fr40fj1a10d70lqi6lfyia8r5q8qjxj8j4pj0005w";
authors = [
"The image-rs Developers"
];
dependencies = [
{
name = "rayon";
packageId = "rayon";
optional = true;
}
];
features = {
"default" = [ "rayon" ];
"rayon" = [ "dep:rayon" ];
};
resolvedDefaultFeatures = [ "rayon" ];
};
"js-sys" = rec {
crateName = "js-sys";
version = "0.3.61";
edition = "2018";
sha256 = "0c075apyc5fxp2sbgr87qcvq53pcjxmp05l47lzlhpn5a0hxwpa4";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "wasm-bindgen";
packageId = "wasm-bindgen";
}
];
};
"kifu-core" = rec {
crateName = "kifu-core";
version = "0.1.0";
edition = "2021";
src = lib.cleanSourceWith { filter = sourceFilter; src = ../kifu-core; };
dependencies = [
{
name = "tokio";
packageId = "tokio";
features = [ "full" ];
}
];
};
"kifu-gtk" = rec {
crateName = "kifu-gtk";
version = "0.1.0";
edition = "2021";
crateBin = [
{ name = "kifu-gtk"; path = "src/main.rs"; }
{ name = "screenplay"; path = "src/bin/screenplay.rs"; }
];
src = lib.cleanSourceWith { filter = sourceFilter; src = ./.; };
dependencies = [
{
name = "cairo-rs";
packageId = "cairo-rs";
}
{
name = "gio";
packageId = "gio";
}
{
name = "glib";
packageId = "glib";
}
{
name = "gtk4";
packageId = "gtk4";
rename = "gtk";
}
{
name = "image";
packageId = "image";
}
{
name = "kifu-core";
packageId = "kifu-core";
}
{
name = "screenplay";
packageId = "screenplay";
}
{
name = "tokio";
packageId = "tokio";
features = [ "full" ];
}
];
buildDependencies = [
{
name = "glib-build-tools";
packageId = "glib-build-tools";
}
];
features = {
};
resolvedDefaultFeatures = [ "screenplay" ];
};
"lebe" = rec {
crateName = "lebe";
version = "0.5.2";
edition = "2018";
sha256 = "1j2l6chx19qpa5gqcw434j83gyskq3g2cnffrbl3842ymlmpq203";
authors = [
"johannesvollmer <johannes596@t-online.de>"
];
};
"libc" = rec {
crateName = "libc";
version = "0.2.140";
edition = "2015";
sha256 = "037qjmhfv8iyzfv6zqapxxvf6p1ydg6dzgzhkjbimbhzj8s768lr";
authors = [
"The Rust Project Developers"
];
features = {
"default" = [ "std" ];
"rustc-dep-of-std" = [ "align" "rustc-std-workspace-core" ];
"rustc-std-workspace-core" = [ "dep:rustc-std-workspace-core" ];
"use_std" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"lock_api" = rec {
crateName = "lock_api";
version = "0.4.9";
edition = "2018";
sha256 = "1py41vk243hwk345nhkn5nw0bd4m03gzjmprdjqq6rg5dwv12l23";
authors = [
"Amanieu d'Antras <amanieu@gmail.com>"
];
dependencies = [
{
name = "scopeguard";
packageId = "scopeguard";
usesDefaultFeatures = false;
}
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"owning_ref" = [ "dep:owning_ref" ];
"serde" = [ "dep:serde" ];
};
};
"log" = rec {
crateName = "log";
version = "0.4.17";
edition = "2015";
sha256 = "0biqlaaw1lsr8bpnmbcc0fvgjj34yy79ghqzyi0ali7vgil2xcdb";
authors = [
"The Rust Project Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
];
features = {
"kv_unstable" = [ "value-bag" ];
"kv_unstable_serde" = [ "kv_unstable_std" "value-bag/serde" "serde" ];
"kv_unstable_std" = [ "std" "kv_unstable" "value-bag/error" ];
"kv_unstable_sval" = [ "kv_unstable" "value-bag/sval" "sval" ];
"serde" = [ "dep:serde" ];
"sval" = [ "dep:sval" ];
"value-bag" = [ "dep:value-bag" ];
};
};
"memchr" = rec {
crateName = "memchr";
version = "2.5.0";
edition = "2018";
sha256 = "0vanfk5mzs1g1syqnj03q8n0syggnhn55dq535h2wxr7rwpfbzrd";
authors = [
"Andrew Gallant <jamslam@gmail.com>"
"bluss"
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "std" ];
"libc" = [ "dep:libc" ];
"rustc-dep-of-std" = [ "core" "compiler_builtins" ];
"use_std" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"memoffset" = rec {
crateName = "memoffset";
version = "0.8.0";
edition = "2015";
sha256 = "1qcdic88dhgw76pafgndpz04pig8il4advq978mxdxdwrydp276n";
authors = [
"Gilad Naaman <gilad.naaman@gmail.com>"
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
};
resolvedDefaultFeatures = [ "default" ];
};
"miniz_oxide" = rec {
crateName = "miniz_oxide";
version = "0.6.2";
edition = "2018";
sha256 = "1yp8z6yll5ypz1ldmgnv7zi0r78kbvmqmn2mii77jzmk5069axdj";
authors = [
"Frommi <daniil.liferenko@gmail.com>"
"oyvindln <oyvindln@users.noreply.github.com>"
];
dependencies = [
{
name = "adler";
packageId = "adler";
usesDefaultFeatures = false;
}
];
features = {
"alloc" = [ "dep:alloc" ];
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "with-alloc" ];
"rustc-dep-of-std" = [ "core" "alloc" "compiler_builtins" "adler/rustc-dep-of-std" ];
"simd" = [ "simd-adler32" ];
"simd-adler32" = [ "dep:simd-adler32" ];
};
resolvedDefaultFeatures = [ "default" "with-alloc" ];
};
"mio" = rec {
crateName = "mio";
version = "0.8.6";
edition = "2018";
sha256 = "1ygx5chq81k3vk2bx722xwcwf2qydmm337jsnijgzd7mxx39m7av";
authors = [
"Carl Lerche <me@carllerche.com>"
"Thomas de Zeeuw <thomasdezeeuw@gmail.com>"
"Tokio Contributors <team@tokio.rs>"
];
dependencies = [
{
name = "libc";
packageId = "libc";
target = { target, features }: (target."os" == "wasi");
}
{
name = "libc";
packageId = "libc";
target = { target, features }: (target."unix" or false);
}
{
name = "log";
packageId = "log";
}
{
name = "wasi";
packageId = "wasi";
target = { target, features }: (target."os" == "wasi");
}
{
name = "windows-sys";
packageId = "windows-sys";
target = { target, features }: (target."windows" or false);
features = [ "Win32_Foundation" "Win32_Networking_WinSock" "Win32_Storage_FileSystem" "Win32_System_IO" "Win32_System_WindowsProgramming" ];
}
];
features = {
"os-ext" = [ "os-poll" "windows-sys/Win32_System_Pipes" "windows-sys/Win32_Security" ];
};
resolvedDefaultFeatures = [ "default" "net" "os-ext" "os-poll" ];
};
"nanorand" = rec {
crateName = "nanorand";
version = "0.7.0";
edition = "2021";
sha256 = "1hr60b8zlfy7mxjcwx2wfmhpkx7vfr3v9x12shmv1c10b0y32lba";
authors = [
"Lucy <lucy@absolucy.moe>"
];
dependencies = [
{
name = "getrandom";
packageId = "getrandom";
optional = true;
features = [ "rdrand" "js" ];
}
];
features = {
"default" = [ "std" "tls" "wyrand" "pcg64" "chacha" ];
"getrandom" = [ "dep:getrandom" ];
"rdseed" = [ "std" ];
"std" = [ "alloc" ];
"tls" = [ "std" "wyrand" ];
"zeroize" = [ "dep:zeroize" ];
};
resolvedDefaultFeatures = [ "alloc" "chacha" "default" "getrandom" "pcg64" "std" "tls" "wyrand" ];
};
"num-integer" = rec {
crateName = "num-integer";
version = "0.1.45";
edition = "2015";
sha256 = "1ncwavvwdmsqzxnn65phv6c6nn72pnv9xhpmjd6a429mzf4k6p92";
authors = [
"The Rust Project Developers"
];
dependencies = [
{
name = "num-traits";
packageId = "num-traits";
usesDefaultFeatures = false;
}
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"default" = [ "std" ];
"i128" = [ "num-traits/i128" ];
"std" = [ "num-traits/std" ];
};
resolvedDefaultFeatures = [ "i128" ];
};
"num-rational" = rec {
crateName = "num-rational";
version = "0.4.1";
edition = "2018";
sha256 = "1c0rb8x4avxy3jvvzv764yk7afipzxncfnqlb10r3h53s34s2f06";
authors = [
"The Rust Project Developers"
];
dependencies = [
{
name = "num-integer";
packageId = "num-integer";
usesDefaultFeatures = false;
features = [ "i128" ];
}
{
name = "num-traits";
packageId = "num-traits";
usesDefaultFeatures = false;
features = [ "i128" ];
}
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"default" = [ "num-bigint-std" "std" ];
"num-bigint" = [ "dep:num-bigint" ];
"num-bigint-std" = [ "num-bigint/std" ];
"serde" = [ "dep:serde" ];
"std" = [ "num-integer/std" "num-traits/std" ];
};
};
"num-traits" = rec {
crateName = "num-traits";
version = "0.2.15";
edition = "2015";
sha256 = "1kfdqqw2ndz0wx2j75v9nbjx7d3mh3150zs4p5595y02rwsdx3jp";
authors = [
"The Rust Project Developers"
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"default" = [ "std" ];
"libm" = [ "dep:libm" ];
};
resolvedDefaultFeatures = [ "default" "i128" "std" ];
};
"num_cpus" = rec {
crateName = "num_cpus";
version = "1.15.0";
edition = "2015";
sha256 = "0fsrjy3arnbcl41vz0gppya8d7d24cpkjgfflr3v8pivl4nrxb0g";
authors = [
"Sean McArthur <sean@seanmonstar.com>"
];
dependencies = [
{
name = "hermit-abi";
packageId = "hermit-abi";
target = { target, features }: (((target."arch" == "x86_64") || (target."arch" == "aarch64")) && (target."os" == "hermit"));
}
{
name = "libc";
packageId = "libc";
target = { target, features }: (!(target."windows" or false));
}
];
};
"once_cell" = rec {
crateName = "once_cell";
version = "1.17.1";
edition = "2021";
sha256 = "1lrsy9c5ikf2iwxr4iwgd3rlq9mg8alh0np1g8abnvp1k4151rdp";
authors = [
"Aleksey Kladov <aleksey.kladov@gmail.com>"
];
features = {
"alloc" = [ "race" ];
"atomic-polyfill" = [ "critical-section" ];
"atomic_polyfill" = [ "dep:atomic_polyfill" ];
"critical-section" = [ "critical_section" "atomic_polyfill" ];
"critical_section" = [ "dep:critical_section" ];
"default" = [ "std" ];
"parking_lot" = [ "parking_lot_core" ];
"parking_lot_core" = [ "dep:parking_lot_core" ];
"std" = [ "alloc" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "race" "std" ];
};
"pango" = rec {
crateName = "pango";
version = "0.17.4";
edition = "2021";
sha256 = "0dqdfzavw426ygqq2298fara29yygy79lddkmw4447l85aw81hjj";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "gio";
packageId = "gio";
}
{
name = "glib";
packageId = "glib";
}
{
name = "libc";
packageId = "libc";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "pango-sys";
packageId = "pango-sys";
rename = "ffi";
}
];
features = {
"dox" = [ "ffi/dox" "glib/dox" "gio/dox" ];
"v1_42" = [ "ffi/v1_42" ];
"v1_44" = [ "v1_42" "ffi/v1_44" ];
"v1_46" = [ "v1_44" "ffi/v1_46" ];
"v1_48" = [ "v1_46" "ffi/v1_48" ];
"v1_50" = [ "v1_48" "ffi/v1_50" ];
"v1_52" = [ "v1_50" "ffi/v1_52" ];
};
resolvedDefaultFeatures = [ "v1_42" "v1_44" "v1_46" ];
};
"pango-sys" = rec {
crateName = "pango-sys";
version = "0.17.0";
edition = "2021";
sha256 = "1s2xc94xwm3b6wzqh5pj6jkjml1cs070plrl8z1bapjjnpqd14s2";
libName = "pango_sys";
authors = [
"The gtk-rs Project Developers"
];
dependencies = [
{
name = "glib-sys";
packageId = "glib-sys";
rename = "glib";
}
{
name = "gobject-sys";
packageId = "gobject-sys";
rename = "gobject";
}
{
name = "libc";
packageId = "libc";
}
];
buildDependencies = [
{
name = "system-deps";
packageId = "system-deps";
}
];
features = {
"dox" = [ "glib/dox" "gobject/dox" ];
"v1_44" = [ "v1_42" ];
"v1_46" = [ "v1_44" ];
"v1_48" = [ "v1_46" ];
"v1_50" = [ "v1_48" ];
"v1_52" = [ "v1_50" ];
};
resolvedDefaultFeatures = [ "v1_42" "v1_44" "v1_46" ];
};
"parking_lot" = rec {
crateName = "parking_lot";
version = "0.12.1";
edition = "2018";
sha256 = "13r2xk7mnxfc5g0g6dkdxqdqad99j7s7z8zhzz4npw5r0g0v4hip";
authors = [
"Amanieu d'Antras <amanieu@gmail.com>"
];
dependencies = [
{
name = "lock_api";
packageId = "lock_api";
}
{
name = "parking_lot_core";
packageId = "parking_lot_core";
}
];
features = {
"arc_lock" = [ "lock_api/arc_lock" ];
"deadlock_detection" = [ "parking_lot_core/deadlock_detection" ];
"nightly" = [ "parking_lot_core/nightly" "lock_api/nightly" ];
"owning_ref" = [ "lock_api/owning_ref" ];
"serde" = [ "lock_api/serde" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"parking_lot_core" = rec {
crateName = "parking_lot_core";
version = "0.9.7";
edition = "2018";
sha256 = "08cm5gg3a4jmr683x9dgih8vj66yn772kjvc8y1m0flyz6wwnsch";
authors = [
"Amanieu d'Antras <amanieu@gmail.com>"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "libc";
packageId = "libc";
target = { target, features }: (target."unix" or false);
}
{
name = "redox_syscall";
packageId = "redox_syscall";
target = { target, features }: (target."os" == "redox");
}
{
name = "smallvec";
packageId = "smallvec";
}
{
name = "windows-sys";
packageId = "windows-sys";
target = { target, features }: (target."windows" or false);
features = [ "Win32_Foundation" "Win32_System_LibraryLoader" "Win32_System_SystemServices" "Win32_System_WindowsProgramming" ];
}
];
features = {
"backtrace" = [ "dep:backtrace" ];
"deadlock_detection" = [ "petgraph" "thread-id" "backtrace" ];
"petgraph" = [ "dep:petgraph" ];
"thread-id" = [ "dep:thread-id" ];
};
};
"pin-project" = rec {
crateName = "pin-project";
version = "1.0.12";
edition = "2018";
sha256 = "1k3f9jkia3idxl2pqxamszwnl89dk52fa4jqj3p7zmmwnq4scadd";
dependencies = [
{
name = "pin-project-internal";
packageId = "pin-project-internal";
}
];
};
"pin-project-internal" = rec {
crateName = "pin-project-internal";
version = "1.0.12";
edition = "2018";
sha256 = "0maa6icn7rdfy4xvgfaq7m7bwpw9f19wg76f1ncsiixd0lgdp6q6";
procMacro = true;
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
features = [ "full" "visit-mut" ];
}
];
};
"pin-project-lite" = rec {
crateName = "pin-project-lite";
version = "0.2.9";
edition = "2018";
sha256 = "05n1z851l356hpgqadw4ar64mjanaxq1qlwqsf2k05ziq8xax9z0";
};
"pin-utils" = rec {
crateName = "pin-utils";
version = "0.1.0";
edition = "2018";
sha256 = "117ir7vslsl2z1a7qzhws4pd01cg2d3338c47swjyvqv2n60v1wb";
authors = [
"Josef Brandl <mail@josefbrandl.de>"
];
};
"pkg-config" = rec {
crateName = "pkg-config";
version = "0.3.26";
edition = "2015";
sha256 = "0q2i61dhqvawc51zfzl3jich57w0cjgfa894hn6ings7ffgsbjba";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
};
"png" = rec {
crateName = "png";
version = "0.17.7";
edition = "2018";
sha256 = "0f66slx641p7an277xskz8vq7syy9cmhsx1qwnfb268ahspqww2x";
authors = [
"The image-rs Developers"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
{
name = "crc32fast";
packageId = "crc32fast";
}
{
name = "flate2";
packageId = "flate2";
}
{
name = "miniz_oxide";
packageId = "miniz_oxide";
}
];
features = {
};
};
"proc-macro-crate" = rec {
crateName = "proc-macro-crate";
version = "1.3.1";
edition = "2021";
sha256 = "069r1k56bvgk0f58dm5swlssfcp79im230affwk6d9ck20g04k3z";
authors = [
"Bastian Köcher <git@kchr.de>"
];
dependencies = [
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "toml_edit";
packageId = "toml_edit";
}
];
};
"proc-macro-error" = rec {
crateName = "proc-macro-error";
version = "1.0.4";
edition = "2018";
sha256 = "1373bhxaf0pagd8zkyd03kkx6bchzf6g0dkwrwzsnal9z47lj9fs";
authors = [
"CreepySkeleton <creepy-skeleton@yandex.ru>"
];
dependencies = [
{
name = "proc-macro-error-attr";
packageId = "proc-macro-error-attr";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
optional = true;
usesDefaultFeatures = false;
}
];
buildDependencies = [
{
name = "version_check";
packageId = "version_check";
}
];
features = {
"default" = [ "syn-error" ];
"syn" = [ "dep:syn" ];
"syn-error" = [ "syn" ];
};
resolvedDefaultFeatures = [ "default" "syn" "syn-error" ];
};
"proc-macro-error-attr" = rec {
crateName = "proc-macro-error-attr";
version = "1.0.4";
edition = "2018";
sha256 = "0sgq6m5jfmasmwwy8x4mjygx5l7kp8s4j60bv25ckv2j1qc41gm1";
procMacro = true;
authors = [
"CreepySkeleton <creepy-skeleton@yandex.ru>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
];
buildDependencies = [
{
name = "version_check";
packageId = "version_check";
}
];
};
"proc-macro2" = rec {
crateName = "proc-macro2";
version = "1.0.52";
edition = "2018";
sha256 = "0922fkhi689x134yh6l97lnpwgarhbv0vnv3vpnkpk1nx3lil3hx";
authors = [
"David Tolnay <dtolnay@gmail.com>"
"Alex Crichton <alex@alexcrichton.com>"
];
dependencies = [
{
name = "unicode-ident";
packageId = "unicode-ident";
}
];
features = {
"default" = [ "proc-macro" ];
};
resolvedDefaultFeatures = [ "default" "proc-macro" ];
};
"qoi" = rec {
crateName = "qoi";
version = "0.4.1";
edition = "2021";
sha256 = "00c0wkb112annn2wl72ixyd78mf56p4lxkhlmsggx65l3v3n8vbz";
authors = [
"Ivan Smirnov <rust@ivan.smirnov.ie>"
];
dependencies = [
{
name = "bytemuck";
packageId = "bytemuck";
}
];
features = {
"default" = [ "std" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"quote" = rec {
crateName = "quote";
version = "1.0.26";
edition = "2018";
sha256 = "1z521piwggwzs0rj4wjx4ma6af1g6f1h5dkp382y5akqyx5sy924";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
usesDefaultFeatures = false;
}
];
features = {
"default" = [ "proc-macro" ];
"proc-macro" = [ "proc-macro2/proc-macro" ];
};
resolvedDefaultFeatures = [ "default" "proc-macro" ];
};
"rayon" = rec {
crateName = "rayon";
version = "1.7.0";
edition = "2021";
sha256 = "0fzh8w5ds1qjhilll4rkpd3kimw70zi5605wprxcig1pdqczab8x";
authors = [
"Niko Matsakis <niko@alum.mit.edu>"
"Josh Stone <cuviper@gmail.com>"
];
dependencies = [
{
name = "either";
packageId = "either";
usesDefaultFeatures = false;
}
{
name = "rayon-core";
packageId = "rayon-core";
}
];
};
"rayon-core" = rec {
crateName = "rayon-core";
version = "1.11.0";
edition = "2021";
sha256 = "13dymrhhdilzpbfh3aylv6ariayqdfk614b3frvwixb6d6yrb3sb";
authors = [
"Niko Matsakis <niko@alum.mit.edu>"
"Josh Stone <cuviper@gmail.com>"
];
dependencies = [
{
name = "crossbeam-channel";
packageId = "crossbeam-channel";
}
{
name = "crossbeam-deque";
packageId = "crossbeam-deque";
}
{
name = "crossbeam-utils";
packageId = "crossbeam-utils";
}
{
name = "num_cpus";
packageId = "num_cpus";
}
];
};
"redox_syscall" = rec {
crateName = "redox_syscall";
version = "0.2.16";
edition = "2018";
sha256 = "16jicm96kjyzm802cxdd1k9jmcph0db1a4lhslcnhjsvhp0mhnpv";
libName = "syscall";
authors = [
"Jeremy Soller <jackpot51@gmail.com>"
];
dependencies = [
{
name = "bitflags";
packageId = "bitflags";
}
];
};
"rustc_version" = rec {
crateName = "rustc_version";
version = "0.4.0";
edition = "2018";
sha256 = "0rpk9rcdk405xhbmgclsh4pai0svn49x35aggl4nhbkd4a2zb85z";
authors = [
"Dirkjan Ochtman <dirkjan@ochtman.nl>"
"Marvin Löbel <loebel.marvin@gmail.com>"
];
dependencies = [
{
name = "semver";
packageId = "semver";
}
];
};
"scopeguard" = rec {
crateName = "scopeguard";
version = "1.1.0";
edition = "2015";
sha256 = "1kbqm85v43rq92vx7hfiay6pmcga03vrjbbfwqpyj3pwsg3b16nj";
authors = [
"bluss"
];
features = {
"default" = [ "use_std" ];
};
};
"screenplay" = rec {
crateName = "screenplay";
version = "0.1.0";
edition = "2021";
src = lib.cleanSourceWith { filter = sourceFilter; src = ../../screenplay; };
dependencies = [
{
name = "gtk4";
packageId = "gtk4";
rename = "gtk";
}
];
};
"semver" = rec {
crateName = "semver";
version = "1.0.17";
edition = "2018";
sha256 = "1vf03d99sikkradjj33q1l9h4fqgd1h7darjypic6pnh4qrkdgdy";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
features = {
"default" = [ "std" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"serde" = rec {
crateName = "serde";
version = "1.0.157";
edition = "2015";
sha256 = "1ji57yw36a26zkg0857gnzcjzg4hnkmdg3d9zj45fayzypyfazbh";
authors = [
"Erick Tryzelaar <erick.tryzelaar@gmail.com>"
"David Tolnay <dtolnay@gmail.com>"
];
features = {
"default" = [ "std" ];
"derive" = [ "serde_derive" ];
"serde_derive" = [ "dep:serde_derive" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"signal-hook-registry" = rec {
crateName = "signal-hook-registry";
version = "1.4.1";
edition = "2015";
sha256 = "18crkkw5k82bvcx088xlf5g4n3772m24qhzgfan80nda7d3rn8nq";
authors = [
"Michal 'vorner' Vaner <vorner@vorner.cz>"
"Masaki Hara <ackie.h.gmai@gmail.com>"
];
dependencies = [
{
name = "libc";
packageId = "libc";
}
];
};
"simd-adler32" = rec {
crateName = "simd-adler32";
version = "0.3.5";
edition = "2018";
sha256 = "0bsj39d3xrqlcxjwj8i6fzh6ks38idh6b14nml8534f1fyxvz2i3";
authors = [
"Marvin Countryman <me@maar.vin>"
];
features = {
"default" = [ "std" "const-generics" ];
};
resolvedDefaultFeatures = [ "const-generics" "default" "std" ];
};
"slab" = rec {
crateName = "slab";
version = "0.4.8";
edition = "2018";
sha256 = "0bgwxig8gkqp6gz8rvrpdj6qwa10karnsxwx7wsj5ay8kcf3aa35";
authors = [
"Carl Lerche <me@carllerche.com>"
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
features = {
"default" = [ "std" ];
"serde" = [ "dep:serde" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"smallvec" = rec {
crateName = "smallvec";
version = "1.10.0";
edition = "2018";
sha256 = "1q2k15fzxgwjpcdv3f323w24rbbfyv711ayz85ila12lg7zbw1x5";
authors = [
"The Servo Project Developers"
];
features = {
"arbitrary" = [ "dep:arbitrary" ];
"const_new" = [ "const_generics" ];
"serde" = [ "dep:serde" ];
};
};
"socket2" = rec {
crateName = "socket2";
version = "0.4.9";
edition = "2018";
sha256 = "0qnn1r41jqj20m0a2nzzjgzndlmpg5maiyjchccaypfqxq8sk934";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
"Thomas de Zeeuw <thomasdezeeuw@gmail.com>"
];
dependencies = [
{
name = "libc";
packageId = "libc";
target = { target, features }: (target."unix" or false);
}
{
name = "winapi";
packageId = "winapi";
target = { target, features }: (target."windows" or false);
features = [ "handleapi" "ws2ipdef" "ws2tcpip" ];
}
];
features = {
};
resolvedDefaultFeatures = [ "all" ];
};
"spin" = rec {
crateName = "spin";
version = "0.9.7";
edition = "2015";
sha256 = "1vvvnr74m7g7hri6f1ajv401w5q2yvj9cqvk66r21pv7yzb9z5f0";
authors = [
"Mathijs van de Nes <git@mathijs.vd-nes.nl>"
"John Ericson <git@JohnEricson.me>"
"Joshua Barretto <joshua.s.barretto@gmail.com>"
];
dependencies = [
{
name = "lock_api";
packageId = "lock_api";
rename = "lock_api_crate";
optional = true;
}
];
features = {
"barrier" = [ "mutex" ];
"default" = [ "lock_api" "mutex" "spin_mutex" "rwlock" "once" "lazy" "barrier" ];
"fair_mutex" = [ "mutex" ];
"lazy" = [ "once" ];
"lock_api" = [ "lock_api_crate" ];
"lock_api_crate" = [ "dep:lock_api_crate" ];
"portable-atomic" = [ "dep:portable-atomic" ];
"portable_atomic" = [ "portable-atomic" ];
"spin_mutex" = [ "mutex" ];
"ticket_mutex" = [ "mutex" ];
"use_ticket_mutex" = [ "mutex" "ticket_mutex" ];
};
resolvedDefaultFeatures = [ "barrier" "default" "lazy" "lock_api" "lock_api_crate" "mutex" "once" "rwlock" "spin_mutex" ];
};
"syn 1.0.109" = rec {
crateName = "syn";
version = "1.0.109";
edition = "2018";
sha256 = "0ds2if4600bd59wsv7jjgfkayfzy3hnazs394kz6zdkmna8l3dkj";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
usesDefaultFeatures = false;
}
{
name = "quote";
packageId = "quote";
optional = true;
usesDefaultFeatures = false;
}
{
name = "unicode-ident";
packageId = "unicode-ident";
}
];
features = {
"default" = [ "derive" "parsing" "printing" "clone-impls" "proc-macro" ];
"printing" = [ "quote" ];
"proc-macro" = [ "proc-macro2/proc-macro" "quote/proc-macro" ];
"quote" = [ "dep:quote" ];
"test" = [ "syn-test-suite/all-features" ];
};
resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "full" "parsing" "printing" "proc-macro" "quote" "visit" "visit-mut" ];
};
"syn 2.0.2" = rec {
crateName = "syn";
version = "2.0.2";
edition = "2021";
sha256 = "0idhj68il6kghbjacchj0pdy4nrb2ysnjyci28vc780zxrm2glsr";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
usesDefaultFeatures = false;
}
{
name = "quote";
packageId = "quote";
optional = true;
usesDefaultFeatures = false;
}
{
name = "unicode-ident";
packageId = "unicode-ident";
}
];
features = {
"default" = [ "derive" "parsing" "printing" "clone-impls" "proc-macro" ];
"printing" = [ "quote" ];
"proc-macro" = [ "proc-macro2/proc-macro" "quote/proc-macro" ];
"quote" = [ "dep:quote" ];
"test" = [ "syn-test-suite/all-features" ];
};
resolvedDefaultFeatures = [ "clone-impls" "default" "derive" "parsing" "printing" "proc-macro" "quote" ];
};
"system-deps" = rec {
crateName = "system-deps";
version = "6.0.3";
edition = "2018";
sha256 = "1zxf34adb4hc7lry6vbgl56psvb0kb31rdvn36yjzyp167zb2m99";
authors = [
"Guillaume Desmottes <guillaume.desmottes@collabora.com>"
"Josh Triplett <josh@joshtriplett.org>"
];
dependencies = [
{
name = "cfg-expr";
packageId = "cfg-expr";
}
{
name = "heck";
packageId = "heck";
}
{
name = "pkg-config";
packageId = "pkg-config";
}
{
name = "toml";
packageId = "toml";
usesDefaultFeatures = false;
}
{
name = "version-compare";
packageId = "version-compare";
}
];
};
"thiserror" = rec {
crateName = "thiserror";
version = "1.0.40";
edition = "2018";
sha256 = "1b7bdhriasdsr99y39d50jz995xaz9sw3hsbb6z9kp6q9cqrm34p";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "thiserror-impl";
packageId = "thiserror-impl";
}
];
};
"thiserror-impl" = rec {
crateName = "thiserror-impl";
version = "1.0.40";
edition = "2018";
sha256 = "17sn41kyimc6s983aypkk6a45pcyrkbkvrw6rp407n5hqm16ligr";
procMacro = true;
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 2.0.2";
}
];
};
"tiff" = rec {
crateName = "tiff";
version = "0.8.1";
edition = "2018";
sha256 = "0wg4a6w8sakyy0mggblg340mx8bgglx9hwsxsn8g5fpjkx7k6jbl";
authors = [
"The image-rs Developers"
];
dependencies = [
{
name = "flate2";
packageId = "flate2";
}
{
name = "jpeg-decoder";
packageId = "jpeg-decoder";
rename = "jpeg";
usesDefaultFeatures = false;
}
{
name = "weezl";
packageId = "weezl";
}
];
};
"tokio" = rec {
crateName = "tokio";
version = "1.26.0";
edition = "2018";
sha256 = "0r3gnz0zh669q9jm7xh8dz7irbnxjddbbrfflp42jyn2qc0is803";
authors = [
"Tokio Contributors <team@tokio.rs>"
];
dependencies = [
{
name = "bytes";
packageId = "bytes";
optional = true;
}
{
name = "libc";
packageId = "libc";
optional = true;
target = { target, features }: (target."unix" or false);
}
{
name = "memchr";
packageId = "memchr";
optional = true;
}
{
name = "mio";
packageId = "mio";
optional = true;
}
{
name = "num_cpus";
packageId = "num_cpus";
optional = true;
}
{
name = "parking_lot";
packageId = "parking_lot";
optional = true;
}
{
name = "pin-project-lite";
packageId = "pin-project-lite";
}
{
name = "signal-hook-registry";
packageId = "signal-hook-registry";
optional = true;
target = { target, features }: (target."unix" or false);
}
{
name = "socket2";
packageId = "socket2";
optional = true;
target = { target, features }: (!((target."arch" == "wasm32") || (target."arch" == "wasm64")));
features = [ "all" ];
}
{
name = "tokio-macros";
packageId = "tokio-macros";
optional = true;
}
{
name = "windows-sys";
packageId = "windows-sys";
target = { target, features }: (target."docsrs" or false);
features = [ "Win32_Foundation" "Win32_Security_Authorization" ];
}
{
name = "windows-sys";
packageId = "windows-sys";
optional = true;
target = { target, features }: (target."windows" or false);
}
];
buildDependencies = [
{
name = "autocfg";
packageId = "autocfg";
}
];
devDependencies = [
{
name = "libc";
packageId = "libc";
target = {target, features}: (target."unix" or false);
}
{
name = "socket2";
packageId = "socket2";
target = {target, features}: (!((target."arch" == "wasm32") || (target."arch" == "wasm64")));
}
];
features = {
"bytes" = [ "dep:bytes" ];
"full" = [ "fs" "io-util" "io-std" "macros" "net" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "sync" "time" ];
"io-util" = [ "memchr" "bytes" ];
"libc" = [ "dep:libc" ];
"macros" = [ "tokio-macros" ];
"memchr" = [ "dep:memchr" ];
"mio" = [ "dep:mio" ];
"net" = [ "libc" "mio/os-poll" "mio/os-ext" "mio/net" "socket2" "windows-sys/Win32_Foundation" "windows-sys/Win32_Security" "windows-sys/Win32_Storage_FileSystem" "windows-sys/Win32_System_Pipes" "windows-sys/Win32_System_SystemServices" ];
"num_cpus" = [ "dep:num_cpus" ];
"parking_lot" = [ "dep:parking_lot" ];
"process" = [ "bytes" "libc" "mio/os-poll" "mio/os-ext" "mio/net" "signal-hook-registry" "windows-sys/Win32_Foundation" "windows-sys/Win32_System_Threading" "windows-sys/Win32_System_WindowsProgramming" ];
"rt-multi-thread" = [ "num_cpus" "rt" ];
"signal" = [ "libc" "mio/os-poll" "mio/net" "mio/os-ext" "signal-hook-registry" "windows-sys/Win32_Foundation" "windows-sys/Win32_System_Console" ];
"signal-hook-registry" = [ "dep:signal-hook-registry" ];
"socket2" = [ "dep:socket2" ];
"test-util" = [ "rt" "sync" "time" ];
"tokio-macros" = [ "dep:tokio-macros" ];
"tracing" = [ "dep:tracing" ];
"windows-sys" = [ "dep:windows-sys" ];
};
resolvedDefaultFeatures = [ "bytes" "default" "fs" "full" "io-std" "io-util" "libc" "macros" "memchr" "mio" "net" "num_cpus" "parking_lot" "process" "rt" "rt-multi-thread" "signal" "signal-hook-registry" "socket2" "sync" "time" "tokio-macros" "windows-sys" ];
};
"tokio-macros" = rec {
crateName = "tokio-macros";
version = "1.8.2";
edition = "2018";
sha256 = "1y3dphh8i4971wcfqxjhd662nain1i86rsf3y79mazr8vq7w0rnj";
procMacro = true;
authors = [
"Tokio Contributors <team@tokio.rs>"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
features = [ "full" ];
}
];
};
"toml" = rec {
crateName = "toml";
version = "0.5.11";
edition = "2018";
sha256 = "0d2266nx8b3n22c7k24x4428z6di8n83a9n466jm7a2hipfz1xzl";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
dependencies = [
{
name = "serde";
packageId = "serde";
}
];
features = {
"indexmap" = [ "dep:indexmap" ];
"preserve_order" = [ "indexmap" ];
};
};
"toml_datetime" = rec {
crateName = "toml_datetime";
version = "0.6.1";
edition = "2021";
sha256 = "08lndxs1bval859mlas0k4f032s26c9k6pzd589m02z1vqpfvf1s";
authors = [
"Alex Crichton <alex@alexcrichton.com>"
];
features = {
"serde" = [ "dep:serde" ];
};
};
"toml_edit" = rec {
crateName = "toml_edit";
version = "0.19.7";
edition = "2021";
sha256 = "0x0jc9sya1iiic9kg5dindmwmy1q6jdd4pb17xmarn5c05jlc66w";
authors = [
"Andronik Ordian <write@reusable.software>"
"Ed Page <eopage@gmail.com>"
];
dependencies = [
{
name = "indexmap";
packageId = "indexmap";
features = [ "std" ];
}
{
name = "toml_datetime";
packageId = "toml_datetime";
}
{
name = "winnow";
packageId = "winnow";
}
];
features = {
"perf" = [ "dep:kstring" ];
"serde" = [ "dep:serde" "toml_datetime/serde" "dep:serde_spanned" ];
};
resolvedDefaultFeatures = [ "default" ];
};
"unicode-ident" = rec {
crateName = "unicode-ident";
version = "1.0.8";
edition = "2018";
sha256 = "1x4v4v95fv9gn5zbpm23sa9awjvmclap1wh1lmikmw9rna3llip5";
authors = [
"David Tolnay <dtolnay@gmail.com>"
];
};
"version-compare" = rec {
crateName = "version-compare";
version = "0.1.1";
edition = "2018";
sha256 = "0acg4pmjdbmclg0m7yhijn979mdy66z3k8qrcnvn634f1gy456jp";
authors = [
"Tim Visee <3a4fb3964f@sinenomine.email>"
];
};
"version_check" = rec {
crateName = "version_check";
version = "0.9.4";
edition = "2015";
sha256 = "0gs8grwdlgh0xq660d7wr80x14vxbizmd8dbp29p2pdncx8lp1s9";
authors = [
"Sergio Benitez <sb@sergio.bz>"
];
};
"wasi" = rec {
crateName = "wasi";
version = "0.11.0+wasi-snapshot-preview1";
edition = "2018";
sha256 = "08z4hxwkpdpalxjps1ai9y7ihin26y9f476i53dv98v45gkqg3cw";
authors = [
"The Cranelift Project Developers"
];
features = {
"compiler_builtins" = [ "dep:compiler_builtins" ];
"core" = [ "dep:core" ];
"default" = [ "std" ];
"rustc-dep-of-std" = [ "compiler_builtins" "core" "rustc-std-workspace-alloc" ];
"rustc-std-workspace-alloc" = [ "dep:rustc-std-workspace-alloc" ];
};
resolvedDefaultFeatures = [ "default" "std" ];
};
"wasm-bindgen" = rec {
crateName = "wasm-bindgen";
version = "0.2.84";
edition = "2018";
sha256 = "0fx5gh0b4n6znfa3blz92wn1k4bbiysyq9m95s7rn3gk46ydry1i";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "cfg-if";
packageId = "cfg-if";
}
{
name = "wasm-bindgen-macro";
packageId = "wasm-bindgen-macro";
}
];
features = {
"default" = [ "spans" "std" ];
"enable-interning" = [ "std" ];
"serde" = [ "dep:serde" ];
"serde-serialize" = [ "serde" "serde_json" "std" ];
"serde_json" = [ "dep:serde_json" ];
"spans" = [ "wasm-bindgen-macro/spans" ];
"strict-macro" = [ "wasm-bindgen-macro/strict-macro" ];
"xxx_debug_only_print_generated_code" = [ "wasm-bindgen-macro/xxx_debug_only_print_generated_code" ];
};
resolvedDefaultFeatures = [ "default" "spans" "std" ];
};
"wasm-bindgen-backend" = rec {
crateName = "wasm-bindgen-backend";
version = "0.2.84";
edition = "2018";
sha256 = "1ffc0wb293ha56i66f830x7f8aa2xql69a21lrasy1ncbgyr1klm";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "bumpalo";
packageId = "bumpalo";
}
{
name = "log";
packageId = "log";
}
{
name = "once_cell";
packageId = "once_cell";
}
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
features = [ "full" ];
}
{
name = "wasm-bindgen-shared";
packageId = "wasm-bindgen-shared";
}
];
features = {
"extra-traits" = [ "syn/extra-traits" ];
};
resolvedDefaultFeatures = [ "spans" ];
};
"wasm-bindgen-macro" = rec {
crateName = "wasm-bindgen-macro";
version = "0.2.84";
edition = "2018";
sha256 = "1idlq28awqhq8rclb22rn5xix82w9a4rgy11vkapzhzd1dygf8ac";
procMacro = true;
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "quote";
packageId = "quote";
}
{
name = "wasm-bindgen-macro-support";
packageId = "wasm-bindgen-macro-support";
}
];
features = {
"spans" = [ "wasm-bindgen-macro-support/spans" ];
"strict-macro" = [ "wasm-bindgen-macro-support/strict-macro" ];
};
resolvedDefaultFeatures = [ "spans" ];
};
"wasm-bindgen-macro-support" = rec {
crateName = "wasm-bindgen-macro-support";
version = "0.2.84";
edition = "2018";
sha256 = "1xm56lpi0rihh8ny7x085dgs3jdm47spgqflb98wghyadwq83zra";
authors = [
"The wasm-bindgen Developers"
];
dependencies = [
{
name = "proc-macro2";
packageId = "proc-macro2";
}
{
name = "quote";
packageId = "quote";
}
{
name = "syn";
packageId = "syn 1.0.109";
features = [ "visit" "full" ];
}
{
name = "wasm-bindgen-backend";
packageId = "wasm-bindgen-backend";
}
{
name = "wasm-bindgen-shared";
packageId = "wasm-bindgen-shared";
}
];
features = {
"extra-traits" = [ "syn/extra-traits" ];
"spans" = [ "wasm-bindgen-backend/spans" ];
};
resolvedDefaultFeatures = [ "spans" ];
};
"wasm-bindgen-shared" = rec {
crateName = "wasm-bindgen-shared";
version = "0.2.84";
edition = "2018";
sha256 = "0pcvk1c97r1pprzfaxxn359r0wqg5bm33ylbwgjh8f4cwbvzwih0";
authors = [
"The wasm-bindgen Developers"
];
};
"weezl" = rec {
crateName = "weezl";
version = "0.1.7";
edition = "2018";
crateBin = [];
sha256 = "1frdbq6y5jn2j93i20hc80swpkj30p1wffwxj1nr4fp09m6id4wi";
authors = [
"HeroicKatora <andreas.molzer@gmx.de>"
];
features = {
"async" = [ "futures" "std" ];
"default" = [ "std" ];
"futures" = [ "dep:futures" ];
"std" = [ "alloc" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "std" ];
};
"winapi" = rec {
crateName = "winapi";
version = "0.3.9";
edition = "2015";
sha256 = "06gl025x418lchw1wxj64ycr7gha83m44cjr5sarhynd9xkrm0sw";
authors = [
"Peter Atashian <retep998@gmail.com>"
];
dependencies = [
{
name = "winapi-i686-pc-windows-gnu";
packageId = "winapi-i686-pc-windows-gnu";
target = { target, features }: (stdenv.hostPlatform.config == "i686-pc-windows-gnu");
}
{
name = "winapi-x86_64-pc-windows-gnu";
packageId = "winapi-x86_64-pc-windows-gnu";
target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-gnu");
}
];
features = {
"debug" = [ "impl-debug" ];
};
resolvedDefaultFeatures = [ "handleapi" "winsock2" "ws2def" "ws2ipdef" "ws2tcpip" ];
};
"winapi-i686-pc-windows-gnu" = rec {
crateName = "winapi-i686-pc-windows-gnu";
version = "0.4.0";
edition = "2015";
sha256 = "1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc";
authors = [
"Peter Atashian <retep998@gmail.com>"
];
};
"winapi-x86_64-pc-windows-gnu" = rec {
crateName = "winapi-x86_64-pc-windows-gnu";
version = "0.4.0";
edition = "2015";
sha256 = "0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki";
authors = [
"Peter Atashian <retep998@gmail.com>"
];
};
"windows-sys" = rec {
crateName = "windows-sys";
version = "0.45.0";
edition = "2018";
sha256 = "1l36bcqm4g89pknfp8r9rl1w4bn017q6a8qlx8viv0xjxzjkna3m";
authors = [
"Microsoft"
];
dependencies = [
{
name = "windows-targets";
packageId = "windows-targets";
target = { target, features }: (!(target."windows_raw_dylib" or false));
}
];
features = {
"Win32_Data" = [ "Win32" ];
"Win32_Data_HtmlHelp" = [ "Win32_Data" ];
"Win32_Data_RightsManagement" = [ "Win32_Data" ];
"Win32_Data_Xml" = [ "Win32_Data" ];
"Win32_Data_Xml_MsXml" = [ "Win32_Data_Xml" ];
"Win32_Data_Xml_XmlLite" = [ "Win32_Data_Xml" ];
"Win32_Devices" = [ "Win32" ];
"Win32_Devices_AllJoyn" = [ "Win32_Devices" ];
"Win32_Devices_BiometricFramework" = [ "Win32_Devices" ];
"Win32_Devices_Bluetooth" = [ "Win32_Devices" ];
"Win32_Devices_Communication" = [ "Win32_Devices" ];
"Win32_Devices_DeviceAccess" = [ "Win32_Devices" ];
"Win32_Devices_DeviceAndDriverInstallation" = [ "Win32_Devices" ];
"Win32_Devices_DeviceQuery" = [ "Win32_Devices" ];
"Win32_Devices_Display" = [ "Win32_Devices" ];
"Win32_Devices_Enumeration" = [ "Win32_Devices" ];
"Win32_Devices_Enumeration_Pnp" = [ "Win32_Devices_Enumeration" ];
"Win32_Devices_Fax" = [ "Win32_Devices" ];
"Win32_Devices_FunctionDiscovery" = [ "Win32_Devices" ];
"Win32_Devices_Geolocation" = [ "Win32_Devices" ];
"Win32_Devices_HumanInterfaceDevice" = [ "Win32_Devices" ];
"Win32_Devices_ImageAcquisition" = [ "Win32_Devices" ];
"Win32_Devices_PortableDevices" = [ "Win32_Devices" ];
"Win32_Devices_Properties" = [ "Win32_Devices" ];
"Win32_Devices_Pwm" = [ "Win32_Devices" ];
"Win32_Devices_Sensors" = [ "Win32_Devices" ];
"Win32_Devices_SerialCommunication" = [ "Win32_Devices" ];
"Win32_Devices_Tapi" = [ "Win32_Devices" ];
"Win32_Devices_Usb" = [ "Win32_Devices" ];
"Win32_Devices_WebServicesOnDevices" = [ "Win32_Devices" ];
"Win32_Foundation" = [ "Win32" ];
"Win32_Gaming" = [ "Win32" ];
"Win32_Globalization" = [ "Win32" ];
"Win32_Graphics" = [ "Win32" ];
"Win32_Graphics_Dwm" = [ "Win32_Graphics" ];
"Win32_Graphics_Gdi" = [ "Win32_Graphics" ];
"Win32_Graphics_Hlsl" = [ "Win32_Graphics" ];
"Win32_Graphics_OpenGL" = [ "Win32_Graphics" ];
"Win32_Graphics_Printing" = [ "Win32_Graphics" ];
"Win32_Graphics_Printing_PrintTicket" = [ "Win32_Graphics_Printing" ];
"Win32_Management" = [ "Win32" ];
"Win32_Management_MobileDeviceManagementRegistration" = [ "Win32_Management" ];
"Win32_Media" = [ "Win32" ];
"Win32_Media_Audio" = [ "Win32_Media" ];
"Win32_Media_Audio_Apo" = [ "Win32_Media_Audio" ];
"Win32_Media_Audio_DirectMusic" = [ "Win32_Media_Audio" ];
"Win32_Media_Audio_Endpoints" = [ "Win32_Media_Audio" ];
"Win32_Media_Audio_XAudio2" = [ "Win32_Media_Audio" ];
"Win32_Media_DeviceManager" = [ "Win32_Media" ];
"Win32_Media_DxMediaObjects" = [ "Win32_Media" ];
"Win32_Media_KernelStreaming" = [ "Win32_Media" ];
"Win32_Media_LibrarySharingServices" = [ "Win32_Media" ];
"Win32_Media_MediaPlayer" = [ "Win32_Media" ];
"Win32_Media_Multimedia" = [ "Win32_Media" ];
"Win32_Media_Speech" = [ "Win32_Media" ];
"Win32_Media_Streaming" = [ "Win32_Media" ];
"Win32_Media_WindowsMediaFormat" = [ "Win32_Media" ];
"Win32_NetworkManagement" = [ "Win32" ];
"Win32_NetworkManagement_Dhcp" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_Dns" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_InternetConnectionWizard" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_IpHelper" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_MobileBroadband" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_Multicast" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_Ndis" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_NetBios" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_NetManagement" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_NetShell" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_NetworkDiagnosticsFramework" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_NetworkPolicyServer" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_P2P" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_QoS" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_Rras" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_Snmp" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WNet" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WebDav" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WiFi" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WindowsConnectNow" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WindowsConnectionManager" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WindowsFilteringPlatform" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WindowsFirewall" = [ "Win32_NetworkManagement" ];
"Win32_NetworkManagement_WindowsNetworkVirtualization" = [ "Win32_NetworkManagement" ];
"Win32_Networking" = [ "Win32" ];
"Win32_Networking_ActiveDirectory" = [ "Win32_Networking" ];
"Win32_Networking_BackgroundIntelligentTransferService" = [ "Win32_Networking" ];
"Win32_Networking_Clustering" = [ "Win32_Networking" ];
"Win32_Networking_HttpServer" = [ "Win32_Networking" ];
"Win32_Networking_Ldap" = [ "Win32_Networking" ];
"Win32_Networking_NetworkListManager" = [ "Win32_Networking" ];
"Win32_Networking_RemoteDifferentialCompression" = [ "Win32_Networking" ];
"Win32_Networking_WebSocket" = [ "Win32_Networking" ];
"Win32_Networking_WinHttp" = [ "Win32_Networking" ];
"Win32_Networking_WinInet" = [ "Win32_Networking" ];
"Win32_Networking_WinSock" = [ "Win32_Networking" ];
"Win32_Networking_WindowsWebServices" = [ "Win32_Networking" ];
"Win32_Security" = [ "Win32" ];
"Win32_Security_AppLocker" = [ "Win32_Security" ];
"Win32_Security_Authentication" = [ "Win32_Security" ];
"Win32_Security_Authentication_Identity" = [ "Win32_Security_Authentication" ];
"Win32_Security_Authentication_Identity_Provider" = [ "Win32_Security_Authentication_Identity" ];
"Win32_Security_Authorization" = [ "Win32_Security" ];
"Win32_Security_Authorization_UI" = [ "Win32_Security_Authorization" ];
"Win32_Security_ConfigurationSnapin" = [ "Win32_Security" ];
"Win32_Security_Credentials" = [ "Win32_Security" ];
"Win32_Security_Cryptography" = [ "Win32_Security" ];
"Win32_Security_Cryptography_Catalog" = [ "Win32_Security_Cryptography" ];
"Win32_Security_Cryptography_Certificates" = [ "Win32_Security_Cryptography" ];
"Win32_Security_Cryptography_Sip" = [ "Win32_Security_Cryptography" ];
"Win32_Security_Cryptography_UI" = [ "Win32_Security_Cryptography" ];
"Win32_Security_DiagnosticDataQuery" = [ "Win32_Security" ];
"Win32_Security_DirectoryServices" = [ "Win32_Security" ];
"Win32_Security_EnterpriseData" = [ "Win32_Security" ];
"Win32_Security_ExtensibleAuthenticationProtocol" = [ "Win32_Security" ];
"Win32_Security_Isolation" = [ "Win32_Security" ];
"Win32_Security_LicenseProtection" = [ "Win32_Security" ];
"Win32_Security_NetworkAccessProtection" = [ "Win32_Security" ];
"Win32_Security_Tpm" = [ "Win32_Security" ];
"Win32_Security_WinTrust" = [ "Win32_Security" ];
"Win32_Security_WinWlx" = [ "Win32_Security" ];
"Win32_Storage" = [ "Win32" ];
"Win32_Storage_Cabinets" = [ "Win32_Storage" ];
"Win32_Storage_CloudFilters" = [ "Win32_Storage" ];
"Win32_Storage_Compression" = [ "Win32_Storage" ];
"Win32_Storage_DataDeduplication" = [ "Win32_Storage" ];
"Win32_Storage_DistributedFileSystem" = [ "Win32_Storage" ];
"Win32_Storage_EnhancedStorage" = [ "Win32_Storage" ];
"Win32_Storage_FileHistory" = [ "Win32_Storage" ];
"Win32_Storage_FileServerResourceManager" = [ "Win32_Storage" ];
"Win32_Storage_FileSystem" = [ "Win32_Storage" ];
"Win32_Storage_Imapi" = [ "Win32_Storage" ];
"Win32_Storage_IndexServer" = [ "Win32_Storage" ];
"Win32_Storage_InstallableFileSystems" = [ "Win32_Storage" ];
"Win32_Storage_IscsiDisc" = [ "Win32_Storage" ];
"Win32_Storage_Jet" = [ "Win32_Storage" ];
"Win32_Storage_OfflineFiles" = [ "Win32_Storage" ];
"Win32_Storage_OperationRecorder" = [ "Win32_Storage" ];
"Win32_Storage_Packaging" = [ "Win32_Storage" ];
"Win32_Storage_Packaging_Appx" = [ "Win32_Storage_Packaging" ];
"Win32_Storage_Packaging_Opc" = [ "Win32_Storage_Packaging" ];
"Win32_Storage_ProjectedFileSystem" = [ "Win32_Storage" ];
"Win32_Storage_StructuredStorage" = [ "Win32_Storage" ];
"Win32_Storage_Vhd" = [ "Win32_Storage" ];
"Win32_Storage_VirtualDiskService" = [ "Win32_Storage" ];
"Win32_Storage_Vss" = [ "Win32_Storage" ];
"Win32_Storage_Xps" = [ "Win32_Storage" ];
"Win32_Storage_Xps_Printing" = [ "Win32_Storage_Xps" ];
"Win32_System" = [ "Win32" ];
"Win32_System_AddressBook" = [ "Win32_System" ];
"Win32_System_Antimalware" = [ "Win32_System" ];
"Win32_System_ApplicationInstallationAndServicing" = [ "Win32_System" ];
"Win32_System_ApplicationVerifier" = [ "Win32_System" ];
"Win32_System_AssessmentTool" = [ "Win32_System" ];
"Win32_System_Com" = [ "Win32_System" ];
"Win32_System_Com_CallObj" = [ "Win32_System_Com" ];
"Win32_System_Com_ChannelCredentials" = [ "Win32_System_Com" ];
"Win32_System_Com_Events" = [ "Win32_System_Com" ];
"Win32_System_Com_Marshal" = [ "Win32_System_Com" ];
"Win32_System_Com_StructuredStorage" = [ "Win32_System_Com" ];
"Win32_System_Com_UI" = [ "Win32_System_Com" ];
"Win32_System_Com_Urlmon" = [ "Win32_System_Com" ];
"Win32_System_ComponentServices" = [ "Win32_System" ];
"Win32_System_Console" = [ "Win32_System" ];
"Win32_System_Contacts" = [ "Win32_System" ];
"Win32_System_CorrelationVector" = [ "Win32_System" ];
"Win32_System_DataExchange" = [ "Win32_System" ];
"Win32_System_DeploymentServices" = [ "Win32_System" ];
"Win32_System_DesktopSharing" = [ "Win32_System" ];
"Win32_System_DeveloperLicensing" = [ "Win32_System" ];
"Win32_System_Diagnostics" = [ "Win32_System" ];
"Win32_System_Diagnostics_Ceip" = [ "Win32_System_Diagnostics" ];
"Win32_System_Diagnostics_Debug" = [ "Win32_System_Diagnostics" ];
"Win32_System_Diagnostics_Etw" = [ "Win32_System_Diagnostics" ];
"Win32_System_Diagnostics_ProcessSnapshotting" = [ "Win32_System_Diagnostics" ];
"Win32_System_Diagnostics_ToolHelp" = [ "Win32_System_Diagnostics" ];
"Win32_System_DistributedTransactionCoordinator" = [ "Win32_System" ];
"Win32_System_Environment" = [ "Win32_System" ];
"Win32_System_ErrorReporting" = [ "Win32_System" ];
"Win32_System_EventCollector" = [ "Win32_System" ];
"Win32_System_EventLog" = [ "Win32_System" ];
"Win32_System_EventNotificationService" = [ "Win32_System" ];
"Win32_System_GroupPolicy" = [ "Win32_System" ];
"Win32_System_HostCompute" = [ "Win32_System" ];
"Win32_System_HostComputeNetwork" = [ "Win32_System" ];
"Win32_System_HostComputeSystem" = [ "Win32_System" ];
"Win32_System_Hypervisor" = [ "Win32_System" ];
"Win32_System_IO" = [ "Win32_System" ];
"Win32_System_Iis" = [ "Win32_System" ];
"Win32_System_Ioctl" = [ "Win32_System" ];
"Win32_System_JobObjects" = [ "Win32_System" ];
"Win32_System_Js" = [ "Win32_System" ];
"Win32_System_Kernel" = [ "Win32_System" ];
"Win32_System_LibraryLoader" = [ "Win32_System" ];
"Win32_System_Mailslots" = [ "Win32_System" ];
"Win32_System_Mapi" = [ "Win32_System" ];
"Win32_System_Memory" = [ "Win32_System" ];
"Win32_System_Memory_NonVolatile" = [ "Win32_System_Memory" ];
"Win32_System_MessageQueuing" = [ "Win32_System" ];
"Win32_System_MixedReality" = [ "Win32_System" ];
"Win32_System_Mmc" = [ "Win32_System" ];
"Win32_System_Ole" = [ "Win32_System" ];
"Win32_System_ParentalControls" = [ "Win32_System" ];
"Win32_System_PasswordManagement" = [ "Win32_System" ];
"Win32_System_Performance" = [ "Win32_System" ];
"Win32_System_Performance_HardwareCounterProfiling" = [ "Win32_System_Performance" ];
"Win32_System_Pipes" = [ "Win32_System" ];
"Win32_System_Power" = [ "Win32_System" ];
"Win32_System_ProcessStatus" = [ "Win32_System" ];
"Win32_System_RealTimeCommunications" = [ "Win32_System" ];
"Win32_System_Recovery" = [ "Win32_System" ];
"Win32_System_Registry" = [ "Win32_System" ];
"Win32_System_RemoteAssistance" = [ "Win32_System" ];
"Win32_System_RemoteDesktop" = [ "Win32_System" ];
"Win32_System_RemoteManagement" = [ "Win32_System" ];
"Win32_System_RestartManager" = [ "Win32_System" ];
"Win32_System_Restore" = [ "Win32_System" ];
"Win32_System_Rpc" = [ "Win32_System" ];
"Win32_System_Search" = [ "Win32_System" ];
"Win32_System_Search_Common" = [ "Win32_System_Search" ];
"Win32_System_SecurityCenter" = [ "Win32_System" ];
"Win32_System_ServerBackup" = [ "Win32_System" ];
"Win32_System_Services" = [ "Win32_System" ];
"Win32_System_SettingsManagementInfrastructure" = [ "Win32_System" ];
"Win32_System_SetupAndMigration" = [ "Win32_System" ];
"Win32_System_Shutdown" = [ "Win32_System" ];
"Win32_System_StationsAndDesktops" = [ "Win32_System" ];
"Win32_System_SubsystemForLinux" = [ "Win32_System" ];
"Win32_System_SystemInformation" = [ "Win32_System" ];
"Win32_System_SystemServices" = [ "Win32_System" ];
"Win32_System_TaskScheduler" = [ "Win32_System" ];
"Win32_System_Threading" = [ "Win32_System" ];
"Win32_System_Time" = [ "Win32_System" ];
"Win32_System_TpmBaseServices" = [ "Win32_System" ];
"Win32_System_UpdateAgent" = [ "Win32_System" ];
"Win32_System_UpdateAssessment" = [ "Win32_System" ];
"Win32_System_UserAccessLogging" = [ "Win32_System" ];
"Win32_System_VirtualDosMachines" = [ "Win32_System" ];
"Win32_System_WindowsProgramming" = [ "Win32_System" ];
"Win32_System_WindowsSync" = [ "Win32_System" ];
"Win32_System_Wmi" = [ "Win32_System" ];
"Win32_UI" = [ "Win32" ];
"Win32_UI_Accessibility" = [ "Win32_UI" ];
"Win32_UI_Animation" = [ "Win32_UI" ];
"Win32_UI_ColorSystem" = [ "Win32_UI" ];
"Win32_UI_Controls" = [ "Win32_UI" ];
"Win32_UI_Controls_Dialogs" = [ "Win32_UI_Controls" ];
"Win32_UI_Controls_RichEdit" = [ "Win32_UI_Controls" ];
"Win32_UI_HiDpi" = [ "Win32_UI" ];
"Win32_UI_Input" = [ "Win32_UI" ];
"Win32_UI_Input_Ime" = [ "Win32_UI_Input" ];
"Win32_UI_Input_Ink" = [ "Win32_UI_Input" ];
"Win32_UI_Input_KeyboardAndMouse" = [ "Win32_UI_Input" ];
"Win32_UI_Input_Pointer" = [ "Win32_UI_Input" ];
"Win32_UI_Input_Radial" = [ "Win32_UI_Input" ];
"Win32_UI_Input_Touch" = [ "Win32_UI_Input" ];
"Win32_UI_Input_XboxController" = [ "Win32_UI_Input" ];
"Win32_UI_InteractionContext" = [ "Win32_UI" ];
"Win32_UI_LegacyWindowsEnvironmentFeatures" = [ "Win32_UI" ];
"Win32_UI_Magnification" = [ "Win32_UI" ];
"Win32_UI_Notifications" = [ "Win32_UI" ];
"Win32_UI_Ribbon" = [ "Win32_UI" ];
"Win32_UI_Shell" = [ "Win32_UI" ];
"Win32_UI_Shell_Common" = [ "Win32_UI_Shell" ];
"Win32_UI_Shell_PropertiesSystem" = [ "Win32_UI_Shell" ];
"Win32_UI_TabletPC" = [ "Win32_UI" ];
"Win32_UI_TextServices" = [ "Win32_UI" ];
"Win32_UI_WindowsAndMessaging" = [ "Win32_UI" ];
"Win32_UI_Wpf" = [ "Win32_UI" ];
};
resolvedDefaultFeatures = [ "Win32" "Win32_Foundation" "Win32_Networking" "Win32_Networking_WinSock" "Win32_Security" "Win32_Security_Authorization" "Win32_Storage" "Win32_Storage_FileSystem" "Win32_System" "Win32_System_Console" "Win32_System_IO" "Win32_System_LibraryLoader" "Win32_System_Pipes" "Win32_System_SystemServices" "Win32_System_Threading" "Win32_System_WindowsProgramming" "default" ];
};
"windows-targets" = rec {
crateName = "windows-targets";
version = "0.42.2";
edition = "2018";
sha256 = "0wfhnib2fisxlx8c507dbmh97kgij4r6kcxdi0f9nk6l1k080lcf";
authors = [
"Microsoft"
];
dependencies = [
{
name = "windows_aarch64_gnullvm";
packageId = "windows_aarch64_gnullvm";
target = { target, features }: (stdenv.hostPlatform.config == "aarch64-pc-windows-gnullvm");
}
{
name = "windows_aarch64_msvc";
packageId = "windows_aarch64_msvc";
target = { target, features }: (stdenv.hostPlatform.config == "aarch64-pc-windows-msvc");
}
{
name = "windows_aarch64_msvc";
packageId = "windows_aarch64_msvc";
target = { target, features }: (stdenv.hostPlatform.config == "aarch64-uwp-windows-msvc");
}
{
name = "windows_i686_gnu";
packageId = "windows_i686_gnu";
target = { target, features }: (stdenv.hostPlatform.config == "i686-pc-windows-gnu");
}
{
name = "windows_i686_gnu";
packageId = "windows_i686_gnu";
target = { target, features }: (stdenv.hostPlatform.config == "i686-uwp-windows-gnu");
}
{
name = "windows_i686_msvc";
packageId = "windows_i686_msvc";
target = { target, features }: (stdenv.hostPlatform.config == "i686-pc-windows-msvc");
}
{
name = "windows_i686_msvc";
packageId = "windows_i686_msvc";
target = { target, features }: (stdenv.hostPlatform.config == "i686-uwp-windows-msvc");
}
{
name = "windows_x86_64_gnu";
packageId = "windows_x86_64_gnu";
target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-gnu");
}
{
name = "windows_x86_64_gnu";
packageId = "windows_x86_64_gnu";
target = { target, features }: (stdenv.hostPlatform.config == "x86_64-uwp-windows-gnu");
}
{
name = "windows_x86_64_gnullvm";
packageId = "windows_x86_64_gnullvm";
target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-gnullvm");
}
{
name = "windows_x86_64_msvc";
packageId = "windows_x86_64_msvc";
target = { target, features }: (stdenv.hostPlatform.config == "x86_64-pc-windows-msvc");
}
{
name = "windows_x86_64_msvc";
packageId = "windows_x86_64_msvc";
target = { target, features }: (stdenv.hostPlatform.config == "x86_64-uwp-windows-msvc");
}
];
};
"windows_aarch64_gnullvm" = rec {
crateName = "windows_aarch64_gnullvm";
version = "0.42.2";
edition = "2018";
sha256 = "1y4q0qmvl0lvp7syxvfykafvmwal5hrjb4fmv04bqs0bawc52yjr";
authors = [
"Microsoft"
];
};
"windows_aarch64_msvc" = rec {
crateName = "windows_aarch64_msvc";
version = "0.42.2";
edition = "2018";
sha256 = "0hsdikjl5sa1fva5qskpwlxzpc5q9l909fpl1w6yy1hglrj8i3p0";
authors = [
"Microsoft"
];
};
"windows_i686_gnu" = rec {
crateName = "windows_i686_gnu";
version = "0.42.2";
edition = "2018";
sha256 = "0kx866dfrby88lqs9v1vgmrkk1z6af9lhaghh5maj7d4imyr47f6";
authors = [
"Microsoft"
];
};
"windows_i686_msvc" = rec {
crateName = "windows_i686_msvc";
version = "0.42.2";
edition = "2018";
sha256 = "0q0h9m2aq1pygc199pa5jgc952qhcnf0zn688454i7v4xjv41n24";
authors = [
"Microsoft"
];
};
"windows_x86_64_gnu" = rec {
crateName = "windows_x86_64_gnu";
version = "0.42.2";
edition = "2018";
sha256 = "0dnbf2xnp3xrvy8v9mgs3var4zq9v9yh9kv79035rdgyp2w15scd";
authors = [
"Microsoft"
];
};
"windows_x86_64_gnullvm" = rec {
crateName = "windows_x86_64_gnullvm";
version = "0.42.2";
edition = "2018";
sha256 = "18wl9r8qbsl475j39zvawlidp1bsbinliwfymr43fibdld31pm16";
authors = [
"Microsoft"
];
};
"windows_x86_64_msvc" = rec {
crateName = "windows_x86_64_msvc";
version = "0.42.2";
edition = "2018";
sha256 = "1w5r0q0yzx827d10dpjza2ww0j8iajqhmb54s735hhaj66imvv4s";
authors = [
"Microsoft"
];
};
"winnow" = rec {
crateName = "winnow";
version = "0.3.6";
edition = "2021";
sha256 = "0rk947c3pawyvj4i24jnpg3mj7jhx1k93bll1p49cagr86s21l13";
dependencies = [
{
name = "memchr";
packageId = "memchr";
optional = true;
usesDefaultFeatures = false;
}
];
features = {
"debug" = [ "dep:anstyle" "dep:is-terminal" "dep:terminal_size" "dep:concolor" ];
"default" = [ "std" ];
"simd" = [ "dep:memchr" ];
"std" = [ "alloc" "memchr?/std" ];
"unstable-doc" = [ "alloc" "std" "simd" ];
};
resolvedDefaultFeatures = [ "alloc" "default" "std" ];
};
"zune-inflate" = rec {
crateName = "zune-inflate";
version = "0.2.53";
edition = "2021";
sha256 = "1y5aklf5sc1cmghidci8wzm0g0y3hq1v3abfhi5jwi66b7yhh2j4";
dependencies = [
{
name = "simd-adler32";
packageId = "simd-adler32";
optional = true;
}
];
features = {
"default" = [ "zlib" "gzip" "std" ];
"simd-adler32" = [ "dep:simd-adler32" ];
"zlib" = [ "simd-adler32" ];
};
resolvedDefaultFeatures = [ "simd-adler32" "zlib" ];
};
};
#
# crate2nix/default.nix (excerpt start)
#
/* Target (platform) data for conditional dependencies.
This corresponds roughly to what buildRustCrate is setting.
*/
defaultTarget = {
unix = true;
windows = false;
fuchsia = true;
test = false;
# This doesn't appear to be officially documented anywhere yet.
# See https://github.com/rust-lang-nursery/rust-forge/issues/101.
os =
if stdenv.hostPlatform.isDarwin
then "macos"
else stdenv.hostPlatform.parsed.kernel.name;
arch = stdenv.hostPlatform.parsed.cpu.name;
family = "unix";
env = "gnu";
endian =
if stdenv.hostPlatform.parsed.cpu.significantByte.name == "littleEndian"
then "little" else "big";
pointer_width = toString stdenv.hostPlatform.parsed.cpu.bits;
vendor = stdenv.hostPlatform.parsed.vendor.name;
debug_assertions = false;
};
/* Filters common temp files and build files. */
# TODO(pkolloch): Substitute with gitignore filter
sourceFilter = name: type:
let
baseName = builtins.baseNameOf (builtins.toString name);
in
! (
# Filter out git
baseName == ".gitignore"
|| (type == "directory" && baseName == ".git")
# Filter out build results
|| (
type == "directory" && (
baseName == "target"
|| baseName == "_site"
|| baseName == ".sass-cache"
|| baseName == ".jekyll-metadata"
|| baseName == "build-artifacts"
)
)
# Filter out nix-build result symlinks
|| (
type == "symlink" && lib.hasPrefix "result" baseName
)
# Filter out IDE config
|| (
type == "directory" && (
baseName == ".idea" || baseName == ".vscode"
)
) || lib.hasSuffix ".iml" baseName
# Filter out nix build files
|| baseName == "Cargo.nix"
# Filter out editor backup / swap files.
|| lib.hasSuffix "~" baseName
|| builtins.match "^\\.sw[a-z]$$" baseName != null
|| builtins.match "^\\..*\\.sw[a-z]$$" baseName != null
|| lib.hasSuffix ".tmp" baseName
|| lib.hasSuffix ".bak" baseName
|| baseName == "tests.nix"
);
/* Returns a crate which depends on successful test execution
of crate given as the second argument.
testCrateFlags: list of flags to pass to the test exectuable
testInputs: list of packages that should be available during test execution
*/
crateWithTest = { crate, testCrate, testCrateFlags, testInputs, testPreRun, testPostRun }:
assert builtins.typeOf testCrateFlags == "list";
assert builtins.typeOf testInputs == "list";
assert builtins.typeOf testPreRun == "string";
assert builtins.typeOf testPostRun == "string";
let
# override the `crate` so that it will build and execute tests instead of
# building the actual lib and bin targets We just have to pass `--test`
# to rustc and it will do the right thing. We execute the tests and copy
# their log and the test executables to $out for later inspection.
test =
let
drv = testCrate.override
(
_: {
buildTests = true;
}
);
# If the user hasn't set any pre/post commands, we don't want to
# insert empty lines. This means that any existing users of crate2nix
# don't get a spurious rebuild unless they set these explicitly.
testCommand = pkgs.lib.concatStringsSep "\n"
(pkgs.lib.filter (s: s != "") [
testPreRun
"$f $testCrateFlags 2>&1 | tee -a $out"
testPostRun
]);
in
pkgs.runCommand "run-tests-${testCrate.name}"
{
inherit testCrateFlags;
buildInputs = testInputs;
} ''
set -ex
export RUST_BACKTRACE=1
# recreate a file hierarchy as when running tests with cargo
# the source for test data
${pkgs.xorg.lndir}/bin/lndir ${crate.src}
# build outputs
testRoot=target/debug
mkdir -p $testRoot
# executables of the crate
# we copy to prevent std::env::current_exe() to resolve to a store location
for i in ${crate}/bin/*; do
cp "$i" "$testRoot"
done
chmod +w -R .
# test harness executables are suffixed with a hash, like cargo does
# this allows to prevent name collision with the main
# executables of the crate
hash=$(basename $out)
for file in ${drv}/tests/*; do
f=$testRoot/$(basename $file)-$hash
cp $file $f
${testCommand}
done
'';
in
pkgs.runCommand "${crate.name}-linked"
{
inherit (crate) outputs crateName;
passthru = (crate.passthru or { }) // {
inherit test;
};
} ''
echo tested by ${test}
${lib.concatMapStringsSep "\n" (output: "ln -s ${crate.${output}} ${"$"}${output}") crate.outputs}
'';
/* A restricted overridable version of builtRustCratesWithFeatures. */
buildRustCrateWithFeatures =
{ packageId
, features ? rootFeatures
, crateOverrides ? defaultCrateOverrides
, buildRustCrateForPkgsFunc ? null
, runTests ? false
, testCrateFlags ? [ ]
, testInputs ? [ ]
# Any command to run immediatelly before a test is executed.
, testPreRun ? ""
# Any command run immediatelly after a test is executed.
, testPostRun ? ""
}:
lib.makeOverridable
(
{ features
, crateOverrides
, runTests
, testCrateFlags
, testInputs
, testPreRun
, testPostRun
}:
let
buildRustCrateForPkgsFuncOverriden =
if buildRustCrateForPkgsFunc != null
then buildRustCrateForPkgsFunc
else
(
if crateOverrides == pkgs.defaultCrateOverrides
then buildRustCrateForPkgs
else
pkgs: (buildRustCrateForPkgs pkgs).override {
defaultCrateOverrides = crateOverrides;
}
);
builtRustCrates = builtRustCratesWithFeatures {
inherit packageId features;
buildRustCrateForPkgsFunc = buildRustCrateForPkgsFuncOverriden;
runTests = false;
};
builtTestRustCrates = builtRustCratesWithFeatures {
inherit packageId features;
buildRustCrateForPkgsFunc = buildRustCrateForPkgsFuncOverriden;
runTests = true;
};
drv = builtRustCrates.crates.${packageId};
testDrv = builtTestRustCrates.crates.${packageId};
derivation =
if runTests then
crateWithTest
{
crate = drv;
testCrate = testDrv;
inherit testCrateFlags testInputs testPreRun testPostRun;
}
else drv;
in
derivation
)
{ inherit features crateOverrides runTests testCrateFlags testInputs testPreRun testPostRun; };
/* Returns an attr set with packageId mapped to the result of buildRustCrateForPkgsFunc
for the corresponding crate.
*/
builtRustCratesWithFeatures =
{ packageId
, features
, crateConfigs ? crates
, buildRustCrateForPkgsFunc
, runTests
, target ? defaultTarget
} @ args:
assert (builtins.isAttrs crateConfigs);
assert (builtins.isString packageId);
assert (builtins.isList features);
assert (builtins.isAttrs target);
assert (builtins.isBool runTests);
let
rootPackageId = packageId;
mergedFeatures = mergePackageFeatures
(
args // {
inherit rootPackageId;
target = target // { test = runTests; };
}
);
# Memoize built packages so that reappearing packages are only built once.
builtByPackageIdByPkgs = mkBuiltByPackageIdByPkgs pkgs;
mkBuiltByPackageIdByPkgs = pkgs:
let
self = {
crates = lib.mapAttrs (packageId: value: buildByPackageIdForPkgsImpl self pkgs packageId) crateConfigs;
build = mkBuiltByPackageIdByPkgs pkgs.buildPackages;
};
in
self;
buildByPackageIdForPkgsImpl = self: pkgs: packageId:
let
features = mergedFeatures."${packageId}" or [ ];
crateConfig' = crateConfigs."${packageId}";
crateConfig =
builtins.removeAttrs crateConfig' [ "resolvedDefaultFeatures" "devDependencies" ];
devDependencies =
lib.optionals
(runTests && packageId == rootPackageId)
(crateConfig'.devDependencies or [ ]);
dependencies =
dependencyDerivations {
inherit features target;
buildByPackageId = depPackageId:
# proc_macro crates must be compiled for the build architecture
if crateConfigs.${depPackageId}.procMacro or false
then self.build.crates.${depPackageId}
else self.crates.${depPackageId};
dependencies =
(crateConfig.dependencies or [ ])
++ devDependencies;
};
buildDependencies =
dependencyDerivations {
inherit features target;
buildByPackageId = depPackageId:
self.build.crates.${depPackageId};
dependencies = crateConfig.buildDependencies or [ ];
};
filterEnabledDependenciesForThis = dependencies: filterEnabledDependencies {
inherit dependencies features target;
};
dependenciesWithRenames =
lib.filter (d: d ? "rename")
(
filterEnabledDependenciesForThis
(
(crateConfig.buildDependencies or [ ])
++ (crateConfig.dependencies or [ ])
++ devDependencies
)
);
# Crate renames have the form:
#
# {
# crate_name = [
# { version = "1.2.3"; rename = "crate_name01"; }
# ];
# # ...
# }
crateRenames =
let
grouped =
lib.groupBy
(dependency: dependency.name)
dependenciesWithRenames;
versionAndRename = dep:
let
package = crateConfigs."${dep.packageId}";
in
{ inherit (dep) rename; version = package.version; };
in
lib.mapAttrs (name: choices: builtins.map versionAndRename choices) grouped;
in
buildRustCrateForPkgsFunc pkgs
(
crateConfig // {
src = crateConfig.src or (
pkgs.fetchurl rec {
name = "${crateConfig.crateName}-${crateConfig.version}.tar.gz";
# https://www.pietroalbini.org/blog/downloading-crates-io/
# Not rate-limited, CDN URL.
url = "https://static.crates.io/crates/${crateConfig.crateName}/${crateConfig.crateName}-${crateConfig.version}.crate";
sha256 =
assert (lib.assertMsg (crateConfig ? sha256) "Missing sha256 for ${name}");
crateConfig.sha256;
}
);
extraRustcOpts = lib.lists.optional (targetFeatures != [ ]) "-C target-feature=${lib.concatMapStringsSep "," (x: "+${x}") targetFeatures}";
inherit features dependencies buildDependencies crateRenames release;
}
);
in
builtByPackageIdByPkgs;
/* Returns the actual derivations for the given dependencies. */
dependencyDerivations =
{ buildByPackageId
, features
, dependencies
, target
}:
assert (builtins.isList features);
assert (builtins.isList dependencies);
assert (builtins.isAttrs target);
let
enabledDependencies = filterEnabledDependencies {
inherit dependencies features target;
};
depDerivation = dependency: buildByPackageId dependency.packageId;
in
map depDerivation enabledDependencies;
/* Returns a sanitized version of val with all values substituted that cannot
be serialized as JSON.
*/
sanitizeForJson = val:
if builtins.isAttrs val
then lib.mapAttrs (n: v: sanitizeForJson v) val
else if builtins.isList val
then builtins.map sanitizeForJson val
else if builtins.isFunction val
then "function"
else val;
/* Returns various tools to debug a crate. */
debugCrate = { packageId, target ? defaultTarget }:
assert (builtins.isString packageId);
let
debug = rec {
# The built tree as passed to buildRustCrate.
buildTree = buildRustCrateWithFeatures {
buildRustCrateForPkgsFunc = _: lib.id;
inherit packageId;
};
sanitizedBuildTree = sanitizeForJson buildTree;
dependencyTree = sanitizeForJson
(
buildRustCrateWithFeatures {
buildRustCrateForPkgsFunc = _: crate: {
"01_crateName" = crate.crateName or false;
"02_features" = crate.features or [ ];
"03_dependencies" = crate.dependencies or [ ];
};
inherit packageId;
}
);
mergedPackageFeatures = mergePackageFeatures {
features = rootFeatures;
inherit packageId target;
};
diffedDefaultPackageFeatures = diffDefaultPackageFeatures {
inherit packageId target;
};
};
in
{ internal = debug; };
/* Returns differences between cargo default features and crate2nix default
features.
This is useful for verifying the feature resolution in crate2nix.
*/
diffDefaultPackageFeatures =
{ crateConfigs ? crates
, packageId
, target
}:
assert (builtins.isAttrs crateConfigs);
let
prefixValues = prefix: lib.mapAttrs (n: v: { "${prefix}" = v; });
mergedFeatures =
prefixValues
"crate2nix"
(mergePackageFeatures { inherit crateConfigs packageId target; features = [ "default" ]; });
configs = prefixValues "cargo" crateConfigs;
combined = lib.foldAttrs (a: b: a // b) { } [ mergedFeatures configs ];
onlyInCargo =
builtins.attrNames
(lib.filterAttrs (n: v: !(v ? "crate2nix") && (v ? "cargo")) combined);
onlyInCrate2Nix =
builtins.attrNames
(lib.filterAttrs (n: v: (v ? "crate2nix") && !(v ? "cargo")) combined);
differentFeatures = lib.filterAttrs
(
n: v:
(v ? "crate2nix")
&& (v ? "cargo")
&& (v.crate2nix.features or [ ]) != (v."cargo".resolved_default_features or [ ])
)
combined;
in
builtins.toJSON {
inherit onlyInCargo onlyInCrate2Nix differentFeatures;
};
/* Returns an attrset mapping packageId to the list of enabled features.
If multiple paths to a dependency enable different features, the
corresponding feature sets are merged. Features in rust are additive.
*/
mergePackageFeatures =
{ crateConfigs ? crates
, packageId
, rootPackageId ? packageId
, features ? rootFeatures
, dependencyPath ? [ crates.${packageId}.crateName ]
, featuresByPackageId ? { }
, target
# Adds devDependencies to the crate with rootPackageId.
, runTests ? false
, ...
} @ args:
assert (builtins.isAttrs crateConfigs);
assert (builtins.isString packageId);
assert (builtins.isString rootPackageId);
assert (builtins.isList features);
assert (builtins.isList dependencyPath);
assert (builtins.isAttrs featuresByPackageId);
assert (builtins.isAttrs target);
assert (builtins.isBool runTests);
let
crateConfig = crateConfigs."${packageId}" or (builtins.throw "Package not found: ${packageId}");
expandedFeatures = expandFeatures (crateConfig.features or { }) features;
enabledFeatures = enableFeatures (crateConfig.dependencies or [ ]) expandedFeatures;
depWithResolvedFeatures = dependency:
let
packageId = dependency.packageId;
features = dependencyFeatures enabledFeatures dependency;
in
{ inherit packageId features; };
resolveDependencies = cache: path: dependencies:
assert (builtins.isAttrs cache);
assert (builtins.isList dependencies);
let
enabledDependencies = filterEnabledDependencies {
inherit dependencies target;
features = enabledFeatures;
};
directDependencies = map depWithResolvedFeatures enabledDependencies;
foldOverCache = op: lib.foldl op cache directDependencies;
in
foldOverCache
(
cache: { packageId, features }:
let
cacheFeatures = cache.${packageId} or [ ];
combinedFeatures = sortedUnique (cacheFeatures ++ features);
in
if cache ? ${packageId} && cache.${packageId} == combinedFeatures
then cache
else
mergePackageFeatures {
features = combinedFeatures;
featuresByPackageId = cache;
inherit crateConfigs packageId target runTests rootPackageId;
}
);
cacheWithSelf =
let
cacheFeatures = featuresByPackageId.${packageId} or [ ];
combinedFeatures = sortedUnique (cacheFeatures ++ enabledFeatures);
in
featuresByPackageId // {
"${packageId}" = combinedFeatures;
};
cacheWithDependencies =
resolveDependencies cacheWithSelf "dep"
(
crateConfig.dependencies or [ ]
++ lib.optionals
(runTests && packageId == rootPackageId)
(crateConfig.devDependencies or [ ])
);
cacheWithAll =
resolveDependencies
cacheWithDependencies "build"
(crateConfig.buildDependencies or [ ]);
in
cacheWithAll;
/* Returns the enabled dependencies given the enabled features. */
filterEnabledDependencies = { dependencies, features, target }:
assert (builtins.isList dependencies);
assert (builtins.isList features);
assert (builtins.isAttrs target);
lib.filter
(
dep:
let
targetFunc = dep.target or (features: true);
in
targetFunc { inherit features target; }
&& (
!(dep.optional or false)
|| builtins.any (doesFeatureEnableDependency dep) features
)
)
dependencies;
/* Returns whether the given feature should enable the given dependency. */
doesFeatureEnableDependency = { name, rename ? null, ... }: feature:
let
prefix = "${name}/";
len = builtins.stringLength prefix;
startsWithPrefix = builtins.substring 0 len feature == prefix;
in
(rename == null && feature == name)
|| (rename != null && rename == feature)
|| startsWithPrefix;
/* Returns the expanded features for the given inputFeatures by applying the
rules in featureMap.
featureMap is an attribute set which maps feature names to lists of further
feature names to enable in case this feature is selected.
*/
expandFeatures = featureMap: inputFeatures:
assert (builtins.isAttrs featureMap);
assert (builtins.isList inputFeatures);
let
expandFeature = feature:
assert (builtins.isString feature);
[ feature ] ++ (expandFeatures featureMap (featureMap."${feature}" or [ ]));
outFeatures = lib.concatMap expandFeature inputFeatures;
in
sortedUnique outFeatures;
/* This function adds optional dependencies as features if they are enabled
indirectly by dependency features. This function mimics Cargo's behavior
described in a note at:
https://doc.rust-lang.org/nightly/cargo/reference/features.html#dependency-features
*/
enableFeatures = dependencies: features:
assert (builtins.isList features);
assert (builtins.isList dependencies);
let
additionalFeatures = lib.concatMap
(
dependency:
assert (builtins.isAttrs dependency);
let
enabled = builtins.any (doesFeatureEnableDependency dependency) features;
in
if (dependency.optional or false) && enabled then [ dependency.name ] else [ ]
)
dependencies;
in
sortedUnique (features ++ additionalFeatures);
/*
Returns the actual features for the given dependency.
features: The features of the crate that refers this dependency.
*/
dependencyFeatures = features: dependency:
assert (builtins.isList features);
assert (builtins.isAttrs dependency);
let
defaultOrNil =
if dependency.usesDefaultFeatures or true
then [ "default" ]
else [ ];
explicitFeatures = dependency.features or [ ];
additionalDependencyFeatures =
let
dependencyPrefix = (dependency.rename or dependency.name) + "/";
dependencyFeatures =
builtins.filter (f: lib.hasPrefix dependencyPrefix f) features;
in
builtins.map (lib.removePrefix dependencyPrefix) dependencyFeatures;
in
defaultOrNil ++ explicitFeatures ++ additionalDependencyFeatures;
/* Sorts and removes duplicates from a list of strings. */
sortedUnique = features:
assert (builtins.isList features);
assert (builtins.all builtins.isString features);
let
outFeaturesSet = lib.foldl (set: feature: set // { "${feature}" = 1; }) { } features;
outFeaturesUnique = builtins.attrNames outFeaturesSet;
in
builtins.sort (a: b: a < b) outFeaturesUnique;
deprecationWarning = message: value:
if strictDeprecation
then builtins.throw "strictDeprecation enabled, aborting: ${message}"
else builtins.trace message value;
#
# crate2nix/default.nix (excerpt end)
#
};
}