Skip to content
forked from CodelyTV/dotly

Lazy bash for lazy people. Have maintainable dotfiles with .Sloth.

License

Notifications You must be signed in to change notification settings

gtrabanco/dotSloth

 
 

Repository files navigation

Sloth Logo

.Sloth

Dotfiles for laziness

Original idea is Dotly Framework by Rafa Gomez

About this

.Sloth is a Dotly fork which widely changes from original project.

Dotly is a @rgomezcasas idea supported by CodelyTV) with the help of a lot of people (see Dotly Contributors).

Features & differences with Dotly Framework

  • Abstraction from Framework loader you only need to add in your .bashrc or .zshrc (it will be done automatically but make a backup first).
DOTFILES_PATH="${HOME}/.dotfiles"
SLOTH_PATH="${DOTFILES_PATH}/modules/sloth"
. "${SLOTH_PATH:-$DOTLY_PATH}/shell/init-sloth.sh"
  • Init scripts see (init-scripts in gtrabanco/dotfiles). This provides many possibilities as modular loading of custom variables or aliases by machine, loading secrets... Whatever you can imagine.
  • Per machine (or whatever name you want to) export packages sloth packages dump (you can use dot instead of sloth, we also have aliases for this command like lazy and s).
  • Non opinionated git scripts.
  • Compatibility with all Dotly features and scripts.
  • When you install SLOTH a backup of all files that well be linked is done (.bashrc, .zshrc, .zshenv... All files in symlinks/conf.yaml and equivalent files that are applied with sloth core install). So you won't loose any old data if you migrate to SLOTH.
  • Easy way to create new scripts from Terminal sloth script create --help
  • Easy way to install scripts from Terminal sloth script install_remote --help
  • Use libraries without download
url="https://raw.githubusercontent.com/gtrabanco/sloth/master/scripts/core/src/output.sh"
. <(dot script load_remote "$url") &&
output::write "Using latest output.sh library of .Sloth"
  • Execute scripts without download (as installer do)
url="https://raw.githubusercontent.com/gtrabanco/dotfiles/master/restoration_scripts/98-keybase-import-private-key.sh"
bash <(dot script load_remote "$url")
  • Scripts marketplace (Coming soon...)
  • We promise to reply all issues and support messages and review PRs.

INSTALLATION

Linux, macOS, FreeBSD

Using wget

bash <(wget -qO- https://raw.githubusercontent.com/gtrabanco/sloth/HEAD/installer)

Using curl

bash <(curl -s https://raw.githubusercontent.com/gtrabanco/sloth/HEAD/installer)

Restoring dotfiles

In your repository you see a way to restore your dotfiles, anyway you can restory by using the restoration script.

Linux, macOS, FreeBSD

Using wget

bash <(wget -qO- https://raw.githubusercontent.com/gtrabanco/sloth/HEAD/restorer)

Using curl

bash <(curl -s https://raw.githubusercontent.com/gtrabanco/sloth/HEAD/restorer)

Migration from Dotly

If you have currently dotly in your .dotfiles you can migrate.

Using wget

bash <(wget -qO- https://raw.githubusercontent.com/gtrabanco/sloth/HEAD/dotly-migrator)

Using curl

bash <(curl -s https://raw.githubusercontent.com/gtrabanco/sloth/HEAD/dotly-migrator)

Roadmap

View Wiki if you want to contribute and you do not know what to do or maybe is already a WIP (Work in Progress).