diff --git a/.config/docker_example.env b/.config/docker_example.env index 4fe8e76b7..f8dfc66d2 100644 --- a/.config/docker_example.env +++ b/.config/docker_example.env @@ -1,5 +1,5 @@ # db settings -POSTGRES_PASSWORD=example-misskey-pass -POSTGRES_USER=example-misskey-user -POSTGRES_DB=misskey +POSTGRES_PASSWORD=example-forkey-pass +POSTGRES_USER=example-forkey-user +POSTGRES_DB=forkey DATABASE_URL="postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@db:5432/${POSTGRES_DB}" diff --git a/.config/docker_example.yml b/.config/docker_example.yml index 9e9c050e1..c4c494d0d 100644 --- a/.config/docker_example.yml +++ b/.config/docker_example.yml @@ -1,5 +1,5 @@ #━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -# Misskey configuration +# Forkey configuration #━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # ┌─────┐ @@ -15,11 +15,11 @@ url: https://example.tld/ #───┘ Port and TLS settings └─────────────────────────────────── # -# Misskey requires a reverse proxy to support HTTPS connections. +# Forkey requires a reverse proxy to support HTTPS connections. # # +----- https://example.tld/ ------------+ # +------+ |+-------------+ +----------------+| -# | User | ---> || Proxy (443) | ---> | Misskey (3000) || +# | User | ---> || Proxy (443) | ---> | Forkey (3000) || # +------+ |+-------------+ +----------------+| # +---------------------------------------+ # @@ -27,7 +27,7 @@ url: https://example.tld/ # An encrypted connection with HTTPS is highly recommended # because tokens may be transferred in GET requests. -# The port that your Misskey server should listen on. +# The port that your Forkey server should listen on. port: 3000 # ┌──────────────────────────┐ @@ -38,11 +38,11 @@ db: port: 5432 # Database name - db: misskey + db: forkey # Auth - user: example-misskey-user - pass: example-misskey-pass + user: example-forkey-user + pass: example-forkey-pass # Whether disable Caching queries #disableCache: true diff --git a/.config/example.yml b/.config/example.yml index 6c1a15161..990e2fb4b 100644 --- a/.config/example.yml +++ b/.config/example.yml @@ -1,5 +1,5 @@ #━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -# Misskey configuration +# Forkey configuration #━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ # ┌─────┐ @@ -15,11 +15,11 @@ url: https://example.tld/ #───┘ Port and TLS settings └─────────────────────────────────── # -# Misskey requires a reverse proxy to support HTTPS connections. +# Forkey requires a reverse proxy to support HTTPS connections. # # +----- https://example.tld/ ------------+ # +------+ |+-------------+ +----------------+| -# | User | ---> || Proxy (443) | ---> | Misskey (3000) || +# | User | ---> || Proxy (443) | ---> | Forkey (3000) || # +------+ |+-------------+ +----------------+| # +---------------------------------------+ # @@ -27,7 +27,7 @@ url: https://example.tld/ # An encrypted connection with HTTPS is highly recommended # because tokens may be transferred in GET requests. -# The port that your Misskey server should listen on. +# The port that your Forkey server should listen on. port: 3000 # You can also use UNIX domain socket. @@ -42,11 +42,11 @@ db: port: 5432 # Database name - db: misskey + db: forkey # Auth - user: example-misskey-user - pass: example-misskey-pass + user: example-forkey-user + pass: example-forkey-pass # Whether disable Caching queries #disableCache: true @@ -206,7 +206,7 @@ proxyRemoteFiles: true # Movie Thumbnail Generation URL # There is no reference implementation. -# For example, Misskey will point to the following URL: +# For example, Forkey will point to the following URL: # https://example.com/thumbnail.webp?thumbnail=1&url=https%3A%2F%2Fstorage.example.com%2Fpath%2Fto%2Fvideo.mp4 #videoThumbnailGenerator: https://example.com diff --git a/.dockerignore b/.dockerignore index c628b85ec..5ab61d98b 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,7 +1,7 @@ **/.git .autogen -.github +.forgejo .travis .vscode .config diff --git a/.github/FUNDING.yml b/.forgejo/FUNDING.yml similarity index 100% rename from .github/FUNDING.yml rename to .forgejo/FUNDING.yml diff --git a/.github/ISSUE_TEMPLATE/01_bug-report.yml b/.forgejo/ISSUE_TEMPLATE/01_bug-report.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/01_bug-report.yml rename to .forgejo/ISSUE_TEMPLATE/01_bug-report.yml diff --git a/.github/ISSUE_TEMPLATE/02_feature-request.yml b/.forgejo/ISSUE_TEMPLATE/02_feature-request.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/02_feature-request.yml rename to .forgejo/ISSUE_TEMPLATE/02_feature-request.yml diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.forgejo/ISSUE_TEMPLATE/config.yml similarity index 100% rename from .github/ISSUE_TEMPLATE/config.yml rename to .forgejo/ISSUE_TEMPLATE/config.yml diff --git a/.github/PULL_REQUEST_TEMPLATE/01_bug.md b/.forgejo/PULL_REQUEST_TEMPLATE/01_bug.md similarity index 100% rename from .github/PULL_REQUEST_TEMPLATE/01_bug.md rename to .forgejo/PULL_REQUEST_TEMPLATE/01_bug.md diff --git a/.github/PULL_REQUEST_TEMPLATE/02_enhance.md b/.forgejo/PULL_REQUEST_TEMPLATE/02_enhance.md similarity index 100% rename from .github/PULL_REQUEST_TEMPLATE/02_enhance.md rename to .forgejo/PULL_REQUEST_TEMPLATE/02_enhance.md diff --git a/.github/PULL_REQUEST_TEMPLATE/03_release.md b/.forgejo/PULL_REQUEST_TEMPLATE/03_release.md similarity index 100% rename from .github/PULL_REQUEST_TEMPLATE/03_release.md rename to .forgejo/PULL_REQUEST_TEMPLATE/03_release.md diff --git a/.github/dependabot.yml b/.forgejo/dependabot.yml similarity index 100% rename from .github/dependabot.yml rename to .forgejo/dependabot.yml diff --git a/.github/labeler.yml b/.forgejo/labeler.yml similarity index 100% rename from .github/labeler.yml rename to .forgejo/labeler.yml diff --git a/.forgejo/misskey/test-forgejo.yml b/.forgejo/misskey/test-forgejo.yml new file mode 100644 index 000000000..32cd9861d --- /dev/null +++ b/.forgejo/misskey/test-forgejo.yml @@ -0,0 +1,16 @@ +# Workaround for Forgejo not supporting port redirection + +url: 'http://misskey.local' + +port: 61812 + +db: + host: postgres + port: 5432 + db: test-misskey + user: postgres + pass: '' +redis: + host: dragonfly + port: 6379 +id: aidx diff --git a/.github/misskey/test.yml b/.forgejo/misskey/test.yml similarity index 100% rename from .github/misskey/test.yml rename to .forgejo/misskey/test.yml diff --git a/.github/pull_request_template.md b/.forgejo/pull_request_template.md similarity index 100% rename from .github/pull_request_template.md rename to .forgejo/pull_request_template.md diff --git a/.github/workflows/api-misskey-js.yml b/.forgejo/workflows/api-misskey-js.yml similarity index 95% rename from .github/workflows/api-misskey-js.yml rename to .forgejo/workflows/api-misskey-js.yml index 620f1415b..0dcd3d889 100644 --- a/.github/workflows/api-misskey-js.yml +++ b/.forgejo/workflows/api-misskey-js.yml @@ -21,7 +21,7 @@ jobs: submodules: true - name: Install pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v4.0.0 with: run_install: false diff --git a/.github/workflows/check-misskey-js-version.yml b/.forgejo/workflows/check-misskey-js-version.yml similarity index 95% rename from .github/workflows/check-misskey-js-version.yml rename to .forgejo/workflows/check-misskey-js-version.yml index 6a70cc0fe..26c4b654b 100644 --- a/.github/workflows/check-misskey-js-version.yml +++ b/.forgejo/workflows/check-misskey-js-version.yml @@ -3,9 +3,7 @@ name: Check Misskey JS version on: push: branches: - - beta - - io - - host + - main paths: - packages/misskey-js/package.json - package.json diff --git a/.github/workflows/lint.yml b/.forgejo/workflows/lint.yml similarity index 93% rename from .github/workflows/lint.yml rename to .forgejo/workflows/lint.yml index 91e318480..5aea45df0 100644 --- a/.github/workflows/lint.yml +++ b/.forgejo/workflows/lint.yml @@ -3,9 +3,7 @@ name: Lint on: push: branches: - - beta - - io - - host + - main paths: - packages/backend/** - packages/frontend/** @@ -28,7 +26,7 @@ jobs: with: fetch-depth: 0 submodules: true - - uses: pnpm/action-setup@v4 + - uses: pnpm/action-setup@v4.0.0 with: run_install: false - uses: actions/setup-node@v4.1.0 @@ -53,7 +51,7 @@ jobs: with: fetch-depth: 0 submodules: true - - uses: pnpm/action-setup@v4 + - uses: pnpm/action-setup@v4.0.0 with: run_install: false - uses: actions/setup-node@v4.1.0 @@ -77,7 +75,7 @@ jobs: with: fetch-depth: 0 submodules: true - - uses: pnpm/action-setup@v4 + - uses: pnpm/action-setup@v4.0.0 with: run_install: false - uses: actions/setup-node@v4.1.0 diff --git a/.github/workflows/test-backend.yml b/.forgejo/workflows/test-backend.yml similarity index 75% rename from .github/workflows/test-backend.yml rename to .forgejo/workflows/test-backend.yml index 26c352699..cc5ae6d33 100644 --- a/.github/workflows/test-backend.yml +++ b/.forgejo/workflows/test-backend.yml @@ -3,9 +3,7 @@ name: Test (backend) on: push: branches: - - beta - - io - - host + - main paths: - packages/backend/** # for permissions @@ -27,8 +25,6 @@ jobs: services: postgres: image: postgres:15 - ports: - - 54312:5432 env: POSTGRES_DB: test-misskey POSTGRES_HOST_AUTH_METHOD: trust @@ -44,8 +40,6 @@ jobs: DFLY_conn_io_threads: 4 DFLY_epoll_file_threads: 4 DFLY_proactor_threads: 4 - ports: - - 56312:6379 steps: - uses: actions/checkout@v4 @@ -53,11 +47,11 @@ jobs: fetch-depth: 0 submodules: true - name: Install pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v4.0.0 with: run_install: false - name: Install FFmpeg - uses: FedericoCarboni/setup-ffmpeg@v3 + uses: https://github.com/FedericoCarboni/setup-ffmpeg@v3 - name: Use Node.js ${{ matrix.node-version }} uses: actions/setup-node@v4.1.0 with: @@ -67,16 +61,11 @@ jobs: - name: Check pnpm-lock.yaml run: git diff --exit-code pnpm-lock.yaml - name: Copy Configure - run: cp .github/misskey/test.yml .config + run: cp .forgejo/misskey/test-forgejo.yml .config/test.yml - name: Build run: pnpm build - name: Test - run: pnpm --filter backend test-and-coverage - - name: Upload to Codecov - uses: codecov/codecov-action@v5 - with: - token: ${{ secrets.CODECOV_TOKEN }} - files: ./packages/backend/coverage/coverage-final.json + run: pnpm --filter backend test e2e: runs-on: ubuntu-latest @@ -88,8 +77,6 @@ jobs: services: postgres: image: postgres:15 - ports: - - 54312:5432 env: POSTGRES_DB: test-misskey POSTGRES_HOST_AUTH_METHOD: trust @@ -105,8 +92,6 @@ jobs: DFLY_conn_io_threads: 4 DFLY_epoll_file_threads: 4 DFLY_proactor_threads: 4 - ports: - - 56312:6379 steps: - uses: actions/checkout@v4 @@ -114,7 +99,7 @@ jobs: fetch-depth: 0 submodules: true - name: Install pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v4.0.0 with: run_install: false - name: Use Node.js ${{ matrix.node-version }} @@ -126,13 +111,8 @@ jobs: - name: Check pnpm-lock.yaml run: git diff --exit-code pnpm-lock.yaml - name: Copy Configure - run: cp .github/misskey/test.yml .config + run: cp .forgejo/misskey/test-forgejo.yml .config/test.yml - name: Build run: pnpm build - name: Test - run: pnpm --filter backend test-and-coverage:e2e - - name: Upload to Codecov - uses: codecov/codecov-action@v5 - with: - token: ${{ secrets.CODECOV_TOKEN }} - files: ./packages/backend/coverage/coverage-final.json + run: pnpm --filter backend test:e2e diff --git a/.github/workflows/test-frontend.yml b/.forgejo/workflows/test-frontend.yml similarity index 76% rename from .github/workflows/test-frontend.yml rename to .forgejo/workflows/test-frontend.yml index 53b486e3a..d7baf4b32 100644 --- a/.github/workflows/test-frontend.yml +++ b/.forgejo/workflows/test-frontend.yml @@ -35,7 +35,7 @@ jobs: fetch-depth: 0 submodules: true - name: Install pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v4.0.0 with: run_install: false - name: Use Node.js ${{ matrix.node-version }} @@ -47,13 +47,8 @@ jobs: - name: Check pnpm-lock.yaml run: git diff --exit-code pnpm-lock.yaml - name: Copy Configure - run: cp .github/misskey/test.yml .config + run: cp .forgejo/misskey/test-forgejo.yml .config/test.yml - name: Build run: pnpm build - name: Test - run: pnpm --filter frontend test-and-coverage - - name: Upload Coverage - uses: codecov/codecov-action@v5 - with: - token: ${{ secrets.CODECOV_TOKEN }} - files: ./packages/frontend/coverage/coverage-final.json + run: pnpm --filter frontend test diff --git a/.github/workflows/test-misskey-js.yml b/.forgejo/workflows/test-misskey-js.yml similarity index 82% rename from .github/workflows/test-misskey-js.yml rename to .forgejo/workflows/test-misskey-js.yml index 7acd72fa1..db90b80c0 100644 --- a/.github/workflows/test-misskey-js.yml +++ b/.forgejo/workflows/test-misskey-js.yml @@ -6,9 +6,7 @@ name: Test (misskey.js) on: push: branches: - - beta - - io - - host + - main paths: - packages/misskey-js/** pull_request: @@ -33,7 +31,7 @@ jobs: submodules: true - name: Install pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v4.0.0 with: run_install: false @@ -56,9 +54,3 @@ jobs: run: pnpm --filter misskey-js test env: CI: true - - - name: Upload Coverage - uses: codecov/codecov-action@v5 - with: - token: ${{ secrets.CODECOV_TOKEN }} - files: ./packages/misskey-js/coverage/coverage-final.json diff --git a/.github/workflows/test-production.yml b/.forgejo/workflows/test-production.yml similarity index 85% rename from .github/workflows/test-production.yml rename to .forgejo/workflows/test-production.yml index dd397b550..56c075577 100644 --- a/.github/workflows/test-production.yml +++ b/.forgejo/workflows/test-production.yml @@ -3,9 +3,7 @@ name: Test (production install and build) on: push: branches: - - beta - - io - - host + - main pull_request: env: @@ -25,7 +23,7 @@ jobs: fetch-depth: 0 submodules: true - name: Install pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v4.0.0 with: run_install: false - name: Use Node.js ${{ matrix.node-version }} @@ -37,6 +35,6 @@ jobs: - name: Check pnpm-lock.yaml run: git diff --exit-code pnpm-lock.yaml - name: Copy Configure - run: cp .github/misskey/test.yml .config/default.yml + run: cp .forgejo/misskey/test-forgejo.yml .config/default.yml - name: Build run: pnpm build diff --git a/.github/workflows/validate-api-json.yml b/.forgejo/workflows/validate-api-json.yml similarity index 93% rename from .github/workflows/validate-api-json.yml rename to .forgejo/workflows/validate-api-json.yml index af590fe67..f72371d52 100644 --- a/.github/workflows/validate-api-json.yml +++ b/.forgejo/workflows/validate-api-json.yml @@ -3,9 +3,7 @@ name: Test (backend) on: push: branches: - - beta - - io - - host + - main paths: - packages/backend/** pull_request: @@ -26,7 +24,7 @@ jobs: fetch-depth: 0 submodules: true - name: Install pnpm - uses: pnpm/action-setup@v4 + uses: pnpm/action-setup@v4.0.0 with: run_install: false - name: Use Node.js ${{ matrix.node-version }} diff --git a/.github/workflows/docker-beta.yml b/.github/workflows/docker-beta.yml deleted file mode 100644 index 2198ea7d5..000000000 --- a/.github/workflows/docker-beta.yml +++ /dev/null @@ -1,52 +0,0 @@ -name: Publish Docker image (beta) - -on: - push: - branches: - - beta - workflow_dispatch: - -jobs: - push_to_registry: - name: Push Docker image to GitHub Container Registry - runs-on: ubuntu-22.04 - if: github.repository == 'MisskeyIO/misskey' - steps: - - name: Check out the repo - uses: actions/checkout@v4 - with: - fetch-depth: 0 - submodules: true - - name: Set up Docker Buildx - id: buildx - uses: docker/setup-buildx-action@v3 - with: - platforms: linux/amd64 - - name: Docker meta - id: meta - uses: docker/metadata-action@v5 - with: - images: ghcr.io/misskeyio/misskey - - name: Log in to GitHub Container Registry - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Prepare image tags - run: | - echo "FORMATTED_BRANCH_NAME=$(echo ${{ github.ref_name }} | sed -e 's/\//-/g' )" >> $GITHUB_ENV - - name: Build and Push to GitHub Container Registry - uses: docker/build-push-action@v6 - with: - builder: ${{ steps.buildx.outputs.name }} - context: . - push: true - platforms: ${{ steps.buildx.outputs.platforms }} - provenance: false - labels: ${{ env.FORMATTED_BRANCH_NAME }} - cache-from: type=registry,ref=ghcr.io/misskeyio/misskey:io-buildcache - cache-to: type=registry,ref=ghcr.io/misskeyio/misskey:io-buildcache,mode=max - tags: | - ghcr.io/misskeyio/misskey:beta - ghcr.io/misskeyio/misskey:${{ env.FORMATTED_BRANCH_NAME }} diff --git a/.github/workflows/docker-host.yml b/.github/workflows/docker-host.yml deleted file mode 100644 index 80928ff02..000000000 --- a/.github/workflows/docker-host.yml +++ /dev/null @@ -1,54 +0,0 @@ -name: Publish Docker image (host) - -on: - push: - branches: - - host - tags: - - '**-host.*' - workflow_dispatch: - -jobs: - push_to_registry: - name: Push Docker image to GitHub Container Registry - runs-on: ubuntu-22.04 - if: github.repository == 'MisskeyIO/misskey' - steps: - - name: Check out the repo - uses: actions/checkout@v4 - with: - fetch-depth: 0 - submodules: true - - name: Set up Docker Buildx - id: buildx - uses: docker/setup-buildx-action@v3 - with: - platforms: linux/amd64 - - name: Docker meta - id: meta - uses: docker/metadata-action@v5 - with: - images: ghcr.io/misskeyio/misskey - - name: Log in to GitHub Container Registry - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Prepare image tags - run: | - echo "FORMATTED_BRANCH_NAME=$(echo ${{ github.ref_name }} | sed -e 's/\//-/g' )" >> $GITHUB_ENV - - name: Build and Push to GitHub Container Registry - uses: docker/build-push-action@v6 - with: - builder: ${{ steps.buildx.outputs.name }} - context: . - push: true - platforms: ${{ steps.buildx.outputs.platforms }} - provenance: false - labels: ${{ env.FORMATTED_BRANCH_NAME }} - cache-from: type=registry,ref=ghcr.io/misskeyio/misskey:host-buildcache - cache-to: type=registry,ref=ghcr.io/misskeyio/misskey:host-buildcache,mode=max - tags: | - ghcr.io/misskeyio/misskey:host - ghcr.io/misskeyio/misskey:${{ env.FORMATTED_BRANCH_NAME }} diff --git a/.github/workflows/docker-io.yml b/.github/workflows/docker-io.yml deleted file mode 100644 index 578cb56d3..000000000 --- a/.github/workflows/docker-io.yml +++ /dev/null @@ -1,54 +0,0 @@ -name: Publish Docker image (io) - -on: - push: - branches: - - io - tags: - - '**-io.*' - workflow_dispatch: - -jobs: - push_to_registry: - name: Push Docker image to GitHub Container Registry - runs-on: ubuntu-22.04 - if: github.repository == 'MisskeyIO/misskey' - steps: - - name: Check out the repo - uses: actions/checkout@v4 - with: - fetch-depth: 0 - submodules: true - - name: Set up Docker Buildx - id: buildx - uses: docker/setup-buildx-action@v3 - with: - platforms: linux/amd64 - - name: Docker meta - id: meta - uses: docker/metadata-action@v5 - with: - images: ghcr.io/misskeyio/misskey - - name: Log in to GitHub Container Registry - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - name: Prepare image tags - run: | - echo "FORMATTED_BRANCH_NAME=$(echo ${{ github.ref_name }} | sed -e 's/\//-/g' )" >> $GITHUB_ENV - - name: Build and Push to GitHub Container Registry - uses: docker/build-push-action@v6 - with: - builder: ${{ steps.buildx.outputs.name }} - context: . - push: true - platforms: ${{ steps.buildx.outputs.platforms }} - provenance: false - labels: ${{ env.FORMATTED_BRANCH_NAME }} - cache-from: type=registry,ref=ghcr.io/misskeyio/misskey:io-buildcache - cache-to: type=registry,ref=ghcr.io/misskeyio/misskey:io-buildcache,mode=max - tags: | - ghcr.io/misskeyio/misskey:latest - ghcr.io/misskeyio/misskey:${{ env.FORMATTED_BRANCH_NAME }} diff --git a/.github/workflows/dockle.yml b/.github/workflows/dockle.yml deleted file mode 100644 index 39f32557f..000000000 --- a/.github/workflows/dockle.yml +++ /dev/null @@ -1,38 +0,0 @@ -name: Dockle - -on: - push: - branches: - - beta - - io - - host - pull_request: - -jobs: - dockle: - runs-on: ubuntu-latest - steps: - - name: Checkout code - uses: actions/checkout@v4 - with: - fetch-depth: 0 - submodules: true - - name: Build an image from Dockerfile - uses: docker/build-push-action@v6 - with: - context: . - push: false - provenance: false - cache-from: type=registry,ref=ghcr.io/misskeyio/misskey:io-buildcache - tags: | - misskey:scan - - name: Run dockle - uses: docker://goodwithtech/dockle:v0.4.14 - env: - DOCKLE_OUTPUT_FORMAT: list - DOCKLE_EXIT_CODE: 1 - DOCKLE_EXIT_LEVEL: WARN - DOCKLE_IGNORES: CIS-DI-0005,CIS-DI-0010 - DOCKLE_DEBUG: true - with: - args: 'misskey:scan' diff --git a/.github/workflows/labeler.yml b/.github/workflows/labeler.yml deleted file mode 100644 index 88e2aceae..000000000 --- a/.github/workflows/labeler.yml +++ /dev/null @@ -1,16 +0,0 @@ -name: "Pull Request Labeler" -on: - pull_request_target: - branches-ignore: - - 'l10n_develop' - -jobs: - triage: - permissions: - contents: read - pull-requests: write - runs-on: ubuntu-latest - steps: - - uses: actions/labeler@v5 - with: - repo-token: "${{ secrets.GITHUB_TOKEN }}" diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index dcb625626..d73df7858 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,5 +1,5 @@ # Contribution guide -We're glad you're interested in contributing Misskey! In this document you will find the information you need to contribute to the project. +We're glad you're interested in contributing Forkey! In this document you will find the information you need to contribute to the project. > **Note** > This project uses Japanese as its major language, **but you do not need to translate and write the Issues/PRs in Japanese.** @@ -161,7 +161,7 @@ pnpm dev ### Run test Create a config file. ``` -cp .github/misskey/test.yml .config/ +cp .forgejo/misskey/test.yml .config/ ``` Prepare DB/Redis for testing. ``` @@ -188,8 +188,8 @@ TODO - `MISSKEY_WEBFINGER_USE_HTTP`: If it's set true, WebFinger requests will be http instead of https, useful for testing federation between servers in localhost. NEVER USE IN PRODUCTION. ## Continuous integration -Misskey uses GitHub Actions for executing automated tests. -Configuration files are located in [`/.github/workflows`](/.github/workflows). +Misskey uses Forgejo Actions for executing automated tests. +Configuration files are located in [`/.forgejo/workflows`](/.forgejo/workflows). ## Vue Misskey uses Vue(v3) as its front-end framework. diff --git a/Dockerfile b/Dockerfile index 3d91b9f8c..12b70a89c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -14,7 +14,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ && apt-get install -yqq --no-install-recommends \ build-essential -WORKDIR /misskey +WORKDIR /forkey COPY --link pnpm-lock.yaml ./ RUN npm install -g pnpm @@ -45,7 +45,7 @@ RUN apt-get update \ && apt-get install -yqq --no-install-recommends \ build-essential -WORKDIR /misskey +WORKDIR /forkey COPY --link pnpm-lock.yaml ./ RUN npm install -g pnpm @@ -71,8 +71,8 @@ RUN apt-get update \ && apt-get install -y --no-install-recommends \ curl ffmpeg libjemalloc-dev libjemalloc2 tini \ && ln -s /usr/lib/$(uname -m)-linux-gnu/libjemalloc.so.2 /usr/local/lib/libjemalloc.so \ - && groupadd -g "${GID}" misskey \ - && useradd -l -u "${UID}" -g "${GID}" -m -d /misskey misskey \ + && groupadd -g "${GID}" forkey \ + && useradd -l -u "${UID}" -g "${GID}" -m -d /forkey forkey \ && find / -type d -path /sys -prune -o -type d -path /proc -prune -o -type f -perm /u+s -ignore_readdir_race -exec chmod u-s {} \; \ && find / -type d -path /sys -prune -o -type d -path /proc -prune -o -type f -perm /g+s -ignore_readdir_race -exec chmod g-s {} \; \ && apt-get clean \ @@ -80,27 +80,27 @@ RUN apt-get update \ WORKDIR /misskey -COPY --chown=misskey:misskey pnpm-lock.yaml ./ +COPY --chown=forkey:forkey pnpm-lock.yaml ./ RUN npm install -g pnpm -COPY --chown=misskey:misskey --from=target-builder /misskey/node_modules ./node_modules -COPY --chown=misskey:misskey --from=target-builder /misskey/packages/backend/node_modules ./packages/backend/node_modules -COPY --chown=misskey:misskey --from=target-builder /misskey/packages/misskey-js/node_modules ./packages/misskey-js/node_modules -COPY --chown=misskey:misskey --from=target-builder /misskey/packages/misskey-reversi/node_modules ./packages/misskey-reversi/node_modules -COPY --chown=misskey:misskey --from=target-builder /misskey/packages/misskey-bubble-game/node_modules ./packages/misskey-bubble-game/node_modules -COPY --chown=misskey:misskey --from=native-builder /misskey/built ./built -COPY --chown=misskey:misskey --from=native-builder /misskey/packages/misskey-js/built ./packages/misskey-js/built -COPY --chown=misskey:misskey --from=native-builder /misskey/packages/misskey-reversi/built ./packages/misskey-reversi/built -COPY --chown=misskey:misskey --from=native-builder /misskey/packages/misskey-bubble-game/built ./packages/misskey-bubble-game/built -COPY --chown=misskey:misskey --from=native-builder /misskey/packages/backend/built ./packages/backend/built -COPY --chown=misskey:misskey --from=native-builder /misskey/fluent-emojis /misskey/fluent-emojis -COPY --chown=misskey:misskey . ./ +COPY --chown=forkey:forkey --from=target-builder /forkey/node_modules ./node_modules +COPY --chown=forkey:forkey --from=target-builder /forkey/packages/backend/node_modules ./packages/backend/node_modules +COPY --chown=forkey:forkey --from=target-builder /forkey/packages/misskey-js/node_modules ./packages/misskey-js/node_modules +COPY --chown=forkey:forkey --from=target-builder /forkey/packages/misskey-reversi/node_modules ./packages/misskey-reversi/node_modules +COPY --chown=forkey:forkey --from=target-builder /forkey/packages/misskey-bubble-game/node_modules ./packages/misskey-bubble-game/node_modules +COPY --chown=forkey:forkey --from=native-builder /forkey/built ./built +COPY --chown=forkey:forkey --from=native-builder /forkey/packages/misskey-js/built ./packages/misskey-js/built +COPY --chown=forkey:forkey --from=native-builder /forkey/packages/misskey-reversi/built ./packages/misskey-reversi/built +COPY --chown=forkey:forkey --from=native-builder /forkey/packages/misskey-bubble-game/built ./packages/misskey-bubble-game/built +COPY --chown=forkey:forkey --from=native-builder /forkey/packages/backend/built ./packages/backend/built +COPY --chown=forkey:forkey --from=native-builder /forkey/fluent-emojis /forkey/fluent-emojis +COPY --chown=forkey:forkey . ./ -USER misskey +USER forkey ENV LD_PRELOAD=/usr/local/lib/libjemalloc.so ENV MALLOC_CONF=background_thread:true,metadata_thp:auto,dirty_decay_ms:30000,muzzy_decay_ms:30000 ENV TF_CPP_MIN_LOG_LEVEL=2 ENV NODE_ENV=production -HEALTHCHECK --interval=5s --retries=20 CMD ["/bin/bash", "/misskey/healthcheck.sh"] +HEALTHCHECK --interval=5s --retries=20 CMD ["/bin/bash", "/forkey/healthcheck.sh"] ENTRYPOINT ["/usr/bin/tini", "--"] CMD ["pnpm", "run", "migrateandstart:docker"] diff --git a/README.md b/README.md index c2a28371a..4035565d7 100644 --- a/README.md +++ b/README.md @@ -1,9 +1,9 @@
- Misskey logo + Forkey logo -**🌎 **Misskey** is an open source, federated social media platform that's free forever! 🚀** +**🌎 **Forkey** is an open source, federated social media platform that's free forever! 🚀** [Learn more](https://misskey-hub.net/) diff --git a/chart/templates/Deployment.yml b/chart/templates/Deployment.yml index 2d3c89e67..b30951360 100644 --- a/chart/templates/Deployment.yml +++ b/chart/templates/Deployment.yml @@ -30,11 +30,11 @@ spec: image: postgres:15-alpine env: - name: POSTGRES_USER - value: "example-misskey-user" + value: "example-forkey-user" - name: POSTGRES_PASSWORD - value: "example-misskey-pass" + value: "example-forkey-pass" - name: POSTGRES_DB - value: "misskey" + value: "forkey" ports: - containerPort: 5432 - name: dragonfly diff --git a/docker-compose_example.yml b/docker-compose_example.yml index 379bc3d77..fda5bcf42 100644 --- a/docker-compose_example.yml +++ b/docker-compose_example.yml @@ -20,8 +20,8 @@ services: - internal_network - external_network volumes: - - ./files:/misskey/files - - ./.config:/misskey/.config:ro + - ./files:/forkey/files + - ./.config:/forkey/.config:ro dragonfly: restart: always diff --git a/healthcheck.sh b/healthcheck.sh index d6d416c7a..a3ff3d87e 100644 --- a/healthcheck.sh +++ b/healthcheck.sh @@ -3,5 +3,5 @@ # SPDX-FileCopyrightText: syuilo and misskey-project # SPDX-License-Identifier: AGPL-3.0-only -PORT=$(grep '^port:' /misskey/.config/default.yml | awk 'NR==1{print $2; exit}') +PORT=$(grep '^port:' /forkey/.config/default.yml | awk 'NR==1{print $2; exit}') curl -s -S -o /dev/null "http://localhost:${PORT}" diff --git a/locales/ca-ES.yml b/locales/ca-ES.yml index 447c44494..bbc8b1468 100644 --- a/locales/ca-ES.yml +++ b/locales/ca-ES.yml @@ -1458,7 +1458,7 @@ _achievements: _login1000: title: "Mestre de les Notes III" description: "Vas iniciar sessió fa mil dies" - flavor: "Gràcies per fer servir MissKey!" + flavor: "Gràcies per fer servir Forkey!" _noteClipped1: title: "He de retallar-te!" description: "Retalla la teva primera nota" @@ -1518,9 +1518,9 @@ _achievements: title: "M'agraden els èxits " description: "Mira la teva llista d'assoliments durant més de 3 minuts" _iLoveMisskey: - title: "Estimo Misskey" - description: "Publica \"I ❤ #Misskey\"" - flavor: "L'equip de desenvolupament de Misskey agraeix el vostre suport!" + title: "Estimo Forkey" + description: "Publica \"I ❤ #Forkey\"" + flavor: "L'equip de desenvolupament de Forkey agraeix el vostre suport!" _foundTreasure: title: "A la Recerca del Tresor" description: "Has trobat el tresor amagat" @@ -1599,7 +1599,7 @@ _achievements: title: "Sobrecàrrega de proves" description: "Envia moltes notificacions de prova en un període de temps molt curt" _tutorialCompleted: - title: "Diploma del Curs Elemental de Misskey" + title: "Diploma del Curs Elemental de Forkey" description: "Has completat el tutorial" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/cs-CZ.yml b/locales/cs-CZ.yml index 993e06fd9..5eaa278c3 100644 --- a/locales/cs-CZ.yml +++ b/locales/cs-CZ.yml @@ -1235,7 +1235,7 @@ _achievements: _login1000: title: "Mistr poznámek III" description: "Přihlaste se celkově za 1000 dní" - flavor: "Děkujeme, že používáte Misskey!" + flavor: "Děkujeme, že používáte Forkey!" _noteClipped1: title: "Musím... připnout..." description: "Připněte si první poznámku" @@ -1295,9 +1295,9 @@ _achievements: title: "Máš rád úspěchy" description: "Koukejte na váš seznam úspěchů alespoň po dobu 3 minut" _iLoveMisskey: - title: "Miluju Misskey" - description: "Zveřejněte \" I ❤ #Misskey\"" - flavor: "Vývojový tým Misskey si velmi váží vaší podpory!" + title: "Miluju Forkey" + description: "Zveřejněte \" I ❤ #Forkey\"" + flavor: "Vývojový tým Forkey si velmi váží vaší podpory!" _foundTreasure: title: "Hon za pokladem" description: "Našli jste schovaný poklad!" diff --git a/locales/de-DE.yml b/locales/de-DE.yml index f2d0ad178..e7538d726 100644 --- a/locales/de-DE.yml +++ b/locales/de-DE.yml @@ -166,7 +166,7 @@ youCanCleanRemoteFilesCache: "Klicke auf den 🗑️-Knopf der Dateiverwaltungsa cacheRemoteSensitiveFiles: "Sensitive Dateien von fremden Instanzen im Cache speichern" cacheRemoteSensitiveFilesDescription: "Ist diese Einstellung deaktiviert, so werden sensitive Dateien fremder Instanzen direkt von dort ohne Zwischenspeicherung geladen." flagAsBot: "Als Bot markieren" -flagAsBotDescription: "Aktiviere diese Option, falls dieses Benutzerkonto durch ein Programm gesteuert wird. Falls aktiviert, agiert es als Flag für andere Entwickler zur Verhinderung von endlosen Kettenreaktionen mit anderen Bots und lässt Misskeys interne Systeme dieses Benutzerkonto als Bot behandeln." +flagAsBotDescription: "Aktiviere diese Option, falls dieses Benutzerkonto durch ein Programm gesteuert wird. Falls aktiviert, agiert es als Flag für andere Entwickler zur Verhinderung von endlosen Kettenreaktionen mit anderen Bots und lässt forkeys interne Systeme dieses Benutzerkonto als Bot behandeln." flagAsCat: "Als Katze markieren" flagAsCatDescription: "Aktiviere diese Option, um dieses Benutzerkonto als Katze zu markieren." flagShowTimelineReplies: "Antworten in der Chronik anzeigen" @@ -1374,7 +1374,7 @@ _achievements: _login1000: title: "Meister der Notizen Ⅲ" description: "An 1000 Tagen eingeloggt" - flavor: "Danke, dass du Misskey nutzt!" + flavor: "Danke, dass du Forkey nutzt!" _noteClipped1: title: "Muss... clippen..." description: "Die erste Notiz geclippt" @@ -1434,9 +1434,9 @@ _achievements: title: "Fan von Errungenschaften" description: "Schau dir die Liste deiner Errungenschaften für mindestens 3 Minuten an" _iLoveMisskey: - title: "I Love Misskey" - description: "Sende \"I ❤ #Misskey\"" - flavor: "Danke, dass du Misskey verwendest! - vom Entwicklerteam" + title: "I Love Forkey" + description: "Sende \"I ❤ #Forkey\"" + flavor: "Danke, dass du Forkey verwendest! - vom Entwicklerteam" _foundTreasure: title: "Schatzsuche" description: "Du hast einen verborgenen Schatz gefunden" diff --git a/locales/en-US.yml b/locales/en-US.yml index 0503d5b58..3cf165e3e 100644 --- a/locales/en-US.yml +++ b/locales/en-US.yml @@ -437,6 +437,7 @@ popularTags: "Popular tags" userList: "Lists" about: "About" aboutMisskey: "About Misskey" +aboutForkey: "About Forkey" administrator: "Administrator" token: "Token" 2fa: "Two-factor authentication" @@ -1510,9 +1511,9 @@ _achievements: earnedAt: "Unlocked at" _types: _notes1: - title: "just setting up my msky" + title: "just setting up my forkey" description: "Post your first note" - flavor: "Have a good time with Misskey!" + flavor: "Have a good time with Forkey!" _notes10: title: "Some notes" description: "Post 10 notes" @@ -1608,7 +1609,7 @@ _achievements: _login1000: title: "Master of Notes III" description: "Log in for a total of 1,000 days" - flavor: "Thank you for using Misskey!" + flavor: "Thank you for using Forkey!" _noteClipped1: title: "Must... clip..." description: "Clip your first note" @@ -1668,9 +1669,9 @@ _achievements: title: "Likes Achievements" description: "Look at your list of achievements for at least 3 minutes" _iLoveMisskey: - title: "I Love Misskey" - description: "Post \"I ❤ #Misskey\"" - flavor: "Misskey's development team greatly appreciates your support!" + title: "I Love Forkey" + description: "Post \"I ❤ #Forkey\"" + flavor: "Forkey's development team greatly appreciates your support!" _foundTreasure: title: "Treasure Hunt" description: "You've found the hidden treasure" @@ -1749,7 +1750,7 @@ _achievements: title: "Test overflow" description: "Trigger the notification test repeatedly within an extremely short time" _tutorialCompleted: - title: "Misskey Elementary Course Diploma" + title: "Forkey Elementary Course Diploma" description: "Tutorial completed" _bubbleGameExplodingHead: title: "🤯" @@ -1947,13 +1948,17 @@ _aboutMisskey: contributors: "Main contributors" allContributors: "All contributors" source: "Source code" - original: "Original" + original: "Misskey Original" thisIsModifiedVersion: "{name} uses a modified version of the original Misskey." translation: "Translate Misskey" donate: "Donate to Misskey" morePatrons: "We also appreciate the support of many other helpers not listed here. Thank you! 🥰" patrons: "Patrons" - projectMembers: "Project members" + projectMembers: "Misskey Project members" +_aboutForkey: + about: "Forkey is open-source software based on Misskey which has been in development by syuilo since 2014." + original: "Forkey Original" + projectMembers: "Forkey Project Members" _displayOfSensitiveMedia: respect: "Hide media marked as sensitive" ignore: "Display media marked as sensitive" diff --git a/locales/es-ES.yml b/locales/es-ES.yml index ca2202b76..3e5edb8a3 100644 --- a/locales/es-ES.yml +++ b/locales/es-ES.yml @@ -1476,7 +1476,7 @@ _achievements: _login1000: title: "Maestro III" description: "Días desde el inicio de sesión: 1000" - flavor: "¡Gracias por usar Misskey!" + flavor: "¡Gracias por usar Forkey!" _noteClipped1: title: "No puedo evitar clipearte..." description: "Hacer un clip por primera vez" @@ -1536,9 +1536,9 @@ _achievements: title: "¡Te gustan los logros!" description: "Mirando tus logros por 3 minutos" _iLoveMisskey: - title: "¡AMO Misskey!" - description: "\"I ❤ #Misskey\" Publicado" - flavor: "El equipo de desarrollo de Misskey, en verdad, ¡aprecia tu apoyo!" + title: "¡AMO Forkey!" + description: "\"I ❤ #Forkey\" Publicado" + flavor: "El equipo de desarrollo de Forkey, en verdad, ¡aprecia tu apoyo!" _foundTreasure: title: "Búsqueda del tesoro" description: "Encontraste un tesoro" @@ -1617,7 +1617,7 @@ _achievements: title: "Sobrecarga de pruebas" description: "Envía muchas notificaciones de prueba en un corto espacio de tiempo" _tutorialCompleted: - title: "Diploma del Curso Básico de Misskey" + title: "Diploma del Curso Básico de Forkey" description: "Tutorial completado" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/fr-FR.yml b/locales/fr-FR.yml index d20fc7682..4e2fbecd0 100644 --- a/locales/fr-FR.yml +++ b/locales/fr-FR.yml @@ -1393,7 +1393,7 @@ _achievements: _login900: description: "Se connecter pour un total de 900 jours" _login1000: - flavor: "Merci d'utiliser Misskey !" + flavor: "Merci d'utiliser Forkey !" _profileFilled: title: "Bien préparé" description: "Configuration de votre profil" @@ -1429,9 +1429,9 @@ _achievements: title: "Influenceur·euse" description: "Obtenir plus de 1000 abonné·e·s" _iLoveMisskey: - title: "J’adore Misskey" - description: "Publication « J’❤ #Misskey »" - flavor: "L'équipe de développement de Misskey apprécie vraiment votre aide !" + title: "J’adore Forkey" + description: "Publication « J’❤ #Forkey »" + flavor: "L'équipe de développement de Forkey apprécie vraiment votre aide !" _foundTreasure: title: "Chasse au trésor" description: "Vous avez trouvé le trésor caché" @@ -1472,7 +1472,7 @@ _achievements: title: "Débordement de tests" description: "Détruire le bouton de test de notifications dans un intervalle extrêmement court" _tutorialCompleted: - title: "Diplôme de la course élémentaire de Misskey" + title: "Diplôme de la course élémentaire de Forkey" description: "Terminer le tutoriel" _role: new: "Nouveau rôle" diff --git a/locales/id-ID.yml b/locales/id-ID.yml index ac7128b51..fa8009c24 100644 --- a/locales/id-ID.yml +++ b/locales/id-ID.yml @@ -1478,7 +1478,7 @@ _achievements: _login1000: title: "Sepuh Catatan III" description: "Login selama 1000 hari" - flavor: "Terima kasih telah menggunakan Misskey!" + flavor: "Terima kasih telah menggunakan Forkey!" _noteClipped1: title: "Harus... Ngeklip..." description: "Klip catatan pertamamu" @@ -1538,9 +1538,9 @@ _achievements: title: "Suka Pencapaian" description: "Lugat daftar pencapaianmu setidaknya 3 menit" _iLoveMisskey: - title: "I Love Misskey" - description: "Catat \"I ❤ #Misskey\"" - flavor: "Tim pengembang misskey sangat mengapresiasi dukungan kamu!" + title: "I Love Forkey" + description: "Catat \"I ❤ #Forkey\"" + flavor: "Tim pengembang forkey sangat mengapresiasi dukungan kamu!" _foundTreasure: title: "Berburu Harta Karun" description: "Kamu telah menemukan harta karun tersembunyi" @@ -1619,7 +1619,7 @@ _achievements: title: "Tes overflow" description: "Picu tes notifikasi secara berulang dalam waktu yang sangat pendek" _tutorialCompleted: - title: "Ijazah Sekolah Dasar Misskey" + title: "Ijazah Sekolah Dasar Forkey" description: "Tutorial selesai" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/index.d.ts b/locales/index.d.ts index dc56ba98a..da14073e8 100644 --- a/locales/index.d.ts +++ b/locales/index.d.ts @@ -1772,6 +1772,10 @@ export interface Locale extends ILocale { * Misskeyについて */ "aboutMisskey": string; + /** + * Forkeyについて + */ + "aboutForkey": string; /** * 管理者 */ @@ -6033,7 +6037,7 @@ export interface Locale extends ILocale { "_types": { "_notes1": { /** - * just setting up my msky + * just setting up my forkey */ "title": string; /** @@ -6041,7 +6045,7 @@ export interface Locale extends ILocale { */ "description": string; /** - * 良いMisskeyライフを! + * 良いForkeyライフを! */ "flavor": string; }; @@ -6365,7 +6369,7 @@ export interface Locale extends ILocale { */ "description": string; /** - * Misskeyを使ってくれてありがとう! + * Forkeyを使ってくれてありがとう! */ "flavor": string; }; @@ -6565,15 +6569,15 @@ export interface Locale extends ILocale { }; "_iLoveMisskey": { /** - * I Love Misskey + * I Love Forkey */ "title": string; /** - * "I ❤ #Misskey"を投稿した + * "I ❤ #Forkey"を投稿した */ "description": string; /** - * Misskeyを使ってくださりありがとうございます! by 開発チーム + * Forkeyを使ってくださりありがとうございます! by 開発チーム */ "flavor": string; }; @@ -7593,7 +7597,7 @@ export interface Locale extends ILocale { */ "source": string; /** - * オリジナル + * Misskeyオリジナル */ "original": string; /** @@ -7617,7 +7621,21 @@ export interface Locale extends ILocale { */ "patrons": string; /** - * プロジェクトメンバー + * Misskeyプロジェクトメンバー + */ + "projectMembers": string; + }; + "_aboutForkey": { + /** + * Forkey は、2014 年から syuilo によって開発されている Misskey をベースにしたオープンソース ソフトウェアです。 + */ + "about": string; + /** + * Forkeyに寄付 + */ + "original": string; + /** + * Forkeyプロジェクトメンバー */ "projectMembers": string; }; diff --git a/locales/it-IT.yml b/locales/it-IT.yml index 4590ec1a5..126d8ffc1 100644 --- a/locales/it-IT.yml +++ b/locales/it-IT.yml @@ -1476,7 +1476,7 @@ _achievements: _login1000: title: "Maestro di Note III livello" description: "Hai totalizzato 1000 accessi!" - flavor: "Grazie per aver usato Misskey!" + flavor: "Grazie per aver usato Forkey!" _noteClipped1: title: "Devo clippare!" description: "Hai raccolto la tua prima Nota in una Clip" @@ -1536,9 +1536,9 @@ _achievements: title: "Mi piacciono i risultati" description: "Guarda la tua collezione di obiettivi per almeno 3 minuti" _iLoveMisskey: - title: "I LOVE Misskey" - description: "Pubblica «I ♥ #Misskey»" - flavor: "Grazie per aver utilizzato Misskey! Dal team di sviluppo" + title: "I LOVE Forkey" + description: "Pubblica «I ♥ #Forkey»" + flavor: "Grazie per aver utilizzato Forkey! Dal team di sviluppo" _foundTreasure: title: "Caccia al tesoro" description: "Hai trovato un tesoro nascosto" @@ -1617,7 +1617,7 @@ _achievements: title: "Prove eccessive" description: "Hai provato le notifiche consecutivamente in un periodo di tempo molto breve" _tutorialCompleted: - title: "Attestato di partecipazione al corso per principianti di Misskey" + title: "Attestato di partecipazione al corso per principianti di Forkey" description: "Ha completato il tutorial" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index 4af35892b..0e4770453 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -439,6 +439,7 @@ popularTags: "人気のタグ" userList: "リスト" about: "情報" aboutMisskey: "Misskeyについて" +aboutForkey: "Forkeyについて" administrator: "管理者" token: "確認コード" 2fa: "二要素認証" @@ -1521,9 +1522,9 @@ _achievements: earnedAt: "獲得日時" _types: _notes1: - title: "just setting up my msky" + title: "just setting up my forkey" description: "初めてノートを投稿した" - flavor: "良いMisskeyライフを!" + flavor: "良いForkeyライフを!" _notes10: title: "いくつかのノート" description: "ノートを10回投稿した" @@ -1619,7 +1620,7 @@ _achievements: _login1000: title: "ノートマスターⅢ" description: "通算ログイン日数が1,000日" - flavor: "Misskeyを使ってくれてありがとう!" + flavor: "Forkeyを使ってくれてありがとう!" _noteClipped1: title: "クリップせずにはいられないな" description: "初めてノートをクリップした" @@ -1679,9 +1680,9 @@ _achievements: title: "実績好き" description: "実績一覧を3分以上眺め続けた" _iLoveMisskey: - title: "I Love Misskey" - description: "\"I ❤ #Misskey\"を投稿した" - flavor: "Misskeyを使ってくださりありがとうございます! by 開発チーム" + title: "I Love Forkey" + description: "\"I ❤ #Forkey\"を投稿した" + flavor: "Forkeyを使ってくださりありがとうございます! by 開発チーム" _foundTreasure: title: "宝探し" description: "隠されたお宝を発見した" @@ -1760,7 +1761,7 @@ _achievements: title: "テスト過剰" description: "通知のテストをごく短時間のうちに連続して行った" _tutorialCompleted: - title: "Misskey初心者講座 修了証" + title: "Forkey初心者講座 修了証" description: "チュートリアルを完了した" _bubbleGameExplodingHead: title: "🤯" @@ -1972,13 +1973,19 @@ _aboutMisskey: contributors: "コントリビューター" allContributors: "全てのコントリビューター" source: "ソースコード" - original: "オリジナル" + original: "Misskeyオリジナル" thisIsModifiedVersion: "{name}はオリジナルのMisskeyを改変したバージョンを使用しています。" translation: "Misskeyを翻訳" donate: "Misskeyに寄付" morePatrons: "他にも多くの方が支援してくれています。ありがとうございます🥰" patrons: "支援者" - projectMembers: "プロジェクトメンバー" + projectMembers: "Misskeyプロジェクトメンバー" + +_aboutForkey: + about: "Forkey は、2014 年から syuilo によって開発されている Misskey をベースにしたオープンソース ソフトウェアです。" + original: "Forkeyに寄付" + projectMembers: "Forkeyプロジェクトメンバー" + _displayOfSensitiveMedia: respect: "センシティブ設定されたメディアを隠す" diff --git a/locales/ja-KS.yml b/locales/ja-KS.yml index 06bd3e27a..871d96404 100644 --- a/locales/ja-KS.yml +++ b/locales/ja-KS.yml @@ -1478,7 +1478,7 @@ _achievements: _login1000: title: "ノートマイスターⅢ" description: "通算1,000日ログインした" - flavor: "Misskeyようさん使てもろておおきにな!" + flavor: "Forkeyようさん使てもろておおきにな!" _noteClipped1: title: "アカンどれもクリップしたいわ" description: "初めてノートをクリップした" @@ -1538,9 +1538,9 @@ _achievements: title: "実績好き" description: "実績一覧を3分以上眺め続けた" _iLoveMisskey: - title: "Misskey好きやねん" - description: "\"I ❤ #Misskey\"を投稿した" - flavor: "Misskeyを使ってくれておおきにな~ by 開発チーム" + title: "Forkey好きやねん" + description: "\"I ❤ #Forkey\"を投稿した" + flavor: "Forkeyを使ってくれておおきにな~ by 開発チーム" _foundTreasure: title: "なんでも鑑定団" description: "隠されたお宝を発見した" @@ -1619,7 +1619,7 @@ _achievements: title: "心配性" description: "通知のテストしすぎやって" _tutorialCompleted: - title: "Misskeyひよっこ講座 修了証" + title: "Forkeyひよっこ講座 修了証" description: "チュートリアル全部やった" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/ko-GS.yml b/locales/ko-GS.yml index c80a4d399..b8aed315d 100644 --- a/locales/ko-GS.yml +++ b/locales/ko-GS.yml @@ -700,7 +700,7 @@ _achievements: _myNoteFavorited1: description: "다런 사람이 내 노트럴 질겨찾기에 담앗십니다" _iLoveMisskey: - description: "“I ❤ #Misskey”럴 섰어예" + description: "“I ❤ #Forkey”럴 섰어예" _postedAt0min0sec: description: "0분 0초에 노트를 섰어예" _tutorialCompleted: diff --git a/locales/ko-KR.yml b/locales/ko-KR.yml index b25f4ec78..bb1dba5af 100644 --- a/locales/ko-KR.yml +++ b/locales/ko-KR.yml @@ -1590,7 +1590,7 @@ _achievements: _login1000: title: "노트 마스터 III" description: "총 1,000일간 로그인했습니다" - flavor: "Misskey를 사용해 주셔서 감사합니다!" + flavor: "Forkey를 사용해 주셔서 감사합니다!" _noteClipped1: title: "클립할 수밖에 없었어" description: "처음으로 노트를 클립했습니다" @@ -1650,9 +1650,9 @@ _achievements: title: "저 도전과제 좋아해요" description: "도전 과제 목록을 3분 이상 쳐다봤습니다" _iLoveMisskey: - title: "I Love Misskey" - description: "\"I ❤ #Misskey\"를 포스트했습니다" - flavor: "Misskey를 이용해 주셔서 감사합니다! ― 개발 팀" + title: "I Love Forkey" + description: "\"I ❤ #Forkey\"를 포스트했습니다" + flavor: "Forkey를 이용해 주셔서 감사합니다! ― 개발 팀" _foundTreasure: title: "보물찾기" description: "숨겨진 보물을 발견했습니다" @@ -1731,7 +1731,7 @@ _achievements: title: "테스트 과잉" description: "매우 짧은 시간 안에 알림 테스트를 여러 번 수행했습니다" _tutorialCompleted: - title: "Misskey 입문자 과정 수료증" + title: "Forkey 입문자 과정 수료증" description: "튜토리얼을 완료했습니다" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/no-NO.yml b/locales/no-NO.yml index 475f93267..d61149416 100644 --- a/locales/no-NO.yml +++ b/locales/no-NO.yml @@ -127,7 +127,7 @@ emojis: "Emojier" addEmoji: "Legg til emoji" settingGuide: "Anbefalte innstillinger" flagAsBot: "Merk denne kontoen som en bot" -flagAsBotDescription: "Aktiver dette alternativet hvis denne kontoen styres av et program. Hvis det er aktivert, vil det fungere som et flagg for andre utviklere for å forhindre endeløse interaksjonskjeder med andre roboter og justere Misskeys interne systemer til å behandle denne kontoen som en bot." +flagAsBotDescription: "Aktiver dette alternativet hvis denne kontoen styres av et program. Hvis det er aktivert, vil det fungere som et flagg for andre utviklere for å forhindre endeløse interaksjonskjeder med andre roboter og justere forkeys interne systemer til å behandle denne kontoen som en bot." flagAsCat: "Merk denne kontoen som en katt" flagAsCatDescription: "Aktiver dette alternativet for å merke denne kontoen som en katt." flagShowTimelineReplies: "Vis svar i tidslinje" diff --git a/locales/pt-PT.yml b/locales/pt-PT.yml index 2cd62f1f9..e9e2c5dee 100644 --- a/locales/pt-PT.yml +++ b/locales/pt-PT.yml @@ -1125,7 +1125,7 @@ _achievements: _login1000: title: "Mestre das notas III" description: "Fez login por um total de 1000 dias" - flavor: "Obrigado por utilizar o Misskey!" + flavor: "Obrigado por utilizar o Forkey!" _noteClipped1: title: "Não posso deixar de adicionar ao clipe" description: "Adicionou a um clipe a sua primeira nota" diff --git a/locales/ru-RU.yml b/locales/ru-RU.yml index 074a1ab95..6fcd3d161 100644 --- a/locales/ru-RU.yml +++ b/locales/ru-RU.yml @@ -1219,7 +1219,7 @@ _achievements: _login1000: title: "Повелитель заметок Ⅲ" description: "1000 дней на сайте" - flavor: "Спасибо, что пользуетесь Misskey!" + flavor: "Спасибо, что пользуетесь Forkey!" _noteClipped1: title: "Нельзя не сохранить" description: "Первая заметка в подборке" @@ -1279,9 +1279,9 @@ _achievements: title: "Любовь к успехам" description: "Более 3 минут любования достижениями" _iLoveMisskey: - title: "Я люблю Misskey" - description: "Написана заметка «I ❤ #Misskey»" - flavor: "Спасибо за поддержку Misskey! Ваша команда разработчиков" + title: "Я люблю Forkey" + description: "Написана заметка «I ❤ #Forkey»" + flavor: "Спасибо за поддержку Forkey! Ваша команда разработчиков" _foundTreasure: title: "Охота за сокровищами" description: "Найдено спрятанное сокровище" diff --git a/locales/sv-SE.yml b/locales/sv-SE.yml index 83c9278ab..7b22a9faa 100644 --- a/locales/sv-SE.yml +++ b/locales/sv-SE.yml @@ -152,7 +152,7 @@ settingGuide: "Rekommenderade inställningar" cacheRemoteFiles: "Spara externa filer till cachen" cacheRemoteFilesDescription: "När denna inställning är avstängd kommer externa filer laddas direkt från den externa instansen. Genom att stänga av detta kommer lagringsutrymme minska i användning men kommer öka datatrafiken eftersom miniatyrer inte kommer genereras." flagAsBot: "Markera konto som bot" -flagAsBotDescription: "Aktivera det här alternativet om kontot är kontrollerat av ett program. Om aktiverat kommer den fungera som en flagga för andra utvecklare för att hindra ändlösa kedjor med andra bottar. Det kommer också få Misskeys interna system att hantera kontot som en bot." +flagAsBotDescription: "Aktivera det här alternativet om kontot är kontrollerat av ett program. Om aktiverat kommer den fungera som en flagga för andra utvecklare för att hindra ändlösa kedjor med andra bottar. Det kommer också få forkeys interna system att hantera kontot som en bot." flagAsCat: "Markera konto som katt" flagAsCatDescription: "Aktivera denna inställning för att markera kontot som en katt." flagShowTimelineReplies: "Visa svar i tidslinje" diff --git a/locales/th-TH.yml b/locales/th-TH.yml index 0ecafb94e..c1a297394 100644 --- a/locales/th-TH.yml +++ b/locales/th-TH.yml @@ -1380,9 +1380,9 @@ _achievements: earnedAt: "ได้รับเมื่อ" _types: _notes1: - title: "just setting up my msky" + title: "just setting up my forkey" description: "โพสต์โน้ตแรกของคุณ" - flavor: "ขอให้มีช่วงเวลาที่ดีกับ Misskey นะคะ!" + flavor: "ขอให้มีช่วงเวลาที่ดีกับ Forkey นะคะ!" _notes10: title: "โน้ตไม่กี่ชิ้น" description: "โพสต์ 10 โน้ต" @@ -1478,7 +1478,7 @@ _achievements: _login1000: title: "ปรมาจารย์ด้านโน้ต III" description: "เข้าสู่ระบบเป็นเวลารวม 1,000 วัน" - flavor: "ขอบคุณที่ใช้ Misskey นะ !" + flavor: "ขอบคุณที่ใช้ Forkey นะ !" _noteClipped1: title: "อดไม่ได้ที่จะต้องคลิปมันเอาไว้" description: "คลิปโน้ตตัวแรกของคุณ" @@ -1538,9 +1538,9 @@ _achievements: title: "ชอบบรรลุความสําเร็จ" description: "มองดูรายการความสำเร็จของคุณเป็นเวลาอย่างน้อย 3 นาที" _iLoveMisskey: - title: "ฉันรัก Misskey" - description: "โพสต์ “I ❤ #Misskey”" - flavor: "ขอบคุณพระคุณเป็นอย่างสูงที่ท่านใช้ Misskey นะคะ ! by ทีมผู้พัฒนา" + title: "ฉันรัก Forkey" + description: "โพสต์ “I ❤ #Forkey”" + flavor: "ขอบคุณพระคุณเป็นอย่างสูงที่ท่านใช้ Forkey นะคะ ! by ทีมผู้พัฒนา" _foundTreasure: title: "ล่าสมบัติ" description: "คุณพบสมบัติที่ซ่อนอยู่" @@ -1619,7 +1619,7 @@ _achievements: title: "ทดสอบโอเวอร์โฟลว์" description: "ทดสอบการแจ้งเตือนทริกเกอร์ซ้ำๆ ภายในระยะเวลาอันสั้นๆ" _tutorialCompleted: - title: "ใบรับรองการสำเร็จหลักสูตร Misskey มือใหม่" + title: "ใบรับรองการสำเร็จหลักสูตร Forkey มือใหม่" description: "เสร็จสิ้นการสอนแล้ว" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/uk-UA.yml b/locales/uk-UA.yml index 02b6543cf..87dc79dff 100644 --- a/locales/uk-UA.yml +++ b/locales/uk-UA.yml @@ -1017,7 +1017,7 @@ _achievements: _login1000: title: "Майстер нотаток III" description: "1000 днів користування загально" - flavor: "Дякуємо, що користуєтеся Misskey!" + flavor: "Дякуємо, що користуєтеся Forkey!" _noteClipped1: title: "Не можна не зберегти" description: "Перша нотатка у добірці" @@ -1072,9 +1072,9 @@ _achievements: title: "Шанувальник досягнень" description: "Переглядати список досягнень принаймні 3 хвилини" _iLoveMisskey: - title: "I Love Misskey" - description: "Відправлено \"I ❤ #Misskey\"" - flavor: "Дякуємо вам, що користуєтесь Misskey! – команда розробників" + title: "I Love Forkey" + description: "Відправлено \"I ❤ #Forkey\"" + flavor: "Дякуємо вам, що користуєтесь Forkey! – команда розробників" _foundTreasure: title: "Пошуки скарбів" description: "Ви знайшли прихований скарб" diff --git a/locales/vi-VN.yml b/locales/vi-VN.yml index 870867893..9e53cea31 100644 --- a/locales/vi-VN.yml +++ b/locales/vi-VN.yml @@ -1157,9 +1157,9 @@ _achievements: earnedAt: "Ngày thu nhận" _types: _notes1: - title: "just setting up my msky" + title: "just setting up my forkey" description: "Lần đầu tiên đăng bài" - flavor: "Chúc bạn trên Miskey vui vẻ nha!!" + flavor: "Chúc bạn trên Forkey vui vẻ nha!!" _notes10: title: "Một số bài viết" description: "Đăng bài 10 lần" @@ -1225,7 +1225,7 @@ _achievements: title: "Khách hàng thường xuyên cấp III" description: "Tổng số ngày đăng nhập đạt 400 ngày" _login1000: - flavor: "Cảm ơn bạn đã sử dụng Misskey!" + flavor: "Cảm ơn bạn đã sử dụng Forkey!" _noteFavorited1: title: "Nhà thiên văn học" _myNoteFavorited1: @@ -1280,9 +1280,9 @@ _achievements: title: "Yêu Thành tích" description: "Ngắm danh sách thành tích đến tận hơn 3 phút" _iLoveMisskey: - title: "Tôi Yêu Misskey" - description: "Đăng lời nói \"I ❤ #Misskey\"" - flavor: "Xin chân thành cảm ơn bạn đã sử dụng Misskey!! by Đội ngũ phát triển" + title: "Tôi Yêu Forkey" + description: "Đăng lời nói \"I ❤ #Forkey\"" + flavor: "Xin chân thành cảm ơn bạn đã sử dụng Forkey!! by Đội ngũ phát triển" _foundTreasure: title: "Tìm kiếm kho báu" description: "Tìm thấy được những kho báu cất giấu" diff --git a/locales/zh-CN.yml b/locales/zh-CN.yml index 515450758..4b5ff0370 100644 --- a/locales/zh-CN.yml +++ b/locales/zh-CN.yml @@ -1499,7 +1499,7 @@ _achievements: _login1000: title: "帖子大师 Ⅲ" description: "累计登录 1000 天" - flavor: "感谢您使用 Misskey!" + flavor: "感谢您使用 Forkey!" _noteClipped1: title: "忍不住要收藏到便签" description: "第一次将贴文贴进便签" @@ -1559,9 +1559,9 @@ _achievements: title: "成就爱好者" description: "盯着成就看三分钟" _iLoveMisskey: - title: "I Love Misskey" - description: "发布 \"I ❤ #Misskey\" 帖子" - flavor: "感谢您使用 Misskey ! by 开发团队" + title: "I Love Forkey" + description: "发布 \"I ❤ #Forkey\" 帖子" + flavor: "感谢您使用 Forkey ! by 开发团队" _foundTreasure: title: "寻宝" description: "发现了隐藏的宝藏" @@ -1640,7 +1640,7 @@ _achievements: title: "过度测试" description: "短时间内连续测试通知" _tutorialCompleted: - title: "Misskey 初学者课程 结业证书" + title: "Forkey 初学者课程 结业证书" description: "完成了教学" _bubbleGameExplodingHead: title: "🤯" diff --git a/locales/zh-TW.yml b/locales/zh-TW.yml index a759f4320..2e09a4c09 100644 --- a/locales/zh-TW.yml +++ b/locales/zh-TW.yml @@ -1478,7 +1478,7 @@ _achievements: _login1000: title: "貼文大師ⅠⅠⅠ" description: "總登入天數為一千天" - flavor: "感謝您使用 Misskey!" + flavor: "感謝您使用 Forkey!" _noteClipped1: title: "忍不住要收進摘錄裡" description: "第一次將貼文收進摘錄" @@ -1540,7 +1540,7 @@ _achievements: _iLoveMisskey: title: "I Love Misskey" description: "發佈「I ❤ #Misskey」" - flavor: "感謝您使用 Misskey!by 開發團隊" + flavor: "感謝您使用 Forkey!by 開發團隊" _foundTreasure: title: "尋寶" description: "發現了隱藏的寶藏" @@ -1619,7 +1619,7 @@ _achievements: title: "過度測試" description: "極短時間內連續測試通知" _tutorialCompleted: - title: "Misskey新手講座 結業證書" + title: "Forkey新手講座 結業證書" description: "已完成教學課程" _bubbleGameExplodingHead: title: "🤯" diff --git a/package.json b/package.json index a1ea5befe..cf0e4892f 100644 --- a/package.json +++ b/package.json @@ -1,10 +1,10 @@ { - "name": "misskey", + "name": "forkey", "version": "2024.5.0-io.5e", "codename": "nasubi", "repository": { "type": "git", - "url": "https://github.com/MisskeyIO/misskey.git" + "url": "https://git.woem.men/woem.men/forkey.git" }, "packageManager": "pnpm@9.15.0", "workspaces": [ diff --git a/packages/backend/assets/redoc.html b/packages/backend/assets/redoc.html index 2557b4532..fb8b483dd 100644 --- a/packages/backend/assets/redoc.html +++ b/packages/backend/assets/redoc.html @@ -1,7 +1,7 @@ - Misskey API + Forkey API diff --git a/packages/backend/src/boot/entry.ts b/packages/backend/src/boot/entry.ts index dbfb53878..bb95619c0 100644 --- a/packages/backend/src/boot/entry.ts +++ b/packages/backend/src/boot/entry.ts @@ -19,7 +19,7 @@ import { workerMain } from './worker.js'; import 'reflect-metadata'; -process.title = `Misskey (${cluster.isPrimary ? 'master' : 'worker'})`; +process.title = `Forkey (${cluster.isPrimary ? 'master' : 'worker'})`; Error.stackTraceLimit = Infinity; EventEmitter.defaultMaxListeners = 128; diff --git a/packages/backend/src/boot/master.ts b/packages/backend/src/boot/master.ts index b14a8f4dc..043004652 100644 --- a/packages/backend/src/boot/master.ts +++ b/packages/backend/src/boot/master.ts @@ -28,24 +28,25 @@ const themeColor = chalk.hex('#86b300'); function greet() { if (!envOption.quiet && !envOption.logJson) { - //#region Misskey logo + //#region Forkey logo const v = `v${meta.version}`; - console.log(themeColor(' _____ _ _ ')); - console.log(themeColor(' | |_|___ ___| |_ ___ _ _ ')); - console.log(themeColor(' | | | | |_ -|_ -| \'_| -_| | |')); - console.log(themeColor(' |_|_|_|_|___|___|_,_|___|_ |')); - console.log(' ' + chalk.gray(v) + themeColor(' |___|\n'.substring(v.length))); + console.log(themeColor('███████╗░█████╗░██████╗░██╗░░██╗███████╗██╗░░░██╗')); + console.log(themeColor('██╔════╝██╔══██╗██╔══██╗██║░██╔╝██╔════╝╚██╗░██╔╝')); + console.log(themeColor('█████╗░░██║░░██║██████╔╝█████═╝░█████╗░░░╚████╔╝░')); + console.log(themeColor('██╔══╝░░██║░░██║██╔══██╗██╔═██╗░██╔══╝░░░░╚██╔╝░░')); + console.log(themeColor('██║░░░░░╚█████╔╝██║░░██║██║░╚██╗███████╗░░░██║░░░')); + console.log(' ' + chalk.gray(v) + themeColor('╚═╝░░░░░░╚════╝░╚═╝░░╚═╝╚═╝░░╚═╝╚══════╝░░░╚═╝░░░\n'.substring(v.length))); //#endregion - console.log(' Misskey is an open-source decentralized microblogging platform.'); - console.log(chalk.rgb(255, 136, 0)(' If you like Misskey, please donate to support development. https://www.patreon.com/syuilo')); + console.log(' Forkey is an open-source decentralized microblogging platform.'); + // console.log(chalk.rgb(255, 136, 0)(' If you like Forkey, please donate to support development. https://www.patreon.com/syuilo')); console.log(''); console.log(chalkTemplate`--- ${os.hostname()} {gray (PID: ${process.pid.toString()})} ---`); } - bootLogger.info('Welcome to Misskey!'); - bootLogger.info(`Misskey v${meta.version}`, { version: meta.version, hostname: os.hostname(), pid: process.pid }, true); + bootLogger.info('Welcome to Forkey!'); + bootLogger.info(`Forkey v${meta.version}`, { version: meta.version, hostname: os.hostname(), pid: process.pid }, true); } /** @@ -68,7 +69,7 @@ export async function masterMain() { process.exit(1); } - bootLogger.succ('Misskey initialized'); + bootLogger.succ('Forkey initialized'); if (envOption.disableClustering) { if (envOption.onlyServer) { diff --git a/packages/backend/src/core/chart/ChartManagementService.ts b/packages/backend/src/core/chart/ChartManagementService.ts index 79681370a..f04c56106 100644 --- a/packages/backend/src/core/chart/ChartManagementService.ts +++ b/packages/backend/src/core/chart/ChartManagementService.ts @@ -58,9 +58,9 @@ export class ChartManagementService implements OnApplicationShutdown { @bindThis public async start() { // 20分おきにメモリ情報をDBに書き込み - this.saveIntervalId = setInterval(() => { + this.saveIntervalId = setInterval(async () => { for (const chart of this.charts) { - chart.save(); + await chart.save(); } }, 1000 * 60 * 20); } @@ -69,9 +69,9 @@ export class ChartManagementService implements OnApplicationShutdown { public async dispose(): Promise { clearInterval(this.saveIntervalId); if (process.env.NODE_ENV !== 'test') { - await Promise.all( - this.charts.map(chart => chart.save()), - ); + for (const chart of this.charts) { + await chart.save(); + } } } diff --git a/packages/backend/src/misc/secure-rndstr.ts b/packages/backend/src/misc/secure-rndstr.ts index 7853100d8..3da67826a 100644 --- a/packages/backend/src/misc/secure-rndstr.ts +++ b/packages/backend/src/misc/secure-rndstr.ts @@ -9,17 +9,9 @@ export const L_CHARS = '0123456789abcdefghijklmnopqrstuvwxyz'; const LU_CHARS = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; export function secureRndstr(length = 32, { chars = LU_CHARS } = {}): string { - const chars_len = chars.length; - let str = ''; - for (let i = 0; i < length; i++) { - let rand = Math.floor((crypto.randomBytes(1).readUInt8(0) / 0xFF) * chars_len); - if (rand === chars_len) { - rand = chars_len - 1; - } - str += chars.charAt(rand); + str += chars.charAt(crypto.randomInt(chars.length)); } - return str; } diff --git a/packages/backend/src/models/Meta.ts b/packages/backend/src/models/Meta.ts index 6ea1c1e2c..dbc5a4c1e 100644 --- a/packages/backend/src/models/Meta.ts +++ b/packages/backend/src/models/Meta.ts @@ -385,14 +385,14 @@ export class MiMeta { @Column('varchar', { length: 1024, - default: 'https://github.com/misskey-dev/misskey', + default: 'https://git.woem.men/woem.men/forkey', nullable: true, }) public repositoryUrl: string | null; @Column('varchar', { length: 1024, - default: 'https://github.com/misskey-dev/misskey/issues/new', + default: 'https://git.woem.men/woem.men/forkey/issues', nullable: true, }) public feedbackUrl: string | null; diff --git a/packages/backend/src/models/json-schema/federation-instance.ts b/packages/backend/src/models/json-schema/federation-instance.ts index 62009e909..432a66fc5 100644 --- a/packages/backend/src/models/json-schema/federation-instance.ts +++ b/packages/backend/src/models/json-schema/federation-instance.ts @@ -52,7 +52,7 @@ export const packedFederationInstanceSchema = { softwareName: { type: 'string', optional: false, nullable: true, - example: 'misskey', + example: 'forkey', }, softwareVersion: { type: 'string', diff --git a/packages/backend/src/models/json-schema/hashtag.ts b/packages/backend/src/models/json-schema/hashtag.ts index 4fd136afe..9b0c5e9aa 100644 --- a/packages/backend/src/models/json-schema/hashtag.ts +++ b/packages/backend/src/models/json-schema/hashtag.ts @@ -9,7 +9,7 @@ export const packedHashtagSchema = { tag: { type: 'string', optional: false, nullable: false, - example: 'misskey', + example: 'forkey', }, mentionedUsersCount: { type: 'number', diff --git a/packages/backend/src/models/json-schema/user.ts b/packages/backend/src/models/json-schema/user.ts index 7aa4350b3..1fc71c2ac 100644 --- a/packages/backend/src/models/json-schema/user.ts +++ b/packages/backend/src/models/json-schema/user.ts @@ -651,6 +651,14 @@ export const packedMeDetailedOnlySchema = { type: 'boolean', nullable: true, optional: true, }, + approved: { + type: 'boolean', + nullable: false, optional: true, + }, + signupReason: { + type: 'string', + nullable: true, optional: true, + }, securityKeysList: { type: 'array', nullable: false, optional: true, diff --git a/packages/backend/src/queue/processors/CleanChartsProcessorService.ts b/packages/backend/src/queue/processors/CleanChartsProcessorService.ts index 110468801..19f98c0d5 100644 --- a/packages/backend/src/queue/processors/CleanChartsProcessorService.ts +++ b/packages/backend/src/queue/processors/CleanChartsProcessorService.ts @@ -48,20 +48,18 @@ export class CleanChartsProcessorService { public async process(): Promise { this.logger.info('Clean charts...'); - await Promise.all([ - this.federationChart.clean(), - this.notesChart.clean(), - this.usersChart.clean(), - this.activeUsersChart.clean(), - this.instanceChart.clean(), - this.perUserNotesChart.clean(), - this.perUserPvChart.clean(), - this.driveChart.clean(), - this.perUserReactionsChart.clean(), - this.perUserFollowingChart.clean(), - this.perUserDriveChart.clean(), - this.apRequestChart.clean(), - ]); + await this.federationChart.clean(); + await this.notesChart.clean(); + await this.usersChart.clean(); + await this.activeUsersChart.clean(); + await this.instanceChart.clean(); + await this.perUserNotesChart.clean(); + await this.perUserPvChart.clean(); + await this.driveChart.clean(); + await this.perUserReactionsChart.clean(); + await this.perUserFollowingChart.clean(); + await this.perUserDriveChart.clean(); + await this.apRequestChart.clean(); this.logger.succ('All charts successfully cleaned.'); } diff --git a/packages/backend/src/queue/processors/ResyncChartsProcessorService.ts b/packages/backend/src/queue/processors/ResyncChartsProcessorService.ts index 570cdf9a7..46e1adf17 100644 --- a/packages/backend/src/queue/processors/ResyncChartsProcessorService.ts +++ b/packages/backend/src/queue/processors/ResyncChartsProcessorService.ts @@ -31,11 +31,9 @@ export class ResyncChartsProcessorService { // TODO: ユーザーごとのチャートも更新する // TODO: インスタンスごとのチャートも更新する - await Promise.all([ - this.driveChart.resync(), - this.notesChart.resync(), - this.usersChart.resync(), - ]); + await this.driveChart.resync(); + await this.notesChart.resync(); + await this.usersChart.resync(); this.logger.succ('All charts successfully resynced.'); } diff --git a/packages/backend/src/queue/processors/TickChartsProcessorService.ts b/packages/backend/src/queue/processors/TickChartsProcessorService.ts index 93ec34162..c09cbccc5 100644 --- a/packages/backend/src/queue/processors/TickChartsProcessorService.ts +++ b/packages/backend/src/queue/processors/TickChartsProcessorService.ts @@ -48,20 +48,18 @@ export class TickChartsProcessorService { public async process(): Promise { this.logger.info('Tick charts...'); - await Promise.all([ - this.federationChart.tick(false), - this.notesChart.tick(false), - this.usersChart.tick(false), - this.activeUsersChart.tick(false), - this.instanceChart.tick(false), - this.perUserNotesChart.tick(false), - this.perUserPvChart.tick(false), - this.driveChart.tick(false), - this.perUserReactionsChart.tick(false), - this.perUserFollowingChart.tick(false), - this.perUserDriveChart.tick(false), - this.apRequestChart.tick(false), - ]); + await this.federationChart.tick(false); + await this.notesChart.tick(false); + await this.usersChart.tick(false); + await this.activeUsersChart.tick(false); + await this.instanceChart.tick(false); + await this.perUserNotesChart.tick(false); + await this.perUserPvChart.tick(false); + await this.driveChart.tick(false); + await this.perUserReactionsChart.tick(false); + await this.perUserFollowingChart.tick(false); + await this.perUserDriveChart.tick(false); + await this.apRequestChart.tick(false); this.logger.succ('All charts successfully ticked.'); } diff --git a/packages/backend/src/server/NodeinfoServerService.ts b/packages/backend/src/server/NodeinfoServerService.ts index 22d673cd2..4d0ac33be 100644 --- a/packages/backend/src/server/NodeinfoServerService.ts +++ b/packages/backend/src/server/NodeinfoServerService.ts @@ -77,7 +77,7 @@ export class NodeinfoServerService { // eslint-disable-next-line @typescript-eslint/no-explicit-any const document: any = { software: { - name: 'misskey', + name: 'forkey', version: this.config.version, homepage: nodeinfo_homepage, repository: meta.repositoryUrl, diff --git a/packages/backend/src/server/api/SignupApiService.ts b/packages/backend/src/server/api/SignupApiService.ts index 6466bb36c..0401804ab 100644 --- a/packages/backend/src/server/api/SignupApiService.ts +++ b/packages/backend/src/server/api/SignupApiService.ts @@ -251,14 +251,14 @@ export class SignupApiService { } else { try { const { account, secret } = await this.signupService.signup({ - username, password, host, reason + username, password, host, reason, }); if (instance.approvalRequiredForSignup) { if (emailAddress) { this.emailService.sendEmail(emailAddress, 'Approval pending', - 'Congratulations! Your account is now pending approval. You will get notified when you have been accepted.', - 'Congratulations! Your account is now pending approval. You will get notified when you have been accepted.'); + 'Congratulations! Your account is now pending approval. You will get notified when you have been accepted.', + 'Congratulations! Your account is now pending approval. You will get notified when you have been accepted.'); } } diff --git a/packages/backend/src/server/api/endpoints/admin/decline-user.ts b/packages/backend/src/server/api/endpoints/admin/decline-user.ts index 4c8ccb98b..04b2fc5f7 100644 --- a/packages/backend/src/server/api/endpoints/admin/decline-user.ts +++ b/packages/backend/src/server/api/endpoints/admin/decline-user.ts @@ -63,12 +63,10 @@ export default class extends Endpoint { // eslint- await this.usedUsernamesRepository.delete({ username: user.username }); - //Actually delete it since the last function doesnt actually delete the account //Note: Before approval these accounts wont federate so this is totally fine. await this.usersRepository.delete(user.id); - this.moderationLogService.log(me, 'decline', { userId: user.id, userUsername: user.username, diff --git a/packages/backend/src/server/api/endpoints/following/create.ts b/packages/backend/src/server/api/endpoints/following/create.ts index 5340901d3..eab638062 100644 --- a/packages/backend/src/server/api/endpoints/following/create.ts +++ b/packages/backend/src/server/api/endpoints/following/create.ts @@ -37,9 +37,9 @@ export const meta = { unapprovedUser: { message: 'The user has not been approved yet.', - code: 'UNAPPROVED_USER', - id: '8d66f136-b3e1-48fd-92c4-30ecfd7fdb7a', - }, + code: 'UNAPPROVED_USER', + id: '8d66f136-b3e1-48fd-92c4-30ecfd7fdb7a', + }, followeeIsYourself: { message: 'Followee is yourself.', diff --git a/packages/backend/src/server/api/endpoints/notes/create.ts b/packages/backend/src/server/api/endpoints/notes/create.ts index 5bff7f718..963f3bbfd 100644 --- a/packages/backend/src/server/api/endpoints/notes/create.ts +++ b/packages/backend/src/server/api/endpoints/notes/create.ts @@ -40,7 +40,7 @@ export const meta = { res: { type: 'object', - optional: false, nullable: false, + optional: true, nullable: false, properties: { createdNote: { type: 'object', @@ -207,6 +207,7 @@ export const paramDef = { }, required: ['choices'], }, + noCreatedNote: { type: 'boolean', default: false }, }, // (re)note with text, files and poll are optional if: { @@ -281,7 +282,8 @@ export default class extends Endpoint { // eslint- const note = await this.notesRepository.findOneBy({ id: idempotent }); if (note) { logger.info('The request has already been processed.', { noteId: note.id }); - return { createdNote: await this.noteEntityService.pack(note, me) }; + if (ps.noCreatedNote) return; + else return { createdNote: await this.noteEntityService.pack(note, me) }; } } @@ -453,7 +455,8 @@ export default class extends Endpoint { // eslint- await this.redisForTimelines.set(`note:idempotent:${me.id}:${hash}`, note.id, 'EX', 60); logger.info('Successfully created a note.', { noteId: note.id }); - return { + if (ps.noCreatedNote) return; + else return { createdNote: await this.noteEntityService.pack(note, me), }; } catch (err) { diff --git a/packages/backend/src/server/api/openapi/gen-spec.ts b/packages/backend/src/server/api/openapi/gen-spec.ts index 40380904e..a08bff08c 100644 --- a/packages/backend/src/server/api/openapi/gen-spec.ts +++ b/packages/backend/src/server/api/openapi/gen-spec.ts @@ -14,13 +14,13 @@ export function genOpenapiSpec(config: Config, includeSelfRef = false) { info: { version: config.version, - title: 'Misskey API', + title: 'Forkey API', 'x-logo': { url: '/static-assets/api-doc.png' }, }, externalDocs: { description: 'Repository', - url: 'https://github.com/MisskeyIO/misskey', + url: 'https://git.woem.men/woem.men/forkey', }, servers: [{ diff --git a/packages/backend/src/server/web/ClientServerService.ts b/packages/backend/src/server/web/ClientServerService.ts index 4f600e92d..1fe94a809 100644 --- a/packages/backend/src/server/web/ClientServerService.ts +++ b/packages/backend/src/server/web/ClientServerService.ts @@ -187,7 +187,7 @@ export class ClientServerService { @bindThis private async generateCommonPugData(meta: MiMeta) { return { - instanceName: meta.name ?? 'Misskey', + instanceName: meta.name ?? 'Forkey', icon: meta.iconUrl, appleTouchIcon: meta.app512IconUrl, themeColor: meta.themeColor, @@ -456,7 +456,7 @@ export class ClientServerService { return await reply.view('base', { img: meta.bannerUrl, url: this.config.url, - title: meta.name ?? 'Misskey', + title: meta.name ?? 'Forkey', desc: meta.description, ...await this.generateCommonPugData(meta), ...data, diff --git a/packages/backend/src/server/web/FeedService.ts b/packages/backend/src/server/web/FeedService.ts index 10e3ed268..a11c41e90 100644 --- a/packages/backend/src/server/web/FeedService.ts +++ b/packages/backend/src/server/web/FeedService.ts @@ -59,7 +59,7 @@ export class FeedService { id: author.link, title: `${author.name} (@${user.username}@${this.config.host})`, updated: notes.length !== 0 ? this.idService.parse(notes[0].id).date : undefined, - generator: 'Misskey', + generator: 'Forkey', description: `${user.notesCount} Notes, ${profile.followingVisibility === 'public' ? user.followingCount : '?'} Following, ${profile.followersVisibility === 'public' ? user.followersCount : '?'} Followers${profile.description ? ` · ${profile.description}` : ''}`, link: author.link, image: user.avatarUrl ?? this.userEntityService.getIdenticonUrl(user), diff --git a/packages/backend/src/server/web/UrlPreviewService.ts b/packages/backend/src/server/web/UrlPreviewService.ts index f2be28de0..0917d4b2e 100644 --- a/packages/backend/src/server/web/UrlPreviewService.ts +++ b/packages/backend/src/server/web/UrlPreviewService.ts @@ -144,7 +144,7 @@ export class UrlPreviewService { return summaly(url, { followRedirects: false, - lang: lang ?? 'ja-JP', + lang: lang ?? 'en-US', agent: agent, userAgent: meta.urlPreviewUserAgent ?? undefined, operationTimeout: meta.urlPreviewTimeout, @@ -157,7 +157,7 @@ export class UrlPreviewService { const proxy = meta.urlPreviewSummaryProxyUrl!; const queryStr = query({ url: url, - lang: lang ?? 'ja-JP', + lang: lang ?? 'en-US', userAgent: meta.urlPreviewUserAgent ?? undefined, operationTimeout: meta.urlPreviewTimeout, contentLengthLimit: meta.urlPreviewMaximumContentLength, diff --git a/packages/backend/src/server/web/boot.js b/packages/backend/src/server/web/boot.js index c70e96edd..f7881779a 100644 --- a/packages/backend/src/server/web/boot.js +++ b/packages/backend/src/server/web/boot.js @@ -41,7 +41,7 @@ if (!Object.hasOwn(localStorage, 'locale')) { let lang = localStorage.getItem('lang'); if (lang == null || lang.toString == null || lang.toString() === 'null') { - lang = 'ja-JP'; + lang = 'en-US'; } const metaRes = await window.fetch('/api/meta', { diff --git a/packages/backend/src/server/web/cli.js b/packages/backend/src/server/web/cli.js index 30ee77f4d..2cffd6063 100644 --- a/packages/backend/src/server/web/cli.js +++ b/packages/backend/src/server/web/cli.js @@ -41,7 +41,8 @@ window.onload = async () => { document.getElementById('submit').addEventListener('click', () => { api('notes/create', { - text: document.getElementById('text').value + text: document.getElementById('text').value, + noCreatedNote: true, }).then(() => { location.reload(); }); diff --git a/packages/backend/src/server/web/views/base.pug b/packages/backend/src/server/web/views/base.pug index cafdc2578..046d7eb84 100644 --- a/packages/backend/src/server/web/views/base.pug +++ b/packages/backend/src/server/web/views/base.pug @@ -5,33 +5,32 @@ block loadClientEntry doctype html -// - - - _____ _ _ - | |_|___ ___| |_ ___ _ _ - | | | | |_ -|_ -| '_| -_| | | - |_|_|_|_|___|___|_,_|___|_ | - |___| - Thank you for using Misskey! - If you are reading this message... how about joining the development? - https://github.com/misskey-dev/misskey +//███████╗░█████╗░██████╗░██╗░░██╗███████╗██╗░░░██╗ +//██╔════╝██╔══██╗██╔══██╗██║░██╔╝██╔════╝╚██╗░██╔╝ +//█████╗░░██║░░██║██████╔╝█████═╝░█████╗░░░╚████╔╝░ +//██╔══╝░░██║░░██║██╔══██╗██╔═██╗░██╔══╝░░░░╚██╔╝░░ +//██║░░░░░╚█████╔╝██║░░██║██║░╚██╗███████╗░░░██║░░░ +//╚═╝░░░░░░╚════╝░╚═╝░░╚═╝╚═╝░░╚═╝╚══════╝░░░╚═╝░░░ +// Thank you for using Forkkey! +// If you are reading this message... how about joining the development? +// https://git.woem.men/woem.men/forkey html head meta(charset='utf-8') - meta(name='application-name' content='Misskey') + meta(name='application-name' content='Forkey') meta(name='referrer' content='origin') meta(name='theme-color' content= themeColor || '#86b300') meta(name='theme-color-orig' content= themeColor || '#86b300') - meta(property='og:site_name' content= instanceName || 'Misskey') + meta(property='og:site_name' content= instanceName || 'Forkey') meta(property='instance_url' content= instanceUrl) meta(name='viewport' content='width=device-width, initial-scale=1') link(rel='icon' href= icon || '/favicon.ico') link(rel='apple-touch-icon' href= appleTouchIcon || '/apple-touch-icon.png') link(rel='manifest' href='/manifest.json') - link(rel='search' type='application/opensearchdescription+xml' title=(title || "Misskey") href=`${url}/opensearch.xml`) + link(rel='search' type='application/opensearchdescription+xml' title=(title || "Forkey") href=`${url}/opensearch.xml`) link(rel='prefetch' href=serverErrorImageUrl) link(rel='prefetch' href=infoImageUrl) link(rel='prefetch' href=notFoundImageUrl) @@ -48,7 +47,7 @@ html title block title - = title || 'Misskey' + = title || 'Forkey' if noindex meta(name='robots' content='noindex') @@ -59,7 +58,7 @@ html block meta block og - meta(property='og:title' content= title || 'Misskey') + meta(property='og:title' content= title || 'Forkey') meta(property='og:description' content= desc || '✨🌎✨ A interplanetary communication platform ✨🚀✨') meta(property='og:image' content= img) meta(property='twitter:card' content='summary') diff --git a/packages/backend/test/e2e/nodeinfo.ts b/packages/backend/test/e2e/nodeinfo.ts index e0d252545..dcb45d714 100644 --- a/packages/backend/test/e2e/nodeinfo.ts +++ b/packages/backend/test/e2e/nodeinfo.ts @@ -15,7 +15,7 @@ describe('nodeinfo', () => { assert.strictEqual(res.headers.get('Access-Control-Allow-Origin'), '*'); const nodeInfo = await res.json() as FIXME; - assert.strictEqual(nodeInfo.software.name, 'misskey'); + assert.strictEqual(nodeInfo.software.name, 'forkey'); }); test('nodeinfo 2.0', async () => { @@ -24,6 +24,6 @@ describe('nodeinfo', () => { assert.strictEqual(res.headers.get('Access-Control-Allow-Origin'), '*'); const nodeInfo = await res.json() as FIXME; - assert.strictEqual(nodeInfo.software.name, 'misskey'); + assert.strictEqual(nodeInfo.software.name, 'forkey'); }); }); diff --git a/packages/backend/test/e2e/users.ts b/packages/backend/test/e2e/users.ts index 2df28ada4..c7aca5958 100644 --- a/packages/backend/test/e2e/users.ts +++ b/packages/backend/test/e2e/users.ts @@ -151,6 +151,8 @@ describe('ユーザー', () => { ...(security ? { email: user.email, emailVerified: user.emailVerified, + approved: user.approved, + signupReason: user.signupReason, securityKeysList: user.securityKeysList, } : {}), }); diff --git a/packages/frontend/.storybook/preload-locale.ts b/packages/frontend/.storybook/preload-locale.ts index c823ff9be..ace801b9c 100644 --- a/packages/frontend/.storybook/preload-locale.ts +++ b/packages/frontend/.storybook/preload-locale.ts @@ -8,6 +8,6 @@ import locales from '../../../locales/index.js'; await writeFile( new URL('locale.ts', import.meta.url), - `export default ${JSON.stringify(locales['ja-JP'], undefined, 2)} as const;`, + `export default ${JSON.stringify(locales['en-US'], undefined, 2)} as const;`, 'utf8', ) diff --git a/packages/frontend/assets/forgejo-monochrome.svg b/packages/frontend/assets/forgejo-monochrome.svg new file mode 100644 index 000000000..05657c43a Binary files /dev/null and b/packages/frontend/assets/forgejo-monochrome.svg differ diff --git a/packages/frontend/assets/forgejo-monochrome.svg:Zone.Identifier b/packages/frontend/assets/forgejo-monochrome.svg:Zone.Identifier new file mode 100644 index 000000000..2d45b2b2f --- /dev/null +++ b/packages/frontend/assets/forgejo-monochrome.svg:Zone.Identifier @@ -0,0 +1,3 @@ +[ZoneTransfer] +ZoneId=3 +HostUrl=about:internet diff --git a/packages/frontend/src/components/MkPostForm.vue b/packages/frontend/src/components/MkPostForm.vue index 27dc8a5f4..2f40212dc 100644 --- a/packages/frontend/src/components/MkPostForm.vue +++ b/packages/frontend/src/components/MkPostForm.vue @@ -798,6 +798,7 @@ async function post(ev?: MouseEvent) { visibility: visibility.value, visibleUserIds: visibility.value === 'specified' ? visibleUsers.value.map(u => u.id) : undefined, reactionAcceptance: reactionAcceptance.value, + noCreatedNote: true, }; if (withHashtags.value && hashtags.value && hashtags.value.trim() !== '') { @@ -858,7 +859,7 @@ async function post(ev?: MouseEvent) { const text = postData.text ?? ''; const lowerCase = text.toLowerCase(); - if ((lowerCase.includes('love') || lowerCase.includes('❤')) && lowerCase.includes('misskey')) { + if ((lowerCase.includes('love') || lowerCase.includes('❤')) && lowerCase.includes('forkey')) { claimAchievement('iLoveMisskey'); } if ([ diff --git a/packages/frontend/src/components/MkSourceCodeAvailablePopup.vue b/packages/frontend/src/components/MkSourceCodeAvailablePopup.vue index f6cdc4bf3..7c4193c74 100644 --- a/packages/frontend/src/components/MkSourceCodeAvailablePopup.vue +++ b/packages/frontend/src/components/MkSourceCodeAvailablePopup.vue @@ -27,7 +27,7 @@ SPDX-License-Identifier: AGPL-3.0-only
diff --git a/packages/frontend/src/components/MkTimeline.vue b/packages/frontend/src/components/MkTimeline.vue index cf451d4a0..45905c7b2 100644 --- a/packages/frontend/src/components/MkTimeline.vue +++ b/packages/frontend/src/components/MkTimeline.vue @@ -83,7 +83,7 @@ async function prepend(data) { credentials: 'omit', headers: { 'Authorization': 'anonymous', - 'X-Client-Transaction-Id': generateClientTransactionId('misskey'), + 'X-Client-Transaction-Id': generateClientTransactionId('forkey'), }, }); if (!res.ok) return; diff --git a/packages/frontend/src/components/MkTutorialDialog.Note.vue b/packages/frontend/src/components/MkTutorialDialog.Note.vue index 2a26d22dc..f10a06436 100644 --- a/packages/frontend/src/components/MkTutorialDialog.Note.vue +++ b/packages/frontend/src/components/MkTutorialDialog.Note.vue @@ -40,12 +40,12 @@ const emit = defineEmits<{ const exampleNote = reactive({ id: '0000000000', - createdAt: '2019-04-14T17:30:49.181Z', + createdAt: '2025-01-08T17:30:49.181Z', userId: '0000000001', user: { id: '0000000001', - name: '藍', - username: 'ai', + name: 'Forks', + username: 'forks', host: null, avatarDecorations: [], avatarUrl: '/client-assets/tutorial/ai.webp', @@ -56,7 +56,7 @@ const exampleNote = reactive({ onlineStatus: 'unknown', badgeRoles: [], }, - text: 'just setting up my msky', + text: 'just setting up my forkey', cw: null, visibility: 'public', localOnly: false, diff --git a/packages/frontend/src/components/MkVisitorDashboard.vue b/packages/frontend/src/components/MkVisitorDashboard.vue index fb97a6ea0..a6475b019 100644 --- a/packages/frontend/src/components/MkVisitorDashboard.vue +++ b/packages/frontend/src/components/MkVisitorDashboard.vue @@ -50,24 +50,6 @@ SPDX-License-Identifier: AGPL-3.0-only
-
-
-
Sponsored by
- Skeb -
-
-
© {{ new Date().getFullYear() }} MisskeyHQ Inc.
- 特定商取引法に基づく表記 -
-
- {{ instanceName }} - {{ i18n.ts.aboutMisskey }} - {{ i18n.ts.termsOfService }} - {{ i18n.ts.privacyPolicy }} - {{ i18n.ts.impressum }} - {{ i18n.ts.support }} -
-
diff --git a/packages/frontend/src/config.ts b/packages/frontend/src/config.ts index fec8bfa16..277dfc12a 100644 --- a/packages/frontend/src/config.ts +++ b/packages/frontend/src/config.ts @@ -13,7 +13,7 @@ export const hostname = address.hostname; export const url = address.origin; export const apiUrl = location.origin + '/api'; export const wsOrigin = location.origin; -export const lang = miLocalStorage.getItem('lang') ?? 'ja-JP'; +export const lang = miLocalStorage.getItem('lang') ?? 'en-US'; export const langs = _LANGS_; const preParseLocale = miLocalStorage.getItem('locale'); export let locale = preParseLocale ? JSON.parse(preParseLocale) : null; diff --git a/packages/frontend/src/pages/about-misskey.vue b/packages/frontend/src/pages/about-forkey.vue similarity index 81% rename from packages/frontend/src/pages/about-misskey.vue rename to packages/frontend/src/pages/about-forkey.vue index afe84b5c9..4deb596de 100644 --- a/packages/frontend/src/pages/about-misskey.vue +++ b/packages/frontend/src/pages/about-forkey.vue @@ -12,7 +12,7 @@ SPDX-License-Identifier: AGPL-3.0-only
-
Misskey
+
Forkey
v{{ version }}
@@ -22,12 +22,24 @@ SPDX-License-Identifier: AGPL-3.0-only
- {{ i18n.ts._aboutMisskey.about }}
{{ i18n.ts.learnMore }} + {{ i18n.ts._aboutForkey.about }}
{{ i18n.ts.learnMore }}
- I #Misskey + I #Forkey
+ +
+ + + {{ i18n.ts._aboutMisskey.source }} ({{ i18n.ts._aboutForkey.original }}) + + +
+
+ + +
@@ -60,6 +72,33 @@ SPDX-License-Identifier: AGPL-3.0-only
+ + + +
+ + + @leah + + + + @sugar + + + + @ashten + + + + @itssophie + + + + @ThunderComplex + +
+
+
@@ -93,33 +132,20 @@ SPDX-License-Identifier: AGPL-3.0-only
- - -
-
- Mask Network -
-
- XServer -
-
- Skeb -
-
-
- - -
-
- - {{ patron.name }} -
-
-
-
{{ patron }}
-
-

{{ i18n.ts._aboutMisskey.morePatrons }}

-
+ + + + + + + + + + + + + +
@@ -354,7 +380,7 @@ const easterEggEngine = ref<{ stop: () => void } | null>(null); const containerEl = shallowRef(); function iconLoaded() { - const emojis = defaultStore.state.reactions; + const emojis = [...defaultStore.state.reactions, '🧄']; const containerWidth = containerEl.value.offsetWidth; for (let i = 0; i < 32; i++) { easterEggEmojis.value.push({ @@ -378,7 +404,7 @@ function gravity() { function iLoveMisskey() { os.post({ - initialText: 'I $[jelly ❤] #Misskey', + initialText: 'I $[jelly ❤] #Forkey', instant: true, }); } @@ -399,7 +425,7 @@ const headerActions = computed(() => []); const headerTabs = computed(() => []); definePageMetadata(() => ({ - title: i18n.ts.aboutMisskey, + title: i18n.ts.aboutForkey, icon: null, })); diff --git a/packages/frontend/src/pages/about.vue b/packages/frontend/src/pages/about.vue index 51da5ba36..bd7b9f581 100644 --- a/packages/frontend/src/pages/about.vue +++ b/packages/frontend/src/pages/about.vue @@ -23,34 +23,22 @@ SPDX-License-Identifier: AGPL-3.0-only -
-
© {{ new Date().getFullYear() }} MisskeyHQ Inc.
- 特定商取引法に基づく表記 -
- - - -
- Skeb -
-
-
- +
- + - {{ i18n.ts.aboutMisskey }} + {{ i18n.ts.aboutForkey }} {{ i18n.ts.sourceCode }} - + {{ i18n.ts.sourceCodeIsNotYetProvided }} @@ -97,11 +85,6 @@ SPDX-License-Identifier: AGPL-3.0-only {{ i18n.ts.support }} - - - {{ i18n.tsx.supportThisInstance({ name: instance.name ?? host }) }} - -
diff --git a/packages/frontend/src/pages/admin/approvals.vue b/packages/frontend/src/pages/admin/approvals.vue index ad76a988c..6119fa7fc 100644 --- a/packages/frontend/src/pages/admin/approvals.vue +++ b/packages/frontend/src/pages/admin/approvals.vue @@ -46,8 +46,8 @@ const pagination = { function deleted(id: string) { if (paginationComponent.value) { paginationComponent.value.items = paginationComponent.value.items.filter( - (item: any) => item.id !== id - ); + (item: any) => item.id !== id, + ); } } diff --git a/packages/frontend/src/pages/reversi/game.vue b/packages/frontend/src/pages/reversi/game.vue index d95dce18a..865b8425d 100644 --- a/packages/frontend/src/pages/reversi/game.vue +++ b/packages/frontend/src/pages/reversi/game.vue @@ -46,6 +46,7 @@ function start(_game: Misskey.entities.ReversiGameDetailed) { misskeyApi('notes/create', { text: i18n.ts._reversi.iStartedAGame + '\n' + location.href, visibility: 'home', + noCreatedNote: true, }); } diff --git a/packages/frontend/src/pages/welcome.entrance.special.vue b/packages/frontend/src/pages/welcome.entrance.special.vue index e5ef98331..482010f2e 100644 --- a/packages/frontend/src/pages/welcome.entrance.special.vue +++ b/packages/frontend/src/pages/welcome.entrance.special.vue @@ -9,8 +9,8 @@ SPDX-License-Identifier: AGPL-3.0-only
- - + +
diff --git a/packages/frontend/src/router/definition.ts b/packages/frontend/src/router/definition.ts index 3a3f646e8..6b79a1341 100644 --- a/packages/frontend/src/router/definition.ts +++ b/packages/frontend/src/router/definition.ts @@ -208,8 +208,8 @@ const routes: RouteDef[] = [{ path: '/contact', component: page(() => import('@/pages/contact.vue')), }, { - path: '/about-misskey', - component: page(() => import('@/pages/about-misskey.vue')), + path: '/about-forkey', + component: page(() => import('@/pages/about-forkey.vue')), }, { path: '/invite', name: 'invite', @@ -484,13 +484,13 @@ const routes: RouteDef[] = [{ component: page(() => import('@/pages/admin/invites.vue')), }, { path: '/approvals', - name: 'approvals', - component: page(() => import('@/pages/admin/approvals.vue')), - }, { + name: 'approvals', + component: page(() => import('@/pages/admin/approvals.vue')), + }, { path: '/', component: page(() => import('@/pages/_empty_.vue')), }], -},{ +}, { path: '/my/notifications', component: page(() => import('@/pages/notifications.vue')), loginRequired: true, diff --git a/packages/frontend/src/scripts/get-note-menu.ts b/packages/frontend/src/scripts/get-note-menu.ts index 92e421cda..b7d3c1abf 100644 --- a/packages/frontend/src/scripts/get-note-menu.ts +++ b/packages/frontend/src/scripts/get-note-menu.ts @@ -543,6 +543,7 @@ export function getRenoteMenu(props: { misskeyApi('notes/create', { renoteId: appearNote.id, channelId: appearNote.channelId, + noCreatedNote: true, }).then(() => { os.toast(i18n.ts.renoted); }); @@ -589,6 +590,7 @@ export function getRenoteMenu(props: { localOnly, visibility, renoteId: appearNote.id, + noCreatedNote: true, }).then(() => { os.toast(i18n.ts.renoted); }); @@ -630,6 +632,7 @@ export function getRenoteMenu(props: { misskeyApi('notes/create', { renoteId: appearNote.id, channelId: channel.id, + noCreatedNote: true, }).then(() => { os.toast(i18n.tsx.renotedToX({ name: channel.name })); }); diff --git a/packages/frontend/src/scripts/get-user-menu.ts b/packages/frontend/src/scripts/get-user-menu.ts index 758a04d37..753a4ee8b 100644 --- a/packages/frontend/src/scripts/get-user-menu.ts +++ b/packages/frontend/src/scripts/get-user-menu.ts @@ -298,7 +298,7 @@ export function getUserMenu(user: Misskey.entities.UserDetailed, router: IRouter const { canceled: canceled3, result: memo } = await os.inputText({ title: i18n.ts.addMemo, type: 'textarea', - placeholder: i18n.ts.memo, + default: '', }); if (canceled3) return; diff --git a/packages/frontend/src/scripts/intl-const.ts b/packages/frontend/src/scripts/intl-const.ts index aaa4f0a86..0f5960ea1 100644 --- a/packages/frontend/src/scripts/intl-const.ts +++ b/packages/frontend/src/scripts/intl-const.ts @@ -5,7 +5,7 @@ import { lang } from '@/config.js'; -export const versatileLang = (lang ?? 'ja-JP').replace('ja-KS', 'ja-JP'); +export const versatileLang = (lang ?? 'en-US').replace('ja-KS', 'ja-JP'); let _dateTimeFormat: Intl.DateTimeFormat; try { diff --git a/packages/frontend/src/ui/_common_/common.ts b/packages/frontend/src/ui/_common_/common.ts index 839fa5faf..f57100c9f 100644 --- a/packages/frontend/src/ui/_common_/common.ts +++ b/packages/frontend/src/ui/_common_/common.ts @@ -117,7 +117,7 @@ export function openInstanceMenu(ev: MouseEvent) { } : undefined, { type: 'link', text: i18n.ts.aboutMisskey, - to: '/about-misskey', + to: '/about-forkey', }], ev.currentTarget ?? ev.target, { align: 'left', }); diff --git a/packages/frontend/src/ui/visitor.vue b/packages/frontend/src/ui/visitor.vue index 6283ac082..94302bfce 100644 --- a/packages/frontend/src/ui/visitor.vue +++ b/packages/frontend/src/ui/visitor.vue @@ -5,8 +5,10 @@ SPDX-License-Identifier: AGPL-3.0-only