Package Details: wifiman-desktop 1.2.8-3

Git Clone URL: https://aur.archlinux.org/wifiman-desktop.git (read-only, click to copy)
Package Base: wifiman-desktop
Description: Network analysis and WiFi speed testing tool by Ubiquiti
Upstream URL: https://ui.com
Licenses: LicenseRef-unknown
Submitter: yochananmarqos
Maintainer: yochananmarqos
Last Packager: yochananmarqos
Votes: 1
Popularity: 0.034825
First Submitted: 2025-12-02 16:57 (UTC)
Last Updated: 2026-04-05 13:01 (UTC)

Pinned Comments

yochananmarqos commented on 2026-04-16 00:36 (UTC)

PLease only report packaging issues here. You can use the Report an issue or Feedback option in the Settings. You can also create a post on Ubiquiti Community forum.

Latest Comments

1 2 Next › Last »

yochananmarqos commented on 2026-04-16 00:36 (UTC)

PLease only report packaging issues here. You can use the Report an issue or Feedback option in the Settings. You can also create a post on Ubiquiti Community forum.

phishinghook69 commented on 2026-04-16 00:23 (UTC) (edited on 2026-04-16 00:24 (UTC) by phishinghook69)

Currently running into this issue on wifiman-desktop startup, app immediately crashes.

(wifiman-desktop:29096): libayatana-appindicator-WARNING **: 17:11:17.828: libayatana-appindicator is deprecated. Please use libayatana-appindicator-glib in newly written code.
Found window_stats.json, loading window statistics
Setting window size to 2152x1416 at position (0, 0)
Gdk-Message: 17:11:18.079: Error 71 (Protocol error) dispatching to Wayland display.

Insprill commented on 2026-04-07 01:20 (UTC)

Thank you for the detailed debugging steps! I had to rename the output file since wg-wifimandesktop-debug isn't valid.

As one could probably guess, it was DNS 😅 The systemd-resolved service wasn't enabled, so when it tried to run resolvconf, it would fail with the following error:

[#] resolvconf -a wgwifimandesktopdebug -m 0 -x
Failed to set DNS configuration: Could not activate remote peer 'org.freedesktop.resolve1': activation request failed: unknown unit

Simply enabling that service fixed it. Thanks for the help!

rug_micturater commented on 2026-04-06 18:33 (UTC) (edited on 2026-04-07 01:15 (UTC) by rug_micturater)

The runWireguard function in the wifiman-desktopd daemon is just running the wg-quick script in the /usr/lib/wifiman-desktop/ directory. That runs after a function (in the daemon) that sets up an ephemeral wireguard *.conf file saved to /etc/wireguard/ with IPs, DNS, private/public keys, interface names, etc..

You can attempt to run the wg-quick script on your own, but you have to save that ephemeral file. You would need modify /usr/lib/wifiman-desktop/wg-quick to do something like this (I have included line numbers for reference..)

 40 parse_options() {
 41   local interface_section=0 line key value stripped v
 42   CONFIG_FILE="$1"
 43   [[ $CONFIG_FILE =~ ^[a-zA-Z0-9_=+.-]{1,15}$ ]] && CONFIG_FILE="/etc/wireguard/$CONFIG_FILE.conf"
...
 72   done < "$CONFIG_FILE"
      cp "$CONFIG_FILE" /etc/wireguard/wifiman.conf ### <-- ADD THIS LINE
 73   shopt -u nocasematch
 74 }

And then after attempting to connect to your teleport VPN again there should be a file at /etc/wireguard/wifiman.conf

Then run sudo /usr/lib/wifiman-desktop/wg-quick up wifiman and you should get more debug information. I think that's the syntax anyway, not at my laptop right now..

You can maybe do the same thing by monitoring the wifiman-desktopd systemd unit logs in realtime with sudo journalctl -f wifiman-desktop before you initiate a connection. Or it might not output, depending on how they handle the STDOUT/STDERR in go.

Try manually running that wg-quick with the saved-off *.conf file and see if you get more info from the messages and confirm that you get a 1 exit status with echo $?.

EDIT there's a regex in their wg-quick script that needs the *.conf file name to be less than 15 characters without extension. Ninja edited the wg-quick edit and the command to use.

Insprill commented on 2026-04-06 05:05 (UTC)

I'm also having the ERROR: Error runWireguard exit status 1 error when trying to connect. I have the wireguard-tools and systemd-resolvconf packages installed. This system was originally EndeavourOS, but has been through lots over the last 3 years. This does not happen on another system running CachyOS. I diffed the packages between the two and installed all the missing network-related ones, to no avail.

rug_micturater commented on 2026-04-05 05:45 (UTC)

Ugh, it was DNS... Well in a way, it was DNS.

For anyone seeing the multiple (3) disconnects after an apparent connection, double check that you are running a compatibility layer for DNS that supplies resolvconf. That was the command that was missing. I.e. on Arch you can probably get away with installing systemd-resolvconf and calling it a day, but you might want to check the relevant wiki page before just YOLOing it.

TL;DR: Try installing systemd-resolvconf if you were hitting the 3 disconnects. If you are here from some other distro you might want to take a look through this StackOverflow page.

rug_micturater commented on 2026-04-04 17:43 (UTC)

I haven't done the same on Arch, but on my Xubuntu VM I attached gdb to wifiman-desktopd while I was trying to initiate a connection to get a "golden" trace. This daemon is built in go and seems to have most debug symobls intact? (I also started decompiling the runWireguard funciton in Ghidra but left that on my work server so I don't have access to it right now..)

