GithubHelp home page GithubHelp logo

avivace / dotfiles Goto Github PK

View Code? Open in Web Editor NEW
786.0 21.0 45.0 3.04 MB

i3 + Plasma: using the i3 window manager on the top of KDE Plasma and other dotfiles, configurations, scripts, workarounds and practises from my Debian Sid machines.

Home Page: https://www.reddit.com/r/unixporn/comments/64mihc/i3_kde_plasma_a_match_made_in_heaven/

License: GNU General Public License v3.0

Shell 26.38% TeX 13.60% Python 3.34% JavaScript 53.96% CSS 0.98% Vim Script 1.73%
dotfiles tmux vim sublime-text-3 theme monokai debian plasma compositor desktop

dotfiles's People

Contributors

0xdaksh avatar avivace avatar hendrikto avatar stooj avatar wabri avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dotfiles's Issues

Display manager wiring? ssdm?

You will still use the Plasma session with startx, so set your login manager accordingly.

Could you elaborate on your exact steps? I have my sddm.conf in my dotfiles - what display manager are you using? I'm pretty new to KDE / i3 as I've been using macOS for the past few years. I imagine I could figure it out, but hoping to skip the trial and error...

I wonder if the blog post linked in the README might have some details, but alas, it's a dead link: https://avivace.com/blog/debian-and-kde-plasma.html - and apparently the Internet Archive didn't pick it up

I noticed https://avivace.com/blog/linux.html but it doesn't seem quite the same.

UPDATE: discovered that one thing tripping me up was autologin, so I was skipping the chance to select i3... still messing around with it.

Notification handling

I have stripped down your setup a bit for me, so I'm using only the i3 and compton config and plasmas env/wm.sh script. I have set up two machines with this and it mostly works fine. There are only two minor issues:

  • Plasma background isn't closing even though I have set for_window [title="Desktop — Plasma"] kill; floating enable; border none. This not a big Problem as I can close it with ctrl+shift+q.
  • Notifications. On one machine I have Plasma notifications and on one I have the i3 ones. Do you have any idea what decides which notifications should be used? I'd alyways like to have the Plasma ones.

Widgets used

Which widgets are you using to display the disk usage, memory, etc., in the image you posted?

Window focus changes to output where notifications are shown

I don't know if anyone else is experiencing this, but I'm using multiple screens and notifications are shown in screen 1. If I have a window focused in screen 2, when a notification is shown, the focus goes to screen 1 (I think the last focused window in that screen). This is extremely annoying (and a security hazards, as I could be suddenly typing a password in a chat without noticing).

Any ideas on what the problem could be and how to fix it? I tried adding the mouse_warping none i3 config option but it didn't help.

Stop Plasma from picking up tray icons

I have been using the KDE + i3 setup for about 2 weeks now, but I have some issues.

I use a dual monitor setup. The KDE pager widget does not support i3's idea of workspaces and so I have started using the i3 panel. My issue is I cannot see the tray icons in the on the i3 panel. I believe the reason for this is that the tray icons are picked up by the kde panel, even though the kde panel is already deleted. I confirmed this by starting i3 without kde. So, my question is how do I disable the kde panel when using i3?

Plasma notifications position

Notifications toasts are rendered at the center of the page. Tell i3 to position that in a corner and document that.

Urgent workspace

Hi,
Well done on this solution of yours!
To my understanding, though, the urgent workspace feature of i3 doesn't work, am I right?
Neither does the resize mode get flagged in any way, right?
Just questioning, no meant to diminish your efforts...

For the first issue a possible solution is to set in i3 conf to switch to urgent workspace immediately.

force_display_urgency_hint 0 ms
focus_on_window_activation urgent

Could it work?

Ciao.

Ending the X-Session

(first: I really like this project)

Problem:

If I exit i3 via mod+shift+e it gets closed, but not the KDE-Environment. Is there any way to also close the KDE-Environment?

Pager displays incorrect workspaces

Software
Distro: Kubuntu 18.10
Plasma Version: 5.13.5
KDE Frameworks Version: 5.50.0
QT Version: 5.11.1
Kernel Version: 4.18.0-13-generic
OS Type: 64-bit
i3 Version: 4.15 (NOT i3-gaps)
Hardware
Processor: i5-4690
Memory: 16 Gig

