mirror of
https://iceshrimp.dev/crimekillz/trashposs
synced 2024-11-21 08:23:49 +01:00
Flamingo
This commit is contained in:
parent
ce7a67f72a
commit
00e40c7203
@ -1,5 +1,5 @@
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
# Firefish configuration
|
||||
# TrashPoss configuration
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
# ┌─────┐
|
||||
|
@ -1,5 +1,5 @@
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
# Iceshrimp configuration
|
||||
# TrashPoss configuration
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
# After starting your server, please don't change the URL! Doing so will break federation.
|
||||
@ -21,11 +21,11 @@ url: https://example.org/
|
||||
#───┘ Port and TLS settings └───────────────────────────────────
|
||||
|
||||
#
|
||||
# Iceshrimp requires a reverse proxy to support HTTPS connections.
|
||||
# TrashPoss requires a reverse proxy to support HTTPS connections.
|
||||
#
|
||||
# +----- https://example.com/ ------------+
|
||||
# +------+ |+-------------+ +----------------+|
|
||||
# | User | ---> || Proxy (443) | ---> | Iceshrimp (3000) ||
|
||||
# | User | ---> || Proxy (443) | ---> | TrashPoss (3000) ||
|
||||
# +------+ |+-------------+ +----------------+|
|
||||
# +---------------------------------------+
|
||||
#
|
||||
@ -33,7 +33,7 @@ url: https://example.org/
|
||||
# An encrypted connection with HTTPS is highly recommended
|
||||
# because tokens may be transferred in GET requests.
|
||||
|
||||
# The port that your Iceshrimp server should listen on.
|
||||
# The port that your TrashPoss server should listen on.
|
||||
port: 3000
|
||||
|
||||
# ┌──────────────────────────┐
|
||||
@ -212,7 +212,7 @@ reservedUsernames: [
|
||||
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
# Congrats, you've reached the end of the config file needed for most deployments!
|
||||
# Enjoy your Iceshrimp server!
|
||||
# Enjoy your TrashPoss server!
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
# Iceshrimp configuration
|
||||
# TrashPoss configuration
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
# After starting your server, please don't change the URL! Doing so will break federation.
|
||||
@ -21,11 +21,11 @@ url: https://example.org/
|
||||
#───┘ Port and TLS settings └───────────────────────────────────
|
||||
|
||||
#
|
||||
# Iceshrimp requires a reverse proxy to support HTTPS connections.
|
||||
# TrashPoss requires a reverse proxy to support HTTPS connections.
|
||||
#
|
||||
# +------- https://example.com/ ------------+
|
||||
# +------+ |+-------------+ +------------------+|
|
||||
# | User | ---> || Proxy (443) | ---> | Iceshrimp (3000) ||
|
||||
# | User | ---> || Proxy (443) | ---> | TrashPoss (3000) ||
|
||||
# +------+ |+-------------+ +------------------+|
|
||||
# +-----------------------------------------+
|
||||
#
|
||||
@ -33,7 +33,7 @@ url: https://example.org/
|
||||
# An encrypted connection with HTTPS is highly recommended
|
||||
# because tokens may be transferred in GET requests.
|
||||
|
||||
# The port that your Iceshrimp server should listen on.
|
||||
# The port that your TrashPoss server should listen on.
|
||||
port: 3000
|
||||
|
||||
# ┌──────────────────────────┐
|
||||
@ -212,7 +212,7 @@ reservedUsernames: [
|
||||
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
# Congrats, you've reached the end of the config file needed for most deployments!
|
||||
# Enjoy your Iceshrimp server!
|
||||
# Enjoy your TrashPoss server!
|
||||
#━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
|
||||
|
@ -15,7 +15,7 @@ jobs:
|
||||
image: redis
|
||||
steps:
|
||||
- name: Clone repository
|
||||
run: git clone https://iceshrimp.dev/iceshrimp/iceshrimp.git --branch=${{ github.ref_name }} --depth=1 /iceshrimp
|
||||
run: git clone https://iceshrimp.dev/Crimekillz/trashposs.git --branch=${{ github.ref_name }} --depth=1 /iceshrimp
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
cd /iceshrimp
|
||||
|
@ -1,7 +1,7 @@
|
||||
|
||||
# Iceshrimp Community Code of Conduct
|
||||
# TrashPoss Community Code of Conduct
|
||||
|
||||
The Iceshrimp Code of Conduct is a set of guidelines that explains how our community behaves and what we value as members and project to others. This Code of Conduct is a living document and will be updated when and as deemed necessary.
|
||||
The TrashPoss Code of Conduct is a set of guidelines that explains how our community behaves and what we value as members and project to others. This Code of Conduct is a living document and will be updated when and as deemed necessary.
|
||||
|
||||
The Code of Conduct does not seek to restrict speech or penalize non-native speakers of English or any other language. Instead the Code of Conduct spells out the kinds of behaviors we, as a community, find to be acceptable and unacceptable.
|
||||
|
||||
|
@ -1,8 +1,8 @@
|
||||
# Contribution guide
|
||||
We're glad you're interested in contributing Iceshrimp! In this document you will find the information you need to contribute to the project.
|
||||
We're glad you're interested in contributing TrashPoss! In this document you will find the information you need to contribute to the project.
|
||||
|
||||
## Translation (i18n)
|
||||
Iceshrimp uses [Weblate](https://translate.iceshrimp.dev/) for translation and internationalization management.
|
||||
TrashPoss uses [Weblate](https://translate.iceshrimp.dev/) for translation and internationalization management.
|
||||
|
||||
If your language is not listed in Weblate, please open an issue.
|
||||
|
||||
|
5
COPYING
5
COPYING
@ -2,6 +2,7 @@ Unless specified otherwise, the entirety of this repository is subject to the fo
|
||||
Copyright © 2014-2023 syuilo and contributors
|
||||
Copyright © 2022-2023 Kainoa Kanter and contributors
|
||||
Copyright © 2023-2023 The Iceshrimp contributors
|
||||
Copyright © 2024-2024 The TrashPoss contributors
|
||||
|
||||
And is distributed under The GNU Affero General Public License Version 3, you should have received a copy of the license file as LICENSE.
|
||||
|
||||
@ -13,13 +14,13 @@ These specific configuration directories:
|
||||
- custom/assets/
|
||||
|
||||
and their contents are
|
||||
Copyright © 2023 The Iceshrimp contributors
|
||||
Copyright © 2024 The TrashPoss contributors
|
||||
|
||||
And are distributed under The Apache License, Version 2.0, you should have received a copy of the license file as LICENSE in each specified directory.
|
||||
|
||||
---
|
||||
|
||||
Iceshrimp includes several third-party open-source softwares and software libraries.
|
||||
TrashPoss includes several third-party open-source softwares and software libraries.
|
||||
|
||||
RsaSignature2017 implementation by Transmute Industries Inc
|
||||
License: MIT
|
||||
|
@ -8,4 +8,4 @@ If you discover a security issue, which is so high risk, that too much is affect
|
||||
This will allow us to assess the risk, and make a fix available before we add a
|
||||
bug report to the Codeberg repository.
|
||||
|
||||
Thanks for helping make Iceshrimp safe for everyone.
|
||||
Thanks for helping make TrashPoss safe for everyone.
|
||||
|
@ -1,4 +1,4 @@
|
||||
Copyright 2023 The Iceshrimp contributors
|
||||
Copyright 2024 The TrashPoss contributors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -1,5 +1,5 @@
|
||||
# API Documentation
|
||||
|
||||
You can find interactive API documentation at any Iceshrimp instance. https://iceshrimp.social/api-doc
|
||||
You can find interactive API documentation at any TrashPoss instance. https://iceshrimp.social/api-doc
|
||||
|
||||
You can also find auto-generated documentation for iceshrimp-js [here](../packages/iceshrimp-js/markdown/iceshrimp-js.md).
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Installing Iceshrimp with Docker
|
||||
# Installing TrashPoss with Docker
|
||||
|
||||
This guide is based on `docker compose`/Docker Compose v2, but `docker-compose`/Docker Compose v1 should work as well. Docker 20.10+ is required for building your own images because of BuildKit usage, and Docker 20.10 users need to [enable BuildKit first](https://docs.docker.com/build/buildkit/#getting-started), or [upgrade to latest Docker](https://docs.docker.com/engine/install/#server).
|
||||
|
||||
@ -8,17 +8,17 @@ This guide is based on `docker compose`/Docker Compose v2, but `docker-compose`/
|
||||
|
||||
If you want to use the prebuilt images:
|
||||
```sh
|
||||
GIT_LFS_SKIP_SMUDGE=1 git clone https://iceshrimp.dev/iceshrimp/iceshrimp.git --depth=1
|
||||
GIT_LFS_SKIP_SMUDGE=1 git clone https://iceshrimp.dev/Crimekillz/trashposs.git --depth=1
|
||||
```
|
||||
|
||||
If you want to build your own images (make sure to install `git-lfs` and to run `git lfs install` before running the command):
|
||||
```sh
|
||||
git clone https://iceshrimp.dev/iceshrimp/iceshrimp.git
|
||||
git clone https://iceshrimp.dev/Crimekillz/trashposs.git
|
||||
```
|
||||
|
||||
### docker-compose.yml
|
||||
|
||||
First, run `cp docs/examples/docker-compose.yml docker-compose.yml`, and edit `docker-compose.yml` if you want to build the image yourself or choose a [different tag](https://iceshrimp.dev/iceshrimp/-/packages/container/iceshrimp/versions)
|
||||
First, run `cp docs/examples/docker-compose.yml docker-compose.yml`, and edit `docker-compose.yml` if you want to build the image yourself or choose a [different tag](https://iceshrimp.dev/Crimekillz/-/packages/container/trashposs/versions)
|
||||
|
||||
### .config
|
||||
|
||||
@ -27,12 +27,12 @@ Run `cp .config/example-docker.yml .config/default.yml`, and edit `.config/defau
|
||||
- Replace example database credentials with the ones you entered in `.config/docker.env`
|
||||
- Change other configuration
|
||||
|
||||
If you are running Iceshrimp on a system with more than one CPU thread, you might want to set the `clusterLimit` config option to about half of your thread count, depending on your system configuration. Please note that each worker requires around 10 PostgreSQL connections, so be sure to set `max_connections` appropriately. To do this with docker-compose, add `args: ["-c", "max_connections=n"]` to the `db:` section of `docker-compose.yml`, with `n` being `(10 * no_workers) + 10`.
|
||||
If you are running TrashPoss on a system with more than one CPU thread, you might want to set the `clusterLimit` config option to about half of your thread count, depending on your system configuration. Please note that each worker requires around 10 PostgreSQL connections, so be sure to set `max_connections` appropriately. To do this with docker-compose, add `args: ["-c", "max_connections=n"]` to the `db:` section of `docker-compose.yml`, with `n` being `(10 * no_workers) + 10`.
|
||||
|
||||
## Installation and first start
|
||||
|
||||
Choose a method, whether you chose to build the image yourself or not.
|
||||
Note: Ctrl-C will shut down Iceshrimp gracefully.
|
||||
Note: Ctrl-C will shut down TrashPoss gracefully.
|
||||
|
||||
### Pulling the image
|
||||
|
||||
@ -50,11 +50,11 @@ docker compose build
|
||||
docker compose up
|
||||
```
|
||||
|
||||
## Starting Iceshrimp automatically
|
||||
## Starting TrashPoss automatically
|
||||
|
||||
Run `docker compose up -d` and Iceshrimp will start automatically on boot.
|
||||
Run `docker compose up -d` and TrashPoss will start automatically on boot.
|
||||
|
||||
## Updating Iceshrimp
|
||||
## Updating TrashPoss
|
||||
|
||||
### Pulling the image
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# 🐳 Running a Iceshrimp server with Docker
|
||||
# 🐳 Running a TrashPoss server with Docker
|
||||
|
||||
## Pre-built docker container
|
||||
[iceshrimp/iceshrimp](iceshrimp.dev/iceshrimp/iceshrimp)
|
||||
@ -8,7 +8,7 @@
|
||||
There is a `docker-compose.yml` in the root of the project that you can use to build the container from source
|
||||
|
||||
- .config/docker.env (**db config settings**)
|
||||
- .config/default.yml (**Iceshrimp server settings**)
|
||||
- .config/default.yml (**TrashPoss server settings**)
|
||||
|
||||
## Configuring
|
||||
|
||||
@ -34,9 +34,9 @@ The [prebuilt container for iceshrimp](https://iceshrimp.dev/iceshrimp/-/package
|
||||
Copy `docker-compose.yml` and the `config/` to a directory, then run the **docker-compose** command:
|
||||
`docker-compose up -d`.
|
||||
|
||||
NOTE: This will take some time to come fully online, even after download and extracting the container images, and it may emit some error messages before completing successfully. Specifically, the `db` container needs to initialize and so isn't available to the `web` container right away. Only once the `db` container comes online does the `web` container start building and initializing the Iceshrimp tables.
|
||||
NOTE: This will take some time to come fully online, even after download and extracting the container images, and it may emit some error messages before completing successfully. Specifically, the `db` container needs to initialize and so isn't available to the `web` container right away. Only once the `db` container comes online does the `web` container start building and initializing the TrashPoss tables.
|
||||
|
||||
Once the server is up you can use a web browser to access the web interface at `http://serverip:3000` (where `serverip` is the IP of the server you are running the Iceshrimp server on).
|
||||
Once the server is up you can use a web browser to access the web interface at `http://serverip:3000` (where `serverip` is the IP of the server you are running the TrashPoss server on).
|
||||
|
||||
## Docker for development
|
||||
|
||||
|
@ -1,5 +1,5 @@
|
||||
[Unit]
|
||||
Description=Iceshrimp PostgreSQL container
|
||||
Description=TrashPoss PostgreSQL container
|
||||
[Container]
|
||||
Image=docker.io/postgres:15-alpine
|
||||
ContainerName=iceshrimp_db
|
||||
|
@ -1,5 +1,5 @@
|
||||
[Unit]
|
||||
Description=Iceshrimp Redis container
|
||||
Description=TrashPoss Redis container
|
||||
[Container]
|
||||
Image=docker.io/redis:7.0-alpine
|
||||
ContainerName=iceshrimp_redis
|
||||
|
@ -1,5 +1,5 @@
|
||||
[Unit]
|
||||
Description=Iceshrimp container
|
||||
Description=TrashPoss container
|
||||
[Container]
|
||||
Image=iceshrimp.dev/iceshrimp/iceshrimp:latest
|
||||
ContainerName=iceshrimp_web
|
||||
|
@ -7,14 +7,14 @@ if [ -d $HOME/.config/containers/systemd ]; then
|
||||
|
||||
if [ ! -f $config_dir/docker_example.env ]; then
|
||||
wget -O $db_env \
|
||||
https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/.config/docker_example.env;
|
||||
https://iceshrimp.dev/Crimekillz/trashposs/raw/branch/dev/.config/docker_example.env;
|
||||
else
|
||||
cp -v $config_dir/docker_example.env $db_env;
|
||||
fi
|
||||
|
||||
if [ ! -f $config_dir/example-docker.yml ]; then
|
||||
wget -O $config_dir/default.yml \
|
||||
https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/.config/example-docker.yml;
|
||||
https://iceshrimp.dev/Crimekillz/trashposs/raw/branch/dev/.config/example-docker.yml;
|
||||
else
|
||||
cp $config_dir/example-docker.yml $config_dir/default.yml
|
||||
fi
|
||||
|
@ -1,5 +1,5 @@
|
||||
[Unit]
|
||||
Description=Iceshrimp daemon
|
||||
Description=TrashPoss daemon
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Installing Iceshrimp
|
||||
# Installing TrashPoss
|
||||
|
||||
This document will guide you through manual installation of Iceshrimp. We also provide prebuilt [packages](/iceshrimp/packaging) for various platforms, should you prefer those over a manual install.
|
||||
This document will guide you through manual installation of TrashPoss. We also provide prebuilt [packages](/iceshrimp/packaging) for various platforms, should you prefer those over a manual install.
|
||||
|
||||
## Dependencies
|
||||
|
||||
@ -31,14 +31,14 @@ This document will guide you through manual installation of Iceshrimp. We also p
|
||||
Make sure you have `git-lfs` installed and have run `git lfs install` before cloning the repo, as we are using Git LFS for efficient storage of binary blobs.
|
||||
|
||||
```sh
|
||||
git clone https://iceshrimp.dev/iceshrimp/iceshrimp.git
|
||||
git clone https://iceshrimp.dev/Crimekillz/trashposs.git
|
||||
```
|
||||
|
||||
If you don't want to run the latest development version, pick a version from [here](https://iceshrimp.dev/iceshrimp/iceshrimp/releases) and run `git checkout <version>` before continuing.
|
||||
If you don't want to run the latest development version, pick a version from [here](https://iceshrimp.dev/Crimekillz/trashposs/releases) and run `git checkout <version>` before continuing.
|
||||
|
||||
### Creating a new user
|
||||
|
||||
In case you want to run Iceshrimp as a different user, run `adduser --disabled-password --disabled-login iceshrimp`
|
||||
In case you want to run TrashPoss as a different user, run `adduser --disabled-password --disabled-login iceshrimp`
|
||||
Following steps will require you to run them as the user you have made, so use `su - iceshrimp`, or `sudo -iu iceshrimp`, or whatever else method in order to temporarily log in as that user.
|
||||
|
||||
### Configuration
|
||||
@ -59,7 +59,7 @@ yarn
|
||||
|
||||
Note: If you get a lot of `The remote archive doesn't match the expected checksum` errors, please make sure you installed `git-lfs` and ran `git lfs install && git lfs pull`.
|
||||
|
||||
## Building Iceshrimp
|
||||
## Building TrashPoss
|
||||
|
||||
```sh
|
||||
yarn build
|
||||
@ -83,14 +83,14 @@ alter database iceshrimp owner to iceshrimp;
|
||||
|
||||
### First migration
|
||||
|
||||
In order for Iceshrimp to work properly, you need to initialise the database using
|
||||
In order for TrashPoss to work properly, you need to initialise the database using
|
||||
```bash
|
||||
yarn run init
|
||||
```
|
||||
|
||||
### Optimizing performance
|
||||
|
||||
If you are running Iceshrimp on a system with more than one CPU thread, you might want to set the `clusterLimit` config option to about half of your thread count, depending on your system configuration. Please note that each worker requires around 10 PostgreSQL connections, so be sure to set `max_connections` appropriately (aim for `(10 * no_workers) + 10`, if you have no other applications accessing the PostgreSQL database).
|
||||
If you are running TrashPoss on a system with more than one CPU thread, you might want to set the `clusterLimit` config option to about half of your thread count, depending on your system configuration. Please note that each worker requires around 10 PostgreSQL connections, so be sure to set `max_connections` appropriately (aim for `(10 * no_workers) + 10`, if you have no other applications accessing the PostgreSQL database).
|
||||
|
||||
For optimal database performance, it's highly recommended to configure PostgreSQL with [PGTune](https://pgtune.leopard.in.ua/) using the "Mixed type of application" profile. This is especially important should your database server use HDD instead of SATA or NVMe SSD storage.
|
||||
|
||||
@ -112,12 +112,12 @@ example.com {
|
||||
}
|
||||
```
|
||||
|
||||
## Running Iceshrimp
|
||||
## Running TrashPoss
|
||||
|
||||
### Running manually
|
||||
|
||||
- Start Iceshrimp by running `NODE_ENV=production yarn run start`.
|
||||
If this is your first run, after Iceshrimp has started successfully, you'll be able to go to the URL you have specified in `.config/default.yml` and create first user.
|
||||
- Start TrashPoss by running `NODE_ENV=production yarn run start`.
|
||||
If this is your first run, after TrashPoss has started successfully, you'll be able to go to the URL you have specified in `.config/default.yml` and create first user.
|
||||
- To stop the server, use `Ctrl-C`.
|
||||
|
||||
### Running using systemd
|
||||
@ -125,7 +125,7 @@ If this is your first run, after Iceshrimp has started successfully, you'll be a
|
||||
- Run `sudo cp docs/examples/iceshrimp.service /etc/systemd/system/`
|
||||
- Edit `/etc/systemd/system/iceshrimp.service` with text editor, and change `User`, `WorkingDir`, `ExecStart` if necessary.
|
||||
- Run `sudo systemctl daemon-reload`
|
||||
- Run `sudo systemctl enable --now iceshrimp` in order to enable and start Iceshrimp.
|
||||
- Run `sudo systemctl enable --now iceshrimp` in order to enable and start TrashPoss.
|
||||
- (Optional) Check if instance is running using `sudo systemctl status iceshrimp`
|
||||
|
||||
### Environment variables
|
||||
@ -136,11 +136,11 @@ If this is your first run, after Iceshrimp has started successfully, you'll be a
|
||||
|
||||
Make sure you are specifying absolute paths when setting environment variables.
|
||||
|
||||
### Updating Iceshrimp
|
||||
### Updating TrashPoss
|
||||
|
||||
Before you start, if you cloned the iceshrimp repository before the Git LFS migration, please follow [these instructions](https://iceshrimp.dev/iceshrimp/iceshrimp/wiki/Git-LFS#fixing-up-a-preexisting-cloned-repo) to get your repository back in sync.
|
||||
|
||||
First, stop the Iceshrimp service and then run the following commands:
|
||||
First, stop the TrashPoss service and then run the following commands:
|
||||
|
||||
```sh
|
||||
## Run git stash commands only if you have uncommitted changes
|
||||
@ -168,7 +168,7 @@ yarn build && yarn migrate
|
||||
|
||||
Note: If you get a lot of `The remote archive doesn't match the expected checksum` errors, please make sure you installed `git-lfs` and ran `git lfs install && git lfs pull`.
|
||||
|
||||
Now restart the Iceshrimp service and everything should be up to date.
|
||||
Now restart the TrashPoss service and everything should be up to date.
|
||||
|
||||
## Post-install
|
||||
|
||||
|
@ -1,17 +1,17 @@
|
||||
# 🚚 Migrating from Misskey/FoundKey/Firefish to Iceshrimp
|
||||
# 🚚 Migrating from Misskey/FoundKey/Firefish/Iceshrimp to TrashPoss
|
||||
|
||||
All the guides below assume you're starting in the root of the repo directory.
|
||||
|
||||
### Before proceeding
|
||||
|
||||
- **Ensure you have stopped all master and worker processes of Misskey.**
|
||||
- **Ensure you have stopped all master and worker processes of TrashPoss.**
|
||||
- **Ensure you have backups of the database before performing any commands.**
|
||||
|
||||
|
||||
## Misskey v12.119 and before
|
||||
|
||||
```sh
|
||||
git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git
|
||||
git remote set-url origin https://iceshrimp.dev/Crimekillz/trashposs.git
|
||||
git fetch
|
||||
git checkout v2023.11.4 # or any other tag or dev
|
||||
|
||||
@ -24,7 +24,7 @@ git checkout v2023.11.4 # or any other tag or dev
|
||||
## FoundKey
|
||||
|
||||
```sh
|
||||
wget -O fk.patch https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/docs/fk.patch
|
||||
wget -O fk.patch https://iceshrimp.dev/Crimekillz/trashposs/raw/branch/dev/docs/fk.patch
|
||||
git apply fk.patch
|
||||
cd packages/backend
|
||||
```
|
||||
@ -32,7 +32,7 @@ cd packages/backend
|
||||
Run `npx typeorm migration:revert -d ormconfig.js` for every migration until you see that `uniformThemecolor1652859567549` has been reverted. Command will not terminate properly after reverting, so you'll have to Ctrl-C
|
||||
|
||||
```
|
||||
git remote set-url origin https://iceshrimp.dev/iceshrimp/iceshrimp.git
|
||||
git remote set-url origin https://iceshrimp.dev/Crimekillz/trashposs.git
|
||||
git fetch
|
||||
git checkout v2023.11.4 # or any other tag or dev
|
||||
|
||||
@ -53,4 +53,4 @@ If migration `IncreaseHostCharLimit1692374635734` failed to revert, please run `
|
||||
|
||||
## Reverse
|
||||
|
||||
You ***cannot*** migrate back to Misskey from Iceshrimp due to re-hashing passwords on signin with argon2, however theoretically you should be able to migrate from Iceshrimp to Firefish. You can migrate from Iceshrimp to FoundKey, although this is not recommended due to FoundKey being end-of-life, and may have some problems with alt-text.
|
||||
You ***cannot*** migrate back to Misskey from TrashPoss due to re-hashing passwords on signin with argon2, however theoretically you should be able to migrate from TrashPoss to Iceshrimp.
|
||||
|
@ -1,7 +1,7 @@
|
||||
# 🌎 Iceshrimp Developer Docs
|
||||
# 🌎 TrashPoss Developer Docs
|
||||
|
||||
## Nix Dev Environment
|
||||
The Iceshrimp repo comes with a Nix-based shell environment to help make development as easy as possible!
|
||||
The TrashPoss repo comes with a Nix-based shell environment to help make development as easy as possible!
|
||||
|
||||
Please note, however, that this environment will not work on Windows outside of a WSL2 environment.
|
||||
|
||||
@ -11,12 +11,12 @@ Please note, however, that this environment will not work on Windows outside of
|
||||
- Installed [direnv](https://direnv.net/docs/installation.html) and added its hook to your shell. (package manager)
|
||||
- Ensured all dependencies are pulled with `git-lfs`, which also needs to be installed.
|
||||
|
||||
Once the repo is cloned to your computer, follow these next few steps inside the Iceshrimp folder:
|
||||
Once the repo is cloned to your computer, follow these next few steps inside the TrashPoss folder:
|
||||
|
||||
- Run `direnv allow`. This will build the environment and install all needed tools.
|
||||
- Run `install-deps`, then `prepare-config`, to install the node dependencies and prepare the needed config files.
|
||||
- In a second terminal, run `devenv up`. This will spawn a **Redis** server, a **Postgres** server, and the **Iceshrimp** server in dev mode.
|
||||
- Once you see the Iceshrimp banner printed in your second terminal, run `migrate` in the first.
|
||||
- In a second terminal, run `devenv up`. This will spawn a **Redis** server, a **Postgres** server, and the **TrashPoss** server in dev mode.
|
||||
- Once you see the TrashPoss banner printed in your second terminal, run `migrate` in the first.
|
||||
- Once migrations finish, open http://localhost:3000 in your web browser.
|
||||
- You should now see the admin user creation screen!
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
# Installing Iceshrimp using Podman and Quadlet
|
||||
# Installing TrashPoss using Podman and Quadlet
|
||||
Quadlet is a feature of Podman that is kind of like Docker Compose, but is better integrated with systemd, just like whole Podman.
|
||||
|
||||
## Requirements
|
||||
@ -12,9 +12,9 @@ Quadlet is a feature of Podman that is kind of like Docker Compose, but is bette
|
||||
If you want to use prebuilt images:
|
||||
|
||||
```sh
|
||||
GIT_LFS_SKIP_SMUDGE=1 git clone https://iceshrimp.dev/iceshrimp/iceshrimp.git --depth=1
|
||||
GIT_LFS_SKIP_SMUDGE=1 git clone https://iceshrimp.dev/Crimekillz/trashposs.git --depth=1
|
||||
mkdir -p $HOME/.config/containers/systemd
|
||||
cp "iceshrimp/docs/examples/Podman (quadlet)"/* $HOME/.config/containers/systemd
|
||||
cp "trashposs/docs/examples/Podman (quadlet)"/* $HOME/.config/containers/systemd
|
||||
```
|
||||
|
||||
Tweak quadlet files and change the image tag in `$HOME/.config/containers/systemd/iceshrimp-web.container` from `latest` to `dev` or `pre` if desired, and run `docs/examples/Podman\ \(quadlet\)/volume-dir-creation.sh`.
|
||||
@ -23,13 +23,13 @@ If you want to build your own images:
|
||||
|
||||
```sh
|
||||
git lfs install
|
||||
git clone https://iceshrimp.dev/iceshrimp/iceshrimp.git
|
||||
git clone https://iceshrimp.dev/Crimekillz/trashposs.git
|
||||
mkdir -p $HOME/.config/containers/systemd
|
||||
cp "iceshrimp/docs/examples/Podman (quadlet)"/* $HOME/.config/containers/systemd
|
||||
cp "trashposs/docs/examples/Podman (quadlet)"/* $HOME/.config/containers/systemd
|
||||
|
||||
```
|
||||
|
||||
Tweak quadlet files if needed, change content of `Image:` line in `$HOME/.config/containers/systemd/iceshrimp-web.container` to `Image: localhost/iceshrimp/iceshrimp:latest`, and run `docs/examples/Podman\ \(quadlet\)/volume-dir-creation.sh`.
|
||||
Tweak quadlet files if needed, change content of `Image:` line in `$HOME/.config/containers/systemd/iceshrimp-web.container` to `Image: localhost/crimekillz/trashposs:latest`, and run `docs/examples/Podman\ \(quadlet\)/volume-dir-creation.sh`.
|
||||
|
||||
### .config
|
||||
|
||||
@ -53,7 +53,7 @@ systemctl --user start iceshrimp-web.service
|
||||
|
||||
### Building the image
|
||||
|
||||
Enter Iceshrimp repo and run:
|
||||
Enter TrashPoss repo and run:
|
||||
|
||||
```sh
|
||||
podman build . -t $(grep -F "Image=" $HOME/.config/containers/systemd/iceshrimp-web.container | cut -d= -f2) --ulimit nofile=16384:16384
|
||||
@ -61,11 +61,11 @@ systemctl --user daemon-reload
|
||||
systemctl --user start iceshrimp-web.service
|
||||
```
|
||||
|
||||
## Starting Iceshrimp automatically
|
||||
## Starting TrashPoss automatically
|
||||
|
||||
Run `sudo loginctl enable-linger [user]` and Iceshrimp will start automatically on boot. You don't need to, and in fact [cannot enable Podman-generated systemd services](https://man.archlinux.org/man/extra/podman/podman-systemd.unit.5.en#Enabling_unit_files).
|
||||
Run `sudo loginctl enable-linger [user]` and TrashPoss will start automatically on boot. You don't need to, and in fact [cannot enable Podman-generated systemd services](https://man.archlinux.org/man/extra/podman/podman-systemd.unit.5.en#Enabling_unit_files).
|
||||
|
||||
## Updating Iceshrimp
|
||||
## Updating TrashPoss
|
||||
|
||||
### Pulling the image
|
||||
|
||||
@ -87,6 +87,6 @@ systemctl --user restart iceshrimp-web.service
|
||||
|
||||
## Post-install
|
||||
|
||||
If you are running Iceshrimp on a system with more than one CPU thread, you might want to set the `clusterLimit` config option to about half of your thread count, depending on your system configuration. Please note that each worker requires around 10 PostgreSQL connections, so be sure to set `max_connections` appropriately. To do this, change `max_connections=n` line in `db/postgresql.conf`, with `n` being `(10 * no_workers) + 10`, and run `systemctl --user restart iceshrimp-db iceshrimp-web`.
|
||||
If you are running TrashPoss on a system with more than one CPU thread, you might want to set the `clusterLimit` config option to about half of your thread count, depending on your system configuration. Please note that each worker requires around 10 PostgreSQL connections, so be sure to set `max_connections` appropriately. To do this, change `max_connections=n` line in `db/postgresql.conf`, with `n` being `(10 * no_workers) + 10`, and run `systemctl --user restart iceshrimp-db iceshrimp-web`.
|
||||
|
||||
See also [post-install](post-install.md).
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Post-install
|
||||
|
||||
This document describes things you can do after successfully installing Iceshrimp.
|
||||
This document describes things you can do after successfully installing TrashPoss.
|
||||
|
||||
## Automatic translation
|
||||
|
||||
@ -38,11 +38,11 @@ Recommended if using Docker
|
||||
- If instance is ran by a different system user: Prepend that command with `sudo -U iceshrimp`, replace `iceshrimp` with a name of that user if needed
|
||||
- Docker Compose users: `docker compose exec db psql -d iceshrimp -U iceshrimp`, replace both `iceshrimp` with name of your db, and username owning that db respectively, if needed
|
||||
- Run `UPDATE "user" SET "isAdmin" = true WHERE id='999999';`, where `999999` is the copied ID of that user
|
||||
- Restart your Iceshrimp server
|
||||
- Restart your TrashPoss server
|
||||
|
||||
### Removing admin privileges
|
||||
- Get ID of the user
|
||||
- Run `psql` the same way when adding admin
|
||||
- Run `UPDATE "user" SET "isAdmin" = false WHERE id='999999';`, where `999999` is the copied ID of that user
|
||||
- Restart your Iceshrimp server
|
||||
- Restart your TrashPoss server
|
||||
- Remove moderator privileges of the user
|
||||
|
@ -1,4 +1,4 @@
|
||||
-- Sharkey 2024.3.1 to Iceshrimp 2023.12.5 migration script
|
||||
-- Sharkey 2024.3.1 to TrashPoss 2023.12.5 migration script
|
||||
-- by @kopper@brain.d.on-t.work
|
||||
-- only tested with aidx, theoretical support for aid and meid. other id schemes are NOT supported.
|
||||
-- servers which have migrated from firefish and iceshrimp to sharkey may encounter undefined behavior, as
|
||||
@ -480,10 +480,10 @@ ALTER TABLE meta ALTER COLUMN "pinnedUsers" TYPE character varying(256)[];
|
||||
ALTER TABLE meta ALTER COLUMN "termsOfServiceUrl" TYPE character varying(512);
|
||||
ALTER TABLE meta RENAME COLUMN "termsOfServiceUrl" TO "ToSUrl";
|
||||
ALTER TABLE meta ALTER COLUMN "repositoryUrl" TYPE character varying(512);
|
||||
ALTER TABLE meta ALTER COLUMN "repositoryUrl" SET DEFAULT 'https://iceshrimp.dev/iceshrimp/iceshrimp';
|
||||
ALTER TABLE meta ALTER COLUMN "repositoryUrl" SET DEFAULT 'https://iceshrimp.dev/Crimekillz/trashposs';
|
||||
ALTER TABLE meta ALTER COLUMN "repositoryUrl" SET NOT NULL;
|
||||
ALTER TABLE meta ALTER COLUMN "feedbackUrl" TYPE character varying(512);
|
||||
ALTER TABLE meta ALTER COLUMN "feedbackUrl" SET DEFAULT 'https://iceshrimp.dev/iceshrimp/iceshrimp/issues/new';
|
||||
ALTER TABLE meta ALTER COLUMN "feedbackUrl" SET DEFAULT 'https://iceshrimp.dev/Crimekillz/trashposs/issues/new';
|
||||
ALTER TABLE meta ALTER COLUMN "objectStorageBucket" TYPE character varying(512);
|
||||
ALTER TABLE meta ALTER COLUMN "objectStoragePrefix" TYPE character varying(512);
|
||||
ALTER TABLE meta ALTER COLUMN "objectStorageBaseUrl" TYPE character varying(512);
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
description = "Iceshrimp development flake";
|
||||
description = "TrashPoss development flake";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
|
||||
|
@ -1,6 +1,6 @@
|
||||
# 📦 Packages
|
||||
|
||||
This directory contains all of the packages Iceshrimp uses.
|
||||
This directory contains all of the packages TrashPoss uses.
|
||||
|
||||
- `backend`: Main backend code written in TypeScript for NodeJS
|
||||
- `client`: Web interface written in Vue3 and TypeScript
|
||||
|
@ -1,4 +1,4 @@
|
||||
Copyright 2023 The Iceshrimp contributors
|
||||
Copyright 2024 The TrashPoss contributors
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Iceshrimp API</title>
|
||||
<title>TrashPoss API</title>
|
||||
<!-- needed for adaptive design -->
|
||||
<meta charset="utf-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
|
@ -4,10 +4,10 @@ export class IceshrimpRepo1689965609061 implements MigrationInterface {
|
||||
|
||||
async up(queryRunner: QueryRunner): Promise<void> {
|
||||
await queryRunner.query(
|
||||
`UPDATE meta SET "repositoryUrl" = 'https://iceshrimp.dev/iceshrimp/iceshrimp'`,
|
||||
`UPDATE meta SET "repositoryUrl" = 'https://iceshrimp.dev/Crimekillz/trashposs'`,
|
||||
);
|
||||
await queryRunner.query(
|
||||
`UPDATE meta SET "feedbackUrl" = 'https://iceshrimp.dev/iceshrimp/iceshrimp/issues'`,
|
||||
`UPDATE meta SET "feedbackUrl" = 'https://iceshrimp.dev/Crimekillz/trashposs/issues'`,
|
||||
);
|
||||
}
|
||||
|
||||
|
@ -16,8 +16,8 @@ export class ResyncWithOrm1697289658422 implements MigrationInterface {
|
||||
await queryRunner.query(`ALTER TABLE "meta" ALTER COLUMN "privateMode" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "meta" ALTER COLUMN "allowedHosts" SET NOT NULL`);
|
||||
await queryRunner.query(`ALTER TABLE "meta" ALTER COLUMN "pinnedPages" SET DEFAULT '{/featured,/channels,/explore,/pages,/about-iceshrimp}'`);
|
||||
await queryRunner.query(`ALTER TABLE "meta" ALTER COLUMN "repositoryUrl" SET DEFAULT 'https://iceshrimp.dev/iceshrimp/iceshrimp'`);
|
||||
await queryRunner.query(`ALTER TABLE "meta" ALTER COLUMN "feedbackUrl" SET DEFAULT 'https://iceshrimp.dev/iceshrimp/iceshrimp/issues/new'`);
|
||||
await queryRunner.query(`ALTER TABLE "meta" ALTER COLUMN "repositoryUrl" SET DEFAULT 'https://iceshrimp.dev/Crimekillz/trashposs'`);
|
||||
await queryRunner.query(`ALTER TABLE "meta" ALTER COLUMN "feedbackUrl" SET DEFAULT 'https://iceshrimp.dev/Crimekillz/trashposs/issues/new'`);
|
||||
await queryRunner.query(`COMMENT ON COLUMN "renote_muting"."createdAt" IS 'The created date of the Muting.'`);
|
||||
await queryRunner.query(`COMMENT ON COLUMN "renote_muting"."muteeId" IS 'The mutee user ID.'`);
|
||||
await queryRunner.query(`COMMENT ON COLUMN "renote_muting"."muterId" IS 'The muter user ID.'`);
|
||||
|
@ -20,8 +20,8 @@ export function metaToPugArgs(meta: Meta): object {
|
||||
|
||||
return {
|
||||
img: meta.bannerUrl,
|
||||
title: meta.name || "Iceshrimp",
|
||||
instanceName: meta.name || "Iceshrimp",
|
||||
title: meta.name || "TrashPoss",
|
||||
instanceName: meta.name || "TrashPoss",
|
||||
desc: meta.description,
|
||||
icon: meta.iconUrl,
|
||||
splashIcon: splashIconUrl,
|
||||
|
@ -375,14 +375,14 @@ export class Meta {
|
||||
|
||||
@Column("varchar", {
|
||||
length: 512,
|
||||
default: "https://iceshrimp.dev/iceshrimp/iceshrimp",
|
||||
default: "https://iceshrimp.dev/Crimekillz/trashposs",
|
||||
nullable: false,
|
||||
})
|
||||
public repositoryUrl: string;
|
||||
|
||||
@Column("varchar", {
|
||||
length: 512,
|
||||
default: "https://iceshrimp.dev/iceshrimp/iceshrimp/issues/new",
|
||||
default: "https://iceshrimp.dev/Crimekillz/trashposs/issues/new",
|
||||
nullable: true,
|
||||
})
|
||||
public feedbackUrl: string | null;
|
||||
|
@ -16,10 +16,10 @@ export default async (job: Bull.Job<WebhookDeliverJobData>) => {
|
||||
url: job.data.to,
|
||||
method: "POST",
|
||||
headers: {
|
||||
"User-Agent": "Iceshrimp-Hooks",
|
||||
"X-Iceshrimp-Host": config.host,
|
||||
"X-Iceshrimp-Hook-Id": job.data.webhookId,
|
||||
"X-Iceshrimp-Hook-Secret": job.data.secret,
|
||||
"User-Agent": "TrashPoss-Hooks",
|
||||
"X-TrashPoss-Host": config.host,
|
||||
"X-TrashPoss-Hook-Id": job.data.webhookId,
|
||||
"X-TrashPoss-Hook-Secret": job.data.secret,
|
||||
"Content-Type": "application/json",
|
||||
},
|
||||
body: JSON.stringify({
|
||||
|
@ -68,8 +68,8 @@ export async function createImage(
|
||||
/**
|
||||
* Resolve Image.
|
||||
*
|
||||
* If the target Image is registered in Iceshrimp, return it, otherwise
|
||||
* Fetch from remote server, register with Iceshrimp and return it.
|
||||
* If the target Image is registered in TrashPoss, return it, otherwise
|
||||
* Fetch from remote server, register with TrashPoss and return it.
|
||||
*/
|
||||
export async function resolveImage(
|
||||
actor: CacheableRemoteUser,
|
||||
|
@ -98,7 +98,7 @@ export function validateNote(object: any, uri: string) {
|
||||
/**
|
||||
* Fetch Notes.
|
||||
*
|
||||
* If the target Note is registered in Iceshrimp, it will be returned.
|
||||
* If the target Note is registered in TrashPoss, it will be returned.
|
||||
*/
|
||||
export async function fetchNote(
|
||||
object: string | IObject,
|
||||
@ -427,8 +427,8 @@ export async function createNote(
|
||||
/**
|
||||
* Resolve Note.
|
||||
*
|
||||
* If the target Note is registered in Iceshrimp, return it, otherwise
|
||||
* Fetch from remote server, register with Iceshrimp and return it.
|
||||
* If the target Note is registered in TrashPoss, return it, otherwise
|
||||
* Fetch from remote server, register with TrashPoss and return it.
|
||||
*/
|
||||
export async function resolveNote(
|
||||
value: string | IObject,
|
||||
|
@ -134,7 +134,7 @@ function validateActor(x: IObject, uri: string): IActor {
|
||||
/**
|
||||
* Fetch a Person.
|
||||
*
|
||||
* If the target Person is registered in Iceshrimp, it will be returned.
|
||||
* If the target Person is registered in TrashPoss, it will be returned.
|
||||
*/
|
||||
export async function fetchPerson(
|
||||
uri: string,
|
||||
@ -455,7 +455,7 @@ export async function createPerson(
|
||||
|
||||
/**
|
||||
* Update Person data from remote.
|
||||
* If the target Person is not registered in Iceshrimp, it is ignored.
|
||||
* If the target Person is not registered in TrashPoss, it is ignored.
|
||||
* @param uri URI of Person
|
||||
* @param resolver Resolver
|
||||
* @param hint Hint of Person object (If this value is a valid Person, it is used for updating without Remote resolve)
|
||||
@ -661,8 +661,8 @@ export async function updatePerson(
|
||||
/**
|
||||
* Resolve Person.
|
||||
*
|
||||
* If the target person is registered in Iceshrimp, it returns it;
|
||||
* otherwise, it fetches it from the remote server, registers it in Iceshrimp, and returns it.
|
||||
* If the target person is registered in TrashPoss, it returns it;
|
||||
* otherwise, it fetches it from the remote server, registers it in TrashPoss, and returns it.
|
||||
*/
|
||||
export async function resolvePerson(
|
||||
uri: string,
|
||||
|
@ -339,7 +339,7 @@ import * as ep___admin_driveCapOverride from "./endpoints/admin/drive-capacity-o
|
||||
import * as ep___bites_create from "./endpoints/bites/create.js";
|
||||
import * as ep___bites_show from "./endpoints/bites/show.js";
|
||||
|
||||
//Iceshrimp Move
|
||||
//TrashPoss Move
|
||||
import * as ep___i_move from "./endpoints/i/move.js";
|
||||
import * as ep___i_known_as from "./endpoints/i/known-as.js";
|
||||
|
||||
|
@ -42,7 +42,7 @@ export const meta = {
|
||||
optional: false,
|
||||
nullable: false,
|
||||
format: "url",
|
||||
example: "https://iceshrimp.example.com",
|
||||
example: "https://trashposs.example.com",
|
||||
},
|
||||
domain: {
|
||||
type: "string",
|
||||
@ -75,13 +75,13 @@ export const meta = {
|
||||
type: "string",
|
||||
optional: false,
|
||||
nullable: false,
|
||||
default: "https://iceshrimp.dev/iceshrimp/iceshrimp",
|
||||
default: "https://iceshrimp.dev/Crimekillz/trashposs",
|
||||
},
|
||||
feedbackUrl: {
|
||||
type: "string",
|
||||
optional: false,
|
||||
nullable: false,
|
||||
default: "https://iceshrimp.dev/iceshrimp/iceshrimp/issues",
|
||||
default: "https://iceshrimp.dev/Crimekillz/trashposs/issues",
|
||||
},
|
||||
defaultDarkTheme: {
|
||||
type: "string",
|
||||
|
@ -2,7 +2,7 @@ import define from "../define.js";
|
||||
|
||||
export const meta = {
|
||||
tags: ["meta"],
|
||||
description: "Get release notes from Codeberg",
|
||||
description: "Get release notes from GIT",
|
||||
|
||||
requireCredential: false,
|
||||
requireCredentialPrivateMode: false,
|
||||
@ -18,7 +18,7 @@ export default define(meta, paramDef, async () => {
|
||||
let release;
|
||||
|
||||
await fetch(
|
||||
"https://iceshrimp.dev/iceshrimp/iceshrimp/raw/branch/dev/release.json",
|
||||
"https://iceshrimp.dev/Crimekillz/trashposs/raw/branch/dev/release.json",
|
||||
)
|
||||
.then((response) => response.json())
|
||||
.then((data) => {
|
||||
|
@ -39,14 +39,14 @@ export class MiscHelpers {
|
||||
|
||||
const res = {
|
||||
uri: config.domain,
|
||||
title: meta.name || "Iceshrimp",
|
||||
title: meta.name || "TrashPoss",
|
||||
short_description:
|
||||
meta.description?.substring(0, 50) || "This is an Iceshrimp instance. It doesn't seem to have a description.",
|
||||
meta.description?.substring(0, 50) || "This is an TrashPoss instance. It doesn't seem to have a description.",
|
||||
description:
|
||||
meta.description ||
|
||||
"This is an Iceshrimp instance. It doesn't seem to have a description.",
|
||||
"This is an TrashPoss instance. It doesn't seem to have a description.",
|
||||
email: meta.maintainerEmail || "",
|
||||
version: `4.2.1 (compatible; Iceshrimp ${config.version})`,
|
||||
version: `4.2.1 (compatible; TrashPoss ${config.version})`,
|
||||
urls: {
|
||||
streaming_api: `${config.url.replace(/^http(?=s?:\/\/)/, "ws")}`,
|
||||
},
|
||||
|
@ -9,13 +9,13 @@ export function genOpenapiSpec() {
|
||||
|
||||
info: {
|
||||
version: "v1",
|
||||
title: "Iceshrimp API",
|
||||
title: "TrashPoss API",
|
||||
"x-logo": { url: "/static-assets/api-doc.png" },
|
||||
},
|
||||
|
||||
externalDocs: {
|
||||
description: "Repository",
|
||||
url: "https://iceshrimp.dev/iceshrimp/iceshrimp",
|
||||
url: "https://iceshrimp.dev/Crimekillz/trashposs",
|
||||
},
|
||||
|
||||
servers: [
|
||||
@ -106,7 +106,7 @@ export function genOpenapiSpec() {
|
||||
description: desc,
|
||||
externalDocs: {
|
||||
description: "Source code",
|
||||
url: `https://iceshrimp.dev/iceshrimp/iceshrimp/src/branch/dev/packages/backend/src/server/api/endpoints/${endpoint.name}.ts`,
|
||||
url: `https://iceshrimp.dev/Crimekillz/trashposs/src/branch/dev/packages/backend/src/server/api/endpoints/${endpoint.name}.ts`,
|
||||
},
|
||||
tags: endpoint.meta.tags || undefined,
|
||||
security,
|
||||
|
@ -43,7 +43,7 @@ export default async function (
|
||||
id: author.link,
|
||||
title: `${author.name} (@${user.username}@${config.domain})`,
|
||||
updated: notes[0].createdAt,
|
||||
generator: "Iceshrimp",
|
||||
generator: "TrashPoss",
|
||||
description: `${user.notesCount} Notes, ${
|
||||
profile.ffVisibility === "public" ? user.followingCount : "?"
|
||||
} Following, ${
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
"short_name": "Iceshrimp",
|
||||
"name": "Iceshrimp",
|
||||
"short_name": "TrashPoss",
|
||||
"name": "TrashPoss",
|
||||
"description": "An open source, decentralized social media platform that's free forever!",
|
||||
"start_url": "/",
|
||||
"display": "standalone",
|
||||
|
@ -9,8 +9,8 @@ export const manifestHandler = async (ctx: Koa.Context) => {
|
||||
|
||||
const instance = await fetchMeta(true);
|
||||
|
||||
res.short_name = instance.name || "Iceshrimp";
|
||||
res.name = instance.name || "Iceshrimp";
|
||||
res.short_name = instance.name || "TrashPoss";
|
||||
res.name = instance.name || "TrashPoss";
|
||||
if (instance.themeColor) res.theme_color = instance.themeColor;
|
||||
|
||||
ctx.set("Cache-Control", "max-age=300");
|
||||
|
@ -7,9 +7,10 @@ doctype html
|
||||
|
||||
//
|
||||
-
|
||||
Thank you for using Iceshrimp!
|
||||
Thank you for using TrashPoss!
|
||||
If you are reading this message... how about joining the development?
|
||||
https://iceshrimp.dev/iceshrimp/iceshrimp
|
||||
https://iceshrimp.dev/Crimekillz/trashposs
|
||||
Hack the planet! Be gay, do crime!
|
||||
|
||||
html
|
||||
|
||||
@ -17,13 +18,13 @@ html
|
||||
|
||||
head
|
||||
meta(charset='utf-8')
|
||||
meta(name='application-name' content='Iceshrimp')
|
||||
meta(name='application-name' content='TrashPoss')
|
||||
meta(name='referrer' content='origin')
|
||||
meta(name='darkreader-lock' content='')
|
||||
meta(name='theme-color' content= themeColor || '#31748f')
|
||||
meta(name='theme-color-orig' content= themeColor || '#31748f')
|
||||
meta(property='twitter:card' content='summary')
|
||||
meta(property='og:site_name' content= instanceName || 'Iceshrimp')
|
||||
meta(property='og:site_name' content= instanceName || 'TrashPoss')
|
||||
meta(name='viewport' content='width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no')
|
||||
link(rel='icon' href= icon || `/favicon.ico?${ timestamp }`)
|
||||
link(rel='apple-touch-icon' href= icon || `/apple-touch-icon.png?${ timestamp }`)
|
||||
@ -40,7 +41,7 @@ html
|
||||
|
||||
title
|
||||
block title
|
||||
= title || 'Iceshrimp'
|
||||
= title || 'TrashPoss'
|
||||
|
||||
block desc
|
||||
meta(name='description' content=desc || 'An open source, decentralized social media platform that\'s free forever! 🚀')
|
||||
@ -50,7 +51,7 @@ html
|
||||
meta(name='robots' content='noindex')
|
||||
|
||||
block og
|
||||
meta(property='og:title' content=title || 'Iceshrimp')
|
||||
meta(property='og:title' content=title || 'TrashPoss')
|
||||
meta(property='og:description' content=desc || 'An open source, decentralized social media platform that\'s free forever! 🚀')
|
||||
meta(property='og:image' content=img)
|
||||
meta(property='og:image:alt' content=alt || 'Pfp')
|
||||
|
@ -4,9 +4,9 @@ html
|
||||
|
||||
head
|
||||
meta(charset='utf-8')
|
||||
meta(name='application-name' content='Iceshrimp')
|
||||
meta(name='application-name' content='TrashPoss')
|
||||
meta(name='viewport' content='width=device-width, initial-scale=1.0')
|
||||
title Iceshrimp Repair Tool
|
||||
title TrashPoss Repair Tool
|
||||
style
|
||||
include ../bios.css
|
||||
script
|
||||
@ -14,7 +14,7 @@ html
|
||||
|
||||
body
|
||||
header
|
||||
h1 Iceshrimp Repair Tool v#{version}
|
||||
h1 TrashPoss Repair Tool v#{version}
|
||||
main
|
||||
div.tabs
|
||||
button#ls Edit local storage
|
||||
|
@ -4,9 +4,9 @@ html
|
||||
|
||||
head
|
||||
meta(charset='utf-8')
|
||||
meta(name='application-name' content='Iceshrimp')
|
||||
meta(name='application-name' content='TrashPoss')
|
||||
meta(name='viewport' content='width=device-width, initial-scale=1.0')
|
||||
title Iceshrimp Cli
|
||||
title TrashPoss Cli
|
||||
style
|
||||
include ../cli.css
|
||||
script
|
||||
@ -14,7 +14,7 @@ html
|
||||
|
||||
body
|
||||
header
|
||||
h1 Iceshrimp Simple Client v#{version}
|
||||
h1 TrashPoss Simple Client v#{version}
|
||||
main
|
||||
div#form
|
||||
textarea#text
|
||||
|
@ -3,9 +3,9 @@ doctype html
|
||||
html
|
||||
head
|
||||
meta(charset='utf-8')
|
||||
meta(name='application-name' content='Iceshrimp')
|
||||
meta(name='application-name' content='TrashPoss')
|
||||
meta(name='viewport' content='width=device-width, initial-scale=1.0')
|
||||
title Flush Iceshrimp
|
||||
title Flush TrashPoss
|
||||
style.
|
||||
* {
|
||||
font-family: BIZ UDGothic, Roboto, HelveticaNeue, Arial, sans-serif;
|
||||
@ -28,7 +28,7 @@ html
|
||||
#msg
|
||||
script.
|
||||
const msg = document.getElementById('msg');
|
||||
const successText = `\nSuccess Flush! <a href="/">Back to Iceshrimp</a>\n成功しました。<a href="/">Iceshrimpを開き直してください。</a>`;
|
||||
const successText = `\nSuccess Flush! <a href="/">Back to TrashPoss</a>\n成功しました。<a href="/">TrashPossを開き直してください。</a>`;
|
||||
|
||||
message('Start flushing.');
|
||||
|
||||
|
@ -29,7 +29,7 @@ export default class Logger {
|
||||
|
||||
if (config.syslog) {
|
||||
this.syslogClient = new SyslogPro.RFC5424({
|
||||
applacationName: "Iceshrimp",
|
||||
applacationName: "TrashPoss",
|
||||
timestamp: true,
|
||||
encludeStructuredData: true,
|
||||
color: true,
|
||||
|
@ -35,7 +35,7 @@ const instance = props.instance ?? {
|
||||
'meta[name="theme-color-orig"]',
|
||||
) as HTMLMetaElement
|
||||
)?.content,
|
||||
softwareName: Instance.softwareName || "Iceshrimp",
|
||||
softwareName: Instance.softwareName || "TrashPoss",
|
||||
};
|
||||
|
||||
const capitalize = (s: string) => s && s[0].toUpperCase() + s.slice(1);
|
||||
|
@ -8,7 +8,7 @@
|
||||
<span>Switch is now {{ flag ? "on" : "off" }}</span>
|
||||
</MkSwitch>
|
||||
<div style="margin: 32px 0">
|
||||
<MkRadio v-model="radio" value="misskey">Iceshrimp</MkRadio>
|
||||
<MkRadio v-model="radio" value="misskey">TrashPoss</MkRadio>
|
||||
<MkRadio v-model="radio" value="mastodon">Mastodon</MkRadio>
|
||||
<MkRadio v-model="radio" value="pleroma">Pleroma</MkRadio>
|
||||
</div>
|
||||
|
@ -64,7 +64,7 @@ function checkForSplash() {
|
||||
}
|
||||
|
||||
(async () => {
|
||||
console.info(`Iceshrimp v${version}`);
|
||||
console.info(`TrashPoss v${version}`);
|
||||
|
||||
if (_DEV_) {
|
||||
console.warn("Development mode!!!");
|
||||
|
@ -35,7 +35,7 @@
|
||||
<MkInfo v-if="updateAvailable" warn class="info"
|
||||
>{{ i18n.ts.updateAvailable }}
|
||||
<a
|
||||
href="https://iceshrimp.dev/iceshrimp/iceshrimp/releases"
|
||||
href="https://iceshrimp.dev/Crimekillz/trashposs/releases"
|
||||
target="_bank"
|
||||
class="_link"
|
||||
>{{ i18n.ts.check }}</a
|
||||
|
@ -22,7 +22,7 @@
|
||||
><i class="ph-upload-simple ph-bold ph-lg"></i
|
||||
></template>
|
||||
<FormRadios v-model="importType" class="_formBlock">
|
||||
<option value="iceshrimp">Iceshrimp/Misskey</option>
|
||||
<option value="iceshrimp">TrashPoss/Misskey</option>
|
||||
<option value="mastodon">Mastodon/Akkoma/Pleroma</option>
|
||||
</FormRadios>
|
||||
<MkButton
|
||||
|
@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<form class="mk-setup" @submit.prevent="submit()">
|
||||
<h1>Welcome to Iceshrimp!</h1>
|
||||
<h1>Welcome to TrashPoss!</h1>
|
||||
<div class="_formRoot">
|
||||
<p>{{ i18n.ts.intro }}</p>
|
||||
<MkInput
|
||||
|
@ -37,7 +37,7 @@ export function openHelpMenu_(ev: MouseEvent) {
|
||||
text: i18n.ts.apps,
|
||||
icon: "ph-device-mobile ph-bold ph-lg",
|
||||
action: () => {
|
||||
window.open("https://iceshrimp.dev/iceshrimp/iceshrimp/src/branch/dev/APPS.md", "_blank");
|
||||
window.open("https://iceshrimp.dev/Crimekillz/trashposs/src/branch/dev/APPS.md", "_blank");
|
||||
},
|
||||
},
|
||||
{
|
||||
|
@ -6,7 +6,7 @@
|
||||
id: 'dark',
|
||||
|
||||
name: 'Dark',
|
||||
author: 'Iceshrimp Contributors',
|
||||
author: 'TrashPoss Contributors',
|
||||
desc: 'Default dark theme',
|
||||
kind: 'dark',
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
id: 'light',
|
||||
|
||||
name: 'Light',
|
||||
author: 'Iceshrimp Contributors',
|
||||
author: 'TrashPoss Contributors',
|
||||
desc: 'Default light theme',
|
||||
kind: 'light',
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
id: '0c74bfbe-c9b9-4a42-9798-2ee030e65f1c',
|
||||
name: 'Iceshrimp Dark',
|
||||
name: 'TrashPoss Dark',
|
||||
author: '@TyrKilcat@meow.social',
|
||||
base: 'dark',
|
||||
props: {
|
||||
|
@ -1,6 +1,6 @@
|
||||
{
|
||||
id: '360da846-debe-40f9-9f10-5ad035afa546',
|
||||
name: 'Iceshrimp Light',
|
||||
name: 'TrashPoss Light',
|
||||
author: '@TyrKilcat@meow.social',
|
||||
base: 'light',
|
||||
props: {
|
||||
|
@ -64,7 +64,7 @@
|
||||
<small
|
||||
>Powered by
|
||||
<a href="https://iceshrimp.dev/" target="_blank"
|
||||
>Iceshrimp</a
|
||||
>TrashPoss</a
|
||||
></small
|
||||
>
|
||||
</div>
|
||||
|
@ -19,7 +19,7 @@
|
||||
<small
|
||||
>Powered by
|
||||
<a href="https://iceshrimp.dev/" target="_blank"
|
||||
>Iceshrimp</a
|
||||
>TrashPoss</a
|
||||
></small
|
||||
>
|
||||
</div>
|
||||
|
@ -70,7 +70,7 @@
|
||||
<small
|
||||
>Powered by
|
||||
<a href="https://iceshrimp.dev/" target="_blank"
|
||||
>Iceshrimp</a
|
||||
>TrashPoss</a
|
||||
></small
|
||||
>
|
||||
</div>
|
||||
|
@ -1,6 +1,6 @@
|
||||
# iceshrimp.js
|
||||
|
||||
Fork of Misskey.js for Iceshrimp
|
||||
Fork of Misskey.js for TrashPoss
|
||||
|
||||
https://www.npmjs.com/package/iceshrimp-js
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
},
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://iceshrimp.dev/iceshrimp/iceshrimp.git"
|
||||
"url": "https://iceshrimp.dev/Crimekillz/trashposs.git"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@microsoft/api-documenter": "^7.22.21",
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"version": "1.0.0",
|
||||
"notes": "Welcome to Iceshrimp!",
|
||||
"notes": "Welcome to TrashPoss!",
|
||||
"screenshots": []
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user