summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore2
-rw-r--r--Cargo.lock118
-rw-r--r--Cargo.nix153
-rw-r--r--Cargo.toml6
-rw-r--r--crates-io.nix1115
-rw-r--r--default.nix5
-rw-r--r--flake.lock25
-rw-r--r--flake.nix28
-rw-r--r--src/main.rs196
9 files changed, 314 insertions, 1334 deletions
diff --git a/.gitignore b/.gitignore
index 45f6009..68d3d90 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,3 @@
/target/
**/*.rs.bk
result
-Cargo.lock
-bullet_hell.nix
diff --git a/Cargo.lock b/Cargo.lock
new file mode 100644
index 0000000..3f203e5
--- /dev/null
+++ b/Cargo.lock
@@ -0,0 +1,118 @@
+# This file is automatically @generated by Cargo.
+# It is not intended for manual editing.
+version = 3
+
+[[package]]
+name = "bitflags"
+version = "1.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
+
+[[package]]
+name = "cfg-if"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
+
+[[package]]
+name = "getrandom"
+version = "0.2.10"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "be4136b2a15dd319360be1c07d9933517ccf0be8f16bf62a3bee4f0d618df427"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "wasi",
+]
+
+[[package]]
+name = "lazy_static"
+version = "1.4.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
+
+[[package]]
+name = "libc"
+version = "0.2.147"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3"
+
+[[package]]
+name = "ppv-lite86"
+version = "0.2.17"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
+
+[[package]]
+name = "rand"
+version = "0.8.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
+dependencies = [
+ "libc",
+ "rand_chacha",
+ "rand_core",
+]
+
+[[package]]
+name = "rand_chacha"
+version = "0.3.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
+dependencies = [
+ "ppv-lite86",
+ "rand_core",
+]
+
+[[package]]
+name = "rand_core"
+version = "0.6.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
+dependencies = [
+ "getrandom",
+]
+
+[[package]]
+name = "sdl2"
+version = "0.35.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f7959277b623f1fb9e04aea73686c3ca52f01b2145f8ea16f4ff30d8b7623b1a"
+dependencies = [
+ "bitflags",
+ "lazy_static",
+ "libc",
+ "sdl2-sys",
+]
+
+[[package]]
+name = "sdl2-sys"
+version = "0.35.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e3586be2cf6c0a8099a79a12b4084357aa9b3e0b0d7980e3b67aaf7a9d55f9f0"
+dependencies = [
+ "cfg-if",
+ "libc",
+ "version-compare",
+]
+
+[[package]]
+name = "stallman-shooter"
+version = "1.0.0"
+dependencies = [
+ "rand",
+ "sdl2",
+ "sdl2-sys",
+]
+
+[[package]]
+name = "version-compare"
+version = "0.1.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "579a42fc0b8e0c63b76519a339be31bed574929511fa53c1a3acae26eb258f29"
+
+[[package]]
+name = "wasi"
+version = "0.11.0+wasi-snapshot-preview1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
diff --git a/Cargo.nix b/Cargo.nix
deleted file mode 100644
index df855cb..0000000
--- a/Cargo.nix
+++ /dev/null
@@ -1,153 +0,0 @@
-# Generated by carnix 0.9.8: carnix generate-nix --standalone --src ./.
-with import <nixpkgs> {};
-with buildRustCrateHelpers;
-let inherit (lib.lists) fold;
- inherit (lib.attrsets) recursiveUpdate;
- cratesIO = (callPackage ./crates-io.nix { });
-in
-rec {
- crates = cratesIO // rec {
-# stallman-shooter-1.0.0
-
- crates.stallman_shooter."1.0.0" = deps: { features?(features_.stallman_shooter."1.0.0" deps {}) }: buildRustCrate {
- crateName = "stallman-shooter";
- version = "1.0.0";
- authors = [ "Raymond Hogenson <rhogenson@posteo.net>" ];
- src = exclude [ ".git" "target" ] ./.;
- dependencies = mapFeatures features ([
- (cratesIO.crates."rand"."${deps."stallman_shooter"."1.0.0"."rand"}" deps)
- (cratesIO.crates."sdl2"."${deps."stallman_shooter"."1.0.0"."sdl2"}" deps)
- (cratesIO.crates."sdl2_sys"."${deps."stallman_shooter"."1.0.0"."sdl2_sys"}" deps)
- ]);
- };
- features_.stallman_shooter."1.0.0" = deps: f: updateFeatures f (rec {
- rand."${deps.stallman_shooter."1.0.0".rand}".default = true;
- sdl2 = fold recursiveUpdate {} [
- { "${deps.stallman_shooter."1.0.0".sdl2}"."image" = true; }
- { "${deps.stallman_shooter."1.0.0".sdl2}".default = (f.sdl2."${deps.stallman_shooter."1.0.0".sdl2}".default or false); }
- ];
- sdl2_sys = fold recursiveUpdate {} [
- { "${deps.stallman_shooter."1.0.0".sdl2_sys}"."image" = true; }
- { "${deps.stallman_shooter."1.0.0".sdl2_sys}".default = (f.sdl2_sys."${deps.stallman_shooter."1.0.0".sdl2_sys}".default or false); }
- ];
- stallman_shooter."1.0.0".default = (f.stallman_shooter."1.0.0".default or true);
- }) [
- (cratesIO.features_.rand."${deps."stallman_shooter"."1.0.0"."rand"}" deps)
- (cratesIO.features_.sdl2."${deps."stallman_shooter"."1.0.0"."sdl2"}" deps)
- (cratesIO.features_.sdl2_sys."${deps."stallman_shooter"."1.0.0"."sdl2_sys"}" deps)
- ];
-
-
-# end
-
- };
-
- stallman_shooter = crates.crates.stallman_shooter."1.0.0" deps;
- __all = [ (stallman_shooter {}) ];
- deps.autocfg."0.1.5" = {};
- deps.bitflags."1.1.0" = {};
- deps.cfg_if."0.1.9" = {};
- deps.cloudabi."0.0.3" = {
- bitflags = "1.1.0";
- };
- deps.fuchsia_cprng."0.1.1" = {};
- deps.lazy_static."1.3.0" = {};
- deps.libc."0.2.60" = {};
- deps.num."0.1.42" = {
- num_integer = "0.1.41";
- num_iter = "0.1.39";
- num_traits = "0.2.8";
- };
- deps.num_integer."0.1.41" = {
- num_traits = "0.2.8";
- autocfg = "0.1.5";
- };
- deps.num_iter."0.1.39" = {
- num_integer = "0.1.41";
- num_traits = "0.2.8";
- autocfg = "0.1.5";
- };
- deps.num_traits."0.2.8" = {
- autocfg = "0.1.5";
- };
- deps.rand."0.5.6" = {
- rand_core = "0.3.1";
- cloudabi = "0.0.3";
- fuchsia_cprng = "0.1.1";
- libc = "0.2.60";
- winapi = "0.3.7";
- };
- deps.rand."0.6.5" = {
- rand_chacha = "0.1.1";
- rand_core = "0.4.0";
- rand_hc = "0.1.0";
- rand_isaac = "0.1.1";
- rand_jitter = "0.1.4";
- rand_os = "0.1.3";
- rand_pcg = "0.1.2";
- rand_xorshift = "0.1.1";
- autocfg = "0.1.5";
- libc = "0.2.60";
- winapi = "0.3.7";
- };
- deps.rand_chacha."0.1.1" = {
- rand_core = "0.3.1";
- autocfg = "0.1.5";
- };
- deps.rand_core."0.3.1" = {
- rand_core = "0.4.0";
- };
- deps.rand_core."0.4.0" = {};
- deps.rand_hc."0.1.0" = {
- rand_core = "0.3.1";
- };
- deps.rand_isaac."0.1.1" = {
- rand_core = "0.3.1";
- };
- deps.rand_jitter."0.1.4" = {
- rand_core = "0.4.0";
- libc = "0.2.60";
- winapi = "0.3.7";
- };
- deps.rand_os."0.1.3" = {
- rand_core = "0.4.0";
- rdrand = "0.4.0";
- cloudabi = "0.0.3";
- fuchsia_cprng = "0.1.1";
- libc = "0.2.60";
- winapi = "0.3.7";
- };
- deps.rand_pcg."0.1.2" = {
- rand_core = "0.4.0";
- autocfg = "0.1.5";
- };
- deps.rand_xorshift."0.1.1" = {
- rand_core = "0.3.1";
- };
- deps.rdrand."0.4.0" = {
- rand_core = "0.3.1";
- };
- deps.sdl2."0.32.2" = {
- bitflags = "1.1.0";
- lazy_static = "1.3.0";
- libc = "0.2.60";
- num = "0.1.42";
- rand = "0.6.5";
- sdl2_sys = "0.32.6";
- };
- deps.sdl2_sys."0.32.6" = {
- libc = "0.2.60";
- cfg_if = "0.1.9";
- };
- deps.stallman_shooter."1.0.0" = {
- rand = "0.5.6";
- sdl2 = "0.32.2";
- sdl2_sys = "0.32.6";
- };
- deps.winapi."0.3.7" = {
- winapi_i686_pc_windows_gnu = "0.4.0";
- winapi_x86_64_pc_windows_gnu = "0.4.0";
- };
- deps.winapi_i686_pc_windows_gnu."0.4.0" = {};
- deps.winapi_x86_64_pc_windows_gnu."0.4.0" = {};
-}
diff --git a/Cargo.toml b/Cargo.toml
index 674b898..f452478 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -4,14 +4,14 @@ version = "1.0.0"
authors = ["Raymond Hogenson <rhogenson@posteo.net>"]
[dependencies]
-rand = "0.5.5"
+rand = "0.8.5"
[dependencies.sdl2]
-version = "0.32.2"
+version = "0.35.2"
default-features = false
features = ["image"]
[dependencies.sdl2-sys]
-version = "0.32.6"
+version = "0.35.2"
default-features = false
features = ["image"]
diff --git a/crates-io.nix b/crates-io.nix
deleted file mode 100644
index e6605fc..0000000
--- a/crates-io.nix
+++ /dev/null
@@ -1,1115 +0,0 @@
-{ lib, buildRustCrate, buildRustCrateHelpers }:
-with buildRustCrateHelpers;
-let inherit (lib.lists) fold;
- inherit (lib.attrsets) recursiveUpdate;
-in
-rec {
-
-# autocfg-0.1.5
-
- crates.autocfg."0.1.5" = deps: { features?(features_.autocfg."0.1.5" deps {}) }: buildRustCrate {
- crateName = "autocfg";
- version = "0.1.5";
- authors = [ "Josh Stone <cuviper@gmail.com>" ];
- sha256 = "1f3bj604fyr4xh08r357hs3hpdzapiqgccvmj1jpi953ffqrp09a";
- };
- features_.autocfg."0.1.5" = deps: f: updateFeatures f (rec {
- autocfg."0.1.5".default = (f.autocfg."0.1.5".default or true);
- }) [];
-
-
-# end
-# bitflags-1.1.0
-
- crates.bitflags."1.1.0" = deps: { features?(features_.bitflags."1.1.0" deps {}) }: buildRustCrate {
- crateName = "bitflags";
- version = "1.1.0";
- authors = [ "The Rust Project Developers" ];
- sha256 = "1iwa4jrqcf4lnbwl562a3lx3r0jkh1j88b219bsqvbm4sni67dyv";
- build = "build.rs";
- features = mkFeatures (features."bitflags"."1.1.0" or {});
- };
- features_.bitflags."1.1.0" = deps: f: updateFeatures f (rec {
- bitflags."1.1.0".default = (f.bitflags."1.1.0".default or true);
- }) [];
-
-
-# end
-# cfg-if-0.1.9
-
- crates.cfg_if."0.1.9" = deps: { features?(features_.cfg_if."0.1.9" deps {}) }: buildRustCrate {
- crateName = "cfg-if";
- version = "0.1.9";
- authors = [ "Alex Crichton <alex@alexcrichton.com>" ];
- sha256 = "13g9p2mc5b2b5wn716fwvilzib376ycpkgk868yxfp16jzix57p7";
- };
- features_.cfg_if."0.1.9" = deps: f: updateFeatures f (rec {
- cfg_if."0.1.9".default = (f.cfg_if."0.1.9".default or true);
- }) [];
-
-
-# end
-# cloudabi-0.0.3
-
- crates.cloudabi."0.0.3" = deps: { features?(features_.cloudabi."0.0.3" deps {}) }: buildRustCrate {
- crateName = "cloudabi";
- version = "0.0.3";
- authors = [ "Nuxi (https://nuxi.nl/) and contributors" ];
- sha256 = "1z9lby5sr6vslfd14d6igk03s7awf91mxpsfmsp3prxbxlk0x7h5";
- libPath = "cloudabi.rs";
- dependencies = mapFeatures features ([
- ]
- ++ (if features.cloudabi."0.0.3".bitflags or false then [ (crates.bitflags."${deps."cloudabi"."0.0.3".bitflags}" deps) ] else []));
- features = mkFeatures (features."cloudabi"."0.0.3" or {});
- };
- features_.cloudabi."0.0.3" = deps: f: updateFeatures f (rec {
- bitflags."${deps.cloudabi."0.0.3".bitflags}".default = true;
- cloudabi = fold recursiveUpdate {} [
- { "0.0.3".bitflags =
- (f.cloudabi."0.0.3".bitflags or false) ||
- (f.cloudabi."0.0.3".default or false) ||
- (cloudabi."0.0.3"."default" or false); }
- { "0.0.3".default = (f.cloudabi."0.0.3".default or true); }
- ];
- }) [
- (features_.bitflags."${deps."cloudabi"."0.0.3"."bitflags"}" deps)
- ];
-
-
-# end
-# fuchsia-cprng-0.1.1
-
- crates.fuchsia_cprng."0.1.1" = deps: { features?(features_.fuchsia_cprng."0.1.1" deps {}) }: buildRustCrate {
- crateName = "fuchsia-cprng";
- version = "0.1.1";
- authors = [ "Erick Tryzelaar <etryzelaar@google.com>" ];
- edition = "2018";
- sha256 = "07apwv9dj716yjlcj29p94vkqn5zmfh7hlrqvrjx3wzshphc95h9";
- };
- features_.fuchsia_cprng."0.1.1" = deps: f: updateFeatures f (rec {
- fuchsia_cprng."0.1.1".default = (f.fuchsia_cprng."0.1.1".default or true);
- }) [];
-
-
-# end
-# lazy_static-1.3.0
-
- crates.lazy_static."1.3.0" = deps: { features?(features_.lazy_static."1.3.0" deps {}) }: buildRustCrate {
- crateName = "lazy_static";
- version = "1.3.0";
- authors = [ "Marvin Löbel <loebel.marvin@gmail.com>" ];
- sha256 = "1vv47va18ydk7dx5paz88g3jy1d3lwbx6qpxkbj8gyfv770i4b1y";
- dependencies = mapFeatures features ([
-]);
- features = mkFeatures (features."lazy_static"."1.3.0" or {});
- };
- features_.lazy_static."1.3.0" = deps: f: updateFeatures f (rec {
- lazy_static = fold recursiveUpdate {} [
- { "1.3.0".default = (f.lazy_static."1.3.0".default or true); }
- { "1.3.0".spin =
- (f.lazy_static."1.3.0".spin or false) ||
- (f.lazy_static."1.3.0".spin_no_std or false) ||
- (lazy_static."1.3.0"."spin_no_std" or false); }
- ];
- }) [];
-
-
-# end
-# libc-0.2.60
-
- crates.libc."0.2.60" = deps: { features?(features_.libc."0.2.60" deps {}) }: buildRustCrate {
- crateName = "libc";
- version = "0.2.60";
- authors = [ "The Rust Project Developers" ];
- sha256 = "1zklw10b6lwz6ldamxvdxr8gsxbqhphxhn8n5n5dndl7avafx49b";
- build = "build.rs";
- dependencies = mapFeatures features ([
-]);
- features = mkFeatures (features."libc"."0.2.60" or {});
- };
- features_.libc."0.2.60" = deps: f: updateFeatures f (rec {
- libc = fold recursiveUpdate {} [
- { "0.2.60".align =
- (f.libc."0.2.60".align or false) ||
- (f.libc."0.2.60".rustc-dep-of-std or false) ||
- (libc."0.2.60"."rustc-dep-of-std" or false); }
- { "0.2.60".default = (f.libc."0.2.60".default or true); }
- { "0.2.60".rustc-std-workspace-core =
- (f.libc."0.2.60".rustc-std-workspace-core or false) ||
- (f.libc."0.2.60".rustc-dep-of-std or false) ||
- (libc."0.2.60"."rustc-dep-of-std" or false); }
- { "0.2.60".std =
- (f.libc."0.2.60".std or false) ||
- (f.libc."0.2.60".default or false) ||
- (libc."0.2.60"."default" or false) ||
- (f.libc."0.2.60".use_std or false) ||
- (libc."0.2.60"."use_std" or false); }
- ];
- }) [];
-
-
-# end
-# num-0.1.42
-
- crates.num."0.1.42" = deps: { features?(features_.num."0.1.42" deps {}) }: buildRustCrate {
- crateName = "num";
- version = "0.1.42";
- authors = [ "The Rust Project Developers" ];
- sha256 = "1632gczzrmmxdsj3jignwcr793jq8vxw3qkdzpdvbip3vaf1ljgq";
- dependencies = mapFeatures features ([
- (crates."num_integer"."${deps."num"."0.1.42"."num_integer"}" deps)
- (crates."num_iter"."${deps."num"."0.1.42"."num_iter"}" deps)
- (crates."num_traits"."${deps."num"."0.1.42"."num_traits"}" deps)
- ]);
- features = mkFeatures (features."num"."0.1.42" or {});
- };
- features_.num."0.1.42" = deps: f: updateFeatures f (rec {
- num = fold recursiveUpdate {} [
- { "0.1.42".bigint =
- (f.num."0.1.42".bigint or false) ||
- (f.num."0.1.42".default or false) ||
- (num."0.1.42"."default" or false); }
- { "0.1.42".complex =
- (f.num."0.1.42".complex or false) ||
- (f.num."0.1.42".default or false) ||
- (num."0.1.42"."default" or false); }
- { "0.1.42".default = (f.num."0.1.42".default or true); }
- { "0.1.42".num-bigint =
- (f.num."0.1.42".num-bigint or false) ||
- (f.num."0.1.42".bigint or false) ||
- (num."0.1.42"."bigint" or false); }
- { "0.1.42".num-complex =
- (f.num."0.1.42".num-complex or false) ||
- (f.num."0.1.42".complex or false) ||
- (num."0.1.42"."complex" or false); }
- { "0.1.42".num-rational =
- (f.num."0.1.42".num-rational or false) ||
- (f.num."0.1.42".rational or false) ||
- (num."0.1.42"."rational" or false); }
- { "0.1.42".rational =
- (f.num."0.1.42".rational or false) ||
- (f.num."0.1.42".default or false) ||
- (num."0.1.42"."default" or false); }
- { "0.1.42".rustc-serialize =
- (f.num."0.1.42".rustc-serialize or false) ||
- (f.num."0.1.42".default or false) ||
- (num."0.1.42"."default" or false); }
- ];
- num_integer."${deps.num."0.1.42".num_integer}".default = true;
- num_iter."${deps.num."0.1.42".num_iter}".default = true;
- num_traits."${deps.num."0.1.42".num_traits}".default = true;
- }) [
- (features_.num_integer."${deps."num"."0.1.42"."num_integer"}" deps)
- (features_.num_iter."${deps."num"."0.1.42"."num_iter"}" deps)
- (features_.num_traits."${deps."num"."0.1.42"."num_traits"}" deps)
- ];
-
-
-# end
-# num-integer-0.1.41
-
- crates.num_integer."0.1.41" = deps: { features?(features_.num_integer."0.1.41" deps {}) }: buildRustCrate {
- crateName = "num-integer";
- version = "0.1.41";
- authors = [ "The Rust Project Developers" ];
- sha256 = "1y45nh9xlp2dra9svb1wfsy65fysm3k1w4m8jynywccq645yixid";
- build = "build.rs";
- dependencies = mapFeatures features ([
- (crates."num_traits"."${deps."num_integer"."0.1.41"."num_traits"}" deps)
- ]);
-
- buildDependencies = mapFeatures features ([
- (crates."autocfg"."${deps."num_integer"."0.1.41"."autocfg"}" deps)
- ]);
- features = mkFeatures (features."num_integer"."0.1.41" or {});
- };
- features_.num_integer."0.1.41" = deps: f: updateFeatures f (rec {
- autocfg."${deps.num_integer."0.1.41".autocfg}".default = true;
- num_integer = fold recursiveUpdate {} [
- { "0.1.41".default = (f.num_integer."0.1.41".default or true); }
- { "0.1.41".std =
- (f.num_integer."0.1.41".std or false) ||
- (f.num_integer."0.1.41".default or false) ||
- (num_integer."0.1.41"."default" or false); }
- ];
- num_traits = fold recursiveUpdate {} [
- { "${deps.num_integer."0.1.41".num_traits}"."i128" =
- (f.num_traits."${deps.num_integer."0.1.41".num_traits}"."i128" or false) ||
- (num_integer."0.1.41"."i128" or false) ||
- (f."num_integer"."0.1.41"."i128" or false); }
- { "${deps.num_integer."0.1.41".num_traits}"."std" =
- (f.num_traits."${deps.num_integer."0.1.41".num_traits}"."std" or false) ||
- (num_integer."0.1.41"."std" or false) ||
- (f."num_integer"."0.1.41"."std" or false); }
- { "${deps.num_integer."0.1.41".num_traits}".default = (f.num_traits."${deps.num_integer."0.1.41".num_traits}".default or false); }
- ];
- }) [
- (features_.num_traits."${deps."num_integer"."0.1.41"."num_traits"}" deps)
- (features_.autocfg."${deps."num_integer"."0.1.41"."autocfg"}" deps)
- ];
-
-
-# end
-# num-iter-0.1.39
-
- crates.num_iter."0.1.39" = deps: { features?(features_.num_iter."0.1.39" deps {}) }: buildRustCrate {
- crateName = "num-iter";
- version = "0.1.39";
- authors = [ "The Rust Project Developers" ];
- sha256 = "003j2hysdrkia435vxn38s1qs8cllrgk04l4aapb8hd0wci109mj";
- build = "build.rs";
- dependencies = mapFeatures features ([
- (crates."num_integer"."${deps."num_iter"."0.1.39"."num_integer"}" deps)
- (crates."num_traits"."${deps."num_iter"."0.1.39"."num_traits"}" deps)
- ]);
-
- buildDependencies = mapFeatures features ([
- (crates."autocfg"."${deps."num_iter"."0.1.39"."autocfg"}" deps)
- ]);
- features = mkFeatures (features."num_iter"."0.1.39" or {});
- };
- features_.num_iter."0.1.39" = deps: f: updateFeatures f (rec {
- autocfg."${deps.num_iter."0.1.39".autocfg}".default = true;
- num_integer = fold recursiveUpdate {} [
- { "${deps.num_iter."0.1.39".num_integer}"."i128" =
- (f.num_integer."${deps.num_iter."0.1.39".num_integer}"."i128" or false) ||
- (num_iter."0.1.39"."i128" or false) ||
- (f."num_iter"."0.1.39"."i128" or false); }
- { "${deps.num_iter."0.1.39".num_integer}"."std" =
- (f.num_integer."${deps.num_iter."0.1.39".num_integer}"."std" or false) ||
- (num_iter."0.1.39"."std" or false) ||
- (f."num_iter"."0.1.39"."std" or false); }
- { "${deps.num_iter."0.1.39".num_integer}".default = (f.num_integer."${deps.num_iter."0.1.39".num_integer}".default or false); }
- ];
- num_iter = fold recursiveUpdate {} [
- { "0.1.39".default = (f.num_iter."0.1.39".default or true); }
- { "0.1.39".std =
- (f.num_iter."0.1.39".std or false) ||
- (f.num_iter."0.1.39".default or false) ||
- (num_iter."0.1.39"."default" or false); }
- ];
- num_traits = fold recursiveUpdate {} [
- { "${deps.num_iter."0.1.39".num_traits}"."i128" =
- (f.num_traits."${deps.num_iter."0.1.39".num_traits}"."i128" or false) ||
- (num_iter."0.1.39"."i128" or false) ||
- (f."num_iter"."0.1.39"."i128" or false); }
- { "${deps.num_iter."0.1.39".num_traits}"."std" =
- (f.num_traits."${deps.num_iter."0.1.39".num_traits}"."std" or false) ||
- (num_iter."0.1.39"."std" or false) ||
- (f."num_iter"."0.1.39"."std" or false); }
- { "${deps.num_iter."0.1.39".num_traits}".default = (f.num_traits."${deps.num_iter."0.1.39".num_traits}".default or false); }
- ];
- }) [
- (features_.num_integer."${deps."num_iter"."0.1.39"."num_integer"}" deps)
- (features_.num_traits."${deps."num_iter"."0.1.39"."num_traits"}" deps)
- (features_.autocfg."${deps."num_iter"."0.1.39"."autocfg"}" deps)
- ];
-
-
-# end
-# num-traits-0.2.8
-
- crates.num_traits."0.2.8" = deps: { features?(features_.num_traits."0.2.8" deps {}) }: buildRustCrate {
- crateName = "num-traits";
- version = "0.2.8";
- authors = [ "The Rust Project Developers" ];
- sha256 = "1mnlmy35n734n9xlq0qkfbgzz33x09a1s4rfj30p1976p09b862v";
- build = "build.rs";
-
- buildDependencies = mapFeatures features ([
- (crates."autocfg"."${deps."num_traits"."0.2.8"."autocfg"}" deps)
- ]);
- features = mkFeatures (features."num_traits"."0.2.8" or {});
- };
- features_.num_traits."0.2.8" = deps: f: updateFeatures f (rec {
- autocfg."${deps.num_traits."0.2.8".autocfg}".default = true;
- num_traits = fold recursiveUpdate {} [
- { "0.2.8".default = (f.num_traits."0.2.8".default or true); }
- { "0.2.8".std =
- (f.num_traits."0.2.8".std or false) ||
- (f.num_traits."0.2.8".default or false) ||
- (num_traits."0.2.8"."default" or false); }
- ];
- }) [
- (features_.autocfg."${deps."num_traits"."0.2.8"."autocfg"}" deps)
- ];
-
-
-# end
-# rand-0.5.6
-
- crates.rand."0.5.6" = deps: { features?(features_.rand."0.5.6" deps {}) }: buildRustCrate {
- crateName = "rand";
- version = "0.5.6";
- authors = [ "The Rust Project Developers" ];
- sha256 = "04f1gydiia347cx24n5cw4v21fhh9yga7dw739z4jsxzls2ss8w8";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand"."0.5.6"."rand_core"}" deps)
- ])
- ++ (if kernel == "cloudabi" then mapFeatures features ([
- ]
- ++ (if features.rand."0.5.6".cloudabi or false then [ (crates.cloudabi."${deps."rand"."0.5.6".cloudabi}" deps) ] else [])) else [])
- ++ (if kernel == "fuchsia" then mapFeatures features ([
- ]
- ++ (if features.rand."0.5.6".fuchsia-cprng or false then [ (crates.fuchsia_cprng."${deps."rand"."0.5.6".fuchsia_cprng}" deps) ] else [])) else [])
- ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
- ]
- ++ (if features.rand."0.5.6".libc or false then [ (crates.libc."${deps."rand"."0.5.6".libc}" deps) ] else [])) else [])
- ++ (if kernel == "windows" then mapFeatures features ([
- ]
- ++ (if features.rand."0.5.6".winapi or false then [ (crates.winapi."${deps."rand"."0.5.6".winapi}" deps) ] else [])) else [])
- ++ (if kernel == "wasm32-unknown-unknown" then mapFeatures features ([
-]) else []);
- features = mkFeatures (features."rand"."0.5.6" or {});
- };
- features_.rand."0.5.6" = deps: f: updateFeatures f (rec {
- cloudabi."${deps.rand."0.5.6".cloudabi}".default = true;
- fuchsia_cprng."${deps.rand."0.5.6".fuchsia_cprng}".default = true;
- libc."${deps.rand."0.5.6".libc}".default = true;
- rand = fold recursiveUpdate {} [
- { "0.5.6".alloc =
- (f.rand."0.5.6".alloc or false) ||
- (f.rand."0.5.6".std or false) ||
- (rand."0.5.6"."std" or false); }
- { "0.5.6".cloudabi =
- (f.rand."0.5.6".cloudabi or false) ||
- (f.rand."0.5.6".std or false) ||
- (rand."0.5.6"."std" or false); }
- { "0.5.6".default = (f.rand."0.5.6".default or true); }
- { "0.5.6".fuchsia-cprng =
- (f.rand."0.5.6".fuchsia-cprng or false) ||
- (f.rand."0.5.6".std or false) ||
- (rand."0.5.6"."std" or false); }
- { "0.5.6".i128_support =
- (f.rand."0.5.6".i128_support or false) ||
- (f.rand."0.5.6".nightly or false) ||
- (rand."0.5.6"."nightly" or false); }
- { "0.5.6".libc =
- (f.rand."0.5.6".libc or false) ||
- (f.rand."0.5.6".std or false) ||
- (rand."0.5.6"."std" or false); }
- { "0.5.6".serde =
- (f.rand."0.5.6".serde or false) ||
- (f.rand."0.5.6".serde1 or false) ||
- (rand."0.5.6"."serde1" or false); }
- { "0.5.6".serde_derive =
- (f.rand."0.5.6".serde_derive or false) ||
- (f.rand."0.5.6".serde1 or false) ||
- (rand."0.5.6"."serde1" or false); }
- { "0.5.6".std =
- (f.rand."0.5.6".std or false) ||
- (f.rand."0.5.6".default or false) ||
- (rand."0.5.6"."default" or false); }
- { "0.5.6".winapi =
- (f.rand."0.5.6".winapi or false) ||
- (f.rand."0.5.6".std or false) ||
- (rand."0.5.6"."std" or false); }
- ];
- rand_core = fold recursiveUpdate {} [
- { "${deps.rand."0.5.6".rand_core}"."alloc" =
- (f.rand_core."${deps.rand."0.5.6".rand_core}"."alloc" or false) ||
- (rand."0.5.6"."alloc" or false) ||
- (f."rand"."0.5.6"."alloc" or false); }
- { "${deps.rand."0.5.6".rand_core}"."serde1" =
- (f.rand_core."${deps.rand."0.5.6".rand_core}"."serde1" or false) ||
- (rand."0.5.6"."serde1" or false) ||
- (f."rand"."0.5.6"."serde1" or false); }
- { "${deps.rand."0.5.6".rand_core}"."std" =
- (f.rand_core."${deps.rand."0.5.6".rand_core}"."std" or false) ||
- (rand."0.5.6"."std" or false) ||
- (f."rand"."0.5.6"."std" or false); }
- { "${deps.rand."0.5.6".rand_core}".default = (f.rand_core."${deps.rand."0.5.6".rand_core}".default or false); }
- ];
- winapi = fold recursiveUpdate {} [
- { "${deps.rand."0.5.6".winapi}"."minwindef" = true; }
- { "${deps.rand."0.5.6".winapi}"."ntsecapi" = true; }
- { "${deps.rand."0.5.6".winapi}"."profileapi" = true; }
- { "${deps.rand."0.5.6".winapi}"."winnt" = true; }
- { "${deps.rand."0.5.6".winapi}".default = true; }
- ];
- }) [
- (features_.rand_core."${deps."rand"."0.5.6"."rand_core"}" deps)
- (features_.cloudabi."${deps."rand"."0.5.6"."cloudabi"}" deps)
- (features_.fuchsia_cprng."${deps."rand"."0.5.6"."fuchsia_cprng"}" deps)
- (features_.libc."${deps."rand"."0.5.6"."libc"}" deps)
- (features_.winapi."${deps."rand"."0.5.6"."winapi"}" deps)
- ];
-
-
-# end
-# rand-0.6.5
-
- crates.rand."0.6.5" = deps: { features?(features_.rand."0.6.5" deps {}) }: buildRustCrate {
- crateName = "rand";
- version = "0.6.5";
- authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
- sha256 = "0zbck48159aj8zrwzf80sd9xxh96w4f4968nshwjpysjvflimvgb";
- build = "build.rs";
- dependencies = mapFeatures features ([
- (crates."rand_chacha"."${deps."rand"."0.6.5"."rand_chacha"}" deps)
- (crates."rand_core"."${deps."rand"."0.6.5"."rand_core"}" deps)
- (crates."rand_hc"."${deps."rand"."0.6.5"."rand_hc"}" deps)
- (crates."rand_isaac"."${deps."rand"."0.6.5"."rand_isaac"}" deps)
- (crates."rand_jitter"."${deps."rand"."0.6.5"."rand_jitter"}" deps)
- (crates."rand_pcg"."${deps."rand"."0.6.5"."rand_pcg"}" deps)
- (crates."rand_xorshift"."${deps."rand"."0.6.5"."rand_xorshift"}" deps)
- ]
- ++ (if features.rand."0.6.5".rand_os or false then [ (crates.rand_os."${deps."rand"."0.6.5".rand_os}" deps) ] else []))
- ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
- (crates."libc"."${deps."rand"."0.6.5"."libc"}" deps)
- ]) else [])
- ++ (if kernel == "windows" then mapFeatures features ([
- (crates."winapi"."${deps."rand"."0.6.5"."winapi"}" deps)
- ]) else []);
-
- buildDependencies = mapFeatures features ([
- (crates."autocfg"."${deps."rand"."0.6.5"."autocfg"}" deps)
- ]);
- features = mkFeatures (features."rand"."0.6.5" or {});
- };
- features_.rand."0.6.5" = deps: f: updateFeatures f (rec {
- autocfg."${deps.rand."0.6.5".autocfg}".default = true;
- libc."${deps.rand."0.6.5".libc}".default = (f.libc."${deps.rand."0.6.5".libc}".default or false);
- rand = fold recursiveUpdate {} [
- { "0.6.5".alloc =
- (f.rand."0.6.5".alloc or false) ||
- (f.rand."0.6.5".std or false) ||
- (rand."0.6.5"."std" or false); }
- { "0.6.5".default = (f.rand."0.6.5".default or true); }
- { "0.6.5".packed_simd =
- (f.rand."0.6.5".packed_simd or false) ||
- (f.rand."0.6.5".simd_support or false) ||
- (rand."0.6.5"."simd_support" or false); }
- { "0.6.5".rand_os =
- (f.rand."0.6.5".rand_os or false) ||
- (f.rand."0.6.5".std or false) ||
- (rand."0.6.5"."std" or false); }
- { "0.6.5".simd_support =
- (f.rand."0.6.5".simd_support or false) ||
- (f.rand."0.6.5".nightly or false) ||
- (rand."0.6.5"."nightly" or false); }
- { "0.6.5".std =
- (f.rand."0.6.5".std or false) ||
- (f.rand."0.6.5".default or false) ||
- (rand."0.6.5"."default" or false); }
- ];
- rand_chacha."${deps.rand."0.6.5".rand_chacha}".default = true;
- rand_core = fold recursiveUpdate {} [
- { "${deps.rand."0.6.5".rand_core}"."alloc" =
- (f.rand_core."${deps.rand."0.6.5".rand_core}"."alloc" or false) ||
- (rand."0.6.5"."alloc" or false) ||
- (f."rand"."0.6.5"."alloc" or false); }
- { "${deps.rand."0.6.5".rand_core}"."serde1" =
- (f.rand_core."${deps.rand."0.6.5".rand_core}"."serde1" or false) ||
- (rand."0.6.5"."serde1" or false) ||
- (f."rand"."0.6.5"."serde1" or false); }
- { "${deps.rand."0.6.5".rand_core}"."std" =
- (f.rand_core."${deps.rand."0.6.5".rand_core}"."std" or false) ||
- (rand."0.6.5"."std" or false) ||
- (f."rand"."0.6.5"."std" or false); }
- { "${deps.rand."0.6.5".rand_core}".default = true; }
- ];
- rand_hc."${deps.rand."0.6.5".rand_hc}".default = true;
- rand_isaac = fold recursiveUpdate {} [
- { "${deps.rand."0.6.5".rand_isaac}"."serde1" =
- (f.rand_isaac."${deps.rand."0.6.5".rand_isaac}"."serde1" or false) ||
- (rand."0.6.5"."serde1" or false) ||
- (f."rand"."0.6.5"."serde1" or false); }
- { "${deps.rand."0.6.5".rand_isaac}".default = true; }
- ];
- rand_jitter = fold recursiveUpdate {} [
- { "${deps.rand."0.6.5".rand_jitter}"."std" =
- (f.rand_jitter."${deps.rand."0.6.5".rand_jitter}"."std" or false) ||
- (rand."0.6.5"."std" or false) ||
- (f."rand"."0.6.5"."std" or false); }
- { "${deps.rand."0.6.5".rand_jitter}".default = true; }
- ];
- rand_os = fold recursiveUpdate {} [
- { "${deps.rand."0.6.5".rand_os}"."stdweb" =
- (f.rand_os."${deps.rand."0.6.5".rand_os}"."stdweb" or false) ||
- (rand."0.6.5"."stdweb" or false) ||
- (f."rand"."0.6.5"."stdweb" or false); }
- { "${deps.rand."0.6.5".rand_os}"."wasm-bindgen" =
- (f.rand_os."${deps.rand."0.6.5".rand_os}"."wasm-bindgen" or false) ||
- (rand."0.6.5"."wasm-bindgen" or false) ||
- (f."rand"."0.6.5"."wasm-bindgen" or false); }
- { "${deps.rand."0.6.5".rand_os}".default = true; }
- ];
- rand_pcg."${deps.rand."0.6.5".rand_pcg}".default = true;
- rand_xorshift = fold recursiveUpdate {} [
- { "${deps.rand."0.6.5".rand_xorshift}"."serde1" =
- (f.rand_xorshift."${deps.rand."0.6.5".rand_xorshift}"."serde1" or false) ||
- (rand."0.6.5"."serde1" or false) ||
- (f."rand"."0.6.5"."serde1" or false); }
- { "${deps.rand."0.6.5".rand_xorshift}".default = true; }
- ];
- winapi = fold recursiveUpdate {} [
- { "${deps.rand."0.6.5".winapi}"."minwindef" = true; }
- { "${deps.rand."0.6.5".winapi}"."ntsecapi" = true; }
- { "${deps.rand."0.6.5".winapi}"."profileapi" = true; }
- { "${deps.rand."0.6.5".winapi}"."winnt" = true; }
- { "${deps.rand."0.6.5".winapi}".default = true; }
- ];
- }) [
- (features_.rand_chacha."${deps."rand"."0.6.5"."rand_chacha"}" deps)
- (features_.rand_core."${deps."rand"."0.6.5"."rand_core"}" deps)
- (features_.rand_hc."${deps."rand"."0.6.5"."rand_hc"}" deps)
- (features_.rand_isaac."${deps."rand"."0.6.5"."rand_isaac"}" deps)
- (features_.rand_jitter."${deps."rand"."0.6.5"."rand_jitter"}" deps)
- (features_.rand_os."${deps."rand"."0.6.5"."rand_os"}" deps)
- (features_.rand_pcg."${deps."rand"."0.6.5"."rand_pcg"}" deps)
- (features_.rand_xorshift."${deps."rand"."0.6.5"."rand_xorshift"}" deps)
- (features_.autocfg."${deps."rand"."0.6.5"."autocfg"}" deps)
- (features_.libc."${deps."rand"."0.6.5"."libc"}" deps)
- (features_.winapi."${deps."rand"."0.6.5"."winapi"}" deps)
- ];
-
-
-# end
-# rand_chacha-0.1.1
-
- crates.rand_chacha."0.1.1" = deps: { features?(features_.rand_chacha."0.1.1" deps {}) }: buildRustCrate {
- crateName = "rand_chacha";
- version = "0.1.1";
- authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
- sha256 = "0xnxm4mjd7wjnh18zxc1yickw58axbycp35ciraplqdfwn1gffwi";
- build = "build.rs";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_chacha"."0.1.1"."rand_core"}" deps)
- ]);
-
- buildDependencies = mapFeatures features ([
- (crates."autocfg"."${deps."rand_chacha"."0.1.1"."autocfg"}" deps)
- ]);
- };
- features_.rand_chacha."0.1.1" = deps: f: updateFeatures f (rec {
- autocfg."${deps.rand_chacha."0.1.1".autocfg}".default = true;
- rand_chacha."0.1.1".default = (f.rand_chacha."0.1.1".default or true);
- rand_core."${deps.rand_chacha."0.1.1".rand_core}".default = (f.rand_core."${deps.rand_chacha."0.1.1".rand_core}".default or false);
- }) [
- (features_.rand_core."${deps."rand_chacha"."0.1.1"."rand_core"}" deps)
- (features_.autocfg."${deps."rand_chacha"."0.1.1"."autocfg"}" deps)
- ];
-
-
-# end
-# rand_core-0.3.1
-
- crates.rand_core."0.3.1" = deps: { features?(features_.rand_core."0.3.1" deps {}) }: buildRustCrate {
- crateName = "rand_core";
- version = "0.3.1";
- authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
- sha256 = "0q0ssgpj9x5a6fda83nhmfydy7a6c0wvxm0jhncsmjx8qp8gw91m";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_core"."0.3.1"."rand_core"}" deps)
- ]);
- features = mkFeatures (features."rand_core"."0.3.1" or {});
- };
- features_.rand_core."0.3.1" = deps: f: updateFeatures f (rec {
- rand_core = fold recursiveUpdate {} [
- { "${deps.rand_core."0.3.1".rand_core}"."alloc" =
- (f.rand_core."${deps.rand_core."0.3.1".rand_core}"."alloc" or false) ||
- (rand_core."0.3.1"."alloc" or false) ||
- (f."rand_core"."0.3.1"."alloc" or false); }
- { "${deps.rand_core."0.3.1".rand_core}"."serde1" =
- (f.rand_core."${deps.rand_core."0.3.1".rand_core}"."serde1" or false) ||
- (rand_core."0.3.1"."serde1" or false) ||
- (f."rand_core"."0.3.1"."serde1" or false); }
- { "${deps.rand_core."0.3.1".rand_core}"."std" =
- (f.rand_core."${deps.rand_core."0.3.1".rand_core}"."std" or false) ||
- (rand_core."0.3.1"."std" or false) ||
- (f."rand_core"."0.3.1"."std" or false); }
- { "${deps.rand_core."0.3.1".rand_core}".default = true; }
- { "0.3.1".default = (f.rand_core."0.3.1".default or true); }
- { "0.3.1".std =
- (f.rand_core."0.3.1".std or false) ||
- (f.rand_core."0.3.1".default or false) ||
- (rand_core."0.3.1"."default" or false); }
- ];
- }) [
- (features_.rand_core."${deps."rand_core"."0.3.1"."rand_core"}" deps)
- ];
-
-
-# end
-# rand_core-0.4.0
-
- crates.rand_core."0.4.0" = deps: { features?(features_.rand_core."0.4.0" deps {}) }: buildRustCrate {
- crateName = "rand_core";
- version = "0.4.0";
- authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
- sha256 = "0wb5iwhffibj0pnpznhv1g3i7h1fnhz64s3nz74fz6vsm3q6q3br";
- dependencies = mapFeatures features ([
-]);
- features = mkFeatures (features."rand_core"."0.4.0" or {});
- };
- features_.rand_core."0.4.0" = deps: f: updateFeatures f (rec {
- rand_core = fold recursiveUpdate {} [
- { "0.4.0".alloc =
- (f.rand_core."0.4.0".alloc or false) ||
- (f.rand_core."0.4.0".std or false) ||
- (rand_core."0.4.0"."std" or false); }
- { "0.4.0".default = (f.rand_core."0.4.0".default or true); }
- { "0.4.0".serde =
- (f.rand_core."0.4.0".serde or false) ||
- (f.rand_core."0.4.0".serde1 or false) ||
- (rand_core."0.4.0"."serde1" or false); }
- { "0.4.0".serde_derive =
- (f.rand_core."0.4.0".serde_derive or false) ||
- (f.rand_core."0.4.0".serde1 or false) ||
- (rand_core."0.4.0"."serde1" or false); }
- ];
- }) [];
-
-
-# end
-# rand_hc-0.1.0
-
- crates.rand_hc."0.1.0" = deps: { features?(features_.rand_hc."0.1.0" deps {}) }: buildRustCrate {
- crateName = "rand_hc";
- version = "0.1.0";
- authors = [ "The Rand Project Developers" ];
- sha256 = "05agb75j87yp7y1zk8yf7bpm66hc0673r3dlypn0kazynr6fdgkz";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_hc"."0.1.0"."rand_core"}" deps)
- ]);
- };
- features_.rand_hc."0.1.0" = deps: f: updateFeatures f (rec {
- rand_core."${deps.rand_hc."0.1.0".rand_core}".default = (f.rand_core."${deps.rand_hc."0.1.0".rand_core}".default or false);
- rand_hc."0.1.0".default = (f.rand_hc."0.1.0".default or true);
- }) [
- (features_.rand_core."${deps."rand_hc"."0.1.0"."rand_core"}" deps)
- ];
-
-
-# end
-# rand_isaac-0.1.1
-
- crates.rand_isaac."0.1.1" = deps: { features?(features_.rand_isaac."0.1.1" deps {}) }: buildRustCrate {
- crateName = "rand_isaac";
- version = "0.1.1";
- authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
- sha256 = "10hhdh5b5sa03s6b63y9bafm956jwilx41s71jbrzl63ccx8lxdq";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_isaac"."0.1.1"."rand_core"}" deps)
- ]);
- features = mkFeatures (features."rand_isaac"."0.1.1" or {});
- };
- features_.rand_isaac."0.1.1" = deps: f: updateFeatures f (rec {
- rand_core = fold recursiveUpdate {} [
- { "${deps.rand_isaac."0.1.1".rand_core}"."serde1" =
- (f.rand_core."${deps.rand_isaac."0.1.1".rand_core}"."serde1" or false) ||
- (rand_isaac."0.1.1"."serde1" or false) ||
- (f."rand_isaac"."0.1.1"."serde1" or false); }
- { "${deps.rand_isaac."0.1.1".rand_core}".default = (f.rand_core."${deps.rand_isaac."0.1.1".rand_core}".default or false); }
- ];
- rand_isaac = fold recursiveUpdate {} [
- { "0.1.1".default = (f.rand_isaac."0.1.1".default or true); }
- { "0.1.1".serde =
- (f.rand_isaac."0.1.1".serde or false) ||
- (f.rand_isaac."0.1.1".serde1 or false) ||
- (rand_isaac."0.1.1"."serde1" or false); }
- { "0.1.1".serde_derive =
- (f.rand_isaac."0.1.1".serde_derive or false) ||
- (f.rand_isaac."0.1.1".serde1 or false) ||
- (rand_isaac."0.1.1"."serde1" or false); }
- ];
- }) [
- (features_.rand_core."${deps."rand_isaac"."0.1.1"."rand_core"}" deps)
- ];
-
-
-# end
-# rand_jitter-0.1.4
-
- crates.rand_jitter."0.1.4" = deps: { features?(features_.rand_jitter."0.1.4" deps {}) }: buildRustCrate {
- crateName = "rand_jitter";
- version = "0.1.4";
- authors = [ "The Rand Project Developers" ];
- sha256 = "13nr4h042ab9l7qcv47bxrxw3gkf2pc3cni6c9pyi4nxla0mm7b6";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_jitter"."0.1.4"."rand_core"}" deps)
- ])
- ++ (if kernel == "darwin" || kernel == "ios" then mapFeatures features ([
- (crates."libc"."${deps."rand_jitter"."0.1.4"."libc"}" deps)
- ]) else [])
- ++ (if kernel == "windows" then mapFeatures features ([
- (crates."winapi"."${deps."rand_jitter"."0.1.4"."winapi"}" deps)
- ]) else []);
- features = mkFeatures (features."rand_jitter"."0.1.4" or {});
- };
- features_.rand_jitter."0.1.4" = deps: f: updateFeatures f (rec {
- libc."${deps.rand_jitter."0.1.4".libc}".default = true;
- rand_core = fold recursiveUpdate {} [
- { "${deps.rand_jitter."0.1.4".rand_core}"."std" =
- (f.rand_core."${deps.rand_jitter."0.1.4".rand_core}"."std" or false) ||
- (rand_jitter."0.1.4"."std" or false) ||
- (f."rand_jitter"."0.1.4"."std" or false); }
- { "${deps.rand_jitter."0.1.4".rand_core}".default = true; }
- ];
- rand_jitter."0.1.4".default = (f.rand_jitter."0.1.4".default or true);
- winapi = fold recursiveUpdate {} [
- { "${deps.rand_jitter."0.1.4".winapi}"."profileapi" = true; }
- { "${deps.rand_jitter."0.1.4".winapi}".default = true; }
- ];
- }) [
- (features_.rand_core."${deps."rand_jitter"."0.1.4"."rand_core"}" deps)
- (features_.libc."${deps."rand_jitter"."0.1.4"."libc"}" deps)
- (features_.winapi."${deps."rand_jitter"."0.1.4"."winapi"}" deps)
- ];
-
-
-# end
-# rand_os-0.1.3
-
- crates.rand_os."0.1.3" = deps: { features?(features_.rand_os."0.1.3" deps {}) }: buildRustCrate {
- crateName = "rand_os";
- version = "0.1.3";
- authors = [ "The Rand Project Developers" ];
- sha256 = "0ywwspizgs9g8vzn6m5ix9yg36n15119d6n792h7mk4r5vs0ww4j";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_os"."0.1.3"."rand_core"}" deps)
- ])
- ++ (if abi == "sgx" then mapFeatures features ([
- (crates."rdrand"."${deps."rand_os"."0.1.3"."rdrand"}" deps)
- ]) else [])
- ++ (if kernel == "cloudabi" then mapFeatures features ([
- (crates."cloudabi"."${deps."rand_os"."0.1.3"."cloudabi"}" deps)
- ]) else [])
- ++ (if kernel == "fuchsia" then mapFeatures features ([
- (crates."fuchsia_cprng"."${deps."rand_os"."0.1.3"."fuchsia_cprng"}" deps)
- ]) else [])
- ++ (if (kernel == "linux" || kernel == "darwin") then mapFeatures features ([
- (crates."libc"."${deps."rand_os"."0.1.3"."libc"}" deps)
- ]) else [])
- ++ (if kernel == "windows" then mapFeatures features ([
- (crates."winapi"."${deps."rand_os"."0.1.3"."winapi"}" deps)
- ]) else [])
- ++ (if kernel == "wasm32-unknown-unknown" then mapFeatures features ([
-]) else []);
- };
- features_.rand_os."0.1.3" = deps: f: updateFeatures f (rec {
- cloudabi."${deps.rand_os."0.1.3".cloudabi}".default = true;
- fuchsia_cprng."${deps.rand_os."0.1.3".fuchsia_cprng}".default = true;
- libc."${deps.rand_os."0.1.3".libc}".default = true;
- rand_core = fold recursiveUpdate {} [
- { "${deps.rand_os."0.1.3".rand_core}"."std" = true; }
- { "${deps.rand_os."0.1.3".rand_core}".default = true; }
- ];
- rand_os."0.1.3".default = (f.rand_os."0.1.3".default or true);
- rdrand."${deps.rand_os."0.1.3".rdrand}".default = true;
- winapi = fold recursiveUpdate {} [
- { "${deps.rand_os."0.1.3".winapi}"."minwindef" = true; }
- { "${deps.rand_os."0.1.3".winapi}"."ntsecapi" = true; }
- { "${deps.rand_os."0.1.3".winapi}"."winnt" = true; }
- { "${deps.rand_os."0.1.3".winapi}".default = true; }
- ];
- }) [
- (features_.rand_core."${deps."rand_os"."0.1.3"."rand_core"}" deps)
- (features_.rdrand."${deps."rand_os"."0.1.3"."rdrand"}" deps)
- (features_.cloudabi."${deps."rand_os"."0.1.3"."cloudabi"}" deps)
- (features_.fuchsia_cprng."${deps."rand_os"."0.1.3"."fuchsia_cprng"}" deps)
- (features_.libc."${deps."rand_os"."0.1.3"."libc"}" deps)
- (features_.winapi."${deps."rand_os"."0.1.3"."winapi"}" deps)
- ];
-
-
-# end
-# rand_pcg-0.1.2
-
- crates.rand_pcg."0.1.2" = deps: { features?(features_.rand_pcg."0.1.2" deps {}) }: buildRustCrate {
- crateName = "rand_pcg";
- version = "0.1.2";
- authors = [ "The Rand Project Developers" ];
- sha256 = "04qgi2ai2z42li5h4aawvxbpnlqyjfnipz9d6k73mdnl6p1xq938";
- build = "build.rs";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_pcg"."0.1.2"."rand_core"}" deps)
- ]);
-
- buildDependencies = mapFeatures features ([
- (crates."autocfg"."${deps."rand_pcg"."0.1.2"."autocfg"}" deps)
- ]);
- features = mkFeatures (features."rand_pcg"."0.1.2" or {});
- };
- features_.rand_pcg."0.1.2" = deps: f: updateFeatures f (rec {
- autocfg."${deps.rand_pcg."0.1.2".autocfg}".default = true;
- rand_core."${deps.rand_pcg."0.1.2".rand_core}".default = true;
- rand_pcg = fold recursiveUpdate {} [
- { "0.1.2".default = (f.rand_pcg."0.1.2".default or true); }
- { "0.1.2".serde =
- (f.rand_pcg."0.1.2".serde or false) ||
- (f.rand_pcg."0.1.2".serde1 or false) ||
- (rand_pcg."0.1.2"."serde1" or false); }
- { "0.1.2".serde_derive =
- (f.rand_pcg."0.1.2".serde_derive or false) ||
- (f.rand_pcg."0.1.2".serde1 or false) ||
- (rand_pcg."0.1.2"."serde1" or false); }
- ];
- }) [
- (features_.rand_core."${deps."rand_pcg"."0.1.2"."rand_core"}" deps)
- (features_.autocfg."${deps."rand_pcg"."0.1.2"."autocfg"}" deps)
- ];
-
-
-# end
-# rand_xorshift-0.1.1
-
- crates.rand_xorshift."0.1.1" = deps: { features?(features_.rand_xorshift."0.1.1" deps {}) }: buildRustCrate {
- crateName = "rand_xorshift";
- version = "0.1.1";
- authors = [ "The Rand Project Developers" "The Rust Project Developers" ];
- sha256 = "0v365c4h4lzxwz5k5kp9m0661s0sss7ylv74if0xb4svis9sswnn";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rand_xorshift"."0.1.1"."rand_core"}" deps)
- ]);
- features = mkFeatures (features."rand_xorshift"."0.1.1" or {});
- };
- features_.rand_xorshift."0.1.1" = deps: f: updateFeatures f (rec {
- rand_core."${deps.rand_xorshift."0.1.1".rand_core}".default = (f.rand_core."${deps.rand_xorshift."0.1.1".rand_core}".default or false);
- rand_xorshift = fold recursiveUpdate {} [
- { "0.1.1".default = (f.rand_xorshift."0.1.1".default or true); }
- { "0.1.1".serde =
- (f.rand_xorshift."0.1.1".serde or false) ||
- (f.rand_xorshift."0.1.1".serde1 or false) ||
- (rand_xorshift."0.1.1"."serde1" or false); }
- { "0.1.1".serde_derive =
- (f.rand_xorshift."0.1.1".serde_derive or false) ||
- (f.rand_xorshift."0.1.1".serde1 or false) ||
- (rand_xorshift."0.1.1"."serde1" or false); }
- ];
- }) [
- (features_.rand_core."${deps."rand_xorshift"."0.1.1"."rand_core"}" deps)
- ];
-
-
-# end
-# rdrand-0.4.0
-
- crates.rdrand."0.4.0" = deps: { features?(features_.rdrand."0.4.0" deps {}) }: buildRustCrate {
- crateName = "rdrand";
- version = "0.4.0";
- authors = [ "Simonas Kazlauskas <rdrand@kazlauskas.me>" ];
- sha256 = "15hrcasn0v876wpkwab1dwbk9kvqwrb3iv4y4dibb6yxnfvzwajk";
- dependencies = mapFeatures features ([
- (crates."rand_core"."${deps."rdrand"."0.4.0"."rand_core"}" deps)
- ]);
- features = mkFeatures (features."rdrand"."0.4.0" or {});
- };
- features_.rdrand."0.4.0" = deps: f: updateFeatures f (rec {
- rand_core."${deps.rdrand."0.4.0".rand_core}".default = (f.rand_core."${deps.rdrand."0.4.0".rand_core}".default or false);
- rdrand = fold recursiveUpdate {} [
- { "0.4.0".default = (f.rdrand."0.4.0".default or true); }
- { "0.4.0".std =
- (f.rdrand."0.4.0".std or false) ||
- (f.rdrand."0.4.0".default or false) ||
- (rdrand."0.4.0"."default" or false); }
- ];
- }) [
- (features_.rand_core."${deps."rdrand"."0.4.0"."rand_core"}" deps)
- ];
-
-
-# end
-# sdl2-0.32.2
-
- crates.sdl2."0.32.2" = deps: { features?(features_.sdl2."0.32.2" deps {}) }: buildRustCrate {
- crateName = "sdl2";
- version = "0.32.2";
- authors = [ "Tony Aldridge <tony@angry-lawyer.com>" "Cobrand <cobrandw@gmail.com>" ];
- sha256 = "1jrr94ci07rc31mpmfykkg54ah4xf3l389gjsnr7h5x4jf8spwhk";
- libPath = "src/sdl2/lib.rs";
- dependencies = mapFeatures features ([
- (crates."bitflags"."${deps."sdl2"."0.32.2"."bitflags"}" deps)
- (crates."lazy_static"."${deps."sdl2"."0.32.2"."lazy_static"}" deps)
- (crates."libc"."${deps."sdl2"."0.32.2"."libc"}" deps)
- (crates."num"."${deps."sdl2"."0.32.2"."num"}" deps)
- (crates."rand"."${deps."sdl2"."0.32.2"."rand"}" deps)
- (crates."sdl2_sys"."${deps."sdl2"."0.32.2"."sdl2_sys"}" deps)
- ]);
- features = mkFeatures (features."sdl2"."0.32.2" or {});
- };
- features_.sdl2."0.32.2" = deps: f: updateFeatures f (rec {
- bitflags."${deps.sdl2."0.32.2".bitflags}".default = true;
- lazy_static."${deps.sdl2."0.32.2".lazy_static}".default = true;
- libc."${deps.sdl2."0.32.2".libc}".default = true;
- num."${deps.sdl2."0.32.2".num}".default = (f.num."${deps.sdl2."0.32.2".num}".default or false);
- rand."${deps.sdl2."0.32.2".rand}".default = true;
- sdl2 = fold recursiveUpdate {} [
- { "0.32.2".c_vec =
- (f.sdl2."0.32.2".c_vec or false) ||
- (f.sdl2."0.32.2".gfx or false) ||
- (sdl2."0.32.2"."gfx" or false); }
- { "0.32.2".default = (f.sdl2."0.32.2".default or true); }
- ];
- sdl2_sys = fold recursiveUpdate {} [
- { "${deps.sdl2."0.32.2".sdl2_sys}"."bundled" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."bundled" or false) ||
- (sdl2."0.32.2"."bundled" or false) ||
- (f."sdl2"."0.32.2"."bundled" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."gfx" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."gfx" or false) ||
- (sdl2."0.32.2"."gfx" or false) ||
- (f."sdl2"."0.32.2"."gfx" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."image" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."image" or false) ||
- (sdl2."0.32.2"."image" or false) ||
- (f."sdl2"."0.32.2"."image" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."mixer" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."mixer" or false) ||
- (sdl2."0.32.2"."mixer" or false) ||
- (f."sdl2"."0.32.2"."mixer" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."static-link" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."static-link" or false) ||
- (sdl2."0.32.2"."static-link" or false) ||
- (f."sdl2"."0.32.2"."static-link" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."ttf" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."ttf" or false) ||
- (sdl2."0.32.2"."ttf" or false) ||
- (f."sdl2"."0.32.2"."ttf" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."use-bindgen" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."use-bindgen" or false) ||
- (sdl2."0.32.2"."use-bindgen" or false) ||
- (f."sdl2"."0.32.2"."use-bindgen" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."use-pkgconfig" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."use-pkgconfig" or false) ||
- (sdl2."0.32.2"."use-pkgconfig" or false) ||
- (f."sdl2"."0.32.2"."use-pkgconfig" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}"."use_mac_framework" =
- (f.sdl2_sys."${deps.sdl2."0.32.2".sdl2_sys}"."use_mac_framework" or false) ||
- (sdl2."0.32.2"."use_mac_framework" or false) ||
- (f."sdl2"."0.32.2"."use_mac_framework" or false); }
- { "${deps.sdl2."0.32.2".sdl2_sys}".default = true; }
- ];
- }) [
- (features_.bitflags."${deps."sdl2"."0.32.2"."bitflags"}" deps)
- (features_.lazy_static."${deps."sdl2"."0.32.2"."lazy_static"}" deps)
- (features_.libc."${deps."sdl2"."0.32.2"."libc"}" deps)
- (features_.num."${deps."sdl2"."0.32.2"."num"}" deps)
- (features_.rand."${deps."sdl2"."0.32.2"."rand"}" deps)
- (features_.sdl2_sys."${deps."sdl2"."0.32.2"."sdl2_sys"}" deps)
- ];
-
-
-# end
-# sdl2-sys-0.32.6
-
- crates.sdl2_sys."0.32.6" = deps: { features?(features_.sdl2_sys."0.32.6" deps {}) }: buildRustCrate {
- crateName = "sdl2-sys";
- version = "0.32.6";
- authors = [ "Tony Aldridge <tony@angry-lawyer.com>" ];
- edition = "2018";
- sha256 = "1m3wligbxakzmnkbfs1q91n9b0wxfwi7zr3r17ib0lbbjf84qvj7";
- libPath = "src/lib.rs";
- libName = "sdl2_sys";
- build = "build.rs";
- dependencies = mapFeatures features ([
- (crates."libc"."${deps."sdl2_sys"."0.32.6"."libc"}" deps)
- ]);
-
- buildDependencies = mapFeatures features ([
- (crates."cfg_if"."${deps."sdl2_sys"."0.32.6"."cfg_if"}" deps)
- ]);
- features = mkFeatures (features."sdl2_sys"."0.32.6" or {});
- };
- features_.sdl2_sys."0.32.6" = deps: f: updateFeatures f (rec {
- cfg_if."${deps.sdl2_sys."0.32.6".cfg_if}".default = true;
- libc."${deps.sdl2_sys."0.32.6".libc}".default = true;
- sdl2_sys = fold recursiveUpdate {} [
- { "0.32.6".bindgen =
- (f.sdl2_sys."0.32.6".bindgen or false) ||
- (f.sdl2_sys."0.32.6".use-bindgen or false) ||
- (sdl2_sys."0.32.6"."use-bindgen" or false); }
- { "0.32.6".cmake =
- (f.sdl2_sys."0.32.6".cmake or false) ||
- (f.sdl2_sys."0.32.6".bundled or false) ||
- (sdl2_sys."0.32.6"."bundled" or false); }
- { "0.32.6".default = (f.sdl2_sys."0.32.6".default or true); }
- { "0.32.6".flate2 =
- (f.sdl2_sys."0.32.6".flate2 or false) ||
- (f.sdl2_sys."0.32.6".bundled or false) ||
- (sdl2_sys."0.32.6"."bundled" or false); }
- { "0.32.6".pkg-config =
- (f.sdl2_sys."0.32.6".pkg-config or false) ||
- (f.sdl2_sys."0.32.6".use-pkgconfig or false) ||
- (sdl2_sys."0.32.6"."use-pkgconfig" or false); }
- { "0.32.6".tar =
- (f.sdl2_sys."0.32.6".tar or false) ||
- (f.sdl2_sys."0.32.6".bundled or false) ||
- (sdl2_sys."0.32.6"."bundled" or false); }
- { "0.32.6".unidiff =
- (f.sdl2_sys."0.32.6".unidiff or false) ||
- (f.sdl2_sys."0.32.6".bundled or false) ||
- (sdl2_sys."0.32.6"."bundled" or false); }
- ];
- }) [
- (features_.libc."${deps."sdl2_sys"."0.32.6"."libc"}" deps)
- (features_.cfg_if."${deps."sdl2_sys"."0.32.6"."cfg_if"}" deps)
- ];
-
-
-# end
-# winapi-0.3.7
-
- crates.winapi."0.3.7" = deps: { features?(features_.winapi."0.3.7" deps {}) }: buildRustCrate {
- crateName = "winapi";
- version = "0.3.7";
- authors = [ "Peter Atashian <retep998@gmail.com>" ];
- sha256 = "1k51gfkp0zqw7nj07y443mscs46icmdhld442s2073niap0kkdr8";
- build = "build.rs";
- dependencies = (if kernel == "i686-pc-windows-gnu" then mapFeatures features ([
- (crates."winapi_i686_pc_windows_gnu"."${deps."winapi"."0.3.7"."winapi_i686_pc_windows_gnu"}" deps)
- ]) else [])
- ++ (if kernel == "x86_64-pc-windows-gnu" then mapFeatures features ([
- (crates."winapi_x86_64_pc_windows_gnu"."${deps."winapi"."0.3.7"."winapi_x86_64_pc_windows_gnu"}" deps)
- ]) else []);
- features = mkFeatures (features."winapi"."0.3.7" or {});
- };
- features_.winapi."0.3.7" = deps: f: updateFeatures f (rec {
- winapi = fold recursiveUpdate {} [
- { "0.3.7".default = (f.winapi."0.3.7".default or true); }
- { "0.3.7".impl-debug =
- (f.winapi."0.3.7".impl-debug or false) ||
- (f.winapi."0.3.7".debug or false) ||
- (winapi."0.3.7"."debug" or false); }
- ];
- winapi_i686_pc_windows_gnu."${deps.winapi."0.3.7".winapi_i686_pc_windows_gnu}".default = true;
- winapi_x86_64_pc_windows_gnu."${deps.winapi."0.3.7".winapi_x86_64_pc_windows_gnu}".default = true;
- }) [
- (features_.winapi_i686_pc_windows_gnu."${deps."winapi"."0.3.7"."winapi_i686_pc_windows_gnu"}" deps)
- (features_.winapi_x86_64_pc_windows_gnu."${deps."winapi"."0.3.7"."winapi_x86_64_pc_windows_gnu"}" deps)
- ];
-
-
-# end
-# winapi-i686-pc-windows-gnu-0.4.0
-
- crates.winapi_i686_pc_windows_gnu."0.4.0" = deps: { features?(features_.winapi_i686_pc_windows_gnu."0.4.0" deps {}) }: buildRustCrate {
- crateName = "winapi-i686-pc-windows-gnu";
- version = "0.4.0";
- authors = [ "Peter Atashian <retep998@gmail.com>" ];
- sha256 = "05ihkij18r4gamjpxj4gra24514can762imjzlmak5wlzidplzrp";
- build = "build.rs";
- };
- features_.winapi_i686_pc_windows_gnu."0.4.0" = deps: f: updateFeatures f (rec {
- winapi_i686_pc_windows_gnu."0.4.0".default = (f.winapi_i686_pc_windows_gnu."0.4.0".default or true);
- }) [];
-
-
-# end
-# winapi-x86_64-pc-windows-gnu-0.4.0
-
- crates.winapi_x86_64_pc_windows_gnu."0.4.0" = deps: { features?(features_.winapi_x86_64_pc_windows_gnu."0.4.0" deps {}) }: buildRustCrate {
- crateName = "winapi-x86_64-pc-windows-gnu";
- version = "0.4.0";
- authors = [ "Peter Atashian <retep998@gmail.com>" ];
- sha256 = "0n1ylmlsb8yg1v583i4xy0qmqg42275flvbc51hdqjjfjcl9vlbj";
- build = "build.rs";
- };
- features_.winapi_x86_64_pc_windows_gnu."0.4.0" = deps: f: updateFeatures f (rec {
- winapi_x86_64_pc_windows_gnu."0.4.0".default = (f.winapi_x86_64_pc_windows_gnu."0.4.0".default or true);
- }) [];
-
-
-# end
-}
diff --git a/default.nix b/default.nix
deleted file mode 100644
index cd61229..0000000
--- a/default.nix
+++ /dev/null
@@ -1,5 +0,0 @@
-{ pkgs ? import <nixpkgs> {} }:
-
-((import ./Cargo.nix).stallman_shooter {}).override {
- buildInputs = [ pkgs.SDL2 pkgs.SDL2_image ];
-}
diff --git a/flake.lock b/flake.lock
new file mode 100644
index 0000000..7d1d4c0
--- /dev/null
+++ b/flake.lock
@@ -0,0 +1,25 @@
+{
+ "nodes": {
+ "nixpkgs": {
+ "locked": {
+ "lastModified": 1689935543,
+ "narHash": "sha256-6GQ9ib4dA/r1leC5VUpsBo0BmDvNxLjKrX1iyL+h8mc=",
+ "owner": "NixOS",
+ "repo": "nixpkgs",
+ "rev": "e43e2448161c0a2c4928abec4e16eae1516571bc",
+ "type": "github"
+ },
+ "original": {
+ "id": "nixpkgs",
+ "type": "indirect"
+ }
+ },
+ "root": {
+ "inputs": {
+ "nixpkgs": "nixpkgs"
+ }
+ }
+ },
+ "root": "root",
+ "version": 7
+}
diff --git a/flake.nix b/flake.nix
new file mode 100644
index 0000000..540dad2
--- /dev/null
+++ b/flake.nix
@@ -0,0 +1,28 @@
+{
+ description = "An RMS-themed bullet hell game.";
+
+ outputs = { self, nixpkgs }:
+ let pkgs = nixpkgs.legacyPackages.x86_64-linux; in
+ rec {
+
+ packages.x86_64-linux.stallman-shooter = pkgs.rustPlatform.buildRustPackage {
+ pname = "stallman-shooter";
+ version = "1.0.0";
+
+ src = self;
+
+ cargoLock = {
+ lockFile = ./Cargo.lock;
+ };
+
+ buildInputs = with pkgs; [
+ SDL2
+ SDL2_image
+ ];
+ };
+
+ defaultPackage.x86_64-linux = packages.x86_64-linux.stallman-shooter;
+
+ checks.build = packages.x86_64-linux.stallman-shooter;
+ };
+}
diff --git a/src/main.rs b/src/main.rs
index eccef92..59913c0 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -1,14 +1,11 @@
-extern crate sdl2;
-extern crate sdl2_sys;
-
-mod state;
-mod player;
mod constants;
mod gates;
+mod player;
+mod state;
-use state::Positioned;
-use state::Drawable;
use state::Bullet;
+use state::Drawable;
+use state::Positioned;
enum FResult {
Win,
@@ -26,7 +23,12 @@ struct Textures<'a> {
const DURATION: u32 = 1_000_000_000u32 / 60;
-fn frame<T: state::Enemy<U>, U: state::Bullet>(canvas: &mut sdl2::render::WindowCanvas, state: &mut state::State<T, U>, events: &mut sdl2::event::EventPollIterator, textures: &Textures) -> FResult {
+fn frame<T: state::Enemy<U>, U: state::Bullet>(
+ canvas: &mut sdl2::render::WindowCanvas,
+ state: &mut state::State<T, U>,
+ events: &mut sdl2::event::EventPollIterator,
+ textures: &Textures,
+) -> FResult {
let mut new_bullets = Vec::new();
let count = state.count;
for enemy in state.enemies.iter_mut() {
@@ -42,12 +44,24 @@ fn frame<T: state::Enemy<U>, U: state::Bullet>(canvas: &mut sdl2::render::Window
Err(_) => {
return FResult::Exit;
}
- Ok(_) => { }
+ Ok(_) => {}
}
if count % state.player.fire_rate as u64 == 0 {
- state.player_bullets.push(state::PBullet::new(state.player.x, 0., state.player.y, -3.5));
+ state.player_bullets.push(state::PBullet::new(
+ state.player.x,
+ 0.,
+ state.player.y,
+ -3.5,
+ ));
}
- if state.bullets.iter().any(|bullet| state.player.overlaps(bullet)) || new_bullets.iter().any(|bullet| state.player.overlaps(bullet)) {
+ if state
+ .bullets
+ .iter()
+ .any(|bullet| state.player.overlaps(bullet))
+ || new_bullets
+ .iter()
+ .any(|bullet| state.player.overlaps(bullet))
+ {
return FResult::Loss;
}
for enemy in state.enemies.iter_mut() {
@@ -58,13 +72,17 @@ fn frame<T: state::Enemy<U>, U: state::Bullet>(canvas: &mut sdl2::render::Window
}
}
}
- state.enemies.retain(|enemy| state::Enemy::health(enemy) > 0.);
+ state
+ .enemies
+ .retain(|enemy| state::Enemy::health(enemy) > 0.);
if state.enemies.len() == 0 {
return FResult::Win;
}
state.bullets.retain(|bullet| !U::outside(bullet));
state.bullets.append(&mut new_bullets);
- state.player_bullets.retain(|bullet| !state::PBullet::outside(bullet));
+ state
+ .player_bullets
+ .retain(|bullet| !state::PBullet::outside(bullet));
for bullet in state.player_bullets.iter() {
bullet.draw(canvas, &textures.pbullet);
}
@@ -76,22 +94,32 @@ fn frame<T: state::Enemy<U>, U: state::Bullet>(canvas: &mut sdl2::render::Window
bullet.draw(canvas, &textures.ebullet);
}
canvas.set_draw_color(sdl2::pixels::Color::RGB(255, 0, 0));
- canvas.draw_rect(sdl2::rect::Rect::new(0, 0, (state.enemies[0].health() * constants::X_DIM as f64).round() as u32, 20)).unwrap();
+ canvas
+ .draw_rect(sdl2::rect::Rect::new(
+ 0,
+ 0,
+ (state.enemies[0].health() * constants::X_DIM as f64).round() as u32,
+ 20,
+ ))
+ .unwrap();
state.count += 1;
FResult::Nothing
}
-/* Why tf do I not need a lifetime here? */
fn get_surface(bytes: &[u8]) -> sdl2::surface::Surface {
(unsafe {
- let rw = sdl2_sys::SDL_RWFromMem(bytes.as_ptr() as *mut std::os::raw::c_void, bytes.len() as i32);
+ let rw = sdl2_sys::SDL_RWFromMem(
+ bytes.as_ptr() as *mut std::os::raw::c_void,
+ bytes.len() as i32,
+ );
let raw = sdl2_sys::image::IMG_Load_RW(rw, 1);
if (raw as *mut ()).is_null() {
Err("Returned null")
} else {
Ok(sdl2::surface::Surface::from_ll(raw))
}
- }).unwrap()
+ })
+ .unwrap()
}
fn get_player_surface() -> sdl2::surface::Surface<'static> {
@@ -110,10 +138,18 @@ fn get_pbullet_surface() -> sdl2::surface::Surface<'static> {
get_surface(include_bytes!("assets/player_pepp.png"))
}
-fn generic_message(canvas: &mut sdl2::render::WindowCanvas, event_pump: &mut sdl2::EventPump, image: &[u8], okay: sdl2::keyboard::Keycode, error: sdl2::keyboard::Keycode) -> Result<(), ()> {
+fn generic_message(
+ canvas: &mut sdl2::render::WindowCanvas,
+ event_pump: &mut sdl2::EventPump,
+ image: &[u8],
+ okay: sdl2::keyboard::Keycode,
+ error: sdl2::keyboard::Keycode,
+) -> Result<(), ()> {
let surface = get_surface(image);
let texture_creator = canvas.texture_creator();
- let texture = texture_creator.create_texture_from_surface(surface).unwrap();
+ let texture = texture_creator
+ .create_texture_from_surface(surface)
+ .unwrap();
let frame_duration = std::time::Duration::new(0, DURATION);
loop {
let start = std::time::Instant::now();
@@ -121,7 +157,10 @@ fn generic_message(canvas: &mut sdl2::render::WindowCanvas, event_pump: &mut sdl
canvas.present();
for event in event_pump.poll_iter() {
match event {
- sdl2::event::Event::KeyDown { keycode: Some(keycode), .. } => {
+ sdl2::event::Event::KeyDown {
+ keycode: Some(keycode),
+ ..
+ } => {
if keycode == okay {
return Ok(());
}
@@ -129,10 +168,10 @@ fn generic_message(canvas: &mut sdl2::render::WindowCanvas, event_pump: &mut sdl
return Err(());
}
}
- sdl2::event::Event::Quit {..} => {
+ sdl2::event::Event::Quit { .. } => {
return Err(());
}
- _ => { }
+ _ => {}
}
}
match frame_duration.checked_sub(start.elapsed()) {
@@ -142,28 +181,59 @@ fn generic_message(canvas: &mut sdl2::render::WindowCanvas, event_pump: &mut sdl
}
}
-fn introduction(canvas: &mut sdl2::render::WindowCanvas, event_pump: &mut sdl2::EventPump) -> Result<(), ()> {
- return generic_message(canvas, event_pump, include_bytes!("assets/introduction.png"), sdl2::keyboard::Keycode::Return, sdl2::keyboard::Keycode::Escape);
+fn introduction(
+ canvas: &mut sdl2::render::WindowCanvas,
+ event_pump: &mut sdl2::EventPump,
+) -> Result<(), ()> {
+ return generic_message(
+ canvas,
+ event_pump,
+ include_bytes!("assets/introduction.png"),
+ sdl2::keyboard::Keycode::Return,
+ sdl2::keyboard::Keycode::Escape,
+ );
}
-fn loss(canvas: &mut sdl2::render::WindowCanvas, event_pump: &mut sdl2::EventPump) -> Result<(), ()> {
- return generic_message(canvas, event_pump, include_bytes!("assets/loss.png"), sdl2::keyboard::Keycode::R, sdl2::keyboard::Keycode::Escape);
+fn loss(
+ canvas: &mut sdl2::render::WindowCanvas,
+ event_pump: &mut sdl2::EventPump,
+) -> Result<(), ()> {
+ return generic_message(
+ canvas,
+ event_pump,
+ include_bytes!("assets/loss.png"),
+ sdl2::keyboard::Keycode::R,
+ sdl2::keyboard::Keycode::Escape,
+ );
}
-fn victory(canvas: &mut sdl2::render::WindowCanvas, event_pump: &mut sdl2::EventPump) -> Result<(), ()> {
- return generic_message(canvas, event_pump, include_bytes!("assets/victory.png"), sdl2::keyboard::Keycode::R, sdl2::keyboard::Keycode::Escape);
+fn victory(
+ canvas: &mut sdl2::render::WindowCanvas,
+ event_pump: &mut sdl2::EventPump,
+) -> Result<(), ()> {
+ return generic_message(
+ canvas,
+ event_pump,
+ include_bytes!("assets/victory.png"),
+ sdl2::keyboard::Keycode::R,
+ sdl2::keyboard::Keycode::Escape,
+ );
}
fn main() {
let sdl_context = sdl2::init().unwrap();
let video_subsystem = sdl_context.video().unwrap();
- let window = video_subsystem.window("rust-sdl2 demo", constants::X_DIM, constants::Y_DIM).position_centered().build().unwrap();
+ let window = video_subsystem
+ .window("rust-sdl2 demo", constants::X_DIM, constants::Y_DIM)
+ .position_centered()
+ .build()
+ .unwrap();
let mut canvas = window.into_canvas().build().unwrap();
let mut event_pump = sdl_context.event_pump().unwrap();
-
+
match introduction(&mut canvas, &mut event_pump) {
- Ok(_) => { }
+ Ok(_) => {}
Err(_) => {
return;
}
@@ -176,37 +246,51 @@ fn main() {
let ebullet_surface = get_ebullet_surface();
let pbullet_surface = get_pbullet_surface();
let texture_creator = canvas.texture_creator();
- let player_texture = texture_creator.create_texture_from_surface(player_surface).unwrap();
- let enemy_texture = texture_creator.create_texture_from_surface(enemy_surface).unwrap();
- let ebullet_texture = texture_creator.create_texture_from_surface(ebullet_surface).unwrap();
- let pbullet_texture = texture_creator.create_texture_from_surface(pbullet_surface).unwrap();
- let surfaces = Textures { player: player_texture, enemy: enemy_texture, pbullet: pbullet_texture, ebullet: ebullet_texture };
+ let player_texture = texture_creator
+ .create_texture_from_surface(player_surface)
+ .unwrap();
+ let enemy_texture = texture_creator
+ .create_texture_from_surface(enemy_surface)
+ .unwrap();
+ let ebullet_texture = texture_creator
+ .create_texture_from_surface(ebullet_surface)
+ .unwrap();
+ let pbullet_texture = texture_creator
+ .create_texture_from_surface(pbullet_surface)
+ .unwrap();
+ let surfaces = Textures {
+ player: player_texture,
+ enemy: enemy_texture,
+ pbullet: pbullet_texture,
+ ebullet: ebullet_texture,
+ };
let frame_duration = std::time::Duration::new(0, DURATION);
- 'running: loop {
+ loop {
let start = std::time::Instant::now();
canvas.set_draw_color(sdl2::pixels::Color::RGB(255, 255, 255));
canvas.clear();
- match frame(&mut canvas, &mut state, &mut event_pump.poll_iter(), &surfaces) {
- FResult::Loss => {
- match loss(&mut canvas, &mut event_pump) {
- Ok(_) => {
- break;
- }
- Err(_) => {
- break 'retry;
- }
+ match frame(
+ &mut canvas,
+ &mut state,
+ &mut event_pump.poll_iter(),
+ &surfaces,
+ ) {
+ FResult::Loss => match loss(&mut canvas, &mut event_pump) {
+ Ok(_) => {
+ break;
}
- }
- FResult::Win => {
- match victory(&mut canvas, &mut event_pump) {
- Ok(_) => {
- break;
- }
- Err(_) => {
- break 'retry;
- }
+ Err(_) => {
+ break 'retry;
}
- }
+ },
+ FResult::Win => match victory(&mut canvas, &mut event_pump) {
+ Ok(_) => {
+ break;
+ }
+ Err(_) => {
+ break 'retry;
+ }
+ },
FResult::Exit => {
break 'retry;
}