Skip to content
This repository has been archived by the owner. It is now read-only.
Compare
Choose a tag to compare

🎉 That one last proper release of Patchwork! 🎉

That's right folks. This is it. Nearly six years after the initial commit by Paul, the time of Patchwork will come to an end.

This is the last release of Patchwork
There will be no further development on Patchwork.
Issue tracker and pull requests will be closed.

This release is meant to tide us over so that other clients can take it from here.

Where do we go from here? Do I have to change client now?

For the time being (the next couple of months) you should be fine to just keep Patchwork running. However, as time progresses and security of the underlying components "degrades" (read: already existing issues are discovered) it will become a bad idea to keep running Patchwork.
By that time, you should pick a different ssb client.

Why retire Patchwork? Can I keep it alive?

Of course Patchwork is, as always, released under the AGPL license. So if you really wanted to, you could fork it and keep it alive. However, let me (Daan) explain why this is a bad idea:

All the devs say "Don't do it!"

Everyone who has spent significant time in the codebase agrees that it is time to retire Patchwork. Over the years, it has seen multiple iterations of developers coming in, trying to change things in a structural way, then burning out on it. It's a pattern, so be warned. This is due to the fact that Patchwork makes some architectural decisions that make it hard to maintain, and even harder for new developers to get into the codebase:

  • depject is a bespoke dependency injection system, which breaks any kind of navigation and tool support for debugging.
  • mutant is another bespoke implementation of observables. It is also used for generating HTML, which makes a transition to component-based UI toolkits very hard.
  • custom sbot: Patchwork doesn't really work except with its own, bundled ssb-server. This is considered bad form; ssb applications should really be able to peacefully co-exist.
  • ssb-db, the bespoke database of the original ssb stack, is deeply baked into patchwork. Migrating to the new ssb-db2 would be a long and painful process. This is compounded by the fact that patchwork bundles a few custom plugins for ssb-db.

I want to be clear that none of the above are impossible to solve; in fact, they all have straight-forward but labour-intensive solutions. I also want to be clear that these technological choices were all made for good reasons at the time, and I am sure you're as greatful to the developers who made them as I am, for putting their (overwhelmingly volunteered!) time into the project, and for making Patchwork the application that it is. In combination however, the above issues mean that new developers are faced with a very, very steep leaning curve before they're able to even make small changes.
Given all of the above, it makes more sense to deprecate Patchwork and focus our efforts on projects like oasis or manyverse which are nearing feature parity with Patchwork. If you want to get involved with ssb development, both are great projects for that; they are much more hackable than Patchwork, and follow standard techniques & workflows, so you'll feel right at home.

If you do, against all advice, want to continue developing Patchwork then we kindly request you rename it to reflect the change in leadership.

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.18.1.exe

macOS

Patchwork-3.18.1.dmg

You must allow apps from "unidentified" developers.

Linux

Patchwork-3.18.1.AppImage
Patchwork-3.18.1-arm64.AppImage
Patchwork-3.18.1-armv7l.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

  • Debian: ssb-patchwork_3.18.1_amd64.deb
  • Snapcraft: sudo snap install ssb-patchwork
    • If this somehow doesn't work, you might be on the beta channel. Using sudo snap refresh --channel=stable ssb-patchwork should solve this.
    • You can also download ssb-patchwork_3.18.1_amd64.snap directly but you have to install with snap install --dangerous because it's unsigned.

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Added

  • Builds for arm64 & armv7l Linux
  • Spellchecking: add ability to select multiple languages or to disable it completely.
  • Rudimentary Status page shows index progress per view
  • Context menus are much richer now, allowing to copy media & open things in Browser both locally and on a public viewer.

Deprecated

  • Use of depject had been deprecated for a long while.
    As a proof of concept, some modules in this release were now migrated from depject to regular imports.

Security

  • A metric ton of version bumps, most notably including electron (now v11.3.0) and chloride.
    The result is a much snappier experience and virtually no "falling back to JS crypto" slowness.

Added

Changed

  • While publishing a message, the content warning will be trim()'ed of leading and trailing whitespace. If the result is empty, no content warning will be published.

