I3: Difference between revisions

From Bitpost wiki
Line 9: Line 9:
==== i3-resurrect ====
==== i3-resurrect ====
Rather than rolling my own (yet), I grabbed [https://github.com/JonnyHaystack/i3-resurrect i3-resurrect] to improve i3 layout management.
Rather than rolling my own (yet), I grabbed [https://github.com/JonnyHaystack/i3-resurrect i3-resurrect] to improve i3 layout management.
And holy hell it rocks.  Usage:
i3-resurrect ls # to see what is saved
i3-resurrect save # to save the entire current workspace
i3-resurrect restore # to restore the workspace to its last state - it's amazing
Install (yes it's fuckign heavy... but it also fucking works...):
Install (yes it's fuckign heavy... but it also fucking works...):
  sudo apt install python3-pip xdotool
  sudo apt install python3-pip xdotool

Revision as of 08:52, 22 November 2022

software

Most of i3 is installed during ubuntu install. Here's the pretty:

  • maim+slop+yaxg for screen captures, use Prtscrn
  • feh for wallpaper, make sure it's in .i3/config startup to set last-known on startup
  • i3-gaps applied on top of i3, use mh-setup-linux to build it
  • i3blocks should be built from source as the ubuntu packages are ancient

layout management

i3-resurrect

Rather than rolling my own (yet), I grabbed i3-resurrect to improve i3 layout management.

And holy hell it rocks. Usage:

i3-resurrect ls # to see what is saved
i3-resurrect save # to save the entire current workspace
i3-resurrect restore # to restore the workspace to its last state - it's amazing

Install (yes it's fuckign heavy... but it also fucking works...):

sudo apt install python3-pip xdotool
pip3 install --user --upgrade i3-resurrect
# add /home/m/.local/bin to PATH

i3 base layout support

i3 base layout support is pretty sucky and hasn't been updated since it was hacked up in 2009 or 2014.

You must use your precise workspace names. Here's how you get them, STANDARDIZE ON THESE:

 m@case:~$ i3-msg -t get_workspaces
 [{"num":-1,"name":" ❶ aim ","visible":true,"focused":true,"rect":{"x":0,"y":24,"width":3840,"height":2136},"output":"HDMI-0","urgent":false},{"num":-1,"name":" ❺ bro ","visible":false,"focused":false,"rect":{"x":0,"y":24,"width":3840,"height":2136},"output":"HDMI-0","urgent":false},{"num":-1,"name":" ❷ aim ","visible":false,"focused":false,"rect":{"x":0,"y":24,"width":3840,"height":2136},"output":"HDMI-0","urgent":false},{"num":-1,"name":" ❹ fix ","visible":false,"focused":false,"rect":{"x":0,"y":24,"width":3840,"height":2136},"output":"HDMI-0","urgent":false},{"num":-1,"name":" ❾ mor ","visible":false,"focused":false,"rect":{"x":0,"y":0,"width":0,"height":0},"output":"HDMI-0","urgent":false}]

Save a workspace layout:

i3-save-tree --workspace " ❶ aim " >~/development/config/common/home/m/.i3/i3_layout_1.json
# Then you must edit it!  Compare it to the checked in version!

Apply a layout:

append_layout ~/development/config/common/home/m/.i3/i3_layout_1.json

I will set up layouts for workspaces 1, 3 and 5.

fonts etc

Fonts will drive you nuts on 4k monitors. Qt is especially stupid. Use these tools:

  • shit gnome is broken, has this file which has a DPI setting which it uses, INVERTED. I found that setting it to 64DPI worked well on case SONY. Fuckers need to wake up and realize that DPI is a fucking MONITOR SETTING FOR FUCKS SAKE and make it easy to set instead of having to become a fucking neckbeard.
# ~/.Xresources
Xft.dpi: 64
  • i3 config for general font, and i3 bar font - set them both well for your specific machine (PITA)
  • lxappearance seems to let you tweak... gnome... maybe?
  • The Qt Fix you will need for robo3t, vlc, etc:
sudo apt install qt4-qtconfig
qtconfig
# if you can't see anything, try to find the font size (second page, third edit box)
# bump it to 32 or so, and exit (click YES (first box)), then restart it
  • nvidia settings are impossible to get to stick, esp on case - kodi by itself fucks them up - set them over and over and over and over to:
    • 4k
    • 60fps
    • advanced > force full pipeline

development

I did a [resize grow] patch to allow more aggressive growth! It kicks ASS but the i3 gurus won't let me commit unless I get it working well "automatically" which is just a bad fucking idea but they are the bosses.  :-)

In the meantime, here are the development versions:

  • development/i3-gaps-moodboom: the one I build and install to my machines; has a fixed min width of 6% (to keep gnome-terminal from crashing and exiting)
  • development/i3-gaps-moodboom.git: upstream points to my git fork, which will NOT be used as a vector to push to official i3; still, keep it well-synced with official as convenient
  • development/i3-official-moodboom: ANYTHING I commit to it will AUTOMATICALLY FLOW to the pr so be careful!
  • development/i3-official-moodboom.git: upstream points to THE OFFICIAL I3; i have an active pull request as of 2018/04/03 and ANYTHING I commit to it will AUTOMATICALLY FLOW to the pr so be careful!

Use this to install any one of them:

cd development/i3-#anyversion#
i3_build_and_install.sh 

Note that setup_linux.sh should (properly) use i3-gaps-moodboom.

STAY TUNED. ha.