Skip to content

A modern Nautilus (GNOME Files) Python extension and standalone GTK4/libadwaita app to compute hashes for files and folders, with a beautiful UI and clipboard integration.

License

Notifications You must be signed in to change notification settings

dd-se/nautilus-extension-quick-file-hasher

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quick File Hasher Logo

Quick File Hasher

Verify your files with speed and confidence.

Quick File Hasher is a modern Nautilus (GNOME Files) extension and standalone GTK4/libadwaita application for computing file hashes, featuring a polished UI and seamless clipboard integration.

Features

  • Nautilus context menu integration: Right-click files/folders and select "Quick File Hasher".
  • Modern GTK4/libadwaita UI: Responsive, animated, and user-friendly interface.
  • Batch Processing: Quickly calculate hashes for multiple files and folders in parallel.
  • Copy/Compare: Copy results to clipboard or compare file hash with clipboard contents.
  • Progress bar & cancel: See progress and cancel long jobs.
  • Drag & Drop: Drop files/folders into the app.

Installation

  1. Install dependencies:
#Ubuntu
sudo apt-get install python3-nautilus
#Arch Linux
sudo pacman -S nautilus-python
#Fedora
sudo dnf install nautilus-python
  1. Copy the extension manually:
mkdir -p ~/.local/share/nautilus-python/extensions
cp quick-file-hasher-app.py ~/.local/share/nautilus-python/extensions/
  1. Or use the Makefile for easy install:
make install
  1. Restart Nautilus:
nautilus -q

Usage

  • From Nautilus:
    • Select files/folders, right-click, and select "Quick File Hasher".
  • From command-line:
    • Run directly: python3 quick-file-hasher-app.py [file1] [file2] [folder1] ...
  • From overview:
    • After running make install, a desktop shortcut will be created. You can then launch the app from your system application overview. (Press the Super key and search for "Quick File Hasher")
  • Drag-and-drop:
    • Drag files/folders into the app window to compute their hashes.
  • Filter results:
    • Click the search icon in the header bar or press Ctrl+F to show the search bar. Filter results instantly as you type.
  • Multi-Hash:
    • This feature enables selection of additional hashing algorithms for the given file.

Arguments

You can also run the app with additional command-line arguments for more control:

python3 app.py [file1] [file2] ... [folder69] [--recursive] [--gitignore] [--max-workers 4] [--algo sha256]

Type --help for more information.

Preferences

The Preferences dialog allows you to customize the application's behavior.

  • Recursive Traversal
    • Enable this to process files within subdirectories.
  • Respect .gitignore
    • When enabled, files and folders listed in the .gitignore file will be skipped.
  • Max Workers
    • Sets the maximum number of parallel hashing operations. Adjust this value to optimize performance based on your systems capabilities.
  • Hashing Algorithm
    • Select the default hashing algorithm from the list.
    • Available options include (hashlib): md5, sha1, sha256, sha512, blake2b, blake2s and more. The default is sha256.
  • Output Style
    • Select the output format for checksum display.
    • Available options are the app’s default style, sha256sum, and BSD.

Note: Changes to these settings are only saved across sessions when the Persist button is clicked. Additionally, command-line arguments can override these preferences at startup.

Screenshot

demo

Uninstall

  1. Remove the extension manually:
rm ~/.local/share/nautilus-python/extensions/quick-file-hasher-app.py
  1. Or use the Makefile for easy uninstall:
make uninstall
  1. Restart Nautilus:
nautilus -q

Tested Platforms

This extension has been tested on:

  • Ubuntu 24.04 LTS
  • Ubuntu 25.04
  • Fedora 42
  • CachyOS

License

MIT

About

A modern Nautilus (GNOME Files) Python extension and standalone GTK4/libadwaita app to compute hashes for files and folders, with a beautiful UI and clipboard integration.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published