Why is package luci-proto-wireguard missing?

I have 2 routers:

Linksys WRT1200AC running OpenWRT-24.10.3

Linksys WRT1900AC v1 running OpenWRT 24.10.3

sshed into both and ran opkg update then tried installing wireguard

On the WRT1200 this is what I get

root@OpenWrt:~# opkg list | grep luci-proto-wireguard
luci-proto-wireguard - 25.278.59572~257ca43 - Support for WireGuard VPN
root@OpenWrt:~#

On the 1900AC that package is missing

What is going on here? These 2 routers use the same architecture.

output is identical on each:

root@OpenWrt:/# opkg print-architecture
arch all 1
arch noarch 1
arch arm_cortex-a9_vfpv3-d16 10
root@OpenWrt:/#

But if I download downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/luci-proto-wireguard_25.278.59572~257ca43_all.ipk

and try installing it I get an error that its not the same architecture

How about:

opkg update
opkg install luci-proto-wireguard

Does this work?

That package isn't included by default. So I assume a custom image is what's 'going on'.

1 Like

Did you read my post? Seriously?

And both these routers are running the stock image downloaded from the OpenWRT website.

Yes, I seriously did read your post.

  • You say both machines are identical
  • Yet one doesn't have the LuCI wg package

I appreciate that important and valuable information.

  • :spiral_notepad: This means you have a network issue, or you have a config that needs Wireguard
  • We can't guess which issue (or if another), I attempted to assist
  • You attempted to download and install what you understood to be the correct package

Since you think I didn't read, I'll respectfully let others respond.

1 Like

No, I didn’t. I said the architecture is identical. The router models are not.

“This means you have a network issue,”

I don’t think so because:

  1. opkg update didn’t issue any errors

  2. The 1900 was running wireguard when it was on 24.10.0

  3. sysupgrade from 24.10.0 completed without problems

“ or you have a config that needs Wireguard”

Obviously. Because if I didn’t want wireguard I wouldn’t be trying to install wireguard.

1 Like

