vitorpy's Dotfiles

Configure dark theme for Flatpak apps via XDG portals

- Add xdg-desktop-portal-hyprland and xdg-desktop-portal-gtk to packages
- Configure portal to use both Hyprland and GTK backends
- Set GTK dark theme preferences via settings.ini files
- Add XDG environment variables to Hyprland config
- Update CLAUDE.md: add sudo delegation rule, fix distro to Arch Linux
- Include Zenburn-themed ly display manager config

Fixes Flatpak apps (like Tutanota) respecting system dark theme.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

+172 -7
+8 -7
private_dot_config/CLAUDE.md
··· 4 4 I am running a Linux system and need help with configuration, setup, and administration tasks. Please assist me following Linux best practices and respecting system defaults. 5 5 6 6 ## Current System Information 7 - - **Distribution**: Fedora 7 + - **Distribution**: Arch Linux 8 8 - **Window Manager**: Hyprland 9 9 - **Home Directory**: /home/vitorpy 10 10 - **Working Directory**: Check with `pwd` before making assumptions ··· 12 12 ## Core Principles 13 13 14 14 ### CRITICAL RULES: 15 - 1. **Push file changes via chezmoi after modifications** 16 - 2. **NEVER modify system files without explicit permission** 17 - 3. **Respect the separation between system defaults and user customization** 18 - 4. **Check for existing configurations before creating new ones** 19 - 5. **Follow the principle of least privilege** - Use sudo only when necessary 20 - 6. **Document all changes made to the system** 15 + 1. **NEVER execute sudo commands directly** - Always provide the command and ask the user to run it 16 + 2. **Push file changes via chezmoi after modifications** 17 + 3. **NEVER modify system files without explicit permission** 18 + 4. **Respect the separation between system defaults and user customization** 19 + 5. **Check for existing configurations before creating new ones** 20 + 6. **Follow the principle of least privilege** - Use sudo only when necessary 21 + 7. **Document all changes made to the system** 21 22 22 23 ### Configuration Hierarchy (DO NOT VIOLATE): 23 24 1. User-specific configs in `~/.config/` (preferred)
+7
private_dot_config/gtk-4.0/settings.ini
··· 1 + [Settings] 2 + gtk-application-prefer-dark-theme=1 3 + gtk-theme-name=Yaru-dark 4 + gtk-icon-theme-name=Yaru 5 + gtk-font-name=Cantarell 11 6 + gtk-cursor-theme-name=Adwaita 7 + gtk-cursor-theme-size=24
+5
private_dot_config/hypr/hyprland.conf
··· 64 64 env = XCURSOR_SIZE,24 65 65 env = HYPRCURSOR_SIZE,24 66 66 67 + # XDG Desktop Portal 68 + env = XDG_CURRENT_DESKTOP,Hyprland 69 + env = XDG_SESSION_TYPE,wayland 70 + env = XDG_SESSION_DESKTOP,Hyprland 71 + 67 72 # Firefox/Mozilla 68 73 env = MOZ_ENABLE_WAYLAND,0 69 74
+2
private_dot_config/private_arch/packages.txt
··· 22 22 hypridle | pacman 23 23 hyprlock | pacman 24 24 hyprland-plugin-hyprbars | aur 25 + xdg-desktop-portal-hyprland | pacman 26 + xdg-desktop-portal-gtk | pacman 25 27 wofi | pacman 26 28 grim | pacman 27 29 slurp | pacman
+16
private_dot_config/private_gtk-3.0/settings.ini
··· 1 + [Settings] 2 + gtk-application-prefer-dark-theme=1 3 + gtk-theme-name=Yaru-dark 4 + gtk-icon-theme-name=Yaru 5 + gtk-font-name=Cantarell 11 6 + gtk-cursor-theme-name=Adwaita 7 + gtk-cursor-theme-size=24 8 + gtk-toolbar-style=GTK_TOOLBAR_BOTH 9 + gtk-toolbar-icon-size=GTK_ICON_SIZE_LARGE_TOOLBAR 10 + gtk-button-images=1 11 + gtk-menu-images=1 12 + gtk-enable-event-sounds=1 13 + gtk-enable-input-feedback-sounds=1 14 + gtk-xft-antialias=1 15 + gtk-xft-hinting=1 16 + gtk-xft-hintstyle=hintfull
+129
private_dot_config/private_ly/config.ini
··· 1 + # Ly configuration - Zenburn theme 2 + # Colors based on Zenburn color scheme 3 + 4 + # Allow empty password 5 + allow_empty_password = false 6 + 7 + # No animation for clean look 8 + animation = none 9 + animation_timeout_sec = 0 10 + 11 + # Password masking 12 + asterisk = * 13 + 14 + # Failed auth threshold 15 + auth_fails = 10 16 + 17 + # Zenburn background color (dark gray-brown: #3f3f3f) 18 + bg = 0x003f3f3f 19 + 20 + # Clock disabled 21 + bigclock = none 22 + 23 + # Transparent box background for cleaner look 24 + blank_box = false 25 + 26 + # Zenburn accent color for borders (light beige: #f0dfaf) 27 + border_fg = 0x00f0dfaf 28 + 29 + # Hostname as title 30 + box_title = zygalski 31 + 32 + # Brightness controls 33 + brightness_down_cmd = /usr/bin/brightnessctl -q s 10%- 34 + brightness_down_key = F5 35 + brightness_up_cmd = /usr/bin/brightnessctl -q s +10% 36 + brightness_up_key = F6 37 + 38 + # Clear password on failure 39 + clear_password = true 40 + 41 + # Show clock in Zenburn style 42 + clock = %a %b %d, %H:%M 43 + 44 + # Console dev 45 + console_dev = /dev/console 46 + 47 + # Default to login input 48 + default_input = login 49 + 50 + # Zenburn error colors (red: #cc9393) 51 + error_bg = 0x003f3f3f 52 + error_fg = 0x01cc9393 53 + 54 + # Zenburn foreground color (cream: #dcdccc) 55 + fg = 0x00dcdccc 56 + 57 + # Show borders 58 + hide_borders = false 59 + 60 + # Show key hints 61 + hide_key_hints = false 62 + 63 + # Show hostname in info line 64 + initial_info_text = null 65 + 66 + # Input length 67 + input_len = 34 68 + 69 + # Language 70 + lang = en 71 + 72 + # Load saved session 73 + load = true 74 + 75 + # Login/logout commands 76 + login_cmd = null 77 + logout_cmd = null 78 + 79 + # Box margins 80 + margin_box_h = 2 81 + margin_box_v = 1 82 + 83 + # Refresh rate 84 + min_refresh_delta = 5 85 + 86 + # Numlock 87 + numlock = false 88 + 89 + # Path 90 + path = /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 91 + 92 + # Power management 93 + restart_cmd = /sbin/shutdown -r now 94 + restart_key = F2 95 + shutdown_cmd = /sbin/shutdown -a now 96 + shutdown_key = F1 97 + sleep_cmd = null 98 + sleep_key = F3 99 + 100 + # Save session 101 + save = true 102 + 103 + # Service name 104 + service_name = ly 105 + 106 + # Session log 107 + session_log = ly-session.log 108 + 109 + # Setup script 110 + setup_cmd = /etc/ly/setup.sh 111 + 112 + # Center session text 113 + text_in_center = false 114 + 115 + # TTY 116 + tty = 2 117 + 118 + # Vi mode disabled 119 + vi_default_mode = normal 120 + vi_mode = false 121 + 122 + # Session paths 123 + waylandsessions = /usr/share/wayland-sessions 124 + xsessions = /usr/share/xsessions 125 + xinitrc = ~/.xinitrc 126 + 127 + # X server 128 + x_cmd = /usr/bin/X 129 + xauth_cmd = /usr/bin/xauth
+5
private_dot_config/xdg-desktop-portal/portals.conf
··· 1 + [preferred] 2 + # Use both Hyprland and GTK portals 3 + # Hyprland handles: screenshots, screencasts, shortcuts 4 + # GTK handles: settings, file chooser, etc. 5 + default=hyprland;gtk