Kyle P Davis 11 лет назад
Родитель
Сommit
598b5b2463
1 измененных файлов с 27 добавлено и 43 удалено
  1. 27 43
      README.md

+ 27 - 43
README.md

@@ -1,40 +1,54 @@
 # gimme
 # gimme
-A micro meta package manager for the masses.
+A micro meta manager for the masses.
 
 
 
 
-## What. Does. __That__. MEAN?
-The `gimme` command is intended to run micro scripts that get stuff (or get
-stuff done). Ideally, it can do anything ~~that can be automated in shell~~.
+## What. Does. _That_. MEAN?
+The `gimme` command runs micro scripts that get small blocks of work done. These usually build on other tools and can be chained together. Ideally, it can do anything ~~that can be automated in shell~~.
 
 
-Think of it as glue between tiny little tasks that are easy to define.
+It's like glue between tiny little tasks.
 
 
 
 
 ## No really... what does it do?
 ## No really... what does it do?
 It deals with the shell scripts so that the engineers don't have to.
 It deals with the shell scripts so that the engineers don't have to.
 
 
+yeah...
 
 
-## Umm.. okay... how, then?
 
 
-
-### install it (you do read these scripts, right?)
+## Installation
 ```bash
 ```bash
 curl -fsSL "http://git.kylepdavis.com/kylepdavis/gimme/raw/master/gimme" | bash -
 curl -fsSL "http://git.kylepdavis.com/kylepdavis/gimme/raw/master/gimme" | bash -
 ```
 ```
+_(you do read these scripts, right?)_
+
 
 
-### use it
+## Usage
 ```bash
 ```bash
 gimme goodies
 gimme goodies
-# if it exists, it will run the "$GIMME_DIR/gimmes/goodies" script
-# otherwise, it will run the "$GIMME_DIR/gimmes/_default" script (which by default installs stuff with your package manager)
+
+# if it exists, run:
+"$GIMME_DIR/gimmes/goodies"
+
+# otherwise, run the nearest _default (as an example, this wraps your package manager):
+"$GIMME_DIR/gimmes/_default"
 ```
 ```
 
 
-### shell integration
+
+## Integration
 You can get tab completion in bash by doing something like this (put it in your `.profile` to play for keeps):
 You can get tab completion in bash by doing something like this (put it in your `.profile` to play for keeps):
 ```bash
 ```bash
 source "$GIMME_DIR/gimme"
 source "$GIMME_DIR/gimme"
 ```
 ```
 
 
 
 
+## Customization
+1. write a shell script that does something awesome
+  * you can depend on other "gimmes" by simply calling `gimme that other thing` at the top
+  * add a check to make sure that it does nothing on subsequent runs -- idempotence is sexy
+  * helpers like `has` and `gimme_pkg` get inherited from the main `gimme` script if you want
+2. put it into the `$GIMME_DIR/gimmes/` directory
+3. make it executable with something like `chmod 755 YOUR_GIMME_SCRIPT`
+
+
 ## What is in it for me?
 ## What is in it for me?
 The idea here is that the what you use this for is really up to you.
 The idea here is that the what you use this for is really up to you.
 
 
@@ -46,35 +60,5 @@ Here are some ideas for overall uses to get you started:
 If that wasn't enough here are some ideas for the "gimmes":
 If that wasn't enough here are some ideas for the "gimmes":
 
 
 
 
-## How do I write gimmes?
-Simple:
-1. write a shell script that does something awesome
-  * helpers like `has` and `gimme_pkg` get inherited from the main `gimme` script if you want
-  * add a check to make sure that it does nothing on subsequent runs -- idempotence is sexy
-  * you can depend on other "gimmes" by simply calling `gimme that other thing` at the top
-2. put it into the `$GIMME_DIR/gimmes/` directory
-3. make it executable with something like `chmod 755 YOUR_GIMME_SCRIPT`
-
-
-## What else?
-Also, it prevents cycles so one of your "gimmes" could
-
-What you use this for could range from a small set of personal tools that you use to compliment your dotfiles
-rdotconfiguration management suite to compliment your dotfiles to a
- getting stuff.
-You can take that to mean whatever you want. Use my defaults or fork this project and add your own scripts.
-
-
 ## What makes it better than X?
 ## What makes it better than X?
-Maybe nothing. Lots of things do dependency tracking. I wanted to try this out.
-
-Some suggested using `Makefile` files but that felt a little clunky. Plus `make` isn't exactly installed everywhere.
-Neither is `bash` but it was good enough for me.
-
-You could technically use something like chef, puppet, ansible, salt, etc. but those felt *way* too heavy for my needs.
-
-Just trying to keep it simple and shell scripts are about as simple as it gets.
-
-Here's another project that somewhat agrees:
- [https://github.com/brandonhilkert/fucking_shell_scripts](fucking_shell_scripts) project
-
+Maybe nothing. I thought it was a neat idea and wanted to try it out.