| Crates.io | atem-dots |
| lib.rs | atem-dots |
| version | 0.3.1 |
| created_at | 2025-02-11 21:13:37.013348+00 |
| updated_at | 2025-03-28 20:25:34.318361+00 |
| description | A (dot)file manager |
| homepage | |
| repository | https://github.com/jullanggit/dots |
| max_upload_size | |
| id | 1552006 |
| size | 55,204 |
A (dot)file manager using symlinks (intended for use in atem, but can also be used standalone).
Can be understood as a more powerful GNU Stow, which allows you to precisely control where in the file tree the symlink should be placed.
Dots operates on a file tree containing the paths you want to symlink.
The location of this file tree has to be set using the files_path key in the config file (recommendation: {home}/.config/atem/files)
The files_path directory is split in multiple sub-directories, to allow for different files on different machines.
"{hostname}" can be used as a placeholder for the actual hostname (For example: {hostname}/etc/pacman.conf).
As most other symlinks are against the same subdir, you can set a default_subdir in the config file.
Then, you can just omit the default subdir. (For example: /etc/pacman.conf)
"{home}" can be used as a placeholder for the home directory of the current user (For example: /{home}/.config/dots).
All paths are in the format described above.
All commands (except remove, which doesn't care) can also take --copy as an argument for copying, instead of symlinking the file. This is meant for things that for some reason or another do not like being a symlink.
Note that paths added using --copy will not be detected by list, instead a list of items that should be on the system should be passed, which are then validated. Only paths that actually are on the system are printed back out.
list_paths key{home}/.config/dots
list searches throughlist ignoreslist should run as rootcargo +nightly install atem-dots