diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 605cffa6..57785ba0 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,7 +11,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v4.1.2 + uses: actions/checkout@v4.1.5 - name: Install Node.js uses: actions/setup-node@v4 diff --git a/.github/workflows/readme-generator.yml b/.github/workflows/readme-generator.yml index bcb8cac3..d0d73143 100644 --- a/.github/workflows/readme-generator.yml +++ b/.github/workflows/readme-generator.yml @@ -10,7 +10,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4.1.2 + uses: actions/checkout@v4.1.5 - name: Install Bun uses: oven-sh/setup-bun@v1 diff --git a/.github/workflows/renovate-ci.yml b/.github/workflows/renovate-ci.yml index c6085914..53480eba 100644 --- a/.github/workflows/renovate-ci.yml +++ b/.github/workflows/renovate-ci.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v4.1.2 + uses: actions/checkout@v4.1.5 - name: Get last commit message id: get-last-commit-message @@ -21,7 +21,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v4.1.2 + uses: actions/checkout@v4.1.5 with: fetch-depth: 0 token: ${{ secrets.PERSONAL_TOKEN }} @@ -58,7 +58,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v4.1.2 + uses: actions/checkout@v4.1.5 - name: Install Node.js uses: actions/setup-node@v4 diff --git a/.github/workflows/renovate.yml b/.github/workflows/renovate.yml index 6bd5b2cb..fa92e9e1 100644 --- a/.github/workflows/renovate.yml +++ b/.github/workflows/renovate.yml @@ -23,9 +23,9 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout - uses: actions/checkout@v4.1.2 + uses: actions/checkout@v4.1.5 - name: Self-hosted Renovate - uses: renovatebot/github-action@v40.1.9 + uses: renovatebot/github-action@v40.1.11 with: token: ${{ secrets.RENOVATE_TOKEN }} env: diff --git a/README.md b/README.md index 84d65aec..0c8f13e1 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Activepieces](https://github.com/activepieces/activepieces) - True zapier alternative. - [Actual Budget](https://github.com/actualbudget/actual-server) - Local-first OpenSource Budget tool - [Adguard](https://github.com/AdguardTeam) - World's most advanced adblocker! +- [AFFiNE](https://github.com/toeverything/affine) - AFFiNE is a workspace with fully merged docs, whiteboards and databases. - [Anse](https://github.com/anse-app/anse) - Fully optimized UI for AI Chats. - [ArchiveBox](https://github.com/ArchiveBox/ArchiveBox) - Open source self-hosted web archiving. - [Atuin Server](https://github.com/atuinsh/atuin) - Magical Shell History @@ -27,6 +28,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [ChangeDetection](https://github.com/dgtlmoon/changedetection.io) - Website change detection. - [ChatGPT UI](https://github.com/WongSaang/chatgpt-ui) - A ChatGPT web client that supports multiple users, multiple languages, and multiple database connections for persistent data storage - [Chatpad AI](https://github.com/deiucanta/chatpad) - Not just another ChatGPT user-interface! +- [Cheshire Cat AI](https://github.com/cheshire-cat-ai/core) - A production-ready AI framework to develop AI agents. - [Cloudflare DDNS](https://github.com/joshuaavalon/docker-cloudflare) - Update DNS records on Cloudflare. - [Cloudflared](https://github.com/WisdomSky/Cloudflared-web) - Cloudflare Tunnels in a Web UI - [Code-Server - Web VS Code](https://github.com/linuxserver/docker-code-server) - Code-server is VS Code running on a remote server, accessible through the browser. @@ -101,6 +103,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Kimai](https://github.com/kimai/kimai) - Open source time-tracker - [Kiwix Server](https://github.com/kiwix/kiwix-tools/) - Kiwix Server is a web server for hosting .zim files - [Koillection](https://github.com/benjaminjonard/koillection) - Koillection allow you to manage any kind of collections. +- [Komga](https://github.com/gotson/komga) - A media server for your comics, mangas, BDs, magazines and eBooks. - [LibReddit](https://github.com/spikecodes/libreddit) - Browse reddit without problems! - [LibrePhotos](https://github.com/LibrePhotos/librephotos) - Complete photo management service - [LibreTranslate](https://github.com/LibreTranslate/LibreTranslate) - Free and Open Source Machine Translation API. 100% self-hosted, offline capable and easy to setup. @@ -194,6 +197,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Speedtest Tracker](https://github.com/alexjustesen/speedtest-tracker) - Internet performance tracking application. - [Spoolman](https://github.com/Donkie/Spoolman) - Keep track of your inventory of 3D-printer filament spools - [Sshwifty](https://github.com/nirui/sshwifty) - Web SSH & Telnet (WebSSH & WebTelnet client) +- [Stalwart Mail](https://github.com/stalwartlabs) - Open-source mail server solution with JMAP, IMAP4, and SMTP support - [Stirling-PDF](https://github.com/Frooodle/Stirling-PDF/) - Powerful locally hosted web based PDF manipulation tool. - [Syncthing](https://github.com/syncthing) - Peer-to-peer file synchronization between your devices - [Tailscale](https://github.com/tailscale/tailscale) - The easiest, most secure way to use WireGuard and 2FA. diff --git a/apps/activepieces/config.json b/apps/activepieces/config.json index 20d1a003..58a27eff 100644 --- a/apps/activepieces/config.json +++ b/apps/activepieces/config.json @@ -5,8 +5,8 @@ "exposable": true, "id": "activepieces", "description": "Your friendliest open source all-in-one automation tool.", - "tipi_version": 22, - "version": "0.24.1", + "tipi_version": 24, + "version": "0.25.1", "categories": [ "automation" ], diff --git a/apps/activepieces/docker-compose.yml b/apps/activepieces/docker-compose.yml index bdb79ab0..bfc355a2 100644 --- a/apps/activepieces/docker-compose.yml +++ b/apps/activepieces/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: activepieces: - image: activepieces/activepieces:0.24.1 + image: activepieces/activepieces:0.25.1 container_name: activepieces restart: unless-stopped ports: diff --git a/apps/actual-budget/config.json b/apps/actual-budget/config.json index 007f02ad..11c11ef6 100644 --- a/apps/actual-budget/config.json +++ b/apps/actual-budget/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8011, "id": "actual-budget", - "tipi_version": 18, - "version": "24.4.0", + "tipi_version": 19, + "version": "24.5.0", "categories": [ "finance" ], diff --git a/apps/actual-budget/docker-compose.yml b/apps/actual-budget/docker-compose.yml index b08014fe..91469e42 100644 --- a/apps/actual-budget/docker-compose.yml +++ b/apps/actual-budget/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.9" services: actual-budget: container_name: actual-budget - image: actualbudget/actual-server:24.4.0 + image: actualbudget/actual-server:24.5.0 restart: unless-stopped ports: - ${APP_PORT}:5006 diff --git a/apps/affine/config.json b/apps/affine/config.json new file mode 100644 index 00000000..e3847cce --- /dev/null +++ b/apps/affine/config.json @@ -0,0 +1,53 @@ +{ + "name": "AFFiNE", + "id": "affine", + "available": true, + "short_desc": "AFFiNE is a workspace with fully merged docs, whiteboards and databases.", + "author": "https://github.com/toeverything", + "port": 3010, + "categories": [ + "utilities" + ], + "description": "AFFiNE is a workspace with fully merged docs, whiteboards and databases. A privacy-focused, local-first, open-source, and ready-to-use alternative for Notion & Miro. Docs, canvas and tables are hyper-merged with AFFiNE - just like the word affine", + "tipi_version": 1, + "version": "stable", + "source": "https://github.com/toeverything/affine", + "website": "https://affine.pro", + "exposable": true, + "form_fields": [ + { + "env_variable": "AFFINE_ADMIN_EMAIL", + "label": "Admin Email", + "pattern_error": "Invalid email", + "regex": "^[\\w\\-\\.]+@([\\w-]+\\.)+[\\w-]{2,}$", + "required": true, + "type": "text" + }, + { + "env_variable": "AFFINE_ADMIN_PASSWORD", + "label": "Admin Password", + "pattern_error": "Invalid password: Must have 1 lowercase, 1 uppercase, 1 special character, 1 digit and no $.", + "regex": "^(?=.*\\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[^\\w\\d\\s:])([^\\s$]){8,128}$", + "required": true, + "type": "password", + "min": 8, + "max": 128 + }, + { + "env_variable": "AFFINE_TELEMETRY_ENABLE", + "label": "Enable affine telemetry?", + "required": false, + "type": "boolean" + }, + { + "env_variable": "AFFINE_POSTGRES_PASSWORD", + "label": "Affine postgres password", + "type": "random", + "min": 32 + } + ], + "supported_architectures": [ + "arm64", + "amd64" + ] +} \ No newline at end of file diff --git a/apps/affine/docker-compose.yml b/apps/affine/docker-compose.yml new file mode 100644 index 00000000..8965da26 --- /dev/null +++ b/apps/affine/docker-compose.yml @@ -0,0 +1,91 @@ +version: "3.9" +services: + affine: + image: ghcr.io/toeverything/affine-graphql:stable + container_name: affine + command: ["sh", "-c", "node ./scripts/self-host-predeploy && node ./dist/index.js"] + ports: + - ${APP_PORT}:3010 + depends_on: + affine-redis: + condition: service_healthy + affine-postgres: + condition: service_healthy + volumes: + # Custom configurations + - ${APP_DATA_DIR}/data/config:/root/.affine/config + # Blob storage + - ${APP_DATA_DIR}/data/storage:/root/.affine/storage + logging: + driver: "json-file" + options: + max-size: "1000m" + restart: unless-stopped + environment: + - NODE_OPTIONS="--import=./scripts/register.js" + - AFFINE_CONFIG_PATH=/root/.affine/config + - REDIS_SERVER_HOST=affine-redis + - DATABASE_URL=postgres://tipi:${AFFINE_POSTGRES_PASSWORD}@affine-postgres:5432/affine + - NODE_ENV=production + - AFFINE_ADMIN_EMAIL=${AFFINE_ADMIN_EMAIL} + - AFFINE_ADMIN_PASSWORD=${AFFINE_ADMIN_PASSWORD} + - TELEMETRY_ENABLE=${AFFINE_TELEMETRY_ENABLE} + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.affine-web-redirect.redirectscheme.scheme: https + traefik.http.services.affine.loadbalancer.server.port: 3010 + # Web + traefik.http.routers.affine-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.affine-insecure.entrypoints: web + traefik.http.routers.affine-insecure.service: affine + traefik.http.routers.affine-insecure.middlewares: affine-web-redirect + # Websecure + traefik.http.routers.affine.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.affine.entrypoints: websecure + traefik.http.routers.affine.service: affine + traefik.http.routers.affine.tls.certresolver: myresolver + # Local domain + traefik.http.routers.affine-local-insecure.rule: Host(`affine.${LOCAL_DOMAIN}`) + traefik.http.routers.affine-local-insecure.entrypoints: web + traefik.http.routers.affine-local-insecure.service: affine + traefik.http.routers.affine-local-insecure.middlewares: affine-web-redirect + # Local domain secure + traefik.http.routers.affine-local.rule: Host(`affine.${LOCAL_DOMAIN}`) + traefik.http.routers.affine-local.entrypoints: websecure + traefik.http.routers.affine-local.service: affine + traefik.http.routers.affine-local.tls: true + + affine-redis: + image: redis + container_name: affine-redis + restart: unless-stopped + volumes: + - ${APP_DATA_DIR}/data/redis:/data + healthcheck: + test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ] + interval: 10s + timeout: 5s + retries: 5 + networks: + - tipi_main_network + + affine-postgres: + image: postgres + container_name: affinepostgres + restart: unless-stopped + volumes: + - ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data + healthcheck: + test: [ "CMD-SHELL", "pg_isready -U affine" ] + interval: 10s + timeout: 5s + retries: 5 + environment: + POSTGRES_USER: tipi + POSTGRES_PASSWORD: ${AFFINE_POSTGRES_PASSWORD} + POSTGRES_DB: affine + networks: + - tipi_main_network diff --git a/apps/affine/metadata/description.md b/apps/affine/metadata/description.md new file mode 100755 index 00000000..4af96cb7 --- /dev/null +++ b/apps/affine/metadata/description.md @@ -0,0 +1,23 @@ +## AFFiNE + +[AFFiNE](https://affine.pro) is an open-source, all-in-one workspace and an operating system for all the building blocks that assemble your knowledge base and much more -- wiki, knowledge management, presentation and digital assets. It's a better alternative to Notion and Miro. + +![](https://cdn.affine.pro/Github_hero_image1.png) + +### Features + +**A true canvas for blocks in any form. Docs and whiteboard are now fully merged.** + +- Many editor apps claim to be a canvas for productivity, but AFFiNE is one of the very few which allows you to put any building block on an edgeless canvas -- rich text, sticky notes, any embedded web pages, multi-view databases, linked pages, shapes and even slides. We have it all. + +**Multimodal AI partner ready to kick in any work** + +- Write up professional work report? Turn an outline into expressive and presentable slides? Summary an article into a well-structured mindmap? Sorting your job plan and backlog for tasks? Or... draw and code prototype apps and web pages directly all with one prompt? With you, AFFiNE AI pushes your creativity to the edge of your imagination. + +**Local-first & Real-time collaborative** + +- We love the idea of local-first that you always own your data on your disk, in spite of the cloud. Furthermore, AFFiNE supports real-time sync and collaborations on web and cross-platform clients. + +**Self-host & Shape your own AFFiNE** + +- You have the freedom to manage, self-host, fork and build your own AFFiNE. Plugin community and third-party blocks are coming soon. More tractions on [Blocksuite](https://blocksuite.io). Check there to learn how to [self-host AFFiNE](https://docs.affine.pro/docs/self-host-affine). diff --git a/apps/affine/metadata/logo.jpg b/apps/affine/metadata/logo.jpg new file mode 100644 index 00000000..01176fd1 Binary files /dev/null and b/apps/affine/metadata/logo.jpg differ diff --git a/apps/archivebox/config.json b/apps/archivebox/config.json index 4b12a8ba..29112310 100755 --- a/apps/archivebox/config.json +++ b/apps/archivebox/config.json @@ -5,11 +5,9 @@ "exposable": true, "port": 8015, "id": "archivebox", - "tipi_version": 2, - "version": "0.7.4", - "categories": [ - "media" - ], + "tipi_version": 3, + "version": "0.7.2", + "categories": ["media"], "description": "ArchiveBox is a powerful, self-hosted internet archiving solution to collect, save, and view websites offline.", "short_desc": "Open source self-hosted web archiving.", "author": "archivebox", @@ -33,8 +31,5 @@ "env_variable": "ARCHIVEBOX_PASSWORD" } ], - "supported_architectures": [ - "arm64", - "amd64" - ] + "supported_architectures": ["arm64", "amd64"] } diff --git a/apps/archivebox/docker-compose.yml b/apps/archivebox/docker-compose.yml index 0b626778..e2774ae7 100755 --- a/apps/archivebox/docker-compose.yml +++ b/apps/archivebox/docker-compose.yml @@ -1,6 +1,6 @@ services: archivebox: - image: archivebox/archivebox:0.7.4 + image: archivebox/archivebox:0.7.2 restart: unless-stopped container_name: archivebox command: server --quick-init 0.0.0.0:8015 diff --git a/apps/audiobookshelf/config.json b/apps/audiobookshelf/config.json index 44cd9c5b..bb9d5a55 100644 --- a/apps/audiobookshelf/config.json +++ b/apps/audiobookshelf/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 13378, "id": "audiobookshelf", - "tipi_version": 13, - "version": "2.8.1", + "tipi_version": 14, + "version": "2.9.0", "categories": [ "books", "media" diff --git a/apps/audiobookshelf/docker-compose.yml b/apps/audiobookshelf/docker-compose.yml index 13480935..ed963a1b 100644 --- a/apps/audiobookshelf/docker-compose.yml +++ b/apps/audiobookshelf/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.7' services: audiobookshelf: container_name: audiobookshelf - image: ghcr.io/advplyr/audiobookshelf:2.8.1 + image: ghcr.io/advplyr/audiobookshelf:2.9.0 restart: unless-stopped ports: - ${APP_PORT}:80 diff --git a/apps/authentik/config.json b/apps/authentik/config.json index 32314616..adffc8ec 100644 --- a/apps/authentik/config.json +++ b/apps/authentik/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "authentik", - "tipi_version": 11, - "version": "2024.2.3", + "tipi_version": 13, + "version": "2024.4.1", "https": true, "categories": [ "development" diff --git a/apps/authentik/docker-compose.yml b/apps/authentik/docker-compose.yml index 287d5671..f89f8dcf 100644 --- a/apps/authentik/docker-compose.yml +++ b/apps/authentik/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: authentik: - image: ghcr.io/goauthentik/server:2024.2.3 + image: ghcr.io/goauthentik/server:2024.4.1 restart: unless-stopped command: server container_name: authentik @@ -49,7 +49,7 @@ services: traefik.http.routers.authentik-local.service: authentik traefik.http.routers.authentik-local.tls: true authentik-worker: - image: ghcr.io/goauthentik/server:2024.2.3 + image: ghcr.io/goauthentik/server:2024.4.1 restart: unless-stopped command: worker container_name: authentik-worker diff --git a/apps/bitcoind/config.json b/apps/bitcoind/config.json index e5742fdf..4d504af2 100644 --- a/apps/bitcoind/config.json +++ b/apps/bitcoind/config.json @@ -7,8 +7,8 @@ "port": 8333, "id": "bitcoind", "description": "Bitcoin core node", - "tipi_version": 1, - "version": "26.0", + "tipi_version": 2, + "version": "27.0", "categories": [ "finance" ], @@ -53,6 +53,57 @@ "hint": "Maintain at most N connections to peers. Leave empty for default 125.", "required": false, "env_variable": "BITCOIND_MAXPEERS" + }, + { + "type": "text", + "label": "Enable txindex", + "hint": "Enabled by default", + "required": false, + "env_variable": "BITCOIND_TXINDEX", + "options": [ + { + "label": "Yes", + "value": "1" + }, + { + "label": "No", + "value": "0" + } + ] + }, + { + "type": "text", + "label": "Enable peer bloom filters", + "hint": "Enabled by default", + "required": false, + "env_variable": "BITCOIND_BLOOM_FILTERS", + "options": [ + { + "label": "Yes", + "value": "1" + }, + { + "label": "No", + "value": "0" + } + ] + }, + { + "type": "text", + "label": "Enable block filter index", + "hint": "Enabled by default", + "required": false, + "env_variable": "BITCOIND_BLOCK_FILTER", + "options": [ + { + "label": "Yes", + "value": "1" + }, + { + "label": "No", + "value": "0" + } + ] } ], "supported_architectures": [ diff --git a/apps/bitcoind/docker-compose.yml b/apps/bitcoind/docker-compose.yml index 54dce6c3..b4812039 100644 --- a/apps/bitcoind/docker-compose.yml +++ b/apps/bitcoind/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.9' services: bitcoind: container_name: bitcoind - image: lncm/bitcoind:v26.0 + image: lncm/bitcoind:v27.0 user: 0:0 volumes: - ${APP_DATA_DIR}/data:/root/.bitcoin @@ -18,6 +18,10 @@ services: --maxmempool=${BITCOIND_MAX_MEMPOOL:-300} --listen=${BITCOIND_LISTEN:-0} --maxconnections=${BITCOIND_MAXPEERS:-125} + --txindex=${BITCOIND_TXINDEX:-1} + --peerbloomfilters=${BITCOIND_BLOOM_FILTERS:-1} + --blockfilterindex=${BITCOIND_BLOCK_FILTER:-1} + --peerblockfilters=${BITCOIND_BLOCK_FILTER:-1} networks: - tipi_main_network labels: diff --git a/apps/bitmagnet/config.json b/apps/bitmagnet/config.json index 51792c3e..45c7e6eb 100644 --- a/apps/bitmagnet/config.json +++ b/apps/bitmagnet/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "bitmagnet", - "tipi_version": 17, - "version": "0.7.14", + "tipi_version": 18, + "version": "0.8.0", "categories": [ "media" ], diff --git a/apps/bitmagnet/docker-compose.yml b/apps/bitmagnet/docker-compose.yml index 81afa8a4..b19a6be5 100644 --- a/apps/bitmagnet/docker-compose.yml +++ b/apps/bitmagnet/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: bitmagnet: - image: ghcr.io/bitmagnet-io/bitmagnet:0.7.14 + image: ghcr.io/bitmagnet-io/bitmagnet:v0.8.0 restart: unless-stopped command: - worker diff --git a/apps/budibase/config.json b/apps/budibase/config.json index 197aa71d..2b85a422 100644 --- a/apps/budibase/config.json +++ b/apps/budibase/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "budibase", - "tipi_version": 126, - "version": "2.23.10", + "tipi_version": 130, + "version": "2.24.1", "categories": [ "development" ], diff --git a/apps/budibase/docker-compose.yml b/apps/budibase/docker-compose.yml index 0ef8b47b..565ea35e 100644 --- a/apps/budibase/docker-compose.yml +++ b/apps/budibase/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: budibase: - image: budibase/budibase:2.23.10 + image: budibase/budibase:2.24.1 restart: unless-stopped container_name: budibase ports: diff --git a/apps/changedetection/config.json b/apps/changedetection/config.json index 6d72a080..0c1265f3 100644 --- a/apps/changedetection/config.json +++ b/apps/changedetection/config.json @@ -5,8 +5,8 @@ "exposable": true, "id": "changedetection", "description": "The best and simplest free open source website change detection, restock monitor and notification service.", - "tipi_version": 18, - "version": "0.45.20", + "tipi_version": 20, + "version": "0.45.22", "categories": [ "utilities" ], diff --git a/apps/changedetection/docker-compose.yml b/apps/changedetection/docker-compose.yml index a18696f5..0edb6107 100644 --- a/apps/changedetection/docker-compose.yml +++ b/apps/changedetection/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: changedetection: - image: ghcr.io/dgtlmoon/changedetection.io:0.45.20 + image: ghcr.io/dgtlmoon/changedetection.io:0.45.22 container_name: changedetection hostname: changedetection volumes: diff --git a/apps/cheshire-cat-ai/config.json b/apps/cheshire-cat-ai/config.json new file mode 100644 index 00000000..6a7e4dca --- /dev/null +++ b/apps/cheshire-cat-ai/config.json @@ -0,0 +1,23 @@ +{ + "name": "Cheshire Cat AI", + "available": true, + "port": 1865, + "exposable": true, + "id": "cheshire-cat-ai", + "description": "The Cheshire Cat is an open-source, hackable and production-ready framework that allows developing intelligent personal AI assistant agents on top of Large Language Models (LLM).", + "tipi_version": 3, + "version": "1.6.1", + "categories": [ + "ai" + ], + "short_desc": "A production-ready AI framework to develop AI agents.", + "author": "pieroit", + "source": "https://github.com/cheshire-cat-ai/core", + "website": "https://cheshirecat.ai", + "form_fields": [], + "url_suffix": "/admin", + "supported_architectures": [ + "amd64", + "arm64" + ] +} diff --git a/apps/cheshire-cat-ai/docker-compose.yml b/apps/cheshire-cat-ai/docker-compose.yml new file mode 100644 index 00000000..204fad05 --- /dev/null +++ b/apps/cheshire-cat-ai/docker-compose.yml @@ -0,0 +1,45 @@ +version: '3.7' + +services: + cheshire-cat-ai: + networks: + - tipi_main_network + image: ghcr.io/cheshire-cat-ai/core:1.6.1 + container_name: cheshire-cat-ai + ports: + - ${APP_PORT}:80 + environment: + - PYTHONUNBUFFERED=1 + - WATCHFILES_FORCE_POLLING=true + volumes: + - ${APP_DATA_DIR}/data/static:/app/cat/static + - ${APP_DATA_DIR}/data/plugins:/app/cat/plugins + - ${APP_DATA_DIR}/data/data:/app/cat/data + labels: + # Main + traefik.enable: true + traefik.http.middlewares.cheshire-web-redirect.redirectscheme.scheme: https + traefik.http.services.cheshire.loadbalancer.server.port: 1865 + # Web + traefik.http.routers.cheshire-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.cheshire-insecure.entrypoints: web + traefik.http.routers.cheshire-insecure.service: cheshire-cat-ai + traefik.http.routers.cheshire-insecure.middlewares: cheshire-cat-ai-web-redirect + # Websecure + traefik.http.routers.cheshire.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.cheshire.entrypoints: websecure + traefik.http.routers.cheshire.service: cheshire-cat-ai + traefik.http.routers.cheshire.tls.certresolver: myresolver + # Local domain + traefik.http.routers.cheshire-local-insecure.rule: Host(`cheshire-cat-ai.${LOCAL_DOMAIN}`) + traefik.http.routers.cheshire-local-insecure.entrypoints: web + traefik.http.routers.cheshire-local-insecure.service: cheshire-cat-ai + traefik.http.routers.cheshire-local-insecure.middlewares: cheshire-cat-ai-web-redirect + # Local domain secure + traefik.http.routers.cheshire-local.rule: Host(`cheshire-cat-ai.${LOCAL_DOMAIN}`) + traefik.http.routers.cheshire-local.entrypoints: websecure + traefik.http.routers.cheshire-local.service: cheshire-cat-ai + traefik.http.routers.cheshire-local.tls: true +networks: + tipi-main-network: + driver: bridge \ No newline at end of file diff --git a/apps/cheshire-cat-ai/metadata/description.md b/apps/cheshire-cat-ai/metadata/description.md new file mode 100644 index 00000000..319f1c24 --- /dev/null +++ b/apps/cheshire-cat-ai/metadata/description.md @@ -0,0 +1,78 @@ + + +
+
+

Cheshire-Cat (Stregatto)

+
+ + GitHub Repo stars + + + chat on Discord + + GitHub issues + + + GitHub tag (with filter) + + GitHub top language + +

+ Wikipedia picture of the Cheshire Cat +

+ +
+ +## Production-ready AI assistant framework + +The Cheshire Cat is a framework to build custom AIs on top of any language model. +If you have ever used systems like WordPress or Django to build web apps, imagine the Cat as a similar tool, but specific for AI. + +## Docs and Resources + +- [Official Documentation](https://cheshire-cat-ai.github.io/docs/) +- [Discord Server](https://discord.gg/bHX5sNFCYU) +- [Website](https://cheshirecat.ai/) +- [YouTube tutorial - How to install](https://youtu.be/Rvx19TZBCrw) +- [Tutorial - Write your first plugin](https://cheshirecat.ai/write-your-first-plugin/) + +## Why using the Cat + +- ⚑️ API first, so you get a microservice to easily add a conversational layer to your app +- 🐘 Remembers conversations and documents and uses them in conversation +- πŸš€ Extensible via plugins (public plugin registry + private plugins allowed) +- 🎚 Event callbacks, function calling (tools), conversational forms +- πŸ› Easy to use admin panel (chat, visualize memory and plugins, adjust settings) +- 🌍 Supports any language model (works with OpenAI, Google, Ollama, HuggingFace, custom services) +- πŸ‹ Production-ready - 100% [dockerized](https://docs.docker.com/get-docker/) +- πŸ‘©β€πŸ‘§β€πŸ‘¦ Active [Discord community](https://discord.gg/bHX5sNFCYU) and easy to understand [docs](https://cheshire-cat-ai.github.io/docs/) + +We are committed to openness, privacy and creativity, we want to bring AI to the long tail. To learn more about our vision and values, read the [Code of Ethics](https://cheshirecat.ai/code-of-ethics/). + + +## Roadmap & Contributing + +The Detailed roadmap is [here](https://github.com/cheshire-cat-ai/core/blob/main/readme/ROADMAP.md). +Send your pull request to the `develop` branch. Here is a [full guide to contributing](https://github.com/cheshire-cat-ai/core/blob/main/readme/CONTRIBUTING.md). + +Join our [community on Discord](https://discord.gg/bHX5sNFCYU) and give the project a star ⭐! +Thanks again!πŸ™ + +## Which way to go? + +

(back to top)

+ +

+ Wikipedia picture of the Cheshire Cat +

+ +``` +"Would you tell me, please, which way I ought to go from here?" +"That depends a good deal on where you want to get to," said the Cat. +"I don't much care where--" said Alice. +"Then it doesn't matter which way you go," said the Cat. + +(Alice's Adventures in Wonderland - Lewis Carroll) + +``` diff --git a/apps/cheshire-cat-ai/metadata/logo.jpg b/apps/cheshire-cat-ai/metadata/logo.jpg new file mode 100644 index 00000000..de860cb8 Binary files /dev/null and b/apps/cheshire-cat-ai/metadata/logo.jpg differ diff --git a/apps/cloudflared/config.json b/apps/cloudflared/config.json index b6783b61..547ab747 100644 --- a/apps/cloudflared/config.json +++ b/apps/cloudflared/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": false, "id": "cloudflared", - "tipi_version": 9, - "version": "2024.4.0", + "tipi_version": 10, + "version": "2024.4.1", "categories": [ "utilities" ], diff --git a/apps/cloudflared/docker-compose.yml b/apps/cloudflared/docker-compose.yml index 90406541..617f6c6e 100644 --- a/apps/cloudflared/docker-compose.yml +++ b/apps/cloudflared/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.9" services: cloudflared: - image: wisdomsky/cloudflared-web:2024.4.0 + image: wisdomsky/cloudflared-web:2024.4.1 container_name: cloudflared restart: unless-stopped network_mode: host diff --git a/apps/codex-docs/config.json b/apps/codex-docs/config.json index 42e19fd1..37a7c847 100644 --- a/apps/codex-docs/config.json +++ b/apps/codex-docs/config.json @@ -5,9 +5,11 @@ "exposable": true, "port": 8101, "id": "codex-docs", - "tipi_version": 2, - "version": "v2.1", - "categories": ["media"], + "tipi_version": 3, + "version": "2.2", + "categories": [ + "media" + ], "description": "CodeX Docs is a free docs application. It's based on Editor.js ecosystem which gives all modern opportunities for working with content. You can use it for product documentation, for internal team docs, for personal notes or any other need. ", "short_desc": "Free Docs app powered by Editor.js ecosystem.", "author": "https://docs.codex.so/", @@ -34,5 +36,7 @@ "env_variable": "CODEX_AUTH_SECRET" } ], - "supported_architectures": ["amd64"] + "supported_architectures": [ + "amd64" + ] } diff --git a/apps/codex-docs/docker-compose.yml b/apps/codex-docs/docker-compose.yml index 46fc164d..5aa6f751 100644 --- a/apps/codex-docs/docker-compose.yml +++ b/apps/codex-docs/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.2" services: codex-docs: container_name: codex-docs - image: ghcr.io/codex-team/codex.docs:v2.1 + image: ghcr.io/codex-team/codex.docs:v2.2 ports: - ${APP_PORT}:3000 restart: unless-stopped diff --git a/apps/dashy/config.json b/apps/dashy/config.json index f8d9399b..f9f32dbc 100644 --- a/apps/dashy/config.json +++ b/apps/dashy/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": false, "id": "dashy", - "tipi_version": 2, - "version": "2.1.2", + "tipi_version": 3, + "version": "3.0.0", "categories": [ "utilities" ], diff --git a/apps/dashy/docker-compose.yml b/apps/dashy/docker-compose.yml index f9795904..62a49097 100644 --- a/apps/dashy/docker-compose.yml +++ b/apps/dashy/docker-compose.yml @@ -1,13 +1,11 @@ -version: "3" - services: dashy: container_name: dashy - image: ghcr.io/lissy93/dashy:2.1.2 + image: ghcr.io/lissy93/dashy:3.0.0 ports: - - ${APP_PORT}:80 + - ${APP_PORT}:8080 volumes: - - ${APP_DATA_DIR}/data/dashy/conf.yml:/app/public/conf.yml + - ${APP_DATA_DIR}/data/dashy:/app/user-data restart: unless-stopped networks: - tipi_main_network @@ -15,7 +13,7 @@ services: # Main traefik.enable: true traefik.http.middlewares.dashy-web-redirect.redirectscheme.scheme: https - traefik.http.services.dashy.loadbalancer.server.port: 80 + traefik.http.services.dashy.loadbalancer.server.port: 8080 # Web traefik.http.routers.dashy-insecure.rule: Host(`${APP_DOMAIN}`) traefik.http.routers.dashy-insecure.entrypoints: web diff --git a/apps/dozzle/config.json b/apps/dozzle/config.json index 9bdb8f77..7454ad91 100644 --- a/apps/dozzle/config.json +++ b/apps/dozzle/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8013, "id": "dozzle", - "tipi_version": 22, - "version": "6.5.1", + "tipi_version": 23, + "version": "6.5.2", "categories": [ "development" ], diff --git a/apps/dozzle/docker-compose.yml b/apps/dozzle/docker-compose.yml index e1ee7c32..8ccfff61 100644 --- a/apps/dozzle/docker-compose.yml +++ b/apps/dozzle/docker-compose.yml @@ -1,7 +1,7 @@ services: dozzle: container_name: dozzle - image: amir20/dozzle:v6.5.1 + image: amir20/dozzle:v6.5.2 restart: unless-stopped volumes: - /var/run/docker.sock:/var/run/docker.sock diff --git a/apps/drawio/config.json b/apps/drawio/config.json index 57039cd3..76764241 100644 --- a/apps/drawio/config.json +++ b/apps/drawio/config.json @@ -6,8 +6,8 @@ "url_suffix": "?offline=1", "id": "drawio", "description": "draw.io is a JavaScript, client-side editor for general diagramming and whiteboarding.", - "tipi_version": 38, - "version": "24.2.7", + "tipi_version": 39, + "version": "24.3.1", "categories": [ "utilities" ], diff --git a/apps/drawio/docker-compose.yml b/apps/drawio/docker-compose.yml index 3907a148..a22688cc 100644 --- a/apps/drawio/docker-compose.yml +++ b/apps/drawio/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: drawio: - image: jgraph/drawio:24.2.7 + image: jgraph/drawio:24.3.1 ports: - ${APP_PORT}:8080 container_name: drawio diff --git a/apps/email-oauth2-proxy/config.json b/apps/email-oauth2-proxy/config.json index 0e7364c8..61782fed 100644 --- a/apps/email-oauth2-proxy/config.json +++ b/apps/email-oauth2-proxy/config.json @@ -6,8 +6,8 @@ "no_gui": true, "port": 1999, "id": "email-oauth2-proxy", - "tipi_version": 6, - "version": "2024.03.26", + "tipi_version": 7, + "version": "2024.04.24", "categories": [ "utilities", "security" diff --git a/apps/email-oauth2-proxy/docker-compose.yml b/apps/email-oauth2-proxy/docker-compose.yml index 7a98da46..60b3d26a 100644 --- a/apps/email-oauth2-proxy/docker-compose.yml +++ b/apps/email-oauth2-proxy/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.9" services: email-oauth2-proxy: container_name: email-oauth2-proxy - image: ghcr.io/blacktirion/email-oauth2-proxy-docker:2024.03.26 + image: ghcr.io/blacktirion/email-oauth2-proxy-docker:2024.04.24 ports: - ${APP_PORT}:80 restart: unless-stopped diff --git a/apps/filebrowser/config.json b/apps/filebrowser/config.json index 7d02d5dd..48609bd6 100644 --- a/apps/filebrowser/config.json +++ b/apps/filebrowser/config.json @@ -5,14 +5,19 @@ "exposable": true, "port": 8096, "id": "filebrowser", - "tipi_version": 3, + "tipi_version": 4, "version": "s6", - "categories": ["utilities"], + "categories": [ + "utilities" + ], "description": "Reliable and Performant File Management Desktop Sync and File Sharing\n Default credentials: admin / admin", "short_desc": "Access your homeserver files from your browser", "author": "filebrowser.org", "website": "https://filebrowser.org/", "source": "https://github.com/filebrowser/filebrowser", "form_fields": [], - "supported_architectures": ["arm64", "amd64"] + "supported_architectures": [ + "arm64", + "amd64" + ] } diff --git a/apps/filebrowser/data/config/settings.json b/apps/filebrowser/data/config/settings.json deleted file mode 100644 index cf7fb4ee..00000000 --- a/apps/filebrowser/data/config/settings.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "port": 80, - "baseURL": "", - "address": "", - "log": "stdout", - "database": "/database/filebrowser.db", - "root": "/srv" -} diff --git a/apps/filebrowser/docker-compose.yml b/apps/filebrowser/docker-compose.yml index d3421d18..e098f506 100644 --- a/apps/filebrowser/docker-compose.yml +++ b/apps/filebrowser/docker-compose.yml @@ -10,7 +10,9 @@ services: - ${ROOT_FOLDER_HOST}/media:/srv/media - ${APP_DATA_DIR}/data/general:/srv/general - ${APP_DATA_DIR}/data/db:/database - - ${APP_DATA_DIR}/data/config:/config + environment: + - PUID=0 + - PGID=0 networks: - tipi_main_network labels: diff --git a/apps/fireshare/config.json b/apps/fireshare/config.json index 5ba11795..2198b928 100644 --- a/apps/fireshare/config.json +++ b/apps/fireshare/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "fireshare", - "tipi_version": 12, - "version": "1.2.19", + "tipi_version": 13, + "version": "1.2.20", "categories": [ "development" ], diff --git a/apps/fireshare/docker-compose.yml b/apps/fireshare/docker-compose.yml index ca858062..52da163b 100644 --- a/apps/fireshare/docker-compose.yml +++ b/apps/fireshare/docker-compose.yml @@ -3,7 +3,7 @@ version: "3" services: fireshare: container_name: fireshare - image: shaneisrael/fireshare:v1.2.19 + image: shaneisrael/fireshare:v1.2.20 ports: - ${APP_PORT}:80 volumes: diff --git a/apps/flatnotes/config.json b/apps/flatnotes/config.json index f8a86993..38995cdd 100644 --- a/apps/flatnotes/config.json +++ b/apps/flatnotes/config.json @@ -5,8 +5,8 @@ "exposable": true, "id": "flatnotes", "port": 8137, - "tipi_version": 20, - "version": "4.0.3", + "tipi_version": 21, + "version": "4.0.4", "categories": [ "utilities" ], diff --git a/apps/flatnotes/docker-compose.yml b/apps/flatnotes/docker-compose.yml index 1dd17399..9a6a1546 100644 --- a/apps/flatnotes/docker-compose.yml +++ b/apps/flatnotes/docker-compose.yml @@ -3,7 +3,7 @@ version: "3" services: flatnotes: container_name: flatnotes - image: dullage/flatnotes:v4.0.3 + image: dullage/flatnotes:v4.0.4 environment: FLATNOTES_AUTH_TYPE: ${FLATNOTES_AUTH_TYPE} FLATNOTES_USERNAME: ${FLATNOTES_USERNAME} diff --git a/apps/flowise/config.json b/apps/flowise/config.json index cbebbdf2..1588f397 100644 --- a/apps/flowise/config.json +++ b/apps/flowise/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8009, "id": "flowise", - "tipi_version": 11, - "version": "1.6.5", + "tipi_version": 12, + "version": "1.6.6", "categories": [ "ai", "automation" diff --git a/apps/flowise/docker-compose.yml b/apps/flowise/docker-compose.yml index ad31e968..a8177a23 100644 --- a/apps/flowise/docker-compose.yml +++ b/apps/flowise/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.7' services: flowise: - image: flowiseai/flowise:1.6.5 + image: flowiseai/flowise:1.6.6 restart: unless-stopped command: /bin/sh -c "sleep 3; flowise start" container_name: flowise diff --git a/apps/ghostfolio/config.json b/apps/ghostfolio/config.json index 2eed9503..717b3e35 100644 --- a/apps/ghostfolio/config.json +++ b/apps/ghostfolio/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "ghostfolio", - "tipi_version": 76, - "version": "2.75.1", + "tipi_version": 81, + "version": "2.79.0", "categories": [ "finance" ], diff --git a/apps/ghostfolio/docker-compose.yml b/apps/ghostfolio/docker-compose.yml index 7b9a8e10..63efdb38 100644 --- a/apps/ghostfolio/docker-compose.yml +++ b/apps/ghostfolio/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.9" services: ghostfolio: container_name: ghostfolio - image: ghostfolio/ghostfolio:2.75.1 + image: ghostfolio/ghostfolio:2.79.0 restart: unless-stopped ports: - ${APP_PORT}:3333 diff --git a/apps/gladys/config.json b/apps/gladys/config.json index 61ccc879..a63b59a7 100644 --- a/apps/gladys/config.json +++ b/apps/gladys/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": false, "id": "gladys", - "tipi_version": 32, - "version": "4.38.4", + "tipi_version": 34, + "version": "4.40.0", "categories": [ "automation" ], diff --git a/apps/gladys/docker-compose.yml b/apps/gladys/docker-compose.yml index 85790763..cb8cef77 100644 --- a/apps/gladys/docker-compose.yml +++ b/apps/gladys/docker-compose.yml @@ -3,7 +3,7 @@ version: '3' services: gladys: container_name: gladys - image: gladysassistant/gladys:v4.38.4 + image: gladysassistant/gladys:v4.40.0 privileged: true restart: on-failure stop_grace_period: 1m diff --git a/apps/halo/config.json b/apps/halo/config.json index 2da83739..1af3930e 100644 --- a/apps/halo/config.json +++ b/apps/halo/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8092, "id": "halo", - "tipi_version": 24, - "version": "2.14.0", + "tipi_version": 26, + "version": "2.15.0", "description": "Halo is a powerful and easy-to-use open source website building tool.", "short_desc": "Halo - Open source website building tool.", "categories": [ diff --git a/apps/halo/docker-compose.yml b/apps/halo/docker-compose.yml index 8c6e9562..a07f8d51 100644 --- a/apps/halo/docker-compose.yml +++ b/apps/halo/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: halo: - image: halohub/halo:2.14.0 + image: halohub/halo:2.15.0 container_name: halo restart: unless-stopped depends_on: diff --git a/apps/homeassistant-1/config.json b/apps/homeassistant-1/config.json index 06ddd3a7..d74c363e 100644 --- a/apps/homeassistant-1/config.json +++ b/apps/homeassistant-1/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "homeassistant-1", - "tipi_version": 12, - "version": "2024.4.3", + "tipi_version": 15, + "version": "2024.5.1", "categories": [ "automation" ], diff --git a/apps/homeassistant-1/docker-compose.yml b/apps/homeassistant-1/docker-compose.yml index a740e228..39671798 100644 --- a/apps/homeassistant-1/docker-compose.yml +++ b/apps/homeassistant-1/docker-compose.yml @@ -2,7 +2,7 @@ version: '3' services: homeassistant-1: - image: ghcr.io/home-assistant/home-assistant:2024.4.3 + image: ghcr.io/home-assistant/home-assistant:2024.5.1 container_name: homeassistant-1 environment: - TZ=${TZ} diff --git a/apps/homepage/config.json b/apps/homepage/config.json index cb978e35..56b1a9b0 100644 --- a/apps/homepage/config.json +++ b/apps/homepage/config.json @@ -4,8 +4,8 @@ "available": true, "exposable": true, "port": 8756, - "tipi_version": 10, - "version": "0.8.12", + "tipi_version": 11, + "version": "0.8.13", "id": "homepage", "categories": [ "utilities" diff --git a/apps/homepage/docker-compose.yml b/apps/homepage/docker-compose.yml index 82ec1c99..92ceca3a 100644 --- a/apps/homepage/docker-compose.yml +++ b/apps/homepage/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.9" services: homepage: - image: ghcr.io/gethomepage/homepage:v0.8.12 + image: ghcr.io/gethomepage/homepage:v0.8.13 container_name: homepage restart: unless-stopped ports: diff --git a/apps/immich/config.json b/apps/immich/config.json index 7b7fb566..770ab8a5 100644 --- a/apps/immich/config.json +++ b/apps/immich/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8128, "id": "immich", - "tipi_version": 86, - "version": "1.102.3", + "tipi_version": 88, + "version": "1.103.1", "categories": [ "data", "photography" diff --git a/apps/immich/docker-compose.yml b/apps/immich/docker-compose.yml index 47340063..66bedcb3 100644 --- a/apps/immich/docker-compose.yml +++ b/apps/immich/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.7" services: immich: container_name: immich - image: ghcr.io/immich-app/immich-server:v1.102.3 + image: ghcr.io/immich-app/immich-server:v1.103.1 command: ["start-server.sh"] volumes: - ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload @@ -52,7 +52,7 @@ services: immich-microservices: container_name: immich-microservices - image: ghcr.io/immich-app/immich-server:v1.102.3 + image: ghcr.io/immich-app/immich-server:v1.103.1 command: ["start-microservices.sh"] volumes: - ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload @@ -74,7 +74,7 @@ services: immich-machine-learning: container_name: immich-machine-learning - image: ghcr.io/immich-app/immich-machine-learning:v1.102.3 + image: ghcr.io/immich-app/immich-machine-learning:v1.103.1 volumes: - ${ROOT_FOLDER_HOST}/media/data/images/immich:/usr/src/app/upload - ${APP_DATA_DIR}/data/immich-ml-cache:/cache diff --git a/apps/invidious/config.json b/apps/invidious/config.json index e3aba1c5..43ff8b18 100644 --- a/apps/invidious/config.json +++ b/apps/invidious/config.json @@ -6,7 +6,7 @@ "port": 8095, "id": "invidious", "version": "latest", - "tipi_version": 7, + "tipi_version": 9, "categories": ["media", "social"], "description": "Invidious is an open source alternative front-end to YouTube.", "short_desc": "An alternative front-end to YouTube", diff --git a/apps/invidious/docker-compose.arm64.yml b/apps/invidious/docker-compose.arm64.yml index 30d4be40..13c0cdcb 100644 --- a/apps/invidious/docker-compose.arm64.yml +++ b/apps/invidious/docker-compose.arm64.yml @@ -18,14 +18,12 @@ services: port: 5432 check_tables: true hmac_key: ${INVIDIOUS_HMAC_KEY} + use_innertube_for_captions: true healthcheck: - test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1 + test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/trending || exit 1 interval: 30s timeout: 5s retries: 2 - depends_on: - invidious-db: - condition: service_healthy networks: - tipi_main_network labels: diff --git a/apps/invidious/docker-compose.yml b/apps/invidious/docker-compose.yml index 0367563e..d35232bb 100644 --- a/apps/invidious/docker-compose.yml +++ b/apps/invidious/docker-compose.yml @@ -19,14 +19,12 @@ services: port: 5432 check_tables: true hmac_key: ${INVIDIOUS_HMAC_KEY} + use_innertube_for_captions: true healthcheck: - test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1 + test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/trending || exit 1 interval: 30s timeout: 5s retries: 2 - depends_on: - invidious-db: - condition: service_healthy networks: - tipi_main_network labels: diff --git a/apps/invoice-ninja/docker-compose.yml b/apps/invoice-ninja/docker-compose.yml index 65351d1f..94a543f0 100644 --- a/apps/invoice-ninja/docker-compose.yml +++ b/apps/invoice-ninja/docker-compose.yml @@ -42,7 +42,7 @@ services: traefik.http.routers.invoice-ninja-local.tls: true invoice-ninja-server: - image: invoiceninja/invoiceninja:5.8.50 + image: invoiceninja/invoiceninja:5.8.53 container_name: invoice-ninja-server restart: unless-stopped user: 1500:1500 diff --git a/apps/kanboard/config.json b/apps/kanboard/config.json index dcf47c32..43c14b0d 100644 --- a/apps/kanboard/config.json +++ b/apps/kanboard/config.json @@ -5,8 +5,8 @@ "port": 8010, "id": "kanboard", "description": "Kanboard is a free and open source Kanban project management software.", - "tipi_version": 9, - "version": "1.2.35", + "tipi_version": 10, + "version": "1.2.36", "categories": [ "development" ], diff --git a/apps/kanboard/docker-compose.yml b/apps/kanboard/docker-compose.yml index 1ae8cdf5..4bc2d3dd 100644 --- a/apps/kanboard/docker-compose.yml +++ b/apps/kanboard/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.9" services: kanboard: container_name: kanboard - image: kanboard/kanboard:v1.2.35 + image: kanboard/kanboard:v1.2.36 environment: - PLUGIN_INSTALLER=${PLUGIN_INSTALLER} ports: diff --git a/apps/kavita/config.json b/apps/kavita/config.json index e6bc4125..03b10bc9 100644 --- a/apps/kavita/config.json +++ b/apps/kavita/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "kavita", - "tipi_version": 13, - "version": "0.8.0", + "tipi_version": 14, + "version": "0.8.1", "categories": [ "media" ], diff --git a/apps/kavita/docker-compose.yml b/apps/kavita/docker-compose.yml index 032c8ce7..42b46090 100644 --- a/apps/kavita/docker-compose.yml +++ b/apps/kavita/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.9" services: kavita: container_name: kavita - image: jvmilazz0/kavita:0.8.0 + image: jvmilazz0/kavita:0.8.1 ports: - ${APP_PORT}:5000 volumes: diff --git a/apps/kiwix-serve/config.json b/apps/kiwix-serve/config.json index f61d40cf..4b2fc826 100644 --- a/apps/kiwix-serve/config.json +++ b/apps/kiwix-serve/config.json @@ -5,14 +5,19 @@ "available": true, "exposable": true, "id": "kiwix-serve", - "tipi_version": 1, - "version": "3.5.0-2", - "categories": ["media"], + "tipi_version": 2, + "version": "3.7.0-2", + "categories": [ + "media" + ], "description": "Kiwix Server is a web server for hosting .zim files", "short_desc": "Kiwix Server is a web server for hosting .zim files", "author": "Kiwix", "source": "https://github.com/kiwix/kiwix-tools/", "website": "https://kiwix.org/", "form_fields": [], - "supported_architectures": ["arm64", "amd64"] + "supported_architectures": [ + "arm64", + "amd64" + ] } diff --git a/apps/kiwix-serve/docker-compose.yml b/apps/kiwix-serve/docker-compose.yml index 56b739a8..5216cb6d 100644 --- a/apps/kiwix-serve/docker-compose.yml +++ b/apps/kiwix-serve/docker-compose.yml @@ -3,7 +3,7 @@ version: '3.9' services: kiwix-serve: container_name: kiwix-serve - image: ghcr.io/kiwix/kiwix-serve:3.5.0-2 + image: ghcr.io/kiwix/kiwix-serve:3.7.0-2 ports: - ${APP_PORT}:8080 volumes: diff --git a/apps/komga/config.json b/apps/komga/config.json new file mode 100644 index 00000000..823f619d --- /dev/null +++ b/apps/komga/config.json @@ -0,0 +1,23 @@ +{ + "$schema": "../schema.json", + "name": "Komga", + "port": 2560, + "available": true, + "exposable": true, + "id": "komga", + "tipi_version": 3, + "version": "1.11.1", + "categories": [ + "media" + ], + "description": "A media server for your comics, mangas, BDs, magazines and eBooks.", + "short_desc": "A media server for your comics, mangas, BDs, magazines and eBooks.", + "author": "gotson", + "source": "https://github.com/gotson/komga", + "website": "https://komga.org/", + "form_fields": [], + "supported_architectures": [ + "arm64", + "amd64" + ] +} diff --git a/apps/komga/docker-compose.yml b/apps/komga/docker-compose.yml new file mode 100644 index 00000000..60acfa99 --- /dev/null +++ b/apps/komga/docker-compose.yml @@ -0,0 +1,40 @@ +version: "3.9" +services: + komga: + image: ghcr.io/gotson/komga:1.11.1 + container_name: komga + volumes: + - ${APP_DATA_DIR}/data/config:/config + - ${APP_DATA_DIR}/data/data:/data + environment: + - TZ=${TZ} + ports: + - ${APP_PORT}:25600 + networks: + - tipi_main_network + restart: unless-stopped + labels: + # Main + traefik.enable: true + traefik.http.middlewares.komga-web-redirect.redirectscheme.scheme: https + traefik.http.services.komga.loadbalancer.server.port: 25600 + # Web + traefik.http.routers.komga-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.komga-insecure.entrypoints: web + traefik.http.routers.komga-insecure.service: komga + traefik.http.routers.komga-insecure.middlewares: komga-web-redirect + # Websecure + traefik.http.routers.komga.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.komga.entrypoints: websecure + traefik.http.routers.komga.service: komga + traefik.http.routers.komga.tls.certresolver: myresolver + # Local domain + traefik.http.routers.komga-local-insecure.rule: Host(`komga.${LOCAL_DOMAIN}`) + traefik.http.routers.komga-local-insecure.entrypoints: web + traefik.http.routers.komga-local-insecure.service: komga + traefik.http.routers.komga-local-insecure.middlewares: komga-web-redirect + # Local domain secure + traefik.http.routers.komga-local.rule: Host(`komga.${LOCAL_DOMAIN}`) + traefik.http.routers.komga-local.entrypoints: websecure + traefik.http.routers.komga-local.service: komga + traefik.http.routers.komga-local.tls: true diff --git a/apps/komga/metadata/description.md b/apps/komga/metadata/description.md new file mode 100644 index 00000000..68d722d9 --- /dev/null +++ b/apps/komga/metadata/description.md @@ -0,0 +1,32 @@ +## Komga + +Komga is a media server for your comics, mangas, BDs, magazines and eBooks. + +### Chat on [Discord](https://discord.gg/TdRpkDu) + +### Features + +- Browse libraries, series and books via a responsive web UI that works on desktop, tablets and phones +- Organize your library with collections and read lists +- Edit metadata for your series and books +- Import embedded metadata automatically +- Webreader with multiple reading modes +- Manage multiple users, with per-library access control, age restrictions, and labels restrictions +- Offers a REST API, many community tools and scripts can interact with Komga +- Download book files, whole series, or read lists +- Duplicate files detection +- Duplicate pages detection and removal +- Import books from outside your libraries directly into your series folder +- Import ComicRack `cbl` read lists + +### Documentation + +Head over to our [website](https://komga.org) for more information. + +### Develop in Komga + +Check the [development guidelines](./DEVELOPING.md). + +### Credits + +The Komga icon is based on an icon made by [Freepik](https://www.freepik.com/home) from [Flaticon](https://www.flaticon.com). diff --git a/apps/komga/metadata/logo.jpg b/apps/komga/metadata/logo.jpg new file mode 100644 index 00000000..f46f1cff Binary files /dev/null and b/apps/komga/metadata/logo.jpg differ diff --git a/apps/libretranslate/config.json b/apps/libretranslate/config.json index ecfab7ed..3d1b12e1 100644 --- a/apps/libretranslate/config.json +++ b/apps/libretranslate/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8121, "id": "libretranslate", - "tipi_version": 17, - "version": "1.5.6", + "tipi_version": 18, + "version": "1.5.7", "categories": [ "utilities" ], diff --git a/apps/libretranslate/docker-compose.yml b/apps/libretranslate/docker-compose.yml index f59a68e3..6b8d3406 100644 --- a/apps/libretranslate/docker-compose.yml +++ b/apps/libretranslate/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: libretranslate: container_name: libretranslate - image: libretranslate/libretranslate:v1.5.6 + image: libretranslate/libretranslate:v1.5.7 dns: - ${DNS_IP} ports: diff --git a/apps/lobe-chat/config.json b/apps/lobe-chat/config.json index c9f424d9..10c86a14 100644 --- a/apps/lobe-chat/config.json +++ b/apps/lobe-chat/config.json @@ -5,8 +5,8 @@ "exposable": true, "id": "lobe-chat", "description": "LobeChat is an open-source, high-performance chatbot framework that supports speech synthesis, multimodal, and extensible (Function Call) plugin system.", - "tipi_version": 105, - "version": "0.148.4", + "tipi_version": 143, + "version": "0.154.5", "categories": [ "ai" ], diff --git a/apps/lobe-chat/docker-compose.yml b/apps/lobe-chat/docker-compose.yml index 578fb490..137d86d7 100644 --- a/apps/lobe-chat/docker-compose.yml +++ b/apps/lobe-chat/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.9' services: lobe-chat: container_name: lobe-chat - image: lobehub/lobe-chat:v0.148.4 + image: lobehub/lobe-chat:v0.154.5 environment: - OPENAI_API_KEY=${OPENAI_API_KEY} - OPENAI_PROXY_URL=${OPEANAI_PROXY_URL} diff --git a/apps/matrix-conduit/config.json b/apps/matrix-conduit/config.json index b7800a8a..0443ab6b 100644 --- a/apps/matrix-conduit/config.json +++ b/apps/matrix-conduit/config.json @@ -7,9 +7,11 @@ "force_expose": true, "no_gui": true, "id": "matrix-conduit", - "tipi_version": 4, - "version": "0.6.0", - "categories": ["social"], + "tipi_version": 5, + "version": "0.7.0", + "categories": [ + "social" + ], "description": "Conduit is a fast Matrix homeserver that’s easy to set up and just works. You can install it on a mini-computer like the Raspberry Pi to host Matrix for your family, friends or company.", "short_desc": "Conduit is a simple, fast and reliable chat server written in Rust", "author": "Timo KΓΆsters", @@ -69,5 +71,8 @@ "env_variable": "TURN_SECRET" } ], - "supported_architectures": ["arm64", "amd64"] + "supported_architectures": [ + "arm64", + "amd64" + ] } diff --git a/apps/matrix-conduit/docker-compose.yml b/apps/matrix-conduit/docker-compose.yml index 69ec6f26..f52a6cc2 100644 --- a/apps/matrix-conduit/docker-compose.yml +++ b/apps/matrix-conduit/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.7" services: matrix-conduit: container_name: matrix-conduit - image: matrixconduit/matrix-conduit:v0.6.0 + image: matrixconduit/matrix-conduit:v0.7.0 environment: CONDUIT_SERVER_NAME: ${APP_DOMAIN} CONDUIT_DATABASE_PATH: /var/lib/matrix-conduit/ diff --git a/apps/navidrome/config.json b/apps/navidrome/config.json index 48520871..2bd1b9b7 100644 --- a/apps/navidrome/config.json +++ b/apps/navidrome/config.json @@ -5,8 +5,8 @@ "exposable": true, "id": "navidrome", "description": "Modern Music Server and Streamer compatible with Subsonic/Airsonic", - "tipi_version": 10, - "version": "0.51.1", + "tipi_version": 11, + "version": "0.52.0", "categories": [ "media", "music" diff --git a/apps/navidrome/docker-compose.yml b/apps/navidrome/docker-compose.yml index 5165623e..c7085f76 100644 --- a/apps/navidrome/docker-compose.yml +++ b/apps/navidrome/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: navidrome: container_name: navidrome - image: deluan/navidrome:0.51.1 + image: deluan/navidrome:0.52.0 ports: - ${APP_PORT}:4533 restart: unless-stopped diff --git a/apps/nocodb/config.json b/apps/nocodb/config.json index e81acaa3..c89c56da 100644 --- a/apps/nocodb/config.json +++ b/apps/nocodb/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "nocodb", - "tipi_version": 45, - "version": "0.205.1", + "tipi_version": 46, + "version": "0.207.0", "categories": [ "utilities" ], diff --git a/apps/nocodb/docker-compose.yml b/apps/nocodb/docker-compose.yml index 6ce717f3..6bfb4ea4 100644 --- a/apps/nocodb/docker-compose.yml +++ b/apps/nocodb/docker-compose.yml @@ -12,7 +12,7 @@ services: - NC_AUTH_JWT_SECRET=${NOCODB_JWT_SECRET} - NC_REDIS_URL=redis://default:${NOCODB_REDIS_PASSWORD}@nocodb-redis:6379 - DB_QUERY_LIMIT_DEFAULT=${NOCODB_TABLE_ROWS-25} - image: "nocodb/nocodb:0.205.1" + image: "nocodb/nocodb:0.207.0" ports: - "${APP_PORT}:8080" restart: always diff --git a/apps/onedev/config.json b/apps/onedev/config.json index 4f662500..b3b944fc 100644 --- a/apps/onedev/config.json +++ b/apps/onedev/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "onedev", - "tipi_version": 87, - "version": "10.4.0", + "tipi_version": 92, + "version": "10.6.0", "categories": [ "development" ], diff --git a/apps/onedev/docker-compose.yml b/apps/onedev/docker-compose.yml index 7f623b4f..5d64f9b7 100644 --- a/apps/onedev/docker-compose.yml +++ b/apps/onedev/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: onedev: - image: 1dev/server:10.4.0 + image: 1dev/server:10.6.0 container_name: onedev environment: - hibernate_dialect=io.onedev.server.persistence.PostgreSQLDialect diff --git a/apps/paperless-ngx/docker-compose.yml b/apps/paperless-ngx/docker-compose.yml index f285a4b1..893636fa 100644 --- a/apps/paperless-ngx/docker-compose.yml +++ b/apps/paperless-ngx/docker-compose.yml @@ -75,7 +75,7 @@ services: - tipi_main_network gotenberg: - image: docker.io/gotenberg/gotenberg:8.4 + image: docker.io/gotenberg/gotenberg:8.5 restart: unless-stopped # The gotenberg chromium route is used to convert .eml files. We do not # want to allow external content like tracking pixels or even javascript. diff --git a/apps/photoprism/config.json b/apps/photoprism/config.json index 51a66702..a16ccadb 100644 --- a/apps/photoprism/config.json +++ b/apps/photoprism/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "photoprism", - "tipi_version": 4, - "version": "231021", + "tipi_version": 5, + "version": "240420", "categories": [ "photography" ], diff --git a/apps/photoprism/docker-compose.yml b/apps/photoprism/docker-compose.yml index 9c54eb8f..d715cecd 100644 --- a/apps/photoprism/docker-compose.yml +++ b/apps/photoprism/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: photoprism: # TODO: Special image for arm/v7 is available - image: photoprism/photoprism:231021 + image: photoprism/photoprism:240420 container_name: photoprism depends_on: - photoprism-db diff --git a/apps/planka/config.json b/apps/planka/config.json index 326b7f35..9f5495a6 100644 --- a/apps/planka/config.json +++ b/apps/planka/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "planka", - "tipi_version": 18, - "version": "1.16.4", + "tipi_version": 21, + "version": "1.17.2", "categories": [ "development" ], diff --git a/apps/planka/docker-compose.yml b/apps/planka/docker-compose.yml index f9306254..c4f98344 100644 --- a/apps/planka/docker-compose.yml +++ b/apps/planka/docker-compose.yml @@ -2,7 +2,7 @@ version: '3' services: planka: - image: ghcr.io/plankanban/planka:1.16.4 + image: ghcr.io/plankanban/planka:1.17.2 container_name: planka command: > bash -c diff --git a/apps/portainer/config.json b/apps/portainer/config.json index fa4468cd..cc501279 100644 --- a/apps/portainer/config.json +++ b/apps/portainer/config.json @@ -6,8 +6,8 @@ "exposable": true, "https": true, "id": "portainer", - "tipi_version": 20, - "version": "2.20.1-alpine", + "tipi_version": 21, + "version": "2.20.2-alpine", "categories": [ "utilities" ], diff --git a/apps/portainer/docker-compose.yml b/apps/portainer/docker-compose.yml index a2b99bfb..b77e045b 100644 --- a/apps/portainer/docker-compose.yml +++ b/apps/portainer/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: portainer: - image: portainer/portainer-ce:2.20.1-alpine + image: portainer/portainer-ce:2.20.2-alpine container_name: portainer restart: unless-stopped ports: diff --git a/apps/privatebin/config.json b/apps/privatebin/config.json index c204e373..0119bea5 100644 --- a/apps/privatebin/config.json +++ b/apps/privatebin/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8122, "id": "privatebin", - "tipi_version": 8, - "version": "1.7.1", + "tipi_version": 9, + "version": "1.7.2", "categories": [ "utilities" ], diff --git a/apps/privatebin/docker-compose.yml b/apps/privatebin/docker-compose.yml index c538613d..96550b07 100644 --- a/apps/privatebin/docker-compose.yml +++ b/apps/privatebin/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: privatebin: - image: privatebin/nginx-fpm-alpine:1.7.1 + image: privatebin/nginx-fpm-alpine:1.7.2 container_name: privatebin dns: - ${DNS_IP} diff --git a/apps/radarr/config.json b/apps/radarr/config.json index 2419958b..cd8d669e 100644 --- a/apps/radarr/config.json +++ b/apps/radarr/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8088, "id": "radarr", - "tipi_version": 12, - "version": "5.3.6", + "tipi_version": 13, + "version": "5.4.6", "categories": [ "media", "utilities" @@ -16,5 +16,8 @@ "author": "radarr.video", "source": "https://github.com/Radarr/Radarr", "form_fields": [], - "supported_architectures": ["arm64", "amd64"] + "supported_architectures": [ + "arm64", + "amd64" + ] } diff --git a/apps/radarr/docker-compose.yml b/apps/radarr/docker-compose.yml index 3c07385a..3f486fb6 100644 --- a/apps/radarr/docker-compose.yml +++ b/apps/radarr/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.9" services: radarr: - image: ghcr.io/linuxserver/radarr:5.3.6 + image: ghcr.io/linuxserver/radarr:5.4.6 container_name: radarr environment: - PUID=1000 diff --git a/apps/readarr/config.json b/apps/readarr/config.json index 4bc11ff6..26e2e39f 100644 --- a/apps/readarr/config.json +++ b/apps/readarr/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8112, "id": "readarr", - "tipi_version": 16, - "version": "0.3.25-nightly", + "tipi_version": 18, + "version": "0.3.27-nightly", "categories": [ "books", "media" diff --git a/apps/readarr/docker-compose.yml b/apps/readarr/docker-compose.yml index da77d79a..2f6493a5 100644 --- a/apps/readarr/docker-compose.yml +++ b/apps/readarr/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: readarr: - image: lscr.io/linuxserver/readarr:0.3.25-nightly + image: lscr.io/linuxserver/readarr:0.3.27-nightly container_name: readarr environment: - PUID=1000 diff --git a/apps/sabnzbd/config.json b/apps/sabnzbd/config.json index 4d1a6f53..218e9481 100644 --- a/apps/sabnzbd/config.json +++ b/apps/sabnzbd/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "sabnzbd", - "tipi_version": 12, - "version": "4.2.3", + "tipi_version": 14, + "version": "4.3.1", "categories": [ "media", "utilities" diff --git a/apps/sabnzbd/docker-compose.yml b/apps/sabnzbd/docker-compose.yml index 102f7e07..9e6ea7a6 100644 --- a/apps/sabnzbd/docker-compose.yml +++ b/apps/sabnzbd/docker-compose.yml @@ -2,7 +2,7 @@ version: '3' services: sabnzbd: - image: lscr.io/linuxserver/sabnzbd:4.2.3 + image: lscr.io/linuxserver/sabnzbd:4.3.1 container_name: sabnzbd ports: - ${APP_PORT}:8080 diff --git a/apps/silverbullet/config.json b/apps/silverbullet/config.json index 82b865b6..7d566e61 100644 --- a/apps/silverbullet/config.json +++ b/apps/silverbullet/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "silverbullet", - "tipi_version": 7, - "version": "0.7.6", + "tipi_version": 8, + "version": "0.7.7", "categories": [ "utilities" ], diff --git a/apps/silverbullet/docker-compose.yml b/apps/silverbullet/docker-compose.yml index 248586eb..3e736203 100644 --- a/apps/silverbullet/docker-compose.yml +++ b/apps/silverbullet/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.9' services: silverbullet: - image: zefhemel/silverbullet:0.7.6 + image: zefhemel/silverbullet:0.7.7 container_name: 'silverbullet' restart: unless-stopped volumes: diff --git a/apps/simplex-smp/config.json b/apps/simplex-smp/config.json index 97ebceb4..2398e788 100644 --- a/apps/simplex-smp/config.json +++ b/apps/simplex-smp/config.json @@ -6,8 +6,8 @@ "exposable": true, "no_gui": true, "id": "simplex-smp", - "tipi_version": 16, - "version": "5.6.2", + "tipi_version": 19, + "version": "5.7.2", "categories": [ "social" ], diff --git a/apps/simplex-smp/docker-compose.yml b/apps/simplex-smp/docker-compose.yml index 43bcfed1..ff3f4a0a 100644 --- a/apps/simplex-smp/docker-compose.yml +++ b/apps/simplex-smp/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.9' services: simplex-smp: - image: simplexchat/smp-server:v5.6.2 + image: simplexchat/smp-server:v5.7.2 container_name: simplex-smp volumes: - ${APP_DATA_DIR}/data/simplex/logs:/var/opt/simplex:z diff --git a/apps/spoolman/config.json b/apps/spoolman/config.json index 036a7de5..670bf1b8 100644 --- a/apps/spoolman/config.json +++ b/apps/spoolman/config.json @@ -1,21 +1,21 @@ { - "name": "Spoolman", - "available": true, - "port": 7912, - "exposable": true, - "id": "spoolman", - "description": "Spoolman is a web service that helps you keep track of your filament spools and how they are being used. It acts as a database, where other printer software such as Octoprint and Moonraker can interact with to have a centralized place for spool information. For example, if used together with Moonraker, your spool weight will automatically be reduced as your print is progressing.", - "tipi_version": 1, - "version": "0.16.1", - "categories": [ - "utilities", - "automation" - ], - "short_desc": "Keep track of your inventory of 3D-printer filament spools", - "author": "Donkie", - "source": "https://github.com/Donkie/Spoolman", - "supported_architectures": [ - "arm64", - "amd64" - ] - } \ No newline at end of file + "name": "Spoolman", + "available": true, + "port": 7912, + "exposable": true, + "id": "spoolman", + "description": "Spoolman is a web service that helps you keep track of your filament spools and how they are being used. It acts as a database, where other printer software such as Octoprint and Moonraker can interact with to have a centralized place for spool information. For example, if used together with Moonraker, your spool weight will automatically be reduced as your print is progressing.", + "tipi_version": 2, + "version": "0.17.0", + "categories": [ + "utilities", + "automation" + ], + "short_desc": "Keep track of your inventory of 3D-printer filament spools", + "author": "Donkie", + "source": "https://github.com/Donkie/Spoolman", + "supported_architectures": [ + "arm64", + "amd64" + ] +} diff --git a/apps/spoolman/docker-compose.yml b/apps/spoolman/docker-compose.yml index 4df23f9d..1801ecaf 100644 --- a/apps/spoolman/docker-compose.yml +++ b/apps/spoolman/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.8' services: spoolman: container_name: spoolman - image: ghcr.io/donkie/spoolman:0.16.1 + image: ghcr.io/donkie/spoolman:0.17.0 restart: unless-stopped volumes: - ${APP_DATA_DIR}/data:/home/app/.local/share/spoolman diff --git a/apps/sshwifty/config.json b/apps/sshwifty/config.json index f69a04e7..108b1da2 100644 --- a/apps/sshwifty/config.json +++ b/apps/sshwifty/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "sshwifty", - "tipi_version": 12, - "version": "0.3.8-beta-release", + "tipi_version": 13, + "version": "0.3.9-beta-release", "categories": [ "development" ], diff --git a/apps/sshwifty/docker-compose.yml b/apps/sshwifty/docker-compose.yml index 79cf0027..90c56599 100644 --- a/apps/sshwifty/docker-compose.yml +++ b/apps/sshwifty/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.5" services: sshwifty: - image: niruix/sshwifty:0.3.8-beta-release + image: niruix/sshwifty:0.3.9-beta-release restart: unless-stopped container_name: sshwifty privileged: true diff --git a/apps/stalwart-mail/config.json b/apps/stalwart-mail/config.json new file mode 100644 index 00000000..d53abc02 --- /dev/null +++ b/apps/stalwart-mail/config.json @@ -0,0 +1,42 @@ +{ + "$schema": "../schema.json", + "name": "Stalwart Mail", + "available": true, + "exposable": true, + "tipi_version": 3, + "version": "0.7.3", + "port": 8677, + "id": "stalwart-mail", + "categories": [ + "media", + "network", + "utilities" + ], + "description": "Stalwart is a scalable, secure and robust open-source mail server software designed for the 21st century.", + "short_desc": "Open-source mail server solution with JMAP, IMAP4, and SMTP support", + "author": "Stalwart Labs", + "source": "https://github.com/stalwartlabs", + "website": "https://stalw.art", + "requirements": { + "ports": [ + 25, + 143, + 465, + 587, + 993, + 4190 + ] + }, + "form_fields": [ + { + "type": "ip", + "label": "Network Interface (default: 0.0.0.0)", + "required": false, + "env_variable": "NETWORK_INTERFACE" + } + ], + "supported_architectures": [ + "arm64", + "amd64" + ] +} diff --git a/apps/stalwart-mail/docker-compose.yml b/apps/stalwart-mail/docker-compose.yml new file mode 100644 index 00000000..58730e37 --- /dev/null +++ b/apps/stalwart-mail/docker-compose.yml @@ -0,0 +1,43 @@ +version: "3.7" +services: + stalwart-mail: + image: stalwartlabs/mail-server:v0.7.3 + container_name: stalwart-mail + volumes: + - ${APP_DATA_DIR}/data:/opt/stalwart-mail + restart: unless-stopped + networks: + - tipi_main_network + ports: + - ${NETWORK_INTERFACE:-0.0.0.0}:25:25/tcp + - ${NETWORK_INTERFACE:-0.0.0.0}:143:143/tcp + - ${NETWORK_INTERFACE:-0.0.0.0}:465:465/tcp + - ${NETWORK_INTERFACE:-0.0.0.0}:587:587/tcp + - ${NETWORK_INTERFACE:-0.0.0.0}:993:993/tcp + - ${NETWORK_INTERFACE:-0.0.0.0}:4190:4190/tcp + - ${APP_PORT}:8080 + labels: + # Main + traefik.enable: true + traefik.http.middlewares.stalwart-mail-web-redirect.redirectscheme.scheme: https + traefik.http.services.stalwart-mail.loadbalancer.server.port: 8080 + # Web + traefik.http.routers.stalwart-mail-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.stalwart-mail-insecure.entrypoints: web + traefik.http.routers.stalwart-mail-insecure.service: stalwart-mail + traefik.http.routers.stalwart-mail-insecure.middlewares: stalwart-mail-web-redirect + # Websecure + traefik.http.routers.stalwart-mail.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.stalwart-mail.entrypoints: websecure + traefik.http.routers.stalwart-mail.service: stalwart-mail + traefik.http.routers.stalwart-mail.tls.certresolver: myresolver + # Local domain + traefik.http.routers.stalwart-mail-local-insecure.rule: Host(`stalwart-mail.${LOCAL_DOMAIN}`) + traefik.http.routers.stalwart-mail-local-insecure.entrypoints: web + traefik.http.routers.stalwart-mail-local-insecure.service: stalwart-mail + traefik.http.routers.stalwart-mail-local-insecure.middlewares: stalwart-mail-web-redirect + # Local domain secure + traefik.http.routers.stalwart-mail-local.rule: Host(`stalwart-mail.${LOCAL_DOMAIN}`) + traefik.http.routers.stalwart-mail-local.entrypoints: websecure + traefik.http.routers.stalwart-mail-local.service: stalwart-mail + traefik.http.routers.stalwart-mail-local.tls: true diff --git a/apps/stalwart-mail/metadata/description.md b/apps/stalwart-mail/metadata/description.md new file mode 100644 index 00000000..bdd44e86 --- /dev/null +++ b/apps/stalwart-mail/metadata/description.md @@ -0,0 +1,68 @@ +## Stalwart Mail server + +Stalwart is a scalable, secure and robust open-source mail server software designed for the 21st century. + +### Admin Password + +See [Log in to the web interface](https://stalw.art/docs/install/docker#log-in-to-the-web-interface) to know how to get the admin password. + +### Screenshots + +Stalwart Mail Server setup screencast
+ +### Features + +**Stalwart Mail Server** is an open-source mail server solution with JMAP, IMAP4, and SMTP support and a wide range of modern features. It is written in Rust and designed to be secure, fast, robust and scalable. + +Key features: + +- **JMAP** server: + - JMAP Core ([RFC 8620](https://datatracker.ietf.org/doc/html/rfc8620)) + - JMAP Mail ([RFC 8621](https://datatracker.ietf.org/doc/html/rfc8621)) + - JMAP for Sieve Scripts ([DRAFT-SIEVE-19](https://www.ietf.org/archive/id/draft-ietf-jmap-sieve-19.html)) + - JMAP over WebSocket ([RFC 8887](https://datatracker.ietf.org/doc/html/rfc8887)), JMAP Blob Management ([RFC 9404](https://www.rfc-editor.org/rfc/rfc9404.html)) and JMAP for Quotas ([RFC 9425](https://www.rfc-editor.org/rfc/rfc9425.html)) extensions. +- **IMAP4** server: + - IMAP4rev2 ([RFC 9051](https://datatracker.ietf.org/doc/html/rfc9051)) full compliance. + - IMAP4rev1 ([RFC 3501](https://datatracker.ietf.org/doc/html/rfc3501)) backwards compatible. + - ManageSieve ([RFC 5804](https://datatracker.ietf.org/doc/html/rfc5804)) server. + - Numerous [extensions](https://stalw.art/docs/development/rfcs#imap4-and-extensions) supported. +- **SMTP** server: + - Built-in [DMARC](https://datatracker.ietf.org/doc/html/rfc7489), [DKIM](https://datatracker.ietf.org/doc/html/rfc6376), [SPF](https://datatracker.ietf.org/doc/html/rfc7208) and [ARC](https://datatracker.ietf.org/doc/html/rfc8617) support for message authentication. + - Strong transport security through [DANE](https://datatracker.ietf.org/doc/html/rfc6698), [MTA-STS](https://datatracker.ietf.org/doc/html/rfc8461) and [SMTP TLS](https://datatracker.ietf.org/doc/html/rfc8460) reporting. + - Inbound throttling and filtering with granular configuration rules, sieve scripting and milter integration. + - Distributed virtual queues with delayed delivery, priority delivery, quotas, routing rules and throttling support. + - Envelope rewriting and message modification. +- **Spam and Phishing** filter: + - Comprehensive set of filtering **rules** on par with popular solutions. + - Statistical **spam classifier** with automatic training capabilities. + - DNS Blocklists (**DNSBLs**) checking of IP addresses, domains, and hashes. + - Collaborative digest-based spam filtering with **Pyzor**. + - **Phishing** protection against homographic URL attacks, sender spoofing and other techniques. + - Trusted **reply** tracking to recognize and prioritize genuine e-mail replies. + - Sender **reputation** monitoring by IP address, ASN, domain and email address. + - **Greylisting** to temporarily defer unknown senders. + - **Spam traps** to set up decoy email addresses that catch and analyze spam. +- **Flexible and scalable**: + - Pluggable storage backends with **RocksDB**, **FoundationDB**, **PostgreSQL**, **mySQL**, **SQLite**, **S3-Compatible**, **Redis** and **ElasticSearch** support. + - Built-in, **LDAP** or **SQL** authentication backend support. + - Full-text search available in 17 languages. + - Disk quotas. + - Sieve scripting language with support for all [registered extensions](https://www.iana.org/assignments/sieve-extensions/sieve-extensions.xhtml). + - Email aliases, mailing lists, subaddressing and catch-all addresses support. + - Integration with **OpenTelemetry** to enable monitoring, tracing, and performance analysis. +- **Web-based administration**: + - Account, domain, group and mailing list management. + - SMTP queue management for messages and outbound DMARC and TLS reports. + - Report visualization interface for received DMARC, TLS-RPT and Failure (ARF) reports. + - Configuration of every aspect of the mail server. + - Log viewer with search and filtering capabilities. + - Self-service portal for password reset and encryption-at-rest key management. +- **Secure and robust**: + - Encryption at rest with **S/MIME** or **OpenPGP**. + - Automatic TLS certificate provisioning with [ACME](https://datatracker.ietf.org/doc/html/rfc8555). + - OAuth 2.0 [authorization code](https://www.rfc-editor.org/rfc/rfc8628) and [device authorization](https://www.rfc-editor.org/rfc/rfc8628) flows. + - Automated blocking of hosts that cause multiple authentication errors (aka **fail2ban**). + - Access Control Lists (ACLs). + - Rate limiting. + - Security audited (read the [report](https://stalw.art/blog/security-audit)). + - Memory safe (thanks to Rust). diff --git a/apps/stalwart-mail/metadata/logo.jpg b/apps/stalwart-mail/metadata/logo.jpg new file mode 100644 index 00000000..f4952d76 Binary files /dev/null and b/apps/stalwart-mail/metadata/logo.jpg differ diff --git a/apps/stirling-pdf/config.json b/apps/stirling-pdf/config.json index 0b1a133b..aba649ac 100644 --- a/apps/stirling-pdf/config.json +++ b/apps/stirling-pdf/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "stirling-pdf", - "tipi_version": 30, - "version": "0.22.8", + "tipi_version": 32, + "version": "0.23.1", "categories": [ "data", "utilities" diff --git a/apps/stirling-pdf/docker-compose.yml b/apps/stirling-pdf/docker-compose.yml index f2b8c400..25115a08 100644 --- a/apps/stirling-pdf/docker-compose.yml +++ b/apps/stirling-pdf/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.9" services: stirling-pdf: - image: frooodle/s-pdf:0.22.8 + image: frooodle/s-pdf:0.23.1 restart: unless-stopped container_name: stirling-pdf privileged: true diff --git a/apps/unmanic/config.json b/apps/unmanic/config.json index eaf22f51..73b0727f 100644 --- a/apps/unmanic/config.json +++ b/apps/unmanic/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "unmanic", - "tipi_version": 3, - "version": "0.2.6", + "tipi_version": 4, + "version": "0.2.7", "categories": [ "utilities", "data", diff --git a/apps/unmanic/docker-compose.yml b/apps/unmanic/docker-compose.yml index 8d543e87..2595fcd3 100644 --- a/apps/unmanic/docker-compose.yml +++ b/apps/unmanic/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.5" services: unmanic: - image: josh5/unmanic:0.2.6 + image: josh5/unmanic:0.2.7 restart: unless-stopped container_name: unmanic privileged: true diff --git a/apps/wallos/config.json b/apps/wallos/config.json index 60763707..f1a2e3ec 100644 --- a/apps/wallos/config.json +++ b/apps/wallos/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "wallos", - "tipi_version": 28, - "version": "1.22.0", + "tipi_version": 32, + "version": "1.25.1", "categories": [ "finance" ], diff --git a/apps/wallos/docker-compose.yml b/apps/wallos/docker-compose.yml index a2038ad1..181bb464 100644 --- a/apps/wallos/docker-compose.yml +++ b/apps/wallos/docker-compose.yml @@ -2,7 +2,7 @@ version: '3' services: wallos: - image: bellamy/wallos:1.22.0 + image: bellamy/wallos:1.25.1 container_name: wallos environment: - TZ=${TZ} diff --git a/apps/wekan/config.json b/apps/wekan/config.json index bee9d53c..11e0c406 100644 --- a/apps/wekan/config.json +++ b/apps/wekan/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "wekan", - "tipi_version": 17, - "version": "7.43", + "tipi_version": 19, + "version": "7.45", "categories": [ "development" ], diff --git a/apps/wekan/docker-compose.yml b/apps/wekan/docker-compose.yml index f15eb84e..5c3e4848 100644 --- a/apps/wekan/docker-compose.yml +++ b/apps/wekan/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: wekan: - image: ghcr.io/wekan/wekan:v7.43 + image: ghcr.io/wekan/wekan:v7.45 container_name: wekan environment: # https://github.com/wekan/wekan/blob/main/docker-compose.yml diff --git a/apps/wikijs/config.json b/apps/wikijs/config.json index 1ad84f5d..90cba0d2 100644 --- a/apps/wikijs/config.json +++ b/apps/wikijs/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "wikijs", - "tipi_version": 6, - "version": "2.5.301", + "tipi_version": 7, + "version": "2.5.302", "categories": [ "media" ], diff --git a/apps/wikijs/docker-compose.yml b/apps/wikijs/docker-compose.yml index 4a2e834b..871ef20d 100644 --- a/apps/wikijs/docker-compose.yml +++ b/apps/wikijs/docker-compose.yml @@ -3,7 +3,7 @@ version: '3.7' services: wikijs: container_name: wikijs - image: ghcr.io/requarks/wiki:2.5.301 + image: ghcr.io/requarks/wiki:2.5.302 depends_on: - wikijs-db environment: diff --git a/apps/windows/config.json b/apps/windows/config.json index b988ef8f..9526d072 100644 --- a/apps/windows/config.json +++ b/apps/windows/config.json @@ -5,8 +5,8 @@ "exposable": true, "id": "windows", "description": "Run windows in docker...because why not?", - "tipi_version": 14, - "version": "2.15", + "tipi_version": 25, + "version": "3.03", "categories": [ "utilities" ], diff --git a/apps/windows/docker-compose.yml b/apps/windows/docker-compose.yml index 146b4495..4d262f4f 100644 --- a/apps/windows/docker-compose.yml +++ b/apps/windows/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.9" services: windows: container_name: windows - image: dockurr/windows:2.15 + image: dockurr/windows:3.03 restart: unless-stopped devices: - /dev/kvm diff --git a/apps/wizarr/config.json b/apps/wizarr/config.json index 94b53939..02fe8628 100644 --- a/apps/wizarr/config.json +++ b/apps/wizarr/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "wizarr", - "tipi_version": 8, - "version": "3.5.1", + "tipi_version": 10, + "version": "4.1.0", "categories": [ "utilities" ], diff --git a/apps/wizarr/docker-compose.yml b/apps/wizarr/docker-compose.yml index a0f8664b..643871dc 100644 --- a/apps/wizarr/docker-compose.yml +++ b/apps/wizarr/docker-compose.yml @@ -3,7 +3,7 @@ version: "3.8" services: wizarr: container_name: wizarr - image: ghcr.io/wizarrrr/wizarr:3.5.1 + image: ghcr.io/wizarrrr/wizarr:4.1.0 ports: - ${APP_PORT}:5690 volumes: diff --git a/apps/zerotier/config.json b/apps/zerotier/config.json index e3b6cb37..4027f933 100644 --- a/apps/zerotier/config.json +++ b/apps/zerotier/config.json @@ -5,8 +5,8 @@ "no_gui": true, "port": 9993, "id": "zerotier", - "tipi_version": 5, - "version": "1.12.2", + "tipi_version": 6, + "version": "1.14.0", "categories": [ "network", "security" @@ -27,5 +27,8 @@ "env_variable": "NETWORK_ID" } ], - "supported_architectures": ["arm64", "amd64"] + "supported_architectures": [ + "arm64", + "amd64" + ] } diff --git a/apps/zerotier/docker-compose.yml b/apps/zerotier/docker-compose.yml index c232f503..ceec4245 100644 --- a/apps/zerotier/docker-compose.yml +++ b/apps/zerotier/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: zerotier: container_name: zerotier - image: zerotier/zerotier:1.12.2 + image: zerotier/zerotier:1.14.0 restart: on-failure command: "${NETWORK_ID}" cap_add: diff --git a/apps/zigbee2mqtt/config.json b/apps/zigbee2mqtt/config.json index a6135b87..5e78dba9 100755 --- a/apps/zigbee2mqtt/config.json +++ b/apps/zigbee2mqtt/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "zigbee2mqtt", - "tipi_version": 3, - "version": "1.36.1", + "tipi_version": 4, + "version": "1.37.0", "categories": [ "utilities", "automation" diff --git a/apps/zigbee2mqtt/docker-compose.yml b/apps/zigbee2mqtt/docker-compose.yml index 45755193..ee6ab699 100644 --- a/apps/zigbee2mqtt/docker-compose.yml +++ b/apps/zigbee2mqtt/docker-compose.yml @@ -3,7 +3,7 @@ version: '3.7' services: zigbee2mqtt: container_name: zigbee2mqtt - image: koenkk/zigbee2mqtt:1.36.1 + image: koenkk/zigbee2mqtt:1.37.0 environment: - TZ=${TZ} volumes: diff --git a/package.json b/package.json index bc01723b..be4430e6 100644 --- a/package.json +++ b/package.json @@ -20,16 +20,16 @@ }, "homepage": "https://github.com/meienberger/runtipi-appstore#readme", "devDependencies": { - "@commitlint/cli": "^19.2.1", - "@commitlint/config-conventional": "^19.1.0", + "@commitlint/cli": "^19.3.0", + "@commitlint/config-conventional": "^19.2.2", "@commitlint/cz-commitlint": "^19.2.0", "@types/jest": "^28.1.6", "@types/js-yaml": "^4.0.9", - "@types/node": "^20.12.7", + "@types/node": "^20.12.10", "@types/semver": "^7.5.8", "commitizen": "^4.3.0", "eslint": "^8.57.0", - "eslint-plugin-json-schema-validator": "^4.8.3", + "eslint-plugin-json-schema-validator": "^5.1.0", "eslint-plugin-jsonc": "^2.15.1", "husky": "^9.0.11", "jest": "^28.1.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 49a1b14b..31b82ef3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -6,14 +6,14 @@ settings: devDependencies: '@commitlint/cli': - specifier: ^19.2.1 - version: 19.2.1(@types/node@20.12.7)(typescript@5.4.5) + specifier: ^19.3.0 + version: 19.3.0(@types/node@20.12.10)(typescript@5.4.5) '@commitlint/config-conventional': - specifier: ^19.1.0 - version: 19.1.0 + specifier: ^19.2.2 + version: 19.2.2 '@commitlint/cz-commitlint': specifier: ^19.2.0 - version: 19.2.0(@types/node@20.12.7)(commitizen@4.3.0)(inquirer@9.2.17)(typescript@5.4.5) + version: 19.2.0(@types/node@20.12.10)(commitizen@4.3.0)(inquirer@9.2.20)(typescript@5.4.5) '@types/jest': specifier: ^28.1.6 version: 28.1.6 @@ -21,20 +21,20 @@ devDependencies: specifier: ^4.0.9 version: 4.0.9 '@types/node': - specifier: ^20.12.7 - version: 20.12.7 + specifier: ^20.12.10 + version: 20.12.10 '@types/semver': specifier: ^7.5.8 version: 7.5.8 commitizen: specifier: ^4.3.0 - version: 4.3.0(@types/node@20.12.7)(typescript@5.4.5) + version: 4.3.0(@types/node@20.12.10)(typescript@5.4.5) eslint: specifier: ^8.57.0 version: 8.57.0 eslint-plugin-json-schema-validator: - specifier: ^4.8.3 - version: 4.8.3(eslint@8.57.0) + specifier: ^5.1.0 + version: 5.1.0(eslint@8.57.0) eslint-plugin-jsonc: specifier: ^2.15.1 version: 2.15.1(eslint@8.57.0) @@ -43,7 +43,7 @@ devDependencies: version: 9.0.11 jest: specifier: ^28.1.3 - version: 28.1.3(@types/node@20.12.7) + version: 28.1.3(@types/node@20.12.10) js-yaml: specifier: ^4.1.0 version: 4.1.0 @@ -75,11 +75,11 @@ packages: '@jridgewell/trace-mapping': 0.3.14 dev: true - /@babel/code-frame@7.24.1: - resolution: {integrity: sha512-bC49z4spJQR3j8vFtJBLqzyzFV0ciuL5HYX7qfSl3KEqeMVV+eTquRvmXxpvB0AMubRrvv7y5DILiLLPi57Ewg==} + /@babel/code-frame@7.24.2: + resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} engines: {node: '>=6.9.0'} dependencies: - '@babel/highlight': 7.24.1 + '@babel/highlight': 7.24.2 picocolors: 1.0.0 dev: true @@ -93,7 +93,7 @@ packages: engines: {node: '>=6.9.0'} dependencies: '@ampproject/remapping': 2.2.0 - '@babel/code-frame': 7.24.1 + '@babel/code-frame': 7.24.2 '@babel/generator': 7.18.9 '@babel/helper-compilation-targets': 7.18.9(@babel/core@7.18.9) '@babel/helper-module-transforms': 7.18.9 @@ -216,8 +216,8 @@ packages: - supports-color dev: true - /@babel/highlight@7.24.1: - resolution: {integrity: sha512-EPmDPxidWe/Ex+HTFINpvXdPHRmgSF3T8hGvzondYjmgzTQ/0EbLpSxyt+w3zzlYSk9cNBQNF9k0dT5Z2NiBjw==} + /@babel/highlight@7.24.2: + resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} engines: {node: '>=6.9.0'} dependencies: '@babel/helper-validator-identifier': 7.22.20 @@ -357,7 +357,7 @@ packages: resolution: {integrity: sha512-JoDWzPe+wgBsTTgdnIma3iHNFC7YVJoPssVBDjiHfNlyt4YcunDtcDOUmfVDfCK5MfdsaIoX9PkijPhjH3nYUw==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.24.1 + '@babel/code-frame': 7.24.2 '@babel/parser': 7.18.9 '@babel/types': 7.18.9 dev: true @@ -366,7 +366,7 @@ packages: resolution: {integrity: sha512-LcPAnujXGwBgv3/WHv01pHtb2tihcyW1XuL9wd7jqh1Z8AQkTd+QVjMrMijrln0T7ED3UXLIy36P9Ao7W75rYg==} engines: {node: '>=6.9.0'} dependencies: - '@babel/code-frame': 7.24.1 + '@babel/code-frame': 7.24.2 '@babel/generator': 7.18.9 '@babel/helper-environment-visitor': 7.18.9 '@babel/helper-function-name': 7.18.9 @@ -392,14 +392,14 @@ packages: resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} dev: true - /@commitlint/cli@19.2.1(@types/node@20.12.7)(typescript@5.4.5): - resolution: {integrity: sha512-cbkYUJsLqRomccNxvoJTyv5yn0bSy05BBizVyIcLACkRbVUqYorC351Diw/XFSWC/GtpwiwT2eOvQgFZa374bg==} + /@commitlint/cli@19.3.0(@types/node@20.12.10)(typescript@5.4.5): + resolution: {integrity: sha512-LgYWOwuDR7BSTQ9OLZ12m7F/qhNY+NpAyPBgo4YNMkACE7lGuUnuQq1yi9hz1KA4+3VqpOYl8H1rY/LYK43v7g==} engines: {node: '>=v18'} hasBin: true dependencies: - '@commitlint/format': 19.0.3 - '@commitlint/lint': 19.1.0 - '@commitlint/load': 19.2.0(@types/node@20.12.7)(typescript@5.4.5) + '@commitlint/format': 19.3.0 + '@commitlint/lint': 19.2.2 + '@commitlint/load': 19.2.0(@types/node@20.12.10)(typescript@5.4.5) '@commitlint/read': 19.2.1 '@commitlint/types': 19.0.3 execa: 8.0.1 @@ -409,8 +409,8 @@ packages: - typescript dev: true - /@commitlint/config-conventional@19.1.0: - resolution: {integrity: sha512-KIKD2xrp6Uuk+dcZVj3++MlzIr/Su6zLE8crEDQCZNvWHNQSeeGbzOlNtsR32TUy6H3JbP7nWgduAHCaiGQ6EA==} + /@commitlint/config-conventional@19.2.2: + resolution: {integrity: sha512-mLXjsxUVLYEGgzbxbxicGPggDuyWNkf25Ht23owXIH+zV2pv1eJuzLK3t1gDY5Gp6pxdE60jZnWUY5cvgL3ufw==} engines: {node: '>=v18'} dependencies: '@commitlint/types': 19.0.3 @@ -425,7 +425,7 @@ packages: ajv: 8.12.0 dev: true - /@commitlint/cz-commitlint@19.2.0(@types/node@20.12.7)(commitizen@4.3.0)(inquirer@9.2.17)(typescript@5.4.5): + /@commitlint/cz-commitlint@19.2.0(@types/node@20.12.10)(commitizen@4.3.0)(inquirer@9.2.20)(typescript@5.4.5): resolution: {integrity: sha512-kudzHMY9/GxflGyAWMiisiBq2UkyQL1D1eWjGKoC66qQ+5jxRYeDaiVwTdPxYMnmehftNcpksZATDYKqdPP0Wg==} engines: {node: '>=v18'} peerDependencies: @@ -433,11 +433,11 @@ packages: inquirer: ^9.0.0 dependencies: '@commitlint/ensure': 19.0.3 - '@commitlint/load': 19.2.0(@types/node@20.12.7)(typescript@5.4.5) + '@commitlint/load': 19.2.0(@types/node@20.12.10)(typescript@5.4.5) '@commitlint/types': 19.0.3 chalk: 5.3.0 - commitizen: 4.3.0(@types/node@20.12.7)(typescript@5.4.5) - inquirer: 9.2.17 + commitizen: 4.3.0(@types/node@20.12.10)(typescript@5.4.5) + inquirer: 9.2.20 lodash.isplainobject: 4.0.6 word-wrap: 1.2.5 transitivePeerDependencies: @@ -462,33 +462,33 @@ packages: engines: {node: '>=v18'} dev: true - /@commitlint/format@19.0.3: - resolution: {integrity: sha512-QjjyGyoiVWzx1f5xOteKHNLFyhyweVifMgopozSgx1fGNrGV8+wp7k6n1t6StHdJ6maQJ+UUtO2TcEiBFRyR6Q==} + /@commitlint/format@19.3.0: + resolution: {integrity: sha512-luguk5/aF68HiF4H23ACAfk8qS8AHxl4LLN5oxPc24H+2+JRPsNr1OS3Gaea0CrH7PKhArBMKBz5RX9sA5NtTg==} engines: {node: '>=v18'} dependencies: '@commitlint/types': 19.0.3 chalk: 5.3.0 dev: true - /@commitlint/is-ignored@19.0.3: - resolution: {integrity: sha512-MqDrxJaRSVSzCbPsV6iOKG/Lt52Y+PVwFVexqImmYYFhe51iVJjK2hRhOG2jUAGiUHk4jpdFr0cZPzcBkSzXDQ==} + /@commitlint/is-ignored@19.2.2: + resolution: {integrity: sha512-eNX54oXMVxncORywF4ZPFtJoBm3Tvp111tg1xf4zWXGfhBPKpfKG6R+G3G4v5CPlRROXpAOpQ3HMhA9n1Tck1g==} engines: {node: '>=v18'} dependencies: '@commitlint/types': 19.0.3 semver: 7.6.0 dev: true - /@commitlint/lint@19.1.0: - resolution: {integrity: sha512-ESjaBmL/9cxm+eePyEr6SFlBUIYlYpI80n+Ltm7IA3MAcrmiP05UMhJdAD66sO8jvo8O4xdGn/1Mt2G5VzfZKw==} + /@commitlint/lint@19.2.2: + resolution: {integrity: sha512-xrzMmz4JqwGyKQKTpFzlN0dx0TAiT7Ran1fqEBgEmEj+PU98crOFtysJgY+QdeSagx6EDRigQIXJVnfrI0ratA==} engines: {node: '>=v18'} dependencies: - '@commitlint/is-ignored': 19.0.3 + '@commitlint/is-ignored': 19.2.2 '@commitlint/parse': 19.0.3 '@commitlint/rules': 19.0.3 '@commitlint/types': 19.0.3 dev: true - /@commitlint/load@19.2.0(@types/node@20.12.7)(typescript@5.4.5): + /@commitlint/load@19.2.0(@types/node@20.12.10)(typescript@5.4.5): resolution: {integrity: sha512-XvxxLJTKqZojCxaBQ7u92qQLFMMZc4+p9qrIq/9kJDy8DOrEa7P1yx7Tjdc2u2JxIalqT4KOGraVgCE7eCYJyQ==} engines: {node: '>=v18'} dependencies: @@ -498,7 +498,7 @@ packages: '@commitlint/types': 19.0.3 chalk: 5.3.0 cosmiconfig: 9.0.0(typescript@5.4.5) - cosmiconfig-typescript-loader: 5.0.0(@types/node@20.12.7)(cosmiconfig@9.0.0)(typescript@5.4.5) + cosmiconfig-typescript-loader: 5.0.0(@types/node@20.12.10)(cosmiconfig@9.0.0)(typescript@5.4.5) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 @@ -632,6 +632,11 @@ packages: resolution: {integrity: sha512-6EwiSjwWYP7pTckG6I5eyFANjPhmPjUX9JRLUSfNPC7FX7zK9gyZAfUEaECL6ALTpGX5AjnBq3C9XmVWPitNpw==} dev: true + /@inquirer/figures@1.0.1: + resolution: {integrity: sha512-mtup3wVKia3ZwULPHcbs4Mor8Voi+iIXEWD7wCNbIO6lYR62oPCTQyrddi5OMYVXHzeCSoneZwJuS8sBvlEwDw==} + engines: {node: '>=18'} + dev: true + /@istanbuljs/load-nyc-config@1.1.0: resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -653,7 +658,7 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 chalk: 4.1.2 jest-message-util: 28.1.3 jest-util: 28.1.3 @@ -674,14 +679,14 @@ packages: '@jest/test-result': 28.1.3 '@jest/transform': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.3.2 exit: 0.1.2 graceful-fs: 4.2.10 jest-changed-files: 28.1.3 - jest-config: 28.1.3(@types/node@20.12.7) + jest-config: 28.1.3(@types/node@20.12.10) jest-haste-map: 28.1.3 jest-message-util: 28.1.3 jest-regex-util: 28.0.2 @@ -709,7 +714,7 @@ packages: dependencies: '@jest/fake-timers': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 jest-mock: 28.1.3 dev: true @@ -736,7 +741,7 @@ packages: dependencies: '@jest/types': 28.1.3 '@sinonjs/fake-timers': 9.1.2 - '@types/node': 20.12.7 + '@types/node': 20.12.10 jest-message-util: 28.1.3 jest-mock: 28.1.3 jest-util: 28.1.3 @@ -768,7 +773,7 @@ packages: '@jest/transform': 28.1.3 '@jest/types': 28.1.3 '@jridgewell/trace-mapping': 0.3.14 - '@types/node': 20.12.7 + '@types/node': 20.12.10 chalk: 4.1.2 collect-v8-coverage: 1.0.1 exit: 0.1.2 @@ -857,7 +862,7 @@ packages: '@jest/schemas': 28.1.3 '@types/istanbul-lib-coverage': 2.0.4 '@types/istanbul-reports': 3.0.1 - '@types/node': 20.12.7 + '@types/node': 20.12.10 '@types/yargs': 17.0.10 chalk: 4.1.2 dev: true @@ -981,13 +986,13 @@ packages: /@types/conventional-commits-parser@5.0.0: resolution: {integrity: sha512-loB369iXNmAZglwWATL+WRe+CRMmmBPtpolYzIebFaX4YA3x+BEfLqhUAV9WanycKI3TG1IMr5bMJDajDKLlUQ==} dependencies: - '@types/node': 20.12.7 + '@types/node': 20.12.10 dev: true /@types/graceful-fs@4.1.5: resolution: {integrity: sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw==} dependencies: - '@types/node': 20.12.7 + '@types/node': 20.12.10 dev: true /@types/istanbul-lib-coverage@2.0.4: @@ -1017,8 +1022,8 @@ packages: resolution: {integrity: sha512-k4MGaQl5TGo/iipqb2UDG2UwjXziSWkh0uysQelTlJpX1qGlpUZYm8PnO4DxG1qBomtJUdYJ6qR6xdIah10JLg==} dev: true - /@types/node@20.12.7: - resolution: {integrity: sha512-wq0cICSkRLVaf3UGLMGItu/PtdY7oaXaI/RVU+xliKVOtRna3PRY57ZDfztpDL0n11vfymMUnXv8QwYCO7L1wg==} + /@types/node@20.12.10: + resolution: {integrity: sha512-Eem5pH9pmWBHoGAT8Dr5fdc5rYA+4NAovdM4EktRPVAAiJhmWWfQrA0cFhAbOsQdSfIHjAud6YdkbL69+zSKjw==} dependencies: undici-types: 5.26.5 dev: true @@ -1080,15 +1085,6 @@ packages: uri-js: 4.4.1 dev: true - /ajv@8.11.0: - resolution: {integrity: sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==} - dependencies: - fast-deep-equal: 3.1.3 - json-schema-traverse: 1.0.0 - require-from-string: 2.0.2 - uri-js: 4.4.1 - dev: true - /ajv@8.12.0: resolution: {integrity: sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==} dependencies: @@ -1439,13 +1435,13 @@ packages: resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} dev: true - /commitizen@4.3.0(@types/node@20.12.7)(typescript@5.4.5): + /commitizen@4.3.0(@types/node@20.12.10)(typescript@5.4.5): resolution: {integrity: sha512-H0iNtClNEhT0fotHvGV3E9tDejDeS04sN1veIebsKYGMuGscFaswRoYJKmT3eW85eIJAs0F28bG2+a/9wCOfPw==} engines: {node: '>= 12'} hasBin: true dependencies: cachedir: 2.3.0 - cz-conventional-changelog: 3.3.0(@types/node@20.12.7)(typescript@5.4.5) + cz-conventional-changelog: 3.3.0(@types/node@20.12.10)(typescript@5.4.5) dedent: 0.7.0 detect-indent: 6.1.0 find-node-modules: 2.1.3 @@ -1509,7 +1505,7 @@ packages: safe-buffer: 5.1.2 dev: true - /cosmiconfig-typescript-loader@5.0.0(@types/node@20.12.7)(cosmiconfig@9.0.0)(typescript@5.4.5): + /cosmiconfig-typescript-loader@5.0.0(@types/node@20.12.10)(cosmiconfig@9.0.0)(typescript@5.4.5): resolution: {integrity: sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==} engines: {node: '>=v16'} peerDependencies: @@ -1517,7 +1513,7 @@ packages: cosmiconfig: '>=8.2' typescript: '>=4' dependencies: - '@types/node': 20.12.7 + '@types/node': 20.12.10 cosmiconfig: 9.0.0(typescript@5.4.5) jiti: 1.21.0 typescript: 5.4.5 @@ -1548,18 +1544,18 @@ packages: which: 2.0.2 dev: true - /cz-conventional-changelog@3.3.0(@types/node@20.12.7)(typescript@5.4.5): + /cz-conventional-changelog@3.3.0(@types/node@20.12.10)(typescript@5.4.5): resolution: {integrity: sha512-U466fIzU5U22eES5lTNiNbZ+d8dfcHcssH4o7QsdWaCcRs/feIPCxKYSWkYBNs5mny7MvEfwpTLWjvbm94hecw==} engines: {node: '>= 10'} dependencies: chalk: 2.4.2 - commitizen: 4.3.0(@types/node@20.12.7)(typescript@5.4.5) + commitizen: 4.3.0(@types/node@20.12.10)(typescript@5.4.5) conventional-commit-types: 3.0.0 lodash.map: 4.6.0 longest: 2.0.1 word-wrap: 1.2.5 optionalDependencies: - '@commitlint/load': 19.2.0(@types/node@20.12.7)(typescript@5.4.5) + '@commitlint/load': 19.2.0(@types/node@20.12.10)(typescript@5.4.5) transitivePeerDependencies: - '@types/node' - typescript @@ -1700,16 +1696,6 @@ packages: engines: {node: '>=10'} dev: true - /eslint-compat-utils@0.4.1(eslint@8.57.0): - resolution: {integrity: sha512-5N7ZaJG5pZxUeNNJfUchurLVrunD1xJvyg5kYOIVF8kg1f3ajTikmAu/5fZ9w100omNPOoMjngRszh/Q/uFGMg==} - engines: {node: '>=12'} - peerDependencies: - eslint: '>=6.0.0' - dependencies: - eslint: 8.57.0 - semver: 7.6.0 - dev: true - /eslint-compat-utils@0.5.0(eslint@8.57.0): resolution: {integrity: sha512-dc6Y8tzEcSYZMHa+CMPLi/hyo1FzNeonbhJL7Ol0ccuKQkwopJcJBA9YL/xmMTLU1eKigXo9vj9nALElWYSowg==} engines: {node: '>=12'} @@ -1720,19 +1706,19 @@ packages: semver: 7.6.0 dev: true - /eslint-plugin-json-schema-validator@4.8.3(eslint@8.57.0): - resolution: {integrity: sha512-F4S6Aw7l/9NzB8E0CAbjiSlXWqDiK3rIiw0I+Jdp+qr/wN1yTg7HkJgeWX4mNnlDMDzydymYy2uuKmNaWUV/hA==} + /eslint-plugin-json-schema-validator@5.1.0(eslint@8.57.0): + resolution: {integrity: sha512-ZmVyxRIjm58oqe2kTuy90PpmZPrrKvOjRPXKzq8WCgRgAkidCgm5X8domL2KSfadZ3QFAmifMgGTcVNhZ5ez2g==} engines: {node: ^14.18.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@8.57.0) - ajv: 8.11.0 + ajv: 8.12.0 debug: 4.3.4 eslint: 8.57.0 - eslint-compat-utils: 0.4.1(eslint@8.57.0) + eslint-compat-utils: 0.5.0(eslint@8.57.0) json-schema-migrate: 2.0.0 - jsonc-eslint-parser: 2.1.0 + jsonc-eslint-parser: 2.4.0 minimatch: 8.0.4 synckit: 0.9.0 toml-eslint-parser: 0.9.3 @@ -2319,17 +2305,17 @@ packages: wrap-ansi: 7.0.0 dev: true - /inquirer@9.2.17: - resolution: {integrity: sha512-Vr3Ia2ud5sGnioURkE69endl4SkeJcMzTF6SosKcX5GALJfId7C+JvO5ZZb6y1LOXnEofCPbwzoQ1q0e8Gaduw==} + /inquirer@9.2.20: + resolution: {integrity: sha512-SFwJJPS+Ms75NV+wzFBHjirG4z3tzvis31h+9NyH1tqjIu2c7vCavlXILZ73q/nPYy8/aw4W+DNzLH5MjfYXiA==} engines: {node: '>=18'} dependencies: + '@inquirer/figures': 1.0.1 '@ljharb/through': 2.3.13 ansi-escapes: 4.3.2 chalk: 5.3.0 cli-cursor: 3.1.0 cli-width: 4.1.0 external-editor: 3.1.0 - figures: 3.2.0 lodash: 4.17.21 mute-stream: 1.0.0 ora: 5.4.1 @@ -2489,7 +2475,7 @@ packages: '@jest/expect': 28.1.3 '@jest/test-result': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 chalk: 4.1.2 co: 4.6.0 dedent: 0.7.0 @@ -2508,7 +2494,7 @@ packages: - supports-color dev: true - /jest-cli@28.1.3(@types/node@20.12.7): + /jest-cli@28.1.3(@types/node@20.12.10): resolution: {integrity: sha512-roY3kvrv57Azn1yPgdTebPAXvdR2xfezaKKYzVxZ6It/5NCxzJym6tUI5P1zkdWhfUYkxEI9uZWcQdaFLo8mJQ==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} hasBin: true @@ -2525,7 +2511,7 @@ packages: exit: 0.1.2 graceful-fs: 4.2.10 import-local: 3.1.0 - jest-config: 28.1.3(@types/node@20.12.7) + jest-config: 28.1.3(@types/node@20.12.10) jest-util: 28.1.3 jest-validate: 28.1.3 prompts: 2.4.2 @@ -2536,7 +2522,7 @@ packages: - ts-node dev: true - /jest-config@28.1.3(@types/node@20.12.7): + /jest-config@28.1.3(@types/node@20.12.10): resolution: {integrity: sha512-MG3INjByJ0J4AsNBm7T3hsuxKQqFIiRo/AUqb1q9LRKI5UU6Aar9JHbr9Ivn1TVwfUD9KirRoM/T6u8XlcQPHQ==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} peerDependencies: @@ -2551,7 +2537,7 @@ packages: '@babel/core': 7.18.9 '@jest/test-sequencer': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 babel-jest: 28.1.3(@babel/core@7.18.9) chalk: 4.1.2 ci-info: 3.3.2 @@ -2610,7 +2596,7 @@ packages: '@jest/environment': 28.1.3 '@jest/fake-timers': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 jest-mock: 28.1.3 jest-util: 28.1.3 dev: true @@ -2626,7 +2612,7 @@ packages: dependencies: '@jest/types': 28.1.3 '@types/graceful-fs': 4.1.5 - '@types/node': 20.12.7 + '@types/node': 20.12.10 anymatch: 3.1.2 fb-watchman: 2.0.1 graceful-fs: 4.2.10 @@ -2661,7 +2647,7 @@ packages: resolution: {integrity: sha512-PFdn9Iewbt575zKPf1286Ht9EPoJmYT7P0kY+RibeYZ2XtOr53pDLEFoTWXbd1h4JiGiWpTBC84fc8xMXQMb7g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@babel/code-frame': 7.24.1 + '@babel/code-frame': 7.24.2 '@jest/types': 28.1.3 '@types/stack-utils': 2.0.1 chalk: 4.1.2 @@ -2677,7 +2663,7 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 dev: true /jest-pnp-resolver@1.2.2(jest-resolve@28.1.3): @@ -2731,7 +2717,7 @@ packages: '@jest/test-result': 28.1.3 '@jest/transform': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 chalk: 4.1.2 emittery: 0.10.2 graceful-fs: 4.2.10 @@ -2817,7 +2803,7 @@ packages: engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 chalk: 4.1.2 ci-info: 3.3.2 graceful-fs: 4.2.10 @@ -2842,7 +2828,7 @@ packages: dependencies: '@jest/test-result': 28.1.3 '@jest/types': 28.1.3 - '@types/node': 20.12.7 + '@types/node': 20.12.10 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.10.2 @@ -2854,12 +2840,12 @@ packages: resolution: {integrity: sha512-CqRA220YV/6jCo8VWvAt1KKx6eek1VIHMPeLEbpcfSfkEeWyBNppynM/o6q+Wmw+sOhos2ml34wZbSX3G13//g==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} dependencies: - '@types/node': 20.12.7 + '@types/node': 20.12.10 merge-stream: 2.0.0 supports-color: 8.1.1 dev: true - /jest@28.1.3(@types/node@20.12.7): + /jest@28.1.3(@types/node@20.12.10): resolution: {integrity: sha512-N4GT5on8UkZgH0O5LUavMRV1EDEhNTL0KEfRmDIeZHSV7p2XgLoY9t9VDUgL6o+yfdgYHVxuz81G8oB9VG5uyA==} engines: {node: ^12.13.0 || ^14.15.0 || ^16.10.0 || >=17.0.0} hasBin: true @@ -2872,7 +2858,7 @@ packages: '@jest/core': 28.1.3 '@jest/types': 28.1.3 import-local: 3.1.0 - jest-cli: 28.1.3(@types/node@20.12.7) + jest-cli: 28.1.3(@types/node@20.12.10) transitivePeerDependencies: - '@types/node' - supports-color @@ -2916,7 +2902,7 @@ packages: /json-schema-migrate@2.0.0: resolution: {integrity: sha512-r38SVTtojDRp4eD6WsCqiE0eNDt4v1WalBXb9cyZYw9ai5cGtBwzRNWjHzJl38w6TxFkXAIA7h+fyX3tnrAFhQ==} dependencies: - ajv: 8.11.0 + ajv: 8.12.0 dev: true /json-schema-traverse@0.4.1: @@ -2937,16 +2923,6 @@ packages: hasBin: true dev: true - /jsonc-eslint-parser@2.1.0: - resolution: {integrity: sha512-qCRJWlbP2v6HbmKW7R3lFbeiVWHo+oMJ0j+MizwvauqnCV/EvtAeEeuCgoc/ErtsuoKgYB8U4Ih8AxJbXoE6/g==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - dependencies: - acorn: 8.11.3 - eslint-visitor-keys: 3.4.3 - espree: 9.6.1 - semver: 7.6.0 - dev: true - /jsonc-eslint-parser@2.4.0: resolution: {integrity: sha512-WYDyuc/uFcGp6YtM2H0uKmUwieOuzeE/5YocFJLnLfclZ4inf3mRn8ZVy1s7Hxji7Jxm6Ss8gqpexD/GlKoGgg==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3304,7 +3280,7 @@ packages: resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} engines: {node: '>=8'} dependencies: - '@babel/code-frame': 7.24.1 + '@babel/code-frame': 7.24.2 error-ex: 1.3.2 json-parse-even-better-errors: 2.3.1 lines-and-columns: 1.2.4 @@ -3785,7 +3761,7 @@ packages: '@babel/core': 7.18.9 bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 28.1.3(@types/node@20.12.7) + jest: 28.1.3(@types/node@20.12.10) jest-util: 28.1.3 json5: 2.2.1 lodash.memoize: 4.1.2 diff --git a/renovate.json b/renovate.json index e479e0ac..84180633 100644 --- a/renovate.json +++ b/renovate.json @@ -5,6 +5,7 @@ "gitIgnoredAuthors": ["githubaction@githubaction.com"], "dependencyDashboard": true, "enabledManagers": ["docker-compose", "dockerfile"], + "labels": ["update-image"], "hostRules": [ { "matchHost": "index.docker.io",