zakuradev / dotfiles

Awesome OpenboxWM Custom Environment!

Home Page:https://youtu.be/sPBTRiuBLqU

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

:octocat: Hi there! Thanks for visiting! Visits

preview

This is my personal configuration for my favorite openbox window manager and some applications too.

I hope you understand everything here. πŸ˜‰

Here are some details about my setup:

🎁 Changelogs Repo Size

v3.0

  • Visual Mode:

    • Both modes (minimal) have their own window button styles, margins, sidebar rofi, and dunst layouts.
    • Removed eyecandy tint2 from Joyful Desktop v2
    • Better Tint2 (added temp executor, etc.)
    • Added rotation mode (crossover, except minimal mode.)
  • Major Changes:

    • Removed SLiM sync background, custom slim themes, and unnecessary files/config.
    • All scripts are reproduced all with central variables in one file.
    • Reverse terminal background and foreground (urxvt/termite)
    • Nvim Config - Thanks to @elenapan
    • SLiM Themes (optional) - See here
    • URxvt Font Resizer - See keybinds
    • Included Networkmanager_dmenu
    • Oh My ZSH Theme - Rounded
    • Rofi v1.6.0 Supported
    • New Ncmpcpp UI
    • Neofetch Images
    • New Wallpapers

πŸŽ‘ Setup

This is how to install these dotfiles for automatic settings OpenboxWM custom environment.

Introduction of Linux Rice

Please read this and this.

Detailed environment

Please refer to wiki/Detailed-Environment.

Installation (dependencies)

Debian & Ubuntu (and all based distributions)
sudo apt install rsync python2 python psmisc wireless-tools openbox obconf alsa-utils brightnessctl nitrogen dunst tint2 gsimplecal rofi lxappearance qt5ct qt5-style-plugins lxpolkit xautolock rxvt-unicode xclip scrot thunar thunar-archive-plugin thunar-media-tags-plugin thunar-volman ffmpegthumbnailer tumbler w3m w3m-img geany viewnior mpv mpd mpc ncmpcpp pavucontrol parcellite neofetch htop zsh ffmpeg playerctl xsettingsd
oh-my-zsh & plugins
  • chsh -s /usr/bin/zsh # Change default shell to zsh for current user
  • sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
  • git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
  • git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
  • zsh-completions
picom
  • sudo apt install libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-xinerama0-dev libxcb-glx0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl1-mesa-dev  libpcre2-dev  libevdev-dev uthash-dev libev-dev libx11-xcb-dev
  • git clone https://github.com/yshui/picom.git && cd picom/
  • git submodule update --init --recursive
  • meson --buildtype=release . build
  • ninja -C build
  • ninja -C build install

    If you want rounded ones.

    I don't recommend it, because I experience a memory leak.

  • sudo apt install libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-xinerama0-dev libxcb-glx0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl1-mesa-dev  libpcre2-dev  libevdev-dev uthash-dev libev-dev libx11-xcb-dev
  • git clone https://github.com/ibhagwan/picom.git && cd picom/
  • git submodule update --init --recursive
  • meson --buildtype=release . build
  • ninja -C build
  • ninja -C build install
obmenu-generator

I haven't tested it yet.

  • sudo su
  • echo 'deb http://download.opensuse.org/repositories/home:/Head_on_a_Stick:/obmenu-generator/Debian_10/ /' > /etc/apt/sources.list.d/home:Head_on_a_Stick:obmenu-generator.list
  • wget -nv https://download.opensuse.org/repositories/home:Head_on_a_Stick:obmenu-generator/Debian_10/Release.key -O Release.key
  • apt-key add - < Release.key
  • apt update
  • apt install obmenu-generator libgtk2-perl
  • See Installation from Git


Arch Linux (and all based distributions)

Make sure your AUR Helper is yay.

