diff --git a/.vscode/settings.json b/.vscode/settings.json
index cb7d824..dd4a247 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -46,5 +46,5 @@
],
"java.project.outputPath": "target/classes",
"java.format.settings.url": ".vscode/java-formatter.xml",
- "java.configuration.updateBuildConfiguration": "interactive"
+ "java.configuration.updateBuildConfiguration": "disabled"
}
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index de110f0..4375e2e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -222,6 +222,39 @@
+
+
+ org.apache.maven.plugins
+ maven-resources-plugin
+ 3.3.1
+
+
+ copy-welcome-project
+ process-resources
+ copy-resources
+
+ ${project.build.outputDirectory}/welcome-project
+
+
+ ${project.basedir}/src/docs
+
+ user-guide-en.md
+ tips-and-tricks-en.md
+
+
+
+ ${project.basedir}/src/docs/illustrations
+ illustrations
+
+ **/*
+
+
+
+
+
+
+
+
${project.build.directory}/build
@@ -513,7 +547,7 @@
- -Djava.net.preferIPv6Addresses=true
+
-Xmx512m
@@ -535,15 +569,34 @@
UtilityUtilitymarknote
+
+ ${project.basedir}/src/packaging/linux-resources${jpackage.bundle.id}${project.name}
+
${jpackage.win.dir.chooser}${jpackage.win.menu}${jpackage.win.shortcut}
+
diff --git a/src/docs/packaging.md b/src/docs/packaging.md
index b2a1e69..8acbc7e 100644
--- a/src/docs/packaging.md
+++ b/src/docs/packaging.md
@@ -31,6 +31,7 @@ Le script `build` fournit une action `package` qui génère une archive ZIP auto
- Un script de lancement adapté à l'OS (`MarkNote.sh` ou `MarkNote.bat`)
- Les icônes de l'application en plusieurs formats (`icons/`)
- Un **installeur spécifique à l'OS** (`install.sh` ou `install.bat`)
+- Les ressources du projet **MarkNote Welcome** (guide + illustrations)
L'archive est nommée selon le pattern : `MarkNote--.zip` (ex : `MarkNote-0.0.6-linux.zip`).
@@ -91,6 +92,7 @@ Après décompression du ZIP, le répertoire contient :
| `MarkNote.sh` ou `.bat` | Script de lancement |
| `icons/` | Icônes de l'application (SVG + PNG multi-tailles) |
| `install.sh` ou `install.bat`| Installeur spécifique à l'OS |
+| `welcome-project/` | Ressources intégrées pour que l'installeur provisionne `~/Documents/MarkNote Welcome` |
---
diff --git a/src/docs/tips-and-tricks-en.md b/src/docs/tips-and-tricks-en.md
new file mode 100644
index 0000000..6cde3e2
--- /dev/null
+++ b/src/docs/tips-and-tricks-en.md
@@ -0,0 +1,31 @@
+# MarkNote — Tips & Tricks
+
+## Productivity
+
+- Use `Ctrl+N` to create a new document quickly.
+- Use `Ctrl+S` and `Ctrl+Shift+S` to save without leaving the keyboard.
+- Use `Ctrl+F` (or the search box) to find notes and tags across your project.
+
+## Project navigation
+
+- Keep the **Project Explorer** open to create, rename, move, and organize notes.
+- Click tags in the **Tag Cloud** to launch instant filtered searches.
+- Use the **Visual Link Panel** to discover related notes through backlinks.
+
+## Writing
+
+- Use front matter (`title`, `tags`, `summary`, `author`, `date`) to structure your notes.
+- Drag and drop files from the explorer into the editor to create links quickly.
+- Keep an eye on the **Preview Panel** to validate formatting while writing.
+
+## Panels and layout
+
+- Detach any panel from the menu to focus on your editor workspace.
+- Reattach panels when you need the full workspace again.
+- Customize the theme from **Options** to improve readability in your environment.
+
+## Git and AI
+
+- Enable Git support to see file status indicators directly in the explorer.
+- Open the LLM panel to summarize, compare, or explain notes from your project context.
+- Tune LLM endpoint/model/timeout in **Options** before starting a long session.
diff --git a/src/packaging/linux-resources/template.postinst b/src/packaging/linux-resources/template.postinst
new file mode 100644
index 0000000..44d455c
--- /dev/null
+++ b/src/packaging/linux-resources/template.postinst
@@ -0,0 +1,58 @@
+#!/bin/sh
+# postinst script for APPLICATION_PACKAGE
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+# * `configure'
+# * `abort-upgrade'
+# * `abort-remove' `in-favour'
+#
+# * `abort-remove'
+# * `abort-deconfigure' `in-favour'
+# `removing'
+#
+# for details, see https://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+package_type=deb
+LAUNCHER_AS_SERVICE_SCRIPTS
+
+case "$1" in
+ configure)
+DESKTOP_COMMANDS_INSTALL
+LAUNCHER_AS_SERVICE_COMMANDS_INSTALL
+
+ # ── Copier les fichiers de bienvenue ──────────────────────────
+ INSTALL_DIR=/opt/marknote
+ JAR_FILE="$INSTALL_DIR/lib/MarkNote.jar"
+ # Copie dans le dossier Documents de tous les utilisateurs existants
+ for USER_HOME in /home/*/; do
+ TARGET_DIR="$USER_HOME/Documents/MarkNote Welcome"
+ if [ -f "$JAR_FILE" ]; then
+ mkdir -p "$TARGET_DIR"
+ unzip -q -o "$JAR_FILE" "welcome-project/*" -d /tmp/marknote-welcome-extract 2>/dev/null || true
+ if [ -d /tmp/marknote-welcome-extract/welcome-project ]; then
+ cp -r /tmp/marknote-welcome-extract/welcome-project/. "$TARGET_DIR/"
+ rm -rf /tmp/marknote-welcome-extract
+ fi
+ # Donner les droits au propriétaire du dossier home
+ USER_NAME=$(basename "$USER_HOME")
+ chown -R "$USER_NAME:$USER_NAME" "$TARGET_DIR" 2>/dev/null || true
+ fi
+ done
+ # ─────────────────────────────────────────────────────────────
+ ;;
+
+ abort-upgrade|abort-remove|abort-deconfigure)
+ ;;
+
+ *)
+ echo "postinst called with unknown argument \`$1'" >&2
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/src/packaging/post-install-mac.sh b/src/packaging/post-install-mac.sh
new file mode 100755
index 0000000..24f1d40
--- /dev/null
+++ b/src/packaging/post-install-mac.sh
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+# Script post-installation pour macOS
+# Copie les fichiers de bienvenue dans le dossier Documents de l'utilisateur
+
+set -e
+
+# Chemin vers le JAR installé (à ajuster selon l'emplacement d'installation)
+INSTALL_DIR="/Applications/MarkNote.app/Contents/Java"
+JAR_FILE="$INSTALL_DIR/MarkNote.jar"
+
+# Dossier de destination pour les fichiers de bienvenue
+TARGET_DIR="$HOME/Documents/MarkNote Welcome"
+
+# Créer le dossier de destination s'il n'existe pas
+mkdir -p "$TARGET_DIR"
+
+# Extraire les fichiers de bienvenue du JAR
+if [ -f "$JAR_FILE" ]; then
+ echo "Extraction des fichiers de bienvenue..."
+ unzip -q -o "$JAR_FILE" "welcome-project/*" -d "$TARGET_DIR"
+
+ # Supprimer le dossier welcome-project temporaire
+ if [ -d "$TARGET_DIR/welcome-project" ]; then
+ mv "$TARGET_DIR/welcome-project"/* "$TARGET_DIR/"
+ rmdir "$TARGET_DIR/welcome-project"
+ fi
+
+ echo "Fichiers de bienvenue installés dans $TARGET_DIR"
+else
+ echo "Erreur: JAR non trouvé à $JAR_FILE" >&2
+ exit 1
+fi
+
+exit 0
\ No newline at end of file
diff --git a/src/packaging/post-install.bat b/src/packaging/post-install.bat
new file mode 100644
index 0000000..99d505d
--- /dev/null
+++ b/src/packaging/post-install.bat
@@ -0,0 +1,40 @@
+@echo off
+
+:: Script post-installation pour Windows
+:: Copie les fichiers de bienvenue dans le dossier Documents de l'utilisateur
+
+setlocal enabledelayedexpansion
+
+:: Chemin vers le JAR installé (à ajuster selon l'emplacement d'installation)
+set "INSTALL_DIR=C:\Program Files\MarkNote"
+set "JAR_FILE=%INSTALL_DIR%\lib\MarkNote.jar"
+
+:: Dossier de destination pour les fichiers de bienvenue
+set "TARGET_DIR=%USERPROFILE%\Documents\MarkNote Welcome"
+
+:: Créer le dossier de destination s'il n'existe pas
+if not exist "!TARGET_DIR!" (
+ mkdir "!TARGET_DIR!"
+)
+
+:: Vérifier si le JAR existe
+if exist "!JAR_FILE!" (
+ echo Extraction des fichiers de bienvenue...
+
+ :: Extraire les fichiers de bienvenue du JAR
+ jar -xf "!JAR_FILE!" "welcome-project/" -C "!TARGET_DIR!"
+
+ :: Déplacer les fichiers du sous-dossier welcome-project
+ if exist "!TARGET_DIR!\welcome-project" (
+ move /Y "!TARGET_DIR!\welcome-project\*" "!TARGET_DIR!\" >nul
+ rmdir "!TARGET_DIR!\welcome-project"
+ )
+
+ echo Fichiers de bienvenue installés dans !TARGET_DIR!
+) else (
+ echo Erreur: JAR non trouvé à !JAR_FILE!
+ exit /b 1
+)
+
+endlocal
+exit /b 0
\ No newline at end of file
diff --git a/src/packaging/post-install.sh b/src/packaging/post-install.sh
new file mode 100755
index 0000000..675f255
--- /dev/null
+++ b/src/packaging/post-install.sh
@@ -0,0 +1,35 @@
+#!/bin/bash
+
+# Script post-installation pour copier les fichiers de bienvenue
+# Ce script est exécuté après l'installation du package Debian
+
+set -e
+
+# Chemin vers le JAR installé (à ajuster selon l'emplacement d'installation)
+INSTALL_DIR=/opt/MarkNote
+JAR_FILE=$INSTALL_DIR/lib/MarkNote.jar
+
+# Dossier de destination pour les fichiers de bienvenue
+TARGET_DIR=$HOME/Documents/MarkNote Welcome
+
+# Créer le dossier de destination s'il n'existe pas
+mkdir -p "$TARGET_DIR"
+
+# Extraire les fichiers de bienvenue du JAR
+if [ -f "$JAR_FILE" ]; then
+ echo "Extraction des fichiers de bienvenue..."
+ unzip -q -o "$JAR_FILE" "welcome-project/*" -d "$TARGET_DIR"
+
+ # Supprimer le dossier welcome-project temporaire
+ if [ -d "$TARGET_DIR/welcome-project" ]; then
+ mv "$TARGET_DIR/welcome-project"/* "$TARGET_DIR/"
+ rmdir "$TARGET_DIR/welcome-project"
+ fi
+
+ echo "Fichiers de bienvenue installés dans $TARGET_DIR"
+else
+ echo "Erreur: JAR non trouvé à $JAR_FILE" >&2
+ exit 1
+fi
+
+exit 0
\ No newline at end of file