Enhanced documentation and add installation script

- Added comprehensive keyboard shortcuts documentation with detailed tables:
  * Basic operations (window management, launcher, config reload)
  * Window focus and movement (vim-style keybindings)
  * Window layout controls (split, stacking, tabbed, fullscreen)
  * Workspace navigation and assignments
  * Screenshot shortcuts (file and clipboard modes)
  * Audio controls (volume, MOC player)
  * Resize mode instructions
- Fixed typos in README (temple -> template, comming -> coming, etc.)
- Added Quick Installation section with automated script
- Added Features section listing all major components
- Improved manual installation instructions formatting
- Created install.sh script for automated installation:
  * Installs all required dependencies
  * Builds and installs i3-gaps from source
  * Configures LXDE autostart for i3
  * Installs SuckLess Terminal
  * Copies configuration files and scripts
  * Creates necessary directories
  * Provides clear installation progress and next steps
This commit is contained in:
dzaczek 2025-12-23 17:09:38 +01:00
parent 5d8306dc19
commit 0c61c35828
2 changed files with 320 additions and 23 deletions

172
README.md
View file

@ -1,22 +1,33 @@
# Uconsole-i3
I3 windows manager on Uconsole device
i3 window manager configuration for Uconsole device
![SCREENSHOT|300](./screen.png)
![SCREENSHOT2|300](./screen2.png)
## Usage
Feel free to fork and modify this configuration to suit your needs. If you're new to i3 like I , take your time to understand how each section works and tailor it to your preferences.
Feel free to fork and modify this configuration to suit your needs. If you're new to i3 like I am, take your time to understand how each section works and tailor it to your preferences.
The base is temple is comming from [icemodding](https://github.com/icemodding/i3) This is my first attempt at working with i3, so please be aware that this project may have bugs, be unfinished, or contain incomplete features.
The base template is coming from [icemodding](https://github.com/icemodding/i3). This is my first attempt at working with i3, so please be aware that this project may have bugs, be unfinished, or contain incomplete features.
Enjoy your i3 experience!
## INSTALLATION
At the moment I'm using I3-GAPS [https://github.com/Airblader/i3](https://github.com/Airblader/i3)
## Quick Installation
### Instalation i3 gaps:
For automatic installation, use the provided script:
```bash
apt install dh-autoreconf libxcb-keysyms1-dev libpango1.0-dev libxcb-util0-dev xcb libxcb1-dev libxcb-icccm4-dev libyajl-dev libev-dev libxcb-xkb-dev libxcb-cursor-dev libxkbcommon-dev libxcb-xinerama0-dev libxkbcommon-x11-dev libstartup-notification0-dev libxcb-randr0-dev libxcb-xrm0 libxcb-xrm-dev libxcb-shape0 libxcb-shape0-dev
git clone git@github.com:dzaczek/Uconsole-i3.git
cd Uconsole-i3
chmod +x install.sh
./install.sh
```
## Manual Installation
This configuration uses I3-GAPS [https://github.com/Airblader/i3](https://github.com/Airblader/i3)
### Installation i3 gaps:
```bash
sudo apt install dh-autoreconf libxcb-keysyms1-dev libpango1.0-dev libxcb-util0-dev xcb libxcb1-dev libxcb-icccm4-dev libyajl-dev libev-dev libxcb-xkb-dev libxcb-cursor-dev libxkbcommon-dev libxcb-xinerama0-dev libxkbcommon-x11-dev libstartup-notification0-dev libxcb-randr0-dev libxcb-xrm0 libxcb-xrm-dev libxcb-shape0 libxcb-shape0-dev meson ninja-build
cd ~/Documents
# clone the repository
@ -27,40 +38,155 @@ At the moment I'm using I3-GAPS [https://github.com/Airblader/i3](https://gith
mkdir -p build && cd build
meson ..
sudo ninja
sudo apt install i3blocks i3status rofi fonts-font-awesome
```
open /etc/xdg/lxsession/LXDE-pi/desktop.conf and change windows_manager to i3
```
### Configure LXDE for i3
Open `/etc/xdg/lxsession/LXDE-pi/desktop.conf` and change window_manager to i3:
```ini
[Session]
window_manager=i3
```
open file /etc/xdg/lxsession/LXDE-pi/autostart and hash lines lxpanel and pcmanfm
Open file `/etc/xdg/lxsession/LXDE-pi/autostart` and comment out lines lxpanel and pcmanfm:
```bash
vim /etc/xdg/lxsession/LXDE-pi/autostart
sudo vim /etc/xdg/lxsession/LXDE-pi/autostart
```
```ini
#@lxpanel --profile LXDE-pi
#@pcmanfm --desktop --profile LXDE-pi
@xscreensaver -no-splash
```
### Confiure and isntall SuckLess Termianl
### Configure and install SuckLess Terminal
```bash
sudo -i
cd Documnets
cd ~/Documents
git clone https://github.com/LukeSmithxyz/st
# OR FROM THERE git://git.suckless.org/st
cd st
sudo make install
```
### Copy this configuration gaps
### Copy this configuration
```bash
cd ~/.config/i3/
git clone git@github.com:dzaczek/Uconsole-i3.git .
sudo apt install apt-get install maim xclip copyq xdotool
git clone git@github.com:dzaczek/Uconsole-i3.git .
sudo apt install maim xclip copyq xdotool feh pamixer picom rofi
```
### Additional Dependencies
```bash
sudo apt install maim xclip copyq xdotool feh pamixer picom rofi i3blocks i3status fonts-font-awesome
```
## Keyboard Shortcuts
**Note:** `$mod` is set to `Alt` (Mod1) in this configuration.
### Basic Operations
| Shortcut | Action |
|----------|--------|
| `$mod + Enter` | Open terminal (st) |
| `$mod + d` | Open application launcher (rofi) |
| `$mod + Shift + q` | Close focused window |
| `$mod + Shift + c` | Reload i3 configuration |
| `$mod + Shift + r` | Restart i3 |
| `$mod + Shift + e` | Exit i3 (with confirmation) |
### Window Focus & Movement
| Shortcut | Action |
|----------|--------|
| `$mod + j/k/l/;` | Focus left/down/up/right (vim-style) |
| `$mod + Arrow Keys` | Focus in direction |
| `$mod + Shift + j/k/l/;` | Move window left/down/up/right |
| `$mod + Shift + Arrow Keys` | Move window in direction |
| `$mod + a` | Focus parent container |
| `$mod + space` | Toggle focus between tiling/floating windows |
### Window Layout
| Shortcut | Action |
|----------|--------|
| `$mod + h` | Split horizontally |
| `$mod + v` | Split vertically |
| `$mod + s` | Stacking layout |
| `$mod + w` | Tabbed layout |
| `$mod + e` | Toggle split layout |
| `$mod + f` | Toggle fullscreen |
| `$mod + Shift + Space` | Toggle floating/tiling |
| `$mod + r` | Enter resize mode (then use j/k/l/; or arrows) |
### Floating Windows (Uconsole-specific)
| Shortcut | Action |
|----------|--------|
| `$mod + Shift + p` | Move window to right position (695x267px) |
| `$mod + Shift + m` | Move window to left position (695x267px) |
### Workspaces
| Shortcut | Action |
|----------|--------|
| `$mod + 1-9,0` | Switch to workspace 1-10 |
| `$mod + Shift + 1-9,0` | Move window to workspace 1-9,10 |
| `$mod + Home` | Switch to workspace 1 |
| `$mod + End` | Switch to workspace 10 |
| `$mod + Page Up` | Switch to previous workspace |
| `$mod + Page Down` | Switch to next workspace |
### Workspace Assignments
- Workspace 1: Terminal
- Workspace 2: Browser (Chrome/Firefox)
- Workspace 3: Telegram
- Workspace 4: Media player
- Workspace 5: Video player (VLC)
- Workspace 6: File manager (Thunar/VirtualBox)
- Workspace 7: Graphics (GIMP)
- Workspace 8: Downloads (qBittorrent)
- Workspace 9: Games
- Workspace 10: Recording (Simplescreenrecorder)
### Screenshots
#### Save to Files
| Shortcut | Action |
|----------|--------|
| `Print` | Screenshot entire screen → `~/Pictures/screenshot-*.png` |
| `$mod + Print` | Screenshot active window → `~/Pictures/screenshot-*-current.png` |
| `Shift + Print` | Screenshot selected area → `~/Pictures/screenshot-*-selected.png` |
#### Copy to Clipboard
| Shortcut | Action |
|----------|--------|
| `Ctrl + Print` | Screenshot entire screen → clipboard |
| `Ctrl + $mod + Print` | Screenshot active window → clipboard |
| `Ctrl + Shift + Print` | Screenshot selected area → clipboard |
### Audio Controls
| Shortcut | Action |
|----------|--------|
| `XF86AudioRaiseVolume` | Increase volume (+5%) |
| `XF86AudioLowerVolume` | Decrease volume (-5%) |
| `XF86AudioMute` | Toggle mute |
| `$mod + m` | Open MOC player in terminal |
| `XF86AudioPlay` | Play/Pause (MOC) |
| `XF86AudioPause` | Play/Pause (MOC) |
| `XF86AudioNext` | Next track (MOC) |
| `XF86AudioPrev` | Previous track (MOC) |
| `XF86AudioStop` | Stop (MOC) |
### Resize Mode
After pressing `$mod + r`, use:
| Shortcut | Action |
|----------|--------|
| `j / Left` | Shrink width |
| `k / Down` | Grow height |
| `l / Up` | Shrink height |
| `; / Right` | Grow width |
| `Enter / Escape` | Exit resize mode |
## Features
- **i3-gaps**: Window gaps for modern look
- **Rofi**: Application launcher
- **Suckless Terminal (st)**: Minimal terminal emulator
- **i3blocks**: Status bar with custom scripts
- **MOC**: Music player integration
- **Screenshot tools**: maim with file/clipboard support
- **Picom**: Compositor for transparency and effects
- **WireGuard VPN**: Status indicator in bar
- **Raspberry Pi monitoring**: Battery and temperature scripts