yay -S rsync python2 python psmisc wireless_tools openbox obconf alsa-utils brightnessctl nitrogen dunst tint2 gsimplecal rofi lxappearance qt5ct qt5-styleplugins lxsession xautolock rxvt-unicode-patched xclip scrot thunar thunar-archive-plugin thunar-media-tags-plugin thunar-volman ffmpegthumbnailer tumbler w3m geany viewnior mpv mpd mpc ncmpcpp pavucontrol parcellite neofetch htop picom obmenu-generator gtk2-perl zsh zsh-completions imagemagick ffmpeg playerctl xsettingsd

If you want rounded corners, but I don't recommend it because I experience a memory leak.

yay -S picom-ibhagwan-git
oh-my-zsh & plugins
  • chsh -s /usr/bin/zsh # Change default shell to zsh for current user
  • sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
  • git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
  • git clone https://github.com/zsh-users/zsh-autosuggestions.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

Optional: gimp, nano + nano syntax highlighting, neovim, slim, spotify, termite, xfce4-power-manager.

Installation (dotfiles)

If you are already using v2, it is advisable to match the files in v2 and v3 then install the dotfiles files manually instead of putting all of them directly into the user homedir. Due to the many changes here, these suggestions are meant to avoid conflicts and remove files/config from v2 which were removed from v3.

Most of the files

You can clone or download it as a zip. After that put all files in the dotfiles folder to user's home directory or ( ~ ).

  • git clone https://github.com/owl4ce/dotfiles.git && cd dotfiles
  • rsync -avzP --exclude '.git*' .* ~/
Icons
  • cd ~/.icons
  • tar -Jxvf Papirus-Custom.tar.xz && tar -Jxvf Papirus-Dark-Custom.tar.xz
  • sudo rsync -avzP Papirus-{Custom,Dark-Custom} /usr/share/icons/
  • rm -r ~/.icons/Papirus-* # Delete unnecessary files

For refresh font cache do

fc-cache -rv