Hi,
First, thanks for posting this. I've been going back and forth to your reddit post and this repo for a long time and finally decided to take the plunge because, what the hell it's Christmas!
Everything works pretty well except that the pager widget is displaying the wrong workspaces/desktops.

I have dual monitors and have left i3bar up just since I just got it set up today.
Issues:

  1. When on workspace 1, my left monitor and primary monitor, the pager displays that I am on workspace 2 and vice versa when I am on workspace 2. 
    
  2. Regardless of whatever other workspace I try to switch to afterward (3-10) it will always display that I have switched to workspace 3 in the pager. i3bar gives the correct workspace number.
    

screenshot_20181224_152446

Additional information:

  1. It may help to know that if there is a window open and maximized in a workspace the pager widget shows only half of the workspace being used. 
    

To be clear the Mod+# keys work as expected and i3bar reacts correctly. The issue seems to be pager specific.

  1. The only other thing I've noticed and it may be completely unrelated is that when I use firefox or vivaldi to open https://github.com/avivace/dotfiles/issues/8 both browsers crap out and immediately close. I have not noticed this with any other links. I can open another issue for this if you would like. But I haven't yet because I'm unsure if the issue originates with using i3 inside plasma. 
    

I'm not a developer or anything like that but I'll try to see if I can get any more information on these issues. Thanks a lot for the setup, It's pretty awesome minus these setbacks!

Login screen is being used as background

Once I log in, the taskbar loads up and I can use everything as intended. The only problem is that the background is simply the login screen with the password filled out.

Using feh --bg-scale path/to/my/bgpic in a console yields the desired result but it isn't happening at startup.

No Notifications When in Full-screen

After I use super + f to enter full screen, KDE notifications won't show up until I leave the full screen mode and will not be there at all if I am in the full screen mode for more than the time it should be there. So I end up missing a lot of notifications.

I have tried to seek help before from people using either i3 or KDE: https://www.reddit.com/r/i3wm/comments/kmqpy1/do_you_see_notifications_when_in_fullscreen_mode/

I hope I don't have to use KDE since it's not as pretty and useful as the KDE one.

Current config
https://github.com/Zackhardtoname/dotfiles/blob/e21c16ab1faf484361cb6790d74c5890062451ae/dot_i3/config#L516

for_window [class="plasmashell" window_type="notification"] floating enable, border none move position 4150 20
no_focus [class="plasmashell" window_type="notification"] 

Thank you!

i3-gaps config errors

I merged your file with auto-generated configuration but some lines cause me config errors, as you can see:

