Где мне сохранить мои файлы конфигурации в Rust - PullRequest
2 голосов
/ 24 октября 2019

Мне нужно сохранить информацию, такую ​​как конфигурация пользователя для моей программы и их ввод. Где лучше всего хранить эти файлы в Linux и Windows?

Это программа rust-cargo , которая будет установлена ​​в ~/.cargo/bin для ее использования. Я пытался сохранить свои файлы в ~/.cargo, но я не знаю, подходит ли это, так как я новичок в Rust .

1 Ответ

10 голосов
/ 24 октября 2019

Нет ничего особенного для приложений, написанных на Rust. В отличие от других решений, поставляемых со средой выполнения, Rust создает обычные приложения, опираясь на стандартные среды и практики. Обычные правила системы применяются для конфигураций.

В Linux вы должны сначала запросить пути XDG , а затем использовать $HOME в качестве запасного, когда он недоступен.

Вот как вы можете это сделать:

use std::env::var;

fn main() {
    let config_home = var("XDG_CONFIG_HOME")
        .or_else(|_| var("HOME").map(|home|format!("{}/.config", home)));
    println!("{:?}", config_home);
}

Обратите внимание, что несколько библиотек выполняют эту работу за вас и заботятся о поддержке альтернативных операционных систем.

Я не буду ссылаться на них, потому что их много, и они часто меняются, но ваш любимый поискДвижок направит вас к самым популярным из них, если вы будете искать «каталог конфигурации ржавчины».

...