Skip to content

Repository files navigation

Omarchy Insta360 logo

Omarchy Insta360

Your Insta360 Link, directly from the Omarchy bar.

Stars License: MIT Omarchy 4.x Follow @nahime0 on X

Native Qt preview · Natural drag control · Full camera controls · Powered by linkctl

A native Omarchy Shell widget for previewing and controlling Insta360 Link webcams without leaving the desktop bar. Move the camera from the live image, manage framing presets, tune image controls, and switch video formats through a focused interface backed by linkctl.

Official Website


Install

Install linkctl manually first, then add the plugin:

omarchy plugin add https://github.com/illegalstudio/omarchy-insta360.git --enable

The widget is placed in the right section of the bar by default. Move an existing instance with:

omarchy bar move illegalstudio.omarchy-insta360 --section right

Remove

omarchy plugin disable illegalstudio.omarchy-insta360
omarchy plugin remove illegalstudio.omarchy-insta360

Removing the plugin does not remove linkctl. If you installed it through mise and no longer need it, remove it separately with mise unuse -g github:illegalstudio/linkctl.

Using the widget

Click the camera icon in the bar to open the panel. The live preview stays fixed at the top while the controls scroll underneath it.

  • Drag the preview naturally to adjust pan and tilt together. The image follows the pointer.
  • Pause or resume the embedded preview from its header.
  • Use the directional pad, absolute sliders, or W, A, S, D for framing.
  • Center the camera, change zoom, or enable experimental AI subject tracking.
  • Save, load, and delete named framing presets.
  • Control focus, white balance, brightness, contrast, saturation, sharpness, and hue.
  • Select a resolution, frame rate, and MJPEG or H.264 video format.
  • Right-click the bar icon to refresh camera state.

Natural preview dragging is disabled while AI tracking is active so the two controllers do not compete.

Native preview

The preview is rendered directly by Qt Multimedia. It does not require ffplay or mpv and is created only while the panel is open, so the camera is released as soon as the panel closes.

The embedded preview uses the resolution and frame rate currently reported by linkctl; it does not apply a separate lightweight format. Changing the configured camera output format briefly pauses and restarts the preview with the new values.

linkctl setup

Every camera operation goes through linkctl, which must be installed manually before using the camera controls. Follow its official installation instructions to choose and install a release.

The plugin discovers existing installations through PATH, mise which linkctl, and the standard mise installation directory. It does not download, install, or update dependencies, or change mise's security settings. If mise rejects a release as too recent, wait until it satisfies the configured minimum release age.

When linkctl is missing, the panel shows a notice with Installation instructions and Check again buttons. After installing it, click Check again or reopen the panel. Existing installations continue to work, including those installed through mise by earlier plugin versions. The former autoInstallLinkctl setting is no longer used, even if it remains in your saved widget settings.

Requirements

  • Omarchy 4 or newer with the current shell plugin system.
  • A manually installed linkctl executable.
  • An Insta360 Link webcam supported by linkctl.
  • Qt Multimedia, included with current Omarchy installations.
  • Camera device read and write permission for the active desktop session.

Configuration

Widget settings are stored by Omarchy in ~/.config/omarchy/shell.json.

Setting Default Purpose
previewEnabled true Start the embedded preview when the panel opens.
moveStepDegrees 5 Degrees moved by the directional buttons and keyboard shortcuts.
refreshIntervalSec 10 Interval for background camera state refreshes.

You can update a setting through Omarchy, for example:

omarchy bar set illegalstudio.omarchy-insta360 moveStepDegrees 10

Keyboard controls

When the panel has focus:

Key Action
W, A, S, D Move up, left, down, or right.
C Center the camera.
T Toggle AI tracking.
P Pause or resume the preview.
R Refresh camera state.
Esc Close the panel.

Development install

From an existing local checkout, expose the repository through the user plugin directory. Do not modify the packaged Omarchy files under /usr/share/omarchy.

ln -s "$PWD" "$HOME/.config/omarchy/plugins/illegalstudio.omarchy-insta360"
omarchy plugin enable illegalstudio.omarchy-insta360 --section right

Validate the manifest and run the bridge tests with:

make check

Safety

The bridge passes fixed argument arrays directly to linkctl and never invokes a shell. It validates every action, number, video format, and preset name before execution.

The plugin deliberately does not expose linkctl --force, so the inactive-camera safety guard remains active. Camera commands are asynchronous and coalesced to keep the Omarchy interface responsive during rapid slider or preview interactions.

See the linkctl Linux permissions documentation if the panel reports a device permission error.

License

MIT

About

A native Insta360 Link webcam widget for Omarchy: live preview, natural drag control, PTZ, tracking, presets, and image settings.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Sponsor this project

Packages

Contributors

Languages