Some how this was preventing the makefile from being able run the helper
scripts, do to a permission issue. I think somehow `env zsh` was trying to
traverse the env directory. I don't really have a better explanation than this.
Users can still set $HISTFILE if they want to and this will be used instead.
If no value is specified it will default to the $ZDIR/transient/history file.
This will prevent the double render issue that existed prior. It will still
render twice, but the second render will be defered until after tmux has been
quit.
At this point the following doesn't work.
- prompt
- history
- most autocomplete
Additionally with the tmux script getting loaded zplug we are getting a double
render issue, which is increasing the start up time. I'll probably move this
before the .zshrc set to short circuit having to set up all zplug script twice
before having a useable shell.
I don't really like the feel of this but this allows us to call
$(return_val_truthy) to output a value of tue or false based on the retrun value
of the last command. This saves us from having to do make the call ` && echo
true || echo false`.
I will probaby switch this in the future to just have a `echo $?` function
instead. Then check if returnVal == zero. If I do that I will also need to
change the way OS works, requiring true => 0 and false => 1, which is a little
bit conter to how it should be.
The output scaling was causing issues where it fonts were blury. This isn't an
ideal solution, and will not work for using an external monitor but since this
machine is currently just serving as a stand alone laptop, this should work.
It will look for all first level child `makefile`, and run assigned target. This
is equivalent to running:
```shell
for i in */makefile; do
make -C $i $target
done
```
Shared logic can be imported via `include ../lib/shared.mk`
Helper functions include 3 current opperations
1. mk_link:: This will create a symbolic link if the file doesn't already exist.
2. rm_link:: Will remove the link if it is a symlink.
3. report :: This color codes the status of a message and adds a leading symbol.
report also can be called with `LAST_RETURN=$? report "message"`
and will expand this to be either `report info "message"` Or `report error
"message"` based on the last return value.
Current status are info, warn, and error.