Files
singh3/flake.nix
2022-04-04 18:17:02 +05:30

75 lines
1.8 KiB
Nix

{
description = "singh3 discord bot";
inputs = {
nixpkgs.url = github:nixos/nixpkgs/nixos-unstable;
utils.url = github:numtide/flake-utils;
rust-overlay.url = github:oxalica/rust-overlay;
cargo2nix.url = github:cargo2nix/cargo2nix;
};
outputs = { self, nixpkgs, utils, rust-overlay, cargo2nix }:
utils.lib.eachDefaultSystem
(system:
let
overlays =
[
(import "${cargo2nix}/overlay")
rust-overlay.overlay
];
pkgs = import nixpkgs {
inherit system overlays;
};
rustPkgs = pkgs.rustBuilder.makePackageSet' {
rustChannel = "latest";
packageFun = import ./Cargo.nix;
};
in
rec {
devShells = with pkgs; {
default = mkShell
{
buildInputs = [
rust-bin.nightly.latest.default
rust-analyzer
postgresql
];
};
withDB = mkShell
{
buildInputs = [
rust-bin.nightly.latest.default
postgresql
];
};
bare = mkShell
{
buildInputs = [
rust-bin.nightly.latest.default
];
};
withLSP = mkShell
{
buildInputs = [
rust-bin.nightly.latest.default
rust-analyzer
];
};
};
devShell = devShells.default;
packages = {
default = (rustPkgs.workspace.singh3 { }).bin;
};
defaultPackage = packages.default;
}
);
}