Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove wireguard-tools from wireguard #784

Merged
merged 4 commits into from
Dec 16, 2023
Merged

Remove wireguard-tools from wireguard #784

merged 4 commits into from
Dec 16, 2023

Conversation

Eeems
Copy link
Member

@Eeems Eeems commented Dec 10, 2023

  • Make wireguard depend on wireguard-tools
  • Remove wireguard-tools from wireguard

@Eeems Eeems added the packages Add or improve packages of the repository label Dec 10, 2023
@Eeems Eeems requested a review from Jayy001 December 10, 2023 23:41
@bkirwi
Copy link

bkirwi commented Dec 15, 2023

Poked around at this a bit. Keep in mind I have no direct wireguard experience.

First thing: before installing the packages on this branch I installed wireguard and wireguard-tools from the testing branch.

reMarkable: ~/ opkg install wireguard
Installing wireguard (1.0.20210219-3) to root...
Downloading https://toltec-dev.org/testing/rmall/wireguard_1.0.20210219-3_rmall.ipk
Configuring wireguard.
reMarkable: ~/ opkg install wireguard-tools
Installing wireguard-tools (1.0.20210914-2) to root...
Downloading https://bin.entware.net/armv7sf-k3.2/wireguard-tools_1.0.20210914-2_armv7-3.2.ipk
Installing libnl-tiny (2023-07-27-bc92a280-1) to root...
Downloading https://bin.entware.net/armv7sf-k3.2/libnl-tiny_2023-07-27-bc92a280-1_armv7-3.2.ipk
Installing ip-full (4.4.0-10a) to root...
Downloading https://bin.entware.net/armv7sf-k3.2/ip-full_4.4.0-10a_armv7-3.2.ipk
Configuring libnl-tiny.
Configuring ip-full.
Configuring wireguard-tools.

Note that wireguard comes via toltec, but wireguard-tools comes via the entware repo. And then

opkg install wireguard-tools_1.0.20210914-2_rmall.ipk
Package wireguard-tools (1.0.20210914-2) installed in root is up to date.

Because the upstream wireguard has the exact same version number presumably. Removing it and installing the toltec version worked fine. But it did make me wonder whether we're giving ourselves trouble shadowing a package like this... maybe we should arrange things so the toltec versions are always preferred?

Second thing:

reMarkable: ~/toltec-test/wireguard/ opkg files wireguard
Package wireguard (1.0.20210219-4) is installed on root and has the following files:
/lib/modules/4.9.84-zero-gravitas/kernel/net/ipv6/ip6_udp_tunnel.ko
/lib/modules/4.9.84-zero-gravitas/kernel/net/ipv4/udp_tunnel.ko
/lib/modules/4.9.84-zero-gravitas/extra/wireguard.ko
/lib/modules/4.14.78/kernel/net/ipv4/udp_tunnel.ko
/lib/modules/4.14.78/extra/wireguard.ko
/lib/modules/4.14.78/kernel/net/ipv6/ip6_udp_tunnel.ko
reMarkable: ~/toltec-test/wireguard/ modprobe wireguard
modprobe: FATAL: Module wireguard not found in directory /lib/modules/5.4.70-v1.1.5-rm11x
reMarkable: ~/toltec-test/wireguard/ ls /lib/modules/
4.14.78               4.9.84-zero-gravitas  5.4.70-v1.1.5-rm11x

Do we need to build for a third kernel?

@Eeems
Copy link
Member Author

Eeems commented Dec 15, 2023

This might help explain why things aren't working as I expected when I was testing the stable merge. We either need to drop the package, or add an epoch to the version number to make sure it always installs ours. The priority on the rm2 arch should be enough to also force ours to be installed, but apparently not so.

