Nautilus Python Extensions
A collection of productivity-focused Python extensions for Nautilus (GNOME Files), adding powerful tools directly into the right-click context menu.
Quick install via PPA (Ubuntu / Zorin OS / Mint)
The easiest way โ packages are signed, auto-updated through apt, and properly handle dependencies.
sudo add-apt-repository ppa:nourpon/nautilus-extensions
sudo apt update
# Install everything at once
sudo apt install \
nautilus-dual-panel \
nautilus-extensions-manager \
nautilus-archive-browser \
nautilus-extract-here \
nautilus-annotate-image \
nautilus-compress-pdf \
nautilus-merge-pdf \
nautilus-watermark-pdf \
nautilus-preview-panel \
nautilus-deb-installer \
nautilus-search-content \
nautilus-video-to-audio \
nautilus-duration-column \
nautilus-cut-dim \
nautilus-edit-gedit \
nautilus-folder-color-revival \
nautilus-hidden-dim-icon
# (or nautilus-hidden-dim-all instead of -icon)
# Extensions activate at next login โ or run this now to enable them immediately:
nautilus-extensions-tof-link
# Restart Nautilus
nautilus -q
You can also install individual packages โ
aptwill pull only what each one needs.
Extensions
| Extension | Package | Description |
|---|---|---|
nautilus-dual-panel |
Double-pane file manager inside Nautilus | |
nautilus-extensions-manager |
Enable/disable extensions on the fly | |
nautilus-archive-browser |
Browse, extract and create archives | |
nautilus-extract-here |
Fast extraction (7z, rar, zipโฆ) with multi-volume & password | |
nautilus-annotate-image |
Full-featured PNG annotation editor | |
nautilus-compress-pdf |
PDF compression via Ghostscript | |
nautilus-merge-pdf |
Merge multiple PDFs into one | |
nautilus-watermark-pdf |
Secure watermarking with flattening | |
nautilus-preview-panel |
Dynamic file preview panel | |
nautilus-deb-installer |
Visual .deb installer with real-time output |
|
nautilus-search-content |
Real text search & replace using grep/ripgrep | |
nautilus-video-to-audio |
Extract audio from videos (MP3, M4A, OGG, OPUS, FLAC, WAV) | |
nautilus-duration-column |
Duration column for audio/video files | |
nautilus-cut-dim |
Visual dimming of cut (Ctrl+X) files | |
nautilus-edit-gedit |
Open text files directly in Gedit | |
nautilus-folder-color-revival |
Color & emblem tagging for folders | |
nautilus-hidden-dim-icon |
Dim only the icon of hidden files | |
nautilus-hidden-dim-all |
Dim icon + label of hidden files | |
nautilus-extensions-tof-common |
Shared linker script (installed automatically) |
All extensions support French
ยท English
ยท German
.
Manual installation (advanced)
If you prefer not to use the PPA, you can install extensions manually:
Prerequisites
sudo apt install \ python3-nautilus \ python3-gi \ gir1.2-gtk-4.0 \ gir1.2-adw-1 \ gir1.2-nautilus-4.0 \ ghostscript \ ffmpeg \ python3-pypdf \ python3-cairo \ p7zip-full \ unrar \ poppler-utils
Install
git clone GitHub - ToFpon/Nautilus-Extensions: Nautilus Extensions ยท GitHub cd Nautilus-Extensions mkdir -p ~/.local/share/nautilus-python/extensions/ cp *.py ~/.local/share/nautilus-python/extensions/ rm -rf ~/.local/share/nautilus-python/extensions/pycache nautilus -q
Architecture (PPA version)
All packages install scripts into a dedicated namespace:
/usr/share/nautilus-extensions-tof/ โ system install (PPA)
โโโ dual-panel.py
โโโ archive-browser.py
โโโ extract-here.py
โโโ ...
~/.local/share/nautilus-python/extensions/ โ per-user (auto symlinks)
โโโ dual-panel.py โ /usr/share/nautilus-extensions-tof/dual-panel.py
โโโ ...
The shared nautilus-extensions-tof-common package handles symlink creation for every user at session start via xdg-autostart. This way the Extensions Manager can detect and toggle extensions per-user, while keeping system installation clean and shared.
If an extension is disabled (moved to ~/.local/share/nautilus-python/extensions/disabled/ by the manager), the link will not be recreated at next login โ your preference is respected.
Featured: Dual Panel
A complete dual-pane file manager living inside Nautilus, launched with F3 or via the right-click context menu.
Views (independent per panel):
List view โ Name ยท Size ยท Modified columns with sortable header- โ Grid view โ Large icons (48px) with filename, toggle button in toolbar
Smart integrations (auto-detected):
Extract Here button + context menu โ appears only if nautilus-extract-hereis installed AND all selected files are archives
Video to Audio button + context menu โ appears only if nautilus-video-to-audiois installed AND all selected files are videos
Hidden file dimming โ auto-applied if nautilus-hidden-dim-iconornautilus-hidden-dim-allis installed- Buttons appear in the bottom bar (after Move โ) to avoid layout shifts in the toolbar
File operations:
- Copy/Move between panels with rsync progress bar
- Drag & Drop support (intra and inter-panel)
- Native context menu (open, cut, copy, paste, rename, trash, delete, properties)
- F3 toggle to open/close the dual-panel window
- F7 to launch Archive Browser on selection
Navigation:
- Nautilus-style sidebar (favorites, bookmarks, mounted volumes)
- Native view mode sync with Nautilus preferences
- Cross-extension awareness (live re-detection of installed extensions)
Featured: Search & Replace
A reliable text content search and replace โ much more dependable than Nautilus' built-in search which relies on Tracker3 indexing. Two native tabs:
Search tab
- Uses grep (always available) or ripgrep for speed (if installed)
- Filterable by file extensions (
py,txt,md, etc.) - Recursive or current folder only
- Case sensitive / regex options
- Skips binary files and heavy folders (
.git,node_modules,__pycache__) - Threaded search โ UI stays responsive
- Double-click to open file, right-click for context menu
Search & Replace tab
- Live preview of every change: old text struck through in red โ new text in green
- Per-line checkboxes โ select exactly which occurrences to replace (master check-all in header)
- Confirmation dialog before writing, showing the number of affected files
- Automatic
.bakbackup of each modified file - Line-precise replacement (only checked lines are touched)
- Native toast confirmation after applying
- Current folder shown in both tabs
- Launchable anywhere with F8
Optional: faster search with ripgrep
sudo apt install ripgrep
Featured: Video to Audio
Batch audio extraction from video files with ffmpeg.
- 6 output formats: MP3, M4A, OGG, OPUS, FLAC, WAV
- 4 quality levels: 320 / 192 / 128 kbps, or stream copy (no re-encoding)
- Real-time progress bar with percentage (parsed from ffmpeg output)
- Per-file status indicator โ / โ
- Destination folder selector
- Cancel button kills the ffmpeg process group cleanly
Featured: Deb Installer
Visual installer for .deb packages โ perfect for users migrating from Windows.
- Right-click any
.debfile โ Install package - Displays name, version, description
- Automatic dependency check โ lists missing packages before install
- Real-time scrollable terminal output, color-coded
- Authentication via
pkexec(graphical password prompt)
Featured: Archive Browser
A complete archive manager replacing file-roller entirely.
- Supports ZIP, 7z, RAR, TAR, GZ, BZ2, XZ, CAB, ISO, and many more
- Multi-volume 7z (
.001,.002...) and multi-volume RAR - Password-protected archives with prompt
- Collapsible tree view, smart cache, selective extraction
- Native GTK4 drag & drop
- Create new archives from selected files
Featured: Extract Here
Streamlined archive extraction without opening file-roller.
- Right-click any archive โ Extract here
- Supports ZIP, 7z, RAR, TAR, GZ, BZ2, XZ, CAB, ISO and many more
- Multi-volume 7z (
.001,.002...) and multi-volume RAR - Password-protected archive detection with prompt
- Real-time extraction progress dialog
- Auto-detection of single-file vs folder archives
Featured: Annotate Image
A lightweight image annotation tool โ no need to open GIMP for quick marks.
- Right-click any PNG/JPG โ Annotate
- Draw arrows, rectangles, ellipses, lines, freehand
- Add text annotations with custom font and size
- Color picker with theme integration
- Adjustable stroke width
- Undo/redo
- Save in place or as new file
PDF tools
Three complementary tools for everyday PDF tasks, all powered by Ghostscript or pypdf.
Compress PDF
- 4 quality presets (screen, ebook, printer, prepress)
- Real-time size comparison (before/after)
- Batch compression
- OCR preprocessing with deskew + erosion/dilation (via ImageMagick + Tesseract)
Merge PDF
- Multi-file selection from Nautilus
- Drag-and-drop reordering
- Per-file page selection
- Output filename customization
Watermark PDF
- Text watermark with custom font, size, color and opacity
- Image watermark from file
- Position options (center, corners, tiled)
- Rotation angle adjustment
- Per-page or all-pages application
- Output flattening for security
Featured: Preview Panel
A dynamic side preview for selected files โ see before you open.
- Image previews (PNG, JPG, WEBP, AVIF, etc.)
- Video thumbnails via
ffmpegthumbnailer - PDF first page preview
- Text file content preview
- Toggle via context menu
Featured: Hidden File Dimming
Two complementary extensions (install only one) to reduce visual clutter when "Show hidden files" is enabled in Nautilus.
| Variant | Effect |
|---|---|
nautilus-hidden-dim-icon |
Dim only the icon |
nautilus-hidden-dim-all |
Dim both icon and label |
Both share the same engine:
- Event-driven via
GFileMonitorfor instant updates - Lightweight โ minimal CPU usage
- Smart guard against redundant opacity changes
- Auto-detected by Dual Panel for consistent display
Featured: Extensions Manager
A central hub to manage all the other extensions without manually moving files.
- List all installed extensions (active and disabled)
- Enable/disable each extension with a single click
- Auto-resize window based on extension count
- Restart Nautilus button to apply changes instantly
- Respected by
nautilus-extensions-tof-linkโ disabled extensions stay disabled across reboots
Hidden gems
nautilus-cut-dimโ visually dims items cut withCtrl+Xso you don't forget what's in the clipboardnautilus-duration-columnโ adds a sortable Duration column (HH:MM:SS) for audio/video files viaffprobenautilus-folder-color-revivalโ revive the classic folder colorizer; works on modern Nautilus 46+nautilus-edit-geditโ one-click open text files in Gedit (filtered by extension to avoid clutter)
Keyboard shortcuts
When the corresponding extension is installed, these shortcuts are available globally from Nautilus:
| Shortcut | Action | Extension |
|---|---|---|
| F3 | Open Dual Panel | nautilus-dual-panel |
| F4 | Toggle Preview Panel | nautilus-preview-panel |
| F7 | Open Archive Browser on selection | nautilus-archive-browser |
| F8 | Open Search Content in the current directory | nautilus-search-content |




