yoke/flake.nix
2025-11-09 01:30:04 +11:00

48 lines
1.2 KiB
Nix

{
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
systems.url = "github:nix-systems/default-linux";
};
outputs =
{
self,
nixpkgs,
systems,
}:
let
forAllSystems =
func: nixpkgs.lib.genAttrs (import systems) (system: func (import nixpkgs { inherit system; }));
in
{
devShells = forAllSystems (pkgs: {
default = pkgs.mkShell {
packages = with pkgs; [
cargo
rustc
rust-analyzer
rustfmt
clippy
];
};
});
packages = forAllSystems (pkgs: {
default = self.packages.${pkgs.system}.yoke;
yoke = pkgs.rustPlatform.callPackage ./nix/package.nix {
features = [
"cli"
];
};
yoke-lite = pkgs.rustPlatform.callPackage ./nix/package.nix { };
});
nixosModules.default =
{ pkgs, lib, ... }:
{
config = {
imports = [ ./nix/module.nix ];
wrapperPkg = self.packages.${pkgs.system}.yoke-lite;
environment.systemPackages = [ self.packages.${pkgs.system}.yoke ];
};
};
};
}