User configuration

  • SLiM Themes (optional)

    floflo-batik

  • Google-chrome / Chromium (tip)

    google-chrome.thumbnail

    Settings: chrome://settings/

    • Themes: Use GTK+
    • Use system title bar and borders

    New Tab

    Tabliss - Widgets Font

  • Spotify - Spicetify Theme (tip)

    spicetify.dribbblish-mechanical spicetify.dribbblish-eyecandy

    Dribbblish

  • Battery Indicator
    Because on the tint2 panel I turned off the battery status. Alternatively, install xfce4-power-manager and turn it on ~/.config/openbox/autostart then enable system tray icon in xfce4-power-manager-settings.

  • Dunst Action: Default Web Browser (middle click)
    ~/.config/dunst/dunstrc-mech
    ~/.config/dunst/dunstrc-mech-MINMOD
    ~/.config/dunst/dunstrc-eyc
    ~/.config/dunst/dunstrc-eyc-MINMOD

    ...
    
    42 browser = chromium
    
    ...
  • Screenshots, Tint2 Executor, and Autolock
    ~/.owl4ce_var

    ...
    
     95 #-------------------------------------------------------------------------#
     96 # TINT2 EXECUTOR                                                          #
     97 #-------------------------------------------------------------------------#
     98
     99 INT_ETH="enp4s0"
    100 INT_WIFI="wlp3s0"
    101
    102 TEMP_DEV="thermal_zone0"
    103
    104 #-------------------------------------------------------------------------#
    105 # SCREENSHOT OPTIONS                                                      #
    106 #-------------------------------------------------------------------------#
    107 # This will create "Screenshots" folder inside SAVE_DIR                   #
    108 #-------------------------------------------------------------------------#
    109
    110 SAVE_DIR="$HOME/Pictures"
    111 TIMER_SEC="5"
    112 
    113 #-------------------------------------------------------------------------#
    114 # XAUTOLOCK - 5 means 5 minutes                                           #
    115 #-------------------------------------------------------------------------#
    116 
    117 AUTOLOCK_MINUTE="5"
    
    ...

    TEMP_DEV: Check here

    /sys/devices/virtual/thermal/
  • Root Privileges (SUID)

    • poweroff
    • reboot
    • brightnessctl
    • others if needed
    sudo chmod u+s $(where {poweroff,reboot,brightnessctl})

    For brightnessctl I recommend adding users to the group video.

  • Default Supported Apps
    ~/.scripts/default-apps/list

    • Terminal: urxvt/termite
    • Lockscreen: anything
    • Music Player: mpd/spotify
    • File Manager: anything
    1 terminal="urxvt"
    2 lockscreen="slimlock"
    3 musicpl="mpd"
    4 filemanager="thunar"
  • Tray
    ~/.config/openbox/tray
    An example is turning on nm-applet, because by default I don't use it and use networkmanager_dmenu instead (F12). Remove hashtags before nm-applet.

    1 #
    2 # This tray will restart after changing visual mode
    3 # Please add "&" after command
    4 #
    5 # ---
    6
    7 parcellite &
    8 #nm-applet &
    
  • URxvt Icon
    ~/.Xresources

    ...
    
    17 URxvt.iconFile:                   /home/username/.icons/gladient/term.png
    
    ...
  • Neovim
    You know what to do with Vim-plug.

  • MPD Music Directory
    ~/.mpd/mpd.conf

    ...
    
    6 music_directory     "~/Music"
    
    ...
  • Ncmpcpp Music Directory
    Auto connect with MPD

    How to use ncmpcpp albumart?
    It's easy, put album|cover|folder|artwork|front.jp?g|png|gif|bmp into folder with song album. Recommended image size is 500px ( 1:1 ) or more. See keybinds

  • Neofetch Image (w3m)
    ~/.config/neofetch/config.conf

    ...
    
    641 # Image Source
    642 #
    643 # Which image or ascii file to display.
    644 #
    645 # Default:  'auto'
    646 # Values:   'auto', 'ascii', 'wallpaper', '/path/to/img', '/path/to/ascii', '/path/to/dir/'
    647 #           'command output (neofetch --ascii "$(fortune | cowsay -W 30)")'
    648 # Flag:     --source
    649 #
    650 # NOTE: 'auto' will pick the best image source for whatever image backend is used.
    651 #       In ascii mode, distro ascii art will be used and in an image mode, your
    652 #       wallpaper will be used.
    653 #image_source="auto"
    654 #image_source="${HOME}/.config/neofetch/images/arch.png"
    655 #image_source="${HOME}/.config/neofetch/images/arch_dark.png"
    656 #image_source="${HOME}/.config/neofetch/images/artix.png"
    657 #image_source="${HOME}/.config/neofetch/images/bedrock.png"
    658 #image_source="${HOME}/.config/neofetch/images/gentoo.png"
    659 #image_source="${HOME}/.config/neofetch/images/gentoo_dark.png"
    660 image_source="${HOME}/.config/neofetch/images/lofi.png"
    661 #image_source="${HOME}/.config/neofetch/images/ubuntu.png"
    662 #image_source="${HOME}/.config/neofetch/images/ubuntu_dark.png"
    663 #image_source="${HOME}/.config/neofetch/images/void.png"
    664 #image_source="${HOME}/.config/neofetch/images/void_dark.png"
    
    ...
    List
    Arch Gentoo Ubuntu Void
    Arch Gentoo Ubuntu Void
    Arch Dark Gentoo Dark Ubuntu Dark Void Dark
    Arch Gentoo Ubuntu Void
    Artix LoFi Bedrock
    Artix LoFi Bedrock

πŸ“ Notes

Color Scheme

owl4ce.color-scheme

πŸ’Œ

Please don't underrate, I've configured them all since April 2020 and have been stuDYING them since October 2019. Awesome open-source. If you support it, star it or make a PR. Or if there is a problem with configuration you can make an issue here.

Thank you!

Stargazers over time

β™₯️ Credits / Thanks

About

Awesome OpenboxWM Custom Environment!

https://youtu.be/sPBTRiuBLqU

License:GNU General Public License v3.0


Languages

Language:CSS 63.4%Language:Shell 10.2%Language:Scheme 9.7%Language:Perl 9.7%Language:Python 4.4%Language:Vim Script 2.6%