User-level files (~/.config, ~/.local/share, ~/.agents, etc.) shouldn't
be written by install.sh — it runs as root or with system-level sudo,
and in offline (ISO chroot) mode the user doesn't exist yet. Moved into
a per-user idempotent command, called from omarchy-first-run.
Moved into bin/omarchy-setup-user (deleted from install/config/):
- omarchy-ai-skill.sh AI skill symlinks
- omarchy-toggles.sh hypr toggle flags
- nautilus-python.sh nautilus extensions
- branding.sh ~/.config/omarchy/branding/{about,screensaver}.txt
- user-dirs.sh xdg-user-dirs-update + gtk bookmarks
- detect-keyboard-layout.sh layout/variant sed into ~/.config/hypr/input.lua
- toggles.sh ~/.local/state/omarchy/toggles mkdir
- mimetypes.sh omarchy-refresh-applications + xdg-mime/xdg-settings
Kept in install/config/ (rely on OMARCHY_USER_NAME / OMARCHY_USER_EMAIL
that only exist during install):
- git.sh git config --global user.{name,email}
- xcompose.sh ~/.XCompose with name/email substituted
omarchy-setup-user:
- Refuses to run as root
- Idempotent via ~/.local/state/omarchy/setup-user.done marker
- --force escape hatch for re-running after dev-link or upstream changes
- Defaults OMARCHY_PATH to /usr/share/omarchy so it works outside install
bin/omarchy-first-run now invokes omarchy-setup-user unconditionally
(it self-gates), so first user login picks up the user setup.
install/config/all.sh: dropped the eight deleted entries.
All three packages (omarchy, omarchy-settings, omarchy-installer) still
build clean.
30 lines
1.1 KiB
Bash
Executable File
30 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# omarchy:summary=Finish the installation of Omarchy with items that can only be done after logging in.
|
|
# omarchy:requires-sudo=true
|
|
|
|
set -e
|
|
|
|
FIRST_RUN_MODE=~/.local/state/omarchy/first-run.mode
|
|
|
|
if [[ -f $FIRST_RUN_MODE ]]; then
|
|
rm -f "$FIRST_RUN_MODE"
|
|
|
|
bash "$OMARCHY_PATH/install/first-run/recover-internal-monitor.sh"
|
|
bash "$OMARCHY_PATH/install/first-run/cleanup-reboot-sudoers.sh"
|
|
bash "$OMARCHY_PATH/install/first-run/firewall.sh"
|
|
bash "$OMARCHY_PATH/install/first-run/dns-resolver.sh"
|
|
bash "$OMARCHY_PATH/install/first-run/gnome-theme.sh"
|
|
bash "$OMARCHY_PATH/install/first-run/gdk-scale.sh"
|
|
bash "$OMARCHY_PATH/install/first-run/gtk-primary-paste.sh"
|
|
omarchy-hook-install post-update "$OMARCHY_PATH/install/first-run/install-voxtype.hook"
|
|
sudo /bin/rm -f /etc/sudoers.d/first-run
|
|
|
|
bash "$OMARCHY_PATH/install/first-run/welcome.sh"
|
|
bash "$OMARCHY_PATH/install/first-run/wifi.sh"
|
|
fi
|
|
|
|
# omarchy-setup-user is idempotent (gated on its own marker), so this is
|
|
# safe to call on every invocation — it'll no-op once user setup is done.
|
|
omarchy-setup-user || true
|