diff --git a/conf/config.js b/conf/config.js index 9ca6173..c681deb 100644 --- a/conf/config.js +++ b/conf/config.js @@ -83,9 +83,15 @@ module.exports = { certificate: "", ca: "", }, +<<<<<<< Updated upstream // ## Client settings +======= + + // ## Client settings + +>>>>>>> Stashed changes // ### `theme` // // Set the default theme to serve to new users. They will be able to select a @@ -108,7 +114,11 @@ module.exports = { // from URLs posted in channels and private messages. // // This value is set to `false` by default. +<<<<<<< Updated upstream prefetch:true, +======= + prefetch: true, +>>>>>>> Stashed changes // ### `disableMediaPreview` // @@ -121,9 +131,15 @@ module.exports = { // // This value is set to `false` by default. disableMediaPreview: false, +<<<<<<< Updated upstream // ### `prefetchStorage` +======= + + // ### `prefetchStorage` + +>>>>>>> Stashed changes // When set to `true`, The Lounge will store and proxy prefetched images and // thumbnails on the filesystem rather than directly display the content at // the original URLs. @@ -245,8 +261,13 @@ module.exports = { tls: true, rejectUnauthorized: true, nick: "ynhuser|%%%%%", +<<<<<<< Updated upstream username: "ynhuser|%%%%%", realname: "yunohost User", +======= + username: "thelounge", + realname: "The Lounge User", +>>>>>>> Stashed changes join: "#yunohost", }, @@ -276,7 +297,11 @@ module.exports = { // their JSON configuration file. // // This value is set to `["sqlite", "text"]` by default. +<<<<<<< Updated upstream messageStorage: ["sqlite"], +======= + messageStorage: ["sqlite", "text"], +>>>>>>> Stashed changes // ### `useHexIp` // @@ -288,6 +313,7 @@ module.exports = { // // This value is set to `false` by default. useHexIp: false, +<<<<<<< Updated upstream // ## WEBIRC support // @@ -328,6 +354,48 @@ module.exports = { // ## identd and oidentd support +======= + + // ## WEBIRC support + // + // When enabled, The Lounge will pass the connecting user's host and IP to the + // IRC server. Note that this requires to obtain a password from the IRC + // network that The Lounge will be connecting to and generally involves a lot + // of trust from the network you are connecting to. + // + // There are 2 ways to configure the `webirc` setting: + // + // - **Basic**: an object where keys are IRC hosts and values are passwords. + // For example: + // + // ```json + // webirc: { + // "irc.example.net": "thisiswebircpassword1", + // "irc.example.org": "thisiswebircpassword2", + // }, + // ``` + // + // - **Advanced**: an object where keys are IRC hosts and values are functions + // that take two arguments (`webircObj`, `network`) and return an + // object to be directly passed to `irc-framework`. `webircObj` contains the + // generated object which you can modify. For example: + // + // ```js + // webirc: { + // "irc.example.com": (webircObj, network) => { + // webircObj.password = "thisiswebircpassword"; + // webircObj.hostname = `webirc/${webircObj.hostname}`; + // return webircObj; + // }, + // }, + // ``` + // + // This value is set to `null` to disable WEBIRC by default. + webirc: null, + + // ## identd and oidentd support + +>>>>>>> Stashed changes // ### `identd` // // Run The Lounge with `identd` support. @@ -415,11 +483,45 @@ module.exports = { // - `baseDN`: LDAP base DN, alternative to `searchDN`. For example, set it // to `"ou=accounts,dc=example,dc=com"`. // When unset, the LDAP auth logic with use `searchDN` instead to locate users. +<<<<<<< Updated upstream baseDN: "ou=users,dc=yunohost,dc=org", }, // ## Debugging settings +======= + + // - `searchDN`: LDAP search DN settings. This defines the procedure by + // which The Lounge first looks for the user DN before authenticating them. + // It is ignored if `baseDN` is specified. It is an object with the + // following keys: + searchDN: { + // - `rootDN`: This bind DN is used to query the server for the DN of + // the user. This is supposed to be a system user that has access in + // read-only to the DNs of the people that are allowed to log in. + // It is set to `"cn=thelounge,ou=system-users,dc=example,dc=com"` by + // default. + rootDN: "ou=users,dc=yunohost,dc=org", + + // - `rootPassword`: Password of The Lounge LDAP system user. + rootPassword: "1234", + + // - `ldapFilter`: it is set to `"(objectClass=person)(memberOf=ou=accounts,dc=example,dc=com)"` + // by default. + filter: "(objectClass=person)(memberOf=ou=accounts,dc=example,dc=com)", + + // - `base`: LDAP search base (search only within this node). It is set + // to `"dc=example,dc=com"` by default. + base: "dc=yunohost,dc=org", + + // - `scope`: LDAP search scope. It is set to `"sub"` by default. + scope: "sub", + }, + }, + + // ## Debugging settings + +>>>>>>> Stashed changes // The `debug` object contains several settings to enable debugging in The // Lounge. Use them to learn more about an issue you are noticing but be aware // this may produce more logging or may affect connection performance so it is diff --git a/conf/systemd.service b/conf/systemd.service index cc12689..0aed22e 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -11,7 +11,10 @@ Environment="PATH=__ENV_PATH__" Environment="THELOUNGE_HOME=/home/yunohost.app/__APP__/" Environment="NODE_ENV=production" ExecStart=/usr/bin/yarn start -Restart=always +Restart=on-failure +RestartSec=5 +StartLimitInterval=60s +StartLimitBurst=3 [Install] WantedBy=default.target