Andrew Dryga 28fe571543 Small improvements to make setup process easier for OS contributors (#1171)
* Remove _build folders for umbrella apps

For umbrella apps everything goes into /_build directory so there no need to ignore directories that should never be created

* Change mix aliases to be more aligned with what OS community would expect

1. We want ecto.create and ecto.migrate to be run on each tests, this will simplify setup steps (no need to run migrations manually)

2. ecto.remigrate is not needed because now you can just run ecto.drop and on tests migrations would be executed anyways.

* Rename docker-compose step name in CONTRIBUTING.md

The step was renamed here: dd67baf629 (diff-67a4805fdcc6145d7b3ada2a6099a9b2e91c9d0fd108c22f95d2f01d219793d1R10)

* Remove .devcontainer

This an is opinionated change. Right now devcontainer doesn't work but should be easy to fix (with renaming step name), but at the same time it forces developers that use VS code to have unified development environment (including plugins for the editor itself).

I feel like it's not a good path to go for OS and for small team - everyone should be allowed to use setup they like. Especially for people like me that tend to recompile ls-elixir for Elixir plugin from master branch.

Plus it's yet another thing to maintain while nobody on the team is using it, which means it will be always causing issues.

* Make fz_http mix.exs aliases aligned with umbrella app ones

* Redirect stderr to stdout in a command called from dev.exs

Otherwise I'm getting this on my MacOS (that has a `route` implementation that doesn't show interfaces) when `mix phx.server` is executed:
```
usage: route [-dnqtv] command [[modifiers] args]
```

* Fix race condition due to static device field values

Both public_key and name are unique and we should not use static values for field covered by unique index, otherwise deadlocks and slow tests are expected.

* Remove unwanted transaction block

The changeset code doesn't have any code that accesses the database and individual Ecto.SQL commands are already wrapped in transactions by default, so there is no need to start it manually and hold for longer than expected (while irrelevant Elixir code is running).

* Use netstat to identify egress interface on MacOS

* Rename uninstall.sh to omnibus-uninstall.sh

* Fix uninstall path in omnibus_build.yml
2022-12-06 15:07:45 -08:00
2022-10-13 15:22:53 -07:00
2020-11-04 10:14:20 -06:00
2022-11-23 21:21:49 -08:00
2022-11-23 21:22:16 -08:00
2020-04-21 20:49:55 -07:00
2022-11-23 22:31:32 -08:00

firezone logo

firezone Discourse firezone Coverage Status GitHub commit activity GitHub closed issues Cloudsmith follow on Twitter

Firezone is a self-hosted VPN server and Linux firewall

Firezone Architecture

Get Started

Follow our deploy guide to install your self-hosted instance of Firezone.

Or, if you're on a supported platform, try our one-line install script:

bash <(curl -fsSL https://github.com/firezone/firezone/raw/master/scripts/install.sh)

Using Firezone in production at your organization? Take a look at our Enterprise Plan.

Features

firezone-usage

  • Fast: Uses WireGuard® to be 3-4 times faster than OpenVPN.
  • SSO Integration: Authenticate using any identity provider with an OpenID Connect (OIDC) connector.
  • Containerized: All dependencies are bundled via Docker.
  • Simple: Takes minutes to set up. Manage via a simple CLI.
  • Secure: Runs unprivileged. HTTPS enforced. Encrypted cookies.
  • Firewall included: Uses Linux nftables to block unwanted egress traffic.

Anti-features

Firezone is not:

  • An inbound firewall
  • A tool for creating mesh networks
  • A full-featured router
  • An IPSec or OpenVPN server

Documentation

Additional documentation on general usage, troubleshooting, and configuration can be found at https://docs.firezone.dev.

Get Help

If you're looking for help installing, configuring, or using Firezone, check our community support options:

  1. Discussion Forums: Ask questions, report bugs, and suggest features.
  2. Public Slack Group: Join live discussions, meet other users, and get to know the contributors.
  3. Open a PR: Contribute a bugfix or make a contribution to Firezone.

If you need help deploying or maintaining Firezone for your business, consider contacting us about our paid support plan.

Star History

Star History Chart

Package Repository

Hosted By: Cloudsmith

Package repository hosting is graciously provided by Cloudsmith. Cloudsmith is the only fully hosted, cloud-native, universal package management solution, that enables your organization to create, store and share packages in any format, to any place, with total confidence.

Developing and Contributing

See CONTRIBUTING.md.

Security

See SECURITY.md.

License

See LICENSE.

WireGuard® is a registered trademark of Jason A. Donenfeld.

Description
No description provided
Readme Apache-2.0 169 MiB
Languages
Elixir 57.1%
Rust 29.2%
TypeScript 5.9%
Swift 3.3%
Kotlin 1.8%
Other 2.5%