lots of snippets
[dotfiles.git] / .github / README.md
1 # Dotfiles!!
2
3 ## Scripts
4
5 Here are some notable Scripts
6
7 ### fzfutil
8 cd-ing and vi-ing at the speed of light. Uses fzf to let you cd to dirs and edit files across the galaxy.
9 Simply source the script in your .bashrc or equivalent. 
10 Customize which directories you want to include by editing the script.
11
12 ### git-pushall
13 Useful for when you have a repo with multiple remotes and are too lazy to push to them all.
14 Usage is as follows:
15 ```
16 git-pushall [branch]
17 ```
18 Limitations: does not work on bare repos yet
19
20 ### mpd-change
21 Sends a notification whenever mpd changes songs. Does not send anything on pause/play.
22
23 ### screenshot
24 Take screenshots with scrot. Dmenu prompt for filename, leaving empty generates a default name.
25 Limitations: no way to cancel screenshot, also the name prompt happens before the screenshot is taken (which is sorta annoying).
26 Will improve later.
27
28 ### usbmnt
29 Sends a notification whenever usb is mounted.
30
31 ## How I manage dotfiles
32 This method of managing dotfiles was inspired by [this](https://www.youtube.com/watch?v=tBoLDpTWVOM) video.
33
34 TLDR;
35 Run in your home directory:
36 ```
37 git init --bare .dotfiles
38 ```
39
40 Then for ease of use add this alias to your bashrc (etc):
41 ```
42 alias dotfiles='/usr/bin/git --git-dir=$HOME/.dotfiles --work-tree=$HOME'
43 ```
44
45 After reloading the shell, run:
46 ```
47 dotfiles config --local status.showUntrackedFiles no
48 ```
49
50 Now you can use the normal git commands like so
51 ```
52 dotfiles add .bashrc
53 dotfiles status
54 dotfiles commit -m 'added .bashrc'
55 ```
56