Login Splash Screen¶
The bodhi-splash script displays a login splash screen with system information, admin announcements, and a maintenance countdown banner.
What users see¶
┌──────────────────────────────────────────────────────────────────────┐
│ UPCOMING MAINTENANCE: Thursday, March 26, 2026 │
│ Scheduled maintenance in 3 days. Plan accordingly. │
├──────────────────────────────────────────────────────────────────────┤
│ BODHI HPC Cluster amc-bodhi │
├──────────────────────────────────────────────────────────────────────┤
│ OS: Rocky Linux 9.6 │
│ Kernel: 5.14.0-570.17.1.el9_6.x86_64 │
│ Uptime: 102 days, 18:26 │
│ Load: 1.58, 1.81, 1.63 │
├──────────────────────────────────────────────────────────────────────┤
│ >>> Multi-day GPU runs available │
│ Use --qos=gpu_long on the gpu partition (3 days). │
├──────────────────────────────────────────────────────────────────────┤
│ Help: David Farrell │
│ Docs: https://rnabioco.github.io/bodhi-docs/ │
└──────────────────────────────────────────────────────────────────────┘
Maintenance banner¶
Cluster maintenance is scheduled for the last Thursday of every month. The banner appears automatically:
| Timeframe | Color | Example text |
|---|---|---|
| 2-5 days before | Yellow background | "UPCOMING MAINTENANCE: Thursday, March 26, 2026" |
| 1 day before (Wednesday) | Red background | "MAINTENANCE TOMORROW: Thursday, March 26, 2026" |
| Day of maintenance | Red background | "MAINTENANCE TODAY: Thursday, March 26, 2026" |
| More than 5 days out | No banner | — |
The banner date comes from the soonest upcoming SLURM MAINT reservation when
one is scheduled (see admin guide), so it
always reflects the real maintenance window. If no reservation is queryable, the
script falls back to calculating the next last-Thursday automatically. Either
way, no per-login configuration is needed.
Admin messages¶
Admins can post announcements that appear in the splash screen.
Using the drop-in directory (recommended)¶
Create files in /etc/bodhi/motd.d/:
# Create the directory (first time only)
sudo mkdir -p /etc/bodhi/motd.d
# Add a message
sudo tee /etc/bodhi/motd.d/01-gpu-partition.txt << 'EOF'
Multi-day GPU runs available
Use --qos=gpu_long on the gpu partition for up to 3 days.
Request access via ServiceNow.
EOF
# Remove a message when no longer relevant
sudo rm /etc/bodhi/motd.d/01-gpu-partition.txt
- Files are displayed in alphabetical order — use numeric prefixes (
01-,02-) to control ordering - The first line of each file is shown as a heading; subsequent lines are indented
- Files starting with
., ending with.bakor~, and empty files are skipped - Output is capped at 20 lines per file and 50 lines total
Using a single file (alternative)¶
If the directory doesn't exist, the script falls back to /etc/bodhi/motd:
sudo tee /etc/bodhi/motd << 'EOF'
Storage maintenance completed
All /beevol mounts have been migrated to the new storage array.
EOF
Suppressing the splash¶
Users can suppress the splash in three ways:
| Method | Scope |
|---|---|
export BODHI_NOSPLASH=1 in ~/.bashrc |
Per-user, permanent |
BODHI_NOSPLASH=1 ssh bodhi |
Single session |
touch ~/.hushlogin |
Per-user, standard Unix convention |
The splash also skips non-interactive shells automatically (e.g., ssh bodhi command).
Installation¶
System-wide (recommended)¶
sudo cp scripts/bodhi-splash /etc/profile.d/bodhi-splash.sh
sudo chmod +x /etc/profile.d/bodhi-splash.sh
sudo mkdir -p /etc/bodhi/motd.d
Per-user¶
Configuration¶
All settings are controlled via environment variables with sensible defaults:
| Variable | Default | Description |
|---|---|---|
BODHI_NOSPLASH |
(unset) | Set to any value to suppress the splash |
BODHI_SPLASH_THEME |
(auto-detect) | Force light or dark color scheme (auto-detects via OSC 11 query, falling back to COLORFGBG) |
BODHI_MOTD_DIR |
/etc/bodhi/motd.d |
Directory for admin message files |
BODHI_MOTD_FILE |
/etc/bodhi/motd |
Single admin message file (fallback) |
BODHI_SPLASH_HOSTS |
(unset — show everywhere) | Hostname glob to restrict to login nodes |
BODHI_HELP_CONTACT |
David Farrell |
Help contact name |
BODHI_HELP_EMAIL |
(unset) | Help contact email |
BODHI_DOCS_URL |
https://rnabioco.github.io/bodhi-docs/ |
Documentation URL |
To restrict the splash to login nodes only:
Testing¶
Use _BODHI_DEBUG_DATE to simulate different dates:
# Test yellow banner (3 days before March 26 maintenance)
_BODHI_DEBUG_DATE=$(date -d "2026-03-23" +%s) ./scripts/bodhi-splash
# Test red banner (1 day before)
_BODHI_DEBUG_DATE=$(date -d "2026-03-25" +%s) ./scripts/bodhi-splash
# Test red banner (day of)
_BODHI_DEBUG_DATE=$(date -d "2026-03-26" +%s) ./scripts/bodhi-splash
# Test no banner (10 days out)
_BODHI_DEBUG_DATE=$(date -d "2026-03-16" +%s) ./scripts/bodhi-splash
# Test with admin messages
mkdir -p /tmp/test-motd.d
echo -e "Test announcement\nThis is a test message." > /tmp/test-motd.d/01-test.txt
BODHI_MOTD_DIR=/tmp/test-motd.d ./scripts/bodhi-splash