1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/biboumi_ynh.git synced 2024-09-03 18:15:58 +02:00
* Update manifest.json

* Auto-update README

* Update manifest.json

* Add metronome explicitly as dependency

* Auto-update README

* Auto-update README

* Update manifest.json

* Auto-update README

* Version 2 (#22)

* v2

* Auto-update README

* v2

* Create tests.toml

* Auto-update README

---------

Co-authored-by: yunohost-bot <yunohost@yunohost.org>

* Auto-update README

---------

Co-authored-by: yunohost-bot <yunohost@yunohost.org>
Co-authored-by: Alexandre Aubin <alex.aubin@mailoo.org>
This commit is contained in:
Éric Gaspar 2023-07-29 12:24:09 +01:00 committed by GitHub
parent 033a3f5ff1
commit 9739541a05
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
14 changed files with 54 additions and 242 deletions

View file

@ -19,19 +19,6 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in
XMPP gateway for the IRC network XMPP gateway for the IRC network
**Shipped version:** 8.3~ynh2 **Shipped version:** 8.3~ynh2
## Disclaimers / important information
Once biboumi_ynh is installed you can use any XMPP client software to join IRC channels. Any IRC channel is seen as a standard XMPP chatroom (aka MUC) with a special name.
The the name is formatted like this: `#channelname%ircservername@biboumi.yourdomain.tld`.
For example, if you have a YunoHost server hosting domain *example.net* and you want to join the channel *#yunohost* on *irc.freenode.net* you simply need to join the MUC `#yunohost%irc.freenode.net@biboumi.example.net`.
* Any known limitations, constrains or stuff not working, such as (but not limited to):
* Currently, Biboumi is only tested with one domain and it must be the main domain of your YunoHost server.
* Other infos that people should be aware of, such as:
* You can configure Biboumi with the file `/etc/biboumi/biboumi.cfg`.
## Documentation and resources ## Documentation and resources
* Official app website: <https://biboumi.louiz.org/> * Official app website: <https://biboumi.louiz.org/>

View file

@ -16,22 +16,9 @@ Si vous navez pas YunoHost, regardez [ici](https://yunohost.org/#/install) po
## Vue densemble ## Vue densemble
Passerelle XMPP pour le réseau IRC XMPP gateway for the IRC network
**Version incluse :** 8.3~ynh2 **Version incluse :** 8.3~ynh2
## Avertissements / informations importantes
Once biboumi_ynh is installed you can use any XMPP client software to join IRC channels. Any IRC channel is seen as a standard XMPP chatroom (aka MUC) with a special name.
The the name is formatted like this: `#channelname%ircservername@biboumi.yourdomain.tld`.
For example, if you have a YunoHost server hosting domain *example.net* and you want to join the channel *#yunohost* on *irc.freenode.net* you simply need to join the MUC `#yunohost%irc.freenode.net@biboumi.example.net`.
* Any known limitations, constrains or stuff not working, such as (but not limited to):
* Currently, Biboumi is only tested with one domain and it must be the main domain of your YunoHost server.
* Other infos that people should be aware of, such as:
* You can configure Biboumi with the file `/etc/biboumi/biboumi.cfg`.
## Documentations et ressources ## Documentations et ressources
* Site officiel de lapp : <https://biboumi.louiz.org/> * Site officiel de lapp : <https://biboumi.louiz.org/>

View file

@ -1,24 +0,0 @@
;; Test complet
; Manifest
domain="domain.tld"
admin="john"
; Checks
pkg_linter=1
setup_sub_dir=0
setup_root=0
setup_nourl=1
setup_private=0
setup_public=0
upgrade=1
# 8.3~ynh1
upgrade=1 from_commit=6596c7e12e17a2b9149b20739e916184e71fdfbd
backup_restore=1
multi_instance=0
port_already_use=1 (113)
change_url=0
;;; Options
Email=pitchum@gramaton.org
Notification=none
;;; Upgrade options
; commit=6596c7e12e17a2b9149b20739e916184e71fdfbd
name=8.3~ynh1.

1
doc/DESCRIPTION.md Normal file
View file

@ -0,0 +1 @@
XMPP gateway for the IRC network

View file

@ -1,41 +0,0 @@
{
"name": "Biboumi",
"id": "biboumi",
"packaging_format": 1,
"description": {
"en": "XMPP gateway for the IRC network",
"fr": "Passerelle XMPP pour le réseau IRC"
},
"version": "8.3~ynh2",
"url": "https://biboumi.louiz.org/",
"upstream": {
"license": "Zlib",
"website": "https://biboumi.louiz.org/",
"admindoc": "https://lab.louiz.org/louiz/biboumi/blob/8.3/doc/biboumi.1.rst",
"code": "https://lab.louiz.org/louiz/biboumi"
},
"license": "Zlib",
"maintainer": {
"name": "pitchum",
"email": "pitchum@yunohost.org"
},
"requirements": {
"yunohost": ">= 11.0.9"
},
"multi_instance": false,
"services": [
"metronome"
],
"arguments": {
"install" : [
{
"name": "domain",
"type": "domain"
},
{
"name": "admin",
"type": "user"
}
]
}
}

48
manifest.toml Normal file
View file

@ -0,0 +1,48 @@
packaging_format = 2
id = "biboumi"
name = "Biboumi"
description.en = "XMPP gateway for the IRC network"
description.fr = "Passerelle XMPP pour le réseau IRC"
version = "8.3~ynh2"
maintainers = ["pitchum"]
[upstream]
license = "Zlib"
website = "https://biboumi.louiz.org/"
admindoc = "https://lab.louiz.org/louiz/biboumi/blob/8.3/doc/biboumi.1.rst"
code = "https://lab.louiz.org/louiz/biboumi"
[integration]
yunohost = ">= 11.1.21"
architectures = "all"
multi_instance = false
ldap = false
sso = false
disk = "50M"
ram.build = "50M"
ram.runtime = "50M"
[install]
[install.domain]
type = "domain"
full_domain = true
[install.admin]
type = "user"
[resources]
[resources.ports]
main.default = 113
[resources.system_user]
[resources.install_dir]
[resources.permissions]
[resources.apt]
packages = "metronome biboumi"

View file

@ -4,9 +4,6 @@
# COMMON VARIABLES # COMMON VARIABLES
#================================================= #=================================================
# dependencies used by the app
pkg_dependencies="metronome biboumi"
#================================================= #=================================================
# PERSONAL HELPERS # PERSONAL HELPERS
#================================================= #=================================================

View file

@ -10,22 +10,6 @@
source ../settings/scripts/_common.sh source ../settings/scripts/_common.sh
source /usr/share/yunohost/helpers source /usr/share/yunohost/helpers
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
#=================================================
# LOAD SETTINGS
#=================================================
ynh_print_info --message="Loading installation settings..."
app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
#================================================= #=================================================
# DECLARE DATA AND CONF FILES TO BACKUP # DECLARE DATA AND CONF FILES TO BACKUP
#================================================= #=================================================

View file

@ -9,32 +9,17 @@
source _common.sh source _common.sh
source /usr/share/yunohost/helpers source /usr/share/yunohost/helpers
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
ynh_clean_setup () {
ynh_clean_check_starting
}
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
#================================================= #=================================================
# RETRIEVE ARGUMENTS FROM THE MANIFEST # RETRIEVE ARGUMENTS FROM THE MANIFEST
#================================================= #=================================================
domain=$YNH_APP_ARG_DOMAIN
admin=$YNH_APP_ARG_ADMIN
app=$YNH_APP_INSTANCE_NAME
shared_secret="$(ynh_string_random 25)" shared_secret="$(ynh_string_random 25)"
admin_jid="${admin}@$app.${domain}" admin_jid="${admin}@$app.${domain}"
#================================================= #=================================================
# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS
#================================================= #=================================================
ynh_script_progression --message="Validating installation parameters..." #REMOVEME? ynh_script_progression --message="Validating installation parameters..."
if dpkg --compare-versions "$(uname -r)" "<=" "4.0" if dpkg --compare-versions "$(uname -r)" "<=" "4.0"
then then
@ -46,28 +31,13 @@ fi
#================================================= #=================================================
ynh_script_progression --message="Storing installation settings..." ynh_script_progression --message="Storing installation settings..."
ynh_app_setting_set --app=$app --key=domain --value=$domain
ynh_app_setting_set --app=$app --key=admin --value=$admin
ynh_app_setting_set --app=$app --key=shared_secret --value=$shared_secret ynh_app_setting_set --app=$app --key=shared_secret --value=$shared_secret
ynh_app_setting_set --app=$app --key=admin_jid --value=$admin_jid ynh_app_setting_set --app=$app --key=admin_jid --value=$admin_jid
#=================================================
# STANDARD MODIFICATIONS
#=================================================
# FIND AND OPEN A PORT
#=================================================
ynh_script_progression --message="Finding an available port..."
# Find an available port
port=$(ynh_find_port --port=113)
ynh_app_setting_set --app=$app --key=port --value=$port
#================================================= #=================================================
# INSTALL DEPENDENCIES # INSTALL DEPENDENCIES
#================================================= #=================================================
ynh_script_progression --message="Installing dependencies..."
ynh_install_app_dependencies $pkg_dependencies
ynh_systemd_action --service_name=$app --action="stop" --log_path="systemd" ynh_systemd_action --service_name=$app --action="stop" --log_path="systemd"
#================================================= #=================================================

View file

@ -9,13 +9,6 @@
source _common.sh source _common.sh
source /usr/share/yunohost/helpers source /usr/share/yunohost/helpers
#=================================================
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Loading installation settings..."
app=$YNH_APP_INSTANCE_NAME
#================================================= #=================================================
# STANDARD REMOVE # STANDARD REMOVE
#================================================= #=================================================
@ -46,14 +39,6 @@ ynh_script_progression --message="Removing logrotate configuration..."
# Remove the app-specific logrotate config # Remove the app-specific logrotate config
ynh_remove_logrotate ynh_remove_logrotate
#=================================================
# REMOVE DEPENDENCIES
#=================================================
ynh_script_progression --message="Removing dependencies..."
# Remove metapackage and its dependencies
ynh_remove_app_dependencies
#================================================= #=================================================
# SPECIFIC REMOVE # SPECIFIC REMOVE
#================================================= #=================================================

View file

@ -10,25 +10,6 @@
source ../settings/scripts/_common.sh source ../settings/scripts/_common.sh
source /usr/share/yunohost/helpers source /usr/share/yunohost/helpers
#=================================================
# MANAGE SCRIPT FAILURE
#=================================================
ynh_clean_setup () {
ynh_clean_check_starting
}
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
#=================================================
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Loading installation settings..."
app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
#================================================= #=================================================
# CHECK IF THE APP CAN BE RESTORED # CHECK IF THE APP CAN BE RESTORED
#================================================= #=================================================
@ -39,17 +20,6 @@ then
ynh_die "Upgrade your kernel first. Unsupported version: $(uname -r)" ynh_die "Upgrade your kernel first. Unsupported version: $(uname -r)"
fi fi
#=================================================
# SPECIFIC RESTORATION
#=================================================
# REINSTALL DEPENDENCIES
#=================================================
ynh_script_progression --message="Reinstalling dependencies..."
# Define and install dependencies
ynh_install_app_dependencies $pkg_dependencies
ynh_systemd_action --service_name=$app --action="stop" --log_path="systemd"
#================================================= #=================================================
# RESTORE VARIOUS FILES # RESTORE VARIOUS FILES
#================================================= #=================================================

View file

@ -9,41 +9,12 @@
source _common.sh source _common.sh
source /usr/share/yunohost/helpers source /usr/share/yunohost/helpers
#=================================================
# LOAD SETTINGS
#=================================================
ynh_script_progression --message="Loading installation settings..."
app=$YNH_APP_INSTANCE_NAME
domain=$(ynh_app_setting_get --app=$app --key=domain)
admin=$(ynh_app_setting_get --app=$app --key=admin)
port=$(ynh_app_setting_get --app=$app --key=port)
shared_secret=$(ynh_app_setting_get --app=$app --key=shared_secret)
admin_jid=$(ynh_app_setting_get --app=$app --key=admin_jid)
#================================================= #=================================================
# CHECK VERSION # CHECK VERSION
#================================================= #=================================================
ynh_script_progression --message="Checking version..."
upgrade_type=$(ynh_check_app_version_changed) upgrade_type=$(ynh_check_app_version_changed)
#=================================================
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
#=================================================
ynh_script_progression --message="Backing up the app before upgrading (may take a while)..."
# Backup the current version of the app
ynh_backup_before_upgrade
ynh_clean_setup () {
ynh_clean_check_starting
# Restore it if the upgrade fails
ynh_restore_upgradebackup
}
# Exit if an error occurs during the execution of the script
ynh_abort_if_errors
#================================================= #=================================================
# STANDARD UPGRADE STEPS # STANDARD UPGRADE STEPS
#================================================= #=================================================
@ -53,32 +24,6 @@ ynh_script_progression --message="Stopping a systemd service..."
ynh_systemd_action --service_name=$app --action="stop" --line_match="Stopped Biboumi" --log_path="systemd" ynh_systemd_action --service_name=$app --action="stop" --line_match="Stopped Biboumi" --log_path="systemd"
#=================================================
# ENSURE DOWNWARD COMPATIBILITY
#=================================================
ynh_script_progression --message="Ensuring downward compatibility..."
# Prevent conflict with other apps on the same domain
ynh_app_setting_set --app=$app --key=no_sso --value=1
if [ -z "$shared_secret" ]; then
shared_secret="$(grep password "/etc/biboumi/biboumi.cfg" | cut -d= -f2)"
ynh_app_setting_set --app=$app --key=shared_secret --value=$shared_secret
fi
if [ -z "$admin_jid" ]; then
admin_jid="${admin}@$app.${domain}"
ynh_app_setting_set --app=$app --key=admin_jid --value=$admin_jid
fi
#=================================================
# UPGRADE DEPENDENCIES
#=================================================
ynh_script_progression --message="Upgrading dependencies..."
ynh_install_app_dependencies $pkg_dependencies
ynh_systemd_action --service_name=$app --action="stop" --log_path="systemd"
#================================================= #=================================================
# SPECIFIC UPGRADE # SPECIFIC UPGRADE
#================================================= #=================================================

3
tests.toml Normal file
View file

@ -0,0 +1,3 @@
test_format = 1.0
[default]