ERROR: CONFIG: Expected one of these tokens: <end>, '#', 'set ', 'set   ', 'set_from_resource', 'bindsym', 'bindcode', 'bind', 'bar', 'font', 'mode', 'floating_minimum_size', 'floating_maximum_size', 'floating_modifier', 'default_orientation', 'workspace_layout', 'new_window', 'new_float', 'hide_edge_borders', 'for_window', 'assign', 'no_focus', 'focus_follows_mouse', 'mouse_warping', 'force_focus_wrapping', 'force_xinerama', 'force-xinerama', 'disable_randr15', 'disable-randr15', 'workspace_auto_back_and_forth', 'fake_outputs', 'fake-outputs', 'force_display_urgency_hint', 'focus_on_window_activation', 'show_marks', 'workspace', 'ipc_socket', 'ipc-socket', 'restart_state', 'popup_during_fullscreen', 'exec_always', 'exec', 'client.background', 'client.focused_inactive', 'client.focused', 'client.unfocused', 'client.urgent', 'client.placeholder'                                                                                        
ERROR: CONFIG: (in file /home/test/.config/i3/config)                                                                                                                                                                                       
ERROR: CONFIG: Line 247:                                                                                                                                                                                                                    
ERROR: CONFIG: Line 248: # Smart Borders                                                                                                                                                                                                    
ERROR: CONFIG: Line 249: smart_borders on                                                                                                                                                                                                   
ERROR: CONFIG:           ^^^^^^^^^^^^^^^^                                                                                                                                                                                                   
ERROR: CONFIG: Line 250:                                                                                                                                                                                                                    
ERROR: CONFIG: Line 251: # Set inner/outer gaps                                                                                                                                                                                             
ERROR: CONFIG: Expected one of these tokens: <end>, '#', 'set ', 'set   ', 'set_from_resource', 'bindsym', 'bindcode', 'bind', 'bar', 'font', 'mode', 'floating_minimum_size', 'floating_maximum_size', 'floating_modifier', 'default_orientation', 'workspace_layout', 'new_window', 'new_float', 'hide_edge_borders', 'for_window', 'assign', 'no_focus', 'focus_follows_mouse', 'mouse_warping', 'force_focus_wrapping', 'force_xinerama', 'force-xinerama', 'disable_randr15', 'disable-randr15', 'workspace_auto_back_and_forth', 'fake_outputs', 'fake-outputs', 'force_display_urgency_hint', 'focus_on_window_activation', 'show_marks', 'workspace', 'ipc_socket', 'ipc-socket', 'restart_state', 'popup_during_fullscreen', 'exec_always', 'exec', 'client.background', 'client.focused_inactive', 'client.focused', 'client.unfocused', 'client.urgent', 'client.placeholder'                                                                                        
ERROR: CONFIG: (in file /home/test/.config/i3/config)                                                                                                                                                                                       
ERROR: CONFIG: Line 250: 
ERROR: CONFIG: Line 251: # Set inner/outer gaps
ERROR: CONFIG: Line 252: gaps inner 8
ERROR: CONFIG:           ^^^^^^^^^^^^
ERROR: CONFIG: Line 253: gaps outer 0
ERROR: CONFIG: Line 254: 
ERROR: CONFIG: Expected one of these tokens: <end>, '#', 'set ', 'set   ', 'set_from_resource', 'bindsym', 'bindcode', 'bind', 'bar', 'font', 'mode', 'floating_minimum_size', 'floating_maximum_size', 'floating_modifier', 'default_orientation', 'workspace_layout', 'new_window', 'new_float', 'hide_edge_borders', 'for_window', 'assign', 'no_focus', 'focus_follows_mouse', 'mouse_warping', 'force_focus_wrapping', 'force_xinerama', 'force-xinerama', 'disable_randr15', 'disable-randr15', 'workspace_auto_back_and_forth', 'fake_outputs', 'fake-outputs', 'force_display_urgency_hint', 'focus_on_window_activation', 'show_marks', 'workspace', 'ipc_socket', 'ipc-socket', 'restart_state', 'popup_during_fullscreen', 'exec_always', 'exec', 'client.background', 'client.focused_inactive', 'client.focused', 'client.unfocused', 'client.urgent', 'client.placeholder'
ERROR: CONFIG: (in file /home/test/.config/i3/config)
ERROR: CONFIG: Line 251: # Set inner/outer gaps
ERROR: CONFIG: Line 252: gaps inner 8
ERROR: CONFIG: Line 253: gaps outer 0
ERROR: CONFIG:           ^^^^^^^^^^^^
ERROR: CONFIG: Line 254: 
ERROR: CONFIG: Line 255: # Gaps mode
ERROR: FYI: You are using i3 version 4.14.1 (2017-09-24)

I had to comment out those lines to hide this error message at start-up.

I'm using KDE on Kubuntu 18.04.
I installed i3-gaps using this small script:

#!/bin/bash
sudo apt install -y libxcb1-dev libxcb-keysyms1-dev libpango1.0-dev libxcb-util0-dev libxcb-icccm4-dev libyajl-dev libstartup-notification0-dev libxcb-randr0-dev libev-dev libxcb-cursor-dev libxcb-xinerama0-dev libxcb-xkb-dev libxkbcommon-dev libxkbcommon-x11-dev autoconf libxcb-xrm0 libxcb-xrm-dev automake

cd /tmp

# clone the repository
git clone https://www.github.com/Airblader/i3 i3-gaps
cd i3-gaps

# compile & install
autoreconf --force --install
rm -rf build/
mkdir -p build && cd build/

# Disabling sanitizers is important for release versions!
# The prefix and sysconfdir are, obviously, dependent on the distribution.
../configure --prefix=/usr --sysconfdir=/etc --disable-sanitizers
make
sudo make install