The daemon does indeed run the "wifiman-desktop" binaries, so I think you shouldn't need the wireguard-tools package? This is what the gdb log on Ubuntu shows:

(gdb) b github.com/ubiquiti/wifiman.desktop/service/daemon/teleport.(*Teleport).runWireguard
Breakpoint 1 at 0x9d6173: file /home/ubnt/actions_runner_2/_work/wifiman.desktop/wifiman.desktop/service/daemon/teleport/wireguard_unix.go, line 15.
(gdb) b os/exec.(*Cmd).Run
Breakpoint 2 at 0x810e8a: file /usr/local/go/src/os/exec/exec.go, line 603.
(gdb) dis 2
(gdb) c
Continuing.
[Detaching after vfork from child process 1579]
[Detaching after vfork from child process 1591]
[Detaching after vfork from child process 1593]
[Detaching after vfork from child process 1600]
[Detaching after vfork from child process 1606]
[Detaching after vfork from child process 1613]
[Switching to Thread 0x7afc32ffd6c0 (LWP 1517)]

Thread 4 "wifiman-desktop" hit Breakpoint 1, github.com/ubiquiti/wifiman.desktop/service/daemon/teleport.(*Teleport).runWireguard (t=0xc0008f01a0, enable=true, ~r0=...)
    at /home/ubnt/actions_runner_2/_work/wifiman.desktop/wifiman.desktop/service/daemon/teleport/wireguard_unix.go:15
warning: 15 /home/ubnt/actions_runner_2/_work/wifiman.desktop/wifiman.desktop/service/daemon/teleport/wireguard_unix.go: No such file or directory
(gdb) en 2
(gdb) c
Continuing.
[Switching to Thread 0x7afc31ffb6c0 (LWP 1539)]

Thread 2 "wifiman-desktop" hit Breakpoint 2, os/exec.(*Cmd).Run (c=0xc0005c7340, ~r0=...) at /usr/local/go/src/os/exec/exec.go:603
warning: 603    /usr/local/go/src/os/exec/exec.go: No such file or directory
(gdb) p *c
$1 = {Path = 0xc0004e38f0 "/usr/lib/wifiman-desktop/wg-quick", Args = {array = 0xc00010f560, len = 3, cap = 3}, Env = {array = 0x0, len = 0, cap = 0}, Dir = 0x0 "", Stdin = {tab = 0x0, 
    data = 0x0}, Stdout = {tab = 0x0, data = 0x0}, Stderr = {tab = 0x0, data = 0x0}, ExtraFiles = {array = 0x0, len = 0, cap = 0}, SysProcAttr = 0x0, Process = 0x0, ProcessState = 0x0, 
  ctx = {tab = 0x0, data = 0x0}, Err = {tab = 0x0, data = 0x0}, Cancel = {void (error *)} 0xc0005c7410, WaitDelay = 0, childIOFiles = {array = 0x0, len = 0, cap = 0}, parentIOPipes = {
    array = 0x0, len = 0, cap = 0}, goroutine = {array = 0x0, len = 0, cap = 0}, goroutineErr = 0x0, ctxResult = 0x0, createdByStack = {array = 0x0, len = 0, cap = 0}, lookPathErr = {
    tab = 0x0, data = 0x0}}

