This tool is designed to be used together with standalone wallpaper managers such as HydraPaper (for GNOME) or similar applications on other Linux desktop environments.
These apps let you assign a different wallpaper to each monitor.
By combining Dual Wallpaper Cropper with such an app, you can simulate the "Span across monitors" feature from Windows, where one large image is split and perfectly aligned across multiple monitors.
Dual Wallpaper Cropper is a simple GUI tool for Linux (X11) that lets you crop a single image into perfectly aligned wallpapers for a dual-monitor layout.
It ensures both monitors line up correctly by taking into account their physical sizes as well as their resolutions.
- T-shape (top + bottom)
- Side-by-side (left + right)
- Detects monitors automatically using
xrandr
- Enter real diagonal sizes (inches) to account for DPI differences
- GUI preview of crop areas
- Move crop areas with arrow keys
- Separate crops for top/left and bottom/right monitor
- Saves wallpapers using original filename + monitor name
e.g.sunset_HDMI-1.jpg
,sunset_DP-1.jpg
- Error handling with GUI dialogs
-
Place your input wallpapers in:
input_images/
-
Cropped wallpapers will be saved in:
output_images/
Example: if you load input_images/sunset.jpg
and have monitors named HDMI-1
and DP-1
, the results will be:
output_images/sunset_HDMI-1.jpg
output_images/sunset_DP-1.jpg
Clone the repo and install dependencies:
git clone https://github.com/yourusername/dual-wallpaper-cropper.git
cd dual-wallpaper-cropper
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
This tool requires Tkinter (for the GUI) and xrandr
(for monitor detection).
On Linux (X11), install them with:
- Debian/Ubuntu:
sudo apt install python3-tk x11-xserver-utils
- Fedora:
sudo dnf install python3-tkinter xrandr
- Arch Linux:
sudo pacman -S tk xorg-xrandr
Run the app directly:
python -m wallpapercropper.app
Steps:
- Place your wallpaper image in
input_images/
- Select it from the file dialog
- Enter the diagonal size (inches) for each monitor
- Choose layout (T-shape or Side-by-side)
- Adjust crop areas in the preview:
- Use the buttons to select Top/Left or Bottom/Right monitor
- Use the arrow keys to move the crop box
- Save wallpapers — they will appear in
output_images/
You can build a standalone binary with PyInstaller:
chmod +x build.sh
./build.sh
The binary will be in dist/dual-wallpaper-cropper
and can run on any Linux (X11) system without Python installed.
Run it with:
./dist/dual-wallpaper-cropper
This project is licensed under the MIT License — see the LICENSE file for details.