molehole/flake.nix

54 lines
1.0 KiB
Nix

{
description = "Molerat client implementation";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs?ref=nixos-unstable";
};
outputs = { self, nixpkgs }:
let
system = "aarch64-darwin";
pkgs = nixpkgs.legacyPackages.${system};
in {
packages.${system}.default =
pkgs.stdenv.mkDerivation {
name = "molehole";
src = ./.;
buildInputs = with pkgs; [ncurses openssl];
installPhase = ''
mkdir -p $out/bin
mv build/molehole $out/bin
'';
};
devShells.${system}.default =
pkgs.mkShell {
buildInputs = with pkgs; [
llvmPackages.clang
neovim
openssl.dev
ncurses.dev
];
shellHook = ''
cat << EOF > compile_flags.txt
-Wall
-Wextra
-pedantic
-Iinclude
-I${pkgs.openssl.dev}/include
-I${pkgs.ncurses.dev}/include
-lncurses
-lssl
EOF
exec zsh
'';
};
};
}