Theming System
Visual identity: Applenix + Matrix mode.
Overview
Floppy.WTF ships two branded themes that can be toggled via NixOS specialisations. Both themes share a common font rendering pipeline optimized for maximum visual quality on LCD panels.
Font Rendering Pipeline
This is the single highest-impact visual tuning. Shared by all themes.
Font Stack
| Role | Font | Package |
|---|---|---|
| UI Sans | Inter | pkgs.inter |
| Monospace | JetBrains Mono | pkgs.jetbrains-mono |
| Serif fallback | Noto Serif | pkgs.noto-fonts |
| Emoji | Noto Color Emoji | pkgs.noto-fonts-emoji |
Fontconfig Settings
fonts.fontconfig = {
enable = true;
defaultFonts = {
sansSerif = [ "Inter" "Noto Sans" ];
monospace = [ "JetBrains Mono" ];
serif = [ "Noto Serif" ];
emoji = [ "Noto Color Emoji" ];
};
antialias = true;
hinting = {
enable = true;
style = "slight"; # Preserves glyph shapes, closest to macOS
};
subpixel = {
rgba = "rgb"; # Standard for laptop LCD panels
};
};| Setting | Value | Rationale |
|---|---|---|
hinting.style | slight | Full hinting distorts glyphs. Slight preserves design intent. |
subpixel.rgba | rgb | Standard RGB subpixel order for virtually all laptop LCDs. |
antialias | true | Non-negotiable for clean text. |
Color System
Central palette definition in theme/colors.nix:
{
applenix = {
bg = "#0B0E14";
fg = "#E6E1CF";
accent = "#0A84FF"; # macOS-style blue
green = "#30E000"; # Floppy.WTF brand green
yellow = "#F1FA8C";
red = "#FF5555";
purple = "#BD93F9";
cyan = "#8BE9FD";
dimBg = "#1A1B26";
dimFg = "#9090A0";
};
matrix = {
bg = "#000000";
fg = "#00FF41"; # Matrix green
dim = "#00AA2B";
bright = "#33FF66";
accent = "#00FF41";
};
}Applenix Theme
Aesthetic: Clean, dark, macOS-rivaling. Premium typography. Subtle effects.
| Component | Choice |
|---|---|
| GTK Theme | WhiteSur-Dark |
| Icons | Papirus-Dark |
| Cursor | Bibata-Modern-Ice (size 24) |
| Terminal | Kitty with matched palette |
| Compositor | Picom (shadows, corner radius, fade) |
| Login | LightDM with full theme |
Terminal (Kitty)
programs.kitty = {
enable = true;
font = { name = "JetBrains Mono"; size = 12; };
settings = {
background = "#0B0E14";
foreground = "#E6E1CF";
cursor = "#0A84FF";
selection_background = "#0A84FF";
background_opacity = "0.95";
};
};Compositor
services.picom = {
enable = true;
settings = {
shadow = true;
shadow-opacity = 0.22;
corner-radius = 10;
inactive-opacity = 0.97;
fading = true;
fade-in-step = 0.04;
fade-out-step = 0.04;
};
};Matrix Theme
Aesthetic: Green-on-black. Monospace everything. Terminal-native. Menacing.
| Component | Choice |
|---|---|
| GTK Theme | Adwaita-dark (heavy green overrides) |
| Font | JetBrains Mono for ALL UI text |
| Compositor | No shadows, no corners, no fade |
| Colors | Monochrome green palette |
Terminal (Kitty)
programs.kitty = {
enable = true;
font = { name = "JetBrains Mono"; size = 12; };
settings = {
background = "#000000";
foreground = "#00FF41";
cursor = "#00FF41";
background_opacity = "1.0";
# Entire palette is monochrome green
};
};Compositor
services.picom = {
enable = true;
settings = {
shadow = false; # No shadows
corner-radius = 0; # Sharp edges
inactive-opacity = 1.0; # Full opacity
fading = false; # Instant transitions
};
};Theme Toggle
Default boot = Applenix. Matrix mode available as a NixOS specialisation.
# In host configuration.nix
specialisation.matrix.configuration = {
imports = [ ../../theme/matrix.nix ];
};Toggle Commands
# Switch to Matrix mode
sudo nixos-rebuild switch --flake .#dell-dev --specialisation matrix
# Switch back to Applenix (default)
sudo nixos-rebuild switch --flake .#dell-devLast updated on