| Crates.io | dkdc-config |
| lib.rs | dkdc-config |
| version | 0.1.0 |
| created_at | 2025-07-02 14:56:32.499869+00 |
| updated_at | 2025-07-02 14:56:32.499869+00 |
| description | Configuration management for dkdc (don't know, don't care) |
| homepage | https://github.com/lostmygithubaccount/dkdc |
| repository | https://github.com/lostmygithubaccount/dkdc |
| max_upload_size | |
| id | 1735220 |
| size | 13,677 |
Configuration management for dkdc (don't know, don't care).
This crate provides centralized configuration management for all dkdc components. It handles:
use dkdc_config::Config;
// Create config with default paths ($HOME/.dkdc)
let config = Config::new()?;
// Get various paths
let lake_dir = config.lake_dir(); // ~/.dkdc/dkdclake
let metadata = config.metadata_path(); // ~/.dkdc/dkdclake/metadata.db
let data = config.data_path(); // ~/.dkdc/dkdclake/data
let python = config.python_path(); // ~/.dkdc/venv/bin/python
// Ensure directories exist
config.ensure_directories()?;
config.ensure_metadata_db()?;
~/.dkdc/
├── dkdclake/
│ ├── metadata.db # SQLite metadata database
│ └── data/ # DuckLake encrypted data files
├── venv/ # Python virtual environment
└── config.toml # User configuration (future)
The crate exports several important constants:
SECRETS_TABLE_NAME, FILES_TABLE_NAME, ARCHIVES_TABLE_NAMEDUCKLAKE_EXTENSION, SQLITE_EXTENSIONColors::PRIMARY, Colors::SECONDARY, etc.DKDC_BANNERHOME or USERPROFILEMinimal dependencies:
anyhow: Error handlingtoml: Configuration file parsing (future)