1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Clone)]
pub struct LegacyFileInfo {
    /// Name used to call the file: ex: I3 configuration
    pub name: Option<String>,
    /// The path to the file / directory (relative to /home/$USER)ex: .config/i3/config
    pub path: String,
    /// Only install if distro is ?
    pub onlyon: Option<String>,
    /// If the file shouldn't be installed, mark is as "backuponly"
    pub backuponly: Option<bool>,
}
#[derive(Debug, Serialize, Deserialize)] // Required by serde_yaml
pub struct LegacyKelpConfig {
    /// The name of the configuration
    pub name: String,
    /// Files to copy contained in /home/$USER
    pub homedir: Vec<LegacyFileInfo>,
    /// Root-located files ex: /var/lib/portage/world
    pub rootfiles: Vec<LegacyFileInfo>,
}