refactor: major architectural restructure for theme-centric organization
Theme System: - Move all theme app configs to apps/ subdirectory (20 themes) - Add theme-loader.nix for dynamic theme config deployment - Simplify stylix.nix to focus on base theming only Override System: - Add overrides.nix for file-based config overrides - Add behavior-configs.nix for non-visual configuration - Split hypr/nomarchy.conf into behavior vs visual sections Module Improvements: - Add lib.mkDefault to all customizable settings - Add modules/lib/ with shared utilities and state schema - Update all home and system modules for downstream overridability Installer: - New minimal TTY installer (installer/install.sh) - Golden path: BTRFS + LUKS2 (disko-golden.nix) - New installer-iso.nix for TTY-only installation - Keep graphical installer as installerIsoGraphical option Cleanup: - Remove obsolete install.sh, disko-ext4.nix, install-nomarchy.sh - Update live-iso.nix references - Add .claude/ to .gitignore for local IDE settings Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
86
assets/themes/summer-night/apps/btop.theme
Normal file
86
assets/themes/summer-night/apps/btop.theme
Normal file
@@ -0,0 +1,86 @@
|
||||
# Main background, empty for terminal default, need to be empty if you want transparent background
|
||||
theme[main_bg]="#2d353b"
|
||||
|
||||
# Main text color
|
||||
theme[main_fg]="#d3c6aa"
|
||||
|
||||
# Title color for boxes
|
||||
theme[title]="#d3c6aa"
|
||||
|
||||
# Highlight color for keyboard shortcuts
|
||||
theme[hi_fg]="#e68183"
|
||||
|
||||
# Background color of selected items
|
||||
theme[selected_bg]="#3c474d"
|
||||
|
||||
# Foreground color of selected items
|
||||
theme[selected_fg]="#d9bb80"
|
||||
|
||||
# Color of inactive/disabled text
|
||||
theme[inactive_fg]="#2d353b"
|
||||
|
||||
# Color of text appearing on top of graphs, i.e uptime and current network graph scaling
|
||||
theme[graph_text]="#d3c6aa"
|
||||
|
||||
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
|
||||
theme[proc_misc]="#a7c080"
|
||||
|
||||
# Cpu box outline color
|
||||
theme[cpu_box]="#3c474d"
|
||||
|
||||
# Memory/disks box outline color
|
||||
theme[mem_box]="#3c474d"
|
||||
|
||||
# Net up/down box outline color
|
||||
theme[net_box]="#3c474d"
|
||||
|
||||
# Processes box outline color
|
||||
theme[proc_box]="#3c474d"
|
||||
|
||||
# Box divider line and small boxes line color
|
||||
theme[div_line]="#3c474d"
|
||||
|
||||
# Temperature graph colors
|
||||
theme[temp_start]="#a7c080"
|
||||
theme[temp_mid]="#d9bb80"
|
||||
theme[temp_end]="#e68183"
|
||||
|
||||
# CPU graph colors
|
||||
theme[cpu_start]="#a7c080"
|
||||
theme[cpu_mid]="#d9bb80"
|
||||
theme[cpu_end]="#e68183"
|
||||
|
||||
# Mem/Disk free meter
|
||||
theme[free_start]="#e68183"
|
||||
theme[free_mid]="#d9bb80"
|
||||
theme[free_end]="#a7c080"
|
||||
|
||||
# Mem/Disk cached meter
|
||||
theme[cached_start]="#83b6af"
|
||||
theme[cached_mid]="#87c095"
|
||||
theme[cached_end]="#a7c080"
|
||||
|
||||
# Mem/Disk available meter
|
||||
theme[available_start]="#e68183"
|
||||
theme[available_mid]="#d9bb80"
|
||||
theme[available_end]="#a7c080"
|
||||
|
||||
# Mem/Disk used meter
|
||||
theme[used_start]="#a7c080"
|
||||
theme[used_mid]="#d9bb80"
|
||||
theme[used_end]="#e68183"
|
||||
|
||||
# Download graph colors
|
||||
theme[download_start]="#a7c080"
|
||||
theme[download_mid]="#87c095"
|
||||
theme[download_end]="#83b6af"
|
||||
|
||||
# Upload graph colors
|
||||
theme[upload_start]="#d9bb80"
|
||||
theme[upload_mid]="#d39bb6"
|
||||
theme[upload_end]="#e68183"
|
||||
|
||||
# Process box color gradient for threads, mem and cpu usage
|
||||
theme[process_start]="#a7c080"
|
||||
theme[process_mid]="#e68183"
|
||||
theme[process_end]="#e68183"
|
||||
61
assets/themes/summer-night/apps/hyprland.conf
Normal file
61
assets/themes/summer-night/apps/hyprland.conf
Normal file
@@ -0,0 +1,61 @@
|
||||
# --- Everforest Color Palette ---
|
||||
$bg0 = rgba(2d353bee)
|
||||
$bg1 = rgba(343f44ee)
|
||||
$bg2 = rgba(3d484dee)
|
||||
$bg3 = rgba(475258ee)
|
||||
$bg4 = rgba(4f585eee)
|
||||
$bg5 = rgba(56635fee)
|
||||
$fg = rgba(d3c6aaee)
|
||||
$red = rgba(e67e80ee)
|
||||
$orange = rgba(e69875ee)
|
||||
$yellow = rgba(dbbc7fee)
|
||||
$green = rgba(a7c080ee)
|
||||
$aqua = rgba(83c092ee)
|
||||
$blue = rgba(7fbbb3ee)
|
||||
$purple = rgba(d699b6ee)
|
||||
$grey0 = rgba(7a8478ee)
|
||||
$grey1 = rgba(859289ee)
|
||||
$grey2 = rgba(9da9a0ee)
|
||||
|
||||
general {
|
||||
gaps_in = 6
|
||||
gaps_out = 12
|
||||
border_size = 3
|
||||
col.active_border = $fg
|
||||
col.inactive_border = $bg5
|
||||
layout = dwindle
|
||||
resize_on_border = true
|
||||
}
|
||||
|
||||
decoration {
|
||||
rounding = 10
|
||||
|
||||
blur {
|
||||
enabled = true
|
||||
size = 5
|
||||
passes = 3
|
||||
new_optimizations = true
|
||||
ignore_opacity = true
|
||||
}
|
||||
|
||||
shadow {
|
||||
enabled = true
|
||||
range = 20
|
||||
render_power = 3
|
||||
color = rgba(00000044)
|
||||
}
|
||||
}
|
||||
|
||||
animations {
|
||||
enabled = true
|
||||
bezier = overshot, 0.05, 0.9, 0.1, 1.05
|
||||
bezier = smoothOut, 0.36, 0, 0.66, -0.56
|
||||
bezier = smoothIn, 0.25, 1, 0.5, 1
|
||||
|
||||
animation = windows, 1, 3, overshot, slide
|
||||
animation = windowsOut, 1, 3, smoothOut, slide
|
||||
animation = windowsMove, 1, 3, default
|
||||
animation = border, 1, 3, default
|
||||
animation = fade, 1, 3, smoothIn
|
||||
animation = workspaces, 1, 3, smoothIn, slide
|
||||
}
|
||||
10
assets/themes/summer-night/apps/neovim.lua
Normal file
10
assets/themes/summer-night/apps/neovim.lua
Normal file
@@ -0,0 +1,10 @@
|
||||
return {
|
||||
{ "neanias/everforest-nvim" },
|
||||
{
|
||||
"LazyVim/LazyVim",
|
||||
opts = {
|
||||
colorscheme = "everforest",
|
||||
background = "soft",
|
||||
},
|
||||
},
|
||||
}
|
||||
4
assets/themes/summer-night/apps/vscode.json
Normal file
4
assets/themes/summer-night/apps/vscode.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Everforest Dark",
|
||||
"extension": "sainnhe.everforest"
|
||||
}
|
||||
122
assets/themes/summer-night/apps/waybar.css
Normal file
122
assets/themes/summer-night/apps/waybar.css
Normal file
@@ -0,0 +1,122 @@
|
||||
@define-color bg_dim #232a2e;
|
||||
@define-color bg0 #2d353b;
|
||||
@define-color bg1 #343f44;
|
||||
@define-color bg2 #3d484d;
|
||||
@define-color bg3 #475258;
|
||||
@define-color bg4 #4f585e;
|
||||
@define-color bg5 #56635f;
|
||||
@define-color bg_visual #543a48;
|
||||
@define-color bg_red #514045;
|
||||
@define-color bg_green #425047;
|
||||
@define-color bg_blue #3a515d;
|
||||
@define-color bg_yellow #4d4c43;
|
||||
@define-color fg #d3c6aa;
|
||||
@define-color red #e67e80;
|
||||
@define-color orange #e69875;
|
||||
@define-color yellow #dbbc7f;
|
||||
@define-color green #a7c080;
|
||||
@define-color aqua #83c092;
|
||||
@define-color blue #7fbbb3;
|
||||
@define-color purple #d699b6;
|
||||
@define-color grey0 #7a8478;
|
||||
@define-color grey1 #859289;
|
||||
@define-color grey2 #9da9a0;
|
||||
/* margin: top right bottom left */
|
||||
/* Spacing outside the element */
|
||||
|
||||
/* padding: top right bottom left */
|
||||
/* Spacing inside the element */
|
||||
|
||||
* {
|
||||
font-family: JetBrainsMono Nerd Font, FontAwesome;
|
||||
font-size: 13px;
|
||||
font-weight: bold;
|
||||
}
|
||||
|
||||
window#waybar {
|
||||
background-color: @fg;
|
||||
color: @bg0;
|
||||
transition-property: background-color;
|
||||
transition-duration: 0.5s;
|
||||
border-radius: 0px 0px 15px 15px;
|
||||
transition-duration: .5s;
|
||||
|
||||
border-bottom-width: 5px;
|
||||
border-bottom-color: #7d6a40;
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
|
||||
#backlight,
|
||||
#tray,
|
||||
#custom-launcher,
|
||||
#clock,
|
||||
#clock-date,
|
||||
#workspaces,
|
||||
#pulseaudio,
|
||||
#idle_inhibitor,
|
||||
#custom-battery,
|
||||
#custom-powermenu {
|
||||
background-color: @bg0;
|
||||
color: @fg;
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
margin-top: 7px;
|
||||
margin-bottom: 12px;
|
||||
border-radius: 10px;
|
||||
border-bottom-width: 5px;
|
||||
border-bottom-color: #161a1d;
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
|
||||
#tray > .active {
|
||||
color: @fg;
|
||||
}
|
||||
|
||||
#tray > .needs-attention {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#workspaces {
|
||||
padding: 0px;
|
||||
}
|
||||
|
||||
#workspaces button.active {
|
||||
background-color: @blue;
|
||||
color: @bg0;
|
||||
border-radius: 10px;
|
||||
margin-bottom: -5px;
|
||||
border-bottom-width: 5px;
|
||||
border-bottom-color: #366660;
|
||||
border-bottom-style: solid;
|
||||
}
|
||||
|
||||
#custom-launcher {
|
||||
background-color: @green;
|
||||
color: @bg0;
|
||||
border-bottom-color: #556a35;
|
||||
|
||||
margin-left: 15px;
|
||||
padding-left: 20px;
|
||||
padding-right: 21px;
|
||||
font-size: 20px;
|
||||
}
|
||||
|
||||
#custom-powermenu {
|
||||
background-color: @red;
|
||||
color: @bg0;
|
||||
border-bottom-color: #951c1f;
|
||||
|
||||
margin-right: 15px;
|
||||
padding-left: 20px;
|
||||
padding-right: 23px;
|
||||
}
|
||||
|
||||
#custom-battery.preservation {
|
||||
color: @green;
|
||||
}
|
||||
|
||||
#idle_inhibitor {
|
||||
padding-left: 10px;
|
||||
padding-right: 10px;
|
||||
font-size: 20px;
|
||||
}
|
||||
122
assets/themes/summer-night/apps/waybar.json
Normal file
122
assets/themes/summer-night/apps/waybar.json
Normal file
@@ -0,0 +1,122 @@
|
||||
{
|
||||
"margin-top": 0,
|
||||
"margin-left": 120,
|
||||
"margin-bottom": 0,
|
||||
"margin-right": 120,
|
||||
"height": 61,
|
||||
"layer": "top",
|
||||
"position": "top",
|
||||
"spacing": 15,
|
||||
"modules-left": ["custom/launcher", "clock", "clock#date"],
|
||||
"modules-center": ["hyprland/workspaces"],
|
||||
"modules-right": ["idle_inhibitor", "pulseaudio", "custom/battery", "backlight", "tray", "custom/powermenu"],
|
||||
|
||||
"hyprland/workspaces": {
|
||||
"disable-scroll": true,
|
||||
"all-outputs": true,
|
||||
"on-click": "activate",
|
||||
"on-scroll-up": "hyprctl dispatch workspace r+1",
|
||||
"on-scroll-down": "hyprctl dispatch workspace r-1",
|
||||
"persistent_workspaces": {
|
||||
"1": [],
|
||||
"2": [],
|
||||
"3": [],
|
||||
"4": [],
|
||||
"5": [],
|
||||
"6": [],
|
||||
"7": [],
|
||||
"8": [],
|
||||
"9": [],
|
||||
"10": []
|
||||
}
|
||||
},
|
||||
|
||||
"tray": {
|
||||
"icon-size": 20,
|
||||
"spacing": 5
|
||||
},
|
||||
|
||||
"custom/launcher": {
|
||||
"interval": "once",
|
||||
"format": "",
|
||||
"on-click": "pkill rofi || rofi -show drun",
|
||||
"tooltip-format": "Application Launcher"
|
||||
},
|
||||
|
||||
"backlight": {
|
||||
"max-length": "4",
|
||||
"format": "{icon} {percent}%",
|
||||
"tooltip-format": "{percent}%",
|
||||
"format-icons": ["","","","", "", "", ""],
|
||||
"on-click": "",
|
||||
"on-scroll-up": "brightnessctl set 10%-",
|
||||
"on-scroll-down": "brightnessctl set +10%"
|
||||
},
|
||||
|
||||
"memory": {
|
||||
"interval": 30,
|
||||
"format": " {}%",
|
||||
"format-alt":" {used:0.1f}G",
|
||||
"max-length": 10
|
||||
},
|
||||
|
||||
"idle_inhibitor": {
|
||||
"format": "{icon}",
|
||||
"format-icons": {
|
||||
"activated": " ",
|
||||
"deactivated": " "
|
||||
}
|
||||
},
|
||||
|
||||
"pulseaudio": {
|
||||
"scroll-step": 5,
|
||||
"format": "{icon} {volume}%",
|
||||
"format-bluetooth": "{icon} {volume}%",
|
||||
"format-bluetooth-muted": " {icon}",
|
||||
"format-muted": " muted",
|
||||
"format-icons": {
|
||||
"headphone": "",
|
||||
"hands-free": "",
|
||||
"headset": "",
|
||||
"phone": "",
|
||||
"portable": "",
|
||||
"car": "",
|
||||
"default": ["", "", ""]
|
||||
},
|
||||
"on-click": "mute-vol",
|
||||
"on-click-middle": "audio-menu",
|
||||
"on-click-right": "pavucontrol",
|
||||
"tooltip-format": "{icon} {desc} | {volume}%"
|
||||
},
|
||||
|
||||
"network": {
|
||||
"format-wifi": " {signalStrength}%",
|
||||
"format-ethernet": " {signalStrength}%",
|
||||
"format-disconnected": "",
|
||||
"on-click": ""
|
||||
},
|
||||
|
||||
"custom/battery": {
|
||||
"interval": 30,
|
||||
"format": "{}",
|
||||
"exec": "waybar-battery-status",
|
||||
"on-click": "power-menu"
|
||||
},
|
||||
|
||||
"clock": {
|
||||
"format": " {:%H:%M}",
|
||||
"tooltip": false
|
||||
},
|
||||
|
||||
"clock#date": {
|
||||
"format": " {:%A, %B %d, %Y}",
|
||||
"on-click": "kitty calcurse",
|
||||
"tooltip-format": "Open calendar"
|
||||
},
|
||||
|
||||
"custom/powermenu": {
|
||||
"format": "",
|
||||
"on-click": "wlogout",
|
||||
"tooltip": false
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user