mirror of
https://github.com/perstarkse/minne.git
synced 2026-04-21 16:31:23 +02:00
release: 0.2.6
This commit is contained in:
119
flake.nix
119
flake.nix
@@ -13,69 +13,74 @@
|
||||
flake-utils,
|
||||
crane,
|
||||
}:
|
||||
flake-utils.lib.eachDefaultSystem (
|
||||
system: let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
craneLib = crane.mkLib pkgs;
|
||||
flake-utils.lib.eachDefaultSystem (system: let
|
||||
pkgs = nixpkgs.legacyPackages.${system};
|
||||
lib = pkgs.lib;
|
||||
craneLib = crane.mkLib pkgs;
|
||||
libExt =
|
||||
if pkgs.stdenv.isDarwin
|
||||
then "dylib"
|
||||
else "so";
|
||||
minne-pkg = craneLib.buildPackage {
|
||||
src = lib.cleanSourceWith {
|
||||
src = ./.;
|
||||
filter = let
|
||||
extraPaths = [
|
||||
(toString ./common/migrations)
|
||||
(toString ./common/schemas)
|
||||
(toString ./html-router/templates)
|
||||
(toString ./html-router/assets)
|
||||
];
|
||||
in
|
||||
path: type: let
|
||||
p = toString path;
|
||||
in
|
||||
craneLib.filterCargoSources path type
|
||||
|| lib.any (x: lib.hasPrefix x p) extraPaths;
|
||||
};
|
||||
|
||||
minne-pkg = craneLib.buildPackage {
|
||||
src = craneLib.cleanCargoSource ./.;
|
||||
pname = "minne";
|
||||
version = "0.1.0";
|
||||
pname = "minne";
|
||||
version = "0.2.6";
|
||||
doCheck = false;
|
||||
|
||||
doCheck = false;
|
||||
nativeBuildInputs = [pkgs.pkg-config pkgs.rustfmt pkgs.makeWrapper];
|
||||
buildInputs = [pkgs.openssl pkgs.chromium pkgs.onnxruntime];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkgs.pkg-config
|
||||
pkgs.rustfmt
|
||||
pkgs.makeWrapper
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
pkgs.openssl
|
||||
pkgs.chromium
|
||||
pkgs.onnxruntime
|
||||
];
|
||||
|
||||
ORT_STRATEGY = "system";
|
||||
ORT_LIB_LOCATION = "${pkgs.onnxruntime}/lib";
|
||||
ORT_SKIP_DOWNLOAD = "1";
|
||||
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/main \
|
||||
--set CHROME ${pkgs.chromium}/bin/chromium \
|
||||
--set ORT_DYLIB_PATH ${pkgs.onnxruntime}/lib/libonnxruntime.so
|
||||
if [ -f $out/bin/worker ]; then
|
||||
wrapProgram $out/bin/worker \
|
||||
postInstall = ''
|
||||
wrapProgram $out/bin/main \
|
||||
--set CHROME ${pkgs.chromium}/bin/chromium \
|
||||
--set ORT_DYLIB_PATH ${pkgs.onnxruntime}/lib/libonnxruntime.${libExt}
|
||||
for b in worker server; do
|
||||
if [ -x "$out/bin/$b" ]; then
|
||||
wrapProgram $out/bin/$b \
|
||||
--set CHROME ${pkgs.chromium}/bin/chromium \
|
||||
--set ORT_DYLIB_PATH ${pkgs.onnxruntime}/lib/libonnxruntime.so
|
||||
--set ORT_DYLIB_PATH ${pkgs.onnxruntime}/lib/libonnxruntime.${libExt}
|
||||
fi
|
||||
if [ -f $out/bin/server]; then
|
||||
wrapProgram $out/bin/server\
|
||||
--set ORT_DYLIB_PATH ${pkgs.onnxruntime}/lib/libonnxruntime.so
|
||||
fi
|
||||
'';
|
||||
done
|
||||
'';
|
||||
};
|
||||
in {
|
||||
packages = {
|
||||
minne-pkg = minne-pkg;
|
||||
default = minne-pkg;
|
||||
};
|
||||
apps = {
|
||||
main = flake-utils.lib.mkApp {
|
||||
drv = minne-pkg;
|
||||
name = "main";
|
||||
};
|
||||
in {
|
||||
packages = {
|
||||
default = self.packages.${system}.minne-pkg;
|
||||
worker = flake-utils.lib.mkApp {
|
||||
drv = minne-pkg;
|
||||
name = "worker";
|
||||
};
|
||||
|
||||
apps = {
|
||||
main = flake-utils.lib.mkApp {
|
||||
drv = minne-pkg;
|
||||
name = "main";
|
||||
};
|
||||
worker = flake-utils.lib.mkApp {
|
||||
drv = minne-pkg;
|
||||
name = "worker";
|
||||
};
|
||||
server = flake-utils.lib.mkApp {
|
||||
drv = minne-pkg;
|
||||
name = "server";
|
||||
};
|
||||
default = self.apps.${system}.main;
|
||||
server = flake-utils.lib.mkApp {
|
||||
drv = minne-pkg;
|
||||
name = "server";
|
||||
};
|
||||
}
|
||||
);
|
||||
default = flake-utils.lib.mkApp {
|
||||
drv = minne-pkg;
|
||||
name = "main";
|
||||
};
|
||||
};
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user