blobdrop icon indicating copy to clipboard operation
blobdrop copied to clipboard

Drag and drop files directly out of the terminal

Blobdrop

Continuous Integration

Drag and drop your files directly from the terminal.

https://github.com/vimpostor/blobdrop/assets/21310755/1957b6a7-475c-4930-80b9-18564ef39eb9

Installation

Note: For Arch Linux users there is an AUR package, for Nix users there is a flake available. You can also download an AppImage from the latest release.

Building from source

Make sure you have a C++23 compiler and the latest Qt with the Declarative and Svg modules installed.

cmake -B build
cmake --build build

# install the build/blobdrop binary
cmake --install build

Usage

blobdrop [files-to-drag]

For more options see blobdrop -h or the man page blobdrop(1).

Features

  • Drag files to other applications
  • Pipe filenames asynchronously into stdin
  • Start drag automatically without a GUI
  • Hide the parent terminal emulator while dragging
  • Automatically quit once all paths have been dragged
  • Auto-hide the GUI while dragging
  • Show mime icons and thumbnails for media
  • Drag all files at once
  • Act as a sink and print dropped files to the terminal
  • Optionally keep the window on top
  • Quickly open files with a single click
  • Respect system dark mode
  • Shell completions

Frontends

Blobdrop implements multiple frontends to drag the files from:

Alternatives

  • dragon - A GTK implementation of the same concept
  • clidrag - A CLI-only implementation
  • ripdrag - Like dragon with GTK, but rewritten in Rust

Note that none of these alternatives provide a workflow similar to blobdrop's immediate frontend (except clidrag, but it lacks many UX improvements).