{"id":13587042,"url":"https://github.com/greatscottgadgets/packetry","last_synced_at":"2025-10-19T00:51:31.749Z","repository":{"id":37606304,"uuid":"465013704","full_name":"greatscottgadgets/packetry","owner":"greatscottgadgets","description":"A fast, intuitive USB 2.0 protocol analysis application for use with Cynthion.","archived":false,"fork":false,"pushed_at":"2025-05-09T14:06:08.000Z","size":2224,"stargazers_count":203,"open_issues_count":23,"forks_count":30,"subscribers_count":21,"default_branch":"main","last_synced_at":"2025-05-13T12:08:00.500Z","etag":null,"topics":["packet-analyzer","rust","usb"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/greatscottgadgets.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2022-03-01T18:38:04.000Z","updated_at":"2025-05-09T14:06:13.000Z","dependencies_parsed_at":"2023-02-18T16:15:58.275Z","dependency_job_id":"6423b10d-6d3e-4100-a961-fa6c77500f76","html_url":"https://github.com/greatscottgadgets/packetry","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greatscottgadgets%2Fpacketry","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greatscottgadgets%2Fpacketry/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greatscottgadgets%2Fpacketry/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/greatscottgadgets%2Fpacketry/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/greatscottgadgets","download_url":"https://codeload.github.com/greatscottgadgets/packetry/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253939184,"owners_count":21987411,"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":["packet-analyzer","rust","usb"],"created_at":"2024-08-01T15:05:59.079Z","updated_at":"2025-10-19T00:51:31.730Z","avatar_url":"https://github.com/greatscottgadgets.png","language":"Rust","funding_links":[],"categories":["Rust","System Management"],"sub_categories":["System Monitoring and Info"],"readme":"# Packetry\n\nA fast, intuitive USB 2.0 protocol analysis application for use with [Cynthion](https://greatscottgadgets.com/cynthion/).\n\n![Screenshot of Packetry](screenshot.png)\n\n## Documentation\n\nRead the latest [Packetry Documentation](https://packetry.readthedocs.io/).\n\n## Development\n\nPacketry is written in [Rust](https://rust-lang.org/), with its GUI using [GTK 4](https://gtk.org) via the [gtk-rs](https://gtk-rs.org/) bindings.\n\nTo build it, you need a working Rust development environment. The minimum supported Rust version is 1.85.1.\n\nYou must also have the GTK 4 headers installed and discoverable via `pkg-config`, as this is required for Rust to build the gtk-rs crates.\n\n### Building and running\n\nTo build, run `cargo build` after installing the necessary prerequisites (see below). Run with `cargo run`.\n\nIf you pass a capture filename as an argument, Packetry will attempt to load it. The current supported file format is a `.pcap` file with the `LINKTYPE_USB_2_0` link layer header type.\n\nNote: Do not build with `--all-features`. All the optional features currently in the package are for debug/test purposes only, and will prevent or degrade normal use of the application if enabled. See `Cargo.toml` for details.\n\n### Installing prerequisites\n\n#### Linux\n\nInstall the Rust build tools, other essential build tools, and GTK 4 headers.\n\nOn Debian based systems it may be sufficient to use the command:\n\n`apt install rustc cargo build-essential libgtk-4-dev`\n\nFor Fedora systems:\n\n`yum install rust cargo make gcc gcc-c++ gtk4-devel pango-devel`\n\nFor other distributions, a similar set of packages should be required.\n\nNote that Packetry requires a minimum Rust version of 1.85.1. If your distribution's packages are older than this, use [rustup](https://rustup.rs/) to get the latest Rust toolchain and manage your Rust installation.\n\n#### macOS\n\nInstall Rust with [rustup](https://rustup.rs/), and install [Homebrew](https://brew.sh/).\n\nInstall GTK 4 with `brew install gtk4`.\n\n#### Windows\n\nFollow the installation instructions from [GUI development with Rust and GTK 4](https://gtk-rs.org/gtk4-rs/stable/latest/book/installation_windows.html).\n\nYou can use either the MSVC or GNU toolchains.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreatscottgadgets%2Fpacketry","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgreatscottgadgets%2Fpacketry","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgreatscottgadgets%2Fpacketry/lists"}