forked from denis/a811
67 lines
1.6 KiB
Nix
67 lines
1.6 KiB
Nix
{
|
|
inputs.nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
|
|
|
|
outputs = {
|
|
self,
|
|
nixpkgs,
|
|
}: let
|
|
pkgs = import nixpkgs {
|
|
system = "x86_64-linux";
|
|
};
|
|
in {
|
|
packages.x86_64-linux = {
|
|
# Define the default package, which will build the C++ app
|
|
default = pkgs.stdenv.mkDerivation {
|
|
pname = "cli";
|
|
version = "0.1.0";
|
|
|
|
# Source directory containing the C++ code
|
|
src = ./.;
|
|
|
|
# Build dependencies (e.g., compilers)
|
|
buildInputs = [ pkgs.gcc pkgs.libusb1 ];
|
|
|
|
# Build commands
|
|
buildPhase = ''
|
|
mkdir -p $out/bin
|
|
g++ -o $out/bin/cli src/cli.cpp src/usb_thingy.cpp -lusb-1.0
|
|
'';
|
|
|
|
# Optional: installation phase, if additional steps are needed
|
|
#installPhase = ''
|
|
# # Nothing extra needed here; the binary is already in $out/bin
|
|
#'';
|
|
};
|
|
};
|
|
devShells.x86_64-linux = {
|
|
default = pkgs.mkShell {
|
|
propagatedBuildInputs = with pkgs; [
|
|
bashInteractive
|
|
cmake
|
|
gcc
|
|
gdb
|
|
kdePackages.extra-cmake-modules
|
|
kdePackages.kcoreaddons
|
|
kdePackages.ki18n
|
|
kdePackages.kiconthemes
|
|
kdePackages.kirigami-addons.dev
|
|
kdePackages.kirigami
|
|
kdePackages.qqc2-desktop-style
|
|
kdePackages.qtbase.dev
|
|
kdePackages.qtdeclarative
|
|
kdePackages.qttools.dev
|
|
makeWrapper
|
|
pkg-config
|
|
qt6.wrapQtAppsHook
|
|
qtcreator
|
|
qt6.full
|
|
qt6.qtbase
|
|
libusb1
|
|
hidapi
|
|
ninja
|
|
];
|
|
};
|
|
};
|
|
};
|
|
}
|