Skip to content

NgPost conf fr

Hydro74000 edited this page May 31, 2026 · 2 revisions
ngPost

Référence ngPost.conf

Langues: English | Français

Cette page liste les clés de configuration reconnues par ngPost dans ngPost.conf. Les noms de clés ne sont pas sensibles à la casse.

Consultez Configuration pour l'emplacement du fichier et la migration depuis les anciens chemins.

Exemple minimal

lang = FR
nzbPath = /data/nzbs
GROUPS = alt.binaries.test
GROUP_POLICY = EACH_POST
POST_DB = /data/ngPost_history.sqlite

[server]
host = news.example.com
port = 563
ssl = true
user = myUser
pass = myPass
connection = 20
enabled = true
nzbCheck = false
useVpn = false

Règles de syntaxe

  • Utilisez CLE = valeur.
  • Les lignes vides et les lignes commençant par # ou / sont ignorées.
  • Les booléens acceptent true, on ou 1 ; la plupart des autres valeurs sont considérées comme fausses.
  • Vous pouvez définir plusieurs lignes NZB_POST_CMD : chaque ligne ajoute une commande exécutée après chaque post.
  • Répétez [server] pour configurer plusieurs fournisseurs NNTP.
  • Répétez [vpn_profile] pour configurer plusieurs profils VPN.

Options générales

Clé Exemple Rôle
lang lang = FR Langue de l'application. Valeurs supportées : EN, FR, ES, DE, NL, PT, ZH.
nzbPath nzbPath = /data/nzbs Dossier de sortie par défaut des NZB générés. L'option CLI -o prend le dessus.
inputDir inputDir = /data/incoming Dossier ouvert par défaut dans le sélecteur de fichiers de l'interface graphique.
GROUPS GROUPS = alt.binaries.test,alt.binaries.misc Groupes de post, séparés par des virgules.
GROUP_POLICY GROUP_POLICY = EACH_POST Politique de répartition : ALL, EACH_POST, EACH_FILE.
FROM FROM = poster@example.com Email fixe du posteur. Si absent, ngPost peut en générer un.
GEN_FROM GEN_FROM = true Génère un nouveau posteur aléatoire pour chaque post en mode auto/monitor.
thread thread = 4 Nombre de threads de post. Par défaut, ngPost utilise les coeurs disponibles.
DISP_PROGRESS DISP_PROGRESS = BAR Affichage de progression CLI : NONE, BAR ou FILES.
msg_id msg_id = ngPost Signature du Message-ID après le @.
article_size article_size = 716800 Taille des articles en octets.
retry retry = 5 Nombre de tentatives pour les articles en échec.
obfuscate obfuscate = article Obfusque les sujets des articles avec des UUID. Conservez le NZB.
PROXY_SOCKS5 PROXY_SOCKS5 = user:pass@host:1080 Proxy SOCKS5 pour le trafic réseau.
SHUTDOWN_CMD SHUTDOWN_CMD = sudo -n shutdown -h now Commande exécutée quand la file d'attente est terminée.
NZB_UPLOAD_URL NZB_UPLOAD_URL = https://example/upload Upload des NZB générés vers http, https ou ftp.
NZB_POST_CMD NZB_POST_CMD = script "__nzbPath__" Commande lancée après chaque post. Définissez plusieurs lignes NZB_POST_CMD pour lancer plusieurs commandes.
NZB_RM_ACCENTS NZB_RM_ACCENTS = true Supprime les accents et caractères spéciaux des noms de NZB.
AUTO_CLOSE_TABS AUTO_CLOSE_TABS = true Interface graphique : ferme automatiquement les onglets de post rapide réussis.
CHECK_FOR_UPDATES CHECK_FOR_UPDATES = true Vérifie une fois par jour s'il existe une nouvelle version sur GitHub.
LAST_UPDATE_CHECK LAST_UPDATE_CHECK = 0 Timestamp interne géré par ngPost. Ne pas modifier manuellement.
LOG_IN_FILE LOG_IN_FILE = true Interface graphique : écrit les logs dans ngPost.log pour le debug.

Surveillance et automatisation

