Note
KTailctl is currently undergoing a big refactoring and redesign to make it more maintainable, efficient and modern looking. This effort is already quite advanced but will still take some time to complete. During this time, there will not be a lot of activity on the main branch.
A GUI to monitor and manage Tailscale on your Linux desktop, built using KDE Frameworks and Kirigami2.
⚠️ To get the most out of KTailctl (sending/receiving files, changing Tailscale settings, …) make sure you are the operatortailscale up --operator=$USER!
- Monitoring of tailscale status
- Monitoring of total traffic
- Monitoring of traffic per peer
- Detailed peer information
- Tray menu for quick access
- Copying of IP addresses/DNS name
- Speed graphs
- Pinging of peers
- Exit node management
- Toggle tailscale status
- Sending files
- Receiving files
- Notification on tailscale status change
- Notification on peer addition/removal
- Flatpak
- Localization
Make sure thate flake support is enabled (see NixOS Wiki on Flakes).
All required dependencies will be made availabe by entering the devshell via nix develop --no-pure-eval.
This can be achieved automatically when using direnv with direnv allow.
Install required packages via
sudo dnf install \
cmake \
extra-cmake-modules \
gcc-c++ \
golang \
json-devel \
kf6-breeze-icons-devel \
kf6-kconfig-devel \
kf6-kcoreaddons-devel \
kf6-kdbusaddons-devel \
kf6-kguiaddons-devel \
kf6-ki18n-devel \
kf6-kirigami-addons-devel \
kf6-kirigami-devel \
kf6-knotifications-devel \
kf6-kwindowsystem-devel \
kf6-qqc2-desktop-style \
qt6-qtbase-devel \
qt6-qtdeclarative-devel \
qt6-qtsvg-devel- Vendor go modules
pushd src/wrapper
go mod vendor
popd- Configure with CMake
cmake -Bbuild- Compile with CMake (change 16 to the number of thread you want to use)
cmake --build build --parallel 16- Run binary
./build/bin/ktailctl- Create a changelog file
changelog/vX.Y.Z.md. - Add a new release to
org.fkoehler.ktailctl.metainfo.xml. - Update the version in
CMakeLists.txt - Create a commit called
Release vX.Y.Z.. - Create a tag from changelog:
git tag -s -F changelog/vX.Y.Z.md vX.Y.Z. - Push tag:
git push origin vX.Y.Z.
