{"id":14986795,"url":"https://github.com/blurgyy/dt","last_synced_at":"2025-04-11T23:08:47.757Z","repository":{"id":44975572,"uuid":"412779121","full_name":"blurgyy/dt","owner":"blurgyy","description":"🏘 $HOME, $HOME everywhere","archived":false,"fork":false,"pushed_at":"2024-01-01T09:09:03.000Z","size":2960,"stargazers_count":29,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-04T11:15:51.509Z","etag":null,"topics":["aur","cli","command-line","config","configuration","dotfile-manager","dotfiles","dt-cli","handlebars","rust","syncing","template","templating"],"latest_commit_sha":null,"homepage":"https://dt.cli.rs","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blurgyy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE-APACHE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-10-02T11:40:26.000Z","updated_at":"2024-09-10T15:03:11.000Z","dependencies_parsed_at":"2023-02-16T09:30:53.583Z","dependency_job_id":"a29beba3-77b8-4efd-a7fb-f6c3ab827867","html_url":"https://github.com/blurgyy/dt","commit_stats":{"total_commits":458,"total_committers":4,"mean_commits":114.5,"dds":0.1506550218340611,"last_synced_commit":"a3ed3ff883926de2ede6c0e33894a289b30ff511"},"previous_names":[],"tags_count":31,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blurgyy%2Fdt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blurgyy%2Fdt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blurgyy%2Fdt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blurgyy%2Fdt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blurgyy","download_url":"https://codeload.github.com/blurgyy/dt/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239805929,"owners_count":19700217,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aur","cli","command-line","config","configuration","dotfile-manager","dotfiles","dt-cli","handlebars","rust","syncing","template","templating"],"created_at":"2024-09-24T14:13:33.850Z","updated_at":"2025-02-20T08:31:42.950Z","avatar_url":"https://github.com/blurgyy.png","language":"Rust","readme":"# DT\n\n[![release](https://github.com/blurgyy/dt/actions/workflows/release.yml/badge.svg)](https://github.com/blurgyy/dt/actions/workflows/release.yml)\n[![tests](https://github.com/blurgyy/dt/actions/workflows/tests.yml/badge.svg)](https://github.com/blurgyy/dt/actions/workflows/tests.yml)\n[![docs](https://github.com/blurgyy/dt/actions/workflows/docs.yml/badge.svg)](https://dt.cli.rs/)\n[![crates.io](https://img.shields.io/crates/v/dt-cli?style=flat\u0026labelColor=1C2C2E\u0026color=C96329\u0026logo=Rust\u0026logoColor=white)](https://crates.io/crates/dt-cli)\n\n`DT` allows you to sync/populate configuration files at will.  It currently\nprovides a CLI tool `dt-cli`.\n\n## Usage\n\nThe command line interface `dt-cli` accepts a path to the configuration file\nas an argument and performs the syncing process specified in the file.\n\nConfiguration guides and detailed usages can be found in the\n[documentations](https://dt.cli.rs/).\n\n### Example\n\nA simple working configuration file to sync all files from `~/dt/nvim` to\n`~/.config/nvim` that matches `*init.vim` can be written as:\n\n```toml\n[[local]]\nname = \"Neovim Configs\"\nbase = \"~/dt/nvim\"\nsources = [\"*init.vim\"]\ntarget = \"~/.config/nvim\"\n```\n\n:warning: **STOP HERE if you don't know what you are doing, or have not backed\nup existing files under `~/.config/nvim`.**\n\nSave above config to `~/.config/dt/cli.toml` and run\n\n```shell\n$ dt-cli -c ~/.config/dt/cli.toml\n```\n\nto start syncing.  Note the path in this example (`~/.config/dt/cli.toml`) is\nalso the default path, so the below command (calling `dt-cli` with no argument)\ndoes the same thing as above:\n\n```shell\n$ dt-cli\n```\n\n**Other command line flags \u0026 options**\n\n| Flags | Description |\n|---:|:---|\n| `-d\\|--dry-run` | Shows changes to be made without actually syncing files. |\n| `-h\\|--help` | Prints help information. |\n| `-q\\|--quiet` | Decreases logging verbosity. |\n| `-v\\|--verbose` | Increases logging verbosity. |\n| `-V\\|--version` | Prints version information. |\n\n| Options | Description |\n|---:|:---|\n| `-c\\|--config-path` `\u003cpath\u003e` | Specifies path to config file. |\n\n| Args | Description |\n|---:|:---|\n| `\u003cgroup-name\u003e...` | Specifies name(s) of the group(s) to be processed |\n\n## Install\n\n### AUR\n\n`dt-cli` is in the [AUR](https://aur.archlinux.org/packages/dt-cli/), you can\ninstall it with your favorite package manager:\n\n```shell\n$ paru -S dt-cli\n```\n\n### Alternative ways\n\nAlternatively, you can:\n\n- Download latest [release](https://github.com/blurgyy/dt/releases/latest)\n  from GitHub\n- Install from [crates.io](https://crates.io/crates/dt-cli/):\n\n  ```shell\n  $ cargo install dt-cli\n  ```\n\n- Build from source:\n\n  ```shell\n  $ git clone git@github.com:blurgyy/dt.git\n  $ cd dt\n  $ cargo test --release\n  $ cargo install --path=dt-cli\n  ```\n\n## Contributing\n\nThere are numerous ways to help with this project.  Let's [get\nstarted](https://github.com/blurgyy/dt/blob/main/CONTRIBUTING.md)!\n\n## License\n\nLicensed under the the MIT license \u003chttp://opensource.org/licenses/MIT\u003e or\nApache License, Version 2.0 \u003chttp://www.apache.org/licenses/LICENSE-2.0\u003e, at\nyour option.  This file may not be copied, modified, or distributed except\naccording to those terms.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblurgyy%2Fdt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblurgyy%2Fdt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblurgyy%2Fdt/lists"}