Can't kill the Desktop

I have changed the i3 configuration but still when I open a new session the Plasma Desktop occupies the hole screen.

After everything has loaded if I execute:

i3-msg "exec --no-startup-id wmctrl -c Plasma for_window [title="Desktop - Plasma"] kill; floating enable; border none"

Then the Desktop gets killed and I can see the i3 windows

Link to your latex+pandoc workflow not working

Just read through your README.md and wanted to see your latex+pandoc workflow (mine isn't that good right now so I'd be interested to see that!). The link does not lead anywhere right now, in case you moved your blog I'd be interested to read up on your workflow somewhere :)

Just seeing gray screen

err
Screenshot doesn't show i3 bottom bar but it is there.

Fresh Installed Manjaro with KDE:
OS: Manjaro Linux x86_64
Kernel: 4.19.60-1-MANJARO
Packages: 1101 (pacman)
Shell: zsh 5.7.1
Resolution: 2560x1440
DE: KDE
Theme: Breath [KDE], Breath [GTK2/3]
Terminal: konsole
Terminal Font: Noto Mono 10
CPU: Intel i7-6700K (8) @ 4.200GHz
GPU: NVIDIA GeForce GTX 980
Memory: 1351MiB / 15978MiB

i3-gaps window just appear gray like shown in the picture.
If I set floating windows it shows correctly but rest simply does not appear.

Steps I have done:

  1. In i3/config:
## Plasma Integration
# Try to kill the wallpaper set by Plasma (it takes up the entire workspace and hides everythiing)
exec --no-startup-id wmctrl -c Plasma
for_window [title="Desktop — Plasma"] kill, floating enable, border none

## Avoid tiling popups, dropdown windows from plasma
# for the first time, manually resize them, i3 will remember the setting for floating windows
for_window [class="plasmashell"] floating enable
for_window [class="Plasma"] floating enable, border none
for_window [title="plasma-desktop"] floating enable, border none
for_window [title="win7"] floating enable, border none
for_window [class="krunner"] floating enable, border none
for_window [class="Kmix"] floating enable, border none
for_window [class="Klipper"] floating enable, border none
for_window [class="Plasmoidviewer"] floating enable, border none
  1. wm.sh
export KDEWM=/usr/local/bin/i3
compton & --config ~/.config/compton/compton.conf  (Tried without this as well)
  1. compton.conf: Everything. But in particular I tried:
    backend = "glx", "xrender"
    vsync on and off.

  2. Killing desktop
    i3-msg "exec --no-startup-id wmctrl -c Plasma for_window [title="Desktop - Plasma"] kill; floating enable; border none"
    No difference, still gray.

Opening any new programs shows in the KDE top bar but shows nothing on screen.

Any advice would be appreciated.

Desktop background still covers the whole screen on startup

I've added your i3 config file and created ~/.config/plasma-workspace/env/wm.sh based on yours, but the desktop background still covers the entire screen so that nothing else can be seen (except for the mouse cursor).

I've tried modifyng the following line towards the bottom in ~/.config/i3/config

for_window [title="Desktop — Plasma"] kill; floating enable; border none

by replacing "Desktop" with its equivalent in my mother tongue (the language in Plasma is not set to English), but I have the same results. To identify the actual name of the "window" of plasma's background, I used clicking on a window's icon → More actions → Special window properties → tab Window match → Identify window properties → clicking somewhere on the desktop in a normal Plasma session.

Using Manjaro Linux with Plasma 5.12.

DPI Scaling with multi monitor setup

I'm currently running Arch and i3, on an optimus laptop with 4k monitor, and I have an ultra wide monitor with significantly lower DPI.
Long story short, it is no fun setting this up on Arch (or any distro for that matter).

How would this setup fare with a 144 DPI laptop screen and a 72 DPI ultrawide? Can KDE still handle this despite using i3?

Never get a status bar in the screen.

Hello, I cannot get a full status bar with the config in ~/.config/i3/config, which got only desktop numbers in the corner. No ip, no status information. And most important, there is no icons for apps such as telegram, wireless connect and volume.
I am a totally a fresh hand could you help me to deal with this? Sorry to disturb.

Typo in blog post link

