fj-pages/flake.nix

61 lines
1.5 KiB
Nix
Raw Permalink Normal View History

2025-01-18 13:46:22 -08:00
# Read about Flakes here:
# https://wiki.nixos.org/wiki/Flakes
{
description = "OpenDeck - A cross-platform application that provides functionality for stream controllers";
inputs = {
# This refers to 24.11-beta's tagged release.
nixpkgs.url = "github:nixos/nixpkgs/8b27c1239e5c421a2bbc2c65d52e4a6fbf2ff296";
flake-utils.url = "github:numtide/flake-utils";
gitignore = { url = "github:hercules-ci/gitignore.nix"; flake = false; };
};
outputs = inputs@{ self, nixpkgs, flake-utils, ... }:
flake-utils.lib.eachDefaultSystem (system: let
pkgs = nixpkgs.legacyPackages.${system};
gitignoreSrc = pkgs.callPackage inputs.gitignore { };
in rec {
packages.opendeck = pkgs.callPackage ./default.nix { inherit pkgs system; };
legacyPackages = packages;
defaultPackage = packages.opendeck;
devShell = pkgs.mkShell rec {
CARGO_INSTALL_ROOT = "${toString ./.}/.cargo";
# These are things available at build-time
nativeBuildInputs = with pkgs; [
pkg-config
gobject-introspection
rustc
cargo
cargo-tauri
deno
];
# These are things available at runtime
buildInputs = with pkgs; [
at-spi2-atk
atkmm
cairo
gdk-pixbuf
glib
gtk3
harfbuzz
librsvg
libsoup_3
pango
webkitgtk_4_1
openssl
udev
libappindicator-gtk3
wine
];
env = {
LD_LIBRARY_PATH = "${pkgs.lib.makeLibraryPath buildInputs}";
};
};
});
}