25
1
mirror of https://github.com/processone/ejabberd.git synced 2024-11-22 16:20:52 +01:00
Commit Graph

244 Commits

Author SHA1 Message Date
Holger Weiss
bce429dc44 make-packages: Fix permissions on RPM systems
RPM resets ownership/permissions of /opt/ejabberd and its subdirectories
on installation.  Therefore, fix those in the "after-install" script.
2022-08-21 15:48:28 +02:00
Paweł Chmielowski
991d52f019 Fix error reporting in 'make options' on OTP24+ 2022-06-24 11:36:54 +02:00
Holger Weiss
fbf43f2a31 make-binaries: Include CAPTCHA script with release 2022-05-28 15:00:25 +02:00
Holger Weiss
b4c78336a6 make-binaries: Edit rebar.config more carefully
Don't break the (currently nonexistent) case where a dependency's
rebar.config file specifies LDFLAGS before and after "-lstdc++", such as
"-lfoo -lstdc++ -lbar".
2022-05-28 10:21:43 +02:00
Holger Weiss
c1ee86e85c make-binaries: Fix linking of EIMP dependencies
Avoid linker errors such as the following when using GCC 10 or newer:

| multiple definition of `gdImageCreateFromJpegPtr'

See: https://gcc.gnu.org/gcc-10/porting_to.html

Fixes #3514.
2022-05-25 20:37:37 +02:00
Holger Weiss
e6c1bf9c9a make-binaries: Adjust Mnesia spool directory path
Adjust the default Mnesia directory for compatibility with older binary
packages.

Closes #3818.
2022-05-18 17:08:05 +02:00
Holger Weiss
cac31f9325 make-packages: Include systemd unit with RPM
Don't forget to include the /etc/systemd/system/ejabberd.service unit
with the RPM package.

Closes #3816.
2022-05-18 10:20:34 +02:00
Holger Weiss
621445e096 make-installers: Support non-root installation
If the installer is invoked without superuser privileges, warn the user,
ask for the installation prefix, and perform a local installation on
confirmation.
2022-05-17 12:40:12 +02:00
Holger Weiss
c54fe5b29e make-installers: Override code on upgrade
Use tar's --skip-old-files option for the data directory (/opt/ejabberd)
only.  Files in the code directory (/opt/ejabberd-$version) should be
overridden on upgrade.
2022-05-16 00:45:01 +02:00
Holger Weiss
6d93d49c6c make-installers: Apply cosmetic changes 2022-05-16 00:13:43 +02:00
Holger Weiss
8addf96f9e make-binaries: Bump dependency versions 2022-05-12 01:02:33 +02:00
Holger Weiss
ec36dd7ba1 make-binaries: Bump SQLite and ODBC versions 2022-05-06 14:03:11 +02:00
Badlop
985fa24130 Apparently the --tags option is required to properly describe a brand new tag 2022-05-04 02:39:15 +02:00
Badlop
ba5b6133cd Create uninstall.txt with instructions 2022-05-04 02:39:13 +02:00
Badlop
0964f9cbcd Add help header to the installer help 2022-05-04 02:39:12 +02:00
Badlop
06e448b4d0 Once installed, show next steps 2022-05-04 02:39:10 +02:00
Badlop
b773bb4cd4 Add some blank lines to output 2022-05-04 02:39:07 +02:00
Holger Weiss
65437d08ef make-binaries: Update to Crosstool-NG 1.25.0-RC2
Update Crosstool-NG to the current release candidate, and use much
shorter "defconfig" files for specifying the configuration.
2022-05-04 00:30:36 +02:00
Holger Weiss
a7dc1de980 make-binaries: Try to avoid rebuilding deps
Don't rebuild external dependencies if all of them are up to date.
2022-05-04 00:30:36 +02:00
Holger Weiss
ce6f32906a Import script for building command line installers
The tools/make-installers script creates command line installers for
Linux/x64 and Linux/arm64 systems using the archives built by the
tools/make-binaries script.
2022-05-04 00:30:36 +02:00
Holger Weiss
ef7470b503 Import script for building DEB and RPM packages
The tools/make-packages script creates DEB and RPM packages for
Linux/x64 and Linux/arm64 systems using the archives built by the
tools/make-binaries script.
2022-05-04 00:30:36 +02:00
Holger Weiss
853be230a8 Import script for building Linux binaries
The tools/make-binaries script creates self-contained OTP releases for
Linux/x64 and Linux/arm64 systems.  All optional ejabberd features are
supported.  Erlang/OTP, Elixir, and all dependencies are downloaded and
built from source (using crosstool-NG).  The generated binaries depend
on glibc 2.17 or later, all other external libraries are linked
statically.

The script should work on any non-ancient Linux/x64 system and requires
just a few common development tools (to bootstrap crosstool-NG).

The release is installed by creating an "ejabberd" user, extracting the
archive into /opt, and moving the systemd unit (or init script) into
place.
2022-05-04 00:30:36 +02:00
Badlop
231dfd776f Support Erlang 25 in "make options": returns attribute with simpler syntax
This was introduced in Erlang/OTP 25.0-rc1
https://erlang.org/download/otp_src_25.0-rc1.readme
https://github.com/erlang/otp/pull/5509

  OTP-17894    Application(s): syntax_tools
               Related Id(s): PR-5509

               The erl_syntax_lib:analyze_attribute/1 function would
               return {Name, {Name, Value}} instead of {Name, Value}
               (which is the documented return value).
2022-02-24 01:02:51 +01:00
Badlop
b3211b1f71 Update copyright year to 2022 2022-02-11 09:39:25 +01:00
Kian-Meng Ang
adf0f87e99 Fix typos 2022-01-24 08:02:04 +08:00
Badlop
84d23e60d1 In POSIX sh, RANDOM is undefined: use always the other method 2021-12-23 13:57:12 +01:00
Badlop
f4e2d278ba Dollar is unnecessary on arithmetic variables 2021-12-23 13:57:10 +01:00
Badlop
d8be168cff Use dollar notation instead of legacy backticked 2021-12-23 13:57:08 +01:00
ballerburg9005
14bf197be1
"sort -R" command not POSIX, added "shuf" and "cat" as fallback 2021-08-12 15:14:31 +02:00
Badlop
4914b33f8c Support the recent changes in the "ejabberdctl help" command (#3569) 2021-04-15 20:25:54 +02:00
Badlop
9525978f26 Fix INTRUDER and add padding to second text line
b41ce8828c (r47461104)
2021-03-12 20:50:41 +01:00
Badlop
c8bec07c45 Clone to the dir specified in rebar.config... useful for erlang-sqlite3 2021-02-23 19:45:41 +01:00
Holger Weiß
b41ce8828c
Add question/answer-based CAPTCHA script (#3533)
* New captcha.sh question/answer based

* Keep original CAPTCHA script

Rather than replacing the original CAPTCHA script, keep it next to the
new one, for the moment.

* CAPTCHA-ng script cleanup

* remove various bashisms
* replace all echos with printf
+ add quotations to many variables

Co-authored-by: Adrien Bourmault <neox@os-k.eu>
Co-authored-by: nico wellpott <nico@magicbroccoli.de>
2021-02-22 09:34:02 +01:00
Badlop
09f5e2aa03 Improve support for rebar3 in "make translations" 2021-02-19 17:00:32 +01:00
Badlop
18c9f5eedf Create annotated tags, meant for releases, instead of lightweight (#3512) 2021-02-16 13:09:27 +01:00
Badlop
26ee3141a9 Improve prepare-tr so *.msg files inform to not edit them (#3484) 2021-02-02 18:58:36 +01:00
Badlop
6e0161470e Update newest copyright year to 2021 (#3464) 2021-01-27 17:02:06 +01:00
Badlop
0b55ded612 When running "make translations" use the external ejabberd_po repository 2021-01-22 13:16:42 +01:00
Paweł Chmielowski
cb6322a3a7 Add option to check for missing hex releases to update script 2020-12-18 16:43:20 +01:00
Paweł Chmielowski
9c221848d7 Correctly sort mixed versions vX.Y and X.Y in update-deps script 2020-12-18 16:42:41 +01:00
Paweł Chmielowski
90e0293df3 Update one more place where we had -include("xmpp.hrl") 2020-09-03 14:30:04 +02:00
Badlop
e7575ab63f For mod_vcard_* modules, redirect options to mod_vcard 2020-08-21 18:08:59 +02:00
Badlop
db2825342c Revert "Dirty workarounds to compile jiffy with Erlang/OTP 23 (#3282)"
This reverts commit 2ca5712507.
2020-07-15 12:12:42 +02:00
Badlop
2ca5712507 Dirty workarounds to compile jiffy with Erlang/OTP 23 (#3282)
Works for me with:
./configure --disable-pam
./rebar get-deps
./rebar configure-deps
./rebar compile
make install

changes in erlang-native-compiler used by jiffy:

src/rebar_port_compiler.erl
-     {"ERL_LDFLAGS"  , " -L$ERL_EI_LIBDIR -lerl_interface -lei"},
+     {"ERL_LDFLAGS"  , " -L$ERL_EI_LIBDIR -lei"},

src/rebar_utils.erl
--dialyzer({no_missing_calls, escript_foldl/3}).
2020-06-01 10:33:06 +02:00
Badlop
64c09c20eb Hide false-positive warnings about mod_delegation Type atom and NS binary 2020-05-07 22:29:54 +02:00
Badlop
e6a3b1fa68 Extract translatable strings also from the xmpp library 2020-05-04 16:25:42 +02:00
Badlop
99d21bca49 Don't extract for translation strings from man pages, at least for now 2020-04-17 19:23:18 +02:00
Badlop
1b98084918 Fix previous commit 2020-04-17 19:23:13 +02:00
Badlop
d311eaf8f3 Log messages generated by msgmerge and display unexpected ones 2020-04-17 17:28:43 +02:00
Badlop
2d32c66fd7 Update copyright to 2020 (#3149) 2020-01-28 15:49:23 +01:00
Evgeny Khramtsov
5a976719fb Introduce 'vcard' option for the modules supporting vCards
The mapping between vCard's XML elements and YAML elements
of 'vcard' option is straightforward. For example, if you
want mod_muc to return the following vCard:
```
<vCard xmlns='vcard-temp'>
  <FN>Conferences</FN>
  <ADR>
    <WORK/>
    <STREET>Elm Street</STREET>
  </ADR>