Clé Exemple Rôle
MONITOR_NZB_FOLDERS MONITOR_NZB_FOLDERS = true Stocke les NZB de chaque dossier surveillé dans son propre sous-dossier sous nzbPath.
MONITOR_EXTENSIONS MONITOR_EXTENSIONS = mkv,mp4,iso Ne surveille que ces extensions. Sans point.
MONITOR_IGNORE_DIR MONITOR_IGNORE_DIR = true Ignore les nouveaux dossiers en mode monitor.
MONITOR_SEC_DELAY_SCAN MONITOR_SEC_DELAY_SCAN = 5 Attend 1 à 120 secondes que la taille d'un fichier/dossier se stabilise avant de poster.
RESUME_WAIT RESUME_WAIT = 30 Délai en secondes avant reprise automatique après perte réseau. Valeur effective minimale : 30.
NO_RESUME_AUTO NO_RESUME_AUTO = true Désactive la reprise automatique en cas de perte réseau.
SOCK_TIMEOUT SOCK_TIMEOUT = 30 Timeout d'inactivité socket en secondes. Valeur effective minimale : 5.
PREPARE_PACKING PREPARE_PACKING = true Prépare le packing du post suivant pendant l'upload du post courant.

Historique

Clé Exemple Rôle
POST_DB POST_DB = /data/ngPost_history.sqlite Chemin de la base SQLite d'historique structurée. C'est le backend actuel.
HISTORY_STORE_PASSWORDS HISTORY_STORE_PASSWORDS = false Stocke les mots de passe d'archive dans l'historique SQLite.
POST_HISTORY POST_HISTORY = /data/ngPost_history.csv Chemin de l'ancien historique CSV. Conservé pour import/compatibilité.
FIELD_SEPARATOR FIELD_SEPARATOR = ; Séparateur de champs pour l'ancien historique CSV.

Options NFO

Clé Exemple Rôle
KEEP_NFO_EXTENSION KEEP_NFO_EXTENSION = true Conserve .nfo visible lorsque les noms de fichiers sont obfusqués.
NZB_COPY_NFO NZB_COPY_NFO = true Copie le .nfo original à côté du NZB généré.
AUTO_INCLUDE_NFO AUTO_INCLUDE_NFO = true Mode auto/monitor : inclut un .nfo voisin dans le même post.

Compression et parité

Clé Exemple Rôle
PACK PACK = COMPRESS, GEN_NAME, GEN_PASS, GEN_PAR2 Recette de packing par défaut utilisée par l'interface et la CLI --pack. Mots-clés autorisés : COMPRESS, GEN_NAME, GEN_PASS, GEN_PAR2.
AUTO_COMPRESS AUTO_COMPRESS = true Ancienne clé. Utilisez PACK à la place.
TMP_DIR TMP_DIR = /tmp Dossier temporaire pour les archives et fichiers par2. Doit être inscriptible.
TMP_RAM TMP_RAM = /mnt/ngPost_tmpfs Dossier temporaire optionnel en tmpfs/RAM lorsqu'il est disponible.
TMP_RAM_RATIO TMP_RAM_RATIO = 1.1 Ratio d'espace libre requis pour TMP_RAM. Plage valide : 1.1 à 2.0.
RAR_PATH RAR_PATH = /usr/bin/rar Chemin vers rar ou 7z. Les builds AppImage/Windows peuvent détecter les outils intégrés.
RAR_EXTRA RAR_EXTRA = -ep1 -m0 -k -rr5p Options supplémentaires passées à RAR/7z.
RAR_SIZE RAR_SIZE = 42 Taille des volumes d'archive en Mo. 0 signifie pas de découpage.
RAR_MAX RAR_MAX = 99 Nombre maximum de volumes ; ngPost ajuste la taille si nécessaire.
RAR_PASS RAR_PASS = myPassword Mot de passe d'archive fixe pour les posts compressés.
KEEP_RAR KEEP_RAR = true Conserve les archives/par2 générés après un post réussi.
RAR_NO_ROOT_FOLDER RAR_NO_ROOT_FOLDER = true Retire le dossier parent racine lors de la compression de dossiers.
PAR2_PCT PAR2_PCT = 8 Pourcentage de redondance par2. 0 désactive la génération par2.
PAR2_PATH PAR2_PATH = /usr/local/bin/parpar Chemin vers par2/ParPar/MultiPar.
PAR2_ARGS PAR2_ARGS = -s1M --auto-slice-size -r1n*0.6 -m2048M -p1l --progress stdout -q Arguments fixes pour l'outil compatible par2.
LENGTH_NAME LENGTH_NAME = 22 Longueur des noms d'archives aléatoires.
LENGTH_PASS LENGTH_PASS = 15 Longueur des mots de passe aléatoires.

Sections serveur

Chaque bloc [server] définit un serveur NNTP.

