1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/microbin_ynh.git synced 2024-09-03 19:45:57 +02:00

Merge pull request #4 from YunoHost-Apps/testing

Testing
This commit is contained in:
eric_G 2024-06-17 08:32:21 +02:00 committed by GitHub
commit a916e705f7
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
12 changed files with 363 additions and 37 deletions

View file

@ -1,6 +1,8 @@
# All available README files by language
- [Read the README in English](README.md)
- [Lea el README en español](README_es.md)
- [Irakurri README euskaraz](README_eu.md)
- [Lire le README en français](README_fr.md)
- [Le o README en galego](README_gl.md)
- [阅读中文(简体)的 README](README_zh_Hans.md)

View file

@ -18,7 +18,7 @@ It shall NOT be edited by hand.
MicroBin is a super tiny, feature rich, configurable, self-contained and self-hosted paste bin web application. It is very easy to set up and use, and will only require a few megabytes of memory and disk storage.
**Shipped version:** 2.0.4~ynh1
**Shipped version:** 2.0.4~ynh2
**Demo:** <https://pub.microbin.eu/>

48
README_es.md Normal file
View file

@ -0,0 +1,48 @@
<!--
Este archivo README esta generado automaticamente<https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
No se debe editar a mano.
-->
# MicroBin para Yunohost
[![Nivel de integración](https://dash.yunohost.org/integration/microbin.svg)](https://dash.yunohost.org/appci/app/microbin) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/microbin.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/microbin.maintain.svg)
[![Instalar MicroBin con Yunhost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=microbin)
*[Leer este README en otros idiomas.](./ALL_README.md)*
> *Este paquete le permite instalarMicroBin rapidamente y simplement en un servidor YunoHost.*
> *Si no tiene YunoHost, visita [the guide](https://yunohost.org/install) para aprender como instalarla.*
## Descripción general
MicroBin is a super tiny, feature rich, configurable, self-contained and self-hosted paste bin web application. It is very easy to set up and use, and will only require a few megabytes of memory and disk storage.
**Versión actual:** 2.0.4~ynh2
**Demo:** <https://pub.microbin.eu/>
## Capturas
![Captura de MicroBin](./doc/screenshots/screenshot7.png)
## Documentaciones y recursos
- Sitio web oficial: <https://microbin.eu/>
- Repositorio del código fuente oficial de la aplicación : <https://github.com/szabodanika/microbin>
- Catálogo YunoHost: <https://apps.yunohost.org/app/microbin>
- Reportar un error: <https://github.com/YunoHost-Apps/microbin_ynh/issues>
## Información para desarrolladores
Por favor enviar sus correcciones a la [`branch testing`](https://github.com/YunoHost-Apps/microbin_ynh/tree/testing
Para probar la rama `testing`, sigue asÍ:
```bash
sudo yunohost app install https://github.com/YunoHost-Apps/microbin_ynh/tree/testing --debug
o
sudo yunohost app upgrade microbin -u https://github.com/YunoHost-Apps/microbin_ynh/tree/testing --debug
```
**Mas informaciones sobre el empaquetado de aplicaciones:** <https://yunohost.org/packaging_apps>

View file

@ -18,7 +18,7 @@ EZ editatu eskuz.
MicroBin is a super tiny, feature rich, configurable, self-contained and self-hosted paste bin web application. It is very easy to set up and use, and will only require a few megabytes of memory and disk storage.
**Paketatutako bertsioa:** 2.0.4~ynh1
**Paketatutako bertsioa:** 2.0.4~ynh2
**Demoa:** <https://pub.microbin.eu/>

View file

@ -18,7 +18,7 @@ Il NE doit PAS être modifié à la main.
MicroBin est une application Web riche en fonctionnalités, configurable, autonome et auto-hébergée. Elle est très simple à configurer et à utiliser et ne nécessitera que quelques mégaoctets de mémoire et de stockage sur disque.
**Version incluse:** 2.0.4~ynh1
**Version incluse:** 2.0.4~ynh2
**Démo:** <https://pub.microbin.eu/>

View file

@ -18,7 +18,7 @@ NON debe editarse manualmente.
MicroBin is a super tiny, feature rich, configurable, self-contained and self-hosted paste bin web application. It is very easy to set up and use, and will only require a few megabytes of memory and disk storage.
**Versión proporcionada:** 2.0.4~ynh1
**Versión proporcionada:** 2.0.4~ynh2
**Demo:** <https://pub.microbin.eu/>

48
README_zh_Hans.md Normal file
View file

@ -0,0 +1,48 @@
<!--
注意:此 README 由 <https://github.com/YunoHost/apps/tree/master/tools/readme_generator> 自动生成
请勿手动编辑。
-->
# YunoHost 上的 MicroBin
[![集成程度](https://dash.yunohost.org/integration/microbin.svg)](https://dash.yunohost.org/appci/app/microbin) ![工作状态](https://ci-apps.yunohost.org/ci/badges/microbin.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/microbin.maintain.svg)
[![使用 YunoHost 安装 MicroBin](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=microbin)
*[阅读此 README 的其它语言版本。](./ALL_README.md)*
> *通过此软件包,您可以在 YunoHost 服务器上快速、简单地安装 MicroBin。*
> *如果您还没有 YunoHost请参阅[指南](https://yunohost.org/install)了解如何安装它。*
## 概况
MicroBin is a super tiny, feature rich, configurable, self-contained and self-hosted paste bin web application. It is very easy to set up and use, and will only require a few megabytes of memory and disk storage.
**分发版本:** 2.0.4~ynh2
**演示:** <https://pub.microbin.eu/>
## 截图
![MicroBin 的截图](./doc/screenshots/screenshot7.png)
## 文档与资源
- 官方应用网站: <https://microbin.eu/>
- 上游应用代码库: <https://github.com/szabodanika/microbin>
- YunoHost 商店: <https://apps.yunohost.org/app/microbin>
- 报告 bug <https://github.com/YunoHost-Apps/microbin_ynh/issues>
## 开发者信息
请向 [`testing` 分支](https://github.com/YunoHost-Apps/microbin_ynh/tree/testing) 发送拉取请求。
如要尝试 `testing` 分支,请这样操作:
```bash
sudo yunohost app install https://github.com/YunoHost-Apps/microbin_ynh/tree/testing --debug
sudo yunohost app upgrade microbin -u https://github.com/YunoHost-Apps/microbin_ynh/tree/testing --debug
```
**有关应用打包的更多信息:** <https://yunohost.org/packaging_apps>

237
conf/.env Normal file
View file

@ -0,0 +1,237 @@
# Require username for HTTP Basic Authentication when
# visiting the service. If basic auth username is set but
# basic auth password is not, just leave the password field
# empty when logging in. You can also just go to
# https://username:password@yourserver.net or
# https://username@yourserver.net if password is not set
# instead of typing into the password
# Default value: unset
# MICROBIN_BASIC_AUTH_USERNAME=
# Require password for HTTP Basic Authentication when
# visiting the service. Will not have any affect unless
# basic auth username is also set. If basic auth username is
# set but basic auth password is not, just leave the
# password field empty when logging in. You can also just go
# to https://username:password@yourserver.net or
# https://username@yourserver.net if password is not set
# instead of typing into the password prompt.
# Default value: unset
# MICROBIN_BASIC_AUTH_PASSWORD=
# Enables administrator interface at yourserver.com/admin/
# if set, disables it if unset. If admin username is set but
# admin password is not, just leave the password field empty
# when logging in.
# Default value: admin
MICROBIN_ADMIN_USERNAME=__ADMIN__
# Enables administrator interface at yourserver.com/admin/
# if set, disables it if unset. Will not have any affect
# unless admin username is also set. If admin username is
# set but admin password is not, just leave the password
# field empty when logging in.
# Default value: m1cr0b1n
MICROBIN_ADMIN_PASSWORD=__PASSWORD__
# Enables editable pastas. You will still be able to make
# finalised pastas but there will be an extra checkbox to
# make your new pasta editable from the pasta list or the
# pasta view page.
# Default value: 8080
MICROBIN_EDITABLE=true
# Replaces the default footer text with your own. If you
# want to hide the footer, use the hide footer option instead.
# Note that you can also embed HTML here, so you may want to escape
# '<', '>' and so on.
# MICROBIN_FOOTER_TEXT=
# Hides the navigation bar on every page.
# Default value: false
MICROBIN_HIDE_HEADER=false
# Hides the footer on every page.
# Default value: false
MICROBIN_HIDE_FOOTER=false
# Hides the MicroBin logo from the navigation bar on every
# page.
# Default value: false
MICROBIN_HIDE_LOGO=false
# Disables the /pastalist endpoint, essentially making all
# pastas private.
# Default value: false
MICROBIN_NO_LISTING=false
# Enables syntax highlighting support. When creating a new
# pasta, a new dropdown selector will be added where you can
# select your pasta's syntax, or just leave it empty for no
# highlighting.
MICROBIN_HIGHLIGHTSYNTAX=true
# Sets the port for the server will be listening on.
# Default value: 8080
MICROBIN_PORT=__PORT__
# Sets the bind address for the server will be listening on.
# Both ipv4 and ipv6 are supported. Default value: "0.0.0.0".
# Example value: "myserver.net", "127.0.0.1".
MICROBIN_BIND="127.0.0.1"
# Enables private pastas. Adds a new checkbox to make your
# pasta private, which then won't show up on the pastalist
# page. With the URL to your pasta, it will still be
# accessible.
# Default value: false
MICROBIN_PRIVATE=true
# DEPRECATED: Will be removed soon. If you want to change styling (incl. removal), use custom CSS variable instead.
# Disables main CSS styling, just uses a few in-line
# stylings for the layout. With this option you will lose
# dark-mode support.
MICROBIN_PURE_HTML=false
# Sets the name of the directory where MicroBin creates
# its database and stores attachments.
# Default value: microbin_data
MICROBIN_DATA_DIR="__DATA_DIR__"
# Enables storing pasta data (not attachments and files) in
# a JSON file instead of the SQLite database.
# Default value: false
MICROBIN_JSON_DB=false
# Add the given public path prefix to all urls. This allows
# you to host MicroBin behind a reverse proxy on a subpath.
# Note that MicroBin itself still expects all routes to be
# as without this option, and thus is unsuited if you are
# running MicroBin directly. Default value: unset. Example
# values: https://myserver.com/ or https://192.168.0.10:8080/
MICROBIN_PUBLIC_PATH=https://__DOMAIN__/
# Sets a shortened path to use when the user copies URL from
# the application. This will also use shorter endpoints,
# such as /p/ instead if /pasta/. Default value:
# unset.Example value: https://b.in/ export
# MICROBIN_SHORT_PATH=
# The password required for uploading, if read-only mode is enabled
# Default value: unset
# MICROBIN_UPLOADER_PASSWORD=
# If set to true, authentication required for uploading
# Default value: false
MICROBIN_READONLY=true
# Enables showing read count on pasta pages.
# Default value: false
MICROBIN_SHOW_READ_STATS=true
# Adds your title of choice to the
# navigation bar.
# Default value: unset
# MICROBIN_TITLE=
# Number of workers MicroBin is allowed to have. Increase
# this to the number of CPU cores you have if you want to go
# beast mode, but for personal use one worker is enough.
# Default value: 1.
MICROBIN_THREADS=1
# Sets the garbage collector time limit. Pastas not accessed
# for N days are removed even if they are set to never
# expire.
# Default value: 90.
# To turn off GC: 0.
MICROBIN_GC_DAYS=90
# Enables or disables the "Burn after" function
# Default value: false
MICROBIN_ENABLE_BURN_AFTER=true
# Sets the default burn after setting on the main screen.
# Default value: 0. Available expiration options: 1, 10,
# 100, 1000, 10000, 0 (= no limit)
MICROBIN_DEFAULT_BURN_AFTER=0
# Changes the maximum width of the UI from 720 pixels to
# 1080 pixels.
# Default value: false
MICROBIN_WIDE=false
# Enables generating QR codes for pastas. Requires
# the public path to also be set.
# Default value: false
MICROBIN_QR=true
# Toggles "Never" expiry settings for pastas. Default
# value: false
MICROBIN_ETERNAL_PASTA=false
# Enables "Read-only" uploads. These are unlisted and
# unencrypted, but can be viewed without password if you
# have the URL. Editing and removing requires password.
# Default value: true
MICROBIN_ENABLE_READONLY=true
# Sets the default expiry time setting on the main screen.
# Default value: 24hour Available expiration options: 1min,
# 10min, 1hour, 24hour, 1week, never
MICROBIN_DEFAULT_EXPIRY=24hour
# Disables and hides the file upload option in the UI.
# Default value: false
MICROBIN_NO_FILE_UPLOAD=false
# Replaced the built-in water.css stylesheet with the URL
# you provide. Default value: unset. Example value:
# https://myserver.net/public/mystyle.css
# MICROBIN_CUSTOM_CSS=
# Use short hash strings in the URLs instead of animal names
# to make URLs shorter. Does not change the underlying data
# stored, just how pastas are recalled.
# Default value: false
MICROBIN_HASH_IDS=false
# Enables server-side encryption. This will add private
# privacy level, where the user sends plain unencrypted data
# (still secure, because you use HTTPS, right?), but the
# server sees everything that the user submits, therefore
# the user does not have complete and absolute protection.
# Default value: false
MICROBIN_ENCRYPTION_CLIENT_SIDE=true
# Enables client-side encryption. This will add the secret
# privacy level where the user's browser encrypts all data
# with JavaScript before sending it over to MicroBin, which
# encrypt the data once again on server side.
# Default value: false
MICROBIN_ENCRYPTION_SERVER_SIDE=true
# Limit the maximum file size users can upload without
# encryption. Default value: 256.
MICROBIN_MAX_FILE_SIZE_ENCRYPTED_MB=256
# Limit the maximum file size users can upload with
# encryption (more strain on your server than without
# encryption, so the limit should be lower. Secrets tend to
# be tiny files usually anyways.) Default value: 2048.
MICROBIN_MAX_FILE_SIZE_UNENCRYPTED_MB=2048
# Disables the feature that checks for available updates
# when opening the admin screen.
# Default value: false
MICROBIN_DISABLE_UPDATE_CHECKING=false
# Disables telemetry if set to true.
# Telemetry includes your configuration and helps development.
# It does not include any sensitive data.
# Default value: false
MICROBIN_DISABLE_TELEMETRY=true
# Enables listing your server in the public MicroBin server list.
# Default value: false
MICROBIN_LIST_SERVER=false

View file

@ -6,38 +6,7 @@ After=network.target
Type=simple
User=__APP__
Group=__APP__
Environment="MICROBIN_ADMIN_USERNAME=__ADMIN__"
Environment="MICROBIN_ADMIN_PASSWORD=__PASSWORD__"
Environment="MICROBIN_PORT=__PORT__"
Environment="MICROBIN_BIND=127.0.0.1"
# Environment="MICROBIN_PUBLIC_PATH=https://__DOMAIN__"
# Environment="MICROBIN_SHORT_PATH=https://short.net"
Environment="MICROBIN_DATA_DIR=__DATA_DIR__
Environment="MICROBIN_JSON_DB=false"
Environment="MICROBIN_EDITABLE=true"
Environment="MICROBIN_HIDE_HEADER=false"
Environment="MICROBIN_HIDE_FOOTER=true"
Environment="MICROBIN_HIDE_LOGO=false"
Environment="MICROBIN_NO_LISTING=false"
Environment="MICROBIN_READONLY=false"
Environment="MICROBIN_SHOW_READ_STATS=true"
Environment="MICROBIN_THREADS=1"
Environment="MICROBIN_GC_DAYS=90"
Environment="MICROBIN_WIDE=false"
Environment="MICROBIN_ETERNAL_PASTA=false"
Environment="MICROBIN_PRIVATE=true"
Environment="MICROBIN_HIGHLIGHTSYNTAX=true"
Environment="MICROBIN_QR=true"
Environment="MICROBIN_ENABLE_BURN_AFTER=true"
Environment="MICROBIN_ENABLE_READONLY=true"
Environment="MICROBIN_DEFAULT_EXPIRY=24hour"
Environment="MICROBIN_NO_FILE_UPLOAD=false"
Environment="MICROBIN_HASH_IDS=false"
Environment="MICROBIN_ENCRYPTION_CLIENT_SIDE=true"
Environment="MICROBIN_ENCRYPTION_SERVER_SIDE=true"
Environment="MICROBIN_MAX_FILE_SIZE_ENCRYPTED_MB=256"
Environment="MICROBIN_MAX_FILE_SIZE_UNENCRYPTED_MB=2048"
Environment="MICROBIN_DISABLE_TELEMETRY=true"
EnvironmentFile=__INSTALL_DIR__/.env
WorkingDirectory=__INSTALL_DIR__/
ExecStart=__INSTALL_DIR__/microbin

View file

@ -7,7 +7,7 @@ name = "MicroBin"
description.en = "Configurable file-sharing and URL shortening web app"
description.fr = "Application Web sécurisée et configurable de partage de fichiers et de raccourcissement d'URL"
version = "2.0.4~ynh1"
version = "2.0.4~ynh2"
maintainers = ["eric_G"]
@ -56,6 +56,8 @@ ram.runtime = "50M"
url = "https://github.com/szabodanika/microbin/releases/download/v2.0.4/microbin-v2.0.4-x86_64-unknown-linux-musl.tar.gz"
sha256 = "ccfc69c5ab33cc79c56da0cea55e68a5b93f19fd68ac028a00e9d09bcf5575b6"
autoupdate.strategy = "latest_github_tag"
[resources.system_user]
[resources.install_dir]

View file

@ -24,6 +24,16 @@ ynh_setup_source --dest_dir="$install_dir"
chown -R "$app:www-data" "$install_dir"
chmod +x "$install_dir/microbin"
#=================================================
# APP INITIAL CONFIGURATION
#=================================================
ynh_script_progression --message="Adding $app's configuration files..." --weight=1
ynh_add_config --template=".env" --destination="$install_dir/.env"
chmod 400 "$install_dir/.env"
chown "$app:$app" "$install_dir/.env"
#=================================================
# SYSTEM CONFIGURATION
#=================================================

View file

@ -25,6 +25,16 @@ ynh_setup_source --dest_dir="$install_dir"
chown -R "$app:www-data" "$install_dir"
chmod +x "$install_dir/microbin"
#=================================================
# UPDATE A CONFIG FILE
#=================================================
ynh_script_progression --message="Updating $app's configuration files..." --weight=1
ynh_add_config --template=".env" --destination="$install_dir/.env"
chmod 400 "$install_dir/.env"
chown "$app:$app" "$install_dir/.env"
#=================================================
# REAPPLY SYSTEM CONFIGURATIONS
#=================================================