I don't understand the dense, terse nature of your replies to someone attempting to assist you. Obviously, I'm inquiring (again, can't guess) if you Internet connectivity depends on it. It obviously seems you believe you have provided complete, clear and concise information needed to assist you, so I'm sure others will reply soon. So, apologies for the noise, no need to provide more details (on my part).

I hope the best for your config/download/install.

1 Like

Ok I see you have the idea it’s a chicken and egg thing - that is, unless I have wireguard up I can’t surf the web and getting wireguard up means I would need access to the internet to download the wireguard packages. Fair enough. However, no. After all if that was the case, I could use the first working WRT1200 to connect to my ISP, then put the second one behind it, update it, then swap them.

No that’s not the case. What I have is 2 sites that I’d like to tie their private networks together via site2site VPN using wireguard. Both sites have Internet connectivity, in fact both have a /29 subnet of public IPs, and in fact both are already tied together with a site2site VPN that’s on a different pair of routers. However, that pair of routers is using OpenVPN and for one thing, building site2site VPN’s with OpenVPN is a kludge, second openvpn runs in userspace and as a result has less throughput.

I didn’t go into detail with any of this because to put it simply, it’s irrelevant.

Unfortunately, I don’t happen to have a spare WRT1900AC v1. If I did, I would do a complete revert to factory firmware, then convert it to OpenWRT, then attempt to load wireguard on it. If it failed, which there’s a 99% chance it would, I’d then post each step in exhausting detail. If it worked, then I would have posted a warning that anyone with wireguard running on a WRT1900AC v1 had better NOT update to 24.10.3 unless they completely flatten their router and start over from scratch.

But I’m positive it wouldn’t work. Doing an opkg list immediately after an opkg update, should show all packages available for your architecture. In this case the architecture are the same, so I don’t understand why in the world the WRT 1900AC shows the package available while the wrt1200 does not.

1 Like

And yet

I’d encourage you to be more attentive to detail.

2 Likes

Oh brother. So I say in the original post that the 1900 is missing the package, then say it a few more times in followups, then in the very last post on the very last line, transpose the model numbers - and that’s what you focus on. Gotcha.

Translation: you don’t know why, either.

I think the best way to get to the bottom of this is for us to see exactly what is happening when you run the following commands (please post the complete output and do this for both devices):

ubus call system board
cat /etc/opkg/distfeeds.conf
opkg update
opkg list | grep wireguard

From the 1200:

root@OpenWrt:~# ubus call system board
{
"kernel": "6.6.104",
"hostname": "OpenWrt",
"system": "ARMv7 Processor rev 1 (v7l)",
"model": "Linksys WRT1200AC",
"board_name": "linksys,wrt1200ac",
"rootfs_type": "squashfs",
"release": {
"distribution": "OpenWrt",
"version": "24.10.3",
"revision": "r28872-daca7c049b",
"target": "mvebu/cortexa9",
"description": "OpenWrt 24.10.3 r28872-daca7c049b",
"builddate": "1758316778"
}
}
root@OpenWrt:~# cat /etc/opkg/distfeeds.conf
src/gz openwrt_core ``https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages
src/gz openwrt_base ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base
src/gz openwrt_kmods ``https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba
src/gz openwrt_luci ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci
src/gz openwrt_packages ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages
src/gz openwrt_routing ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing
src/gz openwrt_telephony ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony
root@OpenWrt:~# opkg update
Downloading ``https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_core
Downloading ``https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages/Packages.sig
Signature check passed.
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_base
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base/Packages.sig
Signature check passed.
Downloading ``https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_kmods
Downloading ``https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba/Packages.sig
Signature check passed.
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_luci
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/Packages.sig
Signature check passed.
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_packages
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages/Packages.sig
Signature check passed.
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_routing
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing/Packages.sig
Signature check passed.
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_telephony
Downloading ``https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony/Packages.sig
Signature check passed.
root@OpenWrt:~# opkg list | grep wireguard
kmod-wireguard - 6.6.104-r1 - WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPSec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN. WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. It uses UDP.
luci-proto-wireguard - 25.278.59572~257ca43 - Support for WireGuard VPN
prometheus-node-exporter-ucode-wireguard - 2024.02.07-r2 - Prometheus node exporter (Wireguard collector)
rpcd-mod-wireguard - 1 - WireGuard rpcd module
wireguard-tools - 1.0.20210914-r4 - WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPSec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN. WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. It uses UDP. This package provides the userspace control program for WireGuard, wg(8), a netifd protocol helper, and a re-resolve watchdog script.
root@OpenWrt:~#

I’ll get the 1900 in a few more minutes

Could you try posting it again with the formatting corrected. It should look like this (as an example):

{
	"kernel": "6.6.104",
	"hostname": "OpenWrt",
	"system": "ARMv8 Processor rev 3",
	"model": "Raspberry Pi 4 Model B Rev 1.1",
	"board_name": "raspberrypi,4-model-b",
	"rootfs_type": "ext4",
	"release": {
		"distribution": "OpenWrt",
		"version": "24.10.3",
		"revision": "r28872-daca7c049b",
		"target": "bcm27xx/bcm2711",
		"description": "OpenWrt 24.10.3 r28872-daca7c049b",
		"builddate": "1758316778"
	}
}

FWIW, it seems that the formatting doesn't work as well when the WYSIWYG editor is used (vs the plain text w/ markdown).

1 Like

From the 1900:

root@OpenWrt:~# ubus call system board
{
        "kernel": "6.6.104",
        "hostname": "OpenWrt",
        "system": "ARMv7 Processor rev 2 (v7l)",
        "model": "Linksys WRT1900AC v1",
        "board_name": "linksys,wrt1900ac-v1",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "24.10.3",
                "revision": "r28872-daca7c049b",
                "target": "mvebu/cortexa9",
                "description": "OpenWrt 24.10.3 r28872-daca7c049b",
                "builddate": "1758316778"
        }
}
root@OpenWrt:~# cat /etc/opkg/distfeeds.conf
src/gz openwrt_core https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages
src/gz openwrt_base https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base
src/gz openwrt_kmods https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba
src/gz openwrt_luci https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci
src/gz openwrt_packages https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages
src/gz openwrt_routing https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing
src/gz openwrt_telephony https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony
root@OpenWrt:~# opkg update
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_core
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_base
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_kmods
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_luci
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_packages
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_routing
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_telephony
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony/Packages.sig
Signature check passed.
root@OpenWrt:~# opkg list | grep wireguard
kmod-wireguard - 6.6.104-r1 - WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPSec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN.  WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. It uses UDP.
luci-proto-wireguard - 25.278.59572~257ca43 - Support for WireGuard VPN
prometheus-node-exporter-ucode-wireguard - 2024.02.07-r2 - Prometheus node exporter (Wireguard collector)
rpcd-mod-wireguard - 1 - WireGuard rpcd module
wireguard-tools - 1.0.20210914-r4 - WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPSec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN.  WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. It uses UDP.  This package provides the userspace control program for WireGuard, `wg(8)`, a netifd protocol helper, and a re-resolve watchdog script.
root@OpenWrt:~#

