saimoomedits / dotfiles

The ArchLinux and AwesomeWM configs. 📂
GNU General Public License v3.0
1.11k stars 47 forks source link
arch-linux archlinux awesomewm configuration desktop dotfiles linux rice ricing setup theme ui ui-design

The Arch Linux & AwesomeWM dotfiles!


Features · Setup · Keys · Mods · Wiki



Welcome


If you like this setup, please drop a star.
I really appreciate it. Thanks!
Hi there, thanks for dropping by 💙, these are my Arch Linux and AwesomeWM configuration files. You can use this repository as a **[rice](https://thatnixguy.github.io/posts/ricing/)** reference. Or use them as a daily driver.

### Setup Info
| task | name | | ----------------- | ---------------------- | | wm | [awesome-git](https://github.com/awesomeWM/awesome) | | terminal | [alacritty](https://github.com/alacritty/alacritty) | | music player | [mpd](https://www.musicpd.org/) & [ncmpcpp](https://github.com/ncmpcpp/ncmpcpp) | | Light Gtk theme | [Cutefish-light](https://cutefish-ubuntu.github.io/) | | Dark Gtk theme | Awesthetic-gtk | bar | [wibar](https://awesomewm.org/apidoc/popups_and_bars/awful.wibar.html) | | compositor | [picom-git](https://github.com/yshui/picom) |
more info
* **Fonts?** * as for fonts, the setup uses 4 fonts in total - *Roboto* - main ui font - *Material Icons* - for icons - *Iosevka* - Terminal/Monospace font - *JetbrainsMono NF* - idk
* **gaps/border/titlebar** * **titlebars** * you can edit `layout/decorations/init.lua` to emend/modify the global titlebar. * **borders** * border size can be change in `theme/ui_vars.lua`, there is a `border_size`. * **gaps** * Gaps can also be changed in `theme/ui_vars.lua`.
* **custom theme?** * for dark, edit `theme/colors/dark.lua` * for light, edit `theme/colors/light.lua`

* **rounded corners** * by default, windows are rounded with awesome-wm's `client.shape` property, * if you want to use picom instead, do the following, - edit `config/others.lua` - scroll down to line `252` - either, comment it out or remove that line - this will disable rounded windows with awesomeWM

---
## features
* Control Center * Vertical Bar * Brightness / Volume OSD * Lockscreen * Tasklist Dock * Light/Dark gtk and zathura theme * Minimal exitscreen * Control state saver * Better Ncmpcpp ui * Battery notifier * And many more!
Show previews
* minimalstic vertical bar

* expandable control center

* Minimal notifcations with text actions

* custom ncmpcpp UI

* exit screen

* lockscreen

* Minimal tasklist dock with pinned apps

* Wip vscode theme


---
## Setup
Instructions
**⚠️ NOTE: The following instructions are for Arch/Arch-based system ⚠️**
1. Install packages / dependencies ```sh yay -S picom-git awesome-git acpid git mpd ncmpcpp wmctrl \ firefox lxappearance gucharmap thunar alacritty neovim polkit-gnome \ xdotool xclip scrot brightnessctl alsa-utils pulseaudio jq acpi rofi \ inotify-tools zsh mpdris2 bluez bluez-utils bluez-plugins acpi acpi_call \ playerctl redshift cutefish-cursor-themes-git cutefish-icons upower xorg xorg-init tar ``` 2. Make backup of directories that will be changed (optional) ```sh cd mkdir .backup_config cp -r ~/.config/* .backup_config/ cp -r ~/.mpd .backup_config/ cp -r ~/.ncmpcpp .backup_config/ cp -r ~/.themes .backup_config/ ``` 3. Clone this repo ```sh cd clear git clone --recurse-submodules https://github.com/saimoomedits/dotfiles.git cd dotfiles ``` 4. Copy the dotfiles in required places ```sh cp -rf .config/* ~/.config/ cp -rf extras/mpd ~/.mpd cp -rf extras/ncmpcpp ~/.ncmpcpp cp -rf extras/fonts ~/.fonts cp -rf extras/scripts ~/.scripts cp -rf extras/oh-my-zsh ~/.oh-my-zsh ``` 5. Extract Gtk-theme ```sh mkdir ~/.themes cp ./themes/* ~/.themes cd ~/.themes tar -xf Awesthetic.tar tar -xf Cutefish-light-modified.tar rm Awesthetic.tar Cutefish-light-modified.tar ``` 6. make some files executeable ```sh cd ~/.config/awesome/misc sudo chmod -R +x * ``` 7. Startup services ```sh systemctl --user enable mpd sudo systemctl enable bluetooth ``` 8. Done * if your already logged into awesome, reload it * else, Login to AwesomeWM
**Enjoy :smile:**
*
Vscode theme - copy `extras/vscode-theme/Awesthetic` to `~/.vscode/extentions/`. - now, in VScode, open the Color Theme picker with `File > Preferences > Color Theme`. - select `Awesthetic` theme.

---
## Keybinds
* you can get a list of keybindings [here in the wiki](https://github.com/saimoomedits/dotfiles/wiki/Keybinds). * the dock can be opened by hovering bottom edge of primary screen * the control-Center can either be opened by keybinding `super(windows key) + a` or
by click on the `control center` icon in bar
---
## Modules
1. **[Rubato](https://github.com/andOrlando/rubato)** * Created by [andOrlando](https://github.com/andOrnaldo) * Basically, Allows you to animate a number value in AwesomeWM 2. **[Bling](https://github.com/BlingCorp/bling)** * Created by the [BlingCorp](https://github.com/BlingCorp) community * Adds a lot more cool modules to AwesomeWM 3. **[Layout-machi](https://github.com/xinhaoyuan/layout-machi)** * Created by [xinhaoyuan](https://github.com/xinhaoyaun) * Manual layout with interactive editor 4. **[Upower battery](https://github.com/Aire-One/awesome-battery_widget.git)** * Created by [Aire-One](https://github.com/Aire-One) * A UPowerGlib based battery widget for the AwesomeWM. 5. **Awesome-Dock** * Created by [me](https://github.com/saimoomedits).... * A tasklist dock with pinned apps * you can use it in your config (hopefully) * but there are still lots of things to improve
More info
* you can use this dock in your awesome config. but... * the catch is that. you need a spcific icon-theme in `/usr/share/icons` for pinned apps to work properly
but if your using the exact rice as mine, you don't have to worry about it
* You can customize the dock's colors, size, spacing, hide-timeout, etc in `theme/init.lua`
* example: ```lua theme.awesome_dock_size = 80 theme.awesome_dock_pinned = { {"xterm", "terminal"}, {"spotify", "spotify"}, {"xterm"}, {"thunar"} } theme.awesome_dock_color_active = theme.accent theme.awesome_dock_color_inactive = theme.fg_color .. "66" theme.awesome_dock_color_minimized = theme.accent .. "33" theme.awesome_dock_color_hover = theme.fg_color .. "33" theme.awesome_dock_color_bg = theme.bg_color theme.awesome_dock_disabled = false theme.awesome_dock_spacing = 10 theme.awesome_dock_timeout = 1.2 ``` * to add more pinned apps you can do the following in `theme.lua`: ```lua --[[ table example: { "app command", "app class"} * `app command` is well. the command that launches that app * `app class` is the class or name of the app for icons. ]] theme.awesome_dock_pinned = { {"spotify", "spotify"}, {"xterm"}, {"thunar"} } ```

---
## Todos
- [ ] Make dock's icon-handler identify global icon-theme - [x] Improve Ncmpcpp decorations - [x] Improve Notifications - [ ] Polish Awesthetic-gtk-theme
---
## Credits * special thanks to :heart: * [moonlight-coffee](https://github.com/Moonlight-Coffee) * [justleoo](https://github.com/justleoo)
* also these 🌃 awesome people! * [Javacafe01](https://github.com/javacafe01) * [manilarome](https://github.com/manilarome) * [elenapan](https://github.com/elenapan)
* extras :sparkles: * [awesomeWM](https://github.com/awesomewm/) - The awesome Window Manager * [Cutefish](https://cutefish-ubuntu.github.io/) - CutefishOS
* contributers