• Operand
  • can sell console.

gram:aurora

> ./flake.nix

Lenses
(coming soon!)


# https://discourse.nixos.org/t/how-to-provide-alsa-pc-to-environment/54670/4
{ inputs = {
    nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
    flake-utils.url = "github:numtide/flake-utils";
    oxalica.url = "github:oxalica/rust-overlay";
  };

  outputs = { self, nixpkgs, flake-utils, oxalica }: with flake-utils.lib;
    eachSystem allSystems (system: let
      pkgs = nixpkgs.legacyPackages.${system}.extend oxalica.overlays.default;
    in rec { packages = {
      aurora = let
        grade = pkgs.rust-bin.stable.latest.minimal;
        rust = pkgs.makeRustPlatform { cargo = grade; rustc = grade; };
      in rust.buildRustPackage rec {
        name = "aurora";
        src = self;
        nativeBuildInputs = with pkgs; [ pkg-config ];
        buildInputs = with pkgs; [
          alsa-lib.dev
          udev.dev
          xorg.libX11
          xorg.libXrandr
          xorg.libXcursor
          xorg.libxcb
          xorg.libXi
          wayland
          libxkbcommon
          libxkbcommon.dev
          vulkan-loader
          vulkan-tools
          glfw
        ];
        cargoLock = { lockFile = ./Cargo.lock; };
        LD_LIBRARY_PATH = pkgs.lib.makeLibraryPath buildInputs;
      };
    };
    defaultPackage = packages.aurora;
    formatter = pkgs.nixfmt;
  });
}