5 See end of this document for "eventual goals".
11 Should file a RM request to ftpmasters for these old crates:
16 Unblocking testing migrations
17 =============================
19 Run ``dev/rust-excuses.mk refresh all`` to see these in a nice graph.
21 Run ``dev/rust-regressions.sh`` to analyse autopkgtest regressions.
23 From the excuses graph, find the lowest crates i.e. those with no arrows going
24 outwards to other crates. Then run ``dev/list-rdeps.sh @ $lowest_crotes`` to
25 see which of its rdeps are broken, and need to be fixed.
31 Use ``dev/list-remaining-deps.sh`` to help you figure out what's missing.
36 note: (stable) rustfmt is shipped as part of src:rustc nowadays..
39 * rustc-ap-rustc_data_structures (prepared)
40 * rustc-ap-graphviz (needs nightly)
41 * rustc-ap-rustc-cratesio-shim (needs nightly)
42 * rustc-ap-rustc-errors (depends on the rest of the list here)
43 * rustc-ap-rustc-target
44 * rustc-ap-serialize (to be uploaded, dep issue?!)
46 * rustc-ap-serialize (fails because of usage of nightly feature)
52 Needs syntect => onig => onig-sys => bindgen 0.55 (for librust-bindgen-0.51+runtime-dev)
53 Disabling syntect in bat causes:
54 error[E0433]: failed to resolve: use of undeclared type or module `syntect`
55 --> src/terminal.rs:4:5
74 see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=907629
93 [ ] GTK related packages
104 * should be packagable
110 * rustup (not available as a crate)
111 * download (private crate) (needs patched out reqwest features)
112 * async-compression (merged)
115 clap v2 dependency list
116 -----------------------
117 structopt used clap v2
118 dotenv is unmaintained and superseded by dotenvy which uses clap v3;
120 sniffglue, git-absorb, sha1collision, gcov, libslirp and cargo-binutils depend on structopt
121 rav1e uses also clap4
124 GTK stack dependency tree
125 -------------------------
136 * cxx-build (level 1)
138 * cxxbridge-macros (level 1)
139 * cxxbridge-flags (level 1)
140 * link-cplusplus (level 1)
142 matrix-sdk dependency tree
143 --------------------------
147 * ruma-appservice-api
150 * ruma-push-gateway-api
151 * ruma-identity-service-api
152 * ruma-federation-api
157 * ruma-identifiers-valiadation
164 * gstreamer-editing-services
180 * mpris-player (broken)
196 cargo debstatus (#1026852)
204 * no missing deps, waiting on upstream to drop heim
209 * ansi-to-tui (merged)
210 * color-to-tui (merged)
213 * sqlite-sys (merged)
214 * sqlite-src (merged)
222 * mpris-player ( deprecated, fails to build against newer dbus)
228 * genawaiter (merged)
229 * sys-mount (needs rustc 1.65)
230 * pwd (upstream license issues :( )
240 Binary crates worth packaging (please add if you know more):
243 - asus-ctl - control asus laptops (https://gitlab.com/asus-linux/asusctl)
244 - bench - simple benchmarking
245 - bingrep - Grep through binaries from various OSs and architectures.
246 - bottom - Cross-platform monitoring tool (https://github.com/ClementTsang/bottom)
247 - cargo-deb - Create Debian packages from Cargo projects
248 - cargo-debstatus - Print the status of crate’s dependencies in Debian
249 - cargo-download - Download sources of a crate
250 - cargo-edit - Cargo editing subcommands (add, rm, upgrade)
251 - diskonaut - interactive disk usage tui tool
252 - hg - Rust implement of hg
253 - jql - JSON Query Language CLI tool.
254 - macchina - fetch CLI tool (https://github.com/Macchina-CLI/macchina)
255 - meli - terminal mail client (https://meli.delivery/)
256 - recode_rs - CLI tool converting between the character encodings.
257 - resvg - SVG renderer (in Debian; packaged separately, but doesn’t build anymore)
258 - rural - User-friendly command-line HTTP tool
259 - rust-analyzer - modular rust compiler frontend with LSP
260 - rustfmt-nightly - rust coding style
261 - rustup - installing and managing multiple rust toolchains
262 - tmux-hints - Find matches (e.g. urls) and navigate them by keyboard
263 - viu - Command-line image viewer
264 - xsv - Command line program for manipulating CSV files
265 - zola - static site generator (https://www.getzola.org/)
267 GUI GTK-based programs:
269 - authenticator - 2FA program (GTK/libadwaita, https://gitlab.gnome.org/World/Authenticator)
270 - amberol - simple music player (GTK/libadwaita, https://gitlab.gnome.org/World/Amberol)
271 - brewstillery - Brewer's, vinter's and distiller's calculator (GTK).
272 - decoder - qr code reader (GTK/libadwaita, https://apps.gnome.org/app/com.belmoussaoui.Decoder/)
273 - fractal - Matrix messaging client (GTK, https://wiki.gnome.org/Apps/Fractal)
274 - fragments - bittorrent client (GTK/libadwaita, https://apps.gnome.org/de/app/de.haeckerfelix.Fragments/)
275 - health - health tracking app (GTK/libadwaita, https://apps.gnome.org/de/app/dev.Cogitri.Health/)
276 - kooha - screen recorder (GTK/libadwaita, https://github.com/SeaDve/Kooha)
277 - mousai - song recognition (GTK/libadwaita, https://apps.gnome.org/de/app/io.github.seadve.Mousai/)
278 - obfuscate - censor private information (GTK/libadwaita, https://apps.gnome.org/de/app/com.belmoussaoui.Obfuscate/)
279 - pika-backup - backup program (GTK/libadwaita, https://apps.gnome.org/de/app/org.gnome.World.PikaBackup/)
280 - podcasts - Podcasts app (GTK, https://wiki.gnome.org/Apps/Podcasts)
281 - popsicle - USB flasher (GTK, https://github.com/pop-os/popsicle)
282 - shortwave - Internet radio client (GTK, https://gitlab.gnome.org/World/Shortwave)
283 - spot - spotify client (GTK/libadwaita, https://github.com/xou816/spot)
284 - system-76-power - manage power profiles (https://github.com/pop-os/system76-power)
285 - video-trimmer - Trim videos (GTK/libadwaita, https://gitlab.gnome.org/YaLTeR/video-trimmer)
287 To see lists of interesting binary crates, you can run something like::
289 $ apt-get install koji-client
290 $ koji -p fedora search package 'rust-*' | cut -b6- | dev/filter-binary-crates.sh
292 Current output (on 2020-01-17), minus stuff already in Debian, is:
317 koji-client seems to be not available in testing/unstable (2022-12-25).
319 Sccache is also helpful for reducing the build-time of things like firefox and thunderbird
321 - sccache https://github.com/mozilla/sccache
325 There are also more binaries here:
327 https://github.com/rust-unofficial/awesome-rust