{ config, lib, pkgs, ... }:
let
cfg = config.myServices.websites.tools.im;
+ converseVersion = "9.1.1";
+ www = pkgs.runCommand "www" {} ''
+ cp -a ${./www} $out
+ substituteInPlace $out/converse.html --replace {{converseVersion}} ${converseVersion}
+ '';
in
{
options.myServices.websites.tools.im = {
certName = "eldiron";
addToCerts = true;
hosts = ["im.immae.fr"];
- root = ./www;
+ root = www;
extraConfig = [
''
Alias /glowing-bear ${pkgs.glowing-bear}
- Alias /converse ${./www}/converse.html
+ Alias /converse ${www}/converse.html
ProxyPreserveHost On
<Location "/bosh">
ProxyPass http://localhost:5280/bosh
ProxyPass /api http://localhost:5280/api
ProxyPassReverse /api http://localhost:5280/api
<Directory ${pkgs.glowing-bear}>
- AllowOverride none
- Require all granted
+ AllowOverride none
+ Require all granted
+ </Directory>
+ <Directory ${www}>
+ Require all granted
+ AllowOverride none
</Directory>
''
];
<meta name="description" content="Converse: An XMPP chat client which can be integrated into any website" />
<meta name="keywords" content="xmpp chat webchat converse.js Converse" />
- <link type="text/css" rel="stylesheet" media="screen" href="https://assets.immae.eu/converse/5.0.4/converse.min.css" />
+ <link type="text/css" rel="stylesheet" media="screen" href="https://assets.immae.eu/converse/{{converseVersion}}/dist/converse.min.css" />
<style type="text/css">
#conversejs div.chat-msg__text pre {
background-color: #eee;
padding: 10px;
}
</style>
- <script src="https://assets.immae.eu/converse/5.0.4/libsignal-protocol.min.js"></script>
- <script src="https://assets.immae.eu/converse/5.0.4/converse.min.js"></script>
+ <script src="https://assets.immae.eu/converse/{{converseVersion}}/3rdparty/libsignal-protocol.min.js"></script>
+ <script src="https://assets.immae.eu/converse/{{converseVersion}}/dist/converse.min.js"></script>
<script src="https://assets.immae.eu/marked/1.2.6/marked.min.js"></script>
<script src="https://assets.immae.eu/markdown-it/10.0.0/markdown-it.min.js"></script>
+ </head>
+ <body>
<script>
var md = window.markdownit({
html: true,
whitelisted_plugins: ['markdown'],
});
</script>
- </head>
- <body>
</body>
</html>