[server]
host = news.example.com
port = 563
ssl = true
user = myUser
pass = myPass
connection = 20
enabled = true
nzbCheck = false
useVpn = true
Clé Rôle
host Nom d'hôte ou IP du serveur NNTP.
port Port NNTP. Valeurs courantes : 119, 563, 443.
ssl Active TLS/SSL.
user Nom d'utilisateur NNTP.
pass Mot de passe NNTP.
connection Nombre de connexions NNTP pour ce serveur.
enabled Active/désactive ce serveur pour le post.
nzbCheck Utilise ce serveur pour les vérifications de disponibilité NZB.
useVpn Route ce serveur via le profil VPN actif.

Options VPN

La configuration VPN moderne utilise VPN_AUTO_CONNECT, VPN_ACTIVE_PROFILE et un ou plusieurs blocs [vpn_profile].

VPN_AUTO_CONNECT = true
VPN_ACTIVE_PROFILE = Mullvad-NL

[vpn_profile]
name = Mullvad-NL
backend = wireguard
config_file = mullvad-nl.conf
has_auth = false
Clé Portée Rôle
VPN_AUTO_CONNECT global Démarre automatiquement le profil VPN actif lorsqu'une tâche en a besoin.
VPN_ACTIVE_PROFILE global Nom du profil VPN actif.
VPN_BACKEND global legacy Ancien backend mono-profil, openvpn ou wireguard ; conservé pour migration.
VPN_CONFIG_PATH global legacy Ancien chemin de configuration mono-profil ; conservé pour migration.
name [vpn_profile] Nom du profil.
backend [vpn_profile] openvpn ou wireguard.
config_file [vpn_profile] Nom du fichier de configuration importé sous le dossier vpn/ de la config.
has_auth [vpn_profile] Indique si le profil OpenVPN nécessite identifiant/mot de passe.

Placeholders des commandes post-NZB

NZB_POST_CMD peut utiliser ces placeholders :

Si plusieurs lignes NZB_POST_CMD sont présentes, ngPost les exécute toutes après chaque post, dans l'ordre où elles apparaissent dans le fichier de configuration.

Placeholder Signification
__nzbPath__ Chemin complet du NZB écrit.
__nzbName__ Nom du NZB sans extension, basé sur le nom source original.
__rarName__ Nom de l'archive, utile notamment en cas d'obfuscation.
__rarPass__ Mot de passe d'archive.
__sizeInByte__ Taille du post avant encodage yEnc.
__groups__ Liste des groupes séparés par des virgules.
__nbFiles__ Nombre de fichiers dans le post.
__nbArticles__ Nombre d'articles.
__nbArticlesFailed__ Nombre d'articles dont le post a échoué.

Exemple :

NZB_POST_CMD = curl -X POST -F "file=@__nzbPath__" -F "api=12345" https://example/post-api
NZB_POST_CMD = ~/scripts/postNZB.sh "__nzbPath__" "__groups__" __rarName__ __rarPass__

Exemple pratique : copier le NZB dans un dossier d'archive, puis notifier un script maison.

NZB_POST_CMD = cp "__nzbPath__" "/data/archive-nzbs/"
NZB_POST_CMD = ~/scripts/notify-post.sh "__nzbName__" "__groups__" "__rarName__" "__rarPass__"

Dans cet exemple, les deux commandes sont lancées après chaque post. La première archive le fichier NZB généré ; la seconde appelle un script avec le nom du post, les groupes, le nom d'archive et le mot de passe.

Exemples complets

Packing automatique avec archive aléatoire

nzbPath = /data/nzbs
GROUPS = alt.binaries.test
PACK = COMPRESS, GEN_NAME, GEN_PASS, GEN_PAR2
TMP_DIR = /data/tmp
RAR_PATH = /usr/bin/rar
RAR_SIZE = 100
PAR2_PCT = 8
LENGTH_NAME = 22
LENGTH_PASS = 15

Surveiller uniquement des fichiers vidéo

MONITOR_EXTENSIONS = mkv,mp4,avi
MONITOR_IGNORE_DIR = true
MONITOR_SEC_DELAY_SCAN = 10
MONITOR_NZB_FOLDERS = true

Utiliser un VPN pour un seul serveur

VPN_AUTO_CONNECT = true
VPN_ACTIVE_PROFILE = Privacy

[vpn_profile]
name = Privacy
backend = openvpn
config_file = privacy.ovpn
has_auth = true

[server]
host = news.example.com
port = 563
ssl = true
user = myUser
pass = myPass
connection = 20
enabled = true
useVpn = true

Clone this wiki locally