Skip to content

OsamaMahmood/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

28 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Configuration Files

This repository contains my personal configuration files for various development tools and applications on macOS.

πŸ“‹ Table of Contents


🎨 SketchyBar

SketchyBar is a highly customizable macOS status bar replacement that provides system information and custom widgets. This configuration features a unified pill design with blur effects and comprehensive system monitoring.

Configuration Structure

sketchybar/
β”œβ”€β”€ sketchybarrc          # Main configuration file
β”œβ”€β”€ colors.sh            # Color scheme definitions (Catppuccin Mocha)
β”œβ”€β”€ items/               # Individual status bar items
β”‚   β”œβ”€β”€ apple_logo.sh
β”‚   β”œβ”€β”€ battery.sh
β”‚   β”œβ”€β”€ calendar.sh
β”‚   β”œβ”€β”€ cpu.sh
β”‚   β”œβ”€β”€ front_app.sh
β”‚   β”œβ”€β”€ memory.sh
β”‚   β”œβ”€β”€ music.sh
β”‚   β”œβ”€β”€ spaces.sh
β”‚   └── volume.sh
└── plugins/             # Plugin scripts for dynamic content
    β”œβ”€β”€ apple_menu.sh
    β”œβ”€β”€ battery.sh
    β”œβ”€β”€ calendar.sh
    β”œβ”€β”€ cpu.sh
    β”œβ”€β”€ front_app.sh
    β”œβ”€β”€ icon_map_fn.sh
    β”œβ”€β”€ memory.sh
    β”œβ”€β”€ music_helpers.sh
    β”œβ”€β”€ space_windows.sh
    β”œβ”€β”€ space.sh
    β”œβ”€β”€ volume.sh
    β”œβ”€β”€ youtube-music-click-handler.sh
    β”œβ”€β”€ youtube-music-fast-toggle.sh
    └── youtube-music.sh

# Root configuration includes
install-sketchybar.sh     # Automated installer script

Features

  • System Monitoring: Real-time CPU and memory usage with optimized performance calculations
  • Battery Management: Intelligent battery status with charging indicators using SF Symbols
  • Media Controls: Advanced YouTube Music integration with API connectivity and control buttons
  • Workspace Management: 10 configurable spaces with custom app font icons
  • Custom Styling: Catppuccin Mocha color scheme with unified pill backgrounds and blur effects
  • Responsive Design: Dynamic show/hide functionality based on app states

Dependencies

Required Tools

# Core dependencies
- brew

YouTube Music Desktop App (for music integration)
Install from: https://github.com/ytmdesktop/ytmdesktop

Required Fonts

  • SF Pro: System font (included with macOS)
  • SketchyBar App Font: Custom font for space icons
    # Install the font from SketchyBar's font collection
    curl -L https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v2.0.45/sketchybar-app-font.ttf -o ~/Library/Fonts/sketchybar-app-font.ttf

System Requirements

  • macOS System Tools: sysctl, ps, vm_stat, pmset (built-in)
  • YouTube Music Desktop with API: Must be running on port 26538 for music controls
  • SF Symbols: Used for battery, volume, and UI icons (built-in)

Quick Setup (Automated)

πŸš€ One-Command Installation:

cd ~/.config && ./install-sketchybar.sh

The installer script will automatically:

  • Install all dependencies and fonts
  • Set up proper permissions
  • Start SketchyBar service
  • Check for YouTube Music integration
  • Provide troubleshooting guidance

Manual Setup

  1. Install SketchyBar and dependencies:

    brew tap homebrew/cask-fonts
    brew tap FelixKratz/formulae
    brew install sketchybar jq curl
    brew install --cask font-hack-nerd-font
    brew install font-sf-pro
    brew install --cask sf-symbols
  2. Install the custom font:

    curl -L https://github.com/kvndrsslr/sketchybar-app-font/releases/download/v2.0.45/sketchybar-app-font.ttf -o ~/Library/Fonts/sketchybar-app-font.ttf
  3. Install YouTube Music Desktop (optional, for music controls):

    • Download from ytmdesktop releases
    • Enable API in settings and change API config to no auth(port 26538)
  4. Link the configuration:

    ln -sf ~/.config/sketchybar ~/.config/sketchybar
  5. Start SketchyBar:

    brew services start sketchybar