(gdb) p c.Args.array
$2 = (string *) 0xc00010f560
(gdb) p * c.Args.array
$3 = 0xc0004e38f0 "/usr/lib/wifiman-desktop/wg-quick"
(gdb) c
Continuing.
[Detaching after vfork from child process 1622]
[Detaching after vfork from child process 1624]
[Detaching after vfork from child process 1644]
[Switching to Thread 0x7afc337fe6c0 (LWP 915)]

Thread 5 "wifiman-desktop" hit Breakpoint 2, os/exec.(*Cmd).Run (c=0xc000765080, ~r0=...) at /usr/local/go/src/os/exec/exec.go:603
603 in /usr/local/go/src/os/exec/exec.go
(gdb) p *c
$4 = {Path = 0xc0004e0ea0 "/usr/lib/wifiman-desktop/wg", Args = {array = 0xc000f47d60, len = 2, cap = 2}, Env = {array = 0x0, len = 0, cap = 0}, Dir = 0x0 "", Stdin = {tab = 0x0, 
    data = 0x0}, Stdout = {tab = 0xf81280 <go:itab.*bytes.Buffer,io.Writer>, data = 0xc00075ca80}, Stderr = {tab = 0xf81280 <go:itab.*bytes.Buffer,io.Writer>, data = 0xc00075ca80}, 
  ExtraFiles = {array = 0x0, len = 0, cap = 0}, SysProcAttr = 0x0, Process = 0x0, ProcessState = 0x0, ctx = {tab = 0x0, data = 0x0}, Err = {tab = 0x0, data = 0x0}, 
  Cancel = {void (error *)} 0xc000765150, WaitDelay = 0, childIOFiles = {array = 0x0, len = 0, cap = 0}, parentIOPipes = {array = 0x0, len = 0, cap = 0}, goroutine = {array = 0x0, 
    len = 0, cap = 0}, goroutineErr = 0x0, ctxResult = 0x0, createdByStack = {array = 0x0, len = 0, cap = 0}, lookPathErr = {tab = 0x0, data = 0x0}}
(gdb) p * c.Args.array
$5 = 0xc0004e0ea0 "/usr/lib/wifiman-desktop/wg"

There doesn't seem to be anything unusual there. I haven't reinstalled the package on Arch yet, but in case I never get around to it and somebody wants to attach gdb to the wifiman-desktopd daemon PID you can take my breakpoints and run with it.. Maybe I'll get there eventually--mostly I just wanted to see if my actual day job skills would translate over to this...

rug_micturater commented on 2026-04-02 21:48 (UTC)

Is it possible that the commands it can't find are the commands in the wifiman package itself? The *.deb package has the wireguard tools in it already:

$> pwd
/path/to/wifiman-desktop/extracted/tarball/.../usr/lib/wifiman-desktop
$> ls
wg  wg-quick  wg_report.sh  wifiman-desktopd  wifiman-desktop.service  wireguard-go

I finally gave up and just created an XFCE Ubuntu VM for teleport access, but I wonder if adding /usr/lib/wifiman-desktop to PATH fixes things?

The ERROR: Error runWireguard exit status 127 is from a C/C++ function in wifiman-desktopd:

$> nm -a wifiman-desktopd  | grep runWireguard
00000000009d6160 T github.com/ubiquiti/wifiman.desktop/service/daemon/teleport.(*Teleport).runWireguard

I also looked at the strace -f ... wifiman-desktop log and there's DBus messages that don't happen in my (Hyprland..so not exactly a "normal" desktop environment--it's only a window manager..) connection attempt on Arch.

bohemus commented on 2026-04-01 15:33 (UTC) (edited on 2026-04-02 16:13 (UTC) by bohemus)

I have wireguard-tools installed but am getting the following errors in the log and unable to connect using teleport:

INFO: Running wg command: up ERROR: Error runWireguard exit status 1

Not sure what to try next.

arofaro commented on 2026-03-13 11:37 (UTC)

For anyone having issues with Teleport immediately disconnecting or failing to connect, the package is missing a crucial dependency. If you check the logs (/usr/lib/wifiman-desktop/wifiman-desktop.log), you'll see it failing with:

"ERROR: Error runWireguard exit status 127"

Exit code 127 means "command not found". WiFiman relies on the wg command to establish the Teleport tunnel, but wireguard-tools isn't listed as a dependency in the PKGBUILD.

The Fix Manually install the missing package:

sudo pacman -S wireguard-tools

Once installed, restart WiFiman and Teleport will connect to your UniFi servers instantly.

@Maintainer: Could we get wireguard-tools added to the depends=() array in the next update? Thanks!