The link to your blog post in the README is missing a trailing l. The file extension in the link is .htm, but the page is actually at .html.

New KDE Update Brought Ugly Margin Above PlasmaShell

I am using Arch, i3, and KDE together. It has worked relatively well

Today after the latest update, there's a black bar as in the image. I don't have it in my pure kde session but someone does in this reddit post. Do you by any chance know how to get rid of this? Thank you!

image
New KDE Update Brought Ugly Margin Above PlasmaShell

The cloest I have found, not quite the same, is this https://wiki.archlinux.org/index.php/KDE#Disable_panel_shadow. I've tried both suggested approaches but they don't work... (manual clicking related areas and run it as a script in my Downloads folder)

i3 executable path

Via email:

Just wanted to let you know that this does work on Gentoo systems but
the i3 executable is at /usr/bin/i3 not /usr/local/bin/i3.

Specify this and double check with whereis i3 since it's a choice of the package mantainer where to put the executable

Maybe it would be interesting to have a small video showing your workflow

Hi,

I'm a long time kde plasma user and I'm always looking for always to improve my workflow.

Combining plasma and i3 seems to be a very interesting idea and from what I have seen on the screenshots the result is very beautiful.

I would like to know if there are productivity gains by using this setup instead of just kde plasma.

In addition to that I think it would be really great if there was a small video showing your current workflow so that users can better decide if the setup is worth the effort.

I also have a feel questions:

The instructions seems to be specific to debian based distros. Would it be much harder to configure it on manjaro?
How often this configuration breaks on updates?
Does it works great for games?

KDE panel items pop up in the wrong place

I run this setup on a notebook with a 1080p display, attached to my work setup with a larger resolution display (3440x1440), with the notebook display disabled. When I do this, bar items that pop up do so around the borders of a 1920x1080 boundary, even though that display is not assigned; xrandr correctly reports the external display as primary and the built-in display as off. An example of this behaviour can be found here. Do you know what might be causing this? When I run this on only the notebook display, it works fine, and using KWin instead of i3 works fine, too

Attempting to add widgets to KDE panel freezes panel

Not sure if this is the best place to ask this, but I figure people most knowledgeable with i3+KDE merging are here.

When I'm in i3, I cannot add any items to the KDE panel. When I right click on the panel and select "Add Widgets...", no widget picker pops up and whole panel freezes instead.

So to add widgets, I must disable i3, relogin into regular KDE environment, update widgets, re-enable i3 and then relogin again. I don't do this often, but it is still annoying.

Are there any KDE logs that I can fetch to diagnose this further?

This is with Manjaro, Plasma 5.17.5 and i3 4.18.

How to make krunner centered?

For some reason, Krunner always opens on the top left hand corner. Is there any way to force it to open in the center of the screen?

Disable KDE bottom panel

I'm following your advice on integrating kde plasma with i3wm

  1. Disable the autostart of ksplashqml:
sudo mv /usr/bin/ksplashqml /usr/bin/ksplashqml.old
  1. Copy the file ~/.config/plasma-workspace/env/wm.sh and add it to autostart.

  2. In the i3 configuration, use wmctrl to kill the Plasma desktop view:

https://github.com/Ynjxsjmh/dotfiles/blob/e063bc89bac3f82fa62ab6f311dff1142ebd3243/config/.config/i3/config#L254-L269

But the bottom panel of kde is still there, how do you disable it?

image

Notifications in center of active workspace

I used your configs on Kubuntu and they worked great. Now I'm on Arch, with a lot less "usual" stuff installed behind the scenes, and some behaviors are different. Notably, notifications pop up in the middle of the active display/workspace instead of the bottom right corner of the display/workspace with the panel.

I've gone into KDE notification settings and explicitly selected that corner (and other locations) to no avail. I've tried adding , move absolute position 0 0 to the relevant for_window directives, still nothing.

Make "Desktop — Plasma" run as Wallpaper

Hello, I've come to propose an idea, what if instead of killing the plasma desktop you keep it as 'background'? Like how VLC can play a video as background/wallpaper. I'm pretty sure there should be a program/command/thing to do this, even if you have to set the position of the background window manually.

Do you know any program that can do this?

Btw, your set-up works great on Manjaro and Arch

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.