Skip to content

Releases: Goddv/Zervo

Zervo 0.5.0

Choose a tag to compare

@github-actions github-actions released this 23 Aug 16:59
86cb712

The chrome, redesigned. Eight turns of a design study went in: one material
with every number reachable, four seams between the chrome and the page with a
transition each, a new tab page that greets you rather than briefing you, five
pages for when a page will not load, and a first run that explains itself.
Zervo's own preset changed with it, to the arrangement the browser was actually
tuned in.

The Zervo window with the sidebar open, showing the new tab page

Please break it

0.5.0 is the shape; 0.6.0 is the polish, and between them the useful thing is
to be told what is wrong. Open an issue
for anything — a corner that does not match, a preset that reads badly on your
display, a crash, a page Servo cannot render that this browser fails to explain.

Say which preset, which theme and which layout you were in. The four defects
fixed in the days before this release were each only reproducible in one of them.

Five presets ship. Zervo, the default, is the finished one; Candy, Flat,
Liquid Glass and Material came out of the same study, are offered beside it, and
are still being tuned.

What is in it

  • One material, every number reachable. zervo://settings → Appearance has
    one control per named field — fill, sheen, blur, the edge, the corner scale,
    the glow, the settle time, how far the accent reaches — and a specimen pinned
    under the title that is the real chrome rather than a picture of it.
  • The seam is one setting with four steps, and each step brings the
    transition its own geometry implies: a card recedes, a tint defocuses, a
    framed page slides, a page under floating glass travels up.
  • Full-page mode on ⌘S, beside the sidebar and the bar.
  • A new tab page that greets you — the hour, one field, the session you
    actually left, the three sites you use. The board of thirteen cards is still
    one press away.
  • Five zervo:// pages for when a page will not load, including a crash
    page that now actually arrives, and zervo://unsupported, which names the
    engine gap rather than blaming the browser.
  • The window's corners are the platform's, which is where the doubled
    corners came from.

Full detail in CHANGELOG.md.

Which download

You are on Take
Apple silicon Mac Zervo-0.5.0-arm64.dmg
Intel Mac Zervo-0.5.0-x86_64.dmg
Linux, anything Zervo-0.5.0-x86_64.AppImage
Debian / Ubuntu zervo_0.5.0_amd64.deb
Fedora zervo-0.5.0-1.fc44.x86_64.rpm
Arch zervo-aur-packages.tar.gz
Windows Zervo-0.5.0-windows-x64-setup.exe

SHA256SUMS covers every file above.

macOS is the only platform this has been run on. Linux and Windows build
from the same tag and are untested — reports from either are especially useful.


What's Changed

  • chrome: the design study, implemented — 0.5.0 by @Goddv in #9

Full Changelog: v0.4.2...v0.5.0

Zervo 0.4.2

Choose a tag to compare

@github-actions github-actions released this 23 Aug 03:18

What's Changed

  • Engine sync to latest Servo, plus the corner and Meta-key fixes by @Goddv in #5
  • Build and packaging: every platform, from one release workflow by @Goddv in #6

Full Changelog: v0.4.1...v0.4.2

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 21 Aug 18:33

Unsigned build, with downloads and media playback. macOS will refuse to open it until you clear the
quarantine flag:

xattr -dr com.apple.quarantine /Applications/Zervo.app

See docs/PACKAGING.md for why.

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 21 Aug 13:27

Unsigned build, with downloads and media playback. macOS will refuse to open it until you clear the
quarantine flag:

xattr -dr com.apple.quarantine /Applications/Zervo.app

See docs/PACKAGING.md for why.

v0.3.6

Choose a tag to compare

@github-actions github-actions released this 20 Aug 23:06

Unsigned build, with downloads and media playback. macOS will refuse to open it until you clear the
quarantine flag:

xattr -dr com.apple.quarantine /Applications/Zervo.app

See docs/PACKAGING.md for why.

v0.3.3.1

Choose a tag to compare

@github-actions github-actions released this 20 Aug 11:42

Unsigned build, with downloads and media playback. macOS will refuse to open it until you clear the
quarantine flag:

xattr -dr com.apple.quarantine /Applications/Zervo.app

See docs/PACKAGING.md for why.

v0.3.3

Choose a tag to compare

@github-actions github-actions released this 19 Aug 20:08

Zervo now builds for every platform it targets.

Installing

macOS (Apple Silicon, macOS 11+) — Zervo-0.3.3.dmg

