summaryrefslogtreecommitdiff
path: root/README.org
blob: 84819fcbce58749ef18f7a539ba43b16b26aca0e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
* README

I have setup these dotfiles to make use of GNU Stow to be installed on any of my machines.

The .stowrc expects this repository to exist in =~/configs/dotfiles/= if it is not - please ammend as necessary.

** Installing your dotfiles

After you clone the repository simply run:

 #+begin_src shell
   $ stow .
 #+end_src

This will generate an output of all of the config files as needed!

*** Removing installations

If you need to revert anything just use

#+begin_src shell
  $ stow -D .
#+end_src


*** .file vs dot-file

Ideally, I would use dot-file instead, since it makes visibility much easier depending on the editing program. HOWEVER, .config is busted with the =--dotfiles= configuration in =.stowrc= so for now I am using the standard 1:1 syntax.

We can track that bug on the [[https://github.com/aspiers/stow/issues/33][aspiers/stow github]] page.

** Local PC Changes

Ideally, ALL of these dotfiles are suitable per PC. But there are always some PC local changes that are needed.

Any configuration that REQUIRES PC Local configurations should be extended where possible to contain them - i.e:

#+begin_src shell
  # .bash_profile
  if [ -f ~/.pc_local_bash_profile ]; then
      source ~/.pc_local_bash_profile
  fi
#+end_src

I don't have a good solution for how to version control these local changes - but ideally anything specific could be moved either into an environment variable, or should be SPECIFIC things that don't really need preservation.

** Ignore Files

To ignore files simply amend the =.stowrc= file with an =--ignore=<regex>= .

** Next Steps

Remember to also setup some files and configurations:
[[https://git.senders.io/senders/bin][Custom bin files repo]] and other "default files"

For example ~em~ is our emacs custom script that will load a default file from ~dmenu~ if no argument is present. This will be typically our ~Tasks.org~ file, but we need to set that =~/.emacs.d/.default_file= symlink.

** LICENSE

I threw the 0BSD on here since you could PROBABLY classify some of this as code, and frankly, I don't give a crap about anything that's in here. Use it! This is all cool stuff, and I don't need any attribution, most of this is evolved from interenet examples anyway!

View [[https://opensource.org/license/0bsd/][Zero Clause BSD License]] site.