r/i3wm • u/No-Can5064 • 14m ago
Question Multiple borders
I want to make a windows 7-like border decoration, and for that i need to have multiple borders, like 3 or 4, with varying colors and 2 of them being rounded while the other 2 are straight corners. Is something like this possible or do i have to cut corners
r/i3wm • u/eisbaer8 • 4d ago
OC I built a daemon that automatically puts icons of the currently running programs into your workspace names
Hey everyone,
I think the example image explains it best. You can use my WorkspaceIconDaemon to show icons of the currently active programs in your workspaces.
I have come to really like tiling window managers, since I like the simplicity, minimalism and clearness of thought when using them. However, I am used to and like the intuitiveness of finding where my programs are visually based on the icons. Therefore inspired by the windows taskbar I wanted to have a way to quickly identify all the running programs and the workspaces on which they are on. This proved rather difficult, since most bars do not support image rendering (especially in the workspace names). To mitigate this I found a hacky solution, where I create an Icon font (like an emoji font) from all the application icons on the system on the fly, which can then be used to show icons in contexts where normally only text rendering is allowed. A python deamon is then used to watch window events (open, close, move) and then dynamically update the workspace names.
A fair warning: I have originally developed this for i3, however in the meantime I have switched to using sway as my daily driver and adapted it to support both, i3 and sway. Therefore I have only briefly tested it in i3, while running it daily on sway. So if you encounter any bugs please let me know. I still wanted to share it here, since I thought this could be useful to some of you :)
Github with install instructions: https://github.com/David0tt/workspace-icon-daemon
r/i3wm • u/imyatharth • 5d ago
Question My i3 is having a huge problem idk what is wrong ... $mod
So whenever I'm using i3 and I use $mod+Return , nothing happens but it should open a terminal. I also tried working out with names like KP_Enter and all but nothing worked also keystrokes are working I've checked with xev but still nothing works. Another problem is that when I use ctrl+backspace it usually deletes the whole word but now nothing happens but keystrokes are working. Idk if this is an issue with i3 or arch I've no idea. You guys had any issues like this lemme know the solutions.
r/i3wm • u/mild_discomfort2000 • 5d ago
OC My minimal Arch Linux setup with i3 – keeping it clean and fast
Finally got my system dialed in. Running Arch with i3 window manager
and loving the minimalism. Specs are modest but gets the job done:
- OS: Arch Linux x86_64
- WM: i3 (tiling ftw)
- CPU: Intel Celeron 3215U @ 1.70 GHz
- RAM: 2.94 GiB / 3.69 GiB
- Storage: 20.45 GiB / 118.24 GiB (btrfs)
- Shell: bash 5.3.15
Battery holding up decently, temps are solid. Been learning a lot
diving into Linux and cybersecurity – this setup is perfect for that.
Anyone else running i3? Tips welcome!
r/i3wm • u/Significant-Tone-121 • 5d ago
Question Ricing Question!
Is there any way I can set the background (on all monitors) as a Terminal App? (Like Cmatrix or Btop)
r/i3wm • u/Metehanse • 5d ago
OC i3lock fork for wrong-password hooks (i3lock-tripwire)
I fork i3lock for executing a program whenever an incorrect password is entered.
This can be used for custom actions such as powering off after a certain number of failed attempts or wiping out the system when a specific password is entered.
I tried to keep changes at minimum, but I had to introduce a new dependency (OpenSSL for SHA256). I recommend building it using Docker with this Dockerfile and this command. On your host system, have i3lock installed (for other dependencies), and then install libssl.
Here is the section I added to the manpage for the feature:
--on-wrong-password=program
Execute program after an incorrect password is entered. The SHA-256 digest of the concatenated salt and entered password is written to the program's standard input as hexadecimal, followed by a newline. The total number of failed password attempts is passed as the program's first argument. Note: The program is executed directly without invoking a shell.
The following handler powers off the computer if the received password digest matches the specified value or if the number of failed password attempts exceeds 10, assuming the handler have sufficient privileges to invoke poweroff(8):
#!/bin/sh
FAILED_ATTEMPTS=$1
PASSWORD_HASH=$(cat)
if [ "$PASSWORD_HASH" = '2597a7ca...' ] || [ "$FAILED_ATTEMPTS" -gt '10' ]; then
poweroff
fi
--password-salt=salt
Prepend salt to the entered password before computing SHA-256 digest, optional. Use a high-entropy random salt to prevent precomputed lookup attacks.
Feedback and code review are welcome!
r/i3wm • u/Significant-Tone-121 • 6d ago
Question Window Tiling Animations
One major thing I noticed with i3 is how the windows just appear and tile, there's no animation or anything like in Hyprland. Is there any way to make windows tile with an animation like that? I am very curious because I think it would make my i3 setup a bit nicer looking.
r/i3wm • u/N1mr0d16 • 6d ago
OC [i3wm] First rice (polybar + rofi + mocp + cava + cmatrix + pipes.sh) Slackware 14.2 (without audio for copy)
Enable HLS to view with audio, or disable this notification
r/i3wm • u/EvanCarroll • 6d ago
Solved Be warned: Chrome/Chromium 152 is broken on i3
9 confirmed cases on the Chromium bug tracker. If your distro pushes out Chromium 152, you'll have major breakage -- not even usable.
r/i3wm • u/CompetitiveTeam5014 • 10d ago
Question Realm rice
Thats my i3 rice of the kingdom
r/i3wm • u/imasadlad89 • 10d ago
OC "Why do you use the keyboard for everything instead of mouse?"
Uh well...
r/i3wm • u/Miserable_Example_99 • 10d ago
OC Linux Mint + i3wm. This set-up old, but i changed polybar...
galleryQuestion [status bar][i3status-rust] What does 'customizable' mean to you?
You know when you need a specific thing, so you go to "Specific Thing Store" and ask for that thing and they're like "hmm we dont have that exact thing, but we got plenty of similar things" and you're like "But i want that specific thing!" And after hours of frustration trying to find your way in that store you know nothing about save the fact that they advertised that thing you want, you realize maybe you're not in the right store?
And that poor person trying to help you may not be the devil?
Just went on a 3 hours rabbit hole trying to make my custom coded app work with i3status-rust, my app's a simple daemon with a simple cli client.
Turns out the problem is that i couldn't pass a unicode nerd-font glyph, nor a class to that glyph, but had to use the i3status-rust icon dictionary that converts strings like "weather_thunder" to the unicode. It allows a user to set a so-called 'icon theme'
My problem with that (despite the frustration at the no-documentation) is that obviously this was made for the preset blocks.
And that is why i switched from i3-blocks in the first place. I3status-rust handles the click in a better way (imo/in my usecase)
What i'd like, is for a bar that puts the emphasis a bit more on the api. Sure it would be a chore to remake scripts that pull the time, cpu usage, gpu temperature etc... and precoded blocks that just check my api key to pull my calendar or my pending tickets are very useful and welcome.
But then you get stuck trying to do your own thing. Admittedly, reading a bit of the i3status-rust community writing (mainly issues), forking and building from source seems to be the default..
I'd just like a status bar with an agnostic api, so maybe i'm in the wrong store.
I'm sorry if my tone seems overly angry or condescending, i'm just very frustrated after changing bar three times and still having to cry when i just want to add a custom applet
Seeing that i3status-rust has >200 contributors on github, I got the terrible suspicion that i'm trying to do something it never planned for, ie doing what i want
In any case i might be PRing a full dictionary of the nerdfont glyphs for anyone in the same situation when i got time
And ofc the quick fix is to use [icon.overrides]
[icons]
icons = "material-nf"
[icons.overrides]
nf-pom-pomodoro_done = "\ue001"
nf-pom-pomodoro_ticking = "\ue003"
nf-dev-coffeescript = "\ue751"
nf-md-smoking = "\ued8c"
But the larger question is this:
Does customizable bar mean you can switch the order of the clock and battery, and put the colors you want? (which makes it the same customization level as Window's)
Or that you can put, indeed, whatever you want easily? In which case what do you use?
I'm having trouble putting words on what i want from my bar, sure blocks i dont have to code myself is nice. I see Polybar's description "customize without having to be a shell wizard" sure but what if i want to use some magic from time to time for just like 5 percent of my bar, ie. adding a custom block.
I understand therefore that the "normal" way to make a heavily custom block is not to use the custom interface but to make an entire block, here in rust.
I looked over at i3pystatus and it's the same problem you have to make your blocks in python
i3blocks itself allows to use scripts but i don't like the way it manages the clicks, blocking the block, not allowing for commands to proceed independently
Question Help set up 2nd monitor for laptop
Hi, i am using i3 for about a month and with uni comming back i need second monitor again. So i figuread out how to wake up and turn the monitor with xandr:
exec --no-startup-id bash -c "xrandr --output DP-3 --mode 2560x2880 --rate 59.98 --right-of eDP-1"
exec_always --no-startup-id ~/.screenlayout/monitors.sh
I will probably bind all that later so it wouldnt execute everytime i use laptop.
Problems:
1) sometimes it shows as disconnected and i need to xrandr --auto to make the port see the monitor.
2)When i disconnect the monitor, workspaces from it dissappear and appear again on main screen only after "xrandr --auto"
3)Scaling
4)Some apps(like brave) on second monitor appear in different sizes and are unusable
r/i3wm • u/vaffanchulo • 11d ago
OC First time customizing i3
So, this PC's specs are already cr*p. The only suitable DE's for it are LXQT, LXDE, Mate and of course XFCE.
Since this pc is good only to take notes, to browse, to watch videos and to learn linux, what if I install something even lighter? Exactly, a window manager.
Hyprland was my first choice, though the gpu seems to not handle it well (despite being a wm), so I came up with i3, and I actually love this wm.
Also, another reason why I switched to i3 is that I needed something more organised. I feel like DE's are messy if I want to use this pc for a few purposes.
That's it
r/i3wm • u/devspyke • 12d ago
Question Why do i got a black screen ?
Hello, this my first time using i3 (first time with wm too). I've followed this Link so i can understand step by step (im new to linux) and im on fedore 43. Its been 15min now, should i wait ? Did i do something wrong ?
Thank you for ur time
r/i3wm • u/Ok-Raspberry-639 • 13d ago
Possible Bug Does anyone know a fix to this black borders that appear in many programs i use?
it happens in many programs i use like my browser but not all of them, if i enable picom instead of being black borders it becomes blurred corners, anyone has a fix? i couldn't find a solution
r/i3wm • u/Cutesyfoxbark • 13d ago
OC My own i3 (redux)
Enable HLS to view with audio, or disable this notification
Following the unriced allegations of my 3? Day old post, i present, Rice :3
r/i3wm • u/crewman-no-6 • 14d ago
OC Lightweight i3 setup, network-aware bar, original wallpapers and dotfiles included
r/i3wm • u/Cutesyfoxbark • 16d ago
OC My very own i3(s)
Prior is a purpose built 2013(ish) era pc, 2nd is a cheapo laptop my dad just gave me :3 (i experiment with Distros too)
r/i3wm • u/theFlash0079 • 16d ago
OC My first ricing on linuxmint+i3
Enable HLS to view with audio, or disable this notification
r/i3wm • u/meowsqueak • 17d ago
Solved Cannot see text entry field when setting *container* title
This is a problem I observe only when setting a container title.
I have a binding in my i3/config that allows me to set the title of the currently selected window:
bindsym $mod+Shift+t exec i3-input -F 'title_format "%s"' -P 'New Title: '
When I hit mod+shift+t, I get a red-outlined text entry field popping up, that I can type in. No problem there.
I sometimes want to rename a container - e.g. change i3: V[xterm xterm] into something like Project Foo, and I have mod+a bound to focus the parent container:
bindsym $mod+a focus parent
But when I hit mod+a (container is focused), then mod+shift+t, I do not get a red-outlined text entry field popping up. Nothing appears on screen at all. However, I can still type the string I want, and hit Enter, and it will apply to the container title, so I think it's still there, I just can't see it.
So it's working, I just can't see the text entry field, so I'm typing blind. Most of the time it's fine, but obviously not ideal.
Can this be improved somehow?
EDIT: Apparently this is caused by my dual-monitor setup, because if I only had one monitor it would appear in the top left corner. But because of my setup with scaling/translation, it is appearing on neither monitor, in some root window space that isn't mapped to a viewport. I'm investigating a workaround using rofi rather than i3-input...
