{ description = "Announce nixos rebuild with dark souls-like message"; inputs = { nixpkgs.url = "https://flakehub.com/f/NixOS/nixpkgs/0.1"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils, }: flake-utils.lib.eachDefaultSystem ( system: let pkgs = import nixpkgs { inherit system; }; lib = pkgs.lib; in { packages.default = pkgs.stdenv.mkDerivation { pname = "souls"; version = "0.1.0"; src = self; nativeBuildInputs = [ pkgs.odin pkgs.makeWrapper ]; buildInputs = [ pkgs.raylib pkgs.libuuid pkgs.zlib ]; buildPhase = '' odin build . -o:aggressive -out:souls ''; installPhase = '' mkdir -p $out/bin cp souls $out/bin/souls WRAP_PATH=${ lib.makeLibraryPath [ pkgs.raylib pkgs.zlib pkgs.libuuid ] } wrapProgram $out/bin/souls \ --prefix LD_LIBRARY_PATH : "$WRAP_PATH" \ --set-default DYLD_LIBRARY_PATH "$WRAP_PATH" ''; }; apps.default = { type = "app"; program = "${self.packages.${system}.default}/bin/souls"; }; devShells.default = pkgs.mkShell { packages = with pkgs; [ odin ols raylib lldb ]; }; } ); }