mirror of
https://git.kescher.at/CatCatNya/catstodon.git
synced 2024-11-21 14:48:06 +01:00
The Fediverse server that meows at you - a fork of glitch-soc Mastodon
a38cc7ec83
Some checks failed
Bundler Audit / security (push) Has been cancelled
Check i18n / check-i18n (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Check formatting / lint (push) Has been cancelled
CSS Linting / lint (push) Has been cancelled
Haml Linting / lint (push) Has been cancelled
JavaScript Linting / lint (push) Has been cancelled
Ruby Linting / lint (push) Has been cancelled
JavaScript Testing / test (push) Has been cancelled
Historical data migration test / test (14-alpine) (push) Has been cancelled
Historical data migration test / test (15-alpine) (push) Has been cancelled
Historical data migration test / test (16-alpine) (push) Has been cancelled
Historical data migration test / test (17-alpine) (push) Has been cancelled
Ruby Testing / build (production) (push) Has been cancelled
Ruby Testing / build (test) (push) Has been cancelled
Ruby Testing / test (.ruby-version) (push) Has been cancelled
Ruby Testing / test (3.2) (push) Has been cancelled
Ruby Testing / Libvips tests (push) Has been cancelled
Ruby Testing / End to End testing (push) Has been cancelled
Ruby Testing / Elastic Search integration testing (push) Has been cancelled
|
||
---|---|---|
.devcontainer | ||
.github | ||
.husky | ||
.rubocop | ||
.yarn | ||
app | ||
bin | ||
chart | ||
config | ||
db | ||
dist | ||
lib | ||
log | ||
public | ||
spec | ||
streaming | ||
vendor | ||
.browserslistrc | ||
.buildpacks | ||
.dockerignore | ||
.editorconfig | ||
.env.development | ||
.env.production.catcatnya | ||
.env.production.sample | ||
.env.test | ||
.env.vagrant | ||
.eslintignore | ||
.eslintrc.js | ||
.foreman | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.haml-lint.yml | ||
.nvmrc | ||
.prettierignore | ||
.prettierrc.js | ||
.rspec | ||
.rubocop.yml | ||
.rubocop_todo.yml | ||
.ruby-gemset | ||
.ruby-version | ||
.slugignore | ||
.watchmanconfig | ||
.yarnrc.yml | ||
app.json | ||
Aptfile | ||
AUTHORS.md | ||
babel.config.js | ||
CHANGELOG.md | ||
CHANGELOG_glitch.md | ||
CODE_OF_CONDUCT.md | ||
config.ru | ||
CONTRIBUTING.md | ||
crowdin-glitch.yml | ||
crowdin.yml | ||
docker-compose.yml | ||
Dockerfile | ||
FEDERATION.md | ||
Gemfile | ||
Gemfile.lock | ||
ide-helper.js | ||
jest.config.js | ||
jsconfig.json | ||
LICENSE | ||
lint-staged.config.js | ||
package.json | ||
postcss.config.js | ||
priv-config | ||
Procfile | ||
Procfile.dev | ||
Rakefile | ||
README.md | ||
redact-env.bash | ||
scalingo.json | ||
SECURITY.md | ||
stylelint.config.js | ||
tsconfig.json | ||
Vagrantfile | ||
yarn.lock |
Catstodon
Introduction
This Mastodon fork is based on the glitch-soc Fork of Mastodon, historically with changes made to suit CatCatNya~. Some changes may be contributed back to glitch-soc. Non-security contributions to Vanilla Mastodon have ceased for Fediverse-political reasons.
To install, take a look at glitch-soc.github.io/docs/. The instructions and features are the same, except for the differences outlined below.
Contributing guidelines are available here.
Note: Use the main
branch only for forks. The develop
and stable-develop/*
branches are experimental, have no
stable state, and are only used for testing changes e.g. the staging instance or temporary
test instances.
For production, it is suggested you run:
- any of the
stable/*
branches or stable tags- do note, however, that these branches/tags have a similar support cycle to upstream, and therefore also to vanilla Mastodon!
- New Catstodon-exclusive features will only be introduced to the main branch. The
stable
branches will not get backports of new features.
- the
main
branch, which is comparable to "nightly" versions in vanilla Mastodon.
Differences
- Some files are adjusted specifically for the CatCatNya~ instance, and you may want revert/change them. Specifically,
these:
- sounds/boop.mp3
- sounds/boop.ogg
- The rate limits for authenticated users have been relaxed a bit. Vanilla Mastodon, and by extension glitch-soc, sadly has rate-limits that make it possible to run into these rate-limits during normal usage.
- The API endpoint
/api/v1/custom_emojis
is no longer affected by AUTHORIZED_FETCH, allowing anyone to copy custom emojis. - Allow higher resolution images. (4096x4096 instead of the previous limit of 3840x2160)
- Allow posting polls with only one poll option (if
MIN_POLL_OPTIONS
is set to 1 on your instance). - Emoji reactions on statuses (with both Unicode and custom emojis, same as for announcements), a feature originally developed for Nyastodon. Ended up as a Catstodon-maintained patch after its initial two Pull Requests to glitch-soc, but was handed over to Essem's fork, Chuckya and is now pending its fourth attempt of merging into glitch-soc.
- Lifts the "only federate local favourites" restriction on favourites/likes and emoji reactions.
- Cherry-picks the activity filter branch from Sakurajima Mastodon.
- Adds the ability to disable the suspicious sign in detection entirely.
- Useful for situations where the instance may not have up-to-date IP information, such as when the period of IP address retention is set to a low value (see Previous differences now merged into vanilla Mastodon)
- Environment variable
MASTODON_USE_LIBVIPS
is true by default.- This is a minor change, but it requires all systems running Catstodon to run a recent libvips version (8.13+).
- Vanilla Mastodon intends to deprecate ImageMagick anyway, so sooner or later, this change will cease being one.
- Allow dashes in emoji shortcodes
- This is simply to allow custom emoji compat with other fedi software.
- Original patch by hazycora:
2dde7a25a4
- Allow appending "?unrestricted_preview=true" to post links to bypass CWs and sensitive-markings of media for link previews.
Contributions to glitch-soc Mastodon
- Fixed incorrect upload size limit display when adding new a new custom emoji. (Pull request)
- Everything merged into vanilla Mastodon
Contributions to Vanilla Mastodon
- The period of retention of IP addresses and sessions was made configurable. (Pull request)