nautilus-open-any-terminal
is an extension for nautilus, which adds an context-entry for opening other terminal emulators than gnome-terminal.
Supported file managers
- Nautilus
- Caja
Supported Terminal Emulators
The following terminal emulators are fully supported. PRs for other terminals are welcome!
alacrittyapp2unit-termblackbox( useblackbox-terminalfor Debian)bobcatcool-retro-termcontourcosmic-termdeepin-terminalddtermfoot/footclientghostty(requiresgtk-single-instance = falsein the Ghostty config, otherwise the working directory flag is ignored by a running instance)gnome-terminalguakekermitkgx(GNOME Console)kittykonsolemate-terminalmltermptyxisqterminalriosakurasttabbyterminatorterminologyterminustermitetilixurxvturxvtcuwsm-terminalwarpweztermxfce4-terminalxterm/uxterm
Additionally, the terminal can be set to custom, which allows you to set custom commands for opening a local or remote terminal via dconf.
Installing
From the AUR (Arch Linux) 
yay -S nautilus-open-any-terminal
Nixpkgs (NixOS) 
For configuration.nix (works without needing to enable Gnome DE)
programs.nautilus-open-any-terminal = {
enable = true;
terminal = "kitty";
};
environment.systemPackages = with pkgs; [
nautilus
];
From PYPI 
Dependencies to install before:
nautilus-python(python-nautilus/python3-nautilus(newer) package on Debian / Ubuntu)gir1.2-gtk-4.0(Debian / Ubuntu)typelib-1_0-Gtk-4_0(openSUSE)
User install:
pip install --user nautilus-open-any-terminal
System-wide install:
pip install nautilus-open-any-terminal
For Debian/Ubuntu based Distros
Download the '.deb' package from the GitHub releases page. Debian packages are automatically built and attached to each release via CI.
After downloading, install it with the apt command:
apt install <package_name>.deb
Or depending on your Linux Distro, you can just double-click the '.deb' file and install it that way.
For Fedora Copr
dnf copr enable monkeygold/nautilus-open-any-terminal
dnf install nautilus-open-any-terminal
From source
Requires gettext.
git clone https://github.com/Stunkymonkey/nautilus-open-any-terminal.git
cd nautilus-open-any-terminal
make
make install schema # User install
sudo make install schema # System install
install installs this extension to extension directories of all supported file managers. To avoid this, use install-nautilus or install-caja instead.
make install-nautilus schema # Install nautilus only
make install-caja schema # Install caja only
restart nautilus
Then kill Nautilus to allow it to load the new extension:
nautilus -q
Settings
To configure the plugin's behaviour make sure to run (system-wide):
glib-compile-schemas /usr/share/glib-2.0/schemas
or for (user-wide) installation:
glib-compile-schemas ~/.local/share/glib-2.0/schemas/
via dconf-editor
via command-line
Each setting can be changed independently. Adjust the values to your liking:
gsettings set com.github.stunkymonkey.nautilus-open-any-terminal terminal alacritty # your terminal app, e.g. terminator, gnome-terminal, kitty
gsettings set com.github.stunkymonkey.nautilus-open-any-terminal keybindings '<Ctrl><Alt>t' # GTK accelerator syntax; keep the angle brackets literal
gsettings set com.github.stunkymonkey.nautilus-open-any-terminal new-tab true # true or false
gsettings set com.github.stunkymonkey.nautilus-open-any-terminal flatpak system # system, none, or the flatpak app id
Uninstall
Since setup.py does not provide a natively uninstall method the Makefile has an uninstall option.
make uninstall schema # user uninstall
sudo make uninstall schema # system uninstall
Release files for nautilus-open-any-terminal 0.8.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| nautilus_open_any_terminal-0.8.3.tar.gz | 175.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nautilus_open_any_terminal-0.8.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 323.7 kB
Release files / nautilus_open_any_terminal-0.8.3.tar.gz
| Download URL | nautilus_open_any_terminal-0.8.3.tar.gz |
|---|---|
| Size | 175.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f8bf4477063e5c9f9af02a0792c6815a699cc219245a0327efe7bbe4557b9969
|
|
BLAKE2b-256 checksum How to use checksums |
88d5e20efa39b4ae86a52f14b0e8aed3c499541dad632d2b5d5575a237c9b2e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 27, 2026.
Transparency logRelease files / nautilus_open_any_terminal-0.8.3-py3-none-any.whl
| Download URL | nautilus_open_any_terminal-0.8.3-py3-none-any.whl |
|---|---|
| Size | 148.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7856df15b3608382d65d11754611e0193e1868489b3a9e9535f0bb85b7c61ccf
|
|
BLAKE2b-256 checksum How to use checksums |
a5323ab3352f90510e29bb5e9fc2bb2668ccfe2410b6f4265c33b9a214e51d11
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 27, 2026.
Transparency log