From 02240816165553e1a1c6e1c08631e378e124149e Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 8 Feb 2022 13:35:05 +0100 Subject: [PATCH] abandon hope --- README.md | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index ed9d3e1..5635e85 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,19 @@ # social.lumbung.space +## fork hell + +- https://github.com/mastodon/mastodon/pull/16221 +- https://github.com/hometown-fork/hometown/issues/1153 + ## release management We're using [Hometown](https://github.com/hometown-fork/hometown) with [this PR](https://github.com/mastodon/mastodon/pull/16221) merged in. Yes, that's a fork of a fork. The process of making a new release is basically merging that PR into the latest Hometown, building, tagging & pushing a container and then updating the [hometown recipe configs](https://git.coopcloud.tech/coop-cloud/hometown/src/branch/main/compose.oidc.yml). -TODO... how to actually do it... +How to do it, you ask? Abandon all hope. Computers were a mistake. -Blocked: https://github.com/mastodon/mastodon/pull/16221#issuecomment-1031571505 +1. Clone hometown, `git fetch -a`, `git remote add sso https://github.com/chandrn7/smalltown.git`, `git fetch -a sso` +1. Check out the hometown tag you want, start cherrypicking the commits the PR. This [view is handiest](https://github.com/mastodon/mastodon/pull/16221/commits). You can copy/pasta each commit hash with that button and see what conflicts you need to resolve. Yep, you'll be blindly resolving conflicts between two forks. +1. If you're lucky enough to get this far, you now need to build a new container. `docker build -t .` and see what happens . You might need to this absolutely random [step](https://github.com/hometown-fork/hometown/issues/650#issuecomment-849890952) in order to get bundler/gem/ruby to install the damn thing. Also try wiping out `RUBY VERSION` / `BUNDLED WITH` in the `Gemfile.lock` when running the build. You generally just end up reading the errors and then chaotically hacking the `Gemfile` / `Gemfile.lock` file until it works. If you get to the yarn building step, you might actually make it. +1. Push the container & update the Co-op Cloud recipe (`compose.oidc.yml`) +1. Deploy the thing & pray +1. Hope you never have to do this again