7.0.0
The lock screen, power menu and password prompts now share the shell’s design. Notifications group by app, dropdowns share controls, and calendar and battery widgets adapt to the wallpaper. The launcher finds open windows, while Settings and uninstall handle navigation and restoration more reliably.
Fixed
- Settings ignores invalid page requests. Bad tab numbers fall back to About; longer help text is shorter and repeated Apply boilerplate is gone.
- Uninstall restores more of your desktop. GTK fonts are saved before installation changes them, the kept idle configuration returns to hyprlock, and the previous file manager is recorded before selecting Files. Uninstall restores those saved values, preserves a later file-manager choice, and restores hyprpolkitagent at login. Missing backups are reported instead of guessing your previous settings.
- Settings and the power menu open on the active workspace’s monitor. Moving to another monitor before opening either panel no longer leaves it on the previous one.
Added
- A “What’s new in 7.0” page after upgrading. Six short notes cover the lock, power menu, password prompts, notifications, dropdowns and widgets. It appears once; new installations keep the setup tour.
-
Papirus folders can follow the wallpaper accent. Enable it in Settings → Appearance after installing
papirus-foldersand running./install.sh --folder-helper. Reset restores the default folder colour and turns following off. The helper only accepts named colours for the three stock Papirus themes. - Find open windows in the launcher. Search an app or window title to see its open windows and workspaces above app launch results. Enter focuses the selected window.
-
A new lock screen, built into sea-shell. The lock is now
lock.qml, a Quickshell session lock that looks like the login screen it hands back to. It has two states:- Clock. Your clock in your profile font, the date, and the notifications that arrived while you were away, grouped by app. Each group shows the newest message and a count of the rest.
-
Unlocking. Any key or click switches to it. The wallpaper blurs and your picture, name and password field come up. Shown under the field, most urgent first: a wrong try (which also shakes the field and counts your tries), Caps Lock, PAM messages such as fingerprint prompts, and the keyboard layout when you have more than one.
Now playing, battery, and a power menu (suspend, restart, shut down) stay along the bottom in both states. Restart and shut down need a second click.
Settings → Profile shows a live preview of the lock with sample notifications. It also lets you choose how much of a notification the lock shows (all of it, only app names, or nothing) and switch back to hyprlock.
The lock checks your password with the same PAM stack hyprlock used, so faillock and fingerprint readers behave as before.
-
A redesigned power menu.
- Hold to confirm. Log out, restart and shut down are now held instead of pressed twice: a ring fills around the icon, and letting go early cancels. This works with the mouse or the letter key (hold R). Lock and suspend still act at once.
- What will close. For the three actions that end your work, the menu lists the apps that would close.
- Smaller header. Your profile is a single row, with uptime and battery beside it.
-
Two new options along the bottom.
- Firmware setup: hold F, or hold the button. Shown on UEFI machines only.
- Shut down later: in 15 min, 30 min or 1 h, using a systemd user timer. The menu shows the scheduled time and can cancel it.
-
The lock cannot strand you. The lock runs as its own process, so reloading or crashing the shell never touches it.
sea-lock.shwaits for the compositor to confirm the lock. If the lock does not come up, or exits without a real unlock, hyprlock takes over the still-locked session. Two things make that work:-
misc:allow_session_lock_restoreis now on, so Hyprland accepts the second locker. -
The lock records the unlock only after unlocking, so a crash at the worst moment costs a second password, never an open session.
hypridle's
lock_cmdnow goes throughsea-lock.sh, and install.sh updates a kept hypridle.conf that still has the old default.
-
-
Gaming fans in quick settings. An Auto / Quiet / Max row under the power profile sets the profile and the fans together (
sea-perf.sh auto|quiet|max). Auto hands the fans back to the firmware, Quiet runs a low lm_sensors fancontrol curve, and Max pins them at full speed. A fixed speed is used for Max because a curve hunts audibly when the temperature sits near one of its edges. The fan half needs root, so it goes through a small helper,sea-fancurve, that accepts only those three presets and is run through a sudoers rule. The row stays hidden until that helper is installed in/usr/local/bin. - The global menu fades in instead of popping. Moving to a window with a menu bar now fades the workspaces and title out and slides the menu in where they were. Moving back fades the workspaces in. Reduced motion turns both off.
-
Game mode switches itself on and off. Feral gamemode's start/end hooks (
~/.config/gamemode.ini, written by install.sh when you have none) runsea-gamemode.sh auto-on|auto-off, so any game launched throughgamemoderunturns game mode on, and it turns off when the last one exits. Game mode switched on by hand is never turned off by a game exiting. - Game mode handles the fans and the idle lock. It applies the last "gaming fans" preset and restores the previous one afterwards, and it stops hypridle while you play, since a controller does not count as input and the screen would otherwise dim and lock mid-game. Picking a fan preset while game mode is on keeps the performance profile.
-
sea-shell answers password prompts itself. The "allow this change?" dialog for pkexec, package managers, mounting and similar requests is now drawn by the shell.
- Who: your picture with a lock badge, or a shield when the password is for another account.
- What: a command is shown whole, in mono, instead of cut off mid-path.
- The field: works like the lock screen's. It shakes on a wrong try and counts tries, and it also allows paste and has a show-password toggle.
- Details: shows the polkit action and the account.
-
Placement: the dialog opens on the screen you are using.
hyprpolkitagent no longer starts at login. The shell starts it as a fallback if it cannot register as the agent itself.
-
Notifications are grouped by app.
- The centre shows one card per app: the newest message in full, a line naming the next one, and the rest stacked behind. Click the card to see every message, each with its own dismiss.
- On hover: mute, dismiss-app and expand controls appear.
- Keyboard, while the centre is open: ↑↓ moves between apps, ⏎ shows all, Delete dismisses, M mutes, Ctrl+Z undoes.
- Undo: every dismissal, including "clear all", can be undone for 8 seconds.
- Popups group too: a new message from an app already on screen replaces its card and shows "3 new", instead of stacking a column of cards.
-
Two new desktop widgets: Calendar and Batteries. Both come in all three sizes.
- Calendar: small is today as a page with the next event. Medium puts the page beside what is coming up. Large adds the month, with dots on days that have events.
- Batteries: shows this computer and every connected Bluetooth device that reports a level. Small is a ring, medium is a ring per device, and large is a list with time left.
- Clear widgets keep their text readable. The wallpaper map now records how light the picture is under each cell. A widget drawn straight on the photo (the clear look, a bare clock) uses dark text on a light patch and light text on a dark one.
- Stickers. Put a picture of your own on the corner of the power menu and the media dropdown in Settings → Appearance → theme → stickers. None by default; a GIF moves while its panel is open.
Changed
-
The power menu and Settings open at once. Both are now kept "warm".
- Settings used to drop its window on close and rebuild it on every open, which was 160–220 ms before the first frame. It now draws within about 10 ms and is fully up by about 65 ms.
-
The power menu started a fresh Quickshell process on every SUPER+ESC, about 310 ms plus Hyprland's open animation. It now lives in the shell and opens in about 40 ms.
power.qmlstill runs on its own when the shell is not running."Warm" means a closed window stays mapped as a single transparent pixel that takes no input, so opening it only grows it back.
-
The bar's power dropdown follows the new power menu.
- Lock and Suspend are two quick buttons.
- Log out, Restart and Shut down are held rows: a fill sweeps across the row while you hold, replacing "click again".
- A pending timed shutdown shows here and can be cancelled.
- "More options" opens the full menu.
-
Bluetooth, sound, battery and calendar match the Wi-Fi dropdown. They now share three building blocks (
DropHeader,DropSection,DropRow): a title, a status line that says what is happening, section labels, and rows that tint the current choice.- Bluetooth: your devices are split from nearby ones. Battery level shows as a reading, and disconnect appears on hover.
- Sound: outputs are called what they are ("Speakers", "HDMI 1"), with the sound card underneath, instead of four rows that all began "Alder Lake PCH-P High Definition Aud…".
- Battery: says how long is left, or how long until full, and describes each power profile.
- Calendar: opens on today's date and your next event.
-
New default fonts: Inter and JetBrains Mono. Inter is the interface font and JetBrains Mono is used for numbers, code and the terminal. install.sh installs both. It points fontconfig's
sans-serifandmonospaceat them (fromconf.d, so your own fonts.conf still wins) and sets the GTK fonts when they were still on the stock Adwaita or Cantarell. The shell's mono font was Roboto Mono, which was never installed. - The bar's dropdowns follow your font. 128 places in the bar (and 6 in the media player) had "Adwaita Sans" written in, so they ignored the font chosen in Appearance. They now use it.
- Arranging widgets is easier on the eye. The "busy" parts of the wallpaper show as a soft shadow instead of a grid of red squares. The shadow is one small image stretched smoothly, where it used to be 5,184 rectangles. Each widget gets a light outline instead of a solid frame, so glass and clear widgets still look like themselves while you move them.
- The widgets handle is at the bottom. It sits on the bottom edge, left of the dock, where the drawer actually comes from. Hovering shows a "Widgets" pill; click it or drag it up. It used to be a sliver on the left edge that you pulled sideways.
- New widgets land in spaces their own size. The wallpaper map now works out calm zones for the small, medium and large footprints, instead of three generic shapes.
- The global menu has room to breathe. Menu titles have 10 px of padding on each side instead of 7, so "File Edit Selection" no longer runs together. The app's name cell no longer squeezes its icon against the edge.
- A new logo. A moon setting over the sea, drawn in your theme colours: the sea takes the wallpaper accent and the sunset stays warm. It replaces the three waves everywhere sea-shell draws its own mark.
- A shorter README, led by pictures.
Fixed
- With two monitors, the global menu showed on the wrong bar. Moving the pointer onto an empty screen focused that screen while the window kept the keyboard. The window's menu and title then jumped to the empty screen's bar, and the screen it was actually on went back to workspaces. Both now follow the monitor the active window is on.
-
**SUPER+W, the screenshot pin, the launcher's Caffeine toggle and
openWidgetdid nothing.** Two IPC handlers both claimed theshelltarget. Quickshell keeps only one handler per target, and the one with justreloadwas the one it kept. They are now one handler. - Settings opens and closes in one piece. The panel was laid out against its one-pixel closed size, so every open rebuilt all 24 pages in view; it now keeps its size while closed. It also fades as one picture: before, each part faded on its own and the parts behind showed through, and closing greyed out every control for the length of the fade.
- Settings tabs answer the first click. A tap that moved by a pixel was read as scrolling the sidebar.
- Reloading the shell no longer wipes notification history. A notification arriving while history was still loading saved an empty list over it.
- System and battery widgets update smoothly. Gauges sweep to new readings instead of flashing as they were rebuilt.
-
**
sea-bar-supervisor.sh --restartbrings the bar back.** It stopped the bar and then failed to start the new one. - Quickshell's "Config reloaded" card no longer sticks on screen.