Installation
Download the latest installer for your platform from the download page, or straight from GitHub Releases.
System requirements
| Minimum | Recommended | |
|---|---|---|
| Windows | Windows 10 version 1903 (build 18362) or later, Intel 8th Gen / AMD Ryzen 2000 series or newer | Windows 11, Intel 12th Gen / AMD Ryzen 4000 series or newer |
| macOS | macOS 13 (Ventura) — required by ScreenCaptureKit for capture | macOS 14 or later |
| Linux | xdg-desktop-portal and PipeWire for native capture and system audio (default on Ubuntu 22.04+, Fedora 34+) — recording still works without them through the browser-capture fallback, with fewer capabilities. Recording mouse clicks on Wayland additionally needs your user in the input group — see Mouse clicks on Wayland | Same, kept up to date |
| RAM | 8 GB | 16 GB |
Machines with integrated graphics older than roughly 8th-generation Intel (or the equivalent AMD Ryzen 2000 series) are not blocked from installing, but some have known driver stability issues that can make a recording fail to stop and save — see #460. If you hit this, open the tray icon or Help → Save Diagnostics right after the failure (before starting another recording) and attach the file to a bug report.
macOS
Download the .dmg installer from Releases and drag OpenScreen into your Applications folder. Builds from 1.9.0 onward are signed with a Developer ID certificate and notarized by Apple, so Gatekeeper does not block them and no terminal step is needed.
Then go to System Settings → Privacy & Security and grant Screen Recording and Accessibility to OpenScreen. Recording cannot start until both are granted.
macOS re-requests screen-recording permission from time to time for every third-party screen recorder. That prompt comes from the operating system — it does not mean your install is broken or that an update went wrong. Grant it again when asked.
Those builds were not signed with a Developer ID certificate, and macOS ties Screen Recording and Accessibility grants to an app's signature — so it cannot tell the new build is the same app, and the permissions you granted the old one do not carry over. If a new version won't record even after granting them, remove OpenScreen's entries under both permissions in System Settings, then launch it again and grant them fresh.
Windows
Download and run the .exe installer from Releases.
Linux
Four packages are published per release — pick the one matching your distro.
Debian / Ubuntu / Pop!_OS
sudo apt install ./Openscreen-Linux-*.deb
Fedora / RHEL / CentOS
sudo dnf install ./Openscreen-Linux-*.rpm
Arch / Manjaro
sudo pacman -U Openscreen-Linux-*.pacman
Any distro (AppImage)
chmod +x Openscreen-Linux-*.AppImage
./Openscreen-Linux-*.AppImage
If the AppImage fails to launch with a sandbox error:
./Openscreen-Linux-*.AppImage --no-sandbox
NixOS / Nix (flake)
Try it without installing:
nix run github:getopenscreen/openscreen
Install into your user profile:
nix profile install github:getopenscreen/openscreen
As a NixOS system module:
{
inputs.openscreen.url = "github:getopenscreen/openscreen";
outputs = { nixpkgs, openscreen, ... }: {
nixosConfigurations.<host> = nixpkgs.lib.nixosSystem {
modules = [
openscreen.nixosModules.default
{ programs.openscreen.enable = true; }
];
};
};
}
Home Manager users can use openscreen.homeManagerModules.default with the same programs.openscreen.enable = true;.
You may need to grant screen-recording permission depending on your desktop environment.
Mouse clicks on Wayland
Wayland exposes no portal for input events, so OpenScreen reads left-button presses straight from the kernel's evdev interface (/dev/input/event*) instead. Those device nodes are owned by root:input, so a recording only distinguishes a click from ordinary cursor movement when your user is in the input group:
sudo usermod -aG input $USER
Log out and back in for the new group to take effect. Nothing breaks without it — recording works exactly as it did before, and every cursor sample is simply recorded as a move.
The scope is deliberately narrow: only the left mouse button (BTN_LEFT) is ever read, never keystrokes. To turn the reader off entirely even where the permission exists, set OPENSCREEN_DISABLE_CLICK_CAPTURE=1 in the environment OpenScreen is launched from.
Touchpads: only a physical click — pressing the pad down until it depresses — is recorded. Tap-to-click is not, because your compositor's input stack (libinput) synthesises those taps for its own use and never writes them back to the kernel device that OpenScreen reads, so there is nothing at the evdev layer to see. A mouse, or a touchpad with tap-to-click turned off, records every click.
Platform differences
The editing tools are the same everywhere — zooms, backgrounds, crop/trim/speed, annotations, transcription, captions, and projects. Every export format works on every platform; what differs is capture, and how fast MP4 encodes on Linux:
| macOS | Windows | Linux | |
|---|---|---|---|
| Capture pipeline | Native (ScreenCaptureKit) | Native (Windows Graphics Capture) | Native (PipeWire via the ScreenCast portal); browser fallback without the helper, losing hardware encode and cursor telemetry |
| Custom cursor themes / click effects | ✅ | ✅ | ✅ on Wayland — click capture needs the input group (details) |
| Webcam | Native capture | Native capture | Browser capture (still works as PiP) |
| System audio | Works out of the box; permission prompt on macOS 14.2+ | Works out of the box | Needs PipeWire (default on Ubuntu 22.04+, Fedora 34+) |
| MP4 export | ✅ | ✅ | ✅ (software encode) |
| GIF export | ✅ | ✅ | ✅ |
| On-device transcription | Metal (Apple Silicon) / CPU | Vulkan / CPU | Vulkan / CPU |
The GPU compositor behind the live preview and MP4 export has three backends — Direct3D 11 on Windows, Metal on macOS, wgpu/WGSL on Linux — and ships in all three builds. The Linux one encodes in software rather than on the GPU, so an export there takes longer than the same one on Windows or macOS; hardware encode is tracked on the roadmap.
Next: Quick start walks through your first recording.