Fixed

Security

  • Many version bumps, including some security updates in direct and transitive dependencies.

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!

Compare
Choose a tag to compare
Pre-release

🎉 Thanks for downloading Patchwork! 🎉

As last time, I will re-iterate that this is in preparation of one last release for Patchwork.
Look out to migrate to Oasis, patchfoo, or Manyverse once they put out a desktop version. 🙂 Or hey, build your own client! The new ssb-db2 is an amazing base to build on, go for it! 💪🏽

You may notice that the indexing progress in the new "Status" tab looks... less than polished. That's not a bug. That's just what it looks like. Take it as a sign of development coming to a halt. 😛

The new snap package actually works for me. That's a real improvement over the currently-published version from the snap store, which does not work for me. If you've been using the snap version of patchwork, try upgrading to this beta and tell me how it goes! Note that the snap stores its data separately form the AppImage and such, so to back up your secret you'll want to copy ~/snap/ssb-patchwork/1/.ssb/secret instead of ~/.ssb/secret. Once that's done, you can snap refresh:

sudo snap refresh --channel=beta ssb-patchwork

As usual, feedback & bug reports are welcome in the Github issues, or simply on the #patchwork channel. Mention @MRiJ+CvDnD9ZjqunY1oy6tsk0IdbMDC4Q3tTC8riS3s=.ed25519 to notify me. 🙂

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.18.1-beta.5.exe

macOS

Patchwork-3.18.1-beta.5.dmg

You must allow apps from "unidentified" developers.

Linux

x86: Patchwork-3.18.1-beta.5.AppImage
arm64: Patchwork-3.18.1-beta.5-arm64.AppImage
armv7l: Patchwork-3.18.1-beta.5-armv7l.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!

Compare
Choose a tag to compare
Pre-release

🎉 Thanks for downloading Patchwork! 🎉

As this is a beta version, do make sure you have a backup of your secret file just in case. In fact, always have a backup of your secret file, beta or not. 😛

The big change for this pre-release is the version bump of electron from the v8.x.x series to v11.x.x. So give the whole thing a good spin.
The only real change for this change however are the context menus that appear when you right-click the different elements.
They changed slightly compared to the previous version, but all the functionality that was there should still be there, and then some.
Together with this come changes to the spell checking.
Let me know how it works, file issues or reach out on ssb @MRiJ+CvDnD9ZjqunY1oy6tsk0IdbMDC4Q3tTC8riS3s=.ed25519.

In terms of pre-built binaries, I added two Linux AppImage downloads: one for arm64 and one for armv7l. I think those should be the first functional arm builds of patchwork. If this pans out, I'd try to build for Windows too, and possibly the new Macs. I don't really have a way of testing that though, so if folks could build from source and could report, that'd be great. 🙂

Just to re-iterate what the plan here is: for now, there will only be one last proper Patchwork release.
There are other clients approaching "prime time" readiness, and all I intend to do here is to tide everyone over until those are a viable option for most folks. So don't expect many (or any!) new features from Patchwork in the future.
The reasoning behind this is mostly that the codebase of Patchwork is essentially unmaintainable, certainly for a small group of volunteers, and uses enough bespoke software throughout the application that growing the dev team is near-impossible too.
Newer clients like manyverse and Oasis make different choices here, and as a consequence are much more hackable. So have a look at these projects, they're doing great work!

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.18.1-beta.4.exe

macOS

Patchwork-3.18.1-beta.4.dmg

You must allow apps from "unidentified" developers.

Linux

Patchwork-3.18.1-beta.4.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!

Compare
Choose a tag to compare
Pre-release

First beta to be built with github actions.

