# Troubleshoot "Project zip is invalid"

## When I select my zip file to upload, it says *Project zip is invalid*

This means your .zip file doesn't contain the right files. Try the below, and if it's still broken, feel free to contact us on [Discord](https://discord.com/channels/926957916089634836/1093581069116244071) for more help.

1. Make sure you have the PixelStreaming UE plugin enabled.
2. Make sure you are packaging for Linux.
3. Make sure you zipped the `Linux` directory.
4. List the files in your .zip. It should look something like this:

```
Linux
Linux/Manifest_DebugFiles_Linux.txt
Linux/Manifest_NonUFSFiles_Linux.txt
Linux/Manifest_UFSFiles_Linux.txt
Linux/MyProject.sh
Linux/MyProject
Linux/MyProject/Samples
Linux/MyProject/Samples/PixelStreaming
Linux/MyProject/Samples/PixelStreaming/WebServers
Linux/MyProject/Samples/PixelStreaming/WebServers/get_ps_servers.bat
Linux/MyProject/Samples/PixelStreaming/WebServers/get_ps_servers.sh
Linux/MyProject/Content
Linux/MyProject/Content/Paks
Linux/MyProject/Content/Paks/MyProject-Linux.pak
Linux/MyProject/Content/Paks/global.utoc
Linux/MyProject/Content/Paks/MyProject-Linux.ucas
Linux/MyProject/Content/Paks/global.ucas
Linux/MyProject/Content/Paks/MyProject-Linux.utoc
Linux/MyProject/Binaries
Linux/MyProject/Binaries/Linux
Linux/MyProject/Binaries/Linux/MyProject.debug
Linux/MyProject/Binaries/Linux/MyProject
Linux/MyProject/Binaries/Linux/libNvmlWrapper.so
Linux/MyProject/Binaries/Linux/MyProject.sym
Linux/Engine
Linux/Engine/Content
Linux/Engine/Content/SlateDebug
Linux/Engine/Content/SlateDebug/Fonts
Linux/Engine/Content/SlateDebug/Fonts/LastResort.tps
Linux/Engine/Content/SlateDebug/Fonts/LastResort.ttf
Linux/Engine/Extras
Linux/Engine/Extras/GPUDumpViewer
Linux/Engine/Extras/GPUDumpViewer/OpenGPUDumpViewer.bat
Linux/Engine/Extras/GPUDumpViewer/GPUDumpViewer.html
Linux/Engine/Extras/GPUDumpViewer/OpenGPUDumpViewer.sh
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.odyssey.stream/guides/troubleshoot-project-zip-is-invalid.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
