Skip to content

Add make dev-arti as an alternative to C-Tor#7207

Closed
legoktm wants to merge 1 commit intodevelopfrom
make-dev-arti
Closed

Add make dev-arti as an alternative to C-Tor#7207
legoktm wants to merge 1 commit intodevelopfrom
make-dev-arti

Conversation

@legoktm
Copy link
Member

@legoktm legoktm commented Aug 1, 2024

Status

Ready for review

Description of Changes

Arti is Tor's RIIR effort, and while it is 1.x, the onion service support is still experimental.

Given that, it is to our (and Tor's) benefit for us to try using Arti in development modes to provide feedback. To that end, using Arti is now possible, in parallel, to the existing C-Tor support.

Running make dev-arti should give exactly the same experience as the existing make dev-tor endpoint, aside from the inital launch, which will be slower since it needs to compile Arti from scratch.

As an intentional choice, we don't version pin Arti since this is an experimental thing, so it's more beneficial we just automatically stay on the latest version and fix breakage instead of needing to constantly bump versions.

Note that make dev-tor is entirely independent from this, so the two commands will serve the dev server on different onion addresses.

As far as the Arti code itself, generating a config.toml file seems much cleaner than adding to torrc and generating .auth files.

Testing

How should the reviewer test this PR?

  • Without this PR, run make dev-tor, see that it's all fine
  • With this PR, run make dev-tor, see that it uses the same onion addresses and is all fine. Basically this PR should not adversely affect the existing dev-tor in any way.
  • With this PR, run make dev-arti, wait a bit for it to all compile, and then it works in just about the same way.
  • Stop the dev server, and then run make dev-arti again, verify it gives you the same onion addresses as the previous run.

Deployment

Any special considerations for deployment? n/a, dev-only

Checklist

  • Linting (make lint) and tests (make test) pass in the development container

While this modifies the dev container, I explicitly didn't try anything in it yet because this is just for interactive use and not for like, running tests and stuff.

@legoktm legoktm changed the title DNM: Power make dev-tor with Arti Add make dev-arti as an alternative to C-Tor Feb 10, 2025
@legoktm legoktm marked this pull request as ready for review February 10, 2025 21:18
@legoktm legoktm requested a review from a team as a code owner February 10, 2025 21:18
@legoktm
Copy link
Member Author

legoktm commented Feb 10, 2025

Marking this as ready for review; I've reworked it to no longer replace make dev-tor entirely, but rather to be an alternative for it.

Arti is Tor's RIIR effort, and while it is 1.x, the onion service
support is still experimental.

Given that, it is to our (and Tor's) benefit for us to try using Arti in
development modes to provide feedback. To that end, using Arti is now
possible, in parallel, to the existing C-Tor support.

Running `make dev-arti` should give exactly the same experience as the
existing `make dev-tor` endpoint, aside from the inital launch, which
will be slower since it needs to compile Arti from scratch.

As an intentional choice, we don't version pin Arti since this is an
experimental thing, so it's more beneficial we just automatically stay
on the latest version and fix breakage instead of needing to constantly
bump versions.

Note that `make dev-tor` is entirely independent from this, so the two
commands will serve the dev server on different onion addresses.

As far as the Arti code itself, generating a config.toml file seems much
cleaner than adding to `torrc` and generating `.auth` files.
@eloquence
Copy link
Contributor

Closing for now, pending further use of Arti in the project.

@eloquence eloquence closed this May 7, 2025
@github-project-automation github-project-automation bot moved this from Ready For Review to Done in SecureDrop May 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

2 participants

Comments