How to Take Screenshots and Record Your Screen on Fedora

Use gnome-screenshot for images and simple-screencast for recording on Fedora.

You need a screenshot or a recording, and the defaults confuse you

You are reporting a bug to a GNOME developer and need a screenshot of the error dialog. Or you just want to capture a terminal session to share with a colleague. You hit the Print Screen key and a selection rectangle appears, but you wanted the whole screen. Or you try to record your screen and find the shortcut missing. Fedora ships with tools that handle both tasks, but the defaults have shifted over time, and the keyboard shortcuts depend on your desktop environment. The interactive screenshot tool is now the standard. The command-line tool is deprecated. Screen recording requires an extension that is not enabled by default.

What's actually happening

Fedora Workstation uses GNOME. GNOME used to include a command-line tool called gnome-screenshot and a built-in screen recorder. The project moved away from those. The screenshot tool is now an interactive GUI that launches on keypress. The command-line tool is deprecated. Screen recording is no longer in the core shell. It lives in a separate extension called simple-screencast. This keeps the core desktop lighter and lets users opt into recording features. The PrtScn key triggers the screenshot tool. The recording shortcut depends on whether the extension is installed and enabled.

GNOME enforces a security model where apps cannot silently capture the screen. The screenshot tool acts as a portal client. When you press the key, the shell presents the overlay. You confirm the capture. The tool saves the file to your user directory. This prevents malicious apps from stealing sensitive data. The recording extension follows the same pattern. It requires user interaction to start. The extension uses GStreamer pipelines to capture the display buffer and audio streams. GStreamer is the multimedia framework behind most Linux video tools.

How to take screenshots

Interactive tool

The interactive tool is the recommended way to capture images on modern Fedora. It supports full screen, window, and selection modes. It saves directly to ~/Pictures. The tool remembers your last used mode.

Here is how to trigger the screenshot tool using keyboard shortcuts. The tool saves to ~/Pictures by default.

# Press PrtScn to open the interactive screenshot overlay.
# The overlay lets you choose between window, selection, or full screen.
# Press Enter to capture. The file saves to ~/Pictures automatically.

The overlay includes a mode button. Click the button to cycle through capture modes. The window mode captures the focused window. The selection mode lets you drag a rectangle. The full screen mode captures everything. You can also click the save button to choose a custom location. The default filename includes the timestamp.

Command-line options

If you need to capture the screen from a script, the interactive tool won't help. You can use the legacy command, but check if it exists on your version. Newer Fedora releases may have removed the package.

Here is how to check if the legacy CLI tool is available on your system.

# Check if the legacy CLI tool is available.
# Newer Fedora versions may have removed this package.
which gnome-screenshot || echo "gnome-screenshot not found"

If the tool is present, you can use it for automation. The flags control the capture mode and output file. The command is deprecated in GNOME 44+. Use the interactive tool or install scrot for scripts on modern systems.

Here is how to capture the full screen to a specific file using the legacy tool.

# Capture the full screen to a specific file using the legacy tool.
# This command is deprecated in GNOME 44+. Use the interactive tool or install scrot for scripts.
gnome-screenshot -f ~/Pictures/bug-report.png

For reliable CLI automation on modern Fedora, install scrot. It is a standalone utility that does not depend on GNOME libraries. It supports delays, selection modes, and custom formats.

Here is how to install scrot for command-line screenshot automation.

# Install scrot from the Fedora repository.
# scrot is a lightweight tool that works on X11 and Wayland.
sudo dnf install scrot

Here is how to capture a region using scrot with a delay.

# Capture a region using scrot with a 2-second delay.
# The -s flag enables selection mode. The delay gives time to position the cursor.
scrot -s -d 2 ~/Pictures/region.png

The delay is useful for capturing transient dialogs or menus. The selection mode lets you define the area after the delay starts. scrot saves the file immediately. It does not open a GUI.

Reboot before you debug. Half the time the symptom is gone.

How to record your screen

Install and enable

Fedora does not ship the screen recorder by default. You need the simple-screencast extension. The extension provides the GNOME Shell integration and the command-line tool.

Here is how to install the simple-screencast package.

# Install the simple-screencast extension package.
# This provides the GNOME Shell extension and the CLI tool.
sudo dnf install simple-screencast

