Compare commits

..

4 Commits

Author SHA1 Message Date
Kevin Yue
2b3bce442a
upgrade gpauth 2024-12-20 13:45:34 +00:00
Kevin Yue
32cb582e78
refactor: upgrade tauri 2.0 2024-12-20 10:30:32 +00:00
Kevin Yue
e41342631c
refactor: upgrade tauri 2.0 2024-12-20 10:30:18 +00:00
Kevin Yue
0f67be465b
chore: use tauri2 build container 2024-12-20 10:29:22 +00:00
7 changed files with 18 additions and 26 deletions

View File

@ -24,7 +24,8 @@ jobs:
- name: Set up matrix - name: Set up matrix
id: set-matrix id: set-matrix
run: | run: |
if [[ "${{ github.ref }}" == "refs/tags/"* ]]; then # Set the matrix to include arm64 if the ref is a tag or is the dev branch
if [[ "${{ github.ref }}" == "refs/tags/"* || "${{ github.ref }}" == "refs/heads/dev" ]]; then
echo 'matrix=[{"runner": "ubuntu-latest", "arch": "amd64"}, {"runner": "arm64", "arch": "arm64"}]' >> $GITHUB_OUTPUT echo 'matrix=[{"runner": "ubuntu-latest", "arch": "amd64"}, {"runner": "arm64", "arch": "arm64"}]' >> $GITHUB_OUTPUT
else else
echo 'matrix=[{"runner": "ubuntu-latest", "arch": "amd64"}]' >> $GITHUB_OUTPUT echo 'matrix=[{"runner": "ubuntu-latest", "arch": "amd64"}]' >> $GITHUB_OUTPUT

View File

@ -71,7 +71,7 @@ jobs:
# Prepare the debian directory with custom files # Prepare the debian directory with custom files
mkdir -p .build/debian mkdir -p .build/debian
sed 's/@RUST@/rust-all(>=1.70)/g' packaging/deb/control.in > .build/debian/control sed 's/@RUST@/rust-all(>=1.80)/g' packaging/deb/control.in > .build/debian/control
sed 's/@OFFLINE@/1/g' packaging/deb/rules.in > .build/debian/rules sed 's/@OFFLINE@/1/g' packaging/deb/rules.in > .build/debian/rules
cp packaging/deb/postrm .build/debian/postrm cp packaging/deb/postrm .build/debian/postrm

14
Cargo.lock generated
View File

@ -596,7 +596,7 @@ dependencies = [
[[package]] [[package]]
name = "common" name = "common"
version = "2.3.9" version = "2.4.0"
dependencies = [ dependencies = [
"is_executable", "is_executable",
] ]
@ -1529,7 +1529,7 @@ dependencies = [
[[package]] [[package]]
name = "gpapi" name = "gpapi"
version = "2.3.9" version = "2.4.0"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"base64 0.22.1", "base64 0.22.1",
@ -1564,7 +1564,7 @@ dependencies = [
[[package]] [[package]]
name = "gpauth" name = "gpauth"
version = "2.3.9" version = "2.4.0"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"clap", "clap",
@ -1585,7 +1585,7 @@ dependencies = [
[[package]] [[package]]
name = "gpclient" name = "gpclient"
version = "2.3.9" version = "2.4.0"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"clap", "clap",
@ -1607,7 +1607,7 @@ dependencies = [
[[package]] [[package]]
name = "gpgui-helper" name = "gpgui-helper"
version = "2.3.9" version = "2.4.0"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"clap", "clap",
@ -1625,7 +1625,7 @@ dependencies = [
[[package]] [[package]]
name = "gpservice" name = "gpservice"
version = "2.3.9" version = "2.4.0"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"axum", "axum",
@ -2889,7 +2889,7 @@ dependencies = [
[[package]] [[package]]
name = "openconnect" name = "openconnect"
version = "2.3.9" version = "2.4.0"
dependencies = [ dependencies = [
"cc", "cc",
"common", "common",

View File

@ -5,7 +5,7 @@ members = ["crates/*", "apps/gpclient", "apps/gpservice", "apps/gpauth", "apps/g
[workspace.package] [workspace.package]
rust-version = "1.80" rust-version = "1.80"
version = "2.3.9" version = "2.4.0"
authors = ["Kevin Yue <k3vinyue@gmail.com>"] authors = ["Kevin Yue <k3vinyue@gmail.com>"]
homepage = "https://github.com/yuezk/GlobalProtect-openconnect" homepage = "https://github.com/yuezk/GlobalProtect-openconnect"
edition = "2021" edition = "2021"

View File

@ -154,6 +154,7 @@ init-debian: clean-debian tarball
cp -f packaging/deb/control.in .build/deb/$(PKG)/debian/control cp -f packaging/deb/control.in .build/deb/$(PKG)/debian/control
cp -f packaging/deb/rules.in .build/deb/$(PKG)/debian/rules cp -f packaging/deb/rules.in .build/deb/$(PKG)/debian/rules
cp -f packaging/deb/postrm .build/deb/$(PKG)/debian/postrm cp -f packaging/deb/postrm .build/deb/$(PKG)/debian/postrm
cp -f packaging/deb/compat .build/deb/$(PKG)/debian/compat
sed -i "s/@OFFLINE@/$(OFFLINE)/g" .build/deb/$(PKG)/debian/rules sed -i "s/@OFFLINE@/$(OFFLINE)/g" .build/deb/$(PKG)/debian/rules
@ -174,7 +175,7 @@ check-ppa:
# Usage: make ppa SERIES=focal OFFLINE=1 PUBLISH=1 # Usage: make ppa SERIES=focal OFFLINE=1 PUBLISH=1
ppa: check-ppa init-debian ppa: check-ppa init-debian
sed -i "s/@RUST@/rust-all(>=1.70)/g" .build/deb/$(PKG)/debian/control sed -i "s/@RUST@/rust-all(>=1.80)/g" .build/deb/$(PKG)/debian/control
$(eval SERIES_VER = $(shell distro-info --series $(SERIES) -r | cut -d' ' -f1)) $(eval SERIES_VER = $(shell distro-info --series $(SERIES) -r | cut -d' ' -f1))
@echo "Building for $(SERIES) $(SERIES_VER)" @echo "Building for $(SERIES) $(SERIES_VER)"

View File

@ -70,12 +70,10 @@ The GUI version is also available after you installed it. You can launch it from
### Debian/Ubuntu based distributions ### Debian/Ubuntu based distributions
#### Install from PPA (Ubuntu 18.04 and later, except 24.04) #### Install from PPA (Ubuntu > 18.04)
``` ```
sudo apt-get install gir1.2-gtk-3.0 gir1.2-webkit2-4.0
sudo add-apt-repository ppa:yuezk/globalprotect-openconnect sudo add-apt-repository ppa:yuezk/globalprotect-openconnect
sudo apt-get update
sudo apt-get install globalprotect-openconnect sudo apt-get install globalprotect-openconnect
``` ```
@ -83,18 +81,9 @@ sudo apt-get install globalprotect-openconnect
> >
> For Linux Mint, you might need to import the GPG key with: `sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7937C393082992E5D6E4A60453FC26B43838D761` if you encountered an error `gpg: keyserver receive failed: General error`. > For Linux Mint, you might need to import the GPG key with: `sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 7937C393082992E5D6E4A60453FC26B43838D761` if you encountered an error `gpg: keyserver receive failed: General error`.
#### **Ubuntu 24.04 and later**
The `libwebkit2gtk-4.0-37` package was [removed](https://bugs.launchpad.net/ubuntu/+source/webkit2gtk/+bug/2061914) from its repo. You can use the [`deb-install.sh`](./scripts/deb-install.sh) script to install the package:
```bash
curl -o- https://raw.githubusercontent.com/yuezk/GlobalProtect-openconnect/main/scripts/deb-install.sh \
| bash -s -- 2.3.9
```
#### **Ubuntu 18.04** #### **Ubuntu 18.04**
The latest package is not available in the PPA either, but you still needs to add the `ppa:yuezk/globalprotect-openconnect` repo beforehand to use the required `openconnect` package. Then you can follow the [Install from deb package](#install-from-deb-package) section to install the latest package. The latest package is not available in the PPA, but you still needs to add the `ppa:yuezk/globalprotect-openconnect` repo beforehand to use the required `openconnect` package. Then you can follow the [Install from deb package](#install-from-deb-package) section to install the latest package.
#### Install from deb package #### Install from deb package
@ -172,8 +161,8 @@ You can also build the client from source, steps are as follows:
### Prerequisites ### Prerequisites
- [Install Rust 1.75 or later](https://www.rust-lang.org/tools/install) - [Install Rust 1.80 or later](https://www.rust-lang.org/tools/install)
- Install Tauri dependencies: https://tauri.app/v1/guides/getting-started/prerequisites/#setting-up-linux - Install Tauri dependencies: https://tauri.app/start/prerequisites/
- Install `perl` and `jq` - Install `perl` and `jq`
- Install `openconnect >= 8.20` and `libopenconnect-dev` (or `openconnect-devel` on RPM-based distributions) - Install `openconnect >= 8.20` and `libopenconnect-dev` (or `openconnect-devel` on RPM-based distributions)
- Install `pkexec`, `gnome-keyring` (or `pam_kwallet` on KDE) - Install `pkexec`, `gnome-keyring` (or `pam_kwallet` on KDE)

1
packaging/deb/compat Normal file
View File

@ -0,0 +1 @@
10