Drag Zervo to Applications, then:

xattr -dr com.apple.quarantine /Applications/Zervo.app

That step is not optional and nothing is wrong with the download. macOS refuses
to open anything from the internet unless it is signed with a paid Apple
Developer ID and notarised, and reports it as "damaged" when it is not. If you
would rather not use a terminal: open it, let macOS refuse, then go to System
Settings → Privacy & Security
and choose Open Anyway.

Debian and Ubuntuzervo_0.3.3_amd64.deb

sudo apt install ./zervo_0.3.3_amd64.deb

Fedorazervo-0.3.3-1.fc41.x86_64.rpm

sudo dnf install ./zervo-0.3.3-1.fc41.x86_64.rpm

Both packages declare their dependencies, so the package manager pulls in what
they need. Neither is signed, which on Linux is a warning rather than a wall.

Windows x64Zervo-0.3.3-windows-x64.zip

Unzip it anywhere and run Zervo.exe; it is self-contained. Windows SmartScreen
will warn about an unrecognised publisher, for the same reason macOS does:
nobody has paid for a signing certificate. Choose More infoRun anyway.

Please read this before trying the Linux or Windows builds

These are the first builds for either platform that have ever existed. They
compile, they package and they install — that is what has been verified. Nobody
has run one.
Whether Zervo opens a window on Linux or Windows is untested: the
rendering context, X11 versus Wayland, and the GL setup are all unexercised
there. If it does not start, that is expected rather than surprising, and a bug
report saying so would be genuinely useful.

macOS is the only platform where the browser has actually been used.

What is new

Windows. One self-contained Zervo.exe, built as a GUI application so it
does not leave a terminal behind the window. No media there yet — GStreamer on
Windows means an MSI and a bundling step of its own. Downloads are in.

The navigation bar can be arranged. The wand beside the add-widget button
turns the row into things to move rather than press: drag items within a group
or across the address pill, with a caret showing where a drop lands; the x takes
one off; a tray underneath holds whatever is off the bar.

Widgets. They sit on a grid, drop anywhere on the shelf including a row with
nothing above it, and resize by dragging a corner or from a list of sizes. Cells
narrow with the window rather than the grid losing columns, so positions hold at
any window size. The clock and the two media widgets are real: Servo reports
media session metadata and takes playback actions, so the player controls drive
whatever the page is playing.

Fixes. Hover-only controls could not be clicked — remove and resize on
widgets, remove and rename on favourites — because registering a control on top
of a card is what stops the card counting as hovered. The favourites card grew
out of the star and swallowed the click that opened it.

Full detail in CHANGELOG.md;
what is still missing is written down in
docs/PARITY.md,
including the things that need engine work rather than embedder work.

Contributing

Most of what is left is embedder work rather than engine work, so it is more
approachable than "contribute to a browser" sounds. docs/PARITY.md lists the
gaps in the order they hurt, with where in the code each one lives.

v0.3.2

Choose a tag to compare

@github-actions github-actions released this 19 Aug 18:17

Unsigned build, with downloads and media playback. macOS will refuse to open it until you clear the
quarantine flag:

xattr -dr com.apple.quarantine /Applications/Zervo.app

See docs/PACKAGING.md for why.

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 19 Aug 15:38

Installing

Apple Silicon only (M1 or later), macOS 11 or newer. This build will not run on Intel Macs.

  1. Download the .dmg below and open it.

  2. Drag Zervo onto the Applications folder.

  3. Open Terminal and run:

    xattr -dr com.apple.quarantine /Applications/Zervo.app
    
  4. Open Zervo.

If you would rather not use a terminal: open Zervo, let macOS refuse it, then go to System
Settings → Privacy & Security
, where an Open Anyway button will have appeared. Do not bother
Control-clicking → Open; Apple removed that in
macOS Sequoia.

Step 3 is not optional and it is not a workaround for something broken. macOS quarantines
everything downloaded from the internet and refuses to open a quarantined app unless it is signed
with a paid Apple Developer ID ($99/year) and notarised. Zervo is neither, so macOS reports that
the app "is damaged and can't be opened", which is untrue — it means only that nobody has paid
Apple to vouch for it. The command clears the download flag and changes nothing about the app.

The disk image contains the same instructions, in case you find this later.

What this build is

A browser. The interface is sidebar-first: no toolbar, tabs grouped into workspaces, everything in
one collapsible sidebar. Underneath is Servo, the independent web engine
written in Rust — not Chromium, not Gecko.

