58 lines
3.3 KiB
Markdown
58 lines
3.3 KiB
Markdown
# dotfiles
|
|
|
|
### Contents
|
|
Setup for :
|
|
* [i3](http://i3wm.org/), a great tiling windows manager
|
|
* In fact i3-gaps, to add padding between windows
|
|
* And i3-lock-color, an improved lock screen
|
|
* [LightDM](https://wiki.ubuntu.com/LightDM) with custom GTKTheme and background
|
|
* Sublime Text 3
|
|
* [Polybar](https://github.com/jaagr/polybar/), a great replacement for i3-bar with easy custom plugins
|
|
* Terminator
|
|
* ZSH with Oh My ZSH!
|
|
* [Dunst](https://github.com/dunst-project/dunst), a great and lightweight notification daemon
|
|
* Random things (GTKTheme...)
|
|
|
|
### Requirements
|
|
|
|
Configuration makes use of these things, just to record but not mandatory :
|
|
|
|
* [oh-my-zsh](https://github.com/robbyrussell/oh-my-zsh)
|
|
* [fasd](https://github.com/clvv/fasd)
|
|
* [Pygments](http://pygments.org/) (with `pygmentize` command)
|
|
* [Powerline Fonts](https://github.com/powerline/fonts)
|
|
* `sudo pip install --upgrade google-api-python-client`
|
|
* [SpaceFM](https://ignorantguru.github.io/spacefm/)
|
|
* [PlayerCTL](https://github.com/acrisci/playerctl)
|
|
* [GTK Arc Theme](https://github.com/horst3180/arc-theme)
|
|
* Fonts : Noto Sans, DejaVu Sans, MaterialIcons, Symbola
|
|
|
|
### What is this, Chosto ?
|
|
|
|
I used a lot Debian/Ubuntu with Gnome. So a full Desktop Manager with a stacking Windows Manager.
|
|
A friend of mine showed me i3, a great and customizable tiling Windows Manager (i.e. no windows stack, just divide the scren and take all empty space).
|
|
|
|
With some customization and additionnal component (in this repo), I managed to get a functional and pleasant yet lightweight environment (for me, no brag).
|
|
|
|
So basically, what I like about this setup is that there is no useful menu bar anywhere and no border. Just windows with gaps between them when multiple windows are on the same screen.
|
|
|
|
I added to the classic Arch/i3WM :
|
|
* A notification daemon (urgency-aware), Dunst, controlled by shortcut (but possibly with mouse).
|
|
* A fancy lock screen, with optionnal suspend-to-RAM, either triggered by hotkey or when there is no activity for X minutes.
|
|
* A Display Manager (LightDM), for login and X starting.
|
|
* A great File Explorer (SpaceFM), with hotkey / command-line / screen-split / protocol handlers / events support.
|
|
* ZSH with Oh My ZSH and excellent community plugins (Git aliases, Docker autocomplete, FASD bindings, cat and man coloration...)
|
|
* Some mappings to control ALSA volume from dedicated keyboards buttons, to play/plause players compatible with MPRIS D-Bus Interface spec ; some changes to key speed (X settings) ; Smooth and dark theme for GTK and for Sublime-Text...
|
|
|
|
### Usage
|
|
|
|
Please note : on my system XDG_CONFIG_HOME is $HOME/.config.
|
|
|
|
* Clone in bare repository : `git clone --bare https://github.com/Chostakovitch/dotfiles.git $HOME/.cfg`. A bare repository does not have a working tree (basically it is just `.git` content). So we avoid conflicts with another git repository.
|
|
* Create a working tree outside `.cfg` : `/usr/bin/git --git-dir=$HOME/.cfg/ --work-tree=$HOME checkout`.
|
|
* Adjust `DEFAUT_USER` in `~/.zshrc`.
|
|
* Source `~/.zshrc` and use provided `config` alias to pull.
|
|
* `config config --local status.showUntrackedFiles no` to ignore untracked files in status (better as it is home dir).
|
|
|
|
Credits to [this great article](https://developer.atlassian.com/blog/2016/02/best-way-to-store-dotfiles-git-bare-repo/) for the trick.
|