{ description = "A simple rust project"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs"; }; outputs = { self, nixpkgs, }: let forEachSystem = fn: nixpkgs.lib.genAttrs ["x86_64-linux" "aarch64-linux"] (system: fn system nixpkgs.legacyPackages.${system}); in { # Define a package for your project packages = forEachSystem (system: pkgs: rec { tinyupload = pkgs.callPackage ./nix/package.nix {}; default = tinyupload; }); nixosModules.default = import ./nix/module.nix self; devShells = forEachSystem (system: pkgs: { default = pkgs.mkShell { DATABASE_URL = "sqlite:tinyupload.db"; buildInputs = with pkgs; [cargo rustc sqlx-cli sqlite]; }; }); }; }