Troubleshooting

Space Switching Not Working

If clicking on spaces in SketchyBar doesn't switch desktops, you need to enable keyboard shortcuts:

  1. Go to System Settings β†’ Keyboard β†’ Keyboard Shortcuts
  2. Select Mission Control from the sidebar
  3. Enable the space switching shortcuts (^1, ^2, ^3, etc.)

Mission Control Keyboard Shortcuts

Required Settings:

  • βœ… Mission Control - enabled
  • βœ… Switch to Desktop 1 - ^1
  • βœ… Switch to Desktop 2 - ^2
  • βœ… Switch to Desktop 3 - ^3
  • βœ… Switch to Desktop 4 - ^4
  • βœ… Switch to Desktop 5 - ^5
  • βœ… Switch to Desktop 6 - ^6
  • βœ… Switch to Desktop 7 - ^7
  • βœ… Switch to Desktop 8 - ^8

Other Common Issues

  • SketchyBar not visible: Ensure "Displays have separate Spaces" is enabled in Desktop & Dock settings
  • Music controls not working: Install YouTube Music Desktop and enable API (port 26538)
  • Icons not displaying: Verify SketchyBar App Font is installed in ~/Library/Fonts/

Configuration Reference

This setup follows the official SketchyBar documentation with custom optimizations for:

  • Reduced API timeouts for better performance
  • Unified pill backgrounds with blur effects
  • Catppuccin Mocha color integration
  • Error handling for external dependencies

πŸš€ Warp Terminal

Warp is a modern, Rust-based terminal with AI integration and collaborative features.

Configuration Structure

warp/
└── themes/
    β”œβ”€β”€ catppuccin_frappe.yml
    β”œβ”€β”€ catppuccin_latte.yml
    β”œβ”€β”€ catppuccin_macchiato.yml
    └── catppuccin_mocha.yml

Features

  • Custom Themes: Full Catppuccin color scheme collection
  • Modern Interface: Block-based command editing and AI assistance
  • Performance: Fast, GPU-accelerated rendering

Theme Variants

  • Mocha: Dark theme with warm tones
  • Macchiato: Medium dark theme
  • Frappe: Medium theme
  • Latte: Light theme

πŸ‘» Ghostty Terminal

Ghostty is a fast, feature-rich terminal emulator written in Zig.

Configuration Structure

ghostty/
β”œβ”€β”€ config                    # Main configuration file
└── themes/
    └── catppuccin-mocha.conf # Custom theme configuration

Features

  • High Performance: Written in Zig for maximum speed
  • Customizable: Extensive configuration options
  • Theme Support: Catppuccin Mocha theme integration

Setup

  1. Install Ghostty from the official website
  2. The configuration will be automatically detected in ~/.config/ghostty/

✏️ Micro Editor

Micro is a modern and intuitive terminal-based text editor.

Configuration Structure

micro/
β”œβ”€β”€ backups/        # Automatic backup files
β”œβ”€β”€ bindings.json   # Custom key bindings
└── buffers/
    └── history     # Command and search history

Features

  • Modern Interface: Mouse support and syntax highlighting
  • Customizable: Custom key bindings and plugins
  • Backup System: Automatic file backups for safety

Key Features

  • Syntax highlighting for 100+ languages
  • Mouse support
  • Plugin system
  • Multiple cursors
  • Auto-backup functionality

πŸ”§ Installation & Setup

  1. Clone the repository:

    git clone <repository-url> ~/.config
  2. Install dependencies:

    # Core tools
    brew install sketchybar jq curl micro
    
    # Terminal emulators
    brew install --cask warp
    # Install Ghostty from official website
    
    # Fonts
    brew tap homebrew/cask-fonts
    brew install --cask font-hack-nerd-font font-sf-pro sf-symbols
  3. Link configurations: Most configurations are automatically detected when placed in ~/.config/.

  4. Restart services:

    brew services restart sketchybar

πŸ“ Notes

  • Themes follow the Catppuccin color scheme for consistency across all tools
  • All configurations are optimized for macOS development workflow
  • Only actively maintained and tracked configurations are documented here

🀝 Contributing

Feel free to suggest improvements or report issues with any of these configurations.


Last updated: October 4, 2025

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages