install.fairie/docs/scripts/after/run_onchange_after_05-log-config.sh.tmpl.md
2023-08-08 03:06:49 -04:00

53 lines
2 KiB
Markdown

---
title: User Log Folders
description: Creates an empty directory for each user in `/var/log/user`
sidebar_label: 05 User Log Folders
slug: /scripts/after/run_onchange_after_05-log-config.sh.tmpl
githubLocation: https://github.com/megabyte-labs/install.doctor/blob/master/home/.chezmoiscripts/universal/run_onchange_after_05-log-config.sh.tmpl
scriptLocation: https://github.com/megabyte-labs/install.doctor/raw/master/home/.chezmoiscripts/universal/run_onchange_after_05-log-config.sh.tmpl
repoLocation: home/.chezmoiscripts/universal/run_onchange_after_05-log-config.sh.tmpl
---
# User Log Folders
Creates an empty directory for each user in `/var/log/user`
## Overview
This script creates an empty directory with each user's name in `/var/log/user`. It initializes the folder in hopes
that we can eventually store all user logs in a single directory alongside the system logs folder.
## Source Code
```
{{- if (ne .host.distro.family "windows") -}}
#!/usr/bin/env bash
# @file User Log Folders
# @brief Creates an empty directory for each user in `/var/log/user`
# @description
# This script creates an empty directory with each user's name in `/var/log/user`. It initializes the folder in hopes
# that we can eventually store all user logs in a single directory alongside the system logs folder.
{{ $homeDirs := (output "find" .host.homeParentFolder "-mindepth" "1" "-maxdepth" "1" "-type" "d") -}}
{{- range $homeDir := splitList "\n" $homeDirs -}}
{{- if ne $homeDir "" -}}
# home dir: {{ $homeDir }}
{{ end -}}
{{- end }}
{{ includeTemplate "universal/profile" }}
{{ includeTemplate "universal/logg" }}
find '{{ .host.homeParentFolder }}' -mindepth 1 -maxdepth 1 -type d | while read HOME_DIR; do
USER_FOLDER="$(echo "$HOME_DIR" | sed 's/.*\/\([^\/]*\)$/\1/')"
if [ -d "$HOME_DIR/.local" ]; then
if [ ! -d "/var/log/user/$USER_FOLDER" ]; then
logg info 'Creating `/var/log/user/'"$USER_FOLDER"'`'
sudo mkdir -p "/var/log/user/$USER_FOLDER"
fi
fi
done
{{ end -}}
```