{"id":23419457,"url":"https://github.com/yousseffjel/antar-dwm","last_synced_at":"2026-02-03T04:31:02.642Z","repository":{"id":207127824,"uuid":"718130355","full_name":"yousseffjel/Antar-dwm","owner":"yousseffjel","description":"My dotfiles with script for auto install ","archived":false,"fork":false,"pushed_at":"2024-10-23T15:25:41.000Z","size":187194,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-26T07:22:58.252Z","etag":null,"topics":["arch","archlinux","dotfiles","dwm","installer","linux","neofetch","rofi","shell","suckless","xorg","zsh"],"latest_commit_sha":null,"homepage":"","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/yousseffjel.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-13T12:54:10.000Z","updated_at":"2024-10-23T15:27:00.000Z","dependencies_parsed_at":"2024-05-05T12:35:59.534Z","dependency_job_id":null,"html_url":"https://github.com/yousseffjel/Antar-dwm","commit_stats":null,"previous_names":["yousseffjel/antar-dwm"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousseffjel%2FAntar-dwm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousseffjel%2FAntar-dwm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousseffjel%2FAntar-dwm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/yousseffjel%2FAntar-dwm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/yousseffjel","download_url":"https://codeload.github.com/yousseffjel/Antar-dwm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248570308,"owners_count":21126403,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arch","archlinux","dotfiles","dwm","installer","linux","neofetch","rofi","shell","suckless","xorg","zsh"],"created_at":"2024-12-23T01:18:01.805Z","updated_at":"2026-02-03T04:31:02.636Z","avatar_url":"https://github.com/yousseffjel.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Antar-dwm\n\nA complete, automated setup for a beautiful and functional dwm (Dynamic Window Manager) desktop environment on Arch Linux.\n\n## Overview\n\nThis project provides a one-command installation script that sets up a fully configured dwm-based desktop environment with:\n\n- **Window Manager**: dwm (Dynamic Window Manager)\n- **Compositor**: picom with rounded corners and blur effects\n- **Hotkey Daemon**: sxhkd for application launching and system control\n- **Terminal**: Alacritty (GPU-accelerated terminal emulator)\n- **Notifications**: Dunst with modern styling\n- **Status Bar**: slstatus (you'll need to configure/build this separately)\n- **Themes**: Multiple GTK themes, icon themes, and cursor themes\n- **Fonts**: Nerd Fonts and other programming fonts\n- **Power Management**: Optional aggressive performance mode (CPU governor, USB/PCIe settings)\n- **Additional Tools**: tmux, betterlockscreen, and more\n\n## Features\n\n- 🎨 **Beautiful Aesthetics**: Rounded corners, blur effects, and modern theming\n- ⌨️ **Keyboard-Driven**: Extensive sxhkd keybindings for efficient workflow\n- 🚀 **One-Command Setup**: Automated installation script handles everything\n- 🎯 **Curated Packages**: Pre-selected essential applications and utilities\n- 🔧 **Highly Customizable**: All configuration files are easily accessible\n\n## Prerequisites\n\n- **Arch Linux** (or Arch-based distribution)\n- **Internet connection** (for package downloads)\n- **sudo/doas access** (for system-level installations)\n- **Basic familiarity with Linux** (recommended)\n\n## Installation\n\n1. **Clone this repository:**\n   ```bash\n   git clone https://github.com/yourusername/Antar-dwm.git\n   cd Antar-dwm\n   ```\n\n2. **Make the install script executable:**\n   ```bash\n   chmod +x install.sh\n   ```\n\n3. **Run the installation script:**\n   ```bash\n   ./install.sh\n   ```\n\n   The script will:\n   - Update your system and optimize package mirrors\n   - Install yay (AUR helper) if not present\n   - Install all required packages (apps, fonts, themes, icons)\n   - Link configuration files to your home directory\n   - Install Cursor extensions (uses same marketplace as VSCode)\n   - Configure power management\n   - Set up helper scripts\n\n4. **Reboot your system** (recommended after installation)\n\n5. **Select dwm session** from your display manager (ly, SDDM, etc.)\n\n## Post-Installation\n\n### Setting Up dwm\n\nThis repository provides the desktop environment configuration, but **dwm itself** needs to be built and installed separately. You can:\n\n1. Install from AUR:\n   ```bash\n   yay -S dwm\n   ```\n\n2. Or build from source (recommended for customization):\n   ```bash\n   git clone https://git.suckless.org/dwm\n   cd dwm\n   # Apply your patches, edit config.h, then:\n   sudo make clean install\n   ```\n\n### Setting Up slstatus\n\nSimilarly, **slstatus** (status bar) needs to be installed separately:\n\n```bash\nyay -S slstatus\n# Or build from source: https://git.suckless.org/slstatus\n```\n\n### Setting Up Wallpapers\n\nCreate a wallpaper directory and add your images:\n\n```bash\nmkdir -p ~/Pictures/Wallpapers\n# Add your wallpaper images here\nbetterlockscreen -u ~/Pictures/Wallpapers/your-image.jpg --blur\n```\n\n### Setting Up Helper Scripts\n\nThe installation script installs helper scripts to `~/src/bin/`. These include:\n\n- `logout.sh` - Session management (logout/reboot/shutdown)\n- `mountmenu.sh` - Mount devices via dmenu\n- `umountmenu.sh` - Unmount devices via dmenu\n- `wallpaper.sh` - Set random wallpaper\n\nMake sure `dmenu` is installed for the menu scripts to work:\n\n```bash\nyay -S dmenu\n```\n\n## Keybindings\n\n### Application Launchers\n- `Super + b` - Open browser (Firefox)\n- `Super + e` - Open file manager (Thunar)\n- `Super + v` - Open code editor (Cursor)\n- `Super + Alt + b` - Open Bluetooth manager\n\n### System Control\n- `Super + Shift + x` - Logout menu\n- `Super + Shift + l` - Lock screen\n- `Super + Shift + Escape` - Reload sxhkd config\n- `Super + Alt + m` - Mount device menu\n- `Super + Alt + u` - Unmount device menu\n\n### Screenshots\n- `Super + p` - Full screenshot\n- `Super + Shift + p` - Interactive screenshot\n- `Super + Alt + p` - Screenshot to clipboard\n\n### Media Controls\n- `XF86AudioMute` / `Alt + m` - Toggle mute\n- `XF86AudioRaiseVolume` / `Alt + k` - Increase volume\n- `XF86AudioLowerVolume` / `Alt + j` - Decrease volume\n- `XF86AudioPlay` / `Alt + p` - Play/pause media\n- `XF86AudioNext` / `Alt + l` - Next track\n- `XF86AudioPrev` / `Alt + h` - Previous track\n\n### Brightness\n- `XF86MonBrightnessUp` / `Alt + Shift + k` - Increase brightness\n- `XF86MonBrightnessDown` / `Alt + Shift + j` - Decrease brightness\n\n\u003e **Note**: dwm has its own keybindings for window management. Refer to your dwm config for those.\n\n## Configuration\n\nAll configuration files are symlinked to `~/.config/` from the `dotconfig/` directory. You can edit them directly:\n\n- `~/.config/sxhkd/sxhkdrc` - Hotkey bindings\n- `~/.config/alacritty/` - Terminal configuration (if you create one)\n- `~/.config/picom/picom.conf` - Compositor settings\n- `~/.config/dunst/dunst.conf` - Notification daemon\n- `~/.config/tmux/tmux.conf` - Terminal multiplexer\n- `~/.config/neofetch/config.conf` - System info display\n\nAfter editing configs:\n- sxhkd: Press `Super + Shift + Escape` to reload\n- picom: Restart with `pkill picom \u0026\u0026 picom \u0026`\n- dunst: Restart with `pkill dunst \u0026\u0026 dunst \u0026`\n\n## Project Structure\n\n```\nAntar-dwm/\n├── install.sh              # Main installation script\n├── dotconfig/              # Configuration files\n│   ├── autostart.sh       # Session startup script\n│   ├── sxhkd/             # Hotkey daemon config\n│   ├── ...                # Config files\n│   ├── picom/             # Compositor config\n│   ├── dunst/             # Notification daemon\n│   ├── tmux/              # Terminal multiplexer\n│   └── ...\n├── Source/                 # (DEPRECATED - will be removed)\n│   └── ...                # Assets are now installed via packages\n└── scripts/               # Helper scripts\n    ├── logout.sh\n    ├── mountmenu.sh\n    ├── umountmenu.sh\n    └── wallpaper.sh\n```\n\n## Customization\n\n### Changing Themes\n\nThemes and icons are installed via packages. You can change them using:\n\n```bash\nlxappearance  # GUI tool for GTK themes\n# Or manually edit ~/.gtkrc-2.0 and ~/.config/gtk-3.0/settings.ini\n```\n\n**Installed themes include:**\n- Catppuccin (Mocha, Frappe variants)\n- Gruvbox Dark\n- Tela Circle Icons (Dracula, Standard variants)\n- Bibata Cursor Theme\n\n**To install additional themes:**\n```bash\nyay -S \u003ctheme-package-name\u003e\n```\n\n**Popular theme packages:**\n- `catppuccin-gtk-theme-mocha` - Catppuccin Mocha theme\n- `gruvbox-dark-gtk-theme-git` - Gruvbox theme\n- `tela-circle-icon-theme-dracula` - Tela Circle Dracula icons\n- `bibata-cursor-theme` - Bibata cursor theme\n\n### Adding Packages\n\nEdit `install.sh` and add packages to the appropriate variable (`app_pkgs`, `app_pkgs2`, etc.).\n\n### Modifying Keybindings\n\nEdit `~/.config/sxhkd/sxhkdrc` and reload with `Super + Shift + Escape`.\n\n## Troubleshooting\n\n### Installation Fails\n\n- Check `install.log` for detailed error messages\n- Ensure you have internet connectivity\n- Verify you're running Arch Linux\n- Make sure you have sufficient disk space\n\n### Display Manager Issues\n\nIf dwm doesn't appear in your display manager:\n\n1. Ensure `dotconfig/dwm.desktop` is copied to `/usr/share/xsessions/`:\n   ```bash\n   sudo cp dotconfig/dwm.desktop /usr/share/xsessions/\n   ```\n\n2. Restart your display manager:\n   ```bash\n   sudo systemctl restart ly  # or sddm, gdm, etc.\n   ```\n\n### Fonts Not Loading\n\nRun font cache update:\n```bash\nfc-cache -vf\n```\n\n### Compositor Not Working\n\nCheck if picom is running:\n```bash\npgrep picom\n```\n\nIf not, start it manually:\n```bash\npicom \u0026\n```\n\nCheck logs for errors:\n```bash\npicom --log-level DEBUG\n```\n\n## Security Note\n\nThe installation script sets up `doas.conf` with `permit persist` for the current user. This allows passwordless sudo access after the first authentication. Review and adjust `/etc/doas.conf` according to your security requirements.\n\n## Contributing\n\nContributions are welcome! Please feel free to submit issues or pull requests.\n\n## License\n\nSee [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- [dwm](https://dwm.suckless.org/) - Dynamic Window Manager\n- [suckless tools](https://suckless.org/) - Minimalist software\n- All the theme and icon creators whose work is included\n\n## Package-Based Installation\n\nThis project now uses **package-based installation** instead of bundling assets. All fonts, themes, and icons are installed via Arch Linux packages and AUR, making the repository smaller and easier to maintain.\n\n**Benefits:**\n- ✅ Smaller repository size\n- ✅ Automatic updates via package manager\n- ✅ No need to manually update bundled assets\n- ✅ Easy to add/remove themes and fonts\n\nSee [PACKAGES.md](PACKAGES.md) for a complete list of installed packages.\n\n## Removing Source Folder\n\nThe `Source/` folder is no longer needed and can be safely deleted:\n\n```bash\nrm -rf Source/\n```\n\nAll assets are now installed via packages during the installation process.\n\n## Status\n\n✅ **Ready for use** - This project has been cleaned up and uses package-based installation.\n\n---\n\n**Enjoy your new dwm setup!** 🎉\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyousseffjel%2Fantar-dwm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyousseffjel%2Fantar-dwm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyousseffjel%2Fantar-dwm/lists"}