implement print_version argument option

This commit is contained in:
yggverse 2025-08-06 14:09:17 +03:00
parent e493ecdc36
commit 4fd41feeaa
3 changed files with 11 additions and 1 deletions

View file

@ -42,6 +42,10 @@ pub struct Config {
#[arg(long, default_value_t = 20)] #[arg(long, default_value_t = 20)]
pub list_limit: usize, pub list_limit: usize,
/// Show crate version in the catalog (tooltip to the GitHub link)
#[arg(long, default_value_t = true)]
pub print_version: bool,
/// Default capacity (estimated torrents in the `preload` directory) /// Default capacity (estimated torrents in the `preload` directory)
#[arg(long, default_value_t = 1000)] #[arg(long, default_value_t = 1000)]
pub capacity: usize, pub capacity: usize,

View file

@ -27,6 +27,7 @@ pub struct Meta {
pub title: String, pub title: String,
/// * use vector to keep the order from the arguments list /// * use vector to keep the order from the arguments list
pub trackers: Option<Vec<Url>>, pub trackers: Option<Vec<Url>>,
pub version: Option<String>,
} }
#[get("/?<page>")] #[get("/?<page>")]
@ -130,6 +131,11 @@ fn rocket() -> _ {
format_time: config.format_time, format_time: config.format_time,
title: config.title, title: config.title,
trackers: config.tracker, trackers: config.tracker,
version: if config.print_version {
Some(env!("CARGO_PKG_VERSION").into())
} else {
None
},
}) })
.mount("/", FileServer::from(config.statics)) .mount("/", FileServer::from(config.statics))
.mount("/", routes![index, rss]) .mount("/", routes![index, rss])

View file

@ -20,7 +20,7 @@
</main> </main>
<footer> <footer>
<a href="/rss">RSS</a> | <a href="/rss">RSS</a> |
<a href="https://github.com/yggverse/btracker">GitHub</a> <a href="https://github.com/yggverse/btracker" title="{% if meta.version %}v{{ meta.version }}{% endif %}">GitHub</a>
</footer> </footer>
</body> </body>
</html> </html>