Servo is not a finished engine. Expect sites to render badly, refuse to load, or break in ways that
have nothing to do with Zervo. This is something to try, not something to depend on.

What's new in 0.3.1

Sites no longer render as though on a phone. window.screen was 0x0, because Zervo never
implemented screen_geometry and the engine's fallback gives nothing. Anything that sizes itself
against the screen rather than the viewport concluded it was on a tiny device — Google served its
mobile layout into a desktop window. outerWidth, outerHeight, screenX and screenY were
wrong for the same reason and are right now.

The disk image explains how to open the app, rather than leaving people with "Zervo is
damaged".

Still in from 0.3.0

  • Pages can ask you things. <select> dropdowns, alert/confirm/prompt, file uploads,
    <input type=color>, right-click menus and input methods all did nothing at all before 0.3.0.
  • It remembers you. Cookies, logins and localStorage survive a restart.
  • Audio and video play for local and progressive files, with GStreamer bundled in.
  • Downloads work, using a patched build of the engine.
  • Local files openfile:// URLs were impossible before.

Known not to work

Streaming video. YouTube, Netflix and Twitch report that the browser cannot play video, and
they are right: Servo has no Media Source Extensions, which all adaptive streaming is built on. It
also reports no H.264 support to canPlayType, so sites that feature-detect will not offer it —
even though the bundled GStreamer decodes H.264 perfectly well from a local file. Both are
engine-side.

Full detail in CHANGELOG.md, and what is
still missing is written down in
docs/PARITY.md.

Contributing

The gap list in docs/PARITY.md is in the order the gaps hurt, with where in the code each one
lives. Most of it is embedder work rather than engine work, so it is more approachable than
"contribute to a browser" sounds. A Linux port is wanted — only the vibrancy, the Dock icon and the
bundling script are macOS-specific.

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 19 Aug 15:07

Installing

Apple Silicon only (M1 or later), macOS 11 or newer. This build will not run on Intel Macs.

  1. Download the .dmg below and open it.

  2. Drag Zervo onto the Applications folder.

  3. Open Terminal and run:

    xattr -dr com.apple.quarantine /Applications/Zervo.app
    
  4. Open Zervo.

If you would rather not use a terminal: open Zervo, let macOS refuse it, then go to System
Settings → Privacy & Security
, where an Open Anyway button will have appeared. Do not bother
Control-clicking → Open; Apple removed that in
macOS Sequoia.

Step 3 is not optional and it is not a workaround for something broken. macOS quarantines
everything downloaded from the internet and refuses to open a quarantined app unless it is signed
with a paid Apple Developer ID ($99/year) and notarised. Zervo is neither, so macOS reports that
the app "is damaged and can't be opened", which is untrue — it means only that nobody has paid
Apple to vouch for it. The command clears the download flag and changes nothing about the app.

The disk image contains the same instructions, in case you find this later.

What this build is

A browser. The interface is sidebar-first: no toolbar, tabs grouped into workspaces, everything in
one collapsible sidebar. Underneath is Servo, the independent web engine
written in Rust — not Chromium, not Gecko.

Servo is not a finished engine. Expect sites to render badly, refuse to load, or break in ways that
have nothing to do with Zervo. This is something to try, not something to depend on.

What's new in 0.3.0

The release where it starts behaving like a browser rather than a viewer.

  • Pages can ask you things. <select> dropdowns, alert/confirm/prompt, file uploads,
    <input type=color>, right-click menus and input methods all did nothing at all before this.
  • It remembers you. Cookies, logins and localStorage survive a restart.
  • Audio and video play for local and progressive files, with GStreamer bundled into the app so
    you do not have to install anything. Streaming sites (YouTube, Netflix, Twitch) still do not
    work: Servo has no Media Source Extensions, which adaptive streaming is built on.
  • Downloads work, using a patched build of the engine, since Servo has no download support of
    its own yet.
  • Local files openfile:// URLs were impossible before.
  • ⌘Q exists, which it did not before.

Full detail in CHANGELOG.md, and what is
still missing is written down in
docs/PARITY.md.

Contributing

The gap list in docs/PARITY.md is in the order the gaps hurt, with where in the code each one
lives. Most of it is embedder work rather than engine work, so it is more approachable than
"contribute to a browser" sounds. A Linux port is wanted — only the vibrancy, the Dock icon and the
bundling script are macOS-specific.