#989456 RFP: geckodriver - Proxy for using W3C WebDriver compatible clients to interact with Gecko-based browsers

Package:
wnpp
Source:
wnpp
Submitter:
Joseph Nuthalapati
Date:
2025-11-29 16:48:49 UTC
Severity:
wishlist
Blocked By:
Bug Title
874207

  6

geckodriver: please enable

normal unstable almost 5 years ago

907913

  2

Message: 'geckodriver' executable needs to be in PATH

normal unstable about 5 years ago

989455

  3

firefox-esr: ship geckodriver

wishlist stable testing unstable almost 3 years ago

#989456#5
Date:
2021-06-04 06:50:31 UTC
From:
To:
* Package name    : geckodriver
   Version         : 0.29.1
* URL             : https://github.com/mozilla/geckodriver
* License         : MPLv2
   Programming Lang: Rust
   Description     : Proxy for using W3C WebDriver-compatible clients to
interact with Gecko-based browsers.

  Proxy for using W3C WebDriver-compatible clients to interact
  with Gecko-based browsers.
  .
  This program provides the HTTP API described by the WebDriver protocol
  to communicate with Gecko browsers, such as Firefox. It translates
  calls into the Firefox remote protocol by acting as a proxy between the
  local and remote ends.

geckodriver is used for automation of the Firefox web browser. It is
required by packages that test web applications by simulating user
interactions, e.g. python3-selenium.

#989456#10
Date:
2021-06-04 07:03:19 UTC
From:
To:
Control: block 989456 by 874207 989455
...

Since geckodriver is part of the Firefox source code, it would be
better to build it from the firefox and firefox-esr source packages,
and there are already two bugs about including geckodriver this way:

https://bugs.debian.org/874207
https://bugs.debian.org/989455

#989456#19
Date:
2022-12-15 00:45:24 UTC
From:
To:
Control: unblock 989456 by 874207 989455

The Firefox maintainer said on these two bugs that it should instead
be packaged separately, since it is available on crates.io now:

Here are the pages about the crate (second one needs no JS):

https://crates.io/crates/geckodriver
https://lib.rs/crates/geckodriver

Here is a link to the upstream git repository:

https://hg.mozilla.org/mozilla-central/file/tip/testing/geckodriver

Here is an example of how to package Rust programs:

https://blog.hackeriet.no/packaging-a-rust-project-for-debian/

#989456#26
Date:
2023-02-01 13:39:52 UTC
From:
To:
A quick cargo debstatus shows that is is missing seven crates atm. This isn't that much in the rust world. If someone wants to package it, please coordinate with the debian rust team.

cheers
werdahias

#989456#31
Date:
2025-07-24 13:14:28 UTC
From:
To:
A slower cargo-debstatus scan shows these mandatory deps:

- marionette
- mozdevice
- mozprofile
- mozrunner
- mozversion
- webdriver

geckodriver and webdriver both depend on icu_segmenter, which pulls in the
icu4x family. However, it's only used to (1) truncate log messages in
geckodriver, (2) check if a key action contains only 1 grapheme cluster.
Thus, it seems possible to patch out.

Other than that, it's mostly a matter of relaxing patches and NEW trips.