applet · v1.4.0 · GPL-2.0+

Panel Profiles

Save a panel layout by name. Restore it exactly.

Version
1.4.0
Kind
applet
License
GPL-2.0-or-later
Panel Profiles applet screenshot
Panel Profiles on the desktop

Why this exists

Why this exists

Cinnamon usually remembers your panels. It forgets in one specific place: a multi-head VM where the second virtual display appears after Cinnamon has already started. You reboot, Cinnamon comes up with one monitor, and by the time the second head arrives the second panel and its applets are gone. You rebuild it by hand. Every single reboot.

Set the panels up once, save the layout, restore it with one click.

Panel Profiles fixes that, and it doubles as a general layout manager. Keep a Minimal profile, a Development profile, a Presentation profile, and flip between them on purpose.

The short version of using it: save, break it, restore.

  1. Arrange your panels and applets the way you want them.
  2. Choose Save current layout from the menu, name it, and tick Include desklets if the layout should carry them too.
  3. Change whatever you like: drag an applet, resize a panel, add one.
  4. Click the profile. It comes back exactly.

Nothing restores at boot. Cinnamon starts with whatever it last saved, and profiles apply only when you click them. Click one that expects more displays than are connected and the applet waits for them, up to your timeout, before restoring.

Every load is transactional. A rollback snapshot is written first, the profile is applied, the result is verified against what it should be, and a failed load undoes itself back to the snapshot. The menu also tells you when the live layout has drifted from the active profile, with an Update action to re-save it.

Profiles are plain JSON under ~/.config/cinnamon-panel-profiles/, written mode 0600 so only your user can read them. Treat them as private: a profile carries the raw configuration of every applet it references, and applet configs can hold account names or tokens.

applet v1.4.0 GPL-2.0+

Features

What it does

  1. Panels and applets in every profile; desklets optional
  2. Exact restore of what the profile includes
  3. Applies only on click; boot stays Cinnamon's own
  4. Modified detection with an Update action
  5. Rename, duplicate, and delete in settings
  6. Transactional loads with automatic rollback
  7. Restart Cinnamon and Configure in the menu
Panel Profiles settings window

How a restore runs

Save it, break it, restore it

The menu opens straight into your profiles. The active one sits bold with a check; when the live layout drifts from it, the row gains a Modified tag and the menu offers an Update.

  • CODING DUAL
  • WRITING SINGLE modified
  • VM LAB
  • CODING DUAL Active Panel
  • WRITING SINGLE Modified Panel
  • VM LAB Panel + desklets
  1. Apply The profile writes its saved layout to Cinnamon. Nothing happens until you click.
  2. Verify The result is checked against what the profile expects, panel by panel.
  3. Rollback if needed A snapshot is taken first. A failed load undoes itself, back to where you were.

Settings

Settings, straight from the schema

Panel Profiles

Profiles

Manage saved profiles Rename, duplicate or delete panel profiles
Displays and active profile

Restore

Stabilization delay Pause after displays settle
Display wait timeout Wait for missing displays before giving up

Notifications

Show successful restore notifications
Show warning and error notifications

Advanced

Enable debug logging Writes to ~/.xsession-errors

Fragment of the real settings window. Labels and defaults come from settings-schema.json.

Install

Add it to Cinnamon

No root needed. Everything lands in your home directory. The rm -rf before each copy is the upgrade path; your settings live elsewhere and survive.

curl -fLO https://github.com/RobertAlexanderH/cinnamon-panel-profiles-applet/releases/latest/download/cinnamon-panel-profiles-applet.zip
unzip cinnamon-panel-profiles-applet.zip
rm -rf ~/.local/share/cinnamon/applets/cinnamon-panel-profiles-applet@curbsoftware
cp -r cinnamon-panel-profiles-applet@curbsoftware/files/cinnamon-panel-profiles-applet@curbsoftware ~/.local/share/cinnamon/applets/cinnamon-panel-profiles-applet@curbsoftware
git clone https://github.com/RobertAlexanderH/cinnamon-panel-profiles-applet.git
cd cinnamon-panel-profiles-applet
rm -rf ~/.local/share/cinnamon/applets/cinnamon-panel-profiles-applet@curbsoftware
cp -r files/cinnamon-panel-profiles-applet@curbsoftware ~/.local/share/cinnamon/applets/cinnamon-panel-profiles-applet@curbsoftware

Restart Cinnamon (Alt-F2, type r, Enter), then add the applet from Cinnamon Settings.