</vCard>
```
you need to set the configuration as:
```
modules:
  ...
  mod_muc:
    vcard:
      fn: Conferences
      adr:
        -
          work: true
          street: Elm Street
  ...
```
2019-08-02 13:59:42 +03:00
Evgeny Khramtsov
35576b4608 Improve hooks validator and fix bugs related to hooks registration 2019-07-29 10:46:20 +03:00
Evgeny Khramtsov
9ef52f2b0f Fix UTF-8 support in translation files 2019-07-24 11:34:40 +03:00
Evgeny Khramtsov
0e48adb1ed Fix opt_type.sh script and re-generate options 2019-07-16 18:06:51 +03:00
Evgeny Khramtsov
49214d9cc5 Report invalid translation strings 2019-06-24 21:09:29 +03:00
Evgeny Khramtsov
e788592a88 Generate paths for poedit 2019-06-22 18:07:36 +03:00
Evgeny Khramtsov
1ca61821c6 Update extract-tr.sh script 2019-06-22 17:24:15 +03:00
Evgeny Khramtsov
00f2a736eb Improve extraction of translated strings
Now every such string MUST be encapsulated into ?T() macro.
The macro itself is defined in include/translate.hrl.
Example:

-module(foo).
-export([bar/1]).
-include("translate.hrl").

bar(Lang) ->
    translate:translate(Lang, ?T("baz")).
2019-06-22 17:08:45 +03:00
Evgeny Khramtsov
27a1771deb Fix creation of type spec for map() options 2019-06-20 19:09:36 +03:00
Christophe Romain
4fe995c272 Add helper to check xep implementations and versions 2019-06-17 12:02:23 +02:00
Evgeny Khramtsov
a205ebad2b Get rid of "well-known" type 2019-06-15 12:53:16 +03:00
Evgeny Khramtsov
ea76b87461 Ignore beams compiled by Elixir 2019-06-14 23:35:51 +03:00
Evgeny Khramtsov
56a0e736c7 Accept output argument in tools/opt_types.sh 2019-06-14 23:19:08 +03:00
Evgeny Khramtsov
a02cff0e78 Use new configuration validator 2019-06-14 12:33:26 +03:00
Mickaël Rémond
b90fe4c5c9
Improve captcha.sh script documentation 2019-05-25 11:21:30 +02:00
Evgeny Khramtsov
7c16e29984 Write hooks_type_test.erl to correct location 2019-05-15 21:45:30 +03:00
Evgeny Khramtsov
7a03a125aa Make static hooks analyzer working again 2019-05-15 21:40:36 +03:00
Paweł Chmielowski
a40eb79cd0 Commit back, change reverted by mistake 2019-02-26 12:16:48 +01:00
Paweł Chmielowski
daf9c99728 Update deps 2019-02-26 10:32:02 +01:00
Paweł Chmielowski
65b94ae9c8 Improve update-deps-releases 2019-02-26 10:32:02 +01:00
Badlop
4947e97ccd Provide source code filename in *.po, so editors can show the source code 2019-02-22 12:31:02 +01:00
Badlop
17a59b795f Fix "make translations", got broken in 446e6e6f3 2019-02-22 12:30:05 +01:00
Badlop
55417dfb37 Update copyright to 2019 (#2756) 2019-01-08 22:53:27 +01:00
Paweł Chmielowski
06d69c5277 Fix decompressing of custom elements with custom namespace 2019-01-07 16:08:58 +01:00
Paweł Chmielowski
0b31aa490b Add xml compression to sql backend of mam 2018-11-28 11:25:16 +01:00
Paweł Chmielowski
dce4e4de6d Add check for files missing in hex packaging 2018-06-29 12:51:20 +02:00
Evgeniy Khramtsov
446e6e6f3b Update ejabberd.pot 2018-06-20 12:32:10 +03:00
Evgeniy Khramtsov
66fc1bf3b6 Remove 'iqdisc' option
Since we got rid of all bottle-neck processes and we have
a connection pool for every database, the option is no longer
needed and in fact is detrimental: in practice what you get
is just a bunch of overloaded processes in the IQ handlers pool
no matter how much you increase the `iqdisc` value.

Given that there are close to zero operators understanding
the meaning of the option and, hence, not using it all,
it's not simply deprecated but completely removed.

The commit also deprecates the following functions:
- gen_iq_handler:add_iq_handler/6
- gen_iq_handler:handle/5
- gen_iq_handler:iqdisc/1
2018-02-11 12:54:15 +03:00
Paweł Chmielowski
4b9d299e90 Make update-deps-releases.pl work with older perl 2017-11-20 10:41:52 +01:00
Paweł Chmielowski
e2f4cb5838 Remove find-outdated-deps script, we have better replacement for it 2017-10-02 11:49:34 +02:00
Evgeniy Khramtsov
6658806820 Generate more readable code for run_fold hooks 2017-10-02 10:47:03 +03:00
Badlop
221e58fff0 Simplify prepare-tr.sh to work with new extract-tr.sh 2017-09-27 10:57:03 +02:00
Badlop
9b043ae276 Move prepare-translations.sh from contrib to tools/prepare-tr.sh 2017-09-27 10:56:58 +02:00
Evgeniy Khramtsov
adfb924808 Replace translate:mark/1 with ?T() macro 2017-09-24 12:42:35 +03:00
Evgeniy Khramtsov
c378ea403e Add script to extract translation strings 2017-09-24 00:08:01 +03:00
Paweł Chmielowski
b1082a96c9 Add ability to update changelog in update-deps-releases 2017-07-20 11:43:25 +02:00
Paweł Chmielowski
43fc29873e Add refresh repos option in update-deps-releases 2017-07-14 15:08:13 +02:00
Paweł Chmielowski
9dd03c873c Fix clone code in update-deps-release 2017-06-28 16:47:31 +02:00
Paweł Chmielowski
dc7fa076d7 Fix problem with updating deps in rebar.config for non-tags 2017-06-28 16:36:59 +02:00
Paweł Chmielowski
85a08a087b Improve update-deps-releases deps parsing 2017-06-27 14:56:00 +02:00
Paweł Chmielowski
10fcfa860a Show operations to perform before asking to apply them 2017-06-14 14:05:41 +02:00
Paweł Chmielowski
d8f05acb67 Add script for managing updates to deps 2017-06-12 19:23:41 +02:00
Holger Weiss
c76253cb0a tools/hook_deps.sh: Search for escript in PATH 2017-02-23 17:38:56 +01:00
Paweł Chmielowski
7c2ccb2cb7 Add tool for checking which dependences need update 2017-01-23 12:24:25 +01:00
Evgeniy Khramtsov
1176e1f096 Add script to check hook dependencies 2017-01-16 17:14:33 +03:00
Evgeniy Khramtsov
6a3691ef7c Add xdata generator and make some code using it 2016-10-07 10:31:03 +03:00
Evgeniy Khramtsov
3112a7187f Test anonymous auth 2016-09-25 09:57:56 +03:00
Evgeniy Khramtsov
fa31e3ef23 Deprecate jlib:integer_to_binary/1 and jlib:binary_to_integer/1 2016-09-24 23:34:28 +03:00
Evgeniy Khramtsov
58969fb854 Improve namespace handling 2016-09-24 14:17:21 +03:00
Evgeniy Khramtsov
53209b9ab1 Add tests for s2s code 2016-09-23 12:30:33 +03:00