The package installs the extension files. The extension is not enabled automatically. You must enable it for your user session. The extension will not work until this command runs.

Here is how to enable the recording extension for your user.

# Enable the extension for your user session.
# The extension ID must match exactly. Case sensitivity matters.
gnome-extensions enable simple-screencast@gnome-shell-extensions.gcampax.github.com

The extension ID is long. Copy it carefully. You can also enable the extension using the GNOME Extensions app. The CLI is faster for scripts. The extension adds a recording indicator to the top bar. It also registers the Ctrl+Alt+R shortcut.

Recording commands

Once enabled, you can start recording using the shortcut or the command line. The command line gives you control over the output file and audio.

Here is how to start recording the screen to a file in the Videos directory.

# Start recording the screen to a file in the Videos directory.
# The tool uses GStreamer pipelines under the hood to capture the display stream.
simple-screencast -o ~/Videos/demo.mp4

The command blocks the terminal. The recording runs until you stop it. You can stop the recording by sending an interrupt signal. The file is finalized and saved immediately upon interruption.

Here is how to stop the recording from the terminal.

# Stop the recording by sending the interrupt signal.
# Press Ctrl+C in the terminal where simple-screencast is running.
# The file is finalized and saved immediately upon interruption.

You can also capture audio. The tool uses Pipewire to grab the audio stream. Fedora uses Pipewire as the default audio server. The -a flag enables audio capture.

Here is how to record screen and system audio to a file.

# Record screen and system audio to a file.
# The -a flag enables audio capture. The tool uses Pipewire to grab the audio stream.
simple-screencast -a -o ~/Videos/tutorial.mp4

Audio capture works best when the system is idle. High CPU load can cause audio glitches. The recording format is MP4 by default. The codec is usually H.264 or VP8 depending on your hardware.

Check the file size before sending. A zero-byte MP4 tells the developer nothing.

Verify the results

After capturing a screenshot or recording a video, verify the output. The file should exist and have a non-zero size. The extension should be enabled if you plan to record again.

Here is how to list the latest files in Pictures to confirm the screenshot saved.

# List the latest files in Pictures to confirm the screenshot saved.
# The output shows the filename, size, and timestamp.
ls -lt ~/Pictures | head -5

Here is how to verify the recording extension is active.

# Verify the recording extension is active.
# The output should show "enabled" for simple-screencast.
gnome-extensions list | grep simple-screencast

If the extension shows as disabled, enable it again. The state can reset after a shell update. You can also check the file size of the recording. A zero-byte file indicates the recording failed or was interrupted too early.

Run journalctl -xe first. Read the actual error before guessing.

Common pitfalls

If you run gnome-screenshot and get command not found, the package was removed in your Fedora release. Use the interactive tool or install scrot. If the recording shortcut Ctrl+Alt+R does nothing, the extension is likely disabled. Run gnome-extensions list. If you see simple-screencast but it says disabled, enable it.

On Wayland, some third-party tools fail to capture the screen. simple-screencast is Wayland-aware. Stick to it for reliability. Tools like recordmydesktop or ffmpeg with x11grab do not work on Wayland. The Wayland protocol restricts screen capture for security. Apps must use the portal or a compositor-supported method.

Audio recording can fail if Pipewire is misconfigured. If you see GStreamer error: could not link elements, check your GStreamer plugins. Install the good and bad plugins if missing.

Here is how to install additional GStreamer plugins if recording fails.

# Install GStreamer plugins for better codec support.
# Some codecs require the "bad" or "ugly" plugin packages.
sudo dnf install gstreamer1-plugins-good gstreamer1-plugins-bad-free

The simple-screencast tool may also fail if the output directory does not exist. Create the directory before recording. The tool does not create parent directories automatically.

Trust the package manager. Manual file edits drift, snapshots stay.

When to use each tool

Use the interactive screenshot tool when you need a quick capture and want to select a region or window. Use gnome-screenshot when you are maintaining a legacy script on an older Fedora release. Use scrot when you need a lightweight CLI tool for automation on modern systems. Use simple-screencast when you want a simple recording with minimal configuration. Use OBS Studio when you need to record multiple sources, add overlays, or stream to a service.

Where to go next