Omahub
← All plugins
C

DeepL Clipboard

by Carlos Bay-Schmith

Open a compact DeepL window and translate plain-text clipboard contents.

Security review

No obvious issues detected

Deterministic scan — not a security guarantee

None
Risk level
None
Analyzed commit
c43db86
Scanned
1 month ago

No potentially dangerous behavior detected in the analyzed commit.

Automated analysis only — not a security guarantee.

AI advisory review

No obvious issues detected

Language-model assessment · ~deepseek/deepseek-v4-flash-latest — advisory only

Low
AI risk level
Low
Recommendation
install
Model
~deepseek/deepseek-v4-flash-latest
Analyzed commit
c43db86
Reviewed
1 month ago

The plugin is a straightforward clipboard-to-DeepL translator with careful security practices: it validates file ownership/modes, uses O_NOFOLLOW, caps input sizes, and clears the request file after reading. No obfuscation, persistence, or destructive behavior was found; the only data exposure is the intended transmission of clipboard text to DeepL, which is clearly disclosed in the README.

  • Clipboard text is sent to DeepL's servers when the user triggers translation; this is the plugin's stated purpose and is disclosed, but users should be aware their clipboard contents leave the machine.
  • The plugin relies on a persistent Electron profile that stores DeepL login cookies under ~/.local/share/deepl-omarchy; this is disclosed and optional.
How this check works

This review combines the deterministic scan (the rule-based results above) with an independent look at the plugin's code by a language model. The model reads a trimmed sample of the repository's files, the manifest, and the README, then gives a plain-language risk level and a recommendation: install (no notable danger), review (look closer first), or avoid (clearly dangerous).

It runs on the same analyzed commit as the deterministic scan and is strictly advisory — it is not a security guarantee and never blocks a plugin by itself. A human moderator still reviews plugins before they are listed.

AI advisory only — automated analysis, not a security guarantee.

Install
$ omarchy plugin add https://github.com/cbayschm74/deepl-omarchy --enable
Productivity #bar #quickshell #ai

DeepL Clipboard for Omarchy

An unofficial clipboard translator that integrates the DeepL web translator with the Omarchy desktop. Copy text, press Ctrl+Alt+C or click the bar icon, and the text is inserted into a compact, floating translator window.

DeepL Clipboard translating Spanish to English

The client follows the active Omarchy light or dark palette, preserves a private DeepL login session, and uses the system Electron runtime. It is built for Wayland and does not depend on Go, GTK WebKit, xsel, or xdotool.

Features

  • Reuses one centered, floating translator window.
  • Reads the clipboard only when explicitly launched.
  • Accepts only advertised plain-text clipboard formats; images and other binary formats open an empty translator instead of being submitted.
  • Supports clipboard text from browsers and other Wayland applications.
  • Preserves DeepL login cookies in a private application profile.
  • Applies the current Omarchy color palette, including styled scrollbars.
  • Hides the surrounding website for a compact translator-focused view.
  • Provides an Omarchy bar widget and works with a Hyprland shortcut.
  • Press Ctrl+Shift+M in the translator to toggle the full DeepL page.

Requirements

  • Omarchy with Hyprland and the Omarchy shell
  • Electron (electron43 is preferred and tested; electron is also detected)
  • wl-clipboard
  • libnotify (used only when clipboard text cannot be read)

Install

Install and enable the plugin from its public GitHub repository:

omarchy plugin add https://github.com/cbayschm74/deepl-omarchy --enable

The plugin is self-contained in Omarchy's user plugin directory. Move it to the desired bar section if needed:

omarchy bar move io.github.cbayschm74.deepl-clipboard --section right

Add the keyboard shortcut to ~/.config/hypr/bindings.lua:

o.bind(
  "CTRL + ALT + C",
  "Translate clipboard with DeepL",
  os.getenv("HOME") .. "/.config/omarchy/plugins/io.github.cbayschm74.deepl-clipboard/launch.sh"
)

Add the floating window rule to ~/.config/hypr/hyprland.lua:

o.window("^deepl-omarchy$", {
  float = true,
  center = true,
  size = { 1100, 760 },
})

Reload and validate Hyprland after editing its configuration:

hyprctl reload
hyprctl configerrors

Account and first use

A DeepL account is not technically required for ordinary translation, but DeepL may present repeated human-verification challenges to logged-out embedded browsers. Signing in is therefore recommended for a smoother experience.

The first launch with a new profile shows the complete DeepL page so free and paid users can sign in through DeepL's normal login flow. Press Ctrl+Shift+M to switch between the complete page and compact translator at any time. The account session remains available between launches in ~/.local/share/deepl-omarchy.

Remove

Remove the plugin with:

omarchy plugin remove io.github.cbayschm74.deepl-clipboard

Remove the keyboard shortcut and window rule you added to the Hyprland files, then reload Hyprland. To also forget the optional DeepL login, close the translator and remove ~/.local/share/deepl-omarchy.

Privacy and security

Clipboard text is handed to Electron through a mode-0600 request file under the current user's Wayland runtime directory. Electron copies it into memory and immediately clears the text from that file. Requests larger than 1 MiB are discarded before Electron starts, and the translator opens empty. Clipboard contents are not logged. Clipboard helpers have fixed deadlines, and Electron opens request and theme files without following symbolic links, validates the opened descriptor, and caps bytes before UTF-8 decoding. Theme values are restricted to the supported light/dark modes and hexadecimal colors.

The persistent browser profile is stored outside the repository at ~/.local/share/deepl-omarchy. Never commit that directory. Text submitted for translation is processed by DeepL under DeepL's own terms and privacy policy.

Acknowledgements

This project was inspired by Kumakichi's archived Deepl-linux project and its MIT-licensed Electron successor. Thank you to Kumakichi for the original Linux clipboard-translation workflow.

No source code or assets from the archived Go repository are included in this project.

Disclaimer

This is an unofficial community project. It is not affiliated with, endorsed by, or sponsored by DeepL SE. DeepL is a trademark of DeepL SE.

License

MIT. See LICENSE.