]> git.proxmox.com Git - debcargo-conf.git/blob - TODO.rst
Release package cxxbridge-flags
[debcargo-conf.git] / TODO.rst
1 ===============
2 Immediate goals
3 ===============
4
5 See end of this document for "eventual goals".
6
7
8 Remove old libraries
9 ====================
10
11 Should file a RM request to ftpmasters for these old crates:
12
13 No old crates, yay !
14
15
16 Unblocking testing migrations
17 =============================
18
19 Run ``dev/rust-excuses.mk refresh all`` to see these in a nice graph.
20
21 Run ``dev/rust-regressions.sh`` to analyse autopkgtest regressions.
22
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.
26
27
28 New packages
29 ============
30
31 Use ``dev/list-remaining-deps.sh`` to help you figure out what's missing.
32
33 rustfmt-nightly
34 ---------------
35
36 note: (stable) rustfmt is shipped as part of src:rustc nowadays..
37
38 * rustc-ap-syntax
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?!)
45 * rustc-ap-syntax-pos
46 * rustc-ap-serialize (fails because of usage of nightly feature)
47
48 bat update
49 ----------
50
51 syntect is in debian
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
56
57
58 bingrep
59 -------
60
61 * hexplay (merged)
62 * metagoblin
63
64 tokei
65 -----
66
67 needs handlebars
68 which needs pest
69 which needs ucd-trie
70
71 librsvg
72 -------
73
74 see https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=907629
75
76 [ ] alga
77 [ ] c_vec
78 [x] criterion
79 [ ] downcast-rs
80 [ ] handlebars
81 [ ] itertools-num
82 [ ] matrixmultiply
83 [ ] nalgebra
84 [ ] num-traits-0.1.43
85 [ ] pest_derive
86 [ ] quote-0.3.15
87 [ ] rand-0.4.2
88 [ ] rawpointer
89 [ ] syn-0.11.11
90 [ ] synom
91 [ ] unicode-xid-0.0.4
92 [x] clap v4
93 [ ] GTK related packages
94
95
96 bench
97 -----
98
99 * packageable
100
101 cargo-deb
102 ----------------
103
104 * should be packagable
105
106
107 rustup (#1026333)
108 ------
109
110 * rustup (not available as a crate)
111 * download (private crate) (needs patched out reqwest features)
112 * async-compression (merged)
113
114
115 clap v2 dependency list
116 -----------------------
117 structopt used clap v2
118 dotenv is unmaintained and superseded by dotenvy which uses clap v3;
119 hexyl uses clapv4
120 sniffglue, git-absorb, sha1collision, gcov, libslirp and cargo-binutils depend on structopt
121 rav1e uses also clap4
122
123
124 GTK stack dependency tree
125 -------------------------
126
127 * ???
128 * gobject-sys
129 * glib-sys
130 * system-deps
131
132 cxx depedency tree
133 -----------------
134
135 * cxx (level 2)
136 * cxx-build (level 1)
137 * cxx-gen (level 1)
138 * cxxbridge-macros (level 1)
139 * cxxbridge-flags (level 1)
140 * link-cplusplus (level 1)
141
142 matrix-sdk dependency tree
143 --------------------------
144
145 * matrix-sdk
146 * ruma
147 * ruma-appservice-api
148 * ruma-state-res
149 * ruma-signatures
150 * ruma-push-gateway-api
151 * ruma-identity-service-api
152 * ruma-federation-api
153 * ruma-client
154 * ruma-client-api
155 * ruma-common
156 * ruma-macros
157 * ruma-identifiers-valiadation
158
159 fractal (#900928)
160 -------
161
162 * gspell
163 * gspell-sys
164 * gstreamer-editing-services
165 * gstreamer-player
166 * matrix-sdk (WIP)
167 * comrak
168 * sourceview4
169 * ashpd crates
170
171 obfuscate
172 ---------
173
174 * libadwaita
175
176 podcasts (#965044)
177 --------
178
179 * gstreamer-player
180 * mpris-player (broken)
181
182 gping (#975495)
183 -------
184
185 * needs an update
186
187 lfs (#1006367)
188 -------
189
190 * argh
191 * argh-derive
192 * termimad
193 * coloor
194 * minimad (merged)
195
196 cargo debstatus (#1026852)
197 ------
198
199 * postgres (merged)
200
201 bottom
202 -------
203
204 * no missing deps, waiting on upstream to drop heim
205 * TODO: file ITP
206
207 macchina
208 ------
209 * ansi-to-tui (merged)
210 * color-to-tui (merged)
211 * libmacchina
212 * sqlite
213 * sqlite-sys (merged)
214 * sqlite-src (merged)
215
216 shortwave (#951166)
217 -------
218
219 * libadwaita
220 * mdns (merged)
221 * libshumate
222 * mpris-player ( deprecated, fails to build against newer dbus)
223
224 popsicle (#1007982)
225 ------
226
227 * srmv
228 * genawaiter (merged)
229 * sys-mount (needs rustc 1.65)
230 * pwd (upstream license issues :( )
231 * iso9660 (broken)
232 * i18n-embed-fl
233 * i18n-embed
234
235
236 ==============
237 Eventual goals
238 ==============
239
240 Binary crates worth packaging (please add if you know more):
241
242
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/)
266
267 GUI GTK-based programs:
268
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)
286
287 To see lists of interesting binary crates, you can run something like::
288
289 $ apt-get install koji-client
290 $ koji -p fedora search package 'rust-*' | cut -b6- | dev/filter-binary-crates.sh
291
292 Current output (on 2020-01-17), minus stuff already in Debian, is:
293
294 afterburn
295 alloc-no-stdlib
296 alloc-stdlib
297 askalono-cli
298 brotli
299 brotli-decompressor
300 cargo-c
301 comrak
302 coreos-installer
303 ffsend
304 heatseeker
305 jql
306 lsd
307 multipart
308 open
309 permutate
310 pretty-git-prompt
311 qrcode
312 skim
313 starship
314 varlink-cli
315 varlink_generator
316
317 koji-client seems to be not available in testing/unstable (2022-12-25).
318
319 Sccache is also helpful for reducing the build-time of things like firefox and thunderbird
320
321 - sccache https://github.com/mozilla/sccache
322
323 In debian :)
324
325 There are also more binaries here:
326
327 https://github.com/rust-unofficial/awesome-rust