vitorpy's Dotfiles

Configure Terminus font for ly display manager

- Add terminus-font package to packages.txt
- Create managed ly configuration in ~/.config/ly/
- config.ini: Zenburn-themed ly configuration
- setup.sh: Custom setup script with Terminus font (ter-v20b)
- Add install-ly-config.sh script to copy configs to /etc/ly/
- Update bootstrap script to:
- Install ly configuration via install-ly-config.sh
- Disable getty@tty2.service to prevent TTY noise
- Update hyprland.conf with XDG environment variables

This ensures ly login screen uses clean Terminus font instead of
default console font, maintaining consistent retro aesthetic.

+143 -5
+5 -5
private_dot_config/hypr/hyprland.conf
··· 186 186 } 187 187 } 188 188 189 - windowrule = plugin:hyprbars:nobar, class:google-chrome 190 - windowrule = plugin:hyprbars:nobar, class:org.mozilla.firefox 189 + windowrule = plugin:hyprbars:nobar, class:chromium 190 + windowrule = plugin:hyprbars:nobar, class:firefox 191 191 windowrule = plugin:hyprbars:nobar, class:org.gnome.* 192 - windowrule = plugin:hyprbars:nobar, class:geary 193 - windowrule = plugin:hyprbars:nobar, class:cursor# 194 192 windowrule = plugin:hyprbars:nobar, class:org.telegram.desktop.* 195 - windowrule = plugin:hyprbars:nobar, class:VSCodium 193 + windowrule = plugin:hyprbars:nobar, class:codium 194 + windowrule = plugin:hyprbars:nobar, class:Slack 195 + windowrule = plugin:hyprbars:nobar, class:com.mitchellh.ghostty 196 196 197 197 ############# 198 198 ### INPUT ###
+5
private_dot_config/private_arch/executable_bootstrap-fresh-install.sh
··· 47 47 echo "==> Installing all packages..." 48 48 ~/.config/arch/install-packages.sh 49 49 50 + # Install ly configuration 51 + echo "==> Installing ly configuration..." 52 + ~/.config/arch/install-ly-config.sh 53 + 50 54 # Enable ly display manager 51 55 echo "==> Enabling ly display manager..." 52 56 sudo systemctl enable ly.service 57 + sudo systemctl disable getty@tty2.service 53 58 54 59 echo "" 55 60 echo "==> Bootstrap complete!"
+22
private_dot_config/private_arch/executable_install-ly-config.sh
··· 1 + #!/bin/bash 2 + # Install ly display manager configuration from user config to system 3 + # This script copies the managed ly configs from ~/.config/ly to /etc/ly 4 + 5 + set -e 6 + 7 + echo "==> Installing ly configuration..." 8 + 9 + # Copy config.ini 10 + if [ -f "$HOME/.config/ly/config.ini" ]; then 11 + sudo cp "$HOME/.config/ly/config.ini" /etc/ly/config.ini 12 + echo " - Installed config.ini" 13 + fi 14 + 15 + # Copy setup.sh 16 + if [ -f "$HOME/.config/ly/setup.sh" ]; then 17 + sudo cp "$HOME/.config/ly/setup.sh" /etc/ly/setup.sh 18 + sudo chmod +x /etc/ly/setup.sh 19 + echo " - Installed setup.sh" 20 + fi 21 + 22 + echo "==> ly configuration installed successfully"
+1
private_dot_config/private_arch/packages.txt
··· 52 52 # Theming 53 53 yaru-gtk-theme | aur 54 54 yaru-icon-theme | aur 55 + terminus-font | pacman 55 56 56 57 # Utilities 57 58 imagemagick | pacman
+110
private_dot_config/private_ly/executable_setup.sh
··· 1 + #!/bin/sh 2 + # Shell environment setup after login 3 + # Copyright (C) 2015-2016 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com> 4 + 5 + # This file is extracted from kde-workspace (kdm/kfrontend/genkdmconf.c) 6 + # Copyright (C) 2001-2005 Oswald Buddenhagen <ossi@kde.org> 7 + 8 + # Copyright (C) 2024 The Fairy Glade 9 + # This work is free. You can redistribute it and/or modify it under the 10 + # terms of the Do What The Fuck You Want To Public License, Version 2, 11 + # as published by Sam Hocevar. See the LICENSE file for more details. 12 + 13 + # Set Terminus font for TTY (custom addition) 14 + setfont ter-v20b 2>/dev/null || true 15 + 16 + # Note that the respective logout scripts are not sourced. 17 + case $SHELL in 18 + */bash) 19 + [ -z "$BASH" ] && exec $SHELL "$0" "$@" 20 + set +o posix 21 + [ -f "/etc"/profile ] && . "/etc"/profile 22 + if [ -f "$HOME"/.bash_profile ]; then 23 + . "$HOME"/.bash_profile 24 + elif [ -f "$HOME"/.bash_login ]; then 25 + . "$HOME"/.bash_login 26 + elif [ -f "$HOME"/.profile ]; then 27 + . "$HOME"/.profile 28 + fi 29 + ;; 30 + */zsh) 31 + [ -z "$ZSH_NAME" ] && exec $SHELL "$0" "$@" 32 + [ -d "/etc"/zsh ] && zdir="/etc"/zsh || zdir="/etc" 33 + zhome=${ZDOTDIR:-"$HOME"} 34 + # zshenv is always sourced automatically. 35 + [ -f "$zdir"/zprofile ] && . "$zdir"/zprofile 36 + [ -f "$zhome"/.zprofile ] && . "$zhome"/.zprofile 37 + [ -f "$zdir"/zlogin ] && . "$zdir"/zlogin 38 + [ -f "$zhome"/.zlogin ] && . "$zhome"/.zlogin 39 + emulate -R sh 40 + ;; 41 + */csh|*/tcsh) 42 + # [t]cshrc is always sourced automatically. 43 + # Note that sourcing csh.login after .cshrc is non-standard. 44 + sess_tmp=$(mktemp /tmp/sess-env-XXXXXX) 45 + $SHELL -c "if (-f /etc/csh.login) source /etc/csh.login; if (-f ~/.login) source ~/.login; /bin/sh -c 'export -p' >! $sess_tmp" 46 + . "$sess_tmp" 47 + rm -f "$sess_tmp" 48 + ;; 49 + */fish) 50 + [ -f "/etc"/profile ] && . "/etc"/profile 51 + [ -f "$HOME"/.profile ] && . "$HOME"/.profile 52 + sess_tmp=$(mktemp /tmp/sess-env-XXXXXX) 53 + $SHELL --login -c "/bin/sh -c 'export -p' > $sess_tmp" 54 + . "$sess_tmp" 55 + rm -f "$sess_tmp" 56 + ;; 57 + *) # Plain sh, ksh, and anything we do not know. 58 + [ -f "/etc"/profile ] && . "/etc"/profile 59 + [ -f "$HOME"/.profile ] && . "$HOME"/.profile 60 + ;; 61 + esac 62 + 63 + if [ "$XDG_SESSION_TYPE" = "x11" ]; then 64 + [ -f "/etc"/xprofile ] && . "/etc"/xprofile 65 + [ -f "$HOME"/.xprofile ] && . "$HOME"/.xprofile 66 + 67 + # run all system xinitrc shell scripts. 68 + if [ -d "/etc"/X11/xinit/xinitrc.d ]; then 69 + for i in "/etc"/X11/xinit/xinitrc.d/* ; do 70 + if [ -x "$i" ]; then 71 + . "$i" 72 + fi 73 + done 74 + fi 75 + 76 + # Load Xsession scripts 77 + # OPTIONFILE, USERXSESSION, USERXSESSIONRC and ALTUSERXSESSION are required 78 + # by the scripts to work 79 + xsessionddir="/etc"/X11/Xsession.d 80 + export OPTIONFILE="/etc"/X11/Xsession.options 81 + export USERXSESSION="$HOME"/.xsession 82 + export USERXSESSIONRC="$HOME"/.xsessionrc 83 + export ALTUSERXSESSION="$HOME"/.Xsession 84 + 85 + if [ -d "$xsessionddir" ]; then 86 + for i in $(ls "$xsessionddir"); do 87 + script="$xsessionddir/$i" 88 + echo "Loading X session script $script" 89 + if [ -r "$script" ] && [ -f "$script" ] && expr "$i" : '^[[:alnum:]_-]\+$' > /dev/null; then 90 + . "$script" 91 + fi 92 + done 93 + fi 94 + 95 + if [ -f "$USERXSESSION" ]; then 96 + . "$USERXSESSION" 97 + fi 98 + 99 + if [ -d "/etc"/X11/Xresources ]; then 100 + for i in "/etc"/X11/Xresources/*; do 101 + [ -f "$i" ] && xrdb -merge "$i" 102 + done 103 + elif [ -f "/etc"/X11/Xresources ]; then 104 + xrdb -merge "/etc"/X11/Xresources 105 + fi 106 + [ -f "$HOME"/.Xresources ] && xrdb -merge "$HOME"/.Xresources 107 + [ -f "$XDG_CONFIG_HOME"/X11/Xresources ] && xrdb -merge "$XDG_CONFIG_HOME"/X11/Xresources 108 + fi 109 + 110 + exec "$@"