97 lines
3.1 KiB
Nix
97 lines
3.1 KiB
Nix
{
|
|
description = "Luminescent Dreams Tools";
|
|
|
|
inputs = {
|
|
nixpkgs.url = "nixpkgs/nixos-22.11";
|
|
unstable.url = "nixpkgs/nixos-unstable";
|
|
pkgs-cargo2nix.url = "github:cargo2nix/cargo2nix";
|
|
crane.url = "github:ipetkov/crane";
|
|
};
|
|
|
|
outputs = { self, nixpkgs, unstable, pkgs-cargo2nix, crane, ... }:
|
|
let
|
|
version = builtins.string 0 8 self.lastModifiedDate;
|
|
supportedSystems = [ "x86_64-linux" ];
|
|
in
|
|
{
|
|
devShell."x86_64-linux" =
|
|
let
|
|
pkgs = import nixpkgs { system = "x86_64-linux"; };
|
|
pkgs-unstable = import unstable { system = "x86_64-linux"; };
|
|
cargo2nix = pkgs-cargo2nix.packages."x86_64-linux";
|
|
in
|
|
pkgs.mkShell {
|
|
name = "ld-tools-devshell";
|
|
buildInputs = [
|
|
pkgs.clang
|
|
pkgs.entr
|
|
pkgs.glade
|
|
pkgs.glib
|
|
pkgs.gst_all_1.gst-plugins-bad
|
|
pkgs.gst_all_1.gst-plugins-base
|
|
pkgs.gst_all_1.gst-plugins-good
|
|
pkgs.gst_all_1.gst-plugins-ugly
|
|
pkgs.gst_all_1.gstreamer
|
|
pkgs.gtk4
|
|
pkgs.nodejs
|
|
pkgs.openssl
|
|
pkgs.pipewire
|
|
pkgs.pkg-config
|
|
pkgs.sqlite
|
|
pkgs.rustup
|
|
pkgs.crate2nix
|
|
];
|
|
LIBCLANG_PATH="${pkgs.llvmPackages.libclang.lib}/lib";
|
|
};
|
|
packages."x86_64-linux" =
|
|
let
|
|
pkgs = import nixpkgs { system = "x86_64-linux"; };
|
|
craneLib = crane.lib."x86_64-linux";
|
|
in rec {
|
|
kifu-core-deps = craneLib.buildDepsOnly {
|
|
pname = "kifu-core-deps";
|
|
version = "0.1.0";
|
|
src = craneLib.cleanCargoSource (craneLib.path ./.);
|
|
cargoExtraArgs = "-p kifu-core";
|
|
};
|
|
kifu-core = craneLib.buildPackage {
|
|
pname = "kifu-core";
|
|
version = "0.1.0";
|
|
src = craneLib.cleanCargoSource (craneLib.path ./.);
|
|
cargoExtraArgs = "-p kifu-core";
|
|
doInstallCargoArtifacts = true;
|
|
inherit kifu-core-deps;
|
|
};
|
|
kifu-gtk-deps = craneLib.buildDepsOnly {
|
|
pname = "kifu-gtk-deps";
|
|
version = "0.1.0";
|
|
src = craneLib.cleanCargoSource (craneLib.path ./.);
|
|
nativeBuildInputs = with pkgs; [
|
|
pkg-config
|
|
glib
|
|
gtk4
|
|
];
|
|
buildInputs = with pkgs; [
|
|
pkg-config
|
|
];
|
|
cargoExtraArgs = "-p kifu-gtk";
|
|
inherit kifu-core;
|
|
};
|
|
kifu-gtk = craneLib.buildPackage {
|
|
pname = "kifu-gtk";
|
|
version = "0.1.0";
|
|
src = craneLib.cleanCargoSource (craneLib.path ./.);
|
|
cargoExtraArgs = "-p kifu-gtk";
|
|
nativeBuildInputs = with pkgs; [
|
|
glib
|
|
gtk4
|
|
];
|
|
buildInputs = with pkgs; [
|
|
pkg-config
|
|
];
|
|
inherit kifu-gtk-deps;
|
|
};
|
|
};
|
|
};
|
|
}
|