{ description = "photogallery uploader — Qt6 C++ desktop app"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { self, nixpkgs, flake-utils }: flake-utils.lib.eachDefaultSystem (system: let pkgs = import nixpkgs { inherit system; }; qtPlugins = pkgs.lib.makeSearchPathOutput "out" "lib/qt-6/plugins" [ pkgs.qt6.qtbase pkgs.qt6.qtwayland pkgs.qt6.qtimageformats ]; in { devShells.default = pkgs.mkShell { packages = with pkgs; [ cmake ninja pkg-config qt6.qtbase qt6.qtwayland # native Wayland QPA plugin qt6.qtimageformats # HEIF/HEIC + others, read by QImage qt6Packages.qtkeychain # password → libsecret / kwallet ]; shellHook = '' # Let a binary run straight from the build dir find Qt's platform # (xcb + wayland) and image-format plugins without wrapQtAppsHook. export QT_PLUGIN_PATH="${qtPlugins}''${QT_PLUGIN_PATH:+:$QT_PLUGIN_PATH}" ''; }; }); }