Commit graph

115 commits

Author SHA1 Message Date
Conrad Kramer
453dd2d116 Introduce initial UI for connecting to networks 2024-03-09 15:54:58 -08:00
Conrad Kramer
a757ac7be9 Update for Xcode 15.2 2024-03-09 15:54:58 -08:00
Jett Chen
c4c342dc8b Add implementation for stop command
This adds implementation for stopping the tunnel
via the `Stop` command.
2024-02-25 04:14:32 +08:00
Ben
29d2bfae3f Remove redundant type annotation 2024-02-24 12:53:59 -05:00
Jett Chen
2088ae6ede Add Support for IPV6 and Arbitrary Server Address
Add IPV6 support for Apple Devices
Note: Works in GUI not CLI
Adds Support for Arbitrary Server Address
2024-02-24 12:44:31 -05:00
David Zhong
cca5999214 Bump Rust version in Dockerfile
clap-rs recently bumped their MSRV to 1.74 breaking the docker build.
2024-02-15 19:42:57 -08:00
David Zhong
ab73183b2b
Add ability to build GTK app AppImage (#240)
#238 Add AppImage build support

Implements

- Downgrade to libadwaita 1.3 for wider distro support
- Add build script, workflow, and docs for AppImage
- Add build docs for Debian (apt) and Void Linux
- Building AppImage in CI
2024-02-15 19:27:14 -08:00
dav
44ecf042a3 GTK App Getting Started Instructions 2024-02-02 21:20:12 -08:00
Conrad Kramer
7cc1f3119e Simplified process startup on macOS and Linux 2024-01-27 07:53:30 -05:00
Jasper Mayone
9e03c9680c
Added Xcode Path Switching to Getting Started 2024-01-26 06:33:26 +00:00
Jett Chen
079c4f676d Update locking 2024-01-26 01:13:12 -05:00
Jett Chen
0b46ac57b7 Add tokio console and more debugging feats 2024-01-26 01:13:12 -05:00
Jett Chen
7d8958e0e7 Add handling for connection expiration 2024-01-26 01:13:12 -05:00
David Zhong
6990f90c2e
Implement Gtk Network Status (#165)
Implemented
- Switch reacts to burrow socket and network changes 
- meson as build system
- Basic diagnostics to ensure burrow is installed properly
- Flatpak / Meson Building
2024-01-26 01:10:24 -05:00
Conrad Kramer
baa81eb939 Cancel in-progress runs when pushing new code 2024-01-20 11:38:46 -08:00
Jett Chen
dfd4dbc81e
Wireguard Timer Support (#167) 2024-01-20 19:38:15 +00:00
Conrad Kramer
fd9b3413ac Update CODEOWNERS to reflect current owners 2024-01-20 10:10:02 -08:00
Conrad Kramer
e04d24a3f7 Updated to Xcode 15.2 2024-01-20 10:02:19 -08:00
Conrad Kramer
2b9ecb7b6a Update Tunnel on the main thread
Also updated it to use the new Swift Observable macro
2024-01-20 10:02:19 -08:00
Jett Chen
b008762a5b Implement Wireguard
Implements Wireguard
2023-12-23 11:26:05 -08:00
dav
60257b256a Intial GTK, swtich to Relm, basic Flatpak Build 2023-11-18 12:42:52 -08:00
reesericci
f1d7a98491 Initialized burrow-gtk project 2023-11-18 12:42:52 -08:00
Jasper Mayone
f31133f4dc update codeowners 2023-11-18 13:13:11 -05:00
Cara Salter
ff819af752 Update CODEOWNERS
Update ben's GitHub username

@ma1ted -> \@malted
2023-11-15 15:46:56 -08:00
Cara Salter
91a15ec908 Remove myself from Apple PRs
I do not have the required experience with Swift/iOS/macOS development
to be an approving reviewer for Apple PRs
2023-11-15 15:46:56 -08:00
Jett Chen
759311e4f4 remove continuation from BurrowIPC
This removes usage of continuation from BurrowIPC by
moving it to NWConnections.
2023-10-23 12:22:02 +08:00
Jett Chen
c9f104e523 Generate NetworkSettings with IPC
This generates and applies NetworkSettings object with unix socket IPC.

- domain socket, json-rpc based communication
- switches to anyhow for burrow crate
- adds support for starting daemons on macos
2023-10-14 10:25:24 -07:00
dav
6368ca7f74 Add Burrow Crate Description 2023-10-07 23:37:44 -07:00
dav
c059512b8b RPM CI Should be cargo generate-rpm 2023-10-07 23:37:44 -07:00
dav
674deb08ba Fix RPM CI 2023-10-07 23:37:44 -07:00
dav
6a77df3e20 Remove license-file field 2023-10-07 23:37:44 -07:00
dav
391802b8ca Build RPM for Pull Requests too 2023-10-07 23:37:44 -07:00
dav
fb5cff0d5a Add Github Workflow for RPM Builds 2023-10-07 23:37:44 -07:00
dav
26d97c6a11 Super Basic RPM Install Config 2023-10-07 23:37:44 -07:00
Jett Chen
e643d9dd41 Switch logging to use tracing instead of log
Tracing has support for intervals and a great os_log integration.
2023-09-03 01:06:34 +08:00
dav
60cfd95789 Add rust build caching to ci 2023-08-26 12:23:41 -07:00
dav
f869cbdb53 Implement sending commands via Unix sockets 2023-08-26 11:51:56 -07:00
Sam Poder
c8df4b860d Set/get broadcast address in TunInterface
Modelled after TunInterface's IPV4 logic.
Uses SIOCGIFBRDADDR & SIOCSIFBRDADDR.
View https://man7.org/linux/man-pages/man7/netdevice.7.html.
2023-08-26 10:00:18 -07:00
Jett Chen
22e41203fb Update project structure in readme
Async tun is now located at tun/src/tokio .
2023-08-16 13:41:21 -04:00
Jett Chen
3ef13b09a3 Add C Swift Bindings
This adds C Swift bindings for burrow via compiling burrow
with a matching header file.
2023-08-16 13:28:20 -04:00
Sam Poder
d821f3d03c Only run Tokio tests on non-Windows platforms 2023-08-08 08:03:15 -07:00
Conrad Kramer
17af030893 Run tests on Github Actions 2023-08-08 08:03:15 -07:00
Sam Poder
1907b11545 Move tests into a separate directory
Also run these tests on Github Actions as part of the PR request
flow.
2023-08-08 08:03:15 -07:00
Conrad Kramer
a2e93278c1 Create Dockerfile
Also adds a Github workflow to publish a Docker image
2023-07-04 20:15:27 -04:00
Sam Poder
631bbc8fb3 Expand description about Hack Club
This description is more inline with our copy in other places
2023-07-03 19:22:39 -04:00
Sam Poder
9eb661ebd5 Log when TunInterface is configured
This uses info from the log package.
2023-07-03 09:39:24 -04:00
JettChenT
beae8c0f79 Add Read and Write for Async TunInterface
Those features are implemented using AsyncFD. While write doesn't
require a mutable reference to self, read does.

Make Async Tun a feature

remove async tun from workspace

rename write/read to send/recv
2023-07-03 09:30:52 -04:00
dav
d3882bd008 TunInterfaceOptions -> TunOptions 2023-06-28 16:13:08 -04:00
dav
f20f56062c Fix unused import warning for Windows 2023-06-28 16:13:08 -04:00
dav
84f1d91d5c Implement TunInterfaceOptions 2023-06-28 16:13:08 -04:00