La motivation derrière le projet est de fournir une application de bureau native pour Matrix qui ressemble plus à une application de chat grand public (élément, télégramme, etc.) et moins comme un client IRC.
Pour d'autres options et détails, consultez la section d'installation.
Aidez-nous à des traductions afin que le plus de personnes possible puisse utiliser Nheko!
L'implémentation actuelle est principalement stable, mais elle n'a jamais été audité. Si vous en comptez sur la sécurité, nous ne pouvons faire aucune garantie.
La plupart des fonctionnalités que vous attendez d'une application de chat manquent actuellement, mais nous nous approchons d'un client complet de fonctionnalités. Plus précisément, il existe un support pour:
-p name ).Les versions pour Linux (FlatPak), MacOS (image disque) et Windows (x64 MSIX ou Appinstaller) se trouvent dans les versions GitHub. L'AppInstaller sur Windows vérifiera régulièrement nos serveurs pour les mises à jour. Le MSIX ne le fera pas.
sudo pacman -Syu nhekoLa version de développement est disponible dans l'AUR:
yay -S nheko-git # Or your favorite way of installing AUR packagesNheko nécessite un serveur secret pour s'exécuter, vous devrez donc installer et configurer un service tel que le portefeuille KDE ou le clés GNOME si vous n'êtes pas fourni par votre environnement de bureau.
sudo apt install nhekosudo dnf install nhekosudo eselect repository enable guru
sudo emaint sync -r guru
sudo emerge -a nheko Si vous utilisez Gnome Keyring ou KeepassXc comme démon de secrets, assurez-vous que le keyring USEFLAG est activé sur dev-libs/qtkeychain .
sudo urpmi nheko # Imperatively: (not recommended)
nix-env -iA nixpkgs.nheko
# In an ephemeral shell: (recommended if you just want to try it out without committing to a full installation)
nix-shell -p nheko --run nheko
# Note: The above command will both install and run Nheko.
# To stop it from running immediately, just remove the `--run nheko` from the end.Alternativement, ajoutez-le à votre configuration de l'une des manières suivantes: (recommandée pour l'installation à long terme)
À l'échelle du système:
environment . systemPackages = with pkgs ; [
# ...
nheko
# ...
] ;Spécifique à l'utilisateur:
users . users . <user> . packages = with pkgs ; [
# ...
nheko
# ...
] ; via home-manager :
programs . nheko . enable = true ; Assurez-vous que les référentiels de test de edge sont activés. Notez que cela n'est pas nécessaire sur les marchands-ports.
sudo apk add nhekoRemarque: Ces instructions n'ont été testées que sur Tumbleweed.
Tout d'abord, installez Nheko:
sudo zypper addrepo https://download.opensuse.org/repositories/network:messaging:matrix/openSUSE_Tumbleweed/network:messaging:matrix.repo
sudo zypper ref
sudo zypper in nhekoSi vous souhaitez ajouter un support JDenticon:
sudo zypper install qt-jdenticon flatpak install flathub im.nheko.Nheko
guix install nheko
Installez NHEKO via l'application Discover en mode Desktop (cela installe le FlatPak). Pour le faire également fonctionner en mode jeu, vous aurez créé un script wrapper qui démarre Kwalletd puis Nheko. Vous pouvez créer /home/deck/nheko.sh avec le contenu suivant, puis ajouter ce script en tant que "jeu non steam" à Steam.
#! /bin/sh
kwalletd6 &
flatpak run --env=XDG_CURRENT_DESKTOP=KDE --env=KDE_SESSION_VERSION=5 --branch=stable --arch=x86_64 --command=im.nheko.Nheko --file-forwarding im.nheko.Nheko @@u @@avec homebrew:
brew install --cask nhekoavec chocolat:
choco install nheko - rebornNheko ne fournit pas de binaires pour les plugins D-bus. Cependant, nous fournissons la liste suivante des plugins connus:
Q: Pourquoi les vidéos ne fonctionnent-elles pas pour moi sur Windows?
R: Vous manquez probablement les codecs vidéo requis, téléchargez K-Lite Codec Pack.
Q: Quelles commandes sont prises en charge par Nheko?
R: Voir https://github.com/nheko-reborn/nheko/wiki/Commands
Q: Nheko prend-il en charge le cryptage de bout en bout (EE2E)?
R: Oui, voir la liste des fonctionnalités
Q: Puis-je tester une version de développement des bords de saignement?
R: Découvrez les constructions de nuit https://matrix-static.neko.dev/room/!tshdrgpbnbdmfdeegn:neko.dev/
Q: Comment ajouter des autocollants et des emojis personnalisés?
R: Les autocollants et les emojis personnalisés sont organisés en packs d'images. Il y a un pack d'images utilisateur auquel seul votre compte a accès et il y a des packs d'images de pièce accessibles par tous dans la pièce dans laquelle ils sont définis. Vous pouvez activer un pack d'images de pièce à l'échelle mondiale pour l'utiliser dans n'importe quelle pièce.
Pour gérer les packs d'images à Nheko, accédez aux paramètres de la pièce et entrez les paramètres d'autocollant et d'émote. Vous verrez le pack privé (votre pack d'images utilisateur) et pourrez le modifier là-bas. Le shortcode est un identifiant unique que vous utilisez pour sélectionner l'image avec et le corps est le texte alternatif affiché sur les clients qui ne prennent pas en charge les images (comme la balise ALT dans les images HTML).
Si vous avez les autorisations nécessaires, vous pouvez créer de nouveaux packs de pièce avec le bouton en bas de la liste des packs d'images. Ils sont les mêmes que le pack utilisateur, mais vous pouvez en créer autant que vous le souhaitez et tout le monde dans la pièce peut les utiliser. Ce pourrait être une bonne idée de créer une pièce supplémentaire juste pour que vos packs d'image facilitent le partage.
Q: Je ne vois pas certains types d'images!
R: Nheko utilise des plugins d'image de QT pour rendre les images. Vous devrez peut-être installer des packages supplémentaires pour afficher certains types d'images comme WebP. Habituellement, ces packages sont appelés qt6-image-formats-plugins , qt6-imageformats ou similaires. KDE a des plugins similaires, qui peuvent étendre encore plus les types d'images pris en charge.
-DVOIP=OFF pour désactiver.).-DSCREENSHARE_X11=OFF .-DLIBSECRET_SUPPORT=OFF .) Nheko peut utiliser automatiquement la version groupée pour la plupart de ces bibliothèques, si les versions de votre distribution sont trop anciennes. Pour les utiliser, vous pouvez activer l'intégration Hunter en passant -DHUNTER_ENABLED=ON . Il est probablement sage de relier ces dépendances statiquement en passant -DBUILD_SHARED_LIBS=OFF vous pouvez sélectionner les dépendances groupées que vous souhaitez utiliser en passant diverses drapeaux -DUSE_BUNDLED_* . Par défaut, toutes les dépendances sont regroupées si vous activez Hunter. (L'exception à cela est OpenSSL, qui est toujours désactivée par défaut.) Si vous rencontrez des problèmes de création et que vous essayez de relier la bibliothèque mtxclient sans chasseur, assurez-vous que la version de la bibliothèque (Commit) comme mentionné dans CMakeList.txt est utilisé. Parfois, nous devons apporter des changements de rupture dans mtxclient et pendant cette période, la branche maître des deux références peut ne pas être compatible.
Les drapeaux du bundle sont actuellement:
Une note sur OpenSSL groupé: vous devez l'activer explicitement et il n'utilisera pas votre répertoire de certificat système par défaut, si vous l'activez. Vous devez remplacer cela lors de l'exécution avec la variable SSL_CERT_FILE. Sur Windows, il utilisera toujours vos certificats système, car il les charge à partir du magasin système au lieu du répertoire OpenSSL.
Si vous ne souhaitez pas installer de dépendances externes, vous pouvez générer une applimage localement à l'aide de Docker. Ce n'est pas si bien entretenu cependant ...
make docker-app-imagesudo pacman -S qt6-base
qt6-tools
qt6-multimedia
qt6-svg
cmake
gcc
fontconfig
lmdb
cmark
qtkeychain-qt6 # Install build requirements
sudo apt install -y cmake asciidoc-base libevent-dev libspdlog-dev libre2-dev liblmdb++-dev libcurl4-openssl-dev libssl-dev libolm-dev libcmark-dev nlohmann-json3-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-bad1.0-dev libkdsingleapplication-qt6-dev
sudo apt install -y qt6-base-dev qt6-tools-dev qt6-svg-dev qt6-multimedia-dev qt6-declarative-dev qtkeychain-qt6-dev qt6-base-private-dev qt6-declarative-private-dev
# Clone nheko repository from github
sudo apt install -y git
git clone https://github.com/Nheko-Reborn/nheko && cd nheko
# Build
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DUSE_BUNDLED_COEURL=1 -DUSE_BUNDLED_MTXCLIENT=1 -DUSE_BUNDLED_LMDBXX=1
cmake --build buildBuild Exigences + Modules QML nécessaires au moment de l'exécution (vous n'aurez peut-être pas besoin de tous, mais les suivants semblent fonctionner en fonction des rapports):
sudo apt install --no-install-recommends g++ cmake make zlib1g-dev libssl-dev libolm-dev liblmdb-dev libcmark-dev nlohmann-json3-dev libspdlog-dev libevent-dev libcurl4-openssl-dev libre2-dev libxcb-ewmh-dev asciidoc-base
qt{base,declarative,tools,multimedia,quickcontrols2-}5-dev libqt6svg5-dev qt6keychain-dev qml-module-qt{gstreamer,multimedia,quick-extras,-labs-settings,graphicaleffects,quick-controls2,quick-particles2}
libgstreamer1.0-dev libgstreamer-plugins-{base,bad}1.0-dev qtgstreamer-plugins-qt6 libnice-dev ninja-build LMDB ++ - Dev est trop ancien, donc LMDBXX doit être utilisé.
libspdlog-dev dans Debian Bullseye est trop ancien (sans report), il faut donc utiliser Hunter pour utiliser un spdlog groupé.
Flags suggérés pour Debian Bullseye: -DHUNTER_ENABLED=ON -DBUILD_SHARED_LIBS=OFF -DUSE_BUNDLED_OPENSSL=OFF
Faculteurs suggérés pour Debian Bookwall: -DUSE_BUNDLED_COEURL=1 -DUSE_BUNDLED_MTXCLIENT=1 -DUSE_BUNDLED_LMDBXX=1
sudo dnf builddep nheko # note that some newer packages might not be captured by that sudo emerge -a " >=dev-qt/qtgui-5.15.0 " media-libs/fontconfig dev-libs/qtkeychainguix environment nhekobrew update
brew install qt6 lmdb cmake llvm spdlog cmark libolm qtkeychainInstallez le «développement de bureau» et «Linux de développement de Visual Studio 2022 avec C ++» (pour l'intégration CMake).
Téléchargez le dernier QT pour Windows Installer et installez-le quelque part. Assurez-vous d'installer l'ensemble d'outils MSVC 2022 64-bit pour au moins QT 5.15.
Si vous n'avez pas installé OpenSSL, vous devrez installer Perl pour le construire (c'est-à-dire la fraise perl).
Nous pouvons maintenant construire Nheko:
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release
cmake --build buildPour utiliser des dépendances groupées, vous pouvez utiliser Hunter, c'est-à-dire:
cmake -S. -Bbuild -DHUNTER_ENABLED=ON -DBUILD_SHARED_LIBS=OFF -DUSE_BUNDLED_OPENSSL=OFF
cmake --build build --config ReleaseAdaptez l'usage_bundled_ * au besoin.
Si la construction échoue avec l'erreur suivante
Could not find a package configuration file provided by "Qt6Widgets" with
any of the following names:
Qt6WidgetsConfig.cmake
qt6widgets-config.cmake
Vous devrez peut-être passer -DCMAKE_PREFIX_PATH pour le pointer pour le pointer à votre installation QT6.
par exemple sur macOS
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=$(brew --prefix qt6)
cmake --build build
Le binaire nheko sera situé dans le répertoire build .
Après avoir installé toutes les dépendances, vous devez modifier le CMakeSettings.json pour pouvoir charger et compiler Nheko dans Visual Studio.
Vous devez remplir les chemins du Qt6_DIR . Le Qt6 Dir doit pointer vers le libcmakeQt6 .
Les exemples pour les chemins sont:
C:\Qt\6.5.2\msvc2017_64\lib\cmake\Qt6 Vous devez également activer Hunter en OFF HUNTER_ENABLED sur ON et BUILD_SHARED_LIBS .
Maintenant, cliquez avec le bouton droit dans le répertoire source Root Nheko et choisissez Open in Visual Studio . Vous pouvez choisir la version et déboguer du type de build dans la barre d'outils supérieure. Après une génération Cmake réussie, vous pouvez sélectionner le nheko.exe comme cible d'exécution. Choisissez maintenant Build all dans le menu CMake ou appuyez sur F7 pour compiler l'exécutable.
Pour pouvoir exécuter l'application, la dernière étape consiste à installer les dépendances QT nécessaires à côté du binaire Nheko.
Démarrez le "QT X.XX.X 64 bits pour le bureau (MSVC 2017)" Commande Prom et exécutez windeployqt .
cd < path-to-nheko > build-vcReleaseRelease
windeployqt nheko.exe Le binaire final sera situé à l'intérieur build-vcReleaseRelease pour la version Build et build-vcDebugDebug pour la construction de débogage.
Copiez également le CMARK.DLL respectif dans le Dir binaire à partir de build/cmark-build/src/Release (ou Debug).
Voir contribution.
Actuellement, il n'y a pas de documentation pour l'API D-BUS, donc si vous souhaitez en faire usage, venez demander un soutien dans #NHeko: nheko.im.
Voici quelques captures d'écran pour avoir une idée de l'interface utilisateur, mais les choses vont probablement changer.