Commit Graph

15 Commits

Author SHA1 Message Date
Marty Oehme 88ab8c10a6
sh: Simple pseudo-fix for missing xdg symlink
HACK - it does not reconnect the symlink correctly if its target indeed
returns to the system.
2023-03-03 12:55:08 +01:00
Marty Oehme 4f75888dfe
sh: Remove docker xdg configuration
Podman rebels if it finds an explicitly set DOCKER_CONFIG file pointing
to a non-existent (due to using podman) configuration file. Since we are
not using docker anyway, this removes the env var.
2023-01-07 14:56:09 +01:00
Marty Oehme c6f243c2c1
sh: Fix missing python configuration
Python complains if you point it to a different configuration file (as
we do with the changes to XDG directories) but it doesn't exist. So, we
simply check for its existence and create it if necessary when setting
up an environment.
2022-12-08 21:34:40 +01:00
Marty Oehme 03ec445076
sh: Fix XDG directory use for an array of apps 2022-06-28 11:30:46 +02:00
Marty Oehme e25ce19719
sh: Add new XDG_STATE_HOME env var from spec
The XDG BASE DIRECTORY spec now includes a provision for 'state' stuff,
that does not quite fit into either the permanent nature of
XDG_DATA_HOME, nor into the impermanence and deletable nature of
XDG_CACHE_HOME - i.e. longer running logs or history files. Things you
don't necessarily need backed up at all times, but things that should
also not change every time the tmpfs is flushed, should you run your
.cache directory under one.

More here: https://teddit.net/r/linux/comments/ny34vs/new_xdg_state_home_in_xdg_base_directory_spec/
and here: https://wiki.debian.org/XDGBaseDirectorySpecification#state
2022-06-28 10:21:14 +02:00
Marty Oehme e617d4ae1e
xdg: Reorder xdg home directories slightly
Moved pictures and videos back to home directory since they are, first,
not part of a 'media' collection and, second, on a different share to
my personal media assortment.
2021-11-16 12:09:46 +01:00
Marty Oehme c9c0490cbf
xdg: Move xdg media directories
Moved all directories with media contents (pictures, videos, music) to a
single coherent media directory.
2021-04-18 13:04:59 +02:00
Marty Oehme 0d978f7673
sh: Update xdg directory auto creation
Improved the automatic directory creation somewhat:
It now looks for either a file existing there (could be a directory,
could be an actual file), or a symbolic link pointing somewhere else.

Only if none of those things are at the xdg location will it try to
create a new directory there.

Additionally, it will set the correct permissions for the whole folder
chain being created, NOT just for the last folder in the chain.

vifm: Switch to new xdg directory structure
2021-04-18 13:04:01 +02:00
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