https://github.com/utensils/pasta
A cross-platform system tray application that converts clipboard content into simulated keyboard input, bridging the gap for applications that don't support direct clipboard pasting.
https://github.com/utensils/pasta
clipboard cross-platform keyboard-automation linux macos productivity-tools rust system-tray tauri-app text-automation utility windows
Last synced: 3 months ago
JSON representation
A cross-platform system tray application that converts clipboard content into simulated keyboard input, bridging the gap for applications that don't support direct clipboard pasting.
- Host: GitHub
- URL: https://github.com/utensils/pasta
- Owner: utensils
- License: mit
- Created: 2025-06-17T22:40:35.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-25T05:19:03.000Z (about 1 year ago)
- Last Synced: 2025-06-25T06:27:14.812Z (about 1 year ago)
- Topics: clipboard, cross-platform, keyboard-automation, linux, macos, productivity-tools, rust, system-tray, tauri-app, text-automation, utility, windows
- Language: Rust
- Homepage:
- Size: 3.29 MB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Pasta
[](https://github.com/utensils/pasta/actions/workflows/rust.yml)
[](https://github.com/utensils/pasta/actions/workflows/build.yml)
[](https://codecov.io/gh/utensils/pasta)
[](https://github.com/utensils/pasta/actions/workflows/license-check.yml)
A minimal system tray application that types your clipboard content. Perfect for situations where standard paste doesn't work.
## Installation
### Download Pre-built Binaries
Download the latest release from the [Releases page](https://github.com/utensils/pasta/releases).
#### GNOME Users - System Tray Support
GNOME removed native system tray support starting with version 3.26. To use Pasta on GNOME, you'll need to install an extension:
**Option 1: Install via package manager (recommended)**
```bash
# Ubuntu/Debian
sudo apt install gnome-shell-extension-appindicator
# Fedora
sudo dnf install gnome-shell-extension-appindicator
# Arch
sudo pacman -S gnome-shell-extension-appindicator
```
**Option 2: Install from GNOME Extensions website**
1. Visit [AppIndicator Support](https://extensions.gnome.org/extension/615/appindicator-support/)
2. Click "Install" and follow the prompts
3. Enable the extension in GNOME Extensions or Tweaks
After installation, restart GNOME Shell (Alt+F2, type 'r', press Enter) or log out and back in.
### Run with Nix
If you have Nix installed, you can run Pasta directly without installing:
```bash
nix run github:utensils/pasta
```
#### macOS Users - Important Notes
**1. Accessibility Permissions Required**
Pasta requires accessibility permissions to simulate keyboard input:
1. Open **System Preferences → Security & Privacy → Privacy → Accessibility**
2. Click the lock icon to make changes (enter your password)
3. Add Pasta.app by clicking the "+" button or drag it into the list
4. Ensure the checkbox next to Pasta is checked
If Pasta doesn't type anything when you click "Paste", this is usually the issue.
**2. Unsigned Build Warning**
The macOS builds are currently unsigned. To run Pasta on macOS, you'll need to remove the quarantine attribute:
**Using Terminal (Recommended):**
```bash
# After installing Pasta.app to Applications folder
xattr -d com.apple.quarantine /Applications/Pasta.app
```
This command removes the quarantine flag that macOS adds to downloaded applications. You only need to run this once.
**Alternative Methods:**
- **Right-click Method**: Right-click on Pasta.app and select "Open" (may not work on all systems)
- **System Settings**: Check System Settings > Privacy & Security for "Open Anyway" option
### Build from Source
```bash
# Prerequisites
# - Rust 1.70+
# - Platform-specific dependencies (see Tauri docs)
# Clone and build
git clone https://github.com/utensils/pasta.git
cd pasta
cargo install tauri-cli --version '^2.0.0' --locked
cargo tauri build
```
## Usage
1. Launch Pasta - appears in system tray
2. Copy text normally (Ctrl+C/Cmd+C)
3. Click "Paste" in tray menu to type it out
### Cancelling Typing
To instantly stop typing:
- **Click the tray icon** during a paste operation, or
- Click "Cancel Typing" in the tray menu
## Known Issues
### iDrac Console Compatibility
On non-Windows systems, numbers may not type correctly in iDrac consoles and some remote desktop environments. Spaces have been fixed and should work correctly. This is due to limitations in the keyboard emulation library where number key codes are only available on Windows.
## Development
```bash
# Run in development mode
cargo tauri dev
# Run tests
cargo test --lib
# Using Nix (recommended)
nix develop
menu # Shows all available commands
```
## License
MIT License - see [LICENSE](LICENSE) file for details.