Compare commits

...

25 Commits
main ... main

Author SHA1 Message Date
KitaitiMakoto bc2b9acfc4 Merge pull request 'Use locale instead of two_letters_code for translation' (#139) from locale into main
Reviewed-on: plume/documentation#139
1 year ago
Kitaiti Makoto e7d320f635 Use locale instead of two_letters_code for translation 1 year ago
KitaitiMakoto 5234a39e86 Merge pull request 'Update schema to better reflect the current API' (#138) from PatOConnor43/documentation:update-post-schema into main
Reviewed-on: plume/documentation#138
1 year ago
Pat O'Connor a9f1a1eed5 Update schema to better reflect the current API 2 years ago
KitaitiMakoto f900bf3a7f Merge pull request 'Update the windows build from sources' (#137) from arittner/documentation:fix_win_from_sources into main
Reviewed-on: plume/documentation#137
2 years ago
Aljoscha Rittner d28888317a Update the windows build from sources
fixes #136
2 years ago
KitaitiMakoto b97cdf4a10 Merge pull request 'Update versions' (#135) from update-0.7.1 into main
Reviewed-on: plume/documentation#135
2 years ago
Kitaiti Makoto c17f0a9881 Update versions 2 years ago
KitaitiMakoto d4d94f58df Merge pull request 'signup' (#134) from signup into main
Reviewed-on: plume/documentation#134
2 years ago
Kitaiti Makoto c15a3a88ff Add SIGNUP env var description 2 years ago
Kitaiti Makoto 395cc294a1 Update gems 2 years ago
Kitaiti Makoto f13d246677 Add documentation for SMTP_PORT 2 years ago
KitaitiMakoto 65b8ee447b Merge pull request 'Update Matrix room URI' (#132) from matrix-room into main
Reviewed-on: plume/documentation#132
3 years ago
Kitaiti Makoto 9d021d8cb6 Update gems 3 years ago
Kitaiti Makoto 450c0ee37b Update Matrix room 3 years ago
KitaitiMakoto a2a8aa65c1 Merge pull request 'Add a french translation guide' (#131) from pilou/documentation:add_french_translations_style_guide into main
Reviewed-on: plume/documentation#131
3 years ago
Pierre-Louis Bonicoli a3c01f5819
Add a french translation guide
The purpose of this guide is to document the glossary, the rules used
and to help the translators.
3 years ago
KitaitiMakoto 333895559a Merge pull request 'Typography in environment' (#128) from Marius/documentation:main into main
Reviewed-on: plume/documentation#128
3 years ago
KitaitiMakoto 4e9ec7d441 Merge pull request 'Fix #129 Restore indentation in code block' (#130) from restore-indent into main
Reviewed-on: plume/documentation#130
3 years ago
Kitaiti Makoto 651091c87a Specify CSS class for syntax highlighting to avoide doubly add 'highlight' 3 years ago
Kitaiti Makoto c53cbcfc72 Update gems 3 years ago
Marius Monnier 91c2fa5ec2 Typography in environment 3 years ago
KitaitiMakoto 1fc1873a54 Merge pull request 'Apache config: fix a typo & allow to copy/paste' (#127) from pilou/documentation:doc_apache_add_slash into main
Reviewed-on: plume/documentation#127
3 years ago
Pierre-Louis Bonicoli b56f0da975
Allow to copy/paste the suggested configuration
Comments may not be included on the same line as a configuration directive.
3 years ago
Pierre-Louis Bonicoli 8d34fb21ea
Add missing slash in VirtualHost closing tags 3 years ago

@ -1,59 +1,61 @@
GEM
remote: https://rubygems.org/
specs:
activesupport (5.2.6)
activesupport (6.1.4.4)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 0.7, < 2)
minitest (~> 5.1)
tzinfo (~> 1.1)
addressable (2.7.0)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
zeitwerk (~> 2.3)
addressable (2.8.0)
public_suffix (>= 2.0.2, < 5.0)
autoprefixer-rails (9.8.6.5)
execjs
backports (3.21.0)
backports (3.23.0)
coffee-script (2.4.1)
coffee-script-source
execjs
coffee-script-source (1.12.2)
concurrent-ruby (1.1.8)
concurrent-ruby (1.1.9)
contracts (0.13.0)
dotenv (2.7.6)
erubis (2.7.0)
execjs (2.7.0)
fast_blank (1.0.0)
fastimage (2.2.3)
ffi (1.15.0)
haml (5.2.1)
execjs (2.8.1)
fast_blank (1.0.1)
fastimage (2.2.6)
ffi (1.15.4)
haml (5.2.2)
temple (>= 0.8.0)
tilt
hamster (3.0.0)
concurrent-ruby (~> 1.0)
hashie (3.6.0)
i18n (0.9.5)
i18n (1.6.0)
concurrent-ruby (~> 1.0)
kramdown (2.3.1)
rexml
libv8-node (15.14.0.1)
libv8-node (16.10.0.0)
libv8-node (16.10.0.0-x86_64-linux)
listen (3.0.8)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
memoist (0.16.2)
middleman (4.3.11)
middleman (4.4.2)
coffee-script (~> 2.2)
haml (>= 4.0.5)
kramdown (>= 2.3.0)
middleman-cli (= 4.3.11)
middleman-core (= 4.3.11)
middleman-cli (= 4.4.2)
middleman-core (= 4.4.2)
middleman-autoprefixer (2.10.1)
autoprefixer-rails (~> 9.1)
middleman-core (>= 3.3.3)
middleman-cli (4.3.11)
middleman-cli (4.4.2)
thor (>= 0.17.0, < 2.0)
middleman-core (4.3.11)
activesupport (>= 4.2, < 6.0)
addressable (~> 2.3)
middleman-core (4.4.2)
activesupport (>= 6.1, < 7.0)
addressable (~> 2.4)
backports (~> 3.6)
bundler
bundler (~> 2.0)
contracts (~> 0.13.0)
dotenv
erubis
@ -62,53 +64,58 @@ GEM
fastimage (~> 2.0)
hamster (~> 3.0)
hashie (~> 3.4)
i18n (~> 0.9.0)
i18n (~> 1.6.0)
listen (~> 3.0.0)
memoist (~> 0.14)
padrino-helpers (~> 0.13.0)
padrino-helpers (~> 0.15.0)
parallel
rack (>= 1.4.5, < 3)
sassc (~> 2.0)
servolux
tilt (~> 2.0.9)
toml
uglifier (~> 3.0)
webrick
middleman-syntax (3.2.0)
middleman-core (>= 3.2)
rouge (~> 3.2)
mini_racer (0.4.0)
libv8-node (~> 15.14.0.0)
minitest (5.14.4)
padrino-helpers (0.13.3.4)
i18n (~> 0.6, >= 0.6.7)
padrino-support (= 0.13.3.4)
mini_racer (0.6.0)
libv8-node (~> 16.10.0.0)
minitest (5.15.0)
padrino-helpers (0.15.1)
i18n (>= 0.6.7, < 2)
padrino-support (= 0.15.1)
tilt (>= 1.4.1, < 3)
padrino-support (0.13.3.4)
activesupport (>= 3.1)
parallel (1.20.1)
padrino-support (0.15.1)
parallel (1.21.0)
parslet (2.0.0)
public_suffix (4.0.6)
rack (2.2.3)
rake (13.0.3)
rb-fsevent (0.10.4)
rake (13.0.6)
rb-fsevent (0.11.0)
rb-inotify (0.10.1)
ffi (~> 1.0)
redcarpet (3.5.1)
rexml (3.2.5)
rouge (3.26.0)
rouge (3.27.0)
sassc (2.4.0)
ffi (~> 1.9)
servolux (0.13.0)
temple (0.8.2)
thor (1.1.0)
thread_safe (0.3.6)
thor (1.2.1)
tilt (2.0.10)
tzinfo (1.2.9)
thread_safe (~> 0.1)
toml (0.3.0)
parslet (>= 1.8.0, < 3.0.0)
tzinfo (2.0.4)
concurrent-ruby (~> 1.0)
uglifier (3.2.0)
execjs (>= 0.3.0, < 3)
webrick (1.7.0)
zeitwerk (2.5.3)
PLATFORMS
ruby
x86_64-linux
DEPENDENCIES
middleman (~> 4.2)
@ -122,4 +129,4 @@ DEPENDENCIES
webrick
BUNDLED WITH
2.2.3
2.2.29

@ -3,7 +3,7 @@ require "pathname"
BUILD_DIR = Pathname("build")
LOCALE_DIR = Pathname("trans")
TRANS_DIR = Pathname("translate")
PSEUDO_LANG = "ach"
PSEUDO_LANG = "ach-UG"
CROWDIN_SNIPPET = <<EOS

@ -6,7 +6,7 @@ set :relative_links, true
set :markdown_engine, :redcarpet
set :markdown, :fenced_code_blocks => true, :smartypants => true, :with_toc_data => true
activate :syntax
activate :syntax, css_class: "pygments"
activate :directory_indexes

@ -27,7 +27,7 @@ files: [
# Where translations will be placed
# e.g. "/resources/%two_letters_code%/%original_file_name%"
#
"translation" : "/trans/%two_letters_code%/%original_path%/%original_file_name%",
"translation" : "/trans/%locale%/%original_path%/%original_file_name%",
#
# Files or directories for ignore

@ -1,34 +1,35 @@
---
af: Afrikaans
ar: العربية
ca: Català
cs: Česky
da: Dansk
de: Deutsch
el: Ελληνικά
en: English
eo: Esperanto
es: Español
fa: فارسی
fi: Suomi
fr: Français
gl: Galego
he: עברית
hu: Magyar
it: Italiano
ja: 日本語
ko: 한국어
nl: Nederlands
'no': Norsk (bokmål)
pl: Polski
pt: Português
ro: Română
ru: Русский
sat: ᱥᱟᱱᱛᱟᱲᱤ
si: සිංහල
sr: Српски
sv: Svenska
tr: Türkçe
uk: Українська
vi: Việtnam
zh: 中文
af-ZA: Afrikaans
ar-SA: العربية
ca-ES: Català
cs-CZ: Česky
da-DK: Dansk
de-DE: Deutsch
el-GR: Ελληνικά
en-US: English
eo-UY: Esperanto
es-ES: Español
fa-IR: فارسی
fi-FI: Suomi
fr-FR: Français
gl-ES: Galego
he-IL: עברית
hu-HU: Magyar
it-IT: Italiano
ja-JP: 日本語
ko-KR: 한국어
nl-NL: Nederlands
no-NO: Norsk (bokmål)
pl-PL: Polski
pt-PT: Português
ro-RO: Română
ru-RU: Русский
sat-IN: ᱥᱟᱱᱛᱟᱲᱤ
si-LK: සිංහල
sr-SP: Српски
sv-SE: Svenska
tr-TR: Türkçe
uk-UA: Українська
vi-VN: Việtnam
zh-CN: 简体中文
zh-TW: 繁體中文

@ -10,7 +10,7 @@
<a href="https://git.joinplu.me/Plume/Plume">Source code</a>
</li>
<li>
<a href="https://riot.im/app/#/room/#plume:disroot.org">Chat room</a>
<a href="https://matrix.to/#/#plume-blog:matrix.org">Chat room</a>
</li>
</ul>
</nav>
</nav>

@ -85,9 +85,12 @@ paths:
cover_id:
description: The ID of the cover image.
type: integer
author:
description: The username of the user who is authoring the post.
type: string
required:
- title
- description
- source
- author
definitions:

@ -163,7 +163,7 @@ If it is not, ask someone who has access to the Crowdin API key (like a Crowdin
To find a manager, look at the list [in the sidebar of this page](https://crowdin.com/project/plume).
These people are managers because they were involved enough in the project, and especially in the translation process.
If you want to become a manager on Crowdin too, ask us [on Matrix](https://matrix.to/#/#plume:disroot.org).
If you want to become a manager on Crowdin too, ask us [on Matrix](https://matrix.to/#/#plume-blog:matrix.org).
Then, in `src/main.rs` and `plume-front/src/main.rs`, add the code corresponding to the language in the `init_i18n!` macro.
If you don't know the code for the language: it is the name of the `.po` file, without the extension.

@ -14,7 +14,7 @@ with, maybe we speak it too, and even if we don't we will find ways to talk with
Matrix is federated chat (but it doesn't use ActivityPub 😛). If you don't have an account yet, you
can find an instance [here](https://www.hello-matrix.net/public_servers.php) (if you don't know which one to choose, just go for matrix.org).
Once you created an account, open [this link to join `#plume:disroot.org`](https://riot.im/app/#/room/#plume:disroot.org). And you are done!
Once you created an account, open [this link to join `#plume-blog:matrix.org`](https://matrix.to/#/#plume-blog:matrix.org). And you are done!
This place is the best one to give feedback or to ask for help if you encounter issues while using Plume, or while contributing for example.

@ -70,6 +70,10 @@ When translating Plume (and related projects), please try to follow these rules:
The style of inclusive that is choosen is not very important (just try to keep coherent with what is already done).
- Don't be too formal (but stay polite!).
### Translation guides
- [French translation guide](../translations_fr/)
---
That's it, you know everything you need to translate Plume! Thank you for your help!

@ -0,0 +1,18 @@
---
title: Guide stylistique
icon: flag
summary: 'Guide stylistiques et recommendations pour la traduction de Plume en français'
time: 2 minutes
---
## Forme inclusive
- employer des [mots épicènes](https://fr.wikipedia.org/wiki/Mot_%C3%A9pic%C3%A8ne)
- employer le point médian: `musicien·nes`, `motivé·es`
## Glossaire
- email: e-mail
- feed: flux
- tag: étiquette
- token: jeton

@ -29,13 +29,15 @@ meaning that all your users will get disconnected. You can generate one with `op
- `DEFAULT_THEME`: the name of the default theme. It should be the same as the name of the directory containing the theme in `static/css`.
- `DB_MAX_SIZE`: the maximum number of database connections (`10` by default). Since v0.5.0.
- `DB_MIN_IDLE`: the minimum idle database connection count (the same to `DB_MAX_SIZE` by default). Since v0.5.0.
- `RUST_LOG`: the log level Pume outputs (`info` by default). You can set it for each library such as `RUST_LOG=debug,html5ever=warn,hyper=warn,tantivy=warn`.
- `SIGNUP`: the sign-up strategy (`password` by default). "password" means anyone can sign up with email address and password without confirmation. "email" means Plume requires email confirmation, which needs the mail server configuration detailed later. Since 0.7.1.
- `RUST_LOG`: the log level Plume outputs (`info` by default). You can set it for each library such as `RUST_LOG=debug,html5ever=warn,hyper=warn,tantivy=warn`.
## Mail
The SMTP server to send mails can be configured with:
- `MAIL_SERVER`: the SMTP server to connect to.
- `MAIL_PORT`: the SMTP port number.
- `MAIL_USER`: the username for authentication purposes.
- `MAIL_PASSWORD`: its password.
- `MAIL_HELO_NAME`: the name sent during EHLO/HELO.

@ -19,13 +19,17 @@ Plume on Windows devices.
b. For PostgreSQL:
Download [PostgreSQL Binaries](https://www.enterprisedb.com/download-postgresql-binaries), extract to an easy place (i.e. C:\Extra\pgsql), and add the bin folder to your system path variable.
Download [PostgreSQL Binaries](https://www.enterprisedb.com/download-postgresql-binaries), extract to an easy place (i.e. `C:\Extra\pgsql`), and add the bin folder to your system path variable (which is needed to load the `libpq.dll` later on).
4. Download and install [OpenSSL](https://slproweb.com/products/Win32OpenSSL.html) (i.e. C:\Extra\ssl)
5. Create new system variable called "OPENSSL_DIR" with a value of `C:\Extra\ssl` (or wherever you installed OpenSSL **NOTE**: this is _not_ to the bin folder, it must be to root to get the bin and lib folders!)
To support the linker, add a `PQ_LIB_DIR` environment variable and point the postgres `lib`-folder to it (e.g. `C:\Extra\pgsql\lib`). Without this hint, the linker may stop with `LINK : fatal error LNK1181: cannot open input file 'libpq.lib'`
4. Download and install [OpenSSL](https://slproweb.com/products/Win32OpenSSL.html) (i.e. `C:\Extra\ssl`). If not done by installer, add the bin folder to your system path variable (plume and plm will need `libcrypto-3-x64.dll` and `libssl-3-x64.dll`)
5. Create new system variable called `OPENSSL_DIR` with a value of `C:\Extra\ssl` (or wherever you installed OpenSSL **NOTE**: this is _not_ to the bin folder, it must be to root to get the bin and lib folders!)
6. Download and install [LLVM (libclang)](http://releases.llvm.org/9.0.0/LLVM-9.0.0-win64.exe) (i.e. C:\Extra\LLVM)
7. Create new system variable called "LIBCLANG_PATH" with a value of `C:\Extra\LLVM\bin` (or wherever you installed LLVM to)
8. Reboot your PC to continue
7. Create new system variable called `LIBCLANG_PATH` with a value of `C:\Extra\LLVM\bin` (or wherever you installed LLVM to)
8. Currently, the build process depends on few Linux commands (e.g. `xargs`, `stat`, ...). These commands are not available in a normal Windows environment. The simplest workaround is to install [Cygwin](https://www.cygwin.com/install.html) and later run the `cargo` commands from the Cygwin terminal. A minimum package is sufficient. If this is not the case, the creation process panics with `thread 'main' panicked at 'failed xargs command: Error { kind: NotFound, message: "program not found" }', build.rs...`. These dependencies may be removed in future releases to simplify the build process again.
9. The build needs [GNUgettext](https://github.com/vslavik/gettext-tools-windows/releases) to support text resources and internationalization. Download the zip file and extract it (e.g. to `C:\Extra\gnugettext`). Add the `bin`-folder to your `PATH` environment variable (e.g. `C:\Extra\gnugettext\bin`). As an alternative the `gettext` package of Cygwin can be used. However, since the goal is not to have Cygwin as a mandatory installation for the build, it is recommended to install GNUgettext as Windows binaries. If you miss GNUgettext, you will run in errors on building with `wasm-pack` (because the makros `compile_i18n!()` and `include_i18n!()` will not work)
10. Reboot your PC to continue
Now that these dependencies have been installed, we need to install Rust which has a special installer.

@ -57,19 +57,21 @@ Since Apache httpd 2.4.30, there's a new *experimental* module called [mod_md](h
```apache
MDBaseServer on
MDCertificateAgreement https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf
MDRequireHttps permanent # This means our http vhost will be automatically redirect to https
ServerAdmin you@DOMAIN_NAME # This is required to register with Let's Encrypt
# The next configuration directive means our http vhost will be automatically redirect to https
MDRequireHttps permanent
# ServerAdmin is required to register with Let's Encrypt
ServerAdmin you@DOMAIN_NAME
MDomain DOMAIN_NAME auto
<VirtualHost *:80>
ServerName DOMAIN_NAME
<VirtualHost>
</VirtualHost>
<VirtualHost *:443>
ServerName DOMAIN_NAME
ProxyPass / http://127.0.0.1:7878/
ProxyPassReverse / http://127.0.0.1:7878/
SSLEngine On
<VirtualHost>
</VirtualHost>
```

@ -12,6 +12,8 @@ cd Plume
Then, you'll need to install Plume and the CLI tools to manage your instance.
Run the following commands.
---
For **GNU/Linux** and **Mac OS X**:
```bash
@ -37,6 +39,8 @@ cargo install --no-default-features --features DATABASE,search-lindera --path pl
And then, you can configure Plume by `SEARCH_TAG_TOKENIZER`, `SEARCH_CONTENT_TOKENIZER` and/or `SEARCH_LANG` environment variables. See [Useful Environment Variables](../../../environment/) for details.
---
For **Windows**, if you are going to use SQLite, launch an additional cmd.exe as admin and do the following:
```
@ -51,17 +55,26 @@ lib /MACHINE:x64 /def:sqlite3.def /out:sqlite3.lib
copy C:\ProgramData\chocolatey\lib\SQLite\tools\sqlite3.lib C:\Users\%USERNAME%\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib\sqlite3.lib
```
You may close that cmd.exe window and proceed with your regularly scheduled installation. Remember to replace DATABASE
You may close that cmd.exe window and proceed with your regularly scheduled installation. Remember to replace `DATABASE`
with postgres or sqlite depending on what you want to use:
```
# Install diesel_cli
cargo +stable install diesel_cli --no-default-features --features DATABASE --version '=1.3.0' --verbose
```
# Build the front-end
Currently, the installation of `wasm-pack` may fail on Windows 64bit with the latest stable version. If this problem persists, set the version to `0.9.1` (which is the easiest workaround). (see [can't install cargo wasm-pack - Stackoverflow](https://stackoverflow.com/questions/68646684/cant-install-cargo-wasm-pack)). As an alternative, you can use one of the fix-steps mentioned in the Stackoverflow solution.
```
# Install wasm-pack
cargo install wasm-pack
# if the install fails, use:
# cargo install wasm-pack --vers 0.9.1
# Build the front-end
wasm-pack build --target web --release plume-front
```
```
# If using SQLite, copy sqlite3.lib from the stable version of RustUp to the nightly that was just installed
copy C:\Users\%USERNAME%\.rustup\toolchains\stable-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib\sqlite3.lib C:\Users\%USERNAME%\.rustup\toolchains\nightly-2020-01-15-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib\sqlite3.lib

@ -30,13 +30,11 @@ We use Crowdin to translate Plume's projects.
## Matrix
**[Group: +plume:disroot.org](https://app.element.io/#/group/+plume:disroot.org)**
**[Group: +plume-blog:matrix.org](https://matrix.to/#/#plume-blog:matrix.org)**
**[Main room: #plume:disroot.org](https://app.element.io/#/room/#plume:disroot.org)**
**[Main room: #plume-blog:matrix.org](https://matrix.to/#/#plume-blog:matrix.org)**
**[Developers: #plume-dev:disroot.org](https://app.element.io/#/room/#plume-dev:disroot.org)**
**[Translators: #plume-i18n:disroot.org](https://app.element.io/#/room/#plume-i18n:disroot.org)**
**[Developers: #plume-dev:matrix.org](https://matrix.to/#/#plume-dev:matrix.org)**
Matrix is our main discussion and support channel. We also make announcements about the project here, so you can join it
to stay tuned.

@ -2,7 +2,7 @@
title: Updating with Docker
---
To update your dockerized Plume instance, replace the version tag with `v0.5.0` in your `docker-compose.yml`
To update your dockerized Plume instance, replace the version tag with `0.7.1` in your `docker-compose.yml`
Then, run:
```bash

@ -3,7 +3,7 @@ title: Updating from source
---
To update your instance, run these commands with `plume` user if you created it, or with your default user, in the Plume directory.
Replace `DATABASE` with either postgres or sqlite depending on what you are using, and `PLUME_VERSION` with the latest version tag (`0.4.0-alpha-4` currently).
Replace `DATABASE` with either postgres or sqlite depending on what you are using, and `PLUME_VERSION` with the latest version tag (`0.7.1` currently).
```bash
# Get the latest version of the code

Loading…
Cancel
Save