chore: update repo url

This commit is contained in:
jubnl
2026-07-18 16:49:37 +02:00
parent 631fea3c51
commit 3f6597e43e
34 changed files with 88 additions and 90 deletions
@@ -9,7 +9,7 @@ permissions:
jobs:
close-stale:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
steps:
- name: Close stale invalid-title issues
@@ -10,7 +10,7 @@ permissions:
jobs:
close-stale:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
steps:
- name: Close stale wrong-base-branch PRs
+1 -1
View File
@@ -9,7 +9,7 @@ permissions:
jobs:
check-title:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
steps:
- name: Flag or redirect issue
+7 -7
View File
@@ -18,7 +18,7 @@ concurrency:
jobs:
version-bump:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
outputs:
version: ${{ steps.bump.outputs.VERSION }}
@@ -98,7 +98,7 @@ jobs:
with:
context: .
platforms: ${{ matrix.platform }}
outputs: type=image,name=iiketrek/TREK,push-by-digest=true,name-canonical=true,push=true
outputs: type=image,name=mauriceboe/TREK,push-by-digest=true,name-canonical=true,push=true
no-cache: true
build-args: |
APP_VERSION=${{ needs.version-bump.outputs.version }}
@@ -145,16 +145,16 @@ jobs:
working-directory: /tmp/digests
run: |
VERSION="${{ needs.version-bump.outputs.version }}"
mapfile -t digests < <(printf 'iiketrek/TREK@sha256:%s\n' *)
mapfile -t digests < <(printf 'mauriceboe/TREK@sha256:%s\n' *)
MAJOR_TAG="$(echo "$VERSION" | cut -d. -f1)-pre"
docker buildx imagetools create \
-t "iiketrek/TREK:latest-pre" \
-t "iiketrek/TREK:$MAJOR_TAG" \
-t "iiketrek/TREK:$VERSION" \
-t "mauriceboe/TREK:latest-pre" \
-t "mauriceboe/TREK:$MAJOR_TAG" \
-t "mauriceboe/TREK:$VERSION" \
"${digests[@]}"
- name: Inspect manifest
run: docker buildx imagetools inspect iiketrek/TREK:latest-pre
run: docker buildx imagetools inspect mauriceboe/TREK:latest-pre
- name: Push git tag
run: |
+7 -7
View File
@@ -33,7 +33,7 @@ concurrency:
jobs:
version-bump:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
outputs:
version: ${{ steps.bump.outputs.VERSION }}
@@ -149,7 +149,7 @@ jobs:
with:
context: .
platforms: ${{ matrix.platform }}
outputs: type=image,name=iiketrek/TREK,push-by-digest=true,name-canonical=true,push=true
outputs: type=image,name=mauriceboe/TREK,push-by-digest=true,name-canonical=true,push=true
no-cache: true
build-args: |
APP_VERSION=${{ needs.version-bump.outputs.version }}
@@ -194,16 +194,16 @@ jobs:
working-directory: /tmp/digests
run: |
VERSION="${{ needs.version-bump.outputs.version }}"
mapfile -t digests < <(printf 'iiketrek/TREK@sha256:%s\n' *)
mapfile -t digests < <(printf 'mauriceboe/TREK@sha256:%s\n' *)
MAJOR_TAG="$(echo "$VERSION" | cut -d. -f1)"
docker buildx imagetools create \
-t "iiketrek/TREK:latest" \
-t "iiketrek/TREK:$MAJOR_TAG" \
-t "iiketrek/TREK:$VERSION" \
-t "mauriceboe/TREK:latest" \
-t "mauriceboe/TREK:$MAJOR_TAG" \
-t "mauriceboe/TREK:$VERSION" \
"${digests[@]}"
- name: Inspect manifest
run: docker buildx imagetools inspect iiketrek/TREK:latest
run: docker buildx imagetools inspect mauriceboe/TREK:latest
release-helm:
runs-on: ubuntu-latest
+1 -1
View File
@@ -6,7 +6,7 @@ on:
jobs:
check-target:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
permissions:
pull-requests: write
+1 -1
View File
@@ -14,7 +14,7 @@ permissions:
jobs:
publish:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
defaults:
run:
+1 -1
View File
@@ -13,7 +13,7 @@ jobs:
scout:
# Docker Hub secrets are not exposed to pull requests from forks, so the
# Scout login can never succeed there.
if: github.repository == 'iiketrek/TREK' && github.event.pull_request.head.repo.fork != true
if: github.repository == 'liketrek/TREK' && github.event.pull_request.head.repo.fork != true
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
+1 -1
View File
@@ -17,7 +17,7 @@ concurrency:
jobs:
deploy:
if: github.repository == 'iiketrek/TREK'
if: github.repository == 'liketrek/TREK'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
+8 -8
View File
@@ -20,7 +20,7 @@ A self-hosted, real-time collaborative travel planner — with maps, budgets, pa
<a href="https://demo.liketrek.com"><img alt="Demo" src="https://img.shields.io/badge/Demo-try-111827?style=for-the-badge" /></a>
&nbsp;
<a href="https://hub.docker.com/r/iiketrek/TREK"><img alt="Docker" src="https://img.shields.io/badge/Docker-ready-2496ED?style=for-the-badge" /></a>
<a href="https://hub.docker.com/r/mauriceboe/TREK"><img alt="Docker" src="https://img.shields.io/badge/Docker-ready-2496ED?style=for-the-badge" /></a>
&nbsp;
<a href="https://discord.gg/NhZBDSd4qW"><img alt="Discord" src="https://img.shields.io/badge/Discord-join-5865F2?style=for-the-badge" /></a>
&nbsp;
@@ -31,9 +31,9 @@ A self-hosted, real-time collaborative travel planner — with maps, budgets, pa
<a href="https://www.buymeacoffee.com/mauriceboe"><img alt="BMAC" src="https://img.shields.io/badge/BMAC-support-FFDD00?style=for-the-badge" /></a>
<br />
<a href="LICENSE"><img alt="License" src="https://img.shields.io/badge/license-AGPL_v3-6B7280?style=flat-square" /></a>
<a href="https://github.com/liketrek/TREK/releases"><img alt="Latest Release" src="https://img.shields.io/github/v/release/iiketrek/TREK?include_prereleases&style=flat-square&color=6B7280" /></a>
<a href="https://hub.docker.com/r/iiketrek/TREK"><img alt="Docker Pulls" src="https://img.shields.io/docker/pulls/iiketrek/TREK?style=flat-square&color=6B7280" /></a>
<a href="https://github.com/liketrek/TREK"><img alt="Stars" src="https://img.shields.io/github/stars/iiketrek/TREK?style=flat-square&color=6B7280" /></a>
<a href="https://github.com/liketrek/TREK/releases"><img alt="Latest Release" src="https://img.shields.io/github/v/release/liketrek/TREK?include_prereleases&style=flat-square&color=6B7280" /></a>
<a href="https://hub.docker.com/r/mauriceboe/TREK"><img alt="Docker Pulls" src="https://img.shields.io/docker/pulls/mauriceboe/TREK?style=flat-square&color=6B7280" /></a>
<a href="https://github.com/liketrek/TREK"><img alt="Stars" src="https://img.shields.io/github/stars/liketrek/TREK?style=flat-square&color=6B7280" /></a>
</div>
@@ -176,7 +176,7 @@ A self-hosted, real-time collaborative travel planner — with maps, budgets, pa
```bash
ENCRYPTION_KEY=$(openssl rand -hex 32) docker run -d -p 3000:3000 \
-e ENCRYPTION_KEY=$ENCRYPTION_KEY \
-v ./data:/app/data -v ./uploads:/app/uploads iiketrek/TREK
-v ./data:/app/data -v ./uploads:/app/uploads mauriceboe/TREK
```
Open `http://localhost:3000`. On first boot TREK seeds an admin account — if you set `ADMIN_EMAIL`/`ADMIN_PASSWORD` those are used, otherwise the credentials are printed to the container log (`docker logs trek`).
@@ -217,7 +217,7 @@ Real-time sync via WebSocket (`ws`). Backend on NestJS 11. State with Zustand. A
```yaml
services:
app:
image: iiketrek/TREK:latest
image: mauriceboe/TREK:latest
container_name: trek
read_only: true
security_opt:
@@ -305,9 +305,9 @@ docker compose pull && docker compose up -d
**Docker run** — reuse the original volume paths:
```bash
docker pull iiketrek/TREK
docker pull mauriceboe/TREK
docker rm -f trek
docker run -d --name trek -p 3000:3000 -v ./data:/app/data -v ./uploads:/app/uploads --restart unless-stopped iiketrek/TREK
docker run -d --name trek -p 3000:3000 -v ./data:/app/data -v ./uploads:/app/uploads --restart unless-stopped mauriceboe/TREK
```
> Not sure which paths you used? `docker inspect trek --format '{{json .Mounts}}'` before removing the container.
+1 -1
View File
@@ -21,6 +21,6 @@ You will receive a response within 48 hours. Once confirmed, a fix will be relea
## Scope
This policy covers the TREK application and its Docker image (`iiketrek/TREK`).
This policy covers the TREK application and its Docker image (`mauriceboe/TREK`).
Third-party dependencies are monitored via GitHub Dependabot.
+1 -1
View File
@@ -1,7 +1,7 @@
<?xml version="1.0"?>
<CommunityApplications>
<Profile>TREK is a self-hosted, real-time collaborative travel planner. Plan trips together with interactive maps, budgets, bookings, packing lists, day-by-day itineraries and file management — every change syncs instantly across everyone in your group. Includes OIDC/SSO, TOTP MFA, dark mode, PWA support, multi-language UI and a modular addon system (Vacay, Atlas, Collab, Budget, Packing, Journey). Maintained by mauriceboe — support and bug reports via GitHub Issues.</Profile>
<Icon>https://raw.githubusercontent.com/iiketrek/TREK/main/docs/trek-icon.png</Icon>
<Icon>https://raw.githubusercontent.com/liketrek/TREK/main/docs/trek-icon.png</Icon>
<WebPage>https://github.com/liketrek/TREK</WebPage>
<Forum>https://github.com/liketrek/TREK/issues</Forum>
<DonateLink>https://ko-fi.com/mauriceboe</DonateLink>
+1 -1
View File
@@ -1,6 +1,6 @@
image:
repository: iiketrek/TREK
repository: liketrek/TREK
# tag: latest
pullPolicy: IfNotPresent
+1 -1
View File
@@ -15,7 +15,7 @@ import { useEffect, useState } from 'react';
import apiClient from '../../api/client';
import { getLocaleForLanguage, useTranslation } from '../../i18n';
const REPO = 'iiketrek/TREK';
const REPO = 'liketrek/TREK';
const PER_PAGE = 10;
interface GithubRelease {
+2 -2
View File
@@ -336,14 +336,14 @@ export default function AdminUserModals({ admin, t }: AdminUserModalsProps): Rea
}}
className="border border-gray-700 bg-gray-900 text-gray-100 dark:bg-gray-950"
>
{`docker pull iiketrek/TREK:latest
{`docker pull mauriceboe/TREK:latest
docker stop trek && docker rm trek
docker run -d --name trek \\
-p 3000:3000 \\
-v /opt/trek/data:/app/data \\
-v /opt/trek/uploads:/app/uploads \\
--restart unless-stopped \\
iiketrek/TREK:latest`}
mauriceboe/TREK:latest`}
</div>
)}
+1 -1
View File
@@ -1,6 +1,6 @@
services:
app:
image: iiketrek/TREK:latest
image: mauriceboe/TREK:latest
container_name: trek
read_only: true
security_opt:
+1 -1
View File
@@ -27,7 +27,7 @@ import type { NetworkCheck, CheckContext, RegistryEntry, RegistryEntryVersion }
import { pass, fail, skip } from './types.js';
import { REQUIRED_SECTIONS, MIN_PROSE_CHARS, missingSections, placeholders, proseLength, images, undocumentedPermissions } from './readme.js';
export const DEFAULT_REGISTRY = 'iiketrek/TREK-Plugins';
export const DEFAULT_REGISTRY = 'liketrek/TREK-Plugins';
const NATIVE_RE = /(^|\/)[^/]+\.node$|(^|\/)binding\.gyp$|(^|\/)prebuilds?\//i;
+1 -1
View File
@@ -107,7 +107,7 @@ Scripts are never prompted; pass --sign.
Needs git and an authenticated \`gh\`.
--sign [key] sign the artifact (default key: ~/.trek-plugin/signing.key)
--registry o/n a registry other than iiketrek/TREK-Plugins
--registry o/n a registry other than liketrek/TREK-Plugins
--notes release notes
--draft open the registry PR as a draft
--force overwrite an existing release's artifact. Breaks the sha256 pin for
+1 -1
View File
@@ -12,7 +12,7 @@ import path from 'node:path';
import { execFileSync } from 'node:child_process';
import { readJsonFile } from './json.js';
const DEFAULT_REGISTRY = 'iiketrek/TREK-Plugins';
const DEFAULT_REGISTRY = 'liketrek/TREK-Plugins';
interface EntryLike {
id: string; name?: string; authorPublicKey?: string;
+10 -10
View File
@@ -726,7 +726,7 @@ describe('pack + entry (publishing automation)', () => {
const out = path.join(tmp, 'plugin.zip');
const packed = packPluginDir(koffi, out);
const entry = buildEntry({
dir: koffi, repo: 'iiketrek/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
dir: koffi, repo: 'mauriceboe/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
commit: 'a'.repeat(40), now: '2026-07-04T00:00:00.000Z',
});
expect(entry.id).toBe('koffi');
@@ -741,7 +741,7 @@ describe('pack + entry (publishing automation)', () => {
// "requires 3.2.0+" and considered the plugin compatible.
expect(v.trek).toBe('>=3.2.0 <4.0.0');
expect(v).not.toHaveProperty('minTrekVersion');
expect(v.downloadUrl).toBe('https://github.com/liketrek/TREK-plugin-koffi/releases/download/v1.0.0/plugin.zip');
expect(v.downloadUrl).toBe('https://github.com/mauriceboe/TREK-plugin-koffi/releases/download/v1.0.0/plugin.zip');
expect(v.nativeModules).toBe(false);
});
@@ -751,7 +751,7 @@ describe('pack + entry (publishing automation)', () => {
const out = path.join(tmp, 'plugin.zip');
packPluginDir(koffi, out);
const entry = buildEntry({
dir: koffi, repo: 'iiketrek/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
dir: koffi, repo: 'mauriceboe/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
commit: 'a'.repeat(40), now: '2026-07-04T00:00:00.000Z',
});
expect(entry.icon).toBe('Luggage'); // koffi's trek-plugin.json declares it
@@ -764,7 +764,7 @@ describe('pack + entry (publishing automation)', () => {
const p = path.join(tmp, `prior-${icon}.json`);
fs.writeFileSync(p, JSON.stringify({
id: 'koffi', name: 'Koffi', author: 'TREK', description: 'x',
repo: 'iiketrek/TREK-plugin-koffi', type: 'widget', icon,
repo: 'mauriceboe/TREK-plugin-koffi', type: 'widget', icon,
versions: [{ version: '0.9.0', gitTag: 'v0.9.0', commitSha: 'b'.repeat(40), downloadUrl: 'https://x/y.zip', sha256: 'c'.repeat(64), size: 10, apiVersion: 1, nativeModules: false, publishedAt: '2026-01-01T00:00:00.000Z' }],
}));
return p;
@@ -772,7 +772,7 @@ describe('pack + entry (publishing automation)', () => {
// koffi's manifest declares Luggage → an author who rebrands sees it in the store
const rebranded = buildEntry({
dir: koffi, repo: 'iiketrek/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
dir: koffi, repo: 'mauriceboe/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
commit: 'a'.repeat(40), now: '2026-07-04T00:00:00.000Z', mergePath: prior('Coffee'),
});
expect(rebranded.icon).toBe('Luggage');
@@ -820,11 +820,11 @@ describe('pack + entry (publishing automation)', () => {
packPluginDir(koffi, out);
const existingPath = path.join(tmp, 'koffi.json');
fs.writeFileSync(existingPath, JSON.stringify({
id: 'koffi', name: 'Koffi', author: 'TREK', description: 'x', repo: 'iiketrek/TREK-plugin-koffi', type: 'widget',
id: 'koffi', name: 'Koffi', author: 'TREK', description: 'x', repo: 'mauriceboe/TREK-plugin-koffi', type: 'widget',
versions: [{ version: '0.9.0', gitTag: 'v0.9.0', commitSha: 'b'.repeat(40), downloadUrl: 'https://github.com/x/y/releases/download/v0.9.0/plugin.zip', sha256: 'c'.repeat(64), minTrekVersion: '3.2.0', size: 10, apiVersion: 1, nativeModules: false, publishedAt: '2026-01-01T00:00:00.000Z' }],
}));
const merged = buildEntry({
dir: koffi, repo: 'iiketrek/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
dir: koffi, repo: 'mauriceboe/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out,
commit: 'a'.repeat(40), mergePath: existingPath, now: '2026-07-04T00:00:00.000Z',
});
expect(merged.versions.map((v) => v.version)).toEqual(['1.0.0', '0.9.0']);
@@ -868,7 +868,7 @@ describe('sign + keygen (author signatures, TOFU)', () => {
packPluginDir(koffi, out);
const keyPath = path.join(tmp, 'k.pem');
const { publicKey } = generateKeypair(keyPath);
const entry = buildEntry({ dir: koffi, repo: 'iiketrek/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out, commit: 'a'.repeat(40), signKeyPath: keyPath, now: '2026-07-04T00:00:00.000Z' });
const entry = buildEntry({ dir: koffi, repo: 'mauriceboe/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out, commit: 'a'.repeat(40), signKeyPath: keyPath, now: '2026-07-04T00:00:00.000Z' });
expect(entry.authorPublicKey).toBe(publicKey);
const sig = entry.versions[0].signature;
expect(sig).toBeTruthy();
@@ -880,12 +880,12 @@ describe('sign + keygen (author signatures, TOFU)', () => {
packPluginDir(koffi, out);
const key1 = path.join(tmp, 'k1.pem');
generateKeypair(key1);
const existing = buildEntry({ dir: koffi, repo: 'iiketrek/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out, commit: 'a'.repeat(40), signKeyPath: key1, now: '2026-07-04T00:00:00.000Z' });
const existing = buildEntry({ dir: koffi, repo: 'mauriceboe/TREK-plugin-koffi', tag: 'v1.0.0', zipPath: out, commit: 'a'.repeat(40), signKeyPath: key1, now: '2026-07-04T00:00:00.000Z' });
const existingPath = path.join(tmp, 'koffi.json');
fs.writeFileSync(existingPath, JSON.stringify({ ...existing, versions: existing.versions.map((v) => ({ ...v, version: '0.9.0', gitTag: 'v0.9.0' })) }));
const key2 = path.join(tmp, 'k2.pem');
generateKeypair(key2);
expect(() => buildEntry({ dir: koffi, repo: 'iiketrek/TREK-plugin-koffi', tag: 'v1.1.0', zipPath: out, commit: 'a'.repeat(40), mergePath: existingPath, signKeyPath: key2, now: '2026-07-04T00:00:00.000Z' })).toThrow(/differs from the one already published/);
expect(() => buildEntry({ dir: koffi, repo: 'mauriceboe/TREK-plugin-koffi', tag: 'v1.1.0', zipPath: out, commit: 'a'.repeat(40), mergePath: existingPath, signKeyPath: key2, now: '2026-07-04T00:00:00.000Z' })).toThrow(/differs from the one already published/);
});
});
@@ -26,7 +26,7 @@ import semver from 'semver';
const REGISTRY_URL =
process.env.TREK_PLUGIN_REGISTRY_URL ||
'https://raw.githubusercontent.com/iiketrek/TREK-Plugins/main/dist/index.json';
'https://raw.githubusercontent.com/liketrek/TREK-Plugins/main/dist/index.json';
const CACHE_TTL = 30 * 60 * 1000;
const MANIFEST_MAX_BYTES = 256 * 1024;
// Sideload upload ceiling — matches the SDK `pack` limit (50 MB) plus zip overhead.
@@ -176,9 +176,7 @@ export class PluginRegistryService {
* `authorPublicKey` is exposed in full — it is a public key, and the re-trust
* round-trip compares it exactly (a truncated fingerprint would be a weak check).
*/
async browse(
force = false,
): Promise<
async browse(force = false): Promise<
Array<
Omit<RegistryEntry, 'versions'> & {
latest: string | null;
+3 -3
View File
@@ -366,7 +366,7 @@ export function saveDemoBaseline(): { error?: string; status?: number; message?:
export async function getGithubReleases(perPage: string = '10', page: string = '1') {
try {
const resp = await fetch(`https://api.github.com/repos/iiketrek/TREK/releases?per_page=${perPage}&page=${page}`, {
const resp = await fetch(`https://api.github.com/repos/liketrek/TREK/releases?per_page=${perPage}&page=${page}`, {
headers: { Accept: 'application/vnd.github.v3+json', 'User-Agent': 'TREK-Server' },
});
if (!resp.ok) return [];
@@ -412,7 +412,7 @@ export async function checkVersion(): Promise<VersionInfo> {
try {
if (isPrerelease) {
// Fetch release list and find the newest prerelease
const resp = await fetch('https://api.github.com/repos/iiketrek/TREK/releases?per_page=100', {
const resp = await fetch('https://api.github.com/repos/liketrek/TREK/releases?per_page=100', {
headers: { Accept: 'application/vnd.github.v3+json', 'User-Agent': 'TREK-Server' },
});
if (!resp.ok) {
@@ -437,7 +437,7 @@ export async function checkVersion(): Promise<VersionInfo> {
is_prerelease: true,
};
} else {
const resp = await fetch('https://api.github.com/repos/iiketrek/TREK/releases/latest', {
const resp = await fetch('https://api.github.com/repos/liketrek/TREK/releases/latest', {
headers: { Accept: 'application/vnd.github.v3+json', 'User-Agent': 'TREK-Server' },
});
if (!resp.ok) {
+1 -1
View File
@@ -13,7 +13,7 @@ import path from 'path';
* GitHub directly either way; images are proxied through /api/help/asset.
*/
const REPO = 'iiketrek/TREK';
const REPO = 'liketrek/TREK';
const RAW_BASE = `https://raw.githubusercontent.com/${REPO}/main/wiki`;
const TTL_MS = 60 * 60 * 1000; // remote fallback only: refresh from GitHub at most hourly
const SLUG_RE = /^[A-Za-z0-9][A-Za-z0-9._-]*$/;
+4 -4
View File
@@ -1,8 +1,8 @@
<?xml version="1.0"?>
<Container version="2">
<Name>TREK</Name>
<Repository>iiketrek/TREK</Repository>
<Registry>https://hub.docker.com/r/iiketrek/TREK</Registry>
<Repository>mauriceboe/TREK</Repository>
<Registry>https://hub.docker.com/r/mauriceboe/TREK</Registry>
<Branch>
<Tag>latest</Tag>
<TagDescription>Latest stable release</TagDescription>
@@ -14,8 +14,8 @@
<Overview>TREK is a self-hosted, real-time collaborative travel planner with interactive maps, budgets, bookings, packing lists, file management, and more. Plan trips together with your group — changes sync instantly across all connected users. Includes OIDC/SSO support, dark mode, PWA, and a modular addon system (Vacay, Atlas, Collab, Budget, Packing).</Overview>
<Category>Productivity: Tools:</Category>
<WebUI>http://[IP]:[PORT:3000]</WebUI>
<TemplateURL>https://raw.githubusercontent.com/iiketrek/TREK/main/unraid-template.xml</TemplateURL>
<Icon>https://raw.githubusercontent.com/iiketrek/TREK/main/docs/trek-icon.png</Icon>
<TemplateURL>https://raw.githubusercontent.com/liketrek/TREK/main/unraid-template.xml</TemplateURL>
<Icon>https://raw.githubusercontent.com/liketrek/TREK/main/docs/trek-icon.png</Icon>
<ExtraParams/>
<PostArgs/>
<DonateText>Support TREK development</DonateText>
+1 -1
View File
@@ -21,7 +21,7 @@ Six cards at the top of the tab link to external resources:
## Release timeline
Below the support cards, a chronological timeline lists GitHub releases for the `iiketrek/TREK` repository. Each entry shows:
Below the support cards, a chronological timeline lists GitHub releases for the `liketrek/TREK` repository. Each entry shows:
- **Version tag** (e.g., `v2.9.14`)
- A **Latest** badge on the first (most recent) entry in the displayed list
+3 -3
View File
@@ -30,7 +30,7 @@ cd TREK
Add the original repository as `upstream` so you can pull in future updates:
```bash
git remote add upstream git@github.com:iiketrek/TREK.git
git remote add upstream git@github.com:liketrek/TREK.git
```
You should now have two remotes:
@@ -38,7 +38,7 @@ You should now have two remotes:
| Remote | URL | Purpose |
|------------|----------------------------------------------|--------------------------------|
| `origin` | `git@github.com:your-username/TREK.git` | Your fork — push changes here |
| `upstream` | `git@github.com:iiketrek/TREK.git` | Main repo — pull updates from here |
| `upstream` | `git@github.com:liketrek/TREK.git` | Main repo — pull updates from here |
---
@@ -192,7 +192,7 @@ git push origin fix/my-changes
git push origin dev
```
Then open a Pull Request from your fork to `iiketrek/TREK` targeting the `dev` branch. If your PR only modifies files under `wiki/`, it is exempt from branch enforcement and may target any branch.
Then open a Pull Request from your fork to `liketrek/TREK` targeting the `dev` branch. If your PR only modifies files under `wiki/`, it is exempt from branch enforcement and may target any branch.
---
+1 -1
View File
@@ -294,7 +294,7 @@ The plugin system is **on by default**. The runtime and the Admin → Plugins pa
| `TREK_PLUGINS_ENABLED` | Master switch for the plugin system. Enabled unless set to `false` (also accepts `0`, `off`, `no`, case-insensitive). Turning it off is a kill switch — installed plugins stay on disk but nothing runs. | enabled |
| `TREK_PLUGINS_DIR` | Directory where installed plugin **code** is stored. Persist it as a volume if you use plugins. | `<data>/plugins` |
| `TREK_PLUGINS_DATA_DIR` | Directory for each plugin's own **data** (its private SQLite file). Kept separate from the code tree; persist it as a volume too. | `<data>/plugins-data` |
| `TREK_PLUGIN_REGISTRY_URL` | Override the plugin registry index the *Discover* tab browses. Point it at your own fork or mirror of the registry. | `https://raw.githubusercontent.com/iiketrek/TREK-Plugins/main/dist/index.json` |
| `TREK_PLUGIN_REGISTRY_URL` | Override the plugin registry index the *Discover* tab browses. Point it at your own fork or mirror of the registry. | `https://raw.githubusercontent.com/liketrek/TREK-Plugins/main/dist/index.json` |
| `TREK_PLUGIN_MAX_RSS_MB` | Per-plugin memory ceiling in MB. A plugin process that exceeds it is stopped. | `300` |
| `TREK_PLUGIN_PERMISSIONS` | Set to `off` to opt **out** of the Node.js OS-level permission sandbox for plugin child processes (not recommended). Any other value keeps the sandbox on. | `on` |
| `TREK_PLUGIN_ALLOW_PRIVATE_EGRESS`| Set to `on` to let a plugin's declared outbound hosts resolve to private/internal addresses (e.g. a service on your LAN). By default connections to private, loopback, link-local and metadata addresses are refused. | off (private egress blocked) |
+7 -7
View File
@@ -64,17 +64,17 @@ Uncomment and fill in the OIDC, initial setup, or MCP variables as needed. For a
Three tag strategies are available:
| Tag | Example | Behavior |
|---|---|---|
| `latest` | `iiketrek/TREK:latest` | Always the newest release across all major versions |
| Major version | `iiketrek/TREK:3` | Latest release pinned to that major version |
| Full version | `iiketrek/TREK:3.0.15` | Exact release; never changes |
| Tag | Example | Behavior |
|---|--------------------------|---|
| `latest` | `mauriceboe/TREK:latest` | Always the newest release across all major versions |
| Major version | `mauriceboe/TREK:3` | Latest release pinned to that major version |
| Full version | `mauriceboe/TREK:3.0.15` | Exact release; never changes |
The compose file above uses `latest`. To pin, change the `image:` line:
```yaml
image: iiketrek/TREK:3 # track major version 3
image: iiketrek/TREK:3.0.15 # pin to exact release
image: mauriceboe/TREK:3 # track major version 3
image: mauriceboe/TREK:3.0.15 # pin to exact release
```
## Start TREK
+6 -6
View File
@@ -12,7 +12,7 @@ docker run -d \
-v ./uploads:/app/uploads \
-e ENCRYPTION_KEY=<your-32-byte-hex-key> \
--restart unless-stopped \
iiketrek/TREK:latest
mauriceboe/TREK:latest
```
`ENCRYPTION_KEY` is strongly recommended but not strictly required. If omitted, a key is auto-generated on first start and persisted to `data/.encryption_key`. Setting it explicitly means you can recreate the container from scratch (e.g. on a new host) without losing access to stored encrypted data (API keys, SMTP credentials, OIDC secrets, MFA secrets).
@@ -38,11 +38,11 @@ See [Environment-Variables](Environment-Variables) for the full list.
| Tag | Example | Behavior |
|---|---|---|
| `latest` | `iiketrek/TREK:latest` | Always the newest release across all major versions |
| Major version | `iiketrek/TREK:3` | Latest release pinned to that major version |
| Full version | `iiketrek/TREK:3.0.15` | Exact release; never changes |
| `latest` | `mauriceboe/TREK:latest` | Always the newest release across all major versions |
| Major version | `mauriceboe/TREK:3` | Latest release pinned to that major version |
| Full version | `mauriceboe/TREK:3.0.15` | Exact release; never changes |
Replace `iiketrek/TREK:latest` in the run command with your chosen tag to pin to a major version or exact release.
Replace `mauriceboe/TREK:latest` in the run command with your chosen tag to pin to a major version or exact release.
## Volume Reference
@@ -65,7 +65,7 @@ docker run -d \
-v trek_uploads:/app/uploads \
-e ENCRYPTION_KEY=<your-32-byte-hex-key> \
--restart unless-stopped \
iiketrek/TREK:latest
mauriceboe/TREK:latest
```
Docker creates `trek_data` and `trek_uploads` automatically on first run. Named volumes are easier to manage with `docker volume` commands and work better in some NAS or container-management environments.
+1 -1
View File
@@ -72,7 +72,7 @@ helm install trek trek/trek \
```yaml
image:
repository: iiketrek/TREK
repository: liketrek/TREK
# tag: latest # defaults to the chart's appVersion
pullPolicy: IfNotPresent
+3 -3
View File
@@ -40,9 +40,9 @@ Three tag strategies are available:
| Tag | Example | Behavior |
|---|---|---|
| `latest` | `iiketrek/TREK:latest` | Always the newest release across all major versions |
| Major version | `iiketrek/TREK:3` | Latest release pinned to that major version |
| Full version | `iiketrek/TREK:3.0.15` | Exact release; never changes |
| `latest` | `mauriceboe/TREK:latest` | Always the newest release across all major versions |
| Major version | `mauriceboe/TREK:3` | Latest release pinned to that major version |
| Full version | `mauriceboe/TREK:3.0.15` | Exact release; never changes |
Use `latest` or a major-version tag (e.g. `3`) if you want automatic updates on redeploy. Use a full version tag (e.g. `3.0.15`) if you want explicit control over which release runs.
+1 -1
View File
@@ -17,7 +17,7 @@ Docker must be enabled in Unraid (**Settings → Docker → Enable Docker: Yes**
If the app does not appear, you can install directly from the template URL. In **Docker → Add Container**, paste the template URL:
```
https://raw.githubusercontent.com/iiketrek/TREK/main/unraid-template.xml
https://raw.githubusercontent.com/liketrek/TREK/main/unraid-template.xml
```
## Template Fields
+1 -1
View File
@@ -21,7 +21,7 @@ ENCRYPTION_KEY=$(openssl rand -hex 32) docker run -d \
-v ./data:/app/data \
-v ./uploads:/app/uploads \
--restart unless-stopped \
iiketrek/TREK:latest
mauriceboe/TREK:latest
```
**Flag breakdown:**
+5 -5
View File
@@ -10,9 +10,9 @@ Back up your data first. Go to Admin Panel → Backups and create a manual backu
| Tag | Example | Behavior |
|---|---|---|
| `latest` | `iiketrek/TREK:latest` | Always the newest release across all major versions |
| Major version | `iiketrek/TREK:3` | Latest release pinned to that major version |
| Full version | `iiketrek/TREK:3.0.15` | Exact release; never changes |
| `latest` | `mauriceboe/TREK:latest` | Always the newest release across all major versions |
| Major version | `mauriceboe/TREK:3` | Latest release pinned to that major version |
| Full version | `mauriceboe/TREK:3.0.15` | Exact release; never changes |
Use `latest` or a major-version tag if you want updates on each redeploy. Use a full version tag for explicit control — update by changing the tag, not by re-pulling.
@@ -39,14 +39,14 @@ docker compose up -d
If you started TREK with `docker run`, pull the new image and replace the container:
```bash
docker pull iiketrek/TREK
docker pull mauriceboe/TREK
docker rm -f trek
docker run -d --name trek -p 3000:3000 \
-v ./data:/app/data \
-v ./uploads:/app/uploads \
-e ENCRYPTION_KEY=<your-key> \
--restart unless-stopped \
iiketrek/TREK
mauriceboe/TREK
```
> **Tip:** Not sure which volume paths you used? Check before removing: