Image from the Outdoor Computing Club collection by Fletcher Bach (are.na/block/21997694)

New year status update


Happy new year all! Here’s another status update from your friendly neighbourhood democratic software federation πŸ’«

Kite flying hour is back πŸͺ

We are meeting weekly again!

Here’s the running agenda and documentation for context and motivation for this regular online hangout and co-working session.

We are meeting every Thursday online at alternating moments to account for different timezones:

  • timeslot 1: 12 UTC πŸ“…
  • timeslot 2: 19 UTC πŸ“…

Check in on our Matrix channels to see what the upcoming time slot is or keep an eye on this fedi thread. There is budget to claim for active contributors. See R024 for more.

social.coop donation πŸ’Έ

The Good People of social.coop decided to make an incredible financial contribution to Co-op Cloud. Thank you all so much! Read more here.

Updating the anarchist cookbook of recipes 🧨

As more comrades start to use Co-op Cloud more regularly in their daily infrastructure work, we’re starting to see new recipes come in, recipes that hadn’t been working correctly are fixed, while others receive upgrades and new features!

Here’s a quick run-through of the weird and wonderful recipe updates we saw passing by in the last weeks/months.

New federation members and friends πŸ‘©β€πŸ’»

A very warm welcome to the new federation members πŸ‘‹ πŸ₯Ή

We’ve also seen some spectacular projects getting interested in and/or deploying Co-op Cloud: Movement Infrastructure Research and Escuela ComΓΊn / Red Abya Yala πŸ‘€

Anyone can become a member and help shape the project πŸ“’

New website Coming Soon β„’ πŸ•ΈοΈ

R023 has been passed! @sef from doop.coop is on the case! We’re hoping to have the results of a federation wide survey coming in shortly and then we can start to come up with a new design πŸŽ‰

Self-management migrations 🚚

We ran into a few “growing pains” recently regarding how we self-manage the project. We won’t bore you with the details (they’re in this small resolution if you really must) but based on feedback we’ve got a new setup on git.coopcloud.tech πŸ€“

New abra release candidate 🌈

It’s been 10 months and 236+ commits of abra hacking without a release πŸ™ˆ

We took on quite an ambitious list of new features and ran into a number of challenges along the way. Thanks everyone for your patience πŸ’“

Due to the sheer amount of changes, we’re going with a release candidate (0.10.0-rc1-beta) which people can test out before we do a proper release.

You can test it out by running: abra upgrade --rc. Please note however, this will overwrite your current abra binary in-place (run which abra to see where it is if you want to make a backup).

You can also grab the right binary for your system from git.coopcloud.tech/toolshed/abra/releases and manually download and chmod +x it. Documentation for this is here.

⚠️ As always, please back up your $ABRA_DIR / ~/.abra before testing. More specifically, any app .env files or recipe changes you’re hacking on ⚠️

Here’s the Work-In-Progress migration guide: 0.9.x-beta πŸ‘‰ 0.10.x-beta.

If you’re curious, here’s the “mega issue” we used to coordinate this release (and the project board we migrated to πŸ˜…).

Finally, a list of the top-level features that are ready to test is as follows.

backup-bot-two support

The specification has been published. The implementation has been released. The abra machinery has been wired up.

We’re happy to finally announce that backup-bot-two is available for general testing!

In the grand tradition of Co-op Cloud, several federation members have been running an unreleased version of backup-bot-two in production for some time πŸ˜‚

The documentation is still coming together but you can dive in right now. Deploy a backup-bot-two, wire up labels on your recipes and backup / restore directly from abra.

Many recipe hackers have already put in the work to enable the correct backup-bot-two labels. Thank you all for your maintenance work!

See the backup-bot-two README.md for more πŸ“š

Improved CLI handling

We finally took the plunge and migrated to a more stable command-line library in abra. The enormous diff is pretty gnarly.

The good news is that there are now several improvements for convenient and ergonomic use of abra on the command-line 🌻

  • You can now generate abra manpages for your system! See abra man --help for more.
  • The handling of -- on the command-line is now stable again. For example, running abra app cmd 1312.net app --user nobody -- ls -lha works.
  • Autocompletion works for flags and for flag arguments. So you can abra app ls -[tab] and see a list of all possible flags. And you can abra app ls -s [tab] to get a list of all servers. Happy tabbin’ ⌨️
  • We now have an EXAMPLES section for all commands in the --help output. Please let us know what we can improve and don’t hesitate to send your docs patches!
  • It is finally possible to combine “shorthand” flags into one. For example, before: abra app deploy -C -n 1312.net now: abra app deploy -Cn 1312.net

“Operator collaboration”

For context, the problem in a nutshell is: when you work with others and you deploy stuff with abra, how do you let your collaborators know what you did?

At the moment, several collectives are manually syncing a Git repository somewhere under $ABRA_DIR / ~/.abra. We want to eventually bring this support into abra itself but we’re still researching how to support the existing diverse workflows.

In the meantime, the foundations have been implemented and are now available in abra. A huge thanks to @p4u1 from K & M for implementing a huge part of this work.

Here’s the docs:

Integration test suite

abra now has an automated integration test suite. It’s humming away each night running (so far) 290+ tests which keep us grounded. For those curious, it’s implemented in Bash 😌 Thanks to comrade @mirsal for loaning us the server resources πŸ’ž

What we’re up to next πŸ”­

It’s hard to have a clear overview with so much going on but this is what seems to be gathering momentum in the channels and on the issue trackers:

  • More inclusive documentation tool (aka “edit the docs without having to know Git and Python”) (#665).
  • We now have a Co-op Cloud Docs Channel and are discussing ways to improve terminology in the project.
  • Improving the recipe release workflow with abra (#663) and related, The Maintainers Proposal β„’
  • TUI replacement for abra app ls (#657)
  • Going collectively further down the “operator collaboration” rabbit hole (specifically, how to remotely sync deployment changes to fellow operators) (#467)
  • We want to move towards a 1.0 stable release of abra in the near future. The discussion is beginning over on #670.

The new directions of our project will always be democratically determined by participants and federation members, so please get involved to have your say πŸ“’

We’re reading this month πŸ“š β˜•

SYNWARE

Free software syndicates

The present volume inaugurates the Synware collection (sinwɛːʁ) on free software syndicalism. This collection explores the modalities of using, creating, and maintaining digital technologies collectively. Synware documents decentralized free software, their usage and community organization as much technical as conceptual, aesthetic and political.

More info, credits and an online PDF are all here.

Get Radical with us 🚩🏴

We’d love to see more folks get involved πŸŽ‰

If you’re thinking about setting up a technology co-op, you have a software stack sitting around waiting for you to pick up now; we have the technology! It’s built by tech co-ops for tech co-ops.

If you’re curious but don’t know where to start, get in touch anyway!