{"id":13639217,"url":"https://github.com/NilsIrl/MozWire","last_synced_at":"2025-04-19T22:31:53.945Z","repository":{"id":37027876,"uuid":"287787250","full_name":"NilsIrl/MozWire","owner":"NilsIrl","description":"MozWire is an unofficial configuration manager giving Linux, macOS users (among others), access to MozillaVPN.","archived":false,"fork":false,"pushed_at":"2024-06-16T13:21:07.000Z","size":188,"stargazers_count":557,"open_issues_count":13,"forks_count":20,"subscribers_count":13,"default_branch":"trunk","last_synced_at":"2024-08-09T21:09:49.987Z","etag":null,"topics":["linux","macos","mozilla","rust","wireguard"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/NilsIrl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-08-15T16:49:31.000Z","updated_at":"2024-08-06T04:28:59.000Z","dependencies_parsed_at":"2024-06-13T04:49:36.159Z","dependency_job_id":null,"html_url":"https://github.com/NilsIrl/MozWire","commit_stats":{"total_commits":80,"total_committers":6,"mean_commits":"13.333333333333334","dds":0.07499999999999996,"last_synced_commit":"7716b93ca4228a111da03e0cdc970300fd761f59"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NilsIrl%2FMozWire","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NilsIrl%2FMozWire/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NilsIrl%2FMozWire/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/NilsIrl%2FMozWire/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/NilsIrl","download_url":"https://codeload.github.com/NilsIrl/MozWire/tar.gz/refs/heads/trunk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223810308,"owners_count":17206732,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["linux","macos","mozilla","rust","wireguard"],"created_at":"2024-08-02T01:00:58.713Z","updated_at":"2024-11-09T09:30:43.910Z","avatar_url":"https://github.com/NilsIrl.png","language":"Rust","readme":"# MozWire\n\n[![Crates.io](https://img.shields.io/crates/v/mozwire)][crates.io]\n[![GitHub All Releases](https://img.shields.io/github/downloads/NilsIrl/mozwire/total?label=GitHub%20Downloads)][release page]\n[![Crates.io](https://img.shields.io/crates/d/mozwire?label=Crates.io%20Downloads)][crates.io]\n![GitHub Workflow Status (branch)](https://img.shields.io/github/workflow/status/NilsIrl/mozwire/Rust/trunk)\n\nMozWire is an unofficial cross-platform client for MozillaVPN, finally giving\nLinux, macOS, FreeBSD, OpenBSD and others (all platforms supporting the\nWireGuard protocol) users access to this VPN provider. MozWire also supports\nWindows.\n\n## Features\n\n* Support for [multihop] servers (Not available on official clients) (`--hop`)\n* Select individual servers (as opposed to being limited to choosing cities) (Not available on official clients)\n* Select custom remote port, bypassing firewalls (Not available on official clients) (`--port`)\n* Support for other operating systems (Not available on official clients)\n* Use \"native\" WireGuard clients with more customizability (Not available on official clients)\n* Tunnel only IPv6 traffic (Not available on official clients) (`--tunnel`)\n* Supports kill switch (`--killswitch`)\n* Works with [socks5 multihop]\n\n## Installation\n\n### Using pre-built binaries from the CI (Linux, macOS and Windows) (Recommended)\n\nLinux, macOS and Windows binaries are available on the [release page]. These\nbinaries are built by GitHub Actions CI.\n\n### Using the [AUR] for [Arch Linux] users\n\nThe package name is [`mozwire`](https://aur.archlinux.org/packages/mozwire) and\ncan be installed using your favourite [AUR helper]:\n\n```sh\nyay -S mozwire\n```\n\n### Using Nix\n`mozwire` is now packaged in\n[nixpkgs](https://github.com/NixOS/nixpkgs/pull/95754), make sure your\n`nixpkgs-unstable` channel is up to date (`nix-channel --update\nnixpkgs-unstable`), then run\n\n```sh\nnix-env -i MozWire\n```\n\n### Using `cargo install`\n\n#### From [crates.io]\n\n```sh\ncargo install mozwire\n```\n\n#### From git\n\n```sh\ncargo install --git https://github.com/NilsIrl/MozWire.git --branch trunk\n```\n\n### Building\n\n```\ngit clone https://github.com/NilsIrl/MozWire.git\ncd MozWire\ncargo build\n```\n\n## Usage\n\n`mozwire relay save` to generate a WireGuard configuration. `--help` to get help\non a subcommand, e.g. `mozwire relay --help`, `mozwire relay save --help`.\n\n### Examples\n\nOutput configuration for all servers into the `/etc/wireguard` directory.\n\n```sh\nmozwire relay save -o /etc/wireguard -n 0\n```\n\nUse `MOZ_TOKEN` to \"cache\" the token instead of specifying it each time with\n`--token` or log in each time.\n\n```sh\nexport MOZ_TOKEN=$(mozwire --print-token) # save the token in the MOZ_TOKEN environment variable\nmozwire .... # mozwire commands can be run without having to log in\n```\n\n[![asciicast](https://asciinema.org/a/wQgorg0PgkrjI52NSWEdzdQ7U.svg)](https://asciinema.org/a/wQgorg0PgkrjI52NSWEdzdQ7U)\n\n```\nmozwire 0.8.1\nNils \u003cnils@nilsand.re\u003e\nMozillaVPN wireguard configuration manager\n\nUSAGE:\n    mozwire [OPTIONS] [SUBCOMMAND]\n\nOPTIONS:\n    -h, --help             Print help information\n        --no-browser       By default, mozwire will open the login page in a browser,\n                           this option prevents mozwire a browser page from being opened\n        --print-token      Print the token used to query the Mozilla API, so that it can\n                           be reused with --token, without having to sign in each time\n        --token \u003cTOKEN\u003e    The token used to communicate with the Mozilla API. If\n                           unspecified, a web page will be opened to retrieve the token.\n                           the MOZ_TOKEN environment variable can also be used instead\n                           [env: MOZ_TOKEN=]\n    -V, --version          Print version information\n\nSUBCOMMANDS:\n    device    Add, remove and list devices. To connect to MozillaVPN, a device needs\n                  to be on the list\n    help      Print this message or the help of the given subcommand(s)\n    relay     List available relays (VPN Servers) and save WireGuard configurations\n                  for these\n\nTo query MozillaVPN, mozwire requires a token, specified with --token. If it is left\nunspecified, mozwire will generate a token by opening a login page, the token generated\ncan be printed using --print-token, so that it can be reused. To generate a WireGuard\nconfiguration use `mozwire relay save`.\n```\n\n## Contact\n\n[mozwire@nilsand.re](mailto:mozwire@nilsand.re)\n\n## License and Copyright\n\nMozWire is licensed under the GNU GENERAL PUBLIC LICENSE Version 3. I am willing\nto relicense it.\n\nCopyright © 2020-2023 Nils André\n\n[Arch Linux]: https://www.archlinux.org/\n[AUR]: https://wiki.archlinux.org/index.php/Arch_User_Repository\n[AUR Helper]: https://wiki.archlinux.org/index.php/AUR_helpers\n[crates.io]: https://crates.io/crates/mozwire\n[multihop]: https://mullvad.net/en/help/multihop-wireguard/\n[release page]: https://github.com/NilsIrl/MozWire/releases\n[socks5 multihop]: https://mullvad.net/en/help/different-entryexit-node-using-wireguard-and-socks5-proxy/\n","funding_links":[],"categories":["Rust","rust","Projects"],"sub_categories":["Services based on WireGuard"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNilsIrl%2FMozWire","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FNilsIrl%2FMozWire","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FNilsIrl%2FMozWire/lists"}