Commit graph

7 commits

Author SHA1 Message Date
Marty Oehme bcd90e7048
sh: Fix mkdir issue after removing XDG env vars
Fixed bug introduced in 15f5f0b when removing the environment variable
for two XDG directories, but not their creation.
The test would check an empty directory for its existence and, not
finding '' to be a directory, attempt to create it instead - resulting
in the attempt to create a directory of an empty string.
2021-03-22 21:05:15 +01:00
Marty Oehme 15f5f0b5c9
sh: Remove xdg dirs for template, public
Removed the template and public configurations of XDG directories in my
home dir. They clutter up the place and, so far, I've never needed them.
2021-03-16 11:57:36 +01:00
Marty Oehme ed881273b8
taskwarrior: Move xdg env variable to module 2021-02-19 16:54:39 +01:00
Marty Oehme b0bfbf730a
taskwarrior: Prepare xdg compliance
Add environment variables telling taskwarrior to make use of xdg
compliant directory structure for its configuration and its data.
2021-02-19 16:54:38 +01:00
Marty Oehme 717f2a13d6
X: Remove xdg-user-dirs, manually set dirs with sh
We already have a file which is strictly dedicated to xdg setting
environment variables and taking care of folder creations.

Using xdg-user-dirs as an application was basically doubling up on that.
Also, I don't need my directories localized - I just want them to point
to exactly where they should.
2020-07-29 08:13:31 +02:00
Marty Oehme 348a167390 Fix tmux vim navigator movement
Fixes tmux xdg-compliance (and, more importantly, Tmux Plugin Manager's)
by setting the environment variable TMUX_PLUGIN_MANAGER_PATH to follow
xdg specifications. Tmux, due to not being xdg-compliant, needs to be
aliased to start with the `-f` option pointing into the configuration
directory.

Fixes tmux vim nagigator's controls being overwritten by other control
schemes in tmux.
2020-02-06 20:49:15 +01:00
Marty Oehme 6380affb6f Add basic XDG compliant sh architecture
The only file left in $HOME is .zshenv, which sets up zsh to source everything from XDG_CONFIG_HOME/zsh.
Shell files are split into sh and zsh directories, for global assignments (which should be posix compliant, work on any posix shell) like environemnt variables, xdg vars, and global aliases. zsh contains zsh specific customization (prompt customization, plugin loading, zsh completions).

Zsh initialization will pull from sh directory first, loading the respective mirror to its startup file (`.zprofile` loads `sh/profile` and `profile.d/*`, `.zshenv` loads `sh/env` and `sh/env.d/*` and `zsh/env.d/*`, `.zshrc` loads `sh/alias`, `sh/alias.d/*` and `zsh/alias.d/*`)

Once all is done, it will have loaded both global variables, aliases and settings, and zsh-only specifications. Other stow modules, if they want to add shell functionality, can include their aliases and functions in one of the above directories to automatically be picked up by zsh.
2020-02-02 15:08:40 +00:00