Compiler à partir des sources

La première étape pour compiler le code source de Plume est de le récupérer.

git clone https://git.joinplu.me/Plume/Plume.git
cd Plume

Ensuite, vous devrez installer Plume et les outils CLI pour gérer votre instance. Lancez les commandes qui suivent.


Pour GNU/Linux et Mac OS X :

# Construire la partie client
cargo install wasm-pack
wasm-pack build --target web --release plume-front

# Construire la partie serveur, remplacez DATABASE par
# postgres ou sqlite selon celui que vous souhaitez utiliser
cargo install --no-default-features --features DATABASE --path .

# Construire plm, l'outil en CLI, remplacez encore DATABASE
cargo install --no-default-features --features DATABASE --path plume-cli

Depuis la v0.5.0, Plume supporte Lindera, une bibliothèque d'analyse morphologique japonaise pour la recherche en japonais. Si vous voulez l'utiliser, passez l'option search-lindera à --features pour construire plume et plume-cli:

cargo install --no-default-features --features DATABASE,search-lindera
cargo install --no-default-features --features DATABASE,search-lindera --path plume-cli

Et puis, vous pouvez configurer Plume avec les variables d'environnements : SEARCH_TAG_TOKENIZER, SEARCH_CONTENT_TOKENIZER et/ou SEARCH_LANG. Voir Variables d'environnement utiles pour plus de détails.


Pour Windows, si vous souhaitez utiliser SQLite, lancez un autre cmd.exe en tant qu'administrateur et exécutez :

# Installation, compilation et conversion de SQLite avec chocolatey

choco install sqlite
cd C:\ProgramData\chocolatey\lib\SQLite\tools
"C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Auxiliary\Build\vcvarsall.bat" x86_amd64
lib /MACHINE:x64 /def:sqlite3.def /out:sqlite3.lib

# Copie de sqlite3.lib vers le dossier d'installation de RustUp
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

Vous pouvez fermer ce cmd.exe et continuer avec l'installation normale. 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

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). 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

# Build the back-end, replacing DATABASE either with
# postgres or sqlite depending on what you want to use
cargo install --no-default-features --features DATABASE --path .

# Build plm, the CLI helper, replacing DATABASE again
cargo install --no-default-features --features DATABASE --path plume-cli

These commands can take a long time to run and use quite a lot of resources.

Once it’s done, you can configure your instance.

Configuration