diff --git a/.github/workflows/renovate.yml b/.github/workflows/renovate.yml index fc0404de..91507805 100644 --- a/.github/workflows/renovate.yml +++ b/.github/workflows/renovate.yml @@ -17,7 +17,7 @@ on: schedule: # The "*" (#42, asterisk) character has special semantics in YAML, so this # string has to be quoted. - - cron: '0/15 * * * *' + - cron: '0/30 * * * *' jobs: renovate: runs-on: ubuntu-latest @@ -25,6 +25,9 @@ jobs: - name: Checkout uses: actions/checkout@v2.0.0 - name: Self-hosted Renovate - uses: renovatebot/github-action@v32.118.0 + uses: renovatebot/github-action@v36.0.4 with: token: ${{ secrets.RENOVATE_TOKEN }} + env: + DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }} + DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }} diff --git a/README.md b/README.md index 67a7947e..9d6b87c6 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Emulatorjs](https://github.com/EmulatorJS/EmulatorJS) - Self-hosted Javascript emulation for various system. - [Excalidraw](https://github.com/excalidraw/excalidraw) - Online whiteboard collaboration made easy - [Filebrowser](https://github.com/filebrowser/filebrowser) - Web File Browser +- [Filestash](https://github.com/mickael-kerjean/filestash) - A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze - [Firefly III](https://github.com/firefly-iii/firefly-iii) - A personal finances manager - [Fireshare](https://github.com/ShaneIsrael/fireshare) - Self host your media and share with unique links - [Flatnotes](https://github.com/Dullage/flatnotes) - A self-hosted, database-less note taking web app @@ -33,6 +34,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Gitea](https://github.com/go-gitea/gitea) - Gitea - A painless self-hosted Git service - [Gladys Assistant](https://github.com/gladysassistant/gladys) - A privacy-first, open-source home assistant - [Gotify](https://github.com/gotify/server) - Gotify - Simple server for sending and receiving notification messages +-[GoToSocial](https://github.com/superseriousbusiness/gotosocial) - Fast, fun, ActivityPub server, powered by Go. - [Grafana](https://github.com/grafana/grafana) - The open and composable observability and data visualization platform - [Grav](https://github.com/getgrav/grav) - Fast, Simple, and Flexible, file-based Web-platform. - [Grocy](https://github.com/grocy/grocy) - Grocy - ERP beyond your fridge @@ -43,6 +45,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Homarr](https://github.com/ajnart/homarr) - A homepage for your server - [Home Assistant](https://github.com/home-assistant/core) - Open source home automation that puts local control and privacy first - [HomeBox](https://github.com/hay-kot/homebox) - Homebox is the inventory and organization system built for the Home User +- [Halo](https://github.com/halo-dev/halo) - Halo is a powerful and easy-to-use open source website building tool. - [Immich](https://github.com/immich-app/immich) - Photo and video backup solution directly from your mobile phone - [IT-Tools](https://github.com/CorentinTh/it-tools) - Collection of handy online tools for developers, with great UX. - [Invidious](https://github.com/iv-org/invidious) - An alternative front-end to YouTube @@ -50,6 +53,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Jellyfin](https://github.com/jellyfin/jellyfin) - A media server for your home collection - [Jellyseerr](https://github.com/Fallenbagel/jellyseerr) - Fork of overseerr for Jellyfin support - [Joplin](https://github.com/laurent22/joplin) - Privacy focused note-taking app +- [Kanboard](https://github.com/kanboard/kanboard) - Kanboard is a free and open source Kanban project management software. - [Kavita](https://github.com/Kareadita/Kavita) - Kavita is a fast, feature rich, cross platform reading server - [Libreddit](https://github.com/spikecodes/libreddit) - Private front-end for Reddit - [LibrePhotos](https://github.com/LibrePhotos/librephotos) - Complete photo management service @@ -85,6 +89,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Peppermint](https://github.com/Peppermint-Lab/peppermint) - An open source ticket management & help desk solution. - [Photoprism](https://github.com/photoprism/photoprism) - AI-Powered Photos App for the Decentralized Web. We are on a mission to protect your freedom and privacy. - [Pihole](https://github.com/pi-hole/pi-hole) - A black hole for Internet advertisements +- [Plausible](https://github.com/plausible/analytics) - Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics. - [Plex](https://github.com/plexinc/pms-docker) - Stream Movies & TV Shows - [PodFetch](https://github.com/SamTV12345/PodFetch) - A sleek and efficient podcast downloader. - [Portainer](https://github.com/portainer/portainer) - Making Docker and Kubernetes management easy. diff --git a/apps/actual-budget/config.json b/apps/actual-budget/config.json index e27dbcb5..60625601 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": 1, - "version": "23.4.2", + "tipi_version": 2, + "version": "23.5.0", "categories": [ "finance" ], diff --git a/apps/actual-budget/docker-compose.yml b/apps/actual-budget/docker-compose.yml index 5163de20..01884728 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:23.4.2 + image: actualbudget/actual-server:23.5.0 restart: unless-stopped ports: - ${APP_PORT}:5006 diff --git a/apps/autobrr/config.json b/apps/autobrr/config.json index ffe285f9..7ca3c332 100644 --- a/apps/autobrr/config.json +++ b/apps/autobrr/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "autobrr", - "tipi_version": 3, - "version": "1.24.1", + "tipi_version": 4, + "version": "1.25.0", "categories": [ "media" ], diff --git a/apps/autobrr/docker-compose.yml b/apps/autobrr/docker-compose.yml index 979e5a46..1577f731 100644 --- a/apps/autobrr/docker-compose.yml +++ b/apps/autobrr/docker-compose.yml @@ -3,7 +3,7 @@ version: '3' services: autobrr: container_name: autobrr - image: ghcr.io/autobrr/autobrr:v1.24.1 + image: ghcr.io/autobrr/autobrr:v1.25.0 restart: unless-stopped ports: - ${APP_PORT}:7474 diff --git a/apps/bazarr/config.json b/apps/bazarr/config.json index 69703cf7..1ee2810e 100644 --- a/apps/bazarr/config.json +++ b/apps/bazarr/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 6767, "id": "bazarr", - "tipi_version": 4, - "version": "1.2.0", + "tipi_version": 5, + "version": "1.2.1", "categories": [ "media", "utilities" diff --git a/apps/bazarr/docker-compose.yml b/apps/bazarr/docker-compose.yml index 5b6107c8..8998d3a5 100644 --- a/apps/bazarr/docker-compose.yml +++ b/apps/bazarr/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: bazarr: - image: lscr.io/linuxserver/bazarr:1.2.0 + image: lscr.io/linuxserver/bazarr:1.2.1 container_name: bazarr environment: - PUID=1000 diff --git a/apps/bookstack/config.json b/apps/bookstack/config.json index 4e8e423e..a4d565ba 100644 --- a/apps/bookstack/config.json +++ b/apps/bookstack/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8119, "id": "bookstack", - "tipi_version": 6, - "version": "23.02.20230226", + "tipi_version": 7, + "version": "23.05.20230503", "description": "BookStack is a simple, self-hosted, easy-to-use platform for organising and storing information. Default login: admin@admin.com password: password", "short_desc": "BookStack is a self-hosted platform for organising and storing information.", "author": "Dan Brown", diff --git a/apps/bookstack/docker-compose.yml b/apps/bookstack/docker-compose.yml index b97dba39..9853994d 100644 --- a/apps/bookstack/docker-compose.yml +++ b/apps/bookstack/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: bookstack: - image: lscr.io/linuxserver/bookstack:23.02.20230226 + image: lscr.io/linuxserver/bookstack:23.05.20230503 container_name: bookstack environment: - APP_URL=http://${INTERNAL_IP}:${APP_PORT} diff --git a/apps/chatgpt-ui/config.json b/apps/chatgpt-ui/config.json index cc2f2267..1bf67c23 100644 --- a/apps/chatgpt-ui/config.json +++ b/apps/chatgpt-ui/config.json @@ -5,10 +5,10 @@ "available": true, "exposable": true, "id": "chatgpt-ui", - "tipi_version": 5, - "version": "2.5.3", + "tipi_version": 7, + "version": "2.5.4", "categories": [ - "utilities" + "ai" ], "description": "A ChatGPT web client that supports multiple users, multiple languages, and multiple database connections for persistent data storage", "short_desc": "A ChatGPT web client that supports multiple users, multiple languages, and multiple database connections for persistent data storage", diff --git a/apps/chatgpt-ui/docker-compose.yml b/apps/chatgpt-ui/docker-compose.yml index b6776ddb..e0005f57 100644 --- a/apps/chatgpt-ui/docker-compose.yml +++ b/apps/chatgpt-ui/docker-compose.yml @@ -1,7 +1,7 @@ version: '3' services: chatgpt-ui: - image: wongsaang/chatgpt-ui-client:v2.5.3 + image: wongsaang/chatgpt-ui-client:v2.5.4 container_name: chatgpt-ui environment: - SERVER_DOMAIN=http://chatgpt-ui-web-server diff --git a/apps/chatpad/config.json b/apps/chatpad/config.json index 21416e21..1f46fbdb 100644 --- a/apps/chatpad/config.json +++ b/apps/chatpad/config.json @@ -5,9 +5,11 @@ "exposable": true, "port": 8179, "id": "chatpad", - "tipi_version": 1, + "tipi_version": 2, "version": "latest", - "categories": ["utilities"], + "categories": [ + "ai" + ], "description": "Not just another ChatGPT user-interface!", "short_desc": "Not just another ChatGPT user-interface!", "author": "Andrei Canta", diff --git a/apps/dailytxt/config.json b/apps/dailytxt/config.json index e43ecb4c..2c04ade1 100644 --- a/apps/dailytxt/config.json +++ b/apps/dailytxt/config.json @@ -5,9 +5,11 @@ "available": true, "exposable": true, "id": "dailytxt", - "tipi_version": 1, + "tipi_version": 2, "version": "1.0.12", - "categories": ["utilities"], + "categories": [ + "utilities" + ], "description": "DailyTxT is an encrypted Diary Web-App to write down your stories of the day and to find them again easily.", "short_desc": "Encrypted Diary Web-App", "author": "PhiTux", @@ -20,11 +22,12 @@ "env_variable": "DAILYTXT_SECRET_KEY" }, { - "type": "text", + "type": "boolean", "label": "Allow User Registrastion", - "hint": "Set it to false to disallow registration of new users.", + "hint": "Set it to true intially to create the first user.", "placeholder": "true", "required": true, + "default": true, "env_variable": "DAILYTXT_ALLOW_REGISTRATION" } ] diff --git a/apps/dashdot/config.json b/apps/dashdot/config.json index 3ad58799..be17e054 100644 --- a/apps/dashdot/config.json +++ b/apps/dashdot/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "dashdot", - "tipi_version": 2, - "version": "5.1.3", + "tipi_version": 3, + "version": "5.2.1", "categories": [ "utilities" ], diff --git a/apps/dashdot/docker-compose.yml b/apps/dashdot/docker-compose.yml index f02149e8..1d01bf0f 100644 --- a/apps/dashdot/docker-compose.yml +++ b/apps/dashdot/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.5' services: dashdot: - image: mauricenino/dashdot:5.1.3 + image: mauricenino/dashdot:5.2.1 restart: unless-stopped container_name: dashdot privileged: true diff --git a/apps/deluge/docker-compose.yml b/apps/deluge/docker-compose.yml index ff89e62f..0c9bef55 100644 --- a/apps/deluge/docker-compose.yml +++ b/apps/deluge/docker-compose.yml @@ -10,7 +10,7 @@ services: - DELUGE_LOGLEVEL=error #optional volumes: - ${APP_DATA_DIR}/data/deluge/config:/config - - ${ROOT_FOLDER_HOST}/media/torrents:/downloads + - ${ROOT_FOLDER_HOST}/media/torrents:/media/torrents ports: - ${APP_PORT}:8112 - 6881:6881 diff --git a/apps/deluge/metadata/description.md b/apps/deluge/metadata/description.md index c5f2e442..1c7236a5 100644 --- a/apps/deluge/metadata/description.md +++ b/apps/deluge/metadata/description.md @@ -10,7 +10,7 @@ Password: deluge | Root Folder | Container Folder | |----------------------------------------------|------------------| | /runtipi/app-data/deluge/data/deluge/config | /config | -| /runtipi/media/torrents | /downloads | +| /runtipi/media/torrents | /media/torrents | --- diff --git a/apps/filestash/config.json b/apps/filestash/config.json new file mode 100644 index 00000000..4a77cc34 --- /dev/null +++ b/apps/filestash/config.json @@ -0,0 +1,35 @@ +{ + "$schema": "../schema.json", + "name": "Filestash", + "port": 8189, + "available": true, + "exposable": true, + "id": "filestash", + "tipi_version": 1, + "version": "397fd8b", + "categories": ["utilities"], + "description": "A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze", + "short_desc": "A modern web client for SFTP, S3, FTP, WebDAV, Git, Minio, LDAP, CalDAV, CardDAV, Mysql, Backblaze", + "author": "mickael-kerjean", + "source": "https://github.com/mickael-kerjean/filestash", + "form_fields": [ + { + "type": "text", + "label": "(Optional) Google Drive Client ID", + "required": false, + "env_variable": "FILESTASH_GDRIVE_CLIENT_ID" + }, + { + "type": "text", + "label": "(Optional) Google Drive Client Secret", + "required": false, + "env_variable": "FILESTASH_GDRIVE_CLIENT_SECRET" + }, + { + "type": "text", + "label": "(Optional) Dropbox Client ID", + "required": false, + "env_variable": "FILESTASH_DROPBOX_CLIENT_ID" + } + ] +} diff --git a/apps/filestash/docker-compose.yml b/apps/filestash/docker-compose.yml new file mode 100644 index 00000000..250bbdff --- /dev/null +++ b/apps/filestash/docker-compose.yml @@ -0,0 +1,35 @@ +version: '2' +services: + filestash: + container_name: filestash + image: machines/filestash:397fd8b + restart: unless-stopped + environment: + - APPLICATION_URL=${APP_DOMAIN} + - GDRIVE_CLIENT_ID=${FILESTASH_GDRIVE_CLIENT_ID} + - GDRIVE_CLIENT_SECRET=${FILESTASH_GDRIVE_CLIENT_SECRET} + - DROPBOX_CLIENT_ID=${FILESTASH_DROPBOX_CLIENT_ID} + - ONLYOFFICE_URL=http://filestash-onlyoffice + ports: + - ${APP_PORT}:8334 + depends_on: + - filestash-onlyoffice + networks: + - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.filestash.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.filestash.entrypoints: websecure + traefik.http.routers.filestash.service: filestash + traefik.http.routers.filestash.tls.certresolver: myresolver + traefik.http.services.filestash.loadbalancer.server.port: 8334 + + filestash-onlyoffice: + container_name: filestash_oods + image: onlyoffice/documentserver:7.3.3.50 + restart: unless-stopped + security_opt: + - seccomp:unconfined + networks: + - tipi_main_network + diff --git a/apps/filestash/metadata/description.md b/apps/filestash/metadata/description.md new file mode 100644 index 00000000..36f516b4 --- /dev/null +++ b/apps/filestash/metadata/description.md @@ -0,0 +1,76 @@ +## Configure the Dropbox connector + +Configuring Dropbox must be done by: + +1. requesting access to the Dropbox API. Without this, Filestash can’t access anything stored on the Dropbox servers. To do that, go [there](https://www.dropbox.com/developers/apps/), then: + - click: “Create App” + - select: “dropbox api” + - select: “Full Dropbox” or “App folder” + - type: “whatever name you want” + - in the ‘redirect URI’ field, insert https://example.com/login +2. store the `client_id` configuration given by Dropbox (also known as the `App key`) in the admin console or by setting the `DROPBOX_CLIENT_ID` environment variable + +## Configure the Google Drive connector + +Configuring Google drive can be done by: + +1. Requesting access to the Google Drive API. Without this, Filestash cannot store anything on Google’s servers. To do that, you need to [go there](https://console.developers.google.com/apis/api/drive.googleapis.com/overview) and enable the Drive API. Then, go [there](https://console.developers.google.com/apis/credentials/oauthclient) and create credentials that Filestash will be using to communicate with Google +2. Publish the configuration provided by Google (`client_id` and `client_secret`) in your Filestash admin console or by setting the `GDRIVE_CLIENT_ID` and `GDRIVE_CLIENT_SECRET` environment variables + +--- + +[![screenshot](https://raw.githubusercontent.com/mickael-kerjean/filestash_images/master/.assets/photo.jpg)](https://raw.githubusercontent.com/mickael-kerjean/filestash_images/master/.assets/photo.jpg) + + [![](https://camo.githubusercontent.com/189498ada91da90bbdb4744c08cc65e8967890ff749389ddec490402333890e8/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f636f6e7472696275746f72732f6d69636b61656c2d6b65726a65616e2f66696c657374617368)](https://github.com/mickael-kerjean/contributors)[![](https://camo.githubusercontent.com/437c9de456499e8dda9d0ec3a4477b6b75655dc94d19986e17810fe0098781bc/68747470733a2f2f696d672e736869656c64732e696f2f6f70656e636f6c6c6563746976652f6261636b6572732f66696c657374617368) ](https://opencollective.com/filestash)[![](https://camo.githubusercontent.com/e8018d8ef35a1fd24b3740ca55507ac58f58b20be2a676f59f44ac08cb7ed780/68747470733a2f2f696d672e736869656c64732e696f2f6f70656e636f6c6c6563746976652f73706f6e736f72732f66696c657374617368) ](https://opencollective.com/filestash)[![](https://camo.githubusercontent.com/53f6b0e53320b9f7669819bc0bb281ea1a3d4a648c3611a7a669dbd1b58da7aa/68747470733a2f2f696d672e736869656c64732e696f2f646f636b65722f70756c6c732f6d616368696e65732f66696c657374617368)](https://hub.docker.com/r/machines/filestash) + [![](https://github.com/mickael-kerjean/filestash/actions/workflows/ci.yml/badge.svg)](https://github.com/mickael-kerjean/filestash#)[![](https://camo.githubusercontent.com/bc51a239b32cd20f21e82567ceb3d68a589ba2a61c38d1138ee9ad3eb160950a/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4952432d25323366696c6573746173682d627269676874677265656e2e737667)](https://kiwiirc.com/nextclient/#irc://irc.libera.chat/#filestash?nick=guest??) + +A Dropbox-like file manager that let you manage your data anywhere it is located: +[FTP](https://www.filestash.app/ftp-client.html) • FTPS • [SFTP](https://www.filestash.app/ssh-file-transfer.html) • [WebDAV](https://www.filestash.app/webdav-client.html) • Git • [S3](https://www.filestash.app/s3-browser.html) • NFS • Samba • Artifactory • [LDAP](https://www.filestash.app/ldap-browser.html) • Mysql +Storj • CardDAV • CalDAV • Backblaze B2 • [Minio](https://www.filestash.app/s3-browser.html) +Dropbox • Google Drive + +# [](https://github.com/mickael-kerjean/filestash#features)Features + +- Manage your files from a browser +- Authentication middleware to connect to various source of user +- Flexible Share mechanism +- Chromecast support for images, music, and videos +- Video player +- Video transcoding (mov, mkv, avi, mpeg, and more) +- Image viewer +- Image transcoding (raw images from Nikon, Canon, and more) +- Photo management +- Audio player +- Shared links are full fledge network drive +- Office documents (docx, xlsx and more) +- Full org mode client ([documentation](https://www.filestash.app/2018/05/31/release-note-v0.1/)) +- User friendly +- Mobile friendly +- Customisable +- Plugins +- Super fast +- Upload files and folders +- Download as zip +- Multiple cloud providers and protocols, easily extensible +- Nyan cat loader +- Quick access: frequently access folders are pin to the homepage +- Emacs, VIM or Sublime keybindings `;)` +- Search +- .. and many more + +# Documentation + +- [Getting started](https://www.filestash.app/docs/) +- [Installation](https://www.filestash.app/docs/install-and-upgrade/) +- [FAQ](https://www.filestash.app/docs/faq/) + +# Screenshots + + [![user experience on navigation](https://raw.githubusercontent.com/mickael-kerjean/filestash_images/master/.assets/navigation.gif)](https://demo.filestash.app)[![user experience on navigation](https://raw.githubusercontent.com/mickael-kerjean/filestash_images/master/.assets/navigation.gif) + +](https://demo.filestash.app/)[](https://demo.filestash.app/) + + [![user experience on medias](https://raw.githubusercontent.com/mickael-kerjean/filestash_images/master/.assets/photo_management.gif)](http://demo.filestash.app)[![user experience on medias](https://raw.githubusercontent.com/mickael-kerjean/filestash_images/master/.assets/photo_management.gif) + +](http://demo.filestash.app/)[](http://demo.filestash.app/) +\ \ No newline at end of file diff --git a/apps/filestash/metadata/logo.jpg b/apps/filestash/metadata/logo.jpg new file mode 100644 index 00000000..30248e2e Binary files /dev/null and b/apps/filestash/metadata/logo.jpg differ diff --git a/apps/flatnotes/config.json b/apps/flatnotes/config.json index ab00c9e8..a1a0c932 100644 --- a/apps/flatnotes/config.json +++ b/apps/flatnotes/config.json @@ -5,9 +5,11 @@ "exposable": true, "id": "flatnotes", "port": 8137, - "tipi_version": 2, - "version": "v2.2.0", - "categories": ["utilities"], + "tipi_version": 4, + "version": "3.0.1", + "categories": [ + "utilities" + ], "description": "A self-hosted, database-less note taking web app that utilises a flat folder of markdown files for storage.", "short_desc": "A self-hosted, database-less note taking web app", "author": "Dullage", diff --git a/apps/flatnotes/docker-compose.yml b/apps/flatnotes/docker-compose.yml index 15223215..61bcf856 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:v2.2.0 + image: dullage/flatnotes:v3.0.1 environment: FLATNOTES_AUTH_TYPE: ${FLATNOTES_AUTH_TYPE} FLATNOTES_USERNAME: ${FLATNOTES_USERNAME} @@ -11,11 +11,11 @@ services: FLATNOTES_SECRET_KEY: ${FLATNOTES_SECRET_KEY} FLATNOTES_TOTP_KEY: ${FLATNOTES_TOTP_KEY} volumes: - - "${APP_DATA_DIR}/data:/app/data" + - "${APP_DATA_DIR}/data:/data" # - "./index:/app/data/.flatnotes" # Optional. Allows you to save the search index in a different location. ports: - - ${APP_PORT}:80 + - ${APP_PORT}:8080 restart: unless-stopped networks: - tipi_main_network @@ -25,4 +25,4 @@ services: traefik.http.routers.flatnotes.entrypoints: websecure traefik.http.routers.flatnotes.service: flatnotes traefik.http.routers.flatnotes.tls.certresolver: myresolver - traefik.http.services.flatnotes.loadbalancer.server.port: 80 \ No newline at end of file + traefik.http.services.flatnotes.loadbalancer.server.port: 8080 \ No newline at end of file diff --git a/apps/ghost/config.json b/apps/ghost/config.json index 62474ba2..d3976ec4 100644 --- a/apps/ghost/config.json +++ b/apps/ghost/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "ghost", - "tipi_version": 12, - "version": "5.45.1", + "tipi_version": 14, + "version": "5.46.1", "categories": [ "social", "media" diff --git a/apps/ghost/docker-compose.yml b/apps/ghost/docker-compose.yml index f79633f1..34a0b7b9 100644 --- a/apps/ghost/docker-compose.yml +++ b/apps/ghost/docker-compose.yml @@ -3,7 +3,7 @@ version: '3.9' services: ghost: - image: ghost:5.45.1 + image: ghost:5.46.1 container_name: ghost depends_on: - ghostdb diff --git a/apps/gitea/config.json b/apps/gitea/config.json index 939265f5..48c1884b 100644 --- a/apps/gitea/config.json +++ b/apps/gitea/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "gitea", - "tipi_version": 6, - "version": "1.19.2", + "tipi_version": 7, + "version": "1.19.3", "categories": [ "development" ], diff --git a/apps/gitea/docker-compose.yml b/apps/gitea/docker-compose.yml index 1dc1453d..56e5d17b 100644 --- a/apps/gitea/docker-compose.yml +++ b/apps/gitea/docker-compose.yml @@ -2,7 +2,7 @@ version: "3.7" services: gitea: - image: gitea/gitea:1.19.2 + image: gitea/gitea:1.19.3 container_name: gitea environment: - USER_UID=1000 diff --git a/apps/gladys/config.json b/apps/gladys/config.json index e250034e..dde45848 100644 --- a/apps/gladys/config.json +++ b/apps/gladys/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": false, "id": "gladys", - "tipi_version": 4, - "version": "4.21.1", + "tipi_version": 6, + "version": "4.22.0", "categories": [ "automation" ], diff --git a/apps/gladys/docker-compose.yml b/apps/gladys/docker-compose.yml index 54f73f33..5f5eaafd 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.21.1 + image: gladysassistant/gladys:v4.22.0 privileged: true restart: on-failure stop_grace_period: 1m diff --git a/apps/gotosocial/config.json b/apps/gotosocial/config.json new file mode 100644 index 00000000..99c1b029 --- /dev/null +++ b/apps/gotosocial/config.json @@ -0,0 +1,71 @@ +{ + "$schema": "../schema.json", + "name": "GoToSocial", + "port": 8188, + "available": true, + "exposable": true, + "force_expose": true, + "id": "gotosocial", + "tipi_version": 3, + "uid": 1000, + "gid": 1000, + "version": "0.8.1", + "categories": ["social"], + "description": "Fast, fun, ActivityPub server, powered by Go.", + "short_desc": "Fast, fun, ActivityPub server, powered by Go.", + "author": "superseriousbusiness", + "source": "https://github.com/superseriousbusiness/gotosocial", + "form_fields": [ + { + "type": "random", + "label": "GoToSocial DB Password", + "min": 32, + "env_variable": "GTS_DB_PASSWORD" + }, + { + "label": "Sign Ups", + "type": "text", + "required": true, + "options": [ + { "label": "Open Sign Up", "value": "true" }, + { "label": "Invite Only", "value": "false" } + ], + "env_variable": "GTS_ACCOUNTS_REGISTRATION_OPE" + }, + { + "type": "text", + "label": "SMTP Host", + "hint": "Your SMTP Server", + "required": false, + "env_variable": "GTS_SMTP_HOST" + }, + { + "type": "text", + "label": "SMTP Port", + "hint": "Your SMTP Port", + "required": false, + "env_variable": "GTS_SMTP_PORT" + }, + { + "type": "text", + "label": "SMTP Username", + "hint": "Your SMTP Server User/Username", + "required": false, + "env_variable": "GTS_SMTP_USERNAME" + }, + { + "type": "text", + "label": "SMTP Password", + "hint": "Your SMTP Server Password", + "required": false, + "env_variable": "GTS_SMTP_PASSWORD" + }, + { + "type": "text", + "label": "SMTP From Address", + "hint": "Make sure the Format is like noreply@example.com", + "required": false, + "env_variable": "GTS_SMTP_FROM" + } + ] +} diff --git a/apps/gotosocial/docker-compose.yml b/apps/gotosocial/docker-compose.yml new file mode 100644 index 00000000..d420b669 --- /dev/null +++ b/apps/gotosocial/docker-compose.yml @@ -0,0 +1,52 @@ +version: "3" + +services: + gotosocial: + container_name: gotosocial + image: superseriousbusiness/gotosocial:0.8.1 + user: 1000:1000 + ports: + - ${APP_PORT}:8080 + volumes: + - ${APP_DATA_DIR}/data/gotosocial:/gotosocial/storage + depends_on: + - gotosocial-db + environment: + - GTS_HOST=${APP_DOMAIN} + - GTS_LETSENCRYPT_ENABLED=false + - GTS_DB_TYPE=postgres + - GTS_DB_ADDRESS=gotosocial-db + - GTS_DB_PORT=5432 + - GTS_DB_USER=tipi + - GTS_DB_PASSWORD=${GTS_DB_PASSWORD} + - GTS_DB_DATABASE=gotosocial-db + - GTS_ACCOUNTS_REGISTRATION_OPEN=${GTS_ACCOUNTS_REGISTRATION_OPEN} + - GTS_SMTP_HOST=${GTS_SMTP_HOST} + - GTS_SMTP_PORT=${GTS_SMTP_PORT} + - GTS_SMTP_USERNAME=${GTS_SMTP_USERNAME} + - GTS_SMTP_PASSWORD=${GTS_SMTP_PASSWORD} + - GTS_SMTP_FROM=${GTS_SMTP_FROM} + restart: unless-stopped + networks: + - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.gotosocial.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.gotosocial.entrypoints: websecure + traefik.http.routers.gotosocial.service: gotosocial + traefik.http.routers.gotosocial.tls.certresolver: myresolver + traefik.http.services.gotosocial.loadbalancer.server.port: 8080 + + gotosocial-db: + container_name: gotosocial-db + image: postgres:14 + environment: + POSTGRES_PASSWORD: ${GTS_DB_PASSWORD} + POSTGRES_USER: tipi + POSTGRES_DB: gotosocial-db + PG_DATA: /var/lib/postgresql/data + volumes: + - ${APP_DATA_DIR}/data/db:/var/lib/postgresql/data + restart: unless-stopped + networks: + - tipi_main_network \ No newline at end of file diff --git a/apps/gotosocial/metadata/description.md b/apps/gotosocial/metadata/description.md new file mode 100644 index 00000000..35e6eb34 --- /dev/null +++ b/apps/gotosocial/metadata/description.md @@ -0,0 +1,58 @@ +# Installation Docs + +### To Create your user +1. SSH into your Tipi Server +2. Fill in your credentials (some_username,someone@example.org, some_very_good_password), then run the command: + ``` + docker exec -it gotosocial /gotosocial/gotosocial admin account create --username some_username --email someone@example.org --password 'some_very_good_password' + ``` +### To promote the initial user (or any user) to admin: +1. SSH into your Tipi Server +2. Fill in your credentials (some_username), then run the command: + ``` + docker exec -it gotosocial /gotosocial/gotosocial admin account promote --username some_username + ``` +3. Go Back To your WebUI, Stop and Start your instance. +4. Go to yourdomain.com/settings and you will be able to see personal and instance settings! + +### (Optional) S3 Bucket + +If you would rather store your data within a S3 Bucket, here is an easy way to do it. + +1. Follow the [App User Config Guide](https://www.runtipi.io/docs/guides/customize-app-config) to make a folder and app.env. +2. In the docker-compose.yml you can set the S3 Config Like + +``` +version: "3" +services: + gotosocial: + environment: + - GTS_STORAGE_BACKEND=s3 + - GTS_STORAGE_S3_ENDPOINT=your_endpoint + - GTS_STORAGE_S3_USE_SSL=true + - GTS_STORAGE_S3_ACCESS_KEY=your_access_key + - GTS_STORAGE_S3_SECRET_KEY=your_secret_key + - GTS_STORAGE_S3_BUCKET=your_bucket +``` +3. Restart your app, and your good to go! + +4. For More Info [Read the Docs!](https://docs.gotosocial.org/en/latest/configuration/storage/) + +--- +# GoToSocial + +GoToSocial is an [ActivityPub](https://activitypub.rocks/) social network server, written in Golang. + +With GoToSocial, you can keep in touch with your friends, post, read, and share images and articles. All without being tracked or advertised to! + +[![](https://github.com/superseriousbusiness/gotosocial/raw/main/docs/assets/sloth.png)](https://github.com/superseriousbusiness/gotosocial/blob/main/docs/assets/sloth.png) + +**GoToSocial is still [ALPHA SOFTWARE](https://en.wikipedia.org/wiki/Software_release_life_cycle#Alpha)**. It is already deployable and useable, and it federates cleanly with many other Fediverse servers (not yet all). However, many things are not yet implemented, and there are plenty of bugs! We foresee entering beta somewhere in 2023. + +Documentation is at [docs.gotosocial.org](https://docs.gotosocial.org). You can skip straight to the API documentation [here](https://docs.gotosocial.org/en/latest/api/swagger/). To build from source, check the [CONTRIBUTING.md](https://github.com/superseriousbusiness/gotosocial/blob/main/CONTRIBUTING.md) file. + +Here's a screenshot of the instance landing page! + +[![Screenshot of the landing page for the GoToSocial instance goblin.technology. It shows basic information about the instance; number of users and posts etc.](https://github.com/superseriousbusiness/gotosocial/raw/main/docs/assets/instancesplash.png)](https://github.com/superseriousbusiness/gotosocial/blob/main/docs/assets/instancesplash.png) + +## [Read More!](https://github.com/superseriousbusiness/gotosocial#table-of-contents-) \ No newline at end of file diff --git a/apps/gotosocial/metadata/logo.jpg b/apps/gotosocial/metadata/logo.jpg new file mode 100644 index 00000000..c378c928 Binary files /dev/null and b/apps/gotosocial/metadata/logo.jpg differ diff --git a/apps/halo/config.json b/apps/halo/config.json new file mode 100644 index 00000000..b7f605ba --- /dev/null +++ b/apps/halo/config.json @@ -0,0 +1,43 @@ +{ + "$schema": "../schema.json", + "name": "Halo", + "available": true, + "exposable": true, + "port": 8092, + "id": "halo", + "tipi_version": 1, + "version": "2.5.2", + "description": "Halo is a powerful and easy-to-use open source website building tool.", + "short_desc": "Halo - Open source website building tool.", + "categories": [ + "social", + "media" + ], + "author": "halo-dev", + "source": "https://github.com/halo-dev/halo", + "website": "https://halo.run", + "form_fields": [ + { + "type": "random", + "label": "Database password", + "min": 20, + "env_variable": "HALO_DATABASE_PASSWORD" + }, + { + "type": "text", + "label": "Initial admin username", + "env_variable": "HALO_ADMIN_USERNAME" + }, + { + "type": "text", + "label": "Initial admin password", + "min": 8, + "env_variable": "HALO_ADMIN_PASSWORD" + }, + { + "type": "url", + "label": "External url", + "env_variable": "HALO_EXTERNAL_URL" + } + ] +} diff --git a/apps/halo/docker-compose.yml b/apps/halo/docker-compose.yml new file mode 100644 index 00000000..9a88e30e --- /dev/null +++ b/apps/halo/docker-compose.yml @@ -0,0 +1,56 @@ +version: "3.7" + +services: + halo: + image: halohub/halo:2.5.2 + container_name: halo + restart: unless-stopped + depends_on: + halodb: + condition: service_healthy + networks: + - tipi_main_network + volumes: + - ${APP_DATA_DIR}:/root/.halo2 + ports: + - ${APP_PORT}:8090 + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8090/actuator/health/readiness"] + interval: 30s + timeout: 5s + retries: 5 + start_period: 30s + command: + - --spring.r2dbc.url=r2dbc:pool:postgresql://halodb/halo + - --spring.r2dbc.username=halo + - --spring.r2dbc.password=${HALO_DATABASE_PASSWORD} + - --spring.sql.init.platform=postgresql + - --halo.external-url=${HALO_EXTERNAL_URL} + - --halo.security.initializer.superadminusername=${HALO_ADMIN_USERNAME} + - --halo.security.initializer.superadminpassword=${HALO_ADMIN_PASSWORD} + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.halo.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.halo.entrypoints: websecure + traefik.http.routers.halo.service: halo + traefik.http.routers.halo.tls.certresolver: myresolver + traefik.http.services.halo.loadbalancer.server.port: 8090 + + halodb: + image: postgres:latest + container_name: halodb + restart: unless-stopped + networks: + - tipi_main_network + volumes: + - ${APP_DATA_DIR}/db:/var/lib/postgresql/data + healthcheck: + test: [ "CMD", "pg_isready" ] + interval: 10s + timeout: 5s + retries: 5 + environment: + - POSTGRES_PASSWORD=${HALO_DATABASE_PASSWORD} + - POSTGRES_USER=halo + - POSTGRES_DB=halo + - PGUSER=halo diff --git a/apps/halo/metadata/description.md b/apps/halo/metadata/description.md new file mode 100644 index 00000000..b0d32d56 --- /dev/null +++ b/apps/halo/metadata/description.md @@ -0,0 +1,9 @@ +# Open source website building tool + +[Halo](https://github.com/halo-dev/halo) is a powerful and easy-to-use open source website building tool, with rich themes and plugins to help you build the ideal site in your mind. + +## Links + +- Repository: +- Awesome Halo: +- Homepage: \ No newline at end of file diff --git a/apps/halo/metadata/logo.jpg b/apps/halo/metadata/logo.jpg new file mode 100644 index 00000000..2bf71236 Binary files /dev/null and b/apps/halo/metadata/logo.jpg differ diff --git a/apps/jackett/config.json b/apps/jackett/config.json index 6c6ac83b..943d73f7 100644 --- a/apps/jackett/config.json +++ b/apps/jackett/config.json @@ -5,8 +5,8 @@ "exposable": true, "port": 8097, "id": "jackett", - "tipi_version": 14, - "version": "0.20.4013", + "tipi_version": 21, + "version": "0.20.4119", "description": "Jackett works as a proxy server: it translates queries from apps (Sonarr, Radarr, SickRage, CouchPotato, Mylar3, Lidarr, DuckieTV, qBittorrent, Nefarious etc.) into tracker-site-specific http queries, parses the html or json response, and then sends results back to the requesting software. This allows for getting recent uploads (like RSS) and performing searches.", "short_desc": "API Support for your favorite torrent trackers ", "categories": [ diff --git a/apps/jackett/docker-compose.yml b/apps/jackett/docker-compose.yml index af3c8cc2..e93a3937 100644 --- a/apps/jackett/docker-compose.yml +++ b/apps/jackett/docker-compose.yml @@ -1,7 +1,7 @@ version: "3.7" services: jackett: - image: lscr.io/linuxserver/jackett:0.20.4013 + image: lscr.io/linuxserver/jackett:0.20.4119 container_name: jackett environment: - PUID=1000 diff --git a/apps/librephotos/config.json b/apps/librephotos/config.json index 14daf92f..22d60e47 100644 --- a/apps/librephotos/config.json +++ b/apps/librephotos/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "librephotos", - "tipi_version": 5, - "version": "2023w12", + "tipi_version": 6, + "version": "2023w18", "supported_architectures": ["amd64", "arm64"], "categories": ["photography"], "description": "Complete photo management service", diff --git a/apps/librephotos/docker-compose.yml b/apps/librephotos/docker-compose.yml index 57d40e93..483a5376 100644 --- a/apps/librephotos/docker-compose.yml +++ b/apps/librephotos/docker-compose.yml @@ -1,7 +1,7 @@ version: '3.7' services: librephotos: - image: reallibrephotos/librephotos-proxy:2023w12 + image: reallibrephotos/librephotos-proxy:2023w18 container_name: librephotos restart: unless-stopped volumes: @@ -43,7 +43,7 @@ services: - tipi_main_network librephotos-frontend: - image: reallibrephotos/librephotos-frontend:2023w12 + image: reallibrephotos/librephotos-frontend:2023w18 container_name: librephotos-frontend restart: unless-stopped depends_on: @@ -52,7 +52,7 @@ services: - tipi_main_network librephotos-backend: - image: reallibrephotos/librephotos:2023w12 + image: reallibrephotos/librephotos:2023w18 container_name: librephotos-backend restart: unless-stopped volumes: @@ -76,6 +76,7 @@ services: - REDIS_PORT=6379 - ALLOW_UPLOAD=true - DEBUG=0 + - CSRF_TRUSTED_ORIGINS=${APP_PROTOCOL:-http}://${APP_DOMAIN},http://${INTERNAL_IP}:${APP_PORT} # Wait for Postgres depends_on: librephotos-db: diff --git a/apps/movary/config.json b/apps/movary/config.json index 06399393..8cbd77f7 100644 --- a/apps/movary/config.json +++ b/apps/movary/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "movary", - "tipi_version": 3, - "version": "0.50.0", + "tipi_version": 4, + "version": "0.51.0", "categories": [ "media" ], diff --git a/apps/movary/docker-compose.yml b/apps/movary/docker-compose.yml index e415d2b7..bc176df3 100644 --- a/apps/movary/docker-compose.yml +++ b/apps/movary/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: movary: - image: leepeuker/movary:0.50.0 + image: leepeuker/movary:0.51.0 container_name: movary environment: - TMDB_API_KEY=${MOVARY_TMDB_API_KEY} diff --git a/apps/onedev/config.json b/apps/onedev/config.json index 98458ce5..dc9d2538 100644 --- a/apps/onedev/config.json +++ b/apps/onedev/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "onedev", - "tipi_version": 6, - "version": "8.1.3", + "tipi_version": 10, + "version": "8.2.0", "categories": [ "development" ], diff --git a/apps/onedev/docker-compose.yml b/apps/onedev/docker-compose.yml index b527cfc2..b4f0ba6a 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:8.1.3 + image: 1dev/server:8.2.0 container_name: onedev environment: - hibernate_dialect=io.onedev.server.persistence.PostgreSQLDialect diff --git a/apps/plausible/config.json b/apps/plausible/config.json new file mode 100644 index 00000000..afbc7968 --- /dev/null +++ b/apps/plausible/config.json @@ -0,0 +1,37 @@ +{ + "$schema": "../schema.json", + "name": "Plausible", + "port": 8190, + "available": true, + "exposable": true, + "id": "plausible", + "tipi_version": 1, + "version": "v1.5.1", + "categories": ["utilities"], + "description": "Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics.", + "short_desc": "Simple, open-source, lightweight (< 1 KB) and privacy-friendly web analytics alternative to Google Analytics.", + "author": "Plausible", + "source": "https://github.com/plausible/analytics", + "form_fields": [ + { + "type": "random", + "label": "Plausible Secret Key", + "min": 64, + "env_variable": "PLAUSIBLE_SECRET_KEY_BASE" + }, + { + "type": "random", + "label": "Plausible DB Key", + "min": 32, + "env_variable": "PLAUSIBLE_DB_PASSWORD" + }, + { + "type": "boolean", + "label": "Disable User Registration", + "hint": "Check to enable Registration", + "default": "true", + "required": true, + "env_variable": "PLAUSIBLE_DISABLE_REGISTRATION" + } + ] +} diff --git a/apps/plausible/data/clickhouse/clickhouse-config.xml b/apps/plausible/data/clickhouse/clickhouse-config.xml new file mode 100644 index 00000000..dc1e36b7 --- /dev/null +++ b/apps/plausible/data/clickhouse/clickhouse-config.xml @@ -0,0 +1,16 @@ + + + warning + true + + + + + + + + + + + + \ No newline at end of file diff --git a/apps/plausible/data/clickhouse/clickhouse-user-config.xml b/apps/plausible/data/clickhouse/clickhouse-user-config.xml new file mode 100644 index 00000000..ae6a6b94 --- /dev/null +++ b/apps/plausible/data/clickhouse/clickhouse-user-config.xml @@ -0,0 +1,8 @@ + + + + 0 + 0 + + + \ No newline at end of file diff --git a/apps/plausible/docker-compose.yml b/apps/plausible/docker-compose.yml new file mode 100644 index 00000000..b566b5ba --- /dev/null +++ b/apps/plausible/docker-compose.yml @@ -0,0 +1,56 @@ +version: "3.7" +services: + plausible-db: + # supported versions are 12, 13, and 14 + image: postgres:14-alpine + container_name: plausible-db + restart: always + networks: + - tipi_main_network + volumes: + - ${APP_DATA_DIR}/data/database/:/var/lib/postgresql/data + environment: + - POSTGRES_PASSWORD=${PLAUSIBLE_DB_PASSWORD} + - POSTGRES_USER=tipi + - POSTGRES_DB=plausible-db + + plausible-events-db: + container_name: plausible-events-db + image: clickhouse/clickhouse-server:22.6-alpine + restart: always + networks: + - tipi_main_network + volumes: + - ${APP_DATA_DIR}/data/plausible-event-data:/var/lib/clickhouse + - ${APP_DATA_DIR}/data/clickhouse/clickhouse-config.xml:/etc/clickhouse-server/config.d/logging.xml:ro + - ${APP_DATA_DIR}/data/clickhouse/clickhouse-user-config.xml:/etc/clickhouse-server/users.d/logging.xml:ro + ulimits: + nofile: + soft: 262144 + hard: 262144 + + plausible: + container_name: plausible + image: plausible/analytics:v1.5.1 + restart: always + command: sh -c "sleep 10 && /entrypoint.sh db createdb && /entrypoint.sh db migrate && /entrypoint.sh db init-admin && /entrypoint.sh run" + depends_on: + - plausible-db + - plausible-events-db + ports: + - ${APP_PORT}:8000 + environment: + - BASE_URL=${APP_PROTOCOL:-http}://${APP_DOMAIN} + - SECRET_KEY_BASE=${PLAUSIBLE_SECRET_KEY_BASE} + - DATABASE_URL=postgres://tipi:${PLAUSIBLE_DB_PASSWORD}@plausible-db:5432/plausible-db + - CLICKHOUSE_DATABASE_URL=http://plausible-events-db:8123/plausible_events_db + - DISABLE_REGISTRATION=${PLAUSIBLE_DISABLE_REGISTRATION} + networks: + - tipi_main_network + labels: + traefik.enable: ${APP_EXPOSED} + traefik.http.routers.plausible.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.plausible.entrypoints: websecure + traefik.http.routers.plausible.service: plausible + traefik.http.routers.plausible.tls.certresolver: myresolver + traefik.http.services.plausible.loadbalancer.server.port: 8000 diff --git a/apps/plausible/metadata/description.md b/apps/plausible/metadata/description.md new file mode 100644 index 00000000..3e243be7 --- /dev/null +++ b/apps/plausible/metadata/description.md @@ -0,0 +1,25 @@ +[![Plausible Analytics](https://raw.githubusercontent.com/plausible/docs/master/static/img/plausible-analytics-icon-top.png)](https://plausible.io/) + +[Simple Metrics](https://plausible.io/simple-web-analytics) | [Lightweight Script](https://plausible.io/lightweight-web-analytics) | [Privacy Focused](https://plausible.io/privacy-focused-web-analytics) | [Open Source](https://plausible.io/open-source-website-analytics) | [Docs](https://plausible.io/docs) | [Contributing](https://github.com/plausible/analytics/blob/master/CONTRIBUTING.md) + + +[Plausible Analytics](https://plausible.io/) is a simple, lightweight (< 1 KB), open source and privacy-friendly alternative to Google Analytics. It doesn’t use cookies and is fully compliant with GDPR, CCPA and PECR. You can self-host or have us run Plausible for you in the cloud. Here's [the live demo of our own website stats](https://plausible.io/plausible.io). Made and hosted in the EU 🇪🇺 + +We are dedicated to making web analytics more privacy-friendly. Our mission is to reduce corporate surveillance by providing an alternative web analytics tool which doesn’t come from the AdTech world. We are completely independent and solely funded by our subscribers. + +[![Plausible Analytics](https://camo.githubusercontent.com/74a68bf1e55052517b1eab2e7ec8fb12a2f065e5cd6f12dd2a5002f6dcdc0d82/68747470733a2f2f706c61757369626c652e696f2f646f63732f696d672f706c61757369626c652d616e616c79746963732e706e67)](https://camo.githubusercontent.com/74a68bf1e55052517b1eab2e7ec8fb12a2f065e5cd6f12dd2a5002f6dcdc0d82/68747470733a2f2f706c61757369626c652e696f2f646f63732f696d672f706c61757369626c652d616e616c79746963732e706e67) + +## Why Plausible? + +Here's what makes Plausible a great Google Analytics alternative and why we're trusted by thousands of paying subscribers to deliver their website and business insights: + +- **Clutter Free**: Plausible Analytics provides [simple web analytics](https://plausible.io/simple-web-analytics) and it cuts through the noise. No layers of menus, no need for custom reports. Get all the important insights on one single page. No training necessary. +- **GDPR/CCPA/PECR compliant**: Measure traffic, not individuals. No personal data or IP addresses are ever stored in our database. We don't use cookies or any other persistent identifiers. [Read more about our data policy](https://plausible.io/data-policy) +- **Lightweight**: Plausible Analytics works by loading a script on your website, like Google Analytics. Our script is [45x smaller](https://plausible.io/lightweight-web-analytics), making your website quicker to load. +- **Email or Slack reports**: Keep an eye on your traffic with weekly and/or monthly email or Slack reports. You can also get traffic spike notifications. +- **Open website stats**: You have the option to be transparent and open your web analytics to everyone. Your website stats are private by default but you can choose to make them public so anyone with your custom link can view them. +- **Define key goals and track conversions**: Set custom events or page URLs as your goals and see how they convert over time to understand and identify the trends that matter. Includes easy ways to track outbound link clicks and 404 error pages. +- **Search keywords**: Integrate your dashboard with Google Search Console to get the most accurate reporting on your search keywords. +- **SPA support**: Plausible is built with modern web frameworks in mind and it works automatically with any pushState based router on the frontend. We also support frameworks that use the URL hash for routing. See [our documentation](https://plausible.io/docs/hash-based-routing). + +Interested to learn more? [Read more on our website](https://plausible.io), learn more about the team and the goals of the project on [our about page](https://plausible.io/about) or explore [the documentation](https://plausible.io/docs). \ No newline at end of file diff --git a/apps/plausible/metadata/logo.jpg b/apps/plausible/metadata/logo.jpg new file mode 100644 index 00000000..27bf655b Binary files /dev/null and b/apps/plausible/metadata/logo.jpg differ diff --git a/apps/portainer/config.json b/apps/portainer/config.json index 846c7f09..1581570c 100644 --- a/apps/portainer/config.json +++ b/apps/portainer/config.json @@ -6,8 +6,8 @@ "exposable": true, "https": true, "id": "portainer", - "tipi_version": 8, - "version": "2.18.1-alpine", + "tipi_version": 9, + "version": "2.18.2-alpine", "categories": [ "utilities" ], diff --git a/apps/portainer/docker-compose.yml b/apps/portainer/docker-compose.yml index 710f1a5a..b96b94a7 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.18.1-alpine + image: portainer/portainer-ce:2.18.2-alpine container_name: portainer restart: unless-stopped ports: diff --git a/apps/romm/config.json b/apps/romm/config.json index 034f6910..c7604ec9 100644 --- a/apps/romm/config.json +++ b/apps/romm/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "romm", - "tipi_version": 3, - "version": "1.7.1", + "tipi_version": 4, + "version": "1.8.1", "categories": [ "gaming" ], diff --git a/apps/romm/docker-compose.yml b/apps/romm/docker-compose.yml index 6a8bc248..486230f0 100644 --- a/apps/romm/docker-compose.yml +++ b/apps/romm/docker-compose.yml @@ -2,7 +2,7 @@ version: "3" services: romm: - image: zurdi15/romm:1.7.1 + image: zurdi15/romm:1.8.1 container_name: romm environment: - ROMM_DB_DRIVER=mariadb diff --git a/apps/rss/config.json b/apps/rss/config.json index cfc13d7c..b369a2c3 100644 --- a/apps/rss/config.json +++ b/apps/rss/config.json @@ -5,9 +5,12 @@ "available": true, "exposable": true, "id": "rss", - "tipi_version": 1, - "version": "v1.2.0", - "categories": ["utilities", "media"], + "tipi_version": 2, + "version": "1.3.0", + "categories": [ + "utilities", + "media" + ], "description": "A simple twitter-feed-style RSS aggregator written in PHP, Laravel, Inertia.js, Tailwind and Vue.js", "short_desc": "A simple, opinionated, RSS feed aggregator.", "author": "https://github.com/ssddanbrown", diff --git a/apps/rss/docker-compose.yml b/apps/rss/docker-compose.yml index 8b293f46..769a140e 100644 --- a/apps/rss/docker-compose.yml +++ b/apps/rss/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.7' services: rss: - image: ghcr.io/ssddanbrown/rss:v1.2.0 + image: ghcr.io/ssddanbrown/rss:v1.3.0 container_name: rss environment: - APP_NAME=Tipi-RSS diff --git a/apps/sabnzbd/config.json b/apps/sabnzbd/config.json index 3586a30e..c48cd53f 100644 --- a/apps/sabnzbd/config.json +++ b/apps/sabnzbd/config.json @@ -5,8 +5,8 @@ "available": true, "exposable": true, "id": "sabnzbd", - "tipi_version": 3, - "version": "4.0.0", + "tipi_version": 4, + "version": "4.0.1", "categories": [ "media", "utilities" diff --git a/apps/sabnzbd/docker-compose.yml b/apps/sabnzbd/docker-compose.yml index ee1704fb..27118788 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.0.0 + image: lscr.io/linuxserver/sabnzbd:4.0.1 container_name: sabnzbd ports: - ${APP_PORT}:8080 diff --git a/apps/tailscale/config.json b/apps/tailscale/config.json index d8204661..9a52ad75 100644 --- a/apps/tailscale/config.json +++ b/apps/tailscale/config.json @@ -4,8 +4,8 @@ "available": true, "port": 8093, "id": "tailscale", - "tipi_version": 6, - "version": "1.38.4", + "tipi_version": 7, + "version": "1.40.0", "categories": [ "network", "security" diff --git a/apps/tailscale/docker-compose.yml b/apps/tailscale/docker-compose.yml index 5005ab96..276a8625 100644 --- a/apps/tailscale/docker-compose.yml +++ b/apps/tailscale/docker-compose.yml @@ -4,7 +4,7 @@ services: tailscale: container_name: tailscale network_mode: "host" # TODO: Find a way to remove this - image: tailscale/tailscale:v1.38.4 + image: tailscale/tailscale:v1.40.0 privileged: true restart: on-failure stop_grace_period: 1m diff --git a/apps/vikunja/metadata/description.md b/apps/vikunja/metadata/description.md index b95959e8..a9d3a419 100644 --- a/apps/vikunja/metadata/description.md +++ b/apps/vikunja/metadata/description.md @@ -6,6 +6,6 @@ - Share lists and namespaces with teams and users with granular permissions - Plenty of details for tasks -See the [features page](https://vikunja.cloud/features) on our website for a more exaustive list or try it on [try.vikunja.io](try.vikunja.io)! +See the [features page](https://vikunja.cloud/features) on our website for a more exaustive list or try it on [try.vikunja.io](https://try.vikunja.io)! ![](https://vikunja.io/images/vikunja/09-task-detail-dark.png) diff --git a/renovate.js b/renovate.js new file mode 100644 index 00000000..4b7c51f6 --- /dev/null +++ b/renovate.js @@ -0,0 +1,29 @@ +module.exports = { + extends: ["config:base"], + onboarding: false, + requireConfig: false, + gitIgnoredAuthors: ["githubaction@githubaction.com"], + dependencyDashboard: true, + enabledManagers: ["docker-compose", "dockerfile"], + hostRules: [ + { + matchHost: "index.docker.io", + hostType: "docker", + username: process.env.DOCKERHUB_USERNAME, + password: process.env.DOCKERHUB_TOKEN, + }, + { + matchHost: "docker.io", + concurrentRequestLimit: 2, + }, + ], + packageRules: [ + { + managers: ["docker-compose", "dockerfile"], + packagePatterns: [ + "^([^\\/]+\\/)?(mysql|mariadb|mongodb|mongo|postgres|redis)(:|$)", + ], + enabled: false, + }, + ], +}; diff --git a/renovate.json b/renovate.json index 787c470c..c753344e 100644 --- a/renovate.json +++ b/renovate.json @@ -1,18 +1,29 @@ { - "$schema": "https://docs.renovatebot.com/renovate-schema.json", - "extends": [ - "config:base" - ], - "gitIgnoredAuthors": [ - "githubaction@githubaction.com" - ], - "dependencyDashboard": true, - "enabledManagers": ["docker-compose", "dockerfile"], - "packageRules": [ - { - "managers": ["docker-compose", "dockerfile"], - "packagePatterns": ["^([^\\/]+\\/)?(mysql|mariadb|mongodb|mongo|postgres|redis)(:|$)"], - "enabled": false - } - ] + "$schema": "https://docs.renovatebot.com/renovate-schema.json", + "extends": [ + "config:base" + ], + "gitIgnoredAuthors": [ + "githubaction@githubaction.com" + ], + "dependencyDashboard": true, + "enabledManagers": ["docker-compose", "dockerfile"], + "hostRules": [{ + "matchHost": "index.docker.io", + "hostType": "docker", + "username": "jphj", + "encrypted": { + "password": "wcFMA/xDdHCJBTolAQ/9GRBMmOIIYT7vGWpjMD4UJN1zHR8O4xrmbwDFl/VXO26SoYcv34QpJsNr748f2zPVwQ77+Z22Tv9QMY1aA0sgT3t69NN1KVt9ErWa6Hctm5fFxhichrvgfb7mmjDcHr2mG2YGGHF5btZHlfxZXdEeLyBLwVXuS4tOb+9JAlyi6zvpdSqdSviPYFv2HSccMyuQxGHoQ02JT8v65K86E6BtvxCPVovs6RsBOF5SIZ4QHU4gaa0X2pDHefM61/b41QJLRNVNbR6NjROOG8Tt5JSgFxwvmO2HzT2LHzHlIXm936ElHRHkM7kaE3GMbT1tpLl2yGmQPDNHsUyAs9B8E86/I6Jatadq40jwLUWeCy2FAx4XwrBMFSNp9D+DmdFk6PcOUT4Wjyxg1gUWY67DTd6anWjivmbkDmlBqIpbIiJMIel4JlquQF1wnfqf46BKVOFSlBxIb8YZGpB2U0PdM8i4we6nInK4bwK/Ib2Ux4O+GLCEsoUHqD0gUff2+7rdE8Yi4ctui1RWRInE3WA9ix9CawZcVJImcQxKJzNRk1ZzoCe30+uN69o4bFGa/6kRFO6yAmPaOwp781CWX42fZQGZhp8gQzhRUjeDW2Wr2ygJclo9vzJ0eQPh0amdOXL1FazIa6jCtMY6VGMlfwG6Ip9t+NEBcb73GraOboPQMxXUxcTShgGiV+YzkBuH7tKGTSOhbAwhlV3OJs3PFAlvrJ4Vx40LNEinMsSAcVNxoDERi3E1JnjGNe1JlCHqLZEkNhwr9dDrr2OwSuC3RNm3r+hyl0twh97MHQonF/T6jX57aEHojASpml8rapCYUn/CUtXJRdA8zp9eV7P8BN8VpTWLgizd+fJ+Vylj" + } + }, + { + "matchHost": "docker.io", + "concurrentRequestLimit": 2 + } + ], + "packageRules": [{ + "managers": ["docker-compose", "dockerfile"], + "packagePatterns": ["^([^\\/]+\\/)?(mysql|mariadb|mongodb|mongo|postgres|redis|clickhouse-server|clickhouse)(:|$)"], + "enabled": false + }] }