From the 1200

root@OpenWrt:~# ubus call system board
{
        "kernel": "6.6.104",
        "hostname": "OpenWrt",
        "system": "ARMv7 Processor rev 1 (v7l)",
        "model": "Linksys WRT1200AC",
        "board_name": "linksys,wrt1200ac",
        "rootfs_type": "squashfs",
        "release": {
                "distribution": "OpenWrt",
                "version": "24.10.3",
                "revision": "r28872-daca7c049b",
                "target": "mvebu/cortexa9",
                "description": "OpenWrt 24.10.3 r28872-daca7c049b",
                "builddate": "1758316778"
        }
}
root@OpenWrt:~# cat /etc/opkg/distfeeds.conf
src/gz openwrt_core https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages
src/gz openwrt_base https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base
src/gz openwrt_kmods https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba
src/gz openwrt_luci https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci
src/gz openwrt_packages https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages
src/gz openwrt_routing https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing
src/gz openwrt_telephony https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony
root@OpenWrt:~# opkg update
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_core
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_base
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_kmods
Downloading https://downloads.openwrt.org/releases/24.10.3/targets/mvebu/cortexa9/kmods/6.6.104-1-0a0bf8358eff18b8c118787b94fe51ba/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_luci
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_packages
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_routing
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/routing/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_telephony
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/telephony/Packages.sig
Signature check passed.
root@OpenWrt:~# opkg list | grep wireguard
kmod-wireguard - 6.6.104-r1 - WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPSec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN.  WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. It uses UDP.
luci-proto-wireguard - 25.278.59572~257ca43 - Support for WireGuard VPN
prometheus-node-exporter-ucode-wireguard - 2024.02.07-r2 - Prometheus node exporter (Wireguard collector)
rpcd-mod-wireguard - 1 - WireGuard rpcd module
wireguard-tools - 1.0.20210914-r4 - WireGuard is a novel VPN that runs inside the Linux Kernel and utilizes state-of-the-art cryptography. It aims to be faster, simpler, leaner, and more useful than IPSec, while avoiding the massive headache. It intends to be considerably more performant than OpenVPN.  WireGuard is designed as a general purpose VPN for running on embedded interfaces and super computers alike, fit for many different circumstances. It uses UDP.  This package provides the userspace control program for WireGuard, `wg(8)`, a netifd protocol helper, and a re-resolve watchdog script.
root@OpenWrt:~#

Thanks.

Based on the output you posted:

Followed by:

Seems like luci-proto-wireguard is present and can be installed on both devices.
Am I misunderstanding something??

2 Likes

OK now that is BS I swear that it wasn't in there the last time I checked.

And now it works:

root@OpenWrt:~# opkg install luci-proto-wireguard
Installing luci-proto-wireguard (25.278.59572~257ca43) to root...
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/luci-proto-wireguard_25.278.59572~257ca43_all.ipk
Installing luci-lib-uqr (25.278.59572~257ca43) to root...
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/luci/luci-lib-uqr_25.278.59572~257ca43_all.ipk
Installing resolveip (2) to root...
Downloading https://downloads.openwrt.org/releases/24.10.3/packages/arm_cortex-a9_vfpv3-d16/base/resolveip_2_arm_cortex-a9_vfpv3-d16.ipk
Configuring luci-lib-uqr.
Configuring resolveip.
Configuring luci-proto-wireguard.
root@OpenWrt:~#

If your problem is solved, please consider marking this topic as [Solved]. See How to mark a topic as [Solved] for a short how-to.
Thanks! :slight_smile:

1 Like

I'll be happy to mark it solved when someone explains why that package wasn't there 2 days ago and now it is. Either a dev saw this post and said "oh crap" and quickly fixed it and won't own up to it, or someone is deliberately screwing with me.

Occam's razor would suggest that opkg update was omitted at some point or failed to update the package lists (maybe due to a temporary connectivity issue). It happens to the best of us.

How likely is that, really?

That said...

the problem is solved now, even if you're not satisfied with the answer. If you don't want to mark it solved, I'll just close the thread since there's nothing more to be done here.

3 Likes

It's solved. Go ahead and blame ghosts in the machine. Thank goodness this wasn't a production setup.