ccd8e800df
* hacking at dns * hack * hax * start dics! * hacking * feat: docs! --------- Co-authored-by: Truxnell <9149206+truxnell@users.noreply.github.com>
43 lines
1.1 KiB
Markdown
43 lines
1.1 KiB
Markdown
# Message of the day
|
|
|
|
Why not include a nice message of the day for each server I log into?
|
|
|
|
The below gives some insight into what the servers running, status of zpools, usage, etc.
|
|
While not show below - thankfully - If a zpool error is found the status gives a full `zpool status -x` debrief which is particulary eye-catching upon login.
|
|
|
|
![Alt text](motd.png)
|
|
|
|
Code TLDR
|
|
|
|
:simple-github:[/nixos/modules/nixos/system/motd](https://github.com/truxnell/nix-config/blob/462144babe7e7b2a49a985afe87c4b2f1fa8c3f9/nixos/modules/nixos/system/motd/default.nix])
|
|
|
|
Write a shell script using nix with a bash motd
|
|
|
|
```nix
|
|
let
|
|
motd = pkgs.writeShellScriptBin "motd"
|
|
''
|
|
#! /usr/bin/env bash
|
|
source /etc/os-release
|
|
service_status=$(systemctl list-units | grep podman-)
|
|
|
|
<- SNIP ->
|
|
printf "$BOLDService status$ENDCOLOR\n"
|
|
'';
|
|
in
|
|
```
|
|
|
|
This gets us a shells script we can then directly call into systemPackages - and after that its just a short hop to make this part of the shell init.
|
|
|
|
!!! note
|
|
|
|
Replace with your preferred shell!
|
|
|
|
```nix
|
|
environment.systemPackages = [
|
|
motd
|
|
];
|
|
programs.fish.interactiveShellInit = ''
|
|
motd
|
|
'';
|
|
```
|