73
flake.nix
Normal file
73
flake.nix
Normal file
@@ -0,0 +1,73 @@
|
||||
{
|
||||
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
|
||||
];
|
||||
};
|
||||
}
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user