system_files/ in the source tree and are copied to the root filesystem during the build process via 00-base-post.sh.
Directory structure
System files are organized following the Filesystem Hierarchy Standard (FHS):Configuration files
/etc/greetd/config.toml
Greetd display manager configuration:/etc/containers/policy.json
Container image signature verification policy for secure container operations./etc/containers/registries.d/zirconium-dev.yaml
Container registry configuration for Zirconium development images with signature verification./etc/xdg/xdg-terminals.list
Defines the default terminal emulator for XDG terminal launching:/etc/profile.d/
Shell profile scripts executed for all users:zmotd.sh
zmotd.sh
zirconium-font-settings.sh
zirconium-font-settings.sh
zirconium-qt-override.sh
zirconium-qt-override.sh
zfetch.sh
zfetch.sh
zfetch (system info display) on shell startup.fcitx5.sh
fcitx5.sh
Custom scripts
Located in/usr/bin/, these scripts provide Zirconium-specific functionality.
zmotd
Displays the Zirconium welcome banner with helpful commands:zjust toggle-user-motd or creating:
zjust
Wrapper for the Just command runner that uses Zirconium’s justfile:zfetch
Custom system information display using hyfetch:glorpfetch
Alternative fetch utility with custom ASCII art:rechunker-group-fix
Fixes group database issues when rebasing from rechunked images. See system_files/usr/lib/systemd/system/rechunker-group-fix.service:1 for details. Prevents black screen issues caused by corrupted/etc/group when migrating from images using nss-altfiles.
Systemd services
System services
Located in/usr/lib/systemd/system/:
flatpak-preinstall.service
flatpak-preinstall.service
- Type: oneshot
- Runs after: network-online.target
- Creates:
/var/lib/zirconium/preinstall-finishedmarker file - Retry: 3 attempts with 30-second delay
flatpak-add-flathub-repos.service
flatpak-add-flathub-repos.service
rechunker-group-fix.service
rechunker-group-fix.service
- Type: oneshot
- Runs before: systemd-user-sessions.service
- Actions:
- Recreates
/etc/gshadow - Runs
systemd-sysusers - Executes
rechunker-group-fix - Creates tmpfiles
- Recreates
User services
Located in/usr/lib/systemd/user/:
dms.service
dms.service
chezmoi-init.service
chezmoi-init.service
/usr/share/zirconium/zdots.chezmoi-update.timer & chezmoi-update.service
chezmoi-update.timer & chezmoi-update.service
fcitx5.service
fcitx5.service
foot-server.service & foot-server.socket
foot-server.service & foot-server.socket
gnome-keyring-daemon.service & gnome-keyring-daemon.socket
gnome-keyring-daemon.service & gnome-keyring-daemon.socket
gcr-ssh-agent.service & gcr-ssh-agent.socket
gcr-ssh-agent.service & gcr-ssh-agent.socket
iio-niri.service
iio-niri.service
udiskie.service
udiskie.service
Systemd presets
System presets
/usr/lib/systemd/system-preset/01-zirconium.preset:
/usr/lib/systemd/system-preset/91-resolved-default.preset enables DNS resolution.
User presets
/usr/lib/systemd/user-preset/01-zirconium.preset:
System user definitions
/usr/lib/sysusers.d/dms-greeter.conf
Creates thegreeter system user for the DMS greeter service.
Tmpfiles configuration
/usr/lib/tmpfiles.d/99-dms-greeter.conf
Configures temporary files and directories for the DMS greeter./usr/lib/tmpfiles.d/resolved-default.conf
Sets up systemd-resolved temporary files.PAM configuration
/usr/lib/pam.d/greetd-spawn
PAM configuration for the greetd spawner. Modified in01-theme-post.sh to fix GNOME Keyring authentication:
/usr/lib/pam.d/ to fix long login times with fingerprint authentication.
Zirconium assets
/usr/share/zirconium/
zdots/
zdots/
just/00-start.just
just/00-start.just
zdots-update- Update dotfileszdots-reset FILE- Reset specific filezdots-override-all- Reset all configurationtoggle-user-motd- Enable/disable MOTDtoggle-autorotation- Enable/disable screen rotationtoggle-automatic-dotfiles- Enable/disable chezmoi auto-updatetoggle-fcitx5- Enable/disable input methodpreinstalled-flatpaks- Reinstall Flatpak appsreset-niri- Reset Niri configurationupdate-greeter- Sync greeter with user configset-accent-color- Set GNOME accent color
/usr/share/ublue-os/just/update.just/usr/share/ublue-os/just/shared.just/usr/share/ublue-os/just/default.just
shell/pure.bash
shell/pure.bash
/etc/bashrc.zirconium.txt & glorp.txt
zirconium.txt & glorp.txt
zfetch and glorpfetch.fastfetch.jsonc
fastfetch.jsonc
skel/Pictures/Wallpapers/
skel/Pictures/Wallpapers/
pixmaps/logo-z.svg
pixmaps/logo-z.svg
/usr/share/greetd/greetd-spawn.pam_env.conf
Environment variables for the greeter spawn process./usr/share/pki/containers/
Container registry signing keys:jackrabbit.pubhawaii.pub
/usr/share/flatpak/preinstall.d/zirconium.preinstall
List of Flatpak applications to pre-install on first boot./usr/share/fish/vendor_conf.d/zmotd.fish
Fish shell configuration to display MOTD./usr/share/plymouth/themes/spinner/watermark.png
Custom Plymouth boot splash watermark installed from/ctx/assets/logos/watermark.png.
Shell completions
Generated in01-theme-post.sh for the zjust command:
- Bash:
/usr/share/bash-completion/completions/zjust - Zsh:
/usr/share/zsh/site-functions/_zjust - Fish:
/usr/share/fish/vendor_completions.d/zjust.fish
just --completions and modified to work with the zjust wrapper.