package in flake, but wthout uniffi.so
This commit is contained in:
parent
f11290ec26
commit
915d0b3592
5 changed files with 711 additions and 30 deletions
85
flake.nix
85
flake.nix
|
@ -3,12 +3,18 @@
|
|||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-25.05";
|
||||
|
||||
binding = {
|
||||
url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-binding-uniffi.git";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
};
|
||||
|
||||
outputs =
|
||||
{
|
||||
self,
|
||||
nixpkgs,
|
||||
binding,
|
||||
}:
|
||||
let
|
||||
lib = nixpkgs.lib;
|
||||
|
@ -22,43 +28,70 @@
|
|||
f:
|
||||
lib.genAttrs supported-systems (
|
||||
system:
|
||||
f rec {
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
f {
|
||||
inherit system;
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
bindingPkgs = binding.packages.${system};
|
||||
selfPkgs = self.packages.${system};
|
||||
}
|
||||
);
|
||||
in
|
||||
{
|
||||
devShells = forAllSystems (
|
||||
{ pkgs, system }:
|
||||
packages = forAllSystems (
|
||||
{
|
||||
default = pkgs.mkShell {
|
||||
packages = with pkgs; [
|
||||
(pkgs.symlinkJoin
|
||||
{
|
||||
name = "rust-toolchain";
|
||||
paths = with pkgs; [
|
||||
rustc
|
||||
cargo
|
||||
rustPlatform.rustcSrc
|
||||
rustfmt
|
||||
clippy
|
||||
cargo-expand
|
||||
cargo-tarpaulin
|
||||
];
|
||||
})
|
||||
dotnet-sdk_8
|
||||
gcc
|
||||
gnumake
|
||||
xe
|
||||
xz
|
||||
pkgs,
|
||||
bindingPkgs,
|
||||
selfPkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
default = selfPkgs.servicepoint-binding-csharp;
|
||||
servicepoint-binding-uniffi = bindingPkgs.servicepoint-binding-uniffi;
|
||||
servicepoint-binding-csharp = pkgs.buildDotnetModule {
|
||||
pname = "servicepoint-binding-csharp";
|
||||
version = "0.0.0";
|
||||
|
||||
src = ./.;
|
||||
projectFile = "csharp.sln";
|
||||
nugetDeps = ./deps.json;
|
||||
|
||||
dotnet-sdk = pkgs.dotnetCorePackages.sdk_8_0;
|
||||
dotnet-runtime = pkgs.dotnetCorePackages.runtime_8_0;
|
||||
|
||||
packNupkg = true;
|
||||
|
||||
nativeBuildInputs = with pkgs; [
|
||||
pkg-config
|
||||
gnumake
|
||||
iconv
|
||||
bindingPkgs.servicepoint-binding-uniffi
|
||||
];
|
||||
RUST_SRC_PATH = "${pkgs.rust.packages.stable.rustPlatform.rustLibSrc}";
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-rfc-style);
|
||||
devShells = forAllSystems (
|
||||
{
|
||||
pkgs,
|
||||
bindingPkgs,
|
||||
selfPkgs,
|
||||
...
|
||||
}:
|
||||
{
|
||||
default = pkgs.mkShell {
|
||||
inputsFrom = [
|
||||
bindingPkgs.servicepoint-binding-uniffi
|
||||
selfPkgs.servicepoint-binding-csharp
|
||||
];
|
||||
|
||||
packages = with pkgs; [
|
||||
bindingPkgs.servicepoint-binding-uniffi
|
||||
nuget-to-json
|
||||
];
|
||||
};
|
||||
}
|
||||
);
|
||||
|
||||
formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-tree);
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue