Glyphs - joneavila/aesthetic GitHub Wiki

Creating Glyphs from Icon Sets

Theme glyphs are primarily sourced from Lucide icons, with select glyphs (such as Wi-Fi and Bluetooth headers) taken from Material Icons.

The standard muOS theme glyph measures approximately 22x19 pixels, determined using utils/print_average_glyph_dimensions.sh. See Development-Setup for more information on utility scripts.

Creating Glyphs from Lucide

  1. Download the SVG with:
    • Stroke width 2.5px, size 28px (all glyphs using Lucide)
    • Stroke width 1.75px, size 48px (hex.lua button icons)
  2. Save the SVGs in assets/icons/lucide/glyph.
  3. Update the mapping file utils/glyph_map.txt with the new glyphs.
  4. Run utils/generate_template_glyphs.py to generate the PNG glyphs into the assets/icons/glyph directory.

Creating Glyphs from Material Icons

  1. Download the PNG with the following settings:

    • Weight: 700
    • Grade: 0
    • Optical size: 20px
    • Style: Rounded
    • Size: 16px
    • Color: #000000
  2. Resize the image to 24px height using:

    sips --resampleHeight 24 wifi.png --out wifi.png
    
  3. Store the PNGs in assets/icons/material/glyph.

  4. Manually place the resized images into assets/icons/glyph.

Glyph Usage in muOS

  • The mapping file utils/glyph_map.txt contains comments indicating where each glyph is used throughout the system.
  • For more information on utility scripts and development setup, refer to the Development-Setup page.

Application Glyphs

An application's glyph can be overwritten by copying the glyph to the active theme directory, e.g., Aesthetic's glyph:

/opt/muos/default/MUOS/theme/active/glyph/muxapp/aesthetic.png