My Unix config files and shell scripts, optimized for Fedora, Debian, macOS and Windows (in that order).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

README.md 1.6 KiB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. # Kirsle's Dotfiles
  2. This repo is for my own personal use for syncing my Unix config files and
  3. scripts between my various devices. Feel free to look around and learn from
  4. my config scripts.
  5. # Setup
  6. ```bash
  7. ~$ git clone git@github.com:kirsle/.dotfiles
  8. ~$ ./.dotfiles/setup
  9. ```
  10. # Dotfiles Manager (dfm)
  11. The dotfiles repo is managed by a `dfm` command, which gets installed into
  12. `~/bin` automatically. (The `.dotfiles/setup` script is just an easy alias
  13. to this command).
  14. See `dfm --help` for documentation. Briefly:
  15. * `dfm setup` creates symlinks to all the files in `./home` into `$HOME`.
  16. * `dfm update` does a `git pull` and installs any new dotfiles.
  17. * `dfm check-update` reminds you every 15 days to run `dfm update` (but
  18. doesn't remind you more than once per 24 hours).
  19. In case one of the target files already exists (and is not a symlink), it is
  20. copied into `.dotfiles/backup` before being deleted and relinked.
  21. The commands take optional arguments:
  22. * `dfm setup --force`: forcefully re-link all dotfiles, deleting any links
  23. that already exist.
  24. * `dfm setup --copy`: tell it not to use symlinks but instead make normal
  25. file copies into `$HOME`.
  26. * `dfm check-update --force`: always show the update reminder.
  27. The `.dotfiles/setup` script passes all options along to `dfm`, so you can
  28. do `.dotfiles/setup --copy` for example.
  29. # Layout
  30. * `./setup`
  31. Installation script for the dotfiles. Creates symlinks for everything in
  32. `./home` into `$HOME`.
  33. This will **not** delete existing files, such as `~/.bashrc`. Use the
  34. `--install` option to make it do so.
  35. * `./home`
  36. Everything in this folder will be symlinked to from your `$HOME` folder.