Make a backup of your secret and conn.json just in case!
(If you don't know what this means, read up before you try any of this, or consider waiting for a stable version)

Please post feedback in the issues or on ssb (mention Daan: @MRiJ+CvDnD9ZjqunY1oy6tsk0IdbMDC4Q3tTC8riS3s=.ed25519).

Compare
Choose a tag to compare
Pre-release

🎉 Thanks for downloading and testing Patchwork! BUT... 🎉

This is a beta release, so beware and prepare to debug things! 😛
We created this beta version to test @staltz' amazing work on ssb-keys-neon. This replaces the javascript implementation of ssb-keys with a Rust implementation wrapped into Neon bindings.

If you do try this out, please reach out if anything goes wrong.
This is especially interesting if you're running an ARM or other architecture, or other non-"standard" hard- or software. Since this tech is relatively new (at least to us, but also in general) we want to make sure it does not break patchwork for everyone.

There is also a new translation in Farsi thanks to @dev0p0. If you speak Farsi, do give it a spin and report typos/corrections.
Please understand that the devs of Patchwork don't speak Farsi, but we'll try to accommodate any issues/discussions around this too of course.

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.18.1-beta.1.exe

macOS

Patchwork-3.18.1-beta.1.dmg

You must allow apps from "unidentified" developers.

Linux

Patchwork-3.18.1-beta.1.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!

Compare
Choose a tag to compare
Pre-release

Please disregard this release as there were problems with the build setup. Next, proper beta forthcoming. 🤞

Compare
Choose a tag to compare

🎉 Thanks for downloading Patchwork! 🎉

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.18.0.exe

macOS

Patchwork-3.18.0.dmg

You must allow apps from "unidentified" developers.

Linux

Patchwork-3.18.0.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Added

  • Support for DHT invites as generated by manyverse (#1246) added by @staltz. This is the headline feature of this release. DHT invites are one of the more promising ways to improve the onboarding experience without a pub. We invite everyone to test this feature out. Invite a friend or family member to SSB, tell us how it worked, we're eager to iterate on this!
  • Show last user activity on profile pages and mouse-over popups (#1289, #1290)
  • Add Dracula-inspired theme (#1294, #1295)
  • You can now type /profile into the search bar to visit your own profile. (#1287) Handy in combination with using Ctrl+L (Cmd+L on MacOS) to activate the search bar.
  • When using Ctrl/Cmd+Return to publish a message, a second push of Ctrl/Cmd+Return will now confirm the publication, while Esc or simply Return (without the Ctrl/Cmd modifier) will cancel the publish and return back to editing the message (#1286)

Fixed

  • Non-square profile pictures are no longer stretched/compressed in the private messages tab (#1276)
  • Update locales, especially French (#1275, #1278, #1280, #1281)

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!

Compare
Choose a tag to compare

🎉 Thanks for downloading Patchwork! 🎉

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.17.7.exe

macOS

Patchwork-3.17.7.dmg

You must allow apps from "unidentified" developers.

Linux

Patchwork-3.17.7.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Added

Changed

  • Update Acorn dependency (#1266)

Fixed

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!

Compare
Choose a tag to compare

🎉 Thanks for downloading Patchwork! 🎉

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.17.6.exe

macOS

Patchwork-3.17.6.dmg

You must allow apps from "unidentified" developers.

Linux

Patchwork-3.17.6.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Added

  • Add donation link to readme

Fixed

  • Fixed squished images
  • Fixed confusing private message error
  • Fixed SSB-Backlinks for performance boost

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!

Compare
Choose a tag to compare

🎉 Thanks for downloading Patchwork! 🎉

Install

Use your favorite package manager or install manually.

Windows

Patchwork-Setup-3.17.5.exe

macOS

Patchwork-3.17.5.dmg

You must allow apps from "unidentified" developers.

Linux

Patchwork-3.17.5.AppImage

You may need to fix the sandbox.

There are also releases for Debian and Snapcraft:

Getting started

If this is your first time on Scuttlebutt you may need an invite to get connected. After installing Patchwork and choosing your name you should select the Join Pub button. You'll need to get a pub invite, paste it into the prompt, and select Redeem invite.

You can find more information in the Getting Started Guide.

Changes

Fixed

  • Fixed regression by upgrading SSB-CONN to 0.16.2 (#1253)

Support

🤔 Any questions? Check out the Scuttlebutt FAQ!

🆘 Need help? Please create an issue!