As for wireguard not working properly in 2.15.1, this is a known issue (#506) which is why #759 is dropping the package for 3.x support. You can also find a PR that has been open for over 12 months now (#651), updating the wireguard package as well as the kernel version it builds against to 5.4.70.

@Eeems Eeems changed the title Remove wireguard-tools from wireguard and mark it as depending on wir… Remove wireguard-tools from wireguard Dec 15, 2023
@bkirwi
Copy link

bkirwi commented Dec 16, 2023

reMarkable: ~/toltec-test/ opkg install wireguard_1.0.20210219-4_rmall.ipk 
Upgrading wireguard on root from 1.0.20210219-3 to 1.0.20210219-4...
Wireguard has been upgraded.
The old kernel module will remain loaded until you reboot, or you can
attempt to manually remove it by running "modprobe -r wireguard".
Removing obsolete file /usr/bin/wg-quick.
Removing obsolete file /lib/systemd/system/wg-quick.target.
Removing obsolete file /usr/bin/wg.
Removing obsolete file /usr/share/man/man8/wg.8.
Removing obsolete file /usr/share/man/man8/wg-quick.8.
Removing obsolete file /lib/systemd/system/[email protected].
Configuring wireguard.

Packaging looks good to me!

@Eeems Eeems merged commit 7d97e17 into testing Dec 16, 2023
5 checks passed
@Eeems Eeems deleted the wireguard-conflicts branch December 16, 2023 19:16
Eeems added a commit that referenced this pull request Dec 16, 2023
* Remove wireguard-tools from wireguard and mark it as depending on wireguard-tools

* Dropping wireguard-tools as entware has it and wg-quick already
@Eeems Eeems added this to the 2023-W49 Merge Window milestone Dec 16, 2023
Eeems added a commit that referenced this pull request Dec 26, 2023
### New Packages
- `webinterface-onboot` 1.2.2-2 - (#770 #721)
  - Allows the usb web interface to start without the USB cable being connected.
- `webinterface-upload-button` - 1.0.1-1 (#771)
  - Adds an upload button to the usb web interface.
- `signature-rm` - 1.0.2-1 (#772)
  - Removes the `Sent from my reMarkable` signature from emails sent by the device.

### Updated Packages
- `linux-stracciatella` - 5.4.70-3 (#742)
  - Updated to RM1XX_5.4.70_v1.3.4 tag from upstream kernel.
  - Added wireguard module.
- `wireguard` - 1.0.20210219-4 (#743 #784)
  - Removed wireguard-tools and wg-quick from wireguard package. These packages are provided by entware already.
- `display` and `rm2fb-client` - 1:0.0.32-2 (#758 #721)
  - Add support for OS 3.3.2.1666
- `rmfm` - 1.5.1-1 (#766)
  - Fix issue where listing a directory with an invalid symlink would crash the application.
- `neofetch` - 1.1.0-1 (#769)
- `webinterface-wifi` - 2.0.0-2 (#768 #721)
- `micro` - 2.0.13-1 (#738)
- `koreader` - 2023.10-2 (#749 #721)
- `ddvk-hacks` - 39.01-2 (#720 #778)
  - Fix issue where `ddvk-hacks` wouldn't be reapplied when using `toltecctl reenable`.
- `draft` - 0.2.0-22 (#721)
- `erode`, `fret`, `oxide`, `rot`, `tarnish`, `decay`, `corrupt`, `anxiety`, `oxide-utils`, `inject_evdev`, and `liboxide` - 2.6-3 (#721)
- `reboot-guard` - 1.0.1-8 (#721)
- `rmfakecloud-proxy` - 0.0.3-4 (#721)
- `genie` - 0.1.6-3 (#721)
- `remux` - 0.2.4-2 (#721)
- `tailscale-systemd` - 0.0.0-2 (#721)
- `toltec-base` - 1.2-3 (#721)
- `xochitl` - 0.0.0-17 (#721)

### Tooling
- New `provides=()` field added for packages.
- Added `unit-exists` and `disable-unit` methods to install-lib

**Note:** This doesn't change what OS version that toltec supports, as full support still requires various packages to be updated, removed, or replaced. Along with proper testing of all packages in the repository, as well as the upgrade process. https://github.com/toltec-dev/toltec/milestone/7 contains the current list of issues and pull requests required for 3.x support.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
packages Add or improve packages of the repository
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants