mirror of
https://github.com/yuezk/GlobalProtect-openconnect.git
synced 2025-05-20 07:26:58 -04:00
Compare commits
4 Commits
597e633587
...
2b3bce442a
Author | SHA1 | Date | |
---|---|---|---|
|
2b3bce442a | ||
|
32cb582e78 | ||
|
e41342631c | ||
|
0f67be465b |
3
.github/workflows/build.yaml
vendored
3
.github/workflows/build.yaml
vendored
@ -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
|
||||||
|
2
.github/workflows/publish.yaml
vendored
2
.github/workflows/publish.yaml
vendored
@ -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
14
Cargo.lock
generated
@ -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",
|
||||||
|
@ -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"
|
||||||
|
3
Makefile
3
Makefile
@ -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)"
|
||||||
|
19
README.md
19
README.md
@ -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
1
packaging/deb/compat
Normal file
@ -0,0 +1 @@
|
|||||||
|
10
|
Loading…
x
Reference in New Issue
Block a user