tutorial-kirigami2/flake.nix
2025-06-27 13:46:00 +02:00

55 lines
1.3 KiB
Nix

{
description = "Kirigami";
inputs = {
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
flake-utils.url = "github:numtide/flake-utils";
};
outputs = { nixpkgs, flake-utils, ... }:
flake-utils.lib.eachSystem flake-utils.lib.allSystems (system:
let
pkgs = import nixpkgs { inherit system; };
kdeDependencies = with pkgs.kdePackages; [
qtbase
qtdeclarative
kirigami.unwrapped
ki18n
kcoreaddons
qqc2-desktop-style
sonnet
];
makeQmlImportPath = pkgs.lib.makeSearchPathOutput "bin" "lib/qt-6/qml";
in
{
devShells = {
default = pkgs.mkShell {
packages = with pkgs; [
# For building
ninja
cmake
gcc
# Not required at compile time
gammaray
gdb # Required for gammaray
lldb # Required for gammaray
# For translation generation
ruby
] ++ kdeDependencies;
dontFixCmake = true;
cmakeFlags = [
"-DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=ON"
"-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo"
];
QML2_IMPORT_PATH = makeQmlImportPath kdeDependencies;
};
};
});
}