{ inputs.nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; outputs = inputs @ { self, nixpkgs, }: let supportedSystems = ["x86_64-linux" "aarch64-linux"]; forAllSystems = nixpkgs.lib.genAttrs supportedSystems; pkgs = forAllSystems (system: nixpkgs.legacyPackages.${system}); in { packages = forAllSystems (system: rec { zapzap = pkgs.${system}.python3Packages.buildPythonPackage { name = "zapzap"; src = pkgs.${system}.fetchFromGitHub { owner = "zapzap-linux"; repo = "zapzap"; rev = "5de4a4015128c164af3c964ecbe5b6358d98b521"; hash = "sha256-bd3YcITK4lraOu7D/xZfnibilAZQZWqazVVtUwqJ4wc="; }; dontWrapQtApps = true; propagatedBuildInputs = with pkgs.${system}.python3Packages; [pyqt6-webengine qt6.qtwayland qt6.qtsvg]; nativeBuildInputs = with pkgs.${system}; [qt6.wrapQtAppsHook makeWrapper]; env = { HOME = "/tmp"; }; preFixup = '' makeWrapperArgs+=( # Force the app to use QT_PLUGIN_PATH values from wrapper --unset QT_PLUGIN_PATH "''${qtWrapperArgs[@]}" ) ''; }; default = zapzap; }); }; }